Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Manufacturing Technology >> Productieproces

IoT 101-project:stream de temperatuur van je Raspberry Pi

"Hallo Wereld!" – Dit is waarschijnlijk de uitvoer van het eerste programma dat je ooit hebt geschreven toen je leerde coderen. Het opzetten van een apparaat om temperatuurgegevens te streamen wordt snel het de facto Internet of Things (IoT) "Hello World!" projecteren. Als u "Hallo wereld!" afdrukt de eerste keer was een lange, frustrerende taak, je hebt misschien nooit een ander programma geschreven. Je eerste IoT-project zou alleen een grote glimlach op je gezicht moeten toveren. Dit leuke, eenvoudige project laat je kennismaken met de wondere wereld van IoT-datastreaming.

Een video-tutorial van dit hele project is te vinden op:

http://youtu.be/HMqPbfvCshs

Dit zijn de benodigdheden die je nodig hebt:

  • Een op internet aangesloten Raspberry Pi of uw computer met één bord naar keuze.
  • Een DS18B20 temperatuursensor (https://www.adafruit.com/product/381).
  • Een breadboard voor het aansluiten van een eenvoudig circuit (in de Adafruit Pi-starterkit).
  • Een weerstand van 4,7K tot 10K (ook in de Adafruit Pi-starterkit).

Stap 1:Hardware-installatie

De DS18B20-temperatuursensor werkt goed met de Raspberry Pi omdat deze een digitale uitgang heeft en de Pi geen ingebouwde analoog naar digitaal converters (ADC) heeft. Raspbian bevat een interface om de output van de sensor te lezen. We hoeven alleen maar een kleine code te schrijven om de temperatuur te pakken en te ontleden. Adafruit heeft hier een geweldige tutorial voor het gebruik van de DS18B20 die we gewoon gaan volgen en aanpassen om de temperatuur te streamen in plaats van deze alleen naar het scherm te sturen.

De hardwareconfiguratie is eenvoudig. DS18B20 rode draad naar 3.3V. Zwarte draad naar GND. Blauwe draad naar een pull-up weerstand en naar GPIO pin 4 van je Pi.

Stap 2:Lees de temperatuur

Om de leesinterface van de temperatuursensor te starten, moeten we twee opdrachten uitvoeren. Ga naar een opdrachtprompt op je Pi of SSH naar je Pi. Typ de volgende opdrachten:

sudo modprobe w1-gpio
sudo modprobe w1-therm

De uitvoer van je temperatuursensor wordt nu naar een bestand op je Pi geschreven. Om dat bestand te vinden,
cd /sys/bus/w1/devices

In deze map zal er een submap zijn die begint met "28-". Wat na de "28-" komt, is het serienummer van uw sensor. cd in die map. In deze map bevat een bestand met de naam w1_slave de uitvoer van uw sensor. De inhoud van dit bestand ziet er ongeveer zo uit:

a2 01 4b 46 7f ff 0e ​​10 d8 :crc=d8 JA
a2 01 4b 46 7f ff 0e ​​10 d8 t=26125

Het getal na "t=" is het getal dat we willen. Dit is de temperatuur in 1/1000 graden Celsius (in het bovenstaande voorbeeld is de temperatuur 26,125 C). We hebben alleen een eenvoudig programma nodig dat dit bestand leest en dat nummer analyseert. Gelukkig voor ons heeft Adafruit al een Python-script voor ons gemaakt dat precies dit doet en de temperatuur naar het scherm stuurt. Maak een nieuw bestand op je Pi (bijv. temperature.py) en kopieer en plak de volgende code in:

Klik hier om de code te zien

Voer dit script uit ("sudo python temperature.py") om de uitvoer van uw temperatuursensor op het scherm te zien.

Stap 3:Stream de temperatuur

Dit is het punt waarop we afwijken van de Adafruit-tutorial. Temperatuur naar het scherm sturen is saai. We willen deze gegevens streamen naar een plek waar we niet alleen de huidige temperatuur kunnen zien, maar ook een geschiedenis van vastgelegde temperatuurgegevens (plus, wie wil een aantal temperaturen als tekst "lezen", we willen een mooie datavisualisatie). Installeer eerst de Initial State-streamer om onze temperatuurmetingen een bestemming te geven (ga hier voor instructies over het instellen van de Initial State-streamer; het is supereenvoudig en duurt minder dan twee minuten). We gaan het bovenstaande script aanpassen om de temperatuur naar ons Initial State-account te streamen in plaats van het naar het scherm te sturen. Dit zijn de wijzigingen:

Klik hier om de code te zien

U moet de clientsleutel die is gekoppeld aan uw Initial State-account tussen de aanhalingstekens op regel 6 kopiëren en plakken, waar client_key ="" staat. U kunt uw klantsleutel vinden onder uw accountinstellingen of op de bestemmingspagina zodra u zich aanmeldt bij uw account.

Dit zijn de wijzigingen die we zojuist hebben aangebracht:

  • Op regel 4 hebben we de Initial State-datastreamermodule geïmporteerd.
  • Op regel 6 hebben we een nieuwe bucket gemaakt met de naam 'Temperature Stream' en deze via onze clientsleutel aan ons account gekoppeld.
  • Op regel 30 hebben we de functie read_temp() gewijzigd om alleen de temperatuur in Celsius te retourneren.
  • Op regel 34 hebben we de uitvoer van read_temp() geconverteerd naar fahrenheit.
  • Op lijn 35 en 36 hebben we de twee temperaturen gestreamd.

Voor meer details:IoT 101 Project:Stream Temperatuur van je Raspberry Pi


Productieproces

  1. Raspberry Pi Temperature Logger
  2. Raspberry Pi-temperatuurprofiel met LabVIEW
  3. Raspberry Pi temperatuur- en vochtigheidsnetwerkmonitor
  4. Temperatuur aflezen met DS18B20 | Raspberry Pi 2
  5. Temperatuurbewaking op de Raspberry Pi
  6. Temperatuur meten met RASPBERRY PI
  7. Python- en Raspberry Pi-temperatuursensor
  8. Temperatuur bewaken met Raspberry Pi
  9. Raspberry Pi leest BMP085 temperatuur en druk
  10. Raspberry Pi temperatuur- en lichtsensor
  11. Bouw je eerste IOT met een Raspberry Pi, DHT11-sensor en Thingspeak.