Зачем
Шина CAN (Controller Area Network) — цифровая сеть, которая связывает десятки блоков управления автомобиля вместо километров отдельных проводов.
Проблема, которую решает CAN: слишком много проводов
В прошлом уроке разобрали, что современный автомобиль содержит несколько десятков электронных блоков управления — двигателем, коробкой передач, ABS, подушками безопасности, климатом, каждой дверью. Если бы каждому блоку требовался отдельный провод к каждому другому блоку, с которым он обменивается данными, проводка автомобиля превратилась бы в непроходимый жгут толщиной с руку, весом в десятки килограммов, с сотнями точек потенциального обрыва.
CAN (Controller Area Network — «сеть контроллерной области») решает эту проблему радикально: вместо отдельных проводов между каждой парой блоков — одна общая пара проводов (шина), к которой параллельно подключены все блоки управления. Любой блок может отправить сообщение в шину, и любой другой блок, которому это сообщение нужно, его получает — примерно как объявление по громкой связи, а не личный звонок каждому.
Как это физически работает: коротко о главном
Шина CAN — это два провода, условно называемые CAN-H (High) и CAN-L (Low). Информация передаётся не абсолютным уровнем напряжения на одном проводе (как в простой цепи «плюс — минус»), а разностью напряжений между этими двумя проводами — это называется дифференциальный сигнал.
Важно
Дифференциальный сигнал — не техническая прихоть, а прямая защита от помех. Электромагнитные наводки от системы зажигания, генератора, электромоторов действуют на оба провода почти одинаково — и при вычитании (CAN-H минус CAN-L) взаимно гасятся. Приёмник видит чистый сигнал даже в электрически «шумной» среде моторного отсека. Это одна из причин, почему CAN стал стандартом именно для автомобилей, а не более простые схемы передачи данных.
Каждое сообщение в шине CAN снабжено идентификатором приоритета: если два блока пытаются заговорить одновременно, побеждает сообщение с более высоким приоритетом (например, сигнал от подушек безопасности важнее сигнала от климат-контроля), а менее приоритетное автоматически повторяет попытку чуть позже. Так шина остаётся работоспособной даже при интенсивном обмене данными, без централизованного диспетчера.
Зачем это диагносту, а не только инженеру-разработчику
Диагносту не нужно программировать протокол CAN — но нужно понимать три вещи:
- Именно через шину CAN сканер получает доступ ко всем блокам управления машины — не физически подключаясь к каждому отдельно, а слушая (и иногда посылая запросы в) общую шину через один разъём. Это прямая основа для стандарта OBD-II, с которым знакомит следующий курс: диагностический разъём — это, по сути, точка доступа именно к этой шине.
- Обрыв или короткое замыкание в проводах шины может «уронить» сразу несколько систем одновременно — а не одну, как при отказе локального датчика. Если после ДТП или неаккуратного ремонта разом перестали работать несколько несвязанных на первый взгляд систем (например, климат-контроль и приборная панель), это повод заподозрить именно шину, а не искать совпадение независимых поломок.
- Сигнал CAN — это не постоянное напряжение, а быстро переключающиеся цифровые импульсы. Обычным мультиметром его осмысленно не измерить (вольтметр покажет усреднённое, малоинформативное значение) — для реальной диагностики сигнала на линии используется осциллограф, который отдельно разбирает урок про осциллограф в диагностике в следующем курсе.
Разобранный пример
Типичная ситуация на объекте: «ошибка потери связи с блоком»
Сканер при диагностике выдаёт код вроде «нет связи с блоком ABS» — притом что сам блок ABS, если его проверить отдельно, полностью исправен. Опытный диагност в такой ситуации в первую очередь проверяет не сам блок, а физическую целостность и правильное сопротивление линии CAN (у исправной шины между CAN-H и CAN-L на заглушенном автомобиле должно быть определённое номинальное сопротивление, заданное согласующими резисторами по концам шины) — обрыв провода или короткое замыкание в жгуте гораздо более вероятная причина, чем отказ самого блока.
Типичные ошибки
- Пытаться диагностировать сигнал CAN обычным мультиметром и делать по нему выводы об исправности шины — прибор для этой задачи не подходит, тестировать нужно осциллографом или специализированным адаптером.
- Не учитывать, что одна физическая неисправность жгута может имитировать сразу несколько «разных» поломок — начинающий диагност начинает менять блоки по одному, вместо того чтобы сначала прозвонить саму шину.
- Путать CAN с диагностическим протоколом OBD-II — CAN это физическая сеть и способ передачи данных между блоками автомобиля, а OBD-II (в его современной реализации) — это один из стандартов, который использует эту сеть для диагностического доступа. Разницу подробно разбирает следующий курс.
Проверь себя
- Почему шина CAN использует разность напряжений между двумя проводами, а не абсолютный уровень напряжения на одном?
- Объясни своими словами, почему обрыв в шине CAN может «уронить» сразу несколько разных систем автомобиля одновременно.
- Почему обычный мультиметр плохо подходит для диагностики сигнала CAN, и какой прибор используют вместо него?
Документы и ресурсы
Обязательные
- Норматив ГОСТ Р ИСО 11898-1-2015 Транспорт дорожный. Местная контроллерная сеть (CAN). Часть 1. Канальный уровень и передача сигналов официальная спецификация протокола CAN — физический и канальный уровень; читать как справочник, не целиком
Рекомендуемые
- Книга Соснин Д.А., Яковлев В.Ф. «Новейшие автомобильные электронные системы», М.: СОЛОН-Пресс, 2005 архитектура мультиплексных сетей управления в автомобиле, взаимодействие блоков управления
Отмечайте прогресс — заведите бесплатный аккаунт. Уже есть? Войти.