Orodha ya maudhui:

Utangulizi wa Hotuba ya Retro. Sehemu: 12 IoT, Uendeshaji wa Nyumbani: Hatua 12 (na Picha)
Utangulizi wa Hotuba ya Retro. Sehemu: 12 IoT, Uendeshaji wa Nyumbani: Hatua 12 (na Picha)

Video: Utangulizi wa Hotuba ya Retro. Sehemu: 12 IoT, Uendeshaji wa Nyumbani: Hatua 12 (na Picha)

Video: Utangulizi wa Hotuba ya Retro. Sehemu: 12 IoT, Uendeshaji wa Nyumbani: Hatua 12 (na Picha)
Video: ДЕТИ ЛЕДИБАГ И СУПЕР-КОТА 😱 Сказки на ночь от Маринетт Miraculous Ladybug & Cat Noir in real life 2024, Julai
Anonim
Image
Image
Utangulizi wa Hotuba ya Retro. Sehemu: 12 IOT, Home Automation
Utangulizi wa Hotuba ya Retro. Sehemu: 12 IOT, Home Automation

Nakala hii ni ya 12 katika safu ya moja kwa moja ya Maagizo ya nyumbani inayoandika jinsi ya kuunda na kuunganisha Kifaa cha Usanidi wa Hotuba ya IoT kwenye mfumo uliopo wa kiotomatiki wa nyumbani pamoja na utendaji wote muhimu wa programu kuwezesha kupelekwa kwa mafanikio ndani ya mazingira ya nyumbani.

Picha ya 1 inaonyesha kifaa cha synthet cha hotuba iliyokamilishwa ya IoT na Picha 2 inaonyesha sehemu zote za sehemu zilizotumiwa katika mfano ambazo zilipunguzwa sababu ya kuingia kwenye bidhaa ya mwisho.

Video inaonyesha kifaa kinatumika (wakati wa kujaribu).

Utangulizi

Kama ilivyoelezwa hapo juu maelezo haya yanayoweza kuagizwa jinsi ya kutengeneza kifaa cha awali cha Hotuba ya IoT Retro na imejikita karibu na Hati za Jumla SP0256-AL2.

Kusudi la msingi ni kuongeza usanisi wa sauti ya 'shule ya zamani' kwenye mtandao wa IoT. Kwa nini unaweza kuuliza "shule ya zamani"? Kweli, kwa sababu nilikuwa karibu katika miaka ya 80 wakati vitu hivi vilitengenezwa kwanza na niliingiza moja kwa BBC Micro yangu kwa hivyo kwangu kuna kiwango fulani cha nostalgia inayozunguka SP0256-AL2.

Ninapendelea sana changamoto ya kujaribu kujua ni nini duniani kinasemwa na sauti hii ya sauti ya Dalek kuliko kusikiliza sauti za dulcet za hipster Amazon echo au Siri. Changamoto iko wapi kwa kuwa nakuuliza?

Ah, na isitoshe mimi pia nina 'begi mzigo' wa 'SP0256-AL2' IC zilizolala.

Kifaa hiki pia kina uwezo wa kusoma hali ya joto na unyevu wa ndani ili kuenea zaidi kwa miundombinu ya IoT iliyopo kwenye mtandao wa IQT wa MQTT / OpenHAB uliofafanuliwa katika safu hii juu ya kiotomatiki cha nyumbani (HA), ikiunda nambari iliyotumiwa tena iliyochukuliwa kutoka hapa.

Katika moyo wake ni ESP8266-07 ambayo inawajibika kwa mawasiliano ya MQTT na kudhibiti utendaji wote wa mfumo (ufikiaji wa kadi ya SD, udhibiti ulioongozwa, kuhisi joto / unyevu, kudhibiti sauti, usanisi wa hotuba) Kifaa kinaweza kusanidiwa kikamilifu kupitia faili za maandishi zilizohifadhiwa kwenye Kadi ya SD ya ndani, ingawa upimaji na vigezo vya usalama wa mtandao pia vinaweza kusanidiwa kupitia machapisho ya mbali ya MQTT.

Ninahitaji sehemu gani?

Tazama muswada wa vifaa hapa

Ninahitaji programu gani?

  • Kitambulisho cha Arduino 1.6.9,
  • Arduino IDE imesanidiwa kupanga programu ya ESP8266-07 (sawa na hii). Kisha sanidi IDE kama inavyoonyeshwa katika maelezo ya kina yaliyotolewa kwenye mchoro wa programu hapa,
  • Python v3.5.2 ikiwa unataka kutumia uwezo wa jaribio la kiotomatiki, maelezo hapa

Ninahitaji zana gani?

  • Darubini angalau x3 (kwa uunganishaji wa SMT),
  • Chombo cha crimping ya kiunganishi cha molex (kwa viunganisho vya JST),
  • Chuma cha kutengenezea cha SMD (na kalamu ya mtiririko wa maji na solder iliyochorwa),
  • Bisibisi (anuwai),
  • Bunduki ya joto,
  • Drill (anuwai),
  • Kukata dawa ya mkono,
  • Faili (anuwai),
  • Dremel (bits anuwai),
  • Makamu madhubuti (mdogo na mkubwa, kama mwenzi mweusi na mwenye staha),
  • Scalpel,
  • Wafanyabiashara wa Vernier (kutumika kupima upotoshaji na muhimu kwa kupima vifaa vya PCB),
  • Spanners na madereva ya Nut (anuwai),
  • Kijani kibaya (cha kutengeneza SMT),
  • Junior Hacksaw,
  • Piga (na bits kadhaa za kuchimba),
  • Koleo nzuri (kumweka na pua pua),
  • Wakataji wa kuvuta,
  • - DMM na ukaguzi wa mwendelezo unaosikika,
  • Upeo wa dijiti ya kituo (inayofaa kwa ishara za utatuzi)

Ninahitaji ujuzi gani?

  • Uvumilivu mwingi,
  • Ubunifu mwingi wa mwongozo na uratibu bora wa mikono / jicho,
  • Ujuzi bora wa kuuza,
  • Ujuzi bora wa utengenezaji,
  • Uwezo wa kuibua katika vipimo 3,
  • Ujuzi fulani wa ukuzaji wa programu na 'C' (ikiwa unataka kuelewa nambari ya chanzo),
  • Ujuzi fulani wa Python (jinsi ya kusanikisha na kutumia hati, ikiwa unataka kutumia upimaji wa kiotomatiki),
  • Ujuzi wa Arduino na ni IDE,
  • Ujuzi mzuri wa umeme,
  • Uelewa fulani wa mtandao wako wa nyumbani.

Mada Zilizofunikwa

  • Mwongozo wa mtumiaji
  • Muhtasari wa Mzunguko
  • Utengenezaji na Mkutano wa PCB
  • Uzushi
  • Muhtasari wa Mfumo wa Programu
  • Muhtasari wa Programu
  • Usawazishaji wa Sensorer
  • Mkutano wa Kutaja Mada ya MQTT
  • Utatuzi na Kutafuta Kosa
  • Kupima Ubunifu
  • Hitimisho
  • Marejeo Imetumika

Viungo vya Mfululizo Kwa Sehemu ya 11: IoT Desktop Console. Sehemu: 11 IoT, Home Automation

Hatua ya 1: Mwongozo wa Mtumiaji

Mwongozo wa mtumiaji
Mwongozo wa mtumiaji
Mwongozo wa mtumiaji
Mwongozo wa mtumiaji
Mwongozo wa mtumiaji
Mwongozo wa mtumiaji

Picha 1 hapo juu inaonyesha mbele ya Synthesizer ya Hotuba ya Retro na picha 2 nyuma.

Mbele ya Ufungaji

  1. Grill ya Spika
  2. 3.5mm Earphone Jack: Spika kuu imelemazwa wakati jack 3.5mm imeingizwa.
  3. LED Nyekundu: Taa hii inaangazia wakati neno linazungumzwa wakati hotuba ilianzishwa kupitia ombi la
  4. LED ya Bluu: Taa hii inaangazia wakati neno linazungumzwa wakati hotuba ilianzishwa kupitia ombi la MQTT IoT.

Ufungaji Nyuma

  1. Rudisha Kitufe: Imetumika kuweka upya ngumu kifaa cha ESP8266-07 IoT.
  2. Kitufe cha Flash: Unapotumiwa pamoja na Kitufe cha Rudisha inaruhusu kuwasha tena ESP8266-07.
  3. Wifi ya Antena kuziba (kuziba SMA): Kwa Antena ya nje ya WiFi inayotoa upunguzaji wa njia ndogo ya RF kwani kufungwa ni aluminium.
  4. Bandari ya Programu ya nje: Ili kuondoa hitaji la kufunua wigo ili ufikie ESP8266-07 kwa madhumuni ya kupanga tena programu. Pini za programu za ESP8266-07 zimeletwa kwenye bandari ya programu ya nje. Picha 3 ni adapta ya programu.
  5. LED ya Kijani: Huu ndio mfumo wa IoT ulioongozwa na hutumiwa kuonyesha hali ya utambuzi wa kifaa na kuanza na wakati unafanya kazi.
  6. Joto la nje / Sura ya Unyevu (AM2320)
  7. Slot ya Kadi ya SD: Hii inashikilia data zote za usanidi / usalama pamoja na kurasa za seva ya wavuti.
  8. Ugavi wa 2.1mm jack 6vdc

Hatua ya 2: Muhtasari wa Mzunguko

Muhtasari wa Mzunguko
Muhtasari wa Mzunguko
Muhtasari wa Mzunguko
Muhtasari wa Mzunguko

Kifaa cha Hotuba ya Retro Synth kina PCB mbili;

  • RetroSpeechSynthIoTBoard: Hii ni generic, inatumika tena ESP8266-07 / 12 / 12E / 13 PCB
  • RetroSpeechSynthBoard: Hii ni generic SP0256-AL2 PCB

Hotuba ya Retro Synth IoT Bodi

Bodi hii inaruhusu ama uuzaji wa moja kwa moja wa ESP8266-07 / 12 / 12E / 13 au 0.1 soketi za lami zinazobeba PCB ya ESP8266.

Bodi hiyo ilibuniwa kupanua I / O juu ya unganisho la I2C na inaweza kusaidia kiwango cha usambazaji cha 3v3 au 5v kupitia Q1, Q2, R8-13.

Uunganisho kwa bodi unafanikiwa kupitia moja ya vichwa viwili J2 na J4, Ribbon ya njia 8 ya DIL IDC au njia 5 JST / Molex.

Utoaji wa U2 na U3 3.3v na 5v kwenye kanuni ya usambazaji wa bodi. Vinginevyo ikiwa uwezo mkubwa wa sasa unahitajika, vidhibiti vya bodi ya serial shunt vinaweza kushikamana kupitia viunganishi J10 na J11 mtawaliwa.

Viunganishi J1 na J3 hutoa msaada wa kadi ya SD ya nje juu ya SPI. J1 imeundwa kwa Molex ya njia 8 na J3 ina pini ya moja kwa moja kwa msaada wa utangamano wa pini kwa mbali rafu ya kadi ya SD ya PCB na msaada wa 3v3 au 5v.

Hotuba ya Retro Hotuba ya Synth

Udhibiti wa bodi hii ni juu ya muunganisho unaofuata wa I2C 5v kupitia J1, J5 au J6, njia 4 za JST / Molex, njia-8 za DIL IDC au kiunganishi cha njia-8 cha IDC.

U2 MPC23017 hutoa I2C kwa interface sawa na U3 SP0256-AL2 na LEDS D1 (Kijani), D2 (Nyekundu) na D3 (Bluu). Pato la Hotuba Synth hulishwa kwa sauti ya sauti CR1 TBA820M kupitia sufuria ya analog RV1 au sufuria ya dijiti U1 MCP4561.

Pot Pot U1 pia inadhibitiwa kupitia I2C inayofuata 5v.

Kumbuka: Kifaa cha ESP8266-07 kilichaguliwa kwa kuwa ina kiunganishi muhimu cha IPX RF kinachoruhusu Antena ya nje ya WiFi kuongezwa kwenye boma la aluminium.

Hatua ya 3: Utengenezaji wa PCB na Mkutano

Utengenezaji na Mkutano wa PCB
Utengenezaji na Mkutano wa PCB
Utengenezaji na Mkutano wa PCB
Utengenezaji na Mkutano wa PCB
Utengenezaji na Mkutano wa PCB
Utengenezaji na Mkutano wa PCB
Utengenezaji na Mkutano wa PCB
Utengenezaji na Mkutano wa PCB

Picha 1 na 2 zinaonyesha mikusanyiko ndogo iliyokamilishwa na yenye waya iliyoko kwenye sehemu ndogo ya alumini.

PCB hizo mbili zilibuniwa kwa kutumia Kicad v4.0.7, iliyotengenezwa na JLCPCB na kukusanywa na mimi na kuonyeshwa hapo juu picha 3 hadi 13.

Hatua ya 4: Upotoshaji

Uzushi
Uzushi
Uzushi
Uzushi
Uzushi
Uzushi

Picha ya 1 inaonyesha mpangilio wa mtindo wa Mwongozo wa Haynes wa sehemu zote zilizopangwa kabla ya mkutano wa mwisho.

Picha 2… 5 zinaonyesha picha kadhaa wakati wa utengenezaji wa ua na vibali kidogo.

Hatua ya 5: Muhtasari wa Mfumo wa Programu

Muhtasari wa Mfumo wa Programu
Muhtasari wa Mfumo wa Programu
Muhtasari wa Mfumo wa Programu
Muhtasari wa Mfumo wa Programu

Kifaa hiki cha awali cha Hotuba ya IoT Retro kina vifaa vikuu sita vya programu kama inavyoonekana kwenye picha 1 hapo juu.

Kadi ya SD

Huu ni Mfumo wa nje wa Kuweka Kiwango cha SD SPI na unatumiwa kushikilia habari ifuatayo (angalia picha 2 hapo juu);

  • Ikoni na 'Hotuba ya Usanidi wa Mazungumzo ya Hotuba' index.htm: Imetumiwa na kifaa cha IoT wakati haiwezi kushikamana na mtandao wako wa IoT WiFi (kawaida kwa sababu ya habari isiyo sahihi ya usalama, au matumizi ya mara ya kwanza) na inampa mtumiaji njia ya kusanidi sensorer kwa mbali bila hitaji la kuwasha tena yaliyomo mpya ya SD. Ina pia inashikilia index1.htm, mqtt.htm na sp0256.htm, hizi ni kurasa za wavuti zinazotumiwa hapa kupatikana kwenye kivinjari cha wavuti kuruhusu udhibiti mdogo wa synth ya hotuba. juu ya
  • Habari ya Usalama: Hii inashikilia habari inayotumiwa kwa nguvu na kifaa cha IoT kuungana na mtandao wako wa IoT WiFi na MQTT Broker. Habari iliyowasilishwa kupitia 'Ukurasa wa Kwanza wa Usanidi wa Hotuba' imeandikwa kwa faili hii ('secvals.txt').
  • Habari ya Usawazishaji: Habari zilizomo ndani ya faili ('calvals1.txt' na 'calvals2.txt') hutumiwa kurekebisha sensorer za joto / unyevu kwenye bodi ikiwa ni lazima. Vipimo vya upimaji vinaweza kuandikwa kwa kifaa cha IoT kupitia amri za MQTT kutoka kwa broker wa MQTT au kwa kuwasha tena kadi ya SD. 'calvals1.txt' inahusu sensa ya AM2320 na 'calvals2.txt' kwa DHT22.
  • Thamani za mfumo zinazoweza kusanidiwa na mtumiaji: Habari iliyo ndani ya faili hii ('confvals.txt'), iliyochaguliwa na mtumiaji, inadhibiti majibu fulani ya mfumo, kama vile kiwango cha kwanza cha ujazo wa dijiti, tangazo la 'mfumo tayari' wa auto kwenye usajili wa wakala wa MQTT nk.

mDNS Server

Utendaji huu huombwa wakati kifaa cha IoT kimeshindwa kuungana na mtandao wako wa WiFi kama kituo cha WiFi na badala yake imekuwa kituo cha kufikia WiFi kitu sawa na router ya ndani ya WiFi. Katika kesi ya router kama hiyo unaweza kuungana nayo kwa kuingiza Anwani ya IP ya kitu kama 192.168.1.1 (kawaida huchapishwa kwenye lebo iliyowekwa kwenye sanduku) moja kwa moja kwenye bar ya kivinjari chako cha URL ambapo utapokea ukurasa wa kuingia kuingia jina la mtumiaji na nywila kukuwezesha kusanidi kifaa. Kwa ESP8266-07 katika hali ya AP (Njia ya Ufikiaji) kifaa chaguomsingi kwa anwani ya IP 192.168.4.1, hata hivyo na seva ya mDNS inayoendesha inabidi tu uingie jina la kibinadamu la 'SPEECHSVR.local' kwenye upau wa kivinjari cha URL ili tazama 'Ukurasa wa Kwanza wa Usanidi wa Hotuba'.

Mteja wa MQTT

Mteja wa MQTT hutoa utendaji wote muhimu kwa; unganisha kwenye broker yako ya mtandao wa IoT MQTT, jiandikishe kwa mada unayochagua na uchapishe mzigo wa malipo kwa mada uliyopewa. Kwa kifupi hutoa utendaji wa msingi wa IoT.

Seva ya Wavuti ya

Seva hii ya wavuti ina malengo mawili;

  1. Ikiwa kifaa cha IoT hakiwezi kuungana na mtandao wa WiFi ambao SSID, P / W nk hufafanuliwa katika faili ya Habari ya Usalama iliyowekwa kwenye Kadi ya SD kifaa hicho kitakuwa Kituo cha Kufikia. Mara baada ya kushikamana na mtandao wa WiFi uliyopewa na Kituo cha Ufikiaji, uwepo wa Seva ya Wavuti ya HTTP hukuruhusu kuungana moja kwa moja na kifaa na kubadilisha usanidi wake kupitia utumiaji wa Kivinjari cha Wavuti cha HTTP ni kusudi la kutumikia Usanidi wa Hotuba ya Synth Ukurasa wa wavuti 'ukurasa ambao pia umeshikiliwa kwenye Kadi ya SD.
  2. Mara tu kifaa cha awali cha Hotuba ya IoT Retro kimeunganishwa kwenye mtandao wa WiFi na broker wa MQTT, ikiwa itapatikana, Seva ya Wavuti ya HTTP itatumikia moja kwa moja ukurasa wa wavuti wa HTTP ikiruhusu udhibiti mdogo wa kifaa cha IoT kuongea uteuzi wa misemo iliyowekwa na uwezo wa zungusha mbele mbili Nyekundu na Bluu za Bluu.

Kituo cha WiFi

Utendaji huu unakipa kifaa IoT uwezo wa kuungana na mtandao wa ndani wa WiFi ukitumia vigezo kwenye faili ya Habari ya Usalama, bila kifaa chako cha IoT hakitaweza kujisajili / kuchapisha kwa MQTT Broker.

Kituo cha Ufikiaji wa WiFi

Uwezo wa kuwa Kituo cha Ufikiaji cha WiFi ni njia ambayo kifaa cha IoT kinakuruhusu kuungana nayo na kufanya mabadiliko ya usanidi kupitia kituo cha WiFi na kivinjari (kama Safari kwenye Apple iPad). Sehemu hii ya ufikiaji inatangaza SSID = "SPEECHSYN" + tarakimu 6 za mwisho za anwani ya MAC ya kifaa cha IoT. Nenosiri la mtandao huu uliofungwa huitwa jina la 'PASSWORD'

Hatua ya 6: Muhtasari wa Programu

Muhtasari wa Programu
Muhtasari wa Programu
Muhtasari wa Programu
Muhtasari wa Programu
Muhtasari wa Programu
Muhtasari wa Programu

Utangulizi

Ili kufanikiwa kukusanya nambari hii ya chanzo utahitaji nakala ya ndani ya nambari na maktaba zilizoainishwa hapa chini katika Hatua ya 12, Marejeo Yaliyotumiwa. Ikiwa hauna hakika jinsi ya kusanikisha maktaba ya Arduino nenda hapa.

Maelezo ya jumla

Programu hiyo hutumia mashine ya serikali kama inavyoonyeshwa kwenye picha 1 hapo juu (nakala kamili ya chanzo katika ghala langu la GitHub hapa). Kuna majimbo 5 kuu kama ilivyoainishwa hapa chini;

  • NDANI YAKE

    Hali hii ya kuanzisha ni serikali ya kwanza iliyoingia baada ya nguvu

  • NOCONFIG

    Hali hii imeingizwa ikiwa baada ya kuzima faili batili au iliyokosekana ya siri.txt imegunduliwa. Wakati wa hali hii Ukurasa wa Usanidi unaonekana

  • INASUBIRI NW

    Hali hii ni ya mpito, imeingia wakati hakuna muunganisho wa mtandao wa WiFi

  • INASubiri MQTT

    Hali hii ni ya mpito, imeingia baada ya muunganisho wa mtandao wa WiFi na wakati hakuna unganisho kwa broker wa MQTT kwenye mtandao huo

  • TENDAJI

    Hii ndio hali ya kawaida ya utendaji iliyoingia mara tu muunganisho wa mtandao wa WiFi na unganisho la Broker la MQTT limeanzishwa. Ni wakati wa hali hii hali ya joto, joto na unyevu kwenye IoT Retro Synthesis Synthesis Device huchapishwa mara kwa mara kwa MQTT Broker. Katika hali hii Ukurasa wa Nyumbani wa Hotuba unaonekana

Matukio ya kudhibiti mabadiliko kati ya majimbo yameelezewa kwenye picha 1 hapo juu. Mabadiliko kati ya majimbo pia yanatawaliwa na vigezo vifuatavyo vya SecVals;

  • Anwani ya IP ya Broker ya 1 ya MQTT. Katika fomu ya nukta yenye nukta AAA. BBB. CCC. DDD
  • Bandari ya 2 ya Broker ya MQTT. Katika fomu kamili.
  • Uunganisho wa 3 wa MQTT Broker unajaribu kufanya kabla ya kugeuza kutoka hali ya STA hadi hali ya AP. Katika fomu kamili.
  • Mtandao wa 4 wa SSID SSID. Katika maandishi ya fomu ya bure.
  • Nenosiri la Mtandao la 5 la WiFi. Katika maandishi ya fomu ya bure.

Kama ilivyoelezwa hapo juu ikiwa kifaa cha IoT hakiwezi kuungana kama Kituo cha WiFi kwa mtandao wa WiFi ambaye SSID na P / W hufafanuliwa katika secvals.txt iliyowekwa kwenye Kadi ya SD kifaa cha IoT kitakuwa Kituo cha Kufikia. Baada ya kushikamana na eneo hili la ufikiaji itatumika "Ukurasa wa Kwanza wa Usanidi wa Hotuba" kama inavyoonyeshwa hapo juu kwenye Pic 2 (kwa kuingiza 'SPEECHSVR.local' au 192.168.4.1 kwenye upau wa anwani za URL za vivinjari vyako). Ukurasa huu wa nyumbani unaruhusu usanidi upya wa Kifaa cha Usanidi wa Hotuba ya IoT Retro kupitia kivinjari cha

Ufikiaji wa Kijijini wakati katika hali ya ACTIVE

Mara baada ya kushikamana na MQTT Broker inawezekana pia kurekebisha tena na kusanidi tena kifaa kupitia machapisho ya mada ya MQTT. Faili ya calvals.txt ina ufikiaji wa R / W na secvals.txt ina maandishi ya ufikiaji wazi tu.

Pia kama ilivyoelezwa hapo juu, mara moja katika hali inayotumika inawezekana kupata Hotuba Synth kupitia kiolesura cha HTTP kwa kuingiza 'SPEECHSVR.local' au 192.168.4.1 kwenye bar ya anwani za URL za vivinjari vyako. Muunganisho huu msingi wa HTTP unaruhusu udhibiti wa kimsingi wa Hotuba Synth. Picha 3, 4 na 5 zinaonyesha kurasa za wavuti zinazopatikana.

Utatuzi wa mtumiaji

Wakati wa mlolongo wa buti Mfumo wa kijani wa kifaa cha IoT ulioongozwa nyuma ya ua hutoa maoni yafuatayo ya utatuzi;

  • 1 flash fupi: Hakuna faili ya Config iliyoko kwenye Kadi ya SD (secvals.txt)
  • 2 kuangaza kwa muda mfupi: Kifaa cha IoT kinajaribu kuungana na mtandao wa WiFi
  • Mwangaza unaoendelea: Kifaa cha IoT kinajaribu kuungana na MQTT Broker
  • Imezimwa: Kifaa kinatumika.

Utendaji wa IoT Retro Synthesis Utendaji wa Kifaa katika Jimbo la ACTIVE

Mara moja katika hali ya ACTIVE ESP8266 inaingia kitanzi cha kuendelea kuita kazi zifuatazo; timer_update (), angaliaTemperatureAndHumidity () na handleSpeech (). Matokeo halisi ambayo yameundwa kuwasilisha mtumiaji na kiolesura cha HTTP au MQTT, huduma kwa usawa ni processor ya hotuba ya bodi na fonimu juu ya mahitaji na kuchapisha maadili ya mazingira ya kawaida juu ya MQTT.

Orodha kamili ya usajili wote wa mada na machapisho pamoja na maadili ya malipo hujumuishwa katika nambari ya chanzo.

Hatua ya 7: Usawazishaji wa Sensorer

Usawazishaji wa Sensorer
Usawazishaji wa Sensorer

Wakati kifaa cha IoT kina nguvu, kama sehemu ya mlolongo wa buti faili mbili zilizoitwa 'cavals1.txt' na 'cavals2.txt' zinasomwa kutoka Kadi ya SD.

Yaliyomo kwenye faili hizi ni viboreshaji vya upimaji kama ilivyoonyeshwa hapo juu kwenye picha 1.

  1. 'cavals1.txt': Inatumiwa na AM2320 ya nje
  2. 'cavals2.txt': Inatumiwa na DHT22 ya ndani

Vizuizi hivi vya upatanishi hutumiwa kurekebisha usomaji uliopatikana kutoka kwa sensorer mbili ili kuzileta sawa na kifaa cha kumbukumbu. Kuna thamani moja zaidi ambayo hufafanua mkakati wa kuripoti kwa kila kifaa na imeelezewa hapo chini pamoja na utaratibu unaofuatwa wa kusawazisha sensorer.

Mkakati wa Kuripoti

Kigezo hiki huamua jinsi sensorer ya mbali inaripoti mabadiliko yoyote ya mazingira yaliyomo ndani yake. Ikiwa thamani ya 0 imechaguliwa sensor ya kijijini itachapisha mabadiliko yoyote ambayo inaona katika hali ya joto au unyevu kila wakati sensa husika inasomwa (takriban kila sekunde 10). Thamani nyingine yoyote itachelewesha kuchapishwa kwa mabadiliko kwa dakika 1… 60. Kubadilisha parameter hii inaruhusu uboreshaji wa trafiki ya mtandao wa MQTT. Ikumbukwe data ya joto na unyevu kutoka kwa DHT22 inasomeka kwa sababu ya mapungufu ya sensorer.

Usawazishaji wa joto

Ili kupima sensa ya joto nilifuata mchakato ule ule kama ilivyoainishwa hapa hatua ya 4, tena kwa kutumia uhusiano rahisi wa y = mx + c. Nilitumia Joto la IoT, Sensor ya Unyevu # 1 kama kifaa cha kumbukumbu. Maadili kutoka kwa sensor iko katika digrii celcius.

Upimaji wa unyevu

Kwa kuwa sina njia yoyote ya kurekodi kwa usahihi au hata kudhibiti unyevu wa kawaida, kurekebisha sensa nilitumia njia sawa na hiyo hapo juu hatua ya 4, tena kwa kutumia Sensor # 1 kama rejeleo. Walakini hapo juu ilisema, hivi karibuni nimepata nakala bora kwenye wavuti inayoelezea jinsi ya kusawazisha sensorer za unyevu. Naweza kujaribu njia hii wakati mwingine baadaye. Maadili kutoka kwa sensor iko katika%% ya unyevu wa karibu.

Hatua ya 8: Mkutano wa Kutaja Mada ya MQTT

Mkutano wa Kutaja Mada ya MQTT
Mkutano wa Kutaja Mada ya MQTT
Mkutano wa Kutaja Mada ya MQTT
Mkutano wa Kutaja Mada ya MQTT

Kama nilivyosema katika Agizo la mapema (hapa) nilikaa kwenye mada inayoita mkutano uliowekwa kwenye picha 1 hapo juu.

Yaani, 'AccessMethod / DeviceType / WhichDevice / Action / SubDevice' Sio kamili lakini hairuhusu vichujio muhimu kutumiwa kuona matokeo yote ya sensa kwa mada ya parametric kwa hivyo kuruhusu kulinganisha rahisi kama kwenye picha 2 hapo juu na MQTTSpy.

Mradi huu ni tukio la kwanza ambapo kifaa kimoja kina zaidi ya chanzo kimoja cha aina moja ya uchapishaji. yaani. Sensorer mbili za joto / unyevu, kutoka kwa vifaa vidogo vya ndani na nje.

Pia inasaidia vikundi vya kimantiki vinavyoweza kupanuliwa kwa utendaji ndani ya kifaa kilichopewa IoT.

Katika kutekeleza mada hizi kwenye programu nilitumia minyororo ya mada ngumu yenye vitambulisho vya nambari vilivyowekwa, vilivyopachikwa kwa kila kifaa tofauti na kutengeneza mada kwa wakati unaofaa ili kuokoa kwenye RAM na kuweka utendaji juu.

Kumbuka: Ikiwa haujui jinsi ya kutumia MQTTSpy tazama hapa 'Kuanzisha Dalali ya MQTT. Sehemu ya 2: IoT, Home Automation '

Hatua ya 9: Utatuzi na Kutafuta Kosa

Utatuzi na Kutafuta Kosa
Utatuzi na Kutafuta Kosa

Kwa jumla, kwa miradi yangu ya kupendeza, inapowezekana huwa na muundo wa vifaa vya uwakilishi ambavyo programu hiyo imeundwa mimi mara chache huwa na maswala yoyote wakati wa kuunganisha programu hiyo kwenye vifaa vya jukwaa la mwisho.

Walakini, katika hafla hii nilikumbana na hitilafu ya kushangaza ya vipindi ambapo sauti zingine zilisikika lakini wengine hawakusikia.

Baada ya utatuaji wa kwanza wa PCB ya Hotuba Synth kutumia Arduino Uno kutoa simu na kudhibitisha bodi hii ilikuwa ikifanya kazi, nilichukua upeo kwa mistari ya I2C kati ya IoT PCB na Hotuba ya Synth PCB. Tazama Picha 1 hapo juu.

Unaweza kuona wazi 'jino la kuona' / makali ya kielelezo kwa ishara ya I2C kwenye athari.

Hii kawaida ni dalili ya I2C kuvuta maadili ni ya juu sana kuzuia voltage ya laini kupona haraka kwa kutosha kwenye mzunguko wazi wa kukimbia.

Kama 'kazi karibu' nilifananisha smt mbili za kuvuta vipinga R12 na R13 na 10Ks kutoa 4K7 na hakika ya kutosha Hotuba ya Synth 'iliingia maishani'

Aina hii ya kutofaulu ni kinyume na kile kinachoweza kutokea wakati wa kurekebisha aina hizi za miradi. Kwa jumla moduli nyingi za I2C zilizonunuliwa kutoka Ebay huwa zinakuja na vuta 10K au 4K7 tayari vimefungwa. Ikiwa unakusudia kutumia> moduli 5 I2C, kila moja ikiwa na vivutio vya 4K7, basi mzigo wa jumla ni 940R ambayo itakuwa kubwa sana kwa hatua ya pato la bwana. Marekebisho itakuwa de-solder yote lakini seti moja ya vizuia vuta kwenye kila moduli. Ikiwezekana yule aliye mbali zaidi na bwana.

Ncha muhimu na ya kuzingatia wakati wa kubuni vifaa vya elektroniki na vifaa vya I2C.

Hatua ya 10: Kupima Ubunifu

Image
Image
Kupima Ubunifu
Kupima Ubunifu
Kupima Ubunifu
Kupima Ubunifu

Upimaji ulifanywa kwa kutumia mbinu mbili; Mwongozo na Kujiendesha.

Ya kwanza, ya mwongozo, na iliyotumiwa kwa ujumla wakati wa ukuzaji wa nambari za kwanza ilikuwa ikitumia MQTT Spy kupeleleza mada zote zilizopatikana na kuangalia majibu yaliyochapishwa (yaliyoonyeshwa kwenye picha 2 hapo juu). Kwa kuwa hii ni mchakato wa mwongozo inaweza kuchukua muda na kukabiliwa na makosa wakati ukuzaji wa nambari unaendelea, ingawa utekelezaji wa mwongozo unawezesha chanjo ya 100%.

MQTTSpy ilichaguliwa kwa upimaji wa mwongozo kwa sababu ni zana bora ya kupangilia malipo uliyopewa na kuichapisha kwa mada yoyote kwa urahisi. Inaonyesha pia logi iliyo wazi, iliyowekwa mhuri ambayo ni muhimu sana kwa utatuzi (picha 3 hapo juu).

Njia ya pili, ya kiotomatiki ilichukuliwa kwani nambari ya chanzo ilizidi kuwa ngumu (> mistari 3700). Kuongezeka kwa ugumu kunamaanisha mizunguko ndefu ya upimaji wa mwongozo na vipimo ngumu zaidi. Ili kuboresha uaminifu, uamuzi na ubora wa vipimo, upimaji wa kiotomatiki ulitumika kupitia mtendaji wa jaribio la chatu (pic 1). Angalia Hatua # 10 katika hii inayoweza kufundishwa juu ya jinsi upimaji wa kiotomatiki ulivyoletwa. Nakala kamili ya vipimo vya kiotomatiki vilivyotumiwa katika hii inayoweza kufundishwa inapatikana hapa.

Video ya mlolongo wa jaribio la kiotomatiki inafanya kazi imeonyeshwa hapo juu. Mlolongo hufanya hatua zifuatazo;

  • Kujiendesha kupitia MQTT

    • Unganisha kwenye uti wa mgongo wa MQTT na utangaze 'Mfumo Tayari'
    • Zoezi la LED ya Kijani
    • Zoezi la LED Nyekundu
    • Zoezi la LED ya Zoezi
    • Angalia Pot Pot Digital inafanya kazi
    • Ongea kwa kutumia Fonimu
    • Ongea ukitumia Nambari za Hex za Fonimu
    • Ongea ukitumia nambari za kurekebisha misemo
    • Kidogo cha Dr Who na Daleks wanafurahi.
  • Kwa mkono kupitia HTTP / Chrome

    • Zoezi la LED ya Zoezi
    • Zoezi la LED Nyekundu
    • Sema vishazi vya kudumu 'Steven Quinn', 'System Ready' na 'Hello World'
    • Kuwa na seva ya HTTP, tumikia
      • Maelezo juu ya Chip ya Hotuba ya Synth
      • Maelezo ya MQTT

Hatua ya 11: Hitimisho

Hitimisho
Hitimisho

Ingawa ilichukua bidii kubwa na faili na visima n.k haswa kwa grille ya spika, nadhani matokeo ni ya kupendeza na inaweka ndani ya zuri zuri. Ningeweza kuifanya ndogo lakini ingehitaji kwenda kwenye PCB moja na kwa makusudi niliivunja kuwa mbili ili nipate kutumia tena PCB hizo baadaye kwa miradi mingine. Kwa hivyo ni maelewano ya furaha.

Programu inafanya kazi vizuri, kifaa cha IoT kimekuwa katika utendaji thabiti kwa muda mrefu sasa bila maswala yoyote.

Nimekuwa nikifuatilia joto na unyevu kupitia Grafana na kulinganisha na kifaa kilichopatikana pamoja. Maadili mawili yaliyomo yamekuwa yakiunganisha vizuri, ikimaanisha kuwa usawazishaji ni sawa (au angalau zinafanana).

Niliacha kutekeleza amri ya neno ('WFD / HotubaTH / 1 / Neno / Amri') kwa sababu niliishiwa na wakati na nilihitaji kuendelea. Ninaweza kutembelea tena hii ikiwa na wakati nitaanzisha hifadhidata ya MySQL. Hivi sasa ninatumia InfluxDB.

Hatua ya 12: Marejeleo Imetumika

Vyanzo vifuatavyo vilitumiwa kuweka hii inayoweza kufundishwa pamoja; Nambari ya chanzo ya Kifaa cha Usanidi wa Hotuba ya IoT Retro (hii ina nakala ya kila kitu)

https://github.com/SteveQuinn1/IoT_Retro_Speech_Synthesis_SP0256_AL2

Mshauri wa PubSub.h

  • Na: Nick O'Leary
  • Kusudi: Inawezesha kifaa kuchapisha au kujisajili kwenye mada za MQTT na Broker fulani
  • Kutoka:

DHT.h

  • Na: Adafruit
  • Kusudi: Maktaba ya Arduino kwa DHT11DHT22, nk Sensorer za Temp & Humidity
  • Kutoka:

Adafruit_AM2320.h / Adafruit_Sensor.h

  • Na: Adafruit
  • Kusudi: Maktaba ya Arduino kwa AM2320, n.k.
  • Kutoka:

MCP4561_DIGI_POT.h

  • Na: Steve Quinn
  • Kusudi: Maktaba ya Arduino ya MCP4561 potentiometer ya dijiti
  • Kutoka:

Adafruit_MCP23017.h

  • Na: Steve Quinn
  • Kusudi: Maktaba ya Arduino ya MCP23017 I2C Port Expander. Hii ni uma wa GITHub kutoka Adafruit-MCP23017-Arduino-Library, na Adafruit.
  • Kutoka:

Kwa kujifurahisha

https://haynes.com/en-gb/

Utengenezaji wa PCB

https://jlcpcb.com/

Kufunga Maktaba za Ziada za Arduino

https://www.arduino.cc/en/Guide/Libraries

Jinsi ya Kuangalia na Kuweka Sauti ya Unyevu

https://www.allaboutcircuits.com/projects/how-to-check-and-calibrate-a-humidity-sensor/? /

Hati ya Takwimu ya SP0256-AL2

https://www.futurebots.com/spo256.pdf

Duka la Chips za Hotuba

https://www.speechchips.com/shop/

Mashindano ya Arduino 2019
Mashindano ya Arduino 2019
Mashindano ya Arduino 2019
Mashindano ya Arduino 2019

Mkimbiaji Juu katika Mashindano ya Arduino 2019

Ilipendekeza: