Obsah:

LifeGuard 2.0: 7 krokov (s obrázkami)
LifeGuard 2.0: 7 krokov (s obrázkami)

Video: LifeGuard 2.0: 7 krokov (s obrázkami)

Video: LifeGuard 2.0: 7 krokov (s obrázkami)
Video: Slow Your Roll: Урок №1 с Danny 2024, Júl
Anonim
LifeGuard 2.0
LifeGuard 2.0

Chceli ste niekedy vykonávať matematické operácie, odčítať údaje zo senzorov, monitorovať analógové a digitálne vstupy a ovládať analógové a digitálne výstupy bez predchádzajúcej skúsenosti s elektronikou? Ak áno, tento projekt je práve pre vás! Na vytvorenie zariadenia, ktoré bude možné použiť na monitorovanie a vylepšovanie systému EF Express SMART RAIL, použijeme mikrokontrolér a MATLAB. S mikrokontrolérom sú možnosti vstupov a výstupov (signál/informácia vstupujúca do dosky a signál vystupujúci z dosky) nekonečné. Ako vstupy použijeme flex senzor a potenciometer. Ich výstupmi bude správa prostredníctvom LCD obrazovky a LED svetiel spolu s bzučiakom. Vylepšenia, ktoré dúfame implementujeme do systému SMART RAIL, sa týkajú zlepšenia bezpečnosti systému. Vezmite si notebook a mikrokontrolér a začnime!

Krok 1: Softvér a materiály

Softvér a materiály
Softvér a materiály
Softvér a materiály
Softvér a materiály
Softvér a materiály
Softvér a materiály
Softvér a materiály
Softvér a materiály

Potrebný softvér

1.) MATLAB

- Do počítača si budete musieť stiahnuť miestnu verziu programu MATLAB. Prejdite na mathworks.com a vytvorte si účet MATHWORKS, sťahujte súbory a aktivujte si licenciu.

-Mali by ste si stiahnuť a nainštalovať VŠETKY dostupné sady nástrojov pre najnovšie vydanie (R2016a alebo R2016b).

-Mac užívatelia: Na spustenie R2015b musíte mať OSX 10.9.5 alebo novší, je v poriadku spustiť staršiu verziu MATLABu.

2.) Balík hardvérovej podpory Arduino:

-Nainštalujte balík hardvérovej podpory Arduino. Otvorte MATLAB. Na karte MATLAB Home v ponuke Prostredie vyberte položku Doplnky Získať balíky hardvérovej podpory Vyberte „Balíček podpory MATLAB pre hardvér Arduino“. Budete sa musieť prihlásiť do svojho účtu MATHWORKS

-Ak sa vaša inštalácia preruší a pri inštalácii hardvérového balíka máte za sebou niekoľko neúspešných pokusov/chýb - vyhľadajte a odstráňte priečinok, ktorý si Arduino stiahlo na pevný disk, a začnite od začiatku.

Potrebný materiál

1.) Prenosný alebo stolný počítač

2.) SparkFun Arduino Board

3.) Flex senzor

4.) Potenciometer

5.) LCD obrazovka

6.) LED svetlo

7.) Sada SparkFun Inventor's (Nájsť online)

8.) USB kábel a mini USB

9.) Prepojovacie vodiče

10.) Piezo bzučiak

Krok 2: Pripojte sa k svojmu Arduinu a určte port COM

(Váš COM port sa môže zmeniť pri každom pripojení) Pripojte kábel Arduino USB k počítaču a mini USB k doske Arduino. Na stiahnutie ovládačov možno budete musieť niekoľko minút počkať.

Určenie portu COM:

Na PC

Metóda 1: V MATLABe použite príkaz - fopen (serial ('nada'))

-určiť váš port. Môže sa zobraziť chyba takto: Chyba pri použití sériového čísla/fopen (riadok 72) Otvorenie zlyhalo: Port: NADA nie je k dispozícii. Dostupné porty: COM3. Táto chyba naznačuje, že váš port je 3.

-Ak metóda 1 na vašom počítači zlyhá, otvorte Správcu zariadení a rozbaľte zoznam Porty (COM a LPT). Poznačte si číslo na sériovom porte USB. napr. 'USB Serial Port (COM *)' Číslo portu je * tu.

-Ak sa nezobrazí žiadny port, zatvorte MATLAB a reštartujte počítač. Otvorte MATLAB a skúste znova príkaz fopen (serial ('nada')).

-Ak sa to nepodarí, možno budete musieť stiahnuť ovládače SparkFun zo súboru CDM_v2.12.00_WHQL_Certified.exe, otvorte a spustite súbor CDM_v2.12.00_WHQL_Certified.exe a vyberte položku Extrahovať. (Možno budete musieť súbor otvoriť v programe Explorer, kliknúť pravým tlačidlom myši a vybrať príkaz „Spustiť ako správca“).

-V príkazovom okne MATLAB vytvorte objekt Arduino - a = arduino ('comx', 'uno'); % x je vaše číslo portu zhora pre počítače (žiadne predchádzajúce nuly!)

Na počítači Mac

Metóda 1: Z príkazového riadka MATLAB alebo v termináli Mac zadajte: 'ls /dev/tty.*' Poznačte si číslo portu uvedené pre dev/tty.usbmodem*alebo dev/tty.usbserial*. Číslo portu je * tu.

-Ak metóda 1 na vašom MAC zlyhá, možno budete musieť

-Ukončite MATLAB

-Zatvorte softvér Arduino a odpojte kábel Arduino USB

-nainštalujte Java 6 Runtime

-nainštalujte rozšírenie jadra ovládača USB

-Reštartujte počítač

-Znova pripojte kábel USB Arduino

-Spustite z príkazového riadka MATLAB alebo terminálu Mac: ls /dev/tty.*

-Poznačte si číslo portu uvedené pre dev/tty.usbmodem* alebo dev/tty.usbserial*. Číslo portu je * tu.

-V príkazovom okne MATLAB vytvorte objekt Arduino - a = arduino ('/dev/tty.usbserial*', 'uno'); % * je vaše číslo portu zhora pre MAC alebo '/dev/tty.usbmodem*'

Krok 3: Kód Matlab

Kód Matlab
Kód Matlab
Kód Matlab
Kód Matlab

Vstupy:

1.) Flex senzor

2.) Potenciometer

Výstupy:

1.) LCD obrazovka so správou, ktorá znie „Train Coming“

2.) LED svetlo

3.) Piezo bzučiak

V tomto kroku budeme konštruovať kód, ktorý bude analyzovať vstupy z dosky Arduino a poskytovať výstupy na základe výsledkov analýzy MATLABu. Nasledujúci kód vám umožní vykonávať niekoľko funkcií: keď je potenciometer spustený, piezový bzučiak vydáva striedavé frekvencie a červená LED dióda bliká. Keď vlak nie je detekovaný, zelená LED dióda sa rozsvieti. Keď je spustený snímač Flex, LED chamtivosť sa vypne, červená LED sa rozsvieti a na LCD displeji sa zobrazí správa „Vlak prichádza“.

Kód MATLAB:

%remery1, shornsb1, wmurrin

Účel: Výstraha vlaku

%IIvýstup: potenciometer, snímač ohybu

%výstupu: LCD, zvuk, svetlo

%Ak doska nie je inicializovaná alebo má problémy s pripojením, spustite príkaz

%pod príkazmi v komentároch. Nemusia byť vykonávané zakaždým

%zmazať všetko

%zavrieť všetky

%clc

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

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

%Konfigurujte dosku, keď je pripojená

configurePin (a, 'D8', 'pullup');%konfigurácia D8

configurePin (a, 'D9', 'PWM');%konfigurácia D9

čas = 50; %nastavený čas na 50

clearLCD (lcd) %inicializácia LCD

%Začiatočná slučka

kým čas> 0

%Napätie senzora Flex určuje, či je svetlo zelené alebo svetlo

%je červené a LCD zobrazuje „vlak prichádza“

flex_status = readVoltage (a, 'A0'); %odčítaného napätia flex senzora

ak flex_status> 4 %, ak je napätie vyššie ako 4, spustite slučku

writeDigitalPin (a, 'D12', 0) %vypne zelenú

writeDigitalPin (a, 'D11', 1) %zapnite na červeno

printLCD (lcd, 'Train Coming') %zobrazí "vlak prichádza" na LCD

pauza (5) %Počkajte 5 sekúnd

clearLCD (lcd) %Vymazanie správy z LCD

writeDigitalPin (a, 'D11', 0) %Vypnite červenú diódu LED

inak

koniec

pe_status = readVoltage (a, 'A2'); %Prečítajte napätie potenciometra

ak pe_status> 2 %, ak je napätie väčšie ako 2, spustite slučku

writeDigitalPin (a, 'D13', 1);%zapnite červenú LED

playTone (a, 'D9', 400, 0,25);% Hrajte 400 Hz na piezo bzučiaku, 0,25 s

writeDigitalPin (a, 'D13', 0)%vypne červenú diódu LED

pauza (0,25)%počkajte 0,25 sekundy

writeDigitalPin (a, 'D13', 1) %Opakujte vyššie, s bzučiakom pri 200 Hz

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

writeDigitalPin (a, 'D13', 0)

pauza (.25)

writeDigitalPin (a, 'D13', 1);%Opakujte vyššie

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

writeDigitalPin (a, 'D13', 0)

pauza (.25)

writeDigitalPin (a, 'D13', 1)

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

writeDigitalPin (a, 'D13', 0)

pauza (.25)

writeDigitalPin (a, 'D13', 1) %Opakujte vyššie

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

writeDigitalPin (a, 'D13', 0)

pauza (.25)

writeDigitalPin (a, 'D13', 1)

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

writeDigitalPin (a, 'D13', 0)

pauza (.25)

writeDigitalPin (a, 'D13', 1) %Opakujte vyššie

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

writeDigitalPin (a, 'D13', 0)

pauza (.25)

writeDigitalPin (a, 'D13', 1)

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

writeDigitalPin (a, 'D13', 0)

pauza (.25)

inak

writeDigitalPin (a, 'D12', 1)%, ak je napätie menšie ako 2, zapnite zelenú LED

writeDigitalPin (a, 'D13', 0)%zapnutia červenej LED

koniec

koniec

Krok 4: Zapojenie senzora Flex

Zapojenie senzora Flex
Zapojenie senzora Flex
Zapojenie senzora Flex
Zapojenie senzora Flex
Zapojenie senzora Flex
Zapojenie senzora Flex
Zapojenie senzora Flex
Zapojenie senzora Flex

Potrebný materiál

1.) 1 Flex senzor

2.) 1 Rezistor 10K Ohm

3.) 8 prepojovacích káblov

*Pozrite sa na obrázky, resp.

V tomto obvode budeme merať flex. Flexibilný snímač používa uhlík na plastovom páse, aby pôsobil ako variabilný odpor, ale namiesto zmeny odporu otáčaním gombíka zmeníte ohnutím súčiastky. Delič napätia na detekciu zmeny odporu. V našom prípade bude pomocou flexibilného senzora detekovať prejazd vlaku a prikázať LCD obrazovke (pozri obrázok), aby si prečítal správu „Vlak prichádza“.

*Na obrázkoch zobrazujúcich pokyny na zapojenie senzora Flex sa odkazujte iba na vodiče súvisiace s zapojením senzora Flex. Ignorujte káble pre servo.

Drôtené kolíky nasledovne:

Krok 1: Na doske Arduino v sekcii NAPÁJANIE zapojte 1 vodič do vstupu 5 V a 1 vodič do vstupu GND (uzemnenie). Druhý koniec 5V vodiča zapojte do kladného (+) vstupu na doske plošných spojov. Druhý koniec vodiča GND zapojte do záporného (-) vstupu na doske plošných spojov.

Krok 2: Na doske Arduino v sekcii ANALOG IN zapojte 1 do vstupu A0. Zapojte koniec tohto drôtu do vstupu j20 na doske plošných spojov.

Krok 3: Na doske Arduino v sekcii DIGITAL I / O zapojte 1 vodič do vstupu 9. Druhý koniec zapojte do vstupu a3.

Krok 4: Na doske zapojte 1 vodič do kladného (+) vstupu. Druhý koniec zapojte do vstupu h24.

Krok 5: Na doske zapojte 1 vodič do záporného (+) vstupu. Druhý koniec zapojte do vstupu a2.

Krok 6: Na doske zapojte 1 vodič do záporného (-) vstupu. Druhý koniec zapojte do vstupu b1.

Krok 7: Na doske zapojte 1 vodič do záporného (-) vstupu. Druhý koniec zapojte do vstupu i19.

Krok 8: Na doske plošných spojov umiestnite odpor na vstupy i20 a i24.

*Posledný obrázok sa týka aplikácií v reálnom svete.

Krok 5: Pripojte Arduino k LCD

Pripojte Arduino k LCD
Pripojte Arduino k LCD
Pripojte Arduino k LCD
Pripojte Arduino k LCD
Pripojte Arduino k LCD
Pripojte Arduino k LCD

*Nasledujte tento odkaz (https://ef.engr.utk.edu/ef230-2017-08/projects/ard…) a potom postupujte podľa nižšie uvedených krokov na pripojenie LCD k Arduinu:

Krok 1: Otvorte súbor zip

Krok 2: otvorte súbor ReadMe a postupujte podľa pokynov

Potrebný materiál

1.) 16x2 LCD podobný tomuto zariadeniu od SparkFun -

2.) Prepojovacie vodiče

*Pozrite sa na obrázky, resp.

Tento krok ukáže, ako vytvoriť doplnkovú knižnicu LCD a ako na nej zobraziť „Train Coming“.

Drôtené kolíky nasledovne:

Kolík LCD -> Pin Arduino

1 (VSS) -> Zem

2 (VDD) -> 5V

3 (V0) -> Stredný kolík na senzore Flex

4 (RS) -> D7

5 (R/W) -> Zem

6 (E) -> d6

11 (DB4) - D5 (PWM)

12 (DB5) -> D4

13 (DB6) -> D3 (PWM)

14 (DB7) -> D2

15 (LED+) -> 5 V

16 (LED-) -> Zem

Krok 6: Pripojenie mäkkého potenciometra

Pripojovací mäkký potenciometer
Pripojovací mäkký potenciometer
Pripojovací mäkký potenciometer
Pripojovací mäkký potenciometer
Pripojovací mäkký potenciometer
Pripojovací mäkký potenciometer

Potrebný materiál

1.) 1 LED dióda

2.) 1 Mäkký potenciometer

3.) Prepojovacie vodiče

4.) 3 330 Ohm odpor

5.) 10K ohmový odpor

*Pozrite sa na obrázky, resp.

V tomto obvode použijeme iný druh variabilného odporu, mäkký potenciometer. Jedná sa o tenký a flexibilný pás, ktorý dokáže zistiť, kde sa vyvíja tlak. Stlačením rôznych častí pásu môžete meniť odpor od 100 do 10 K ohmov. Túto schopnosť môžete použiť na sledovanie pohybu na potenciometri alebo ako tlačidlo. V tomto obvode uvedieme do prevádzky mäkký potenciometer na ovládanie RGB LED.

Krok 1: Na doske Arduino v sekcii DIGITAL I / O zapojte 1 pin do vstupu 10 a 1 pin do vstupu 11. Respektíve druhý koniec týchto pinov zapojte do vstupu h6 a h7.

Krok 2: Na doske zapojte diódu LED do vstupov a4, a5, a6 a a7.

Krok 3: Na dosku s plošnými spojmi umiestnite 3 330 ohmové odpory na vstupy e4-g4, e6-g6 a e7-g7.

Krok 4: Na doske zapojte 1 kolík do vstupu e5. Druhý koniec tohto kolíka zapojte do záporného (-) vstupu.

Krok 5: Na doske plošných spojov umiestnite odpor 10 K ohmov na vstupy i19-negatívne (-).

Krok 6: Na doske zapojte 1 pin do j18. Druhý koniec tohto kolíka zapojte do kladného (+) vstupu.

Krok 7: Na doske zapojte 1 pin do vstupu j20. Druhý koniec tohto kolíka zapojte do záporného (-) vstupu.

Krok 7: Otestujte svoje vylepšenia v systéme Smart Rail

Otestujte svoje vylepšenia na systéme Smart Rail
Otestujte svoje vylepšenia na systéme Smart Rail
Otestujte svoje vylepšenia na systéme Smart Rail
Otestujte svoje vylepšenia na systéme Smart Rail

V tomto mieste by mal byť váš kód MATLAB funkčný a doska Arduino by mala byť presne prepojená so všetkými pridanými komponentmi. Vyskúšajte to na certifikovanom systéme Smart Rail a zistite, či vaše vylepšenia robia systém bezpečnejším.

Odporúča: