|
|
  |
Помехозащищенный RS-485 |
|
|
|
Sep 8 2015, 05:50
|
Местный
  
Группа: Участник
Сообщений: 491
Регистрация: 18-05-11
Пользователь №: 65 102

|
Цитата(Alexashka @ Sep 8 2015, 07:50)  При включении Теслы (примерно 2м от компа) мышь и клава отваливаются изредка, USB-осциллограф - сразу. Это же зависит как то от длины кабеля USB? При такой структуре: Цитата Сейчас появилась идея делать USB без развязки, а развязку сделать на другом конце RS-485. То есть будет так: USB-USB процессор-трансивер-кабель RS-485-трансивер-гальваническая развязка-процессор-датчики длина USB соединения будет около 1 см - от процессора до разъема, USB процессор и трансивер разместятся в корпусе USB штекера.
|
|
|
|
|
Sep 10 2015, 09:09
|
Местный
  
Группа: Участник
Сообщений: 491
Регистрация: 18-05-11
Пользователь №: 65 102

|
Цитата(Panych @ Sep 10 2015, 10:34)  По поводу помехозащищенности и развязок. Уже звучали намёки в вопросах к ТС, но всё же не было конкретизировано подключение земель и экранов. Если датчики заземлены изначально вдали от развязки USB, это одно. Тут скорее всего понадобится дополнительная гальваническая развязка. Если все компоненты системы изолированы и заземляются только в месте развязки, это вроде как другое. Нет? Датчики не заземлены, все изолировано. Заземление как таковое осуществляется только через USB. Цитата То есть будет так: USB-USB процессор-трансивер-кабель RS-485-трансивер-гальваническая развязка-процессор-датчики Цитата Конечно коагулятор и рядом не лежал по мощности. Но все же я бы не рисковал. Тем более медицина. Прерывать операцию из-за временной потери USB как-то не очень. Доктора будут точно не довольны. К опытному образцу с точки зрения зависания USB претензий не было, хотя там конструкция: кабель USB 3 метра - прибор - кабель датчика 1 метр - датчик
|
|
|
|
|
Nov 20 2015, 15:50
|
Местный
  
Группа: Участник
Сообщений: 491
Регистрация: 18-05-11
Пользователь №: 65 102

|
Подскажите пожалуйста один момент при применении RS-485. Там надо переключать направление передачи данных. У меня два МК, первый соединен с USB и по сути передает второму МК команды и принимает от него данные. Я пока придумал такую логику, интересно насколько она верна. После сброса, включения питания, USB-МК настроен как передатчик (в смысле, находящийся на его стороне ресивер настроен как передатчик), второй МК настроен как приемник, ждет команд. USB-МК отправляет команду (или серию команд), направление передачи пока не переключаем, поскольку ответа не будет. Когда все во втором МК настроено, USB-МК посылает первый запрос данных, в прерывании по окончанию передачи - переключается на прием. Соответственно, второй МК после принятия такого запроса сразу же переключается на передачу, запускает таймер, который отсчитав 1 мс переключает МК на прием. Соответственно, время 1 мс выбрано потому что запросы данных будут приходить от USB-МК именно с такой частотой.
В принципе можно наверно вообще все команды привязать к этому принципу...то есть послал команду (USB-МК), переключился на прием, а второй МК переключает по таймеру всегда...
|
|
|
|
|
Nov 21 2015, 11:59
|
Гуру
     
Группа: Свой
Сообщений: 2 360
Регистрация: 6-03-06
Из: Кишинев
Пользователь №: 15 025

|
Atlantis, зачем все это? Не нужно еще один протокол изобретать, их есть уже готовых и проверенных временем и миллионами применений. Берите любой протокол мастер-слейв, да хоть тот же дубовый Modbus и делайте общение на нем. Или CANopen. да много их разных. Огромный плюс использования стандартного протокола в слейве - возможность подключения устройства не только к Вашему мастеру, но и к любому другому с таким же протоколом, или к компьютеру (для тестирования и отладки, например). Если Вы не эксперт в написании протоколов, то плюсов в использовании готового будет гораздо больше.
Upd: непонятно, зачем вообще USB девайс в Вашей системе и почему не подключить RS-485 напрямую к компьютеру, но это уже другой вопрос.
|
|
|
|
|
Nov 23 2015, 12:41
|
Местный
  
Группа: Участник
Сообщений: 491
Регистрация: 18-05-11
Пользователь №: 65 102

|
Цитата(Alexashka @ Nov 23 2015, 01:36)  Зачем таймер? Отправил ответ и сразу переключился на прием. Тогда большой промежуток времени оба приемопередатчика будут в режиме "приемник", то есть будут ловить помехи Цитата(Alexashka @ Nov 23 2015, 01:36)  Более того, то что касается инициализации нужно обязательно каждую команду сопровождать ответом, иначе где гарантия что она (инициализация) выполнена? это даа, но трудно реализуемо...ответ то придет, только его надо еще на ПК отправить. для этого видимо придется еще один Endpoint делать, чтобы путаницы не было.
|
|
|
|
|
Nov 23 2015, 13:03
|

Практикующий маг
     
Группа: Свой
Сообщений: 3 634
Регистрация: 28-04-05
Из: Дубна, Моск.обл
Пользователь №: 4 576

|
Цитата(Atlantis- @ Nov 23 2015, 16:41)  Тогда большой промежуток времени оба приемопередатчика будут в режиме "приемник", то есть будут ловить помехи А нагрузочный резистор зачем же тогда, а резисторы смещения? Цитата(Atlantis- @ Nov 23 2015, 16:41)  это даа, но трудно реализуемо...ответ то придет, только его надо еще на ПК отправить. для этого видимо придется еще один Endpoint делать, чтобы путаницы не было. Не понимаю, ПК отправляет в USB команду инициализации и тут же получает ответ мол ОК, или не ОК. Это дает гибкость, ведь если управление с ПК, то и настроечные команды надо с ПК отправлять. Если контроллер инициализируется разово, тогда он это и сам может сделать (нет смысла посылать эти команды с другого контроллера).
|
|
|
|
|
  |
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|