Вход

Просмотр полной версии : Сложности с ModbusTCP Slave.



Всеволод К
05.11.2025, 18:47
*Извиняюсь, что пложу темы, но и всё в одной писать было бы некорректно (темы-то различаются)/

Что только не пробовал - не получается обмен. При том, используя те же параметры в OPC Server - удаётся всё.

Обмен вроде идёт на СПК, а по-факту ничего не приходит и не обновляется. Как быть?

Евгений Кислов
05.11.2025, 18:49
Добрый день.
Напишите завтра утром мне в телеграм, пожалуйста (см. в подписи).

kondor3000
05.11.2025, 19:09
В мастере должна стоять галка Автоподключение, 86602
В соотнесении настройка Вкл 2 (Всегда в задаче цикла шины)
Читать из панели функцией 0х04, записывать функцией 0х10 (или 0х06). Запись по фронту бита.

Всеволод К
05.11.2025, 23:24
Автоподключение есть. Насчет шины не уверен, но, в целом, соединение-то есть. На счëт считывания тоже не помню какую функцию использовал, но она совпадала с той, что указывал в OPC. (Последние попытки пытался считать хотя-бы 1 переменную)

Всеволод К
06.11.2025, 09:33
Видимо именно "Всегда в задаче цикла шины" имело значение, т.к. изменив данный параметр всё заработало (функции оставил прежние). Спасибо!

*В фото как выглядит моё соотнесение в CoDeSys. На случай, если кто-то столкнётся с проблемой подключения к Yaskawa по Modbus.
**Отдельно отмечу, что для того, чтоб записывать переменные типа Double(у Yaskawa так называется DINT), нужно конвертировать DINT в DWORD, а его перевернуть через функцию ReverseWORDsInDWORD библиотеки CAA Memory (MEM), т.к. у Yaskawa записана другая очерёдность WORD.
***В Yaskawa установлен IO Mode 0

Всеволод К
06.11.2025, 09:36
Добрый день.
Напишите завтра утром мне в телеграм, пожалуйста (см. в подписи).

Евгений, спасибо! Решил сначала попробовать совет kondor3000 - всё получилось, так что не стал беспокоить =)