Բովանդակություն:
- Քայլ 1: Պահանջվող բաղադրիչներ
- Քայլ 2: Հեռակա սարքի պատրաստում
- Քայլ 3: wրագրեր և գրադարաններ
- Քայլ 4: SSH- ի օգտագործումը և Libs- ի տեղադրումը
- Քայլ 5: Bluetooth արձանագրություն
- Քայլ 6: Օգտագործելով Mezzanine- ը DragonBoard 410c- ում
- Քայլ 7: DragonBoard 410c ծրագրակազմ
Video: Արտակարգ իրավիճակների հայտնաբերում - Qualcomm Dragonboard 410c: 7 քայլ
2024 Հեղինակ: John Day | [email protected]. Վերջին փոփոխված: 2024-01-30 09:46
Փնտրելով անվտանգության համակարգեր, որոնք աշխատում են արտակարգ իրավիճակների մոնիթորինգի համար, հնարավոր է նկատել, որ չափազանց դժվար է գրանցված ամբողջ տեղեկատվությունը մշակել: Մտածելով այդ մասին ՝ մենք որոշեցինք օգտագործել մեր գիտելիքները աուդիո/պատկերի մշակման, սենսորների և գործարկիչների մեջ `ստեղծելու մեկ ամբողջական համակարգ, որը հնարավորություն է տալիս կանխատեսել իրավիճակներ, որտեղ մարդկանց կյանքը վտանգված է:
Այս նախագիծն ունի տեղական տվիչներ և հեռակառավարվող սարքեր ՝ տվյալներ հավաքելու և ուղարկելու վիշապախտակին, որն ունի մշակման հզորություն, որն ունակ է ստացված տվյալներից կարևոր տեղեկություններ քաղել:
Հեռակա սարքը Arduino- ի տախտակ է, որի մոդուլը HC-06- ն հնարավոր է դարձնում բոլոր տեղեկությունները փոխանցելու համար, և էժան լայն ցանց, որը կարող է մեծ քանակությամբ տվյալներ մշակել:
Քայլ 1: Պահանջվող բաղադրիչներ
Առաջին հերթին, դուք պետք է որոշեք, թե որ տվիչներից և շարժիչներից եք պատրաստվում օգտվել, և կազմել ճարտարապետության ուրվագիծը:
Մեր դեպքում մենք օգտագործում ենք ARDUINO Pro Mini- ում միացված այս սենսորները ՝ թվարկված ստորև.
- PIR (Պասիվ ինֆրակարմիր-ներկայության ցուցիչ)
- DHT 11 (Խոնավության և ջերմաստիճանի տվիչ)
- CO սենսոր (Ածխածնի երկօքսիդի սենսոր)
- Աղմուկի տվիչ
Գործարկիչներ
- շարժիչի սերվո
- բզզոց
Հաղորդակցություն
Bluetooth մոդուլ HC-06
Dragonboard 410c- ի համար մենք կունենանք որոշ տվիչներ և ծրագրակազմ ՝ տվյալների բոլոր մուտքերը մշակելու համար.
Սենսորներ:
- DHT 11
- Արևի սենսոր
Գործարկիչներ
- Ռելե
- Առաջնորդի կարգավիճակ
- Բզզոց
Քայլ 2: Հեռակա սարքի պատրաստում
Այժմ ժամանակն է միացնել հետևյալ բոլոր բաղադրիչները Arduino Board- ին ՝ ստեղծելով մի սարք, որը կստանա տվյալները շրջապատից (աղմուկ, խոնավություն, ջերմաստիճան և այլն) և կուղարկի Dragonboard- ին bluetooth HC-06 մոդուլով:
Անհրաժեշտ է ուշադրություն դարձնել կոնակցությունների վրա, քանի որ բոլոր տվիչներն ունեն միացման հատուկ վայրեր:
Համակարգում հնարավոր է ունենալ մեկից ավելի սարք ՝ տվյալներ հավաքելու համար: Որքան շատ սարքեր եք տեղադրել միջավայրում, այնքան ավելի ճշգրիտ է տվյալների մշակման արդյունքում առաջացած ախտորոշումը: Քանի որ հնարավոր կլինի կորզել տեղեկատվության ավելի լայն շրջանակ, որը կարող է օգտակար լինել:
Մենք որոշեցինք օգտագործել arduino տախտակը, քանի որ ունի ավելի համատեղելի տվիչներ, և հնարավոր է տեղադրել այս հեռավոր սարքերը տարբեր վայրերում ՝ հավաքելով ավելի շատ տեղեկատվություն:
Տեղական սարքը DragonBoard 410c- ն է, որը մշակում է աուդիո, վիդեո, թվային և անալոգային տեղեկատվություն ձեր հզոր SnapDragon 410 պրոցեսորով:
Բաղադրիչների տեղադրում (հեռավոր բաժանում)
Մի կտորն ունի մի քանի կապում, որոնք պետք է միացված լինեն arduino pro մինի տախտակի աջ կապում:
Bluetooth մոդուլ HC-06- ն ունի 4 կապում
- TX (հաղորդիչ) -> միացված է RX Arduino- ի քորոցին
- RX (ընդունիչ) -> միացված է TX Arduino- ի քորոցին
- VCC -> միացված է 5 վ
- GND
DHT 11 ցուցիչն ունի 4 կապ (բայց օգտագործվում է ընդամենը 3):
- Ազդանշան -> միացված է թվային կապի վրա
- VCC -> միացված է 5 վ
- GND
PIR ցուցիչն ունի 3 կապ:
- Ազդանշան -> միացված է թվային կապի վրա
- VCC -> միացված է 5 վ
- GND
Գազի տվիչը (MQ) ունի 4 կապում
- Digital OUT -> միացված է թվային կապի վրա (եթե ցանկանում եք թվային տեղեկատվություն)
- Analog OUT -> մեր դեպքում մենք օգտագործում ենք սա միացված անալոգային կապում
- VCC -> միացված է 5 վ
- GND
Աղմուկի տվիչը (KY-038) ունի 3 կապում
- Ազդանշան -> միացված է անալոգային քորոցին
- VCC -> միացված է 5 վ
- GND
Arduino հեռակա սարքի կոդ
/ * * Arduino- ն տվյալներ է ուղարկում Blutooth- ի միջոցով * * Սենսորների արժեքը կարդացվում է, համակցված է * String- ի վրա և ուղարկվում է սերիական նավահանգստի միջոցով: */ #ներառել «DHT.h» #սահմանել DHTPIN 3 #սահմանել DHTTYPE DHT22 #սահմանել PIRPIN 9 #սահմանել COPIN A6 DHT dht (DHTPIN, DHTTYPE); բոց խոնավ, ջերմաստիճան; բուլյան պիր = 0; int co, խոսափող; Լարային msg = ""; char nome [40]; void setup () {Serial.begin (9600); dht.begin (); } void loop () {humidaty = dht.readHumidity (); ջերմաստիճան = dht.readTemperature (); pir = digitalRead (PIRPIN); co = analogRead (COPIN); խոսափող = analogRead (A0); msg = "#;" + Լար (խոնավ) + ";" Լար (ջերմաստիճան)+ ";"+ Լար (միկրո)+ ";"+ Լար (պիր)+ ";" + Լար (co) + ";#" + "\ n"; Serial.print (msg); ուշացում (2000); }
Կոդի բացատրություն
Arduino- ում օգտագործվող բոլոր կապերը մեջբերված են կոդի սկզբում, իսկ սենսորների աշխատանքի համար անհրաժեշտ համապատասխան գրադարանները նախաստորագրվում են: Բոլոր տվյալները կփոխանցվեն համապատասխան փոփոխականներին, որոնք կստանան յուրաքանչյուր սենսորից յուրաքանչյուր 2000 միլիվայրկյան ընթերցված արժեքները, այնուհետև բոլորը միավորված են տողում, այնուհետև գրված է Սերիալում: Այնտեղից DragonBoard- ում առկա պիտոնի ծածկագիրը շատ հեշտ է նման տվյալներ գրավել:
Քայլ 3: wրագրեր և գրադարաններ
Ստացված բոլոր տվյալները մշակելու և անվտանգության համակարգը վերահսկելու համար անհրաժեշտ է օգտագործել Qualcomm DragonBoard 410c- ի որոշ ծրագրեր և գրադարաններ:
Այս հատուկ նախագծում մենք օգտագործում ենք.
Ծրագրակազմ
- Պիթոն
- Արդուինո
Պլատֆորմներ
- Amazon AWS -> առցանց սերվեր
- Phant -> Հոսթերի տվյալների ծառայություն
Գրադարաններ:
- OpenCV-Տեսամշակում (https://opencv-python-tutroals.readthedocs.io/hy/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)
- Numpy (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-Օգտագործեք GPIO- ները (https://github.com/intel-iot-devkit/upm)
- PySerial - Օգտագործեք Bluetooth սարքի հետ սերիական հաղորդակցության համար (https://pythonhosted.org/pyserial/)
Քայլ 4: SSH- ի օգտագործումը և Libs- ի տեղադրումը
Նախևառաջ անհրաժեշտ է ստանալ IP հասցեն Dragonboard- ից, դրա համար անհրաժեշտ է միացնել մկնիկի, ստեղնաշարի և HDMI մոնիտորի հետ կապված DragonBoard- ը: Երբ խորհուրդը միացված է, դուք պետք է միանաք ցանցին, ապա գնացեք տերմինալ և գործարկեք հրամանը.
sudo ifconfig
դրանից հետո կարող եք ստանալ IP հասցեն:
IP հասցեով կարող եք մուտք գործել Dragonboard SHH- ի միջոցով, դրա համար անհրաժեշտ է տերմինալ բացել տախտակի հետ նույն ցանցում միացված համակարգչում: Տերմինալում կարող եք գործարկել հրամանը.
ssh linaro@{IP}
(դուք պետք է փոխարինեք {IP} - ը այն վիդեո վահանակում ստացած 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
The libs WAVE և AudioOp արդեն տեղադրված են տախտակում: Numpy տեղադրելու համար հարկավոր է գործարկել հրամանը.
sudo apt-get տեղադրել python-numpy python-scipy
Վերջին lib- ը, որը դուք պետք է տեղադրեք, scikit- ն է, այն տեղադրելու համար պետք է տեղադրել pip: Դրանից հետո միայն պետք է գործարկել հրամանը.
pip տեղադրել scikit-lear
Քայլ 5: Bluetooth արձանագրություն
DragonBoard- ի կապ Arduino- ի հետ `Bluetooth- ի միջոցով
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: Օգտագործելով Mezzanine- ը DragonBoard 410c- ում
Վիշապի և բաղադրամասերի միջև կապերը հաստատելու համար մենք օգտագործում ենք Mezannine կոչվող վահանի մի տեսակ, որը մշակվել է 96 տախտակի կողմից:
Օգտագործելով այս վահանը, ծայրամասային սարքերը միացնելը շատ ավելի հեշտ է դառնում:
Միակցիչների օգտագործումը պուրակի զարգացման հավաքածուից է, ուստի այն օգտագործում է էսպես հատուկ մալուխ, որը միացնում է երկու եղանակները, Բոլոր մասերը կարելի է հեշտությամբ գտնել այս կայքում ՝
Մենք օգտագործում ենք այս հավաքածուները ստորև.
- Grove ռելե
- Grove Sunlight ցուցիչ
- Grove led վարդակից
- Grove ջերմաստիճանի և հումիի ցուցիչ
- Grove Buzzer
Քայլ 7: DragonBoard 410c ծրագրակազմ
Gonրագրի մի մասը DragonBoard- ում ծածկագրված է եղել Python- ում, իսկ Arduino- ում օգտագործվող ծրագիրը մշակվել է C ++ - ում: 2 րոպեն մեկ Arduino- ն կարդում է դրան ամրացված բոլոր տվիչները: Ավելի քան Arduino- ն ընթերցումը Bluetooth- ով ուղարկեք DragonBoard- ին: DragonBoard- ը համատեղում է Arduino- ից եկած ընթերցումը և Mezzanine վահանի կողմից կատարված ընթերցումը `ձայնային և տեսաերիզային նմուշների հատկություններով:
Այս տվյալներով Խորհուրդը փորձում է կանխատեսել, թե արդյոք դա տեղի է ունենում արտակարգ իրավիճակում: Խորհուրդը Amazon- ի վեբ ծառայություն է ուղարկում Phant- ի միջոցով չմշակված տվյալները և դրա կատարած կանխատեսումը: Եթե խորհուրդը կանխատեսում է, որ դա տեղի է ունենում տարօրինակ իրավիճակում, այն փորձում է զգուշացնել օգտագործողին, որը միջմեկույցում թարթում է led և buzzer և ցույց է տալիս վեբ հավելվածում: Վեբ հավելվածում հնարավոր է նաև տեսնել չմշակված տվյալները `հասկանալու, թե ինչ է կատարվում այս ոլորտում:
Խորհուրդ ենք տալիս:
Արտակարգ իրավիճակների USB էներգիայի աղբյուր (3D տպագիր) ՝ 4 քայլ (նկարներով)
Արտակարգ USB հոսանքի աղբյուր (3D տպագիր). Այս նախագիծը օգտագործում է 12 Վ մարտկոց, ինչպես դուք կօգտագործեիք մեքենայի համար, USB սարքերը լիցքավորելու համար էլեկտրաէներգիայի անջատման կամ ճամբարային ճամփորդության դեպքում: Դա նույնքան պարզ է, որքան USB մեքենայի լիցքավորիչը մարտկոցին ամրացնելը: «Սենդի» փոթորկից հետո ես հոսանքազրկված էի
UVC ստերիլիզատոր COVID-19 արտակարգ իրավիճակների դեպքում ՝ 3 քայլ
UVC ստերիլիզատոր COVID-19 արտակարգ իրավիճակների համար. Ինչպես պատրաստել UVC ստերիլիզատոր տուփ: Առաջին բաները առաջին հերթին: Էլեկտրաէներգիան վտանգավոր է! Եթե վստահ չեք և իրավասու, մի փորձեք ստորև նշված որևէ բան: Ուլտրամանուշակագույն ճառագայթը (253.7 նմ) հզոր է, այն կարող է կուրացնել ձեզ և, հնարավոր է, մաշկի քաղցկեղ առաջացնել
E.S.D.U (Արտակարգ իրավիճակների ծառայության Droid միավոր) ՝ 7 քայլ
E.S.D.U (Արտակարգ ծառայության Droid բաժին). Այսօր մենք պատրաստվում ենք կառուցել E.S.D.U (Արտակարգ իրավիճակների ծառայության Droid միավոր): E.S.D.U- ն բաժանված է 3 դասի ՝ ոստիկանություն, հրդեհ և բուժ. Այս բոլորը դեռ լիովին մշակված չեն, բայց ես հույս ունեմ, որ մենք կարող ենք դրանք կատարելագործել և զարգացնել միասին ՝ որպես
Արտակարգ իրավիճակների շարժական լիցքավորիչ ՝ օգտագործելով DC շարժիչ. 3 քայլ (նկարներով)
Արտակարգ բջջային լիցքավորիչ ՝ օգտագործելով DC շարժիչ. Ներածություն Սա հոբբի նախագիծ է, որը կարող է պատրաստվել յուրաքանչյուրի կողմից ՝ հետևելով մի քանի շատ պարզ հրահանգների: Լիցքավորիչը աշխատում է DC շարժիչի սկզբունքով, որն օգտագործվում է որպես մեխանիկական էներգիան էլեկտրական էներգիայի փոխարկող գեներատոր: Բայց քանի որ լարման
Արտակարգ իրավիճակների կոճակ NodeMCU- ով ՝ 7 քայլ
Արտակարգ իրավիճակների կոճակ ՝ NodeMCU- ով. Արտակարգ իրավիճակների կոճակը օգնում է ձեզ օգնություն ստանալ, եթե կա որևէ արտակարգ իրավիճակ, պարզապես սեղմեք կոճակը, և այն ինքնաբերաբար կտեղադրի facebook կամ twitter հաղորդագրություն, որը դուք տեղադրել եք ծածկագրում, եթե ունեք բժշկական պայման