Sadržaj:
- Supplies
- Korak 1: Postavite svoj Raspberry Pi
- Korak 2: Izmjerite svjetlosne i temperaturne senzore
- Korak 3: Povežite svoj krug
- Korak 4: Kodirajte
- Korak 5: Rješavanje problema
Video: Očitavanje i iscrtavanje podataka senzora svjetlosti i temperature sa Raspberry Pi: 5 koraka
2024 Autor: John Day | [email protected]. Zadnja izmjena: 2024-01-30 08:04
U ovom Instructable -u ćete naučiti čitati svjetlosni i temperaturni senzor sa malinom pi i ADS1115 analogno -digitalnim pretvaračem i iscrtati ga pomoću matplotliba. Počnimo s potrebnim materijalima.
Supplies
- Raspberry pi (bilo koji će to učiniti, iako ja koristim 4)
- MicroSD kartica sa instaliranim Raspbian -om (dobar vodič:
- HDMI monitor i izvor napajanja
- Mikro USB kabl
- Adafruit ADS 1115 analogno -digitalni pretvarač:
- Žice za kratkospojnike
- senzor svjetla (LDR)
- senzor temperature
- potenciometar x2 (vrijednost će biti sredina raspona otpora vaših senzora temperature i svjetlosti, što ćemo izmjeriti kasnije)
- Breadboard
Korak 1: Postavite svoj Raspberry Pi
1. Slijedite ovaj vodič za postavljanje vašeg malina pi: https://www.raspberrypi.org/help/noobs-setup/2/2. Omogući I2C: kliknite simbol maline pi u gornjem lijevom kutu. Idite na postavke> konfiguracija raspberry pi> sučelja> i potvrdite okvir "omogući" na I2C. Zatim kliknite OK.3. Sada otvorite prozor terminala. Na komandnoj liniji upišite:
sudo apt-get nadogradnja
sudo pip3 instalirajte adafruit-circuitpython-ads1x15
sudo apt-get install python-matplotlib
Korak 2: Izmjerite svjetlosne i temperaturne senzore
Sada ćemo morati izmjeriti otpor osjetnika svjetlosti i temperature. Uzmite voltmetar na postavku mjerenja otpora i izmjerite preko kabela vašeg svjetlosnog senzora u svjetlu i mraku. Zapišite vrijednosti. Sada uzmite svoj voltmetar na žice vašeg senzora temperature za toplo i hladno (koristio sam vodu). Zapišite vrijednosti. Kasnije ćemo ih koristiti u našem krugu.
Korak 3: Povežite svoj krug
1. Prikupite materijale navedene na listi potrošnog materijala. Za potenciometre koristite vrijednost koja je prosjek uspona i padova (svijetlo i tamno, toplo i hladno).
(visoko-nisko) / 2
2. Sledite gornji dijagram kola:
- Povežite SDA na analogno -digitalnom pretvaraču sa SDA na pi
- Priključite SCL na analogno -digitalnom pretvaraču u SCL na pi
- Spojite VDD na analogno -digitalnom pretvaraču na 3.3v na pi
- Spojite GND na analogno -digitalnom pretvaraču na masu na pi
- Ostale komponente spojite prema shemi kola.
Korak 4: Kodirajte
1. Upišite terminal:
nano digital.py
2. Zalijepite kôd koji imam ispod ili na Github u uređivač teksta koji bi se trebao pojaviti.
uvozite matplotlib.pyplot kao plt
uvoz numpy kao np uvozna ploča uvoz busio vrijeme uvoza uvoz adafruit_ads1x15.ads1115 kao ADS iz adafruit_ads1x15.analog_in uvoz AnalogIn i2c = busio. I2C (board. SCL, board. SDA) ads = ADS. ADS1115 (i2c) x = 0 light = AnalogIn (oglasi, ADS. P0) temp = AnalogIn (oglasi, 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 ('Vrijeme (minute)') plt.ylabel (' Nivo ') plt.title (' Svjetlo i temp. Tokom vremena ') plt.legend () dok je 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. Sada pritisnite CTRL+X za izlaz, pritisnite y za spremanje, a zatim pritisnite enter.
Pokrenite svoj program upisivanjem terminala:
sudo python3 digital.py
4. Podesite potenciometre tako da grafikon prikazuje širok raspon vrijednosti. Pokušajte osvijetliti senzor i isključiti svjetla u prostoriji kako biste bili sigurni da grafikon prikazuje širok raspon vrijednosti.
Ako bilo koja od vrijednosti padne ispod dna, pokušajte spustiti odgovarajući djelitelj (red 29 i 31).
Ako bilo koja od vrijednosti prelazi vrh, pokušajte povećati odgovarajući djelitelj (red 29 i 31).
Korak 5: Rješavanje problema
1. Dvaput provjerite sve spojeve prema dijagramu kola
2. Otkrivanje I2C - prikazat će vam se svi uređaji povezani putem i2c:
Upišite terminal:
sudo apt-get install i2c-tools
sudo i2cdetect - y 1
Preporučuje se:
Slanje podataka s Arduina u Excel (i iscrtavanje): 3 koraka (sa slikama)
Slanje podataka s Arduina u Excel (i iscrtavanje istih): Opširno sam tražio način na koji mogu iscrtati očitavanje svog Arduino senzora u stvarnom vremenu. Ne samo iscrtati, već i prikazati i pohraniti podatke za daljnje eksperimentiranje i ispravke. Najjednostavnije rješenje koje sam pronašao bilo je korištenje programa Excel, ali s
Iscrtavanje podataka uživo senzora temperature (TMP006) pomoću MSP432 LaunchPada i Pythona: 9 koraka
Iscrtavanje podataka uživo senzora temperature (TMP006) pomoću MSP432 LaunchPada i Pythona: TMP006 je temperaturni senzor koji mjeri temperaturu objekta bez potrebe za dodirom s objektom. U ovom vodiču ćemo iscrtati žive podatke o temperaturi iz BoosterPack-a (TI BOOSTXL-EDUMKII) koristeći Python
IoT: Vizualizacija podataka senzora svjetlosti pomoću NOD-RED: 7 koraka
IoT: Vizualizacija podataka senzora svjetlosti pomoću Node-RED: U ovom uputstvu ćete naučiti kako stvoriti senzor povezan s internetom! Koristit ću senzor ambijentalnog svjetla (TI OPT3001) za ovu demonstraciju, ali bilo koji senzor po vašem izboru (temperatura, vlažnost, potenciometar itd.) Bi radio. Vrijednosti senzora
Očitavanje temperature pomoću LM35 temperaturnog senzora s Arduino Uno: 4 koraka
Očitavanje temperature pomoću LM35 temperaturnog senzora s Arduino Uno: Zdravo momci, u ovim uputama naučit ćemo kako koristiti LM35 s Arduinom. Lm35 je temperaturni senzor koji može očitati vrijednosti temperature od -55 ° C do 150 ° C. To je uređaj sa 3 terminala koji daje analogni napon proporcionalan temperaturi. Najviše
Slanje-IOT-podataka-bežičnog-senzora temperature i vlažnosti-senzora-u-MySQL: 41 korak
Slanje-podataka-IOT-bežičnog-senzora temperature i vlažnosti-senzora-u-MySQL: Predstavljamo NCD-ov dugoročni IoT osjetnik temperature i vlažnosti. Zahvaljujući rasponu do 28 milja i bežičnom mrežnom arhitekturom, ovaj senzor prenosi podatke o vlažnosti (± 1,7%) i temperaturi (± 0,3 ° C) u intervalima koje definira korisnik, spavajući