Возможности подуровня
Подуровень LLC соответствует верхней части канального уровня модели ВОС. Здесь решаются вопросы независимо от способов доступа к среде, такие как: решение о принятии сообщения узлом, определение состояния перегрузки, повторение передачи и т. д.
Подуровень LLC обеспечивает пользователя интерфейсом CAN возможностью выполнять следующие задания:
- передавать данные без квитирования;
- передавать кадр запроса без квитирования.
Взаимодействие между подуровнем LLC и пользователем осуществляется с применением двух типов кадров: кадра данных LLC и кадра запроса LLC (рис. 7.16).
Рис. 7.16. Форматы кадров подуровня LLC
В поле идентификатора содержится 11 бит. Семь наиболее значимых битов не могут быть одновременно в состоянии «1».
В поле DLC (data length code) содержится 4 бита. Здесь указывается размерность поля данных в байтах. Допустимыми значениями являются 0—8, комбинации цифр 9 и 5 запрещены.
В поле данных может быть до 8 байт, в соответствии со значением DLC.
Кадр запроса идентичен кадру данных, но не содержит поля данных. Поле DLC должно содержать число байтов данных в соответствии с идентификатором.
Решение о принятии сообщения узлом реализуется следующим способом. При необходимости послать сообщение узел передает данные и идентификатор своему шинному драйверу CAN. Здесь сообщение форматируется в кадры и передается на шину драйвером, когда шина свободна или в соответствии с приоритетом информации. Все другие узлы шины становятся приемниками этого сообщения. Каждый узел определяет — ему предназначена эта информация или нет. Если «да», информация принимается, если «нет» — игнорируется. Процедуру такой фильтрации может выполнить и ЭБУ, но для разгрузки ЭБУ в современных протоколах CAN для мультиплексных систем определение назначения сообщения возложено на адаптеры CAN.
Извещение о перегрузке передается в шину CAN, когда внутренние условия приемника требуют задержки перед принятием следующего кадра. Кадр перегрузки инициируется подуровнем LLC.
В результате арбитража передатчик может не передать свое сообщение на шину. Подуровень LLC инициирует ретрансляцию (повторение) данных, пока они не будут отосланы адресату. Доступ передающего узла к шине может быть заблокирован другими сообщениями с более высокими приоритетами. Как должна отрабатываться такая ситуация, решается соответствующим приложением.
Ограничение распространения ошибок
Наиболее важными задачами при ограничении распространения ошибок является:
- различение временных и постоянных отказов;
- отключение неисправных узлов от шины.
Для этого используются счетчики отказов узла, один для режима передачи, другой для приема. При обнаружении ошибки содержимое соответствующего счетчика увеличивается на число в диапазоне 1...8 в зависимости от типа ошибки. После успешной передачи или приема значение в соответствующем счетчике уменьшается на единицу.
Содержимое счетчиков соответствует относительной частоте появления отказов в предыстории. Считается, что узел вышел из строя, если в среднем одно из восьми сообщений передается (принимается) с ошибкой.
Функционирование узлов модифицируется в зависимости от содержимого счетчиков. Узлы могут находиться в одном из трех состояний:
- состояние активной отработки ошибок (error active). Это нормальный режим работы узла. При обнаружении отклонений узел выдает на шину кадр активной ошибки;
- состояние пассивной отработки ошибок (error passive). Узел переключается в это состояние, когда содержимое одного из счетчиков превысит 127. При обнаружении отклонений узел посылает по шине кадр пассивной ошибки;
- отключение от шины (bus off). В этот режим узел попадает, если содержимое счетчика превысило 255. После отключения узел на работу шины уже не влияет. Узлу может быть разрешено вернуться в активное состояние после инициализации от протокола более высокого уровня (Normal_Mode_Request) и прохода по шине 128 последовательностей из 11 недоминантных битов.
В мультиплексных системах с высокой скоростью обмена данными топология шины должна быть максимально приближена к линейной для уменьшения отражений в кабеле. Ответвления от шины до узлов должны быть как можно более короткими.
Для уменьшения стоячих волн точки подключения узлов к шипе не должны располагаться на одинаковом расстоянии друг от друга, отводы должны иметь различную длину. Например, согласно стандарту SAE J1939/11, для скорости обмена 250 Кбит/сек максимальная длина отвода может быть 1 метр, минимальное расстояние между точками подключения узлов к шине — 0,1 метра.
Во время эксплуатации могут появиться различные неисправности шины. Некоторые из них показаны на рис. 7.17. Здесь приведено описание этих неисправностей и их последствий.
Рис. 7.17. Неисправности шины
1. Обрыв линии CAN_H. Сеть разбивается на две, нс связанные друг с другом подсети. Обмен данными между узлами различных подсетей невозможен. В пределах одной подсети обмен сохраняется, но с худшим соотношением сигнал/шум.
2. Обрыв линии CAN_L. Аналогично случаю 1.
3. Замыкание линии CAN_H на напряжение источника питания (аккумулятор). Обмен данными обычно невозможен.
4. Замыкание линии CAN_L на массу. Обмен данными сохраняется, так как напряжение в линии остается в допустимых пределах, но с худшим соотношением сигнал/шум и большим паразитным излучением.
5. Замыкание линии на массу. Обмен данными невозможен.
6. Замыкание линии CAN_L на напряжение источника питания (аккумулятор). Обмен данными обычно невозможен.
7. Замыкание линий CAN_H и CAN_L между собой. Обмен данными невозможен.
8. Разрыв обеих линий в одном месте. Аналогично случаю 1.
9. Отключение концевого резистора. Обмен данными возможен, но с худшим соотношением сигнал/шум за счет увеличения стоячих волн.
10. Обрыв соединителя от узла до линии CAN_H. Данный узел не может участвовать в работе сети.
11. Обрыв соединителя от узла до CANL линии. Данный узел не может участвовать в работе сети.
Из сказанного ясно, что после появления одних неисправностей процесс обмена данными по шине становится невозможным, после появления других — обмен возможен, но с худшим соотношением сигнал/шум.
Здесь не рассмотрено влияние неисправностей на работу шины CAN с. низкой скоростью обмена. Эти шины способны сохранять работоспособность после некоторых неисправностей, если шинные драйверы поддерживают однопроводной режим работы. Соотношение сигнал/шум при этом ухудшается.
Для оптимальной работы мультиплексных CAN-систем ЭБУ должны быть защищены от внешних электромагнитных помех, электромагнитное излучение самой шины должно сводиться к минимуму.
Общие требования следующие:
- электрическое поле напряженностью 200 В/м в непосредственной близости от автомобиля не должно вызывать сбоев в работе автомобильных авто-тронных систем;
- напряжение на передающей автомобильной антенне должно быть менее 1 мкВ в диапазоне частот 20... 1000,МГц.
Основной проблемой при использовании мультиплексных систем с высокой скоростью обмена данными является излучение электромагнитных помех за счет того, что шинные драйверы узлов работают в ключевом режиме на высокой частоте. Для уменьшения паразитного излучения используют экранирование кабеля, витые пары, включают последовательно дроссели в отводы к узлам. Имеет значение и маршрут прокладки кабеля шины, он должен проходить подальше от оборудования, чувствительного к электромагнитным помехам, ближе к заземленным объектам.
Иногда в мультиплексных системах уменьшают скорость нарастания фронтов сигналов. Это приводит к некоторому уменьшению паразитного электромагнитного излучения. С другой стороны, уменьшение крутизны фронтов вызывает потерю скорости передачи, уровень сигнала на шине более продолжительно будет находиться в неопределенном состоянии между 0 и 1, что может дать, наоборот, увеличение уровня излучаемых шумов. Для скоростных мультиплексных систем уменьшение крутизны фронтов вряд ли целесообразно.
К надежности мультиплексных систем в автомобиле предъявляются высокие требования, автомобиль является источником повышенной опасности и должен работать надежно в течение всего срока эксплуатации.
Современные мультиплексные системы таким требованиям соответствуют. Например, шина CAN, работающая со скоростью передачи 1 Мбит/сек при средней загрузке шины 50%, средней длине сообщения 80 бит, за полный срок эксплуатации 4000 часов пропустит 9·1010 сообщений. Статистическая оценка для числа неопознанных неправильных сообщений за время эксплуатации составит менее 10-2.