Canbus адаптер (вскрытие и принцип работы) – Доводка и тюнинг. Доп.аксессуары
#1 ayvan
Отправлено 16 февраля 2017 – 00:34
Хочу услышать мнение специалистов в адаптации магнитол на Opel Antara. Есть магнитола на Android 4.4 с адаптером, всё работает и включается и выключается и управляется с руля. Но вот проблема при удалении штатного дисплея адаптер не функционирует и магнитола не включается. То есть как я разобрался на магнитолу и на адаптер (canbus) идет постоянное питание B+ которое необходимо для поддержания памяти магнитолы и сохранения настроек, но для запуска магнитолы необходима подача +12В (ACC) и адаптер посылает эти +12В (ACC) тогда магнитола включается. На адаптер приходит ещё 2 провода Can low и Can hi которые посылают сигналы штатного управления, адаптер в свою очередь это всё принимает и переводит в особый сигнал который понимает магнитола и соответственно выполняет команды.
Прикрепленные изображения
Сообщение отредактировал ayvan: 16 февраля 2017 – 00:42
- Наверх
#2 bolex
Отправлено 16 февраля 2017 – 19:51
У меня наоборот цель была удалить канбас, но без канбаса штатный дисплей не работает, разбираться не стал просто забил.
- Наверх
#3 KonstantinVO
Отправлено 17 февраля 2017 – 10:46
Можете фотку маркировки адаптера запостить? У меня магнитола с канбас-адаптером, но кнопки на руле не работают. Может мне китаец не тот адаптер приложил.
- Наверх
#4 bolex
Отправлено 17 февраля 2017 – 12:11
Можете фотку маркировки адаптера запостить? У меня магнитола с канбас-адаптером, но кнопки на руле не работают. Может мне китаец не тот адаптер приложил.
В Заводских настройках магнитолы типа кан-баса правильно выставлен? У меня работает только на профилях Мазда/Опель, по номерам вроде 09 и 44.
- Наверх
#5 KonstantinVO
Отправлено 17 февраля 2017 – 16:33
В настройках нет вообще пункта настроек кан-баса, если имеется в виду настройки самого андроида. Завтра буду на машине еще поковыряюсь, но врядли. Системные настройки очень урезанные.
Кнопки назначаются в отдельной программе. Фото своего адаптера кинул в соседней теме http://www.antara-cl…e-6#entry251532
- Наверх
#6 ayvan
Отправлено 22 февраля 2017 – 21:21
Короче я понял что гиблое это дело подключил к прикуривателю провод ACC и всё пока нормально включается и выключается от замка зажигания.
1 и 2 контакт земля черные провода замыкаются при подключении колодки
3 и 5 постоянный плюс замыкаются при подключении колодки
17 и 20 Can High замыкаются при подключении колодки
18 и 19 Can Low замыкаются при подключении колодки
17 и 18 идут на магнитолу в том случае если колодка подключена.
2 синих провода не знаю вообще для чего я разобрал разьем автомобиля, 25 контакт есть 28 пустой, в автомобильном разьёме еще есть два провода низкоскоростной шины но они для переходника не задействованы
Прикрепленные изображения
Сообщение отредактировал ayvan: 22 февраля 2017 – 21:32
- Наверх
#7 Евгений26
Отправлено 22 февраля 2017 – 21:29
Дело это точно гиблое.
Тут большая часть форума спрашивает, какой аккумулятор купить и как заменить…
- Наверх
#8 ayvan
Отправлено
- Наверх
#9 Евгений26
Отправлено 22 февраля 2017 – 22:32
Причем, чем дороже и сложнее авто, тем вопросы все веселее ..
- Наверх
#10 kolos_66
Отправлено 23 февраля 2017 – 05:29
Короче я понял что гиблое это дело подключил к прикуривателю провод ACC и всё пока нормально включается и выключается от замка зажигания.
Если кто то пойдет по моим
Здравствуйте.
По такой схеме у меня работало пока стоял Touch&Connect, но после замены на Ownice C500 (видио выкладывал в другой ветке) все изменилось, и теперь запутался кто из них “ведомый” и “ведущий”. Возможно программно по Can шине в магнитоле прописывается.
Написал китайцам.
Вот колодка магнитолы
- Наверх
#11 kolos_66
Отправлено 23 февраля 2017 – 07:41
Здравствуйте.
По такой схеме у меня работало пока стоял Touch&Connect, но после замены на Ownice C500
Почти так работало:
1. Управление с руля отключалось при выключении зажигания и извлечении ключа;
2. Но Touch&Connect работал и без ключа.
- Наверх
#12 ayvan
Отправлено 24 февраля 2017 – 21:38
Возможно canbus адаптер отключается раньше и из-за этого он не расшифровывает сигналы с руля и не передает их на магнитолу. Это проблема по моему в адаптере.
У меня не выключается магнитола, даже когда ключ вытащишь из замка, но если откроешь дверь всё гаснет (при отсутствии ключа в замке зажигания) А раньше с canbus адаптером как только вынешь ключь из замка зажигания магнитола сразу же выключается.
Сообщение отредактировал ayvan: 24 февраля 2017 – 21:40
- Наверх
#13 ayvan
Отправлено 23 марта 2017 – 21:01
Не мучайтесь ребята, кто хочет подключить без canbus адаптера это можно и кнопки на руле и включение и выключение магнитолы от замка зажигания.
http://www.antara-cl…roid-444/page-8
- Наверх
#14 bolex
Отправлено 24 марта 2017 – 05:30
Не мучайтесь ребята, кто хочет подключить без canbus адаптера это можно и кнопки на руле и включение и выключение магнитолы от замка зажигания.
http://www.antara-cl…roid-444/page-8
Читал и очень заинтересовало, молодчина! Потеплеет и если не будет лень, то займусь. Так то и у меня всё нормально работает… в общем пока не решился даже планировать работу.
- Наверх
#15 ayvan
Отправлено 24 марта 2017 – 10:23
Самое главное, это то что можете сами решать какую функцию будет выполнять кнопка при нажатии. А то кнопка переключения треков в canbus адаптере зашита наоборот при нажатии вперед, переключается назад)
Сообщение отредактировал ayvan: 24 марта 2017 – 10:24
- Наверх
#16 bolex
Отправлено 24 марта 2017 – 14:49
…А то кнопка переключения треков в canbus адаптере зашита наоборот при нажатии вперед, переключается назад)
Ага, но как то привык и ладно…
- Наверх
#17 w_major
Отправлено 22 августа 2017 – 07:08
Клубни, сеть предложение от https://droidoncar. ru/ об адаптации под нас CAN-адаптера. Нужна машинка в Москве для сканирования.
- Наверх
#18 ВикторАлександрович
Отправлено 22 августа 2017 – 17:16
не “взлетит” с корейскими мозгами. А елм не одно и то же?
- Наверх
#19 melbu
Отправлено 22 августа 2017 – 17:37
Клубни, сеть предложение от https://droidoncar.ru/ об адаптации под нас CAN-адаптера. Нужна машинка в Москве для сканирования.
Дорестайл могу предоставить
- Наверх
#20 Zanoza
Отправлено 22 августа 2017 – 20:58
Эх, жалко что я далеко, я бы с радость предоставил.
- Наверх
Хакаем CAN шину авто. Мобильное приложение вместо панели приборов / Хабр
Мобильное приложение VAG Virtual CockpitЯ продолжаю изучать CAN шину авто. В предыдущих статьях я голосом открывал окна в машине и собирал виртуальную панель приборов на RPi. Теперь я разрабатываю мобильное приложение VAG Virtual Cockpit, которое должно полностью заменить приборную панель любой модели VW/Audi/Skoda/Seat. Работает оно так: телефон подключается к ELM327 адаптеру по Wi-Fi или Bluetooth и отправляет диагностические запросы в CAN шину, в ответ получает информацию о датчиках.
По ходу разработки мобильного приложения пришлось узнать, что разные электронные блоки управления (двигателя, трансмиссии, приборной панели и др.) подключенные к CAN шине могут использовать разные протоколы для диагностики, а именно UDS и KWP2000 в обертке из VW Transport Protocol 2.0.
Программный сниффер VCDS
Программный сниффер VCDS: CAN-SnifferЧтобы узнать по какому протоколу общаются электронные блоки я использовал специальную версию VCDS с программным сниффером в комплекте. В этот раз никаких железных снифферов на Arduino или RPi не пришлось изобретать. С помощью CAN-Sniffer можно подсмотреть общение между VCDS и автомобилем, чтобы затем телефон мог прикинуться диагностической утилитой и отправлять те же самые запросы.
Я собрал некоторую статистику по использованию диагностических протоколов на разных моделях автомобилей:
VW/Skoda/Seat (2006-2012) – приборная панель UDS. Двигатель и трансмиссия VW TP 2.0
Audi (2006-2012) – приборная панель VW TP 2.0. Двигатель UDS. Трансмиссия VW TP 2.0
VW/Skoda/Seat/Audi (2012-2021) – везде UDS
Протокол UDS
Unified Diagnostic Services (UDS) – это диагностический протокол, используемый в электронных блоках управления (ЭБУ) автомобильной электроники. Протокол описан в стандарте ISO 14229-1 и является производным от стандарта ISO 14230-3 (KWP2000) и ныне устаревшего стандарта ISO 15765-3 (Diagnostic Communication over Controller Area Network (DoCAN)). Более подробно в википедии.
Диагностические данные от двигателя по протоколу UDS (Skoda Octavia A7)В моей машине (Skoda Octavia A5) приборка использует UDS протокол, это дало мне легкий старт разработки, т.к. данные были в простом формате Single Frame SF (фрейм, вся информация которого умещается в один CAN пакет) и большинство значений легко поддавались расшифровке. Volkswagen не дает документацию на формат значений, поэтому формулу расшифровки для каждого датчика приходилось подбирать методом логического мышления. Про UDS протокол очень хорошо и с подробным разбором фреймов написано на canhacker.ru.
Разбор UDS пакета в формате Single FrameПример запроса и ответа температуры моторного масла:
7E0 0x03 0x22 0x11 0xBD 0x55 0x55 0x55 0x55 7E8 0x05 0x62 0x11 0xBD 0x0B 0x74 0x55 0x55
Запрос температуры моторного масла:
7E0 – Адрес назначения (ЭБУ двигателя)
Байт 0 (0x03) – Размер данных (3 байта)
Байт 1 (0x22) – SID идентификатор сервиса (запрос текущих параметров)
Байт 2, 3 (0x11 0xBD) – PID идентификатор параметра (температура моторного масла)
Байт 4, 5, 6, 7 (0x55) – Заполнитель до 8 байт
Ответ температуры моторного масла:
7E8 – Адрес источника (Диагностический прибор)
Байт 0 (0x05) – Размер данных (5 байт)
Байт 1 (0x62) – Положительный ответ, такой SID существует. 0x22 + 0x40 = 0x62. (0x7F) – отрицательный ответ
Байт 2, 3 (0x11 0xBD) – PID идентификатор параметра (температура моторного масла)
Байт 4, 5 (0x0B 0x74) – значение температуры моторного масла (20.1 °C формулу пока что не смог подобрать)
Байт 6, 7 (0x55) – Заполнитель до 8 байт
Первая версия мобильного приложения VAG Virtual Cockpit умела подключаться только к приборной панели по UDS.
VAG Virtual Cockpit – экран с данными от приборной панели по протоколу UDSVW Transport Protocol 2.0
Volkswagen Transport Protocol 2.0 используется в качестве транспортного уровня, а данные передаются в формате KWP2000. Keyword Protocol 2000 – это протокол для бортовой диагностики автомобиля стандартизированный как ISO 14230. Прикладной уровень описан в стандарте ISO 14230-3. Более подробно в википедии.
Т.к. KWP2000 использует сообщения переменной длины, а CAN шина позволяет передавать сообщения не больше 8 байт, то VW TP 2. 0 разбивает длинное сообщение KWP2000 на части при отправке по CAN шине и собирает заново при получении.
Диагностические данные от двигателя по протоколу KWP2000 (Skoda Octavia A5)ЭБУ двигателя моей машины использует протокол VW TP 2.0, поэтому мне пришлось изучить его. Видимо Volkswagen разрабатывала транспортный протокол не только для работы по надежной CAN шине, но и для менее надежных линий связи, иначе нет объяснения для чего требуется такая избыточная проверка целостности данных. Главным источником информации по VW TP 2.0 является сайт https://jazdw.net/tp20.
Разбор протокола VW TP 2.0 на примере подключения к первой группе двигателя:
200 01 C0 00 10 00 03 01 | Настраиваем канал с двигателем. Байт 0: 0x01 – двигатель, 0x02 – трансмиссия. Байт 5,4: 0x300 – адрес источника |
201 00 D0 00 03 40 07 01 | Получили положительный ответ. Байт 5,4: 0x740 – к двигателю обращаемся по этому адресу |
740 A0 0F 8A FF 32 FF | Настраиваем ЭБУ на отправку сразу 16 пакетов и выставляем временные параметры |
300 A1 0F 8A FF 4A FF | Получили положительный ответ |
740 10 00 02 10 89 | Отправляем команду KWP2000 startDiagnosticSession. Байт 0: 0x10 = 0b0001 – последняя строка данных + 0x0 счетчик отправляемых пакетов 0 (0x0 – 0xF) |
300 B1 | Получили первый ACK |
300 10 00 02 50 89 | Получили положительный ответ. Байт 0: 0x10 – cчетчик принимаемых пакетов 0 |
740 B1 | Мы отправили первый ACK, что получили ответ |
740 11 00 02 21 01 | Делаем запрос. Байт 0: 0x11 – счетчик отправляемых пакетов 1. Байт 3: 0x21 – запрос параметров. Байт 4: 0x01 – из группы 1 |
300 B2 | Получили второй ACK |
300 22 00 1A 61 01 01 C8 13 | Байт 0: 0x22 – 0b0010 (не последняя строка данных) + 0x02 (cчетчик принимаемых пакетов 2). Байт 1,2: 0x00 0x1A длина 26 байт. Байт 3,4: 0x61 0x01 – положительный ответ на команду запроса параметров 0x21+0x40=0x61 из 0x1 группы. Байт 5: 0х01 – Запрос RPM (соответсвует протоколу KW1281). Байт 6,7: (0xC8 * 0x13)/5 = 760 RPM (формула соответствует протоколу KW1281) |
300 23 05 0A 99 14 32 86 10 | Байт 1: 0x05 – запрос ОЖ. Байт 2,3: (0x0A * 0x99)/26 = 57.0 C. Байт 4: 0x14 = запрос лямбда контроль %. Байт 5,6: 0x32*0x86; Байт 7: 0х10 – двоичная настройка |
300 24 FF BE 25 00 00 25 00 | 0x25 0x00 x00 – Заполнитель, до 8 параметров |
300 15 00 25 00 00 25 00 00 | Байт 0: 0x15 – 0b0001 (последняя строка данных) + 0x5 (счетчик принимаемых пакетов 5) |
740 B5 | Отправляем ACK. Прибывляем к нашему предыдущему ACK количество полученных пакетов 0xB1 + 0x4 = 0xB5 |
300 A3 | Запрос KeepAlive, что мы еще на связи |
740 A1 0F 8A FF 4A FF | Ответ KeepAlive |
740 A8 | Мы разрываем связь |
300 A8 | ЭБУ в ответ тоже разрывает связь |
Во второй версии мобильного приложения VAG Virtual Cockpit появилась возможность диагностировать двигатель и трансмиссию по протоколу VW TP 2. 0.
VAG Virtual Cockpit – экран с данными от двигателя по протоколу VW TP 2.0Диагностический адаптер ELM327
Для меня некоторое время было вопросом, как получить данные из CAN шины и передать на телефон. Можно было бы разработать собственный шлюз с Wi-Fi или Bluetooth, как это делают производители сигнализаций, например Starline. Но изучив документацию на популярный автомобильный сканер ELM327 понял, что его можно настроить с помощью AT команд на доступ к CAN шине.
Копия диагностического сканера ELM327Не все ELM327 одинаково полезныОригинальный ELM327 от компании elmelectronics стоит порядка 50$, в России я таких не встречал в продаже. У нас продаются только китайские копии/подделки, разного качества и цены 10-30$. Бывают полноценные копии, которые поддерживают все протоколы, а бывают и те которые умеют отвечать только на несколько команд, остальные игнорируют, такие адаптеры не имеют доступ к CAN шине. Я например пользуюсь копией Viecar BLE 4.0, который поддерживает 100% всех функций оригинала.
Для работы с протоколом UDS через ELM327 нужно указать адреса назначения, источника и разрешить длинные 8 байтные сообщения, по умолчанию пропускается максимум 7 байт.
Последовательность ELM327 AT команд для работы с UDS по CAN шине:
ATZ // сброс настроек AT E0 // отключаем эхо AT L0 // отключаем перенос строки AT SP 6 // Задаем протокол ISO 15765-4 CAN (11 bit ID, 500 kbaud) AT ST 10 // Таймаут 10 * 4 мс, иначе EBU шлет повторные ответы каждые 100 мс, а мы не отвечаем, потому что ожидаем конца, а нам нужен только первый ответ AT CA F0 AT AL // Allow Long (>7 byte) messages AT SH 7E0 // задаем ID, к кому обращаемся (двигатель) AT CRA 7E8 // CAN Receive Address. Можно задать несколько 7Xe AT FC SH 7E0 AT FC SD 30 00 00 AT FC SM 1 // Режим Flow Control 1 должен быть определен после FC SH и FC SD, иначе в ответ придет "?" 03 22 F4 0С 55 55 55 55 // UDS запрос оборотов двигателя
Для работы с протоколом KWP2000 через ELM327 нужно только указать адреса назначения и источника.
Последовательность ELM327 AT команд для работы с VW TP 2.0 по CAN шине:
ATZ // сброс настроек AT E0 // отключаем эхо AT L0 // отключаем перенос строки AT SP 6 // Задаем протокол ISO 15765-4 CAN (11 bit ID, 500 kbaud) AT PB C0 01 AT SP B // Задаем протокол USER1 CAN (11* bit ID, 125* kbaud) AT ST 10 // Таймаут 10 * 4 мс, иначе EBU шлет повторные ответы каждые 100 мс, а мы не отвечаем, потому что ожидаем конца, а нам нужен только первый ответ AT SH 200 // Обращаемся к 200 ID AT CRA 201 // Ждем ответа от 201 Блок управления двигателем, 202 - Transmission, 203 - ABS, 207 - Приборная панель 01 C0 00 10 00 03 01 // Initiate channel setup with ECU module - 01, request it use CAN ID 0x300; Transmission 02; ABS 03 AT SH 740 // адрес блока 740 получен в ответе на предыдущую команду AT CRA 300 // Ждем ответа от 300 ID A0 0F 8A FF 32 FF // Tell ECU module to send 16 packets at a time, and set timing parameters 10 00 02 10 89 // Send KWP2000 startDiagnosticSession request 0x10 with 0x89 as a parameter. B1 // ACK 11 00 02 1A 9B // Запрос названия блока KWP2000
Мобильное приложение VAG Virtual Cockpit
Для разработки мобильного приложения подключаемого к автомобилю требовалось:
Сниффером собрать трафик от диагностической утилиты VCDS
Изучить работу протоколов UDS, VW TP 2.0, KWP2000
Настроить диагностический сканер ELM327 на работу с UDS и VW TP 2.0
Изучить новый для меня язык программирования Swift
В итоге получилось приложение, которое сочетает в себе функции отображения точных данных панели приборов и диагностика основных параметров двигателя и трансмиссии.
Пару слов про точность данных. Штатная панель приборов не точно показывает скорость – завышает показания на 5-10 км/ч, стрелка охлаждающей жидкости всегда на 90 °C, хотя реальная температура может быть 80 – 110 °C, стрелка уровня топлива до середины идет медленно, хотя топлива уже меньше половины и при нуле на самом деле топливо еще есть в баке. Производитель это делает для удобства и безопасности водителя.
На данный момент приложение показывает следующие параметры:
Приборная панель | Двигатель | Трансмиссия (температура) |
1) Какая дверь открыта | 1) Обороты | 1) ATF AISIN (G93) |
Я стремлюсь чтобы приложение поддерживало как можно больше моделей автомобилей. Пока что поддерживаются производители: Volkswagen, Skoda, Seat, Audi. На разных комплектациях могут отображаться не все параметры, но это поправимо.
Сейчас я провожу тестирование версии 3.0. Приложение доступно только на iOS, после релиза 3.0 перейду к разработке версии для Android.
Если интересно потестировать и есть желание принять участие в проекте, то установить приложение можно по ссылке. Также я веду бортжурнал на drive2.ru, где делюсь полезной информацией и новостями о VAG Virtual Cockpit.
Canbus и мотоциклы — что это такое и почему меня это должно волновать?
Если вам интересно, какие технологии вы ожидаете увидеть на мотоциклах будущего, обратите внимание на современные автомобили. От антиблокировочной тормозной системы до контроля тяги и изменения фаз газораспределения почти все технологии, на которые мы смотрим в современных мотоциклах, появились в автомобилях 20 лет назад. Или больше. К настоящему времени эффект просачивания этой технологии таков, что даже ваш обычный пригородный автомобиль уже включает ее.
Другим примером технологии просачивания, которую мы начинаем видеть на современных мотоциклах, является система CANBUS. Мы уделяем много внимания технологиям, когда они делают мотоцикл быстрее или безопаснее, но не слишком много внимания уделяется электронной инфраструктуре, которую некоторые OEM-производители используют, чтобы все эти подсистемы могли работать вместе. Наконец, инженеры-электронщики, настал ваш момент проявить себя. Вот краткий обзор CANBUS и того, как он используется на мотоциклах.
Начало
Прежде чем мы начнем, вы должны знать, что это ни в коем случае не исчерпывающая и всесторонняя история и описание сети CANBUS, а скорее краткий обзор того, что это такое и почему вас это должно волновать.
История начинается в начале 1980-х годов, когда компания Bosch разработала протоколы для сети CANBUS. Десять лет спустя автомобильная промышленность начала принимать его в качестве стандарта для будущих автомобилей. Снова перенесемся в начало 2000-х годов, и BMW считается первым производителем, внедрившим технологию на двух колесах.
Но все равно возникает вопрос: что такое CANBUS?
Обзор
Традиционно электронная система мотоцикла начинается с аккумулятора, и к нему подключается любой компонент, зависящий от питания. Блок предохранителей будет стоять между компонентом и батареей, чтобы защитить оба элемента от повреждения в случае скачка сопротивления, а перегоревший предохранитель будет последним жертвенным элементом в обеспечении безопасности всего.
Слева от картинки вы увидите блок предохранителей на этом KTM 390 Duke. Вокруг него вы видите различные незакрепленные разъемы. Система CAN устраняет блок предохранителей и делает проводку чище.
По мере того, как технологии мотоциклов продолжают развиваться, эта система проводки «точка-точка» становится все более сложной и громоздкой. Тем не менее, многие новые мотоциклы на дорогах сегодня по-прежнему полагаются на эту систему. Некоторые утверждают, что одним из преимуществ является то, что в случае отказа подсистемы вы часто можете проследить путь ее питания до перегоревшего предохранителя. Просто замените его, и вы снова в деле. Тем не менее, критики сказали бы, что усилия по сортировке все большего и большего беспорядка проводов доставляют хлопоты, и вы не обязательно будете знать, в чем проблема каждый раз, пока не отследите проводку.
Термин CAN (локальная сеть контроллеров) BUS относится к сетевому протоколу, обычно с центральным компьютером, отдельным от ЭБУ мотоцикла, выступающим в качестве центрального коммуникационного узла между всеми другими подсистемами. Подсистемами мы говорим обо всем, от фар и указателей поворота до системы управления двигателем и ABS. Короче, все .
Сеть передачи данных CANBUS можно рассматривать как нервную систему человека. Наверху у нас есть мозг. Мозг посылает сигналы через центральный канал (нервную систему) в различные части тела, чтобы они что-то сделали. То же самое верно и для сети CAN. Центральный компьютер — это концентратор, а единый жгут проводов — это нервная система, соединяющая компьютер с подсистемами, позволяющая им общаться и «делать что-то».
Эта схема проводки CAN взята от BMW GS 2004 года. Если вы следите за собой дома, это было 17 лет назад! С тех пор мотоциклы стали более сложными, но основной принцип тот же. Центральный компьютер является основным хабом, далее от него ответвляются различные провода и разъемы ко всем подсистемам по всему мотоциклу. Все, от стоп-сигнала до АБС, связано с центральным компьютером.
Поскольку имеется один жгут проводов, различные функции могут быть связаны друг с другом, то есть один провод может выполнять несколько задач, что уменьшает количество необходимых проводов по сравнению с обычной системой «точка-точка». Все различные подсистемы имеют свои собственные микрокомпьютерные командные станции, которые постоянно обмениваются данными с центральным компьютером, чтобы контролировать все. В случае сбоя центральный компьютер автоматически выключает эту конкретную систему, устраняя необходимость в блоке предохранителей. Вместо того, чтобы искать провода, чтобы сузить проблему, на приборной панели будет отображаться какой-то код ошибки (или сообщение, или индикатор). Именно это имеют в виду, когда люди говорят, что их тире «бросают код». Затем считыватель кода может сказать вам, в чем проблема.
Но есть проблема
Вот тут-то и возникают сложности с протоколом CAN. Центральный компьютер запрограммирован на прием определенной потребляемой мощности или сопротивления каждой подсистемы. Иногда, когда вы модифицируете свой мотоцикл, вы измените эти показания. Это сбивает компьютер с толку и иногда приводит к неправильной работе детали и/или появлению сообщений об ошибках на приборной панели.
Если вы переходите с ламп накаливания на светодиоды, не забудьте выбрать сменные лампы, соответствующие шине CAN.
Типичным примером этого является ваша система освещения. На мотоциклах с фарами накаливания принято переходить на светодиоды. Поскольку светодиоды потребляют гораздо меньше энергии, чем лампы накаливания, центральный компьютер не распознает сопротивление светодиода и выдает код. Аналогичные проблемы возникают, скажем, если вы добавите ручки с подогревом.
Вы также можете заметить, что некоторые туристические велосипеды имеют странный зарядный порт, который похож на 12-вольтовый прикуриватель, но немного меньше. Этот порт DIN не только раздражает, поскольку требует специального зарядного устройства, но и на мотоциклах, использующих CANBUS, вам также необходимо зарядное устройство, подходящее для CANBUS, чтобы компьютер распознавал (и был доволен) потребляемой мощностью.
Исправление
Итак, что вы делаете? Есть несколько вариантов. Один из способов — полностью обойти компьютеры и подключить любой аксессуар, который вы хотите использовать, напрямую к аккумулятору мотоцикла. Очевидной проблемой здесь является риск разряда аккумулятора, если вы забудете выключить аксессуар. Кроме того, есть производители вторичного рынка, выпускающие аксессуары для CAN, которые хорошо сочетаются с системой CANBUS. В приведенном выше примере с фарами есть светодиодные фары CAN, которые являются прямой заменой стандартных блоков. Загвоздка в том, что для того, чтобы быть совместимыми с CAN, они потребляют одинаковое количество энергии, чтобы компьютер был доволен, что в первую очередь устраняет преимущество светодиодных ламп.
Если вы приверженец старой школы, вы можете питать свои аксессуары напрямую от аккумулятора. Только не забудьте выключить эту штуку, когда закончите.
Другим вариантом является использование контроллеров шины CAN сторонних производителей, при условии, что они доступны для вашего мотоцикла. Обычно они подключаются к диагностическому порту и отправляют соответствующие сигналы на основной компьютер CAN. Затем ваши аксессуары подключатся к нему, а иногда их можно активировать с помощью существующих кнопок на вашем мотоцикле для более чистого вида.
Понял?
Начинаешь понимать? Что ж, нам потребовалось несколько прочтений, чтобы понять смысл. Многие люди, в том числе и мы, озадачены электрическими системами на наших мотоциклах, особенно когда спагетти проводов под ними становится все больше и все более устрашающими. Как бы то ни было, сегодня все еще продается большое количество новых мотоциклов с традиционным блоком предохранителей, но разумно ожидать, что ситуация изменится по мере того, как в мотоциклы будущего будет загружаться больше технологий. Так что лучше сейчас разобраться в этом.
Harley-Davidson часто ругают за то, что он застрял в каменном веке, но The Motor Company уже несколько лет внедряет CAN BUS в свои модели.
Ирония судьбы заключается в том, что автомобильная промышленность уже исследует следующее поколение протоколов данных, потенциально делая технологию CAN устаревшей на четырех колесах, в то время как на двух колесах она все еще находится в зачаточном состоянии.
Часто задаваемые вопросы
Что такое система CANBUS?
Термин CAN (локальная сеть контроллеров) BUS относится к сетевому протоколу, обычно с центральным компьютером, отдельным от ЭБУ мотоцикла, выступающим в качестве центрального коммуникационного узла между всеми другими подсистемами.
Что такое CANBUS на мотоциклах BMW?
CANBUS на мотоцикле выполняет те же функции, что и на автомобиле. Сеть передачи данных CANBUS можно рассматривать как человеческую нервную систему. Наверху у нас есть мозг. Мозг посылает сигналы через центральный канал (нервную систему) в различные части тела, чтобы они что-то сделали. В начале 2000-х BMW считается первым производителем, внедрившим технологию на двух колесах.
Где находится CANBUS?
CANBUS обычно является частью жгута проводов с разъемами, соединяющими его с различными подсистемами мотоцикла (например, ABS, ECU и почти все остальное, управляемое с помощью электричества).
Станьте инсайдером Motorcycle.com . Получайте последние новости о мотоциклах первыми, подписавшись на нашу рассылку здесь.
Протокол шины CAN: полное руководство (2023)
Обновлено 29 января 2023 г.
— Шина CAN (локальная сеть контроллеров) — это стандарт автомобильной шины, предназначенный для обеспечения связи устройств и микроконтроллеров с приложениями друг друга.
Служба поиска идеальных решений для вашего бизнеса
Все решения настраиваются и разрабатываются с учетом всех ваших потребностей.
Найти решение
Шина CAN расшифровывается как Контроллер Связь по локальной сети и состоит из двух электрических проводов, называемых CAN_Low и CAN_High. Информация внутри каждый транспортное средство передается от и к ЭБУ. Кроме того, CAN-шина создан для надежной работы в суровых условиях.
Мы подготовили простое введение в CAN-шину. Было рассмотрено несколько тем, чтобы дать вам лучшее объяснение протокола CAN.
Работая над статьей, мы объединили знания от наших ведущих экспертов внутри компании, а также от членов команды, не являющихся экспертами.
Почему? Идея заключалась в том, чтобы написать профессиональное, но простое введение в CAN-шину для всех, нет независимо от того, сколько у вас опыта.
В заключение, не имеет значения, если вы вообще ничего не знаете о протоколе CAN-шины или вы уже являетесь про. Это простое руководство по вводу в CAN-шину дать вам всю необходимую информацию.
Что такое CAN-шина?
Шина CAN — это набор из двух электрических проводов в сети автомобиля (CAN_Low и CAN_High), где информация посылаются в и из ЭБУ. Сеть, которая позволяет ЭБУ обмениваться данными, называется зоной контроллера. Сеть (МОЖЕТ).
Шина CAN представляет собой последовательную коммуникационную шину, предназначенную для надежной работы в неблагоприятных условиях. прежде всего в промышленности и автомобилестроении.
По сути, это стандарт автомобильной шины, который позволяет микроконтроллерам и устройствам взаимодействовать друг с другом. другой.
Шина CAN является одним из протоколов, используемых в бортовом Диагностика (ОБД). В настоящее время OBD-2 является обязательным для всех новых автомобилей и легких грузовиков. вокруг глобус.
Система шины CAN легко объяснима
Попробуем взглянуть на это совсем с другой точки зрения.
Представьте, что автомобиль подобен человеческому телу, а нервная система в человеческом теле — это Контроллер. Область Сеть (шина CAN) в автомобиле, которая также обеспечивает связь.
узлы или электронные блоки управления (ЭБУ) — это что-то вроде частей тела, которые связаны между собой через Связь по CAN-шине. Информация может быть легко передана между сторонами. Это намного проще понимать, не так ли?
Система шины CAN
В зависимости от типа автомобиля, он может иметь до 70 ECU (электронных блоков управления), и каждый из них должен использоваться совместно с другими частями системы. сеть.
Некоторые примеры предназначены для пример; аудиосистема, подушки безопасности, блок управления двигателем, блок управления дверьми и так далее. Шина CAN позволяет ЭБУ обмениваться данными друг с другом.
Думайте об ЭБУ как о чем-то конкретном люди. Один ECU может формировать и передавать информацию по шине CAN другим ECU, которые принимают данные. После что они проверят данные и решат, хотят ли они их получить или проигнорировать.
Шина CAN использует два провода для связь – CAN low и CAN high (CANL и CAN H). ISO 11898-2 описывает физический уровень шины CAN и ISO 11898-1 описывает уровень канала передачи данных.
Физический уровень представляет типы кабелей, требования к узлам, уровни электрических сигналов, импеданс кабеля, и т. д.
С другой стороны, ISO 11898-2 представляет такие параметры, как скорость передачи данных, длина кабеля и подключение.
Длина кабеля должна быть 40 метров (1 Мбит/с) или 500 метров (125 кбит/с).
Шина CAN должна быть терминирована с помощью резистора шины CAN 120 Ом на конце каждой шины.
Узлы CAN должны быть подключены через двухпроводную шину со скоростью передачи данных до 1 Мбит/с (CAN) или 5 Мбит/с. (МОЖЕТ ФД).
5 преимуществ протокола CAN-шины
Стандарт шины CAN обычно используется во всех транспортных средствах благодаря его ключевым преимуществам, таким как:
Прочность
Стандарт шины CAN идеально подходит для приложений безопасности, таких как транспортные средства, благодаря своей долговечности и надежности. надежность. Также имеется 5 механизмов для обнаружения ошибок в протоколе CAN, таких как вставка битов, мониторинг битов, рамка проверка, проверка подтверждения и проверка циклическим избыточным кодом.
Недорогой
Когда был создан протокол CAN, его целью было обеспечение быстрой связи между электронными устройства и модулей, уменьшая при этом количество ошибок, вес, проводку и затраты.
Скорость
В настоящее время определяется двумя физическими уровнями — высокоскоростной CAN (CAN h) и низкоскоростной CAN (CAN L), оба с свой собственный преимущества и недостатки.
Гибкость
Протокол шины CAN хорошо известен как протокол, основанный на сообщениях, что означает, что узлы могут быть легко добавлены или удалены. без выполнения каких-либо обновлений в системе. Это позволяет инженерам легко интегрировать новые электронных устройств без существенного программирования и модифицировать его под свои требования.
Эффективность
Данные с высоким приоритетом будут иметь приоритет по идентификатору, чтобы получить немедленный доступ к шине, не прерывая другой кадры.
Проводка CAN-шины
Одним из лучших преимуществ CAN-шина это уменьшенное количество проводов в сочетании с изобретательным предотвращением коллизии сообщений.
Другими словами, никакие данные не будут потеряны во время передачи сообщения.
Два приведенных ниже примера иллюстрируют Протокол CAN и как он будет выглядеть с системой шины CAN и без системы шины CAN.
Очевидно, что с шиной CAN узлам намного проще общаться и перемещаться по ней.
С другой стороны, без CAN-шины узлам гораздо труднее взаимодействовать друг с другом и общение малоэффективно.
Существует несколько различных типов сетей. Вы можете найти простое объяснение ниже.
Высокоскоростная шина CAN (ISO 11898)
Поддерживает скорость передачи от 40 кбит/с до 1 Мбит/с.
Простая кабельная разводка.
Большинство обычно используется в наши дни.
Основа для протоколов более высокого уровня, таких как OBD2, CANopen, j1939 и другие.
Низкоскоростная шина CAN
Поддерживает скорость передачи от 40 кбит/с до 125 кбит/с.
Позволяет продолжить связь, несмотря на неисправность одного из двух проводов.
Также известен как отказоустойчивый CAN.
Каждый узел CAN имеет собственное окончание CAN.
LIN-шина
Недорогая добавка.
Меньше обвязки.
Более дешевые узлы.
Обычно состоит из шины LIN мастер, который работает как шлюз – до 16 ведомых узлов.
Обычно включает в себя функции автомобиля, такие как функциональность дверей или кондиционер.
Автомобильная промышленность Ethernet
Ethernet поддерживает высокие требования к пропускной способности Advanced Driver Вспомогательные системы (ADAS), камеры, информационно-развлекательные системы и так далее.
Обеспечивает гораздо более высокую скорость передачи данных, чем шина CAN.
Не хватает функций безопасности CAN и CAN FD.
Скорее всего, в ближайшие годы они будут широко использоваться в автомобильной промышленности. промышленность.
МОЖЕТ ФД
Обычно используется в современных высокопроизводительных автомобилях.
CAN FD является расширением оригинального CAN. автобус протокол.
Выпущен в 2012 году компанией Bosch.
Разработан для удовлетворения потребности в увеличении передачи данных.
Что такое кадр сообщения CAN?
Кадры CAN используются для связи по шине CAN. CAN использует дифференциальный сигнал с двумя логическими состояниями – доминирующий и рецессивный.
Сеть CAN использует два сообщения CAN – стандартное CAN и расширенное CAN, которые описаны ниже.
На изображении ниже показан типичный кадр CAN с 11-битной идентификацией, которая используется в большинстве автомобилей. За исключением большего ID, расширенный 29-битовый кадр идентификатора идентичен.
Стандартный CAN-фрейм
Первый бит — это начало кадр (SOF), который представляет собой начало сообщения CAN . Следующим является 11-битный идентификатор, который организует приоритет сообщения CAN. Чем меньше идентификатор, тем выше его приоритет.
Запрос удаленной передачи (RTR) обычно является доминирующим, но становится рецессивным, когда узлы запрашивают данные друг у друга.
Следующим битом является бит расширения идентификатора (IDE), который является доминирующим при отправке стандартного кадра CAN, а не расширенный один. Бит r0 инвертирован и в настоящее время не используется.
Следующим является код длины данных. (DLC), который указывает, сколько байтов данных содержится в текущем сообщении. Еще одна важная часть — данные. себя, где это то же количество байтов, что и в битах DLC.
Следующим является проверка циклическим избыточным кодом (CRC), представляющая собой 16-битную контрольную сумму, которая обнаруживает ошибки и проблемы. в в передаваемые данные.
В случае, если сообщение получено правильно, принимающий узел перезапишет рецессивный бит подтверждения. (ACK) с доминирующий бит. Конец кадра (EOF) указывает на конец сообщения CAN.
Он имеет ширину 7 бит и обнаруживает ошибки вставки битов. Последняя часть сообщения CAN — это интеркадр. космос (IFS), который используется в качестве временной задержки.
Расширенный кадр CAN
В расширенном кадре CAN используется 29-битный идентификатор с парой дополнительных битов. Расширенный 29-битный идентификатор (CAN 2.0B) идентичен, но имеет более длинный идентификатор и обычно используется в j1939 протокол – большегрузные автомобили. CAN использует два логических состояния; доминантный и рецессивный.
Доминант
Указывает, что дифференциальное напряжение выше минимального порога. В Кроме того, доминирующий состояние также достигается путем подачи логического «0» на шину.
Рецессивный
Указывает на то, что дифференциальное напряжение ниже минимального порога. С другой сторона, рецессивный состояние достигается логической «1».
Он также имеет замену пульта дистанционного управления бит запроса (SRR), который идет после 11-битного идентификатора и действует как заполнитель, чтобы сохранить такой же структурирован как стандартный кадр CAN.
Расширение идентификатора (IDE) должно быть рецессивным, а расширенный идентификатор должны следовать ему соответственно.
Запрос удаленной передачи (RTR) идет сразу после 18-битного идентификатора. Обратный бит r1 следует по пути и остальная часть сообщения остается прежней.
Регистрация данных шины CAN
Регистрация данных CAN может выполняться с нескольких типов транспортных средств, таких как легковые автомобили, большегрузные транспортные средства, прогностические техническое обслуживание и черный ящик машины.
Данные автомобиля есть собираются через порт OBD2 и обычно используются для снижения затрат на топливо, увеличения пробега автомобиля и многого другого.
С другой стороны, данные с большегрузных автомобилей собираются через j1939 и обычно используются для улучшения безопасность и снижение затрат.
Транспортные средства и механизмы могут быть также контролируется через IoT CAN регистраторы . Это можно сделать в облаке, чтобы избежать поломок. Регистратор CAN может предоставить данные для споров или диагностики. Его еще называют черным ящиком.
Журналирование шины CAN обычно используется в управлении автопарком, благодаря своей эффективности и увеличенное количество возможностей.
Регистратор CAN необходим для записать данные CAN. Это позволяет сохранять данные CAN с временными метками на SD-карте. В некоторых ситуациях интерфейс CAN требуется для передачи данных на ПК, например, при декодировании данных.
Пример: TMU SocketCAN
TMU SocketCAN позволяет с легкостью записывайте данные с любой шины CAN на карту Micro SD емкостью 8–32 ГБ. Просто прикрепите его к машине или грузовику, чтобы начать ведение журнала, а затем закодируйте данные с помощью нашего бесплатного программного обеспечения для управления.
Кроме того, TMU SocketCAN имеет WiFi, что позволяет автоматически загружать данные на свой собственный сервер, а также обновлять устройства по беспроводной сети.
Расшифровка необработанных данных CAN
Необработанные данные CAN плохо читаются. Поэтому мы подготовили для вас руководство. Ознакомьтесь с руководством по как регистрировать необработанные сообщения CAN.
Шина CAN поддерживает основу для общения, но не более того. Протокол CAN не указывает, как обращаться с Сообщения больше 8 байт, или как декодировать данные RAW.
Чтобы показать, как данные передается между узлами CAN сети, набор стандартизированных протоколов пригодится. Есть несколько протоколов более высокого уровня, таких как; ОБД2, CANopen, CAN FD и SAE J1939.
ОБД2
OBD имеет функцию самодиагностики, которую в основном используют механики для анализа проблем с автомобилем и общего состояния автомобиля. здоровье автомобиля. OBD2 определяет коды неисправностей (DTC) и данные в реальном времени (об/мин, скорость и т. д.), которые могут быть записаны через регистраторы OBD2.
CANopen
CANopen обычно используется во встроенных приложениях управления, таких как промышленная автоматизация. на основе CAN, что означает, что регистратор данных шины CAN также может регистрировать данные CANopen.
МОЖЕТ ФД
CAN FD по сути является шиной CAN с гибкой скоростью передачи данных и расширением классической линии передачи данных CAN. слой. По сравнению с классическим протоколом CAN, CAN FD увеличивает полезную нагрузку с 8 до 64 байт. Это также позволяет более высокую скорость передачи данных, в зависимости от приемопередатчика CAN.
САЕ Дж1939
J1939 обычно используется в большегрузных транспортных средствах. J1939 такие параметры, как число оборотов в минуту и скорость, анализируются по подозрительному номеру параметра (SPN). После этого они группируются в группы параметров и классифицируются по номеру PG (PGN).
Высокая скорость передачи данных тарифные предложения DoIP диагностика, точнее примерно в 100 раз CAN диагностика.
История CAN-шины
Сеть зоны управления (шина CAN) имеют богатую историю и прошли несколько этапов развития. Фактические этапы развития в течение нескольких лет могут быть видно ниже.
Разработка шины CAN восходит к 1983 году, когда Bosch первоначально изобрел сеть диспетчерских зон, а затем был кодифицирован в ISO 1189.8-1 стандарт.
Позднее в 1986 году протокол CAN был представлен Обществу автомобильных инженеров (SAE).
Intel была первой, кто представил микросхемы контроллера CAN в 1987 году, и вскоре к Intel присоединился Филлипс. после этого.
В 1991 году Bosch опубликовала CAN 2.0 (CAN 2.0A: 11 бит, 2.0B: 29 бит).
Шина CAN, как международный стандарт ISO 11898, была принята в 1993 году.
В 2003 году ISO 11898 стал серией стандартов.
В 2012 году Bosch выпустила CAN FD 1.0 — гибкую скорость передачи данных.
В 2015 году протокол CAN FD был стандартизирован в ISO 11898-1.
Наконец, физический уровень CAN со скоростью до 5 Мбит/с стандартизирован в ISO 1189.8-2, 2016 год.
В будущем шина CAN по-прежнему будет широко использоваться, но на нее будут влиять основные тенденции автомобильной промышленности, такие как; рост Интернета вещей и подключенных транспортных средств, влияние автономных транспортных средств, рост облачных вычислений, в потребность в расширенной функциональности автомобиля и многое другое.
Потребность в CAN FD возрастает, и многие эксперты предполагают, что он постепенно заменит классический протокол шины CAN.