Arduino: настраиваем LCD и делаем метеостанцию

30.10.2017

Сделать термометр с помощью Arduino и LCD вы сможете довольно легко. Эту конструкцию можно рассматривать, например, как маленькую метеостанцию, или просто в качестве пробы сил перед большими проектами. О том, как это сделать своими руками мы и расскажем в данной статье с практическими советами.

Чтобы вы могли заняться настройкой LCD на своем Arduino, вам понадобится, помимо самого Arduino, еще LCD и соединительный кабель, а также потенциометр и, в некоторых случаях, макетная плата. В интернете вы легко сможете найти достаточно большое количество практичных и недорогих Arduino-комплектов (например, такой), в которые уже входят все эти конструктивные элементы. Если вы еще никогда не работали с Arduino, то сначала вам надо прочитать статью Ключевые различия мини-ПК на базе Arduino и Raspberry.

Arduino: настраиваем LCD
  • В первую очередь правильно подключите все конструктивные элементы к Arduino — как показано на картинке — и запустите Arduino IDE.

  • Для начала вы должны дополнить код командой «#include <LiquidCrystal.h>» (без кавычек), чтобы импортировалась LiquidCrystal-библиотека.
  • После этого вы должны определить LCD с помощью команды «LiquidCrystal lcd(7, 8, 9, 10, 11, 12);». Возможно, придется немного подрегулировать PIN-контакты, которые упомянуты в вышеприведенной команде.
  • В void setup() вы должны запустить ваш Это можно сделать, например, командой «lcd.begin(16, 2);».
  • Теперь вы можете протестировать С помощью команды «lcd.print(«Hello, World!»)», например, на дисплее можно отобразить знаменитую фразу «Hello, World!». С помощью команды «lcd.setCursor(0, 1);» вы можете передвинуть курсор. При этом следует обратить внимание на то, что отсчет у данного компьютера всегда начинается с 0. С помощью команды «lcd.clear();» вы можете стереть все ранее выведенные на дисплее данные.

Arduino: делаем термометр

Arduino: делаем термометр

После того, как вы уже разобрались со своим LCD, вы можете сделать маленький термометр. Для этого вам дополнительно понадобятся NTC и 10kΩ-сопротивление.

  • Подключите все конструктивные элементы так, как показано на иллюстрации.
  • Теперь в самом начале вашего кода вы должны добавить команду «int tempPin = 0;», чтобы Arduino позже знал, к какому (аналоговому) PIN-контакту вы подключили
  • Дополните void loop() командой «int tempReading = analogRead(tempPin);», затем командой «double tempK = log(10000.0 * ((1024.0 / tempReading — 1)));», а также командой «tempK = 1 / (0.001129148 + (0.000234125 + (0.0000000876741 * tempK * tempK )) * tempK );» (разумеется, все они должны быть без обрамляющих кавычек). Теперь в переменной tempK будет сохраняться значение температуры в Кельвинах.
  • С помощью команды «float tempC = tempK — 273.15;» вы легко можете перевести показания в градусы Цельсия.
  • Добавьте теперь (все еще в void loop) команду «lcd.setCursor(0, 0);», чтобы переместить курсор в самое начало экрана. Затем вы должны добавить команду «lcd.print(tempC);», чтобы температура отображалась на дисплее. Так как курсор раз за разом будет устанавливаться в начало, вам не нужно добавлять никакой команды «lcd.clear()».

Фото: компании-производители, CHIP.de