реклама на сайте
подробности

 
 
> Помогите определиться с интерфейсом, или вероятнее что-то полу-свое? )
overloaded
сообщение Mar 2 2009, 23:17
Сообщение #1


Участник
*

Группа: Свой
Сообщений: 73
Регистрация: 17-10-07
Из: Киев
Пользователь №: 31 422



Нужно сделать сеть 1 Мбит, до 20-30 устройств. Топология шина, длинна не более 15м.
Думал сначала почти однозначно RS485, но есть и другие идеи =)

Т.к. сеть не большая, хотелось бы обойтись без драйвера одной токовой петлей и, предположим, АТмегой на внутреннем РЦ генераторе 8 МГц. В связи с этим есть идея сделать нечто на СИНХРОННОМ уарте. Использовать шлейф IDC с разьемами в нужных местах, , типа как в ПК шлейф IDE, питание тоже по нему на слейвы подавать.
Теперь вопрос =)
Нужно ли оно? Какие могут быть проблемы-сложности?
Может лучше сделать стандартный рс 485 с витой парой и драйверами и кварцами на слейвах?

Вроде все. Спасибо за внимание )
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Guest_@Ark_*
сообщение Mar 3 2009, 18:40
Сообщение #2





Guests






Цитата(galjoen @ Mar 3 2009, 18:58) *
В RS485 обычно 90% сообщений типа таких: Ведущий: Ведомый N17, у тебя что-нибудь случилось? Ведомый N17: У меня всё в поряде.

И совсем не обязательно организовывать обмен именно таким образом. Можно, например, так: свободна линия и есть, что передавать - передаем, занята - ждем. В посылке можно указывать адрес получателя. Физический уровень RS485 это, вполне, позволяет. В отличие, например, от сдвоенных линий RS422 или прямых соединений UART. И физический конфликт на шине (одновременная передача многими) для RS485, как правило, не приводит к катастрофическим последствиям - выходу из строя драйверов. А вот в случае прямого объединения UART - это не гарантировано.
Потом, все таки, RS-485 - стандартное решение, есть готовые драверы... А вот способен ли UART МК "прокачать" 15-ти метровую линию на 1МГц - большой вопрос. И не "собрать" при этом все возможные помехи и наводки.... В общем, на физическом уровне, я бы выбрал RS485, как оптимальный вариант для небольших скоростей обмена по соотношению цена/качество. Конечно, я не совсем объективен, так как, в основном, занимаюсь промэлектроникой.
А на программном уровне - останется полная свобода действий. Почему обязательно асинхронный обмен? Можно и синхронный, если есть такое желание. Единственное ограничение - полудуплексный режим обмена...
Go to the top of the page
 
+Quote Post
overloaded
сообщение Mar 4 2009, 11:48
Сообщение #3


Участник
*

Группа: Свой
Сообщений: 73
Регистрация: 17-10-07
Из: Киев
Пользователь №: 31 422



Цитата(@Ark @ Mar 3 2009, 22:40) *
.... В общем, на физическом уровне, я бы выбрал RS485, как оптимальный вариант для небольших скоростей обмена по соотношению цена/качество. Конечно, я не совсем объективен, так как, в основном, занимаюсь промэлектроникой.
А на программном уровне - останется полная свобода действий. Почему обязательно асинхронный обмен? Можно и синхронный, если есть такое желание. Единственное ограничение - полудуплексный режим обмена...


На этом наверное и остановлюсь. Под синхронным я имел ввиду не обмен, а сам физ уровень тоесть клок+дата =) Но уже от этого отказался.

Цитата(galjoen @ Mar 4 2009, 01:02) *
К тому-же если в данный момент в сети только 3 устройства, ведущий не будет тратить время на опрос остальных 60-ти. И в сети ОДНОВРЕМЕННО могут находится 64 девайса, а всего их м.б. много больше. Да и за счёт отсутствия собственно пакетов запроса и ожидания (безрезультатного) ответа на них (а м.б. пакет от ведущего был просто повреждён и нужно повторить запрос) ещё трафик уменьшается. Т.е. кругом сплошные преимущества.
Кстати мне кажется, что у топикстартера 1 мбод - это многовато. Возможно это как-раз из-за опроса?


Не многовато. Из-за опроса. И риалтаймовости. Но устройства которых нет впустую опрашиваться не будут, будет один опрос при старте системы для определения подключенных слейвов. Ожидания тоже не будет т.к. если пакет по црц не прошел, он игнорируется и ждется следующий, т.к. перезапраивать предидущий нет смысла.

Кстати спасибо всем ответившим =)

Цитата(Огурцов @ Mar 4 2009, 00:56) *
В остальных случаях я (бы) выбрал RS422 и объединение всех концов в хабе. Для исходных параметров драйвер обязан быть, витая пара весьма желательна, терминировать концы (485/422) необязательно.


Можно поподробнее про конци и хаб? ) Зачем это нужно и что куда обьединять?

Сообщение отредактировал overloaded - Mar 4 2009, 11:45
Go to the top of the page
 
+Quote Post
galjoen
сообщение Mar 4 2009, 14:31
Сообщение #4


Знающий
****

Группа: Свой
Сообщений: 841
Регистрация: 10-05-07
Из: Чебоксары (Россия)
Пользователь №: 27 640



Цитата(Rst7 @ Mar 4 2009, 10:32) *
Вы плохо знаете эзернетовскую матчасть. При обнаружении коллизии передача данных тут же прекращается. Никто не ждет, пока пройдет весь пакет. Да и коллизия может возникнуть только в начале пакета (ведь все абоненты слушают, а не началась ли чужая передача, и если началась, то не начинают свою).

Кроме того, эзернет на общей шине давно мертв.

Согласен. Я плохо знаю эзернет. Давным-давно попробовал и понял, что реалтайма от эзернета добится не получится, с тех пор и забросил т.к. все задачи у меня с жёстким реалтаймом связаны. А вот насчёт общей шины я не знал... Я считал, что до сих пор хабы пакеты во все стороны передают. Раньше ведь так было? Т.е. хоть шина и не общая, но везде кол-во пакетов одинаковое. Разве не так? Кстати не подскажете где бы про нынешнее состояние эзернета почитать?
Простите за оффтоп.
Но вот в случае мультимастерности на RS485 смысла в преамбулах я не вижу. Т.е. я имел ввиду, что сам пакет (он д.б. достаточно коротким) будет играть роль преамбулы.
Цитата(overloaded @ Mar 4 2009, 14:48) *
...
Ожидания тоже не будет т.к. если пакет по црц не прошел, он игнорируется и ждется следующий, т.к. перезапраивать предидущий нет смысла.
...

"Ожидания не будет т.к. ждётся следующий" - несколько противоречиво...
1. Что будет делать ведущий RS485 после того, как он отправил ведомому пакет?
2. По каким признакам ведущий сможет узнать был-ли пакет отброшен ведомым т.к. CRC не совпало или ведомый просто сдох?
3. Если один из ведомых на некоторое время сдох, а потом опять заработал (например ватчдог перезапустил его процессор) восстановится ли связь с ним в вашем случае?
Go to the top of the page
 
+Quote Post
overloaded
сообщение Mar 4 2009, 16:07
Сообщение #5


Участник
*

Группа: Свой
Сообщений: 73
Регистрация: 17-10-07
Из: Киев
Пользователь №: 31 422



Цитата(galjoen @ Mar 4 2009, 18:31) *
"Ожидания не будет т.к. ждётся следующий" - несколько противоречиво...
1. Что будет делать ведущий RS485 после того, как он отправил ведомому пакет?
2. По каким признакам ведущий сможет узнать был-ли пакет отброшен ведомым т.к. CRC не совпало или ведомый просто сдох?
3. Если один из ведомых на некоторое время сдох, а потом опять заработал (например ватчдог перезапустил его процессор) восстановится ли связь с ним в вашем случае?


1. Зависит от типа ведомого) Если от ведомого данные не нужны, то передавать следующему.
Если нужны данные от ведомого(а это зависит от его типа определенного при "энумерации" при запуске системы)
то конечно ждать их с таймаутом, таймауты считать, если больше какого-то количества, то.. Но вообще я больше имел ввиду что устройства, которые не подключены, опрашиваться не будут. И посылаться им запросы тоже(кроме пары раз при запуске).

2. Ну просто сдох это как-то не тривиально =) Но вообще в каждом ведомом будет структура типа отладочная, отдельно запрашиваемая, в которую каждый ведомый заносит свое кол-во ошибок црц, оверфлов, может что-то еще.. И сдохший находится т.к. он ее вообще не выдаст) Как также находится и например плохо обжатый провод по большому кол-у ошибок относительно первых ведомых в сети.
Да, это в компутер выводится.. Как собственно и данные в\из сети.

3. Ну а что ей мешает восстановиться? Скорость общего опроса конечно упадет за счет таймаутов пока проц будет заново инициализироваться, но это же не нормальный режим работы а просто как крайний вариант - сброс по вачдогу и постоянно он не должен срабатывать..
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- overloaded   Помогите определиться с интерфейсом   Mar 2 2009, 23:17
- - @Ark   Цитата(overloaded @ Mar 3 2009, 02:17) Ну...   Mar 3 2009, 00:16
|- - overloaded   Цитата(@Ark @ Mar 3 2009, 03:16) А где се...   Mar 3 2009, 02:04
|- - Огурцов   Можно еще CAN сделать, на такой длинне.   Mar 3 2009, 06:20
|- - overloaded   Цитата(Огурцов @ Mar 3 2009, 10:20) Можно...   Mar 3 2009, 13:28
|- - galjoen   Цитата(overloaded @ Mar 3 2009, 16:28) Мо...   Mar 3 2009, 15:58
|- - overloaded   Цитата(galjoen @ Mar 3 2009, 19:58) Резко...   Mar 3 2009, 17:58
|- - rezident   Цитата(galjoen @ Mar 3 2009, 20:58) Резко...   Mar 3 2009, 19:09
|- - @Ark   Цитата(rezident @ Mar 3 2009, 22:09) Это ...   Mar 3 2009, 20:07
|- - galjoen   Цитата(rezident @ Mar 3 2009, 22:09) Это ...   Mar 3 2009, 21:02
- - Rst7   ЦитатаЭто не есть недостаток. Ведомый сообщает, чт...   Mar 3 2009, 20:12
|- - Огурцов   Цитата(Rst7 @ Mar 3 2009, 21:12) Часто ис...   Mar 3 2009, 20:56
- - Rst7   ЦитатаЯ бы даже сказал губительна для реалтайма, т...   Mar 4 2009, 07:32
|- - Огурцов   Цитата(Rst7 @ Mar 4 2009, 08:32) Кроме то...   Mar 4 2009, 17:26
|- - rezident   Цитата(Огурцов @ Mar 4 2009, 22:26) Топол...   Mar 4 2009, 22:43
- - Rst7   ЦитатаТ.е. хоть шина и не общая, но везде кол-во п...   Mar 4 2009, 14:35
- - Rst7   ЦитатаА что стандарт уже отменили ? Я почему-то ув...   Mar 4 2009, 18:46
|- - Огурцов   Цитата(Rst7 @ Mar 4 2009, 18:46) Во-первы...   Mar 5 2009, 00:08
|- - rezident   Цитата(Огурцов @ Mar 5 2009, 05:08) Соеди...   Mar 5 2009, 00:50
|- - Огурцов   Цитата(rezident @ Mar 5 2009, 01:50) Толь...   Mar 5 2009, 02:05
|- - galjoen   Если я правильно понял, то тут уже до эстафеты доо...   Mar 5 2009, 05:08
- - Rst7   ЦитатаВот проблема, для электронщика. Шутите? Вит...   Mar 5 2009, 06:43
|- - Огурцов   Цитата(Rst7 @ Mar 5 2009, 07:43) Шутите? ...   Mar 5 2009, 10:27
|- - galjoen   Цитата(Огурцов @ Mar 5 2009, 13:27) Разни...   Mar 5 2009, 15:35
|- - Огурцов   Цитата(galjoen @ Mar 5 2009, 15:35) Зачем...   Mar 5 2009, 16:09
|- - galjoen   Цитата(Огурцов @ Mar 5 2009, 19:09) Мне н...   Mar 5 2009, 16:56
|- - Огурцов   Цитата(galjoen @ Mar 5 2009, 16:56) Именн...   Mar 5 2009, 18:24
|- - galjoen   Цитата(Rst7 @ Mar 5 2009, 21:03) Но инфор...   Mar 5 2009, 19:51
|- - Огурцов   Цитата(galjoen @ Mar 5 2009, 20:51) Так т...   Mar 5 2009, 21:25
|- - galjoen   Цитата(Огурцов @ Mar 6 2009, 00:25) Вотже...   Mar 5 2009, 21:50
|- - Огурцов   Цитата(galjoen @ Mar 5 2009, 22:50) Когда...   Mar 5 2009, 22:17
|- - galjoen   Цитата(Огурцов @ Mar 6 2009, 01:17) Ну по...   Mar 5 2009, 22:49
|- - Огурцов   Цитата(galjoen @ Mar 5 2009, 22:49) И в с...   Mar 5 2009, 23:43
|- - galjoen   Цитата(Rst7 @ Mar 6 2009, 11:48) Да забуд...   Mar 6 2009, 19:43
|- - Огурцов   Цитата(galjoen @ Mar 6 2009, 19:43) 3. Из...   Mar 6 2009, 20:03
|- - galjoen   Цитата(Огурцов @ Mar 6 2009, 23:03) Любой...   Mar 6 2009, 20:36
|- - Огурцов   Цитата(galjoen @ Mar 6 2009, 21:36) Откуд...   Mar 6 2009, 21:06
|- - galjoen   Цитата(Огурцов @ Mar 7 2009, 00:06) Ну ка...   Mar 6 2009, 21:26
|- - Огурцов   Цитата(galjoen @ Mar 6 2009, 21:26) Поста...   Mar 6 2009, 22:09
|- - galjoen   Цитата(Огурцов @ Mar 7 2009, 01:09) И это...   Mar 6 2009, 22:40
|- - Огурцов   Цитата(galjoen @ Mar 6 2009, 22:40) Почем...   Mar 7 2009, 08:15
|- - galjoen   Цитата(Огурцов @ Mar 7 2009, 11:15) Потом...   Mar 7 2009, 16:18
|- - Огурцов   Но заваливать равномерно нужно.   Mar 7 2009, 18:40
|- - galjoen   Цитата(Огурцов @ Mar 7 2009, 21:40) Но за...   Mar 8 2009, 06:07
|- - Огурцов   Так у него и приемник CAN, а не 485/422   Mar 8 2009, 12:03
- - Rst7   ЦитатаНесклько чипов, трансов, разъемов, блок пита...   Mar 5 2009, 10:43
|- - Огурцов   Цитата(Rst7 @ Mar 5 2009, 11:43) Забудьте...   Mar 5 2009, 11:45
- - Rst7   ЦитатаДетерминированный реалтайм, например. Да ск...   Mar 5 2009, 12:00
|- - Огурцов   Цитата(Rst7 @ Mar 5 2009, 12:00) Допустим...   Mar 5 2009, 12:14
|- - Огурцов   Цитата(Rst7 @ Mar 5 2009, 12:00) http://e...   Mar 5 2009, 12:29
- - Rst7   ЦитатаНе вижу тут разницы между уарт и эзернет. О...   Mar 5 2009, 12:24
- - Rst7   ЦитатаДа, неплохо, уже тем, что работает. Я Вам б...   Mar 5 2009, 12:31
|- - Огурцов   Цитата(Rst7 @ Mar 5 2009, 12:31) Щас несп...   Mar 5 2009, 12:44
- - Rst7   ЦитатаГотовый девайс с коробкой и документацией за...   Mar 5 2009, 12:54
|- - Огурцов   Цитата(Rst7 @ Mar 5 2009, 13:54) Да и смо...   Mar 5 2009, 14:56
- - Rst7   Цитата(Огурцов @ Mar 5 2009, 16:56) Хотел...   Mar 5 2009, 18:03
- - Rst7   ЦитатаНужно построить ethernet на xmega only. Это...   Mar 5 2009, 18:41
|- - Огурцов   Цитата(Rst7 @ Mar 5 2009, 18:41) Или Вы х...   Mar 5 2009, 19:49
- - Rst7   Цитата(Огурцов @ Mar 5 2009, 21:49) Да. Б...   Mar 6 2009, 08:48


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 28th July 2025 - 14:30
Рейтинг@Mail.ru


Страница сгенерированна за 0.01592 секунд с 7
ELECTRONIX ©2004-2016