Mai sigur mai bine: Sigurarea gărilor: 7 pași
Mai sigur mai bine: Sigurarea gărilor: 7 pași
Anonim
Mai sigur mai bine: Sigurarea gărilor
Mai sigur mai bine: Sigurarea gărilor

Multe gări de astăzi sunt nesigure din cauza lipsei de securitate, a barierelor și a avertizării cu privire la intrarea trenului. Am văzut că este necesar să se remedieze acest lucru. Pentru a rezolva această problemă, am creat Safer Better. Am folosit senzori de vibrații, senzori de mișcare și un sistem de alarmă de urgență pe un Arduino Uno pentru a adăuga siguranță la o gară.

Consumabile necesare:

  • Arduino Uno
  • Sârme jumper
  • Senzor de mișcare PIR
  • Senzor de vibrații piezo
  • Ecran LCD
  • Piezo Speaker
  • Comutator fizic
  • Potențiometru moale
  • Rezistor de 330 ohmi

De: Jacob Wimmer, Olivia Crawley, Jin Kim

Pasul 1: conectați placa

Conectați placa
Conectați placa

Ne-am conectat Arduino-ul ca în diagrama de mai sus.

Pasul 2: Suport LCD pentru imprimare 3D

Suport LCD pentru imprimare 3D
Suport LCD pentru imprimare 3D

Am imprimat 3D un suport pentru ecranul nostru LCD pentru o mai bună vizibilitate.

Pasul 3: Conectați-vă la Arduino în Matlab

Primul pas pentru scrierea codului nostru a fost să ne conectăm placa Arduino la Matlab. Acest lucru se realizează prin crearea unui obiect Arduino. Am folosit următorul cod:

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

Pasul 4: Scrieți cod în Matlab

Am creat un program în Matlab pentru a rula Arduino. După inițializarea ecranului LCD, am scris cod pentru a ne controla gara. Am folosit intrări precum un senzor de vibrații, senzor de mișcare și comutator fizic pentru a produce o varietate de ieșiri. Aceste intrări, ieșiri și codul corespunzător vor fi explicate în pașii de mai jos.

Pasul 5: senzor de vibrații

Senzor de vibrații
Senzor de vibrații

Senzorul de vibrații este un senzor analogic și, prin urmare, a folosit funcția Matlab readVoltage.

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

Funcția readVoltage a returnat o serie de valori, dar am stabilit că o valoare peste 0,5 este o vibrație decentă și așa că am folosit-o ca valoare de bază. Dacă tensiunea a fost peste 0,5, înseamnă că trenul intră în gară. Când a fost detectată această valoare, un mesaj este trimis pe ecranul LCD. Mesajul de pe ecranul LCD este un mod de a comunica oamenilor din gară că vine un tren.

Am scris pe ecranul nostru LCD folosind următorul cod:

dacă val_vibro <= 0,5;

elseif val_vibro> 0,5;

printLCD (lcd, „Antrenează în 3 minute”);

Sfârșit

Pasul 6: senzor de mișcare PIR

Senzor de mișcare PIR
Senzor de mișcare PIR

Senzorul de mișcare PIR este utilizat pentru a se asigura că operatorul cunoaște obstacolele de-a lungul căilor ferate. Senzorul face fotografii și compară cea mai nouă fotografie cu ultima realizată și, dacă s-a mutat ceva, Matlab va întoarce valoarea 1. Când ceva este detectat pe șine, apare o interfață grafică cu utilizatorul (GUI) pentru a anunța operatorul de tren că ceva este pe pistă. Operatorul are apoi opțiunea de a opri trenul sau de a continua. După selectarea opțiunii dorite, se afișează un mesaj de confirmare.

Pentru senzorul de mișcare a fost utilizat următorul cod:

dacă val_opt == 1;

d1 = 'Un obiect a fost detectat pe șinele din stație';

op_input = questdlg (d1, „Mesaj operator”, „Opriți trenul”, „Continuați să vă mișcați”, „Continuați să vă mișcați”);

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

b2 = strcmp (op_input, „Continuă să te miști”);

dacă b1 == 1

msgbox („Oprirea trenului”)

pauză (3)

elseif b2 == 1

msgbox („Tren continuu”)

pauză (3)

Sfârșit

elseif val_opt == 0;

Sfârșit

Pasul 7: Comutator fizic

De asemenea, credem că gările trebuie să aibă mai multe caracteristici de securitate. Am decis să avem un comutator care să tragă o alarmă la stație. Am făcut acest lucru folosind un comutator fizic. Când acest comutator este pornit, se aude o alarmă printr-un difuzor.

Am făcut acest lucru cu următorul cod:

dacă s_val == 1 pentru i = 1:10

playTone (a, „D10”, 1800, 1)

pauză (.1)

playTone (a, „D10”, 2000, 1)

pauză (.1)

Sfârșit

Sfârșit