Բովանդակություն:
- Քայլ 1: Համակարգի արգելափակման դիագրամ
- Քայլ 2: Այս ծրագրի բաղադրիչները
- Քայլ 3: Քայլ 2. Շղթայի դիագրամ և միացումներ
- Քայլ 4: Տեղադրեք OS- ը DragonBoards- ում
- Քայլ 5: Միացման միջերեսներ
- Քայլ 6: Հիմնական ծրագրաշարի մոդուլների տեղադրում
- Քայլ 7: rationուցադրություն
- Քայլ 8: Շնորհակալություն
Video: Smart IoT Vision: 8 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:49
Սա նախագիծ է, որը կենտրոնացած է խելացի քաղաքի համատեքստում: Այս հարցում մենք լուծում ենք երեք հիմնական խնդիր.
1 - էներգախնայողություն հանրային լուսավորության մեջ. 2 - բարելավել քաղաքի անվտանգությունը. 3 - բարելավել երթևեկի հոսքը:
1 - Փողոցներում օգտագործելով LED լուսարձակներ, խնայողություններն արդեն հասնում են մինչև 50% -ի, իսկ Telemanagement- ի ավելացման դեպքում մենք կարող ենք ունենալ 30% ավելի խնայողություն:
2 - Խելացի տեսախցիկների օգտագործմամբ մենք կարող ենք վերահսկել լույսերը, որպեսզի մարվեն այնտեղ, որտեղ մարդիկ բացակայում են, և լուսավորվի փողոցը, որտեղ մարդիկ քայլում են: Դա ոչ միայն կխնայի էներգիան, այլև կբարձրացնի դիտված լինելու զգացումը, այդպիսով ՝ կվախեցնի վատ մտադրությամբ մարդկանց: Ավելին, կասկածելի վարքագծի դեպքում կարող են օգտագործվել տեսողական ահազանգեր (օրինակ ՝ լամպերը թարթելը):
3 - Խելացի տեսախցիկը հետևելու է երթևեկությանը, տեղում մշակելու դրա պայմանները և վերահսկելու լուսային ազդանշանները `երթևեկը լավագույնս կառավարելու համար: Այս կերպ կարելի էր խուսափել խցանումներից, մեքենաները ստիպված չէին լինի երկար սպասել կարմիր ազդանշաններին, երբ անցումում հոսք չկա և այլն: Ինչ վերաբերում է տեխնոլոգիական խնդիրներին, մենք նաև լուծում ենք IoT- ում տարածված խնդիրները, ինչպիսիք են քաղաքային մասշտաբի ամուր կապը և IoT ցանցի տեսախցիկների ինտեգրումը `օգտագործելով ծայրահեղ մշակումը` միայն համապատասխան տեղեկատվություն փոխանցելու համար:
Տես մեր հրապարակումը Embarcados- ում և GitHub- ում
Նաև YouTube- ում
Մեր թիմը:
Միլթոն Ֆելիպե Սոուզա Սանտոս
Գուստավո Ռետուցի Պինեյրո
Էդուարդո Կալդաս Կարդոսո
Onatոնաթաս Բեյքեր
(Կոնտակտային տվյալներ ներքևում)
Քայլ 1: Համակարգի արգելափակման դիագրամ
Սա լուծման ճարտարապետության ակնարկ է:
Համակարգը բաղկացած է Camera-Gateway- ից, որն օգտագործում է RFmesh FAN ինտերֆեյսի վրա, WiFi LAN- ի վրա, ինչպես նաև CAT-M WAN միացման համար: Այն պարունակում է նաև խելացի լուսաբջիջներ, խելացի տեսախցիկներ և լուսային ազդանշաններ:
Devicesանցերի բոլոր սարքերը, հիմնականում ՝ խելացի տեսախցիկը, տվյալները 6lowpan- ով ուղարկում են խելացի դարպաս, այնպես որ այն կարող է որոշումներ կայացնել հանրային լուսավորության և լուսային ազդանշանների կառավարման վերաբերյալ:
Դարպասը նաև VPN- ի միջոցով է միացված մեր սերվերին: Այս կերպ մենք ունենք մուտք դեպի FAN և LAN, բոտ ՝ կարգավիճակը ստուգելու կամ սարքերը վերահսկելու համար:
Քայլ 2: Այս ծրագրի բաղադրիչները
Խելացի տեսախցիկ
- DragonBoard410C/DragonBoard820C
- USB տեսախցիկ
- OneRF NIC
Camera Gateway
- DragonBoard410C/DragonBoard820C
- USB տեսախցիկ
- OneRF NIC
- Cat-M/3G մոդեմ
Smart Light ազդանշան
Քայլ 3: Քայլ 2. Շղթայի դիագրամ և միացումներ
Խելացի տեսախցիկ
- Տեսախցիկ USB պորտի վրա
- OneRF NIC UART նավահանգստում
Camera Gateway
- Տեսախցիկ USB պորտի վրա
- OneRF NIC UART նավահանգստում
- 3G/Cat-M մոդեմ USB պորտում
(Բոլորը կապված են IoT միջնահարկով)
Smart Stree Light
- Պայմանական փողոցային լույս
- Ռելեային տախտակ (3 ալիք)
- OneRF NIC
Smart Photocell
- OneRF NIC
- Էլեկտրաէներգիայի հաշվիչ
Քայլ 4: Տեղադրեք OS- ը DragonBoards- ում
Debian- ի տեղադրում Dragonboard820C- ում (Fastboot մեթոդ)
Linux OS- ի միջոցով տեղադրեք փաթեթները, որոնք նշված են ՝
Վիշապի տախտակի վրա.
make s4 OFF, OFF, OFF, OFF
Միացնել vol (-) սեղմելը
Եթե դուք օգտագործում եք սերիական մոնիտոր (խիստ խորհուրդ է տրվում), դուք կստանաք «fastboot: processing commands» (սերիական մոնիտոր 115200 հասցեով) հաղորդագրությունը, միացրեք micro-usb (J4) համակարգչին
Հյուրընկալող համակարգչի վրա. Ներբեռնեք (և բացեք) ՝ https://www.96boards.org/documentation/consumer/d… կայքից
$ sudo fastboot սարքեր
452bb893 fastboot (օրինակ)
$ sudo fastboot flash boot boot-linaro-buster-dragonboard-820c-BUILD.img
$ sudo fastboot ֆլեշ արմատներ linaro-buster-alip-dragonboard-820c-BUILD.img
Debian- ի տեղադրում Dragonboard410C- ում
Քայլեր համակարգչի վրա (Linux)
1 - Ներբեռնեք պատկերը
$ cd
$ mkdir Debian_SD_Card_Install_image
$ cd Debian_SD_Card_Install_image
$ wget
2 - Բացեք ֆայլերը
$ cd ~/Debian_SD_Card_Install_image
$ unzip dragonboard410c_sdcard_install_debian-233.zip
3 - Տեղադրեք microSD ձեր համակարգչի վրա և ստուգեք, արդյոք այն տեղադրված է
$ df -h
/dev/sdb1 7.4G 32K 7.4G 1%/մեդիա/3533-3737
4 - Տեղահանեք microSD- ը և այրեք պատկերը
$ umount /dev /sdb1
$ sudo dd if = db410c_sd_install_debian.img of =/dev/sdb bs = 4M oflag = համաժամացման կարգավիճակ = noxfer
5 - Հեռացրեք microSD- ը ձեր համակարգչից
Քայլեր համակարգչում (Windows) Ներբեռնում - SD քարտի պատկեր - (տարբերակ 1) SD քարտի պատկեր - Տեղադրեք և ներբեռնեք eMMC- ից
www.96boards.org/documentation/consumer/dr…
Բացեք SD քարտի տեղադրման պատկերը
Ներբեռնեք և տեղադրեք Win32DiskImager գործիքը
sourceforge.net/projects/win32diskimager/f…
Բացեք Win32DiskImager գործիքը
Տեղադրեք SD քարտը համակարգչում
Գտեք արդյունահանված.img ֆայլը
Կտտացրեք Գրեք
Քայլեր Dragonboard- ում Համոզվեք, որ DragonBoard ™ 410c- ն անջատված է հոսանքից
Սահմանեք S6 անջատիչը DragonBoard ™ 410c- ի վրա 0-1-0-0, «SD Boot switch»-ը պետք է սահմանվի «ON»:
Միացրեք HDMI- ին
Միացրեք USB ստեղնաշարը
Տեղադրեք microSD
Միացրեք հոսանքի ադապտեր
Ընտրեք տեղադրման պատկերը և կտտացրեք «Տեղադրեք»
սպասեք տեղադրման ավարտին
Հեռացրեք հոսանքի ադապտերը
Հեռացրեք microSD- ը
Սահմանել S6 անջատիչը 0-0-0-0
ԿԱՏԱՐԱԾ
Քայլ 5: Միացման միջերեսներ
Տեղադրելով Cat-m և 3G
Կիրառեք AT- ի հետևյալ հրամանները ՝ օգտագործելով հյուրընկալող մեքենա
#SIMDET- ով? // ստուգեք SIM- ի առկայությունը#SIMDET: 2, 0 // SIM քարտը տեղադրված չէ
#SIMDET: 2, 1 // SIM տեղադրված է
AT+CREG? // ստուգեք, արդյոք գրանցված է
+CREG: 0, 1 // (անջատել ցանցի գրանցման չցանկացած արդյունքի կոդը (գործարանային լռելյայն), գրանցված տնային ցանց)
AT+COPS?
+COPS ՝ 0, 0, «VIVO», 2 // (ռեժիմ = ավտոմատ ընտրություն, ձևաչափ = այբբենական, օպերատոր,?)
AT+CPAS // Հեռախոսի գործունեության կարգավիճակ
+CPAS: 0 // պատրաստ է
AT+CSQ // ստուգեք ծառայության որակը
+CSQ: 16, 3 // (rssi, բիտ սխալի տոկոսադրույք)
AT+CGATT? // GPRS հավելվածի վիճակը
+CGATT: 1 // կցվում է
AT+CGDCONT = 1, "IP", "zap.vivo.com.br",, 0, 0 // կարգավորել համատեքստը
լավ
AT+CGDCONT? // ստուգեք համատեքստը
+CGDCONT: 1, "IP", "zap.vivo.com.br", "", 0, 0
AT#SGACT = 1, 1 // Համատեքստի ակտիվացում
#SGACT: 100.108.48.30
լավ
Կարգավորեք միջերեսը
Օգտագործելով գրաֆիկական միջավայր
Միացրեք մոդեմը (oneRF_Modem_v04 - HE910)
Բացեք ցանցային կապերը
Կտտացրեք + ՝ նոր կապ ավելացնելու համար
Ընտրեք Շարժական լայնաշերտ
Ընտրեք ճիշտ սարքը
Ընտրեք Երկիրը
Ընտրեք մատակարարը
Ընտրեք ծրագիրը և պահեք
Հեռացրեք մոդեմը
Միացրեք մոդեմը
Օգտագործելով terminalapt-get install pppconfig
pppconfig
մատակարար = vivo
դինամիկո
CHAP
vivo
vivo
115200
Տոննա
*99#
ոչ (ձեռնարկ)
/dev/ttyUSB0
խնայել
կատու/etc/ppp/հասակակիցներ/vivo
cat/etc/chatscripts/vivo
պոն վիվո
Եթե դուք օգտագործում եք Cat-M մոդուլ, ապա նախքան օգտագործեք հետևյալ հրամանները
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: Հիմնական ծրագրաշարի մոդուլների տեղադրում
Theարգացման համակարգչի վրա
Նկատի ունեցեք, որ որոշ քայլեր կախված են ապարատից և պետք է ճշգրտվեն `համապատասխանելու ձեր համակարգչի իրական բնութագրերին: Գրադարանները կարող են տեղադրվել մեկ հրամանով:
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 python-pip python-numpy python-scipy python-matplotlib python-future python-protobuf python-typing python-hypotesis python-yaml
OpenCV
Այս շրջանակը օգտագործվում է զարգացման մեքենայի վրա պատկերների վրա հիմնված վիճակագրական ալգորիթմներ մշակելու համար: Քանի որ մեր ծածկագրի մեծ մասը գրված է Python- ում, տեղադրման ամենահեշտ մեթոդը պարզապես
pip տեղադրել opencv-python
Այնուամենայնիվ, նշեք, որ այս անիվները ձեր պրոցեսորից բացի ոչինչ չեն օգտագործի և նույնիսկ չեն կարող օգտագործել դրա բոլոր միջուկները, ուստի գուցե ցանկանաք կազմել սկզբնաղբյուրից `առավելագույն կատարման հասնելու համար: Օրինակ ՝ Linux- ում փաթեթը կառուցելու համար դուք բեռնում եք zip ֆայլը OpenCV թողարկումների էջից և այն բացում: Անջատված թղթապանակից.
mkdir build && cd buildcmake.. կատարել բոլորը -j4
sudo make install
-J4 հրամանի հրահանգները ստիպում են օգտագործել չորս թել: Օգտագործեք այնքան, որքան ունի ձեր պրոցեսորը:
Կոֆե
Caffe շրջանակը աղբյուրներից կարգավորելու համար.
git clone https://github.com/BVLC/caffe.git && cd caffemkdir build
սմեկ..
պատրաստել բոլորը
make test make runtest
Եթե բոլոր թեստերը հաջողությամբ են ընթանում, ապա ամեն ինչ պատրաստ է:
TensorFlow
Google- ը թույլ չի տալիս TensorFlow- ը կազմել սովորական գործիքներով: Դրա համար պահանջվում է Բազել, և, ամենայն հավանականությամբ, այն չի աշխատի, այնպես որ խուսափեք այն կազմելուց և պարզապես գրավեք նախապես կազմված մոդուլը ՝
pip տեղադրել tensorflow
Եթե ձեր համակարգիչը մի փոքր հին է և չունի AVX հրահանգներ, ստացեք վերջին ոչ AVX tensorflow- ը
pip տեղադրել tensorflow == 1.5
Եվ դուք ավարտեցիք:
SNPE - Snapdragon ™ Նյարդային մշակման շարժիչ
Snappy- ի կարգավորումը, ինչպես մեր Qualcomm ընկերներն են անվանում SNPE, դժվար չէ, բայց քայլերը պետք է ուշադիր հետևել: Տեղադրման ուրվագիծը հետևյալն է.
կլոնավորել նյարդային ցանցի շրջանակների git շտեմարանները
CaffeCaffe2
TensorFlow
ONNX
գործարկեք սցենարները, որպեսզի ստուգեքpendenciessnpe/bin/dependencies.sh- ը
snpe/bin/check_python_depends.sh
յուրաքանչյուր տեղադրված շրջանակի համար գործարկեք snpe/bin/envsetup.sh
աղբյուր $ SNPE/bin/envsetup.sh -c $ CAFFE_GIT
աղբյուր $ SNPE/bin/envsetup.sh -f $ CAFFE2_GIT
աղբյուր $ SNPE/bin/envsetup.sh -t $ TENSORFLOW_GIT
աղբյուր $ SNPE/bin/envsetup.sh -o $ ONNX_GIT
SNPE- ի աղբյուրը յուրաքանչյուր բացվող տերմինալում ավելացրեք երրորդ քայլի չորս տողերը ձեր ~/.bashrc ֆայլի վերջում:
Թիրախային տախտակի վրա
Amd64- ից arm64- ին անցնելը հեշտ աշխատանք չէ, քանի որ շատ գրադարաններ կօգտվեն x86 հրահանգներից `իրենց կատարողականությունը բարձրացնելու համար: Բարեբախտաբար, հնարավոր է անհրաժեշտ ռեսուրսների մեծ մասը կազմել հենց տախտակի վրա: Անհրաժեշտ գրադարանները կարող են տեղադրվել մեկ հրամանով:
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 python-pip python-numpy python-scipy python-matplotlib python-future python-protobuf python-typing python-hypotesis python-yaml
Տեղադրեք դրանք apt- ով և շարունակեք: Նկատի ունեցեք, որ այս քայլը կարող է որոշ ժամանակ տևել, քանի որ համապատասխան զանգերը կատարում են նախապես կազմված ծածկագիրը կառուցելու համար:
OpenCV
Ներբեռնեք թողարկումը OpenCV պահոցից, տեղահանեք այն ինչ -որ տեղ և չփակված թղթապանակից.
mkdir build && cd buildcmake..
կատարել բոլորը -j3
sudo make install
Նշենք, որ մենք օգտագործել ենք -j3 տարբերակը: Եթե դուք մուտք եք գործում տախտակ ssh- ի միջոցով, բոլոր միջուկները ամբողջությամբ բեռնված լինելը կարող է բավական լինել կապը դադարեցնելու համար: Դա ցանկալի չէ: Թելերի օգտագործումը երեքով սահմանափակելով, մենք միշտ կունենանք առնվազն մեկ անվճար թել `ssh կապերին և ընդհանուր համակարգի տնային տնտեսությանը դիմակայելու համար:
Սա Dragonboard 820- ի և Inforce 6640- ի համար է ՝ APQ8096 չիպով: Dragonboard 410 -ում դուք կցանկանաք ունենալ ազատ վիրտուալ հիշողություն կամ սահմանափակել կազմված թելերը մեկով, քանի որ այն ունի ավելի քիչ ֆիզիկական RAM:
Նաև նշենք, որ չիպի սառեցումը կնպաստի կատարողականի բարձրացմանը `սահմանափակելով ջերմային շնչափողը: Heեռուցիչը հնարք է կատարում փոքր բեռների դեպքում, բայց դուք կցանկանաք ունենալ համապատասխան օդափոխիչ `CPU- ի և այլ ինտենսիվ բեռների հավաքման համար:
Ինչու՞ տեղադրել OpenCV- ն apt- ով կամ pip- ով: Քանի որ այն թիրախային մեքենայի մեջ հավաքելը տեսանելի է դարձնում յուրաքանչյուր մատչելի պրոցեսորի հրահանգը կազմողի համար ՝ բարելավելով կատարման կատարողականը:
SNPE - Snapdragon ™ Նյարդային մշակման շարժիչ
Մենք Snappy- ը տեղադրեցինք այնպես, ինչպես աշխատասեղանի համակարգչի վրա, չնայած որ տեղադրված չէր նեյրոնային ցանցի իրական շրջանակ (SNPE- ին անհրաժեշտ են միայն git repos, այլ ոչ թե իրական երկուական ֆայլերը):
Այնուամենայնիվ, քանի որ մեզ անհրաժեշտ են երկուական ֆայլերն ու վերնագրերը snpe-net-run հրամանի համար, կա հավանականություն, որ թղթապանակում պարզապես ունենալ հետևյալ ֆայլերը և այս թղթապանակը ավելացնել PATH- ին.
Նյարդային ցանց binarysnpe/bin/aarch64-linux-gcc4.9/snpe-net-run
Պրոցեսորի գրադարաններ
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 գրադարաններ
snpe/lib/dsp/libsnpe_dsp_skel.so
snpe/lib/aarch64-linux-gcc4.9/libsnpe_adsp.so
Արդյունքների դիտիչ
snpe/models/alexnet/scripts/show_alexnet_classifications.py
Համարձակ կետը ՝ /usr/lib/aarch64-linux-gnu/libatomic.so.1, տրամադրված է Լինարոյի հետ այս ճանապարհին և պետք է պատճենվի այս հիպոթետիկ նվազագույն թղթապանակում:
Այլ կարևոր փաթեթներ.
sudo apt-get install net-toolssudo apt-get install gedit
sudo apt տեղադրել nodejs
sudo apt տեղադրել openvpn
Քայլ 7: rationուցադրություն
Տեսեք Smart IoT Vision- ի խելացի քաղաքի աշխատանքի կարճ ցուցադրումը !!
www.youtube.com/watch?v=qlk0APDGqcE&feature=youtu.be
Քայլ 8: Շնորհակալություն
Շնորհակալություն ենք հայտնում Qualcomm թիմին և Embarcados- ին ՝ մրցույթը ստեղծելու և աջակցելու համար:
Ազատ զգալ կապվեք մեզ հետ ՝
Հղումներ
Dragonboard 410c- ի տեղադրման ուղեցույց Linux- ի և 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/
Խորհուրդ ենք տալիս:
Vision LED աշխատակազմի համառություն. 11 քայլ (նկարներով)
Vision LED- ի անձնակազմի համառություն. Հայտնի է, որ նույնիսկ լույսն անջատելուց հետո մարդու աչքը շարունակում է " տեսնել " այն վայրկյանների մի հատվածի համար: Սա հայտնի է որպես Տեսողության համառություն կամ POV, և այն թույլ է տալիս «ներկել»: նկարներ ՝ շերտը արագ տեղափոխելով
Միկրո ՝ բիթ MU Vision Sensor - օբյեկտի հետևում ՝ 7 քայլ
Micro. մի քանի օբյեկտի պարզ հետևում, այնպես որ
Vision 4all - Sistema Visão Assistida Para Deficientes Visuais Usando OpenCV, Dragonboard 410c E Aplicativo Android: 6 քայլ
Vision 4all - Sistema Visão Assistida Para Deficientes Visuais Usando OpenCV- ի, Dragonboard 410c E հավելվածի Android ՝ DESCRI Ç Ã OO intuito do projeto é dar autonomia para deficientes visuais se locomoverem em ambientes փակ como casas ou առեւտրի կենտրոնների եւ aeroportos.A locomo ç ã o em ambientes j á mapeados pode ou n ã o s
Ինչպե՞ս DIY Smart Roller վարագույրներ պատրաստել SONOFF Smart անջատիչների միջոցով: 14 քայլ
Ինչպե՞ս DIY Smart Roller վարագույրներ SONOFF Smart անջատիչներով: և երեկոյան ներքև քաշե՞լ: Ամեն դեպքում, ես
Micro: bit MU Vision Sensor - Տեղադրված է Smart Car- ում ՝ 5 քայլ
Micro: bit MU Vision Sensor - Տեղադրված է Smart Car- ում. Սա ուղեցույց է, թե ինչպես տեղադրել MU տեսողության սենսորը Smart Car- ում, որը մենք կառուցում ենք այս հրահանգելիքում: Մինչ այս ուղեցույցը ցույց է տալիս, թե ինչպես տեղադրել MU տեսողության տվիչ, կարող եք նաև հետևել դրան ՝ բոլոր այլ տեսակի սենսորներ տեղադրելու համար: Ես ունեի 2 առանցքի տեսախցիկ