Страница 110 из 174 ПерваяПервая ... 1060100108109110111112120160 ... ПоследняяПоследняя
Показано с 1,091 по 1,100 из 1735

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

  1. #1091

  2. #1092

    По умолчанию

    Спасибо Евгений, ОГРОМНОЕ!

  3. #1093

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    Попробуйте ее снять - я думаю, в этом случае регистры будут обнуляться спустя заданное время отсутствия запросов от мастера.
    Регистры не обнуляются. Галочка влияет только на возможность сброса регистров через Alt+F7 (если её не ставить, то изменять значения регистров можно только "снаружи" по модбасу). В самой программе у меня никакие переменные не изменяются - пока только изучаю связь.
    Получается, у вас штатная диагностика соединения по Ehternet интерфейсу вообще никак не проработана? Планируете ли это исправлять?

    И ещё подскажите, пожалуйста, по Modbus RTU.
    Я, например, записываю функцией "0F" значения TRUE в 5 и 6 битовые регисты ПЛК.
    Отсылаю команду: 01 0F 00 00 00 08 01 60 FE BD​
    Получаю ответ: 01 10 00 02 00 02 E0 08
    Биты при этом записываются, всё ок. Но почему функциональный код в ответе не "0F", а "10"? И что означают "00 02 00 02" ?

  4. #1094

    По умолчанию

    Цитата Сообщение от jtx Посмотреть сообщение
    Регистры не обнуляются. Галочка влияет только на возможность сброса регистров через Alt+F7 (если её не ставить, то изменять значения регистров можно только "снаружи" по модбасу). В самой программе у меня никакие переменные не изменяются - пока только изучаю связь.
    Получается, у вас штатная диагностика соединения по Ehternet интерфейсу вообще никак не проработана? Планируете ли это исправлять?

    И ещё подскажите, пожалуйста, по Modbus RTU.
    Я, например, записываю функцией "0F" значения TRUE в 5 и 6 битовые регисты ПЛК.
    Отсылаю команду: 01 0F 00 00 00 08 01 60 FE BD​
    Получаю ответ: 01 10 00 02 00 02 E0 08
    Биты при этом записываются, всё ок. Но почему функциональный код в ответе не "0F", а "10"? И что означают "00 02 00 02" ?
    Я подтверждаю, что в определенных версиях CODESYS есть проблемы с этим функционалом.
    В понедельник отпишусь подробнее, как заставить его работать.
    Тогда же отвечу на второй вопрос.

  5. #1095

    По умолчанию

    А вот что обнаружил, начав тестировать Modbus TCP с ПК.
    1. Форсированные (установленные в TRUE) биты не считываются, если им не присвоены переменные.
    2. См. картинку:

    Modbus TCP - 01.jpg

  6. #1096

    По умолчанию

    Цитата Сообщение от jtx Посмотреть сообщение
    А вот что обнаружил, начав тестировать Modbus TCP с ПК.
    1. Форсированные (установленные в TRUE) биты не считываются, если им не присвоены переменные.
    2. См. картинку:
    Это ещё не всё, при передаче бит, ещё и байты меняются местами в целочисленной переменной. То есть 0 бит попадает в 8, а 7 в 15 бит и наоборот.
    По крайней мере, подобное наблюдал в некоторых версиях Codesys 3.5.
    Последний раз редактировалось kondor3000; 23.07.2023 в 21:40.

  7. #1097

    По умолчанию

    Цитата Сообщение от jtx Посмотреть сообщение
    Регистры не обнуляются. Галочка влияет только на возможность сброса регистров через Alt+F7 (если её не ставить, то изменять значения регистров можно только "снаружи" по модбасу). В самой программе у меня никакие переменные не изменяются - пока только изучаю связь.
    Получается, у вас штатная диагностика соединения по Ehternet интерфейсу вообще никак не проработана? Планируете ли это исправлять?

    И ещё подскажите, пожалуйста, по Modbus RTU.
    Я, например, записываю функцией "0F" значения TRUE в 5 и 6 битовые регисты ПЛК.
    Отсылаю команду: 01 0F 00 00 00 08 01 60 FE BD​
    Получаю ответ: 01 10 00 02 00 02 E0 08
    Биты при этом записываются, всё ок. Но почему функциональный код в ответе не "0F", а "10"? И что означают "00 02 00 02" ?
    Проверил с Modbus Serial Device версии 3.5.17.0.
    Обе проблемы не воспроизводятся. См. видео:
    https://ftp.owen.ru/CoDeSys3/99_Foru...e_Watchdog.mp4
    https://ftp.owen.ru/CoDeSys3/99_Foru...WriteCoils.mp4

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

    А вот что обнаружил, начав тестировать Modbus TCP с ПК.
    Эту проблему подтверждаю. Используйте галочку Дискретные битовые области, как на втором видео - тогда она не проявится.

  8. #1098

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    Проблему воспроизвел, спасибо.
    Исправим в следующей версии библиотеки.
    Исправлено в версии библиотеки 3.5.14.2.
    https://ftp.owen.ru/CoDeSys3/04_Libr...mpiled-library

    В ближайшие дни обновим ссылку на сайте.

    2023-07-24_10-16-00.png 2023-07-24_10-16-13.png 2023-07-24_10-16-25.png 2023-07-24_10-16-55.png

  9. #1099

    По умолчанию

    Здравствуйте. Помогите разобраться с реализацией обмена по Modbus через OCL.UNM_TcpRequest. Нигде не могу найти информацию о том, как формировать запрос.
    Например, хочу считать из 1-го слейва 4-й командой два регистра, начиная с 8-го.
    OCL.MB_TcpRequest работает. Через Modbus Poll тоже получаю нужный ответ, при этом посылаются запросы вида "00 05 00 00 00 06 01 04 00 08 00 02" (где первые 00 05 - номер пакета).
    Из примеров реализации нашёл только работу со строковыми данными (

  10. #1100

    По умолчанию

    Цитата Сообщение от jtx Посмотреть сообщение
    Здравствуйте. Помогите разобраться с реализацией обмена по Modbus через OCL.UNM_TcpRequest. Нигде не могу найти информацию о том, как формировать запрос.
    Например, хочу считать из 1-го слейва 4-й командой два регистра, начиная с 8-го.
    OCL.MB_TcpRequest работает. Через Modbus Poll тоже получаю нужный ответ, при этом посылаются запросы вида "00 05 00 00 00 06 01 04 00 08 00 02" (где первые 00 05 - номер пакета).
    Из примеров реализации нашёл только работу со строковыми данными (
    Добрый день.
    Вас интересует принцип формирования запросов и разбора ответов?
    Он приведен в спецификации Modbus:
    https://www.modbus.org/docs/Modbus_A...col_V1_1b3.pdf
    https://www.modbus.org/docs/Modbus_M...uide_V1_0b.pdf

Страница 110 из 174 ПерваяПервая ... 1060100108109110111112120160 ... ПоследняяПоследняя

Похожие темы

  1. Настройка ПР200, управление 3-мя устройствами через RS-485
    от Orbes в разделе Среда программирования OWEN Logic
    Ответов: 20
    Последнее сообщение: 15.05.2017, 16:45
  2. СП3ХХ Пример настройка обмена с ПЛК на CODESYS 2.3
    от Denis_Kay в разделе СП3хх, СП270
    Ответов: 6
    Последнее сообщение: 02.03.2017, 15:12
  3. Ответов: 43
    Последнее сообщение: 13.04.2015, 14:05
  4. Универсальная функция для обмена с устройствами OwenIO и всеми любимый LabView.
    от Алексей Крагель в разделе Помощь Разработчикам
    Ответов: 0
    Последнее сообщение: 30.05.2014, 13:38

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •