Orodha ya maudhui:

Maono ya Smart IoT: Hatua 8
Maono ya Smart IoT: Hatua 8

Video: Maono ya Smart IoT: Hatua 8

Video: Maono ya Smart IoT: Hatua 8
Video: ГРЕНДПА и Гренни В РЕАЛЬНОЙ ЖИЗНИ! Почему они перепутали мой дом? GRANDPA GRANNY Chapter Two 2024, Novemba
Anonim
Maono ya Smart IoT
Maono ya Smart IoT

Huu ni mradi unaozingatia muktadha wa miji mwerevu. Katika suala hili, kuna shida tatu kubwa tunayotatua:

1 - kuokoa nishati katika taa za umma; 2 - kuboresha usalama wa jiji; 3 - kuboresha mtiririko wa trafiki.

1 - Kwa kutumia taa za LED kwenye barabara, akiba tayari iko hadi 50%, na kwa kuongezewa Usimamizi, tunaweza kuwa na akiba zaidi ya 30%.

2 - Kwa matumizi ya kamera nzuri, tunaweza kudhibiti taa kupunguka mahali ambapo watu hutiririka haipo na kufanya sehemu ya barabara iwe mkali mahali watu wanapotembea. Haitaokoa tu nishati lakini itaongeza hisia za kutazamwa, kwa hivyo, itishe watu wenye nia mbaya. Kwa kuongezea, kengele za kuona (kupepesa taa kwa mfano), zinaweza kutumiwa ikiwa kuna tabia ya kutiliwa shaka.

3 - Kamera mahiri itaangalia trafiki, itashughulikia hali yake, na kudhibiti ishara nyepesi ili kudhibiti trafiki. Kwa njia hii, foleni ya trafiki inaweza kuepukwa, magari hayatalazimika kungojea ishara nyekundu kwa muda mrefu wakati hakuna mtiririko katika uvukaji, na kadhalika. Kuhusu shida za kiteknolojia, pia tunatatua ni maswala gani ya kawaida katika IOT kama uunganisho thabiti katika kiwango cha jiji na ujumuishaji wa kamera kwa Mtandao wa IoT, kwa kutumia usindikaji wa makali kusambaza habari muhimu tu.

Tazama uchapishaji wetu kwenye Embarcados na GitHub

Pia kwenye YouTube

Timu yetu:

Milton Felipe Souza Santos

Gustavo Retuci Pinheiro

Eduardo Caldas Cardoso

Jonathas Baker

(Maelezo ya mawasiliano chini)

Hatua ya 1: Mchoro wa Kuzuia Mfumo

Mchoro wa Kuzuia Mfumo
Mchoro wa Kuzuia Mfumo

Hii ni muhtasari wa usanifu wa suluhisho.

Mfumo huo umeundwa na Kamera-Lango inayotumia RFmesh kwenye kiolesura cha FAN, WiFi kwenye LAN, na pia CAT-M kwa unganisho la WAN. Pia ina picha fupi za elektroniki, Kamera mahiri, na ishara nyepesi.

Vifaa vyote kwenye mitandao, haswa kamera nzuri, vinatuma data kupitia 6lowpan kwenye lango la busara, kwa hivyo inaweza kuchukua maamuzi kuhusu taa za umma na udhibiti wa ishara nyepesi.

Lango pia limeunganishwa na seva yetu kupitia VPN. Kwa njia hii, tunaweza kufikia FAN na LAN, bot kwa kuangalia hali au kudhibiti vifaa.

Hatua ya 2: Vipengele vya Mradi huu

Vipengele vya Mradi huu
Vipengele vya Mradi huu
Vipengele vya Mradi huu
Vipengele vya Mradi huu
Vipengele vya Mradi huu
Vipengele vya Mradi huu

Smart Cam

- DragonBoard410C / DragonBoard820C

- Kamera ya USB

- OneRF NIC

Lango la Kamera

- DragonBoard410C / DragonBoard820C

- Kamera ya USB

- OneRF NIC

- Modem ya paka-M / 3G

Ishara Nuru ya Nuru

Hatua ya 3: Hatua ya 2: Mchoro wa Mzunguko na Uunganisho

Hatua ya 2: Mchoro wa Mzunguko na Uunganisho
Hatua ya 2: Mchoro wa Mzunguko na Uunganisho
Hatua ya 2: Mchoro wa Mzunguko na Uunganisho
Hatua ya 2: Mchoro wa Mzunguko na Uunganisho
Hatua ya 2: Mchoro wa Mzunguko na Uunganisho
Hatua ya 2: Mchoro wa Mzunguko na Uunganisho
Hatua ya 2: Mchoro wa Mzunguko na Uunganisho
Hatua ya 2: Mchoro wa Mzunguko na Uunganisho

Smart Cam

- Kamera kwenye bandari ya USB

- OneRF NIC katika bandari ya UART

Lango la Kamera

- Kamera kwenye bandari ya USB

- OneRF NIC katika bandari ya UART

- Modem ya 3G / Cat-M kwenye bandari ya USB

(Zote zimeunganishwa na IoT Mezzanine)

Nuru ya Stree Smart

- Mwanga wa kawaida wa barabarani

- Bodi ya kupeleka tena (vituo 3)

- OneRF NIC

Picha ya Smart

- OneRF NIC

Mita ya Nguvu

Hatua ya 4: Sakinisha Os kwenye DragonBoards

Kufunga Debian kwenye Dragonboard820C (Njia ya Fastboot)

Kutumia OS ya Linux, sakinisha vifurushi vilivyoorodheshwa katika:

Kwenye ubao wa joka:

fanya s4 OFF, OFF, OFF, OFF

Washa kubonyeza vol (-)

Ikiwa unatumia ufuatiliaji wa serial (unapendekezwa sana), utapata ujumbe "fastboot: amri za usindikaji" (serial monitor saa 115200) Unganisha micro-usb (J4) kwenye PC

Kwenye PC mwenyeji: Pakua (na unzip) kutoka

Vifaa vya $ sudo fastboot

Fast2 ya 452bb893 (mfano)

$ sudo fastboot flash boot boot-linaro-buster-dragonboard-820c-BUILD.img

$ sudo fastboot flash rootfs linaro-buster-alip-dragonboard-820c-BUILD.img

Kufunga Debian kwenye Dragonboard410C

Hatua kwenye kompyuta (Linux)

1 - Pakua picha

$ cd ~

$ mkdir Debian_SD_Card_Install_image

$ cd Debian_SD_Card_Install_image

$ wget

2 - Unzip faili

$ cd ~ / Debian_SD_Card_Install_image

$ unzip dragonboard410c_sdcard_install_debian-233.zip

3 - Ingiza microSD kwenye kompyuta yako na uangalie ikiwa imewekwa

$ df -h

/ dev / sdb1 7.4G 32K 7.4G 1% / media / 3533-3737

4 - Punguza microSD na uchome picha

$ umount / dev / sdb1

$ sudo dd ikiwa = db410c_sd_install_debian.img ya = / dev / sdb bs = 4M oflag = hali ya usawazishaji = noxfer

5 - Ondoa microSD kutoka kwako PC

Hatua kwenye kompyuta (Windows) Pakua - Picha ya Kadi ya SD - (Chaguo 1) Picha ya Kadi ya SD - Sakinisha na boot kutoka eMMC

www.96boards.org/documentation/consumer/dr…

Unzip Kadi ya SD Sakinisha Picha

Pakua na usakinishe zana ya Win32DiskImager

sourceforge.net/projects/win32diskimager/f…

Fungua zana ya Win32DiskImager

Ingiza kadi ya SD kwenye kompyuta

Pata faili ya.img iliyotolewa

Bonyeza kwenye Andika

Hakikisha DragonBoard ™ 410c haijatolewa kwa nguvu

Weka ubadilishaji wa S6 kwenye DragonBoard ™ 410c hadi 0-1-0-0, "swichi ya SD Boot" inapaswa kuweka "ON".

Unganisha HDMI

Chomeka kibodi ya USB

Ingiza microSD

Chomeka adapta ya umeme

Chagua picha ya kufunga na bonyeza "Sakinisha"

subiri usakinishaji umalize

Ondoa adapta ya umeme

Ondoa microSD

Weka ubadilishaji wa S6 hadi 0-0-0-0

UMEFANYA

Hatua ya 5: Maingiliano ya Muunganisho

Kuweka Cat-m na 3G

Tumia amri zifuatazo za AT ukitumia mashine ya mwenyeji:

KWENYE # SIMDET? // angalia uwepo wa SIM # SIMDET: 2, 0 // sim haijaingizwa

#SIMDET: 2, 1 // sim imeingizwa

KWENYE + CREG? // angalia ikiwa imesajiliwa

+ CREG: 0, 1 // (afya usajili wa nambari ya matokeo isiyoombwa (chaguo-msingi ya kiwanda), mtandao wa nyumbani uliosajiliwa)

KWENYE + COPS?

+ COPS: 0, 0, "VIVO", 2 // (mode = chaguo moja kwa moja, fomati = alphanumeric, oper,?)

AT + CPAS // Hali ya Shughuli ya Simu

+ CPAS: 0 // tayari

AT + CSQ // angalia ubora wa huduma

+ CSQ: 16, 3 // (rssi, kiwango cha makosa kidogo)

KWENYE + CGATT? // hali ya kiambatisho cha GPRS

+ CGATT: 1 // imeambatanishwa

AT + CGDCONT = 1, "IP", "zap.vivo.com.br",, 0, 0 // sanidi muktadha

sawa

KWENYE + CGDCONT? // angalia muktadha

+ CGDCONT: 1, "IP", "zap.vivo.com.br", "", 0, 0

KWA # SGACT = 1, 1 // Utekelezaji wa Muktadha

#SGACT: 100.108.48.30

sawa

Sanidi Kiolesura

Kutumia mazingira ya picha

Unganisha modem (oneRF_Modem_v04 - HE910)

Fungua Miunganisho ya Mtandao

Bonyeza + ili kuongeza muunganisho mpya

Chagua Broadband ya Simu

Chagua kifaa sahihi

Chagua Nchi

Chagua mtoa huduma

Chagua mpango na Hifadhi

Ondoa Modem

Unganisha tena Modem

Kutumia terminalapt-get install pppconfig

pppconfig

mtoa huduma = vivo

dinamico

SURA

vivo

vivo

115200

Toni

*99#

hapana (mwongozo)

/ dev / ttyUSB0

kuokoa

paka / nk / ppp / wenzao / vivo

paka / nk / chatscript / vivo

pon vivo

Ikiwa unatumia moduli ya Cat-M, tumia tu amri zifuatazo kabla:

echo 1bc7 1101> / sys / basi / usb-serial / madereva / chaguo1 / new_id

pata-up kupata comgt

comgt -d / dev / ttyUSB0 comgt info -d / dev / ttyUSB0

Hatua ya 6: Kuweka Moduli za Programu Muhimu

Kwenye kompyuta ya maendeleo

Kumbuka kuwa hatua zingine zinategemea vifaa na zinapaswa kubadilishwa ili kukidhi uainishaji wako halisi wa kompyuta. Maktaba zinaweza kuwekwa na amri moja.

Sudo apt kufunga-muhimu 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 chatu-pip python-numpy chatu-scipy chatu-matplotlib chatu-baadaye chatu-protobuf chatu-kuandika chatu-hypotesis chatu-yaml

OpenCV

Mfumo huu hutumiwa kukuza picha za msingi za picha kwenye mashine ya maendeleo. Kwa kuwa nambari zetu nyingi zimeandikwa katika Python, njia rahisi ya usanikishaji ni tu

bomba kufunga opencv-chatu

Kumbuka, hata hivyo, kwamba magurudumu haya hayatatumia chochote mbali na CPU yako na inaweza hata kutumia cores zake zote, kwa hivyo unaweza kutaka kukusanya kutoka kwa chanzo kufikia utendaji bora. Ili kujenga kifurushi katika Linux, kwa mfano, unapakua faili ya zip fomu ya OpenCV Inatoa ukurasa na uifungue. Kutoka kwa folda isiyofunguliwa:

mkdir kujenga && cd buildcmake.. fanya yote -j4

Sudo kufanya kufunga

Amri -j4 inaamuru tumia nyuzi nne. Tumia nyingi kama CPU yako!

Kahawa

Kuanzisha mfumo wa Caffe kutoka kwa vyanzo:

clone ya git https://github.com/BVLC/caffe.git && cd caffemkdir kujenga

cmake..

tengeneza vyote

fanya mtihani ufanye runtest

Ikiwa vipimo vyote vitafaulu kwa mafanikio basi mmewekwa.

TensorFlow

Google hairuhusu kukusanya TensorFlow na zana za kawaida. Inahitaji Bazel kwa hiyo na uwezekano haitafanya kazi, kwa hivyo epuka kuijumuisha na tu kunyakua moduli iliyokusanywa mapema na:

bomba kufunga tensorflow

Ikiwa kompyuta yako ni ya zamani na haina maagizo ya AVX, pata tensorflow ya mwisho isiyo ya AVX

bomba funga tensorflow == 1.5

Na umemaliza.

SNPE - Snapdragon ™ Injini ya Usindikaji wa Neural

Kuweka Snappy up, kama marafiki wetu wa Qualcomm wanaita SNPE, sio ngumu lakini hatua zinapaswa kufuatwa kwa karibu. Muhtasari wa ufungaji ni:

clone mifumo ya mtandao wa neva 'hazina za git

Kaffe 2

TensorFlow

ONNX

endesha hati ili uangalie tegemezi / bin / utegemezi.sh

snpe / bin / check_python_depends.sh

kwa kila mfumo uliowekwa endesha snpe / bin / envsetup.sh

chanzo $ SNPE / bin / envsetup.sh -c $ CAFFE_GIT

chanzo $ SNPE / bin / envsetup.sh -f $ CAFFE2_GIT

chanzo $ SNPE / bin / envsetup.sh -t $ TENSORFLOW_GIT

chanzo $ SNPE / bin / envsetup.sh -o $ ONNX_GIT

Ili kupata SNPE katika kila tukio la terminal unalofungua, ongezea hatua ya tatu ya mistari minne hadi mwisho wa faili yako ya ~ /.bashrc.

Kwenye bodi lengwa

Kuhamia kwa arm64 kutoka amd64 sio kazi ngumu, kwani maktaba nyingi zitatumia maagizo ya x86 kuongeza utendaji wao. Kwa bahati nzuri, inawezekana kukusanya rasilimali nyingi muhimu kwenye bodi yenyewe. Maktaba zinazohitajika zinaweza kusanikishwa kwa amri moja.

Sudo apt kufunga-muhimu 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 chatu-pip python-numpy chatu-scipy chatu-matplotlib chatu-baadaye chatu-protobuf chatu-kuandika chatu-hypotesis chatu-yaml

Sakinisha kwa urahisi na endelea. Kumbuka kuwa hatua hii inaweza kuchukua muda, kwani simu zinazofaa hufanya kujenga nambari ambayo haijatayarishwa mapema.

OpenCV

Pakua kutolewa kutoka kwa ghala la OpenCV, ifungue mahali fulani na kutoka kwa folda isiyofunguliwa:

mkdir kujenga && cd kujengacmake..

fanya yote -j3

Sudo kufanya kufunga

Kumbuka kuwa tulitumia chaguo -j3. Ikiwa unapata bodi kupitia ssh, kuwa na cores zote zilizobeba kikamilifu inaweza kuwa ya kutosha kuacha unganisho. Hiyo haifai. Kwa kupunguza matumizi ya uzi hadi tatu, tutakuwa na angalau uzi mmoja wa bure ili kukabiliana na unganisho la ssh na utunzaji wa nyumba kwa mfumo.

Hii ni ya Dragonboard 820 na Inforce 6640 na chip ya APQ8096. Kwenye Joka la 410 utataka kuwa na kumbukumbu ya bure ya bure au punguza nyuzi za kukusanya kwa moja, kwani ina RAM kidogo ya mwili.

Pia ni muhimu kukumbuka kuwa baridi ya chip itasaidia kuongeza utendaji kwa kupunguza kusonga kwa mafuta. Heatsink hufanya ujanja kwa mizigo midogo lakini utataka shabiki mzuri wa kukusanya na mizigo mingine ya CPU.

Kwa nini usiweke OpenCV na apt au pip? Kwa sababu kuijumuisha kwenye mashine lengwa hufanya kila maagizo ya processor kuonekana kwa mkusanyaji, ikiboresha utendaji wa utekelezaji.

SNPE - Snapdragon ™ Injini ya Usindikaji wa Neural

Tuliweka Snappy kama ilivyokuwa kwenye kompyuta ya mezani, ingawa hakukuwa na mfumo halisi wa mtandao wa neva uliowekwa (SNPE inahitaji tu repos za git, sio binaries halisi).

Walakini, kwa kuwa tunachohitaji ni binaries na vichwa vya habari kwa amri ya kukimbia-wavu, kuna uwezekano kwamba kuwa na faili zifuatazo kwenye folda na kuongeza folda hii kwa PATH inafanya kazi:

Mtandao wa Neural binarysnpe / bin / aarch64-linux-gcc4.9 / snpe-net-run

Maktaba za CPU

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

Maktaba ya DSP

snpe / lib / dsp / libsnpe_dsp_skel.so

snpe / lib / aarch64-linux-gcc4.9 / libsnpe_adsp.so

Matokeo mtazamaji

snpe / modeli / alexnet / hati / show_alexnet_classifications.py

Vitu vyenye ujasiri, /usr/lib/aarch64-linux-gnu/libatomic.so.1, hutolewa na Linaro kwenye njia hii na lazima inakiliwe kwenye folda hii ndogo ya nadharia.

Vifurushi vingine vilivyowekwa:

Sudo apt-get install net-tools Sudo apt-get kufunga gedit

Sudo apt kufunga nodejs

Sudo apt kufunga openvpn

Hatua ya 7: Maonyesho

Tazama onyesho fupi la Maono ya Smart IoT ya Smart-City inayofanya kazi !!

www.youtube.com/watch?v=qlk0APDGqcE&feature=youtu.be

Hatua ya 8: Asante

Tunashukuru timu ya Qualcomm na Embarcados kwa kuunda na kusaidia mashindano.

Jisikie huru kuwasiliana nasi kwa:

Marejeo

Mwongozo wa Ufungaji wa Joka la 410c kwa Linux na 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/ https://caffe.berkeleyvision.org/installation.html#…

Ilipendekeza: