На автомобиле применены несколько сетевых шин обмена данными CAN (Controller Area Network) между блоками (модулями) управления различных систем и контроллерами исполнительных устройств автомобиля.
Отдельные блоки управления объединены друг с другом в общую сеть и могут обмениваться данными.
Шина является двунаправленной, т.е. любое подключённое к ней устройство может принимать и передавать сообщения.
Сигнал с чувствительного элемента (датчика) поступает в ближайший блок управления, который обрабатывает его и передаёт на шину данных CAN.
Любой блок управления, подключённый к шине данных CAN, может считывать этот сигнал, вычислять на его основе значение управляющего воздействия и управлять исполнительным сервомеханизмом.
Обмен данными по шине CAN
|
|
|
B — Датчик 1
|
М — Исполнительные элементы
I - III
(сервомеханизмы)
N — Блоки управления (контроллеры) I - V |
При обычном кабельном соединении электрических и электронных устройств осуществляется прямое соединение каждого блока управления со всеми датчиками и исполнительными элементами, от которых он получает результаты измерений или которыми управляет.
Усложнение системы управления приводит к чрезмерной длине или многочисленности кабельных линий.
По сравнению со стандартной кабельной разводкой шина данных обеспечивает:
Шина данных CAN состоит из двужильного провода, выполненного в виде витой пары. К этой линии подключены все устройства (блоки управления устройствами).
Передача данных осуществляется с дублированием по обоим проводам, причём логические уровни шины данных имеют зеркальное отображение (то есть, если по одному проводу передаётся уровень логического нуля, то по другому проводу передаётся уровень логической единицы, и наоборот).
Двухпроводная схема передачи используется по двум причинам: для выявления ошибок и как основа надёжности.
Если пик напряжения возникает только на одном проводе (например, вследствие проблем с ЭМС (электромагнитная совместимость)), то блоки-приёмники могут идентифицировать это как ошибку и проигнорировать этот пик напряжения.
Если же произойдёт короткое замыкание или обрыв одного из двух проводов шины данных CAN, то благодаря интегрированной программно-аппаратной системе надёжности произойдёт переключение в режим работы по однопроводной схеме. Повреждённая передающая линия использоваться не будет.
Порядок и формат передаваемых и принимаемых пользователями (абонентами) сообщений определён в протоколе обмена данными.
Существенным отличительным признаком шины данных CAN по сравнению с другими шинными системами, базирующимися на принципе абонентской адресации, является соотнесённая с сообщением адресация.
Это значит, что каждому сообщению по шине данных CAN присваивается его постоянный адрес (идентификатор), маркирующий содержание этого сообщения (например: температура охлаждающей жидкости). Протокол шины данных CAN допускает передачу до 2048 различных сообщений, причём адреса с 3 по 2048 являются постоянно закреплёнными.
Объём данных в одном сообщении по шине данных CAN составляет 8 байт.
Блок-приёмник обрабатывает только те сообщения (пакеты данных), которые сохранены в его списке принимаемых по шине данных CAN сообщений (контроль приемлемости).
Пакеты данных могут передаваться только в том случае, если шина данных CAN свободна (т.е., если после последнего пакета данных последовал интервал в 3 бита, и никакой из блоков управления не начинает передавать сообщение).
При этом логический уровень шины данных должен быть рецессивным (логическая «1»).
Если несколько блоков управления одновременно начинают передавать сообщения, то вступает в силу принцип приоритетности, согласно которому сообщение по шине данных CAN с наивысшим приоритетом будет передаваться первым без потери времени или битов (арбитраж запросов доступа к общей шине данных).
Каждый блок управления, утрачивающий право арбитража, автоматически переключается на приём и повторяет попытку отправить своё сообщение, как только шина данных CAN снова освободится.
Кроме пакетов данных существует также пакет запроса определённого сообщения по шине данных CAN.
В этом случае блок управления, который может предоставить запрашиваемый пакет данных, реагирует на данный запрос.
<1><2>