Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Согласование RS-485
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > Интерфейсы
ykatkov
Есть система, топология системы организована по типу "звезда". В центре - приемопередатчик RS-485, на концах лучей (до 200 м) приемопередатчики CAN (до 25 "лучей"). Терминаторы не используются ни в центре (RS-485), ни на концах лучей (CAN). Скорость передачи 19200.

Когда использовались терминаторы на стороне CAN, больше трех устройств линия "не тянула".

Вопросы:

1. На сколько реально использовать топологию "звезда" при скорости 19200? Сильно ли сказывается несогласованность линии?
2. На сколько правильно подсоединсть CAN к RS-485 напрямую? Наскольео я понимаю, доминантные состояния CAN и 485 совпадают. При передаче рецесивном состоянии CAN приемопередатчик 485 сам подтягивает линию в свое рецесивное состояние (как будто линия не нагружена). При передачи рецесивного состояния 485, CAN такую разность потенциалов на линии тоже воспримет как рецесивное состояние и всё будет отлично работать.
3. Как правильно было бы переделать CAN в RS-485?

Спасибо!
V_G
1. На скорости 19200 можно делать топологию "звезда", но не стоит передавать данные на 200 м.
2. Помимо аппаратных спецификаций, СAN имеет довольно сложную программную реализацию, т.е. просто побайтная передача в CAN невозможна, а в RS-485 вполне пройдет.
3. Правильная переделка CAN в RS-485 состоит в полном выбрасывании CAN-интерфейса (и аппаратного, и программного) и в замене его на RS-485.
4. Если же действительно доминантные-рецессивные состояния совпадают (не проверял, но может быть), есть смысл попробовать переделать софт центрального приемопередатчика на кан-стандарт
=AK=
Цитата(ykatkov @ Jun 25 2011, 17:28) *
1. На сколько реально использовать топологию "звезда" при скорости 19200? Сильно ли сказывается несогласованность линии?

Дык, прикиньте сами. Положим, крайний узел посылает данные в центр. Сигнал пройдет через 200 м кабеля примерно за 1 мкс. Еще через 1 мкс он дойдет до другого крайнего узла, отразится от него и еще черз 1 мкс вернется в центр. Таким образом, через 2 мкс после того, как центр впервые "услышит" сигнал, он будет сильно загажен звоном, который, однако, будет со временем постепенно стихать.

Длительность бит-интервала на 19200 равна 52 мкс. Для приема наиболее критично, каков сигнал в середине бит-интервала, т.е. через 26 мкс. За это время первоначальный "звон" успеет обернуться тудым-сюдым 13 раз и за счет этого должен более-менее успокоиться и придти в норму.

Чтобы за 13 отражений сигнал утихнул как можно более, хорошо бы ввести в линию искусственное затухание, которое забирало бы часть энергии при каждом проходе эхо-сигнала. Понятно, что на концах линий нельзя ставить "настоящие" поглотители (т.е. терминаторы с сопротивлением, равным волновому сопротивлению кабеля), поскольку этих концов концов слишком много, а драйвер RS-485 рассчитан всего на 2 таких терминатора.

Однако, "за неимением гербовой - пишем на простой" (с). Раз нельзя поставить "правильные" терминаторы, то надо поставить такие, какие сможет потянуть драйвер. Ведь даже неполноценный терминатор лучше, чем никакого - он хоть и не полностью поглотит всю энергию, однако хоть сколько-то поглотит, так что после 13-го отражения, в центре бит-интервала, сигнал будет очень даже нормальным.

А посему, надо на конце каждого луча поставить "недотерминатор" сопротивлением 50R*25 = 1.2k, и будет вам щастье. sm.gif

Цитата(ykatkov @ Jun 25 2011, 17:28) *
Наскольео я понимаю, доминантные состояния CAN и 485 совпадают.

Насколько я понимаю, в RS-485 ни доминантного, ни рецессивного состояния нет. А какой уровень перетянет при столкновении выходов - это как уж фишка ляжет для конкретной пары передатчиков.
HARMHARM
Цитата(=AK= @ Jun 25 2011, 11:40) *
Насколько я понимаю, в RS-485 ни доминантного, ни рецессивного состояния нет.

В "чистом" RS-485 - нет. А в созданном на его основе J1708 - есть...
=AK=
Цитата(HARMHARM @ Jun 26 2011, 00:16) *
на его основе J1708

А, предтеча CAN. От RS-485 в нем то, что используются те же приемопередатчики. Однако они работают в режиме "открытого коллектора", что делает J1708 подверженным помехам.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.