Получить сигнал из Кан шины

Получить сигнал из Кан шины

При установке доп оборудования бывает нужно получить какие-либо сигналы из CAN BUS, к примеру состояние концевиков, или сигнал зажигания для подключения магнитолы. Рассмотрим вариант как это сделать.

Для этого воспользуемся вот таким эмулятором с тремя аналоговыми выходами

эмулятор кан шины

Для примера настройки эмулятора запустим какой-то первый попавшийся трейс в кан-хакере. Для тестирования работы кан хакера у нас есть тестовый стенд с тремя лампами 2W, это примерно 150мА при 12 вольтах.

кан хакер трейс отладка эмулятора

Подключим эмулятор:

  • Красный — плюс 12 вольт
  • Чёрный — масса GND
  • Синий — CANH
  • Зелёный — CANL
  • Белые — 3 аналоговых выхода (плюс), к ним подключим три тестовых лампы 2W
эмулятор кан шины подключение

После включения мы попадаем в первое меню в котором есть три пункта:

  • кан-хакер
  • настройки
  • запуск

В первую очередь нужно настроить скорость кан шины, перейдём в настройки (setting). Для перемещения курсора вверх-вниз служат кнопки 1 и 4, для перехода в нужный пункт длинное нажатие кнопки 4.

эмулятор кан шины настройка скорости кан

Попадаем во второе меню, здесь перейдём в первый пункт (can speed).

настройка скорости кан шины, can bus speed setting

Здесь у нас есть набор предустановленных скоростей Кан шины (1000, 500, 250 и т.д.) по которым можно перемещаться кнопками 2 и 3. Также в конце списка есть режим AUTO, в котором эмулятор сам подберёт подходящую скорость. Если скорость выбрана правильно, мы увидим что эмулятор подключен к кан шине.

Далее выходим из этого режима (длинное нажатие кнопки 1) во второе меню и ещё одним длинным нажатием кнопки 1 в первое меню.

Теперь перейдём в пункт HACKER, на экране при этом будет одно из сообщений из кан шины, кнопками 1 и 4 мы можем переходить к другим сообщениям.

эмулятор кан шины режим кан хакер

Находим нужное сообщение, чтобы работать с этим сообщением переходим в режим редактирования (длинное нажатие кнопки 4)

эмулятор кан шины редактирование сообщения

Появится курсор указывающий какой байт сейчас редактируется, первые два байта ID (эмулятор пока поддерживает только стандартные ID), остальные байты данных.

Редактируем байт кнопками 2 и 4, короткое нажатие изменяет байт на 0x01, длинное на 0x10. В режиме редактирования байтов данных отображается битовое представление выбранного байта.

Это позволяет выбрать только нужный бит. Можно установить все байты в 0x00, выбрать только один нужный бит, эмулятор будет реагировать только на этот один бит, независимо от состояния остальных.

После того как мы настроили сообщение длинным нажатием кнопки 4 переходим в режим выбора количества байт в сообщении, здесь если нужно можно указать длинну сообщения. К примеру если мы хотим реагировать только на любые данные с сообщении можно поставить 0, тогда эмулятор будет реагировать на любое сообщение с этим ID.

эмулятор кан шины настройка длины сообщения

Далее запишем это сообщение в одну из трёх ячеек памяти (длинное нажатие кнопки 4)

Возвращаемся в первое меню длинным нажатием кнопки 1. Если нужно, повторяем для двух остальных ячеек, скорость кан шины настраивать уже не нужно. Мы для примера записали в ячейки три случайных сообщения.

Всё, настройка закончена, в первом меню запускаем рабочий режим (RUN)

эмулятор кан шины работа 3 выхода

Теперь после каждого включения питания эмулятор будет переходить в рабочий режим.

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