Sisällysluettelo:

Parempi turvallisuus: Juna -asemien turvallisuuden parantaminen: 7 vaihetta
Parempi turvallisuus: Juna -asemien turvallisuuden parantaminen: 7 vaihetta

Video: Parempi turvallisuus: Juna -asemien turvallisuuden parantaminen: 7 vaihetta

Video: Parempi turvallisuus: Juna -asemien turvallisuuden parantaminen: 7 vaihetta
Video: Lapsi soittaa 112 2024, Heinäkuu
Anonim
Turvallisempi Parempi: Tee rautatieasemista turvallisempia
Turvallisempi Parempi: Tee rautatieasemista turvallisempia

Monet rautatieasemat ovat nykyään vaarallisia turvallisuuden puutteen, esteiden ja junan saapumisesta johtuvan puutteen vuoksi. Näimme tarpeen korjata se. Tämän ongelman ratkaisemiseksi loimme Safer Better. Käytimme tärinäantureita, liikeantureita ja hätähälytysjärjestelmää Arduino Unossa turvallisuuden lisäämiseksi rautatieasemalle.

Tarvittavat tarvikkeet:

  • Arduino Uno
  • Hyppyjohdot
  • PIR -liiketunnistin
  • Pietsovärähtelyanturi
  • LCD-näyttö
  • Pietsokaiutin
  • Fyysinen kytkin
  • Pehmeä potentiometri
  • 330 ohmin vastus

Kirjailija: Jacob Wimmer, Olivia Crawley, Jin Kim

Vaihe 1: Johdota levy

Johdota levy
Johdota levy

Johdotimme Arduinon yllä olevan kaavion mukaisesti.

Vaihe 2: 3D -tulostus LCD -jalusta

3D -tulostus LCD -jalusta
3D -tulostus LCD -jalusta

Tulostimme 3D -telineen LCD -näyttöämme paremman näkyvyyden saavuttamiseksi.

Vaihe 3: Yhdistä Arduinoon Matlabissa

Ensimmäinen askel koodin kirjoittamisessa oli liittää Arduino -korttimme Matlabiin. Tämä tehdään luomalla Arduino -objekti. Käytimme seuraavaa koodia:

a = arduino ('/dev/tty.usbmodem14201', 'Uno', 'kirjastot', 'EsimerkkiLCD/LCDAddon');

Vaihe 4: Kirjoita koodi Matlabiin

Loimme Matlabissa ohjelman Arduinon ajamiseen. LCD -näytön alustamisen jälkeen kirjoitimme koodin hallitaksemme rautatieasemaa. Käytimme tuloja, kuten tärinäanturia, liikeanturia ja fyysistä kytkintä erilaisten lähtöjen tuottamiseen. Nämä tulot, lähdöt ja vastaava koodi selitetään alla olevissa vaiheissa.

Vaihe 5: Tärinäanturi

Tärinäanturi
Tärinäanturi

Tärinätunnistin on analoginen anturi, ja siksi se käytti Matlab -funktiota readVoltage.

val_vibro = readVoltage (a, 'A0'); T

hän luki jännitefunktio palautti useita arvoja, mutta päätimme, että arvo yli 0,5 oli kunnollinen värähtely, joten käytimme sitä perusarvona. Jos jännite oli yli 0,5, se tarkoittaa, että juna on tulossa asemalle. Kun tämä arvo havaittiin, LCD -näyttöön lähetetään viesti. Nestekidenäytön viesti on tapa viestiä asemalla oleville ihmisille junan saapumisesta.

Kirjoitimme nestekidenäytöllemme käyttämällä seuraavaa koodia:

jos val_vibro <= 0,5;

elseif val_vibro> 0,5;

printLCD (lcd, 'Train In 3 Min');

loppuun

Vaihe 6: PIR -liiketunnistin

PIR -liiketunnistin
PIR -liiketunnistin
PIR -liiketunnistin
PIR -liiketunnistin
PIR -liiketunnistin
PIR -liiketunnistin

PIR -liiketunnistinta käytetään varmistamaan, että kuljettaja tuntee junan raiteilla olevat esteet. Anturi ottaa kuvia ja vertaa uusinta kuvaa viimeiseen otettuun, ja jos jokin on siirtynyt, Matlab palauttaa arvon 1. Kun raiteilla havaitaan jotain, graafinen käyttöliittymä (GUI) ponnahtaa esiin ja ilmoittaa junan kuljettajalle, että jotain on raiteilla. Kuljettajalla on tällöin mahdollisuus pysäyttää juna tai jatkaa. Kun olet valinnut haluamasi vaihtoehdon, näyttöön tulee vahvistusviesti.

Liikeanturia varten käytettiin seuraavaa koodia:

jos val_opt == 1;

d1 = 'Asema on havaittu aseman raiteilla';

op_input = questdlg (d1, 'Käyttäjän viesti', 'Pysäytä juna', 'Jatka liikkumista', 'Jatka liikkumista');

b1 = strcmp (op_input, 'Pysäytä juna');

b2 = strcmp (op_input, 'Jatka liikkumista');

jos b1 == 1

msgbox ('Juna pysähtyy')

tauko (3)

elseif b2 == 1

msgbox ('Juna jatkuu')

tauko (3)

loppuun

elseif val_opt == 0;

loppuun

Vaihe 7: Fyysinen kytkin

Mielestämme myös rautatieasemilla on oltava enemmän turvaominaisuuksia. Päätimme, että meillä on kytkin, joka soi hälytyksen asemalla. Teimme tämän käyttämällä fyysistä kytkintä. Kun tämä kytkin on päällä, hälytysääni kuuluu kaiuttimen kautta.

Teimme tämän seuraavalla koodilla:

jos s_val == 1 i = 1:10

playTone (a, 'D10', 1800, 1)

tauko (.1)

playTone (a, 'D10', 2000, 1)

tauko (.1)

loppuun

loppuun

Suositeltava: