PDA

Просмотр полной версии : CODESYS V3.5. Настройка обмена с другими устройствами (Modbus, ОВЕН, OPC и др.)



Страницы : 1 2 3 4 5 [6]

Евгений Кислов
26.02.2024, 17:17
С Manager я справился, опросив модуль как было указано в pdf
C Агентом вроде разобрался, но при опросе с помощью приложения ManageEngine MibBrowser не получается прочитать данные.
ПЛК подключен через WAN, не знаю надо или нет, но я открыл порт 161 в настройках NAT, но все равно получаю ошибку TimedOUT
73908
https://disk.yandex.ru/d/sJ0dxL2ZZAtaeQ ссылка на проект
пробовал сначала OPAQUE тип данных, потом как в примере и STRING и Unsigned32

Посмотрите видео:
https://youtu.be/jKvbbDBBV1Y?si=wJ7cM4u_3QZKWygn

vdv22
27.02.2024, 07:37
Здравствуйте, вопрос такой - хочу настроить обмен между виртуальным контроллером и панелью weintek по протоколу codesys V3. никак мне могу разобраться какой IP адрес у виртуального контроллера и как его устанавливать.

Евгений Кислов
27.02.2024, 07:39
Здравствуйте, вопрос такой - хочу настроить обмен между виртуальным контроллером и панелью weintek по протоколу codesys V3. никак мне могу разобраться какой IP адрес у виртуального контроллера и как его устанавливать.

Добрый день.
Он совпадает с IP-адресом вашего компьютера.

vdv22
27.02.2024, 08:02
Я тоже так продумал , но нет - подошел 127.0.0.1 у меня другой IP

hjkh
27.02.2024, 15:59
Добрый день. Есть задача связать контроллер Овен210 с семью устройствами ПР200 по сети Модбас RTU. При подключении одной ПР200 всё прекрасно - ПР200 опрашивается моментально, но при включении сразу 7 ПР200 опрос происходит с задержкой примерно 14 секунд. Есть ли способ добиться обновления данных с ПР200 хотя бы каждую секунду?
ПЛК Овен 210 выступает в качестве мастера, соответственно ПР200 слейвы.
Для Модбас мастер таймаут ответа 100 мс, время между фремами 20 мс, автоперезапуск соединения активирован.
Модбас слэйв: Таймаут ответа 1000 мс., Время цикла каналов Модбас слэйв 100 мс., на каждой ПР200 по 19 каналов.

Скорость передачи RS-485 - 9600.

Евгений Кислов
27.02.2024, 17:12
Добрый день. Есть задача связать контроллер Овен210 с семью устройствами ПР200 по сети Модбас RTU. При подключении одной ПР200 всё прекрасно - ПР200 опрашивается моментально, но при включении сразу 7 ПР200 опрос происходит с задержкой примерно 14 секунд. Есть ли способ добиться обновления данных с ПР200 хотя бы каждую секунду?
ПЛК Овен 210 выступает в качестве мастера, соответственно ПР200 слейвы.
Для Модбас мастер таймаут ответа 100 мс, время между фремами 20 мс, автоперезапуск соединения активирован.
Модбас слэйв: Таймаут ответа 1000 мс., Время цикла каналов Модбас слэйв 100 мс., на каждой ПР200 по 19 каналов.

Скорость передачи RS-485 - 9600.

Добрый день.
Все 7 ПР200 физически подключены к ПЛК210?

hjkh
27.02.2024, 17:32
Добрый день.
Все 7 ПР200 физически подключены к ПЛК210?

Да, при нажатии в Кодесис кнопок : Онлайн --> Логин , рядом с ПР200 в программе появляется зеленый значок.


Пробовали сэмитировать ситуацию в офисе с двумя ПР200, задержка при обновлении данных от ПР200 составляет около 4 секунд (т.е. каждая ПР200 добавляет к увеличению времени опроса по 1,5-2 секунды)

kondor3000
27.02.2024, 18:59
Да, при нажатии в Кодесис кнопок : Онлайн --> Логин , рядом с ПР200 в программе появляется зеленый значок.


Пробовали сэмитировать ситуацию в офисе с двумя ПР200, задержка при обновлении данных от ПР200 составляет около 4 секунд (т.е. каждая ПР200 добавляет к увеличению времени опроса по 1,5-2 секунды)

Всё зависит от того, как настроен ПЛК210, скорее всего вы читаете, записываете по 1 регистру, а надо делать групповой опрос всех 19 (20) регистров за раз.
Тогда и скорость опроса возрастёт в 20 раз.
Какая скорость опроса стоит ? Максимальное расстояние до ПР200 ? Проекты на ПР200 одинаковые ?
Выкладывайте проект или скрины настроек ПЛК и ПР.

hjkh
28.02.2024, 10:52
Всё зависит от того, как настроен ПЛК210, скорее всего вы читаете, записываете по 1 регистру, а надо делать групповой опрос всех 19 (20) регистров за раз.
Тогда и скорость опроса возрастёт в 20 раз.
Какая скорость опроса стоит ? Максимальное расстояние до ПР200 ? Проекты на ПР200 одинаковые ?
Выкладывайте проект или скрины настроек ПЛК и ПР.

Скорость опроса установлена на 9600.
Сейчас на пробном проекте подключены 2 ПР200 с максимальной длиной проводов между устройствами 50 сантиметров.
Проекты на Пр200 сделал одинаковые.
Каким образом можно реализовать групповой опрос?739447394573946739477394873949

kondor3000
28.02.2024, 11:03
Скорость опроса установлена на 9600.
Сейчас на пробном проекте подключены 2 ПР200 с максимальной длиной проводов между устройствами 50 сантиметров.
Проекты на Пр200 сделал одинаковые.
Каким образом можно реализовать групповой опрос?
Значит скорость лучше поднять до 115200, это первое, сделать 13 адресов подряд на чтение и читать их массивом ARRAY [0..12] OF WORD, то есть указываете начальный адрес, например 512 и длину 13 регистров.
То же самое и на запись все 8 регистров в массив ARRAY [0..7] OF WORD .

На скрине чтение и запись 16 регистров, 12 WORD и 2 REAL 73973 соотнесение 73974

hjkh
07.03.2024, 10:29
Спасибо за решение проблемы!

Выявилась еще одна неприятная особенность на другом проекте.
Имеем контроллер Овен ПЛК 210-03 c написанной в Кодесис 3.5.17 патч 3 программой , который связан с Мастерскадой 4Д по OPC UA.
Периодически требуется скорректировать время в контроллере, делается это изменением соответствующих тэгов на визуализации мастерскады 4Д, которые передаются в контроллер.
При корректировке времени "вперед" все изменяется корректно, но при изменении времени "назад" происходит зависание OPC UA сервера в контроллере.
Возможно ли как-то исправить эту проблему?

Евгений Кислов
07.03.2024, 10:48
Спасибо за решение проблемы!

Выявилась еще одна неприятная особенность на другом проекте.
Имеем контроллер Овен ПЛК 210-03 c написанной в Кодесис 3.5.17 патч 3 программой , который связан с Мастерскадой 4Д по OPC UA.
Периодически требуется скорректировать время в контроллере, делается это изменением соответствующих тэгов на визуализации мастерскады 4Д, которые передаются в контроллер.
При корректировке времени "вперед" все изменяется корректно, но при изменении времени "назад" происходит зависание OPC UA сервера в контроллере.
Возможно ли как-то исправить эту проблему?

Добрый день.
Как вы определяете зависание OPC UA сервера?

hjkh
07.03.2024, 10:55
Добрый день.
Как вы определяете зависание OPC UA сервера?

В программе UA Expert перестают обновляться данные по текущему времени в контроллере.
74160

Евгений Кислов
07.03.2024, 11:19
В программе UA Expert перестают обновляться данные по текущему времени в контроллере.
74160

Но статус при этом Good, судя по скриншоту.
Свяжитесь со мной через телеграм (в подписи) - посмотрим, что именно у вас происходит.

Александр_76
13.03.2024, 14:26
Добрый день.
Не получается наладить связь между ПЛК210-11-CS и сканером штрихкодов Sick CLV620. На ПЛК110 считывал данные штрихкода со сканера с помощью ФБ SysComRead. На ПЛК210 подходящей библиотеки не нашел.
Задача следующая: по сигналу с датчика принять данные от сканера по интерфейсу RS485. Сканер выступает в роли хоста, а ПЛК должен прослушивать интерфейс и улавливать отправляемые данные. Формат посылки со сканера : STX 123456 CR LF (где 123456 - это и есть нужные данные, которые необходимо получить).
Пробую решить задачу при помощи библиотеки OwenNet, ФБ OWEN_LISTEN. При работе этого ФБ на его вход/выход Buffer не поступает считанное значение, хотя в самом блоке есть буфер приема rBuf, и в нем отображаются принимаемые символы. Почему же на выходе ФБ OWEN_LISTEN нет этих символов? Я что-то делаю не так?74313743147431574316

Евгений Кислов
13.03.2024, 14:32
Добрый день.
Не получается наладить связь между ПЛК210-11-CS и сканером штрихкодов Sick CLV620. На ПЛК110 считывал данные штрихкода со сканера с помощью ФБ SysComRead. На ПЛК210 подходящей библиотеки не нашел.
Задача следующая: по сигналу с датчика принять данные от сканера по интерфейсу RS485. Сканер выступает в роли хоста, а ПЛК должен прослушивать интерфейс и улавливать отправляемые данные. Формат посылки со сканера : STX 123456 CR LF (где 123456 - это и есть нужные данные, которые необходимо получить).
Пробую решить задачу при помощи библиотеки OwenNet, ФБ OWEN_LISTEN. При работе этого ФБ на его вход/выход Buffer не поступает считанное значение, хотя в самом блоке есть буфер приема rBuf, и в нем отображаются принимаемые символы. Почему же на выходе ФБ OWEN_LISTEN нет этих символов? Я что-то делаю не так?74313743147431574316

Добрый день.
Проще сделать по примеру (ссылка на проект из него - в описании к ролику):
https://youtu.be/F_unaGOBC08?si=0VkLzVCTjy4ztXx9

Александр_76
14.03.2024, 14:05
Добрый день.
Проще сделать по примеру (ссылка на проект из него - в описании к ролику):
https://youtu.be/F_unaGOBC08?si=0VkLzVCTjy4ztXx9

Евгений, спасибо, по примеру получилось сделать. Вот еще какой вопрос остался: на ПЛК210 2 порта RS485, мне нужно подключить 3 сканера. Т.к. сканера не работают в slave режиме, получается все 3 шт я не могу повесить на один порт, на каждое устройство нужен отдельный порт? На ПЛК210 можно сделать программный порт RS485? Или приспособить под это дело RS232?

Евгений Кислов
14.03.2024, 14:08
Евгений, спасибо, по примеру получилось сделать. Вот еще какой вопрос остался: на ПЛК210 2 порта RS485, мне нужно подключить 3 сканера. Т.к. сканера не работают в slave режиме, получается все 3 шт я не могу повесить на один порт, на каждое устройство нужен отдельный порт? На ПЛК210 можно сделать программный порт RS485? Или приспособить под это дело RS232?

Вы можете использовать конвертер RS-232/RS-485.
Насколько я понимаю, в вашем случае каждый сканер должен висеть на своем порту, так как они не синхронизированы между собой и передача от любого может начаться в произвольный момент времени - если два или три сканера начнут передавать данные одновременно, то на шине будет мусор.

Александр_76
14.03.2024, 14:52
Вы можете использовать конвертер RS-232/RS-485.
Насколько я понимаю, в вашем случае каждый сканер должен висеть на своем порту, так как они не синхронизированы между собой и передача от любого может начаться в произвольный момент времени - если два или три сканера начнут передавать данные одновременно, то на шине будет мусор.

Да, все верно, передача происходит в произвольный момент времени. Про конвертер понял, попробую. Спасибо большое.

ralex
19.03.2024, 09:11
Добрый день.
Извиняюсь если плохо искал аналогичную тему на этом форуме. Вопрос по подключению контроллера заряда АКБ к PLC210-02 и чтение с него данных.
На текущий момент контроллер заряда подключен через преобразователь RS-485/RS-232 к ПК. Контроллер каждые 5 сек. отравляет в терминал данные о работе вида:
Stat=oo
Error=00
U1=12.5
U2=12.5
U3=12.5
U4=12.5
Причем данные он отправляет без всякого запроса, просто с интервалом 5 сек (интерфейс RS-485, не modbus).
Задача заключается в подключении данного контроллера через RS-232 к PLC210-02 и организации чтения данных для мониторинга работы контроллера заряда.
Прошу подсказать в каком направлении изучать программные компоненты ПЛК для реализации этой задачи. Благодарю за помощь.

МихаилГл
19.03.2024, 09:18
Добрый день.
Извиняюсь если плохо искал аналогичную тему на этом форуме. Вопрос по подключению контроллера заряда АКБ к PLC210-02 и чтение с него данных.
На текущий момент контроллер заряда подключен через преобразователь RS-485/RS-232 к ПК. Контроллер каждые 5 сек. отравляет в терминал данные о работе вида:
Stat=oo
Error=00
U1=12.5
U2=12.5
U3=12.5
U4=12.5
Причем данные он отправляет без всякого запроса, просто с интервалом 5 сек (интерфейс RS-485, не modbus).
Задача заключается в подключении данного контроллера через RS-232 к PLC210-02 и организации чтения данных для мониторинга работы контроллера заряда.
Прошу подсказать в каком направлении изучать программные компоненты ПЛК для реализации этой задачи. Благодарю за помощь.
Если в настройках контроллера заряда можно отключить трансляцию в порт и там есть модбас структура, то подключайте как обычное модбас устройство согласно документации, иначе, надо организовывать чтение данных из порта, к которому подключаете, но это всё руками делать.
https://youtube.com/playlist?list=PLUw7cl8x4xnJYec8ArbL28_3PhwQZQA4Z&si=1VieWCe6-eyZdROXhttps://youtube.com/playlist?list=PLUw7cl8x4xnJYec8ArbL28_3PhwQZQA4Z&si=1VieWCe6-eyZdROX

Евгений Кислов
19.03.2024, 09:25
Добрый день.
Извиняюсь если плохо искал аналогичную тему на этом форуме. Вопрос по подключению контроллера заряда АКБ к PLC210-02 и чтение с него данных.
На текущий момент контроллер заряда подключен через преобразователь RS-485/RS-232 к ПК. Контроллер каждые 5 сек. отравляет в терминал данные о работе вида:
Stat=oo
Error=00
U1=12.5
U2=12.5
U3=12.5
U4=12.5
Причем данные он отправляет без всякого запроса, просто с интервалом 5 сек (интерфейс RS-485, не modbus).
Задача заключается в подключении данного контроллера через RS-232 к PLC210-02 и организации чтения данных для мониторинга работы контроллера заряда.
Прошу подсказать в каком направлении изучать программные компоненты ПЛК для реализации этой задачи. Благодарю за помощь.

Добрый день.
Посмотрите видео (ссылка на пример из него - в описании к видео):
https://youtu.be/F_unaGOBC08?si=8nXR2mYC1jQAO2HG

ralex
19.03.2024, 09:51
Если в настройках контроллера заряда можно отключить трансляцию в порт и там есть модбас структура, то подключайте как обычное модбас устройство согласно документации, иначе, надо организовывать чтение данных из порта, к которому подключаете, но это всё руками делать.
https://youtube.com/playlist?list=PLUw7cl8x4xnJYec8ArbL28_3PhwQZQA4Z&si=1VieWCe6-eyZdROXhttps://youtube.com/playlist?list=PLUw7cl8x4xnJYec8ArbL28_3PhwQZQA4Z&si=1VieWCe6-eyZdROX

Возможность настройки контроллера заряда отсутствует, так что придется руками делать.

ralex
19.03.2024, 09:55
Добрый день.
Посмотрите видео (ссылка на пример из него - в описании к видео):
https://youtu.be/F_unaGOBC08?si=8nXR2mYC1jQAO2HG

Евгений, благодарю за оперативный ответ. Еще вопрос по кабелю для подключения к RS-232 ПЛК. В опциях для заказа есть несколько вариантов и поэтому интересует какую распайку использовать в данном случае?

МихаилГл
19.03.2024, 09:57
У вас устройство по умолчанию имеет 485 интерфейс, зачем вам промежуточный преобразователь? Подключайте напрямую в порту 485...

Евгений Кислов
19.03.2024, 10:00
Евгений, благодарю за оперативный ответ. Еще вопрос по кабелю для подключения к RS-232 ПЛК. В опциях для заказа есть несколько вариантов и поэтому интересует какую распайку использовать в данном случае?

Если речь о подключении устройств к этому порту - то подойдет эта распайка, но 5-6 вам не понадобится (достаточно 3-5, 7-3, 8-2):
https://owen.ru/uploads/5/kabel_ks16.png

ralex
19.03.2024, 10:01
У вас устройство по умолчанию имеет 485 интерфейс, зачем вам промежуточный преобразователь? Подключайте напрямую в порту 485...

К 485 подключены устройства по modbus. В этом случае удастся организовать одновременную работу всех устройств?

МихаилГл
19.03.2024, 10:02
К 485 подключены устройства по modbus. В этом случае удастся организовать одновременную работу всех устройств?

Тогда скрин Евгения выше. Если свободных нет.

И ещё я похоже не так понял про 232)

ralex
19.03.2024, 10:14
Тогда скрин Евгения выше. Если свободных нет.

И ещё я похоже не так понял про 232)

На самом деле 1 из 2 RS-485 на текущий момент свободен, но не хотелось бы его использовать для подключения одного устройства. Это из соображений экономии ресурсов, чтобы в будущем иметь возможность подключить к 485 несколько устройств по modbus. Может я не прав конечно)))

МихаилГл
19.03.2024, 10:18
На самом деле 1 из 2 RS-485 на текущий момент свободен, но не хотелось бы его использовать для подключения одного устройства. Это из соображений экономии ресурсов, чтобы в будущем иметь возможность подключить к 485 несколько устройств по modbus. Может я не прав конечно)))

Лучше оставить для непосредственно модбас устройств. Есть вероятность, что понадобится подключить устройство, у которого не будет таких же настроек скорости и параметров передачи, и возможно таких устройств будет много. Лучше позаботиться о такой ситуации заранее, чтоб организовать в будущем 2 группы однотипных по параметрам устройств.

Nikitos_Nu
19.03.2024, 11:57
Здравствуйте.
Возникли проблемы связи СПК107 (Master) и РАЗУМДОМ DAO2ERA (Slave) по ModBus TCP.
Ситуация такая, что я вызываю воспроизведение файла длительностью 6 секунд с помощью записи в регистр "1". И с помощью таймера через 6 секунд пишу в регистр "0", что соответствует состоянию "Стоп". Проблема в том, что воспроизведение идет 6 раз по 1 секунде. То есть посылка идет заново каждую секунду. Пробовал и циклическую отправку и по переднему фронту, и приложением. "1" записывается на секунду или меньше.
Через Modbus Tool РАЗУМДОМ DAO2ERA управляется корректно.
Подскажите, пожалуйста, где записана эта злосчастная секунда.
https://razumdom.ru/catalog/modbus_tcp/interfeysy/502/ - ссылка на описание модуля РАЗУМДОМ
https://cloud.mail.ru/public/apYr/DGkMr74b6 - ссылка на архив проекта

МихаилГл
19.03.2024, 12:27
Здравствуйте.
Возникли проблемы связи СПК107 (Master) и РАЗУМДОМ DAO2ERA (Slave) по ModBus TCP.
Ситуация такая, что я вызываю воспроизведение файла длительностью 6 секунд с помощью записи в регистр "1". И с помощью таймера через 6 секунд пишу в регистр "0", что соответствует состоянию "Стоп". Проблема в том, что воспроизведение идет 6 раз по 1 секунде. То есть посылка идет заново каждую секунду. Пробовал и циклическую отправку и по переднему фронту, и приложением. "1" записывается на секунду или меньше.
Через Modbus Tool РАЗУМДОМ DAO2ERA управляется корректно.
Подскажите, пожалуйста, где записана эта злосчастная секунда.
https://razumdom.ru/catalog/modbus_tcp/interfeysy/502/ - ссылка на описание модуля РАЗУМДОМ
https://cloud.mail.ru/public/apYr/DGkMr74b6 - ссылка на архив проекта

74491
Во первых, если будете держать кнопку "Сценарий 15" нажатой более 6 секунд, то вы вообще в тру бит переднего фронта выставите и он больше не обнулится. Если конечно нет спец кнопки (не искал).
Во вторых, 0 для сигнализации надо тоже по переднему фронту TR_play=тру отправлять. У вас неправильный код. Так я думаю.

Yakut
26.03.2024, 19:46
Доброго времени суток, коллеги.
Если не сложно подсказать по MODBUS RTU как осуществлять опросы из COM порта RS485 ПЛК в HMI?
Есть карта регистров (см.прикреплённый файл).
Есть почти готовая программа, в неё нужно добавить опросы устройства по RS485 порту в HMI. Что писать в канале? какие адреса? С регистрами понятно, они 03 (чтение холдинг регистра), а вот сдвиги и переводить с шестнадцатиричного и т.п. пока не очень..
С MODBUS RTU не работал ранее:(

Cs-Cs
26.03.2024, 21:13
Карты регистров тут НЕТ. Есть пояснение, как посылать команды на запись регистров. А самих регистров нет.
Поставь нам пожалуйста задачу более точно и ясно. Простыми словами, без терминов. Опиши то, что есть из программ и оборудования, что должно получиться, через какие интерфейсы (а то RS-485 и COM-порт могут быть разными понятиями).

Yakut
26.03.2024, 21:24
Хорошо, попробую.
Есть датчик ТМ-610-МС, который снимает показания направления ветра и скорость ветра. Он подключается по RS485. Схема подключения прилагаю. 3 и 4 номера проводов это питания 24 вольта постоянки.
Контроллер работает в Codesys.
Передаёт и принимает значения как в HMI так из HMI по ModBus TCP/IP. С этим проблем нет никаких. Всё работает как часы.

1. Серийный формат
8 бит данных, 1 стоповый бит, без бита четности.
Скорость передачи 9600 бит / с, программное обеспечение для последовательной отладки настроено на отправку и прием в шестнадцатеричном формате, два интервала связи не менее 500 мс, инструкции в CRC для бита четности, два байта. Адрес устройства по умолчанию - 2.

Теперь нужно внедрить датчик сюда же (в контроллер) по COM порту. Считывать с него показания скорость и направление ветра. Есть документация, в ней указаны "пояснение, как посылать команды на запись регистров."

Хочется эти данные (скорость и направление ветра) показывать на HMI панельке. Как сформировать регистры, что бы получить конечный результат?

Cs-Cs
26.03.2024, 21:52
Насколько понял я (я могу ошибаться):
1. Вначале надо разобраться, как опрашивать этот датчик и понять, требуется ли для него отдельный порт (если параметры связи у него нестандартные, то может потребоваться подключить его отдельно, а не вместе с каким-то другим оборудованием).
По датчику ни фига не понятно: то ли там RS-232, то ли RS-485. Протокол Modbus RTU может работать и там и там.
2. Потом опросить этот датчик в CodeSys. Тут тоже ничего пока не понятно: то ли это и правда протокол Modbus, то ли какой-то свой протокол, похожий на Modbus.
По картинке ничего не ясно: там называют записью, а пишут "чтение".
3. После того, как датчик будет нормально опрашиватьс в CodeSys, взять его данные и добавить в карту регистров панели оператора.
4. И потом в проекте для панели оператора получить данные с ргеистров датчика.
Если тут ничего не понятно, то стоит или подождать, когда кто-то её на форуме ответит, или всё же начать разбираться с датчиком и документацией на него.

Евгений Кислов
27.03.2024, 07:54
Основной вопрос - имеет ли ваш ПЛК лицензию на Modbus RTU для CODESYS?
2 года назад - не имел:
https://www.rusavtomatika.com/forum/viewtopic.php?f=7&t=751

Если с тех пор ничего не изменилось, то вам потребуется настраивать обмен по Modbus RTU в EasyBuilder Pro, а не CODESYS.
В сети достаточно информации о том, как это сделать.

Yakut
27.03.2024, 08:51
Ага, а вопрос следующий тогда, если опрашивать его в EasyBuilder Pro? то и подключать его тогда нужно к панели, правильно понимаю?

Если верить документации, то в датчике стандартный протокол

У них на сайет есть доступ к COM порту, но он в самой панельке, а не на борту контроллера.
https://www.rusavtomatika.com/articles/kak-poluchit-dostup-k-com-portu-paneli-iz-vstroennogo-codesys-/

Евгений Кислов
27.03.2024, 08:55
Ага, а вопрос следующий тогда, если опрашивать его в EasyBuilder Pro? то и подключать его тогда нужно к панели, правильно понимаю?

Если верить документации, то в датчике стандартный протокол

Вы понимаете неправильно. cMT-CTRL01 тоже поддерживает конфигурирование в EasyBuilder Pro.
Остальное описано в статье по вашей ссылке.

Yakut
27.03.2024, 09:53
Вы понимаете неправильно. cMT-CTRL01 тоже поддерживает конфигурирование в EasyBuilder Pro.
Остальное описано в статье по вашей ссылке.
Тогда при таком раскладе нужно программировать в EasyBilder PRO, а контроллер будет в роли опрашиваемого устройства. Следовательно, нужно будет менять абсолютно всю программу. Печально..

Либо ставить конвертор MODBUS RTU в MODBUS TCP/IP.

В общем, картинка у меня вырисовывается следующая - Codesys я не трогаю, пусть как есть так и будет, ставлю шлюз(преобразователь MODBUS RTU в MODBUS TCP/IP) и к нему цепляю 2 modbus RTU устройства. Далее всё завожу в общую сеть, установив роутер. Потом в EasyBuilder Pro опрашивать два новых устройства. Из опыта PROFINET обычный (домашний/бытовой) роутер гоняет спокойно, а вот MODBUS TCP/IP будет гонять? я только на 80% уверен что работать будет, хотелось бы узнать у опытных. Если сделать систему примерно как на картинке - будет сигналы видеть панелька?

ralex
27.03.2024, 21:31
Если речь о подключении устройств к этому порту - то подойдет эта распайка, но 5-6 вам не понадобится (достаточно 3-5, 7-3, 8-2):
https://owen.ru/uploads/5/kabel_ks16.png

В моем случае для подключения ПЛК 210 к контроллеру заряда через преобразователь RS-485/RS-232 (NL-232c) потребовался кабель с распайкой КС17
https://owen.ru/uploads/5/kabel_ks17.png

Задействовал только контакты 3-5, 7-2, 8-3.
Может кому-то пригодится.

Назаров Александр
17.04.2024, 09:27
При нажатии на ячейку с начальным адресом массива Регистров временного хранения появилась буква "М". Теперь невозможно изменить размер массива. Что это и как с этим работать?
75231

Евгений Кислов
17.04.2024, 09:39
При нажатии на ячейку с начальным адресом массива Регистров временного хранения появилась буква "М". Теперь невозможно изменить размер массива. Что это и как с этим работать?
75231

https://www.owen.ru/forum/showthread.php?t=28167&p=305691&viewfull=1#post305691

Назаров Александр
17.04.2024, 09:53
При эксперте соотнесений LeftSide в файл CSV несутся некоторые переменные, которых нет во вкладке соотнесения модуля. При обратном импорте возникают ошибки импортирования. Проблема в том, что текст описания данных переменных разделен ";". Отсюда проблема.
75232

Евгений Кислов
17.04.2024, 10:02
При эксперте соотнесений LeftSide в файл CSV несутся некоторые переменные, которых нет во вкладке соотнесения модуля. При обратном импорте возникают ошибки импортирования. Проблема в том, что текст описания данных переменных разделен ";". Отсюда проблема.
75232

Поправим при обновлении таргетов.

Назаров Александр
17.04.2024, 10:15
https://www.owen.ru/forum/showthread.php?t=28167&p=305691&viewfull=1#post305691

При этом работать можно? Двойное определение сделано преднамеренно, чтобы таким способом поименовать переменную.

Представленное ниже Допустимо?

VAR_GLOBAL
// LeftSide
// INPUT
d_INPUT_PLC_LeftSide AT %ID15: DWORD; (*Маска дискретных входов ПЛК. Левая сторона. FDI_01 - DI_12*)
// OUTPUT
x_OUTPUT_PLC_LeftSide_0 AT %QX44.0: BOOL; (*Дискретный выход ПЛК DO_01*)
x_OUTPUT_PLC_LeftSide_1 AT %QX44.1: BOOL; (*Дискретный выход ПЛК DO_02*)
x_OUTPUT_PLC_LeftSide_2 AT %QX44.2: BOOL; (*Дискретный выход ПЛК DO_03*)
x_OUTPUT_PLC_LeftSide_3 AT %QX44.3: BOOL; (*Дискретный выход ПЛК DO_04*)
w_OUTPUT_PLC_LeftSide: WORD; (*Маска дискретных выходов ПЛК. Левая сторона. DO_01 - DO_04*)

//RightSide
// INPUT
d_INPUT_PLC_RightSide AT %ID35: DWORD; (*Маска дискретных входов ПЛК. Правая сторона. DI_13 - DI_24*)
d_OUTPUT_PLC_RightSide AT %QD35: DWORD; (*Маска дискретных выходов ПЛК. Правая сторона. DO_05 - DO_12*)

END_VAR

Евгений Кислов
17.04.2024, 11:01
Если вы понимаете, как работает AT-адресация - то можете ее использовать.
Со своей стороны я бы не рекомендовал ее применять без существенной необходимости.

Назаров Александр
17.04.2024, 14:44
Поправим при обновлении таргетов.

Импорт файла соотнесения модуля должен содержать все переменные или он заменит только те строки, которые находятся в файле, а остальные останутся старыми?

Евгений Кислов
17.04.2024, 16:04
Импорт файла соотнесения модуля должен содержать все переменные или он заменит только те строки, которые находятся в файле, а остальные останутся старыми?

Заменит только те строки, которые находятся в файле. Остальные останутся старыми.

Назаров Александр
17.04.2024, 20:28
Не импортируется файл глобальных переменных с комментариями на кириллице.
Если у переменной нет комментария (латиница) после ее определения , то в качестве, если есть, подхватывается закомментированная строка перед ней.

Евгений Кислов
18.04.2024, 07:12
Не импортируется файл глобальных переменных с комментариями на кириллице.
Если у переменной нет комментария (латиница) после ее определения , то в качестве, если есть, подхватывается закомментированная строка перед ней.

Выложите, пожалуйста, ваш проект и файл импорта, с помощью которых можно воспроизвести вашу проблему.

Назаров Александр
18.04.2024, 09:11
Выложите, пожалуйста, ваш проект и файл импорта, с помощью которых можно воспроизвести вашу проблему.
В проекте сейчас импортируется файл с транслитерацией кириллицы. Грузится без ошибок. Во CDS2.3. эта процедура работала гораздо лучше, в плане того что при записи в ПК изменений в импортируемый файл он моментально обновлялся в CDS.

Евгений Кислов
18.04.2024, 09:52
В проекте сейчас импортируется файл с транслитерацией кириллицы. Грузится без ошибок. Во CDS2.3. эта процедура работала гораздо лучше, в плане того что при записи в ПК изменений в импортируемый файл он моментально обновлялся в CDS.

Чтобы в V3.5 работало корректно - надо использовать другой подход к комментариям:



{attribute 'qualified_only'}
// Комментарий 1
VAR_GLOBAL
// Комментарий 2
w_PLC_DI_LeftSide AT %IW0: WORD;
// Комментарий 3
xSON_TS AT %IX0.1: BOOL;
// Комментарий 4
xSOF_TS AT %IX0.1: BOOL;
END_VAR

Назаров Александр
18.04.2024, 10:58
Чтобы в V3.5 работало корректно - надо использовать другой подход к комментариям:



{attribute 'qualified_only'}
// Комментарий 1
VAR_GLOBAL
// Комментарий 2
w_PLC_DI_LeftSide AT %IW0: WORD;
// Комментарий 3
xSON_TS AT %IX0.1: BOOL;
// Комментарий 4
xSOF_TS AT %IX0.1: BOOL;
END_VAR


Спасибо! Это касается только импорта?

Евгений Кислов
18.04.2024, 11:12
Спасибо! Это касается только импорта?

В основном, импорта.

Назаров Александр
18.04.2024, 17:26
Чтобы в V3.5 работало корректно - надо использовать другой подход к комментариям:



{attribute 'qualified_only'}
// Комментарий 1
VAR_GLOBAL
// Комментарий 2
w_PLC_DI_LeftSide AT %IW0: WORD;
// Комментарий 3
xSON_TS AT %IX0.1: BOOL;
// Комментарий 4
xSOF_TS AT %IX0.1: BOOL;
END_VAR


Другой подход для кириллицы тоже не катит. Потратил только время. Компилятору все равно как оформлен комментарий. Ему однозначно не нравится кириллица или то как он ее считывает

// Kommentarij khot' kakoj, l'sh' by ne russkij
// Kommentarij khot' kakoj, l'sh' by ne russkij
w_PLC_DI_LeftSide AT %IW0: WORD;
// Kommentarij khot' kakoj, l'sh' by ne russkij
xSON_TS AT %IX0.1: BOOL;
// Kommentarij khot' kakoj, l'sh' by ne russkij
xSOF_TS AT %IX1.2: BOOL;
// Kommentarij khot' kakoj, l'sh' by ne russkij
w_PLC_DI_RightSide AT %IW1: WORD;

Евгений Кислов
19.04.2024, 08:45
Другой подход для кириллицы тоже не катит. Потратил только время. Компилятору все равно как оформлен комментарий. Ему однозначно не нравится кириллица или то как он ее считывает



https://ftp.owen.ru/CoDeSys3/99_ForumFiles/Gvl_Import_russian_comments.mp4

Назаров Александр
19.04.2024, 17:29
Проблема оказалась в кодировке КИРИЛЛИЦЫ. Нужна UTF-8. По крайней мере на неё перекодировал. Виды комментариев работают оба. Спасибо Евгению Кислову за терпение.