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

 
 
 
Reply to this topicStart new topic
> Прибор для проверки CAN шины, Выявление неисправностей CAN шины
Bonch
сообщение Nov 26 2017, 15:29
Сообщение #1





Группа: Новичок
Сообщений: 4
Регистрация: 26-11-17
Пользователь №: 100 371



Здравствуйте, хочется собрать несложный прибор, для проверки CAN линии на обрыв и замыкание, это основные требования. Если можно будет, как-нибудь, определять ещё скорость передачи, то вообще супер. Не знаю с чего начать. Разработкой только начинаю заниматься, поэтому прошу сильно не пинать, а помочь или направить на путь истинный. Вдруг кто-то делал, или есть у кого-то наработки.

Заранее спасибо laughing.gif
Go to the top of the page
 
+Quote Post
novikovfb
сообщение Nov 26 2017, 16:48
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 518
Регистрация: 29-09-11
Пользователь №: 67 450



Омметр подойдет?
Встречались веселее ситуации:
- перепутанная полярность на одном или нескольких абонентах
- неправильно выставленная скорость передачи у одного или нескольких абонентов
- глючный абонент (выдает жуткие сигналы при включении питания и т.п. ситуациях)
ИМХО, больше толка от банального омметра, осциллографа и логического анализатора, например от saleae logic или его китайского клона https://ru.aliexpress.com/item/New-USB-SALE...mStoreLevelAB=5
Go to the top of the page
 
+Quote Post
x893
сообщение Nov 26 2017, 16:48
Сообщение #3


Профессионал
*****

Группа: Свой
Сообщений: 1 333
Регистрация: 27-10-08
Из: Планета Земля
Пользователь №: 41 226



http://www.microchip.com/DevelopmentTools/...PartNO=apgdt002
купить или сделать самому

В гугле еще 100500 проектов готовых
Go to the top of the page
 
+Quote Post
Bonch
сообщение Nov 27 2017, 13:34
Сообщение #4





Группа: Новичок
Сообщений: 4
Регистрация: 26-11-17
Пользователь №: 100 371



Цитата(novikovfb @ Nov 26 2017, 19:48) *
Омметр подойдет?
Встречались веселее ситуации:
- перепутанная полярность на одном или нескольких абонентах
- неправильно выставленная скорость передачи у одного или нескольких абонентов
- глючный абонент (выдает жуткие сигналы при включении питания и т.п. ситуациях)
ИМХО, больше толка от банального омметра, осциллографа и логического анализатора, например от saleae logic или его китайского клона https://ru.aliexpress.com/item/New-USB-SALE...mStoreLevelAB=5

Омметр, не совсем подойдет.

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


Цитата(x893 @ Nov 26 2017, 19:48) *
http://www.microchip.com/DevelopmentTools/...PartNO=apgdt002
купить или сделать самому

В гугле еще 100500 проектов готовых

Согласен, но они не такие уж простые, и не дешевые, чаще всего. А хотелось бы самому попробовать собрать, своё. rolleyes.gif

И ещё, можете подсказать, что будет на CAN H, если замкнуть CAN L сначала на "+", а потом на "-", и наоборот, что будет на CAN L, если замыкать CAN H. Таких графиков нигде не нашел.

Сообщение отредактировал Bonch - Nov 27 2017, 13:35
Go to the top of the page
 
+Quote Post
novikovfb
сообщение Nov 27 2017, 13:40
Сообщение #5


Знающий
****

Группа: Участник
Сообщений: 518
Регистрация: 29-09-11
Пользователь №: 67 450



Цитата(Bonch @ Nov 27 2017, 17:34) *
И ещё, можете подсказать, что будет на CAN H, если замкнуть CAN L сначала на "+", а потом на "-", и наоборот, что будет на CAN L, если замыкать CAN H. Таких графиков нигде не нашел.

В рецессивном состоянии на CAN_H CAN_L одинаковое напряжение.
В доминантном CAN_H подтягивается к + источника питания 5 В, CAN_L - к общему проводу. Падение напряжения на ключах изрядное, т.к. с ограничением тока. Если подавать больше 5 В или меньше 0 - подтяжка этими ключами работать не будет. Если превысить допустимое напряжение - выгорит драйвер.
Go to the top of the page
 
+Quote Post
Bonch
сообщение Nov 27 2017, 15:47
Сообщение #6





Группа: Новичок
Сообщений: 4
Регистрация: 26-11-17
Пользователь №: 100 371



Цитата(novikovfb @ Nov 27 2017, 16:40) *
В рецессивном состоянии на CAN_H CAN_L одинаковое напряжение.
В доминантном CAN_H подтягивается к + источника питания 5 В, CAN_L - к общему проводу. Падение напряжения на ключах изрядное, т.к. с ограничением тока. Если подавать больше 5 В или меньше 0 - подтяжка этими ключами работать не будет. Если превысить допустимое напряжение - выгорит драйвер.


Угу, в рецессивном состоянии по CAN H идут импульсы от 2.5В до 3.5В, в то же самое время по CAN L от 1.5В до 2.5В. Но мне интересно, что будет с ними происходить, если замкнуть CAN H на +5В, то по CAN L будут идти те же импульсы от 1.5-2.5В ? Или это не так работает ?
Go to the top of the page
 
+Quote Post
novikovfb
сообщение Nov 27 2017, 15:55
Сообщение #7


Знающий
****

Группа: Участник
Сообщений: 518
Регистрация: 29-09-11
Пользователь №: 67 450



Цитата(Bonch @ Nov 27 2017, 19:47) *
Угу, в рецессивном состоянии по CAN H идут импульсы от 2.5В до 3.5В, в то же самое время по CAN L от 1.5В до 2.5В. Но мне интересно, что будет с ними происходить, если замкнуть CAN H на +5В, то по CAN L будут идти те же импульсы от 1.5-2.5В ? Или это не так работает ?

это что за рецессивное состояние, при котором между линиями 1 В? Кто туда это подает?
Go to the top of the page
 
+Quote Post
Doka
сообщение Nov 28 2017, 14:43
Сообщение #8


Electrical Engineer
******

Группа: СуперМодераторы
Сообщений: 2 163
Регистрация: 4-10-04
Пользователь №: 778



на самом деле это иная категория приборов и в связи с интересом к CAN широкого круга разработчиков последнее время (т.н. "хакеров") назрела необходимость в появлении на рынке этого класса приборов, разработанных с оптимизацией стоимости, вот примерный список функционала:

- возможность инжекции произвольных ошибок, возможность работы не выдерживая InterFrame Gape, etc..
- при наличии ошибок на шине возможность детектировать в какой фазе (вплоть до бита) она произошла: например, на каком бите арбитража отвалился узел (проиграл арбитраж)
- возможность диагностики "вразрыв": определение обрыва/КЗ каждой из дата-линии, возможность определения проблемного сегмента (включившись вразрыв одной из дата-линии), контроль целостности сигнала (в т.ч. для подстройки sampling point)


Цитата(Bonch @ Nov 27 2017, 16:34) *
И ещё, можете подсказать, что будет на CAN H, если замкнуть CAN L сначала на "+", а потом на "-", и наоборот, что будет на CAN L, если замыкать CAN H. Таких графиков нигде не нашел.


на +3.3В, на +5В или на +12В ?
через сопротивление какого номинала замыкать на +/- ?

Цитата(novikovfb @ Nov 27 2017, 18:55) *
это что за рецессивное состояние, при котором между линиями 1 В? Кто туда это подает?

вангую, что подразумевалось, что на линиях в рецессиве либо 2.5В (на обоих), либо 3.5В на обоих, либо что-то между ними, но одинаковое на обоих концах


--------------------
Блог iDoka.ru
CV linkedin.com/in/iDoka
Sources github.com/iDoka


Never stop thinking...........................
Go to the top of the page
 
+Quote Post
Bonch
сообщение Nov 29 2017, 15:49
Сообщение #9





Группа: Новичок
Сообщений: 4
Регистрация: 26-11-17
Пользователь №: 100 371



Цитата(novikovfb @ Nov 27 2017, 18:55) *
это что за рецессивное состояние, при котором между линиями 1 В? Кто туда это подает?

Извините, не сразу понял, что значит рецессивный. В голове только одно определение этого слова, из биологии.

Цитата(Doka @ Nov 28 2017, 17:43) *
на +3.3В, на +5В или на +12В ?
через сопротивление какого номинала замыкать на +/- ?


вангую, что подразумевалось, что на линиях в рецессиве либо 2.5В (на обоих), либо 3.5В на обоих, либо что-то между ними, но одинаковое на обоих концах

Замыкать на +12В, через резистор 60КОм. В рецессиве у меня 2.5В.

Я думаю, что если, например, замкнуть +12 на CAN H, то по CAN H будет просто 12В, а как это повлияет на CAN L ? Будет ли по CAN L идти прежний сигнал ? Если нет, то что будет ?
По идее, как я понимаю, т.к. по CAN H будет идти неправильный сигнал, то по CAN L должно быть что-то другое.
п.с. Извините, если что-то не так говорю, не силен в этом, но стараюсь разобраться.

Сообщение отредактировал Bonch - Nov 29 2017, 15:53
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Nov 29 2017, 18:33
Сообщение #10


Ally
******

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



Цитата(Bonch @ Nov 29 2017, 17:49) *
По идее, как я понимаю, т.к. по CAN H будет идти неправильный сигнал, то по CAN L должно быть что-то другое.

Это же от драйвера CAN зависит.
Но наверно все выдерживают 12 В
Вон MCP2542FD выдерживает 58 В.

С MCP2542 ничего не случится, будет работать как работал. Если все узлы тоже на MCP2542 сделаны и стоят правильно терминаторы.
Go to the top of the page
 
+Quote Post
AlexandrY
сообщение Nov 30 2017, 09:55
Сообщение #11


Ally
******

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



Цитата(Bonch @ Nov 26 2017, 17:29) *
Здравствуйте, хочется собрать несложный прибор, для проверки CAN линии на обрыв и замыкание, это основные требования. Если можно будет, как-нибудь, определять ещё скорость передачи, то вообще супер. Не знаю с чего начать. Разработкой только начинаю заниматься, поэтому прошу сильно не пинать, а помочь или направить на путь истинный. Вдруг кто-то делал, или есть у кого-то наработки.

Заранее спасибо laughing.gif

Обрыв и замыкание показывают сами контроллеры CAN шины, в них есть 8 флагов разных ошибок и 2-а счетчика по стандарту.
В частности passive error и ack error флаги хорошо показывают разрыв. bit dominant error показывает замыкание.
А скрость и несогласованность линии лучше всего смотреть осциллографом.
Прикрепленное изображение

PicoScope умеет показывать и расшифровывать сигнал на шине CAN

А вот кстати на CAN кинули напряжение 27В через 1 кОм. Кое-как но CAN продолжает работать.
Прикрепленное изображение
Go to the top of the page
 
+Quote Post
adnega
сообщение Nov 30 2017, 13:46
Сообщение #12


Гуру
******

Группа: Свой
Сообщений: 2 724
Регистрация: 14-05-07
Из: Ярославль, Россия
Пользователь №: 27 702



Цитата(Bonch @ Nov 29 2017, 18:49) *
Я думаю, что если, например, замкнуть +12 на CAN H, то по CAN H будет просто 12В, а как это повлияет на CAN L ? Будет ли по CAN L идти прежний сигнал ? Если нет, то что будет ?

По стандарту с обоих концов линии должны быть терминаторы 120 Ом.
На CAN_L будет тоже +12В, т.к. они соединяются с CAN_H через 60 Ом резистор.
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 17th June 2025 - 23:55
Рейтинг@Mail.ru


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