Sadržaj:

Sigurnije bolje: Omogućavanje sigurnije željezničke stanice: 7 koraka
Sigurnije bolje: Omogućavanje sigurnije željezničke stanice: 7 koraka

Video: Sigurnije bolje: Omogućavanje sigurnije željezničke stanice: 7 koraka

Video: Sigurnije bolje: Omogućavanje sigurnije željezničke stanice: 7 koraka
Video: BOSANSKI LAVOVI SRCEM I DUŠOM! Kopajući UGALJ zarađuju HLJEB 300 metara pod ZEMLJOM! s PJESMOM 2024, Srpanj
Anonim
Sigurnije bolje: Učinite željezničke stanice sigurnijima
Sigurnije bolje: Učinite željezničke stanice sigurnijima

Mnoge su željezničke postaje danas nesigurne zbog nedostatka sigurnosti, barijera i upozorenja na dolazak vlaka. Vidjeli smo potrebu da se to popravi. Kako bismo riješili ovaj problem, stvorili smo Sigurnije bolje. Koristili smo senzore vibracija, senzore pokreta i alarmni sustav za hitne slučajeve na Arduino Uno kako bismo dodali sigurnost željezničkoj stanici.

Potrebne zalihe:

  • Arduino Uno
  • Žice za kratkospojnike
  • PIR senzor pokreta
  • Piezo senzor vibracija
  • LCD zaslon
  • Piezo zvučnik
  • Fizički prekidač
  • Meki potenciometar
  • Otpornik od 330 ohma

Napisali: Jacob Wimmer, Olivia Crawley, Jin Kim

Korak 1: Ožičite ploču

Ožičite ploču
Ožičite ploču

Ožičili smo naš Arduino kao gornji dijagram.

Korak 2: LCD stalak za 3D ispis

LCD stalak za 3D ispis
LCD stalak za 3D ispis

3D ispisali smo postolje za naš LCD zaslon radi bolje vidljivosti.

Korak 3: Povežite se s Arduinom u Matlabu

Prvi korak u pisanju našeg koda bio je povezivanje naše Arduino ploče s Matlabom. To se postiže stvaranjem Arduino objekta. Koristili smo sljedeći kod:

a = arduino ('/dev/tty.usbmodem14201', 'Uno', 'knjižnice', 'ExampleLCD/LCDAddon');

Korak 4: Napišite kod u Matlab

U Matlabu smo stvorili program za pokretanje našeg Arduina. Nakon inicijalizacije našeg LCD zaslona, napisali smo kod za kontrolu naše željezničke stanice. Koristili smo ulaze kao što su senzor vibracija, senzor pokreta i fizički prekidač za proizvodnju različitih izlaza. Ti ulazi, izlazi i odgovarajući kod bit će objašnjeni u koracima u nastavku.

Korak 5: Senzor vibracija

Senzor vibracija
Senzor vibracija

Senzor vibracija je analogni senzor i stoga koristi funkciju Matlab readVoltage.

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

on readVoltage funkcija vratila je raspon vrijednosti, ali smo utvrdili da je vrijednost iznad 0,5 pristojna vibracija pa smo to koristili kao osnovnu vrijednost. Ako je napon bio iznad 0,5, to znači da vlak dolazi na stanicu. Kada je ova vrijednost otkrivena, poruka se šalje na LCD zaslon. Poruka na LCD ekranu način je komuniciranja ljudima na stanici da dolazi vlak.

Na LCD ekranu smo pisali sljedećim kodom:

ako je val_vibro <= 0,5;

elseif val_vibro> 0,5;

printLCD (lcd, 'Vlak za 3 minute');

kraj

Korak 6: PIR senzor pokreta

PIR senzor pokreta
PIR senzor pokreta
PIR senzor pokreta
PIR senzor pokreta
PIR senzor pokreta
PIR senzor pokreta

PIR osjetnik kretanja koristi se kako bi osigurao da rukovatelj zna o preprekama duž pruga. Senzor snima slike i uspoređuje najnoviju sliku s posljednjom snimljenom i ako se bilo što pomaklo, Matlab će vratiti vrijednost 1. Kad se nešto otkrije na kolosijecima, pojavit će se grafičko korisničko sučelje (GUI) kako bi obavijestilo vlakovara da nešto je na tračnicama. Operater tada ima mogućnost zaustaviti vlak ili nastaviti. Nakon odabira željene opcije, prikazuje se poruka s potvrdom.

Za senzor pokreta korišten je sljedeći kôd:

ako je val_opt == 1;

d1 = 'Objekt je otkriven na stazama u postaji';

op_input = questdlg (d1, 'Poruka operatera', 'Zaustavi vlak', 'Nastavi se kretati', 'Nastavi se kretati');

b1 = strcmp (op_input, 'Stop vlaku');

b2 = strcmp (op_input, 'Nastavi se kretati');

ako je b1 == 1

msgbox ('Stajanje vlaka')

stanka (3)

inače b2 == 1

msgbox ('Vlak se nastavlja')

stanka (3)

kraj

elseif val_opt == 0;

kraj

Korak 7: Fizički prekidač

Također mislimo da željezničke stanice moraju imati više sigurnosnih značajki. Odlučili smo imati prekidač koji bi oglašavao alarm na stanici. To smo učinili fizičkim prekidačem. Kad je ovaj prekidač uključen, kroz zvučnik se oglašava alarm.

To smo učinili sa sljedećim kodom:

ako je s_val == 1 za i = 1:10

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

stanka (.1)

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

stanka (.1)

kraj

kraj

Preporučeni: