- Термометр на Arduino, LM35 и LCD
- Шаг 1. Необходимые детали
- Шаг 2. Подключение компонентов к макету
- Шаг 3. Подключение ЖК-дисплея
- Шаг 4. Подключение потенциометра и LM35
- Шаг 5. Загрузка кода
- Шаг 6. Заключение
- Комнатный термометр на Arduino Nano
- Необходимые компоненты
- Общие принципы работы проекта
- Схема проекта
- Урок 7. Термометр на базе DS18B20 и OLED дисплея 128X64
- Ардуино термометр на основе датчика температуры DS18B20
- Информация о сенсоре DS18B20
- Комплектующие
- Библиотеки
- Термометр через последовательный монитор
- Термометр с ЖК-дисплеем
- Делаем термометр на основе Arduino UNO и датчика DS18B20
- Обзор датчика DS18B20
- Особенности DS18B20
- Требования к комплектующим
- Схема соединения
- Исходный код для термометра
Термометр на 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 ЖК-дисплея
LM35
См. Рисунок выше.
Шаг 5. Загрузка кода
После подключения всего, подключите Arduino к компьютеру и загрузите код, который ниже. Добавлены несколько комментариев, чтобы объяснить некоторые части кода.
Шаг 6. Заключение
Наслаждайтесь термометром который вы сделали своими руками. Не стесняйтесь изменять код по своему вкусу и улучшать проект, добавляя больше датчиков и прочее.
Источник
Комнатный термометр на Arduino Nano
В данной статье мы рассмотрим создание на основы платы Arduino Nano и датчика температуры DS18B20 термометра с красивым внешним видом для измерения температуры в комнате. Измеренная температура будет отображаться с помощью адресной светодиодной ленты.
Необходимые компоненты
- Плата Arduino Nano (купить на AliExpress).
- Digilent WS2812 Addressable LED Strip (адресная светодиодная лента) (купить на AliExpress).
- Датчик температуры DS18B20 (купить на AliExpress).
- Кнопочный переключатель.
Общие принципы работы проекта
В данной статье мы рассмотрим создание термометра для измерения комнатной температуры, то есть в диапазоне примерно от 10 до 35 градусов Цельсия.
Измерять температуру мы будем с помощью датчика DS18B20, обладающего точностью измерения температуры в 0,5 градуса. Более подробно о его характеристиках и способу подключения к плате Arduino вы можете прочитать в данной статье. Измеренная температура будет отображать на адресном светодиодном индикаторе (LED bar) WS2812, который содержит 50 светодиодов. С помощью данного индикатора значение температуры будет отображаться весьма наглядно, используя для этого цвет светодиодов.
При изменении температуры цвет свечения светодиодов будет постепенно изменяться от темно-синего (для низких температур), далее к светло-синему, затем к зеленому (область комфортных температур) и далее до красного (высокие температуры). То есть одного беглого взгляда на термометр будет достаточно чтобы определить находится ли температура в «комфортной зоне» или нет.
Кнопочный переключатель в нашем проекте будет использоваться для изменения режимов работы термометра. Когда переключатель будет отжат, термометр будет функционировать в режиме «DOT» (точка) и текущая температура будет отображаться с помощью свечения одного светодиода.
При нажатии кнопочного переключателя режим работы термометра будет изменяться на линейный. В этом режиме будут светиться все светодиоды, начиная от начальной точки и до измеренной температуры. Если мы нажмем на кнопочный переключатель еще раз, то термометр будет переключать в тестовый режим – все светодиоды на индикаторы будут последовательно зажигаться один за другим. Если мы нажмем кнопку еще раз, то термометр снова вернется в режим DOT и т.д.
Схема проекта
Схема комнатного термометра на основе платы Arduino Nano представлена на следующем рисунке.
Источник
Урок 7. Термометр на базе DS18B20 и OLED дисплея 128X64
Для термометра отлично подходит датчик температуры DS18B20 . Он позволяет измерять температуру в домашних, так и в уличных условиях, потому что исполнен с водонепроницаемом корпусе. В качестве дисплея будем использовать матрицу 0.96 128X64 OLED .
Для создания термометра нам понадобятся следующие компоненты:
Для реализации проекта нам необходимо установить сразу несколько библиотек:
Сборка:
1) OLED дисплей подключаем к arduino следующим образом:
Arduino Uno | Экран 0.96 128X64 OLED |
---|---|
5V | VCC |
GND | GND |
Pin 9 | SCL |
Pin 8 | SDA |
Для удобства подключения можно использовать макетную плату.
2) Датчик температуры DS18B20 подключается к arduino следующим образом.
Распиновка для влагозащитного датчика DS18B20 с метровым проводом:
Arduino UNO | Влагозащитный датчика DS18B20 |
---|---|
5V | Красный провод ( 5V) |
GND | Черный провод (GND) |
Pin 10 | Желтый провод (Сигнальный) (Необходимо подтянуть резистором 4,7кОм к 5V ) |
В случае, если Вы будете использовать не влагозащитный датчик в корпусе to92 .(Датчик температуры DS18B20 в корпусе TO-92)
Теперь необходимо записать скетч в arduino Скачать пример.
Источник
Ардуино термометр на основе датчика температуры DS18B20
Один раз мы уже реализовали проект термометра на основе датчика температуры DS18B20. Сегодня мы сделаем термометр на основе этого датчика другим способом, разберемся с DS18B20 и используем несколько дополнительных библиотек.
Мы сделаем LCD-термометр или, как вариант, Serial-термометр (напечатает данные о температуре на последовательном мониторе Arduino IDE) на основе микроконтроллера Ардуино и цифрового датчика DS18B20, макетов, перемычек. Таким образом, вы сможете измерять температуру воздуха, жидкости, например, воды и температуру земли.
Информация о сенсоре DS18B20
DS18B20 — это цифровой температурный датчик с интерфейсом 1-Wire от Maxim IC. На выходе мы получаем информацию в Цельсиях с точностью от 9 до 12 бит, от -55 до 125 (+/- 0,5). Каждый датчик имеет уникальный 64-разрядный серийный номер, что позволяет использовать огромное количество датчиков на одной шине данных.
Особенности:
- Для уникального интерфейса 1-Wire® требуется только один порт для связи.
- Каждое устройство имеет уникальный 64-битный последовательный код, хранящийся в ПЗУ.
- Многоточечная возможность упрощает использование распределенных температурных зондов.
- Не требует внешних компонентов.
- Может питаться от линии передачи данных.
- Диапазон мощности от 3,0 до 5,5 В.
- Измеряет температуру от -55°C до + 125°C (от -67 °F до + 257 °F) ± 0,5°C от -10°C до + 85°C.
- Разрешение термометра выбирается пользователем от 9 до 12 бит.
- Преобразует температуру в 12-битное цифровую переменную в 750 мс (макс.).
- Определяемые пользователем энергонезависимые (NV) настройки сигнализации.
- Команда поиска по тревоге идентифицирует и адресует устройства, температура которых находится за пределами запрограммированных пределов (состояние аварийной сигнализации).
- Применяется в термостатических устройствах, промышленных системах, потребительских товарах, термометрах или в любых термических чувствительных системах.
Комплектующие
Чтобы сделать термометр, вам понадобятся следующие детали:
- Плата Arduino (UNO, DUE, Micro и т.п.);
- Датчик DS18B20 (водонепроницаемый или нет);
- Резистор 4.7К (в некоторых магазинах продается датчик с резистором 4,7 тыс.);
- ЖК-дисплей 16×2 с шиной I2C;
- Макет;
- Перемычки.
Из программного обеспечения нужно иметь установленную Arduino IDE.
Библиотеки
Прежде чем вы начнете делать термометр, загрузите и распакуйте следующие библиотеки для Arduino в:
/Progam Files (x86)/Arduino/Libraries (по умолчанию):
Все библиотеки вы можете скачать по ссылкам выше или на нашем сайте в разделе Библиотеки.
Термометр через последовательный монитор
Чтобы отобразить данные на последовательном мониторе, подключите датчик DS18B20 к Arduino, используя перемычки и макет, и не забудьте подключить или припаять резистор 4.7k между контактом 2 и 3 датчика.
Затем скачайте, откройте и загрузите файл .ino, который называется — DS18B20_Serial, ниже.
Если все в порядке, вы должны увидеть измеренную температуру на серийном мониторе Arduino IDE.
Термометр с ЖК-дисплеем
Если вы не хотите измерять температуру через последовательный монитор, то этот шаг для вас.
Подключите ЖК-дисплей I2C к контактам UNO:
Затем скачайте и загрузите файл .ino, который называется — DS18B20_I2C_LCD. Если все в порядке, вы увидите показания температуры на дисплее.
Источник
Делаем термометр на основе Arduino UNO и датчика DS18B20
В этом уроке мы будем использовать датчик температуры DS18B20 с Arduino UNO для создания термометра. Датчик DS18B20 является хорошим вариантом, когда в проекте с высокой точностью требуется хорошая реакция. Мы покажем как подключить DS18B20 к вашему Arduino UNO и отобразить данные температуры на ЖК-дисплее 16×2.
Обзор датчика DS18B20
Датчик DS18B20 взаимодействует с Arduino через 1-проводную шину. По определению для связи с Arduino требуется только одна линия данных (и земля).
Рабочая температура датчика колеблется от -55° C до + 125° C с точностью ± 0,5° C в диапазоне от -10° C до + 85° C. Кроме того, DS18B20 может получать питание непосредственно от линии передачи данных («паразитный источник питания») без необходимости внешнего источника питания.
Каждый DS18B20 имеет уникальный 64-битный последовательный код или адрес, который позволяет нескольким DS18B20s работать на той же однопроводной шине. Поэтому использование микропроцессора упрощает управление несколькими DS18B20, распределенными по большой площади. Приложения для этой функции включают в себя экологический контроль, системы контроля температуры в зданиях и механическом оборудовании.
Особенности DS18B20
- Необходим только один однопроводный интерфейс для связи между микроконтроллером и датчиком.
- Требуется только один внешний компонент: резистор 4,7 кОм.
- Может питаться от линии передачи данных напрямую, требуя напряжения от 3,0 до 5,5 В.
- Каждое устройство имеет уникальный 64-битный последовательный код, хранящийся на встроенном ПЗУ.
- Может измерять температуру в диапазоне от -55° C до + 125° C (от -67° F до + 257° F).
- Точность ± 0,5° C в диапазоне от -10° C до + 85° C.
В этом проекте используется DS18B20, который поставляется в форме температурного зонда, который является водонепроницаемым. Использование водонепроницаемого датчика расширяет возможности — датчик температуры сможет измерить температуру жидкостей, таких как вода, химикаты, чай и кофе.
Требования к комплектующим
Требования к оборудованию для вашего термометра достаточно стандартные, нам пригодятся:
- Arduino UNO
- ЖК-дисплей 16х2
- Датчик температуры DS18B20
- Провода для перемычек
- Резистор 1K
- Макетная плата
Схема соединения
Сделайте соединения согласно приведенной ниже схеме.
Соединяем датчик и Ардуино
- VCC -> Arduino 5V, плюс резистор 4,7K, идущий от VCC к Data
- Data -> Пин 7 Arduino
- GND -> GND Arduino
Соединения для ЖК-дисплея и Arduino UNO
- Пин 1 -> GND
- Пин 2 -> VCC
- Пин 3 -> Arduino Пин 3
- Пин 4 -> Arduino Пин 33
- Пин 5 -> GND
- Пин 6 -> Arduino Пин 31
- Пин 7-10 -> GND
- Пин 11 -> Arduino Пин 22
- Пин 12 -> Arduino Пин 24
- Пин 13 -> Arduino Пин 26
- Пин 14 -> Arduino Пин 28
- Пин 15 -> VCC через резистор 220 Ом
- Пин 16 -> GND
Подключите потенциометр, как показано выше, к контакту 3 на ЖК-дисплее, для управления контрастностью.
Этот проект работает на температурах до 125° C. В случае наличия некоторого диссонанса в значении показанной температуры дважды проверьте соединения с резистором, подключенным к DS18B20. После соединения всего, что описано выше, мы можем перейти к программированию.
Исходный код для термометра
Перед загрузкой исходного кода вам нужно настроить две библиотеки, необходимые для запуска этого кода в среде Arduino.
- Первая библиотека называется — OneWire (скачать).
- Вторая библиотека называется — DallasTemperature (перейти на GitHub).
После скачивания обеих библиотек переместите файлы в папку библиотек Arduino по умолчанию. Затем скопируйте код в IDE Arduino и загрузите его после двойной проверки правильности подключения вашего датчика.
Примерно это выглядит так:
Мы смогли измерить температуру до 100°C с помощью этого датчика! Он очень отзывчив.
После того, как вы создали проект, потестируйте устройство, погрузив датчик в горячую и холодную воду.
Источник