Turinys:

Šviesos ir temperatūros jutiklio duomenų skaitymas ir grafikas naudojant „Raspberry Pi“: 5 žingsniai
Šviesos ir temperatūros jutiklio duomenų skaitymas ir grafikas naudojant „Raspberry Pi“: 5 žingsniai

Video: Šviesos ir temperatūros jutiklio duomenų skaitymas ir grafikas naudojant „Raspberry Pi“: 5 žingsniai

Video: Šviesos ir temperatūros jutiklio duomenų skaitymas ir grafikas naudojant „Raspberry Pi“: 5 žingsniai
Video: 3 viename ZigBee temperatūros, drėgmės ir šviesos jutiklis su LCD ekranu 2024, Gruodis
Anonim
Šviesos ir temperatūros jutiklių duomenų skaitymas ir grafikas su „Raspberry Pi“
Šviesos ir temperatūros jutiklių duomenų skaitymas ir grafikas su „Raspberry Pi“

Šioje instrukcijoje sužinosite, kaip skaityti šviesos ir temperatūros jutiklį su aviečių pi ir ADS1115 analoginiu -skaitmeniniu keitikliu ir grafikuoti jį naudojant matplotlib. Pradėkime nuo reikalingų medžiagų.

Prekės

  1. Raspberry pi (tinka bet kas, nors naudoju 4)
  2. „MicroSD“kortelė su įdiegta „Raspbian“(gera pamoka:
  3. HDMI monitorius ir maitinimo šaltinis
  4. Mikro USB kabelis
  5. „Adafruit ADS 1115“analoginis į skaitmeninį keitiklį:
  6. Jumperio laidai
  7. šviesos jutiklis (LDR)
  8. temperatūros jutiklis
  9. potenciometras x2 (vertė bus jūsų temperatūros ir šviesos jutiklių pasipriešinimo diapazono vidurys, kurį mes išmatuosime vėliau)
  10. Bandomoji Lenta

1 žingsnis: nustatykite „Raspberry Pi“

1. Vadovaukitės šia pamoka, kad nustatytumėte „Raspberry pi“: https://www.raspberrypi.org/help/noobs-setup/2/2. Įgalinti I2C: viršutiniame kairiajame kampe spustelėkite aviečių pi simbolį. Eikite į nuostatas> aviečių pi konfigūracija> sąsajos> ir pažymėkite langelį „įgalinti“I2C. Tada spustelėkite Gerai.3. Dabar atidarykite terminalo langą. Komandinės eilutės tipas:

sudo apt-get atnaujinimas

sudo pip3 įdiegti adafruit-circuitpython-ads1x15

sudo apt-get install python-matplotlib

2 žingsnis: išmatuokite šviesos ir temperatūros jutiklius

Dabar turėsime išmatuoti šviesos ir temperatūros jutiklių atsparumą. Paimkite voltmetrą pagal varžos matavimo nustatymą ir išmatuokite šviesos jutiklio laidus šviesoje ir tamsoje. Įrašykite vertes. Dabar paimkite savo voltmetrą prie temperatūros jutiklio laidų karštu ir šaltu (aš naudojau vandenį). Įrašykite vertes. Mes juos naudosime vėliau savo grandinėje.

3 žingsnis: prijunkite grandinę

Sujunkite grandinę
Sujunkite grandinę

1. Surinkite medžiagų, išvardytų prekių sąraše. Potenciometrams naudokite vertę, kuri yra aukščiausių ir žemiausių (šviesi ir tamsi, karšta ir šalta) vidurkis.

(didelis- žemas) / 2

2. Sekite aukščiau pateiktą schemą:

  1. Prijunkite SDA iš analoginio į skaitmeninį keitiklį prie SDA ant pi
  2. Prijunkite SCL iš analoginio į skaitmeninį keitiklį prie SCL ant pi
  3. Prijunkite VDD iš analoginio į skaitmeninį keitiklį prie 3.3v ant pi
  4. Prijunkite GND iš analoginio į skaitmeninį keitiklį prie žemės
  5. Prijunkite likusius komponentus pagal schemą.

4 žingsnis: kodas

1. Įveskite terminalą:

nano digital.py

2. Įklijuokite žemiau esantį arba „Github“turimą kodą į teksto rengyklę, kuri turėtų pasirodyti.

importuoti matplotlib.pyplot kaip plt

importuoti numpy kaip np importuoti lentą importuoti busio importo laiką importuoti adafruit_ads1x15.ads1115 kaip ADS iš adafruit_ads1x15.analog_in importuoti AnalogIn i2c = busio. I2C (board. SCL, board. SDA) ads = ADS. ADS1115 (i2c) x = 0 light = AnalogIn (skelbimai, ADS. P0) temp = AnalogIn (skelbimai, 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 ('Laikas (minutės)') plt.ylabel (' Lygis ') plt.title (' Šviesa ir temperatūra laikui bėgant ') plt.legend () o tiesa: x += 5 Y1.append (light.value/30) X1.append (x) Y2.append (temp.value /3) X2.pridėti (x) plt.plot (X1, Y1, label = "light", color = '#0069af') plt.plot (X2, Y2, label = "Temp", color = '#ff8000') plt. pauzė (300)

3. Dabar paspauskite CTRL+X, kad išeitumėte, paspauskite y, kad išsaugotumėte, tada paspauskite enter.

Paleiskite programą įvesdami terminalą:

sudo python3 digital.py

4. Sureguliuokite potenciometrus, kad grafike būtų rodomas platus reikšmių diapazonas. Pabandykite apšviesti jutiklį ir išjungti kambario apšvietimą, kad grafikas parodytų platų reikšmių diapazoną.

Jei kuri nors iš reikšmių nukrenta žemiau apačios, pabandykite nuleisti atitinkamą daliklį (29 ir 31 eilutės).

Jei kuri nors iš verčių yra aukščiau viršaus, pabandykite padidinti atitinkamą daliklį (29 ir 31 eilutės).

5 veiksmas: trikčių šalinimas

1. Dar kartą patikrinkite visas jungtis pagal grandinės schemą

2. I2C aptikimas - parodys visus įrenginius, prijungtus per i2c:

Įveskite terminalą:

sudo apt-get install i2c-tools

sudo i2cdetect - y 1

Rekomenduojamas: