Мазмуну:

Smart IoT Vision: 8 кадам
Smart IoT Vision: 8 кадам

Video: Smart IoT Vision: 8 кадам

Video: Smart IoT Vision: 8 кадам
Video: Настройка и подключение уличной WiFi камеры приложение ICSee от SMART XATA 2024, Июль
Anonim
Smart IoT Vision
Smart IoT Vision

Бул акылдуу шаардын контекстине багытталган долбоор. Бул маселеде биз чечип жаткан үч негизги көйгөй бар:

1 - коомдук жарыктандырууда энергияны үнөмдөө; 2 - шаардын коопсуздугун жакшыртуу; 3 - жол кыймылын жакшыртуу.

1 - Көчөдө LED чырактарын колдонуу менен, үнөмдөө 50% га чейин жетет жана Telemanagement менен биз 30% көбүрөөк үнөмдөөгө ээ боло алабыз.

2 - Акылдуу камераларды колдонуу менен, биз жарыкты башкара алабыз, ал жерде адамдар жок жерде агып, көчө бөлүгүн жаркырата алабыз. Бул энергияны үнөмдөп эле койбостон, карап туруу сезимин жогорулатат, ошону менен жаман ниеттүү адамдарды коркутат. Мындан тышкары, шектүү жүрүм -турумда визуалдык сигнализация (мисалы, лампалардын жаркылдашы) колдонулушу мүмкүн.

3 - Акылдуу камера трафикти көзөмөлдөйт, жергиликтүү шарттарды иштеп чыгат жана трафикти мыкты башкаруу үчүн жарык сигналдарын башкарат. Мындай жол менен тыгындарды болтурбай коюуга болот, өтмөктө агым жок болгондо машиналар көп убакыт бою кызыл сигналдарды күтпөйт жана башкалар. Технологиялык көйгөйлөргө байланыштуу, биз IoTде кеңири таралган көйгөйлөрдү чечебиз, мисалы шаардын масштабында бекем байланыш жана IoT Network үчүн камераларды интеграциялоо, тиешелүү маалыматты гана берүү үчүн четки иштетүүнү колдонуу менен.

Embarcados жана GitHubдагы биздин басылманы караңыз

Ютубда дагы

Биздин топ:

Милтон Фелипе Соуза Сантос

Gustavo Retuci Pinheiro

Эдуардо Калдас Кардосо

Джонатас Бейкер

(Байланыш маалыматы төмөндө)

1 -кадам: Системалык блоктун диаграммасы

Системалык блоктун диаграммасы
Системалык блоктун диаграммасы

Бул чечим архитектурасына сереп.

Система FAN интерфейсинде RFmesh, LANда WiFi жана WAN туташуусу үчүн CAT-M колдонгон Камера-шлюздан турат. Ал ошондой эле акылдуу фотоэлементтерди, акылдуу камераларды жана жарык сигналдарын камтыйт.

Тармактардагы бардык түзмөктөр, негизинен акылдуу камера, маалыматты 6lowpan аркылуу акылдуу шлюзга жөнөтүшөт, андыктан ал коомдук жарыктандыруу жана жарык сигналдарын көзөмөлдөө боюнча чечим кабыл алат.

Шлюз дагы биздин серверге VPN аркылуу туташкан. Ушундай жол менен, биз FANга жана LANга, боттун абалын текшерүү же түзмөктөрдү башкаруу мүмкүнчүлүгүнө ээбиз.

2 -кадам: Бул долбоордун компоненттери

Бул долбоордун компоненттери
Бул долбоордун компоненттери
Бул долбоордун компоненттери
Бул долбоордун компоненттери
Бул долбоордун компоненттери
Бул долбоордун компоненттери

Smart Cam

- DragonBoard410C/DragonBoard820C

- USB камерасы

- OneRF NIC

Камера шлюзи

- DragonBoard410C/DragonBoard820C

- USB камера

- OneRF NIC

- Cat-M/3G модеми

Smart Light Signal

3 -кадам: 2 -кадам: Райондук диаграмма жана туташуулар

2 -кадам: Райондук диаграмма жана туташуулар
2 -кадам: Райондук диаграмма жана туташуулар
2 -кадам: Райондук диаграмма жана туташуулар
2 -кадам: Райондук диаграмма жана туташуулар
2 -кадам: Райондук диаграмма жана туташуулар
2 -кадам: Райондук диаграмма жана туташуулар
2 -кадам: Райондук диаграмма жана туташуулар
2 -кадам: Райондук диаграмма жана туташуулар

Smart Cam

- USB порттогу камера

- OneRF NIC UART портунда

Камера шлюзи

- USB порттогу камера

- UART портунда OneRF NIC

- USB портунда 3G/Cat-M модеми

(Баары IoT Mezzanine аркылуу туташкан)

Smart Stree Light

- Кадимки көчө жарыгы

- Эстафета тактасы (3 канал)

- OneRF NIC

Smart Photocell

- OneRF NIC

- Power Meter

4 -кадам: DragonBoardsке OS орнотуңуз

Dragonboard820Cде Debian орнотуу (Fastboot ыкмасы)

Linux OSти колдонуп, тизмедеги пакеттерди орнотуңуз:

Дракон тактасында:

s4 ӨЧҮРҮҮ, ӨЧҮРҮҮ, ӨЧҮРҮҮ, ӨЧҮРҮҮ

Үн басууну күйгүзүү (-)

Эгерде сиз сериялык мониторду колдонуп жатсаңыз (абдан сунушталат), сиз "fastboot: командаларды иштетүү" деген билдирүүнү аласыз (сериялык монитор 115200) Компьютердеги микро-USB (J4) туташтырыңыз.

Негизги компьютерде: Download (жана ачуу)

$ sudo fastboot түзмөктөрү

452bb893 fastboot (мисал)

$ sudo fastboot флэш жүктөөчү boot-linaro-buster-dragonboard-820c-BUILD.img

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

Dragonboard410Cде Debian орнотуу

Компьютердеги кадамдар (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 = sync status = 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 кубаттуулуктан ажыратылганын текшериңиз

DragonBoard ™ 410c'деги S6 которуштургучун 0-1-0-0ге коюңуз, "SD Boot switch" "ON" деп коюлушу керек.

HDMI туташуу

USB клавиатурасын сайыңыз

MicroSD салыңыз

Кубат адаптери

Орнотула турган сүрөттү тандап, "Орнотууну" чыкылдатыңыз

орнотуунун бүтүшүн күтө туруңуз

Күч адаптерин алып салыңыз

MicroSDди алып салыңыз

S6 которууну 0-0-0-0ге коюңуз

БОЛДУ

5 -кадам: Байланыш интерфейстери

Cat-m жана 3G орнотуу

Башкы машинаны колдонуу менен төмөнкү AT буйруктарын колдонуңуз:

AT#SIMDET? // SIM бар экендигин текшерүү#SIMDET: 2, 0 // сим салынган жок

#SIMDET: 2, 1 // сим киргизилген

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 аркылуу pppconfig орнотуңуз

pppconfig

провайдер = vivo

dinamico

CHAP

vivo

vivo

115200

Тон

*99#

жок (кол менен)

/dev/ttyUSB0

сактоо

cat/etc/ppp/peers/vivo

cat/etc/chatscripts/vivo

pon vivo

Эгерде сиз Cat-M модулун колдонуп жатсаңыз, анда төмөнкү буйруктарды колдонуңуз:

echo 1bc7 1101>/sys/bus/usb-serial/drivers/option1/new_id

apt-get comgt орнотуу

comgt -d /dev /ttyUSB0 comgt маалыматы -d /dev /ttyUSB0

6 -кадам: Негизги Программалык Модулдарды Орнотуу

Өнүктүрүү компьютеринде

Белгилей кетсек, кээ бир кадамдар аппараттык жабдуулардан көз каранды жана аларды компьютериңиздин өзгөчөлүктөрүнө жооп берүү үчүн тууралоо керек. Китепканалар бир гана буйрук менен орнотулушу мүмкүн.

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-open-dp-py протоколу python-pip python-numpy python-scipy python-matplotlib python-future python-protobuf python-typing python-hypotesis python-yaml

OpenCV

Бул алкак иштеп чыгуучу машинада сүрөткө негизделген статистикалык алгоритмдерди иштеп чыгуу үчүн колдонулат. Биздин коддун көбү Pythonдо жазылгандыктан, орнотуунун эң оңой жолу - жөн эле

opencv-python орнотуу

Бирок, бул дөңгөлөктөр сиздин CPUңуздан башка эч нерсени колдонбойт жана анын бардык өзөктөрүн колдонбошу мүмкүн экенин эске алыңыз, андыктан максималдуу иштөө үчүн булактан компиляция кылгыңыз келиши мүмкүн. Топтомду Linuxта куруу үчүн, мисалы, OpenCV релиздер баракчасынан zip файлын жүктөңүз жана аны ачыңыз. Кысылган папкадан:

mkdir build && cd buildcmake.. баарын жаса -j4

sudo make install

-J4 буйругу төрт жипти колдонууну көрсөтөт. Процессоруңузга жараша колдонуңуз!

Caffe

Булактардан Caffe алкагын орнотуу үчүн:

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

смейк..

баарын жаса

тест жасоо

Эгерде бардык сыноолор ийгиликтүү өтсө, анда сиз даярсыз.

TensorFlow

Google сизге TensorFlowду кадимки куралдар менен түзүүгө уруксат бербейт. Бул үчүн Базел талап кылынат жана ал иштебей калышы мүмкүн, андыктан аны түзүүдөн качыңыз жана алдын ала түзүлгөн модулду кармап алыңыз:

pip tensorflow орнотуу

Эгерде сиздин компьютериңиз эскирип калган жана AVX көрсөтмөлөрү жок болсо, акыркы AVX эмес тензорлорду алыңыз

pip орнотуу tensorflow == 1.5

А сиз бүттүңүз.

SNPE - Snapdragon ™ Neural Processing Engine

Snappy орнотуу, биздин Qualcomm достору SNPE деп аташат, кыйын эмес, бирок кадамдар тыгыз аткарылышы керек. Орнотуунун схемасы мындай:

нейрон тармагынын алкактарынын гит репозиторийлерин клондоштуруу

CaffeCaffe2

TensorFlow

ONNX

dependenciessnpe/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-OpenPP-DYPPYPY python-pip python-numpy python-scipy python-matplotlib python-future python-protobuf python-typing python-hypotesis python-yaml

Аларды апт менен орнотуп, улантыңыз. Көңүл буруңуз, бул кадам бир аз убакытты алышы мүмкүн, анткени ылайыктуу чалуулар алдын ала компиляцияланбаган кодду курууга жардам берет.

OpenCV

Релизди OpenCV репозиторийинен жүктөп алыңыз, аны бир жерден жана кысылбаган папкадан ачыңыз:

mkdir build && cd buildcmake..

баарын жаса -j3

sudo make install

Биз -j3 опциясын колдонгонуңузга көңүл буруңуз. Эгерде сиз тактага ssh аркылуу кирсеңиз, анда бардык ядролордун толук жүктөлүшү байланышты үзүү үчүн жетиштүү болушу мүмкүн. Бул каалабайт. Жипти колдонууну үчкө чектөө менен, бизде ар дайым жок дегенде бир бош жип болот ssh туташуулары жана жалпы тутумдук тейлөө.

Бул APQ8096 чипи менен Dragonboard 820 жана Inforce 6640 үчүн. Dragonboard 410до сиз бош виртуалдык эс тутумга ээ болууну же компиляция темаларын бирөө менен чектөөнү каалайсыз, анткени анын физикалык RAMы азыраак.

Чипти муздатуу жылуулукту азайтуу менен иштөөнү жогорулатууга жардам берээри да көңүлгө аларлык. Муздаткыч кичинекей жүктөмдөрдө фокусту кылат, бирок сизге комплект жана башка CPU сыйымдуу жүктөмдөр үчүн ылайыктуу желдеткич керек болот.

Эмне үчүн OpenCVди apt же pip менен орнотпойсуз? Анткени аны максаттуу машинада чогултуу процессордун бардык көрсөтмөлөрүн компиляторго көрүнүктүү кылып, аткарууну жакшыртат.

SNPE - Snapdragon ™ Neural Processing Engine

Чыныгы нейрон тармагы орнотулбаганы менен, биз Snappyди рабочий компьютердегидей эле орноттук (SNPEге реалдуу экилик файлдарга эмес, гит репо керек).

Бирок, бизге snpe-net-run буйругу үчүн экилик файлдар жана аталыштар керек болгондуктан, папкада төмөнкү файлдарды кармап, бул папканы PATHге кошуу мүмкүнчүлүгү бар:

Нейрон тармагы binarysnpe/bin/aarch64-linux-gcc4.9/snpe-net-run

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

DSP китепканалары

snpe/lib/dsp/libsnpe_dsp_skel.so

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

Жыйынтыктарды көрүүчү

snpe/моделдер/alexnet/скрипттер/show_alexnet_classifications.py

Калын пункт, /usr/lib/aarch64-linux-gnu/libatomic.so.1, бул жолдо Linaro менен камсыздалган жана бул гипотетикалык минималдуу папкага көчүрүлүшү керек.

Башка маанилүү эмес пакеттер:

sudo apt-get install net-toolssudo apt-get install gedit

sudo apt nodejs орнотуу

sudo apt install openvpn

7 -кадам: Демонстрация

Smart IoT Visionтин Smart-City үчүн кыскача көрсөтмөсүн караңыз !!

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/

Сунушталууда: