INHOUDSOPGAWE:

Opsporing van noodsituasies - Qualcomm Dragonboard 410c: 7 stappe
Opsporing van noodsituasies - Qualcomm Dragonboard 410c: 7 stappe

Video: Opsporing van noodsituasies - Qualcomm Dragonboard 410c: 7 stappe

Video: Opsporing van noodsituasies - Qualcomm Dragonboard 410c: 7 stappe
Video: Politie | Nationale Opsporingslijst | Gezocht: voortvluchtige Ahmed Ezzat 2024, Julie
Anonim
Die opsporing van noodsituasies - Qualcomm Dragonboard 410c
Die opsporing van noodsituasies - Qualcomm Dragonboard 410c
Die opsporing van noodsituasies - Qualcomm Dragonboard 410c
Die opsporing van noodsituasies - Qualcomm Dragonboard 410c
Die opsporing van noodsituasies - Qualcomm Dragonboard 410c
Die opsporing van noodsituasies - Qualcomm Dragonboard 410c

As u op soek is na sekuriteitstelsels wat noodsituasies monitor, kan u agterkom dat dit te moeilik is om alle aangetekende inligting te verwerk. As ons daaroor nadink, besluit ons om ons kennis in klank-/beeldverwerking, sensors en aktuators te gebruik om een volledige stelsel te skep wat situasies waarin mense se lewens in gevaar is, kan voorspel.

Hierdie projek het plaaslike sensor en afgeleë toestelle om data te versamel en na die draakbord te stuur, met 'n verwerkingsvermoë om belangrike inligting uit die ontvangde data te onttrek.

Die afstandsbedieningsapparaat is 'n Arduino-bord met 'n module HC-06 wat moontlik is om al die inligting oor te dra, en 'n goedkoop netwerk wat 'n groot hoeveelheid data kan verwerk.

Stap 1: Vereiste komponente

Eerstens moet u besluit watter sensors en aksies u gaan gebruik, en die argitektuurskets maak.

In ons geval gebruik ons hierdie sensors wat in die ARDUINO Pro Mini saamgevoeg is:

  • PIR (passiewe infrarooi-teenwoordigheidssensor)
  • DHT 11 (humiditeits- en temperatuursensor)
  • CO-sensor (koolstofmonoksied sensor)
  • Ruis sensor

Aandrywers:

  • motorservo
  • zoemer

Kommunikasie:

Bluetooth-module HC-06

Vir die Dragonboard 410c sal ons 'n paar sensors en sagteware hê om al die data -insette te verwerk:

Sensors:

  • DHT 11
  • Sonligsensor

Aandrywers:

  • Relay
  • Led-status
  • Gonser

Stap 2: Maak 'n afstandtoestel

Maak 'n afstandtoestel
Maak 'n afstandtoestel

Dit is nou tyd om al die volgende komponente aan te sluit op die Arduino Board, om 'n toestel te skep wat die data van die atmosfeer (geraas, humiditeit, temperatuur, ens) sal ontvang en met die Bluetooth-module HC-06 na die Dragonboard stuur.

U moet aandag gee aan die verbindings, want al die sensor het spesifieke plekke om te verbind.

Op die stelsel is dit moontlik om meer as een toestel te hê om data te versamel. Hoe meer toestelle u in die omgewing geïnstalleer het, hoe akkurater is die diagnose wat deur dataverwerking gegenereer word. Aangesien dit moontlik sal wees om 'n groter verskeidenheid inligting wat nuttig kan wees, te onttrek.

Ons het besluit om 'n arduino -bord te gebruik omdat dit meer versoenbare sensors het, en dit is moontlik om hierdie afgeleë toestelle op verskillende plekke te installeer en meer inligting te versamel.

Die plaaslike toestel is die DragonBoard 410c, wat klank-, video-, digitale en analoog -inligting verwerk met u kragtige SnapDragon 410 -verwerker.

Plaas van die komponente (Remote Devide)

Die stuk het 'n paar penne wat in die regte penne op die arduino pro mini -bord gekoppel moet word.

Bluetooth-module HC-06 het 4 penne:

  • TX (sender) -> gekoppel aan die pen van die RX Arduino
  • RX (ontvanger) -> gekoppel aan die pen van die TX Arduino
  • VCC -> gekoppel op die 5v
  • GND

DHT 11 -sensor het 4 penne (maar slegs 3 in gebruik):

  • Sein -> verbind op 'n digitale pen
  • VCC -> gekoppel op die 5v
  • GND

PIR -sensor het 3 penne:

  • Sein -> gekoppel aan 'n digitale pen
  • VCC -> gekoppel op die 5v
  • GND

Gassensor (MQ) het 4 penne:

  • Digital OUT -> verbind op 'n digitale pen (as u digitale inligting wil hê)
  • Analoog UIT -> in ons geval gebruik ons dit wat gekoppel is aan 'n analoog pen
  • VCC -> gekoppel op die 5v
  • GND

Ruis sensor (KY-038) het 3 penne:

  • Sein -> gekoppel aan 'n analoog pen
  • VCC -> gekoppel op die 5v
  • GND

Kode vir Arduino -afstandtoestel:

/ * * Arduino stuur data deur Blutooth * * Die waarde van sensors word gelees, saamgevoeg op * String en gestuur via seriële poort. */ #sluit "DHT.h" #define DHTPIN 3 #define DHTTYPE DHT22 #define PIRPIN 9 #define COPIN A6 DHT dht (DHTPIN, DHTTYPE); dryf humiditeit, temperatuur; boolean pir = 0; int co, mic; String msg = ""; char nooi [40]; ongeldige opstelling () {Serial.begin (9600); dht.begin (); } leemte -lus () {humidaty = dht.readHumidity (); temperatuur = dht.readTemperature (); pir = digitalRead (PIRPIN); co = analogRead (COPIN); mikrofoon = analogRead (A0); msg = "#;" + String (humidaty) + ";" + String (temperatuur)+ ";"+ String (mikrofoon)+ ";"+ String (pir)+ ";" + String (co) + ";#" + "\ n"; Serial.print (boodskap); vertraging (2000); }

Kode verduideliking:

Alle penne wat in die Arduino gebruik word, word aan die begin van die kode aangehaal en die onderskeie biblioteke wat benodig word vir die werking van die sensors, word geïnisialiseer. Alle data word aan die onderskeie veranderlikes oorgedra, wat elke 2000 millisekondes die waardes van elke sensor ontvang, en dan word hulle almal in 'n string saamgevoeg, en dan word dit in serie geskryf. Van daar af is dit baie maklik met die pyton -kode wat in die DragonBoard voorkom, om sulke data op te neem.

Stap 3: sagteware en biblioteke

Gebruik alle sagteware en biblioteke in die Qualcomm DragonBoard 410c om al die ontvangde data te verwerk en die veiligheidstelsel te beheer.

In hierdie spesifieke projek gebruik ons:

Sagteware:

  • Python
  • Arduino

Platvorms:

  • Amazon AWS -> aanlyn bediener
  • Phant -> Gasheerdatadiens

Biblioteke:

  • OpenCV-Videoverwerking (https://opencv-python-tutroals.readthedocs.io/en/latest/)
  • PyAudio - klankverwerking (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)
  • Knorrig (https://www.numpy.org)
  • SciKit1 - Leer en voorspel masjienleer (https://scikit-learn.org/stable/install.html)
  • cPickle - Stoor die parameters vir masjienleer (https://pymotw.com/2/pickle/)
  • MRAA - Gebruik die GPIO's (https://iotdk.intel.com/docs/master/mraa/python/)
  • UPM-Gebruik die GPIO's (https://github.com/intel-iot-devkit/upm)
  • PySerial - Gebruik vir seriële kommunikasie met 'n Bluetooth -toestel (https://pythonhosted.org/pyserial/)

Stap 4: Gebruik SSH en installeer Libs

Eerstens moet u die IP -adres van die Dragonboard kry, om dit te kan doen, moet u die DragonBoard aanskakel met 'n muis, 'n sleutelbord en 'n HDMI -monitor. As die bord aangeskakel is, moet u aan 'n netwerk koppel, dan gaan u na die terminale en voer die opdrag uit:

sudo ifconfig

daarna kan u die IP -adres kry.

Met die IP -adres het u toegang tot die Dragonboard via SHH, om dit te kan doen, moet u 'n terminale oopmaak in 'n rekenaar wat in dieselfde netwerk as die kaart gekoppel is. In die terminale kan u die opdrag uitvoer:

ssh linaro@{IP}

(u moet {IP} vervang met die IP -adres wat u in die Dragonboard kry).

Die eerste lib wat u moet installeer, is die mraa lib. Om dit te kan doen, moet u die volgende opdrag in die terminale uitvoer:

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

Om opencv vir python te installeer, hoef u slegs die opdrag uit te voer:

sudo apt-get install python-opencv

Om PyAudio te installeer, moet u die opdrag uitvoer:

sudo apt-get install python-pyaudio python3-pyaudio

Die libs WAVE en AudioOp is reeds op die bord geïnstalleer. Om numpy te installeer, moet u die opdrag uitvoer:

sudo apt-get install python-numpy python-scipy

Die laaste lib wat u moet installeer, is die scikit, om dit te installeer, moet u pip laat installeer. Dan hoef u slegs die opdrag uit te voer:

pip installeer scikit-lear

Stap 5: Bluetooth -protokol

Bluetooth -protokol
Bluetooth -protokol
Bluetooth -protokol
Bluetooth -protokol
Bluetooth -protokol
Bluetooth -protokol

DragonBoard -verbinding met die Arduino via Bluetooth

Die Bluetooth-module (HC-06) is aanvanklik aan die Arduino Nano gekoppel volgens die volgende voorbeeld:

Gebruik die grafiese koppelvlak van die Linaro (bedryfstelsel wat gebruik word in die huidige projek in DragonBoard), klik aan die regterkant van die onderste balk op die Bluetooth -simbool en klik dan op "Stel 'n nuwe toestel op" en stel dit in met die Bluetooth -module wat dit gekoppel laat. Verifieer dat u module werklik gekoppel is deur weer op die Bluetooth -simbool te klik, klik op "toestelle …" en kyk of die naam van u toestel gelys en gekoppel is. Kies nou u toestel in die skerm "Bluetooth -toestelle" en klik met die rechtermuisknop daarop en let op die poort waarmee u Bluetooth -module gekoppel is (byvoorbeeld: "rfcomm0"). Let wel: die poortnaam waarmee u toestel gekoppel is, is belangrik vir die volgende stap om data -uitruil moontlik te maak.

Die vestiging van DragonBoard Data Exchange en Bluetooth

Ons volg basies die stap vir stap van die skakel: https://www.uugear.com/portfolio/bluetooth-communi…, maar ons het nie die deel van die koppeling uitgevoer nie, slegs die uitvoering van die python-kodes en Arduino. In python is die seriële biblioteek gebruik wat geïnitialiseer is in die poort wat met bluetooth verbind is, daarom lees die luislangkode die data van die sensors wat via die bluetooth -module aan die arduino gekoppel is.

Stap 6: Gebruik Mezzanine op DragonBoard 410c

Gebruik Mezzanine op DragonBoard 410c
Gebruik Mezzanine op DragonBoard 410c

Om die verbindings tussen die draakbord en die komponente te maak, gebruik ons 'n tipe skild genaamd Mezannine, ontwikkel deur 96 borde.

As u hierdie skild gebruik, word randapparatuur aansluit baie makliker.

Die verbindings wat gebruik word, kom uit die ontwikkelingsstel van die bos, sodat u slegs 'n spesiale kabel gebruik wat beide kante verbind, Al die onderdele kan maklik op hierdie webwerf gevind word:

Ons gebruik hierdie kits hieronder:

  • Grove Relay
  • Grove sonlig sensor
  • Grove led -aansluiting
  • Grove temp en humi sensor
  • Grove Buzzer

Stap 7: DragonBoard 410c sagteware

Die deel van die program in die DragonBoard is in Python gekodeer en die program wat op die Arduino gebruik is, is ontwikkel in C ++. Elke 2 minute lees die Arduino al die sensor wat daaraan gekoppel is. Stuur die lesing dan via Bluetooth na die DragonBoard. Die DragonBoard kombineer die voorlesing van die Arduino met die voorlesing wat dit deur die mezzanine -skild maak, met die funksies van die klank- en video -monsters.

Met hierdie data probeer die raad voorspel of dit 'n noodsituasie is. Die raad stuur die rou data na die Amazon Web Service met behulp van die Phant en die voorspelling wat dit gemaak het. As die bord voorspel dat dit in 'n vreemde situasie voorkom, probeer dit om die gebruiker te waarsku dat 'n LED en gonser in die mezzanine knipper en dit op die webtoepassing wys. In die webtoepassing is dit ook moontlik om die rou data te sien om te verstaan wat op hierdie gebied gebeur.

Aanbeveel: