Написание программ для плк в codesys для обмена данными с другими устройствами по modbus
Начать можно с этого:
https://ftp.owen.ru/CoDeSys3/11_Docu...odbus_v2.2.pdf
Добрый день!
Пытаюсь наладить связь с MasterOPC Universal Modbus Server по руководству (стр.33 )в начале темы.Не получается. ПЛК 210-03. Куда копать, что посмотреть?
С соединением с ModbusOPC получилось. Есть рабочий вариант по соединению 2 ПЛК по ModbusTCP?
В документации отдельно описаны настройки для мастера и слэйва:
https://ftp.owen.ru/CoDeSys3/11_Docu...odbus_v2.2.pdf
Конкретного примера нет, потому что для двух ПЛК есть более удобные способы настройки обмена - например, сетевые переменные.
Здравствуйте!
В "Настройках обмена по протоколу modbus codesys v3.5" Есть фраза "Общее кол-во экземпляров ФБ.... в проекте не должно превышать 10"
Подскажите, с чем это связано и можно ли обойти?
Добрый день.
Это связано с ограничениям в системных библиотеках CODESYS.
Обойти в явном виде это нельзя, но можно в пределах одного COM-порта обойтись всего двумя экземплярами: один на открытие порта (COM_Control), второй - для обмена через него (например, MB_SerialRequest).
Допустим, возьмём экземпляр MB_SerialReques.
Адреса слейвов, коды функций, значения для получения/отправки и т.п. это всё задаётся через переменные, привязанные к этому экземпляру, а дальше экземпляр как-то запускается и происходит обмен. Потом изменяем значения переменных и заново запускаем экземпляр.
Я правильно Вас понял?
Добрый день. Прошу помощи с настройкой ПЛК200-02. При попытке считать данные по modbus TCP OPC-сервер возвращает ошибку 10. Порты ПЛК соединены в сеть LAN,по 502 порту идёт опрос модулей МВ210, по 503 устройство MOdbus Slave для подключения к сенсорной панели.
Вложение 59177
Здравствуйте!
Возможно плохо искал и где-то есть ответ.
Можно ли одновременно использовать библиотеку owencommunication и стандартные средства кодесис?
Owencommunication мастер на двух 485х портах - исполнительные механизмы,
стандартные средства по ethernet modbus TCP - граф. дисплей.
Возникает проблема, запускаем систему, даем задание через граф дисплей (например, частоту на ПЧ) ПЛК отрабатывает.
Но при попытке запустить исполнительные механизмы ПЛК виснет и до перезагрузки.
Но самое интересное, что вся система работала несколько дней, никаких корректив не вводилось и вдруг возникла такая проблема.
Подробнее пока не могу описать, не на объекте.
Подскажите, пожалуйста, куда копать?
stt149 Хм. У меня есть проект, где используются на СПК107:
* SysCom (до этого работало на OCL) - два интерфейса;
* Modbus TCP - один
* Modbus RTU через штатную кофигурацию (объекты в дереве проекта) - два интерфейса
Всё работает на ура. Так что-то там не то или не так.
Эээ... ещё раз (может я путано пояснил): у меня один интерфейс опрашивается только одним способом. То есть, один RS-485 опрашивается через SysCom, другой - штатно и так далее.
Проявляется погасанием среднего (из трех служебных) светодиода и отсутствием реакции у исполнителей.
Проблема происходит когда идет обращение к OCL.MB_SerialRequest.
при подключении к ПЛК наблюдаю надпись "отсутствует исходный код для данного объекта поскольку он относится к компилированной библиотеке owencommunication..." исходника нет, пробовал много всего, ничего не помогает.
При отключении ПК от ПЛК ничего не меняется.
Подскажите, что делать? куда копать?
Не сразу, только при выполнении определенного куска кода.
версия 3.5.11.5
Проект отправил на почту, тема "отсутствует исходный код owencommunication"
И сейчас не пришло?
У Вас есть мессенджер для связи, кроме skype?
как туда написать?
Вдруг понадобятся комментарии к коду,
Используйте прошивку с SP16 - в ней не сложно сделать это даже с помощью стандартных компонентов в дереве проекта.
См. видео: https://youtu.be/Q3hqQlqcESo?t=5491
По аналогии - cделать свой IF ... END_IF на каждую переменную.Цитата:
Спасибо, и как всё-таки это выглядит если несколько переменных типа REAL?
Я понимаю, что практически каждый начинающий пользователь хочет, чтобы мы сделали видео по решению его конкретной задачи, с его конкретным набором лампочек и чтобы они были именно нужных ему цветов и т.д.Цитата:
К этому видео нужен пример и желательно на СПК с использованием лампочек тумблеров и вводом уставок.
Но технически это довольно затруднительно.
Вместо это мы проводим для таких начинающих пользователей учебные курсы, где простым и понятным языком объясняются основы работы в CODESYS и базовые приемы, с помощью которых можно решать типовые задачи: https://owen.ru/edu
Cм. скриншот.
Вложение 59908
В таком случае вы можете задать вопрос - вам обязательно ответят (при условии, что вопрос сформулирован так, что на него можно дать ответ).Цитата:
ну тогда я вообще ничего не понял
Я не считаю корректным в данной ситуации "исправлять заготовки", потому что, на мой взгляд, продуктивным является не решение за пользователей их задач, а обучение пользователей таким образом, чтобы они могли успешно самостоятельно решать любые встающие перед ними задачи. Как уже упоминал - наш учебный центр отлично с этим справляется.
Здравствуйте. Подскажите для чего служат входные регистры в Modbus TCP Slave Device ? Если они только для чтения из slave устройства то как их считать, использовать код функции 0х04?
Это input регистры внешнего относительно ПЛК мастера MODBUS TCP.
А вообще, все это описано в документации по обмену через модбас.
Если у меня СПК является слэйв устройством и мне надо только считывать с него то нужно использовать регистры временного хранения?