Orodha ya maudhui:
- Hatua ya 1: Kuongeza Nambari kwa ESP8266
- Hatua ya 2: Kuanzisha TP-LINK yako Smart Plug
- Hatua ya 3: Kuweka Msaidizi wa Nyumbani
- Hatua ya 4: Hatua za Mwisho
Video: Kiwango cha umeme kinachodhibitiwa cha Joto la WiFi: Hatua 4
2024 Mwandishi: John Day | [email protected]. Mwisho uliobadilishwa: 2024-01-30 12:54
Katika seti hii ya maagizo tutaangalia jinsi ya kujenga uchunguzi wa joto unaowezeshwa na WiFi kwa kutumia ESP8266 rahisi kwa kuinua nzito na sensorer ya joto / unyevu wa DHT11. Tutatumia pia bodi ya mzunguko ambayo nimeunda na pia inauzwa sasa katika duka la duka la kituo ikiwa ungependa kununua.
Wacha tuanze na muswada wa vifaa utakavyokuwa needin:
Moduli ya WiFi ya ESP8266
amzn.to/2pkGPoa
Sensorer ya DHT11
amzn.to/2phwfhO
TP-Kiungo Smart kuziba
amzn.to/2GElQUz
Unaweza pia kuchukua moduli nzima kwenye duka la tindie kwa kituo:
www.tindie.com/products/misperry/wifi-enab…
Pia angalia JLCPCB kwa Uzuiaji wa PCB. Ndio ambao nilikuwa nikifanya PCB:
Usafirishaji wa Bure kwa Agizo la Kwanza & $ 2 PCB Prototyping kwenye
Hatua ya 1: Kuongeza Nambari kwa ESP8266
Sasa tutahitaji kuwasha nambari ifuatayo kwenye ESP8266. Nambari hii inaweza kupatikana katika hazina ifuatayo ya github:
Katika nambari iliyo hapo chini italazimika tu kusanidi sehemu za juu za ufafanuzi:
Seva ya MQTT:
Mtumiaji wa MQTT:
Nenosiri la MQTT:
MQTT_sensor_mada:
-WiFi
Alisema: alisema mtandao wa wifi unaounganisha
Nenosiri: nywila ya WiFi.
Mara tu ukishajaza hii katika nambari iliyo hapa chini unaweza kukusanya na kuangalia makosa na ikiwa makosa 0 unaweza kuiwasha kwenye ESP8266.
/ * * Jina la Faili: TempHumSensor.ino * * Maombi: Thermostat ya Heater HomeAssistant Space * * Maelezo: Nambari hii ni ya kifaa kinachoweza kutumika cha ESP8266 WiFi. Hii itapeleka habari ya joto * ya kifaa cha DHT11 mbele ya HASS kwa usindikaji. * * Mwandishi: M. Sperry - https://www.youtube.com/misperry * Tarehe: 03 / * Marekebisho: 1.0 * * * /
# pamoja
#jumlisha #jumuisha #jumuisha #jumlisha # pamoja
#fafanua CON_TIME_OUT 20 // Muda wa kukosa muunganisho na wifi
#fafanua MQTT_TIME_OUT 10 // Muda wa kukosa muunganisho kwa seva ya MQTT
#fafanua DHTPIN 0 // Pin ambayo imeunganishwa na sensor ya DHT
#fafanua DHTTYPE DHT11 // Aina ya sensa ni DHT11, unaweza kuibadilisha kuwa DHT22 (AM2302), DHT21 (AM2301)
#fafanua mqtt_server "" // Ingiza viboreshaji vya seva yako ya MQTT au IP. Ninatumia nyongeza yangu ya DuckDNS (yourname.duckdns.org) katika uwanja huu
// Wifi: SSID na nywila
const char * ssid = ""; const char * nywila = "";
// Uwekaji wa DHT
DHT_Umoja wa dht (DHTPIN, DHTTYPE); uint32_kucheleweshaMS;
WifiMteja wa WiFiMteja;
Mteja wa PubSubMteja (wifiClient);
// kazi inayoitwa kuchapisha hali ya joto na unyevu
void publishData (kuelea p_temperature) {// unda kitu cha JSON // hati: https://github.com/bblanchon/ArduinoJson/wiki/API%20Reference StaticJsonBuffer jsonBuffer; JsonObject & mzizi = jsonBuffer.createObject (); // INFO: data lazima ibadilishwe kuwa kamba; shida hufanyika wakati wa kutumia kuelea… // badilisha kuwa mzizi wa fahrenheit ["joto"] = (Kamba) p_joto; mzizi.prettyPrintTo (Serial); Serial.println ("");
data ya char [200];
root.printTo (data, root.measureLength () + 1); mteja.chapisha (MQTT_SENSOR_TOPIC, data, ni kweli); }
// kazi inayoitwa wakati ujumbe wa MQTT ulifika
kupigiwa simu batili (char * p_topic, byte * p_payload, unsigned int p_length) {}
unganisha tena () {
// Kitanzi mpaka tuunganishwe tena wakati (! Mteja.meunganishwa ()) {Serial.print ("INFO: Kujaribu unganisho la MQTT…"); // Jaribio la kuunganisha ikiwa (client.connect ("ESPBlindstl", mqtt_user, mqtt_password)) {Serial.println ("INFO: imeunganishwa"); } mwingine {Serial.print ("ERROR: failed, rc ="); Serial.print (mteja.state ()); Serial.println ("DEBUG: jaribu tena kwa sekunde 5"); // Subiri sekunde 5 kabla ya kujaribu kuchelewesha tena (5000); }}}
usanidi batili (utupu) {
Serial. Kuanza (9600);
// Tunaanza kwa kuungana na mtandao wa WiFi
Serial.println (); Serial.println (); Serial.print ("Kuunganisha kwa"); Serial.println (ssid);
WiFi.anza (ssid, nywila);
wakati (WiFi.status ()! = WL_CONNECTED) {
kuchelewesha (800); Printa ya serial ("."); }
Serial.println ("");
Serial.println ("WiFi imeunganishwa"); Serial.println ("Anwani ya IP:"); Serial.println (WiFi.localIP ()); // init mteja wa unganisho la MQTT.setServer (mqtt_server, 1883); mteja.setCallback (kupiga simu tena);
// Anzisha sensorer ya DHT
kuanza (); Serial.println ("data ya sensorer iliyounganishwa ya DHT11");
// Maelezo ya sensa ya muda mfupi
sensor_t sensor; joto la dht. (GetSensor (& sensor); Serial.println ("----------------------------------------"); Serial.println ("Joto"); Serial.print ("Sensor:"); Serial.println (sensor.name); Serial.print ("Dereva Ver:"); Serial.println (sensor.version); Serial.print ("Kitambulisho cha kipekee:"); Serial.println (sensor.sensor_id); Serial.print ("Thamani ya Max:"); Printa ya serial (sensor.max_value); Serial.println ("* C"); Serial.print ("Thamani ndogo:"); Printa ya serial (sensor.min_value); Serial.println ("* C"); Serial.print ("Azimio:"); Printa ya serial (utatuzi wa suluhisho); Serial.println ("* C"); Serial.println ("----------------------------------------"); // Maelezo ya sensa ya unyevu. unyevu wa dht. Serial.println ("----------------------------------------"); Serial.println ("Unyevu"); Serial.print ("Sensor:"); Serial.println (sensor.name); Serial.print ("Dereva Ver:"); Serial.println (sensor.version); Serial.print ("Kitambulisho cha kipekee:"); Serial.println (sensor.sensor_id); Serial.print ("Thamani ya Max:"); Printa ya serial (sensor.max_value); Serial.println ("%"); Serial.print ("Thamani ndogo:"); Printa ya serial (sensor.min_value); Serial.println ("%"); Serial.print ("Azimio:"); Printa ya serial (utatuzi wa suluhisho); Serial.println ("%"); Serial.println ("----------------------------------------");
// Weka ucheleweshaji kati ya usomaji wa sensa kulingana na maelezo ya sensorer
kucheleweshaMS = sensa.min_chelewesha / 1000; }
kitanzi batili (batili) {
joto la kuelea;
ikiwa (! mteja. imeunganishwa ())
{unganisha tena) }
kuchelewesha (kucheleweshaMS);
// Pata tukio la joto na uchapishe thamani yake.
sensorer_tukio_tukio; joto la dht (). getEvent (& tukio); ikiwa (isnan (event.temperature)) {Serial.println ("Kosa la kusoma joto!"); joto = 0.00; } mwingine {joto = tukio. joto; Serial.print ("Joto:"); Printa ya serial (joto); Serial.println ("* C"); } // // kuchapisha kwa MQTT publishData (joto); }
Hatua ya 2: Kuanzisha TP-LINK yako Smart Plug
Utahitaji kuweka programu-jalizi yako ya TP-LINK, au kuziba yoyote mahiri kwa hiyo mater, njia ambayo mtengenezaji anapendekeza.
Hakikisha kuzingatia anwani ya MAC kwenye kifaa. Ikiwa kifaa chako ni kama kifaa changu cha TP-LINK huwezi kuweka anwani ya IP tuli. Kwa hivyo, utahitaji kusanidi router yako kwa Uhifadhi wa DHCP. Hii itachukua anwani ya MAC ya kifaa chako na wakati kifaa hicho kitaomba anwani router itampa anwani hiyo hiyo kila wakati.
Hapa kuna kiunga cha jinsi ya kuweka hii na Linksys
www.linksys.com/us/support-article?article…
Hatua ya 3: Kuweka Msaidizi wa Nyumbani
Sasa weka Mratibu wa Nyumba. Kwa hili utahitaji kuongeza usanidi ufuatao kwenye faili ya usanidi.yaml ambayo iko kwenye muundo wa folda ya /home/homeassistant/.homeassistant kwenye kifaa ulichosakinisha.
Mara tu ukimaliza kuongeza hii kwenye usanidi wa msaidizi wako wa nyumbani utahitaji kuanzisha tena programu yako ya msaidizi wa nyumbani kwa mabadiliko yatakayoathiri.
Pia nitatumia kifaa cha kubadili kifaa cha TP-LINK na ufafanuzi uko chini kwenye faili ya usanidi. Anwani ya IP ambayo hutumiwa kwa kifaa hicho ndio uliyoweka kwa uhifadhi wa DHCP katika hatua ya awali.
Usanidi huu unaweza pia kupatikana kwenye repo inayofuata ya github: https://github.com/misperry/SpaceHeater_Thermosta …….
mqtt: kubadili: - jukwaa: jina la tplink: mwenyeji wa hita ya chumba cha kulala: 192.168.2.11
sensa 1:
jukwaa: mqtt state_topic: 'ha / chumba cha kulala_temp' jina: Chumba cha kulala Kitengo_cha_pimo: '° F' thamani_template: '{{value_json.temperature}}'
mitambo:
- alias: _Temp Bedroom Temp High trigger: - jukwaa: numeric_state entity_id: sensor. Bedroom_Temp hapo juu: 73
hatua:
huduma: homeassistant.turn_off entity_id: switch. Bedroom_Heater
- alias: _Temp Chumba cha kulala cha chini
kichocheo: - jukwaa: nambari_ya_jimbo_id: sensa. Bedroom_Temp chini: hatua 73: huduma: homeassistant.turn_on entity_id: switch. Bedroom_Heater
Hatua ya 4: Hatua za Mwisho
Sasa na usanidi wako wa msaidizi wa nyumbani na nambari yako ya Arduino iliyowekwa utakuwa tayari kuamsha mfumo wote. Kwa hivyo, weka hita yako / shabiki / kuziba baridi ndani ya kuziba smart na kuziba Katika kuziba smart. Mara tu iko tayari utahitaji kuingiza chaja ndogo ya USB na kisha uchunguzi wa Joto la Wifi. Mara zote zikiwa mkondoni unapaswa kuangalia kwenye dashibodi yako ya msaidizi wa nyumbani na uone hali mpya ya joto ikiripotiwa.
Asante sana kwa msaada wako wote na msaada. hakikisha ukiacha kupenda na uje kutembelea kituo kwenye https://www.youbue.com/misperry na uone kile tunacho kwa ajili yako. Hakikisha umejiandikisha na kushiriki na marafiki wako kusaidia kituo hicho.
Ilipendekeza:
Mzunguko wa Kiashiria cha Kiwango cha Chini na Kamili cha Kiwango: Hatua 9 (na Picha)
3.7V Betri ya Chini na Mzunguko wa Kiashiria cha Ngazi Kamili: Hii rafiki, Leo nitafanya mzunguko wa Batri ya 3.7V chini na kiashiria cha malipo kamili. Wacha tuanze
KIWANGO CHA KIWANGO CHA DYI, Kioevu cha Maji ya PC: Hatua 7
KIWANGO CHA KIWANGO CHA DYI, Baridi ya Maji ya PC: Kwa kupoza maji kwa Kompyuta hakuna chaguzi nyingi za vichungi vya mkondoni ambavyo vinatoa uwezo na mtiririko mkubwa. ilionekana kwangu kama suluhisho kamili na kimsingi ilikuwa inakosa seti ya vifaa vya G1 / 4. na tangu Kuri yangu
Joto -Joto La Kudhibitiwa la Joto La joto: Hatua 6
Joto -Joto La Kutabasamu La Kudhibiti Joto: ******************************************* ************************************************** +
Badilisha kiwango cha Bafuni cha Elektroniki kuwa Kiwango cha Usafirishaji kwa <$ 1: 8 Hatua (na Picha)
Kubadilisha Kiwango cha Bafuni cha Elektroniki Kuwa Kiwango cha Usafirishaji kwa <$ 1 :, Katika biashara yangu ndogo nilihitaji kupima vitu vya kati na vikubwa na masanduku kwenye kiwango cha sakafu kwa usafirishaji. Badala ya kulipa njia nyingi kwa mfano wa viwandani, nilitumia kiwango cha bafuni cha dijiti. Nimeona kuwa iko karibu vya kutosha kwa usahihi mbaya mimi
Kiwango cha Hamsini cha Kiwango cha Hamsini: Hatua 5
Kiwango cha hamsini cha Flash Bounce: Mtu yeyote ambaye amepiga picha ndani ya nyumba anafahamiana na shida za kutumia mwangaza: vivuli vikali, vunja masomo na asili iliyowekwa chini. Wapiga picha wa kitaalam wana njia kadhaa za kushughulikia hili, lakini moja ya rahisi ni bouncin