Innehållsförteckning:

DIY Raspberry Pi temperatursystem med Ubidots: 7 steg (med bilder)
DIY Raspberry Pi temperatursystem med Ubidots: 7 steg (med bilder)

Video: DIY Raspberry Pi temperatursystem med Ubidots: 7 steg (med bilder)

Video: DIY Raspberry Pi temperatursystem med Ubidots: 7 steg (med bilder)
Video: Raspberry Pi Pico W LoRa Gateway for Sensors Monitoring using Ubidots IoT Platform 2024, Juli
Anonim
DIY Raspberry Pi temperatursystem med Ubidots
DIY Raspberry Pi temperatursystem med Ubidots

Ett temperaturövervakningssystem ger värdefull insikt i både kommersiella och industriella miljöer för att minska ineffektivitet eller behålla produkternas kvalitet och deras kvalitet. Tänk om jag berättade att du kan övervaka temperaturen i din egenbyggda vinkällare eller familjens akvarium hemma med samma enhet. Vad händer om jag berättade att samma enhet också kan användas för att övervaka luft- och vätsketemperaturer för vätskor i din fabrik? Skaparna av vår värld har gjort detta möjligt och den här guiden är här för att hjälpa dig att starta dina egna initiativ hemma eller på butiksgolvet.

Denna guide kommer att vara din handledning för ett enkelt DIY temperaturövervakningssystem som också är vattentätt att starta. Med hjälp av en Raspberry Pi och Ubidots visar vi dig hur du ansluter din Pi och visar ditt temperatursystems mätvärden i realtid. Med Ubidots kan du också skapa e -postmeddelanden eller SMS -händelser för att säkerställa att din "variabel" (i detta fall temperaturen) ligger inom en uppsättning definierade gränser som du tilldelats för att säkerställa kvaliteten och effektiviteten i systemets villkor.

För det här projektet kommer vi att använda en 1-tråds-kabelbunden och vattentät version av DS18B20-sensorn. Vad är 1-tråds? Det är ett kommunikationsprotokoll som gör det enklare att ansluta dina IoT-sensorer genom att aggregera alla kablar till en enda tråd (… det är faktiskt tre, två är jord- och strömanslutningar för energi, den tredje är 1-ledaren för dataöverföring).

VIKTIGT OBS! 1-tråds temperaturgivare har olika versioner till salu; den ena med ett motstånd integrerat i sensorn och den andra utan. När du köper eller konfigurerar din hårdvara, är det bäst att se till att dina enheter och sensorer är kompatibla innan du går vidare i den här självstudien.

Steg 1: Krav

  • Raspberry Pi 3 -modell (redan konfigurerad)
  • OneWire temperatursensor - DS18B20
  • Ubidots konto - eller - STEM -licens

Steg 2: Kabeldragning

Kabeldragning
Kabeldragning
Kabeldragning
Kabeldragning
Kabeldragning
Kabeldragning

Som tidigare nämnts säljs OneWire temperatursensor med olika versioner som innehåller motstånd. För den här självstudien kommer vi att illustrera båda versionerna - med och utan motstånd. Oavsett vilket system du väljer, se till att du kontrollerar att alla anslutningar är korrekt baserade på nedanstående diagram och foton.

    Med motstånd integrerat - med lundkontakt

Följ tabellen och bilden ovan för att göra rätt anslutningar för din OneWire temperatursensor med motstånd.

TIPS: Arduberry är en ny kampanj i Kickstarter, som ger ett enkelt och billigt sätt att föra Arduino -sköldar till Raspberry Pi. Detta otroliga alternativ är det enkla sättet att börja ansluta dina lundsensorer med en Arduino Grove -sköld. För mer information om detta, hänvisa till kampanjen:)

    Utan motstånd integrerat- utan lundkontakt

Motståndet i denna inställning används som uppdrag för datalinjen och bör anslutas mellan datakabeln och strömkabeln. Detta säkerställer att datalinjen ligger på en definierad logisk nivå och begränsar störningar från elektriskt brus om vår stift lämnades flytande.

Använd ett 4,7kΩ (eller 10kΩ) motstånd och följ diagrammet ovan för att göra rätt anslutningar. Observera att stiften som är anslutna i Raspberry Pi är desamma som används i tabellen.

Steg 3: Sensorinställning

Sensorinställning
Sensorinställning
Sensorinställning
Sensorinställning

1. Med din Raspberry Pi ansluten till internet, verifiera IP -adressen som tilldelats kortets åtkomst med ssh i datorns terminal:

ssh pi@{IP_Address_assigned}

Om du inte redan har konfigurerat autentiseringsuppgifterna för din Raspberry Pi, observera att du måste använda standarduppgifterna som tillhandahålls:

  • användarnamn: pi
  • lösenord: hallon

När din pi är konfigurerad och ansluten korrekt visas användaren av din terminal som: pi@raspberrypi

2. Låt oss nu uppgradera några paket och installera pip, Pythons pakethanterare. Kopiera och klistra in kommandona nedan i din terminal och tryck på "enter" efter varje för att köra kommandona.

sudo apt-get update> sudo apt-get upgrade

sudo apt-get install python-pip python-dev build-essential

3. Installera sedan Request -biblioteket, som är ett populärt Python -bibliotek som förenklar att göra HTTP -förfrågningar. Kopiera och klistra in kommandona nedan i din terminal och tryck på "enter", kör kommandot.

$ pip installationsbegäranden

4. Raspberry Pi är utrustad med en rad drivrutiner för gränssnitt. I det här fallet, för att kunna ladda 1-trådssensorns drivrutin på GPIO-stiften, måste vi använda dessa nedan två drivrutiner. Dessa drivrutiner lagras därför som laddningsbara moduler och kommandot modprobe används för att starta upp dem i Linux -kärnan vid behov.

Kör kommandona nedan:

$ sudo modprobe w1-gpio> $ sudo modprobe w1-therm

5. Nu måste vi ändra katalogen till vår 1-Wire-enhetsmapp och lista enheterna för att säkerställa att vår sensor har laddats korrekt. Kopiera och klistra in kommandona nedan i din terminal och tryck på "enter" efter varje för att köra kommandona.

$ cd/sys/bus/w1/devices/> $ ls

För närvarande är din sensor redan monterad och ansluten och bör listas som en serie siffror och bokstäver. I vårt fall är enheten registrerad som 28-00000830fa90, men ditt fall kommer att vara en annan serie bokstäver och siffror, så ersätt vårt serienummer med ditt eget och kör kommandot.

$ cd 28-00000830fa90

Sensorn skriver regelbundet till w1_slave -filen, för att läsa din temp -sensor, kör kommandot nedan:

$ cat w1_slave

Detta kommando visar dig två rader text med utgången t = visar temperaturen i grader Celsius. Observera att en decimal ska placeras efter de två första siffrorna (detta finns i den slutliga koden- oroa dig inte); Till exempel är temperaturavläsningen vi har fått 29.500 grader Celsius.

Nu när du kan ta temperaturavläsningar är det dags att lägga upp dem på Ubidots!

Steg 4: Skicka data till Ubidots för visualisering

Skicka data till Ubidots för visualisering
Skicka data till Ubidots för visualisering
Skicka data till Ubidots för visualisering
Skicka data till Ubidots för visualisering
Skicka data till Ubidots för visualisering
Skicka data till Ubidots för visualisering

Nu är det dags att koda!:) Skapa och kör ett Python -skript i datorns terminal:

$ nano onewire_temp_ubidots.py

Klistra sedan in och spara följande kod på din terminal: Tryck här för att få koden

Se till att ersätta serienumret 28-00000830fa90 med ditt och tilldela din Ubidots-kontotoken i begärans URL. Om du inte vet hur du får ditt Ubidots -token, hänvisar du till artikeln nedan för hjälp:

Hitta ditt TOKEN från ditt Ubidots -konto

Låt oss nu testa manuset. Klistra in och kör nedanstående skript i datorns terminal.

python onewire_temp_ubidots.py

Om det fungerar korrekt ser du en ny enhet i ditt Ubidots -konto med två variabler: temp_celsius och temp_fahrenheit

Steg 5: Valfria steg: Byt namn på enheten och variablerna

Valfria steg: Byt namn på enheten och variablerna
Valfria steg: Byt namn på enheten och variablerna
Valfria steg: Byt namn på enheten och variablerna
Valfria steg: Byt namn på enheten och variablerna

Namnen på de skapade variablerna är desamma som API -etiketterna, som är ID: n som används av API: et. Det betyder inte att deras namn inte kan ändras, så det rekommenderas att ändra namnen på dina enheter och variabler för att göra dem vänligare mot din nomenklatur. För att lära dig hur du byter namn på dina variabler, se nedan:

Hur man justerar enhetsnamn och variabelnamn

Du kan också lägga till och justera enheterna för varje variabel från din lista med alternativ.

Som du kan se ovan har vi tilldelat olika variabler till varje variabel och även tilldelat mer vänliga namn för att passa våra projekts nomenklatur. Detta rekommenderas starkt till användare som söker distribution av 100 -tal eller enheter.

Steg 6: Händelseinställning

En händelse (eller varning) är en åtgärd som utlöses när data uppfyller eller överstiger en designregel. Till exempel kan ett e -post- eller SMS -meddelande skickas när en sensor slutar skicka data eller en temperatur överskrider ett max- eller minimitröskelvärde.

För att skapa evenemanget, hänvisa till artikeln nedan:

Händelser: Skapa en textmeddelandehändelse (SMS, e -post och telegram)

Steg 7: Resultat

På bara några minuter har du byggt ett enkelt DIY temperaturövervakningssystem. Placera nu dina sensorer där det behövs och börja spåra temperaturer från din enhet idag!

Lycka till med hackningen:)

Rekommenderad: