• Главная

DS18B20 - Микроконтроллеры и Технологии

CH-1000 - терморегулятор с датчиком температуры DS18B20

CH-1000 - терморегулятор с датчиком температуры DS18B20

Терморегулятор CH-1000 предназначены для управления системами регулирования температуры в пределах от - (минус) 50 до + 120 °С. Регулятор может использоваться как в системах отопления, так и в системах охлаждения с управлением компрессором. Регуляторы выпускаются в без корпусном исполнении (возможность встраивания в корпус Z-75 производства Польша). Напряжение питания ~9±15 (24) вольт переменного тока.

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

USB-термометр на ATtiny2313

USB-термометр на ATtiny2313Термометр является HID-устройством (Human Interface Device). Термометр собран на популярном и относительно недорогом микроконтроллере ATtiny2313 (AT90S2313), непосредственно измерением температуры занимается интегральный термометр DS18B20 (или DS18S20).

Автомобильный термометр 2-х канальный на PIC16F628 + LCD Nokia3310

Автомобильный термометр 2-х канальный на PIC16F628 + LCD Nokia3310Конструкция 2-х канального термометра на PIC16F628A и DS18B20, предназначенного для домашнего применения, заинтересовала, как простых радиолюбителей, так и тех у кого есть автомобиль.

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

Блок управления водонагревателем(бойлером) на Atmega48

Ниже описана конструкция устройства управления бытовым накопительным водонагревателем (бойлером) объёмом 300 литров, подогреваемым 3-мя трубчатыми электронагревателями (ТЭН-ами) мощностью каждый по 3 кВт. В принципе, в комплекте с ним идёт штатное устройство управления, но включение/выключение контактора издаёт столь громкий резкий лязг, что спящая рядом кошка подпрыгивает как укушенная. А занудное гудение обмотки контактора во включённом состоянии выматывает нервы. Заодно захотелось добавить функции настройки температуры подогрева, а также её индикацию. Кроме того нужно было реализовать защиту от короткого замыкания ТЭН-ов, их обрыва, и звуковую индикацию аварийных режимов.

Конструктивно устройство выполнено на трёх печатных платах: 

- плата управления и индикации;
- плата контроля тока и коммутации;
- плата блока питания.

Двухканальный термометр-термостат на Atmega8

Двухканальный термометр - термостат выполнен на микроконтроллере ATmega8 и цифровых датчиках температуры DS18B20. Два датчика DS18B20 подключают к разъемам Х1 и Х2, причем номера гнезд соответствуют номерам их выводов. Использована трехпроводная схема подключения. Уже много раз я убеждался в том, что только так можно добиться максимальной длины соединительных проводов, и везде, где это возможно, стараюсь избегать паразитного питания датчиков. При медных проводах сечением 0,5 мм2 устойчивую связь удавалось обеспечить на расстоянии до 40 м.

Изучаем DS1820/DS18B20

Датчики температуры с однопроводным интерфейсом 1-WIRE были разработаны фирмой DALLAS SEMICONDUKTOR для использования совместно с микроконтроллерами. Впоследствие эти датчики стали выпускаться фирмой MAXIM. Каждый датчик температуры имеет 56-разрядный индивидуальный идентификационный код, поэтому по одному проводу может быть опрошено практически неограниченное число датчиков. Перед установкой таких датчиков в одну линию необходимо считать 64 разрядный код ROM (в него входит 56-битный номер датчика и 8 бит регистра контроля четности) для каждого датчика и учитывать его при программировании микроконтроллера. Передача 64 разрядов занимает много времени, поэтому в устройствах, использующих небольшое число датчиков, можно обойтись выделением отдельного выхода микроконтроллера для каждого датчика.

Термодатчики DS1820 (DS18S20, DS1821, DS18B20)имеют следующие технические характеристики:
- индивидуальный 64-битный идентификационный номер;
- напряжение питания от +3 до +5,5 В;
- измеряемая температура от -55 до + 125°С;
- погрешность измерения температуры в диапазоне -10...+85°С не более 0,5°С;
- в остальном диапазоне температур погрешность измерения не превышает 2°С;
- информация о температуре выдается 9-битным кодом;
- установка пороговых значений температуры по максимуму и минимуму,
- максимальное время преобразования температуры в код 750 мс;
- возможность питания от высокого уровня шины данных;
- термодатчики не требуют индивидуальной настройки при замене.

Изучаем DS1820/DS18B20. Делаем простой термометр

В этой статье займемся изучением практического применения цифровых датчиков температуры DS18B20. Сделаем простой термометр на семисегментных индикаторах, который будет показывать положительную и отрицательную температуру с разрешением 0,1 градус Цельсия. Для этой цели используем микроконтроллер Atmega8, который работает от внутреннего генератора частотой 8 МГц, семисегментный индикатор с общим анодом(четырехразрядный) и датчик температуры DS18B20. Схема устройства показана на рисунке 1. Шину данных датчика подключаем к порту PC0, а также подключаем к плюсу питания через резистор R1 номиналом 4,7 кОм, поскольку выходной транзистор датчика имеет открытый сток. При питании датчика от шины данных(паразитное питание) вывод 3 датчика остается свободным.

Как уже известно последовательность действий при работе с одним датчиком будет такая:

1) послать сигнал обнуления линии (480...960 мкc);
2) принять импульс присутствия или заполнить время паузой (60...240 мкc);
3) послать команду пропуска идентификации 0xCC;
4) послать команду начала преобразования 0x44;
5) пауза не менее 500 мкc для завершения процесса преобразования;
6) обнулить линию;
7) послать команду пропуска идентификации 0xCC;
8) послать команду считывания блокнота 0xBE;
9) принять 9 байт;
10) выделить и проанализировать бит десятых долей градуса с установленной точностью, в нашем примере это 0,0625;
11) проанализировать бит знака;
12) если знак отрицательный, то перевести значение температуры в дополнительный код;
13) делаем преобразование целой и дробной части значения температуры и выводим на дисплей.

Многофункциональные часы-термостат с дистанционным управлением

Многофункциональные часы-термостат с дистанционным управлениемВозникла у меня потребность в настольных часах-термометре, чтобы помимо времени можно было узнать температуру на улице и в доме. В интернете есть множество конструкций такого рода и даже очень продвинутых, но я так и не сделал свой выбор в пользу какой то из них.

Простой цифровой термометр-термостат на PIC16F628

Простой цифровой термометр-термостат на PIC16F628Предлагаемая конструкция термометра производит измерение и отображение температуры в градусах Цельсия на семисегментном светодиодном индикаторе. Термометр также имеет функцию термостата с установкой и сохранением порога включения в энергонезависимой памяти контроллера. Также имеется возможность корректировки показаний датчика в пределах +1°С.

Технические характеристики:

Диапазон измеряемых температур: -55°С…+125°С
Точность отображения температуры: 0,1°С
Шаг установки температуры термостата: 1°С
Диапазон поправок для датчика: +0,94°С с шагом 1/16°С

Регистратор температуры на Atmega168

Данное устройство на основе микроконтроллера AVRMega168 может контролировать до 16 DS18x20 термометров, с переменной скоростью опроса от 5 до 9999 секунд. Данные отображаются на многострочном дисплее для немедленного просмотра, а также направляются через RS232 на скорости 19200 бод для записи. Данные записываются с метками времени полученными от часов реального времени, также подключенных к шине 1-Wire.

Термометр 2-х канальный на PIC16F628 + LCD Nokia3310

Термометр 2-х канальный на PIC16F628 + LCD Nokia3310Основой устройства является микроконтроллер фирмы Microchip PIC16F628A, осуществляющий получение информации от датчиков температуры, обработку полученных данных и вывод их на индикатор. Данное устройство позволяет измерять температуру по двум каналам.

В качестве датчиков температуры можно использовать цифровые датчики DS18B20 или DS18S20. Данные цифровые датчики позволяют измерять температуры от -55 до +125°С, причем в интервале -10...+85°С производитель гарантирует абсолютную погрешность измерения не хуже ±0,5°С. На границах диапазона измеряемых температур точность ухудшается до ±2°С.Индикация показаний термометра во всем диапазоне измеряемых температур выполняется с точностью ±0.1°C, при использовании DS18B20, и с точностью ±0.5°C, при использовании DS18S20.

Термометр на AT90S2313

Простой в изготовлении термометр отображает температуру с трех разных датчиков DS18B20, которые способны измерять температуру от -55 до 125 градусов Цельсия. Индикация температуры происходит циклически через 2 секунды. Семисегментный индикатор применен с общим катодом или анодом, для этого необходимо залить соответствующую прошивку в микроконтроллер.

Термометр на микроконтроллере PIC12F629

Использование индикатора на регистрах сдвига позволяет создать компактный двухточечный термометр, с использованием самого простого микроконтроллера PIC12F629. Два вывода этого микроконтроллера используются для управления индикатором. Один из них выполняет функцию передачи тактового сигнала, второй информационный. Регистры сдвига 74164 при обнаружении тактового импульса, переключают уровень сигнала с информационного входа, на выход Q0. Информация предыдущего состояния выходов сдвигается на один разряд.

Трехзонный термометр на PIC16F628

Этот термометр предназначен для измерения температуры в трех разных зонах бытового холодильника, - в морозильной камере, в месте под ней и в нижнем отсеке. Всего три датчика, расположенных в этих трех местах, датчики переключаются с помощью модульного переключателя П2К с зависимой фиксацией (когда одну кнопку нажимаешь, нажатая ранее выскакивает). Число датчиков может быть любым, а диапазон измерения по каждому из них в пределах -55...+125°С, то есть термометр можно использовать и в других местах, например, для измерения температуры теплоносителя в разных участках отопительной системы, измерения температуры «дом/улица», или в теплицах, инкубаторах, www.budmagazin.com.ua/teplyj-pol-fenix. Индикация выводится с точностью 0,1 °С. Индикатор четырехразрядный на основе светодиодных семисегментных индикаторов.

Уличные светодиодные часы-термометр на Attiny2313

Уличные светодиодные часы-термометр на Attiny2313Уличные светодиодные часы-термометр предназначены не только для информирования населения о текущем времени и температуре окружающей среды, но и для создания привлекательности здания на котором они установлены. Достоинство проекта - небольшая стоимость готового изделия и экономичность. Устройство потребляет электроэнергии не более 40 Вт/ч. Часы состоят из внешнего табло, устанавливаемого на фасаде здания, устройства управления и датчика температуры. Информация о времени и температуре выводится на четырехразрядный семисегментный индикатор попеременно. Абсолютная погрешность измерения температуры определяется погрешностью цифрового датчика температуры и составляет не больше плюс-минус 0.5°С в диапазоне от -10°С до 85°С. В остальном диапазоне погрешность не хуже плюс-минус 2°C. При этом обязательным условием является установка датчика температуры таким образом, чтобы он всегда находился в тени и на расстоянии не менее 15 см от стены. Табло нельзя устанавливать так, чтобы на него падали прямые солнечные лучи. Иначе в яркий солнечный день на табло будут видны только солнечные блики.

Часы с термометром на PIC16F628A

Часы построены на микроконтроллере PIC16F628A, в качестве датчика используется DS18B20, транзисторы BC212 управляют общими анодами семисегментного индикатора, также в состав схемы входят несколько пассивных элементов.

Устройство настраивается с помощью 4-х кнопок. Одна увеличивает, другая уменьшает значение, третья кнопка используется для входа в меню, а также переключает элементы меню. При выходе из меню настройки сохраняются в EEPROM контроллера. Если часы зависают по какой-то причине кнопкой сброса они могут быть перезапущены. Часы будут продолжать работать с последними сохраненными значениями. Микроконтроллер тактируется от внешнего кварца частотой 4МГц для более точного отсчета времени. PIC16F628 управляет дисплеем в режиме мультиплексирования. Индикаторы находятся под контролем одного типа транзистора - BC212.