|
CAN over DC, Использование проводов питания для CAN |
|
|
|
Mar 3 2018, 23:59
|
Участник

Группа: Участник
Сообщений: 39
Регистрация: 14-01-18
Пользователь №: 101 066

|
Есть некий девайс, к которому, кроме питания (24-48V DC), очень трудно что-то подвести. На девайсе сервопривод, которым нужно управлять в реальном времени. Токи по питанию могут быть до 20А. Можно ли и сложно ли подключить CAN по этим же проводникам?
|
|
|
|
3 страниц
1 2 3 >
|
 |
Ответов
(1 - 30)
|
Mar 4 2018, 08:05
|
Гуру
     
Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702

|
Цитата(novikovfb @ Mar 4 2018, 09:09)  Для начала стоит прочитать стандарт CAN хотя бы в части физической линии. И где же в стандарте говориться про физический уровень? Я прочитал, что Цитата The Physical Layer defines how signals are actually transmitted. Within this specification the physical layer is not defined so as to allow transmission medium and signal level implementations to be optimized for their application. т.е. в стандарте физический уровень не описывается. Для работы CAN нужно в среде создать два состояния: доминантное и рецессивное, каждое со своими свойствами. Как это сделать - зависит от задачи. Конкретно для этой задачи вряд ли есть стандартное решение или простое решение. Проще передавать по какой-нить powerline-технологии и сделать CAN-шлюзы под данную технологию - тут я с novikovfb согласен. Делать свое powerline-решение под требования CAN я бы не советовал (уж слишком нагрузка у вас непростая).
|
|
|
|
|
Mar 4 2018, 12:57
|
Участник

Группа: Участник
Сообщений: 39
Регистрация: 14-01-18
Пользователь №: 101 066

|
Понятно, что нужна доработка. Вопрос - какая? Общая информация нагугливается без труда. Ясно, что в теории это возможно, и даже стандарт есть. Но примеров практических реализаций не нашёл. Интересен опыт участников форума, т.к. я не профессионал в электронике и встраиваемых системах.
Сообщение отредактировал baritono - Mar 4 2018, 12:59
|
|
|
|
|
Mar 4 2018, 13:07
|

Просто Che
    
Группа: Свой
Сообщений: 1 567
Регистрация: 22-05-07
Из: ExUSSR
Пользователь №: 27 881

|
Цитата(baritono @ Mar 4 2018, 01:59)  кроме питания (24-48V DC), очень трудно что-то подвести. В целом видится, что если просто "очень трудно", то все-таки возможно. И имхо, это будет проще, чем надежно передавать данные на фоне импульсов тока по 20 А з.ы. еще мысль: если расстояние мало, возможно будет проще передавать данные по радиоканалу. Но его можно заглушить извне, это минус.
|
|
|
|
|
Mar 4 2018, 14:06
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(adnega @ Mar 4 2018, 10:05)  Делать свое powerline-решение под требования CAN я бы не советовал (уж слишком нагрузка у вас непростая). А что тут непростого? Имхо - как раз самая простая. DC ведь! Сделать простейший модем и передавать по ВЧ, развязав с питанием фильтрами. Если ВЧ-помех в линии нет, то всё получится очень просто. А от помех можно отстроиться по частоте например. А самый колхозный путь (если нужно только передавать управление, а обратный канал не нужен): на передатчике поставить 2 пары мощных ключей и коммутировать ими на питание устройства или положительное или отрицательное питание; на приёмнике по питанию поставить 2-х полупериодный выпрямитель; а вот управлять состояниями ключей - от передатчика с любой удобной модуляцией, например - ШИМ или ЧИМ или ...просто UART  и приёмник получится простым: отрицательное питание == "0", положительное == "1" - хоть напрямую к UART-у цепляй  Такую схему и программу даже школьник осилит. Да и обратный канал можно сюда прикрутить - без ВЧ-модуляции (устройство A - источник питания, устройство Б - приёмник питания). Например: каждый фронт питания (переключения с отрицательного на положительное питание) в устройстве Б заводим на SCLK SPI, Б-ведомое, Б-устройство выдвигает очередной бит по каждому фронту SCLK, выход MISO устройства Б в зависимости от значения бита включает подтяжку линии питания или к "0" или к "1", по спаду питания (переключения с положительного на отрицательное питание), устройство Б вводит кратковременный dead-time в ключ управляющий питанием (верхний и нижний ключ оба выключены) на несколько мкс, в это время устройство А стробирует состояние линии питания (с некоторой задержкой, учитывающей ёмкость и индуктивность линии питания от ключей до диодов) и вводит очередной бит с устройства Б. В устройстве Б поставить конденсаторы достаточной ёмкости и всё будет работать ок. Да эти конденсаторы там уже должны быть, раз устройство работает с такими токами питания. Цитата(adnega @ Mar 4 2018, 15:07)  Если уже есть проводная линия, не понятно, что мешает дополнить ее еще парой проводов? Сколько будет стоить добавить эти провода? На мой взгляд, на порядок дешевле, чем придумывать способ обхода. Откуда Вы знаете какая серийность у автора? А если ему это надо сделать это в 100500 устройствах - тоже дешевле будет? И какие способы прокладки проводов? А если для доп. проводов нужно стены штробить или траншею рыть - тоже будет дешевле?
|
|
|
|
|
Mar 4 2018, 15:37
|
Гуру
     
Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702

|
Цитата(jcxz @ Mar 4 2018, 17:06)  А что тут непростого? Имхо - как раз самая простая. DC ведь! Не понятен спектр потребления, не понятны вопросы сертификации и т.п. Описанное вами решение не соответствует требованиям CAN, из-за выпрямителей оно не эффективно при 20А и вы теряете общий провод. Цитата(jcxz @ Mar 4 2018, 17:06)  Откуда Вы знаете какая серийность у автора? А если ему это надо сделать это в 100500 устройствах - тоже дешевле будет? И какие способы прокладки проводов? А если для доп. проводов нужно стены штробить или траншею рыть - тоже будет дешевле? 24В и 20А! - какая траншея? Если бы ТС подробнее описал сложности с новой проводкой, то было бы с чем сравнивать.
|
|
|
|
|
Mar 4 2018, 15:47
|
Гуру
     
Группа: Свой
Сообщений: 5 228
Регистрация: 3-07-08
Из: Омск
Пользователь №: 38 713

|
Цитата(adnega @ Mar 4 2018, 17:37)  Описанное вами решение не соответствует требованиям CAN, Ну понятно что это не CAN, а просто способ передачи через такой канал. Но вроде как нету CAN-over-power-line, так что прямое решение запроса ТС невозможно. Или есть? Цитата(adnega @ Mar 4 2018, 17:37)  из-за выпрямителей оно не эффективно при 20А и вы теряете общий провод. Почему неэффективно? Поясните? А нужен этот общий провод ТСу? В требованиях этого нет.
|
|
|
|
|
Mar 4 2018, 15:56
|
Знающий
   
Группа: Участник
Сообщений: 518
Регистрация: 29-09-11
Пользователь №: 67 450

|
Цитата(Егоров @ Mar 4 2018, 19:48)  Мало исходных данных. Расстояние, скорость передачи, односторонняя, двусторонняя? Может, там нужно передать всего 2-4 логических сигнала от датчиков? В любом случае нужно будет делать аккуратно аналоговую схему, а не уповать на какой-то чудо-кристалл, впаял - и нет забот, вот тебе стандартный CAN о двух концах. CAN односторонним не бывает, без бита подтверждения получателем контроллер работать не будет.
|
|
|
|
|
Mar 4 2018, 16:49
|
Участник

Группа: Участник
Сообщений: 39
Регистрация: 14-01-18
Пользователь №: 101 066

|
Спасибо за ответы, немного добавили ясности. Дело в том, что там не провода: девайс вращается на двух шарикоподшипниках, которые выполняют роль проводников. Беспроводной вариант (NFC) в принципе тоже рассматривается, но казалось CAN over DC проще будет. Цитата(Егоров @ Mar 4 2018, 15:48)  Мало исходных данных. Расстояние, скорость передачи, односторонняя, двусторонняя? Может, там нужно передать всего 2-4 логических сигнала от датчиков? В любом случае нужно будет делать аккуратно аналоговую схему, а не уповать на какой-то чудо-кристалл, впаял - и нет забот, вот тебе стандартный CAN о двух концах. Расстояние порядка 2 см., скорость тоже мала - только команды считать/установить положение сервопривода, частота на уровне нескольких мс. Надеялся честно говоря на кристалл, но на нет и суда нет.
|
|
|
|
|
Mar 4 2018, 23:08
|
Участник

Группа: Участник
Сообщений: 39
Регистрация: 14-01-18
Пользователь №: 101 066

|
Цитата(jcxz @ Mar 4 2018, 21:39)  А зачем именно CAN? Вам же просто передать/принять данные нужно? Для этого можно придумать кучу способов. Я уже описывал выше некоторые. Стандарт всё-таки, и на компе уже есть CAN-интерфейс. Сервоприводы с CAN тоже бывают.
|
|
|
|
|
Mar 5 2018, 00:44
|
Гуру
     
Группа: Модераторы
Сообщений: 3 868
Регистрация: 15-03-13
Пользователь №: 76 048

|
Цитата(baritono @ Mar 4 2018, 20:49)  Дело в том, что там не провода: девайс вращается на двух шарикоподшипниках, которые выполняют роль проводников. Расстояние порядка 2 см., скорость тоже мала - только команды считать/установить положение сервопривода, частота на уровне нескольких мс. Надеялся честно говоря на кристалл, но на нет и суда нет. 24 ампера через подшипники.... Понятно, тут вообще ничего работать не будет, не в интерфейсе основная проблема. Цитата(novikovfb @ Mar 4 2018, 19:56)  CAN односторонним не бывает, без бита подтверждения получателем контроллер работать не будет. Да какой там САN.... Сразу понятно что это неприменимое решение. После развязки можно сделать какой-то эмулятор CAN, если кроме него ничего нельзя. Но тут, похоже, не CANом единым изделие страдает.
|
|
|
|
|
Mar 5 2018, 20:54
|
Участник

Группа: Участник
Сообщений: 39
Регистрация: 14-01-18
Пользователь №: 101 066

|
Цитата(Егоров @ Mar 5 2018, 00:44)  24 ампера через подшипники.... Понятно, тут вообще ничего работать не будет, не в интерфейсе основная проблема.
Да какой там САN.... Сразу понятно что это неприменимое решение. После развязки можно сделать какой-то эмулятор CAN, если кроме него ничего нельзя. Но тут, похоже, не CANом единым изделие страдает. Это не простые подшипники. Мог бы дать ссылку на них, но не буду. Пусть это будет Вашим домашним заданием, для саморазвития.
|
|
|
|
|
Mar 6 2018, 07:27
|

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

|
Цитата(adnega @ Mar 6 2018, 08:54)  Погуглил. Существуют вещи типа SRH0317-2. Может, лучше их поставить и не выдумывать модемы-шлюзы-протоколы-конструкции? Это не то. На алибабе есть куча токопроводящих подшипников, но у них сопротивление измеряется сотнями ом. А тут мы видим подшипник с сопротивлением менее 0.050 Ом Причем подшипник на видео как бы самый обычный. Это виде либо фэйк, либо автору дали некую очень продвинутую смазку.
|
|
|
|
|
Mar 6 2018, 17:16
|
Участник

Группа: Участник
Сообщений: 52
Регистрация: 19-09-10
Пользователь №: 59 585

|
ИМХО - проще по радиоканалу. Можно блютус модуль ( типа HC-05 или HC-06) в режиме прозрачного УАРТа, можно HM-TRP от HOPERF в том же режиме. Меньше хлопот с изобретением велосипеда.
|
|
|
|
|
Mar 7 2018, 01:19
|
Гуру
     
Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702

|
Цитата(Хвост Слона @ Mar 6 2018, 20:16)  ИМХО - проще по радиоканалу. Можно блютус модуль ( типа HC-05 или HC-06) в режиме прозрачного УАРТа, можно HM-TRP от HOPERF в том же режиме. Меньше хлопот с изобретением велосипеда. Это если CAN не нужен. А если CAN нужен? Нет прозрачного решения CAN-UART-CAN - нужно так или иначе шлюз мастерить. Я так понял у ТС Цитата на компе уже есть CAN-интерфейс. Сервоприводы с CAN тоже бывают.
|
|
|
|
|
Mar 7 2018, 01:26
|
Участник

Группа: Участник
Сообщений: 39
Регистрация: 14-01-18
Пользователь №: 101 066

|
Хотелось обойтись без существенного усложнения и удорожания конструкции. Да и помехи извне опять же, всё беспроводное им подвержено в какой-то мере. Может, что-то оптическое можно придумать? Девайс большей частью внутри корпуса, там темно. Грубо говоря: красная лампочка на передачу, зелёная на приём?
|
|
|
|
|
Mar 7 2018, 06:27
|
Участник

Группа: Участник
Сообщений: 52
Регистрация: 19-09-10
Пользователь №: 59 585

|
Шлюз CAN-UART-CAN в свое время делал на STM32. Оказалось не сложно. А вот надежно пробросить CAN через скользящие контакты или поверх силовой шины - предполагаю будет трудно. Помехи в беспроводной передаче, конечно, возможны, но и в оптике от них не уйти полностью.
|
|
|
|
|
Mar 7 2018, 08:11
|
Участник

Группа: Участник
Сообщений: 39
Регистрация: 14-01-18
Пользователь №: 101 066

|
Цитата(mantech @ Mar 7 2018, 06:32)  ТСу оже неоднократно сказано было, что кан здесь не подходит, но похоже, для него это как мантра... Глаза боятся, а руки делают: http://yamar.com/product/dcan250-evb/
|
|
|
|
|
Mar 7 2018, 09:23
|
Гуру
     
Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702

|
Цитата(Хвост Слона @ Mar 7 2018, 09:27)  Шлюз CAN-UART-CAN в свое время делал на STM32. Оказалось не сложно. Для какой-то частной задачи можно найти много упрощений, но иногда бывают непростые случаи. Например, у меня в шине CAN помимо управляющий посылок с высоким приоритетом могут гулять всякие неважные мультимедийные посылки (тот же интерком). Шина при этом может быть загружена на 100%. Часть мультимедийных посылок может быть потеряна (это будет эквивалентно половинной Fд), но управляющий трафик всегда должен выигрывать арбитраж. Скорость не большая 50кБит/с. Я не вижу простого шлюза, а тоже хотелось бы прокинуть все через какую-нить esp8266.
|
|
|
|
|
Mar 7 2018, 12:06
|
Знающий
   
Группа: Участник
Сообщений: 599
Регистрация: 28-08-08
Из: Ростов папа
Пользователь №: 39 872

|
Цитата(AlexandrY @ Mar 6 2018, 10:27)  Это не то. На алибабе есть куча токопроводящих подшипников, но у них сопротивление измеряется сотнями ом. А тут мы видим подшипник с сопротивлением менее 0.050 Ом Причем подшипник на видео как бы самый обычный. Это виде либо фэйк, либо автору дали некую очень продвинутую смазку. Вот это я покупал и тестировал https://ru.aliexpress.com/item/through-bore...2311.0.0.oJ5L1v6 проводов по 10А,то есть мы имеем 30А если их соединить 2х3. А по сигнальным контактам езернет пропускали и пинги не терялись при вращении этой штуки.
|
|
|
|
|
Mar 22 2018, 17:43
|
Профессионал
    
Группа: Свой
Сообщений: 1 687
Регистрация: 11-01-05
Из: Москва
Пользователь №: 1 884

|
Цитата(AlexandrY @ Mar 6 2018, 10:27)  А тут мы видим подшипник с сопротивлением менее 0.050 Ом Причем подшипник на видео как бы самый обычный. Это виде либо фэйк, либо автору дали некую очень продвинутую смазку. судя по уровню, это просто гон Цитата(baritono @ Mar 4 2018, 02:59)  Есть некий девайс, к которому, кроме питания (24-48V DC), очень трудно что-то подвести. На девайсе сервопривод, которым нужно управлять в реальном времени. Токи по питанию могут быть до 20А. Можно ли и сложно ли подключить CAN по этим же проводникам? Объяснили ведь уже, вас ждет plc модем, или беспроводной канал, их готовых есть. И не мечтайте о халяве - дороже выйдет. Дадите хорошим людям, что в этом топике множество, от 400 тыр, и усе будет в лучшем виде, и считайте задаром.
--------------------
Если хочешь узнать, что ждет тебя на дороге впереди, спроси у тех, кто возвращается по ней.
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|