Indholdsfortegnelse:

DIY Raspberry Pi temperatursystem med Ubidots: 7 trin (med billeder)
DIY Raspberry Pi temperatursystem med Ubidots: 7 trin (med billeder)

Video: DIY Raspberry Pi temperatursystem med Ubidots: 7 trin (med billeder)

Video: DIY Raspberry Pi temperatursystem med Ubidots: 7 trin (med billeder)
Video: IoT Based Patient Health Monitoring System using Raspberry Pi 3 | Python 2024, November
Anonim
DIY Raspberry Pi temperatur system med Ubidots
DIY Raspberry Pi temperatur system med Ubidots

Et temperaturovervågningssystem giver værdifuld indsigt i både kommercielle og industrielle miljøer for at reducere ineffektivitet eller opretholde produkternes kvalitet og deres kvalitet. Hvad hvis jeg fortalte dig, at du kan overvåge temperaturen i din selvbyggede vinkælder eller din families akvarium derhjemme ved hjælp af den samme enhed. Hvad nu hvis jeg fortalte dig, at den samme enhed også kunne bruges til at overvåge luft- og væsketemperaturer for væsker på din fabrik? Skaberne af vores verden har gjort dette muligt, og denne vejledning er her for at hjælpe med at kickstarte dine egne initiativer derhjemme eller på butiksgulvet.

Denne guide vil være din vejledning til et simpelt DIY temperaturovervågningssystem, der også er vandtæt til at starte. Ved hjælp af en Raspberry Pi og Ubidots viser vi dig, hvordan du forbinder din Pi og viser dit temperatursystems metrics i realtid. Ved hjælp af Ubidots kan du også oprette e -mails eller SMS -begivenheder for at sikre, at din "variabel" (i dette tilfælde temperaturen) forbliver inden for et sæt definerede grænser, som du har tildelt for at sikre kvalitet og effektivitet af dit systems betingelser.

Til dette projekt vil vi bruge en 1-wirepre-wired og vandtæt version af DS18B20-sensoren. Hvad er 1-wire? Det er en kommunikationsprotokol, der gør tilslutning af dine IoT-sensorer enklere ved at samle alle kabler til en enkelt ledning (… faktisk er det tre, to er jord- og strømforbindelser til energi, den tredje er 1-ledningen til dataoverførsel).

VIGTIG BEMÆRK: 1-Wires temperatursensor har forskellige versioner til salg; den ene med en modstand integreret i sensoren og den anden uden. Når du køber eller opsætter din hardware, er det bedst at sikre, at dine enheder og sensorer er kompatible, inden du går videre i denne vejledning.

Trin 1: Krav

  • Raspberry Pi 3 -model (allerede konfigureret)
  • OneWire temperatursensor - DS18B20
  • Ubidots -konto - eller - STEM -licens

Trin 2: Opsætning af ledninger

Kabelføring
Kabelføring
Kabelføring
Kabelføring
Kabelføring
Kabelføring

Som tidligere nævnt sælges OneWire -temperatursensoren med forskellige versioner, der indeholder modstande. I denne vejledning illustrerer vi begge versioner - med og uden modstand. Uanset hvilket system du vælger, skal du sørge for at kontrollere, om alle forbindelser er korrekt baseret på nedenstående diagrammer og fotos.

    Med integreret modstand - med lundstik

Følg tabellen og billedet ovenfor for at foretage de rigtige forbindelser til din OneWire temperatursensor med modstand.

TIP: Arduberry er en ny kampagne i Kickstarter, som bringer en enkel og billig måde at bringe Arduino -skjolde til Raspberry Pi. Denne utrolige mulighed er den nemme måde at begynde at forbinde dine lundesensorer ved hjælp af et Arduino Grove -skjold. For mere information om dette, henvises til kampagnen:)

    Uden modstand integreret- uden grove-stik

Modstanden i denne opsætning bruges som en pull-up til datalinjen og skal forbindes mellem datakablet og strømkablet. Dette sikrer, at datalinjen er på et defineret logisk niveau og begrænser interferens fra elektrisk støj, hvis vores pin blev efterladt flydende.

Brug en 4,7kΩ (eller 10kΩ) modstand, og følg diagrammet ovenfor for at foretage de korrekte forbindelser. Bemærk, at benene, der er forbundet i Raspberry Pi, er de samme, der bruges i tabellen.

Trin 3: Sensoropsætning

Sensoropsætning
Sensoropsætning
Sensoropsætning
Sensoropsætning

1. Når din Raspberry Pi er forbundet til internettet, skal du kontrollere den IP -adresse, der er tildelt kortadgangen ved hjælp af ssh i din computers terminal:

ssh pi@{IP_Address_assigned}

Hvis du ikke allerede har konfigureret legitimationsoplysningerne for din Raspberry Pi, skal du være opmærksom på, at du bliver nødt til at bruge de medfølgende standardoplysninger:

  • brugernavn: pi
  • adgangskode: hindbær

