Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Триста rs232-х и компьютерная сеть
Форум разработчиков электроники ELECTRONIX.ru > Сайт и форум > В помощь начинающему > Интерфейсы
Paul888
Здравствуйте!
Прошу совета опытных сетевиков.
Передо мной поставили следующую задачу.
Есть порядка 300 измерительных приборов, которые непрерывно выдают результаты измерений на свой rs232 порт. Задача - свести всю эту информацию на компьютер и разумеется сохранить в базе данных. Также иметь возможность вводить необходимые данные для приборов с этого компьютера.
И собственно сам вопрос...
Какой способ соединения и тип сетевого оборудования в этом случае лучше выбрать?
Павел.
zltigo
Цитата(Paul888 @ Apr 7 2010, 22:27) *
Какой способ соединения и тип сетевого оборудования в этом случае лучше выбрать?

А где Вы видите в сформулированной задаче возможность выбора???
XVR
Цитата
Есть порядка 300 измерительных приборов
Они все в одном месте, или раскиданны по просторам нашей родины?
Цитата
которые непрерывно выдают результаты измерений на свой rs232 порт.
С какой скоростью и с какой периодичностью?
Цитата
Задача - свести всю эту информацию на компьютер и разумеется сохранить в базе данных.
Концентратор или сеть из концентраторов типа 'много RS232 -> что то быстрое'
ukpyr
в XMega есть 8 UARTов
zltigo
Цитата(ukpyr @ Apr 8 2010, 12:00) *
в XMega есть 8 UARTов

В FPGA "есть" столько UART, на сколько пинов хватит.
MrYuran
Если готовое оборудование - то многопортовые преобразователи, например, МОХА
Бывают до 16 портов (по-моему, но 8 точно)
Преобразовывают в USB или Ethernet.
Однако, 300 штук... Боюсь, столько СОМ-портов в системе не прописать.
тогда каждый RS-232 в 485, объединить штук по 30, итого будет 10 каналов, их опять в МОХу, и получаем 10 виртуальных СОМ-портов по 30 приборов на каждом.
Вместо МОХи мне уже второй год Korenix навяливают, типа то же самое на 30% дешевле.
rezident
Цитата(Paul888 @ Apr 8 2010, 02:27) *
Какой способ соединения и тип сетевого оборудования в этом случае лучше выбрать?
Как правильно заметил zltigo, без изменения типа интерфейса и способа передачи данных выбора у вас нет - концентратор с 300 интерфейсами RS232. Ну либо группа концентраторов с меньшим количеством.

Цитата(MrYuran @ Apr 8 2010, 17:20) *
тогда каждый RS-232 в 485, объединить штук по 30, итого будет 10 каналов, их опять в МОХу, и получаем 10 виртуальных СОМ-портов по 30 приборов на каждом.
Вы видимо не обратили внимание на
Цитата(Paul888 @ Apr 8 2010, 02:27) *
Есть порядка 300 измерительных приборов, которые непрерывно выдают результаты измерений на свой rs232 порт
Без изменения способа выдачи результатов (вместо непрерывного выдача по запросу) ваша идея с RS485 не реализуется.
izerg
Как обстоят дела с программной частью у Korenix ? Так же красиво и прозрачно как и у Moxa ?
Кто-нибудь пробовал их ПО?
MrYuran
Цитата(rezident @ Apr 8 2010, 15:37) *
Без изменения способа выдачи результатов (вместо непрерывного выдача по запросу) ваша идея с RS485 не реализуется.

Ну это надо ещё у автора уточнить, что он подразумевал под непрерывной выдачей.
А иначе единственный выход - самодельный концентратор (как бы даталоггер) с последующим выводом в 485/USB/Eth и желательно по стандартному протоколу.
редактор
Как альтернативу 485-му каналу можно использовать CAN. Немного сложнее с аппарвтной частью, но все сведется на единственную шину с арбитражем.
Хотя вопрос о периодичности и востребованности данных ключевой. (гнать температуру 100 раз в секунду смысла нет, а контролировать ток или давление с периодичностью 1-2 секунды
может оказаться черевато.
Аматер
Интересная задача. Я бы сделал конвертер несколько RS в ethernet. Программировать ethernet на мой взгляд проще.
Как делать зависит конечно от тиражности. Для единичного случая может дешевле купить 300 конвертеров, например первые попавшиеся http://www.gridconnect.com/xportdpnc.html получится $9000.
На чем самодельное устройсво делать зависит от опыта. Тут у каждого будет свой расчет цены.
rezident
Цитата(редактор @ Apr 8 2010, 22:08) *
Как альтернативу 485-му каналу можно использовать CAN. Немного сложнее с аппарвтной частью, но все сведется на единственную шину с арбитражем.
Просто втупую заменить RS232 на CAN без изменения идеологии обмена данными и программной части устройств не получится. Устройство ведь само не будет повторы отправки данных делать при коллизиях. Т.е. придется на каждое устройство делать свой преобразователь RS232 - CAN с буферизацией данных.
_Pasha
Цитата(Аматер @ Apr 8 2010, 22:29) *
Интересная задача. Я бы сделал конвертер несколько RS в ethernet. Программировать ethernet на мой взгляд проще.

Надо сразу все в езернет сливать, иначе придется ставить свитч на свитче biggrin.gif
2Автор: кто инициатор передачи и с какой периодичностью происходит обмен??
iosifk
Цитата(Paul888 @ Apr 8 2010, 00:27) *
Есть порядка 300 измерительных приборов, которые непрерывно выдают результаты измерений на свой rs232 порт.

Если расстояния небольшие, то возможно и USB. Переходники USB-RS достаточно дешевые. хабы для USB тоже существуют. Но можно и поставить много карт с USB портами в обычные PCI слоты. на каждой будет по 6 портов. Там же можно сделать и предварительную обработку....

Для настольного применения может подойти...
evgen2
Цитата(rezident @ Apr 8 2010, 15:37) *
Как правильно заметил zltigo, без изменения типа интерфейса и способа передачи данных выбора у вас нет - концентратор с 300 интерфейсами RS232. Ну либо группа концентраторов с меньшим количеством.

Как правильно заметил XVR, ежели оно раскидано по просторам нашей родины, то такое решение не прокатит. Даже если раскидано по просторам какого-нибудь завода... Тут вопрос - каким местом думали, когда ставили эти 300 спартанцев устройств c rs232...

Плюс к сказанному выше.
Допустим "непрерывно выдают" на 9600 - это 10 кб/сек. Умножаем на 300 - это 3 Мб/сек, умножаем на 3600 - это 10.8Гб в час, 259 Гб в день, 94 терабайт в год. Все это должно непрерывно лится на винт, и не просто так, а в БД. 300*N записей в секунду. где N - от 10 до 100.
Это уже задачка не для писюка, а для "большого компьютера".


Цитата(iosifk @ Apr 9 2010, 11:00) *
Если расстояния небольшие, то возможно и USB. Переходники USB-RS достаточно дешевые. хабы для USB тоже существуют. Но можно и поставить много карт с USB портами в обычные PCI слоты. на каждой будет по 6 портов. Там же можно сделать и предварительную обработку....

Для настольного применения может подойти...

300/6 = 50

Вы видели писюки с 50-ю "обычных PCI-слотов" ? А венду с 50-ю 300-ми дивайсами на USB ?
XVR
Цитата(iosifk @ Apr 9 2010, 11:00) *
Если расстояния небольшие, то возможно и USB.
У USB есть небольшой недостаток (по крайней мере под Виндами) - если девайс по какой либо причине дает сбой (или так думает его драйвер в ОС), то соотвествующий USB cосок в компьютере отваливается в лучшем случае до физического отключения девайса, в худшем - до перезагрузки компа. Для промышленного применения это явно не водходит crying.gif
MrYuran
Цитата(XVR @ Apr 9 2010, 11:18) *
Для промышленного применения это явно не водходит crying.gif

Интересно было бы посмотреть на 300 приборов, расположенных в радиусе 5м от ПК... У нас на техпрогоне пара десятков уже целый стеллаж занимает, и то им там тесновато. И что-то сомнительно, что кому-то нужно мерить одни и те же параметры тремя сотнями приборов практически в одной точке пространства. Скорее всего, они таки раскиданы на десятки-сотни метров.
@Ark
Цитата
... Допустим "непрерывно выдают" на 9600 - это 10 кб/сек. Умножаем на 300 - это 3 Мб/сек, умножаем на 3600 - это 10.8Гб в час, 259 Гб в день, 94 терабайт в год. Все это должно непрерывно лится на винт, и не просто так, а в БД. 300*N записей в секунду. где N - от 10 до 100. Это уже задачка не для писюка, а для "большого компьютера".

+1
IMHO, такие задачи никогда не нужно пытаться решать сразу "в лоб"... Выбору железа, интерфейсов и протоколов, должна предшествовать серьезная системная проработка задачи. Но пока автор темы не дал никакой дополнительной информации, обсуждать это бессмысленно. Ждем-с.
MrYuran
Цитата
Умножаем на 300 - это 3 Мб/сек, умножаем на 3600 - это 10.8Гб в час

К интерфейсу это никакого отношения не имеет, разве что кроме "это 3 Мб/сек"
Это уже обработка.
Тем более что избыточные данные можно проредить.
Самый простейщий способ - введение порога нечувствительности, ниже которого изменения параметра в базу не пишутся.
Никому ведь не интересна горизонтальная прямая из миллиона точек. Достаточно указать начало и конец.
iosifk
Цитата(@Ark @ Apr 9 2010, 11:38) *
IMHO, такие задачи никогда не нужно пытаться решать сразу "в лоб"... Выбору железа, интерфейсов и протоколов, должна предшествовать серьезная системная проработка задачи. Но пока автор темы не дал никакой дополнительной информации, обсуждать это бессмысленно. Ждем-с.


Точно!
Тогда предлагаю автору темы начать с "Гайки М3". А потом уже продолжать задавать свои вопросы в конференции.
Удачи!
zltigo
Цитата(@Ark @ Apr 9 2010, 09:38) *
Ждем-с.

Думаю зря - Автор, чего-то просто так спросил и ушел....
galjoen
Цитата(XVR @ Apr 9 2010, 11:18) *
У USB есть небольшой недостаток (по крайней мере под Виндами) - если девайс по какой либо причине дает сбой (или так думает его драйвер в ОС), то соотвествующий USB cосок в компьютере отваливается в лучшем случае до физического отключения девайса, в худшем - до перезагрузки компа. Для промышленного применения это явно не водходит crying.gif

Решается, как со стороны компа, так и со стороны девайса.
XVR
Цитата(galjoen @ Apr 10 2010, 11:21) *
Решается, как со стороны компа, так и со стороны девайса.
Разумеется решается - с помощью кувалды и какой то матери rolleyes.gif Но лучше брать интерфейсы которые изначально этой болезни не подверженны, Ethernet например.
des333
Цитата(evgen2 @ Apr 9 2010, 11:13) *
...
Допустим "непрерывно выдают" на 9600 - это 10 кб/сек. Умножаем на 300 - это 3 Мб/сек, умножаем на 3600 - это 10.8Гб в час, 259 Гб в день, 94 терабайт в год.
...


А у Вас 9600 - это байт/сек?
rezident
Цитата(des333 @ Apr 12 2010, 04:09) *
А у Вас 9600 - это байт/сек?
evgen2, ошибся на порядок при расчете. Однако все это видимо не имеет значения ... для топикстартера. Он ведь до сих пор не появился, чтобы посмотреть ответы на свой вопрос.
V_G
Пардон, немного не по делу...
Как-то давно, я работал на кафедре КПР МЭИ, и мой старший товарищ защитил диссер на тему локальных сетей (тогда в стране еще с персональными компьютерами-то была напряженка, не то что с сетями). На Новый Год мы соорудили шуточную постановку на тему "Локальная сеть из 300 микрокалькуляторов". Сейчас повеселило совпадение цифр и постановка задачи...
ILYAUL
Цитата(rezident @ Apr 12 2010, 02:24) *
Однако все это видимо не имеет значения ... для топикстартера. Он ведь до сих пор не появился, чтобы посмотреть ответы на свой вопрос.

Да где он (топикстартер) только это не разместил . Даже где ответили и получили "Спасибо" , но точно не помню где. Если по нику поискать , вообще интересно получается.
rv3dll(lex)
никакого усб и сети не нужно. надо взять плату pci7200 у которой 32х разрядный ттл вход. можно найти и с большим количеством. к ней присопливить платку с плисиной, на которой сделать эти сколько получится каналов последовательного интерфейса, пропустить через буферную память, примитивно сжать и пихать в параллельный порт и писать на диск средствами этой платы.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.