Как посчитать адрес Modbus для входа X или выхода Y у PMP20?
Здесь легко ошибиться: номера входов и выходов восьмеричные, а адреса Modbus — обычные десятичные, идущие подряд. Прибавлять к базовому адресу нужно порядковый номер входа, а не его восьмеричную запись.
Правило для входов основного модуля (база 20480):
- X0 → 20480
- X10 → 20480 + 8 = 20488
- X20 → 20480 + 16 = 20496
- X30 → 20480 + 24 = 20504
Для входов модуля расширения №1 (X10000 и далее) база 20736: X10000 → 20736, X10010 → 20744, X10020 → 20752. Для модуля №2 база 20800, дальше по 64 адреса на модуль.
Для выходов расчёт тот же, база 24576. В шестнадцатеричном виде это выглядит так: Y0 — H6000, Y10 — H6008 (не H6010), Y20 — H6010 (не H6020).
Проверить себя просто: адреса идут подряд без пропусков, поэтому между X0 и X10 ровно восемь адресов, а не шестнадцать. Если в опросе «съезжают» состояния входов ровно на два бита при переходе через X7, значит адрес посчитан по десятичной записи номера.
Прикреплённая документация
Георгий Жуков
Ведущий инженер