Мультиплексная шина данных
Чтобы передавать различные данные по одной линии, должно быть тщательно определено и согласовано множество критериев. Эти критерии известны как коммуникационный протокол, или протокол связи. Протокол определяет:
♦ метод адресации:
♦ последовательность передачи и формат данных;
♦ управляющие сигналы;
♦ обнаружение ошибок;
♦ обработка ошибок;
♦ скорость передачи.
Также должен быть определен и согласован физический уровень сигналов. Он включает следующие параметры:
♦ тип линии связи (медный провод, оптоволокно);
♦ тип кодирования передачи (аналоговый или цифровой);
♦ тип сигналов (напряжение, ток, частота или др.).
Схема, отвечающая этим критериям, известна как шинный интерфейс и чаше всего будет выполнена в виде одной интегральной схемы. Эта ИС будет в некоторых случаях иметь дополнительную схему — например, устройство памяти. Она может быть соответствующим чипом, настолько дешевым,
насколько это возможно из-за большого их количества, используемого на транспортном средстве. Как это происходит часто с протоколом любой системы, ожидается, что получит распространение только один протокол. Однако так бывает
не всегда.
Сеть CAN фирмы Bosch
Фирма Bosch разработала протокол, известный как CAN (Controller Area Network). Как утверждается, протокол отвечает фактически всем условиям и реализуется на кристалле малой площади, поэтому стоимость микросхемы невелика, C A N подходит для передачи данных между компонентами трансмиссии, шасси и для мобильных коммуникаций.
Это компактная система, что делает ее практичной для применения во многих областях. На физическом уровне существует две модификации системы, которые удовлетворяют различным нормам передачи. Одна—для передачи данных на скоростях от 100 кбит до 1 М бит в секунду должна использоваться для скоростных устройств управления. Другая передает сигналы со скоростью от 10 до 100 кбит— медленная шипа для простой коммутации и операций управления.
CAN-модули изготавливаются множеством полупроводниковых фирм, таких как Intel и Motorola.
Доступны модули Voll-CAN для скоростных шин и Basie-CAN для низких скоростей передачи данных. Они существуют как в автономном виде, так и в интегрированном в различные микропроцессоры. Все модули поддерживают единый САМ-
протокол. Ожидается, что этот протокол будет утвержден
Международной Организацией Стандартов (ISO).
Многие датчики и приводы еще не реализованы и шинном варианте, и хотя были выпушены опытные образцы, полностью отказаться от обычной кабельной сети пока невозможно. Электронные блоки интерфейса должны быть расположены и непосредственной близости, в идеале интегрированы внутрь датчиков и приводных механизмов. Особенно это важно для датчиков и приводов двигателя. Вследствие проблем с нагревом и вибрацией требуется их дальнейшее совершенствование, чтобы гарантировать надежность и низкую иену. На рис 4.21 показано, как выглядит шинная система на транспортном средстве.
Сегодня сделан существенный шаг к использованию
шин данных для общения приборов с блоками управления. На рис. 4.22 приведен пример от компании Volvo.
Сигнальный формат CAN
Сигнал сообщения в формате CAN состоит из последовательности двоичных знаков (бит). Наличие напряжения (или света в оптоволокне) означает логическую «1», в то время как их отсутствие означает логический «0». Длина сообщения может составлять от 44 до 108 бит. Сообщение начинается стартовым битом, затем следует идентификатор приемо-передатчика, бит контроля, непосредственно данные сообщения, контрольная
сумма CRC (избыточный циклический код для обнаружения и исправления ошибок - cyclic redundancy check), бит подтверждения и, наконец, несколько стоповых битов (рис. 4.23).
Начало сообщения (заголовок) идентифицирует назначение сообщении, а также его приоритет. Как только заголовок помешен на шину, он повторно считывается уже с шины. Если он отличается от посланного — значит, шина ланита устройством, имеющим более высокий приоритет. Если дело обстоит так, передатчик остановит передачу собственного сообщения. Это очень важно в случае передачи данных в автомобиле.
Рис 4.23. «Слово» сообщения по протоколу CAN