Универсальный внешний накопитель для всех iOS-устройств, совместим с PC/Mac, Android
Header Banner
8 800 100 5771 | +7 495 540 4266
c 9:00 до 24:00 пн-пт | c 10:00 до 18:00 сб
0 Comments

Простое электронное термореле с датчиком DS1820 на 220 вольт

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

В данной статье приведено электронное термореле имеющее крайне простое схематическое решение. Термореле не имеет подвижных механических контактов, надежно в работе и соответствует условиям безопасной.

Описание работы термореле

В термореле датчиком температуры служит интегральная микросхема DS1820. Выход термодатчика DS1820 допускает втекающий ток до 4 мА, поскольку выход является ключом с открытым стоком. В связи с этим конструкция термореле получается предельно простой.

Специфика данного датчика в том, что измерение температуры производится в цифровом виде.  Датчик DS1820 способен измерять температуру от -55 до 125 гр. Так же  датчик способен работать в режиме термостата. У него имеются два цифровых регистра, в которые заносятся значения верхнего порога температуры (TH) и нижнего (TL).

В режиме термостатирование,  контроль за температурой происходит непрерывно. Датчик с частотой в 1 секунду производит сравнение фактической температуры с пороговыми значениями прописанные в регистры TL и TH.

В данной схеме, если текущее значение температуры превысит TH, то на выходе датчика DS1820  будет лог.1 что приведет к отключению нагрузки от сети. Если же температура опустится ниже TL то на выходе DS1820 появится лог. 0 и нагрузка будет включена.

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

Питание DS1820 осуществляется от простого бестрансформаторного блока  питания через гасящий резистор Rl. Сигнал с выхода управляет оптосимистором через цепь R2, VT1, R3. В свою очередь оптосимистор VD1, управляет симистором VS1. Данный мощный симистор, для эффективной работы, необходимо разместить на радиаторе площадью не менее 40 кв. см.

Для устранения радиопомех, возникающих при включении симистора, в схему включены R5, С1 выполняющие роль фильтра НЧ. Свечение зеленого светодиода говорит о включении термореле к сети, а свечение красного светодиода свидетельствует о включении нагревателя.

Для записи температурных порогов в память датчика  необходимо использовать простой программатор. В роли температурного датчика так же возможно применить схожие по параметрам DS1821, DS18S20. В термореле применены конденсаторы К10-17 (СЗ), К52-1 (С4), К73-17В (Cl, С2).

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

Источник: «Схемотехника», 02/2006

www.joyta.ru

DS1820 Arduino

Есть достаточно много интересных модулей и датчиков, которые можно использовать в разработках на платформе Arduino, и один из них – это конечно датчик температуры DS1820 разработанный компанией Dallas Semiconductor и приобретенная компанией Maxim Integrated Products в 2001 году.

Выпускается в разном исполнении

  • Просто датчик
  • Во влагозащищённом корпусе
  • В виде готового модуля

Датчик DS1820 – это не дорогой измеритель температуры с довольно хорошими характеристиками, уникальным 64 битным кодом, маленьким размером, не требующий дополнительной обвязки. 
По сути, это даже не датчик, а маленький микропроцессор со своей памятью EEPROM в которую можно сохранить параметры контроля, заданные пользователем, а возможность получать данные по однопроводной линии связи, да на которую можно подвесить практически неограниченное количество датчиков, делает его практически не заменимым в разработках.

Характеристики
DS1820 (DS18S20, DS1821, DS18B20)

  • интерфейс 1-Wire. На один пин микроконтроллера можно подключить несколько датчиков.
  • Уникальный 64-битный серийный номер.
  • Напряжение питания 3,0 В – 5,5 В. Можно использовать линию связи и подключить по схеме паразитной связи двумя проводами (“parasite power”).
  • Диапазон измерения от -55°C до +125°C
  • Точность ± 0.5°C в диапазоне -10 … +85 °C.
  • Разрешение преобразования 9 – 12 бит. Задается пользователем.
  • Потребление тока 1,5мА
  • Время измерения, до 750 мс, при максимальном разрешении 12 бит.
  • Температура эксплуатации, °С    0…+55
  • Относительная влажность эксплуатации, %    …55
  • Производство    Dallas / Maxim
  • Вес, г    10

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

Получает данные всего по одному проводу. На этот единственный провод возможно повесить огромное количество таких же датчиков, так как каждый DS1820 имеет свой уникальный 64-битный код.

Применяются для определения температуры в помещениях, на улице, в жидкостях (версия в влагозащищённом корпусе).

Типы корпусов датчика ds1820

Выводы

  • GND – Общий провод (Земля)
  • D – Вывод данных. По нему так же подаётся питание при схеме с Паразитным питанием.
  • VDD – Питание от 3,3 до 5,5 Вольт. В схеме с паразитным питанием соединить с Общим проводом.

 

Подключение DS1820


По протоколу 1-Wire. Вывод данных подключается через подтягивающий резистор 4,7 кОм к питанию. Arduino, работающий здесь как Мастер, определяет есть ли устройства на шине и обменивается с ними данными используя уникальный 64 битный код каждого датчика.
Младшие восемь бит содержат код семейства микросхем DS18B20 28h.
Средний блок из 48 бит — это уникальный серийный номер устройства.
Старшие восемь бит — это циклический код (CRC) для всех предыдущих 56 битов. 

Паразитное питание
Питание получается от подтягивающего резистора включенного между выводом D(Вывод данных, центральный вывод) и  + питания 3,0 – 5,5 Вольт.  GND и VDD необходимо соединить. Измерение температуры при этом немного снижается до +100 С. Если вам необходимо регистрировать температуру до +125С, то необходимо подключить внешнее питание. Часто печатают схемы с дополнительным полевым транзистором, но он не обязателен при работе с Arduino, потому что на выходах микроконтроллера достаточно силы тока.

Блок-схема датчика

Память датчика.
Включает в себя оперативную (SRAM) и энергонезависимую (EEPROM) память. 
В EEPROM хранятся регистры TH, TL и регистр конфигурации. 
Если функция тревожного сигнала не используется, то регистры TH и TL могут использоваться как регистры общего назначения.

Режим с внешним питанием.
Тут ничего сложного нет. Подключаете VDD к + источника 3,0 В – 5,5 В, а GND к общему проводу(земле).
Подключаете подтягивающий резистор между выводом D (Вывод данных, центральный вывод) и + питания. 

Подключение DS1820 к Arduino

Один датчик

Несколько датчиков

Выдержка из даташита.
Изменение резистора от длины кабеля, помех и сопротивления жил.

Конвертация температуры
Разрешающую способность преобразования датчика можно изменять с 9 до 12 битов. От этого зависит точность измерений и скорость определения температуры, соответственно 0.5 °C, 0.25 °C, 0.125 °C, 0.0625 °C. По умолчанию установлено 12 бит., так же по умолчанию датчик откалиброван в градусах Цельсия. Результат представлен как 16-разрядное число.

Эти данные, как и пороги тревожного сигнала хранятся в энергонезависимой память EEPROM. 
Более подробно можно прочитать в datasheet ds1820 на русском языке
или на datasheet на  английском 

Принцип работы датчика
Основан на сравнении частоты 2-х генераторов. Частота первого постоянна, а второго изменяется в зависимости от изменения измеряемой температуры. При вычитании частоты первого генератора из второго получаем значение температуры.
При подаче питания датчик находится в Низком состоянии, состоянии ожидания. Микроконтроллер может запросить данные с датчика, отправив ему запрос. Датчик измерит температуру, сохранит её в 2 байтах регистра и снова уйдёт в состояние ожидания.

Тревожный режим


Значения находятся в регистрах Th и Tl и хранятся в EEPROM. При измерении температуры её значения сравниваются с Th и Tl и если они находятся в пределах, то всё в порядке, а если значения ниже чем Tl или выше Th то создаётся признак аварии.

ПРОДОЛЖЕНИЕ БУДЕТ ОПИСАНО ВО 2 ЧАСТИ.

arduino-kid.ru

Цифровой термометр с датчиками DS1820 или DS1821

