Turinys:
- 1 žingsnis: laido prijungimas
- 2 žingsnis: 3D spausdinimo LCD stovas
- 3 žingsnis: prisijunkite prie „Arduino“„Matlab“
- 4 žingsnis: parašykite kodą „Matlab“
- 5 žingsnis: vibracijos jutiklis
- 6 žingsnis: PIR judesio jutiklis
- 7 žingsnis: fizinis jungiklis
Video: Saugesnis ir geresnis: traukinių stočių saugumas: 7 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:47
Daugelis geležinkelio stočių šiandien yra nesaugios, nes trūksta saugumo, kliūčių ir įspėjimo apie įvažiuojantį traukinį. Matėme, kad reikia tai ištaisyti. Norėdami išspręsti šią problemą, sukūrėme saugesnį. Norėdami padidinti traukinių stoties saugumą, „Arduino Uno“naudojome vibracijos jutiklius, judesio jutiklius ir avarinės signalizacijos sistemą.
Reikalingos medžiagos:
- Arduino Uno
- Trumpieji laidai
- PIR judesio jutiklis
- Pjezo vibracijos jutiklis
- LCD ekranas
- Pjezo garsiakalbis
- Fizinis jungiklis
- Minkštas potenciometras
- 330 omų rezistorius
Autoriai: Jacob Wimmer, Olivia Crawley, Jin Kim
1 žingsnis: laido prijungimas
Mes prijungėme „Arduino“, kaip parodyta aukščiau esančioje diagramoje.
2 žingsnis: 3D spausdinimo LCD stovas
Mes 3D atspausdinome LCD ekrano stovą, kad būtų geriau matomas.
3 žingsnis: prisijunkite prie „Arduino“„Matlab“
Pirmasis mūsų kodo rašymo žingsnis buvo prijungti „Arduino“plokštę prie „Matlab“. Tai daroma sukuriant „Arduino“objektą. Mes naudojome šį kodą:
a = arduino ('/dev/tty.usbmodem14201', 'Uno', 'bibliotekos', 'PavyzdysLCD/LCDAddon');
4 žingsnis: parašykite kodą „Matlab“
Mes sukūrėme programą „Matlab“, kad paleistume „Arduino“. Inicijuodami LCD ekraną, parašėme kodą, skirtą valdyti mūsų traukinių stotį. Mes panaudojome įvestis, tokias kaip vibracijos jutiklis, judesio jutiklis ir fizinis jungiklis, kad gautume įvairius išėjimus. Šie įėjimai, išėjimai ir atitinkamas kodas bus paaiškinti atlikus toliau nurodytus veiksmus.
5 žingsnis: vibracijos jutiklis
Vibracijos jutiklis yra analoginis jutiklis, todėl naudojo Matlab funkciją readVoltage.
val_vibro = readVoltage (a, 'A0'); T
jis skaitė Įtampos funkcija grąžino daugybę verčių, tačiau mes nustatėme, kad didesnė nei 0,5 vertė yra tinkama vibracija, todėl mes ją panaudojome kaip savo bazinę vertę. Jei įtampa buvo didesnė nei 0,5, tai reiškia, kad traukinys ateina į stotį. Aptikus šią vertę, į LCD ekraną siunčiamas pranešimas. Pranešimas LCD ekrane yra būdas pranešti stoties žmonėms, kad atvyksta traukinys.
Mes rašėme savo LCD ekrane naudodami šį kodą:
jei val_vibro <= 0,5;
elseif val_vibro> 0,5;
printLCD (LCD, „Traukinys per 3 minutes“);
galas
6 žingsnis: PIR judesio jutiklis
PIR judesio jutiklis naudojamas užtikrinti, kad operatorius žinotų apie kliūtis palei traukinio bėgius. Jutiklis fotografuoja ir palygina naujausią nuotrauką su paskutine padaryta ir, jei kas nors pajudėjo, „Matlab“grąžins reikšmę 1. Kai vėžėse aptinkama kažkas, pasirodo grafinė vartotojo sąsaja (GUI), pranešanti traukinio operatoriui, kad kažkas yra trasose. Tada operatorius turi galimybę sustabdyti traukinį arba važiuoti toliau. Pasirinkus norimą parinktį, rodomas patvirtinimo pranešimas.
Judėjimo jutikliui buvo naudojamas šis kodas:
jei val_opt == 1;
d1 = 'Stoties takeliuose aptiktas objektas';
op_input = questdlg (d1, „Operator Message“, „Stop Train“, „Keep Moving“, „Keep Moving“);
b1 = strcmp (op_input, 'Sustabdyti traukinį');
b2 = strcmp (op_input, 'Tęsti judėjimą');
jei b1 == 1
„msgbox“(„Traukinio sustojimas“)
pauzė (3)
elseif b2 == 1
„msgbox“(„Traukinys tęsiasi“)
pauzė (3)
galas
elseif val_opt == 0;
galas
7 žingsnis: fizinis jungiklis
Mes taip pat manome, kad traukinių stotys turi turėti daugiau apsaugos funkcijų. Mes nusprendėme turėti jungiklį, kuris stotyje skambėtų aliarmu. Mes tai padarėme naudodami fizinį jungiklį. Įjungus šį jungiklį, per garsiakalbį skamba aliarmas.
Mes tai padarėme naudodami šį kodą:
jei s_val == 1, kai i = 1:10
playTone (a, „D10“, 1800, 1)
pauzė (.1)
playTone (a, „D10“, 2000, 1)
pauzė (.1)
galas
galas
Rekomenduojamas:
JK traukinių ir orų ekranas: 5 žingsniai
Jungtinės Karalystės traukinių ir orų ekranas: ši instrukcija skirta akumuliatoriumi varomiems JK traukinių išvykimams ir orų rodymui. Ji naudojo „National Rail OpenLDBWS“duomenų bazę, kad gautų informaciją apie konkrečios vietinės geležinkelio stoties traukinio išvykimą realiuoju laiku ir ją parodytų. Jis naudoja atvirą orą
Traukinių programavimo patobulinimai MATLAB: 6 žingsniai
Traukinių programavimo patobulinimai MATLAB: Tikslas: Šios užprogramuotos sistemos tikslas yra pažvelgti į nedidelio masto „Arduino“ir pritaikyti kodavimą didesniu mastu, kad būtų galima patobulinti tam tikras „Amtrak Railroad“sistemų saugos funkcijas. Norėdami tai padaryti, pridėjome dirvožemio drėgmės
Apšvietimo ir saugumo valdymo jutiklių stočių tinklas: 5 žingsniai (su nuotraukomis)
Apšvietimo ir saugumo valdymo jutiklių stočių tinklas: naudodami šį jutiklių stočių tinklą, sukonfigūruotą pagrindinio/pavaldinio režimu, galėsite atlikti apšvietimą ir saugumą namuose. Šios jutiklių stotys (šiame projekte „Node01“, „Node02“) yra prijungtos prie pagrindinės stoties („Node00“), prijungtos prie jūsų
Išmanioji traukinių sistema: 4 žingsniai
Išmanioji traukinių sistema: sukurta taip, kad padidintų saugumą, užkirstų kelią nelaimingiems atsitikimams ir padidintų teigiamą bei produktyvų atsaką, jei įvyktų nelaimingų atsitikimų
Geresnis rotacinis kodavimo įrenginys: 4 žingsniai
Geresnis rotacinis kodavimo įrenginys: jei kada nors bandėte savo projektui panaudoti rotacinį kodavimo įrenginį, greičiausiai nuvylėte. Nesvarbu, ar tai buvo dėl sudėtingų nustatymų, ar dėl netikslios kontrolės. Turėjau tą pačią problemą, todėl nusprendžiau ją išspręsti. Aš sukūriau 3D pr