Innehållsförteckning:

IoT trådlös temperatur- och rörelsesensor: 11 steg (med bilder)
IoT trådlös temperatur- och rörelsesensor: 11 steg (med bilder)

Video: IoT trådlös temperatur- och rörelsesensor: 11 steg (med bilder)

Video: IoT trådlös temperatur- och rörelsesensor: 11 steg (med bilder)
Video: Vad är en Ruuvi-Sensor? ➠ RuuviTag Unboxing & Setup 2024, November
Anonim
IoT trådlös temperatur- och rörelsessensor
IoT trådlös temperatur- och rörelsessensor

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, anslutning och komponenter
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

Få Arduino IDE att fungera
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

Anslutning av temperaturgivare, LED och PIR
Anslutning av temperaturgivare, LED och PIR
Anslutning av temperaturgivare, LED och PIR
Anslutning av temperaturgivare, LED och PIR
Anslutning av temperaturgivare, LED och PIR
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

Konfigurera databasen för att hålla temperaturdata
Konfigurera databasen för att hålla temperaturdata
Konfigurera databasen för att hålla temperaturdata
Konfigurera databasen för att hålla temperaturdata
Konfigurera databasen för att hålla temperaturdata
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"

Skapa
Skapa
Skapa
Skapa

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

Ladda upp temperatursensorskissen till din ESP8266
Ladda upp temperatursensorskissen till din ESP8266
Ladda upp temperatursensorskissen till din ESP8266
Ladda upp temperatursensorskissen till din ESP8266
Ladda upp temperatursensorskissen till din ESP8266
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

Få tillgång till din temperatur- och rörelsesensor
Få tillgång till din temperatur- och rörelsesensor
Få tillgång till din temperatur- och rörelsesensor
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)

Installera HomeBridge för HomeKit i Raspberry Pi (tillval)
Installera HomeBridge för HomeKit i Raspberry Pi (tillval)

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

Ansluter Homebridge till din Iphone
Ansluter Homebridge till din Iphone
Ansluter Homebridge till din Iphone
Ansluter Homebridge till din Iphone
Ansluter Homebridge till din Iphone
Ansluter 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

Få din Homebridge att springa i bakgrunden
Få din Homebridge att springa i bakgrunden
Få din Homebridge att springa i bakgrunden
Få din Homebridge att springa i bakgrunden
Få din Homebridge att springa i bakgrunden
Få din Homebridge att springa 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: