Этот проект представляет собой простую систему регистрации температуры USB с использованием arduino uno и функцию последовательного мониторинга в среде разработки arduino. Система контролирует температуру каждые 2 секунды и показывает ее на серийном мониторе arduino. Температура показана в градусах Цельсия и градусах Фаренгейта. Система подключается к ПК через USB-порт. LM35 используется как датчик температуры.
LM35 — это трехконтактный линейный температурный датчик от National Semiconductors. Он может измерять температуру от -55 ° C до + 150 ° C. Выходная мощность LM35 увеличивается на 10 мВ на градус по Цельсию, повышая температуру. LM35 может работать от источника питания 5 В от тока меньше 60 мкА. Выводы из LM35 показан на рисунке ниже.
Принципиальная электрическая схема.
Датчик температуры LM35 соединяется с Arduino через аналоговые входные контакты A0, A1 и A2. Аналоговый вход A0 действует как контакт питания 5V для LM35. Аналоговый входной контакт A2 служит в качестве заземляющего контакта для LM35. Аналоговый входной контакт A1 установлен как вход, а выход напряжения LM35 подключается к ардуину через этот вывод. Эта схема очень полезна, поскольку вы можете подключить LM35 непосредственно к гнезду аналогового входа, и никаких внешних соединительных проводов не требуется. Плата arduino питается от ПК через USB-кабель, и в этой цепи не требуется внешний источник питания. USB-порт также служит средством связи между arduino и ПК.
Программа.
int t = 0; int vcc = A0; // устанавливает аналоговый вход A0 как + 5V источник для LM35 int sensor = A1; // устанавливает A1 как вход датчика int gnd = A2; // устанавливает аналоговый вход A2 в качестве заземления для LM35 float temp; float tempc; float tempf; void setup () { pinMode (VCC, OUTPUT); pinMode (GND, OUTPUT); pinMode (датчик, INPUT); digitalWrite (VCC, HIGH); // устанавливает аналоговый вход A0 HIGH digitalWrite (GND, LOW); // устанавливает аналоговый вход A2 LOW Serial.begin (9600); // устанавливает скорость передачи в бодах на 9600 } void loop () {delay (2000); // вызывает задержку в 2 секунды т = Т + 2; // увеличивает время на 2 каждые две секунды Темп = analogRead (датчик); // читает вывод LM35 tempc = (температура * 5) / 10; // преобразует цифровое значение в градусы C tempf = (tempc * 1.8): +32; // преобразует степень C в степень F Serial.println ( "..............."); Serial.println («Регистратор температуры»); Serial.print («Время в секундах =»); // печатает время в окне последовательного монитора Serial.println (т); Serial.print («Температура в градусах C =»); // печатает температуру в градусахC Serial.println (tempc); Serial.print («Температура в градусах F =»); // печатает температуру в градусах F. Serial.println (tempf); }
О программе.
Выход напряжения LM35 подключается к аналоговому входу A1 ардуино. Напряжение на этом контакте будет пропорционально температуре, и это напряжение считывается с использованием функции analogRead. Функция analogRead будет считывать напряжение (в диапазоне от 0 до 5) на конкретном входном штыре и преобразует его в цифровое значение от 0 до 1023. Например, если 29 ° C является температурой, выход LM35 будет 290mV. Результатом функции analogRead будет 290mV / (5/1023) = 59. Должен быть какой-то способ конвертировать эти 59 в 29.0 для отображения в окне последовательного монитора. Это делается путем умножения 59 на 5, а затем деления результата на 10. Результатом будет температура в ° C, и она отображается с использованием функции Serial.print. Затем он преобразуется в ° F, используя следующую формулу: ° F = (° C * 1,8) +32. Отображается также температура в ° F. Последовательный монитор можно получить на вкладке «Инструменты» в среде разработки arduino IDE. Ярлык для последовательного монитора — ctrl + shift + M.