Страница 89 из 149 ПерваяПервая ... 3979878889909199139 ... ПоследняяПоследняя
Показано с 881 по 890 из 1642

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

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1
    Пользователь Аватар для capzap
    Регистрация
    25.02.2011
    Адрес
    Киров
    Сообщений
    10,575

    По умолчанию

    Цитата Сообщение от knoppix Посмотреть сообщение
    С чем может быть связан ErrorCode 60 - RESPONSE_CRC_FAIL? Ошибка возникает при попытке записи в удаленное устройство данных длинной свыше 30, для чтения и записи используется блок OCL.MB_SerialRequest, eFuncCode - OCL.MB_FC.WRITE_MULTIPLE_REGISTERS.
    Различные варианты Tameout пробовал выставлять. В какую сторону стоит копать? Не хотелось бы разбивать данные на две записи, тем более набора данных длиной свыше 50 не планируется.
    проблема скорее всего в удаленном устройстве
    Bad programmers worry about the code. Good programmers worry about data structures and their relationships

    среди успешных людей я не встречала нытиков
    Барбара Коркоран

  2. #2

    По умолчанию

    С чем может быть связан ErrorCode 60 - RESPONSE_CRC_FAIL
    А на что вообще указывает эта ошибка?
    С ней жить можно, но хотелось бы понять суть
    Ведь если смотреть стандарт Modbus то при определении ошибки в пакете (ну того же CRC) просто повторяется запрос и инициатор запроса либо получает правильные данные, либо не получает их вообще.
    Или я не прав?
    Последний раз редактировалось RomeoVar; 16.03.2023 в 22:46.
    Каждый в меру своего понимания работает на себя, а в меру непонимания на того, кто понимает больше!

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

    По умолчанию

    Цитата Сообщение от RomeoVar Посмотреть сообщение
    С чем может быть связан ErrorCode 60 - RESPONSE_CRC_FAIL
    А на что вообще указывает эта ошибка?
    С ней жить можно, но хотелось бы понять суть
    Ведь если смотреть стандарт Modbus то при определении ошибки в пакете (ну того же CRC) просто повторяется запрос и инициатор запроса либо получает правильные данные, либо не получает их вообще.
    Или я не прав?
    Как уже написано выше - можно увеличить время цикла до 20 мс и жить без этой ошибки.
    Конкретную причину для конкретного клиентского окружения я сейчас не готов озвучить.
    Возможно, при таком времени цикла при чтении контроллер успевает поймать хвост своего же запроса.

  4. #4

    По умолчанию

    Поделюсь результатами экспериментов - может кому пригодится.
    На текущий момент время цикла стоит 5 мс. При этом мое фактическое время цикла в среднем 400 мкс, макс 700 мкс
    Увеличение времени цикла ни до 10 ни до 20 мс. в моем случае эффекта не возымело. Ошибка возникала
    А вот снижение скорости с 115200 до 57600 помогла.
    При этом если на скорости 115200 затрачиваемое время на обмен занимало 35 мс. то на 57600 35-45 мс. что не ктитично и меня более чем устраивает.
    Провел еще один эксперимент- уменьшил время цикла до 3 мс. при скорости 57600 время на обмен стало занимать от 27 до 33 мс. Ошибок пока не возникало.

    Видимо используемый мною драйвер сервопривода не очень хорошо работает на 115200
    В итоге решил остановиться на скорости 57600 c временем цикла задачи 10 мс. При таком раскладе время затрачиваемое на обмен 70 мс. всегда. Решил что так будет надежнее
    Ошибок после 2-х часов работы - ни одной
    Последний раз редактировалось RomeoVar; 17.03.2023 в 08:36.
    Каждый в меру своего понимания работает на себя, а в меру непонимания на того, кто понимает больше!

  5. #5

    По умолчанию

    Добрый день!

    Есть система: панель(сп310), плк210 и модем IRZ для отправки данных. Панель является мастером и общается с плк по modbus tcp через OCL mb tcp slave. Необходимо чтобы модем опрашивал плк. Можно ли опрашивать тот же ocl slave по тем же адресам массива word`ов или необходимо добавить еще регистров(например было 0..999, а станет 0...1999)? В данный момент нет возможности испытать, т.к. все оборудование на объекте в другом городе.

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

    По умолчанию

    Цитата Сообщение от Андрей Чернов Посмотреть сообщение
    Добрый день!

    Есть система: панель(сп310), плк210 и модем IRZ для отправки данных. Панель является мастером и общается с плк по modbus tcp через OCL mb tcp slave. Необходимо чтобы модем опрашивал плк. Можно ли опрашивать тот же ocl slave по тем же адресам массива word`ов или необходимо добавить еще регистров(например было 0..999, а станет 0...1999)? В данный момент нет возможности испытать, т.к. все оборудование на объекте в другом городе.
    Добрый день.
    Можно.
    В менеджере библиотек потребуется изменить значение параметра библиотеки, определяющего максимальное число одновременных подключений к слэйву.

    17-03-2023 18-46-13.png

  7. #7

    По умолчанию

    Подскажите к порту подключено 2 устройства к чему или к кому обращаться что бы узнать код ошибки или ошибку, если одно устройство отвалится или запрос отправляет не тот?
    Изображения Изображения
    • Тип файла: png RS485.png (10.5 Кб, Просмотров: 11)

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

    По умолчанию

    Цитата Сообщение от sco-scorpion Посмотреть сообщение
    Подскажите к порту подключено 2 устройства к чему или к кому обращаться что бы узнать код ошибки или ошибку, если одно устройство отвалится или запрос отправляет не тот?
    AFD_E_Trav.byModbusError
    AFD_E_Trav.xError

    AFD_E_Wind.byModbusError
    AFD_E_Wind.xError

  9. #9

    По умолчанию

    Цитата Сообщение от Евгений Кислов Посмотреть сообщение
    AFD_E_Trav.byModbusError
    AFD_E_Trav.xError

    AFD_E_Wind.byModbusError
    AFD_E_Wind.xError
    а есть ФБ для конвертации кода ошибки в текст?

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

    По умолчанию

    Цитата Сообщение от sco-scorpion Посмотреть сообщение
    а есть ФБ для конвертации кода ошибки в текст?
    Да, см. функцию PChV_M01_ERROR_TO_WSTRING в библиотеке Mx110 Assistant.

Страница 89 из 149 ПерваяПервая ... 3979878889909199139 ... ПоследняяПоследняя

Похожие темы

  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, 13:38

Ваши права

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