|
|
|
Совместимость CAN и RS485 |
|
|
|
Jun 24 2008, 07:07
|
Гуру
Группа: Свой
Сообщений: 10 920
Регистрация: 5-04-05
Пользователь №: 3 882
|
Цитата(Axel @ Jun 24 2008, 12:36) Совместимы ли по уровням драйверы CAN и RS485 (напр SN65HVD230 и SN65HVD10)? К сожалению проверить самому сейчас нет возможности, а ответ нужен... Судя по описаниям, проблем быть не должно, но все же... ИМХО в общем случае нет, драйверы не совместимы. В линиях CAN коллизия это штатная ситуация, в линиях RS-485 это аварийная ситуация. Цитата(MrYuran @ Jun 24 2008, 12:46) по-моему, CAN и RS-485 это протоколы разного уровня, вернее RS-485 вообще не протокол, а интерфейс. Поэтому говорить о совместимости уровней некорректно. Можно говорить о реализации протокола CAN посредством интерфейса RS-485 Вопрос про драйверы CAN и RS-485 вообще-то.
|
|
|
|
|
Jun 24 2008, 07:58
|
Знающий
Группа: Свой
Сообщений: 877
Регистрация: 26-01-05
Из: Екатеринбург
Пользователь №: 2 206
|
Цитата(Axel @ Jun 24 2008, 13:40) Видимо необходимо уточнить вопрос. Речь идет об обмене между двумя устройствами: с одной стороны - "закрытый" девайс с RS485, с другой - доступный для перепрограммирования девайс с контроллером и CAN драйвером. Логику обмена можно реализовать, дергая пинами, коллизий в этой ситуации можно избежать, вопрос только в электрической совместимости. Ваше уточнение внесло ещё большую путаницу. Что значит "закрытый". Кто будет дергать пинами? Нужно CAN драйвером сделать эмуляцию протокола для RS485, программно дергая ногами CAN контроллера?
--------------------
Пасу котов...
|
|
|
|
|
Jun 24 2008, 08:13
|
Местный
Группа: Свой
Сообщений: 480
Регистрация: 21-11-04
Пользователь №: 1 188
|
Цитата(Andy Mozzhevilov @ Jun 24 2008, 11:58) Что значит "закрытый". "Закрытый" - доступный только для обмена, но не для модификации (в отличие от другого, программу которого можно модифицировать). Цитата(Andy Mozzhevilov @ Jun 24 2008, 11:58) Нужно CAN драйвером сделать эмуляцию протокола для RS485, программно дергая ногами CAN контроллера? Именно так.
|
|
|
|
|
Jun 29 2008, 17:15
|
Странник
Группа: Свой
Сообщений: 766
Регистрация: 29-08-05
Из: Екатеринбург
Пользователь №: 8 051
|
Цитата(navy2000 @ Jun 28 2008, 21:28) Чувствительность у приемников может быть разная, и при большой длинне линий и/или высокой скорости данные могут читаться не корректно. Где такое написано и что такое "Чувствительность у приемников"? Для каждого физического уровня микросхемы делаются по одному документу - уровни у них одинаковые.
--------------------
"Как много есть на свете вещей, которые мне не нужны!" Сократ
|
|
|
|
|
Jun 30 2008, 07:04
|
Местный
Группа: Свой
Сообщений: 203
Регистрация: 17-07-06
Пользователь №: 18 874
|
Цитата Для каждого физического уровня микросхемы делаются по одному документу - уровни у них одинаковые. Речь шла о физической совместимости CAN и RS485 приемопередатчиков. То есть, будет ли RS-485 приемник стабильно принимать сигнал от CAN-передатчика и наоборот. Так вот, в состоянии, CAN не активен обе линии CANH и CANL будут с потенциалом Vcc/2, а для RS-485 приемника - это нестабильное состояние, поэтому там линии A и B "растягивают" к питанию и земле. Получаем электрический конфликт. Передатчик тянет линии к одному потенциалу, а приемник к другому. Это может привести к получению ложных бит на приеме в отсутствии передачи или установке доминанты на CAN-передатчике (что, в условиях нормального CAN-контроллера привело бы к BusOff). Цитата и что такое "Чувствительность у приемников"? Для приемника RS-485 стандартом описано пороговая характеристика −200мВ до +200мВ При этом, для передатчика: |Uвых|=1,5:5,0В (не <1,5В и не >6,0В); состояние логической «1»: Ua больше Ub (Реально Ua=Vcc, Ub=GND) — MARK, OFF; состояние логического «0»: Ua меньше Ub (Реально Ub=Vcc, Ua=GND) — SPACE, ON; Для CAN приемника (например SN65HVD234) типовое значение 100мВ, то есть при этой разнице будет определено доминантное состояние. Хочу уточнить. Сам, я таких опытов не проводил. В таком соединении не вижу смысла. Я лишь высказываю свои сомнения автору темы. Чтоб не упустил при проектировании и осмыслил.
|
|
|
|
|
May 18 2012, 05:54
|
Группа: Новичок
Сообщений: 1
Регистрация: 18-05-12
Пользователь №: 71 904
|
Цитата(navy2000 @ Jun 30 2008, 11:04) Речь шла о физической совместимости CAN и RS485 приемопередатчиков. То есть, будет ли RS-485 приемник стабильно принимать сигнал от CAN-передатчика и наоборот. При небольших линиях будет стабильная связь. Приведу пример такой реализации , а вот и схема адаптации уровней. Проверено, работает со счетчиками Меркурий.
|
|
|
|
|
Dec 3 2017, 09:19
|
Группа: Новичок
Сообщений: 4
Регистрация: 10-02-15
Пользователь №: 85 045
|
Цитата(j2j2j2 @ May 18 2012, 08:54) Приведу пример такой реализации [/url], а вот и схема адаптации уровней. Проверено, работает со счетчиками Меркурий. Схема vlad rusanov, на которую ссылается j2j2j2, скорее всего работоспособна только для односторонней передачи от прибора с интерфейсом CAN к устройству с интерфейсом RS-485. Действительно, с помощью подтягивающих резисторов можно физический уровень рецессии исказить так, что на входе компаратора RS-485 возникнет разность потенциалов между "А" и "В" порядка 0,25 - 0,27 В, что будет воспринято контроллером RS-485 как "1". Соответственно доминанта даст разность потенциалов -5 В, означающую "0". При необходимости передать что-либо прибору с интерфейсом CAN по линии с интерфейсом RS-485 по способу vlad rusanov уже ничего не получиться. Доминанта, конечно, пройдет, но вот рецессия никак. Отсюда вывод: заманчивая дешевизна использования модемов с интерфейсом RS-485 для удаленного контроля и управления электросчетчиков с интерфейсом CAN не катит. Увы, необходимо использовать квалифицированные модемы, разработанные под этот интерфейс, либо, что более хлопотно, применять конверторы интерфейсов и преобразователи линии, специально созданные под эти задачи.
|
|
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|