Принцип работы и диагностика CAN-шины в автомобиле

Появление цифровых шин в автомобилях произошло позднее, чем в них начали широко внедряться электронные блоки. В то время цифровой «выход» им был нужен только для «общения» с диагностическим оборудованием – для этого хватало низкоскоростных последовательных интерфейсов наподобие ISO 9141-2 (K-Line). Однако кажущееся усложнение бортовой электроники с переходом на CAN-архитектуру стало ее упрощением.

кан-шина в автомобиле

Действительно, зачем иметь отдельный датчик скорости, если блок АБС уже имеет информацию о скорости вращения каждого колеса? Достаточно передавать эту информацию на приборную панель и в блок управления двигателем. Для систем безопасности это ещё  важнее: так, контроллер подушек безопасности уже становится способен самостоятельно заглушить мотор при столкновении, послав соответствующую команду на ЭБУ двигателя, и обесточить максимум бортовых цепей, передав команду на блок управления питанием. Раньше же приходилось для безопасности применять не надежные меры вроде инерционных выключателей и пиропатронов на клемме аккумулятора (владельцы BMW с его «глюками» уже хорошо знакомы).

Однако на старых принципах реализовать полноценное «общение» блоков управления было невозможно. На порядок выросли объем данных и их важность, то есть потребовалась шина, которая не только способна работать с высокой скоростью и защищена от помех, но и обеспечивает минимальные задержки при передаче. Для движущейся на высокой скорости машины даже миллисекунды уже могут играть критичную роль. Решение, удовлетворяющее таким запросам, уже существовало в промышленности – речь идет о CAN BUS (Controller Area Network).

Суть CAN-шины

Цифровая CAN-шина – это не конкретный физический протокол. Принцип работы CAN-шины, разработанный Bosch еще в восьмидесятых годах, позволяет реализовать ее с любым типом передачи – хоть по проводам, хоть по оптоволокну, хоть по радиоканалу. КАН-шина работает с аппаратной поддержкой приоритетов блоков и возможностью «более важному» перебивать передачу «менее важного».

Для этого введено понятие доминантного и рецессивного битов: упрощенно говоря, протокол CAN позволит любому блоку в нужный момент выйти на связь, остановив передачу данных от менее важных систем простой передачей доминантного бита во время наличия на шине рецессивного. Это происходит чисто физически – например, если «плюс» на проводе означает «единицу» (доминантный бит), а отсутствие сигнала – «ноль» (рецессивный бит), то передача «единицы» однозначно подавит «ноль».

Представьте себе класс в начале урока. Ученики (контроллеры низкого приоритета) спокойно переговариваются между собой. Но, стоит учителю (контроллеру высокого приоритета) громко дать команду «Тишина в классе!», перекрывая шум в классе (доминантный бит подавил рецессивный), как передача данных между контроллерами-учениками прекращается. В отличие от школьного класса, в CAN-шине это правило работает на постоянной основе.

Для чего это нужно? Чтобы важные данные были переданы с минимумом задержек даже ценой того, что маловажные данные не будут переданы на шину (это отличает CAN шину от знакомого всем по компьютерам Ethernet). В случае аварии возможность ЭБУ впрыска получить информацию об этом от контроллера SRS несоизмеримо важнее, чем приборной панели получить очередной пакет данных о скорости движения.

В современных автомобилях уже стало нормой физическое разграничение низкого и высокого приоритетов. В них используются две и даже более физические шины низкой и высокой скорости – обычно это «моторная» CAN-шина и «кузовная», потоки данных между ними не пересекаются. К всем  сразу подключен только контроллер CAN-шины, который дает возможность диагностическому сканеру «общаться» со всеми блоками через один разъем.

Например, техническая документация Volkswagen определяет три типа применяемых CAN-шин:

  • «Быстрая» шина, работающая на скорости 500 килобит в секунду, объединяет блоки управления двигателем, ABS, SRS и трансмиссией.
  • «Медленная» функционирует на скорости 100 кбит/с и объединяет блоки системы «Комфорт» (центральный замок, стеклоподъемники и так далее).
  • Третья работает на той же скорости, но передает информацию только между навигацией, встроенным телефоном и так далее. На старых машинах (например, Golf IV) информационная шина и шина «комфорт» были объединены физически.

  Интересный факт: на Renault Logan второго поколения и его «соплатформенниках» также физически две шины, но вторая соединяет исключительно мультимедийную систему с CAN-контроллером, на второй одновременно присутствуют и ЭБУ двигателя, и контроллер ABS, и подушки безопасности, и ЦЭКБС.

Физически же автомобили с CAN-шиной используют ее в виде витой дифференциальной пары: в ней оба провода служат для передачи единственного сигнала, который определяется как разница напряжений на обоих проводах. Это нужно для простой и надежной помехозащиты.  Неэкранированный провод работает, как антенна, то есть источник радиопомех способен навести в нем электродвижущую силу, достаточную для того, чтобы помеха воспринялась контроллерами как реально переданный бит информации.

Но в витой паре на обоих проводах значение ЭДС помехи будет одинаковым, так что разница напряжений останется неизменной. Поэтому, чтобы найти CAN-шину в автомобиле, ищите витую пару проводов – главное не перепутать ее с проводкой датчиков ABS, которые так же для защиты от помех прокладываются внутри машины витой парой.

Диагностический разъем CAN-шины не стали придумывать заново: провода вывели на свободные пины уже стандартизированной в OBD-II колодки, в ней CAN-шина находится на контактах 6 (CAN-H) и 14 (CAN-L).

разъем кан шины с контактами

Поскольку CAN-шин на автомобиле может быть несколько, часто практикуется использование на каждой разных физических уровней сигналов. Вновь для примера обратимся к документации Volkswagen. Так выглядит передача данных в моторной шине:

принцип работы кан шины - передача данных

Когда на шине не передаются данные или передается рецессивный бит, на обоих проводах витой пары вольтметр покажет по 2,5 В относительно «массы» (разница сигналов равна нулю). В момент передачи доминантного бита на проводе CAN-High напряжение поднимается до 3,5 В, в то время как на CAN-Low опускается до полутора. Разница в 2 вольта и означает «единицу».

На шине «Комфорт» все выглядит иначе:

протокол передачи данных

Здесь «ноль» это, наоборот, 5 вольт разницы, причем напряжение на проводе Low выше, чем на проводе High. «Единица» же – это изменение разности напряжений до 2,2 В.

Проверка CAN-шины на физическом уровне ведется с помощью осциллографа, позволяющего увидеть реальное прохождение сигналов по витой паре: обычным тестером, естественно, «разглядеть» чередование импульсов такой длины невозможно.

расшифровка работы кан шины на осциллографе

«Расшифровка» CAN-шины автомобиля также ведется специализированным прибором – анализатором. Он позволяет выводить пакеты данных с шины в том виде, как они передаются.

диагностика кан шины прибором

Сами понимаете, что диагностика шины CAN на «любительском» уровне без соответствующего оборудования и знаний не имеет смысла, да и банально невозможна. Максимум, что можно сделать «подручными» средствами, чтобы проверить кан-шину – это измерить напряжения и сопротивление на проводах, сравнив их с эталонными для конкретного автомобиля и конкретной шины. Это важно – выше мы специально привели пример того, что даже на одном автомобиле между шинами может быть серьезная разница.

проверка кан шины измерением сопротивления

Неисправности

Хотя интерфейс CAN и хорошо защищен от помех, электрические неисправности стали для него серьезной проблемой. Объединение блоков в единую сеть сделало ее уязвимой. КАН-интерфейс на автомобилях стал настоящим кошмаром малоквалифицированных автоэлектриков уже по одной своей особенности: сильные скачки напряжения (например, зимний запуск на сильно разряженном аккумуляторе) способны не только «повесить» ошибку CAN-шины, обнаруживаемую при диагностике, но и заполнить память контроллеров спорадическими ошибками, случайного характера.

В результате на приборной панели загорается целая «гирлянда» индикаторов. И, пока новичок в шоке будет чесать голову: «да что же это такое?», грамотный диагност первым делом поставит нормальный аккумулятор.

неисправности

Чисто электрические проблемы – это обрывы проводов шины, их замыкания на «массу» или «плюс». Принцип дифференциальной передачи при обрыве любого из проводов или «неправильном» сигнале на нем становится нереализуем. Страшнее всего  замыкание провода, поскольку оно «парализует» всю шину.

Представьте себе простую моторную шину в виде провода, на котором «сидят в ряд» несколько блоков – контроллер двигателя, контроллер АБС, приборная панель и диагностический разъем. Обрыв у разъема автомобилю не страшен – все блоки продолжат передавать информацию друг другу в штатном режиме, невозможной станет только диагностика. Если оборвать провод между контроллером АБС и панелью, мы сможем увидеть сканером на шине только ее, ни скорость, ни обороты двигателя она показывать не будет.

А вот при обрыве между ЭБУ двигателя и АБС машина, скорее всего, уже не заведется: блок, не «видя» нужный ему контроллер (информация о скорости учитывается при расчете времени впрыска и угла опережения зажигания), уйдет в аварийный режим.

Если не резать провода, а просто постоянно подать на один из них «плюс» или «массу», автомобиль «уйдет в нокаут», поскольку ни один из блоков не сможет передавать данные другому. Поэтому золотое правило автоэлектрика в переводе на русский цензурный звучит как «не лезь кривыми руками в шину», а ряд автопроизводителей запрещает подключать к CAN-шине несертифицированные дополнительные устройства стороннего производства (например, сигнализации).

Благо подключение CAN-шины сигнализации не разъем в разъем, а врезаясь непосредственно в шину автомобиля, дают «криворукому» установщику возможность перепутать провода местами. Автомобиль после этого не то что откажется заводиться – при наличии контроллера управления бортовыми цепями, распределяющего питание, даже зажигание не факт что включится.

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
mosautorent.ru
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: