Страница 27 из 130 ПерваяПервая ... 1725262728293777127 ... ПоследняяПоследняя
Показано с 261 по 270 из 1291

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

  1. #261
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    12,066

    По умолчанию

    Я отредактировал свой пост выше, ответьте про галочку, пожалуйста.

    Со стороны CDS логов нет. Нужно прослушивать линию связи (например, подключить к порту АС4 и запустить какую-нибудь программу-терминал)

  2. #262

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    Ваш конвертер умеет Modbus TCP в RTU преобразовывать?

    Желательно еще просниффить обмен со стороны RS-485.

    В настройках слэйва в CDS стоит галочка Таймаут?
    Ну конвертер этим и занимается, на стороне RS-485 RTU, а дальше - TCP, пакеты которые я присылал со стороны скады, то есть это TCP.

    Галочка стоит, значение 2000.

  3. #263
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    12,066

    По умолчанию

    Галочку надо снять. Если она стоит, то после 2000 мс (или другого указанного значения) без получения команд от мастера - контроллер обнуляет значения регистров.

  4. #264

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    Галочку надо снять. Если она стоит, то после 2000 мс (или другого указанного значения) без получения команд от мастера - контроллер обнуляет значения регистров.
    Отлично, спасибо! Вещь крайне неочевидная, надо ее в мануалы добавить. CDS продолжает удивлять =)

  5. #265

    По умолчанию

    Евгений Кислов
    Наверное последний вопрос, и самый каверзный - про REAL.
    Сделал UNION как в мануале:
    TYPE Real2Word :
    UNION
    Value:REAL;
    WordArray:ARRAY [0..1] OF WORD;
    END_UNION
    END_TYPE
    Соответственно, в Модбас смотрят переменные типа:
    Application.System.Regulators.P.Value.WordArray[0]
    Application.System.Regulators.P.Value.WordArray[1]

    В скаде при чтении отображаются корректные значения, как в CDS, если это две двухбайтовых переменных, то есть для значения "100" будет:
    Байт 0 = 0
    Байт 1 = 17096

    Но если я делаю в скаде одно четырехбайтовое значение float, то получаю ерунду.

    Понятно, что это проблемы скады, и тем не менее, мне нужно в документации дать таблицу адресов, как все это корректно указать?

    Аналогично с записью REAL, для значения "100" просто пишет в нулевой байт 100, в первый не пишет ничего - это для 2*ushort.
    Для 1*float путает байты:
    Байт 0 = 17096
    Байт 1 = 0
    Если изменить порядок следования, то в пишет в Байт 0 ерунду.

  6. #266
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    12,066

    По умолчанию

    Для начала попробуйте поменять Application.System.Regulators.P.Value.WordArray[0] и Application.System.Regulators.P.Value.WordArray[1] местами.

    Т.е.

    Application.System.Regulators.P.Value.WordArray[1]
    Application.System.Regulators.P.Value.WordArray[0]

    Если это не поможет - то, возможно, для вашей SCADA надо менять местами не регистры (WORD), а байты (BYTE).
    Самый простой способ определить правильный порядок - записываете из SCADA в СПК значение типа REAL (например, 11.22). Смотрите, какой у него порядок байт.

    После этого объявляете два экземпляра UNION.

    Код:
    TYPE Real2SCADA :
    UNION
    Value:REAL
    ByteArray:ARRAY [0..3] OF BYTE;
    Modbus: ARRAY [0..1] OF WORD;
    END_UNION
    END_TYPE
    В одном из них задаете REAL, и копируете байты из него в другой UNION, при этом меняя их порядок на тот, который нужен SCADA. После этого привязываете к регистрам слэйва WORD из второго UNION.

  7. #267

    По умолчанию

    Добрый день комрады! Есть такая проблема, к одному modbus порту на СПК207 подключено несколько слейвов(блок управления кранами). А вопрос у меня следующего плана, как исключить такой модуль из опроса, если один из них вышел из строя?

  8. #268
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    12,066

    По умолчанию

    Цитата Сообщение от nsarychev Посмотреть сообщение
    Добрый день комрады! Есть такая проблема, к одному modbus порту на СПК207 подключено несколько слейвов(блок управления кранами). А вопрос у меня следующего плана, как исключить такой модуль из опроса, если один из них вышел из строя?
    Добрый день. В проекте используются шаблоны модулей Mx110?

  9. #269

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    Добрый день. В проекте используются шаблоны модулей Mx110?
    Нет, устройство стороннего производителя. Подключены как modbus slave, com-port.

  10. #270
    Супер Модератор Аватар для Евгений Кислов
    Регистрация
    27.01.2015
    Адрес
    Москва
    Сообщений
    12,066

    По умолчанию

    Цитата Сообщение от nsarychev Посмотреть сообщение
    Нет, устройство стороннего производителя. Подключены как modbus slave, com-port.
    Тогда можно в настройках ПЛК (компонент Device) поставить галочку Enable Diagnosis for device.

    PLC_Settings.png

    После этого в коде программы можно отключить опрос устройства следующим образом:

    Modbus_Slave_COM_Port.Enable := FALSE;
    где Modbus_Slave_COM_Port - имя нужного slave-устройства в дереве проекта.

    Для возобновления опроса, соответственно, нужно присвоить переменной значение TRUE.

Страница 27 из 130 ПерваяПервая ... 1725262728293777127 ... ПоследняяПоследняя

Похожие темы

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

Ваши права

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