Obsah:

Smart IoT Vision: 8 kroků
Smart IoT Vision: 8 kroků

Video: Smart IoT Vision: 8 kroků

Video: Smart IoT Vision: 8 kroků
Video: 🔔 CAMWON︱E27 Bulb Wi-Fi Camera 2024, Listopad
Anonim
Inteligentní IoT Vision
Inteligentní IoT Vision

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

Blokový diagram systému
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

Komponenty pro tento projekt
Komponenty pro tento projekt
Komponenty pro tento projekt
Komponenty pro tento projekt
Komponenty pro tento projekt
Komponenty pro tento projekt

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í

Krok 2: Schéma zapojení a připojení
Krok 2: Schéma zapojení a připojení
Krok 2: Schéma zapojení a připojení
Krok 2: Schéma zapojení a připojení
Krok 2: Schéma zapojení a připojení
Krok 2: Schéma zapojení a připojení
Krok 2: Schéma zapojení a připojení
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: