Kazalo:

LifeGuard 2.0: 7 korakov (s slikami)
LifeGuard 2.0: 7 korakov (s slikami)

Video: LifeGuard 2.0: 7 korakov (s slikami)

Video: LifeGuard 2.0: 7 korakov (s slikami)
Video: И всё-таки она вертится! ► 1 Прохождение Dying Light 2: Stay Human 2024, Julij
Anonim
LifeGuard 2.0
LifeGuard 2.0

Ste si kdaj želeli izvajati matematične operacije, meriti odčitke senzorjev, spremljati analogne in digitalne vhode ter upravljati analogne in digitalne izhode brez predhodnih izkušenj z elektroniko? Če da, je ta projekt samo za vas! Z mikrokrmilnikom in MATLAB -om bomo ustvarili napravo, ki jo lahko uporabimo za spremljanje in izboljšanje sistema EF Express SMART RAIL. Z mikrokrmilnikom so možnosti za vhode in izhode (signal/informacije, ki gredo na ploščo in signal, ki zapušča ploščo) neskončne. Za vhod bomo uporabljali senzor upogibanja in potenciometer. Njihovi izhodi bodo sporočilo prek LCD zaslona in LED luči skupaj z zvočnikom. Izboljšave, ki jih upamo uvesti v sistem SMART RAIL, so povezane z izboljšanjem varnosti sistema. Vzemite svoj prenosnik in mikrokrmilnik in začnimo!

1. korak: Programska oprema in materiali

Programska oprema in materiali
Programska oprema in materiali
Programska oprema in materiali
Programska oprema in materiali
Programska oprema in materiali
Programska oprema in materiali
Programska oprema in materiali
Programska oprema in materiali

Potrebna programska oprema

1.) MATLAB

- V računalnik boste morali prenesti lokalno različico programa MATLAB. Pojdite na mathworks.com in nastavite račun MATHWORKS, prenesite datoteke in aktivirajte licenco.

-Za najnovejšo različico (R2016a ali R2016b) morate prenesti in namestiti VSE razpoložljive nabore orodij.

-Mac uporabniki: za zagon R2015b morate imeti OSX 10.9.5 ali novejšo različico, v redu je zagnati starejšo različico MATLAB -a.

2.) Paket za podporo strojne opreme Arduino:

-Namestite paket podpore za strojno opremo Arduino. Odprite MATLAB. Na zavihku MATLAB Domov v meniju Okolje izberite Dodatki Pridobite pakete podpore za strojno opremo Izberite "Podporni paket MATLAB za strojno opremo Arduino". Morali se boste prijaviti v svoj račun MATHWORKS

-Če se namestitev prekine in imate pri nameščanju strojne opreme zaporedne neuspešne poskuse/napake - poiščite in izbrišite mapo Arduino, ki ste jo prenesli na trdi disk, in začnite od začetka.

Potrebni materiali

1.) Prenosni ali namizni računalnik

2.) Plošča Arduino SparkFun

3.) Senzor upogibanja

4.) Potenciometer

5.) LCD zaslon

6.) LED luč

7.) SparkFun Inventor's Kit (Najdi na spletu)

8.) Kabel USB in mini USB

9.) Mostične žice

10.) Piezo zvonec

Korak: Povežite se s svojim Arduinom in določite vrata COM

(Vrata COM se lahko spremenijo vsakič, ko vklopite) Priključite kabel USB Arduino v računalnik, mini USB pa v ploščo Arduino. Morda boste morali počakati nekaj minut, da se gonilniki naložijo.

Če želite določiti vrata COM:

Na osebnem računalniku

1. način: V MATLAB -u uporabite ukaz - fopen (serijski ('nada'))

-za določitev vašega com porta. Morda boste dobili takšno napako: Napaka pri uporabi serijske/fopen (vrstica 72) Odpiranje ni uspelo: Vrata: NADA ni na voljo. Razpoložljiva vrata: COM3. Ta napaka označuje, da so vaša vrata 3.

-Če metoda 1 v vašem računalniku ne uspe, odprite upravitelja naprav in razširite seznam vrat (COM in LPT). Zapomnite si številko na zaporednih vratih USB. npr. 'Serijska vrata USB (COM *)' Številka vrat je tukaj *.

-Če vrata niso prikazana, zaprite MATLAB in znova zaženite računalnik. Odprite MATLAB in poskusite znova fopen (serijski ('nada')).

-Če to ne uspe, boste morda morali prenesti gonilnike SparkFuna iz datoteke CDM_v2.12.00_WHQL_Certified.exe, odprite in zaženite datoteko CDM_v2.12.00_WHQL_Certified.exe in izberite Extract. (Morda boste morali datoteko odpreti v raziskovalcu, z desno tipko miške kliknite in zaženi kot skrbnik).

-V ukaznem oknu MATLAB ustvarite objekt Arduino - a = arduino ('comx', 'uno'); % x je vaša številka vrat od zgoraj za osebne računalnike (brez predhodnih ničel!)

Na Macu

1. način: V ukazni vrstici MATLAB ali v terminalu Mac vnesite: 'ls /dev/tty.*' Upoštevajte številko vrat, navedeno za dev/tty.usbmodem*ali dev/tty.usbserial*. Številka vrat je tukaj *.

-Če metoda 1 ne uspe na vašem MAC -ju, boste morda morali

-Zapustite MATLAB

-Zaprite programsko opremo Arduino in odklopite kabel USB Arduino

-namestite Java 6 Runtime

-namestite razširitev jedra gonilnika USB

-Znova zaženite računalnik

-Ponovno priključite kabel USB Arduino

-Zaženi iz ukazne vrstice MATLAB ali terminala Mac: ls /dev/tty.*

-Opazite številko vrat, navedeno za dev/tty.usbmodem* ali dev/tty.usbserial*. Številka vrat je tukaj *.

-V ukaznem oknu MATLAB ustvarite objekt Arduino - a = arduino ('/dev/tty.usbserial*', 'uno'); % * je vaša številka vrat od zgoraj za MAC -je ali '/dev/tty.usbmodem*'

3. korak: Koda Matlab

Koda Matlab
Koda Matlab
Koda Matlab
Koda Matlab

Vhodi:

1.) Senzor upogibanja

2.) Potenciometer

Izhodi:

1.) LCD zaslon s sporočilom "Vlak prihaja"

2.) LED luč

3.) Piezo zvonec

V tem koraku bomo izdelali kodo, ki bo analizirala vložke iz plošče Arduino in zagotovila izide na podlagi rezultatov analize MATLAB -a. Naslednja koda vam bo omogočila izvajanje več funkcij: ob sprožitvi potenciometra bo piezo zvočni signal oddajal izmenične frekvence in rdeča LED bo utripala. Ko vlak ni zaznan, bo zasvetila zelena LED. Ko se sproži senzor Flex, se bo pohlepna LED izklopila, rdeča LED bo zasvetila, na LCD -prikazovalniku pa bo prikazano sporočilo "Vlak prihaja".

Koda MATLAB:

%remery1, shornsb1, wmurrin

%Namen: Opozorilo vlaka

%IIvhod: potenciometer, senzor upogibanja

%izhod: LCD, zvok, svetloba

%Če plošča ni inicializirana ali ima težave s povezavo, izvedite datoteko

%pod ukazi v komentarjih. Ni jih treba vsakič izvesti

%Počisti vse

%zapre vse

%clc

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

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

%Konfigurirajte ploščo, ko je priključena

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

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

čas = 50; %nastavljen čas na 50

clearLCD (lcd) %inicializira LCD

%Začni zanko

čas> 0

%Napetost senzorja Flex določa, ali je lučka zelena ali sveti

%je rdeče in LCD -prikazovalniki "vlak prihaja"

flex_status = readVoltage (a, 'A0'); %bralna napetost senzorja upogibanja

če je flex_status> 4 %, če je napetost večja od 4, sprožite zanko

writeDigitalPin (a, 'D12', 0) %izklopi zeleno

writeDigitalPin (a, 'D11', 1) %sveti rdeče

printLCD (lcd, 'Train Coming') %prikaz "vlak prihaja" na LCD

premor (5) %Počakajte 5 sekund

clearLCD (lcd) %Jasno sporočilo z LCD -ja

writeDigitalPin (a, 'D11', 0) %Izklopite rdečo LED

drugače

konec

pe_status = readVoltage (a, 'A2'); %Preberite napetost potenciometra

če je pe_status> 2 %, če je napetost večja od 2, sprožite zanko

writeDigitalPin (a, 'D13', 1);%vklopi rdečo LED

playTone (a, 'D9', 400,.25);% Predvajaj 400 Hz na zvočniku Piezo, 0,25 s

writeDigitalPin (a, 'D13', 0)%izklopi rdečo LED

premor (0,25)%čakanje 0,25 sekunde

writeDigitalPin (a, 'D13', 1) %Ponovite zgoraj, z zvočnikom pri 200Hz

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

writeDigitalPin (a, 'D13', 0)

premor (0,25)

writeDigitalPin (a, 'D13', 1);%Ponovite zgoraj

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

writeDigitalPin (a, 'D13', 0)

premor (0,25)

writeDigitalPin (a, 'D13', 1)

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

writeDigitalPin (a, 'D13', 0)

premor (0,25)

writeDigitalPin (a, 'D13', 1) %Ponovite zgoraj

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

writeDigitalPin (a, 'D13', 0)

premor (0,25)

writeDigitalPin (a, 'D13', 1)

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

writeDigitalPin (a, 'D13', 0)

premor (0,25)

writeDigitalPin (a, 'D13', 1) %Ponovite zgoraj

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

writeDigitalPin (a, 'D13', 0)

premor (0,25)

writeDigitalPin (a, 'D13', 1)

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

writeDigitalPin (a, 'D13', 0)

premor (0,25)

drugače

writeDigitalPin (a, 'D12', 1)%, če je napetost manjša od 2, vklopite zeleno LED

writeDigitalPin (a, 'D13', 0)%obrata rdeče LED

konec

konec

4. korak: Ožičenje senzorja Flex

Ožičenje senzorja Flex
Ožičenje senzorja Flex
Ožičenje senzorja Flex
Ožičenje senzorja Flex
Ožičenje senzorja Flex
Ožičenje senzorja Flex
Ožičenje senzorja Flex
Ožičenje senzorja Flex

Potrebni materiali

1.) 1 upogljivi senzor

2.) 1 10K ohmski upor

3.) 8 žičnih mostov

*Oglejte si slike.

V tem vezju bomo merili flex. Senzor upogibanja uporablja ogljik na plastičnem traku, da deluje kot spremenljiv upor, vendar namesto da spreminjate upor z obračanjem gumba, spremenite s upogibanjem komponente. Napetostni delilnik za zaznavanje spremembe upora. V našem primeru bomo s senzorjem flex odkrili vlak, ki bo ukazal LCD zaslon (glej sliko) in prebral sporočilo "Vlak prihaja".

*Na slikah, ki prikazujejo navodila za ožičenje senzorja Flex, se nanašajo le na žice glede na ožičenje senzorja Flex. Ne upoštevajte ožičenja za servo.

Žični zatiči, kot sledi:

1. korak: Na ploščo Arduino v razdelku POWER priključite 1 žico na vhod 5V in 1 žico na vhod GND (ozemljitev). Drugi konec 5V žice priključite na pozitiven (+) vhod na vezju. Drugi konec žice GND priključite na negativni (-) vhod na vezju.

2. korak: Na ploščo Arduino v razdelku ANALOG IN priključite 1 na vhod A0. Konec te žice priključite na vhod j20 na vezju.

3. korak: Na ploščo Arduino v razdelku DIGITAL I / O priključite 1 žico v vhod 9. Drugi konec priključite v vhod a3.

4. korak: Na vezje priključite 1 žico v pozitivni (+) vhod. Drugi konec priključite na vhod h24.

5. korak: Na vezje priključite 1 žico v negativni (+) vhod. Drugi konec priključite na vhod a2.

6. korak: Na vezje priključite 1 žico na negativni (-) vhod. Drugi konec priključite na vhod b1.

7. korak: Na vezje priključite 1 žico na negativni (-) vhod. Drugi konec priključite na vhod i19.

8. korak: Na vezje vstavite upor v vhode i20 in i24.

*Zadnja slika se nanaša na aplikacije v resničnem svetu.

5. korak: Arduino priključite na LCD

Arduino priključite na LCD
Arduino priključite na LCD
Arduino priključite na LCD
Arduino priključite na LCD
Arduino priključite na LCD
Arduino priključite na LCD

*Sledite tej povezavi (https://ef.engr.utk.edu/ef230-2017-08/projects/ard…) in nato upoštevajte spodnje korake za povezavo LCD-ja z Arduinom:

Korak: Odprite datoteko zip

2. korak: odprite datoteko ReadMe in sledite navodilom

Potrebni materiali

1.) 16x2 LCD, podoben tej napravi podjetja SparkFun -

2.) Mostične žice

*Oglejte si slike.

Ta korak bo pokazal, kako ustvariti knjižnico dodatkov LCD in na LCD-prikazovalniku prikazati "Train Coming".

Žični zatiči, kot sledi:

LCD Pin -> Arduino Pin

1 (VSS) -> Ozemljitev

2 (VDD) -> 5V

3 (V0) -> Srednji zatič na senzorju Flex

4 (RS) -> D7

5 (R/W) -> Ozemljitev

6 (E) -> d6

11 (DB4) - D5 (PWM)

12 (DB5) -> D4

13 (DB6) -> D3 (PWM)

14 (DB7) -> D2

15 (LED+) -> 5 V

16 (LED-) -> Ozemljitev

6. korak: Priključitev mehkega potenciometra

Priključitev mehkega potenciometra
Priključitev mehkega potenciometra
Priključitev mehkega potenciometra
Priključitev mehkega potenciometra
Priključitev mehkega potenciometra
Priključitev mehkega potenciometra

Potrebni materiali

1.) 1 LED

2.) 1 mehki potenciometer

3.) Mostične žice

4.) 3 330 ohmski upor

5.) 10K ohmski upor

*Oglejte si slike.

V tem vezju bomo uporabili drugo vrsto spremenljivega upora, mehak potenciometer. To je tanek in prilagodljiv trak, ki zazna, kje se izvaja pritisk. S pritiskom na različne dele traku lahko upor spreminjate od 100 do 10 K ohmov. To sposobnost lahko uporabite za sledenje gibanju na potenciometru ali kot gumb. V tem vezju bomo aktivirali mehak potenciometer za nadzor LED RGB.

Korak 1: Na plošči Arduino v razdelku DIGITAL I / O priključite 1 nožico na vhod 10 in 1 nožico na vhod 11. Ustrezno priključite drugi konec teh zatičev na vhode h6 in h7.

2. korak: Na vezje vklopite LED v vhode a4, a5, a6 in a7.

3. korak: Na vezje namestite 3 330 ohmske upore v vhode e4-g4, e6-g6 in e7-g7.

4. korak: Na vezje vtaknite 1 zatič v vhod e5. Drugi konec tega zatiča priključite na negativni (-) vhod.

5. korak: Na vezje vstavite 10K ohmski upor v vhode i19-negative (-).

6. korak: Na vezje vtaknite 1 pin v j18. Drugi konec tega zatiča priključite na pozitiven (+) vhod.

7. korak: Na vezje vtaknite 1 zatič v vhod j20. Drugi konec tega zatiča priključite na negativni (-) vhod.

7. korak: Preizkusite svoje izboljšave na pametnem železniškem sistemu

Preizkusite svoje izboljšave na pametnem železniškem sistemu
Preizkusite svoje izboljšave na pametnem železniškem sistemu
Preizkusite svoje izboljšave na pametnem železniškem sistemu
Preizkusite svoje izboljšave na pametnem železniškem sistemu

Na tej točki bi morala biti vaša koda MATLAB funkcionalna in plošča Arduino mora biti natančno povezana skupaj z vsemi dodatnimi komponentami. Preizkusite ga na certificiranem pametnem železniškem sistemu in preverite, ali vaše izboljšave naredijo sistem varnejši.

Priporočena: