Obsah:
- Krok 1: Požadované součásti
- Krok 2: Vytvoření vzdáleného zařízení
- Krok 3: Softwarové vybavení a knihovny
- Krok 4: Použití SSH a instalace Libs
- Krok 5: Protokol Bluetooth
- Krok 6: Použití Mezzanine na DragonBoard 410c
- Krok 7: Software DragonBoard 410c
Video: Zjišťování mimořádných situací - Qualcomm Dragonboard 410c: 7 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:19
Při hledání bezpečnostních systémů, které pracují na monitorování mimořádných situací, je možné si všimnout, že je příliš obtížné zpracovat všechny zaznamenané informace. Když jsme o tom přemýšleli, rozhodli jsme se využít své znalosti v oblasti zpracování zvuku/obrazu, senzorů a akčních členů k vytvoření jednoho kompletního systému, který umožňuje předvídat situace, kdy jsou lidské životy v ohrožení.
Tento projekt má místní senzor a vzdálená zařízení, která shromažďují data a odesílají je na dragonboard, který má výpočetní výkon schopný extrahovat důležité informace z přijatých dat.
Vzdáleným zařízením je deska Arduino s modulem HC-06, který umožňuje přenos všech informací, a levná široká síť schopná zpracovat velké množství dat.
Krok 1: Požadované součásti
Nejprve se musíte rozhodnout, které senzory a akty budete používat, a vytvořit náčrt architektury.
V našem případě používáme tyto senzory připojené v ARDUINO Pro Mini, uvedené níže:
- PIR (pasivní infračervený-snímač přítomnosti)
- DHT 11 (snímač vlhkosti a teploty)
- Senzor CO (snímač oxidu uhelnatého)
- Senzor hluku
Aktuátory:
- servo motoru
- bzučák
Sdělení:
Modul Bluetooth HC-06
K Dragonboardu 410c budeme mít několik senzorů a softwaru pro zpracování všech datových vstupů:
Senzory:
- DHT 11
- Senzor slunečního světla
Aktuátory:
- Relé
- LED stav
- Bzučák
Krok 2: Vytvoření vzdáleného zařízení
Nyní je čas připojit všechny následující komponenty k desce Arduino, vytvořit zařízení, které bude přijímat data z prostředí (hluk, vlhkost, teplota atd.) A odesílat na Dragonboard pomocí bluetooth modulu HC-06.
Je nutné věnovat pozornost připojením, protože všechny senzory mají specifická místa pro připojení.
V systému je možné mít více než jedno zařízení pro sběr dat. Čím více zařízení máte v prostředí nainstalováno, tím přesnější je diagnostika generovaná zpracováním dat. Protože bude možné extrahovat širší škálu informací, které mohou být užitečné.
Rozhodli jsme se použít desku arduino, protože má více kompatibilních senzorů a je možné instalovat tato vzdálená zařízení na různá místa a shromažďovat další informace.
Místním zařízením je DragonBoard 410c, který zpracovává zvukové, obrazové, digitální a analogové informace pomocí výkonného procesoru SnapDragon 410.
Umístění komponent (Remote Devide)
Jeden kus má několik kolíků, které je třeba zapojit do správných kolíků na mini desce arduino pro.
Modul Bluetooth HC-06 má 4 piny:
- TX (Transmissor) -> připojeno na pinu RX Arduino
- RX (přijímač) -> připojeno na pinu TX Arduino
- VCC -> připojeno na 5v
- GND
Čidlo DHT 11 má 4 piny (ale pouze 3 při použití):
- Signál -> připojen na digitální pin
- VCC -> připojeno na 5v
- GND
PIR senzor má 3 piny:
- Signál -> připojen na digitálním pinu
- VCC -> připojeno na 5v
- GND
Plynový senzor (MQ) má 4 piny:
- Digital OUT -> připojeno k digitálnímu pinu (pokud chcete digitální informace)
- Analog OUT -> v našem případě to používáme připojené na analogový pin
- VCC -> připojeno na 5v
- GND
Senzor hluku (KY-038) má 3 piny:
- Signál -> připojen na analogovém pinu
- VCC -> připojeno na 5v
- GND
Kód pro vzdálené zařízení Arduino:
/ * * Arduino odesílá data přes Blutooth * * Hodnoty senzorů se načítají, spojují na * String a odesílají přes sériový port. */ #include "DHT.h" #define DHTPIN 3 #define DHTTYPE DHT22 #define PIRPIN 9 #define COPIN A6 DHT dht (DHTPIN, DHTTYPE); float humidaty, teplota; booleovský pir = 0; int co, mic; Řetězec msg = ""; char nome [40]; neplatné nastavení () {Serial.begin (9600); dht.begin (); } void loop () {humidaty = dht.readHumidity (); teplota = dht.readTemperature (); pir = digitalRead (PIRPIN); co = analogRead (COPIN); mic = analogRead (A0); msg = "#;" + Řetězec (humidaty) + ";" + Řetězec (teplota)+ ";"+ Řetězec (mikrofon)+ ";"+ Řetězec (pir)+ ";" + Řetězec (co) + ";#" + "\ n"; Serial.print (msg); zpoždění (2000); }
Vysvětlení kódu:
Všechny piny použité v Arduinu jsou uvedeny na začátku kódu a inicializovány příslušné knihovny potřebné pro provoz senzorů. Všechna data budou předána do příslušných proměnných, které budou přijímat hodnoty načtené z každého senzoru každých 2000 milisekund, poté budou všechna zřetězena v řetězci a poté zapsána do sériového čísla. Odtamtud je velmi snadné pomocí pytonového kódu přítomného v DragonBoard zachytit taková data.
Krok 3: Softwarové vybavení a knihovny
Ke zpracování všech přijatých dat a ovládání bezpečnostního systému je nutné použít nějaký software a knihovny v Qualcomm DragonBoard 410c.
V tomto konkrétním projektu používáme:
Softwarové vybavení:
- Krajta
- Arduino
Plataformy:
- Amazon AWS -> online server
- Phant -> Hostitelská datová služba
Knihovny:
- OpenCV-zpracování videa (https://opencv-python-tutroals.readthedocs.io/en/latest/)
- PyAudio - zpracování zvuku (https://people.csail.mit.edu/hubert/pyaudio/)
- Wave (https://www.physionet.org/physiotools/wave-installation.shtm)
- AudioOp (https://docs.python.org9https://scikit-learn.org/stable/install.html/2/library/audioop.html)
- Numpy (https://www.numpy.org)
- SciKit1 - Trénujte a předpovídejte strojové učení (https://scikit-learn.org/stable/install.html)
- cPickle - Uložte parametry strojového učení (https://pymotw.com/2/pickle/)
- MRAA - Použijte GPIO (https://iotdk.intel.com/docs/master/mraa/python/)
- UPM-Použijte GPIO (https://github.com/intel-iot-devkit/upm)
- PySerial - Slouží k sériové komunikaci se zařízením Bluetooth (https://pythonhosted.org/pyserial/)
Krok 4: Použití SSH a instalace Libs
Nejprve musíte získat IP adresu z Dragonboardu, abyste to mohli udělat, musíte zapnout DragonBoard spojený s myší, klávesnicí a monitorem HDMI. Když se deska zapne, musíte se připojit k síti, poté přejděte na terminál a spusťte příkaz:
sudo ifconfig
poté můžete získat IP adresu.
S IP adresou můžete přistupovat k Dragonboardu přes SHH, k tomu potřebujete otevřít terminál v počítači připojeném ve stejné síti jako deska. V terminálu můžete spustit příkaz:
ssh linaro@{IP}
({IP} byste měli nahradit IP adresou, kterou získáte v Dragonboardu).
První lib, které musíte nainstalovat, je mraa lib. Chcete -li to provést, musíte na terminálu spustit následující příkaz:
sudo add-apt-repository ppa: mraa/mraa && sudo apt-ge; t update && sudo apt-get install libmraa1 libmraa-dev mraa-tools python-mraa python3-mraa
K instalaci opencv pro python stačí spustit příkaz:
sudo apt-get install python-opencv
Chcete -li nainstalovat PyAudio, musíte spustit příkaz:
sudo apt-get install python-pyaudio python3-pyaudio
V desce jsou již nainstalovány libs WAVE a AudioOp. Chcete -li nainstalovat numpy, musíte spustit příkaz:
sudo apt-get install python-numpy python-scipy
Poslední lib, který musíte nainstalovat, je scikit, k jeho instalaci musíte mít nainstalovaný pip. Pak stačí spustit příkaz:
pip install scikit-learn
Krok 5: Protokol Bluetooth
Spojení DragonBoard s Arduinem pomocí Bluetooth
Modul Bluetooth (HC-06) byl původně připojen k Arduino Nano podle následujícího příkladu:
Pomocí grafického rozhraní Linaro (Operační systém používaný v aktuálním projektu v DragonBoardu) na pravé straně spodní lišty klikněte na symbol Bluetooth a poté klikněte na „Nastavit nové zařízení“a nakonfigurujte tak, aby váš modul Bluetooth zůstal spárovaný. Ověřte, že je váš modul skutečně připojen, opětovným kliknutím na symbol Bluetooth, kliknutím na „Zařízení…“a zkontrolujte, zda je v seznamu uveden a připojen název vašeho zařízení. Nyní vyberte své zařízení na obrazovce „Zařízení Bluetooth“, klikněte na něj pravým tlačítkem a poznamenejte si port, ke kterému je připojen váš modul Bluetooth (např.: „rfcomm0“). Poznámka: Název portu, ke kterému je vaše zařízení připojeno, bude důležitý pro další krok k povolení výměny dat.
Zavádění výměny dat DragonBoard a Bluetooth
V zásadě sledujeme odkaz krok za krokem: https://www.uugear.com/portfolio/bluetooth-communi…, ale část párování jsme neprovedli, pouze provedení kódů pythonu a Arduina. V pythonu byla použita sériová knihovna, která je inicializována v portu připojeném k bluetooth, proto kód pythonu přečetl data ze senzorů, které jsou připojeny k arduinu prostřednictvím bluetooth modulu.
Krok 6: Použití Mezzanine na DragonBoard 410c
Abychom vytvořili spojení mezi dragonboardem a komponenty, používáme typ štítu nazvaný Mezannine, vyvinutý 96 deskami.
Pomocí tohoto štítu je připojení periferií mnohem snazší.
Konektory používají z vývojové sady Grove, takže je to pouze pomocí specifického kabelu, který spojuje oba způsoby, Všechny díly lze snadno najít na tomto webu:
Následující sady používáme níže:
- Relé Grove
- Senzor slunečního světla Grove
- Grove led zásuvka
- Grove teplotní a humi senzor
- Grove Buzzer
Krok 7: Software DragonBoard 410c
Část programu v DragonBoardu byla kódována v Pythonu a program používaný na Arduinu byl vyvinut v C ++. Každé 2 minuty čte Arduino veškerý senzor, který je k němu připojen. Poté Arduino odešle čtení na DragonBoard pomocí Bluetooth. DragonBoard kombinuje čtení z Arduina se čtením, které provádí štít Mezzanine, s funkcemi ze zvukových a video ukázek.
S těmito daty se rada snaží předpovědět, zda nastává nouzová situace. Správní rada odesílá webové službě Amazon pomocí Phantu nezpracovaná data a předpověď, kterou vytvořila. Pokud tabule předpovídá, že dochází k podivné situaci, pokusí se varovat uživatele blikáním LED a bzučáku v Mezaninu a zobrazit ve webové aplikaci. Ve webové aplikaci je také možné vidět nezpracovaná data a porozumět tomu, co se v této oblasti děje.
Doporučuje:
Sterilizátor UVC pro nouzovou situaci COVID-19: 3 kroky
Sterilizátor UVC pro nouzovou situaci COVID-19: Jak vyrobit box sterilizátoru UVC. Pěkně popořádku. Elektřina je nebezpečná! Pokud si nejste jisti a kompetentní, nepokoušejte se o nic níže uvedeného. UVC (253,7 nm) světlo je silné, může vás oslepit a případně způsobit rakovinu kůže
Google Assistant na DragonBoard ™ 410c: 57 kroků
Google Assistant na DragonBoard ™ 410c: Tento Instructables vás naučí spustit Google Assistant v DragonBoard a nastavit u některých zařízení chytré prostředí. Požadováno: -DragonBoard ™ 410c (s novou instalací linaro-alip);-12V/ 1A 5,5mm jack napájecí zdroj; -CC2531 zigbee modu
Deska zjišťování STM32F4 a komunikace Python USART (STM32CubeMx): 5 kroků
Deska STM32F4 Discovery Board a Python USART Communication (STM32CubeMx): Ahoj! V tomto tutoriálu se pokusíme navázat komunikaci USART mezi STM32F4 ARM MCU a Pythonem (lze jej nahradit jakýmkoli jiným jazykem). Takže začneme
Jak interagovat s Alexou pomocí Dragonboard-410c: 5 kroků
Jak interagovat s Alexou pomocí Dragonboard-410c: S tímto tutoriálem se naučíte, jak Alexa vložit do Dragonboard-410c. Než začneme, představme si některé věci, které potřebujete: Alexa Voice Service (AVS) - Umožňuje hovořit s vašimi zařízeními, budete mít přístup ke cloudové alexa th
Inteligentní simulace stoplight s DragonBoard 410c: 7 kroků (s obrázky)
Inteligentní simulace stoplight s DragonBoard 410c: | MATERIÁLY: MDF 1,20 Mts. x 1,20 Mts.8 LED: · 2 Zelení · 2 Žlutá · 2 Reds · 2 bílé Jeden kus lepenky. Dračí deska 410c BladeWiresSilikonová silikonová pistoleHračkaProtoboardTlačítko