Появление на нашем рынке относительно дешевых цифровых датчиков температуры и совсем дешевых микроконтроллеров сделало возможным создание цифрового термометра, который не требует калибровки и имеет много всяких возможностей. Среди цифровых датчиков температуры наиболее интересными являются микросхемы DS1820 и DS1821 фирмы DALLAS. Хороши они тем, что используют для обмена однопроводной интерфейс (1-WireTM) фирмы DALLAS. Это значит, что датчики могут быть подключены к термометру всего с помощью 3-х проводов (датчик DS1820 можно подключить даже с помощью двух проводов). Датчик DS1820 более точный (и дорогой), имеет меньшее время преобразования. Зато DS1821 может быть запрограммирован в режим термостата для полностью автономной работы.

Параметры термометра в смысле погрешности измерений всецело определяются датчиками, поэтому нет смысла их здесь приводить. Более подробную информацию по цифровым датчикам температуры можно получить на сайте www.dalsemi.com.

Цифровой термометр был задуман изначально как бытовой, домашний, который всю свою жизнь должен провисеть где-нибудь на кухне у окошка. Владельца термометра, прежде всего, волнует, какая температура за бортом, на улице. Будет ли сегодня тепло в майке или надо одеть еще пиджак и галстук? Поэтому термометр имеет внешний датчик температуры, расположенный, например, на внешней стороне рамы окна.

Многие хотят знать температуру и по эту сторону окна, т.е. в комнате. Наверное, для того, чтобы решить, бежать ли в ЖЭС с криками типа «А за тепло-то мы платим!!!». По этой причине термометр имеет второй датчик температуры, расположенный внутри корпуса. Этот датчик имеет температуру, примерно равную температуре воздуха в комнате.

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

Желание посмотреть на термометр появляется обычно тогда, когда условия освещения наихудшие. Например, посреди ночи. Поэтому ЖК-индикаторы, даже с подсветкой, не подходят. Лучшую читаемость в условиях недостаточного освещения имеют светодиодные индикаторы. Правда, они много кушают.

Я являюсь абсолютным противником устройств, которые постоянно торчат в сети. Может там, в странах развитой НТР, это и хорошо (в импортной аппаратуре все чаще отсутствует полный сетевой выключатель), но в наших своеобразных условиях это просто недопустимо. Я знаю, по меньшей мере, два случая, когда у моих друзей в ночное время по какой-то неведомой причине сетевое напряжение подскакивало почти вдвое. Все аппараты, которые находились в режиме STANDBY, были выведены из строя. А на утро на местной мастерской появилась шильдочка «Закрыто». По этой причине термометр имеет батарейное питание. Для того чтобы продлить срок службы батарей, термометр включается кнопкой, а через пять секунд автоматически отключается. Питание от сети тоже возможно, для этого есть специальный разъем. При питании от сети термометр включен постоянно.

Имея в системе микроконтроллер, хотелось реализовать побольше всяких прибабахов. Одним из них является выход управления термостатом. На этот выход поступает напряжение 0 или +5 В в зависимости от состояния термостата. Состояние определяется запрограммированными порогами и температурой, считываемой с внешнего датчика. Два порога позволяют задать необходимый гистерезис. Выход термостата может использоваться для управления тиристорами, транзисторами или реле, которые, в свою очередь, коммутируют нагрузку. Что с этим можно делать? Например, термостатировать ящик с картошкой на балконе на уровне +2°С. Для этого ведь потребуется очень немного электроэнергии. Или термостатировать воду в аквариуме (верный способ порадовать своих домашних свежей ухой). Наконец, приспособить этот выход для управления компрессором холодильника и иметь затем полный контроль над ситуацией. Впрочем, много еще всего… Еще термометр умеет программировать микросхемы DS1821 в режим термостата. Это уже не просто термометр, это средство производства!

Принципиальная схема термометра не сложна. Основой является микроконтроллер U1 типа AT89C2051 фирмы ATMEL. Индикация динамическая, реализована программно. Катодами индикаторы HG1 и HG2 подключены к порту P1, аноды включаются транзисторами VT1-VT3. Транзисторы управляются линиями сканирования S0…S2. Импульсный ток сегментов ограничен резисторами на уровне примерно 15 мА, что вписывается в нагрузочную способность порта (20 мА) и достаточно для получения необходимой яркости. Циклы сканирования формируются с помощью внутреннего таймера микроконтроллера. За каждым циклом индикации следует «пустой» цикл, когда все индикаторы выключены. Для регулировки яркости свечения индикаторов достаточно регулировать отношение длительности цикла индикации к длительности «пустого» цикла (PWM). Яркость регулируют кнопками «UP» и «DOWN» в режиме индикации температуры. Новое значение яркости сохраняется в энергонезависимой памяти. Для субъективно постоянной скорости изменения яркости в процессе регулировки применен закон регулировки, близкий к гиперболическому.

Для экономии портов микроконтроллера на линиях сканирования «висит» еще и I2C микросхема flash-памяти U2. Циклы сканирования игнорируются микросхемой, так как представляют собой чередующиеся условия «старт» и «стоп». Когда микроконтроллер обменивается с микросхемой, циклы сканирования приостанавливаются. Все бы хорошо, только при таком включении микросхемы flash-памяти был отловлен глюк. Если в качестве флэшки применялась КР1568РР1 производства ПО «ИНТЕГРАЛ», то в момент выключения питания, если идет сканирование дисплея, содержимое некоторых ячеек портилось. Интересно, что замена флэшки на PHILIPS PCF8582, с которой и содрана интеграловская, полностью устранила глюк. Вообще, ни с одной фирменной микросхемой глюка не наблюдалось.

Местная клавиатура использует в качестве линий сканирования линии данных дисплея, а в качестве линии возврата RL-порт микроконтроллера. Сканирование клавиатуры происходит в циклах сканирования дисплея.

Внешний и внутренний датчики температуры подключены к портам микроконтроллера через защитные цепочки. В цепи питания датчиков включены небольшие резисторы для защиты от короткого замыкания на линиях термометров. Внешний термометр подключен через 3-контактный 3,5-мм разъем, который обычно используется для стереонаушников. У этого разъема есть особенность: во время сочленения на некоторое время оказываются замкнутыми все три контакта. Поэтому без защитного резистора в цепи питания не обойтись. На внутреннем датчике цепочки защиты установлены на всякий случай. Ведь никто не запрещает превратить этот датчик во второй внешний, правда?

Выход управления термостатом имеет двухтактный каскад на транзисторах VT4 и VT5. Такой каскад обеспечивает одинаковый втекающий и вытекающий ток. Этот ток ограничен резистором R17 из энергетических соображений и в целях защиты транзисторов. Оба транзистора включены по схеме с общим эмиттером, что по сравнению со схемой эмиттерного повторителя обеспечивает больший размах выходного напряжения.

Разъем для программирования микросхемы DS1821 использует одну и ту же линию данных, что и внешний термометр, а в качестве напряжения питания использует напряжение выхода термостата (питание нужно выключать при переводе микросхемы DS1821 из режима термостата в режим термометра). Поэтому при программировании внешний термометр и исполнительное устройство термостата должны быть отключены.

Разъем для программирования микросхемы DS1821 использует одну и ту же линию данных, что и внешний термометр, а в качестве напряжения питания использует напряжение выхода термостата (питание нужно выключать при переводе микросхемы DS1821 из режима термостата в режим термометра). Поэтому при программировании внешний термометр и исполнительное устройство термостата должны быть отключены.

Вот мы и подошли к самой страшной части схемы — к стабилизатору. При разработке стабилизатора нужно было выполнить ряд условий. Полностью заряженные батареи имеют напряжение 6 В. Для нормальной работы датчиков требуется минимум 4,3 В. Поэтому стабилизатор должен обеспечивать как можно меньшее минимальное падение (лучше не более 200 мВ при 100 мА). Стабилизатор должен триггерно включаться с помощью кнопки, а выключаться сигналом с микроконтроллера. Стабилизатор должен «чувствовать» сетевое питание и при его наличии оставаться все время включенным. Включение и выключение штекера сетевого питания может производиться «на ходу». Батареи не должны разряжаться при работе от сети. Кроме того, у имевшегося сетевого адаптера на центральном контакте вилки был плюс, поэтому при сочленении разъема питания рвался минус. При всем этом батареи должны коммутироваться правильно. Все вышеперечисленные требования были выполнены в стабилизаторе, собранном на дискретных компонентах. Может быть, какая-нибудь микросхема LDO-стабилизатора, например LP2951 с входом SLEEP позволила бы решить эту задачу более просто, но что сделано, то сделано. Я привожу описание конструкции «как есть», со всеми преимуществами и недостатками. В качестве регулирующего элемента в стабилизаторе применен n-канальный logic-level МОП-транзистор VT6 типа IRLZ44, который выпускается ПО «ИНТЕГРАЛ» под кодовым названием КП723Г. Корпус этого транзистора ТО-220 способен рассеять необходимую мощность без радиатора. В качестве низковольтного опорного источника применен красный светодиод. Усилитель ошибки выполнен на транзисторе VT9. Благодаря высокому сопротивлению нагрузки этот каскад имеет большое усиление. Кнопка SB1 осуществляет начальное включение стабилизатора при работе от батарей. При работе от сети включение стабилизатора осуществляет каскад на транзисторе VT10. Транзисторы VT7 и VT8 образуют схему автоматического отключения. Для выключения стабилизатора микроконтроллер должен сформировать соответствующий сигнал на порту вывода. Но у микроконтроллера нет свободных линий (как всегда, не хватило одной линии). Поэтому для отключения стабилизатора используется линия возврата клавиатуры RL. При нормальной работе на этой линии наблюдается некая последовательность импульсов, зависящая от того, какая нажата кнопка и что в данное время на дисплее. Во всяком случае, период следования импульсов не может быть больше длительности полного цикла сканирования дисплея. Когда ни одна из кнопок не нажата, на линии «висит» единица. Для отключения стабилизатора было решено использовать уровень логического нуля, длительностью не менее 50 мс. Чтобы отличить это состояние линии от нормального, сигнал линии нужно заинтегрировать, причем постоянная времени заряда должна быть намного меньше, чем разряда. Транзистор VT7 включен по схеме эмиттерного повторителя, он способен быстро зарядить интегрирующую емкость C8. Постоянная времени разряда определяется в основном резистором R20. Транзистор VT8 используется как пороговый элемент, при разрядке C8 ниже некоторого уровня транзистор закрывается, разрывая цепь питания опорного источника VD12, и стабилизатор выключается. При работе от сети узел отключения блокирован с помощью цепочки VD13, R21, которая всегда поддерживает VT8 в открытом состоянии.

Несмотря на обилие дискретных компонентов, если применять SMD элементы, схема стабилизатора легко «размазывается» на плате, заполняя собой свободные места.

Отмечу один недостаток конструкции: отсутствует сигнал разряда батарей. Микроконтроллер нормально работает при напряжении питания 2,7 В, в то время как датчики температуры могут начинать «врать» при напряжении питания ниже 4,3 В. Батареи могут быть разряженными, показания термометра — неверными, а пользователь даже не будет догадываться об этом. Выдаст разве что пониженная яркость свечения индикаторов. Сразу скажу, что дело не в трудности формирования сигнала BAT. LOW, а в отсутствии свободных портов ввода у микроконтроллера. Кстати, подобный сигнал (там он называется ERROR) есть у того же LDO стабилизатора LP2951. Один из выходов из положения — применить watchdog timer DS1232L (он же ADM1232) или подобный. Для перезапуска можно использовать линию сканирования дисплея, а встроенный монитор питания просто не позволит системе работать, если напряжение питания ниже 4,5 В.

И, наконец, если предполагается использовать термометр только с сетевым питанием, то всю эту схему стабилизатора с успехом можно заменить привычной IC 7805.

Печатная плата (и механическая конструкция) термометра сильно зависит от желаемого дизайна изделия, поэтому здесь не приводится.

Содержимое ПЗУ микроконтроллера можно найти в файле therm.bin, а исходный текст — в файле therm.asm. Я пользуюсь транслятором TASM (версия 2.76) с таблицей tasm51.tab. Поскольку этот транслятор не специализирован для 8051, имена SFR с их адресами нужно указывать в тексте. Это сделано в файле libreg.asm, а в therm.asm имеется строка #include “libreg.asm”. Сразу предупреждаю, что исходный текст стал не очень читаемым после нескольких операций «ужатия» кода. С трудом удалось получить therm.bin объемом 2048 байт, а AT89C4051 я еще в руках не держал. Вечные проблемы с русским (кто это придумывает все эти кодировки, и где берет на это финансирование?) давно вынудили пользоваться для комментариев ломаным английским. Впрочем, комментарии не для того, чтобы их читать…

Инструкция по эксплуатации термометра в сжатом виде находится в файле thermmanual.doc (Word 97).

Автор проекта: Ридико Леонид Иванович (E-mail: Включите javascript, чтобы увидеть email Email )

www.qrz.ru

1-Wire. Работа с DS18B20. Часть 1

     Все (и в том числе я) называют DS18B20 цифровым датчиком температуры. Однако это не просто датчик, это программируемый цифровой термометр. Он измеряет температуру в диапазоне от –55 до +125 градусов Цельсия, имеет программируемое температурное разрешение от 9 до 12 бит и позволяет задавать верхний и нижний температурные пороги, в случае превышения которых,  устанавливается флаг аварии. 

   Каждый термометр DS18B20 имеет уникальный 64 битный серийный номер, который используется для его адресации на 1-Wire шине. Это позволяет объединять на одной шине несколько независимо работающих термометров и осуществлять между ними и микроконтроллером обмен данными по 1-Wire протоколу. 

   Также особенностью данного термометра является то, что его можно запитывать не только от источника питания, но и от сигнального провода. Это так называемый режим паразитного питания. В этом режиме для подключения DS18B20 требуется всего два провода — сигнальный и возвратный (земляной, GND).

   Подключение датчика DS18B20 к микроконтроллеру    Схема подключения нескольких датчиков DS18B20 с внешним питанием.     1-Wire шина  должна быть обязательно подтянута к плюсу питания через резистор номиналом 4,7 Ком. Напряжение источника питания от 3 до 5 Вольт.  Подключение DS18B20 к микроконтроллеру. Режим паразитного питания

   Схема подключения датчика DS18B20 в режиме паразитного питания. 

   Вывод Vdd соединяется с GND, а 1-Wire шина дополнительно подключается к источнику питания через полевой транзистор. 

   Когда датчик DS18B20 выполняет преобразование температуры или копирует данные из ОЗУ в EEPROM память, он потребляет ток до 1,5 мА. Этот ток может вызывать недопустимое снижение напряжения на 1-Wire шине. Чтобы этого не происходило, 1-Wire шину на время выполнения этих операций подключают к источнику питания. Для этого и нужен полевой транзистор.   

     Для обмена данными термометр DS18B20 использует 1-Wire протокол (однопроводный протокол). Это низкоскоростной двунаправленный полудуплексный последовательный протокол обмена данными использующий всего один сигнальный провод. Естественно требуется еще и возвратный (земляной) провод, но об этом маркетологи обычно умалчивают. 1-Wire протокол был разработан фирмой Dallas Semiconductor в конце 90-х годов.    

     

   Имеется несколько типов сигналов, определенных 1-Wire протоколом – импульс сброса, импульс присутствия, запись 0, запись 1, чтение 0 и чтение 1. Все эти сигналы, за исключением импульса присутствия, формируются на шине главным устройством — MASTERом . В нашем случае это  микроконтроллер AVR. 

  Принцип формирования сигналов во всех случаях одинаковый. В начальном состоянии 1-Wire шина с помощью резистора подтянута к плюсу питания. Главное устройство «проваливает» на определенное время 1-Wire шину в ноль, затем «отпускает» ее и, если нужно, «слушает» ответ подчиненного (SLAVE) устройства. В нашем случае подчиненное устройство – термометр DS18B20. 

 

  Физически это реализуется так. 

  Операция записи бита: Вывод микроконтроллера устанавливается в режим выхода и на нем устанавливается логический ноль. Выдерживается пауза, длительность которой зависит от значения передаваемого бита (0 или 1), затем вывод переводится в режим входа в состоянии Hi-z и снова выдерживается пауза. 

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

 

   Все сеансы связи микроконтроллера с датчиком DS18B20 начинаются с сигнала сброса.  Микроконтроллер на 480 мкс «проваливает» 1-Wire шину в ноль, а затем «отпускает» ее. Если к шине подключен термометр DS18B20, то он  обнаруживает положительный перепад и после паузы в 15-60 мкс отвечает микроконтроллеру импульсом присутствия — «проваливает» шину в ноль на время от 60 до 240 мкс. 

  1-Wire. Импульс сброса и присутствия

   Обмен данными по 1-Wire шине происходит последовательно, младшим битом вперед. Передача или прием одного бита данных выполняются в течении фиксированного промежутка времени, так называемого тайм слота (time slot). Различают тайм слоты записи и тайм слоты чтения. Длительность всех тайм слотов должна быть > 60 мкс, а пауза между тайм слотами  > 1 мкс.   

 

   Для передачи нуля микроконтроллер «проваливает» 1-Wire шину на время от 60 до 120 мкс. Затем «отпускает» ее и перед записью следующего бита выдерживает паузу >1  мкс.

   Для передачи единицы микроконтроллер «проваливает» 1-Wire шину на время от 1 до 15 мкс,  «отпускает» ее и выдерживает паузу. Пауза должна быть такой, чтобы длительность тайм слота была > 60+1 мкс. 

   1-Wire. Тайм слот записи

   DS18B20 является подчиненным устройством и может передавать данные, только когда микроконтроллер формирует на 1-Wire шине тайм слоты чтения. Для формирования тайм слота чтения микроконтроллер «проваливает» 1-Wire шину на время от 1 до 15 мкс, а затем «отпускает» ее, передавая  управление состоянием 1-Wire шины датчику DS18B20. Если DS18B20 передает ноль, он удерживает шину в «проваленном» состоянии (в состоянии логического нуля) до конца тайм слота. Если он передает 1, он оставляет шину в «подтянутом» состоянии. 

   Микроконтроллер может считывать данные датчика DS18B20 через 15 мкс после начала тайм слота чтения. 1-Wire. Тайм слот чтения

chipenable.ru

Сравнение датчиков температуры компаний IST AG и Maxim Integrated

Сравнение цифровых датчиков температуры производства Maxim Integrated (Dallas) и Innovative Sensor Technology

Компания Maxim Integrated, которая с 2001 владеет Dallas Semiconductor, объявила о прекращении производства цифровых датчиков температуры DS1820 / DS1821 и не рекомендует их для дальнейшего применения.

Эти популярные изделия, без сомнения, являются одними из самых известных и востребованных цифровых датчиков температуры. Прекращение производства датчиков DS18xx может повлечь за собой возможные проблемы для текущих проектов и разработок, в состав которых входят эти термоэлементы.

Компания ЭФО представляет аналог датчиков DS18xx от швейцарского производителя сенсорных решений – компании IST AG. Цифровые датчики температуры серии TSic 20х обладают рядом существенных преимуществ: меньший потребляемый ток, увеличенный рабочий диапазон температур, повышенная точность измерений, разрешение выходных данных.

В таблице 1 приводится сравнение основных технических характеристик датчиков температуры DS1820/DS1821 и TSic 20х.

 

Таблица 1. Характеристики датчиков температуры.

Датчик Maxim DS1820 Maxim DS1821 IST AG TSic 20х
Тип корпуса

ТО-92

Цоколевка 1-GND, 2-Data, 3-VDD 1-GND, 2-Data, 3-VDD 1-VDD, 2-Data, 3-GND
Рабочий диапазон температур, °С -55..+125 -55..+125 -50..+150
Напряжение питания, В 3-5.5 2.7-5.5 3-5.5
Точность, °С

±0.5 (-10..85 °С)

±2 (-55..125 °С)

±1 (0..85 °С)

±2 (-55..125 °С)

±0.5 (10..90 °С)

±1 (-20..+110 °С)

±2 (-50..+150 °С)

Ток питания, мкА (VDD = 5 В) 1000..1500 500..1000 50..60
Выходной сигнал и интерфейс 1-Wire 9 Bit 1-Wire 8 Bit

ZacWire 11 bit

Аналоговый

Ратиометрический

 

 

ПРЕИМУЩЕСТВА TSic

  • Точность измерения температуры TSic 20х при температуре 0..85 °С вдвое больше, чем у DS1821
  • Разрешение датчика компании IST больше на 2 и 3 бита, чем у датчиков DS1820/DS1821 соответственно (также доступны датчики с разрешением 14 бит)
  • Ток питания TSic 20х на порядок меньше, чем у обоих датчиков компании Maxim при аналогичном значении напряжения питания
  • TSic 20х позволяет измерять температуру вплоть до 150 °С

В остальном датчики близки по параметрам: тип корпуса, напряжение питания, цоколевка (зеркальная).

Существенным отличием датчиков серииTSic 20х от датчиков Maxim DS1820/DS1821 является интерфейс.

 

1-Wire

1-Wire – однопроводной последовательный протокол обмена данными использующий всего один сигнальный провод. Естественно требуется еще и возвратный (земляной) провод, но об этом маркетологи обычно умалчивают. 1-Wire протокол был разработан фирмой Dallas Semiconductor в конце 90-х годов.    

В начальном состоянии 1-Wire шина с помощью резистора подтянута к плюсу питания. Главное устройство «проваливает» на определенное время 1-Wire шину в ноль, затем «отпускает» ее и, если требуется, «слушает» ответ подчиненного (SLAVE) устройства. В нашем случае подчиненное устройство DS18xx.

 

bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0
S 26 25 24 23 22 21 20

Выходные данные DS1821

 

LS BYTE bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0
26 25 24 23 22 21 20 2-1
MS BYTE bit 15 bit 14 bit 13 bit 12 bit 11 bit 10 bit 9 bit 8
S S S S S S S S

Выходные данные DS1820

Бит S показывает знак температуры, значение 1 для положительной температуры и значение 0 для отрицательной.

ZACWire

ZACWire — однопроводной протокол, использующий кодировку, напоминающую Манчестерскую.

bit 15 bit 14 bit 13 bit 12 bit 11 bit 10 bit 9 bit 8
S S S S / 212 S / 211 S / 210 S / 29 S / 28
bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 bit 0
27 26 25 24 23 22 21 20

Выходные данные TSic 206

 

Датчик с заранее определенной частотой передаёт данные о температуре — два восьмибитных пакета данных. Каждый из пакетов начинается стартовым битом и заканчивается битом чётности. В зависимости от модели датчика, в каждой посылке либо 11, либо 14 значащих разрядов, первым идет старший бит.

Как видно из представленных рисунков и описания, обработка выходных данных датчиков температуры отличается, но незначительно. Подробный алгоритм работы датчиков TSicи программный код можно найти здесь. 

В таблице 2 приведены примеры выходных данных для 3-х типов датчиков температуры.

 

Таблица 2. Примеры выходных данных цифровых датчиков температуры

Тип датчика

Температура

TSic 206 DS 1820 DS 1821

Цифровой выход (Hex)

150 0x7FF
125 0x6FE 0x00FA 0x7D
85 0x465 0x00AA 0x55
25 0x2FF 0x0032 0x19
0 0x200 0x0000 0x00
-1 0x199 0xFFFE 0xFF
-55 0x7FF 0xFF92 0xC9

Формулы пересчета:

DS18xx:

T[°C]=DO, при T > 0 °C

T[°C]=256-DO, при T

TSic:

T[°C]=200*DO/(211-1)-50

DO – выходной сигнал

Все датчики могут быть настроены для приема единичного значения или непрерывного измерения температуры.

Узнать о наличии на складе и ценах можно здесь.

efo-sensor.ru

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *