Përmbajtje:

LifeGuard 2.0: 7 hapa (me fotografi)
LifeGuard 2.0: 7 hapa (me fotografi)

Video: LifeGuard 2.0: 7 hapa (me fotografi)

Video: LifeGuard 2.0: 7 hapa (me fotografi)
Video: ТАКОВ МОЙ ПУТЬ В L4D2 2024, Korrik
Anonim
LifeGuard 2.0
LifeGuard 2.0

A keni dashur ndonjëherë të kryeni operacione matematikore, të merrni lexime të sensorëve, të monitoroni hyrjet analoge dhe dixhitale dhe të kontrolloni daljet analoge dhe dixhitale pa përvojë elektronike të mëparshme? Nëse po, ky projekt është vetëm për ju! Ne do të përdorim një mikrokontrollues dhe MATLAB për të krijuar një pajisje që mund të përdoret për të monitoruar dhe përmirësuar sistemin EF Express SMART RAIL. Me një mikrokontrollues, mundësitë për hyrje dhe dalje (sinjal/informacion që hyn në tabelë dhe një sinjal që del nga bordi) janë të pafundme. Ne do të përdorim një sensor fleksibël dhe potenciometër si inputet tona. Rezultatet e tyre do të jenë një mesazh përmes ekranit LCD dhe dritave LED së bashku me një zile, respektivisht. Përmirësimet që shpresojmë të zbatojmë në sistemin SMART RAIL janë të lidhura me përmirësimin e sigurisë së sistemit. Merrni laptopin dhe mikrokontrolluesin tuaj dhe le të fillojmë!

Hapi 1: Softuer dhe materiale

Softuer dhe Materiale
Softuer dhe Materiale
Softuer dhe Materiale
Softuer dhe Materiale
Softuer dhe Materiale
Softuer dhe Materiale
Softuer dhe Materiale
Softuer dhe Materiale

Softueri i nevojshëm

1.) MATLAB

- Ju do të duhet të shkarkoni një version lokal të MATLAB në kompjuterin tuaj. Shkoni te mathworks.com dhe krijoni një llogari MATHWORKS, shkarkoni skedarë dhe aktivizoni licencën tuaj.

-Duhet të shkarkoni dhe instaloni GJITHA kutitë e veglave të disponueshme për lëshimin më të ri (R2016a ose R2016b).

-Përdoruesit Mac: duhet të keni OSX 10.9.5 ose më vonë për të ekzekutuar R2015b, është në rregull të ekzekutoni një version të mëparshëm të MATLAB.

2.) Paketa Mbështetëse e Arduino Hardware:

-Instaloni Paketën Mbështetëse të Arduino Hardware. Hap MATLAB. Në skedën MATLAB Home, në Menunë e Mjedisit, zgjidhni Shtesat Merrni Paketat Mbështetëse të Hardware Zgjidhni "Paketën Mbështetëse MATLAB për Arduino Hardware". Ju do të duhet të identifikoheni në llogarinë tuaj MATHWORKS

-Nëse instalimi juaj ndërpritet dhe keni përpjekje/gabime të njëpasnjëshme të dështuara kur instaloni paketën e harduerit - gjeni dhe fshini dosjen Arduino download në hard diskun tuaj dhe filloni nga fillimi.

Materialet e nevojshme

1.) Laptop ose kompjuter desktop

2.) Bordi SparkFun Arduino

3.) Sensori fleksibël

4.) Potenciometër

5.) Ekran LCD

6.) Drita LED

7.) Kompleti i Shpikësit SparkFun (Gjeni në internet)

8.) Kabllo USB dhe mini USB

9.) Telat e kërcyesit

10.) Bieber zieje

Hapi 2: Lidhuni me Arduino -n tuaj dhe përcaktoni portin COM

(Porta juaj COM mund të ndryshojë sa herë që shtoni) Lidhni kabllon USB Arduino me kompjuterin tuaj dhe mini USB me bordin tuaj Arduino. Ju mund të keni nevojë të prisni disa minuta që shoferët të shkarkohen.

Për të përcaktuar portën COM:

Në PC

Metoda 1: Në MATLAB përdorni komandën - hap (serial ('nada'))

-për të përcaktuar portin tuaj të kom. Mund të merrni një gabim si ky: Gabim gjatë përdorimit të serialit/hapjes (rreshti 72) Hapja dështoi: Porti: NADA nuk është i disponueshëm. Portet e disponueshme: COM3. Ky gabim tregon që porti juaj është 3.

-Nëse Metoda 1 dështon në kompjuterin tuaj, hapni Menaxherin e Pajisjes tuaj dhe zgjeroni listën e Porteve (COM dhe LPT). Vini re numrin në Portën Seriale USB. p.sh. 'Porta Seriale USB (COM *)' Numri i portës është * këtu.

