Агуулгын хүснэгт:

Шинээр үүссэн нөхцөл байдлыг илрүүлэх - Qualcomm Dragonboard 410c: 7 алхам
Шинээр үүссэн нөхцөл байдлыг илрүүлэх - Qualcomm Dragonboard 410c: 7 алхам

Видео: Шинээр үүссэн нөхцөл байдлыг илрүүлэх - Qualcomm Dragonboard 410c: 7 алхам

Видео: Шинээр үүссэн нөхцөл байдлыг илрүүлэх - Qualcomm Dragonboard 410c: 7 алхам
Видео: Д.Тогтохсүрэн: Хөгжлийн банкинд шинээр үүссэн нөхцөл байдлыг шүүх хэрхэн дүгнэв? 2024, Долдугаар сарын
Anonim
Шинээр үүссэн нөхцөл байдлыг илрүүлэх - Qualcomm Dragonboard 410c
Шинээр үүссэн нөхцөл байдлыг илрүүлэх - Qualcomm Dragonboard 410c
Шинээр үүссэн нөхцөл байдлыг илрүүлэх - Qualcomm Dragonboard 410c
Шинээр үүссэн нөхцөл байдлыг илрүүлэх - Qualcomm Dragonboard 410c
Шинээр үүссэн нөхцөл байдлыг илрүүлэх - Qualcomm Dragonboard 410c
Шинээр үүссэн нөхцөл байдлыг илрүүлэх - Qualcomm Dragonboard 410c

Нөхцөл байдлын нөхцөл байдлыг хянах чиглэлээр ажилладаг аюулгүй байдлын систем хайж байгаа бол бүртгэгдсэн бүх мэдээллийг боловсруулахад хэтэрхий хэцүү байгааг анзаарч болно. Үүнийг бодоод бид өөрсдийн мэдлэгээ ашиглан аудио/дүрс боловсруулалт, мэдрэгч, идэвхжүүлэгчийн тусламжтайгаар хүмүүсийн амь насанд аюултай нөхцөл байдлыг урьдчилан таамаглах боломжтой иж бүрэн системийг бий болгохоор шийдсэн юм.

Энэхүү төсөл нь орон нутгийн мэдрэгч болон алсын төхөөрөмжүүдийг ашиглан өгөгдөл цуглуулж, хүлээн авсан өгөгдлөөс чухал мэдээлэл олж авах чадвартай боловсруулах самбартай луу руу илгээдэг.

Алсын төхөөрөмж нь бүх мэдээллийг дамжуулах боломжтой HC-06 модуль бүхий Arduino самбар бөгөөд их хэмжээний өгөгдлийг боловсруулах чадвартай хямд өртөгтэй сүлжээ юм.

Алхам 1: Шаардлагатай бүрэлдэхүүн хэсгүүд

Юуны өмнө та ямар мэдрэгч, актуат ашиглахаа шийдэж, архитектурын ноорог хийх ёстой.

Манай тохиолдолд бид ARDUINO Pro Mini -д холбогдсон эдгээр мэдрэгчийг доор жагсаасан болно.

  • PIR (идэвхгүй хэт улаан туяа-оршихуй мэдрэгч)
  • DHT 11 (Чийгшил ба температур мэдрэгч)
  • CO мэдрэгч (нүүрстөрөгчийн дутуу ислийн мэдрэгч)
  • Дуу чимээ мэдрэгч

Хөдөлгүүрүүд:

  • моторын servo
  • дуугаралт

Харилцаа холбоо:

Bluetooth модуль HC-06

Dragonboard 410c -ийн хувьд бид бүх өгөгдлийн оролтыг боловсруулах зарим мэдрэгч, програм хангамжтай болно.

Мэдрэгч:

  • DHT 11
  • Нарны гэрлийн мэдрэгч

Хөдөлгүүрүүд:

  • Реле
  • Лед статус
  • Buzzer

Алхам 2: Алсын төхөөрөмж хийх

Алсын төхөөрөмж хийх
Алсын төхөөрөмж хийх

Дараахь бүх бүрэлдэхүүн хэсгүүдийг Arduino Board-т холбож, хүрээлэн буй орчноос (дуу чимээ, чийгшил, температур гэх мэт) өгөгдлийг хүлээн авах төхөөрөмж бий болгож, HC-06 bluetooth модулоор Dragonboard руу илгээх цаг болжээ.

Бүх мэдрэгч нь холбох цэгүүдтэй байдаг тул холболтод анхаарлаа хандуулах хэрэгтэй.

Систем дээр өгөгдөл цуглуулах хэд хэдэн төхөөрөмж байх боломжтой. Та хүрээлэн буй орчинд илүү олон төхөөрөмж суурилуулах тусам өгөгдөл боловсруулснаар оношлогоо илүү нарийвчлалтай хийгддэг. Ашигтай байж магадгүй илүү өргөн хүрээний мэдээллийг гаргаж авах боломжтой болно.

Илүү нийцтэй мэдрэгчтэй тул бид алсын төхөөрөмжийг өөр газар суулгаж, илүү их мэдээлэл цуглуулах боломжтой тул arduino самбар ашиглахаар шийдсэн.

Орон нутгийн төхөөрөмж бол таны хүчирхэг SnapDragon 410 процессороор аудио, видео, дижитал болон аналог мэдээллийг боловсруулдаг DragonBoard 410c юм.

Бүрэлдэхүүн хэсгүүдийг байрлуулах (Remote Devide)

Аль хэсэг нь arduino pro мини самбар дээрх зөв голтой холбогдсон байх ёстой.

Bluetooth модуль HC-06 нь 4 голтой:

  • TX (дамжуулагч) -> RX Arduino -ийн зүү дээр холбогдсон
  • RX (Хүлээн авагч) -> TX Arduino -ийн зүү дээр холбогдсон
  • VCC -> 5v дээр холбогдсон
  • GND

DHT 11 мэдрэгч нь 4 тээглүүртэй (гэхдээ зөвхөн 3 ашиглагддаг):

  • Дохио -> дижитал зүү дээр холбосон
  • VCC -> 5v дээр холбогдсон
  • GND

PIR мэдрэгч нь 3 голтой:

  • Дохио -> дижитал зүү дээр холбогдсон
  • VCC -> 5v дээр холбогдсон
  • GND

Хийн мэдрэгч (MQ) нь 4 тээглүүртэй:

  • Digital OUT -> дижитал зүү дээр холбосон (хэрэв та дижитал мэдээлэл авахыг хүсвэл)
  • Аналог OUT -> бидний хувьд бид үүнийг аналог зүү дээр холбосон байдлаар ашигладаг
  • VCC -> 5v дээр холбогдсон
  • GND

Дуу чимээ мэдрэгч (KY-038) нь 3 голтой:

  • Дохио -> аналог пин дээр холбогдсон
  • VCC -> 5v дээр холбогдсон
  • GND

Arduino алсын төхөөрөмжийн код:

/ * * Arduino нь Blutooth -ээр өгөгдөл илгээх * * Мэдрэгчийн утгыг * String дээр холбож, цуваа портоор илгээдэг. */ #"DHT.h" оруулах #DHTPIN 3 тодорхойлох #DHTTYPE DHT22 тодорхойлох #PIRPIN 9 #тодорхойлох COPIN A6 DHT dht (DHTPIN, DHTTYPE); чийгшүүлэх, температур; логик пир = 0; int co, микрофон; String msg = ""; char nom [40]; void setup () {Serial.begin (9600); dht.begin (); } void loop () {humidaty = dht.readHumidity (); температур = dht.readTemperature (); pir = digitalRead (PIRPIN); co = analogRead (COPIN); mic = analogRead (A0); msg = "#;" + Мөр (чийгшүүлэх) + ";" + String (температур)+ ";"+ String (микрофон)+ ";"+ String (пир)+ ";" + String (co) + ";#" + "\ n"; Serial.print (msg); саатал (2000); }

Кодын тайлбар:

Arduino -д ашигладаг бүх зүүг кодын эхэнд иш татсан бөгөөд мэдрэгчийг ажиллуулахад шаардлагатай номын санг эхлүүлсэн болно. Бүх өгөгдлийг мэдрэгч тус бүрээс 2000 миллисекунд тутамд уншиж буй утгыг хүлээн авах харгалзах хувьсагчдад дамжуулж, бүгдийг нь String -д нэгтгэж, дараа нь цувралаар бичнэ. Тэндээс DragonBoard -д байгаа питон код нь ийм өгөгдлийг авахад маш хялбар байдаг.

Алхам 3: Програм хангамж ба номын сан

Хүлээн авсан бүх өгөгдлийг боловсруулж, аюулгүй байдлын системийг хянахын тулд Qualcomm DragonBoard 410c -ийн зарим програм хангамж, номын санг ашиглах шаардлагатай.

Энэхүү тусгай төсөлд бид дараахь зүйлийг ашиглаж байна.

Програм хангамж:

  • Python
  • Ардуино

Plataforms:

  • Amazon AWS -> онлайн сервер
  • Phant -> Хостын мэдээллийн үйлчилгээ

Номын сан:

  • OpenCV-Видео боловсруулалт (https://opencv-python-tutroals.readthedocs.io/en/latest/)
  • PyAudio - Аудио боловсруулалт (https://people.csail.mit.edu/hubert/pyaudio/)
  • Долгион (https://www.physionet.org/physiotools/wave-installation.shtm)
  • AudioOp (https://docs.python.org9https://scikit-learn.org/stable/install.html/2/library/audioop.html)
  • Нарийхан (https://www.numpy.org)
  • SciKit1 - Машины сургалтыг сургаж, урьдчилан таамаглах (https://scikit-learn.org/stable/install.html)
  • cPickle - Машины сургалтын параметрүүдийг хадгалах (https://pymotw.com/2/pickle/)
  • MRAA - GPIO ашиглах (https://iotdk.intel.com/docs/master/mraa/python/)
  • UPM-GPIOs ашиглана уу (https://github.com/intel-iot-devkit/upm)
  • PySerial - Bluetooth төхөөрөмжтэй цуваа холболт хийхэд ашиглана уу (https://pythonhosted.org/pyserial/)

Алхам 4: SSH ашиглах ба Libs суулгах

Юуны өмнө та Dragonboard -оос IP хаягаа авах хэрэгтэй бөгөөд үүнийг хийхийн тулд хулгана, гар, HDMI дэлгэцтэй холбогдсон DragonBoard -ийг асаах хэрэгтэй. Самбарыг асаахад та сүлжээнд холбогдох хэрэгтэй бөгөөд терминал руу ороод дараах тушаалыг ажиллуулна уу.

sudo ifconfig

Үүний дараа та IP хаягийг авах боломжтой.

IP хаягийн тусламжтайгаар та Dragonboard -т SHH -ээр нэвтрэх боломжтой бөгөөд үүнийг хийхийн тулд самбартай ижил сүлжээнд холбогдсон компьютерт терминал нээх шаардлагатай болно. Терминал дээр та дараах тушаалыг ажиллуулж болно:

ssh linaro@{IP}

(та {IP} -г Dragonboard дээрээс авсан IP хаягаар солих ёстой).

Таны суулгах ёстой хамгийн эхний lib бол mraa lib юм. Үүнийг хийхийн тулд та терминал дээр дараах тушаалыг ажиллуулах хэрэгтэй.

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

Python -д opencv суулгахын тулд та зөвхөн дараах тушаалыг ажиллуулах хэрэгтэй:

sudo apt-get python-opencv суулгана уу

PyAudio -г суулгахын тулд та дараах тушаалыг ажиллуулах хэрэгтэй:

sudo apt-get python-pyaudio python3-pyaudio суулгаарай

WAVE болон AudioOp libs -ийг самбар дээр аль хэдийн суулгасан болно. Numpy суулгахын тулд та дараах тушаалыг ажиллуулах хэрэгтэй:

sudo apt-get python-numpy python-scipy суулгах

Таны суулгах ёстой сүүлчийн lib бол scikit бөгөөд үүнийг суулгахын тулд та pip суулгасан байх ёстой. Та зөвхөн дараах тушаалыг ажиллуулах хэрэгтэй:

pip суулгах scikit-lear

Алхам 5: Bluetooth протокол

Bluetooth протокол
Bluetooth протокол
Bluetooth протокол
Bluetooth протокол
Bluetooth протокол
Bluetooth протокол

Bluetooth -ээр дамжуулан Arduino -тай DragonBoard холболт

Bluetooth модулийг (HC-06) эхлээд дараах жишээний дагуу Arduino Nano-той холбосон болно.

Linaro (Үйлдлийн систем нь DragonBoard -ийн одоогийн төсөлд ашиглагддаг) график интерфэйсийг ашиглан доод талын баруун талд Bluetooth тэмдэг дээр дараад "Шинэ төхөөрөмжийг тохируулах" дээр дараад Bluetooth модулийг хослуулан үлдээгээрэй. Bluetooth модулийг дахин дарж таны модуль холбогдсон эсэхийг шалгаарай, "Төхөөрөмжүүд …" дээр дарж, төхөөрөмжийнхөө нэрийг жагсаасан, холбогдсон эсэхийг шалгаарай. Одоо "Bluetooth төхөөрөмжүүд" дэлгэцээс төхөөрөмжөө сонгоод хулганы баруун товчийг дараад таны Bluetooth модуль холбогдсон портыг анхаарна уу (жишээ нь: "rfcomm0"). Тэмдэглэл: Таны төхөөрөмж холбогдсон портын нэр нь өгөгдөл солилцох боломжийг идэвхжүүлэх дараагийн алхамд чухал байх болно.

DragonBoard мэдээллийн солилцоо, Bluetooth -ийг бий болгох

Үндсэндээ бид холбоосыг алхам алхамаар дагаж мөрддөг: https://www.uugear.com/portfolio/bluetooth-communi… гэхдээ бид хослуулах хэсгийг зөвхөн питон код болон Arduino-ийн гүйцэтгэлийг гүйцэтгээгүй. Python -д bluetooth -тэй холбогдсон порт дээр эхлүүлсэн цуваа номын сан ашиглагддаг тул питон код нь bluetooth модулаар дамжуулан arduino -той холбогдсон мэдрэгчүүдийн мэдээллийг уншдаг.

Алхам 6: DragonBoard 410c дээр Mezzanine ашиглах

DragonBoard 410c дээр Mezzanine ашиглах
DragonBoard 410c дээр Mezzanine ашиглах

Луу болон бүрэлдэхүүн хэсгүүдийн хоорондох холболтыг бий болгохын тулд бид 96 хавтангаар бүтээсэн Mezannine гэж нэрлэгддэг бамбайг ашиглаж байна.

Энэхүү бамбайг ашиглан захын төхөөрөмжүүдийг холбох нь илүү хялбар болно.

Холбогчийг Grove -ийн хөгжүүлэлтийн хэрэгслээс авсан тул хоёр замыг холбосон especif кабелийг ашигладаг.

Бүх хэсгийг энэ вэбсайтаас хялбархан олж болно:

Бид энэ иж бүрдлийг дараах байдлаар ашиглаж байна.

  • Гроувын буухиа
  • Grove нарны гэрлийн мэдрэгч
  • Гроувын залгуур
  • Grove температур ба humi мэдрэгч
  • Grove Buzzer

Алхам 7: DragonBoard 410c програм хангамж

DragonBoard дахь програмын хэсгийг Python дээр кодлосон бөгөөд Arduino дээр ашигладаг програмыг C ++ дээр боловсруулсан болно. 2 минут тутамд Arduino түүнд хавсаргасан бүх мэдрэгчийг уншдаг. Arduino -ээс уншсан зүйлийг Bluetooth ашиглан DragonBoard руу илгээнэ үү. DragonBoard нь Arduino -аас авсан уншлагыг Mezzanine бамбайгаар хийсэн аудио болон видео дээжийн онцлог шинж чанаруудтай хослуулсан болно.

Энэхүү өгөгдлөөр Удирдах зөвлөл яаралтай нөхцөл байдал үүсэхийг урьдчилан таамаглахыг хичээдэг. Удирдах зөвлөл нь Phant ашиглан түүхий өгөгдөл, түүний хийсэн таамаглалыг ашиглан Amazon вэб үйлчилгээ рүү илгээдэг. Удирдах зөвлөл нь ийм хачин нөхцөл байдал үүсч болзошгүй гэж таамаглаж байгаа бол хэрэглэгчид Mezzanine -д лед, дуугаруулагч анивчиж, вэб програм дээр үзүүлэхийг анхааруулахыг оролдож байна. Вэб програм дээр энэ чиглэлээр юу болж байгааг ойлгохын тулд түүхий өгөгдлийг харах боломжтой болно.

Зөвлөмж болгож буй: