Обзор терморегулятора xh-w1209
Содержание
- 1 Using the Data Log
- 2 Управляющий контроллер STM8S003F3P6
- 3 Getting Started
- 4 Порядок настройки
- 5 Модернизация модуля термостата W1209 своими руками
- 6 Настройки термостата (XH-W1209)
- 7 Настройка и работа термостата
- 8 Working with the Code in this Repository
- 9 Основные параметры:
- 10 Калибровка термореле W1209
Using the Data Log
The data logger feature uses the upper 576 bytes of the internal EEPROM as a 144 entry ring-buffe. The logger interval (time between samples) can be defined in the range from 6 minutes (0.1h) to 10h by the menu item .
The following items are recorded:
- Lowest temperature
- Highest temperature
- Heating duty cycle
- Number of relay cycles
The data log can be accessed through the Forth console with the command . The log can be wiped with the command . To use the Forth console, connect a serial interface adapter to the and key pins.
The following chart demonstrates the influence of insulation improvements, a hysteresis parameter change, and the effect of heating temperature setback overnight in my living room:
Such a chart can be created with the following steps:
- set the log interval according to the required observation time
- 0.1h for control optimization
- e.g. 3.5h for the 3 weeks that it takes to hatch a chicken egg
- let the thermostat run (no intervention required)
- connect a TTL-RS232 interface to the keys (RX) and (TX) (pins next to the LED display)
- access the console with a serial terminal program with the settings «9600-N-8-1»
- for Linix e.g. e4thcom, minicom, picoterm, or miniterm.py
- for Windos e.g. miniterm.py, PuTTY, Hyperterminal
- press the key — STM8 eForth should respond with
- type to extract the data (note: the last line is «now»)
- take a note of the read out time, and the log interval)
- copy and paste the data to a spread sheet program
- use the known read-out time, and the log intervall for the time in the x-axis of an x/y chart
Управляющий контроллер STM8S003F3P6
Ток потребления термостата в режиме отключенного реле 19мА, включенного 68мА (при питающем напряжении 12,5В)
Напряжение питания ниже 12В подключать нежелательно, т.к. на реле подаётся напряжение на 1,5В меньше питающего. Лучше, чтобы оно было немного больше (13-14В)
Токоограничительные резисторы на индикатор стоят в цепи разрядов, а не сегментов — это приводит к изменению их яркости в зависимости от числа горящих сегментов. На нормальную работу не влияет, но в глаза бросается.
Вход RESET (4 pin) выведен на контакты для программирования, имеет только внутреннюю высокоомную подтяжку (0,1мА) и контроллер иногда ложно сбрасывается от сильной искровой помехи поблизости (даже от искры в собственном реле), либо при случайном касании контакта рукой.
Легко исправляется установкой блокирующего конденсатора 0,1мкФ на общий провод
Поверку и калибровку проводил классически на двух контрольных точках 0ºС и 100ºС
В воде с тающим льдом показал +1ºС
Getting Started
Note: STM8 eForth only works on supported STM8 chips — W1209 boards with a Nuvoton chip will have to be modified before they can be used with the code in this repository!
512 of the 576 bytes logging buffer rely on an undocumented STM8S003F3P6 feature which might not work in some chips. Although there are no known cases of where the extended EEPROM didn’t work, using an STM8S103F3P6 chip or reducing the logging buffer to 64 bytes will always work.
After programming the firmware binary to the W1209 board, it should work as normal thermostat. Parameters can be set using the board keys (, , ).
The following items are recommended for programming:
W1209 | ST-Link programmer | TTL-Serial-Interface |
---|---|---|
Please refer to the for instructions on programming the W1209 using an ST-Link compatible programmer.
After programming, the display should show the temperature value (in °C), or (default) if no sensor is connected).
Before using the thermostat, please reset the parameter values by holding the keys and until the text appears on the LED display (about 4s). Pressing the key leads to the parameter menu. The menu returns to the temperature display when no key is pressed for more than 10s.
The software currently supports the following parameters:
Display | Range | Default | Unit | Description |
---|---|---|---|---|
10.0 — 80.0 | 37.5 | °C | Heating thermostat set point (switch off above) | |
0.0 — 10.0 | 10.0 | h | Logger interval in hours | |
0.0 — 60.0 | 0.0 | s | thermostat heating trip delay | |
-2.0 — 2.0 | 0.0 | °C | thermometer offset (for corrections around desired set-point) | |
0.1 — 2.0 | 0.5 | °C | thermostat hysteresis (difference between the lower and the upper trip points) |
Note that in most cases hanging the trip delay parameter should not be required.
Порядок настройки
Перед включением следует изучить руководство по эксплуатации.
Для управления настройками схема W1209 предусматривает три кнопки:
- «Set»;
- «+»;
- «-».
Все предусмотренные функции и возможности настраиваются путем нажатия на перечисленные кнопки.
Согласно инструкции к W1209, для изменения настроек необходимо войти в режим программирования. Для этого нажимают и удерживают в течение 5 секунд кнопку «Set». Когда на экране высветится номер пункта настройки, кнопку можно отпустить. Для перемещения по меню настроек используют кнопки «+» и «-».
Всего инструкция термостата W1209 предусматривает от 6 до 8 позиций, в зависимости от текущей прошивки встроенного микроконтроллера:
- Р0 – переключение контроля нагрева или охлаждения;
- Р1 – регулировка диапазона гистерезиса;
- Р2 – изменение максимального предела контроля температуры;
- Р3 – изменение минимального предела контроля температуры;
- Р4 – коррекция температурной погрешности измерений;
- Р5 – программирование времени задержки включения;
- Р6 – тревога (не используется в большинстве прошивок);
- Р7 – принудительное выключение при достижении верхнего порога регулирования;
- Р8 – сброс к заводским установкам (работает не на всех прошивках).
По умолчанию, при входе в режим программирования устанавливается первый пункт меню – Р0.
Расположение клемм и элементов управления
Войдя в нужный пункт, при помощи кнопок «+» или «-» устанавливают необходимое значение параметра. Для выхода из режима программирования необходимо нажать и удерживать в течение 5 секунд кнопку «Set». Выход в режим работы с записью установок также происходит по прошествии 10 секунд, если за это время не была нажата ни одна кнопка.
Инструкция термореле w1209 dc 12 в информирует, что данное устройство имеет сигнализацию неправильной работы, что отображается на индикаторе:
- LLL – обрыв датчика температуры;
- 110 или HHH – короткое замыкание шлейфа датчика;
- 888 – неисправность датчика.
Кроме использования режима программирования, сброс к заводским настройкам можно произвести следующим образом:
- Снять питание с регулятора;
- Нажать одновременно кнопки «+» и «-»;
- Включить питание.
Модернизация модуля термостата W1209 своими руками
Конструкция прибора дает широкие возможности для модернизации. Можно доработать устройство следующим образом:
- Поместить термореле в корпус;
- Удлинить шлейф термодатчика;
- Сменить версию прошивки.
Последний пункт возможно выполнить при наличии навыков работы с программируемыми контроллерами. Для этой цели используют USB программатор ST-Link V2. Необходимую версию прошивки можно скачать с официального сайта производителя контроллера. Переделка устройства путем смены прошивки на более новую позволяет ввести новые функции и улучшить эксплуатационные характеристики.
Вариант корпуса
Доработка шлейфа имеет смысл по причине малой длины штатного провода датчика (около 0.5 м).
Настройки термостата (XH-W1209)
Для входа в режим настройки необходимо удерживать кнопку «SET» в течении 5 секунд, после чего кнопкой «+» или «—» выберем настраиваемое меню (P0 . . . P6). Для входа и выхода с меню, необходимо кратковременно нажать кнопку «SET«.
PO — Режим работы термостатаВ данной меню устанавливается режим работы «С — охлаждение» или «H — нагрев«, если выбран режим «C«, реле сработает, когда температура упадет до заданного значения. Если выбран режим «H«, то реле сработает когда при повышении температуры до заданного значения будет активировано реле температуры.
P1 — Настройка гистерезисаВ данном меню настраивается гистерезис (разница между температурой включения и выключения), значение от 0.1 °C до 15.0 °C, по умолчанию 2 °C, шаг изменения 0.1 °C. Например, если установлено значение в 2 °C, а температура работы 20 °C и режим «H«, то при температуре 22 °C, термостат отключит нагрев, а при температуре 18 °C включит нагрев.
P2 — Верхний придел температурыУстановка верхнего предела температуры значение от -45 °C до 110 °C, по умолчанию 110 °C, шаг изменения 1 °C.
P3 — Нижний предел температурыУстановка нижнего предела температуры значение от -50 °C до 105 °C, по умолчанию 110 °C, шаг изменения 1 °C.
P4 — Корректировка температурыВ данном меню можно откалибровать показания термометра, конечно если у вас есть образцовый термометр, значение от -7 до 7, по умолчанию 0, шаг изменения 1.
P5 — Задержка включения релеВ этом меню, устанавливается задержка включения 0 … 10 минут.
P6 — Верхний придел температуры отключенияМеню настройки аварийного превышения температуры от 0 °C до +110 °C, по умолчанию выключен «OFF«.
Сброс на заводские параметры:► Отключить питание► Нажмите и удерживайте «+» и «-»► Включите питаниеНа дисплее появится надпись 888, настройки сброшены.
Принципиальная схема подключения:
Купить на Aliexpress Терморегулятор XH-W1209
Купить в Самаре и области Терморегулятор XH-W1209 Акриловый корпус XH-W1209
Настройка и работа термостата
Установка программируемого терморегулятора W1209 заключается в подключении устройства к источнику стабилизированного питания, настройке датчика температуры и контролируемой цепи.
Важно! Принципиальный момент – устройство содержит в себе только «сухие» контакты реле, то есть коммутирует цепь и никакого питания в линию не выдает. Как подключить электрический обогреватель
Как подключить электрический обогреватель
Для правильной эксплуатации устройства следует знать особенности его работы:
- Имеется возможность задержки включения от 0 до 10 минут;
- Схема обладает регулируемым гистерезисом. Гистерезис – это разница температур при включении и отключения. Данная функция важна для коммутации устройств нагрева или охлаждения, обладающих высокой инерционностью.
Дальнейшая настройка заключается в выборе необходимых параметров при помощи кнопок управления и светодиодного цифрового индикатора.
На рассматриваемый w1209 терморегулятор инструкция не дает подробное описание схемотехники, но энтузиастами составлена принципиальная электрическая схема w1209 с питанием dc 12 в, из которой понятно, что работой управляет программируемый микроконтроллер, включенный по типовой схеме.
Working with the Code in this Repository
Clone this repository, an run for dependency resolution. This will download an STM8 eForth binary, and add required folders, files, and symlinks.
The general workflow for set-up is this:
- clone the repository
- install stm8flash
- connect a ST-LINK-V2 dongle to a W1209
- run to wipe the stock firmware
- run to flash the STM8EF binary
- optionally install the development version of ucSim (or use the Docker image) to take advantage of off-line image creation
For programming the W1209 binary please follow the instructions in the (if is installed just run ).
Interactive scripting through the serial console is supported by the STM8 eForth base binary. Please refer to the .
Основные параметры:
- Управляющее реле стоит на 12 В с NO контактом, коммутирует ток до 20 А (14VDC) и до 5 А (250VAC).
- Тип датчика ― водонепроницаемый: NTC (10K/3435). Температурный датчик представляет собой термосопротивление 10 кОм, герметично залитое в защитный металлический колпачок. Длина провода датчика температуры 50 см., но при необходимости, его можно удлинить.
- Диапазон измеряемой и контролируемой температуры: -50 ~ 110 градусов.
- Точность измерения: ± 0.1 °C.
- Точность управления: 0.1 °C.
- Гистерезис: 0.1 °C.
- Частота обновления: 0.5 сек.
- Напряжение питания: 12 вольт, постоянного тока.
- Потребляемая мощность: < 1W.
Управляющее реле стоит на 12В с NO контактом, коммутирует ток до 20А (14VDC) и до 5А (250VAC)
Лучше-бы реле поставили с переключающим контактом и все 3 вывода вывели на разъём подключения, при этом немного расширяется сфера применения термостата
Термодатчик представляет собой термосопротивление 10кОм, герметично залитое в защитный металлический колпачок. Длина кабеля 30см (заявлено 50см), но при необходимости, его можно удлинить.
Настройка параметров с расшифровкой:
— Температура уставки -50ºС 110ºС, по умолчанию 28ºС
— P1 гистерезис переключения 0,1 — 15,0ºС, по умолчанию 2,0ºС
Несимметричный (в минус от уставки), позволяет снизить нагрузку на реле и исполнитель в ущерб точности поддержания температуры.
— P2 максимальная уставка температуры -45ºС 110ºС, по умолчанию 110ºС
Позволяет сузить диапазон уставки сверху
— P3 минимальная уставка температуры -50ºС 105ºС, по умолчанию -50ºС
Позволяет сузить диапазон уставки снизу
— P4 коррекция измеряемой температуры -7,0ºС 7,0ºС, по умолчанию 0,0ºС
Позволяет проводить простейшую калибровку для повышения точности измерения (только сдвиг характеристики).
— P5 задержка срабатывания в минутах 0-10мин, по умолчанию 0мин
Иногда необходима для задержки срабатывания исполнителя, критично например для компрессора холодильника.
— P6 ограничение отображаемой температуры сверху (перегрев) 0ºС-110ºС, по умолчанию OFF
Лучше без необходимости не трогать, т.к. при некорректной настройке дисплей будет постоянно отображать «—» в любом режиме и придётся скидывать настройки в состояние по умолчанию, для этого надо при очередном включении питания удерживать нажатыми кнопки + и -.
— Режим работы С (охладитель) либо H (нагреватель), по умолчанию С
Фактически просто инвертирует логику работы термостата.
Все настройки сохраняются после отключения питания.
Никаких дополнительных и хитрых настроек
(ПИД, наклон, обработка, сигнализация) не обнаружено, но они простому пользователю и не нужны.
При температуре ниже -50ºС (или при отключении датчика) на индикаторе отображается LLL
При температуре выше 110ºС (или при замыкании датчика) на индикаторе отображается HHH
Интересная особенность — скорость обновления показаний температуры зависит от скорости изменения температуры. При быстрых изменениях температуры, индикатор обновляет показания 3 раза за секунду, при медленных изменениях — примерно в 10 раз медленнее, т.е. происходит цифровая фильтрация результата для повышения стабильности показаний.
Точность измерения заявлена 0,1ºС, но это просто невозможно для обычного нелинейного терморезистора без индивидуальной калибровки по множеству точек, которую 100% не делали, да и 10-bit ADC не позволяет такую роскошь. В лучшем случае можно рассчитывать на точность 1ºС
Калибровка термореле W1209
Калибровка термореле осуществляется в режиме программирования в пункте меню Р4. Для калибровки нужно иметь образцовый термометр. Сравнивая показания эталона с показаниями конструкции, приводят их к одинаковым значениям манипуляциями кнопок «+» или «-». После выхода из настроек W1209 автоматически корректирует температуру измерений во всем диапазоне.
При отсутствии термометра можно воспользоваться известными значениями:
- Температура таяния снега – 0°С;
- Температура кипения воды – 100°С.
Для бытового использования величина погрешности будет в допустимых пределах при калибровке при помощи кипяченой воды вместо дистиллированной.