Новичок
Регистрация: 02.12.2010
Сообщений: 50
Репутация: 17
![]() |
Иногда в сложной системе, которая состоит, например из контроллера, преобразователя USB-RS485 и компьютера необходимо осуществлять передачу данных. И количество этих данных, не один-два значения температуры, а штук 50. Причем данные самые разномастные: и целые и с плавающей точкой и структуры. Как упростить формирование буфера обмена, как этот буфер создать, чтобы он был понятен и внизу - в контроллере и наверху - в компьютере. Здесь мой практический опыт, с которым я делюсь. Он может быть интересен, для тех, кто программирует контроллеры и пишет программы мониторинга на компьютере.
|
||
Оценка
|
Специалист
Регистрация: 22.09.2010
Адрес: г. Донецк
Сообщений: 873
Репутация: 381
![]() ![]() ![]() ![]() |
Действительно оптимально.
К своему стыду, пришёл к подобному только через год «общения» с RS485. Сейчас заметил тенденцию даже небольшие АСУ ТП и системы мониторинга строить на Trace Mode и Adroit. При этом наблюдаю непонятный мне переход к CAN и Ethernet. А самая большая сеть RS485 на MODBUS, которую видел, содержала около 50 штук 16-портовых контроллеров Trolex. Последние, правда, сейчас считаются устаревшими. Поразило время опроса такого кольца – около 10 секунд. Но со временем понимаешь, что оценить эффективность сети не так просто. Спасибо за наглядный материал. |
||
Оценка
|
Новичок
Регистрация: 02.12.2010
Сообщений: 50
Репутация: 17
![]() |
На CAN я тоже работал, потом перешел на RS-485. Но когда столкнулся с диспетчеризацией шины, когда на ней 4 абонента висят, понял, что CAN лучше. Всё дело в том, что диспетчереизация на MODBUS - это гемор тот ещё. Надо вводить и контролировать временную задержку между пакетами. На это тратится ресурс камня. А у CAN это реализуется аппаратно. Мне же пришлось на диспетчеризацию пожертвовать трафик и кусок кода не малый. Вот так то... Но вернуться обратно к CAN уже лень в данном проекте. Если чего-то новое затевать хочу Ethernet внедрить на AVR. И скорость и диспетчеризация аппаратная и хабы-мабы... И, кстати, никаких преобразователей между низом и верхом. Ну, платить конечно за это надо камнем.
P.S. Кстати в одном из проектов реализовал скорость 1M на RS-485, ничего, нормально молотит, шустро. |
||
Оценка
|
Новичок
Регистрация: 21.03.2013
Сообщений: 3
Репутация: 10
![]() |
485 чувствителен к составу железа - если разномастное (чипы разных производителей), то можно потом долго с бубном вокруг отлавливать шумы и схемы согласования строить. По мне так проще преобразователь интерфейса воткнуть в ethernet
__________________
Проверенные решения http://p-avt.ru |
||
Оценка
|
Новичок
Регистрация: 02.12.2010
Сообщений: 50
Репутация: 17
![]() |
Верно. Мы наелись в свое время с частотниками ОМРОН по RS485. Но в конце концов вот это решение победило:
http://keklab.ru/articles/3-2010-10-.../57-rs485.html |
||
Оценка
|
Специалист
Регистрация: 22.09.2010
Адрес: г. Донецк
Сообщений: 873
Репутация: 381
![]() ![]() ![]() ![]() |
Работая в основном с м/с ADM30xx, ADM48xx, ADM34xx, даже среди трансиверов одного производителя разных серий иногда тоже наблюдаю лёгкую «несовместимость». При этом конечно, всегда нужно согласовывать линию. Но иногда линия передачи на 3-4 устройства работает даже без терминаторов, но с большим процентом потерь – на лабораторном столе :-). USB-RS485 чаще делаем с опторазвязкой, такие требования. И, намучившись однажды с партией FT232R, теперь питаю предрасположенность только к FT232B – эти ни разу не подводили. Но это субъективный опыт.
Последний раз редактировалось antonydublin; 23.03.2013 в 03:29.
|
||
Оценка
|
Новичок
Регистрация: 02.12.2010
Сообщений: 50
Репутация: 17
![]() |
Цитата:
Работая с частотниками OMRON пришлось соединять RS485 на нашей стороне с RS422 на стороне частотника. Сначала просто объединяли вход и соответствующий выход RS422. При этом длина линии связи была малая, около метра. Ну и имели проблемы... пока не ткнулись осциллографом. Выход RS422 забивал линию. Потом пришло в голову такое решение, после этого проблемы закончились. ![]() Относительно помех. Гальваническая развязка это очень хорошо. Но если не принять одной меры, то развязка ничего не даст. Это опыт проверенный. Надо обязательно развязанную землю на стороне RS485 соединить с землей на стороне USB конденсатором. Помеха импульсная по нему стекать будет.
Последний раз редактировалось kek; 26.03.2013 в 14:52.
|
||
Оценка
|
Обратная связь РадиоЛоцман Вверх |