Jump to content

    

1000 устройств CAN в сети

4 часа назад, Алексей Васильевич сказал:

Соединение устройств производится общим плоским НЕ экранированным кабелем 0.5мм2 x4 жилы без разрыва в районе устройств.

Забудьте, и даже не пытайтесь.

Share this post


Link to post
Share on other sites
8 часов назад, syoma сказал:

И напишу. Я и не предлагал отказаться от репитеров, или тех же каплеров, как их называют. Да, сеть надо делить на сегменты по 50-60 узлов. Между сегментами ставятся репитеры, задачей которых будет принимать сообщения с одной сети, буферизировать и слать в другой.

Каким образом сигнал (доминантные и рецессивные состояния) будет распространяться через эти самые репитеры? Во все сегменты туда и обратно.

Нужно ли на этих репитерах прописывать CAN-идентификаторы целевых узлов?  Каким образом это делается для идентификаторов некоторого сегмента?

Например: есть цепочка сегментов A-B-C; нужно ли и как прописывать идентификаторы находящиеся в сегменте B на репитерах AB и BC?

Share this post


Link to post
Share on other sites

Вот, кстати, к вопросу о CAN-шлюзе. У меня тоже на работе есть такая задача: разделить длинную (почти на пределе для 250кБод) линию на пару-тройку сегментов при помощи активных повторителей (заодно можно при помощи фильтрации идентификаторов освободить сегменты от лишних сообщений). Но вот что-то не нашел ни одного STM32Fxxx, где было бы два полноценных раздельных CAN'а (пишут, что у 4xx CAN2 "неполноценный"). Ну, в принципе, можно и на паре STM32F042 такое замутить, связав их между собой UART'ами на трех мегабодах. Зато можно сделать опторазвязку каждого сегмента при помощи дешевых ISO1050...

Но все-таки, может кто-то подобное делал на одном камне?

Share this post


Link to post
Share on other sites
3 минуты назад, Eddy_Em сказал:

Но все-таки, может кто-то подобное делал на одном камне?

И делали и делаем: XMC4xxx. Если на STM32 и кубе свет клином не сошёлся....

Share this post


Link to post
Share on other sites
20 minutes ago, jcxz said:

И делали и делаем: XMC4xxx

Cortex-M4? Вот уж с чем не хочется связываться, так с такими монстрами, еще и от чуждого производителя... У ST хотя бы регистры примерно так же называются, а МК другого изготовителя - это минимум месяца три развлечений с даташитом и RM, пока все нужные потроха изучишь (да еще и надо же нормальный стартап сделать, линкер-скрипт написать, заголовочные файлы с описанием регистров где-то раздобыть)!..

А покупать-то их где? Я на алиэкспрессе что-то не вижу XMC4700/4800 ценой по паре баксов за штучку. Ну, пусть даже будет три бакса...

Share this post


Link to post
Share on other sites
4 hours ago, Eddy_Em said:

еще и от чуждого производителя...

А вы с ST "кореша"?)))))))))))) Да и МК подбирается под задачу, а не задача ужимается к МК...

4 hours ago, Eddy_Em said:

МК другого изготовителя - это минимум месяца три развлечений с даташитом и RM

Не обязательно. Все МК примерно похожи на друг друга. А с какими-то особенностями конкретной архитектуры можно залипнуть и на "любимом" МК. У меня так было с LPC4337.

4 hours ago, Eddy_Em said:

Я на алиэкспрессе что-то не вижу XMC4700/4800 ценой по паре баксов за штучку

Кстати, вы не боитесь на али брать такие ответсвенные детали?

Share this post


Link to post
Share on other sites

Вопросы:

17 hours ago, Алексей Васильевич said:

Соединение устройств производится общим плоским НЕ экранированным кабелем 0.5мм2 x4 жилы без разрыва в районе устройств. 

Это серьезное требование? Т.е. на складе нет всяких электропогрузчиков, кранов, токо-коммутационных устройств, моторов, частотников, электролюминисцентных ламп, которые могут запороть этот вид кабеля на корню?  Общая длина кабеля до 2км?

17 hours ago, Алексей Васильевич said:

При нажатии кнопки на устройстве (не более 10 нажатий в секунду) оно отправляет с высоким приоритетом команду на другое устройство с подтверждением доставки.

Приемником может быть любое устройство из 1000-и или только в пределах одного сегмента?

17 hours ago, Алексей Васильевич said:

Важна скорость отклика устройств и гарантия передачи данных между устройствами. Любая одна ошибка несет за собой финансовые потери.

Ошибка или недоставка данных? Насколько критично время отклика?

Share this post


Link to post
Share on other sites
7 hours ago, haker_fox said:

МК подбирается под задачу

Правильно, но МК выбирается обычно из той линейки, на которую уже имеешь уйму сниппетов!

7 hours ago, haker_fox said:

Все МК примерно похожи на друг друга

Ну, скажем, на 8051 лично мне будет трудно перейти. Я пробовал было с MSP430 поработать, но оказалось, что а) нужен какой-то дорогущий программатор и б) фактически нужно самому допиливать софт для работы с этим программатором. С китайскими 8051 тоже не проканало: купил на пробу пяток, но с бутлоадером не разобрался (чужой софт с гитхаба не прошивал МК, а переделывать его согласно документации на китайском мне было откровенно лень).

С ARMянами то же: там ведь только ядро общее, а периферия отличается очень сильно.

7 hours ago, haker_fox said:

вы не боитесь на али брать такие ответсвенные детали?

Совершенно не боюсь. В крайнем случае могу в "элсине" закупиться по цене в три раза выше. Но все равно я считаю, что микроконтроллер за 10 баксов — это уже дичайший перебор!

Edited by Eddy_Em

Share this post


Link to post
Share on other sites
2 hours ago, syoma said:

Это серьезное требование? Т.е. на складе нет всяких электропогрузчиков, кранов, токо-коммутационных устройств, моторов, частотников, электролюминисцентных ламп, которые могут запороть этот вид кабеля на корню?  Общая длина кабеля до 2км?

А я человека понимаю.
Если это какой либо стеллаж , то разделка  экранированного кабеля будет  более трудоемкой по сравнению с зажимом плоского кабеля.
Тем более что некоторые производители PLC предлагают такие решения и не бояться. 
Допустим в нашей сфере подъемного оборудования много клиентов не смотрят на фичи, а смотрят только на то насколько долго и трудно делать монтаж. 
Поэтому и выбран CAN. Помехи и нарушение связи  неизбежны, но кратковременны. 
Если процессоры каплеров не будут виснуть, то будет работать идеально. Каплеры должны быть в металлических корпусах обязательно.   
    

Share this post


Link to post
Share on other sites
3 minutes ago, AlexandrY said:

А я человека понимаю.

Я человека тоже понимаю. Но понимает ли он, что это выдвинет более серьезные требования по выбору CAN-трансиверов и их EMC - защите?

Share this post


Link to post
Share on other sites

Если скорость снизить до десятков или единиц бод, то должно и на "лапше" работать. Но, понятное дело, все же лучше экранированную витуху использовать. Вот мы к энкодеру на телескопе проложили обычную витую пару, получили синфазную помеху амплитудой 5-7В! А в экранированном кабеле амплитуда этой помехи намного меньше.

Share this post


Link to post
Share on other sites
2 minutes ago, syoma said:

Я человека тоже понимаю. Но понимает ли он, что это выдвинет более серьезные требования по выбору CAN-трансиверов и их EMC - защите?

Ну какие это требования?
Я так думаю что железный корпус и подвод надежного заземления будет самым суровым требованием, дальше мелочи.  
Там супрессоры и все такое - стандартно.
Единственно монтаж и обслуживание облегчила бы  возможность дистанционно включать и выключать терминаторы на узлах.
Эт поднимет цену узлов существенно.
Мы экономим на этом, но и монтажники не сразу догадываются на что они попали когда выясняется как надо бегать туда сюда чтобы переключить терминаторы во время ремонта узлов и изменения топологии шины.  
 

Share this post


Link to post
Share on other sites
2 часа назад, syoma сказал:

Это серьезное требование? Т.е. на складе нет всяких электропогрузчиков, кранов, токо-коммутационных устройств, моторов, частотников, электролюминисцентных ламп, которые могут запороть этот вид кабеля на корню?  Общая длина кабеля до 2км?

Один из принципиальных моментов один физический кабель. Плоский 0.5х4 оптимальный как по цене , так и по питанию так-же он не будет иметь разрывов и разъемов , за исключением репитеров.

Рассматриваю размещение провода в алюминиевом П-образном коробе, отрезки линий между репитерами  будут иметь длину до 200м, этот параметр можно уменьшить до любого значения , но пладить репиторы нет особого смысла.

2 часа назад, syoma сказал:

Приемником может быть любое устройство из 1000-и или только в пределах одного сегмента?

По требованию , от любого к любому короткая быстрая команда. В случае отсутствия такой возможности, можно посылать "через одну из центральных плат" , но это уменьшит скорость. 

2 часа назад, syoma сказал:

Ошибка или недоставка данных? Насколько критично время отклика?

Критическим является недоставка данных, которая полностью останавливает БЕЗВОЗВРАТНЫЙ процесс , количество ошибок и алгоритм обработки при гарантированной доставке не критичны. 

Комфортным для работы считается время отклика не более 0.5с , отклик более 1с - не комфортная работа, но кратковременно допустимое значение.

-------------------

Насколько импульсивные преобразователе 30v->5v в каждом модули будут влиять на работу сети , и как можно минимизировать это влияние? 

Share this post


Link to post
Share on other sites
44 minutes ago, Eddy_Em said:

но МК выбирается обычно из той линейки, на которую уже имеешь уйму сниппетов!

Дело вкуса, но я всегда думал, что железо микроконроллера должно суметь решить задачу. Ну например, можно для авр иметь кучу "сниппетов", но обработать звук на уровне какого-нить даже арма он не сможет никогда...

18 minutes ago, Eddy_Em said:

Если скорость снизить до десятков или единиц бод

Тогда снова, ИМХО, проще RS-485.

Share this post


Link to post
Share on other sites
23 минуты назад, syoma сказал:

Я человека тоже понимаю. Но понимает ли он, что это выдвинет более серьезные требования по выбору CAN-трансиверов и их EMC - защите?

Трансирверов будет не так много 1 на 50-100 устройств , и в целом на стоимость системы влияет не сильно, проще сразу ставить на хороших комплектующих или купить уже готовые от проверенных производителей. 

Share this post


Link to post
Share on other sites
Guest
This topic is now closed to further replies.