В результате длительного пошагового тестирования проблема была локализована таким образом:
1. от float я решил отказаться - проще использовать функцию REAL_TO_WORD, чем разбираться что да почему, хотя есть подозрение, что работать может.
2. связь восстановилась после того как номер начального бита alarm сделал 0х00. Этого требования кстати нигде !!! в инструкциях нет!
Рекоммендации: резервировать с запасом количество бит на Modbus, достаточное для добавления alarm'ов, начиная с 0. т.к. идут они только по порядку. если потом по ходу у вас придумаются дополнительные события, а вставлять их будет некуда - придется, передвигать другие регистры.
Дополнительно обнаруженные траблы:
Так и не смог пока заставить панель возвращаться автоматически на экран, указанный в настройках (у меня стоит номер1).
С контролером периодически отваливается связь по TCP, закономерности не выявил, такое ощущение, что контроллер перегревается, хотя частота цикла у меня 50 мс.
В конфигураторе V6.4f появилась возможность конфигурить панель как slave устройство, как сделать поддержку в КоДеСис, если ПЛК - Мастер, возможно с помошью Universal Modbuse devise?
Если так, то какие переменные нужно использовать для обмена с панелью?
Работаю с ПЛК Овен и не только...
Я выложил пример настройки передачи данных ПЛК(мастер) - ИП320(слэйв) в теме "Средства отображения (HIM)/ип-320 слэйв".
Посмотрите, может поможет.
Работаю с ПЛК Овен и не только...