Страница 1 из 2 12 ПоследняяПоследняя
Показано с 1 по 10 из 13

Тема: Ошибки Modbus Master на низких скоростях

  1. #1

    По умолчанию Ошибки Modbus Master на низких скоростях

    Здравствуйте. При работе с ПЛК150 и СП270 выяснилась след. проблема:
    При скорости обмена ниже 38400 контроллер не может установить связь с панелью. При этом контроллер сконфигурирован как RTU Modbus Master, а панель, соответственно Slave. Обмен происходит по сети RS-485 через порт панели PLC. Если скорость обмена установить равной 38400 или 115200, то связь устойчива. При просмотре линии осциллографом видно, что контроллер (Мастер) после запроса продолжает удерживать линию ещё примерно в течение 3,5 символов, а панель (Slave) начинает отвечать немного раньше, и первые биты ответа искажаются (амплитуда импульсов меньше нормальной в 2 раза). При более высоких скоростях обмена сказывается, видимо, инерция панели и ответ приходится на момент, когда линия уже свободна. Можно ли заставить работать связь на низких скоростях обмена? RS-485 в контроллере не дорабатывался (резистор не установлен)
    Вложения Вложения

  2. #2

    По умолчанию

    Мастер действует в соответствии с протоколом ModBus RTU. Раньше чем через 3,5 символа slave отвечать не должен, т.к. до этого момента slave не может быть уверен в ликвидности запроса.

  3. #3

    По умолчанию

    Цитата Сообщение от Филоненко Владислав Посмотреть сообщение
    Мастер действует в соответствии с протоколом ModBus RTU. Раньше чем через 3,5 символа slave отвечать не должен, т.к. до этого момента slave не может быть уверен в ликвидности запроса.
    К Slave'у претензий нет, почему Master продолжает удерживать линию, а не переключается сразу на приём? Вопрос остаётся: что делать, чтобы связь работала на низких скоростях?

  4. #4

    По умолчанию

    Мастер удерживает линию именно затем, чтобы сгенерить (и гарантировать) паузу 3,5 символа. Пока такая пауза после пачки не пройдёт, пачка считается неликвидной и slave не может её обрабатывать и тем более отвечать.
    Следовательно, надо заставить slave выполнять требования протокола ModBus RTU.

  5. #5

    По умолчанию

    Цитата Сообщение от Филоненко Владислав Посмотреть сообщение
    Мастер удерживает линию именно затем, чтобы сгенерить (и гарантировать) паузу 3,5 символа. Пока такая пауза после пачки не пройдёт, пачка считается неликвидной и slave не может её обрабатывать и тем более отвечать.
    Следовательно, надо заставить slave выполнять требования протокола ModBus RTU.
    Отвечать или нет, решает Slave. Зачем Master удерживает линию? (борьба с помехами? защита от случайных сигналов в интерфейсе?) Может существует способ определить паузу перед ответом для панели СП270? "Коммуникационный интервал", задаваемый в конфигураторе СП200 влияет, если панель является Мастером, а мне нужен Slave. Ответьте прямо: будет Slave СП270 работать с Master ПЛК150 на скоростях, ниже 38400? Конфликт связи отчётливо виден на приведённом мною снимке осциллограммы.

  6. #6

    По умолчанию

    1. Осцилограммы не видно.
    2. Именно для того, чтобы ГАРАНТИРОВАТЬ паузу 3,5 символа, мастер и удерживает линию. Помехи или сошедший с ума slave - причин отсутствия паузы может быть много.
    3. Решать slave-у? Давайте все делать приборы как вздумается, зачем нам стандарт? По стандарту slave раньше 3,5 символов отвечать не должен.
    4. Надеюсь, ГТП квалифицированно поможет Вам настроить панель, т.к. я ею не занимаюсь и оказывать техническую поддержку не в состоянии.
    5. Удовлетворит ли Вас скорость работы на скорости ниже 38400? такое большое расстояние? Или сильные помехи?

  7. #7

    По умолчанию

    Цитата Сообщение от Филоненко Владислав Посмотреть сообщение
    Именно для того, чтобы ГАРАНТИРОВАТЬ паузу 3,5 символа, мастер и удерживает линию
    стандарт Modbus говорит следующее: "In RTU mode, message frames are separated by a silent interval of at least 3.5 character times" и "the end of frame is identified when no more character is transmitted on the link after the time interval t3,5".

    то есть мастер тоже не имеет права что-либо передавать в это время.

  8. #8

    По умолчанию

    Осциллограмму прилагаю. Слева -запрос мастера, справа ответ панели.
    Отчётливо видно, что часть первых битов ответа совпадает с моментом удержания линии мастером.
    По поводу скорости: если панель сегодня устойчиво работает только на определённой скорости, и работа обеспечивается только гарантированным запаздыванием процессора панели, то это не работа.
    Завтра, возможно, панель будет с более "шустрым" процессором, и что тогда? Поэтому, ОВЕН, сделайте что-то в своём модуле Modbus Master, чтобы он корректно работал с другим оборудованием.
    Изображения Изображения
    • Тип файла: jpg oscil.jpg (20.4 Кб, Просмотров: 48)

  9. #9

    По умолчанию

    т.е. вы советуете нам выпускать плк, не соответствующий стандарту?

  10. #10

    По умолчанию

    Цитата Сообщение от Филоненко Владислав Посмотреть сообщение
    т.е. вы советуете нам выпускать плк, не соответствующий стандарту?
    Ничего я Вам не советую. Я задал конкретный вопрос и ожидал услышать конкретный ответ. Вопрос повторю: осуществима работа связки ПЛК150(Master) и СП270(Slave) по протоколу Modbus RTU на скоростях ниже 38400? Если нет, то так и скажите. Если возможна, то подскажите варианты настроек котроллера и панели. Панель СП270 является тоже Вашим изделием (или нет?). Изделия одной фирмы должны связываться без проблем.

Страница 1 из 2 12 ПоследняяПоследняя

Ваши права

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