Меню

Arduino uno датчик температуры lm35dz

Подключение LM35 к Ардуино

На повестке дня — подключение LM35 к Arduino. Сегодня мы рассмотрим модуль устройства, его базовые характеристики, область применения и схему подключения. И начнем с главного – определения, что же это такое. Речь идет о высокоточном аналоговом датчике температуры, который нашел свое применение во многих проектах, связанных с радиоэлектроникой. Подобные датчики часто используются для конструирования и модернизации простых метеостанций, устройств для регулирования подачи энергии в систему отопления, котлах (те, что для нагрева воды), сенсорах контроля перегрева компьютерных компонентов и т.д.

Несомненны также достоинства термодатчика. Он легок в сборке, доступен по стоимости, достаточно функционален. Для ясности давайте посмотрим на технические параметры модуля:

  • напряжение питания: 2,7 — 5,5V;
  • потребляемый ток: 50 мкА;
  • разрешение: 10.0 mV/°C;
  • погрешность: 2 градуса;
  • диапазон рабочих температур: 10°C — 125°C;
  • размеры: 26.5х18 мм.

Распиновка выводов показана на скриншоте:

Подключение к Ардуино

Переходим к схеме сборки макета. Для этой цели нам необходимы такие аппаратные компоненты: микроконтроллер Arduino Uno (либо другие совместимые, например, Nano / Mega), модуль датчика температуры, макетная плата, соединительные провода.
Конечно, подобная сборка не является панацеей. Ее можно модернизировать и расширить, добавив светодиод, резистор, текстовый экран ∕ ЖК индикатор и другое «железо». Все зависит от ваших требований и возможностей!

Заливаем несложный скетч (для проверки работоспособности термодатчика) – в нем мы не будем использовать библиотеки, только стандартные коды:
Для управления открываем монитор последовательного порта (клавиши Ctrl+Shift+M или через меню Инструменты). В нем будут доступны нужные нам температурные показания – уже в градусах Цельсия.

Еще одна модификация датчика — LM35DZ. У него уже улучшена точность – составляет 1 гр., расширены границы температуры (от −55 до +150°C), продуман малый саморазогрев (0.08°C).

На самом деле версий сенсоров достаточно много – в этом легко убедиться, открыв страничку любого интернет-магазина, но все они схожи по действию и потому практичны (лишь с небольшими нюансами).
На этом прощаемся с вами! Удачи!

Источник

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

В этом уроке мы покажем вам, как можно сделать простой термометр на Arduino, используя обычный ЖК-дисплей 16×2 и датчик температуры LM35.

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

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

Для сборки нашего Ардуино термометра нам понадобится ряд деталей, которые мы можем найти на любых интернет-магазинах:

  • 1 x Arduino UNO (может быть любая плата Arduino)
  • 1 х макет
  • 1 x USB-кабель
  • 1 x 16×2 ЖК-дисплей
  • 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 ЖК-дисплея

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

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

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

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

Читайте также:  Термобаня для проверки датчиков температуры

Источник

arduinoLab

Высокоточный аналоговый датчик температуры LM35, Подключение к Arduino

LM35 — Прецизионный аналоговый датчик температуры, на выходе которого формируется напряжение пропорционально температуре по шкале Цельсия.

Характеристики датчика:

  • Диапазон температур: − 55°C … 150°C ±0.5 при 25°C, доступный 0°C … 110°C
  • Разрешение: 10.0 mV/°C
  • Напряжение на выходе при 25°C: 250мВ.
  • Напряжение питания: от 4.0 В до 30 В.

Особенности работы с датчиком:

На выходе датчика формируется напряжение пропорционально температуре по шкале Цельсия, величина напряжения 10.0 mV на 1°C, то есть, если температура датчика 25°C на выходе датчика будет 250mV. С этим связаны сложности при работе с Arduino.

  • Не возможно измерение отрицательных температур, 0°C это 0 вольт на выходе датчика, чтобы измерять весь диапазон нужно подавать отрицательное напряжение, но даже если оно будет подано, встроенный аналого-цифровой преобразователь в Arduino не может измерять отрицательное напряжение.
  • Низкое разрешение встроенного АЦП Arduino и нестабильность опорного напряжения в случаи использования в качестве опорного напряжение питания 5 вольт. Решается использованием встроенного в Arduino UNO источника опорного напряжения 1.1 вольт, в этом случаи верхний придел температур, которые могут быть измерены, 110°C

При использовании датчика с Arduino UNO, доступный диапазон температур 0°C … 110°C.

Схема подключения датчика:

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

Открываем «монитор порта» и видим точные показания температуры с высоким разрешением.

Видео:

Источник

Как подключить датчик LM35 к Ардуино

Датчик температуры lm35 может использоваться во многих простых проектах, например, метеостанция на Ардуино. Рассмотрим на данном занятии простой аналоговый термодатчик LM35: как работает радиоэлемент, схема его подключения к Arduino UNO. Рассмотрим простой скетч для датчика температуры, который будет выдавать показания температуры на монитор компьютера или LCD дисплей.

Характеристики датчика lm35, описание

— питание: 2,7-5,5 Вольт;
— потребляемый ток: 50 mkА;
— диапазон температур: 10°C — 125°C
— погрешность: 2 градуса.

Вместо lm35 можно использовать любой другой датчик температуры, например, TMP35, LM35, TMP37, LM335. Выглядит датчик как транзистор и поэтому его легко спутать, поэтому всегда внимательно читайте маркировку на радиоэлементах. Часто на основе данного датчика производители делают модули температуры для Ардуино (смотри фото выше). Если у вас только сам датчик lm35, то он имеет три вывода.

LM35 схема включения, как работает (datasheet)

Если посмотреть на температурный сенсор lm35 со стороны контактов и срезом вверх (как на рисунке), то слева будет положительный контакт для питания 2,7-5,5 Вольт, контакт по центру — это выход, а справа — отрицательный контакт питания (GND).

Как подключить датчик lm35 к Ардуино

Для этого занятия нам потребуется:

  • плата Arduino Uno / Arduino Nano / Arduino Mega;
  • Макетная плата;
  • температурный датчик LM35;
  • светодиод и резистор на 220 Ом;
  • провода «папа-папа».

Данный датчик аналоговый, поэтому на выходе мы имеем значения не 0 или 1, а непрерывное изменение напряжения в диапазоне от 0 до 5 вольт. Следовательно, мы должны подключить датчик lm35 к Arduino к аналоговым портам A0-A5 по схеме, изображенной далее. После сборки схемы загрузите скетч для снятия значений с аналоговых датчиков и вывода данных в аппаратный последовательный порт.

Скетч для термодатчика lm35 Ардуино

Пояснения к коду:

  1. в первой строчке мы зарезервировали память для переменой temp ;
  2. оператор int указывает, что значения temp могут принимать только целое число.

Калибровка температурного датчика lm35

Калибровка аналогового датчика нужна, для того чтобы получать показания с lm35 температурного датчика в градусах Цельсия, как это сделано на цифровом датчике температуры и влажности DHT11. Для этого в скетч следует добавить еще одну переменную и вставить формулу, которая преобразует аналоговый сигнал с датчика в градусы Цельсия. Для калибровки lm35 следует изменить формулу в программе.

Читайте также:  Датчик расхода воздуха 1g gze

Источник

Подключение датчика температуры LM35DZ (LM35DZ) к Arduino

LM35 является аналоговым температурным сенсором, в отличие от того же DS18B20. Это сильно упрощает работу с датчиком, так как не нужно эмулировать протокол OneWire и можно вручную легко корректировать показания датчика, изменяя коэффициенты в коде.

Однако, подключение такого датчика менее помехозащищённое, чем у DS18B20, поэтому необходимо иметь точные источники опорного напряжения (ИОН) и правильно разводить печатную плату для датчика, иначе показания могут быть неточными. Но для «домашних» применений типа метеостанции, где не так важна ошибка в плюс-минус градус, датчик идеален.

Он ещё и дешевле DS18B20. Дешевле него, наверное, только термисторы, но это уже совсем другой разговор 🙂

Для реализации проекта из этой статьи нам потребуются следующие компоненты:

Пример подключения LM35 к Arduino Uno

Рассмотрим код, использующийся для преобразования показаний датчика в человекочитаемые значения температуры:

Вас может заинтересовать функция analogReference(INTERNAL). Эта функция позволяет сменять источник опорного напряжения, которое используется для измерений с помощью аналогово-цифрового преобразователя. По умолчанию в качестве ИОН используется питание контроллера, т.е. 5В.

Верхняя граница напряжения ИОН равна максимальному значению АЦП, т.е 10 бит = 2 в 10 степени = 1024. Но из-за нестабильности входного напряжения (оно может быть как 4.5В, так и 5.1В) часто применяется внутренний ИОН, который содержится практически в каждом контроллере AVR, который поддерживает АЦП.

При использовании ИОН = 5В, точность измерений равна 5.000 / 1024 = 4.9мВ. Если учесть низкую точность АЦП, то погрешность примерно равна 20мВ. Много, не правда ли? Так как разрядность АЦП мы поднять не можем, для увеличения точности показаний мы можем сузить диапазон измеряемого напряжения.

В микроконтроллерах ATMega328 и ATMega168 применяются ИОН, выдающие 1.1В. В микроконтроллере ATMega8, на котором была построена первая плата Arduino, ИОН выдает 2.56В.

То есть расчётная точность измерения будет составлять:

Но кроме внутреннего ИОН, можно подцепить также внешний ИОН ко входу AREF микроконтроллера, что позволить поднять точность измерений. Включение внешнего ИОН выполняется так: analogReference(EXTERNAL).

У нашего термометра максимальное выходное напряжение составляет что-то около 1В, то есть для достижения максимальной точности нам надо иметь ИОН с Uвых = 1В. Мы применим внутренний ИОН на 1.1В, так как сверхвысокая точность нам не нужна. Однако, точность всё равно выше относительно стандартного ИОН на 5В – при его использовании точность в диапазоне 1В составляла бы 24.5мВ.

Подводя итоги, скажем, что простота использования такого датчика и его цена – главные его преимущества, пусть точность и оставляет желать лучшего. Опять же, каждой задаче – свой инструмент, так что выбирайте датчик температуры, исходя из требований проекта. Удачи вам в ваших проектах!

Источник

Ардуино: датчик температуры LM35

Еще один полезный прибор, который часто используется в современных устройствах — это датчик температуры. Даже в вашем компьютере есть сразу несколько датчиков температуры, с помощью которых система следит за перегревом ключевых компонентов — процессора, видеокарты, блока питания, и прочих узлов. Самый же популярный пример использования датчика температуры дома — термостат. Это устройство, которое постоянно следит за температурой воздуха, и регулирует подачу энергии в систему отопления. Смежный пример — котел для нагрева воды.

В нашем уроке мы используем датчик TMP35. Вместо него можно использовать любой другой похожий датчик: TMP35, TMP37, LM35, LM335 и подобные. Выглядит датчик как обычный транзистор:

Читайте также:  Схема подключения датчика температуры охлаждающей жидкости уаз буханка

Можно легко спутать, так что рекомендую всегда внимательно читать маркировку на таких устройствах (да и вообще сначала всегда читайте, потом подключайте :). Конкретно этот датчик имеет следующие характеристики:

  • напряжение питания: от 2,7 до 5,5 В;
  • погрешность: 2 градуса;
  • измеряемая температура: от 10°C до 125°C
  • потребляемый ток: 50 мкА.

Подключение

Датчик TMP35 имеет три вывода (три ноги). Если посмотреть на датчик со стороны этих выводов и срезом вверх, как показано на рисунке,

то слева будет — положительный контакт питания (+2.7 — 5.5В),
по центру — выход на контроллер,
и справа — отрицательный контакт питания (земля).

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

Внешний вид макета

Принципиальная схема

Вот так должна выглядеть собранная схема.

Программа

Подключив датчик температуры к Ардуино, начинаем писать программу. Первое что мы сделаем, это выведем необработанный сигнал с аналогового входа в последовательный порт, для того чтобы просто понять, как меняется значение на входе A0. Нам понадобится простая программа:

Внимание, математика! В программе можно заметить выражение:

Оно необходимо для того, чтобы преобразовать аналоговый сигнал датчика в градусы Цельсия. Дело тут вот в чем. Все аналоговые датчики имеют важную характеристику — отношение количества вольт к единице измеряемой величины. Например, в спецификации к нашему датчику tmp35 написано, что каждый градус измеряемой температуры, соответствует 10 милливольтам напряжения на выходе. Исходя из этих рассуждений, прочитанное с помощью analogRead значение мы сначала преобразуем к количеству Вольт:

Такая процедура называется нормировкой. Здесь 1023 — максимальное значение, которое может вернуть нам 10-битный АЦП, встроенный в Ардуино Уно.
5 — рабочее напряжение АЦП.

Затем преобразуем эти вольты в градусы Цельсия:

Превращаем вольты в милливольты (*1000), и делим на 10 ( то самое число из спецификации! ).

В общем, даже если ничего не понятно, загружаем программу на Ардуино и наблюдаем за температурой окружающего воздуха. Например, у нас в лаборатории датчик оценил температуру следующим образом:

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

Работает! Датчик незамедлительно регистрирует снижение температуры.

Делаем термостат

Теперь добавим в программу некое действие, которое будет совершаться если температура упадет ниже заданного нами порога. Пусть этот порог будет равен 15°C. Самое простое, что мы можем сделать — это зажигать на Ардуино штатный светодиод #13. Получается такая вот программа:

Кто-то забыл закрыть окно — температура резко опустилась ниже 15 — светодиод зажигается. Закрываем окно, активно дышим — светодиод гаснет. А теперь представьте, что вы зажигаете не светодиод, а подаете сигнал на реле, которое включает обогреватель в комнате. Получается готовый термостат!

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

К размышлению

В современных устройствах всё чаще применяют цифровые датчики температуры, например, известный в среде DIY датчик DS18B20. Он легко подключается к Ардуино с помощью только одного сигнального провода — one wire. Модуль с таким датчиком есть и у RobotClass:

О том как его подключать и использовать в своих проектах узнаем на уроке про DS18B20.

Источник

Adblock
detector