Eddy_Em 1 16 января, 2020 Опубликовано 16 января, 2020 (изменено) · Жалоба 7 minutes ago, haker_fox said: ИМХО, проще RS-485 Не проще, т.к. там нет аппаратного контроля. CAN в этом случае - единственное простое решение. А с RS-485 самому придется придумывать протокол контроля целостности передачи данных. Кому оно надо? Подобные идио идеологи придумали в свое время самый говенейший протокол - модбас. И абдуринщики до сих пор с ним мучаются (но им не привыкать: у них и вместо микроконтроллеров помет мамонта используется)... В случае CAN-шины топология будет достаточно простой: порядка 10-20 активных шлюзов на общей шине, на каждом шлюзе сидит 50-100 устройств на своей шине (шлюз может быть подключен в любой точке этой шины). Если нужно еще более древовидную топологию сделать, то в подшинах добавляем еще шлюзы и ветвим структуру. Изменено 16 января, 2020 пользователем Eddy_Em Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
haker_fox 61 16 января, 2020 Опубликовано 16 января, 2020 · Жалоба 2 minutes ago, Eddy_Em said: Не проще, т.к. там нет аппаратного контроля. Да, нет. Зато есть полная свобода в написании своего протокола. И 1000 устройств, думаю, можно посадить на шину. 2 minutes ago, Eddy_Em said: Кому оно надо? Ну, например, автору топика. 3 minutes ago, Eddy_Em said: самый говенейший протокол - модбас. Это одно из серьёзных заблуждений. Модбас дополнительно обеспечивает помехоустойчивость протокола, используя особенности физика фиттера. Подбробнее можете найти объяснения от уважаемого @=AK=. 4 minutes ago, Eddy_Em said: И абдуринщики до сих пор с ним мучаются С такими не знаком. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
syoma 1 16 января, 2020 Опубликовано 16 января, 2020 · Жалоба 10 minutes ago, AlexandrY said: Единственно монтаж и обслуживание облегчила бы возможность дистанционно включать и выключать терминаторы на узлах. Так можно же терминатор отдельно от узлов сделать и не заморачиваться с этим. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Eddy_Em 1 16 января, 2020 Опубликовано 16 января, 2020 · Жалоба 4 minutes ago, haker_fox said: С такими не знаком Да ладно! Их уйма на любом радиоэлектронном форуме. Одни с абдуриной дурью маются, другие на STM32 калокуб натягивают... Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
syoma 1 16 января, 2020 Опубликовано 16 января, 2020 · Жалоба 28 minutes ago, Алексей Васильевич said: Трансирверов будет не так много 1 на 50-100 устройств , и в целом на стоимость системы влияет не сильно, проще сразу ставить на хороших комплектующих или купить уже готовые от проверенных производителей. Вы имели ввиду репитеры/каплеры? Так как трансиверов вам надо будет столько же, сколько у вас и узлов. По одному на каждый. И на стоимость это будет влиять. сильно. В принципе, как вы уже сказали, в качестве репитеров/каплеров по крайней мере для первых проектов, надо взять готовые. Например https://www.ixxat.com/products/products-industrial. За одно узнаете как они работают. А потом уже будете сами смотреть, придумывать свои или нет. По кабелю может стоит поискать такой же, но с витой парой хотя бы. Его разделывать тоже не так сложно. По итогам ваших требований, пока я не вижу проблем с использованием CAN, даже на весьма низких скоростях. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
HardEgor 76 16 января, 2020 Опубликовано 16 января, 2020 · Жалоба 27 минут назад, Алексей Васильевич сказал: Один из принципиальных моментов один физический кабель. Плоский 0.5х4 оптимальный как по цене , так и по питанию так-же он не будет иметь разрывов и разъемов , за исключением репитеров. Лучше уж тогда качественную экранированную витую пару Ethernet взять, его хотя бы можно на кроновские контакты расшить. 27 минут назад, Алексей Васильевич сказал: Критическим является недоставка данных, которая полностью останавливает БЕЗВОЗВРАТНЫЙ процесс , количество ошибок и алгоритм обработки при гарантированной доставке не критичны. Комфортным для работы считается время отклика не более 0.5с , отклик более 1с - не комфортная работа, но кратковременно допустимое значение. Тогда уж лучше на каждый 50 устройств делать отдельную сеть, т.е. ставить умный контроллер с подключением к компьютеру по Ethernet (а если расстояния большие, то по оптике) - это будет более надежным и быстрым, чем построение единой сети на 1000 устройств, пусть даже с репитерами и сегментами. 39 минут назад, Алексей Васильевич сказал: Насколько импульсивные преобразователе 30v->5v в каждом модули будут влиять на работу сети , и как можно минимизировать это влияние? Если качественные, то почти никак, а если самые дешёвые - то плохо влиять будут. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Алексей Васильевич 0 16 января, 2020 Опубликовано 16 января, 2020 · Жалоба 3 минуты назад, HardEgor сказал: Лучше уж тогда качественную экранированную витую пару Ethernet взять, его хотя бы можно на кроновские контакты расшить. Как выглядят эти контакты ? впервые слышу про контакты для витой пары без разрыва провода. Как разводить экран на 1000 устройств ? и сколько жил нужно для питания? 13 минут назад, HardEgor сказал: Тогда уж лучше на каждый 50 устройств делать отдельную сеть, т.е. ставить умный контроллер с подключением к компьютеру по Ethernet (а если расстояния большие, то по оптике) - это будет более надежным и быстрым, чем построение единой сети на 1000 устройств, пусть даже с репитерами и сегментами. Второй кабель не допустим , 20 необходимых для прокладки к свичу немыслимо в данной конструкции. Вы считаете конвертирование CAN-LAN-CAN будет быстрее CAN-CAN ? 24 минуты назад, syoma сказал: По итогам ваших требований, пока я не вижу проблем с использованием CAN, даже на весьма низких скоростях. какую скорость вы считаете оптимальной? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Eddy_Em 1 16 января, 2020 Опубликовано 16 января, 2020 · Жалоба 15 minutes ago, Алексей Васильевич said: впервые слышу про контакты для витой пары без разрыва провода А зачем без разрыва? На своих железяках мы два типа разъемов практикуем: или стандартные "телефонные" (в зависимости от количества контактов - от RJ11 до RJ45), или DB9 (если нужно понадежней + питание по тому же кабелю передавать). 16 minutes ago, Алексей Васильевич said: Как разводить экран на 1000 устройств ? Вот тут - да, с заземлением повозиться придется... Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
HardEgor 76 16 января, 2020 Опубликовано 16 января, 2020 · Жалоба 52 минуты назад, Алексей Васильевич сказал: Как выглядят эти контакты ? впервые слышу про контакты для витой пары без разрыва провода. Как разводить экран на 1000 устройств ? и сколько жил нужно для питания? На плату вот такие https://ru.farnell.com/krone/6048-1-001-03/terminal-block-idc-3way/dp/1207121 Можно и китайские найти. Экран как обычно - болтиком :) Но можно и пайкой. Другие варианты не рекомендуются. 56 минут назад, Алексей Васильевич сказал: Второй кабель не допустим , 20 необходимых для прокладки к свичу немыслимо в данной конструкции. Вы считаете конвертирование CAN-LAN-CAN будет быстрее CAN-CAN ? Зачем так конвертировать? Я предполагаю что у вас все данные собираются в компьютере программой, вот и собирать их через Ethernet. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 16 января, 2020 Опубликовано 16 января, 2020 · Жалоба 1 hour ago, syoma said: В принципе, как вы уже сказали, в качестве репитеров/каплеров по крайней мере для первых проектов, надо взять готовые. Например https://www.ixxat.com/products/products-industrial. За одно узнаете как они работают. Ну сами репитеры ixxat я бы не брал, цены у них неадекватные, но вот трансиверы которые они применяют - MCP2562FD вещь хорошая. Ставить надо их. А вот бриджы у ixxat сделаны на SN65HVD251 , и это я бы не ставил. Смотрим что они сделаны на16-и битных Fujitsu MB90F543. Но это конечно же морально устарело. Я бы предложил Renesas Synergy (просьба всяких с ником x123-xxxx это не читать) , там есть два независимых CAN контроллера с 32 с майлбоксами в каждом. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 235 16 января, 2020 Опубликовано 16 января, 2020 · Жалоба 11 часов назад, haker_fox сказал: А вы с ST "кореша"?)))))))))))) Да и МК подбирается под задачу, а не задача ужимается к МК... Видимо наш религиозный товарищ конкретно подсел на иглу STM32+калокуб и не может слезть. 3 месяца на изучение только системы тактирования + CAN??? Столько может понадобиться разве что совсем новичку в embedded. Вот и проговорился товарищ о своём уровне владения предметом... Через 2 месяца от начала изучения XMC4xxx с нуля у меня уже свой TCP-стек на нём работал. Не говоря уже о всяких UART и прочей мелочи. 3 часа назад, Eddy_Em сказал: Ну, скажем, на 8051 лично мне будет трудно перейти. Я пробовал было с MSP430 поработать, но оказалось, что а) нужен какой-то дорогущий программатор и б) фактически нужно самому допиливать софт для работы с этим программатором. И a) - неправда и б) - тоже. Зачем говорите о том, чего не знаете? Делал проект на MSP430. "Дорогущий программатор" не понадобился - использовал бесплатный отладочный набор (MSP-EXP430FR5739). Никакой софт не "допиливал" - IAR сразу нормально с ним работал, и примеры есть. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
jcxz 235 16 января, 2020 Опубликовано 16 января, 2020 · Жалоба 48 минут назад, AlexandrY сказал: Я бы предложил Renesas Synergy (просьба всяких с ником x123-xxxx это не читать) , 48 минут назад, AlexandrY сказал: там есть два независимых CAN контроллера с 32 с майлбоксами в каждом. XMC4700/4800 имеет до 6-и (!) независимых CAN-узлов. А уж message-object-ов там - мама не горюй! 256 шт. как с куста! Сорри, за то что испортил рекламный ролик Renesas Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Eddy_Em 1 16 января, 2020 Опубликовано 16 января, 2020 (изменено) · Жалоба 43 minutes ago, jcxz said: Через 2 месяца от начала изучения XMC4xxx с нуля у меня уже свой TCP-стек на нём работал Ты ври-то, да не завирайся! "Свой" — в смысле взял и прикрутил LWip? Ну-ну... Я до TCP так и не добрался еще: не хочу использовать LWip, а свое писать - слишком долго. Ну, а вообще к тем же STM32 я привыкал около пяти лет: сначала выбрал SPL. Через полгода оказалось, что это в корне неправильное решение. Перешел на opencm3. К нему привыкал около полугода, накапливал сниппеты, клепал новые железки. Потом в очередной раз авторы убили API opencm3 и я решил выкинуть к чертовой матери все эти говнолибы и пользоваться чистым baremetal. С тех пор накапливаю сниппеты на STM32F0 и STM32F1. С STM8 все было намного проще: он значительно легче изучается, да и RM на 4 сотни страниц проще два-три раза прочитать, чем RM на тысячу с лишним страниц. Правда, плохо, что порта gcc для него нет, пришлось sdcc использовать. 43 minutes ago, jcxz said: IAR сразу нормально с ним работал Я не пользуюсь проприетарным дерьмом! Изменено 16 января, 2020 пользователем Eddy_Em Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
_pv 71 16 января, 2020 Опубликовано 16 января, 2020 · Жалоба 11 minutes ago, Eddy_Em said: Я не пользуюсь проприетарным дерьмом! родной тексасовский CCS вроде как свой немного допиленный gcc в качестве компилятора использовать может. ну и как-то странно что весь из себя открытый и свободный, поддерживаемый криворуким "community" mspgcc через задницу работает и программатор приходится напильником дорабатывать, а дерьмо при этом IAR :) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AlexandrY 3 16 января, 2020 Опубликовано 16 января, 2020 · Жалоба 43 minutes ago, jcxz said: XMC4700/4800 имеет до 6-и (!) независимых CAN-узлов. А уж message-object-ов там - мама не горюй! 256 шт. как с куста! Сорри, за то что испортил рекламный ролик Renesas Да ничего против, я ж за объективность. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться