WB-MAI6 Modbus Analog Inputs: различия между версиями

Строка 899: Строка 899:


=== Карта регистров ===
=== Карта регистров ===
Все modbus-регистры устройства разделены на три группы:
[[WB-MAI6 Modbus Registers|'''Карта регистров WB-MAI6''']]
* Параметры устройства
* Настройка измерительных каналов
* Измеренные значения
Карта регистров приведена в ''таблице 6''. '''«X» в адресе регистра — номер входа от 1 до 6 (от 0x1 до 0x6).'''
<div id="table-6"></div>
{| class="wikitable"
|+Таблица 6. Описание управляющих Modbus-регистров.
!Адрес HEX
!Адрес DEC
!Тип
!Чтение/запись
!Значение по умолчанию
!Формат
!Назначение
|-
! colspan="7" |Параметры устройства
|-
|0x006E
|110
|holding
|RW
|96
|baud rate / 100
|Скорость порта RS-485, '''делённая на 100'''. Допустимые скорости: 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200
|-
|0x006F
|111
|holding
|RW
|0
|0, 1, 2
|Настройка бита чётности порта RS-485. Допустимые значения: 0 — нет бита чётности (none), 1 — нечётный (odd), 2 — чётный (even)
|-
|0x0070
|112
|holding
|RW
|2
|1, 2
|Количество стоп-битов порта RS-485. Допустимые значения: 1, 2
|-
|0x0078
|120
|holding
|RW
|0
|отличное от 0
|Рестарт. Запись в регистр вызывает перезагрузку МК без сохранения состояния
|-
|0x0080
|128
|holding
|RW
|1
|
|Modbus-адрес устройства
|-
|0x00C8 – 0x00CE
|200 – 206
|input
|R
|{'M','A','I','6',0,0}
|
|Сигнатура
|-
|0x00DC – 0x00F1
|220 – 241
|input
|R
|
|__date__ __time__
|Дата сборки прошивки
|-
|0x00FA – 0x010D
|250 – 269
|input
|R
|
|строка, null-terminated
|Версия прошивки
|-
|0x010A – 0x010F
|266 – 271
|input
|R
|
|
|Уникальный идентификатор (S/N)
|-
! colspan="7" |Настройка измерительных каналов
|-
|0x'''X'''400
|4096·'''X''' + 1024
|holding
|RW
|0xFFFF
|[[#table-4 |Таблица 4]], [[#table-5 |таблица 5]], 0xFFFF - выкл
|Тип датчика, подключенного к каналу INxP либо к INx в дифференциальном режиме (см. таблицы 4 и 5)
|-
|0x'''X'''401
|4096·'''X''' + 1025
|holding
|RW
|0xFFFF
|[[#table-4 |Таблица 4]], [[#table-5 |таблица 5]], 0xFFFF - выкл
|Тип датчика, подключенного к каналу INxN (см. таблицы 4 и 5)
|-
|0x'''X'''402
|4096·'''X''' + 1026
|holding
|RW
|20
|20, 45, 90, 175, 330, 600, 1000
|Data rate для каналов INxP либо INx в дифференциальном режиме, 1/с. Например, число 20 соответствует времени сэмплирования 1/20=0.05c.
|-
|0x'''X'''403
|4096·'''X''' + 1027
|holding
|RW
|20
|20, 45, 90, 175, 330, 600, 1000
|Data rate для каналов INxN, 1/с.
|-
|0x'''X'''404
|4096·'''X''' + 1028
|holding
|RW
|0
|0 - 50
|Число непрерывных измерений для каналов INxP либо INx в дифференциальном режиме
|-
|0x'''X'''405
|4096·'''X''' + 1029
|holding
|RW
|0
|0 – 50
|Число непрерывных измерений для каналов INxN
|-
|0x'''X'''406
|4096·'''X''' + 1030
|holding
|RW
|0
|0 - 65000
|Характерное время lowpass-фильтра для каналов INxP либо INx в дифференциальном режиме, мс
|-
|0x'''X'''407
|4096·'''X''' + 1031
|holding
|RW
|0
|0 - 65000
|Характерное время lowpass-фильтра для каналов INxN, мс
|-
|0x'''X'''408
|4096·'''X''' + 1032
|holding
|RW
|0
|16-bit signed int
|Нижняя граница диапазона измерения активного датчика для каналов INxP либо INx в дифференциальном режиме
|-
|0x'''X'''409
|4096·'''X''' + 1033
|holding
|RW
|0
|16-bit signed int
|Нижняя граница диапазона измерения активного датчика для каналов INxN
|-
|0x'''X'''40A
|4096·'''X''' + 1034
|holding
|RW
|1000
|16-bit signed int
|Верхняя граница диапазона измерения активного датчика для каналов INxP либо INx в дифференциальном режиме
|-
|0x'''X'''40B
|4096·'''X''' + 1035
|holding
|RW
|1000
|16-bit signed int
|Верхняя граница диапазона измерения активного датчика для каналов INxN
|-
|0x'''X'''40C
|4096·'''X''' + 1036
|holding
|RW
|0
|0 (авто), 1, 2, 4, 8, 16, 32, 64, 128
|Коэффициент усиления для каналов INxP либо INx в дифференциальном режиме
|-
|0x'''X'''40D
|4096·'''X''' + 1037
|holding
|RW
|0
|0 (авто), 1, 2, 4, 8, 16, 32, 64, 128
|Коэффициент усиления для каналов INxN
|-
! colspan="7" |Измеренные значения
|-
|0x'''X'''500
|4096·'''X''' + 1280
|input
|R
|0
|32-bit signed int
|Измеренное значение для канала INxP либо дифференциального канала INx
|-
|0x'''X'''502
|4096·'''X''' + 1282
|input
|R
|0
|32-bit signed int
|Измеренное значение для канала INxN
|-
|0x'''X'''504
|4096·'''X''' + 1284
|input
|R
|0
|16-bit signed int
|Пересчитанное в физическую величину значение для канала INxP либо дифференциального канала INx
|-
|0x'''X'''505
|4096·'''X''' + 1285
|input
|R
|0
|16-bit signed int
|Пересчитанное в физическую величину значение для канала INxN
|-
|0x'''X'''506
|4096·'''X''' + 1286
|input
|R
|1
|16-bit signed int
|Текущий коэффициент усиления для канала INxP либо дифференциального канала INx
|-
|0x'''X'''507
|4096·'''X''' + 1287
|input
|R
|1
|16-bit signed int
|Текущий коэффициент усиления для канала INxN
|-
|0x0600
|1536
|input
|R
|0
|16-bit signed int
|Напряжение на клеммах +5V, мВ
|-
|0x0601
|1537
|input
|R
|0
|16-bit signed int
|Температура внутри устройства, °C·100
|-
! colspan="7" |Служебные регистры
|-
|0x7400-0x740D,
0x7500-0x7507,
0x8400-0x840D,
0x8500-0x8507
| colspan="6" | Регистры настроек и данных двух служебных калибровочных каналов. Описание см. в таблице выше.
|-
 
|0x0629||1577||input||R||0||16-bit signed int||Опорное напряжение AVCC, мВ
|-
|0x062A||1578||input||R||0||16-bit signed int||Сдвиг сопротивления 2-W, каналы 1-3, P, мОм
|-
|0x062B||1579||input||R||0||16-bit signed int||Сдвиг сопротивления 2-W, каналы 1-3, N, мОм
|-
|0x062C||1580||input||R||0||16-bit signed int||Сдвиг сопротивления 2-W, каналы 4-6, P, мОм
|-
|0x062D||1581||input||R||0||16-bit signed int||Сдвиг сопротивления 2-W, каналы 4-6, N, мОм
|-
|0x062E||1582||input||R||0||16-bit unsigned int||Счётчик циклов опроса входов
|-
|0x0610||1552||input||R||0||16-bit unsigned int||Длительность цикла опроса входов, мс
|-
|0x0611 - 0x626||1553 - 1574||input||R||0||16-bit unsigned int||Период опроса каналов (в порядке IN1P, IN1N, ..., IN6N), мс
|-
|0x0800 - 0x80B || 2048 - 2059 ||holding ||RW|| ||16-bit signed int || Калибровочные коэффициенты делителей для измерения большого напряжения, устанавливаются на заводе
|-
|}
Так как каждый вход поддерживает и дифференциальный и однополярный режим работы, то тип датчика задается для входов INxP и INxN в отдельности в соответствующих регистрах 0x'''X'''400 и 0x'''X'''401, где '''X''' — номер входа от 1 до 6 в шестнадцатеричной системе счисления.
 
Не рекомендуется вручную устанавливать коэффициент усиления. Для однополярного режима работы канала доступны только коэффициенты усиления 1, 2 и 4.
 
Если для входа INxP установлен дифференциальный режим, значение регистров конфигурации входов INxN игнорируются. Для входов INxN может быть установлен только однополярный режим.


==Обновление прошивки и сброс настроек==
==Обновление прошивки и сброс настроек==