Полная версия этой страницы:
rs232 шина
vovkaSOL
Mar 24 2011, 06:19
Требуется подключить порядка 20 устройств в одну сеть, все устройства находятся о пределах 1 квадратного метра, необходима дешевая шина с минимумов проводов, rs485 можно, но передатчики это доп удорожание. Вот думаю сможет ли rs232 такое? Входное сопротивление приемников порядка 3 ком.
Забыл добавить, в сети один мастер, остальные слэйвы.
andrewkrot
Mar 24 2011, 06:35
Для 232 тоже передатчики нужны. Забыли еще сказать на каких скоростях это все должно работать
iosifk
Mar 24 2011, 06:35
Цитата(vovkaSOL @ Mar 24 2011, 09:19)

Требуется подключить порядка 20 устройств в одну сеть, все устройства находятся о пределах 1 квадратного метра, необходима дешевая шина с минимумов проводов, rs485 можно, но передатчики это доп удорожание. Вот думаю сможет ли rs232 такое? Входное сопротивление приемников порядка 3 ком.
Забыл добавить, в сети один мастер, остальные слэйвы.
Есть протокол LIN...
У меня на сайте есть статьи о мк фирмы НЕК и там немного описан этот стандарт... Сам же трансивер можно сделать и на дискретных транзисторах...
Удачи!
firstvald
Mar 24 2011, 07:34
Конечно может. Промышленные сети в ряде случаев так и строятся. Просто вам надо со стороны слейвов драйвер сделать так, чтобы он мог линию занимать и освобождать. Все линии надо подгрузить с концов резюками , скажем, по 510 ом (можно и 100 но досьтаточно бывает 510). Тогда никакие наводки не будут страшны.
vovkaSOL
Mar 24 2011, 07:49
С протоколом то все понятно, это не проблема, интересовали физические возможности приемников-передатчиков. Спасибо всем.
vovkaSOL
Mar 24 2011, 10:10
На транзисторах конечно элементарно сделать, они вообще копейки стоят, но все же лучше использовать то что уже есть в контроллере без лишних деталей там где это возможно. Остановился на уарт.
Цитата(vovkaSOL @ Mar 24 2011, 16:49)

Требуется подключить порядка 20 устройств в одну сеть, все устройства находятся о пределах 1 квадратного метра, необходима дешевая шина с минимумов проводов
Сделать такое устройство "на лабораторном столе" вы можете, если будете использовать логические элементы с открытым коллектором в качестве передатчиков. Однако в реальных условиях с этим решением у вас могут быть проблемы с помехоустойчивостью и с надежностью, при разбалансе земель устройств передатчики начнут выгорать.
iosifk
Mar 24 2011, 10:45
Цитата(vovkaSOL @ Mar 24 2011, 13:10)

На транзисторах конечно элементарно сделать, они вообще копейки стоят, но все же лучше использовать то что уже есть в контроллере без лишних деталей там где это возможно. Остановился на уарт.
Видите ли UART - это только логика приема и передачи последовательного кода. А RS232 и LIN - это стандарты линии. Берете UART, добавляете трансивер по протоколу RS232 - получаете интерфейс RS232. Стандартно работает "точка-точка". LIN позволяет организовать сеть, управляемую мастером. Все эти протоколы байт-ориентированные. Значит, над передачей байтов, Вам придется еще делать разборки "Кто и кому и что"... Если Выбираете стандарный протокол, то можно найти готовые примеры кода. Например, "wake"...
Все это можно посмотреть на сайтах
http://www.cmpcmm.com/cc/standards.htmlТо же самое и про 485 и 422 интерфейсы...
http://www.bb-elec.com/tech_articles/rs422..._protection.aspДля LIN
http://www.interfacebus.com/Design_Connector_LIN_Bus.htmlНу и так далее...
Вы задали вопрос не полно. Где работает Ваше изделие? На столе в лаборатории или в цеху, рядом со сваркой? Какие там помехи? Какова серийность? Что нужно - одно изделие или серия? Как достаются комплектующие? Куплю "какие захочу" или "из того, что было"? Чем более полно задается вопрос, тем правильнее получается ответ.
vovkaSOL
Mar 24 2011, 13:34
Нет, если бы мне нужна была помехозащищенность я бы кан выбрал, я с ним работал, изделия серийные, хочу все связать по уарту контроллеров. Ясное дело что приемопередатчики rs232 это удорожание, я бы тогда 485 бы взял, по поводу протоколов это не проблема, я свой накидаю
rezident
Mar 24 2011, 16:51
Цитата(vovkaSOL @ Mar 24 2011, 18:34)

Ясное дело что приемопередатчики rs232 это удорожание, я бы тогда 485 бы взял
Дешевле применения трансиверов RS485 только схемы "упрощенного" LIN на дискретных элементах. На обычных трансиверах RS232 вы шину с общим доступом не сделаете. Вы не озвучили скорость обмена, но я могу предложить еще один способ. Что-то типа токовой петли на оптронах.
Если скорость передачи сообщений не критичный параметр, есть способ подключить выход одного передатчика на вход другого приемника и так по кольцу. Все приееники ретранслируют передачу соседу, пока сообщение не прийдет к мастеру. Количество проводов такое же как и в конфигурации звезда. Основное достоинство- трансиверы-ресиверы можно сделать даже на рассыпухе, не заботясь о нагрузочной способности. Количество узлов ограничено только скоростью ретрансляции сообщений.
А Ваши slave будут только принимать данные или планируется запрос-ответ? Если slave будет "немым слугой", тогда все просто - любой буфер и всех делов.
В противном случае лучше проверенного 485 не найти - он и от шины отключаться умеет, и помехозащищенность у него неплохая. Согласен с rezident, что дешевле решения, скорее всего не будет. Уж соотношение цена/геммор однозначно у RS485 лучшее
Если условия идеальные и все устройства имеют общее питание, я бы применил TWI. В Вашем случае, с одним мастером, протокольная часть будет уже автоматически решена.
hd44780
Mar 25 2011, 08:31
Цитата(nk@ @ Mar 25 2011, 06:36)

Если условия идеальные и все устройства имеют общее питание, я бы применил TWI. В Вашем случае, с одним мастером, протокольная часть будет уже автоматически решена.
Поддерживаю.
Там и адресация изначально есть (до 128 устройств), и вся остальная протокольная часть. Брать и использовать.
У атмела аппноуты есть по использованию TWI.
Зачем именно RS232? Если устройства в пределах 1 кв. метра, то и TWI на ТТЛ уровнях нормуль будет.
Правда, если рядом сварка работает ....
vovkaSOL
Mar 25 2011, 10:55
Дело в том что в сети не только атмелы а uart везде есть.
нечитатель
Mar 25 2011, 16:51
Один драйвер приёмопередатчик 75176 уможить на 20 (прописью: двадцать) устройств = 400 (прописью: четыреста) рублей.
Сколько процентов от суммы хочется сэкономить?
UART - это не деталь, не модуль, не микросхема. Это нарисованная на бумажке картинка. Алгоритм. Правило. Принцип. *
Ну нет смысла книжки готовое уже стопятьсот раз пережёванное в интернете читать это всё, когда через полчасика разжуют прямо здесь в стопятьсотпервый и стопятьсотвторой разы то же самое, но другими точно такими же словами.
* а I2C ?
Harbinger
Mar 25 2011, 19:21
Цитата(нечитатель @ Mar 25 2011, 18:51)

75176
Нежелательно.
Много жрут и не fail-safe (т.е. "растяжки" потребуются).
Из самых дешёвых - ADM485, пожалуй. Доллар штука.
Цитата(cioma @ Mar 25 2011, 17:59)

A I2C
А I2C и TWI не одно и тоже?
Цитата(nk@ @ Mar 26 2011, 16:06)

А I2C и TWI не одно и тоже?
TWI как "two wire interface"? Нет, вообще говоря, это не одно и то же. I2C - патентованный интерфейс Филипса. А вот
SMB, хоть и похож на него чрезвычайно и хорошо с ним совместим, все же имеет отличия. И то и другое может называться "two wire interface".
нечитатель
Mar 26 2011, 15:19
[тема ни о чём]
В задаче не оговорены ограничения по жручести, зато прошено дёшево. Растяжки недороги.
"RS-485 для чайников" тогда что ли автору вопроса и/или другим интересующимся почитать быстрее будет.
Корректнее выразиться было бы так: "буквами TWI фирма Atmel называет свой модуль, умеющий обращаться с протоколом, который фирма Philips назвала буквами I2C (которое умение не запрещает применять означенный модуль и для иных целей)". Буквально же выражение "two wire interface" обозначает просто какой-то двухпроводной интерфейс.
[/тема ни о чём]
hd44780
Mar 28 2011, 09:12
Цитата(nk@ @ Mar 26 2011, 07:36)

А I2C и TWI не одно и тоже?
Одно и то же. Это "отрыжки" забугорной системы лицензирования.
Также как и ObDev переименовали свой проект в V-USB, чтобы не вступать в лицензионные споры с Atmel по поводу названия "AVR-USB". Хоть его суть и реализация от этого никак не поменялись.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.