|
|
  |
Сопряжение RS 485 и RS 422 |
|
|
|
Jun 19 2007, 03:09
|
Участник

Группа: Новичок
Сообщений: 48
Регистрация: 2-04-07
Пользователь №: 26 706

|
Имеются два устройства. Одно из них взаимодействует с внешним миром посредством интерфейса RS485, а второе посредством RS422. Необходимо соединить эти два устройства. Как сопрячь в данном случае 485 и 422. Имеется только одна витая пара, переделка 422 в 485 недопускается. Как в данных условиях с минимальными затратами соединить эти два девайса?
|
|
|
|
|
Jun 19 2007, 07:25
|

Частый гость
 
Группа: Свой
Сообщений: 175
Регистрация: 16-03-07
Из: Москва
Пользователь №: 26 228

|
Цитата(Vasia Klin @ Jun 19 2007, 07:09)  Имеются два устройства. Одно из них взаимодействует с внешним миром посредством интерфейса RS485, а второе посредством RS422. Необходимо соединить эти два устройства. Как сопрячь в данном случае 485 и 422. Имеется только одна витая пара, переделка 422 в 485 недопускается. Как в данных условиях с минимальными затратами соединить эти два девайса? Возможно ошибаюсь, но помоему 422 - это тот же 485, только там ещё одна пара проводов для организации дуплексной связи. Поэтому если есть только одна пара проводов, то надо лобать какое-нить устройство, которе будет переваривать дуплексную связь... Или такой вот вариант - скорее всего там нет варианта что по 422-ому устройство отвечает одновременно с приёмом, скорее всего всё происходит последовательно. Можно потыкаться осцилой для пущей уверености и попробовать просто соеденить провода из 2-х пар в одну пару. Если не заработает - придётся кидать 2-ве пары...
--------------------
Быстро, Дёшево, Качественно-выбери любые 2 пункта
|
|
|
|
|
Jun 19 2007, 07:26
|

Местный
  
Группа: Свой
Сообщений: 243
Регистрация: 22-09-04
Из: Burbach, Germany
Пользователь №: 704

|
Цитата(Vasia Klin @ Jun 19 2007, 06:09)  Имеются два устройства. Одно из них взаимодействует с внешним миром посредством интерфейса RS485, а второе посредством RS422. Необходимо соединить эти два устройства. Как сопрячь в данном случае 485 и 422. Имеется только одна витая пара, переделка 422 в 485 недопускается. Как в данных условиях с минимальными затратами соединить эти два девайса? Обмен двунаправленный? 1) Если однонаправленный, то на стороне 422-го использовать только одну пару (передающую или принимающую - в зависимости от направления потока) 2) Если двунаправленный, то соединить на стороне 422-го пары следующим образом: (TxA - RxA и TxB-RxB) и присоединить к соотв. линиям 485-го. Однако в данном случае на стороне 422-го будет эффект эха. Если девайс с 422-м вашего производства можете фильтровать пакеты, обрезая эхо.
|
|
|
|
|
Jun 19 2007, 09:37
|
Участник

Группа: Новичок
Сообщений: 48
Регистрация: 2-04-07
Пользователь №: 26 706

|
["Если двунаправленный, то соединить на стороне 422-го пары следующим образом: (TxA - RxA и TxB-RxB) и присоединить к соотв. линиям 485-го." ]
А при таком соединении не будут ли конфликтовать два передатчика когда 485 сконфигурирован на передачу? Насколько мне известно в данном случае возникает ситуация когда один из формирователей является источником, а другой потребителем тока. Это может привести к выходу микрух из строя. Эхо ерунда, от него избавимся.
|
|
|
|
|
Jun 19 2007, 10:00
|
Местный
  
Группа: Свой
Сообщений: 492
Регистрация: 19-08-06
Пользователь №: 19 667

|
Цитата(Vasia Klin @ Jun 19 2007, 12:37)  А при таком соединении не будут ли конфликтовать два передатчика когда 485 сконфигурирован на передачу? Разумеется, будут.
|
|
|
|
|
Jun 19 2007, 10:52
|
Участник

Группа: Новичок
Сообщений: 48
Регистрация: 2-04-07
Пользователь №: 26 706

|
А раз будут, то следовательно такой вариант не годится. Всё таки придётся в железку лезть похоже...
|
|
|
|
|
Jun 19 2007, 11:57
|
Местный
  
Группа: Свой
Сообщений: 492
Регистрация: 19-08-06
Пользователь №: 19 667

|
Цитата(Vasia Klin @ Jun 19 2007, 13:52)  А раз будут, то следовательно такой вариант не годится. Всё таки придётся в железку лезть похоже... Ну, попробуйте повесить на RS422 преобразователь обратно в TTL (получите исходные RxD, TxD), их подать на драйвер RS485. Детектировать наличие TxD (пиковый детектор со временем спада более времени передачи отдельного байта (или целого информационного пакета) и по нему переключать RS485 на передачу. Остальное время "местный" драйвер линии RS485 работает на прием. Только протокол обмена просмотрите (скорректируйте при необходимости), чтобы исключить "встречные" выходы на передачу с 2 концов линии. Раз имеется 485 (не дуплексный), то одновременная передача и прием у 422 исключаются, и выход на передачу - только когда второй конец линии этого ждет. Такой преобразователь интерфейса вроде несложный и недорогой. Скорость обмена в линии упадет (будет ограничиваться временем обратного переключения на прием после передачи в этом преобразователе).
Примерно так. Только детектор, наверное, уточнить надо (у этого плавный спад, а я не помню, есть ли триггер Шмидта на входе управления ADM485).
|
|
|
|
|
Jun 19 2007, 15:00
|

Местный
  
Группа: Свой
Сообщений: 243
Регистрация: 22-09-04
Из: Burbach, Germany
Пользователь №: 704

|
Цитата(K_AV @ Jun 19 2007, 14:57)  Примерно так. Только детектор, наверное, уточнить надо (у этого плавный спад, а я не помню, есть ли триггер Шмидта на входе управления ADM485). Если использовать детектор, то триггер все-таки пригодится. При номиналах компонентов, указанных на рисунке, данный детектор проверялся в работе на скоростях от 2400 до 19200.
Эскизы прикрепленных изображений
|
|
|
|
|
Jun 20 2007, 03:51
|
Участник

Группа: Новичок
Сообщений: 48
Регистрация: 2-04-07
Пользователь №: 26 706

|
Попробуем сделать так. У контроллера есть свободные пины, возможно организовать управление приёмом-передачей от него. Но нужно софт дорабатывать плюс к железу. Лучше что нибудь одно пределывать.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|