Показано с 1 по 10 из 168

Тема: CODESYS V3.5. Онлайн-FAQ

Древовидный режим

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #11

    По умолчанию COM12. Проблемы с опросом Modbus Serial Slave устройств через МКОН

    Вопрос: контроллер настроен в режиме Modbus TCP Master. Необходимо реализовать опрос устройств на шине RS-485, подключенных к контроллеру через конвертер протоколов МКОН. Для каждого slave-устройства в проект добавлен компонент Modbus TCP Slave. Во всех компонентах указан и один и тот же IP-адрес и порт, и разные Unit ID, соответствующие адресам слэйвов на шине RS-485. Проблема в том, что в CODESYS каждый компонент Modbus TCP Slave создает отдельное подключение, а МКОН поддерживает только два одновременных подключения, то есть опросить больше двух слэйвов таким образом невозможно. Как можно решить эту проблему?

    28-08-2020 11-13-04.png

    Ответ: при работе с преобразователями протоколов Modbus TCP/Modbus RTU необходимо добавлять в проект только один компонент Modbus TCP Slave, а уже в него - нужное количество компонентов Modbus Slave COM Port. В этом случае контроллер установит с конвертером протоколов только одно соединение.

    28-08-2020 11-08-11.png

    См. видеопример.

    Обратите внимание: в текущих версиях CODESYS присутствует баг, из-за которого при возникновении любой ошибки обмена с устройством Modbus Slave COM Port, добавленным в компонент Modbus TCP Slave, его опрос больше не производится.
    Для решения проблемы необходимо реализовать сброс ошибок в коде:

    Код:
    PROGRAM PLC_PRG
    VAR
    	fbConfirmError:		        R_TRIG;
            fbConfirmError1:		R_TRIG;
            fbConfirmError2:		R_TRIG;
    END_VAR
    
    // Modbus_Slave_COM_Port, Modbus_Slave_COM_Port_1, Modbus_Slave_COM_Port_2  - имена компонентов из дерева проекта (см. скриншот выше)
    fbConfirmError(CLK := Modbus_Slave_COM_Port.xError, Q => Modbus_Slave_COM_Port.xConfirmError);
    
    fbConfirmError1(CLK := Modbus_Slave_COM_Port_1.xError, Q => Modbus_Slave_COM_Port_1.xConfirmError);
    fbConfirmError2(CLK := Modbus_Slave_COM_Port_2.xError, Q => Modbus_Slave_COM_Port_2.xConfirmError);
    Ошибка исправлена в CODESYS V3.5 SP17.

    2021-09-02_15-07-04.png

Похожие темы

  1. Ответов: 1
    Последнее сообщение: 29.06.2017, 11:21

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •