Innholdsfortegnelse:

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

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

Video: DIY Raspberry Pi temperatursystem med Ubidots: 7 trinn (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

Et temperaturovervåkingssystem gir verdifull innsikt i både kommersielle og industrielle miljøer for å redusere ineffektivitet eller opprettholde kvaliteten på produktene og kvaliteten. Hva om jeg fortalte deg at du kan overvåke temperaturen i din egenbygde vinkjeller eller familiens akvarium hjemme ved hjelp av samme enhet. Videre, hva om jeg fortalte deg at den samme enheten også kan brukes til å overvåke luft- og væsketemperaturer for væsker på fabrikken din? Skaperne av vår verden har gjort dette mulig, og denne guiden er her for å hjelpe deg med å starte dine egne initiativer hjemme eller på butikkgulvet.

Denne guiden vil være din opplæring for et enkelt DIY temperaturovervåkingssystem som også er vanntett å starte opp. Ved hjelp av en Raspberry Pi og Ubidots viser vi deg hvordan du kobler din Pi og viser sanntids temperatursystemets beregninger. Ved å bruke Ubidots kan du også opprette e -post eller SMS -hendelser for å sikre at "variabelen" (i dette tilfellet temperaturen) holder seg innenfor et sett med definerte grenser som du har tildelt for å sikre kvalitet og effektivitet i systemets forhold.

For dette prosjektet kommer vi til å bruke en 1-tråds forhåndskablet og vanntett versjon av DS18B20-sensoren. Hva er 1-wire? Det er en kommunikasjonsprotokoll som gjør det enklere å koble IoT-sensorene dine ved å samle alt kabling til en enkelt ledning (… vel egentlig er det tre, to er jord- og strømtilkoblinger for energi, den tredje er 1-ledningen for dataoverføring).

VIKTIG MERK: 1-Wires temperatursensor har forskjellige versjoner til salgs; den ene med en motstand integrert i sensoren og den andre uten. Når du kjøper eller konfigurerer maskinvaren, er det best å sørge for at enhetene og sensorene er kompatible før du går videre i denne opplæringen.

Trinn 1: Krav

  • Raspberry Pi 3 -modell (allerede konfigurert)
  • OneWire temperatursensor - DS18B20
  • Ubidots konto - eller - STEM -lisens

Trinn 2: Oppsett av ledninger

Oppsett av ledninger
Oppsett av ledninger
Oppsett av ledninger
Oppsett av ledninger
Kabling Oppsett
Kabling Oppsett

Som tidligere nevnt, selges OneWire temperatursensor med forskjellige versjoner som inneholder motstander. For denne opplæringen vil vi illustrere begge versjonene - med og uten motstander. Uansett hvilket system du velger, må du kontrollere at alle tilkoblinger er riktig basert på diagrammer og bilder nedenfor.

    Med motstand integrert - med grove -kontakt

Følg tabellen og bildet ovenfor for å gjøre de riktige tilkoblingene for din OneWire temperatursensor med motstand.

TIPS: Arduberry er en ny kampanje i Kickstarter, som gir en enkel og rimelig måte å bringe Arduino -skjold til Raspberry Pi. Dette utrolige alternativet er den enkle måten å begynne å koble til lundesensorene ved hjelp av et Arduino Grove -skjold. For mer informasjon om dette, vennligst referer til kampanjen:)

    Uten motstand integrert- uten grove-kontakt

Motstanden i dette oppsettet brukes som en pull-up for datalinjen, og bør kobles mellom datakabelen og strømledningen. Dette sikrer at datalinjen er på et definert logisk nivå, og begrenser forstyrrelser fra elektrisk støy hvis pinnen vår ble liggende flytende.

Bruk en motstand på 4,7 kΩ (eller 10 kΩ) og følg diagrammet ovenfor for å gjøre de riktige tilkoblingene. Vær oppmerksom på at pinnene som er koblet til Raspberry Pi, er de samme som brukes i tabellen.

Trinn 3: Sensoroppsett

Sensoroppsett
Sensoroppsett
Sensoroppsett
Sensoroppsett

1. Når Raspberry Pi er koblet til internett, må du bekrefte IP -adressen som er tildelt brettilgangen ved hjelp av ssh i datamaskinens terminal:

ssh pi@{IP_Address_assigned}

Hvis du ikke allerede har konfigurert legitimasjonen til Raspberry Pi, må du merke deg at du må bruke standardopplysningene som følger med:

  • brukernavn: pi
  • passord: bringebær

Når pi er konfigurert og riktig tilkoblet, blir brukeren av terminalen din oppført som: pi@raspberrypi

2. La oss nå oppgradere noen pakker og installere pip, Pythons pakkebehandling. Kopier og lim inn kommandoene nedenfor i terminalen, og trykk "enter" etter hver for å kjøre kommandoene.

sudo apt-get update> sudo apt-get upgrade

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

3. Installer deretter Request -biblioteket, som er et populært Python -bibliotek som forenkler å lage HTTP -forespørsler. Kopier og lim inn kommandoene nedenfor i terminalen, og trykk "enter", kjør kommandoen.

$ pip installasjonsforespørsler

4. Raspberry Pi er utstyrt med en rekke drivere for grensesnitt. I dette tilfellet, for å kunne laste 1-Wire-sensorens driver på GPIO-pinnene, må vi bruke disse under to drivere. Disse driverne lagres derfor som lastbare moduler, og kommandoen modprobe brukes for å starte dem opp i Linux -kjernen når det er nødvendig.

Kjør kommandoene nedenfor:

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

5. Nå må vi endre katalogen til vår 1-Wire enhetsmappe og liste opp enhetene for å sikre at sensoren vår er lastet inn riktig. Kopier og lim inn kommandoene nedenfor i terminalen, og trykk "enter" etter hver for å kjøre kommandoene.

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

I dette øyeblikket er sensoren din allerede montert og tilkoblet og bør oppføres som en serie med tall og bokstaver. I vårt tilfelle er enheten registrert som 28-00000830fa90, men saken din vil være en annen serie med bokstaver og tall, så bytt serienummeret ditt med ditt eget og kjør kommandoen.

$ cd 28-00000830fa90

Sensoren skriver med jevne mellomrom til w1_slave -filen, for å lese din temperatursensor, vennligst kjør kommandoen nedenfor:

$ cat w1_slave

Denne kommandoen viser deg to tekstlinjer med utgangen t = som viser temperaturen i grader Celsius. Vær oppmerksom på at et desimaltegn bør plasseres etter de to første sifrene (dette er gitt i den siste koden- ikke bekymre deg); for eksempel er temperaturavlesningen vi har mottatt 29.500 grader Celsius.

Nå som du kan ta temperaturavlesninger, er det på tide å legge dem ut på Ubidots!

Trinn 4: Sende data til Ubidots for visualisering

Sende data til Ubidots for visualisering
Sende data til Ubidots for visualisering
Sende data til Ubidots for visualisering
Sende data til Ubidots for visualisering
Sende data til Ubidots for visualisering
Sende data til Ubidots for visualisering

Nå er det på tide å kode!:) Lag og kjør et Python -skript i datamaskinens terminal:

$ nano onewire_temp_ubidots.py

Lim deretter inn og lagre følgende kode på terminalen: Trykk her for å få koden

Sørg for å erstatte serienummeret 28-00000830fa90 med ditt, og tilordne Ubidots-kontotokenet i forespørselsadressen. Hvis du ikke vet hvordan du får tak i Ubidots -tokenet ditt, kan du lese artikkelen nedenfor for å få hjelp:

Finn TOKEN fra Ubidots -kontoen din

La oss nå teste skriptet. Lim inn og kjør skriptet nedenfor i datamaskinens terminal.

python onewire_temp_ubidots.py

Hvis den fungerer som den skal, vil du se en ny enhet i Ubidots -kontoen din med to variabler: temp_celsius og temp_fahrenheit

Trinn 5: Valgfrie trinn: Gi nytt navn til enheten og variablene

Valgfrie trinn: Gi nytt navn til enheten og variablene
Valgfrie trinn: Gi nytt navn til enheten og variablene
Valgfrie trinn: Gi nytt navn til enheten og variablene
Valgfrie trinn: Gi nytt navn til enheten og variablene

Navnene på variablene som er opprettet, er de samme som API -etikettene, som er IDene som brukes av API. Dette betyr ikke at navnene deres ikke kan endres, så det anbefales å endre navnene på enhetene dine og variablene for å gjøre dem vennligere mot nomenklaturen din. For å lære hvordan du gir nytt navn til variablene dine, se nedenfor:

Slik justerer du enhetsnavn og variabelnavn

Du kan også legge til og justere enhetene til hver variabel fra listen over alternativer.

Som du kan se ovenfor, har vi tilordnet forskjellige enheter til hver variabel, og også tildelt mer vennlige navn som passer til prosjektnomenklaturen vår. Dette anbefales på det sterkeste til brukere som søker distribusjon av 100 -tall eller enheter.

Trinn 6: Hendelsesoppsett

En hendelse (eller varsel) er enhver handling som utløses når data oppfyller eller overgår en designregel. For eksempel kan en e -post eller SMS sendes når en sensor slutter å sende data eller en temperatur overstiger en maksimums- eller minimumsgrense.

For å lage arrangementet, vennligst referer til artikkelen nedenfor:

Hendelser: Opprette en tekstmeldingshendelse (SMS, e -post og telegram)

Trinn 7: Resultat

På bare noen få minutter har du bygget et enkelt DIY temperaturovervåkingssystem. Plasser nå sensorene dine der det er nødvendig, og begynn å spore temperaturer fra enheten din i dag!

Lykke til med hacking:)

Anbefalt: