DDM845R: различия между версиями

Материал из Wiren Board
(Переформатировал статью.)
Строка 1: Строка 1:
<languages/>
__FORCETOC__
<translate>


== Димммер  DDM845R компании "Разумный дом" == <!--T:1-->
== Инициализация регистров ==


=== Описание === <!--T:2-->
[[Файл:DDM845R.png|250px|thumb|right|Управление диммером в Web-интерфейсе]]
Полное описание устройства на сайте производителя.


=== Инициализация регистров === <!--T:3-->
Устанавливаем основные параметры:
[[Файл:DDM845R.png|250px|thumb|left|Управление диммером в Web-интерфейсе]]
* Адрес            HR0=34
* Скорость и параметры порта  HR1=0 (по умолчанию 0)
* Режим работы    HR30=1 (по умолчанию 1)
* Общую яркость    HR44=100 (по умолчанию 100)
* Дополнительные параметры:  HR31, 33,34,35,36,37,60,61,62,63  = 0
* Период частоты              HR32 = 10000 ... 10500


<!--T:4-->
Устанавливаем яркость каналов (по умолчанию 0):
Сначала установить основные параметры:
* 1 HR40= (0-1023)
* 2 HR41= (0-1023)
* 3 HR42= (0-1023)
* 4 HR43= (0-1023)


<!--T:5-->
Входы:
Установить адрес            HR0=34
* Для 1 вх IR4 = -25000 (выключатель разомкнут — может быть другое число, например 0x9ff6);  ~50 — (выключатель замкнут)
* Для 2 вх IR5
* Для 3 вх IR6
* Для 4 вх IR7
* Для 5 вх IR8
* Для 6 вх IR9
* Для 7 вх IR10
* Для 8 вх IR11


<!--T:6-->
Создаем сценарии для преобразования значений регистров в понятные величины:
Скорость и параметры порта  HR1=0 (установлен по умолчанию 0)
* HR100=2, HR101=4, HR102=8, HR103= -1000, HR104=1
* HR200=2, HR201=5, HR202=8, HR203= -1000, HR204=1
* HR300=2, HR301=6, HR302=8, HR303= -1000, HR304=1
* HR400=2, HR401=7, HR402=8, HR403= -1000, HR404=1
* HR500=2, HR501=8, HR502=8, HR503= -1000, HR504=1
* HR600=2, HR601=9, HR602=8, HR603= -1000, HR604=1
* HR700=2, HR701=10, HR702=8, HR703=-1000, HR704=1
* HR800=2, HR801=11, HR802=8, HR803=-1000, HR804=1


<!--T:7-->
Установить режим работы    HR30=1 (установлен по умолчанию 1)
<!--T:8-->
Установить общую яркость    HR44=100 (установлен по умолчанию 100)
<!--T:9-->
Дополнительные параметры:  HR31, 33,34,35,36,37,60,61,62,63  = 0
<!--T:10-->
Период частоты              HR32 = 10000 ... 10500
<!--T:11-->
Установить значения, которые будут постоянно меняться.
<!--T:12-->
Установить яркость канала 1 HR40= (0-1023) (установлен по умолчанию 0)
<!--T:13-->
Установить яркость канала 2 HR41= (0-1023) (установлен по умолчанию 0)
<!--T:14-->
Установить яркость канала 3 HR42= (0-1023) (установлен по умолчанию 0)
<!--T:15-->
Установить яркость канала 4 HR43= (0-1023) (установлен по умолчанию 0)
<!--T:16-->
Входы.
<!--T:17-->
Для 1 вх IR4 = -25000 (выключатель разомкнут -- может быть другое число, например 0x9ff6);  ~50 — (выключатель замкнут)
<!--T:18-->
Для 2 вх IR5
<!--T:19-->
Для 3 вх IR6
<!--T:20-->
Для 4 вх IR7
<!--T:21-->
Для 5 вх IR8
<!--T:22-->
Для 6 вх IR9
<!--T:23-->
Для 7 вх IR10
<!--T:24-->
Для 8 вх IR11
<!--T:25-->
Можно эти значения преобразовать в понятные величины:
<!--T:26-->
Создать сценарий: HR100=2, HR101=4, HR102=8, HR103= -1000, HR104=1
<!--T:27-->
Создать сценарий: HR200=2, HR201=5, HR202=8, HR203= -1000, HR204=1
<!--T:28-->
Создать сценарий: HR300=2, HR301=6, HR302=8, HR303= -1000, HR304=1
<!--T:29-->
Создать сценарий: HR400=2, HR401=7, HR402=8, HR403= -1000, HR404=1
<!--T:30-->
Создать сценарий: HR500=2, HR501=8, HR502=8, HR503= -1000, HR504=1
<!--T:31-->
Создать сценарий: HR600=2, HR601=9, HR602=8, HR603= -1000, HR604=1
<!--T:32-->
Создать сценарий: HR700=2, HR701=10, HR702=8, HR703=-1000, HR704=1
<!--T:33-->
Создать сценарий: HR800=2, HR801=11, HR802=8, HR803=-1000, HR804=1
<!--T:34-->
Теперь результат можно получить в регистрах:
Теперь результат можно получить в регистрах:
* Для 1 вх IR100 = 0 (выключатель разомкнут) 1 (выключатель замкнут)
* Для 2 вх IR101 = 0 (выключатель разомкнут) 1 (выключатель замкнут)
* Для 3 вх IR102 = 0 (выключатель разомкнут) 1 (выключатель замкнут)
* Для 4 вх IR103 = 0 (выключатель разомкнут) 1 (выключатель замкнут)
* Для 5 вх IR104 = 0 (выключатель разомкнут) 1 (выключатель замкнут)
* Для 6 вх IR105 = 0 (выключатель разомкнут) 1 (выключатель замкнут)
* Для 7 вх IR106 = 0 (выключатель разомкнут) 1 (выключатель замкнут)
* Для 8 вх IR107 = 0 (выключатель разомкнут) 1 (выключатель замкнут)


<!--T:35-->
== Набор команд ==
Для 1 вх IR100 = 0 (выключатель разомкнут) 1 (выключатель замкнут)
 
<!--T:36-->
Для 2 вх IR101 = 0 (выключатель разомкнут) 1 (выключатель замкнут)
 
<!--T:37-->
Для 3 вх IR102 = 0 (выключатель разомкнут) 1 (выключатель замкнут)


<!--T:38-->
Набор команд для создания сценариев на незапрограммированном диммере. Адрес устройства — 34.
Для 4 вх IR103 = 0 (выключатель разомкнут) 1 (выключатель замкнут)
 
<!--T:39-->
Для 5 вх IR104 = 0 (выключатель разомкнут) 1 (выключатель замкнут)
 
<!--T:40-->
Для 6 вх IR105 = 0 (выключатель разомкнут) 1 (выключатель замкнут)
 
<!--T:41-->
Для 7 вх IR106 = 0 (выключатель разомкнут) 1 (выключатель замкнут)
 
<!--T:42-->
Для 8 вх IR107 = 0 (выключатель разомкнут) 1 (выключатель замкнут)
 
 
 
<!--T:43-->
Набор команд для создания сценариев на незапрограммированном диммере (с адресом 34):
<syntaxhighlight lang="bash">
<syntaxhighlight lang="bash">
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r100 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r100 0x2
Строка 143: Строка 59:
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r104 0x1
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r104 0x1


<!--T:44-->
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r200 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r200 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r201 0x5
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r201 0x5
Строка 151: Строка 65:
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r204 0x1
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r204 0x1


<!--T:45-->
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r300 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r300 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r301 0x6
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r301 0x6
Строка 159: Строка 71:
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r304 0x1
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r304 0x1


<!--T:46-->
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r400 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r400 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r401 0x7
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r401 0x7
Строка 167: Строка 77:
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r404 0x1
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r404 0x1


<!--T:47-->
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r500 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r500 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r501 0x8
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r501 0x8
Строка 174: Строка 83:
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r504 0x1
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r504 0x1


<!--T:48-->
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r600 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r600 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r601 0x9
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r601 0x9
Строка 181: Строка 89:
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r604 0x1
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r604 0x1


<!--T:49-->
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r700 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r700 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r701 0xa
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r701 0xa
Строка 188: Строка 95:
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r704 0x1
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r704 0x1


<!--T:50-->
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r800 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r800 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r801 0xb
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r801 0xb
Строка 196: Строка 102:
</syntaxhighlight>
</syntaxhighlight>


<!--T:51-->
== Шаблон ==
 
Шаблон config-ddm845r.json для работы с устройством.
<syntaxhighlight lang="ecmascript">
<syntaxhighlight lang="ecmascript">
Шаблон config-ddm845r.json для работы с устройством:


<!--T:52-->
// Configuration options
// Configuration options
{
{
Строка 212: Строка 118:




            <!--T:53-->
{
{
                 "title": "Operational mode",
                 "title": "Operational mode",
Строка 220: Строка 125:
             }
             }


        <!--T:54-->
],
],


        <!--T:55-->
"channels": [
"channels": [


            <!--T:56-->
{
{
                 "name": "Channel 1",
                 "name": "Channel 1",
Строка 263: Строка 165:
             },
             },


            <!--T:57-->
{
{
                 "name": "Channel mode 0-3",
                 "name": "Channel mode 0-3",
Строка 272: Строка 173:
             },
             },


            <!--T:58-->
{
{
                 "name": "PWM Freq",
                 "name": "PWM Freq",
Строка 282: Строка 182:
             },
             },


              <!--T:59-->
{
{
                 "name" : "Input 1 state",
                 "name" : "Input 1 state",
Строка 290: Строка 189:
             },
             },


            <!--T:60-->
{
{
                 "name" : "Input 2 state",
                 "name" : "Input 2 state",
Строка 334: Строка 232:
             }
             }


        <!--T:61-->
]
]
     }
     }
}
}
</syntaxhighlight>
</syntaxhighlight>
</translate>

Версия 17:10, 24 ноября 2020


Инициализация регистров

Управление диммером в Web-интерфейсе

Устанавливаем основные параметры:

  • Адрес HR0=34
  • Скорость и параметры порта HR1=0 (по умолчанию 0)
  • Режим работы HR30=1 (по умолчанию 1)
  • Общую яркость HR44=100 (по умолчанию 100)
  • Дополнительные параметры: HR31, 33,34,35,36,37,60,61,62,63 = 0
  • Период частоты HR32 = 10000 ... 10500

Устанавливаем яркость каналов (по умолчанию 0):

  • 1 HR40= (0-1023)
  • 2 HR41= (0-1023)
  • 3 HR42= (0-1023)
  • 4 HR43= (0-1023)

Входы:

  • Для 1 вх IR4 = -25000 (выключатель разомкнут — может быть другое число, например 0x9ff6); ~50 — (выключатель замкнут)
  • Для 2 вх IR5
  • Для 3 вх IR6
  • Для 4 вх IR7
  • Для 5 вх IR8
  • Для 6 вх IR9
  • Для 7 вх IR10
  • Для 8 вх IR11

Создаем сценарии для преобразования значений регистров в понятные величины:

  • HR100=2, HR101=4, HR102=8, HR103= -1000, HR104=1
  • HR200=2, HR201=5, HR202=8, HR203= -1000, HR204=1
  • HR300=2, HR301=6, HR302=8, HR303= -1000, HR304=1
  • HR400=2, HR401=7, HR402=8, HR403= -1000, HR404=1
  • HR500=2, HR501=8, HR502=8, HR503= -1000, HR504=1
  • HR600=2, HR601=9, HR602=8, HR603= -1000, HR604=1
  • HR700=2, HR701=10, HR702=8, HR703=-1000, HR704=1
  • HR800=2, HR801=11, HR802=8, HR803=-1000, HR804=1

Теперь результат можно получить в регистрах:

  • Для 1 вх IR100 = 0 (выключатель разомкнут) 1 (выключатель замкнут)
  • Для 2 вх IR101 = 0 (выключатель разомкнут) 1 (выключатель замкнут)
  • Для 3 вх IR102 = 0 (выключатель разомкнут) 1 (выключатель замкнут)
  • Для 4 вх IR103 = 0 (выключатель разомкнут) 1 (выключатель замкнут)
  • Для 5 вх IR104 = 0 (выключатель разомкнут) 1 (выключатель замкнут)
  • Для 6 вх IR105 = 0 (выключатель разомкнут) 1 (выключатель замкнут)
  • Для 7 вх IR106 = 0 (выключатель разомкнут) 1 (выключатель замкнут)
  • Для 8 вх IR107 = 0 (выключатель разомкнут) 1 (выключатель замкнут)

Набор команд

Набор команд для создания сценариев на незапрограммированном диммере. Адрес устройства — 34.

modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r100 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r101 0x4
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r102 0x8
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r103 0x9fff
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r104 0x1

modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r200 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r201 0x5
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r202 0x8
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r203 0x9fff
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r204 0x1

modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r300 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r301 0x6
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r302 0x8
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r303 0x9fff
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r304 0x1

modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r400 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r401 0x7
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r402 0x8
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r403 0x9fff
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r404 0x1

modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r500 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r501 0x8
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r502 0x8
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r503 0x9fff
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r504 0x1

modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r600 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r601 0x9
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r602 0x8
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r603 0x9fff
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r604 0x1

modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r700 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r701 0xa
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r702 0x8
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r703 0x9fff
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r704 0x1

modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r800 0x2
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r801 0xb
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r802 0x8
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r803 0x9fff
modbus_client --debug -mrtu -pnone -s2 /dev/ttyAPP1 -a34 -t0x06 -r804 0x1

Шаблон

Шаблон config-ddm845r.json для работы с устройством.

// Configuration options
{
    "device_type": "DDM845R",
    "device": {
        "name": "DDM845R",
        "id": "ddm845r",
        "delay_ms": 200,
        "enabled": true,
        "setup": [


{
                "title": "Operational mode",
                "reg_type": "holding",
                "address": "30",
                "value": "1"
            }

],

"channels": [

{
                "name": "Channel 1",
                "reg_type": "holding",
                "address": "0x28",
                "type": "range",
                "max": "0x3ff"
            },
            {
                "name": "Channel 2",
                "reg_type": "holding",
                "address": "0x29",
                "type": "range",
                "max": "0x3ff"
            },
            {
                "name": "Channel 3",
                "reg_type": "holding",
                "address": "0x2A",
                "type": "range",
                "max": "0x3ff"
            },
            {
                "name": "Channel 4",
                "reg_type": "holding",
                "address": "0x2B",
                "type": "range",
                "max": "0x3ff"
            },
            {
                "name": "All channels",
                "reg_type": "holding",
                "address": "0x2C",
                "type": "range",
                "max": "0x64"
            },

{
                "name": "Channel mode 0-3",
                "reg_type": "holding",
                "address": "0x1E",
                "type": "range",
                "max": "0x03"
            },

{
                "name": "PWM Freq",
                "reg_type": "holding",
                "address": "32",
                "type": "range",
                "max": "10500",
                "min": "10000"
            },

{
                "name" : "Input 1 state",
                "reg_type" : "input",
                "address" : 100,
                "type" : "value"
            },

{
                "name" : "Input 2 state",
                "reg_type" : "input",
                "address" : 101,
                "type" : "value"
            },
            {
                "name" : "Input 3 state",
                "reg_type" : "input",
                "address" : 102,
                "type" : "value"
            },
            {
                "name" : "Input 4 state",
                "reg_type" : "input",
                "address" : 103,
                "type" : "value"
            },
            {
                "name" : "Input 5 state",
                "reg_type" : "input",
                "address" : 104,
                "type" : "value"
            },
            {
                "name" : "Input 6 state",
                "reg_type" : "input",
                "address" : 105,
                "type" : "value"
            },
            {
                "name" : "Input 7 state",
                "reg_type" : "input",
                "address" : 106,
                "type" : "value"
            },
            {
                "name" : "Input 8 state",
                "reg_type" : "input",
                "address" : 107,
                "type" : "value"
            }

]
    }
}