Comments 23
Условный CAN Hacker за 100$ мне кажется более интересным устройством да еще и с 2мя каналами
Ещё есть переходник USB-CAN USBCAN-II C и утилита Ecantools для него.
![](https://habrastorage.org/getpro/habr/upload_files/5f7/4c0/845/5f74c0845d1c1f7865e215fad597c80c.png)
вот PCB
![](https://habrastorage.org/getpro/habr/upload_files/70e/140/424/70e140424e46ffe87e32f67f25c1fb02.jpg)
![](https://habrastorage.org/getpro/habr/upload_files/5f9/7bf/368/5f97bf368ea1317e0c382cb098c93d0d.jpg)
Я себе сам их собирал пачками. Причём, сначала сканировал протоколы фирменных и собирал копию так, чтобы софт его принимал. А потом просто написал уже свой. Если ты по роду занятий вынужден работать с CAN шиной рано или поздно приходишь к этой модели, ибо они имеют обычай ломаться, а без прошивок и софта ты его не починишь.
понятно что если это ваш основной хлеб - то правильнее купить то, что хорошо работает и имеет нормальную поддержку и сопровождение. даже если это дорого. чем лепить очередной велосипед бессоными ночами или сражась с непонятными багами.
Именно так я и сделал в начале. Но когда сломался последний а производитель сказал что не чинит и предлагает просто купить новый я понял, что не настолько богат, чтобы постоянно покупать то, что могу сделать сам. Бессонных ночей не было, весь проект создания работоспособного прототипа заняло порядка месяца, занимаясь вечерами - обычный отпуск. Зато теперь я не завишу ни от кого и у меня просто десятки приборов в запасе и я вообще не парюсь. Более того, когда я взялся за софт я реализовал в нём то, что было киллер фичей у разных производителей. То, что нужно было мне. А так же режим автономного самописца на карту памяти и магнитофона, транслирующего в интерфейс записанный лог. Не знаю, у кого из текущих на рынке есть такое - не слежу за этим уже лет 8.
Изделие достаточно дорогое около 39597 RUR.
Пфф. На али кан-анализаторы идут от 800р. Обд-сниферы в корпусе и девайсы, совместимые с SocketCAN - пара т.р.
Опенсорсный CANable на stm32f4, есть API и гуй, поддержка CAN-FD. От 800 до 1700 руб на Али.
Электролиния CAN
Значение слова ЭЛЕКТРОЛИНИЯ. Что такое ...
Карта слов и выражений русского языкаhttps://kartaslov.ru › значение-слова › электролиния
ЭЛЕКТРОЛИ́НИЯ, -и, ж. Провод (провода), кабель, проложенный для передачи электроэнергии
CAN — стандарт промышленной сети, ориентированный, прежде всего, на объединение в единую сеть различных исполнительных устройств и датчиков.
Я полагаю что CAN это всё же шина данных.
У фирменного драйвера есть неприятная особенность: если при подключенном адаптере завершить удалённоый сеанс, а потом подключиться заново - он перестаёт работать, хотя показывает, что всё ок, и статус шины «Good». Сброс адаптера или перезапуск приложения, использующего систековскую длл-ку - не помогает.
А есть ли что-то из недорогого для CanOpen?
Пользовался платами с али, про которые в комментах тут писали. Интерфейсы CANable, SocketCAN, CANtact, UART-CAN - всё открытые прошивки. С гальваноразвязкой тоже есть. В линуксе работают из коробки. can-utils и python-can заводил.
Но был нюанс: не удавалось сбросить буфер передачи. Когда пакет никто в сети не подтверждает, некоторые прошивки успокаиваются через 2-5 секунд. А некоторые прошивки уходят в бесконечный повтор, и только отключение от USB помогает.
Плата SYS TEC USB-CANmodul1 нормально отрабатывает отвал от кан-шины? А другие? Может, у кого есть опыт?
Какой переходник USB-CAN эконом-класса можете порекомендовать под Linux?
Поскольку USB и CAN - совершенно разные протоколы, не конвертирующиеся друг в друга прозрачно, без софтовой прослойки со своей кастомной логикой, своими возможностями и API, ваш вопрос, поставленный максимально открыто, не имеет смысла.
"Переходник USB-CAN" же вообще абсурдный термин. Примерно такой же, как, скажем, внешнюю сетевушку называть "Переходник USB-802.11", а флешку - "Переходник USB-exFAT".
Тем не менее, существуют переходники USB-RS232...
RS232 - протокол физического уровня для UART. В спецификации USB есть класс устройств USB CDC, делающий возможным прозрачную конверсию передачи линии RS232 с виртуальным COM-портом, создаваемым драйвером таких устройств, о которых вы говорите. В случае с CAN, вам нужна реализация логики протокола канального уровня, о которой USB-контроллеры понятия не имеют, и которую нужно реализовывать с помощью CAN-контроллера, плюс программный модуль для управления, собственно, коммуникационной сессией.
Я лишь показал, что "Переходник ХХХ-YYY - абсурдный термин" - абсурдная жизненная позиция. CDC класс вошёл в спецификацию USB как стандартный потому что был востребован. Я застал те времена, когда на USB-COM переходники приходилось ставить сторонние (родные от производителя) драйвера. А теперь их понимают даже мобилы без драйверов, потому что стандартные классы обязаны поддерживать все. Если бы была необходимость в поддержке CAN в OS то и такой класс бы попал в спецификацию USB. Хотя, учитывая, что есть отдельная ниша где CAN был относительно популярен, скорее всего есть сторонние системы поддержки CAN на уровне KWP2000, например. Ну это как с первыми BlueTooth, когда стек ставился полностью сторонний вместе с драйвером. Вот тоже вам пример "абсурдного переходника", который может в кучу интерфейсов и протоколов. Сейчас - стандартный на уровне OS.
К слову, HID и Mass Storage тоже не сразу попал в стандартные классы. А RNDIS так и вообще, наверное, самый молодой из них. Всё это пополнялось по мере необходимости и популярности.
Да ладно уж мелочиться.
В электронике всё, так или иначе, - это какой-то переходник.
Я пользуюсь этими:
https://aliexpress.ru/item/1005004971890033.html
https://www.avito.ru/moskva/zapchasti_i_aksessuary/can_usb_interfeys_analog_can_hacker_cantact_2236305908
Первый - с гальванической изоляцией. Оба в линуксе из-коробки определяются, как сетевые интерфейсы. С python-can и can-utils дружат, но надо ставить версии после 2022 года.
На приём работают отлично. А вот на передачу, если в сети никого живого нет, появляется нюанс.
Ещё вот такой взял, с другим логическим интерфейсом:
https://aliexpress.ru/item/1005002828512259.html
но пока руки не дошли испробовать.
Обзор Переходника USB-CAN (SYS TEC USB-CANmodul1)