Термометр на Arduino, LM35 и LCD

В этом уроке мы покажем вам, как можно сделать простой термометр на Arduino, используя обычный ЖК-дисплей 16x2 и датчик температуры LM35. Значения будут преобразованы в градусы Цельсия и Фаренгейта. Все комплектующие для проекта можно найти на АлиЭкспресс или, например, на Амперке.

Термометр на Arduino, LM35 и LCD

Шаг 1: Необходимые детали

1 x Arduino UNO (может быть любая плата Arduino)
1 х макет
1 x USB-кабель
1 x 16x2 ЖК-дисплей
1 датчик температуры LM35
1 x 10k Потенциометр
1 x 220 Ом резистор
1 x 9 В Батарея и зажим (опционально для большей мобильности)
18 проводов перемычек

Шаг 2: Подключение компонентов к макету

Вставьте ЖК-дисплей, потенциометр и LM35 в макет. Их расположение не имеет значения, поместите их так, как вам нравится.

Шаг 3: Подключение ЖК-дисплея

Это самая сложная часть - теперь вам нужно сделать большую часть соединений. Они заключаются в следующем:

LCD Pin → Arduino Pin
4 → 12
6 → 11
11 → 5
12 → 4
13 → 3
14 → 2
LCD Pin → Контакт макетной платы
1,5,16 → GND (Земля)
2 → 5 В
15 → 5 В (используя резистор на 220 Ом!)

Шаг 4: Подключение потенциометра и LM35

Здесь соединения следующие:

Потенциометр

Одна из сторон идет к GND (Земля), противоположная - к питанию 5 В. Средний контакт подключается к контакту 3 ЖК-дисплея

LM35

См. Рисунок выше.

Пожалуйста, убедитесь, что вы правильно вставляете датчик! Если вы перепутаете соединения, он сгорит!

Шаг 5: Загрузка кода

После подключения всего, подключите Arduino к компьютеру и загрузите код, который ниже. Добавлены несколько комментариев, чтобы объяснить некоторые части кода.

#include <LiquidCrystal.h>         
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); 

int value;
float celsius;
const int lmPin = 0; // Аналоговый вывод LM35
                  
void setup() {
  lcd.begin(16,2);
}
void loop() {
  value = analogRead(inPin);
  celsius = (value / 1023) * 500; // Получение температуры от датчика
  
  lcd.clear();
  lcd.setCursor(0,0);
  lcd.print(celsius);
  lcd.print("C");
  lcd.setCursor(0,1);
  lcd.print((celsius * 9)/5 + 32); 
  lcd.print("F");
  delay(1000);
}

Шаг 6: Заключение

Наслаждайтесь термометром который вы сделали своими руками. Не стесняйтесь изменять код по своему вкусу и улучшать проект, добавляя больше датчиков и прочее.

Ардуино+