Доброго времени суток!
Просьба помочь разобрать мои ошибки в написании кода рецепта.
Евгений Кислов https://rutube.ru/video/1d0e4b3e9e14...446083d303dae/ четко разложил оформление рецепта в Codesys 3.5. К сожалению, не нашел подробного аналогичного описания на версии 2.3, а было бы здорово)
Решил реализовать этот код только в Codesys 2.3 на базе ПЛК 110-60
Шаг 1
в "тип данных" создал две структуры аналогично видео:
{attribute 'pack_mode':=2}
TYPE recipe :
STRUCT
sTitle:STRING (9);
wValue:WORD;
rValue:REAL;
END_STRUCT
END_TYPE
{attribute 'pack_mode':=2}
TYPE slave_data :
STRUCT
sTitle:STRING (9);
wValue:WORD;
rValue:REAL;
END_STRUCT
END_TYPE
Шаг 2
В POU обозначил переменные:
PROGRAM PLC_PRG
VAR
dwSize: WORD;
recipe: recipe;
fbRTUslave: MB_RTU_SLAVE;
END_VAR
VAR RETAIN
stSlaveData:slave_data;
END_VAR
шаг 3
Добавил в "менеджер библиотек" библиотеки:
OwenModbusSlave v 2.3.9.2
BufferTolls_v2.3.9.01
шаг 4
В поле программирования добавлен ФБ "fbRTUslave"
По сравнению с Codesys 3.5 в Codesys 2.3 ФБ функционал входов ничем не отличается. Только в описании блока в Codesys 2.3 большее количество подключаемых переменных.
При попытке загрузки в ПЛК появляется ошибка "неразрешенные ссылки на внешние pou" Но это лечится посредством удаления библиотек на которые дана ссылка в окне ошибки.
шаг 5
меняется настройка СП307 только вместо Плк210 указывается PLC порт с указанием сетевого адреса slave то есть ПЛК 110.
Далее все загружается.
И тут возникает проблема в отсутствии связи. СП постоянно опрашивает ПЛК в связи с чем появляется окно "communicating .. PLC port StaNO 1"
я так понимаю что просто отсутствует связь между ПЛК 110 и СП307.
Перепробовал все что знаю:
добавил в конфигураторе slave-устройство, присвоил адрес. Но почему то не идет.
Объясните пожалуйста товарищи специалисты что я сделал не так.
Заранее благодарю.


Ответить с цитированием