Перейти к содержанию
    

Анализатор протокола CAN

On 6/12/2020 at 11:47 PM, x893 said:

Зачетно, но минималистичный софт от MicroChip-a.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

12 hours ago, Чижик said:

Что есть профессиональная работа? Я сам профессионал со стажем и могу смело утверждать (в своей области), что цена профессионального инструмента никак не коррелирует с профессионализмом выполнения работы.

А она есть. Понимаете, многие профессиональные разработчики, когда дело касается рабочих инструментов, очень быстро приходят к выводу, что лучше один раз потратиться на что-то нормальное, чем покупать дешевку, отмучиться с ней, выловить все баги, а потом все равно купить нормальное. Потому что это потерянное время разработчика, которое стоит деньги и хорошая железяка в данном случае обойдется не дороже, чем 3 дня рабочего времени.

Именно поэтому у меня на столе лежат Ixxat USB-to-CAN и PEAKовские адаптеры. Брендированное оно - да. Но за эти деньги они и софт работают и работают. И, кстати, продать я их тоже всегда могу совсем не за ноль денег.

 

 

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

14 hours ago, Чижик said:

Зачетно, но минималистичный софт от MicroChip-a.

Этот софт написан на C#, а значит может быть легко привращён в исходный текст и изменён как угодно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для того, чтобы работать с CAN, есть всякие готовые вещи. Но лично мне не нравится, что они имеют свой USB-протокол, а не нормальный tty!

Сделал вот такую штуку. Там же — все, что нужно для изготовления PCB на jlcpcb.

Выдает себя за PL2303, имеет несколько команд для управления интерфейсом и настройки аппаратных фильтров (можно забить все фильтры). Кроме того, есть софтовый фильтр (если нужно, скажем, пару ID'ов заблокировать, а по маске это делать лень или уже все фильтры с масками заняты). Протокол простой.

Я на основе этой железяки начал разрабатывать систему управления пусироботовскими драйверами шаговых двигателей: необходимый минимум обертки CanOpen идет в софте, а в порт просто пишу готовые последовательности ID/данные.

 

P.S. Себестоимость ниже 1000 рублей даже если паять вариант с гальваноразвязкой. Без нее — останется сдача, чтобы хорошо попить пивка!

Изменено пользователем Eddy_Em

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

2 hours ago, Eddy_Em said:

Для того, чтобы работать с CAN, есть всякие готовые вещи. Но лично мне не нравится, что они имеют свой USB-протокол, а не нормальный tty!

а поверх tty какой протокол?.. Надеюсь slcan?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

19 часов назад, Doka сказал:

а поверх tty какой протокол?.. Надеюсь slcan?

У нас в некоторых девайсах МК выполняют роль мостов USB-CAN, там slcan реализовывал. Такое это днище, slcan...

Но в Linux-е он уже был, плюс унификация какая-никакая была, пришлось поддерживать. И с CANHacker-ом совместимость.

Но впечатление у меня осталось по нему крайне негативное. Это если с обработкой всяческих ошибок писать. Так то он простой.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

4 minutes ago, Arlleex said:

Но в Linux-е он уже был, плюс унификация какая-никакая была, пришлось поддерживать. И с CANHacker-ом совместимость.

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

а тут всё готовенькое, поддерживаемое socketCAN

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

On 6/24/2020 at 6:01 PM, Doka said:

а поверх tty какой протокол?.. Надеюсь slcan?

Все элементарно: вот описание. Все, что получено из CAN-шины, выплевывается в терминал в виде "метка #ID данные", где "метка" — условное время в миллисекундах с начала работы МК, ID - идентификатор принятого сообщения (в 16-ном формате), а потом идут разделенные пробелом данные в 16-ном формате. А чтобы послать данные, даем команду "s ID данные", причем здесь ID и данные могут быть в 10-й, 8-й или 16-й системе.

Крайне удобно работать с таким форматом. По крайней мере, мне.

P.S. Сегодня спаял пару. Себестоимость - около 300р с гальваноразвязкой и рублей на 80 меньше — без гальваноразвязки.

Изменено пользователем Eddy_Em

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Цитата

объем прошивки — около 14кБ

Где-то так и ожидал. На днях приходилось делать UCCB - там благодаря халокубу память STM32F042C6 занята почти вся. И хомут в назначении порта CAN_MODE (PF0, а в схеме PB4).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Я вчера ревизию сделал и выбросил остатки ненужного кода, в т.ч. для работы с уартом. Получилось меньше 12кБ. Только CAN и USB, ну и опционально светодиоды моргают.

P.S. в устройстве по ссылке огромный недостаток: отсутствует соединение земель по шине. Не будет такое работать. Натыкались уже неоднократно, когда соединение земель отваливалось: даже на короткой шине в 50м коннект пропадал.

Изменено пользователем Eddy_Em

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Соединение земель, естественно, добавил. Отдал - говорят, работает. :)

Расстояние больше 20 м там вряд ли будет (автобус).

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

1 hour ago, Vasily_ said:

Это только китай.

Или самопал, как я выше писал. Всего лишь 300р и получаем CAN-сниффер с гальваноразвязкой…

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вот от товарища астронома недавно прилетело

http://forum.easyelectronics.ru/viewtopic.php?f=16&t=42882

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

8 минут назад, x893 сказал:

Вот от товарища астронома недавно прилетело

Да-уж, таких поделий полно в сети.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...