0 / 0 / 0
Регистрация: 23.04.2013
Сообщений: 66
|
|
1 | |
Помогите выбрать физический протокол для линии данных24.09.2013, 18:49. Показов 15148. Ответов 35
Метки нет (Все метки)
Есть некий девайс А (назовем его "пульт"), который будет бродкастом передавать данные всем подключенным к нему девайсам Б (назовем их "испольнителями").
Динные логически представляют из себя два параллельных односторонних потока SPI, которые, однако, несложным программированием превращаются в один поток. Кроме того, в тот момент эти два потока могут бытьактивны в разные моменты времени, то есть, когда по одному идут данные, второй молчит. Линия данных длиной от 1 до 50 м (с запасом и достаточно грубым приближением). Возникает вопрос - как физически лучше осуществить передачу. 1)Просто отдельными проводами гнать в сыром виде. 2)На стороне "пульта" програмно преобразовать все в "сплошной поток", на стороне "исполнителя" вставить простой контроллер который будет преобразовывать все обратно в "два потока" и уже скармливать "исполнителю". В случае 1 - как лучше осуществить коммутацию? Витая пара на каждый сигнал свитая с землей? Можно ли при этом как нибудь освободить один провод для подачи нитания "пульту", чтобы уместиться в обычный eternet кабель? В случае 2 - опять же вопрос - как передавать данные? Простой туповатый SPI? RS-485? Может что-то еще? Посоветуйте, плз, а то в схемотехнику я влез, в некотором роде, не по своей воле, хотя закон ОМа помню и ХХ прочитал.
0
|
24.09.2013, 18:49 | |
Ответы с готовыми решениями:
35
Какой протокол выбрать для связи датчиков и сервера на МК? Написать протокол передачи данных для MSP430 Протокол передачи данных для общения в реальном времени... Какой выбрать протокол Выбрать подходящий интерфейс и протокол |
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,479
|
|
24.09.2013, 19:04 | 2 |
Описание не совсем понятное:
Сообщение от tsostyk
Сообщение от tsostyk
Сообщение от tsostyk
Сообщение от tsostyk
0
|
0 / 0 / 0
Регистрация: 24.12.2011
Сообщений: 2,752
|
|
24.09.2013, 19:09 | 3 |
Модификация RS-232 под названием RS-485 - http://ru.wikipedia.org/wiki/RS-485.
0
|
0 / 0 / 0
Регистрация: 14.02.2010
Сообщений: 798
|
|
24.09.2013, 19:11 | 4 |
SPI и 50 метров не очень сочетаются.
Судя по описанию нужно чота для мастер-слейв общения. Возьмите обычный RS422.
0
|
1 / 1 / 0
Регистрация: 11.01.2013
Сообщений: 5,479
|
|
24.09.2013, 19:26 | 5 |
Ещё интерфейс "токовая петля" справится с 50-тиметровым расстоянием. Токовую петлю можно и поверх SPI применить.
0
|
0 / 0 / 0
Регистрация: 23.04.2013
Сообщений: 66
|
|
24.09.2013, 20:30 | 6 |
Сообщение от OtyxPM
Почему-же никакой? Бродкаст автоматически отсекает протоколы, которые требуют ACK от приемника. Да и вообще задачу лучше формулировать полно, чтобы потом не оказалось что некоторые, незначительные на мой взгляд, детали категорически меняют решение.
Сообщение от OtyxPM
Лишней линией, вообще-то говоря. Тут два клока и две линии данных, в обычном SPI - две линии данных и один клок. Разница невелика, но "если что" может оказаться существенной.
Сообщение от OtyxPM
Сорри, неточно сформулировал. В один момент времени может быть активна только одна линия. OtyxPM"]На один метр - можно. На 50 метров - ни за что.[/QUOTE] Спасибо.
0
|
0 / 0 / 0
Регистрация: 18.03.2010
Сообщений: 2,230
|
|
24.09.2013, 20:54 | 7 |
Сообщение от OtyxPM
0
|
0 / 0 / 0
Регистрация: 26.04.2010
Сообщений: 801
|
|
24.09.2013, 20:59 | 8 |
витая пара и rs 422 или 485
0
|
0 / 0 / 0
Регистрация: 23.04.2013
Сообщений: 66
|
|
25.09.2013, 12:58 | 9 |
Спасибо всем ответившим.
Тем не менее есть очередная пара вопросов. Правильно ли я понимаю, что взяв драйвер типа SN65HVD179 (это первый попавшийся, они вроде практически у каждого производителя есть) я могу вставить их на выходе и на входе и с точки зрения МК использовать просто UART/SPI без дополнительных изысков? Вообще, почитав описание RS422/485 я так и не справился осознать в чем существенная разница между ними кроме достаточно абстрактных слов
0
|
0 / 0 / 0
Регистрация: 21.08.2011
Сообщений: 1,057
|
|
25.09.2013, 13:25 | 10 |
Для большинства драйверов надо еще переключать их с приема на передачу. Топология типа "шина" с терминаторами. Проще всего написать протокол-обёртку, который будет ваши SPI-пакеты заворачивать в шинный пакет с заголовком адреса. Адрес 0 - бродкаст.
0
|
0 / 0 / 0
Регистрация: 28.10.2010
Сообщений: 893
|
|
25.09.2013, 13:47 | 11 |
Сообщение от Ymk
Я тут. Автор не озвучил требуемую скорость обмена.
0
|
0 / 0 / 0
Регистрация: 23.04.2013
Сообщений: 66
|
|
25.09.2013, 14:02 | 12 |
Сообщение от инкер
Пусть для надежности будет 19200.
0
|
0 / 0 / 0
Регистрация: 15.06.2012
Сообщений: 3,097
|
|
25.09.2013, 14:09 | 13 |
Сообщение от tsostyk
Отличия: - передатчик RS422 не обязан иметь вход dryver_enable, который позволяет его отключить - передатчик RS422 не обязан тянуть 2 концевых терминатора - 1 unit нагрузки RS422 равен 3 unit`ам нагрузки RS485
0
|
0 / 0 / 0
Регистрация: 14.02.2010
Сообщений: 798
|
|
25.09.2013, 14:17 | 14 |
0
|
0 / 0 / 0
Регистрация: 28.10.2010
Сообщений: 893
|
|
25.09.2013, 15:01 | 15 |
Сообщение от tsostyk
Пусть для надежности будет 19200. В реализованом решении скорость условно на порядок меньше, около 1200 бод. БОльшая скорость не проверялась, так как эта обеспечивала четырехкратный запас для опроса 16-ти датчиков. То, что возможно работать на линию 70 метров без драйверов, с контроллера на контроллер без витых пар - это реально.
0
|
0 / 0 / 0
Регистрация: 15.06.2012
Сообщений: 3,097
|
|
25.09.2013, 15:10 | 16 |
Сообщение от sohbtixhuk
Ну стандарты принимали в разное время, сначала было оптимально одно, потом при принятии RS485 этот параметр улучшили. С другой стороны какой это сейчас имеет смысл? Уже есть приёмники на 0.25 RS485 unit`а, их можно сотню на одну линию воткнуть.
0
|
0 / 0 / 0
Регистрация: 23.04.2013
Сообщений: 66
|
|
25.09.2013, 21:25 | 17 |
Еще раз спасибо за ответы. Последний(надеюсь) вопрос, чтобы окончательно расставить все по своим местам.
http://**************************/download/file.php?id=16635&sid=f68a617e9e92323b5b4af531a1b88006 Правильно ли я понимаю, что в таком варианте подключения с точки зрения mostirа и всех слейвов они будут общаться через обычный UART? Нужно ли соединять земли? Нужны ли резисторы в качестве терминаторов на входах/выходах драйвера? Если да, как выбираьт номинал и мощность?
0
|
0 / 0 / 0
Регистрация: 15.06.2012
Сообщений: 3,097
|
|
25.09.2013, 21:59 | 18 |
Сообщение от tsostyk
Сообщение от tsostyk
Сообщение от tsostyk
0
|
0 / 0 / 0
Регистрация: 23.04.2013
Сообщений: 66
|
|
26.09.2013, 08:50 | 19 |
Сообщение от яверт
Что при этом входит в понятие "конец шины"? На примере конкретной схемы - в каких точках схемы они нужны? Зависит ли это от места физического разветвления линии? Допустим в трех вариантах: 1)Разветвление на выходе из мастера. 2)Разветвление на входе в один из слейвов. 3)Разветвление в точке равноудаленной от всех трех контроллеров.
0
|
0 / 0 / 0
Регистрация: 15.06.2012
Сообщений: 3,097
|
|
26.09.2013, 11:49 | 20 |
Сообщение от tsostyk
http://lib.znate.ru/pars_docs/refs/234/ ... fd6d8f.jpg
0
|
26.09.2013, 11:49 | |
26.09.2013, 11:49 | |
Помогаю со студенческими работами здесь
20
Выбрать протокол взаимодействия с сервером Помогите выбрать оборудование для Wi-Fi сети Помогите выбрать тему для диплома! Помогите выбрать память для ноута Помогите выбрать Сервер для домена Помогите выбрать лампы для усилителя. Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |