Obsah:
- Krok 1: Blokový diagram systému
- Krok 2: Součásti tohoto projektu
- Krok 3: Krok 2: Schéma zapojení a připojení
- Krok 4: Nainstalujte Os na DragonBoards
- Krok 5: Rozhraní připojení
- Krok 6: Instalace základních softwarových modulů
- Krok 7: Ukázka
- Krok 8: Děkuji
Video: Smart IoT Vision: 8 kroků
2024 Autor: John Day | [email protected]. Naposledy změněno: 2024-01-30 08:22
Jedná se o projekt zaměřený na kontext chytrého města. V této záležitosti řešíme tři hlavní problémy:
1 - úspora energie ve veřejném osvětlení; 2 - zlepšit bezpečnost města; 3 - zlepšit plynulost provozu.
1 - Použitím světel LED na ulicích jsou úspory již až 50% a s přidáním Telemanagementu můžeme mít o 30% větší úspory.
2 - Pomocí inteligentních kamer můžeme ovládat světla tak, aby ztlumila tam, kde proudění lidí chybí, a aby byla část ulice jasnější, kde lidé chodí. Ušetří nejen energii, ale také zvýší pocit sledování, a tím zastraší lidi se špatným úmyslem. Kromě toho lze v případě podezřelého chování použít vizuální alarmy (například blikající žárovky).
3 - Inteligentní kamera bude sledovat provoz, lokálně zpracovávat její podmínky a kontrolovat světelné signály, aby co nejlépe řídila provoz. Tímto způsobem se dalo vyhnout zácpám, auta by nemusela dlouho čekat na červenou signalizaci, když na přechodu není žádný tok atd. Pokud jde o technologické problémy, řešíme také běžné problémy v oblasti IoT, jako je robustní konektivita v městském měřítku a integrace kamer pro síť IoT, pomocí zpracování okrajů k přenosu pouze relevantních informací.
Podívejte se na naši publikaci na Embarcados a GitHub
Také na YouTube
Náš tým:
Milton Felipe Souza Santos
Gustavo Retuci Pinheiro
Eduardo Caldas Cardoso
Jonathas Baker
(Kontaktní informace v dolní části)
Krok 1: Blokový diagram systému
Toto je přehled architektury řešení.
Systém se skládá z Camera-Gateway, která využívá RFmesh na rozhraní FAN, WiFi na LAN a také CAT-M pro připojení WAN. Obsahuje také chytré fotobuňky, chytré fotoaparáty a světelné signály.
Všechna zařízení v sítích, zejména inteligentní kamera, odesílají data přes 6lowpan do inteligentní brány, takže může přijímat rozhodnutí týkající se ovládání veřejného osvětlení a světelných signálů.
Brána je také připojena k našemu serveru prostřednictvím VPN. Tímto způsobem máme přístup k FAN a LAN, bot pro kontrolu stavu nebo ovládání zařízení.
Krok 2: Součásti tohoto projektu
Inteligentní kamera
- DragonBoard410C/DragonBoard820C
- USB kamera
- OneRF NIC
Camera Gateway
- DragonBoard410C/DragonBoard820C
- USB kamera
- OneRF NIC
- Modem Cat-M/3G
Chytrý světelný signál
Krok 3: Krok 2: Schéma zapojení a připojení
Inteligentní kamera
- Kamera na USB portu
- OneRF NIC na portu UART
Camera Gateway
- Kamera na USB portu
- OneRF NIC na portu UART
- 3G/Cat-M modem na USB portu
(Vše propojeno mezipatrem IoT)
Smart Stree Light
- Konvenční pouliční osvětlení
- reléová deska (3 kanály)
- OneRF NIC
Inteligentní fotobuňka
- OneRF NIC
- Měřič výkonu
Krok 4: Nainstalujte Os na DragonBoards
Instalace Debianu na Dragonboard820C (metoda Fastboot)
Pomocí operačního systému Linux nainstalujte balíčky uvedené v:
Na dragonboardu:
vypnout, vypnout, vypnout, vypnout s4
Zapnout lisování vol (-)
Pokud používáte sériový monitor (vysoce doporučeno), zobrazí se zpráva „fastboot: processing commands“(sériový monitor na 115200) Připojte mikro USB (J4) k počítači
Na hostitelském počítači: Stáhněte (a rozbalte) z
$ sudo fastboot zařízení
452bb893 rychlé spuštění (příklad)
$ sudo fastboot flash boot boot-linaro-buster-dragonboard-820c-BUILD.img
$ sudo fastboot flash rootfs linaro-buster-alip-dragonboard-820c-BUILD.img
Instalace Debianu na Dragonboard410C
Kroky na počítači (Linux)
1 - Stáhněte si obrázek
$ cd ~
$ mkdir Debian_SD_Card_Install_image
$ cd Debian_SD_Card_Install_image
$ wget
2 - Rozbalte soubory
$ cd ~/Debian_SD_Card_Install_image
$ unzip dragonboard410c_sdcard_install_debian-233.zip
3 - Vložte kartu microSD do počítače a zkontrolujte, zda je připojena
$ df -h
/dev/sdb1 7,4G 32K 7,4G 1%/média/3533-3737
4 - Odpojte kartu microSD a vypalte obrázek
$ umount /dev /sdb1
$ sudo dd if = db410c_sd_install_debian.img of =/dev/sdb bs = 4M oflag = stav synchronizace = noxfer
5 - Vyjměte kartu microSD z počítače
Kroky v počítači (Windows) Stažení - Obrázek karty SD - (Možnost 1) Obrázek karty SD - instalace a spuštění z eMMC
www.96boards.org/documentation/consumer/dr…
Rozbalte instalační obrázek karty SD
Stáhněte a nainstalujte nástroj Win32DiskImager
sourceforge.net/projects/win32diskimager/f…
Otevřete nástroj Win32DiskImager
Vložte kartu SD do počítače
Najděte extrahovaný soubor.img
Klikněte na Napsat
Kroky na Dragonboardu Ujistěte se, že je DragonBoard ™ 410c odpojen od napájení
Nastavte přepínač S6 na DragonBoard ™ 410c na 0-1-0-0, „SD Boot switch“by měl být nastaven na „ON“.
Připojte HDMI
Připojte USB klávesnici
Vložte microSD
Připojte napájecí adaptér
Vyberte obrázek, který chcete nainstalovat, a klikněte na „Instalovat“
počkejte na dokončení instalace
Vyjměte napájecí adaptér
Vyjměte kartu microSD
Nastavte přepínač S6 na 0-0-0-0
HOTOVO
Krok 5: Rozhraní připojení
Instalace Cat-m a 3G
Pomocí hostitelského počítače použijte následující příkazy AT:
NA#SIMDET? // kontrola přítomnosti SIM#SIMDET: 2, 0 // SIM není vložena
#SIMDET: 2, 1 // sim vložen
AT+CREG? // zkontrolujte, zda je zaregistrován
+CREG: 0, 1 // (deaktivace síťového registrace nevyžádaného kódu výsledku (výchozí nastavení), registrovaná domácí síť)
AT+COPS?
+COPS: 0, 0, „VIVO“, 2 // (režim = automatická volba, formát = alfanumerický, oper,?)
AT+CPAS // Stav aktivity telefonu
+CPAS: 0 // připraveno
AT+CSQ // kontrola kvality služby
+CSQ: 16, 3 // (rssi, bitová chybovost)
AT+CGATT? // stav přílohy GPRS
+CGATT: 1 // připojeno
AT+CGDCONT = 1,”IP”,”zap.vivo.com.br”,, 0, 0 // konfigurace kontextu
OK
AT+CGDCONT? // kontrola kontextu
+CGDCONT: 1,”IP”,”zap.vivo.com.br”,””, 0, 0
AT#SGACT = 1, 1 // Kontextová aktivace
#SGACT: 100.108.48.30
OK
Nastavte rozhraní
Pomocí grafického prostředí
Připojte modem (oneRF_Modem_v04 - HE910)
Otevřete Síťová připojení
Kliknutím na + přidáte nové připojení
Vyberte Mobilní širokopásmové připojení
Vyberte správné zařízení
Vyberte zemi
Vyberte poskytovatele
Vyberte plán a uložte
Odeberte modem
Znovu připojte modem
Pomocí terminalapt-get install pppconfig
pppconfig
poskytovatel = vivo
dinamico
CHAP
in vivo
in vivo
115200
Tón
*99#
ne (manuální)
/dev/ttyUSB0
Uložit
kočka/etc/ppp/peer/vivo
kočka/etc/chatscripts/vivo
pon vivo
Pokud používáte modul Cat-M, použijte před tím následující příkazy:
echo 1bc7 1101>/sys/bus/usb-serial/drivers/option1/new_id
apt-get install comgt
comgt -d /dev /ttyUSB0 comgt info -d /dev /ttyUSB0
Krok 6: Instalace základních softwarových modulů
Na vývojovém počítači
Některé kroky jsou závislé na hardwaru a měly by být upraveny tak, aby odpovídaly vašim skutečným specifikacím počítače. Knihovny lze nainstalovat jediným příkazem.
sudo apt install build-essential git libatlas libgoogle-glog-dev libiomp-dev libleveldb-dev liblmdb-dev libopencv-dev libopenmpi-dev libsnappy-dev libprotobuf-dev libatlas libboost libgflags2 hdf5 openmpi-bin opnempi-doc protobuf-compiler python-pip python-numpy python-scipy python-matplotlib python-future python-protobuf python-typing python-hypotesis python-yaml
OpenCV
Tento rámec se používá k vývoji statistických algoritmů založených na obrazu na vývojovém počítači. Protože většina našeho kódu je napsána v Pythonu, nejjednodušší způsob instalace je just
pip install opencv-python
Všimněte si však, že tato kola nebudou používat nic kromě vašeho CPU a dokonce nemusí využívat ani všechna jeho jádra, takže možná budete chtít kompilovat ze zdroje, abyste dosáhli maximálního výkonu. Chcete -li balíček vytvořit například v systému Linux, stáhněte si soubor zip ze stránky Vydání OpenCV a rozbalte jej. Z rozbalené složky:
mkdir build && cd buildcmake.. make all -j4
sudo provést instalaci
Příkaz -j4 instruuje make, aby použil čtyři vlákna. Použijte tolik, kolik má váš procesor!
Caffe
Chcete -li nastavit rámec Caffe ze zdrojů:
klon git https://github.com/BVLC/caffe.git && cd caffemkdir build
cmake..
udělat vše
provést test udělat runtest
Pokud všechny testy proběhnou úspěšně, máte vše nastaveno.
TensorFlow
Google vám nedovoluje kompilovat TensorFlow pomocí běžných nástrojů. Vyžaduje to Bazel a je pravděpodobné, že to nebude fungovat, takže se vyhněte kompilaci a jednoduše uchopte předkompilovaný modul pomocí:
pip install tensorflow
Pokud je váš počítač trochu starý a nemá pokyny pro AVX, získejte poslední tensorflow bez AVX pomocí
pip install tensorflow == 1,5
A máte hotovo.
SNPE - Snapdragon ™ Neural Processing Engine
Nastavení Snappy, jak naši přátelé Qualcommu říkají SNPE, není těžké, ale kroky by měly být pečlivě dodržovány. Osnova instalace je:
klonovat úložiště git rámců neuronových sítí
CaffeCaffe 2
TensorFlow
ONNX
spusťte skripty a zkontrolujte, zda neobsahuje dependenciessnpe/bin/dependencies.sh
snpe/bin/check_python_depends.sh
pro každý nainstalovaný framework spusťte snpe/bin/envsetup.sh
zdroj $ SNPE/bin/envsetup.sh -c $ CAFFE_GIT
zdroj $ SNPE/bin/envsetup.sh -f $ CAFFE2_GIT
zdroj $ SNPE/bin/envsetup.sh -t $ TENSORFLOW_GIT
zdroj $ SNPE/bin/envsetup.sh -o $ ONNX_GIT
Chcete -li získat zdroj SNPE v každé instanci terminálu, kterou otevřete, připojte čtyři řádky kroku tři na konec souboru ~/.bashrc.
Na cílové desce
Přechod na arm64 z amd64 není snadný úkol, protože mnoho knihoven bude využívat instrukce x86 ke zvýšení jejich výkonu. Naštěstí je možné většinu potřebných zdrojů sestavit na samotné desce. Potřebné knihovny lze nainstalovat jediným příkazem.
sudo apt install build-essential git libatlas libgoogle-glog-dev libiomp-dev libleveldb-dev liblmdb-dev libopencv-dev libopenmpi-dev libsnappy-dev libprotobuf-dev libatlas libboost libgflags2 hdf5 openmpi-bin opnempi-doc protobuf-compiler python-pip python-numpy python-scipy python-matplotlib python-future python-protobuf python-typing python-hypotesis python-yaml
Nainstalujte je pomocí apt a pokračujte. Všimněte si toho, že tento krok může nějakou dobu trvat, protože výstižné hovory vytvářejí kód, který není předkompilován.
OpenCV
Stáhněte si verzi z úložiště OpenCV, rozbalte ji někde a z rozbalené složky:
mkdir build && cd buildcmake..
udělat vše -j3
sudo provést instalaci
Všimli jsme si, že jsme použili možnost -j3. Pokud přistupujete k desce pomocí ssh, může k přerušení připojení stačit mít plně nabitá všechna jádra. To není žádoucí. Omezením používání podprocesů na tři budeme mít vždy alespoň jedno volné vlákno, které bude zvládat připojení ssh a obecné vedení systému.
To je pro Dragonboard 820 a Inforce 6640 s čipem APQ8096. Na Dragonboardu 410 budete chtít mít volnou virtuální paměť nebo omezit vlákna kompilace na jedno, protože má k dispozici méně fyzické RAM.
Je také třeba poznamenat, že chlazení čipu pomůže zvýšit výkon omezením tepelného škrcení. Chladič dělá trik při malých zátěžích, ale budete chtít pořádný ventilátor pro kompilaci a další zátěže náročné na CPU.
Proč neinstalovat OpenCV s apt nebo pip? Protože kompilace v cílovém počítači zpřístupňuje kompilátoru všechny dostupné instrukce procesoru, což zlepšuje výkon při provádění.
SNPE - Snapdragon ™ Neural Processing Engine
Nainstalovali jsme Snappy stejně jako na stolní počítač, přestože nebyl nainstalován žádný skutečný rámec neurální sítě (SNPE potřebuje pouze úložiště git, nikoli skutečné binární soubory).
Protože však potřebujeme pouze binární soubory a záhlaví příkazu snpe-net-run, existuje možnost, že funguje pouze následující soubory ve složce a přidání této složky do PATH:
Neuronová síť binarysnpe/bin/aarch64-linux-gcc4.9/snpe-net-run
CPU knihovny
snpe/lib/aarch64-linux-gcc4.9/libSNPE.so
snpe/lib/aarch64-linux-gcc4.9/libsymphony-cpu.so
/usr/lib/aarch64-linux-gnu/libatomic.so.1
DSP knihovny
snpe/lib/dsp/libsnpe_dsp_skel.so
snpe/lib/aarch64-linux-gcc4.9/libsnpe_adsp.so
Prohlížeč výsledků
snpe/models/alexnet/scripts/show_alexnet_classifications.py
Tučná položka, /usr/lib/aarch64-linux-gnu/libatomic.so.1, je na této cestě vybavena Linaro a musí být zkopírována do této hypotetické minimální složky.
Další balíčky důležitých údajů:
sudo apt-get install net-toolssudo apt-get install gedit
sudo apt install nodejs
sudo apt nainstalovat openvpn
Krok 7: Ukázka
Podívejte se na krátkou ukázku fungování Smart IoT Vision pro Smart-City !!
www.youtube.com/watch?v=qlk0APDGqcE&feature=youtu.be
Krok 8: Děkuji
Děkujeme týmu Qualcomm a Embarcados za vytvoření a podporu soutěže.
Neváhejte nás kontaktovat na:
Reference
Průvodce instalací Dragonboard 410c pro Linux a Android
github.com/96boards/documentation/wiki/Dr….
DragonBoard 410c
caffe.berkeleyvision.org/install_apt.htmlhttps://caffe.berkeleyvision.org/installation.html#… https://developer.qualcomm.com/docs/snpe/setup.ht…https://caffe.berkeleyvision.org/installation.html#… https://github.com/BVLC/caffe https://caffe.berkeleyvision.org/installation.html#… https://github.com/tensorflow/tensorflow http:/ /caffe.berkeleyvision.org/installation.html#… https://www.tensorflow.org/install/ https://caffe.berkeleyvision.org/installation.html#… https://caffe.berkeleyvision.org/
Doporučuje:
Micro: bit MU Vision Sensor - sledování objektu: 7 kroků
Micro: bit MU Vision Sensor - Object Tracking: Takže v tomto instruktážním programu začneme programovat Smart Car, které do něj zabudujeme a do kterého jsme nainstalovali senzor vidění MU. Budeme programovat mikro: trochu s jednoduchým sledováním objektů, takže
Hardware a software Hack Smart Devices, Tuya a Broadlink LEDbulb, Sonoff, BSD33 Smart Plug: 7 kroků
Hardware a software Hack Smart Devices, Tuya a Broadlink LEDbulb, Sonoff, BSD33 Smart Plug: V tomto Instructable vám ukážu, jak jsem flashoval několik chytrých zařízení s vlastním firmwarem, abych je mohl ovládat pomocí MQTT prostřednictvím mého nastavení Openhab. Přidám nová zařízení, když jsem je hacknul. Samozřejmě existují další softwarové metody, jak flashovat vlastní
Procesor Raspberry PI Vision (SpartaCam): 8 kroků (s obrázky)
Vision Processor Raspberry PI (SpartaCam): Systém obrazového procesoru Raspberry PI pro vašeho robota FIRST Robotics Competition. O FIRST Z Wikipedie, encyklopedie zdarma https://en.wikipedia.org/wiki/FIRST_Robotics_Compe..FIRST Robotics Competition (FRC) je mezinárodní vysoká škola
Persistence of Vision Fidget Spinner: 8 kroků (s obrázky)
Persistence of Vision Fidget Spinner: Jedná se o fidget spinner, který využívá efekt Persistence of Vision, což je optická iluze, kdy se více diskrétních obrazů mísí do jednoho obrazu v lidské mysli. Text nebo grafiku lze změnit pomocí odkazu Bluetooth Low Energy pomocí a P
Micro: bit MU Vision Sensor - Instaluje se na Smart Car: 5 kroků
Micro: bit MU Vision Sensor - Installed on Smart Car: This is a guide on how to install the MU vision sensor on the Smart Car we built in this instructable. Zatímco tato příručka ukazuje, jak nainstalovat snímač zraku MU, můžete jej také sledovat při instalaci všech ostatních typů senzorů. Měl jsem 2osý držák kamery