Daftar Isi:

Visi IoT Cerdas: 8 Langkah
Visi IoT Cerdas: 8 Langkah

Video: Visi IoT Cerdas: 8 Langkah

Video: Visi IoT Cerdas: 8 Langkah
Video: Я работаю в Страшном музее для Богатых и Знаменитых. Страшные истории. Ужасы. 2024, November
Anonim
Visi IoT Cerdas
Visi IoT Cerdas

Ini adalah proyek yang berfokus pada konteks kota pintar. Dalam hal ini, ada tiga masalah utama yang kami selesaikan:

1 – hemat energi dalam penerangan umum; 2 – meningkatkan keamanan kota; 3 - meningkatkan arus lalu lintas.

1 – Dengan menggunakan lampu LED di jalanan, penghematannya sudah sampai 50%, dan dengan penambahan Telemanagement, kita bisa menghemat 30% lebih banyak.

2 – Dengan menggunakan kamera pintar, kita dapat mengontrol lampu untuk meredupkan di tempat yang tidak ada arus orang dan membuat bagian jalan menjadi lebih terang tempat orang berjalan. Ini tidak hanya akan menghemat energi tetapi meningkatkan perasaan diawasi, sehingga mengintimidasi orang yang berniat buruk. Selain itu, alarm visual (mengedipkan lampu misalnya), dapat digunakan jika ada perilaku yang mencurigakan.

3 – Kamera pintar akan mengawasi lalu lintas, memproses kondisinya secara lokal, dan mengontrol sinyal cahaya untuk mengelola lalu lintas dengan sebaik-baiknya. Dengan begitu kemacetan bisa dihindarkan, mobil tidak perlu menunggu lama di lampu merah saat tidak ada arus di persimpangan, dan sebagainya. Mengenai masalah teknologi, kami juga memecahkan masalah umum di IoT seperti konektivitas yang kuat dalam skala kota dan integrasi kamera untuk Jaringan IoT, dengan menggunakan pemrosesan tepi untuk mengirimkan hanya informasi yang relevan.

Lihat publikasi kami di Embarcados dan GitHub

Juga di YouTube

Tim kita:

Milton Felipe Souza Santos

Gustavo Retuci Pinheiro

Eduardo Caldas Cardoso

Jonatas Baker

(Informasi kontak di bagian bawah)

Langkah 1: Diagram Blok Sistem

Diagram Blok Sistem
Diagram Blok Sistem

Ini adalah gambaran dari arsitektur solusi.

Sistem ini terdiri dari Camera-Gateway yang menggunakan RFmesh pada antarmuka FAN, WiFi pada LAN, dan juga CAT-M untuk konektivitas WAN. Ini juga berisi fotosel pintar, Kamera Cerdas, dan sinyal cahaya.

Semua perangkat di jaringan, terutama kamera pintar, mengirim data melalui 6lowpan ke gerbang pintar, sehingga dapat mengambil keputusan terkait pencahayaan publik dan kontrol sinyal cahaya.

Gateway juga terhubung ke server kami melalui VPN. Dengan cara ini, kami memiliki akses ke FAN dan LAN, bot untuk memeriksa status atau mengontrol perangkat.

Langkah 2: Komponen untuk Proyek Ini

Komponen untuk Proyek Ini
Komponen untuk Proyek Ini
Komponen untuk Proyek Ini
Komponen untuk Proyek Ini
Komponen untuk Proyek Ini
Komponen untuk Proyek Ini

Kamera Pintar

- DragonBoard410C/DragonBoard820C

- Kamera USB

- NIC OneRF

Gerbang Kamera

- DragonBoard410C/DragonBoard820C

- Kamera USB

- NIC OneRF

- Modem Cat-M/3G

Sinyal Cahaya Cerdas

Langkah 3: Langkah 2: Diagram Sirkuit dan Koneksi

Langkah 2: Diagram Sirkuit dan Koneksi
Langkah 2: Diagram Sirkuit dan Koneksi
Langkah 2: Diagram Sirkuit dan Koneksi
Langkah 2: Diagram Sirkuit dan Koneksi
Langkah 2: Diagram Sirkuit dan Koneksi
Langkah 2: Diagram Sirkuit dan Koneksi
Langkah 2: Diagram Sirkuit dan Koneksi
Langkah 2: Diagram Sirkuit dan Koneksi

Kamera Pintar

- Kamera di port USB

- NIC OneRF di port UART

Gerbang Kamera

- Kamera di port USB

- NIC OneRF di port UART

- Modem 3G/Cat-M di port USB

(Semua terhubung oleh IoT Mezzanine)

Lampu Jalan Cerdas

- Lampu jalan konvensional

- Papan estafet (3 saluran)

- NIC OneRF

Fotosel Cerdas

- NIC OneRF

- Pengukur daya

Langkah 4: Instal Os di DragonBoards

Menginstal Debian di Dragonboard820C (Metode Fastboot)

Menggunakan OS Linux, instal paket yang tercantum di:

Di papan naga:

buat s4 MATI, MATI, MATI, MATI

Hidupkan dengan menekan vol (-)

Jika Anda menggunakan monitor serial (sangat disarankan), Anda akan mendapatkan pesan “fastboot: processing commands” (monitor serial di 115200) Hubungkan micro-usb (J4) di PC

Di PC host: Unduh (dan unzip) dari

$ perangkat fastboot sudo

452bb893 fastboot (contoh)

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

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

Menginstal Debian di Dragonboard410C

Langkah-langkah di komputer (Linux)

1 – Unduh gambar

$cd ~

$ mkdir Debian_SD_Card_Install_image

$ cd Debian_SD_Card_Install_image

$ wget

2 – Buka zip file

$ cd ~/Debian_SD_Card_Install_image

$ unzip dragonboard410c_sdcard_install_debian-233.zip

3 – Masukkan microSD ke komputer Anda dan periksa apakah sudah terpasang

$df -h

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

4 – Lepas microSD dan bakar gambar

$ umount /dev/sdb1

$ sudo dd if=db410c_sd_install_debian.img of=/dev/sdb bs=4M oflag=status sinkronisasi=noxfer

5 – Keluarkan microSD dari PC Anda

Langkah-langkah di komputer (Windows)Unduh – Gambar Kartu SD – (Opsi 1) Gambar Kartu SD – Instal dan boot dari eMMC

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

Unzip Kartu SD Instal Gambar

Unduh dan instal alat Win32DiskImager

sourceforge.net/projects/win32diskimager/f…

Buka alat Win32DiskImager

Masukkan kartu SD ke komputer

Temukan file.img yang diekstrak

Klik Tulis

Langkah-langkah di DragonboardPastikan DragonBoard™ 410c dicabut dari listrik

Setel sakelar S6 pada DragonBoard™ 410c ke 0-1-0-0, “Sakelar Boot SD” harus disetel ke “ON”.

Hubungkan HDMI

Pasang keyboard USB

Masukkan microSD

Pasang adaptor daya

Pilih gambar untuk menginstal dan klik "Instal"

tunggu penginstalan selesai

Lepaskan adaptor daya

Lepaskan microSD

Setel sakelar S6 ke 0-0-0-0

SELESAI

Langkah 5: Antarmuka Konektivitas

Memasang Cat-m dan 3G

Terapkan perintah AT berikut menggunakan mesin host:

DI#SIMDET? // cek keberadaan SIM#SIMDET: 2, 0 // sim tidak terpasang

#SIMDET: 2, 1 // sim dimasukkan

AT+CREG? //cek apakah sudah terdaftar

+CREG: 0, 1 // (menonaktifkan pendaftaran jaringan kode hasil yang tidak diminta (default pabrik), jaringan rumah terdaftar)

AT+COPS?

+COPS: 0, 0,”VIVO”, 2 // (mode = pilihan otomatis, format = alfanumerik, oper, ?)

AT+CPAS //Status Aktivitas Telepon

+CPAS: 0 //siap

AT+CSQ // periksa kualitas layanan

+CSQ: 16, 3 //(rssi, tingkat kesalahan bit)

AT+CGATT? //status lampiran GPRS

+CGATT: 1 //terlampir

AT+CGDCONT=1,”IP”,”zap.vivo.com.br”,, 0, 0 // konfigurasikan konteks

oke

AT+CGDCONT? // periksa konteks

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

AT#SGACT=1, 1 //Aktivasi Konteks

#SGACT: 100.108.48.30

oke

Siapkan Antarmuka

Menggunakan lingkungan grafis

Hubungkan modem (oneRF_Modem_v04 – HE910)

Buka Koneksi Jaringan

Klik + untuk menambahkan koneksi baru

Pilih Pita Lebar Seluler

Pilih perangkat yang benar

Pilih Negara

Pilih penyedia

Pilih paket dan Simpan

Lepas modemnya

Sambungkan kembali Modem

Menggunakan terminalapt-get install pppconfig

pppconfig

penyedia = vivo

dinamis

CHAP

vivo

vivo

115200

Nada

*99#

tidak (manual)

/dev/ttyUSB0

menyimpan

cat /etc/ppp/peers/vivo

cat /etc/chatscripts/vivo

pon vivo

Jika Anda menggunakan modul Cat-M, cukup gunakan perintah berikut sebelumnya:

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

apt-get install comgt

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

Langkah 6: Menginstal Modul Perangkat Lunak Esensial

Di komputer pengembangan

Perhatikan bahwa beberapa langkah bergantung pada perangkat keras dan harus disesuaikan untuk memenuhi spesifikasi komputer Anda yang sebenarnya. Pustaka dapat diinstal dengan satu perintah.

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 python-pip python-numpy python-scipy python-matplotlib python-future python-protobuf python-mengetik python-hypotesis python-yaml

OpenCV

Kerangka kerja ini digunakan untuk mengembangkan algoritma statistik berbasis gambar pada mesin pengembangan. Karena sebagian besar kode kita ditulis dengan Python, metode instalasi termudah adalah dengan

pip instal opencv-python

Namun, perhatikan bahwa roda ini tidak akan menggunakan apa pun selain CPU Anda dan bahkan mungkin tidak menggunakan semua intinya, jadi Anda mungkin ingin mengompilasi dari sumber untuk mencapai kinerja maksimum. Untuk membangun paket di Linux, misalnya, Anda mengunduh file zip dari halaman OpenCV Releases dan mengekstraknya. Dari folder yang tidak di-zip:

mkdir build && cd buildcmake.. make all -j4

sudo make install

Perintah -j4 menginstruksikan make untuk menggunakan empat utas. Gunakan sebanyak yang dimiliki CPU Anda!

Kafe

Untuk menyiapkan kerangka kerja Caffe dari sumber:

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

buatlah..

buat semua

buat tes buat runtest

Jika semua tes berjalan dengan sukses maka Anda sudah siap.

TensorFlow

Google tidak mengizinkan Anda mengompilasi TensorFlow dengan alat biasa. Itu membutuhkan Bazel untuk itu dan kemungkinan itu tidak akan berfungsi, jadi hindari mengkompilasinya dan ambil saja modul yang telah dikompilasi sebelumnya dengan:

pip instal tensorflow

Jika komputer Anda agak tua dan tidak memiliki instruksi AVX, dapatkan aliran tensor non-AVX terakhir dengan

pip instal tensorflow == 1,5

Dan Anda sudah selesai.

SNPE – Mesin Pemroses Saraf Snapdragon™

Menyiapkan Snappy, seperti yang disebut teman-teman Qualcomm kami SNPE, tidak sulit tetapi langkah-langkahnya harus diikuti dengan cermat. Garis besar instalasi adalah:

mengkloning repositori git kerangka kerja jaringan saraf

KafeCaffe2

TensorFlow

ONNX

jalankan skrip untuk memeriksa dependensisnpe/bin/dependencies.sh

snpe/bin/check_python_depends.sh

untuk setiap kerangka kerja yang diinstal, jalankan snpe/bin/envsetup.sh

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

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

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

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

Untuk mendapatkan SNPE di setiap instans terminal yang Anda buka, tambahkan empat baris langkah ketiga di akhir file ~/.bashrc Anda.

Di papan sasaran

Pindah ke arm64 dari amd64 bukanlah tugas yang mudah, karena banyak perpustakaan akan memanfaatkan instruksi x86 untuk meningkatkan kinerjanya. Untungnya, dimungkinkan untuk mengkompilasi sebagian besar sumber daya yang diperlukan di papan itu sendiri. Pustaka yang diperlukan dapat diinstal dengan satu perintah.

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 python-pip python-numpy python-scipy python-matplotlib python-future python-protobuf python-mengetik python-hypotesis python-yaml

Instal dengan apt dan lanjutkan. Perhatikan bahwa langkah ini mungkin memakan waktu, karena panggilan yang tepat dilakukan untuk membuat kode yang tidak dikompilasi sebelumnya.

OpenCV

Unduh rilis dari repositori OpenCV, unzip di suatu tempat dan dari folder unzip:

mkdir build && cd buildcmake..

buat semua -j3

sudo make install

Perhatikan bahwa kami menggunakan opsi -j3. Jika Anda mengakses papan melalui ssh, memiliki semua inti yang terisi penuh mungkin cukup untuk memutuskan koneksi. Itu tidak diinginkan. Dengan membatasi penggunaan utas hingga tiga, kami akan selalu memiliki setidaknya satu utas gratis untuk mengatasi koneksi ssh dan pemeliharaan sistem umum.

Ini untuk Dragonboard 820 dan Inforce 6640 dengan chip APQ8096. Di Dragonboard 410 Anda ingin memiliki beberapa memori virtual gratis atau membatasi utas kompilasi menjadi satu, karena RAM fisik yang tersedia lebih sedikit.

Perlu diperhatikan juga bahwa mendinginkan chip akan membantu meningkatkan kinerja dengan membatasi pelambatan termal. Heatsink melakukan trik pada beban kecil tetapi Anda akan menginginkan kipas yang tepat untuk kompilasi dan beban intensif CPU lainnya.

Mengapa tidak menginstal OpenCV dengan apt atau pip? Karena mengompilasinya di mesin target membuat setiap instruksi prosesor yang tersedia terlihat oleh kompiler, meningkatkan kinerja eksekusi.

SNPE – Mesin Pemroses Saraf Snapdragon™

Kami menginstal Snappy seperti pada komputer desktop, meskipun tidak ada kerangka kerja jaringan saraf yang diinstal (SNPE hanya membutuhkan repo git, bukan binari yang sebenarnya).

Namun, karena yang kita butuhkan hanyalah binari dan header untuk perintah snpe-net-run, ada kemungkinan hanya memiliki file berikut di folder dan menambahkan folder ini ke PATH berfungsi:

Jaringan saraf binersnpe/bin/aarch64-linux-gcc4.9/snpe-net-run

perpustakaan 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

perpustakaan DSP

snpe/lib/dsp/libsnpe_dsp_skel.so

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

Penampil hasil

snpe/models/alexnet/scripts/show_alexnet_classifications.py

Item tebal, /usr/lib/aarch64-linux-gnu/libatomic.so.1, disediakan dengan Linaro di jalur ini dan harus disalin ke folder minimal hipotetis ini.

Paket penting lainnya:

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

sudo apt install nodejs

sudo apt install openvpn

Langkah 7: Demonstrasi

Lihat demonstrasi singkat dari Smart IoT Vision untuk kerja Smart-City!!

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

Langkah 8: Terima kasih

Kami berterima kasih kepada tim Qualcomm dan Embarcados yang telah membuat dan mendukung kontes ini.

Jangan ragu untuk menghubungi kami di:

Referensi

Panduan Instalasi Dragonboard 410c untuk Linux dan 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/

Direkomendasikan: