Orodha ya maudhui:
- Hatua ya 1: Vipengele vinavyohitajika
- Hatua ya 2: Kutengeneza Kifaa cha mbali
- Hatua ya 3: Softwares na Maktaba
- Hatua ya 4: Kutumia SSH na Kuweka Libs
- Hatua ya 5: Itifaki ya Bluetooth
- Hatua ya 6: Kutumia Mezzanine kwenye DragonBoard 410c
- Hatua ya 7: Programu ya DragonBoard 410c
Video: Kugundua hali za kujitokeza - Jukwaa la Qualcomm 410c: Hatua 7
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:49
Kutafuta mifumo ya usalama ambayo inafanya kazi ya kufuatilia hali za kujitokeza, inawezekana kugundua kuwa ni ngumu sana kushughulikia habari zote zilizorekodiwa. Kufikiria juu ya hilo, tuliamua kutumia maarifa yetu katika usindikaji wa sauti / picha, sensorer na watendaji kuunda mfumo mmoja kamili unaowezesha kutabiri hali ambapo maisha ya watu yako hatarini.
Mradi huu unasababisha sensorer ya ndani na vifaa vya mbali kukusanya data na kupeleka kwenye jukwaa, ambalo lina nguvu ya usindikaji inayoweza kutoa habari muhimu kutoka kwa data iliyopokelewa.
Kifaa kijijini ni bodi ya Arduino iliyo na moduli HC-06 ikigeuza uwezekano wa kutuliza habari zote, na wavu wa gharama nafuu wenye uwezo wa kusindika data nyingi.
Hatua ya 1: Vipengele vinavyohitajika
Kwanza kabisa, lazima uamue ni sensorer zipi na actuatos ambazo utatumia, na utengeneze mchoro wa archtecture.
Kwa upande wetu, tunatumia sensorer hizi zilizopatikana katika ARDUINO Pro Mini, iliyoorodheshwa hapa chini:
- PIR (Passive Infrared - sensa ya Uwepo)
- DHT 11 (sensorer ya unyevu na joto) https://www.dx.com/p/dht11-digital-temperature- na
- Sensor ya CO (Sensorer ya Monoxide ya Kaboni)
- Sensor ya kelele
Watendaji:
- motor servo https://www.dx.com/p/sg90-universal-9g-servo-motor …….
- buzzer
Mawasiliano:
Moduli ya Bluetooth HC-06
Kwa Joka la 410c, tutakuwa na sensorer na vifaa vya laini kusindika pembejeo zote za data:
Sensorer:
- DHT 11 https://www.dx.com/p/dht11-digital-joto-na- ……
- Sensor ya jua
Watendaji:
- Kupitisha
- Hali iliyoongozwa
- Buzzer
Hatua ya 2: Kutengeneza Kifaa cha mbali
Sasa ni wakati wa kuunganisha vifaa vyote vifuatavyo kwenye Bodi ya Arduino, na kuunda kifaa ambacho kitapokea data kutoka kwa mazingira (kelele, unyevu, joto, n.k), na tuma kwa Joka na moduli ya bluetooth HC-06.
Ni muhimu kuzingatia mikutano, kwa sababu sensa yote ina maeneo maalum ya kutazama.
Kwenye mfumo, inawezekana kuwa na zaidi ya kifaa kimoja kukusanya data. Vifaa zaidi ambavyo umeweka katika mazingira, utambuzi sahihi zaidi unaotokana na usindikaji wa data ni. Kwa kuwa itawezekana kutoa habari anuwai ambayo inaweza kuwa muhimu.
Tuliamua kutumia bodi ya arduino kwa sababu ina sensorer zinazofaa zaidi, na inawezekana kusanikisha vifaa hivi vya mbali katika maeneo ya diferents, kukusanya habari zaidi.
Kifaa cha ndani ni DragonBoard 410c, mchakato wa sauti, video, dijiti na habari za analog na processor yako yenye nguvu ya SnapDragon 410.
Kuweka vifaa (Remote Devide)
Piga kipande kimoja kina pini ambazo lazima ziunganishwe kwenye pini za kulia kwenye bodi ya mini ya arduino pro.
Moduli ya Bluetooth HC-06 ina pini 4:
- TX (Transmissor) -> imeunganishwa kwenye pini ya RX Arduino
- RX (Mpokeaji) -> imeunganishwa kwenye pini ya TX Arduino
- VCC -> imeunganishwa kwenye 5v
- GND
Sensor ya DHT 11 ina pini 4 (lakini ni 3 tu zinazotumika):
- Ishara -> imegunduliwa kwenye pini ya dijiti
- VCC -> imeunganishwa kwenye 5v
- GND
Sensor ya PIR ina pini 3:
- Ishara -> imeunganishwa kwenye pini ya dijiti
- VCC -> imeunganishwa kwenye 5v
- GND
Sensorer ya gesi (MQ) ina pini 4:
- Dijitali OUT -> imegunduliwa kwenye pini ya dijiti (ikiwa unataka habari ya dijiti)
- Analog OUT -> kwa upande wetu, tunatumia hii iliyounganishwa kwenye pini ya analog
- VCC -> imeunganishwa kwenye 5v
- GND
Sensor ya kelele (KY-038) ina pini 3:
- Ishara -> imeunganishwa kwenye pini ya analog
- VCC -> imeunganishwa kwenye 5v
- GND
Nambari ya Kifaa cha mbali cha Arduino:
/ * * Arduino tuma data kupitia Blutooth * * Thamani ya sensorer husomwa, imefungwa kwenye * Kamba na kutuma kupitia bandari ya serial. * / # pamoja na "DHT.h" #fafanua DHTPIN 3 #fafanua DHTTYPE DHT22 #fafanua PIRPIN 9 #fafanua COPIN A6 DHT dht (DHTPIN, DHTTYPE); kuelea humidaty, joto; maharamia wa boolean = 0; ushirikiano, mic; Kamba msg = ""; char mpya [40]; kuanzisha batili () {Serial.begin (9600); kuanza (); } kitanzi batili () {humidaty = dht.readHumidity (); joto = dht. soma Joto (); pir = kusoma kwa dijiti (PIRPIN); ushirikiano = AnalogSoma (COPIN); mic = analogSoma (A0); msg = "#;" + Kamba (humidaty) + ";" + Kamba (joto) + ";" + Kamba (mic) + ";" + Kamba (pir) + ";" + Kamba (co) + "; #" + "\ n"; Serial.print (msg); kuchelewa (2000); }
Maelezo ya msimbo:
Pini zote zinazotumiwa katika Arduino zimenukuliwa mwanzoni mwa nambari na maktaba husika zinazohitajika kwa utendakazi wa sensorer zimeanzishwa. Takwimu zote zitapitishwa kwa vigeuzi husika ambavyo vitapokea maadili yaliyosomwa kutoka kwa kila sensa kila millisecond 2000, halafu zote zimefungwa kwa Kamba, kisha imeandikwa kwa Serial. Kutoka hapo ni rahisi sana kwa nambari ya pyton iliyopo kwenye DragonBoard kunasa data kama hizo.
Hatua ya 3: Softwares na Maktaba
Ili kusindika data zote zilizopokelewa na kudhibiti mfumo wa usalama, ni muhimu kutumia laini na maktaba kwenye Qualcomm DragonBoard 410c.
Katika mradi huu haswa tunatumia:
Vifaa laini:
- Chatu
- Arduino
Fomu za Plata:
- Amazon AWS -> seva ya mkondoni
- Phant -> Huduma ya data ya mwenyeji
Maktaba:
- OpenCV - Usindikaji wa Video (https://opencv-python-tutroals.readthedocs.io/en/latest/)
- PyAudio - Usindikaji wa Sauti (https://people.csail.mit.edu/hubert/pyaudio/)
- Wimbi (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 - Treni na utabiri ujifunzaji wa mashine (https://scikit-learn.org/stable/install.html)
- cPickle - Hifadhi vigezo vya kujifunza mashine (https://pymotw.com/2/pickle/)
- MRAA - Tumia GPIOs (https://iotdk.intel.com/docs/master/mraa/python/)
- UPM - Tumia GPIOs (https://github.com/intel-iot-devkit/upm)
- PySerial - Tumia mawasiliano ya serial na kifaa cha Bluetooth (https://pythonhosted.org/pyserial/)
Hatua ya 4: Kutumia SSH na Kuweka Libs
Kwanza kabisa unahitaji kupata anwani ya IP kutoka kwa Joka, ili kufanya hivyo, unahitaji kuwasha DragonBoard iliyounganishwa na panya, kibodi na mfuatiliaji wa HDMI. Wakati bodi imewashwa unahitaji kuungana na mtandao, kuliko kwenda kwenye terminal na kuendesha amri:
Sudo ifconfig
baada ya hapo unaweza kupata anwani ya IP.
Ukiwa na anwani ya IP unaweza kupata Joka kupitia SHH, kufanya hivyo unahitaji kufungua wastaafu kwenye kompyuta iliyounganishwa kwenye mtandao sawa na bodi. Katika terminal unaweza kukimbia amri:
ssh linaro @ {IP}
(unapaswa kuchukua nafasi ya {IP} na anwani ya IP ambayo unapata kwenye Joka).
Lib ya kwanza unayohitaji kufunga ni mraa lib. Ili kufanya hivyo unahitaji kutumia amri ifuatayo kwenye terminal:
ppa ya kuongeza-apt-reppa: mraa / mraa && sudo apt-ge; t sasisha && sudo apt-get kufunga libmraa1 libmraa-dev mraa-zana python-mraa python3-mraa
Ili kusanikisha opencv ya chatu unahitaji tu kuendesha amri:
Sudo apt-get kufunga python-opencv
Ili kufunga PyAudio unahitaji kutumia amri:
Sudo apt-get kufunga python-pyaudio python3-pyaudio
WAVE na AudioOp za libs tayari zimewekwa kwenye bodi. Ili kusanikisha numpy unahitaji kutumia amri:
Sudo apt-get kufunga python-numpy python-scipy
Lib ya mwisho ambayo lazima usakinishe ni scikit, ili kuiweka unahitaji kuwa na bomba iliyosanikishwa. Kuliko unahitaji tu kuendesha amri:
pip kufunga scikit-lear
Hatua ya 5: Itifaki ya Bluetooth
Uunganisho wa DragonBoard na Arduino kwa njia ya Bluetooth
Moduli ya Bluetooth (HC-06) hapo awali iliunganishwa na Arduino Nano kulingana na mfano ufuatao:
Kutumia Linaro (Mfumo wa Uendeshaji Unayotumiwa katika mradi wa sasa katika DragonBoard) kielelezo cha picha, upande wa kulia wa mwamba wa chini bonyeza alama ya Bluetooth na kisha bonyeza "Sanidi Kifaa kipya" na usanidi na moduli yako ya Bluetooth na kuiacha ikiwa imeunganishwa. Thibitisha kuwa moduli yako imeunganishwa kwa kubonyeza ishara ya Bluetooth tena, bonyeza "Vifaa…" na uone ikiwa jina la kifaa chako limeorodheshwa na limeunganishwa. Sasa chagua kifaa chako kwenye skrini ya "Vifaa vya Bluetooth" na ubonyeze kulia juu yake na uone bandari ambayo moduli yako ya Bluetooth imeunganishwa nayo (mfano: "rfcomm0"). Kumbuka: Jina la bandari ambalo kifaa chako kimeunganishwa litakuwa muhimu kwa hatua inayofuata kuwezesha ubadilishaji wa data.
Kuanzisha kubadilishana data ya DragonBoard na Bluetooth
Kimsingi tunafuata hatua kwa hatua ya kiunga: https://www.uugear.com/portfolio/bluetooth-communi ……. lakini hatukufanya sehemu ya kuoanisha tu utekelezaji wa nambari za chatu na Arduino. Katika chatu ilitumika maktaba ya serial ambayo imeanzishwa katika bandari iliyounganishwa na bluetooth, kwa hivyo nambari ya chatu ilisoma data ya sensorer ambazo zimeunganishwa na arduino kupitia moduli ya bluetooth.
Hatua ya 6: Kutumia Mezzanine kwenye DragonBoard 410c
Ili kufanya unganisho uwe kati ya ubao wa joka na viambatanisho, tunatumia aina ya ngao inayoitwa na Mezannine, iliyotengenezwa na bodi 96.
Kutumia ngao hii, unganisha pembezoni inakuwa rahisi zaidi.
Viunganishi hutumia kutoka kwa kitanda cha maendeleo cha msituni, kwa hivyo ni kutumia tu kebo ya especif inayounganisha njia zote mbili, Sehemu zote zinaweza kupatikana kwa urahisi kwenye wavuti hii:
Tunatumia vifaa hivi:
- Kupitisha Grove
- Sensor ya jua ya Grove
- Tundu lililoongozwa na Grove
- Grove temp & humi sensor
- Grove Buzzer
Hatua ya 7: Programu ya DragonBoard 410c
Sehemu ya programu katika DragonBoard iliorodheshwa kwenye Python na programu iliyotumiwa kwenye Arduino ilitengenezwa katika C ++. Kila dakika 2 Arduino inasoma sensorer yote iliyoambatanishwa nayo. Kuliko Arduino tuma usomaji kwa DragonBoard kwa Bluetooth. DragonBoard inachanganya usomaji ulikuja kutoka Arduino na usomaji ambao hufanya na ngao ya Mezzanine na huduma kutoka kwa sauti na sampuli za video.
Kwa data hii, Bodi inajaribu kutabiri ikiwa inatokea hali ya dharura. Bodi hutuma kwa Huduma ya Wavuti ya Amazon kwa kutumia Phant data ghafi na utabiri ambao ilitoa. Ikiwa bodi inabashiri kuwa inatokea hali ya kushangaza inajaribu kuonya mtumiaji akipepesa mwangaza na buzzer katika Mezzanine na kuonyesha kwenye programu ya wavuti. Katika programu ya wavuti inawezekana pia kuona data mbichi kuelewa kinachotokea katika eneo hili.
Ilipendekeza:
Sensorer ya hali ya hewa ya hali ya hewa na Kiunga cha data cha GPRS (SIM Card): Hatua 4
Sensor ya hali ya hewa ya hali ya hewa na GPRS (SIM Card) Kiunga cha Takwimu: Muhtasari wa MradiHii ni sensorer ya hali ya hewa inayotumia betri kulingana na joto la BME280 la joto / shinikizo / unyevu na ATMega328P MCU. Inatumika kwa betri mbili za 3.6 V lithiamu thionyl AA. Inayo matumizi ya chini ya kulala ya 6 µA. Inatuma data
Onyesho rahisi la hali ya hewa kwa kutumia Raspberry PI na hali ya hewa ya CyntechHAT: Hatua 4
Onyesho rahisi la hali ya hewa kwa kutumia Raspberry PI na Cyntech WeatherHAT: * Mnamo 2019 Yahoo ilibadilisha API, na hii iliacha kufanya kazi. Sikujua mabadiliko hayo. Mnamo Septemba ya 2020 mradi huu umesasishwa kutumia OPENWEATHERMAP API Angalia sehemu iliyosasishwa hapa chini, habari hii iliyobaki bado ni nzuri
Hali ya Ubora wa Hali ya Hewa ya PurpleAir: Hatua 4
Hali ya Ubora wa Hali ya Hewa ya PurpleAir Onyesha: Pamoja na moto wa mwituni huko California hivi karibuni ubora wa hewa huko San Francisco umeathiriwa sana. Tulijikuta tukikagua ramani ya PurpleAir mara kwa mara kwenye simu zetu au kompyuta ndogo kujaribu kujaribu wakati hewa ilikuwa salama vya kutosha kufungua ushindi
Kituo cha Hali ya Hewa cha NaTaLia: Kituo cha Hali ya Hewa ya Arduino Inayotumiwa Imefanywa kwa Njia Sahihi: Hatua 8 (na Picha)
Kituo cha Hali ya Hewa cha NaTaLia: Kituo cha Hali ya Hewa ya Arduino Inayotumiwa Imefanywa kwa Njia Sawa: Baada ya mwaka 1 wa kufanikiwa katika maeneo 2 tofauti ninashiriki mipango yangu ya mradi wa kituo cha hali ya hewa na kuelezea jinsi ilibadilika kuwa mfumo ambao unaweza kuishi kwa muda mrefu vipindi kutoka kwa nguvu ya jua. Ukifuata
1.8 Kituo cha hali ya hewa cha hali ya juu cha TFT LCD: Hatua 5
1.8 Kituo cha hali ya hewa cha hali ya juu cha TFT LCD: Kidogo kidogo, lakini kubwa