Съдържание:

Четене и изобразяване на данни от сензора за светлина и температура с Raspberry Pi: 5 стъпки
Четене и изобразяване на данни от сензора за светлина и температура с Raspberry Pi: 5 стъпки

Видео: Четене и изобразяване на данни от сензора за светлина и температура с Raspberry Pi: 5 стъпки

Видео: Четене и изобразяване на данни от сензора за светлина и температура с Raspberry Pi: 5 стъпки
Видео: Modkam - Zigbee soil moisture sensor for plants 2024, Ноември
Anonim
Четене и изобразяване на данни от сензора за светлина и температура с Raspberry Pi
Четене и изобразяване на данни от сензора за светлина и температура с Raspberry Pi

В тази инструкция ще научите как да четете сензор за светлина и температура с малинов pi и ADS1115 аналогово -цифров преобразувател и да го начертаете с помощта на matplotlib. Нека започнем с необходимите материали.

Консумативи

  1. Raspberry pi (всеки ще го направи, въпреки че използвам 4)
  2. MicroSD карта с инсталиран Raspbian (добър урок:
  3. HDMI монитор и източник на захранване
  4. Микро USB кабел
  5. Adafruit ADS 1115 аналогово -цифров конвертор:
  6. Кабелни проводници
  7. сензор за светлина (LDR)
  8. температурен сензор
  9. потенциометър x2 (стойността ще бъде средната точка на диапазона на съпротивление на вашите датчици за температура и светлина, които ще измерим по -късно)
  10. Платка

Стъпка 1: Настройте вашия Raspberry Pi

1. Следвайте този урок, за да настроите вашето малиново пи: https://www.raspberrypi.org/help/noobs-setup/2/2. Активиране на I2C: щракнете върху символа на малиново пи в горния ляв ъгъл. Отидете на предпочитания> конфигурация на raspberry pi> интерфейси> и поставете отметка в квадратчето „активиране“на I2C. След това щракнете върху OK. Сега отворете терминален прозорец. В командния ред въведете:

sudo apt-get надстройка

sudo pip3 инсталирайте adafruit-circuitpython-ads1x15

sudo apt-get install python-matplotlib

Стъпка 2: Измерете вашите сензори за светлина и температура

Сега ще трябва да измерим съпротивлението на сензорите за светлина и температура. Вземете волтов метър при настройката за измерване на съпротивлението и измерете през проводниците на вашия сензор за светлина при светлина и тъмнина. Запишете стойностите. Сега вземете своя волтметър върху проводниците на температурния сензор при горещо и студено (използвах вода). Запишете стойностите. Ще ги използваме по -късно в нашата верига.

Стъпка 3: Свържете вашата верига

Свържете вашата верига
Свържете вашата верига

1. Съберете материалите, изброени в списъка с консумативи. За потенциометрите използвайте стойност, която е средната за върховете и спадовете (светло и тъмно, горещо и студено).

(високо-ниско) / 2

2. Следвайте схемата по -горе:

  1. Свържете SDA на аналогово -цифровия преобразувател към SDA на pi
  2. Свържете SCL на аналогово -цифровия преобразувател към SCL на pi
  3. Свържете VDD на аналогово -цифров преобразувател към 3.3v на pi
  4. Свържете GND на аналогово -цифровия преобразувател към земята на pi
  5. Свържете останалите компоненти съгласно електрическата схема.

Стъпка 4: Код

1. Въведете терминал:

nano digital.py

2. Поставете кода, който имам по -долу или в Github, в текстовия редактор, който трябва да се появи.

импортирайте matplotlib.pyplot като plt

внос numpy като np импортна дъска внос busio време за импортиране импорт adafruit_ads1x15.ads1115 като ADS от adafruit_ads1x15.analog_in внос AnalogIn i2c = busio. I2C (board. SCL, board. SDA) ads = ADS. ADS1115 (i2c) x = 0 light = AnalogIn (реклами, ADS. P0) temp = AnalogIn (реклами, 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 ('Време (минути)') plt.ylabel (' Ниво ') plt.title (' Светлина и температура с течение на времето ') plt.legend () докато 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. Сега натиснете CTRL+X за изход, натиснете y за запазване, след това натиснете enter.

Стартирайте програмата си, като въведете терминал:

sudo python3 digital.py

4. Настройте потенциометрите така, че графиката да показва широк диапазон от стойности. Опитайте да осветите сензора и да изключите осветлението в стаята, за да сте сигурни, че графиката показва широк диапазон от стойности.

Ако някоя от стойностите падне под дъното, опитайте да спуснете съответния делител (ред 29 и 31).

Ако някоя от стойностите надхвърли горната част, опитайте да увеличите съответния делител (ред 29 и 31).

Стъпка 5: Отстраняване на неизправности

1. Проверете два пъти всички връзки спрямо електрическата схема

2. I2C откриване - Ще ви покаже всички устройства, свързани чрез i2c:

Въведете терминал:

sudo apt-get инсталирайте i2c-tools

sudo i2cdetect - y 1

Препоръчано: