Obsah:
- Krok 1: Software a materiály
- Krok 2: Připojte se k vašemu Arduinu a určete port COM
- Krok 3: Kód Matlab
- Krok 4: Zapojení senzoru Flex
- Krok 5: Připojte Arduino k LCD
- Krok 6: Připojení měkkého potenciometru
- Krok 7: Otestujte svá vylepšení na systému Smart Rail
Video: LifeGuard 2.0: 7 kroků (s obrázky)
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:24
Chtěli jste někdy provádět matematické operace, provádět odečty snímačů, sledovat analogové a digitální vstupy a ovládat analogové a digitální výstupy bez předchozích zkušeností s elektronikou? Pokud ano, tento projekt je právě pro vás! Pomocí mikrokontroléru a MATLABu vytvoříme zařízení, které lze použít k monitorování a vylepšování systému EF Express SMART RAIL. S mikrokontrolérem jsou možnosti vstupů a výstupů (signál/informace vstupující do desky a signál opouštějící desku) nekonečné. Jako vstupy použijeme flex senzor a potenciometr. Jejich výstupy budou zprávy přes LCD obrazovku a LED světla spolu s bzučákem. Vylepšení, která doufáme implementujeme do systému SMART RAIL, se vztahují ke zlepšení bezpečnosti systému. Popadněte svůj notebook a mikrokontrolér a můžeme začít!
Krok 1: Software a materiály
Potřebný software
1.) MATLAB
- Do počítače si budete muset stáhnout místní verzi MATLABu. Přejděte na stránku mathworks.com a vytvořte si účet MATHWORKS, stahujte soubory a aktivujte svou licenci.
-Měli byste si stáhnout a nainstalovat VŠECHNY dostupné sady nástrojů pro nejnovější verzi (R2016a nebo R2016b).
-Mac uživatelé: ke spuštění R2015b musíte mít OSX 10.9.5 nebo novější, je v pořádku spustit starší verzi MATLABu.
2.) Balíček hardwarové podpory Arduino:
-Nainstalujte balíček hardwarové podpory Arduino. Otevřete MATLAB. Na kartě Domů MATLAB v nabídce prostředí vyberte Doplňky Získat balíčky podpory hardwaru Vyberte „Balíček podpory MATLAB pro hardware Arduino“. Budete se muset přihlásit ke svému účtu MATHWORKS
-Pokud se vaše instalace přeruší a při instalaci hardwarového balíčku máte za sebou několik neúspěšných pokusů/chyb - najděte a odstraňte složku Stažení Arduina na pevném disku a začněte od začátku.
Potřebný materiál
1.) Notebook nebo stolní počítač
2.) SparkFun Arduino Board
3.) Flex Sensor
4.) Potenciometr
5.) LCD obrazovka
6.) LED světlo
7.) SparkFun Inventor's Kit (Najít online)
8.) USB kabel a mini USB
9.) Propojovací vodiče
10.) Piezo bzučák
Krok 2: Připojte se k vašemu Arduinu a určete port COM
(Váš COM port se může změnit při každém připojení) Připojte USB kabel Arduino k počítači a mini USB k desce Arduino. Na stažení ovladačů možná budete muset několik minut počkat.
Určení portu COM:
Na PC
Metoda 1: V MATLABu použijte příkaz - fopen (serial ('nada'))
-určit váš port. Může se zobrazit tato chyba: Chyba při použití sériového/fopen (řádek 72) Otevření se nezdařilo: Port: NADA není k dispozici. Dostupné porty: COM3. Tato chyba označuje, že váš port je 3.
-Pokud metoda 1 ve vašem počítači selže, otevřete Správce zařízení a rozbalte seznam Porty (COM a LPT). Poznamenejte si číslo na USB sériovém portu. např. 'USB Serial Port (COM *)' Číslo portu je zde *.
-Pokud není zobrazen žádný port, zavřete MATLAB a restartujte počítač. Otevřete MATLAB a zkuste fopen (serial ('nada')) znovu.
-Pokud to selže, budete možná muset stáhnout ovladače SparkFun ze souboru CDM_v2.12.00_WHQL_Certified.exe, otevřít a spustit soubor CDM_v2.12.00_WHQL_Certified.exe a vybrat Extrahovat. (Možná budete muset soubor otevřít z Průzkumníka, kliknout pravým tlačítkem a 'Spustit jako správce').
-V příkazovém okně MATLAB vytvořte objekt Arduino - a = arduino ('comx', 'uno'); % x je vaše číslo portu shora pro počítače (žádné předchozí nuly!)
Na počítači Mac
Metoda 1: Z příkazového řádku MATLAB nebo v terminálu Mac zadejte: 'ls /dev/tty.*' Poznamenejte si číslo portu uvedené pro dev/tty.usbmodem*nebo dev/tty.usbserial*. Číslo portu je zde *.
-Pokud metoda 1 selže na vašem MAC, možná budete muset
-Ukončete MATLAB
-Zavřete software Arduino a odpojte kabel Arduino USB
-nainstalujte Java 6 Runtime
-nainstalujte rozšíření jádra ovladače USB
-Restartujte váš počítač
-Připojte USB kabel Arduino
-Spustit z příkazového řádku MATLAB nebo terminálu Mac: ls /dev/tty.*
-Poznamenejte si číslo portu uvedené pro dev/tty.usbmodem* nebo dev/tty.usbserial*. Číslo portu je zde *.
-V příkazovém okně MATLAB vytvořte objekt Arduino - a = arduino ('/dev/tty.usbserial*', 'uno'); % * je číslo vašeho portu shora pro MAC nebo '/dev/tty.usbmodem*'
Krok 3: Kód Matlab
Vstupy:
1.) Flex senzor
2.) Potenciometr
Výstupy:
1.) LCD obrazovka se zprávou s nápisem „Train Coming“
2.) LED světlo
3.) Piezo bzučák
V tomto kroku budeme konstruovat kód, který bude analyzovat vstupy z desky Arduino a poskytovat výstupy na základě výsledků analýzy MATLABu. Následující kód vám umožní provádět několik funkcí: když je potenciometr spuštěn, piezoelektrický bzučák vydává střídavé frekvence a červená LED bliká. Pokud vlak není detekován, rozsvítí se zelená LED. Když je spuštěn Flex Sensor, chamtivá LED dioda zhasne, červená LED se rozsvítí a na LCD displeji se zobrazí zpráva „Train Coming“.
Kód MATLAB:
%remery1, shornsb1, wmurrin
%Účel: Varování vlaku
%IIvýstup: potenciometr, flex senzor
%výstupu: LCD, zvuk, světlo
%Pokud deska není inicializována nebo má problémy s připojením, proveďte
%pod příkazy v komentářích. Není nutné je spouštět pokaždé
%vymazat vše
%zavřít vše
%clc
%a = arduino ('/dev/tty.usbserial-DN01DXOM', 'uno');
%lcd = addon (a, 'ExampleLCD/LCDAddon', {'D7', 'D6', 'D5', 'D4', 'D3', 'D2'});
%Konfigurujte desku, jakmile je připojena
configurePin (a, 'D8', 'pullup');%konfigurace D8
configurePin (a, 'D9', 'PWM');%konfigurace D9
čas = 50; %nastavený čas na 50
clearLCD (lcd) %inicializace LCD
%Start Loop
zatímco čas> 0
%Napětí snímače pružnosti určuje, zda je světlo zelené, nebo zda svítí
%je červené a LCD zobrazuje „vlak přijíždí“
flex_status = readVoltage (a, 'A0'); %odečteného napětí snímače pružnosti
pokud flex_status> 4 %, pokud je napětí větší než 4, spouštěcí smyčka
writeDigitalPin (a, 'D12', 0) %vypnout zeleně
writeDigitalPin (a, 'D11', 1) %zapněte na červenou
printLCD (lcd, 'Train Coming') %zobrazí "vlak přijíždí" na LCD
pauza (5) %Počkejte 5 sekund
clearLCD (lcd) %Vymazání zprávy z LCD
writeDigitalPin (a, 'D11', 0) %Vypněte červenou LED
jiný
konec
pe_status = readVoltage (a, 'A2'); %Odečtěte napětí potenciometru
pokud pe_status> 2 %, pokud je napětí větší než 2, spouštěcí smyčka
writeDigitalPin (a, 'D13', 1);%zapněte červenou LED
playTone (a, 'D9', 400, 0,25);% Hrajte 400 Hz na piezo bzučáku, 0,25 s
writeDigitalPin (a, 'D13', 0)%vypne červenou LED
pauza (0,25)%počkejte 0,25 sekundy
writeDigitalPin (a, 'D13', 1) %Opakujte výše, s bzučákem při 200 Hz
playTone (a, 'D9', 200, 0,25);
writeDigitalPin (a, 'D13', 0)
pauza (0,25)
writeDigitalPin (a, 'D13', 1);%Opakujte výše
playTone (a, 'D9', 400, 0,25);
writeDigitalPin (a, 'D13', 0)
pauza (0,25)
writeDigitalPin (a, 'D13', 1)
playTone (a, 'D9', 200, 0,25);
writeDigitalPin (a, 'D13', 0)
pauza (0,25)
writeDigitalPin (a, 'D13', 1) %Opakujte výše
playTone (a, 'D9', 400, 0,25);
writeDigitalPin (a, 'D13', 0)
pauza (0,25)
writeDigitalPin (a, 'D13', 1)
playTone (a, 'D9', 200, 0,25);
writeDigitalPin (a, 'D13', 0)
pauza (0,25)
writeDigitalPin (a, 'D13', 1) %Opakujte výše
playTone (a, 'D9', 400, 0,25);
writeDigitalPin (a, 'D13', 0)
pauza (0,25)
writeDigitalPin (a, 'D13', 1)
playTone (a, 'D9', 200, 0,25);
writeDigitalPin (a, 'D13', 0)
pauza (0,25)
jiný
writeDigitalPin (a, 'D12', 1)%, pokud je napětí menší než 2, zapněte zelenou LED
writeDigitalPin (a, 'D13', 0)%otočení červené LED
konec
konec
Krok 4: Zapojení senzoru Flex
Potřebný materiál
1.) 1 Flex senzor
2.) 1 odpor 10K Ohm
3.) 8 propojovacích vodičů
*Viz obrázky, resp.
V tomto obvodu budeme měřit flex. Flexibilní senzor používá uhlík na plastovém pásu, aby fungoval jako variabilní odpor, ale místo změny odporu otáčením knoflíku změníte ohnutím součásti. Dělič napětí pro detekci změny odporu. V našem případě bude pomocí flex senzoru detekovat projíždějící vlak, aby nařídil LCD obrazovce (viz obrázek) přečíst zprávu s nápisem „Train Coming“.
*Na obrázcích zobrazujících pokyny pro zapojení senzoru Flex se odkazujte pouze na vodiče vzhledem k zapojení senzoru Flex. Ignorujte kabeláž pro servo.
Drátěné kolíky takto:
Krok 1: Na desce Arduino v sekci POWER zapojte 1 vodič do vstupu 5 V a 1 vodič do vstupu GND (uzemnění). Druhý konec 5V vodiče zapojte do kladného (+) vstupu na desce s obvody. Druhý konec vodiče GND zapojte do záporného (-) vstupu na desce s obvody.
Krok 2: Na desce Arduino v sekci ANALOG IN zapojte 1 do vstupu A0. Zapojte konec tohoto vodiče do vstupu j20 na desce s obvody.
Krok 3: Na desce Arduino v sekci DIGITAL I / O zapojte 1 vodič do vstupu 9. Druhý konec zapojte do vstupu a3.
Krok 4: Na desce plošných spojů zapojte 1 vodič do kladného (+) vstupu. Druhý konec zapojte do vstupu h24.
Krok 5: Na desce zapojte 1 vodič do záporného (+) vstupu. Druhý konec zapojte do vstupu a2.
Krok 6: Na desce zapojte 1 vodič do záporného (-) vstupu. Druhý konec zapojte do vstupu b1.
Krok 7: Na desce zapojte 1 vodič do záporného (-) vstupu. Druhý konec zapojte do vstupu i19.
Krok 8: Na desku s obvody umístěte odpor na vstupy i20 a i24.
*Poslední obrázek se týká aplikací v reálném světě.
Krok 5: Připojte Arduino k LCD
*Klikněte na tento odkaz (https://ef.engr.utk.edu/ef230-2017-08/projects/ard…) a poté postupujte podle níže uvedených kroků pro připojení LCD k Arduinu:
Krok 1: Otevřete soubor zip
Krok 2: otevřete soubor ReadMe a postupujte podle pokynů
Potřebný materiál
1.) 16x2 LCD podobný tomuto zařízení od SparkFun -
2.) Propojovací vodiče
*Viz obrázky, resp.
Tento krok ukáže, jak vytvořit knihovnu doplňků LCD a jak zobrazit „Train Coming“na LCD.
Drátěné kolíky takto:
Pin LCD -> Pin Arduino
1 (VSS) -> Zem
2 (VDD) -> 5V
3 (V0) -> Střední kolík na senzoru 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: Připojení měkkého potenciometru
Potřebný materiál
1.) 1 LED
2.) 1 Soft potenciometr
3.) Propojovací vodiče
4.) 3 330 ohmový odpor
5.) Rezistor 10K Ohm
*Viz obrázky, resp.
V tomto obvodu použijeme jiný druh proměnného odporu, měkký potenciometr. Jedná se o tenký a pružný proužek, který dokáže zjistit, kde je vyvíjen tlak. Stisknutím různých částí proužku můžete měnit odpor od 100 do 10 K ohmů. Tuto schopnost můžete použít ke sledování pohybu na potenciometru nebo jako tlačítko. V tomto obvodu uvedeme do provozu měkký potenciometr pro ovládání RGB LED.
Krok 1: Na desce Arduino v sekci DIGITAL I / O zapojte 1 pin do vstupu 10 a 1 pin do vstupu 11. Respektive druhý konec těchto pinů zapojte do vstupu h6 a h7.
Krok 2: Na desce zapojte LED do vstupů a4, a5, a6 a a7.
Krok 3: Na desku s obvody umístěte 3 330 ohmové odpory na vstupy e4-g4, e6-g6 a e7-g7.
Krok 4: Na desce plošných spojů zapojte 1 pin do vstupu e5. Druhý konec tohoto kolíku zapojte do záporného (-) vstupu.
Krok 5: Na desku s obvody umístěte odpor 10 K ohmů na vstupy i19-negativní (-).
Krok 6: Na desce plošných spojů zapojte 1 pin do j18. Druhý konec tohoto kolíku zapojte do kladného (+) vstupu.
Krok 7: Na desce plošných spojů zapojte 1 pin do vstupu j20. Druhý konec tohoto kolíku zapojte do záporného (-) vstupu.
Krok 7: Otestujte svá vylepšení na systému Smart Rail
V tomto okamžiku by měl být váš kód MATLAB funkční a deska Arduino by měla být přesně propojena se všemi přidanými komponentami. Vyzkoušejte to na certifikovaném systému Smart Rail a zjistěte, zda vaše vylepšení činí systém bezpečnějším.
Doporučuje:
Postup: Instalace Raspberry PI 4 bezhlavého (VNC) s Rpi imagerem a obrázky: 7 kroků (s obrázky)
Jak na to: Instalace Raspberry PI 4 Headless (VNC) s Rpi-imager a obrázky: Mám v plánu použít tento Rapsberry PI ve spoustě zábavných projektů zpět na mém blogu. Neváhejte se na to podívat. Chtěl jsem se vrátit k používání svého Raspberry PI, ale na novém místě jsem neměl klávesnici ani myš. Už je to dlouho, co jsem nastavoval Raspberry
Počitadlo kroků - mikro: bit: 12 kroků (s obrázky)
Počitadlo kroků - Micro: Bit: Tento projekt bude počítadlem kroků. K měření našich kroků použijeme snímač akcelerometru, který je zabudovaný v Micro: Bit. Pokaždé, když se Micro: Bit zatřese, přidáme 2 k počtu a zobrazíme ho na obrazovce
Bolt - Noční hodiny bezdrátového nabíjení DIY (6 kroků): 6 kroků (s obrázky)
Bolt - Noční hodiny bezdrátového nabíjení DIY (6 kroků): Indukční nabíjení (známé také jako bezdrátové nabíjení nebo bezdrátové nabíjení) je druh bezdrátového přenosu energie. Využívá elektromagnetickou indukci k poskytování elektřiny přenosným zařízením. Nejběžnější aplikací je bezdrátové nabíjení Qi
Vykreslete 3D obrázky svých desek plošných spojů pomocí Eagle3D a POV-Ray: 5 kroků (s obrázky)
Vykreslování 3D obrázků vašich desek plošných spojů pomocí Eagle3D a POV-Ray: Pomocí Eagle3D a POV-Ray můžete vytvářet realistické 3D vykreslování vašich desek plošných spojů. Eagle3D je skript pro EAGLE Layout Editor. Tím se vygeneruje soubor pro sledování paprsku, který bude odeslán na POV-Ray, který nakonec vyskočí finální im
Vytvářejte stereofonní grafické obrázky v aplikaci Excel: 8 kroků (s obrázky)
Vytvářejte stereofonní grafické obrázky v aplikaci Excel: Stereo grafické obrázky mohou 3D hloubkám dodat hloubku