Sisukord:
- Samm: süsteemi plokkskeem
- 2. samm: selle projekti komponendid
- 3. samm: 2. samm: vooluahela skeem ja ühendused
- Samm: installige osad DragonBoardsile
- Samm 5: Ühendusliidesed
- 6. samm: oluliste tarkvaramoodulite installimine
- 7. samm: tutvustamine
- 8. samm: aitäh
Video: Nutikas IoT -nägemus: 8 sammu
2024 Autor: John Day | [email protected]. Viimati modifitseeritud: 2024-01-30 08:49
See on projekt, mis keskendub targa linna kontekstile. Selles küsimuses lahendame kolm peamist probleemi:
1 - energiasääst avalikus valguses; 2 - parandada linna turvalisust; 3 - parandada liiklusvoogu.
1 - Kasutades tänavatel LED -tulesid, on kokkuhoid juba kuni 50% ja Telemanagementi lisandudes saame säästa 30% rohkem.
2 - Nutikate kaamerate abil saame juhtida tulesid, kus inimeste vool puudub, ja muuta tänavalõik heledamaks, kus inimesed kõnnivad. See mitte ainult ei säästa energiat, vaid suurendab ka jälgimise tunnet, hirmutades seega halbu kavatsusi tekitavaid inimesi. Lisaks võib kahtlase käitumise korral kasutada visuaalseid alarme (näiteks lampide vilkumist).
3 - Nutikas kaamera jälgib liiklust, töötleb kohapeal selle tingimusi ja juhib valgussignaale, et liiklust kõige paremini hallata. Nii saaks vältida ummikuid, autod ei peaks kaua ootama punaseid signaale, kui ülesõidul pole voolu jne. Tehnoloogiliste probleemide osas lahendame ka IoT -s levinud probleeme, nagu tugev ühenduvus linna mastaabis ja IoT -võrgu kaamerate integreerimine, kasutades serva töötlemist ainult asjakohase teabe edastamiseks.
Vaadake meie väljaannet Embarcados ja GitHub
Ka YouTube'is
Meie meeskond:
Milton Felipe Souza Santos
Gustavo Retuci Pinheiro
Eduardo Caldas Cardoso
Jonathas Baker
(Kontaktandmed allosas)
Samm: süsteemi plokkskeem
See on ülevaade lahenduste arhitektuurist.
Süsteem koosneb kaameraväravast, mis kasutab ventilaatori liideses RFmeshi, kohtvõrgu WiFi-d ja WAN-ühenduse jaoks ka CAT-M-i. See sisaldab ka nutikaid fotoelemente, nutikaameraid ja valgussignaale.
Kõik võrkudes olevad seadmed, peamiselt nutikaamera, saadavad andmeid 6lowpani kaudu nutikale lüüsile, nii et see saab vastu võtta avaliku valgustuse ja valgussignaalide juhtimisega seotud otsuseid.
Lüüs on VPN -iga ühendatud ka meie serveriga. Sel viisil on meil juurdepääs ventilaatorile ja LAN -ile, oleku kontrollimiseks või seadmete juhtimiseks.
2. samm: selle projekti komponendid
Nutikas kaamera
- DragonBoard410C/DragonBoard820C
- USB kaamera
- OneRF NIC
Kaamera lüüs
- DragonBoard410C/DragonBoard820C
- USB kaamera
- OneRF NIC
- Cat-M/3G modem
Nutikas valgussignaal
3. samm: 2. samm: vooluahela skeem ja ühendused
Nutikas kaamera
- Kaamera USB -porti
- OneRF -võrgukaart UART -pordis
Kaamera lüüs
- Kaamera USB -porti
- OneRF -võrgukaart UART -pordis
- 3G/Cat-M modem USB-pordis
(Kõik on ühendatud IoT vahekorrusega)
Smart Stree Light
- tavaline tänavavalgusti
- releeplaat (3 kanalit)
- OneRF NIC
Nutikas fotoelement
- OneRF NIC
- võimsusmõõtur
Samm: installige osad DragonBoardsile
Debiani installimine Dragonboard820C -sse (kiire alglaadimise meetod)
Installige Linuxi operatsioonisüsteemi kasutades paketid, mis on loetletud aadressil
Draakonilaual:
lülitage s4 välja, välja, välja, välja, välja
Lülitage vol (-) vajutamine sisse
Kui kasutate jadamonitori (väga soovitatav), kuvatakse teade „fastboot: processing commands” (jadamonitor 115200 juures) Ühendage arvuti mikro-usb (J4)
Hostarvutis: laadige alla (ja pakkige lahti) aadressilt
$ sudo kiirlaadimise seadmed
452bb893 kiirlaadimine (näide)
$ sudo fastboot flash boot boot-linaro-buster-dragonboard-820c-BUILD.img
$ sudo fastboot flash rootfs linaro-buster-alip-dragonboard-820c-BUILD.img
Debiani installimine Dragonboard410C -sse
Sammud arvutis (Linux)
1 - laadige pilt alla
$ cd ~
$ mkdir Debian_SD_Card_Install_image
$ cd Debian_SD_Card_Install_image
$ wget
2 - Pakkige failid lahti
$ cd ~/Debian_SD_Card_Install_image
$ unzip dragonboard410c_sdcard_install_debian-233.zip
3 - Sisestage microSD -kaart arvutisse ja kontrollige, kas see on paigaldatud
$ df -h
/dev/sdb1 7.4G 32K 7.4G 1%/media/3533-3737
4 - Eemaldage microSD ja põletage pilt
$ umount /dev /sdb1
$ sudo dd if = db410c_sd_install_debian.img of =/dev/sdb bs = 4M oflag = sync status = noxfer
5 - Eemaldage microSD oma arvutist
Sammud arvutis (Windows) Allalaadimine - SD -kaardi pilt - (1. valik) SD -kaardi pilt - Installige ja käivitage eMMC -st
www.96boards.org/documentation/consumer/dr…
Pakkige SD -kaardi installipilt lahti
Laadige alla ja installige tööriist Win32DiskImager
sourceforge.net/projects/win32diskimager/f…
Avage tööriist Win32DiskImager
Sisestage SD -kaart arvutisse
Leidke ekstraheeritud.img -fail
Klõpsake nuppu Kirjuta
Veenduge, et DragonBoard ™ 410c oleks vooluvõrgust lahti ühendatud
Seadke DragonBoard ™ 410c lüliti S6 asendisse 0-1-0-0, SD-alglaadimislüliti peaks olema asendis ON.
Ühendage HDMI
Ühendage USB -klaviatuur
Sisestage microSD
Ühendage toiteadapter pistikuga
Valige installitav pilt ja klõpsake nuppu "Install"
oodake, kuni installimine lõpeb
Eemaldage toiteadapter
Eemaldage microSD
Lülitage S6 lüliti asendisse 0-0-0-0
VALMIS
Samm 5: Ühendusliidesed
Cat-m ja 3G installimine
Rakendage hostmasina abil järgmised AT -käsud:
#SIMDET? // kontrollige SIM -i olemasolu#SIMDET: 2, 0 // sim pole sisestatud
#SIMDET: 2, 1 // sim sisestatud
AT+CREG? // kontrollige, kas see on registreeritud
+CREG: 0, 1 // (keelake võrgu registreerimise soovimatu tulemuse kood (tehase vaikeseade), registreeritud koduvõrk)
AT+COPS?
+COPS: 0, 0,”VIVO”, 2 // (režiim = automaatne valik, vorming = tähtnumbriline, opera,?)
AT+CPAS // Telefoni tegevuse olek
+CPAS: 0 // valmis
AT+CSQ // kontrollige teenuse kvaliteeti
+CSQ: 16, 3 // (rssi, bitivea määr)
AT+CGATT? // GPRS -i manuse olek
+CGATT: 1 // lisatud
AT+CGDCONT = 1, “IP”,”zap.vivo.com.br”,, 0, 0 // konteksti seadistamine
Okei
AT+CGDCONT? // kontrolli konteksti
+CGDCONT: 1, “IP”,”zap.vivo.com.br”,””, 0, 0
AT#SGACT = 1, 1 // Konteksti aktiveerimine
#ÜLEVAADE: 100.108.48.30
Okei
Seadistage liides
Graafilise keskkonna kasutamine
Ühendage modem (oneRF_Modem_v04 - HE910)
Avage Võrguühendused
Uue ühenduse lisamiseks klõpsake nuppu +
Valige Mobiilne lairibaühendus
Valige õige seade
Valige riik
Valige pakkuja
Valige plaan ja salvestage
Eemaldage modem
Ühendage modem uuesti
Kasutades terminalapt-get install pppconfig
pppconfig
pakkuja = vivo
dünaamiline
CHAP
vivo
vivo
115200
Toon
*99#
ei (manuaal)
/dev/ttyUSB0
päästa
kass/etc/ppp/eakaaslased/vivo
cat/etc/chatscripts/vivo
pon vivo
Kui kasutate Cat-M moodulit, kasutage enne järgmisi käske:
echo 1bc7 1101>/sys/bus/usb-serial/drivers/option1/new_id
apt-get install comgt
comgt -d /dev /ttyUSB0 comgt info -d /dev /ttyUSB0
6. samm: oluliste tarkvaramoodulite installimine
Arendusarvutis
Pange tähele, et mõned sammud sõltuvad riistvarast ja neid tuleks kohandada vastavalt teie arvuti tegelikule spetsifikatsioonile. Raamatukogusid saab installida ühe käsuga.
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-comp python-pip python-numpy python-scipy python-matplotlib python-future python-protobuf python-typing python-hypotesis python-yaml
OpenCV
Seda raamistikku kasutatakse arendusmasinal pildipõhiste statistiliste algoritmide väljatöötamiseks. Kuna enamik meie koodist on kirjutatud Pythonis, on lihtsaim installimeetod lihtsalt teha
pip install opencv-python
Pange aga tähele, et need rattad ei kasuta peale teie protsessori midagi ega pruugi isegi kõiki selle südamikke kasutada, seega võiksite maksimaalse jõudluse saavutamiseks kompileerida. Paketi loomiseks näiteks Linuxis laadite zip -faili OpenCV väljaannete lehelt alla ja pakite selle lahti. Pakitud kaustast:
mkdir build && cd buildcmake.. tee kõik -j4
sudo make install
Käsk -j4 käsib make kasutada nelja lõime. Kasutage nii palju kui teie protsessoril on!
Kohvik
Caffe raamistiku seadistamine allikatest:
git kloon https://github.com/BVLC/caffe.git && cd caffemkdir build
cmake..
teha kõik
tee test tee runtest
Kui kõik testid töötavad edukalt, olete kõik valmis.
TensorFlow
Google ei luba teil TensorFlow tavaliste tööriistadega kompileerida. See nõuab Bazelit ja tõenäoliselt ei tööta see, nii et vältige selle koostamist ja haarake lihtsalt eelkompileeritud moodulist:
pip install tensorflow
Kui teie arvuti on natuke vana ja sellel pole AVX-i juhiseid, hankige viimane mitte-AVX-i tensorflow
pip install tensorflow == 1.5
Ja olete valmis.
SNPE - Snapdragon ™ närviprotsessor
Snappy seadistamine, nagu meie Qualcommi sõbrad SNPE -d kutsuvad, pole keeruline, kuid samme tuleks hoolikalt jälgida. Paigaldusjoon on järgmine:
kloonida närvivõrgu raamistike git -hoidlaid
CaffeCaffe2
TensorFlow
ONNX
käivitage skriptid, et kontrollida sõltuvusi snpe/bin/dependencies.sh
snpe/bin/check_python_depends.sh
iga installitud raamistiku jaoks käivitage snpe/bin/envsetup.sh
allikas $ SNPE/bin/envsetup.sh -c $ CAFFE_GIT
allikas $ SNPE/bin/envsetup.sh -f $ CAFFE2_GIT
allikas $ SNPE/bin/envsetup.sh -t $ TENSORFLOW_GIT
allikas $ SNPE/bin/envsetup.sh -o $ ONNX_GIT
SNPE hankimiseks igast avatud terminali eksemplarist lisage faili ~/.bashrc lõppu kolmanda sammu neli rida.
Sihtlaual
Amd64 -lt arm64 -le liikumine pole lihtne ülesanne, kuna paljud raamatukogud kasutavad oma jõudluse suurendamiseks x86 juhiseid. Õnneks on enamus vajalikest ressurssidest võimalik ise tahvlile koondada. Vajalikud teegid saab installida ühe käsuga.
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-comp python-pip python-numpy python-scipy python-matplotlib python-future python-protobuf python-typing python-hypotesis python-yaml
Installige need apt -ga ja liikuge edasi. Pange tähele, et see samm võib võtta aega, kuna sobivate kõnede abil luuakse kood, mida pole eelnevalt kompileeritud.
OpenCV
Laadige versioon välja OpenCV hoidlast, pakkige see kuhugi lahti ja lahtipakitud kaustast:
mkdir build && cd buildcmake..
tee kõik -j3
sudo make install
Pange tähele, et kasutasime valikut -j3. Kui pääsete tahvlile juurde ssh kaudu, võib ühenduse katkestamiseks piisata kõigi südamike täielikust laadimisest. See pole soovitav. Piirates niidikasutuse kolmele, on meil alati vähemalt üks vaba niit, et tulla toime ssh -ühenduste ja üldise süsteemi majapidamisega.
See on mõeldud APQ8096 kiibiga Dragonboard 820 ja Inforce 6640 jaoks. Dragonboard 410 -l soovite saada vaba virtuaalset mälu või piirata kompileerimisniidid ühega, kuna sellel on vähem füüsilist RAM -i.
Samuti tuleb märkida, et kiibi jahutamine aitab suurendada jõudlust, piirates termilist gaasipedaali. Jahutusradiaator teeb väikese koormuse korral trikki, kuid soovite korralikku ventilaatorit kompileerimiseks ja muudeks protsessorimahukateks koormusteks.
Miks mitte installida OpenCV apt või pip abil? Kuna selle kompileerimine sihtmasinas muudab kompilaatorile nähtavaks kõik saadaolevad protsessori juhised, parandades täitmist.
SNPE - Snapdragon ™ närviprotsessor
Paigaldasime Snappy täpselt nii, nagu see oli lauaarvutis, kuigi tegelikku närvivõrgu raamistikku polnud installitud (SNPE vajab ainult git -reposid, mitte tegelikke binaarfaile).
Kuna aga vajame ainult käsu snpe-net-run binaarfaile ja päiseid, on võimalik, et järgmiste failide olemasolu kaustas ja selle kausta lisamine PATH-ile toimib:
Närvivõrk binarysnpe/bin/aarch64-linux-gcc4.9/snpe-net-run
CPU teegid
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 raamatukogud
snpe/lib/dsp/libsnpe_dsp_skel.so
snpe/lib/aarch64-linux-gcc4.9/libsnpe_adsp.so
Tulemuste vaataja
snpe/models/alexnet/scripts/show_alexnet_classifications.py
Rasvane kirje /usr/lib/aarch64-linux-gnu/libatomic.so.1 on Linaroga sellel teel kaasas ja see tuleb kopeerida sellesse hüpoteetilisse minimaalsesse kausta.
Muud pakendid:
sudo apt-get install net-toolssudo apt-get install gedit
sudo apt install nodejs
sudo apt install openvpn
7. samm: tutvustamine
Vaadake nutika linna toimimise Smart IoT Vision lühitutvustust !!
www.youtube.com/watch?v=qlk0APDGqcE&feature=youtu.be
8. samm: aitäh
Täname Qualcommi meeskonda ja Embarcadosid võistluse loomise ja toetamise eest.
Võtke meiega julgelt ühendust:
Viited
Dragonboard 410c Linuxi ja Androidi installijuhend
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/
Soovitan:
IOT nutikas infrapuna-termomeeter (COVID-19): 3 sammu
IOT nutikas infrapuna-termomeeter (COVID-19): 2019. aasta COVID-ülestõusu tõttu otsustasime teha IOT nutika infrapuna-termomeetri, mis ühendab nutiseadmetega, et näidata salvestatud temperatuuri, see pole mitte ainult odavam alternatiiv, vaid ka suurepärane tehnoloogia ja IOT -i õpetamise moodul, mis
Nutikas hajutatud IoT ilmaseire süsteem NodeMCU abil: 11 sammu
Nutikas hajutatud IoT ilmaseire süsteem NodeMCU abil: Te kõik võiksite olla teadlikud traditsioonilisest ilmajaamast; aga kas olete kunagi mõelnud, kuidas see tegelikult toimib? Kuna traditsiooniline ilmajaam on kulukas ja mahukas, on nende jaamade tihedus pindalaühiku kohta väga väike, mis aitab kaasa
IoT -põhine nutikas parkimissüsteem NodeMCU ESP8266 abil: 5 sammu
IoT -põhine nutikas parkimissüsteem, mis kasutab NodeMCU ESP8266: Tänapäeval on parkimine tiheda liiklusega piirkondades väga raske ja puudub süsteem, mis võimaldaks saada teavet parkimise kättesaadavuse kohta Internetis. Kujutage ette, kui saate oma telefoni parkimiskoha kättesaadavuse teabe ja teil pole rändlust, et kontrollida, kas
Nutikas äratuskell: nutikas äratuskell, mis on valmistatud Raspberry Pi -ga: 10 sammu (koos piltidega)
Nutikas äratuskell: nutikas äratuskell, mis on valmistatud Raspberry Pi -ga: kas olete kunagi tahtnud nutikat kella? Kui jah, siis see on teie jaoks lahendus! Ma tegin nutika äratuskella, see on kell, mille abil saate äratusaega vastavalt veebisaidile muuta. Kui äratus hakkab tööle, kostab heli (sumin) ja 2 tuld
IoT -põhine nutikas aiandus ja nutikas põllumajandus, kasutades ESP32: 7 sammu
IoT -põhine nutikas aiandus ja nutikas põllumajandus, kasutades ESP32: maailm muutub ajaga ja nii ka põllumajandus. Tänapäeval integreerivad inimesed elektroonikat igas valdkonnas ja põllumajandus pole sellest erand. See elektroonika ühendamine põllumajanduses aitab põllumehi ja aedu haldavaid inimesi. Selles