Mục lục:
- Bước 1: Sơ đồ khối hệ thống
- Bước 2: Các thành phần cho Dự án này
- Bước 3: Bước 2: Sơ đồ mạch và kết nối
- Bước 4: Cài đặt Os trên DragonBoards
- Bước 5: Giao diện kết nối
- Bước 6: Cài đặt các mô-đun phần mềm thiết yếu
- Bước 7: Trình diễn
- Bước 8: Cảm ơn bạn
Video: Tầm nhìn IoT thông minh: 8 bước
2024 Tác giả: John Day | [email protected]. Sửa đổi lần cuối: 2024-01-30 13:34
Đây là một dự án tập trung vào bối cảnh thành phố thông minh. Trong vấn đề này, có ba vấn đề chính mà chúng tôi đang giải quyết:
1 - tiết kiệm năng lượng trong chiếu sáng công cộng; 2 - cải thiện an ninh thành phố; 3 - cải thiện lưu lượng giao thông.
1 - Bằng cách sử dụng đèn LED trên đường phố, khoản tiết kiệm đã lên đến 50%, và với việc bổ sung Quản lý từ xa, chúng tôi có thể tiết kiệm thêm 30%.
2 - Với việc sử dụng camera thông minh, chúng ta có thể điều khiển đèn giảm độ sáng ở những nơi vắng người qua lại và làm sáng hơn đoạn phố nơi có người qua lại. Nó sẽ không chỉ tiết kiệm năng lượng mà còn tăng cảm giác bị theo dõi, do đó, đe dọa những người có ý đồ xấu. Hơn nữa, cảnh báo trực quan (nhấp nháy đèn chẳng hạn), có thể được sử dụng trong trường hợp có hành vi đáng ngờ.
3 - Camera thông minh sẽ theo dõi giao thông, xử lý cục bộ tình trạng của nó và điều khiển tín hiệu đèn để quản lý giao thông tốt nhất. Bằng cách này, có thể tránh được ùn tắc giao thông, ô tô sẽ không phải chờ tín hiệu đèn đỏ lâu khi không có luồng xe qua đường, v.v. Về các vấn đề công nghệ, chúng tôi cũng đang giải quyết những vấn đề phổ biến trong IoT như kết nối mạnh mẽ ở quy mô thành phố và tích hợp camera cho Mạng IoT, bằng cách sử dụng xử lý biên để chỉ truyền thông tin có liên quan.
Xem ấn phẩm của chúng tôi trên Embarcados và GitHub
Cũng trên YouTube
Đội của chúng tôi:
Milton Felipe Souza Santos
Gustavo Retuci Pinheiro
Eduardo Caldas Cardoso
Jonathas Baker
(Thông tin liên hệ phía dưới)
Bước 1: Sơ đồ khối hệ thống
Đây là tổng quan về kiến trúc giải pháp.
Hệ thống bao gồm Camera-Gateway sử dụng RFmesh trên giao diện FAN, WiFi trên LAN và CAT-M cho kết nối WAN. Nó cũng chứa các tế bào quang thông minh, Camera thông minh và tín hiệu ánh sáng.
Tất cả các thiết bị trong mạng, chủ yếu là camera thông minh, đang gửi dữ liệu qua 6lowpan đến cổng thông minh, vì vậy nó có thể đưa ra các quyết định liên quan đến điều khiển ánh sáng công cộng và tín hiệu ánh sáng.
Cổng cũng được kết nối với máy chủ của chúng tôi thông qua VPN. Theo cách này, chúng tôi có quyền truy cập vào FAN và LAN, bot để kiểm tra trạng thái hoặc điều khiển các thiết bị.
Bước 2: Các thành phần cho Dự án này
Cam thông minh
- DragonBoard410C / DragonBoard820C
- Máy ảnh USB
- OneRF NIC
Cổng camera
- DragonBoard410C / DragonBoard820C
- Máy ảnh USB
- OneRF NIC
- Modem Cat-M / 3G
Tín hiệu ánh sáng thông minh
Bước 3: Bước 2: Sơ đồ mạch và kết nối
Cam thông minh
- Camera trên cổng USB
- OneRF NIC tại cổng UART
Cổng camera
- Camera trên cổng USB
- OneRF NIC tại cổng UART
- Modem 3G / Cat-M ở cổng USB
(Tất cả được kết nối bởi IoT Mezzanine)
Đèn chiếu sáng thông minh
- Đèn đường thông thường
- Bảng chuyển tiếp (3 kênh)
- OneRF NIC
Tế bào quang thông minh
- OneRF NIC
- Đồng hồ điện
Bước 4: Cài đặt Os trên DragonBoards
Cài đặt Debian trên Dragonboard820C (Phương pháp Fastboot)
Sử dụng hệ điều hành Linux, cài đặt các gói được liệt kê trong:
Trên bảng rồng:
làm cho s4 TẮT, TẮT, TẮT, TẮT
Bật nhấn vol (-)
Nếu bạn đang sử dụng màn hình nối tiếp (rất khuyến khích), bạn sẽ nhận được thông báo “fastboot: Xử lý lệnh” (màn hình nối tiếp ở 115200) Kết nối micro-usb (J4) trên PC
Trên PC chủ: Tải xuống (và giải nén) từ
$ sudo fastboot thiết bị
452bb893 fastboot (ví dụ)
$ sudo fastboot flash boot boot-linaro-buster-dragonboard-820c-BUILD.img
$ sudo fastboot flash rootfs linaro-buster-alip-dragonboard-820c-BUILD.img
Cài đặt Debian trên Dragonboard410C
Các bước trên máy tính (Linux)
1 - Tải xuống hình ảnh
$ cd ~
$ mkdir Debian_SD_Card_Install_image
$ cd Debian_SD_Card_Install_image
$ wget
2 - Giải nén các tập tin
$ cd ~ / Debian_SD_Card_Install_image
$ giải nén dragonboard410c_sdcard_install_debian-233.zip
3 - Gắn thẻ nhớ microSD vào máy tính của bạn và kiểm tra xem nó đã được gắn chưa
$ df -h
/ dev / sdb1 7.4G 32K 7.4G 1% / media / 3533-3737
4 - Rút thẻ nhớ microSD và ghi hình ảnh
$ umount / dev / sdb1
$ sudo dd if = db410c_sd_install_debian.img of = / dev / sdb bs = 4M oflag = sync status = noxfer
5 - Tháo thẻ nhớ microSD khỏi PC của bạn
Các bước trên máy tính (Windows) Tải xuống - Hình ảnh thẻ SD - (Tùy chọn 1) Hình ảnh thẻ SD - Cài đặt và khởi động từ eMMC
www.96boards.org/documentation/consumer/dr…
Giải nén hình ảnh cài đặt thẻ SD
Tải xuống và cài đặt công cụ Win32DiskImager
sourceforge.net/projects/win32diskimager/f…
Mở công cụ Win32DiskImager
Gắn thẻ SD vào máy tính
Tìm tệp.img đã giải nén
Bấm vào Viết
Các bước trên Dragonboard Đảm bảo DragonBoard ™ 410c đã được rút khỏi nguồn điện
Đặt công tắc S6 trên DragonBoard ™ 410c thành 0-1-0-0, “Công tắc khởi động SD” phải được đặt thành “BẬT”.
Kết nối HDMI
Cắm bàn phím USB
Lắp thẻ nhớ microSD
Cắm bộ đổi nguồn
Chọn hình ảnh để cài đặt và nhấp vào “Cài đặt”
đợi quá trình cài đặt kết thúc
Tháo bộ đổi nguồn
Tháo thẻ nhớ microSD
Đặt công tắc S6 thành 0-0-0-0
XONG
Bước 5: Giao diện kết nối
Cài đặt Cat-m và 3G
Áp dụng các lệnh AT sau bằng máy chủ:
TẠI # SIMDET? // kiểm tra sự hiện diện của SIM # SIMDET: 2, 0 // sim chưa được lắp
#SIMDET: 2, 1 // sim đã được lắp vào
AT + CREG? // kiểm tra xem nó đã được đăng ký chưa
+ CREG: 0, 1 // (tắt mã kết quả không mong muốn đăng ký mạng (mặc định của nhà sản xuất), mạng gia đình đã đăng ký)
AT + COPS?
+ COPS: 0, 0,”VIVO”, 2 // (mode = lựa chọn tự động, format = alphanumeric, oper,?)
AT + CPAS // Trạng thái hoạt động trên điện thoại
+ CPAS: 0 // sẵn sàng
AT + CSQ // kiểm tra chất lượng dịch vụ
+ CSQ: 16, 3 // (rssi, tỷ lệ lỗi bit)
AT + CGATT? // trạng thái của phần đính kèm GPRS
+ CGATT: 1 // đính kèm
AT + CGDCONT = 1,”IP”,”zap.vivo.com.br”, 0, 0 // cấu hình ngữ cảnh
VÂNG
AT + CGDCONT? // kiểm tra ngữ cảnh
+ CGDCONT: 1,”IP”,”zap.vivo.com.br”,””, 0, 0
AT # SGACT = 1, 1 // Kích hoạt theo ngữ cảnh
#SGACT: 100.108.48.30
VÂNG
Thiết lập giao diện
Sử dụng môi trường đồ họa
Kết nối modem (oneRF_Modem_v04 - HE910)
Mở kết nối mạng
Nhấp vào + để thêm kết nối mới
Chọn băng thông rộng di động
Chọn thiết bị chính xác
Chọn quốc gia
Chọn nhà cung cấp
Chọn gói và Lưu
Gỡ bỏ Modem
Kết nối lại Modem
Sử dụng terminalapt-get install pppconfig
pppconfig
nhà cung cấp = vivo
dinamico
CHAP
vivo
vivo
115200
Tấn
*99#
không (thủ công)
/ dev / ttyUSB0
cứu
cat / etc / ppp / ngang hàng / vivo
cat / etc / chatscripts / vivo
pon vivo
Nếu bạn đang sử dụng mô-đun Cat-M, chỉ cần sử dụng các lệnh sau trước:
echo 1bc7 1101> / sys / bus / usb-serial / driver / option1 / new_id
apt-get install comgt
comgt -d / dev / ttyUSB0 comgt thông tin -d / dev / ttyUSB0
Bước 6: Cài đặt các mô-đun phần mềm thiết yếu
Trên máy tính phát triển
Lưu ý rằng một số bước phụ thuộc vào phần cứng và cần được điều chỉnh để đáp ứng các thông số kỹ thuật máy tính thực tế của bạn. Các thư viện có thể được cài đặt bằng một lệnh duy nhất.
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-compiler python-devnempi python-pip python-numpy python-scipy python-matplotlib python-future python-protobuf python-type python-pseudesis python-yaml
OpenCV
Khung này được sử dụng để phát triển các thuật toán thống kê dựa trên hình ảnh trên máy phát triển. Vì hầu hết mã của chúng tôi được viết bằng Python, nên phương pháp cài đặt đơn giản nhất là chỉ
pip cài đặt opencv-python
Tuy nhiên, lưu ý rằng các bánh xe này sẽ không sử dụng bất cứ thứ gì ngoài CPU của bạn và thậm chí có thể không sử dụng tất cả các lõi của nó, vì vậy bạn có thể muốn biên dịch từ nguồn để đạt được hiệu suất tối đa. Ví dụ: để xây dựng gói trong Linux, bạn tải tệp zip xuống trang Bản phát hành OpenCV và giải nén nó. Từ thư mục đã giải nén:
mkdir build && cd buildcmake.. make all -j4
sudo thực hiện cài đặt
Lệnh -j4 hướng dẫn thực hiện sử dụng bốn luồng. Sử dụng nhiều như CPU của bạn có!
Caffe
Để thiết lập khung Caffe từ các nguồn:
git clone https://github.com/BVLC/caffe.git && cd caffemkdir build
cmake..
làm cho tất cả
thực hiện kiểm tra làm cho runtest
Nếu tất cả các thử nghiệm chạy thành công thì bạn đã hoàn tất.
TensorFlow
Google không cho phép bạn biên dịch TensorFlow bằng các công cụ thông thường. Nó yêu cầu Bazel cho nó và rất có thể nó sẽ không hoạt động, vì vậy hãy tránh biên dịch nó và chỉ lấy mô-đun được biên dịch trước với:
pip cài đặt tensorflow
Nếu máy tính của bạn hơi cũ và không có hướng dẫn AVX, hãy tải dòng căng thẳng không phải AVX cuối cùng với
pip cài đặt tensorflow == 1.5
Và bạn đã hoàn thành.
SNPE - Công cụ xử lý thần kinh Snapdragon ™
Thiết lập Snappy, như những người bạn Qualcomm của chúng tôi gọi là SNPE, không khó nhưng các bước cần được tuân thủ chặt chẽ. Đề cương cài đặt là:
sao chép kho lưu trữ git của các khung công tác mạng thần kinh
CaffeCaffe2
TensorFlow
ONNX
chạy các tập lệnh để kiểm tra dependenciessnpe / bin / dependencies.sh
snpe / bin / check_python_depends.sh
cho mỗi khung đã cài đặt, hãy chạy snpe / bin / envsetup.sh
nguồn $ SNPE / bin / envsetup.sh -c $ CAFFE_GIT
nguồn $ SNPE / bin / envsetup.sh -f $ CAFFE2_GIT
nguồn $ SNPE / bin / envsetup.sh -t $ TENSORFLOW_GIT
nguồn $ SNPE / bin / envsetup.sh -o $ ONNX_GIT
Để tạo nguồn SNPE trong mọi phiên bản đầu cuối mà bạn mở, hãy nối bốn dòng của bước ba vào cuối tệp ~ /.bashrc của bạn.
Trên bảng mục tiêu
Chuyển sang arm64 từ amd64 không phải là một nhiệm vụ dễ dàng, vì nhiều thư viện sẽ tận dụng các lệnh x86 để tăng hiệu suất của chúng. May mắn thay, nó có thể tự biên dịch hầu hết các tài nguyên cần thiết trên bảng. Các thư viện cần thiết có thể được cài đặt bằng một lệnh duy nhất.
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-compiler python-devnempi python-pip python-numpy python-scipy python-matplotlib python-future python-protobuf python-type python-pseudesis python-yaml
Cài đặt chúng với apt và tiếp tục. Lưu ý rằng bước này có thể mất một chút thời gian, vì các lệnh gọi apt thực hiện để tạo mã không được biên dịch trước.
OpenCV
Tải xuống bản phát hành từ kho lưu trữ OpenCV, giải nén nó ở đâu đó và từ thư mục đã giải nén:
mkdir build && cd buildcmake..
làm cho tất cả -j3
sudo thực hiện cài đặt
Lưu ý rằng chúng tôi đã sử dụng tùy chọn -j3. Nếu bạn truy cập bảng thông qua ssh, việc tất cả các lõi được tải đầy đủ có thể đủ để ngắt kết nối. Điều đó không mong muốn. Bằng cách giới hạn mức sử dụng luồng xuống còn ba, chúng tôi sẽ luôn có ít nhất một luồng miễn phí để đối phó với các kết nối ssh và quản lý hệ thống chung.
Điều này dành cho Dragonboard 820 và Inforce 6640 với chip APQ8096. Trên Dragonboard 410, bạn sẽ muốn có một số bộ nhớ ảo miễn phí hoặc giới hạn các luồng biên dịch thành một, vì nó có ít RAM vật lý hơn.
Cũng cần lưu ý rằng việc làm mát chip sẽ giúp tăng hiệu suất bằng cách hạn chế điều chỉnh nhiệt. Một bộ tản nhiệt thực hiện thủ thuật ở mức tải nhỏ nhưng bạn sẽ muốn có một quạt thích hợp để biên dịch và các tải trọng CPU khác.
Tại sao không cài đặt OpenCV bằng apt hoặc pip? Bởi vì việc biên dịch nó trong máy đích làm cho mọi lệnh của bộ xử lý có sẵn trong trình biên dịch, cải thiện hiệu suất thực thi.
SNPE - Công cụ xử lý thần kinh Snapdragon ™
Chúng tôi đã cài đặt Snappy giống như trên máy tính để bàn, mặc dù không có khung mạng nơron thực nào được cài đặt (SNPE chỉ cần git repos, không phải nhị phân thực tế).
Tuy nhiên, vì tất cả những gì chúng ta cần là mã nhị phân và tiêu đề cho lệnh snpe-net-run, nên có khả năng chỉ có các tệp sau trên một thư mục và thêm thư mục này vào PATH sẽ hoạt động:
Mạng nơ-ron binarysnpe / bin / aarch64-linux-gcc4.9 / snpe-net-run
Thư viện 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
Thư viện DSP
snpe / lib / dsp / libsnpe_dsp_skel.so
snpe / lib / aarch64-linux-gcc4.9 / libsnpe_adsp.so
Trình xem kết quả
snpe / models / alexnet / scripts / show_alexnet_classification.py
Mục in đậm, /usr/lib/aarch64-linux-gnu/libatomic.so.1, được cung cấp cùng với Linaro trên đường dẫn này và phải được sao chép vào thư mục tối thiểu giả định này.
Các gói hấp dẫn khác:
sudo apt-get install net-toolssudo apt-get install gedit
sudo apt cài đặt nodejs
sudo apt cài đặt openvpn
Bước 7: Trình diễn
Xem một minh chứng ngắn gọn về Tầm nhìn IoT thông minh cho Thành phố thông minh đang hoạt động !!
www.youtube.com/watch?v=qlk0APDGqcE&feature=youtu.be
Bước 8: Cảm ơn bạn
Chúng tôi cảm ơn nhóm Qualcomm và Embarcados đã tạo và hỗ trợ cuộc thi.
Vui lòng liên hệ với chúng tôi trên:
Người giới thiệu
Hướng dẫn cài đặt Dragonboard 410c cho Linux và 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 / install.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#…
Đề xuất:
Đèn LED để bàn thông minh - Chiếu sáng thông minh W / Arduino - Neopixels Workspace: 10 bước (có hình ảnh)
Đèn LED để bàn thông minh | Chiếu sáng thông minh W / Arduino | Neopixels Workspace: Ngày nay chúng ta dành nhiều thời gian ở nhà, học tập và làm việc ảo, vậy tại sao không biến không gian làm việc của chúng ta trở nên tuyệt vời hơn với hệ thống chiếu sáng tùy chỉnh và thông minh dựa trên Arduino và Ws2812b LED. Sau đây tôi chỉ cho bạn cách xây dựng Smart của bạn Đèn LED để bàn
Cảm biến tầm nhìn Micro: bit MU - Cài đặt trên xe thông minh: 5 bước
Micro: bit MU Vision Sensor - Installed on Smart Car: Đây là hướng dẫn cách cài đặt cảm biến tầm nhìn MU trên Smart Car mà chúng tôi xây dựng trong phần hướng dẫn này. Trong khi hướng dẫn này chỉ cho bạn cách cài đặt cảm biến tầm nhìn MU, bạn cũng có thể làm theo nó để cài đặt tất cả các loại cảm biến khác. Tôi đã có một máy ảnh 2 trục moun
Làm vườn thông minh dựa trên IoT và nông nghiệp thông minh sử dụng ESP32: 7 bước
Làm vườn thông minh dựa trên IoT và nông nghiệp thông minh sử dụng ESP32: Thế giới đang thay đổi theo thời gian và vì vậy nền nông nghiệp Ngày nay, Con người đang tích hợp điện tử trong mọi lĩnh vực và nông nghiệp không phải là ngoại lệ cho điều này. Việc hợp nhất thiết bị điện tử trong nông nghiệp này đang giúp ích cho nông dân và những người quản lý vườn
Giải quyết với Tấm chắn mắt (để thích ứng với tầm nhìn khi thức dậy): 35 bước
Đối phó với Tấm chắn mắt (để Thích ứng với Tầm nhìn khi Thức dậy): Vấn đề chính: Khi chúng ta thức dậy sau giấc ngủ và bạn của chúng ta bật đèn phòng, hầu hết chúng ta ngay lập tức bị mù bởi ánh đèn vì mắt của chúng ta cần thời gian để điều chỉnh từ môi trường tối thành môi trường sáng. Chúng ta sẽ làm gì nếu chúng ta muốn giải quyết
Quay số thông minh - Điện thoại truyền thống thông minh tự động sửa lỗi: 8 bước
Smart Dial - Điện thoại truyền thống thông minh tự động sửa lỗi: Smart Dial là điện thoại tự động sửa lỗi thông minh được tạo ra cho người cao tuổi có nhu cầu đặc biệt và nó cho phép người cao tuổi quay số trực tiếp từ điện thoại truyền thống mà họ quen dùng. Chỉ nhờ hoạt động tình nguyện tại một trung tâm chăm sóc người cao niên địa phương mà tôi