Innholdsfortegnelse:
- Rekvisita
- Trinn 1: Sett opp din Raspberry Pi
- Trinn 2: Mål lys- og temperatursensorer
- Trinn 3: Koble opp kretsen din
- Trinn 4: Kode
- Trinn 5: Feilsøking
Video: Lese og tegne lys- og temperatursensordata med bringebær Pi: 5 trinn
2024 Forfatter: John Day | [email protected]. Sist endret: 2024-01-30 11:21
I denne instruksjonsboken lærer du hvordan du leser en lys- og temperatursensor med bringebær pi og ADS1115 analog til digital omformer og tegner den med matplotlib. La oss starte med de nødvendige materialene.
Rekvisita
- Bringebær pi (noen vil gjøre, selv om jeg bruker en 4)
- MicroSD -kort med Raspbian installert (god opplæring:
- HDMI -skjerm og strømkilde
- Micro USB -kabel
- Adafruit ADS 1115 analog til digital omformer:
- Jumper ledninger
- lyssensor (LDR)
- temperatur sensor
- potensiometer x2 (verdien vil være midtpunktet i motstandsområdet for dine temperatur- og lyssensorer, som vi måler senere)
- Brødbrett
Trinn 1: Sett opp din Raspberry Pi
1. Følg denne opplæringen for å sette opp raspberry pi: https://www.raspberrypi.org/help/noobs-setup/2/2. Aktiver I2C: klikk på bringebær pi -symbolet øverst til venstre. Gå til preferanser> bringebær pi -konfigurasjon> grensesnitt> og merk av i boksen "aktiver" på I2C. Klikk deretter OK. Åpne nå et terminalvindu. Skriv på kommandolinjen:
sudo apt-get oppgradering
sudo pip3 installer adafruit-circuitpython-ads1x15
sudo apt-get install python-matplotlib
Trinn 2: Mål lys- og temperatursensorer
Nå må vi måle lys- og temperatursensorers motstand. Ta en voltmeter på innstillingen for motstandsmåling og mål på tvers av ledningene til lyssensoren din i lys og mørke. Registrer verdiene. Ta nå voltmåleren på ledningene til temperatursensoren din i varmt og kaldt (jeg brukte vann). Registrer verdiene. Vi vil bruke dem senere i kretsen vår.
Trinn 3: Koble opp kretsen din
1. Samle materialene som er oppført i rekvisitalisten. For potensiometrene, bruk en verdi som er gjennomsnittet av høyder og nedturer (lys og mørk, varm og kald).
(høy-lav) / 2
2. Følg kretsdiagrammet ovenfor:
- Koble SDA på den analoge til digitale omformeren til SDA på pi
- Koble SCL på den analoge til digitale omformeren til SCL på pi
- Koble VDD på den analoge til digitale omformeren til 3,3v på pi
- Koble GND på den analoge til digitale omformeren til bakken på pi
- Koble til resten av komponentene i henhold til kretsdiagrammet.
Trinn 4: Kode
1. Skriv inn terminal:
nano digital.py
2. Lim inn koden jeg har nedenfor eller på Github i teksteditoren som skal vises.
importer matplotlib.pyplot som plt
import numpy as np import board import busio import time import adafruit_ads1x15.ads1115 as ADS from adafruit_ads1x15.analog_in import AnalogIn i2c = busio. I2C (board. SCL, board. SDA) ads = ADS. ADS1115 (i2c) x = 0 light = AnalogIn (annonser, ADS. P0) temp = AnalogIn (annonser, ADS. P1) X1 = X2 = Y1 = Y2 = plt.ylim (-50, 1000) plt.plot (X1, Y1, label = "light", color = '#0069af') plt.plot (X2, Y2, label = "Temp", color = '#ff8000') plt.xlabel ('Time (minutes)') plt.ylabel (' Nivå ') plt.title (' Lys og temp over tid ') plt.legend () mens True: x += 5 Y1.append (light.value/30) X1.append (x) Y2.append (temp.value /3) X2.append (x) plt.plot (X1, Y1, label = "light", color = '#0069af') plt.plot (X2, Y2, label = "Temp", color = '#ff8000') plt.pause (300)
3. Trykk nå CTRL+X for å avslutte, trykk på y for å lagre, og trykk deretter enter.
Kjør programmet ved å skrive inn terminal:
sudo python3 digital.py
4. Juster potensiometrene slik at grafen viser et bredt spekter av verdier. Prøv å lyse et lys på sensoren og slå av lysene i rommet for å sikre at grafen viser et bredt spekter av verdier.
Hvis en av verdiene faller under bunnen, kan du prøve å senke den tilsvarende divisoren (linje 29 og 31).
Hvis noen av verdiene går over toppen, kan du prøve å øke den tilsvarende divisoren (linje 29 og 31).
Trinn 5: Feilsøking
1. Dobbeltsjekk alle tilkoblinger mot kretsdiagrammet
2. I2C detect - Viser deg alle enheter som er koblet til via i2c:
Skriv inn terminal:
sudo apt-get install i2c-tools
sudo i2cdetect - y 1
Anbefalt:
Trådløs vibrasjons- og temperatursensordata til MySQL ved hjelp av Node-RED: 40 trinn
Trådløse vibrasjons- og temperatursensordata til MySQL ved hjelp av Node-RED: Vi introduserer NCDs Long Range IoT Industrial trådløs vibrasjons- og temperatursensor, med opptil 2 mils rekkevidde bruk av en trådløs nettverksstruktur. Denne enheten inneholder en presis 16-biters vibrasjons- og temperatursensor, og overfører
Logg data og tegne en graf online med NodeMCU, MySQL, PHP og Chartjs.org: 4 trinn
Logg data og tegne en graf online ved hjelp av NodeMCU, MySQL, PHP og Chartjs.org: Denne instruksjonsboken beskriver hvordan vi kan bruke Node MCU -kortet til å samle data fra flere sensorer, sende disse dataene til en PHP -fil som er vert og deretter legge dataene til en MySQL -database. Dataene kan deretter sees på nettet som en graf, ved hjelp av chart.js.A ba
Hvordan male med vanlig pensel og vann for å tegne på nettbrett eller mobiltelefon: 4 trinn
Hvordan male med vanlig pensel og vann for å tegne på nettbrett eller mobiltelefon: Å male med pensel er morsomt. Det fører med seg mye annen utvikling for barna
Lys opp Chanukah-genser med individuelle "lys": 7 trinn (med bilder)
Opplyst Chanukah-genser med individuelle "stearinlys": Høytidsfesten og i år kan du være festens lysende stjerne med en lys menoragenser! Dette er et sydd kretsprosjekt som bruker relativt rimelige materialer som er lett å finne på nettet og i håndverksbutikken. Enda bedre
Avatar tegne robot ved hjelp av MESH: 6 trinn (med bilder)
Avatar Drawing Robot Using MESH: Har du hørt at fysisk aktivitet kan gjøre deg mer kreativ? Å være aktiv hjelper deg med å strekke tankene og generere kreative ideer. Hvis du ikke trener ofte, men ønsker å øke kreativiteten, ikke bekymre deg - Her er noe for deg