LIN протокол разработан для создания дешевых локальных сетей обмена данными на коротких расстояниях. Он служит для передачи входных воздействий, состояний переключателей на панелях управления, а также ответных действий различных устройств, соединенных в одну систему через LIN.
Первая спецификация стандарта под брендом LIN была издана в 1999 году по инициативе консорциума европейских автопроизводителей и других известных компаний, включая Audi AG, BMW AG, Daimler Chrysler AG, Motorola Inc., Volcano Communications Technologies AB, Volkswagen AG и VolvoCar Corporation. Последняя спецификация, LIN 2.2, издана в 2010 году. В настоящее время документы стандарта переданы под контроль Международной организации по стандартизации (ISO), где стандарту был присвоено новое наименование ISO 17987. В связи с политикой ISO копия стандарта стала платной.
Шина LIN
LIN шина (локальная сеть воздействия) была разработана для удовлетворения потребностей в связи для систем класса А (см. табл. «Классификация шинных систем» ) с использованием самого экономичного оборудования. Типичные области применения:
- Дверной модуль с дверным замком;
- Приводы стеклоподъемников;
- Регулировка боковых зеркал заднего вида;
- Система кондиционирования (передача сигналов от элемента управления, активация вентилятора свежего воздуха).
Текущую спецификацию LIN можно найти на сайте консорциума LIN.
Важные особенности шины LIN:
- Концепции с одним ведущим и несколькими ведомыми устройствами;
- Небольшая стоимость оборудования за счет передачи данных по неэкранированному однопроводному кабелю;
- Самосинхронизация ведомых устройств без кварцевого генератора;
- Связь в виде очень коротких сообщений;
- Скорость передачи данных до 20 кбит/с;
- Длина шины до 40 м, до 16 узлов.
Система передачи в шине LIN
Шина LIN представляет собой неэкранированный однопроводный кабель. Уровень шины может принимать два логических состояния. Доминантный уровень соответствует напряжению приблизительно 0 В (масса) и представляет собой логический 0. Рецессивный Уровень соответствует напряжению батареи Ubatt и представляет собой логическую 1.
Из-за наличия разных вариантов электрических цепей уровни могут быть разными. Определение допусков на передачу и прием в области рецессивных и доминантных уровней обеспечивает стабильную передачу данных. Диапазоны допусков шире на приемном конце (рис. «Уровень напряжения на линии данных шины LIN» ), чтобы действительные сигналы тоже можно было получать, несмотря па излучаемые помехи.
Скорость передачи по шине LIN ограничена величиной 20 кбит/с. Это компромисс между большой крутизной фронта импульсов, необходимой для синхронизации ведомых устройств, с одной стороны, и небольшой его крутизной, необходимой для улучшения ЕМС — с другой. Рекомендуемая скорость передачи составляют 2400, 9600 и 19200 бит/с. Минимально допустимая скорость составляет 1 кбит/с.
Максимальное количество узлов не регламентируется в спецификации LIN. Теоретически оно ограничено количеством доступных идентификаторов сообщений. Возможности линии и узла и крутизна фронта импульсов ограничивают сочетание длины и количества узлов сети LIN. Рекомендуется не более 16 узлов.
Пользователи шины обычно располагаются в линейной топологии; однако эта топология не является обязательной.
Доступ к шине LIN
Доступ к шине LIN обеспечивается на основе доступа «ведущий-ведомый». В сети имеется ведущее устройство, инициирующее каждое сообщение. Ведомое устройство имеет возможность ответить. Обмен сообщениями происходит между ведущим и одним, несколькими либо всеми ведомыми устройствами.
Во время обмена сообщениями между ведущим и ведомым устройством возможны следующие взаимосвязи:
- Сообщение с ответом ведомого: ведущее устройство передает сообщение одному или нескольким ведомым устройствам и запрашивает данные (например, состояния измеренных значений);
- Сообщение с инструкцией ведущего: ведущее устройство передает инструкции ведомому устройству (например, включение сервопривода);
- Сообщение для использования: ведущее устройство инициирует связь между двумя ведомыми устройствами.
Протокол LIN
Фрейм данных LIN
Информация на шине LIN встраивается в определенный фрейм данных, фрейм LIN (рис. «Фрейм LIN» ). Инициированное ведущим устройством сообщение начинается с заголовка. В поле сообщения (ответ) содержится различная информация, зависящая от типа сообщения. Если ведущее устройство передает инструкции ведомому устройству, то оно описывает поле сообщения данными, которые должно использовать ведомое устройство. В случае запроса данных адресуемое ведомое устройство описывает поле сообщения данными, запрошенными ведущим устройством.
Заголовок
Заголовок состоит из разрыва синхронизации, поля синхронизации и поля идентификации.
Синхронизация LIN
Синхронизация происходит в начале каждого фрейма для обеспечения последовательной передачи данных между ведущим и ведомыми устройствами. Сначала разрывом синхронизации четко определяется начало фрейма. Он состоит из не менее 13 последовательных доминантных уровней и одного рецессивного уровня.
После разрыва синхронизации ведущее устройство передает поле синхронизации, состоящее из последовательности битов 01010101. Это дает ведомым устройствам возможность адаптироваться к временной оси ведущего. Тактовый импульс ведущего устройства не должен отличаться от номинального значения более чем на ±0,5%. Тактовый импульс ведомых устройств перед синхронизацией может иметь разброс ±15 %, если синхронизация к концу сообщения достигает уровня ±2 %. Таким образом, ведомым устройствам не нужен дорогой кварцевый генератор — они могут быть выполнены, например, с экономичной резистивно-емкостной цепью.
Идентификатор LIN
Третий байт в заголовке служит идентификатором LIN. По аналогии с шиной CAN здесь используется адресация по содержанию — идентификатор дает информацию о содержании сообщения. Все подключенные к шине узлы на основании этой информации решают, намерены ли они получить и обработать сообщение или же проигнорировать его (фильтрация при приемке).
Шесть или восемь битов в поле идентификатора определяют сам идентификатор; из них получается 64 возможных идентификатора (ID). Имеются следующие значения:
- ID = 0 — 59: передача сигналов;
- ID = 60: запрос команд и диагностики от ведущего устройства;
- ID = 61: отклик ведомого устройства на ID 60;
- ID = 62: зарезервирован для связи с изготовителем;
- ID = 63: зарезервирован для будущих расширений протокола.
Из 64 возможных сообщений 32 могут содержать только два байта данных, 16 — четыре байта данных, и остальные 16 — восемь байтов данных.
Последние два разряда в поле идентификации содержат контрольные суммы, защищающие идентификатор от ошибок при передаче и неправильного распределения сообщений.
Поле данных
После передачи ведущим устройством заголовка начинается передача фактических данных. Ведомые устройства по переданному идентификатору определяют, являются ли они адресатами и, при необходимости, отправляют ответ в поле данных.
В один фрейм можно включить несколько сигналов. Здесь у каждого сигнала есть один генератор, т.е. он всегда описывается одним и тем же узлом сети. Во время работы не разрешается сопоставлять сигналу другой генератор, что возможно в других сетях с управлением по времени.
Данные в ответе ведомого устройства защищаются контрольной суммой (CS).
Описательный файл LIN
Конфигурация шины LIN, т.е. спецификация пользователей сети, сигналов и фреймов, выполняется в описательном файле LIN. Спецификация LIN для этой цели имеет подходящий язык конфигурации.
Из описательного файла LIN автоматически генерируется набор кодов на С и файлов заголовков; эти коды и файлы используются для реализации функций ведущего и ведомых устройств в ЭБУ, расположенных на шине. Таким образом, описательный файл LIN служит для конфигурации всей сети LIN. Это общий интерфейс между автопроизводителем и поставщиками ведущих и ведомых устройств.
Составление графика отправки сообщений
Таблица-график в описательном файле LIN определяет порядок и время отправки сообщений. Часто запрашиваемая информация отправляется время от времени. Когда таблица проработана, ведущее устройство снова начинает с первого сообщения. Последовательность обработки можно изменить в зависимости от режима работы (например, активна/неактивна диагностика, включено/ выключено зажигание).
Таким образом, известен фрейм передачи каждого сообщения. Детерминированные характеристики гарантируются тем фактом, что все передачи инициируются ведущим Устройством в случае управления доступом по принципу «ведущий-ведомый».
Управление сетью LIN
Для минимизации тока замкнутой цепи узлы сети LIN можно переводить в спящий режим. Это можно сделать двумя способами. Ведущее устройство передает команду «перейти в спящий режим» зарезервированным идентификатором 60, либо ведомые устройства переходят в спящий режим автоматически, если в течение относительно длительного времени (4 секунды) не было передачи данных по шине. И ведущее, и ведомые устройства могут снова активировать сеть. Для этого необходимо передать сигнал активации. Он состоит из байта данных с номером 128, обозначающим содержание. После перерыва времени бита 4-64 (разграничитель активации) все узлы должны быть инициализированы и способны ответить ведущему устройству.
РЕКОМЕНДУЮ ЕЩЁ ПОЧИТАТЬ: