INHOUDSOPGAWE:
- Stap 1: Stelselblokdiagram
- Stap 2: Komponente vir hierdie projek
- Stap 3: Stap 2: Kringdiagram en verbindings
- Stap 4: Installeer Os op die DragonBoards
- Stap 5: Koppelvlak -koppelvlakke
- Stap 6: Installeer noodsaaklike sagtewaremodules
- Stap 7: Demonstrasie
- Stap 8: Dankie
Video: Slim IoT -visie: 8 stappe
2024 Outeur: John Day | [email protected]. Laas verander: 2024-01-30 07:26
Dit is 'n projek wat fokus op die slim stadskonteks. In hierdie saak is daar drie groot probleme wat ons oplos:
1 - energiebesparing in openbare beligting; 2 - verbeter die veiligheid van die stad; 3 - verbeter die verkeersvloei.
1 - Deur LED's op straat te gebruik, is die besparing reeds tot 50%, en met die toevoeging van Telemanagement kan ons 30% meer bespaar.
2 - Met die gebruik van slim kameras, kan ons die ligte beheer om te verdof waar die mense afwesig is, en die straatgedeelte helderder maak waar mense loop. Dit sal nie net energie bespaar nie, maar verhoog ook die gevoel dat u dopgehou word, sodat mense met 'n slegte bedoeling intimideer. Verder kan visuele alarms (byvoorbeeld die lampe knipper) gebruik word in die geval van verdagte gedrag.
3 - Die slimkamera kyk na die verkeer, verwerk die toestand daarvan plaaslik en beheer die ligseine om die verkeer die beste te bestuur. Op hierdie manier kan verkeersknope vermy word, motors hoef nie lank rooi seine te wag as daar geen vloei in die kruising is nie, ens. Wat tegnologiese probleme betref, los ons ook die algemene probleme in IoT op, soos robuuste konneksie in die stad en kamera -integrasie vir IoT Network, deur randverwerking te gebruik om slegs relevante inligting oor te dra.
Sien ons publikasie oor Embarcados en GitHub
Ook op YouTube
Ons span:
Milton Felipe Souza Santos
Gustavo Retuci Pinheiro
Eduardo Caldas Cardoso
Jonathas Baker
(Kontakinligting onderaan)
Stap 1: Stelselblokdiagram
Dit is 'n oorsig van die oplossingsargitektuur.
Die stelsel bestaan uit 'n Camera-Gateway wat RFmesh gebruik op die FAN-koppelvlak, WiFi op LAN, en ook CAT-M vir WAN-verbinding. Dit bevat ook slim fotoselle, slim kameras en ligseine.
Alle toestelle in die netwerke, veral die slimkamera, stuur data deur middel van 'n laevlak na die smart gateway, sodat dit die besluite kan neem met betrekking tot openbare beligting en die beheer van ligseine.
Die poort is ook via VPN aan ons bediener gekoppel. Op hierdie manier het ons toegang tot die FAN en LAN, bot om die status te kontroleer of die toestelle te beheer.
Stap 2: Komponente vir hierdie projek
Slim kamera
- DragonBoard410C/DragonBoard820C
- USB -kamera
- OneRF NIC
Camera Gateway
- DragonBoard410C/DragonBoard820C
- USB -kamera
- OneRF NIC
- Cat-M/3G-modem
Slim ligsein
Stap 3: Stap 2: Kringdiagram en verbindings
Slim kamera
- Kamera op USB -poort
- OneRF NIC by UART -poort
Camera Gateway
- Kamera op USB -poort
- OneRF NIC by UART -poort
- 3G/Cat-M-modem by USB-poort
(Alles verbind deur die IoT Mezzanine)
Slim Stree Light
- Konvensionele straatlig
- Relay board (3 kanale)
- OneRF NIC
Slim fotosel
- OneRF NIC
- Kragmeter
Stap 4: Installeer Os op die DragonBoards
Debian installeer op Dragonboard820C (Fastboot -metode)
Installeer die pakkette met 'n Linux -bedryfstelsel in:
Op die draakbord:
maak s4 OFF, OFF, OFF, OFF
Skakel druk op vol (-)
As u 'n seriële monitor gebruik (sterk aanbeveel), kry u die boodskap "fastboot: verwerkingskommando's" (seriële monitor op 115200) Koppel die mikro-usb (J4) op die rekenaar
Op gasheer -rekenaar: Laai af (en pak dit uit) van
$ sudo fastboot -toestelle
452bb893 fastboot (voorbeeld)
$ sudo fastboot flash boot boot-linaro-buster-dragonboard-820c-BUILD.img
$ sudo fastboot flash rootfs linaro-buster-alip-dragonboard-820c-BUILD.img
Installeer Debian op Dragonboard410C
Stappe op die rekenaar (Linux)
1 - Laai die prent af
$ cd ~
$ mkdir Debian_SD_Card_Install_image
$ cd Debian_SD_Card_Install_image
$ wget
2 - Pak die lêers uit
$ cd ~/Debian_SD_Card_Install_image
$ unzip dragonboard410c_sdcard_install_debian-233.zip
3 - Plaas die microSD op u rekenaar en kyk of dit geïnstalleer is
$ df -h
/dev/sdb1 7.4G 32K 7.4G 1%/media/3533-3737
4 - Ontkoppel die microSD en brand die prentjie
$ umount /dev /sdb1
$ sudo dd if = db410c_sd_install_debian.img of =/dev/sdb bs = 4M oflag = sync status = noxfer
5 - Verwyder die microSD van u rekenaar
Stappe op die rekenaar (Windows) Aflaai - SD -kaartbeeld - (Opsie 1) SD -kaartbeeld - Installeer en laai op vanaf eMMC
www.96boards.org/documentation/consumer/dr…
Pak SD -installasieprent uit
Laai die Win32DiskImager -instrument af en installeer dit
sourceforge.net/projects/win32diskimager/f…
Maak die Win32DiskImager -instrument oop
Plaas die SD -kaart in die rekenaar
Vind die onttrekde.img -lêer
Klik op Skryf
Trappe op die Dragonboard Maak seker dat DragonBoard ™ 410c van die krag ontkoppel is
Stel die S6-skakelaar op DragonBoard ™ 410c op 0-1-0-0, "SD Boot switch" moet op "ON" gestel word.
Koppel 'n HDMI
Koppel 'n USB -sleutelbord
Voeg die microSD in
Sluit die kragadapter aan
Kies die prentjie wat u wil installeer en klik op "Installeer"
wag totdat die installasie klaar is
Verwyder die kragadapter
Verwyder die microSD
Stel die S6-skakelaar op 0-0-0-0
GEDOEN
Stap 5: Koppelvlak -koppelvlakke
Die installering van Cat-m en 3G
Pas die volgende AT -opdragte toe met 'n gasheermasjien:
BY#SIMDET? // kyk na SIM -teenwoordigheid#SIMDET: 2, 0 // sim nie ingevoeg nie
#SIMDET: 2, 1 // sim ingevoeg
BY+CREG? // kyk of dit geregistreer is
+CREG: 0, 1 // (skakel netwerkregistrasie ongevraagde resultaatkode uit (fabrieksinstelling), geregistreerde tuisnetwerk)
BY+COPS?
+COPS: 0, 0,”VIVO”, 2 // (modus = outomatiese keuse, formaat = alfanumeries, oper,?)
AT+CPAS // Telefoonaktiwiteitstatus
+CPAS: 0 // gereed
AT+CSQ // kontroleer die kwaliteit van die diens
+CSQ: 16, 3 // (rssi, bitfoutkoers)
BY+CGATT? // toestand van GPRS -aanhangsel
+CGATT: 1 // aangeheg
AT+CGDCONT = 1, "IP", "zap.vivo.com.br",, 0, 0 // stel konteks in
OK
BY+CGDCONT? // kyk na konteks
+CGDCONT: 1, "IP", "zap.vivo.com.br", "", 0, 0
OP#SGACT = 1, 1 // Konteksaktivering
#SGACT: 100.108.48.30
OK
Stel die koppelvlak op
Gebruik grafiese omgewing
Koppel die modem (oneRF_Modem_v04 - HE910)
Maak netwerkverbindings oop
Klik op + om 'n nuwe verbinding by te voeg
Kies mobiele breëband
Kies die regte toestel
Kies die land
Kies die verskaffer
Kies die plan en stoor
Verwyder die modem
Koppel die modem weer aan
Gebruik terminalapt-get installeer pppconfig
pppconfig
verskaffer = vivo
dinamico
CHAP
vivo
vivo
115200
Toon
*99#
nee (handleiding)
/dev/ttyUSB0
stoor
kat/etc/ppp/peers/vivo
kat/etc/chatscripts/vivo
pon vivo
As u die Cat-M-module gebruik, gebruik net die volgende opdragte voor:
echo 1bc7 1101>/sys/bus/usb-serial/drivers/option1/new_id
apt-get installeer comgt
comgt -d /dev /ttyUSB0 comgt info -d /dev /ttyUSB0
Stap 6: Installeer noodsaaklike sagtewaremodules
Op die ontwikkelingsrekenaar
Let daarop dat sommige stappe hardeware-afhanklik is en aangepas moet word om aan u werklike rekenaarspesifikasies te voldoen. Die biblioteke kan geïnstalleer word met 'n enkele opdrag.
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 python-pip python-numpy python-scipy python-matplotlib python-toekomstige python-protobuf python-tik python-hipotese python-yaml
OpenCV
Hierdie raamwerk word gebruik om beeldgebaseerde statistiese algoritmes op die ontwikkelingsmasjien te ontwikkel. Aangesien die meeste van ons kode in Python geskryf is, is die maklikste installasiemetode net
pip installeer opencv-python
Let egter daarop dat hierdie wiele niks behalwe u SVE sal gebruik nie en dat hulle nie eers al die kerns daarvan sal gebruik nie, dus u wil dalk uit die bron saamstel om maksimum prestasie te behaal. Om die pakket byvoorbeeld in Linux te bou, laai u die zip -lêer van die OpenCV Releases -bladsy af en pak dit uit. Uit die uitgepakte vouer:
mkdir build && cd buildcmake.. maak alles -j4
sudo maak installeer
Die opdrag -j4 gee instruksies om vier drade te gebruik. Gebruik soveel as wat u SVE het!
Koffie
Om die Caffe -raamwerk uit bronne op te stel:
git -kloon https://github.com/BVLC/caffe.git && cd caffemkdir build
maak..
maak alles
maak toets maak runtest
As alle toetse suksesvol uitgevoer word, is u gereed.
TensorFlow
Google laat u nie toe om TensorFlow saam te stel met gewone gereedskap nie. Dit benodig Bazel daarvoor, en die kans is goed dat dit nie sal werk nie, dus vermy dit en stel die vooraf saamgestelde module met:
pip installeer tensorflow
As u rekenaar 'n bietjie oud is en geen AVX-instruksies het nie, moet u die laaste tensorflow van nie-AVX kry
pip installeer tensorflow == 1.5
En jy is klaar.
SNPE - Snapdragon ™ neurale verwerkingsenjin
Dit is nie moeilik om Snappy op te stel, soos ons Qualcomm -vriende SNPE noem nie, maar die stappe moet noukeurig gevolg word. Die installasie uiteensetting is:
kloon die git -bewaarplekke van die neurale netwerkraamwerke
Koffie Koffie 2
TensorFlow
ONNX
voer die skrifte uit om te kyk of dependenciessnpe/bin/dependencies.sh is
snpe/bin/check_python_depends.sh
hardloop snpe/bin/envsetup.sh vir elke geïnstalleerde raamwerk
bron $ SNPE/bin/envsetup.sh -c $ CAFFE_GIT
bron $ SNPE/bin/envsetup.sh -f $ CAFFE2_GIT
bron $ SNPE/bin/envsetup.sh -t $ TENSORFLOW_GIT
bron $ SNPE/bin/envsetup.sh -o $ ONNX_GIT
Om SNPE te kry in elke terminale instansie wat u oopmaak, voeg stap drie se vier reëls by aan die einde van u ~/.bashrc -lêer.
Op die teikenbord
Om oor te skakel na arm64 van amd64 is nie 'n moeitelose taak nie, aangesien baie biblioteke voordeel sal trek uit x86 -instruksies om hul prestasie te verbeter. Gelukkig is dit moontlik om die meeste van die nodige hulpbronne op die bord self saam te stel. Die nodige biblioteke kan met 'n enkele opdrag geïnstalleer word.
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 python-pip python-numpy python-scipy python-matplotlib python-toekomstige python-protobuf python-tik python-hipotese python-yaml
Installeer dit met apt en gaan aan. Let op dat hierdie stap 'n rukkie kan neem, aangesien geskikte oproepe gemaak word om die kode te bou wat nie vooraf saamgestel is nie.
OpenCV
Laai die vrystelling van die OpenCV -bewaarplek af, pak dit êrens uit die map uit die rits:
mkdir build && cd buildcmake..
maak al -j3
sudo maak installeer
Let daarop dat ons die -j3 -opsie gebruik het. As u toegang tot die bord kry via ssh, is dit moontlik dat alle kerne volledig gelaai is om die verbinding te verbreek. Dit is nie wenslik nie. Deur draadgebruik tot drie te beperk, sal ons altyd ten minste een gratis draad hê om ssh -verbindings en algemene stelsels te onderhou.
Dit is vir die Dragonboard 820 en Inforce 6640 met die APQ8096 -chip. Op die Dragonboard 410 wil u gratis virtuele geheue hê of die draaddrade tot een beperk, aangesien dit minder fisiese RAM beskikbaar het.
Dit is ook opmerklik dat die afkoeling van die chip die prestasie sal verhoog deur termiese versnelling te beperk. 'N Koelbak doen die truuk by klein vragte, maar u benodig 'n behoorlike waaier vir die opstel en ander CPU-intensiewe vragte.
Waarom nie OpenCV met apt of pip installeer nie? Omdat die opstel daarvan in die doelmasjien elke beskikbare verwerkerinstruksie vir die samesteller sigbaar maak, verbeter die uitvoeringsprestasie.
SNPE - Snapdragon ™ neurale verwerkingsenjin
Ons het Snappy geïnstalleer net soos op 'n tafelrekenaar, alhoewel daar geen werklike neurale netwerkraamwerk geïnstalleer is nie (SNPE benodig slegs die git repos, nie die werklike binaries nie).
Aangesien alles wat ons nodig het, die binaries en headers vir die snpe-net-run-opdrag is, is daar 'n moontlikheid dat slegs die volgende lêers in 'n gids is en hierdie gids by die PATH gevoeg word:
Neurale netwerk binarysnpe/bin/aarch64-linux-gcc4.9/snpe-net-run
CPU -biblioteke
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 -biblioteke
snpe/lib/dsp/libsnpe_dsp_skel.so
snpe/lib/aarch64-linux-gcc4.9/libsnpe_adsp.so
Resultate kyker
snpe/models/alexnet/scripts/show_alexnet_classifications.py
Die vetgedrukte item, /usr/lib/aarch64-linux-gnu/libatomic.so.1, word saam met Linaro op hierdie pad voorsien en moet na hierdie hipotetiese minimale gids gekopieer word.
Ander onverwagte pakkette:
sudo apt-get install net-toolssudo apt-get install gedit
sudo apt installeer nodejs
sudo apt installeer openvpn
Stap 7: Demonstrasie
Sien 'n kort demonstrasie van die Smart IoT Vision vir die werking van Smart-City !!
www.youtube.com/watch?v=qlk0APDGqcE&feature=youtu.be
Stap 8: Dankie
Ons bedank die Qualcomm -span en Embarcados vir die opstel en ondersteuning van die wedstryd.
Kontak ons gerus op:
Verwysings
Dragonboard 410c installasiegids vir Linux en 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/
Aanbeveel:
Slim lessenaar LED -lig - Slim beligting met Arduino - Neopixels -werkruimte: 10 stappe (met foto's)
Slim lessenaar LED -lig | Slim beligting met Arduino | Neopixels Workspace: Ons spandeer deesdae baie tyd tuis, studeer en werk virtueel, so waarom nie ons werkruimte groter maak met 'n pasgemaakte en slim beligtingstelsel Arduino en Ws2812b LED's nie. Hier wys ek u hoe u u Smart bou LED -lessenaar op die tafel wat
Slim verspreide IoT -weermoniteringstelsel met behulp van NodeMCU: 11 stappe
Slim verspreide IoT -weermoniteringstelsel met behulp van NodeMCU: U weet miskien almal van die tradisionele weerstasie; maar het u al ooit gewonder hoe dit werk? Aangesien die tradisionele weerstasie duur en omvangryk is, is die digtheid van hierdie stasies per oppervlakte -eenheid baie minder, wat bydra tot die
IoT -gebaseerde slim tuinmaak en slim landbou met behulp van ESP32: 7 stappe
IoT -gebaseerde slim tuinmaak en slim landbou Met behulp van ESP32: Wêreld verander soos die tyd en so landbou. Tans integreer mense elektronika op elke gebied en die landbou is geen uitsondering hierop nie. Hierdie samesmelting van elektronika in die landbou help boere en mense wat tuine bestuur
Beveilig u slim huis slim: 14 stappe
Beveilig u slim huis slim: ek neem deel aan die veilige wedstryd. As u van my instruksies hou, stem dan daarvoor! Ek sal u wys hoe u u huis en sy omgewing maklik en goedkoop kan beveilig. Dit bevat segmente waar u sal leer: 1. Stel j op
Koppelvlak Honeywell Vista alarm met slim hub (knipoog/slim): 7 stappe (met foto's)
Koppelvlak Honeywell Vista alarm met slim hub (knipoog/slim): Hallo daar! Ek wou 'n kort handleiding gee oor hoe ek my Honeywell Vista -alarmstelsel in my slim hub kan integreer. Ek gebruik Wink vir hierdie tutoriaal, maar dit behoort te werk met enige slim hub (Smartthings/Iris/ens.) Voordat ons begin, gaan