-Nëse nuk shfaqet asnjë port, mbyllni MATLAB dhe rinisni kompjuterin tuaj. Hapni MATLAB dhe provoni përsëri të hapni (serial ('nada')).

-Nëse kjo dështon, mund t'ju duhet të shkarkoni drejtuesit e SparkFun nga skedari CDM_v2.12.00_WHQL_Certified.exe, hapni dhe ekzekutoni skedarin CDM_v2.12.00_WHQL_Certified.exe dhe zgjidhni Ekstrakt. (Mund t'ju duhet të hapni skedarin nga explorer, të klikoni me të djathtën dhe 'Run as Administrator').

-Në dritaren e komandës MATLAB krijoni një objekt Arduino - a = arduino ('comx', 'uno'); % x është numri i portit tuaj nga lart për PC (pa zero të mëparshme!)

Në një Mac

Metoda 1: Nga rreshti i komandës MATLAB ose në një Terminal Mac dhe shkruani: 'ls /dev/tty.*' Vini re numrin e portit të listuar për dev/tty.usbmodem*ose dev/tty.usbserial*. Numri i portit është * këtu.

-Nëse Metoda 1 dështon në MAC tuaj, mund t'ju duhet

-Exit MATLAB

-Mbyllni programin Arduino dhe shkëputni kabllon USB Arduino

-instaloni Java 6 Runtime

-instaloni zgjerimin e kernelit të shoferit USB

-Rinisni kompjuterin tuaj

-Rilidheni kabllon USB Arduino

-Kandidoni nga linja e komandës MATLAB ose Terminali Mac: ls /dev/tty.*

-Vini re numrin e portit të listuar për dev/tty.usbmodem* ose dev/tty.usbserial*. Numri i portit është * këtu.

-Në dritaren e komandës MATLAB krijoni një objekt Arduino - a = arduino ('/dev/tty.usbserial*', 'uno'); % * është numri i portit tuaj nga lart për MAC, ose '/dev/tty.usbmodem*'

Hapi 3: Kodi Matlab

Kodi Matlab
Kodi Matlab
Kodi Matlab
Kodi Matlab

Inputet:

1.) Sensori fleksibël

2.) Potenciometër

Rezultatet:

1.) Ekran LCD me mesazh që lexon "Treni po vjen"

2.) Drita LED

3.) Piezo buzzer

Në këtë hap, ne do të ndërtojmë kodin që do të analizojë inputet nga bordi Arduino dhe do të japë rezultate bazuar në rezultatet e analizës së MATLAB. Kodi i mëposhtëm do t'ju lejojë të kryeni disa funksione: kur ndizet potenciometri, zileja piezo do të lëshojë frekuenca alternative dhe LED i kuq do të ndizet. Kur një tren nuk zbulohet, LED i gjelbër do të ndriçohet. Kur ndizet Sensori Flex, LED i lakmisë do të fiket, LED i kuq do të ndizet dhe LCD do të shfaqë një mesazh që lexon "Po vjen Treni".

Kodi MATLAB:

%remery1, shornsb1, wmurrin

%Qëllimi: Paralajmërim për trenin

%IInput: potenciometër, sensor fleksibël

%dalje: LCD, zë, dritë

%Nëse bordi nuk është i inicializuar ose ka probleme me lidhjen, ekzekutoni

%më poshtë komandat në komente. Ata nuk kanë nevojë të ekzekutohen çdo herë

%pastroji të gjitha

%mbyll të gjitha

%clc

%a = arduino ('/dev/tty.usbserial-DN01DXOM', 'uno');

%lcd = addon (a, 'ShembullLCD/LCDAddon', {'D7', 'D6', 'D5', 'D4', 'D3', 'D2'});

%Konfiguro tabelën pasi të jetë lidhur

configurePin (a, 'D8', 'pullup');%konfiguroni D8

configurePin (a, 'D9', 'PWM');%konfiguroni D9

koha = 50; %vendosur kohën në 50

clearLCD (lcd) %inicoj LCD

%Loop Fillimi

ndërsa koha> 0

%Tensioni i sensorit Flex përcakton nëse drita është e gjelbër, ose nëse drita

%është e kuqe dhe LCD shfaq "treni po vjen"

flex_status = readVoltage (a, 'A0'); %e leximit të tensionit të sensorit të përkuljes

nëse flex_status> 4 %nëse voltazhi është më i madh se 4, lak nxitës

writeDigitalPin (a, 'D12', 0) %fiket jeshile

writeDigitalPin (a, 'D11', 1) %ndizet me të kuqe

printLCD (lcd, 'Train Coming') %shfaq "treni po vjen" në LCD

pauzë (5) %Prisni 5 sekonda

clearLCD (lcd) %Pastro mesazhin nga LCD

writeDigitalPin (a, 'D11', 0) %Fik LED të Kuq

tjeter

fund

pe_status = readVoltage (a, 'A2'); %Lexoni tensionin e potenciometrit

nëse pe_status> 2 %nëse tensioni është më i madh se 2, lak nxitës

writeDigitalPin (a, 'D13', 1);%ndizni LED të kuq

playTone (a, 'D9', 400,.25);% Luaj 400Hz në zile Piezo,.25 sek.

writeDigitalPin (a, 'D13', 0)%fik LED të kuq

pauzë (.25)%pritje.25 sekonda

writeDigitalPin (a, 'D13', 1) %Përsëriteni më lart, me zile në 200Hz

playTone (a, 'D9', 200,.25);

writeDigitalPin (a, 'D13', 0)

pauzë (.25)

writeDigitalPin (a, 'D13', 1);%Përsëriteni më lart

playTone (a, 'D9', 400,.25);

writeDigitalPin (a, 'D13', 0)

pauzë (.25)

shkruajDigitalPin (a, 'D13', 1)

playTone (a, 'D9', 200,.25);

shkruajDigitalPin (a, 'D13', 0)

pauzë (.25)

writeDigitalPin (a, 'D13', 1) %Përsëriteni më lart

playTone (a, 'D9', 400,.25);

writeDigitalPin (a, 'D13', 0)

pauzë (.25)

shkruajDigitalPin (a, 'D13', 1)

playTone (a, 'D9', 200,.25);

writeDigitalPin (a, 'D13', 0)

pauzë (.25)

writeDigitalPin (a, 'D13', 1) %Përsëriteni më lart

playTone (a, 'D9', 400,.25);

writeDigitalPin (a, 'D13', 0)

pauzë (.25)

shkruajDigitalPin (a, 'D13', 1)

playTone (a, 'D9', 200,.25);

writeDigitalPin (a, 'D13', 0)

pauzë (.25)

tjeter

writeDigitalPin (a, 'D12', 1)%nëse tensioni është më i vogël se 2, ndizni LED -in e gjelbër

writeDigitalPin (a, 'D13', 0)%kthesë e LED të Kuq

fund

fund

Hapi 4: Instalimi i sensorit Flex

Instalimi i sensorit Flex
Instalimi i sensorit Flex
Instalimi i sensorit Flex
Instalimi i sensorit Flex
Instalimi i sensorit Flex
Instalimi i sensorit Flex
Instalimi i sensorit Flex
Instalimi i sensorit Flex

Materialet e nevojshme

1.) 1 Sensor Fleks

2.) 1 Rezistencë 10K Ohm

3.) 8 Tela Jumper

*Referojuni fotografive, respektivisht.

Në këtë qark, ne do të matim fleksibilitetin. Një sensor fleksibël përdor karbonin në një shirit plastik për të vepruar si një rezistencë e ndryshueshme, por në vend që të ndryshoni rezistencën duke rrotulluar një çelës, ju ndryshoni duke përkulur përbërësin. Një ndarës i tensionit për të zbuluar ndryshimin në rezistencë. Në rastin tonë, do të përdorni sensorin fleksibël për të zbuluar një tren që kalon për të komanduar një ekran LCD (shiko figurën) për të lexuar një mesazh duke thënë "Treni po vjen".

*Në fotografitë që tregojnë udhëzimet për lidhjen e një sensor Flex, referojuni vetëm telave në lidhje me instalimin e sensorit Flex. Mos respektoni instalimet elektrike për Servo.

Kunjat e telave si më poshtë:

Hapi 1: Në tabelën Arduino në seksionin POWER, futni 1 tel në hyrjen 5V dhe 1 tel në hyrjen GND (tokë). Lidhni skajin tjetër të telit 5V në një hyrje pozitive (+) në tabelën e qarkut. Lidheni skajin tjetër të telit GND në një hyrje negative (-) në tabelën e qarkut.

Hapi 2: Në tabelën Arduino në seksionin ANALOG IN, futni 1 në hyrjen A0. Lidheni fundin e atij teli në hyrjen j20 në tabelën e qarkut.

Hapi 3: Në tabelën Arduino në seksionin DIGITAL I / O, futni 1 tel në hyrjen 9. Lidhni skajin tjetër në hyrjen a3.

Hapi 4: Në tabelën e qarkut, lidhni telin 1 me një hyrje pozitive (+). Lidhni skajin tjetër në h24 hyrjen.

Hapi 5: Në tabelën e qarkut, futni 1 tel në një hyrje negative (+). Lidheni skajin tjetër në hyrjen a2.

Hapi 6: Në tabelën e qarkut, futni telin 1 në një hyrje negative (-). Lidheni skajin tjetër në hyrjen b1.

Hapi 7: Në tabelën e qarkut, futni telin 1 në një hyrje negative (-). Lidheni skajin tjetër në hyrjen i19.

