реклама на сайте
подробности

 
 
> монтаж CAN шины в доме
typedef
сообщение Oct 23 2014, 12:01
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 41
Регистрация: 21-10-14
Пользователь №: 83 267



Всем привет!

принимайте новичка sm.gif
давно чесались руки попрограммировать микроконтроллеры, да все не было конкретной задачи.
Сейчас появилась - задача управления сервоприводами водяного теплого пола. Пока ничего особенного - в каждое помещение повесить датчик температуры, один-два уличных и на каждую гребенку по микроконтроллеру, который будет на основании показаний датчиков и заданной желаемой температуры рулить сервоприводами.

Поскольку опыта в этом деле нет пока никакого, посвятил неделю активному гуглению. Выкурил кучу инфы на русском и английском языке. Остановил свой выбор на CAN шине и микроконтроллерах STM32F103/105/107 или STM8a(s)207/208 + L9615/9616 в качестве трансивера.

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

Вобщем вопросы у меня такие:
1. Архитектура.
Например, взять этаж - 4 помещения, одна гребенка с четырьмя контурами теплого пола. Соотв. 4 датчика температуры, возможно 4 LCD с парой кнопок для отображения температуры и задания желаемой. Мне пока не ясно что из этого будет являтся узлом CAN-шины. Или на каждый датчик вешать контроллер и трансивер. Получится узел шины, котоорый будет пулять свои данные (и)или отвечать на запросы. Или один контроллер, который будет обслуживать несколько датчиков и сам же крутить сервопривода. Тогда вопрос как это все правильно соединить (1-Wire для датчиков)

2. Монтаж.
Далее, в зависимости от архитектуры, как все правильно расположить физически в стене и как и чем между собой соединить.

Понятно, что для такой простенькой задачи вроде как CAN и не нужен, но хочется развития, добавления новых сенсоров, контроллеров, и т.д. Да и просто интересно.

Если есть где-нибудь инфа, в которой можно найти ответы на эти вопросы - буду благодарен.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
AlexandrY
сообщение Oct 23 2014, 13:07
Сообщение #2


Ally
******

Группа: Модераторы
Сообщений: 6 232
Регистрация: 19-01-05
Пользователь №: 2 050



Цитата(typedef @ Oct 23 2014, 15:01) *
Если есть где-нибудь инфа, в которой можно найти ответы на эти вопросы - буду благодарен.


Здесь все проще чем может показаться.
Берете обычный UTP или STP кабель, каким Ethernet прокладывают, или просто витую пару (сечение не критично) и соединяете по цепочке от одного контроллера к другому последовательно все обходя.
Можно и не по цепочке и делать отростки звездой по несколько метров.
Главное не забыть терминаторный резистор 120 ом на одном из концов. Достаточно только на одном конце для такой короткой сети. Но надежнее будет чтобы стояло на обоих концах по резистору.

Скорость настроить не слишком высокую, напримет 100 кбит/c.

Архитектура выбирается по опыту, как проще программировать, соблюсти безопасность функционирования и требования быстродействия.

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

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

Например в нашей системе управления лифтом в отдельные CAN узлы превращены замки, модули подвсетки, контроллеры клавиатуры, считыватели iButton, контроллеры двигателя, контроллеры питания, контроллеры заряда аккумуляторов и т.д.

В вашем случае можно было бы сделать узел для 1-wire шины на который вешать по нескольку датчиков температуры и узел с LCD и кнопками. Для нескольких LCD применитить несколько узлов с LCD.
Кстати имеем контроллеры 1-Wire в CAN как раз сделаны на STM32
Прикрепленное изображение





Go to the top of the page
 
+Quote Post
typedef
сообщение Oct 23 2014, 15:39
Сообщение #3


Участник
*

Группа: Участник
Сообщений: 41
Регистрация: 21-10-14
Пользователь №: 83 267



Цитата(AlexandrY @ Oct 23 2014, 17:07) *
Здесь все проще чем может показаться.
Берете обычный UTP или STP кабель, каким Ethernet прокладывают, или просто витую пару (сечение не критично) и соединяете по цепочке от одного контроллера к другому последовательно все обходя.
Можно и не по цепочке и делать отростки звездой по несколько метров.
Главное не забыть терминаторный резистор 120 ом на одном из концов. Достаточно только на одном конце для такой короткой сети. Но надежнее будет чтобы стояло на обоих концах по резистору.


большое спасибо за ответ!
т.е. если я правильно понял Вашу мысль, то на одном этаже получается
- узел 1-Wire, на котором висят 4 температурных датчика (ну или больше, те что на этаже)
- по одному узлу на каждый LCD с кнопками
- узел, обслуживающий сервоприводы гребенки

тут у меня все равно остались вопросы по монтажу
1. получается что на каждом этаже будет своя 1-Wire сеть, кроме того одна общая CAN шина. Как это правильно делать? Витая пара для 1-Wire, обходящая все датчики + витая пара для CAN на весь дом?

2. Вы говорите, что CAN шину можно тянуть звездой с отростками. Тут имеется ввиду 4 провода из витой пары в сторону отростка и 4 оставшихся обратно или?

3. как уложить провода чтобы потом можно было сеть наращивать?
все таки для тупых, как узел соединяется с шиной? Где то видел вариант с RJ45 проходной розеткой, в которую патчкордом можно присоединять узлы. Т.е. получается разбрасываем равномерно по этажу розетки, потом по мере развития подключаемся или если возникла необходимость врезаться в шину, режем ее, вставляем тройник?

4. где обычно размещаются контроллеры? на одной плате с трансивером? на сколько далеко от шины?
Go to the top of the page
 
+Quote Post
Juray
сообщение Nov 17 2014, 12:04
Сообщение #4


Участник
*

Группа: Участник
Сообщений: 60
Регистрация: 19-03-06
Из: Йошкар-Ола
Пользователь №: 15 388



Цитата(typedef @ Oct 23 2014, 18:39) *
2. Вы говорите, что CAN шину можно тянуть звездой с отростками. Тут имеется ввиду 4 провода из витой пары в сторону отростка и 4 оставшихся обратно или?


Стандартная топология шины CAN - линия, от неё короткие ответвления на тройниках


на концах линии - нагрузочные резисторы общим сопротивлением 60 Ом.

максимально допустимая длина ответвлений зависит от скорости обмена (как и длина сегмента):




(взято из http://digital.ni.com/public.nsf/allkb/D5D...625795A000FC025 )

Если ответвления всё же надо делать длиннее, то каждое такое длинное ответвление должно терминироваться. При этом общее сопротивление всех нагрузочных резисторов в сегменте (фактически, соединенных параллельно) должно оставаться 60 Ом.

Также применяется чисто звездообразная топология, т.н. "Hub based" с одним соединением в центре, и длинными линиями до узлов. При этом нагрузочный резистор ставится один, в точке соединения:


(ну, резистор тут составной, такая схема уменьшает синфазные помехи)


Это из патента US5734658 фирмы Daimler-Benz.

Более того, возможно вот такое комбинирование:


В таком варианте методология прокладки сети та же, что и для Ethernet. Даже разъёмы можно использовать похожие - например, в CANopen используются RJ10, RJ11, RJ12


(подробнее - http://www.cd-systems.com/Can/can-cables.htm )
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- typedef   монтаж CAN шины в доме   Oct 23 2014, 12:01
|- - AlexandrY   Цитата(typedef @ Oct 23 2014, 18:39) т.е....   Oct 23 2014, 19:24
||- - typedef   Цитата(AlexandrY @ Oct 23 2014, 23:24) Да...   Oct 23 2014, 20:20
||- - AlexandrY   Цитата(typedef @ Oct 23 2014, 23:20) наря...   Oct 23 2014, 20:56
||- - typedef   Цитата(AlexandrY @ Oct 24 2014, 00:56) И ...   Oct 24 2014, 17:20
||- - _3m   Цитата(typedef @ Oct 24 2014, 21:20) у ме...   Oct 24 2014, 17:37
||- - typedef   сейчас пытаюсь найти подходящую отладочную плату д...   Oct 24 2014, 17:45
||- - AlexandrY   Цитата(typedef @ Oct 24 2014, 20:45) сейч...   Oct 24 2014, 19:45
||- - typedef   Цитата(AlexandrY @ Oct 24 2014, 23:45) CA...   Oct 24 2014, 21:29
||- - typedef   по ходу дела возникли еще вопросы по монтажу. Если...   Oct 26 2014, 16:39
||- - AlexandrY   Цитата(typedef @ Oct 26 2014, 18:39) по х...   Oct 26 2014, 18:43
- - ZASADA   это ничего, что на SMAJ28A может быть 45,4 В, а LM...   Oct 27 2014, 06:21
|- - AlexandrY   Цитата(ZASADA @ Oct 27 2014, 08:21) это н...   Oct 27 2014, 07:08
|- - typedef   ну вот среди спецов разногласия, что делать нам, д...   Oct 27 2014, 12:40
|- - AlexandrY   Цитата(typedef @ Oct 27 2014, 14:40) Вопр...   Oct 27 2014, 13:16
- - ZASADA   если бы я автоматизировал свой дом, то исходил бы ...   Oct 27 2014, 13:24
|- - typedef   Цитата(AlexandrY @ Oct 27 2014, 17:16) Во...   Oct 27 2014, 18:48
|- - AlexandrY   Цитата(typedef @ Oct 27 2014, 20:48) вот ...   Oct 28 2014, 08:49
|- - typedef   Цитата(AlexandrY @ Oct 28 2014, 12:49) Та...   Oct 28 2014, 09:09
|- - AlexandrY   Цитата(typedef @ Oct 28 2014, 11:09) а ка...   Oct 28 2014, 09:45
- - ZASADA   реле   Oct 28 2014, 08:28
|- - typedef   Цитата(ZASADA @ Oct 28 2014, 12:28) реле ...   Oct 29 2014, 20:54
|- - AlexandrY   Цитата(typedef @ Oct 29 2014, 22:54) наше...   Oct 29 2014, 21:32
|- - typedef   Цитата(AlexandrY @ Oct 30 2014, 01:32) С ...   Oct 29 2014, 21:48
- - typedef   в очередной раз задумался над архитектурой сети и ...   Nov 13 2014, 19:36
|- - AlexandrY   Цитата(typedef @ Nov 13 2014, 21:36) 1. н...   Nov 13 2014, 19:58
|- - typedef   Цитата(AlexandrY @ Nov 13 2014, 22:58) В ...   Nov 13 2014, 20:04
|- - AlexandrY   Цитата(typedef @ Nov 13 2014, 22:04) ну д...   Nov 13 2014, 21:52
|- - typedef   Цитата(AlexandrY @ Nov 14 2014, 00:52) Ни...   Nov 14 2014, 13:01
|- - AlexandrY   Цитата(typedef @ Nov 14 2014, 15:01) Вот ...   Nov 14 2014, 14:30
- - ZASADA   если нормально все продумать, то никакие ответвлен...   Nov 18 2014, 06:51
|- - typedef   Цитата(ZASADA @ Nov 18 2014, 09:51) если ...   Nov 23 2014, 11:09
|- - ZASADA   Цитата(typedef @ Nov 23 2014, 14:09) а мо...   Nov 23 2014, 15:32
|- - typedef   Цитата(ZASADA @ Nov 23 2014, 18:32) этому...   Nov 23 2014, 16:56
- - ZASADA   рандомная схема из гугла. в параллель стоят 2 DB-9...   Nov 23 2014, 17:44
- - Cвинец   Как продвигается? Если это не была шутка про ...   Jan 7 2015, 18:29
|- - typedef   Цитата(Cвинец @ Jan 7 2015, 21:29) Как пр...   Jan 7 2015, 19:33
|- - Cвинец   Цитата(typedef @ Jan 7 2015, 19:33) По по...   Jan 8 2015, 06:44
|- - typedef   Цитата(Cвинец @ Jan 8 2015, 09:44) Если э...   Jan 8 2015, 13:40
- - Cвинец   Если не интересно порисовать свои платы, то купить...   Jan 13 2015, 14:54
|- - typedef   Цитата(Cвинец @ Jan 13 2015, 17:54) Если ...   Jan 13 2015, 16:31
|- - adnega   Цитата(typedef @ Jan 13 2015, 20:31) но в...   Jan 13 2015, 19:50
|- - typedef   Цитата(adnega @ Jan 13 2015, 22:50) Все м...   Jan 14 2015, 17:28
|- - A. Fig Lee   Цитата(typedef @ Jan 14 2015, 12:28) когд...   Jan 14 2015, 17:36
||- - typedef   Цитата(A. Fig Lee @ Jan 14 2015, 20:36) А...   Jan 14 2015, 18:15
||- - A. Fig Lee   Цитата(typedef @ Jan 14 2015, 13:15) а Вы...   Jan 14 2015, 18:22
||- - typedef   Цитата(A. Fig Lee @ Jan 14 2015, 21:22) A...   Jan 14 2015, 20:41
||- - A. Fig Lee   Цитата(typedef @ Jan 14 2015, 15:41) пыта...   Jan 14 2015, 21:02
||- - typedef   Цитата(A. Fig Lee @ Jan 15 2015, 00:02) Д...   Jan 14 2015, 21:41
|||- - A. Fig Lee   Цитата(typedef @ Jan 14 2015, 16:41) в CA...   Jan 15 2015, 03:27
||- - AlexandrY   Цитата(A. Fig Lee @ Jan 14 2015, 23:02) Д...   Jan 15 2015, 06:11
||- - typedef   Цитата(AlexandrY @ Jan 15 2015, 09:11) Не...   Jan 15 2015, 08:12
|||- - adnega   Цитата(typedef @ Jan 15 2015, 12:12) все ...   Jan 15 2015, 10:08
|||- - typedef   Цитата(adnega @ Jan 15 2015, 13:08) Я на ...   Jan 15 2015, 10:31
|||- - adnega   Цитата(typedef @ Jan 15 2015, 14:31) у ме...   Jan 15 2015, 11:10
|||- - Cвинец   Цитата(typedef @ Jan 15 2015, 10:31) возм...   Jan 16 2015, 17:12
|||- - typedef   Цитата(Cвинец @ Jan 16 2015, 20:12) Непон...   Jan 16 2015, 17:32
||||- - Cвинец   Цитата(typedef @ Jan 16 2015, 17:32) Если...   Jan 17 2015, 04:08
||||- - typedef   Цитата(Cвинец @ Jan 17 2015, 07:08) Если ...   Jan 18 2015, 09:52
|||- - adnega   Цитата(Cвинец @ Jan 16 2015, 20:12) Если ...   Jan 16 2015, 22:57
||- - A. Fig Lee   Цитата(AlexandrY @ Jan 15 2015, 01:11) Не...   Jan 15 2015, 12:14
||- - AlexandrY   Цитата(A. Fig Lee @ Jan 15 2015, 14:14) Н...   Jan 15 2015, 13:19
||- - A. Fig Lee   Цитата(AlexandrY @ Jan 15 2015, 08:19) С ...   Jan 15 2015, 13:32
||- - AlexandrY   Цитата(A. Fig Lee @ Jan 15 2015, 15:32) П...   Jan 15 2015, 13:47
||- - A. Fig Lee   Цитата(AlexandrY @ Jan 15 2015, 08:47) Zi...   Jan 15 2015, 14:22
|- - Ruslan1   Цитата(typedef @ Jan 14 2015, 19:28) Инте...   Jan 14 2015, 17:43
|- - =AK=   Цитата(Ruslan1 @ Jan 15 2015, 04:13) Я во...   Jan 26 2015, 10:44
|- - A. Fig Lee   Цитата(=AK= @ Jan 26 2015, 05:44) Проводн...   Jan 26 2015, 14:40
|- - AlexandrY   Цитата(A. Fig Lee @ Jan 26 2015, 16:40) Д...   Jan 26 2015, 14:55
||- - typedef   Цитата(AlexandrY @ Jan 26 2015, 17:55) Да...   Jan 26 2015, 17:11
|- - =AK=   Цитата(A. Fig Lee @ Jan 27 2015, 01:10) Д...   Jan 26 2015, 22:57
|- - A. Fig Lee   Цитата(=AK= @ Jan 26 2015, 17:57) Проблем...   Jan 27 2015, 02:25
- - A. Fig Lee   А зачем CAN с проводами? Если есть беспроводные 80...   Jan 13 2015, 19:33
- - adnega   Если есть возможность кинуть провода, то кидайте и...   Jan 14 2015, 21:10
- - A. Fig Lee   По моему чем более планы наполеоновские, тем менее...   Jan 17 2015, 01:27
- - adnega   Цитата(A. Fig Lee @ Jan 17 2015, 04:27) П...   Jan 17 2015, 08:35
- - KARLSON   По мне, так чем стандартней, тем лучше. Странно, ч...   Jan 27 2015, 05:31
|- - =AK=   Цитата(KARLSON @ Jan 27 2015, 16:01) По м...   Jan 27 2015, 11:37
- - typedef   прошелся я еще раз по дому, попротягивал мысленно ...   Jan 28 2015, 10:08
|- - =AK=   Цитата(typedef @ Jan 28 2015, 20:38) Не б...   Jan 28 2015, 12:49
|- - AlexandrY   Цитата(=AK= @ Jan 28 2015, 14:49) Так что...   Jan 28 2015, 13:52
|- - A. Fig Lee   Цитата(AlexandrY @ Jan 28 2015, 08:52) Пр...   Jan 28 2015, 14:27
|- - =AK=   Цитата(AlexandrY @ Jan 29 2015, 00:22) У ...   Jan 28 2015, 23:21
- - A. Fig Lee   Кстати, о дальности передачи. Artaflex модули клей...   Jan 28 2015, 12:09
- - A. Fig Lee   А какая связь: батарейки и вайрлесс? Речь шла о ка...   Jan 29 2015, 02:19
- - =AK=   Цитата(A. Fig Lee @ Jan 29 2015, 12:49) А...   Jan 29 2015, 03:56
- - typedef   Цитата(=AK= @ Jan 29 2015, 06:56) Элемент...   Jan 29 2015, 06:42
|- - =AK=   Цитата(typedef @ Jan 29 2015, 17:12) Найт...   Jan 29 2015, 07:42
||- - typedef   Цитата(=AK= @ Jan 29 2015, 10:42) Я не ор...   Jan 29 2015, 09:06
||- - AlexandrY   Цитата(typedef @ Jan 29 2015, 11:06) ну я...   Jan 29 2015, 09:15
|||- - typedef   Цитата(AlexandrY @ Jan 29 2015, 12:15) Ну...   Jan 29 2015, 09:22
||- - =AK=   Цитата(typedef @ Jan 29 2015, 19:36) стоя...   Jan 29 2015, 09:33
||- - typedef   Цитата(=AK= @ Jan 29 2015, 12:33) У меня ...   Jan 29 2015, 10:16
|||- - ZASADA   Цитата(typedef @ Jan 29 2015, 13:16) я ду...   Jan 29 2015, 12:41
||- - AlexandrY   Цитата(=AK= @ Jan 29 2015, 11:33) Это он ...   Jan 29 2015, 12:25
|- - ZASADA   Цитата(typedef @ Jan 29 2015, 09:42) ну п...   Jan 29 2015, 09:45
- - A. Fig Lee   Цитата(=AK= @ Jan 28 2015, 22:56) Элемент...   Jan 29 2015, 13:08
2 страниц V   1 2 >


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 22nd July 2025 - 04:05
Рейтинг@Mail.ru


Страница сгенерированна за 0.01573 секунд с 7
ELECTRONIX ©2004-2016