Orodha ya maudhui:

Sensorer ya Uvujaji wa Maji kwenye ESP8266 + Micropython + Domoticz: Hatua 16 (na Picha)
Sensorer ya Uvujaji wa Maji kwenye ESP8266 + Micropython + Domoticz: Hatua 16 (na Picha)

Video: Sensorer ya Uvujaji wa Maji kwenye ESP8266 + Micropython + Domoticz: Hatua 16 (na Picha)

Video: Sensorer ya Uvujaji wa Maji kwenye ESP8266 + Micropython + Domoticz: Hatua 16 (na Picha)
Video: How to install R.O. UV Filter with Flow switch. 2024, Julai
Anonim
Sensorer ya Uvujaji wa Maji kwenye ESP8266 + Micropython + Domoticz
Sensorer ya Uvujaji wa Maji kwenye ESP8266 + Micropython + Domoticz
Sensorer ya Uvujaji wa Maji kwenye ESP8266 + Micropython + Domoticz
Sensorer ya Uvujaji wa Maji kwenye ESP8266 + Micropython + Domoticz

Wakati fulani uliopita, mke wangu aliniuliza nitengeneze sensor ya kuvuja maji. Aliogopa kwamba bomba kwenye chumba cha kuchemsha linaweza kuvuja, na maji yangefurika sakafu ya mbao iliyowekwa mpya. Na mimi kama mhandisi wa kweli nilichukua sensorer kama hiyo.

Kutoka kwa uzoefu wangu wa miaka 15 kama mhandisi wa matibabu, najua njia rahisi ya kugundua maji ni pini za chuma zilizopunguzwa na maji. Kanuni ya utendaji wa sensorer rahisi ni kwamba maji yanapaswa kufupisha pini mbili za chuma (au zaidi), na mara tu inapotokea, kengele husababisha.

Hatua ya 1: Vifaa

Vifaa
Vifaa

Kwa mradi huu tunahitaji:

1. Moduli ya ESP8266 - 01

2. HT7333 3.3V MS Low Dropout Linear Regulator Power Supply modu

Tunahitaji moduli hii kupunguza voltage kutoka kwa betri hadi kiwango kinachokubalika kwa ESP8266. Kulingana na hati ya data lazima kuwe na uingizaji wa 3V hadi 3.6V. Moduli hii inatupa 3.3V.

3. Betri. Ninatumia betri ya 3, 7V Li-ion 400mAh. Kweli unaweza kutumia chanzo kingine chochote cha umeme kinachofaa. Betri ya 18650 ni chaguo nzuri pia. Wakati unachagua betri kumbuka kuwa ESP "inakula" karibu 200mA ambayo inaunganisha kwenye mtandao wa WiFi, na karibu 60mA hutumiwa wakati bodi inapakia data kwenye seva.

4. Bodi ya kuchaji betri ya Lipo ya TP4056.

5. Pololu mini pushbutton Power switch Inapendeza sana bodi ndogo. Inatuacha tubadilishe moduli ya ESP tu wakati maji hugunduliwa. Huna haja ya kuweka ESP ON. Kwa hivyo ni nzuri kwa kuokoa malipo ya betri.

6. Makazi7. Zima mbili-ZIMA-ZIMA. Mstari mmoja hutumikia kuwasha kifaa. Laini ya pili ni ya kujaribu - ni mzunguko mfupi bila maji, kutujulisha ni kifaa kinachofanya kazi au la.

8. Raspberry Pi kompyuta ndogo

Ninatumia Raspberry Pi Zero. Ni nguvu ya kutosha kuendesha seva ya Domoticz.

Hatua ya 2: Programu

Kwenye PC yako:

1. esptool imewekwa, kwa moduli za kufuta na firmware inayowaka

2. Ampy imewekwa, kwa kuangaza programu yako

3 Python 3.6 au zaidi ilipendekeza

4. Mhariri wowote wa nambari unayotaka. Rahisi - Python IDLE ambayo kawaida huwekwa na Python. Ninatumia Pycharm / Atomu au Anaconda Spyder Kwenye rasiberi Pi

5. Seva ya Domoticz imewekwa kwenye Raspberry Pi (au PC ya kawaida chini ya Windows au Linux)

Hatua ya 3: Andaa Raspberry Pi - Sakinisha Domoticz

Kwa hivyo, chukua RPi yako na usakinishe mfumo unaofaa wa kuendesha seva ya Domoticz.

Unaweza kufuata maagizo haya.

Ninatumia Raspbian Stretch na Desktop kutoka hapa:

Hatua inayofuata ni kusakinisha seva ya Domoticz kwenye PC yako. Unaweza kutumia maagizo hapa au hapa:). Usiogope, sio ngumu sana. Ni wazi unahitaji kukimbia kwenye terminal yako:

curl -L kufunga.domoticz.com | Sudo bash

Na ndio hiyo:) zaidi au chini. Usanidi wa Domoticz

Sasa kwa kuwa seva yetu iko tayari, tunaweza kuipata kutoka kwa kivinjari chochote cha wavuti, pamoja na kutoka kwa kompyuta kibao kwa kuingiza URL ifuatayo: https:// IP_domoticz: 8080

Hatua ya 4: Usanidi wa Domoticz

Usanidi wa Domoticz
Usanidi wa Domoticz

Sasa kwa kuwa seva yetu iko tayari, tunaweza kuipata kutoka kwa kivinjari chochote, ikiwa ni pamoja na kutoka kwa kompyuta kibao kwa kuingiza URL ifuatayo: https:// IP_domoticz: 8080

Hatua ya 5: Rekebisha Mipangilio ya Maombi

Rekebisha Mipangilio ya Programu
Rekebisha Mipangilio ya Programu
Rekebisha Mipangilio ya Programu
Rekebisha Mipangilio ya Programu

Kuna mipangilio anuwai ya programu ambayo inaweza kuwekwa kupitia Usanidi | Menyu ya mipangilio.

Menyu ya Kuweka na tabo anuwai hukuruhusu kuingiza vigezo vya kibinafsi muhimu kwa mfumo bora wa utendaji. Baada ya kuingiza data kwenye uwanja, lazima uwahifadhi kwa kubonyeza kitufe chekundu "Tumia Mipangilio". Baada ya kitendo hiki sehemu zote za Nenosiri, ambazo zilikuwa tupu katika ufikiaji wa kwanza, zitaonekana na kamba ndefu ya nyota, hata kama hazijatumika.

Baada ya kuweka usanidi kuu kwenye ukurasa wa "Mfumo", bonyeza "Arifa". Hapa tunahitaji kurekebisha ni aina gani ya arifa tunazotumia.

Hatua ya 6: Arifa za Usanidi

Sanidi Arifa
Sanidi Arifa

Arifa zinaweza kutumwa kwa mfano wakati swichi inasukuma, matumizi ya umeme ni ya juu sana, joto hadi juu na kwa chaguzi nyingi zaidi.

Kwa upande wetu arifa zinapaswa kutumwa mara tu maji yalipogunduliwa na chombo hicho. Kwa hivyo badilisha tu hizo, unataka kutumia. Pia kawaida unahitaji kifunguo cha API ili arifa ifanye kazi. Kukimbia mbele kidogo, nitasema kwamba nilijaribu Pushover, Pushsafer na Pushbullet. Na nilikaa na Pushover. Mwisho nitaambia kwanini.

Maneno machache kuhusu jinsi arifa zinavyofanya kazi. Unahitaji kuwa na akaunti kwenye Pushbullet, Pushover au kurasa zingine ambazo ungependa kutumia. Pia utahitaji programu kwenye simu yako ya rununu au PC.

Pata ufunguo wa API, na uweke kwenye ukurasa hapo juu. Unaweza kujaribu arifa kwa kubofya "Mtihani". Ikiwa ufunguo wa API ni sahihi, unapaswa kupata arifa za majaribio kwenye simu yako ya rununu.

Mara tu sensor inapohisi maji, ESP inawasha na kutuma ombi kwa seva ya Domoticz katika muundo wa JSON. Kuliko ikiwa hali ya kuchochea tukio (kukutumia simu ya rununu) imeridhika, Domoticz anatuma arifa hiyo.

Baadaye nitarudi kwenye "hafla".

Hatua ya 7: Sanidi Mawasiliano kwa Vifaa vya Vifaa

Sanidi Mawasiliano kwa Kifaa (Vifaa)
Sanidi Mawasiliano kwa Kifaa (Vifaa)
Sanidi Mawasiliano kwa Kifaa (Vifaa)
Sanidi Mawasiliano kwa Kifaa (Vifaa)
Sanidi Mawasiliano kwa Kifaa (Vifaa)
Sanidi Mawasiliano kwa Kifaa (Vifaa)

Kabla ya kutumia programu ya Domoticz kudhibiti vifaa au kusoma sensorer lazima usanidi mawasiliano kwa vifaa vya vifaa. Chagua Usanidi | Vifaa vya kuongeza vifaa. Vifaa havitaonekana hadi vifaa vifaavyo kuongezwa.

Programu ya Domoticz inasaidia vifaa vingi vya vifaa asili. Kwa upande wetu kusoma sensor yetu ya mafuriko tunahitaji kuongeza vifaa vinavyoitwa "Dummy" kutoka kwa orodha ya vifaa.

Wakati vifaa vimeongezwa muhtasari wa vifaa vyote vilivyoainishwa vitaonyeshwa. Vifaa vinaweza kuzimwa au kufutwa.

Vifaa vipya vinapaswa kuwa kwenye orodha na inapaswa kuwe na kitufe cha "Unda Sensorer Virtual".

Bonyeza kitufe hiki na uchague Aina ya Sensor "Tahadhari". Sasa tunapaswa kuongeza kifaa katika Domoticz ili iweze kufanya kazi.

Hatua ya 8: Ongeza Kifaa ndani ya Domoticz ili Uwe Active

Ongeza Kifaa ndani ya Domoticz ili Uwe Active
Ongeza Kifaa ndani ya Domoticz ili Uwe Active
Ongeza Kifaa ndani ya Domoticz ili Uwe Active
Ongeza Kifaa ndani ya Domoticz ili Uwe Active
Ongeza Kifaa ndani ya Domoticz ili Uwe Active
Ongeza Kifaa ndani ya Domoticz ili Uwe Active

Tafadhali kumbuka nambari hapa chini "IDX". Huu ni marejeleo ya kipekee ya kifaa hiki na tunahitaji baadaye katika hati yetu ya Python ili kushughulikia arifa. Katika kesi hii nambari ya IDX ni 1.

Wezesha kifaa kwa kubofya mshale wa kijani kushoto (kwenye picha yangu hapa chini ni bluu, kwa sababu ya kifaa kilichowekwa).

Jaza jina la kifaa, na bonyeza "ongeza".

Nenda kwenye menyu ya "Huduma" na kifaa chako kinapaswa kuorodheshwa hapo.

Sasa tunahitaji kupanga "tukio" kwa sensa yetu. Inamaanisha, kwamba tunahitaji kuambia kwa seva, nini cha kufanya ikiwa itapata ujumbe kutoka kwa sensa. Na ilikuwa tuseme mahali ngumu zaidi kwangu:).

Hatua ya 9: Haifanyi kazi kwa Njia hii…

Haifanyi kazi kwa Njia hii…
Haifanyi kazi kwa Njia hii…

Nilianza kwa kujaribu kupanga tukio kwenye / kifaa / ukurasa. Hii hapa chini sio yangu, lakini ni sawa kuonyesha.

Ikiwa unaamini kuwa utaangalia visanduku vingine na vitatumika, umekosea:) Haifanyi kazi kwa njia hii. Nadhani huduma hii hapa haijakamilika bado. Usisahau - ni programu ya chanzo wazi. Ok, baada ya masaa kadhaa nilipata suluhisho. Tunahitaji kutumia "Matukio" kutoka kwa menyu ya kunjuzi ya "Usanidi".

Baada ya kubofya "Matukio" unaweza kuunda hafla yako mwenyewe. Unaweza kuifanya nunua kuandika nambari katika Python au LUA, au tu kwa kutumia kitu kinachoitwa "Blockly". Nilichagua kutumia Blockly. Kuna njia mbili za kulazimisha seva kufanya kile unachotaka.

Hatua ya 10: Jenga Tukio kwa Njia Sawa 1

Jenga Tukio kwa Njia Sahihi 1
Jenga Tukio kwa Njia Sahihi 1

1. Tekeleza faili ya nje kupitia "Matukio", kwa kutumia ujumbe wa Kizuizi "Anza hati"

Hii inanifanyia kazi kwenye mashine ya Windows kikamilifu. Lakini sikufanikiwa na hii kwenye Raspbian kwenye Raspberry Pi yangu. Ninashuku kuwa kuna suala na ruhusa.

Hatua ya 11: Jenga Tukio kwa Njia Sawa 2

Jenga Tukio kwa Njia Sawa 2
Jenga Tukio kwa Njia Sawa 2

2. Tumia ujumbe wa "Tuma arifa na mada". Inafanya kazi kwa Raspbian. Chaguo hili linasaidia kutuma arifa kwa Pushsafe na Pushover.

Faida ya kutumia njia 1, ni kwamba ni rahisi zaidi. Unaweza kuchagua ikoni kuonyeshwa kwenye onyesho lako, sauti na kadhalika. "Tukio" langu linaonyeshwa kwenye picha hapo juu.

Ifuatayo, wacha tupange moduli ya ESP.

Hatua ya 12: Programu ya Moduli ya ESP8266-01

Kupangilia Moduli ya ESP8266-01
Kupangilia Moduli ya ESP8266-01

Wacha tuanze kutoka kuangaza moduli yetu ya ESP8266. Kawaida moduli hizo huja na firmware ya kiwandani. inawezekana kuwasiliana na moduli kwa kutumia amri zinazoitwa AT. Na pia programu hii hairuhusu kutumia moduli kama watawala wa kawaida. Kuzitumia kama watawala wa kawaida tunahitaji kufuta firmware ya kiwandani na kusanikisha mpya.

Ili kufanya hivyo tutatumia esptool. Kuliko tunahitaji kuunganisha moduli yetu na PC ili kufuta firmware. Ili kufanya hivyo unahitaji kibadilishaji cha TTL + vifaa vichache vya ziada. Lakini kuna njia rahisi:). Nunua tu kwa aliexpress au ebay USB kwa Moduli ya Adapter ya Wi-Fi ya ESP8266 ESP-01 w / CH340G.

Chomeka moduli ya ESP8266 kwenye kibadilishaji cha TTL kama inavyoonekana kwenye picha, na uiunganishe kwenye bandari ya USB.

Ikiwa una kibadilishaji sawa na mimi, basi kwa yenyewe unahitaji kubadilisha swichi kwa nafasi ya "Prog". Pata mahali ambapo esptool imewekwa (kawaida mahali pengine kama C: / Program Files (x86) Python36-32 / Scripts. Nenda kwenye folda hii, uzindua ushawishi wa amri hapo. Aina: python esptool.exe --port COM5 erase_flash

Kwa kweli chagua bandari sahihi. Kwa upande wangu ni COM5. Unaweza kuangalia bandari ambapo ESP imewekwa kutoka kwa Jopo la Udhibiti - Mfumo - Meneja wa Kifaa.

Sakinisha firmware (nimeichukua kutoka hapa: https://micropython.org/download#esp8266) kwa kuandika:

python esptool.exe --port COM5 --baud 460800 write_flash --flash_size = detect 0 C: / path_to_firmware / esp8266-20180511-v1.9.4.bin

Ok, sasa tuko tayari kupakia hati za micropython kwa ESP8266.

Ninatumia Adafruit MicroPython Tool (ampy) kwa hili.

Lakini siku hizi kuna chaguo jingine linaloitwa Esplorer. Programu hii na kiolesura cha mtumiaji, ikiruhusu kupakia faili kwenye moduli za ESP.

Unaweza kupata maagizo jinsi ya kusanikisha ampy hapa. Kwa hivyo, weka swichi kwenye kibadilishaji cha TTL kwenye nafasi ya "UART". Tutahitaji kupakia faili:

  • wifimgr.py - wifi meneja wa kuunganisha kwenye mtandao wa wifi
  • kuu.py - hati yetu kuu

Katika aina ya laini ya amri: ampy -port COM5 weka C: njia ya faili yako

Piga "ingiza". Baada ya sekunde chache unapaswa kuona laini ya amri tupu. Inamaanisha kuwa faili hiyo imepakiwa. Unaweza kuangalia orodha ya faili kwenye ESP kwa amri ya kutosha:

ampy -port COM5 ls

Kutoka kwa uzoefu wangu ni bora kupakia main.py baada ya kupakia faili zote muhimu. ni hivyo, kwa sababu mara tu utapakia main.py - Moduli ya ESP8266 itawasha upya na kuanza kutekeleza faili kuu.py. Kwa hivyo katika kesi hii ukijaribu kupakia faili nyingine, wakati mwingine mchakato wa kupakia utashindwa. Lakini haimaanishi kuwa kila kitu kimepotea:), jaribu tu mara ya pili, na utafaulu (tena, kutoka kwa uzoefu wangu).

Faili zote za mradi huu zinapatikana kutoka hapa:

Hatua ya 13: Unganisha kwenye Mtandao wako wa WiFi. Pata Arifa

Unganisha kwenye Mtandao wako wa WiFi. Pata Arifa
Unganisha kwenye Mtandao wako wa WiFi. Pata Arifa
Unganisha kwenye Mtandao wako wa WiFi. Pata Arifa
Unganisha kwenye Mtandao wako wa WiFi. Pata Arifa

ikiwa kila kitu ni sawa, anzisha tena moduli, kwa kuweka tena kibadilishaji cha TTL kwenye bandari ya USB ya PC yako.

Baada ya ESP kuanza, pata mtandao mpya wa WiFi uitwao "Wifimanager". Unganisha kwa hiyo na PC au simu yako, kisha nenda kwa anwani ya IP 192.168.4.1.. Hapa unaweza kuunganisha ESP yako na mtandao wa ndani wa WiFi. Chagua mtandao wa WiFi utakaotumia, andika nenosiri, gonga "Wasilisha".

Ikiwa kila kitu ni sahihi, utaona ujumbe "ESP imeunganishwa kwa mafanikio kwenye mtandao wa XXXX". ESP yako sasa imeunganishwa na mtandao wako wa WiFi na iko tayari. Mara tu ikiunganishwa na WiFi itaunganisha kwenye seva ya Domoticz. Mfupi lazima upokee arifa kwenye simu yako ya rununu.

Unaweza kufuatilia mchakato katika "Usanidi" / "Ingia".

Vua lia!:) Inafanya kazi. Sasa tunaweza kuendelea kukusanya sehemu zote pamoja, kulingana na mchoro wa chini hapa.

Hatua ya 14: Zuia Mchoro

Mchoro wa Kuzuia
Mchoro wa Kuzuia

Hakuna mengi ya kusema juu ya mchoro huu. Rahisi sana. Badilisha nguvu na kubadili S1. Kifaa hicho kimesimama kwa hali ya chini hadi kaptula fupi za maji "Kitambuzi cha maji" pini. Kisha "bodi ya Pololu" inawasha, na inatoa nguvu kwa kibadilishaji cha voltage. Moduli hii ya nguvu kulingana na chip ya HT7333, inabadilisha voltage kuwa 3.3V thabiti ya ESP8266. ESP inayofuata inawasha, na kutuma ujumbe kwa seva ya Domoticz.

Hatua ya 15: Matokeo na Hitimisho

Matokeo na Hitimisho
Matokeo na Hitimisho
Matokeo na Hitimisho
Matokeo na Hitimisho
Matokeo na Hitimisho
Matokeo na Hitimisho
Matokeo na Hitimisho
Matokeo na Hitimisho

Inafanya kazi. Kutuma arifa ilichukua hadi sekunde 10: unganisho kwa WiFi, kutuma arifa, kupata ujumbe wa kengele kwa simu yako.

Nimepanga sensorer kutuma kengele kila baada ya miaka 30, ikiwa maji yaligunduliwa. Sensorer inaweza kutuma hadi arifa 5 hadi 6 mpaka betri itolewe. Kifaa kama hicho kinaweza kutumiwa pia kuamua kiwango cha maji. Kile ningependa kuboresha.

1. Ili kuifanya ifanye kazi haraka. Nadhani nitajaribu kutumia teknolojia ya ESP-Sasa, ambayo inaniwezesha kuunganisha ESP kadhaa moja kwa moja. Katika kesi hii matumizi ya nguvu wakati wa unganisho ni ya chini sana na ni haraka zaidi. Kwa hivyo wazo ni kutumia ESP moja kama kitovu cha kuunganisha ESP zingine.

2. Tekeleza kengele ya kiwango cha betri. Sasa huwezi kujua kuna nguvu za kutosha kutuma ujumbe wa kengele au la. Nadhani katika kizazi kijacho cha sensor hii kutakuwa na kitufe maalum cha kupima malipo ya betri.

Mtumiaji atalazimika kushinikiza kitufe, na kiwango cha betri kitaonyeshwa.

Ilipendekeza: