задача примерно такая:
есть работающий проект, построенный на компонентах icpdas.
интерфейс на персоналке, к ней подключен контроллер по протоколу ModbusTСР. к контроллеру подключены устройства ввода/вывода через ModbusRTU. на контроллере программка собственного сочинения, транслирующая данные, полученные из компьютера в устройства через rs-485. все исправно функционирует
возникла необходимость добавления внешнего (выносного) пульта управления, который было решено реализовать на контроллере спк105, чтобы
1) уложиться в малые габариты (поэтому выбран самый маленький из спк10х)
2) не лепить дополнительно кучу тумблеров и рукояток
3) обойтись без дополнительных модулей ввода/вывода и толстого пучка проводов
связь через ModbusRTU
была изучена среда codesys, создан проект, нарисованы все интерфейсы. все вроде бы работает.
осталось связать спк с контроллером icpdas. и вот здесь произошел облом - связь не работает, спк не отвечает, никак
в проекте было создано устройство Modbus_Com (правильной версии). номер порта был установлен 2, когда была попытка соединения с rs-232 и номер 3 для rs-485
скорость 9600, 8 бит, 1 стоповый, без контроля четности (все как и в контроллере icpdas)
уровнем ниже было создано устройство Modbus_Serial_Device (правильной версии). было оставлено по 2 регистра (чтобы не перегружать на начальной стадии эксперимент), номер сети задан 2 (именно ко второму устройству по адресу 0 идет обращение в контроллере icpdas)
проект перекомпилирован и загружен в контроллер. из контроллера icpdas производится запрос на передачу 1 регистра (сетевое устройство 2, регистр 0).
результаты:
- контроллер спк полностью игнорирует отправленный запрос, регистры не меняют своего значения
- контроллер icpdas выдает ошибку "отсутствует отклик"
то, что на шине rs-485 присутствует сигнал - 100%, иначе на него не реагировали бы устройства ввода/вывода i-70xx.
почему не реагирует спк? вроде бы я все сделал, как в контрольном примере