Innehållsförteckning:
- Steg 1: Konceptet, anslutning och komponenter
- Steg 2: Få Arduino IDE att fungera
- Steg 3: Anslutning av temperaturgivare, LED och PIR
- Steg 4: Konfigurera molnwebbservern
- Steg 5: Konfigurera databasen för att hålla temperaturdata
- Steg 6: Skapa tabellen "temperatur"
- Steg 7: Ladda upp temperatursensorskissen till din ESP8266
- Steg 8: Få tillgång till din temperatur- och rörelsesensor
- Steg 9: Installera HomeBridge för HomeKit i Raspberry Pi (valfritt)
- Steg 10: Ansluta Homebridge till din Iphone
- Steg 11: Få din Homebridge att köra i bakgrunden
Video: IoT trådlös temperatur- och rörelsesensor: 11 steg (med bilder)
2024 Författare: John Day | [email protected]. Senast ändrad: 2024-01-30 12:46
Jag inspirerades av de många IoT -projekten som finns i Instructables, så under inlärningsprocessen försöker jag kombinera några användbara applikationer som är relevanta. Som förlängning till mina tidigare instruktioner relaterade till IoT -temperaturgivare har jag nu lagt till fler funktioner i delsystemet. Den extra funktionen är:
- NTP -anslutning för att få tid
- LED som kan fjärrstyras
- PIR -sensor för att upptäcka rörelse
- Ansluten Raspberry PI som kör homekit för att tillåta anslutning till iPhone "Home"
Steg 1: Konceptet, anslutning och komponenter
Konceptet som visas ovan är att tillåta temperaturövervakning på distans med den extra möjligheten att upptäcka rörelse om någon är hemma och tillåta meddelande via LED. Enheten kan nås lokalt i LAN eller på distans via webbserver. Du kan också ansluta Hallonpaj (tillval) med Homekit -tillbehör installerat för att möjliggöra anslutning till iPhone "Home" -appen.
Samma som föregående version krävs följande komponenter i detta projekt. Observera att länken nedan är en affiliatelänk, så om du inte vill bidra är det bara att gå direkt.
- NodeMcu Lua ESP8266 dev -kort. Jag får min från banggood.
- LM35 temperaturgivare
- PIR -sensor
- LED
- Prototypbräda
- Arduino IDE
- Arbetande webbserver med PHP -serverskript aktiverat
- Hallon pi (tillval)
Steg 2: Få Arduino IDE att fungera
Mer information om detta steg finns i mina tidigare instruktioner Steg 2. om IoT -temperatursensor med ESP8266.
Steg 3: Anslutning av temperaturgivare, LED och PIR
Temperatursensorn LM35 har 3 ben, det första benet är VCC, du kan ansluta detta till 3,3V (ESP8266 -kortets utgång är 3,3V). Det mellersta benet är Vout (där temperaturen avläses, kan du ansluta detta till den analoga ingången på ESP8266 -stiftet AD0, detta är placerat längst upp till höger på brädet enligt bilden. Och det högra benet ska vara ansluten till marken.
PIR -sensorn består också av tre ben, du kan se en liten markering på +, 0, - på kretskortet bredvid benet. Så anslut "+" till 3.3V, "-" till marken och mittstift "0" till stift D6 på ESP8266.
LED hade bara 2 ben, "+" (anod), det längre benet ansluter detta till stift D5 på ESP8266 och "-" (katod) de kortare benen bör anslutas till marken (GND).
Steg 4: Konfigurera molnwebbservern
Det finns ett visst antagande för detta steg:
Du har redan en fungerande webbserver som är värd på en rätt domän. Och du är bekant med att överföra filer till din webbserver via FTP med Filezilla eller något annat FTP -program.
Ladda upp den bifogade zip -filen till roten på din webbplats. Låt oss anta att för din övning är din webbplats "https://arduinotestbed.com"
Det antas att hela filen finns i roten på webservern. Om du har lagrat den i en annan mapp, justera filplatsen i enlighet med både ArduinoData3.php -filen och Arduino -skissen. Om du är osäker, vänligen meddela mig så ska jag försöka så gott jag kan för att hjälpa dig.
Steg 5: Konfigurera databasen för att hålla temperaturdata
vi använder sqllite -databas för denna övning. Sqllite är den lättfilbaserade databasen som inte kräver en server. Databasen finns lokalt i din webbserver. Om du är orolig för säkerheten bör du ändra koden för att använda en korrekt databaseserver som mysql eller MSSQL.
Innan du börjar måste du ändra databaslösenordet i phpliteadmin.php -filen. Så öppna den här filen i din webbserver och redigera lösenordsinformation på rad 91 till det lösenord du vill ha.
Peka sedan på phpliteadmin.php i din webbserver. Använd vårt exempel innan du ska peka på
Eftersom det inte finns någon databas på servern visas skärmen för att skapa databasen. Ange "temperatur.db" i den nya databasinmatningsrutan och klicka på "Skapa" -knappen. Databasen skapas sedan framgångsrikt. Vid denna tidpunkt är databasen fortfarande tom så du behöver sql -skriptet för att skapa databastabellstrukturen för att vara värd för data.
Steg 6: Skapa tabellen "temperatur"
För att skapa tabellen, klicka på fliken "SQL" och klistra in följande SQL -fråga.
BÖRJA TRANSAKTION;
-----Tabellstruktur för temperatur ---- SKAPA TABELL 'temperatur' ('ID' INTEGER PRIMÄR NYCKEL INTE NULL, fukt INT INT NULL, temperatur REAL, tidsstämpel DATETIME DEFAULT CURRENT_TIMESTAMP, 'värmare' BOOLEAN, 'goaltemp' VERKLIG); BEGÅ;
Klicka sedan på "Go" -knappen längst ner. Tabellen bör skapas framgångsrikt.
Om du uppdaterar sidan ska du nu se tabellen "temperatur" under temperaturen.db -databasen till vänster. Om du klickar på temperaturbordet om det fortfarande inte innehåller några data.
Nu när vi har skapat databasen kan du peka på följande webbadress
arduinotestbed.com/ArduinoData3.php
Du skulle se temperaturratten som visar dummy -data, rörelsesensorn och kontrollpanelen för att vrida lysdioden. Den nedre delen av grafen kommer fortfarande att vara tom eftersom det inte finns någon data ännu.
Steg 7: Ladda upp temperatursensorskissen till din ESP8266
Kopiera nu den bifogade filen och öppna "ESP8266TempPIRSensor.ino" Arduino -gränssnittet skapar mappen åt dig. Flytta resten av filerna till den nya mappen som skapades av Arduino -gränssnittet.
Ändra den angivna webbservern och platsen för data_store3.php -filen om det behövs. Ladda sedan upp skissen till ESP8266.
Om allt går bra bör det laddas upp framgångsrikt och första gången kommer ESP att gå till AP -läge. Du kan använda din bärbara dator eller mobiltelefon för att ansluta till den. Du bör kunna hitta AP med namnet "ESP-TEMP".- Försök att ansluta till ESP-TEMP med din mobiltelefon- Ta reda på vilken IP-adress du tilldelas genom att göra "ipconfig" -kommando i Windows eller "ifconfig" -kommando i Linux eller Mac. -Om du använder iPhone, klicka på i-knappen bredvid ESP-TEMP som du är ansluten till-Öppna din webbläsare och peka på ESP-TEMP, om du har tilldelats 192.168.4.10 som din ip, ESP-TEMP har ip: när du har angett båda och markerat kryssrutan "Uppdatera Wifi -konfiguration", klicka på "uppdatera" för att uppdatera inställningen till din ESP8266.
Om du vill aktivera felsökningen till Serial Monitor måste du kommentera
#define DEBUG
rad i klockan. h och kommenterade
//#undef DEBUG
linje. klicka sedan på Verktygs-> Seriell bildskärm. Seriell bildskärmsfönster visar WiFi -anslutningens framsteg och visar den lokala IP -adressen för ESP8266. Den interna blå lysdioden blinkar en gång när temperaturavläsningen sker. Den slås också på när en rörelse detekteras.
Steg 8: Få tillgång till din temperatur- och rörelsesensor
Du bör nu kunna peka ännu en gång på den lokala webbservern för ESP8266. Och detta visar tid, temperatur och rörelsesensorn.
Nu kan du också peka på din externa webbserver, i det här exemplet är
Du kan skjuta knappen under kontrollpanelen för att växla mellan lysdioden. Jag använder det här för att meddela mina barn när jag är på väg hem från jobbet.
Rörelsesensorn uppdateras varje sekund eller så, så du måste uppdatera sidan oftare för att se om det finns en rörelse detekterad. För tillfället är den automatiska uppdateringen inställd på 60 sekunder. Temperaturen tar avläsning varannan minut, men du kan också anpassa detta till den tid som passar dig.
Grattis om du har kommit så här långt !!, ge dig själv en klapp på axeln och njut av din skapelse. Nästa steg är valfritt, bara om du vill kunna styra lysdioden och övervaka temperaturen samt rörelsesensorn från Apple -enheter.
Steg 9: Installera HomeBridge för HomeKit i Raspberry Pi (valfritt)
Jag inspirerades av instruktionerna från GalenW1 som gör att jag kan lära mig så mycket om HomeBridge.
För att installera HomeBridge för HomeKit på en Raspberry Pi kan du använda instruktionen i följande
github.com/nfarina/homebridge
Med HomeBridge kan du ansluta Home -appen i Iphone till de sensorer som du precis byggde i de föregående stegen.
När du får HomeBridge installerat måste du installera några plugins:
- Temperatursensor
- Rörelsesensor
- Växla
sudo npm installera -g homebridge-http-temperatur
sudo npm install -g homebridge -MotionSensor
sudo npm install -g homebridge-http-simple-switch
När pluginprogrammet har installerats måste du konfigurera filen config.json nedan
sudo vi /home/pi/.homebridge/config.json
du kan justera innehållet i filen config.json enligt nedan, se till att webbadressen pekar på rätt plats.
Steg 10: Ansluta Homebridge till din Iphone
Nu när alla tillbehör hade konfigurerats kan du köra homebridge med följande kommando
hembro
Du bör se skärmen som ovan. Du kan följa följande steg för att lägga till Homebridge i din homekit.
- Starta nu din "Hem" -app i din Iphone
- Klicka på knappen "Lägg till tillbehör"
- du kommer att presenteras med skärmen för att skanna koden, du kan använda din telefonkamera för att skanna koden från Raspberry Pi -skärmen eller lägga till koden manuellt.
Observera att både Iphone och Raspberry Pi måste vara på samma trådlösa router för att fungera.
- När du är ansluten kommer du att uppmanas att visa skärmen som säger att dina tillbehör inte är certifierade, klicka på "Lägg till ändå" -knappen för att fortsätta
- Du har då möjlighet att konfigurera alla tillbehör, i det här fallet har vi ljusomkopplaren, rörelsesensorn och temperaturgivaren.
- Den sista skärmen visar alla tillbehör som är anslutna.
När den är ansluten kan du använda Siri för att kontrollera rörelsesensorn, temperaturen och tända och släcka lampan.
Steg 11: Få din Homebridge att köra i bakgrunden
Grattis !! du har gjort det. Som en bonus kan du köra homebridge i bakgrunden med följande kommando:
homebridge &
Nu kan du ha kul med Siri och njuta av ditt hårda arbete.
Tack för att du följer detta till slutet. Om du gillar detta, vänligen lämna några kommentarer eller rösta på mig.
Rekommenderad:
Rörelsesensor Under sängbelysning: 16 steg (med bilder)
Rörelsesensor Under sängbelysning: Har du någonsin försökt ta dig ur sängen tyst på natten bara för att snubbla över något och väcka hela huset? Rörelsekännande nattlampor installerade diskret under din säng ger lågt ljus tillräckligt starkt för att leda dig runt de lösa LEGO-klossarna
Rörelsesensor dörrklocka: 5 steg (med bilder)
Rörelsesensor dörrklocka: När jag berättade för min son Jayden om utmaningen, tänkte han genast att använda LEGO WeDo -setet. Han har spelat med Legos i flera år men det var inte förrän i början av förra läsåret som han fick möjlighet att koda med WeDo 2.0
Trådlös Arduino -robot med HC12 trådlös modul: 7 steg
Trådlös Arduino -robot som använder HC12 trådlös modul: Hej killar, välkommen tillbaka. I mitt förra inlägg förklarade jag vad en H Bridge Circuit är, L293D motorförare IC, piggybacking L293D Motorförare IC för att köra högströmsmotordrivrutiner och hur du kan designa och göra din egen L293D -motorförarkort,
Femtio meter trådlös åtkomstpunkt med TP Link WN7200ND trådlös USB -adapter på Raspbian -stretch: 6 steg
Femtio meter trådlös åtkomstpunkt med TP Link WN7200ND trådlös USB -adapter på Raspbian Stretch: Raspberry Pi är bra att skapa säkra trådlösa åtkomstpunkter men det har inte ett bra utbud, jag använde en TP Link WN7200ND trådlös adapter för att förlänga den. Jag vill dela hur jag gör det Varför vill jag använda en hallon pi istället för en router? T
Hacka en trådlös dörrklocka till en trådlös larmströmbrytare eller strömbrytare: 4 steg
Hacka en trådlös dörrklocka till en trådlös larmströmbrytare eller strömbrytare: Jag byggde nyligen ett larmsystem och installerade det i mitt hus. Jag använde magnetbrytare på dörrarna och kopplade dem via vinden. Fönstren var en annan historia och hårda kablar var inte ett alternativ. Jag behövde en trådlös lösning och det här är