Indholdsfortegnelse:
- Trin 1: Tilføjelse af koden til ESP8266
- Trin 2: Opsætning af dit TP-LINK Smart-stik
- Trin 3: Opsætning af Home Assistant
- Trin 4: Sidste trin
![WiFi -aktiveret temperaturstyret smartstik: 4 trin WiFi -aktiveret temperaturstyret smartstik: 4 trin](https://i.howwhatproduce.com/images/002/image-4452-58-j.webp)
Video: WiFi -aktiveret temperaturstyret smartstik: 4 trin
![Video: WiFi -aktiveret temperaturstyret smartstik: 4 trin Video: WiFi -aktiveret temperaturstyret smartstik: 4 trin](https://i.ytimg.com/vi/mnUF-dpVvGo/hqdefault.jpg)
2024 Forfatter: John Day | [email protected]. Sidst ændret: 2024-01-30 08:29
![WiFi aktiveret temperaturstyret smart stik WiFi aktiveret temperaturstyret smart stik](https://i.howwhatproduce.com/images/002/image-4452-59-j.webp)
I dette instruktionssæt vil vi se på, hvordan man bygger en WiFi -aktiveret temperatursonde ved hjælp af en simpel ESP8266 til tunge løft og en DHT11 temperatur/fugtighedsføler. Vi vil også bruge det printkort, som jeg har oprettet og er også til salg nu i kanalens tindie -butik, hvis du gerne vil købe.
Lad os komme i gang med den stykliste, du får brug for:
ESP8266 WiFi -modul
amzn.to/2pkGPoa
DHT11 sensor
amzn.to/2phwfhO
TP-Link Smart-stik
amzn.to/2GElQUz
Du kan også afhente hele modulet i tindie -butikken til kanalen:
www.tindie.com/products/misperry/wifi-enab…
Tjek også JLCPCB for PCB Fabriction. Det er dem, jeg plejede at lave PCB:
Gratis forsendelse ved første ordre og $ 2 PCB -prototyper på
Trin 1: Tilføjelse af koden til ESP8266
Vi skal nu blinke følgende kode på ESP8266. Denne kode findes på følgende github -lager:
I nedenstående kode skal du kun konfigurere de øverste få definitionafsnit:
MQTT -server:
MQTT -bruger:
MQTT -adgangskode:
MQTT_sensor_topic:
-Trådløst internet
Sagde: det sagde om det wifi -netværk, du opretter forbindelse til
Adgangskode: WiFi -adgangskoden.
Når du har dette udfyldt i nedenstående kode, kan du derefter kompilere og kontrollere for fejl, og hvis der er 0 fejl, kan du blinke det på ESP8266.
/ * * Filnavn: TempHumSensor.ino * * Ansøgning: HomeAssistant rumvarmertermostat * * Beskrivelse: Denne kode er til ESP8266 WiFi -aktiveret arduino * -kompatibel enhed. Dette videresender temperaturinformationen * for DHT11 -enheden til HASS -frontenden til behandling. * * Forfatter: M. Sperry - https://www.youtube.com/misperry * Dato: 03/ * Revision: 1.0 * * */
#omfatte
#include #include #include #include #include
#define CON_TIME_OUT 20 // Timeout af ingen forbindelse til wifi
#define MQTT_TIME_OUT 10 // Timeout af ingen forbindelse til MQTT -server
#define DHTPIN 0 // Pin, der er forbundet til DHT -sensoren
#define DHTTYPE DHT11 // Sensortype er DHT11, du kan ændre den til DHT22 (AM2302), DHT21 (AM2301)
#define mqtt_server "" // Indtast dine MQTT -server tilføjere eller IP. Jeg bruger min DuckDNS adddress (dit navn.duckdns.org) i dette felt
#define mqtt_user "" // indtast dit MQTT brugernavn #define mqtt_password "" // indtast din adgangskode #define MQTT_SENSOR_TOPIC "ha/bedroom_temp" // Indtast emne for din MQTT
// Wifi: SSID og adgangskode
const char* ssid = ""; const char* password = "";
// DHT SEtup
DHT_Unified dht (DHTPIN, DHTTYPE); uint32_t delayMS;
WiFiClient wifiClient;
PubSubClient -klient (wifiClient);
// funktion kaldet til at offentliggøre temperaturen og luftfugtigheden
void publishData (float p_temperature) {// opret et JSON -objekt // doc: https://github.com/bblanchon/ArduinoJson/wiki/API%20Reference StaticJsonBuffer jsonBuffer; JsonObject & root = jsonBuffer.createObject (); // INFO: dataene skal konverteres til en streng; der opstår et problem, når du bruger floats … // konverter til fahrenheit p_temperature = (p_temperature * 1.8) + 32; // konvertere til fahrenheit root ["temperatur"] = (streng) p_temperatur; root.prettyPrintTo (seriel); Serial.println ("");
kuldata [200];
root.printTo (data, root.measureLength () + 1); client.publish (MQTT_SENSOR_TOPIC, data, true); }
// funktion kaldet, da der kom en MQTT -meddelelse
ugyldig tilbagekald (char* p_topic, byte* p_payload, usigneret int p_length) {}
ugyldig forbindelse igen () {
// Sløjfe, indtil vi genopretter forbindelse, mens (! Client.connected ()) {Serial.print ("INFO: Forsøger MQTT -forbindelse …"); // Forsøg at oprette forbindelse, hvis (client.connect ("ESPBlindstl", mqtt_user, mqtt_password)) {Serial.println ("INFO: tilsluttet"); } ellers {Serial.print ("FEJL: mislykkedes, rc ="); Serial.print (client.state ()); Serial.println ("DEBUG: prøv igen om 5 sekunder"); // Vent 5 sekunder, før forsinkelsen forsøger igen (5000); }}}
void setup (void) {
Serial.begin (9600);
// Vi starter med at oprette forbindelse til et WiFi -netværk
Serial.println (); Serial.println (); Serial.print ("Opretter forbindelse til"); Serial.println (ssid);
WiFi.begin (ssid, adgangskode);
mens (WiFi.status ()! = WL_CONNECTED) {
forsinkelse (800); Serial.print ("."); }
Serial.println ("");
Serial.println ("WiFi tilsluttet"); Serial.println ("IP -adresse:"); Serial.println (WiFi.localIP ()); // init MQTT forbindelse client.setServer (mqtt_server, 1883); client.setCallback (tilbagekald);
// Initialiser DHT -sensor
dht.begin (); Serial.println ("DHT11 Unified Sensordata");
// Udskriv temp sensor detaljer
sensor_t sensor; dht.temperature (). getSensor (& sensor); Serial.println ("------------------------------------"); Serial.println ("Temperatur"); Serial.print ("Sensor:"); Serial.println (sensor.navn); Serial.print ("Driver Ver:"); Serial.println (sensor.version); Serial.print ("Entydigt ID:"); Serial.println (sensor.sensor_id); Serial.print ("Maksimal værdi:"); Serial.print (sensor.max_value); Serial.println (" *C"); Serial.print ("Min værdi:"); Seriel.print (sensor.min_værdi); Serial.println (" *C"); Serial.print ("Opløsning:"); Seriel.print (sensor.opløsning); Serial.println (" *C"); Serial.println ("------------------------------------"); // Udskriv detaljer om fugtighedssensor. dht.fugtighed (). getSensor (& sensor); Serial.println ("------------------------------------"); Serial.println ("Fugtighed"); Serial.print ("Sensor:"); Serial.println (sensor.navn); Serial.print ("Driver Ver:"); Serial.println (sensor.version); Serial.print ("Entydigt ID:"); Serial.println (sensor.sensor_id); Serial.print ("Maksimal værdi:"); Serial.print (sensor.max_value); Serial.println ("%"); Serial.print ("Min værdi:"); Seriel.print (sensor.min_værdi); Serial.println ("%"); Serial.print ("Opløsning:"); Seriel.print (sensor.opløsning); Serial.println ("%"); Serial.println ("------------------------------------");
// Indstil forsinkelse mellem sensoraflæsninger baseret på sensordetaljer
delayMS = sensor.min_delay / 1000; }
void loop (void) {
flyde temperatur;
hvis (! client.connected ())
{tilslut igen (); }
forsinkelse (forsinkelseMS);
// Hent temperaturbegivenhed, og udskriv dens værdi.
sensorer_event_t begivenhed; dht.temperature (). getEvent (& event); if (isnan (event.temperature)) {Serial.println ("Fejl ved læsning af temperatur!"); temperatur = 0,00; } ellers {temperatur = hændelse.temperatur; Serial.print ("Temperatur:"); Serielt tryk (temperatur); Serial.println (" *C"); } // publicer til MQTT publishData (temperatur); }
Trin 2: Opsætning af dit TP-LINK Smart-stik
![Opsætning af dit TP-LINK Smart-stik Opsætning af dit TP-LINK Smart-stik](https://i.howwhatproduce.com/images/002/image-4452-60-j.webp)
Du bliver nødt til at indstille dit TP-LINK-smartstik eller et hvilket som helst smartstik til det materie, som producenten anbefaler.
Sørg for at notere MAC -adressen på enheden. Hvis din enhed ligner min TP-LINK-enhed, kan du ikke gemme en statisk IP-adresse. Således skal du konfigurere din router til DHCP -reservation. Dette vil tage din enheds MAC -adresse, og når enheden anmoder om en adresse, giver routeren den samme adresse hver gang.
Her er et link til, hvordan du konfigurerer dette med Linksys
www.linksys.com/us/support-article?article…
Trin 3: Opsætning af Home Assistant
Nu til at konfigurere Home Assistant. Til dette skal du tilføje følgende konfigurationer til filen configuration.yaml, der er placeret i /home/homeassistant/.homeassistant -mappestrukturen på den enhed, du installerede den på.
Når du er færdig med at tilføje dette til din hjemmeassistent -konfiguration, skal du genstarte din hjemmeassistentsoftware, for at ændringerne kan påvirke.
Jeg vil også bruge TP-LINK smart-stik til switch-enheden, og definitionen er nedenfor i konfigurationsfilen. Den IP -adresse, der bruges til enheden, er den, du konfigurerede til DHCP -reservationen i det foregående trin.
Denne konfiguration kan også findes på følgende github -repo:
mqtt: switch: - platform: tplink navn: Soveværelsesvarmer vært: 192.168.2.11
sensor 1:
platform: mqtt state_topic: 'ha/bedroom_temp' navn: Bedroom Temp unit_of_measurement: '° F' value_template: '{{value_json.temperature}}'
automatisering:
- alias: _Temp Soveværelse Temp Høj trigger: - platform: numeric_state entity_id: sensor. Bedroom_Temp ovenfor: 73
handling:
service: homeassistant.turn_off entity_id: switch. Bedroom_Heater
- alias: _Temp Soveværelse Temp Lav
trigger: - platform: numeric_state entity_id: sensor. Bedroom_Temp herunder: 73 handling: service: homeassistant.turn_on entity_id: switch. Bedroom_Heater
Trin 4: Sidste trin
![Image Image](https://i.howwhatproduce.com/images/002/image-4452-62-j.webp)
![](https://i.ytimg.com/vi/Tj93K-hiaIw/hqdefault.jpg)
![Sidste trin Sidste trin](https://i.howwhatproduce.com/images/002/image-4452-63-j.webp)
![Sidste trin Sidste trin](https://i.howwhatproduce.com/images/002/image-4452-64-j.webp)
Nu med din hjemmeassistentkonfiguration og din Arduino -kode opsat, vil du være klar til at aktivere hele systemet. Placer således din varmelegeme/blæser/kølerstik i smartstikket, og sæt det i smartstikket. Når den er klar, skal du tilslutte en lille USB -oplader og derefter den WiFi -aktiverede temperatursonde. Når alt er online, skal du være i stand til at kigge i dit hjemmeassistent dashboard og se den nye temperatur blive rapporteret.
Mange tak for al din hjælp og støtte. sørg for at forlade et like og kom og besøg kanalen på https://www.youbue.com/misperry og se, hvad vi har der for dig. Sørg for at abonnere og dele med dine venner for at hjælpe kanalen.
Anbefalede:
DIY temperaturstyret kammerboks med Peltier TEC -modul: 4 trin (med billeder)
![DIY temperaturstyret kammerboks med Peltier TEC -modul: 4 trin (med billeder) DIY temperaturstyret kammerboks med Peltier TEC -modul: 4 trin (med billeder)](https://i.howwhatproduce.com/images/002/image-3457-16-j.webp)
DIY temperaturstyret kammerboks med Peltier TEC -modul: Jeg har samlet temperaturstyret kammerboks til test af små elektroniske tavler. I denne vejledning har jeg delt mit projekt, herunder kildefiler og link til Gerbers -filer for at lave PCB. Jeg har kun brugt billige almindeligt tilgængelige materialer
Temperaturstyret system med L293D: 19 trin (med billeder)
![Temperaturstyret system med L293D: 19 trin (med billeder) Temperaturstyret system med L293D: 19 trin (med billeder)](https://i.howwhatproduce.com/images/006/image-15190-j.webp)
Temperaturstyret system med L293D: Det temperaturfølsomme kontrollerede system er en enhed, der styrer og vedligeholder temperaturen på et objekt over et bestemt område relateret til omgivelserne. Disse typer af kontrollerede systemer bruges hovedsageligt i AC’er (klimaanlæg), køleskabe
Temperaturstyret blæser!: 4 trin
![Temperaturstyret blæser!: 4 trin Temperaturstyret blæser!: 4 trin](https://i.howwhatproduce.com/images/002/image-5532-31-j.webp)
Temperaturstyret blæser!: Bor i et tropisk land som Singapore, er det frustrerende at svede hele dagen, og i mellemtiden skal du fokusere på dit studie eller arbejde i sådanne tilstoppede omgivelser. For at få luften til at strømme og afkøle dig selv, kom jeg på ideen om temperatur
Temperaturstyret Tupperware: 4 trin
![Temperaturstyret Tupperware: 4 trin Temperaturstyret Tupperware: 4 trin](https://i.howwhatproduce.com/images/003/image-8425-j.webp)
Temperaturstyret Tupperware: Vi ville have en kølet beholder til opbevaring af forskellige genstande. Vi besluttede at bruge en MSP432 til at drive og styre systemet på grund af dets alsidighed. Vi brugte en transistor til at tillade os at bruge PWM til at drive blæseren. Hvis du har en 3-leder PWM ventilator
ESP8266 temperaturstyret relæ: 9 trin (med billeder)
![ESP8266 temperaturstyret relæ: 9 trin (med billeder) ESP8266 temperaturstyret relæ: 9 trin (med billeder)](https://i.howwhatproduce.com/images/001/image-335-77-j.webp)
ESP8266 Temperaturstyret relæ: En af mine venner er en videnskabsmand, der laver eksperimenter, der er meget følsomme over for lufttemperatur og fugtighed. Inkubatorrummet har en lille keramisk varmelegeme, men varmelegemets termostat var ikke nær nøjagtig nok, kun i stand til at opretholde temperaturen