Hapi 8: Në tabelën e qarkut, vendosni rezistencën në hyrjet i20 dhe i24.

*Fotografia e fundit i referohet aplikacioneve të botës reale.

Hapi 5: Lidheni Arduino me LCD

Lidheni Arduino me LCD
Lidheni Arduino me LCD
Lidheni Arduino me LCD
Lidheni Arduino me LCD
Lidheni Arduino me LCD
Lidheni Arduino me LCD

*Ndiqni këtë lidhje (https://ef.engr.utk.edu/ef230-2017-08/projects/ard…) dhe më pas referojuni hapave që kam dhënë më poshtë për të lidhur një LCD me një Arduino:

Hapi 1: Hapni skedarin zip

Hapi 2: hapni skedarin ReadMe dhe ndiqni udhëzimet

Materialet e nevojshme

1.) LCD 16x2 e ngjashme me këtë pajisje nga SparkFun -

2.) Telat e bluzave

*Referojuni fotografive, respektivisht.

Ky hap do të tregojë se si të krijoni një bibliotekë shtesë LCD dhe të shfaqni "Train Coming" në një LCD.

Kunjat e telave si më poshtë:

Pin LCD -> Arduino Pin

1 (VSS) -> Tokë

2 (VDD) -> 5V

3 (V0) -> Kunja e mesit në Sensorin Flex

4 (RS) -> D7

5 (R/W) -> Tokë

6 (E) -> d6

11 (DB4) - D5 (PWM)

12 (DB5) -> D4

13 (DB6) -> D3 (PWM)

14 (DB7) -> D2

15 (LED+) -> 5 V

16 (LED-) -> Tokë

Hapi 6: Lidhja e Potenciometrit të Butë

Lidhja e Potenciometrit të Butë
Lidhja e Potenciometrit të Butë
Lidhja e Potenciometrit të Butë
Lidhja e Potenciometrit të Butë
Lidhja e Potenciometrit të Butë
Lidhja e Potenciometrit të Butë

Materialet e nevojshme

1.) 1 LED

2.) 1 Potenciometër i butë

3.) Telat Jumper

4.) 3 330 Ohm Rezistencë

5.) Rezistencë 10K Ohm

*Referojuni fotografive, respektivisht.

Në këtë qark, ne do të përdorim një lloj tjetër të rezistencës së ndryshueshme, një potenciometër të butë. Ky është një shirit i hollë dhe fleksibël që mund të zbulojë se ku po aplikohet presioni. Duke shtypur pjesët e ndryshme të shiritit, mund të ndryshoni rezistencën nga 100 në 10 K Ohm. Ju mund ta përdorni këtë aftësi për të ndjekur lëvizjen në potenciometër ose si një buton. Në këtë qark, ne do të aktivizojmë potenciometrin e butë për të kontrolluar një LED RGB.

Hapi 1: Në tabelën Arduino në seksionin DIGITAL I / O, futni 1 kunj në hyrjen 10 dhe 1 kunj në hyrjen 11. Përkatësisht, lidhni skajin tjetër të atyre kunjave në hyrjen h6 dhe h7.

Hapi 2: Në tabelën e qarkut, lidhni LED -in në hyrjet a4, a5, a6 dhe a7.

Hapi 3: Në tabelën e qarkut, vendosni rezistencat 3 330 ohm në hyrjet e4-g4, e6-g6 dhe e7-g7.

Hapi 4: Në tabelën e qarkut, futni 1 kunj në hyrjen e5. Lidheni skajin tjetër të atij kunjit në një hyrje negative (-).

Hapi 5: Në tabelën e qarkut, vendosni rezistencën 10K ohm në hyrjet i19-negative (-).

Hapi 6: Në tabelën e qarkut, futni 1 kunj në j18. Lidheni skajin tjetër të atij kunjit në një hyrje pozitive (+).

Hapi 7: Në tabelën e qarkut, futni 1 kunj në hyrjen j20. Lidheni skajin tjetër të atij kunjit në një hyrje negative (-).

Hapi 7: Provoni përmirësimet tuaja në një sistem hekurudhor të zgjuar

Provoni përmirësimet tuaja në një sistem të zgjuar hekurudhor
Provoni përmirësimet tuaja në një sistem të zgjuar hekurudhor
Provoni përmirësimet tuaja në një sistem të zgjuar hekurudhor
Provoni përmirësimet tuaja në një sistem të zgjuar hekurudhor

Në këtë pikë, kodi juaj MATLAB duhet të jetë funksional dhe bordi Arduino duhet të jetë i lidhur me saktësi së bashku me të gjithë përbërësit e shtuar. Provojeni në një Sistem Smart Hekurudhor të certifikuar dhe shikoni nëse përmirësimet tuaja e bëjnë sistemin më të sigurt.

Recommended: