-
- Причем я бы 4-проводный RS485 в протокол закладывал. Так можно
сократить паузы запрос-ответ и соответственно - весь цикл опроса. - rezident(12.05.2021 11:54)
- Ещё припоминается M-LVDS. В каждый девайс по репитеру
4-х-проводному вставить. Для M-LVDS, например, 2 шт.
SN65MLVD202/SN65MLVD205. Но это жручесть 11+ мА на каждый в
активном режиме. Или сегментировать до 32 шт. Но без сегментации
придётся из того же UART выжимать нехилую скорость... Vit(408 знак., 12.05.2021 20:53)
- Примерно 150к диф. входное. Но вопрос, как оно будет жить при такой
срани неоднородностей... Довольно стремный вариант. - Evgeny_CD(12.05.2021 21:06)
- Тут сама идея стрёмная. Перекосы либо по скорости, либо по количеству нод. Ещё ТС о бюджетах хоть и не сообщал, но как по мне, то сегменитрование на таких полных расстояниях по сравнению с размерами, разъёмами и кабелями - просто мелочь в денежном измерении. Там же ещё где-то подсоединение питания и стрёмные петли по землям - Vit(12.05.2021 21:15)
- Примерно 150к диф. входное. Но вопрос, как оно будет жить при такой
срани неоднородностей... Довольно стремный вариант. - Evgeny_CD(12.05.2021 21:06)
- RS422 ? - =AlexD=(12.05.2021 11:56)
- Нет, RS422 это точка-точка, а тут один мастер и много слейвов.
Именно 4-проводный RS485, где к выходному трансиверу одного мастера
подключаются входы слейвов, а выходы слейвов на один вход мастера.
Соответственно выходы слейвов должны подключаться к линии только на
время передачи ответа. - rezident(12.05.2021 11:59 - 12:03)
- Все эти
извратынавоторы полностью покрываются разделением шины на два. Надежность выше, а цена - та же. В один кусок все равно всю тысячу не запихнуть. - Cкpипaч(12.05.2021 13:01)- Я бы взял нормальный одноплатник вместо малинки, которую хочет
автор. Есть варианты на imx с кучей RS-ов, в плане поддержки не
хуже. Ценник плюс-минус такой же, затеряется на стоимости всей
системы. - evgeniy1294(12.05.2021 13:03)
- У i.MX все очень плохо с аппаратным управлением потока, вот. - lloyd(14.05.2021 17:59)
- Пппереведите, плзз. 4-wire RS485 это вполне типовое решение. - rezident(12.05.2021 13:02)
- Mainstream == MODBUS. Отладка ЛЮБОГО самописного протокола будет
раз в двадцать дороже чем просто разбить на в два (четыре) раза
больше сегментов. Cкpипaч(113 знак., 12.05.2021 19:45)
- Дык 4-wire RS485 никак не противоречит MODBUS . Более того, в
спецификации MODBUS есть обе реализации: и 2-wire RS485 и 4-wire
RS485. - rezident(12.05.2021 21:05, ссылка)
- ...которая НИЧЕМ от двухпроводной не отличается. - Cкpипaч(12.05.2021 21:54)
- В реализации протокола MODBUS over Serial Line - да, ничем. Но для
"малинки", используемой в качестве мастера, в случае 4-wire RS485
не нужно сигналом направления трансивера управлять. - rezident(12.05.2021 21:59)
- Полно копеечных платок TTL-RS485 с автопереключением. И чипы с
автопереключением не дороже обычных. - Cкpипaч(12.05.2021 22:02)
- И как работают (надежность)? На любых скоростях? Можно пример? - rezident(12.05.2021 22:12)
- До 115200 точно. Cкpипaч(332 знак., 12.05.2021 22:23 - 22:37, ссылка)
- Гм. Посмотрел даташит MAX13487E/MAX13488E. Там на Figure 11
какая-то жесть изображена. "Растяжка" линии на каждом узле
трансивера?! О.о - rezident(12.05.2021 22:50)
- Сам не паял. Использую готовое. - Cкpипaч(12.05.2021 22:54, ссылка)
- Понятно. Это годно для макета/настольного варианта устройства и для
работы на небольшую по длине линию. В условиях промышленных помех и
на длинной линии первый байт в посылке очень часто будет
искаженным. К тому же это гальванически не изолированный
преобразователь, "прилетит" что-нибудь в линию и амбец вашей
"малинке". - rezident(12.05.2021 22:32)
- Есть и гальваноразвязанные. Но не в условиях сталелитейного цеха
негальваноразвязанные вполне работают на линии 500-700м@30-40
слейвов. Cкpипaч(73 знак., 12.05.2021 22:39)
- Верю, что где-то оно работает. Но тем не менее остаюсь при своем
мнении - это далеко не универсальное и не совсем корректное
решение. Если делать корректно, то одновременно с таймером,
запускающим переключение трансивера по перепаду на линии DI, нужна
линия задержки для битового потока. Я лет ...цать назад
реализовывал такой конвертор-репитер RS232/RS485/RS485 на мелкой
CPLD. - rezident(12.05.2021 22:45)
- гы!!! что с али вообще никого не смущает!? - Aleksey_75(12.05.2021 22:48)
- Мне пофиг. Я лишь хотел понять, правильно ли я принцип работы понимаю? - rezident(12.05.2021 22:52)
- Ссылка на Maxim - в том же комменте. - Cкpипaч(12.05.2021 22:51)
- гы!!! что с али вообще никого не смущает!? - Aleksey_75(12.05.2021 22:48)
- Верю, что где-то оно работает. Но тем не менее остаюсь при своем
мнении - это далеко не универсальное и не совсем корректное
решение. Если делать корректно, то одновременно с таймером,
запускающим переключение трансивера по перепаду на линии DI, нужна
линия задержки для битового потока. Я лет ...цать назад
реализовывал такой конвертор-репитер RS232/RS485/RS485 на мелкой
CPLD. - rezident(12.05.2021 22:45)
- Есть и гальваноразвязанные. Но не в условиях сталелитейного цеха
негальваноразвязанные вполне работают на линии 500-700м@30-40
слейвов. Cкpипaч(73 знак., 12.05.2021 22:39)
- Гм. Посмотрел даташит MAX13487E/MAX13488E. Там на Figure 11
какая-то жесть изображена. "Растяжка" линии на каждом узле
трансивера?! О.о - rezident(12.05.2021 22:50)
- До 115200 точно. Cкpипaч(332 знак., 12.05.2021 22:23 - 22:37, ссылка)
- И как работают (надежность)? На любых скоростях? Можно пример? - rezident(12.05.2021 22:12)
- Полно копеечных платок TTL-RS485 с автопереключением. И чипы с
автопереключением не дороже обычных. - Cкpипaч(12.05.2021 22:02)
- В реализации протокола MODBUS over Serial Line - да, ничем. Но для
"малинки", используемой в качестве мастера, в случае 4-wire RS485
не нужно сигналом направления трансивера управлять. - rezident(12.05.2021 21:59)
- ...которая НИЧЕМ от двухпроводной не отличается. - Cкpипaч(12.05.2021 21:54)
- Дык 4-wire RS485 никак не противоречит MODBUS . Более того, в
спецификации MODBUS есть обе реализации: и 2-wire RS485 и 4-wire
RS485. - rezident(12.05.2021 21:05, ссылка)
- И в чем его прелесть, кроме отсутствия необходимости переключения
направления на мастере? Все равно пока от одного слейва ответ не
получил, другой не запросишь. Уж лучше побольше сегментов наделать
- надежнее и быстрее. - Andreas(12.05.2021 13:10)
- Обычный конвейер тайм слотов. В слоте N мастер выдает команду и
данные N и одновременно читает ответ на запрос в слоте N-1. - Evgeny_CD(12.05.2021 13:27)
- Мудрено. А если N-1 слот позже ответит? Обычный запрос-ответ менее
критичен ко времени и после ответа можно сразу следующий запрос
давать. А тут надо жестко тайминги выдерживать. - Andreas(12.05.2021 13:58)
- Зависит от свойств девайсиков на шине. Зато максимальная
производительность. - Evgeny_CD(12.05.2021 14:22)
- Видел такую реализацию в железе. Но это совсем нестандарт. - michas(12.05.2021 18:37)
- Зависит от свойств девайсиков на шине. Зато максимальная
производительность. - Evgeny_CD(12.05.2021 14:22)
- Мудрено. А если N-1 слот позже ответит? Обычный запрос-ответ менее
критичен ко времени и после ответа можно сразу следующий запрос
давать. А тут надо жестко тайминги выдерживать. - Andreas(12.05.2021 13:58)
- Дык я вовсе не ратую за отсутствие сегментирования, а лишь предложил решение для конкретного случая, описанного топикстартером. Лично мне тоже не очень нравится полтыщи устройств на одном проводе. У нас для схожих случаев концентратор USB->to->4*RS485 есть. Но в качестве мастера обычно что-то посерьезнее "малинки" строит, с распределенной сетью сбора данных и SCADA. - rezident(12.05.2021 13:19)
- Не совсем так, если дуплекс нужен (а по условиям это так), то можно одновременно читать один слейв и писать в другой. Для этого нужно что-бы ответ/квитирование на запись приходил не сразу после её окончания, а по отдельному короткому запросу. На килобайтных блоках можно почти вдвое снизить требование к полосе передачи. - =AlexD=(12.05.2021 13:17)
- Обычный конвейер тайм слотов. В слоте N мастер выдает команду и
данные N и одновременно читает ответ на запрос в слоте N-1. - Evgeny_CD(12.05.2021 13:27)
- Mainstream == MODBUS. Отладка ЛЮБОГО самописного протокола будет
раз в двадцать дороже чем просто разбить на в два (четыре) раза
больше сегментов. Cкpипaч(113 знак., 12.05.2021 19:45)
- Я бы взял нормальный одноплатник вместо малинки, которую хочет
автор. Есть варианты на imx с кучей RS-ов, в плане поддержки не
хуже. Ценник плюс-минус такой же, затеряется на стоимости всей
системы. - evgeniy1294(12.05.2021 13:03)
- +1 - Evgeny_CD(12.05.2021 12:02)
- Все эти
- Нет, RS422 это точка-точка, а тут один мастер и много слейвов.
Именно 4-проводный RS485, где к выходному трансиверу одного мастера
подключаются входы слейвов, а выходы слейвов на один вход мастера.
Соответственно выходы слейвов должны подключаться к линии только на
время передачи ответа. - rezident(12.05.2021 11:59 - 12:03)
- Ещё припоминается M-LVDS. В каждый девайс по репитеру
4-х-проводному вставить. Для M-LVDS, например, 2 шт.
SN65MLVD202/SN65MLVD205. Но это жручесть 11+ мА на каждый в
активном режиме. Или сегментировать до 32 шт. Но без сегментации
придётся из того же UART выжимать нехилую скорость... Vit(408 знак., 12.05.2021 20:53)
- Есть подозрение, что 90% мелких слейва можно подключить к 10%
жирных по RS485, а последние связать по Ethernet через свич. - =AlexD=(12.05.2021 11:52)
- Слэйвы предполагаются однотипные, в крайнем случае 2-3 типа. Можно
слэйвы делать скажем 2...4-канальные тогда число узлов на шине
сократится но вырастет количество проводов и сложность монтажа. И
субмодули придется цеплять уже на i2c что не радует. - 3m(12.05.2021 12:08)
- Кто у тебя мастер? Обозначь его возможности - типы и количество
интерфейсов. Ну и скорости обмена прикинь за одно. - =AlexD=(12.05.2021 12:11)
- Не выбран еще. Скорее всего будет какой-то из фруктово-ягодных
одноплатников. Т.е от 0 до 2 кан и N*16550-compatible UART (т.е
RS485 = боль). В китайском прототипе малинка. - 3m(12.05.2021 12:34)
- у imx6ull аж 8 уартов. Один на консоль, остальные свободны.
Подороже малинки, но зато фрискейл. - Andreas(12.05.2021 14:47)
- +1 И готовые пром-pc на них есть, есть и SOM. - evgeniy1294(12.05.2021 16:02)
- TTL-RS485 полно готовых. За вполне адекватные рупь ведро цены. Cкpипaч(267 знак., 12.05.2021 14:15)
- а на USB повесить хаб и гроздь USB-RS485 не вариант? - Andreas(12.05.2021 14:03)
- Хаб - нахуй. Жестко. Только встроенные порты одноплатника. - Cкpипaч(12.05.2021 14:13)
- Не нравится хаб или USB в принципе? - Andreas(12.05.2021 14:43)
- Перепробывали штук тридцать хабов. В контексте месяц х 24 х 7,
виснут. Прямо в условиях офиса. Минимум, раз в месяц. Cкpипaч(158 знак., 12.05.2021 15:19 - 19:38)
- Свои сделать, с собакой и управлением питанием - LightElf(12.05.2021 15:28)
- Нет коммерческого смысла. Есть "малинка", в которой ВОСЕМЬ последовательных портов(TTL+USB). Собирать больше портов в одну точку - ненадежно и не особо ценно коммерчески. - Cкpипaч(12.05.2021 19:32)
- Не в коня овес. "Мина" заложена в самой спецификации USB2.0.
Реконнект "на горячую" не предусмотрен. Только физически выткнуть
USB-device и воткнуть вновь. - rezident(12.05.2021 16:16)
- Обесточить устройство - как правило помогает. От повисания хаба поможет ватчдог - LightElf(12.05.2021 17:41)
- наблюдал прогу общающуюся с ftdi (FT232H) через родной драйвер (не в режиме vcp). Сложилось ощущение, что оно как-то более устойчиво к любым произвольным выдергиваниям шнурка из юсб и прочим издевательствам. - User_(12.05.2021 16:24)
- Реконнект предусмотрен в спецификации хаба в том числе корневого. Только мало где реализован и еще меньше где работает. - 3m(12.05.2021 16:23)
- Свои сделать, с собакой и управлением питанием - LightElf(12.05.2021 15:28)
- USB в принципе не промышленный интерфейс. - rezident(12.05.2021 14:53)
- Перепробывали штук тридцать хабов. В контексте месяц х 24 х 7,
виснут. Прямо в условиях офиса. Минимум, раз в месяц. Cкpипaч(158 знак., 12.05.2021 15:19 - 19:38)
- Не нравится хаб или USB в принципе? - Andreas(12.05.2021 14:43)
- Хаб - нахуй. Жестко. Только встроенные порты одноплатника. - Cкpипaч(12.05.2021 14:13)
- На той-же малинке прям искаропки можно навесить четыре USB-RS422/485 и вытянуть сеть четырьмя сегментами. Для прототипирования пойдёт, а там решите по факту какие реальные требования. - =AlexD=(12.05.2021 13:23)
- В том-то и цимес, что со стороны мастера в 4-проводном RS485 управление трансивером не требуется. Управление трансивером(ами) RS485 нужно только на стороне слейвов. - rezident(12.05.2021 12:54)
- А почему боль? На тиньке делаешь "шлюз", который по стороны малинки
имеет квитирование, а сам рулит 485, и все дела. - Evgeny_CD(12.05.2021 12:42)
- Не, шлюз должен быть посерьезнее, делить на 4-5 кластеров (сколько
контроллер поддержит), с какой-то мелкой статистикой, сервисом и
индикацией. - VLLV(12.05.2021 12:54)
- ATMEGA4809-AUR 4 UART, 1 SPI, 1 I2C. 100 - $1.32 склад DigiKey. Не
тинька, но ресурсов немало. - Evgeny_CD(12.05.2021 14:21)
- Но PIC18Q84 за счет встроенного DMA, большей памяти, большего числа интерфейсов более интересен как шлюз. - Evgeny_CD(12.05.2021 14:26)
- ATMEGA4809-AUR 4 UART, 1 SPI, 1 I2C. 100 - $1.32 склад DigiKey. Не
тинька, но ресурсов немало. - Evgeny_CD(12.05.2021 14:21)
- Не, шлюз должен быть посерьезнее, делить на 4-5 кластеров (сколько
контроллер поддержит), с какой-то мелкой статистикой, сервисом и
индикацией. - VLLV(12.05.2021 12:54)
- у imx6ull аж 8 уартов. Один на консоль, остальные свободны.
Подороже малинки, но зато фрискейл. - Andreas(12.05.2021 14:47)
- Не выбран еще. Скорее всего будет какой-то из фруктово-ягодных
одноплатников. Т.е от 0 до 2 кан и N*16550-compatible UART (т.е
RS485 = боль). В китайском прототипе малинка. - 3m(12.05.2021 12:34)
- Кто у тебя мастер? Обозначь его возможности - типы и количество
интерфейсов. Ну и скорости обмена прикинь за одно. - =AlexD=(12.05.2021 12:11)
- А это уже топикстартер должен определиться, на чем именно он
сэкономить желает: на стоимости проводов, на стоимости
интерфейсов/связи, или на объеме программирования? :) - rezident(12.05.2021 11:57)
- Всё равно он молчит как партизан, так что допустимы любые предположения. - =AlexD=(12.05.2021 12:05)
- Слэйвы предполагаются однотипные, в крайнем случае 2-3 типа. Можно
слэйвы делать скажем 2...4-канальные тогда число узлов на шине
сократится но вырастет количество проводов и сложность монтажа. И
субмодули придется цеплять уже на i2c что не радует. - 3m(12.05.2021 12:08)
- Причем я бы 4-проводный RS485 в протокол закладывал. Так можно
сократить паузы запрос-ответ и соответственно - весь цикл опроса. - rezident(12.05.2021 11:54)