Når din pi er konfigureret og tilsluttet korrekt, bliver brugeren af din terminal opført som: pi@raspberrypi

2. Lad os nu opgradere nogle pakker og installere pip, Pythons pakkehåndtering. Kopier og indsæt nedenstående kommandoer i din terminal, og tryk på "enter" efter hver for at køre kommandoerne.

sudo apt-get update> sudo apt-get upgrade

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

3. Installer derefter Request -bibliotek, som er et populært Python -bibliotek, der forenkler at lave HTTP -anmodninger. Kopier og indsæt nedenstående kommandoer i din terminal, og tryk på "enter", kør kommandoen.

$ pip installationsanmodninger

4. Raspberry Pi er udstyret med en række drivere til grænseflade. I dette tilfælde skal vi bruge disse under to drivere for at kunne indlæse 1-Wiresensors driver på GPIO-benene. Disse drivere gemmes derfor som indlæselige moduler, og kommandoen modprobe bruges til at starte dem op i Linux -kernen, når det kræves.

Kør kommandoerne herunder:

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

5. Nu skal vi ændre biblioteket til vores 1-Wire enhedsmappe og liste enhederne for at sikre, at vores sensor er indlæst korrekt. Kopier og indsæt nedenstående kommandoer i din terminal, og tryk på "enter" efter hver for at køre kommandoerne.

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

I dette øjeblik er din sensor allerede blevet samlet og forbundet og bør angives som en række tal og bogstaver. I vores tilfælde er enheden registreret som 28-00000830fa90, men din sag vil være en anden række bogstaver og tal, så udskift vores serienummer med dit eget og kør kommandoen.

$ cd 28-00000830fa90

Sensoren skriver periodisk til w1_slave -filen, for at læse din temp -sensor, skal du køre kommandoen herunder:

$ kat w1_slave

Denne kommando viser dig to tekstlinjer med output t = viser temperaturen i grader Celsius. Bemærk, at der skal placeres et decimalpunkt efter de to første cifre (dette er angivet i den sidste kode- bare rolig); for eksempel er den temperaturmåling, vi har modtaget, 29.500 grader Celsius.

Nu hvor du er i stand til at måle temperaturer, er det tid til at sende dem til Ubidots!

Trin 4: Send data til Ubidots til visualisering

Send data til Ubidots til visualisering
Send data til Ubidots til visualisering
Send data til Ubidots til visualisering
Send data til Ubidots til visualisering
Send data til Ubidots til visualisering
Send data til Ubidots til visualisering

Nu er det tid til at kode!:) Opret og kør et Python -script i din computers terminal:

$ nano onewire_temp_ubidots.py

Indsæt derefter og gem følgende kode på din terminal: Tryk her for at få koden

Sørg for at udskifte serienummeret 28-00000830fa90 med dit, og tildele dit Ubidots-kontotoken i anmodningswebadressen. Hvis du ikke ved, hvordan du får dit Ubidots -token, kan du læse artiklen herunder for at få hjælp:

Find dit TOKEN fra din Ubidots -konto

Lad os nu teste scriptet. Indsæt og kør nedenstående script i din computers terminal.

python onewire_temp_ubidots.py

Hvis det fungerer korrekt, vil du se en ny enhed på din Ubidots -konto med to variabler: temp_celsius og temp_fahrenheit

Trin 5: Valgfrie trin: Omdøb enhed og variabler

Valgfrie trin: Omdøb enhed og variabler
Valgfrie trin: Omdøb enhed og variabler
Valgfrie trin: Omdøb enhed og variabler
Valgfrie trin: Omdøb enhed og variabler

Navnene på de oprettede variabler er de samme som API -etiketterne, som er de id'er, der bruges af API'en. Dette betyder ikke, at deres navne ikke kan ændres, så det anbefales at ændre navnene på dine enheder og variabler for at gøre dem venligere i forhold til din nomenklatur. For at lære, hvordan du omdøber dine variabler, se nedenfor:

Sådan justeres enhedsnavnet og variabelnavnet

Du kan også tilføje og justere enhederne for hver variabel fra din liste over muligheder.

Som du kan se ovenfor, har vi tildelt forskellige enheder til hver variabel og også tildelt mere venlige navne, der passer til vores projekternomenklatur. Dette anbefales stærkt til brugere, der søger implementering af 100'er eller enheder.

Trin 6: Hændelsesopsætning

En hændelse (eller advarsel) er enhver handling, der udløses, når data opfylder eller overstiger en designregel. For eksempel kan en e -mail eller SMS -besked sendes når som helst, når en sensor holder op med at sende data, eller en temperatur overstiger en maksimums- eller minimumsgrænse.

For at oprette begivenheden henvises til artiklen herunder:

Begivenheder: Oprettelse af en sms -hændelse (sms, e -mail og telegram)

Trin 7: Resultat

På bare få minutter har du bygget et let DIY temperaturovervågningssystem. Placer nu dine sensorer, hvor det er nødvendigt, og begynd at spore temperaturer fra din enhed i dag!

Glad hacking:)

Anbefalede: