Talaan ng mga Nilalaman:

Pagtuklas ng Mga Sitwasyon ng Mga Sumibol - Qualcomm Dragonboard 410c: 7 Mga Hakbang
Pagtuklas ng Mga Sitwasyon ng Mga Sumibol - Qualcomm Dragonboard 410c: 7 Mga Hakbang

Video: Pagtuklas ng Mga Sitwasyon ng Mga Sumibol - Qualcomm Dragonboard 410c: 7 Mga Hakbang

Video: Pagtuklas ng Mga Sitwasyon ng Mga Sumibol - Qualcomm Dragonboard 410c: 7 Mga Hakbang
Video: Why YOU SHOULD BUY the Samsung Galaxy Tab S7 FE! 2024, Nobyembre
Anonim
Pagtuklas ng Mga Sitwasyon ng Mga Sumasabog - Qualcomm Dragonboard 410c
Pagtuklas ng Mga Sitwasyon ng Mga Sumasabog - Qualcomm Dragonboard 410c
Pagtuklas ng Mga Sitwasyon ng Mga Sumasabog - Qualcomm Dragonboard 410c
Pagtuklas ng Mga Sitwasyon ng Mga Sumasabog - Qualcomm Dragonboard 410c
Pagtuklas ng Mga Sitwasyon ng Mga Sumasabog - Qualcomm Dragonboard 410c
Pagtuklas ng Mga Sitwasyon ng Mga Sumasabog - Qualcomm Dragonboard 410c

Naghahanap ng mga sistemang panseguridad na gumagana sa pagsubaybay ng mga sitwasyon ng mga emergency, posibleng mapansin na napakahirap iproseso ang lahat ng naitala na impormasyon. Sa pag-iisip tungkol doon, nagpasya kaming gamitin ang aming kaalaman sa pagproseso ng audio / imahe, mga sensor at actuator upang lumikha ng isang kumpletong sistema na posible upang mahulaan ang mga sitwasyon kung saan nasa panganib ang buhay ng mga tao.

Ang proyektong ito ay nag-hiver ng lokal na sensor at mga remote na aparato upang mangolekta ng data at ipadala sa dragonboard, na may kapangyarihan sa pagpoproseso na may kakayahang kumuha ng mahalagang impormasyon mula sa natanggap na data.

Ang remote na aparato ay isang Arduino board na may isang module na HC-06 na posible upang mapalayo ang lahat ng mga impormasyon, at isang mababang gastos na malawak na net na may kakayahang maproseso ang napakaraming data.

Hakbang 1: Kinakailangan na Mga Sangkap

Una sa lahat, kailangan mong magpasya kung aling mga sensor at actuatos ang gagamitin mo, at gawin ang arkitektura na sketch.

Sa aming kaso, ginagamit namin ang mga sensor na ito na isinama sa ARDUINO Pro Mini, nakalista sa ibaba:

  • PIR (Passive Infrared - Presence sensor)
  • DHT 11 (Humidity at temperatura sensor)
  • CO Sensor (Carbon Monoxide Sensor)
  • Ingay sensor

Mga Actuator:

  • motor servo
  • buzzer

Komunikasyon:

Bluetooth Module HC-06

Sa Dragonboard 410c, magkakaroon kami ng ilang mga sensor at softwares upang maproseso ang lahat ng mga input ng data:

Mga Sensor:

  • DHT 11
  • Sunlight Sensor

Mga Actuator:

  • Relay
  • Humantong sa katayuan
  • Buzzer

Hakbang 2: Paggawa ng Remote na Device

Gumagawa ng Remote na Device
Gumagawa ng Remote na Device

Panahon na upang ikonekta ang lahat ng mga sumusunod na sangkap sa Arduino Board, na lumilikha ng isang aparato na makakatanggap ng data mula sa kapaligiran (ingay, halumigmig, temperatura, atbp), at ipadala sa Dragonboard ng bluetooth module na HC-06.

Kinakailangan na magbayad ng pansin sa mga koneksyon, dahil ang lahat ng sensor ay may mga specifc na lugar upang kumonekta.

Sa system, posible na magkaroon ng higit sa isang aparato upang mangolekta ng data. Ang mas maraming mga aparato na na-install mo sa kapaligiran, mas tumpak ang mga diagnostic na nabuo sa pamamagitan ng pagpoproseso ng data. Dahil posible na kumuha ng isang mas malawak na saklaw ng impormasyon na maaaring maging kapaki-pakinabang.

Napagpasyahan naming gumamit ng isang arduino board sapagkat mayroong higit na mga katugmang sensor, at posible na mai-install ang mga malalayong aparato na ito sa mga diferent na lugar, nangongolekta ng maraming impormasyon.

Ang lokal na aparato ay ang DragonBoard 410c, na nagpoproseso ng mga audio, video, digital at analog na impormasyon sa iyong malakas na SnapDragon 410 na processor.

Ang paglalagay ng mga bahagi (Remote Devide)

Alin ang isang piraso ay may ilang mga pin na dapat na ikonekta sa tamang mga pin sa arduino pro mini board.

Ang module ng Bluetooth HC-06 ay mayroong 4 na mga pin:

  • TX (Transmissor) -> konektado sa pin ng RX Arduino
  • RX (Receiver) -> konektado sa pin ng TX Arduino
  • VCC -> konektado sa 5v
  • GND

Ang DHT 11 Sensor ay may 4 na mga pin (ngunit 3 lamang ang ginagamit):

  • Signal -> conected sa isang digital pin
  • VCC -> konektado sa 5v
  • GND

Ang PIR Sensor ay may 3 mga pin:

  • Signal -> konektado sa isang digital pin
  • VCC -> konektado sa 5v
  • GND

Ang gas sensor (MQ) ay may 4 na mga pin:

  • Digital OUT -> conected sa isang digital pin (kung nais mo ng isang digital na impormasyon)
  • Analog OUT -> sa aming kaso, ginagamit namin ito na nakakonekta sa isang analog pin
  • VCC -> konektado sa 5v
  • GND

Ang sensor ng ingay (KY-038) ay may 3 mga pin:

  • Signal -> konektado sa isang analog pin
  • VCC -> konektado sa 5v
  • GND

Code para sa Arduino remote na Device:

/ * * Arduino magpadala ng data sa pamamagitan ng Blutooth * * Ang halaga ng mga sensor ay nababasa, na concatened sa * String at ipadala sa pamamagitan ng serial port. * / # isama ang "DHT.h" # tukuyin ang DHTPIN 3 # tukuyin ang DHTTYPE DHT22 # tukuyin ang PIRPIN 9 #define COPIN A6 DHT dht (DHTPIN, DHTTYPE); lumutang mamasa-masa, temperatura; boolean pir = 0; int co, mic; String msg = ""; char nome [40]; void setup () {Serial.begin (9600); dht.begin (); } void loop () {humidaty = dht.readHumidity (); temperatura = dht.readTemperature (); pir = digitalRead (PIRPIN); co = analogRead (COPIN); mic = analogRead (A0); msg = "#;" + String (mahalumigmig) + ";" + String (temperatura) + ";" + String (mic) + ";" + String (pir) + ";" + String (co) + "; #" + "\ n"; Serial.print (msg); pagkaantala (2000); }

Paliwanag sa code:

Ang lahat ng mga pin na ginamit sa Arduino ay naka-quote sa simula ng code at ang mga kaukulang aklatan na kinakailangan para sa pagpapatakbo ng mga sensor ay naisasimulan. Ang lahat ng data ay ipapasa sa kani-kanilang mga variable na makakatanggap ng mga halagang binasa mula sa bawat sensor tuwing 2000 milliseconds, pagkatapos ang lahat sa kanila ay Concatenated sa isang String, pagkatapos ay nakasulat ito sa Serial. Mula doon napakadali ng pyton code na naroroon sa DragonBoard upang makuha ang naturang data.

Hakbang 3: Mga Softwares at Library

Upang maproseso ang lahat ng natanggap na data at makontrol ang system ng seguridad, kinakailangang gumamit ng ilang mga software at aklatan sa Qualcomm DragonBoard 410c.

Sa partikular na proyekto na ito na ginagamit namin:

Mga Software:

  • Sawa
  • Arduino

Mga Plataform:

  • Amazon AWS -> online server
  • Phant -> Host data service

Mga Aklatan:

  • OpenCV - Pagproseso ng Video (https://opencv-python-tutroals.readthedocs.io/en/latest/)
  • PyAudio - Pagproseso ng Audio (https://people.csail.mit.edu/hubert/pyaudio/)
  • Wave (https://www.physionet.org/physiotools/wave-installation.shtm)
  • AudioOp (https://docs.python.org9https://scikit-learn.org/stable/install.html/2/library/audioop.html)
  • Numpy (https://www.numpy.org)
  • SciKit1 - Sanayin at hulaan ang pag-aaral ng makina (https://scikit-learn.org/stable/install.html)
  • cPickle - I-save ang mga parameter ng pag-aaral ng makina (https://pymotw.com/2/pickle/)
  • MRAA - Gamitin ang mga GPIO (https://iotdk.intel.com/docs/master/mraa/python/)
  • UPM - Gamitin ang mga GPIO (https://github.com/intel-iot-devkit/upm)
  • PySerial - Ginamit sa serial comunication sa Bluetooth device (https://pythonhosted.org/pyserial/)

Hakbang 4: Paggamit ng SSH at Pag-install ng Libs

Una sa lahat kailangan mong makuha ang IP address mula sa Dragonboard, upang magawa iyon, kailangan mong i-on ang DragonBoard na konektado sa isang mouse, isang keyboard at isang monitor ng HDMI. Kapag naka-on ang board kailangan mong kumonekta sa isang network, kaysa pumunta ka sa terminal at patakbuhin ang utos:

sudo ifconfig

pagkatapos nito maaari kang makakuha ng IP address.

Gamit ang IP address maaari mong ma-access ang Dragonboard sa pamamagitan ng SHH, upang gawin iyon kailangan mong buksan ang isang terminal sa isang computer na konektado sa parehong network bilang board. Sa terminal maaari mong patakbuhin ang utos:

ssh linaro @ {IP}

(dapat mong palitan ang {IP} ng IP address na nakukuha mo sa Dragonboard).

Ang unang lib na kailangan mong i-install ay ang mraa lib. Upang magawa iyon kailangan mong patakbuhin ang sumusunod na utos sa terminal:

sudo add-apt-repository ppa: mraa / mraa && sudo apt-ge; t update && sudo apt-get install libmraa1 libmraa-dev mraa-tool python-mraa python3-mraa

Upang mai-install ang opencv para sa sawa kailangan mo lamang patakbuhin ang utos:

sudo apt-get install python-opencv

Upang mai-install ang PyAudio kailangan mong patakbuhin ang utos:

sudo apt-get install python-pyaudio python3-pyaudio

Ang libs WAVE at AudioOp ay naka-install na sa board. Upang mai-install ang numpy kailangan mong patakbuhin ang utos:

sudo apt-get install python-numpy python-scipy

Ang huling lib na kailangan mong i-install ay ang scikit, upang mai-install ito kailangan mong magkaroon ng naka-install na pip. Kaysa sa kailangan mo lamang patakbuhin ang utos:

pip install scikit-lear

Hakbang 5: Bluetooth Protocol

Protocol ng Bluetooth
Protocol ng Bluetooth
Protocol ng Bluetooth
Protocol ng Bluetooth
Protocol ng Bluetooth
Protocol ng Bluetooth

Ang koneksyon ng DragonBoard sa Arduino sa pamamagitan ng Bluetooth

Ang module ng Bluetooth (HC-06) ay paunang konektado sa Arduino Nano ayon sa sumusunod na halimbawa:

Gamit ang Linaro (Operating System na Ginamit sa kasalukuyang proyekto sa DragonBoard) na graphic interface, sa kanang bahagi ng ibabang bar mag-click sa simbolo ng Bluetooth at pagkatapos ay mag-click sa "I-setup ang Bagong Device" at i-configure sa iyong module ng Bluetooth na iniiwan itong ipinares. I-verify na ang iyong module ay talagang konektado sa pamamagitan ng pag-click muli sa simbolo ng Bluetooth, mag-click sa "Mga Device …" at tingnan kung nakalista at nakakonekta ang pangalan ng iyong aparato. Piliin ngayon ang iyong aparato sa screen na "Mga Bluetooth Device" at mag-right click dito at tandaan ang port na nakakonekta ang iyong module ng Bluetooth (hal.: "Rfcomm0"). Tandaan: Ang pangalan ng port kung saan nakakonekta ang iyong aparato ay magiging mahalaga para sa susunod na hakbang upang paganahin ang palitan ng data.

Ang pagtataguyod ng DragonBoard Data Exchange at Bluetooth

Karaniwan sinusunod namin ang sunud-sunod na link: https://www.uugear.com/portfolio/blu Bluetooth-communi… ngunit hindi namin ginawa ang bahagi ng pagpapares lamang ng pagpapatupad ng mga python code at Arduino. Sa python ay ginamit ang serial library na isinisimulan sa port na konektado sa bluetooth, samakatuwid binasa ng code ng python ang data ng mga sensor na nakakonekta sa arduino sa pamamagitan ng module ng Bluetooth.

Hakbang 6: Paggamit ng Mezzanine sa DragonBoard 410c

Gamit ang Mezzanine sa DragonBoard 410c
Gamit ang Mezzanine sa DragonBoard 410c

Upang maitaguyod ang mga koneksyon sa dragonboard at sa mga sangkap, gumagamit kami ng isang uri ng kalasag na tinawag ni Mezannine, na binuo ng 96board.

Gamit ang kalasag na ito, nagiging madali ang pagkonekta ng mga peripheral.

Gumagamit ang mga konektor ay mula sa kit ng pag-unlad ng grove, kaya gumagamit lamang ito ng isang especif cable na kumokonekta sa parehong paraan, Ang lahat ng mga bahagi ay maaaring madaling matagpuan sa website na ito:

Ginagamit namin ang kit na ito sa ibaba:

  • Grove Relay
  • Grove sensor ng Sunlight
  • Grove led socket
  • Grove temp at humi sensor
  • Grove Buzzer

Hakbang 7: DragonBoard 410c Software

Ang bahagi ng programa sa DragonBoard ay naka-code sa Python at ang program na ginamit sa Arduino ay binuo sa C ++. Tuwing 2 minuto binabasa ng Arduino ang lahat ng sensor na nakakabit dito. Kaysa sa Arduino ipadala ang pagbabasa sa DragonBoard sa pamamagitan ng Bluetooth. Pinagsasama ng DragonBoard ang pagbabasa na nagmula sa Arduino sa pagbabasa na ginagawa nito ng Mezzanine na kalasag na may mga tampok mula sa audio at mga sample ng video.

Sa data na ito, sinusubukan ng Lupon na hulaan kung nagaganap ito isang sitwasyong pang-emergency. Ipinadala ng Lupon sa Serbisyo sa Web ng Amazon gamit ang Phant ang hilaw na data at ang hula na ginawa nito. Kung hinulaan ng board na nangyayari ito ng isang kakaibang sitwasyon sinubukan nitong bigyan ng babala ang gumagamit na kumikislap ng isang led at buzzer sa Mezzanine at ipakita sa web application. Sa web application posible ring makita ang hilaw na data upang maunawaan kung ano ang nangyayari sa lugar na ito.

Inirerekumendang: