Ардуїно датчик температури LM35, Клас робототехніки
У нашому уроці ми використовуємо датчик TMP35. Замість нього можна використовувати будь-який інший схожий датчик: TMP35, TMP37, LM35, LM335 та подібні. Виглядає датчик як звичайний транзистор:

- напруга живлення: 2.7-5.5В;
- похибка: 2 градуси;
- температура, що вимірюється: від 10°C до 125°C
- споживаний струм: 50мкА.
1. Підключення
Датчик TMP35 має три виводи (три ноги). Якщо подивитися на датчик з боку цих висновків і зрізом нагору, як показано на малюнку,
то зліва буде - позитивний контакт живлення (+2.7 - 5.5В), по центру - вихід на контролер, і справа - негативний контакт живлення (земля).

Датчик аналоговий, а отже, на його виході ми маємо не 0 або 1, а напругу в діапазоні від 0 до 5 вольт. Отже, ми повинні згадати розділ про аналого-цифрове перетворення (АЦП) сигналів Arduino. Пам'ятаючи, що у Ардуїно Уно є шість аналогових входів (A0-A5), підключаємо наш датчик за наступною схемою:

І як принципової схеми:

Зовнішній вигляд макета

2. Програма
Підключивши датчик температури до Ардуїна, починаємо писати програму. Перше, що ми зробимо, це виведемо необроблений сигнал з аналогового входу в послідовний порт, щоб просто зрозуміти, як змінюється значення на вході A0. Нам знадобиться проста програма:
Увага математика! У програмі можна побачити вираз:
Така процедура називається нормуванням. Тут1023 - максимальне значення, яке може повернути нам 10-бітний АЦП, вбудований в Ардуїно Уно.5 - робоча напруга АЦП.
Потім перетворимо ці вольти на градусиЦельсія:
Перетворюємо вольти на мілівольти (*1000), і ділимо на 10 (те саме число зі специфікації!).
Загалом, навіть якщо нічого не зрозуміло, завантажуємо програму на Ардуїно та спостерігаємо за температурою навколишнього повітря. Наприклад, у нас у лабораторії датчик оцінив температуру наступним чином:

Цілком собі правдиве значення. А тепер піднесемо прилад до відкритого вікна (на вулиці зима -10 ° C):

Працює! Датчик негайно реєструє зниження температури.
3. Робимо термостат
Тепер додамо в програму якусь дію, яка буде здійснюватися, якщо температура впаде нижче заданого нами порога. Нехай цей поріг дорівнюватиме 15°C. Найпростіше, що ми можемо зробити, - це запалювати на Ардуїно штатний світлодіод #13. Виходить така ось програма:
Хтось забув закрити вікно – температура різко опустилася нижче 15 – світлодіод запалюється. Закриваємо вікно, активно дихаємо - світлодіод гасне. А тепер уявіть, що ви запалюєте світлодіод, а подаєте сигнал на реле, яке включає обігрівач в кімнаті. Виходить готовий термостат!
Небагато змінивши програму можна відстежувати не зниження, а перевищення заданого рівня. Наприклад, зручно буде стежити за температурою всередині, скажімо, серверною, і при збільшенні температури до 40 градусів включати витяжку!