ISO 11898
ISO 11898 — это международный стандарт, регламентирующий протокол последовательной передачи данных CAN (Controller Area Network), а также физический уровень и электрические характеристики соответствующих интерфейсов. Стандарт определяет архитектуру высоконадёжной шины, ориентированной на работу в реальном времени, и широко применяется в автомобильной промышленности, промышленной автоматизации, авионике, медицинском оборудовании и других встраиваемых системах.
История создания
Разработка протокола CAN была начата компанией Robert Bosch GmbH в 1983 году. Первая спецификация была опубликована в 1986 году, а в 1987 году появились первые микросхемы CAN-контроллеров от Intel и Philips. К началу 1990-х годов технология получила широкое распространение в автомобильной отрасли, что потребовало её унификации на международном уровне.
Работа над стандартом ISO 11898 началась в рамках Технического комитета ISO/TC 22 (Дорожные транспортные средства). Первая редакция стандарта была опубликована в 1993 году. Она закрепляла базовые принципы CAN 2.0A (11-битный идентификатор) и CAN 2.0B (29-битный идентификатор), а также определяла физический уровень для скорости передачи до 1 Мбит/с. Впоследствии стандарт неоднократно пересматривался и дополнялся.
Структура и составные части стандарта
ISO 11898 является многочастным стандартом. Наиболее актуальные на 2024 год части включают:
- ISO 11898-1:2015 — «Физический уровень и подуровень управления доступом к среде (MAC)». Является ядром стандарта. Определяет форматы кадров, арбитраж, обнаружение ошибок, механизмы подтверждения и синхронизации. Эта часть не зависит от скорости передачи и является общей для всех вариантов CAN.
- ISO 11898-2:2016 — «Высокоскоростной физический уровень (HS-PHY)». Описывает электрические характеристики для работы на скоростях от 125 кбит/с до 1 Мбит/с. Определяет топологию шины, уровни напряжений (доминантный и рецессивный), требования к кабелю и разъёмам. Именно эта часть наиболее известна как «классический CAN».
- ISO 11898-3:2006 — «Низкоскоростной отказоустойчивый физический уровень (LS-PHY)». Предназначен для работы на скоростях до 125 кбит/с. Отличается повышенной устойчивостью к обрывам и коротким замыканиям в линии, что критично для систем комфорта в автомобилях (например, управление стеклоподъёмниками и замками дверей).
- ISO 11898-4:2004 — «Тайм-аутный механизм активации». Определяет процедуру перехода узлов в энергосберегающий режим и их пробуждения по шине.
- ISO 11898-5:2007 — «Расширенный физический уровень с низким энергопотреблением». Дополняет часть 2 требованиями к снижению потребления тока в режиме ожидания.
- ISO 11898-6:2013 — «Высокоскоростной физический уровень с селективным пробуждением». Вводит механизмы выборочного пробуждения отдельных узлов без активации всей сети.
Основные характеристики и принцип работы
Физический уровень
Сеть CAN представляет собой двухпроводную дифференциальную шину с номинальным характеристическим сопротивлением 120 Ом. Линии обозначаются как CAN_H (высокий) и CAN_L (низкий). Передача данных осуществляется путём изменения разности потенциалов между проводами.
- Рецессивное состояние (логическая «1»): напряжение на обеих линиях одинаково (около 2,5 В относительно земли). Разность потенциалов близка к 0 В.
- Доминантное состояние (логический «0»): напряжение на CAN_H повышается до 3,5 В, а на CAN_L понижается до 1,5 В. Разность потенциалов составляет около 2 В.
Доминантное состояние «перебивает» рецессивное. Этот принцип лежит в основе арбитража доступа к шине без потери времени и данных.
Канальный уровень (MAC)
Стандарт ISO 11898-1 определяет несколько типов кадров:
- Кадр данных — содержит полезную информацию (от 0 до 8 байт). Имеет поле арбитража (идентификатор), поле управления, поле данных, поле CRC и поле подтверждения (ACK).
- Кадр удалённого запроса — позволяет узлу запросить данные от другого узла с определённым идентификатором.
- Кадр ошибки — генерируется любым узлом при обнаружении нарушения протокола.
- Кадр перегрузки — используется для замедления потока данных.
Арбитраж и приоритеты
Уникальной особенностью CAN является побитовый арбитраж. Если два узла начинают передачу одновременно, они выставляют на шину свои идентификаторы. Узел, выставивший рецессивный бит, в то время как другой узел выставил доминантный, «проигрывает» арбитраж и немедленно прекращает передачу, переходя в режим приёма. Таким образом, кадр с наименьшим числовым значением идентификатора имеет наивысший приоритет.
Развитие: CAN FD и CAN XL
Рост объёмов данных, передаваемых в бортовых сетях автомобилей, привёл к созданию расширенных версий протокола, которые также частично регламентируются стандартами серии ISO 11898.
CAN FD (Flexible Data-Rate)
Спецификация CAN FD была разработана компанией Bosch и стандартизирована как расширение к ISO 11898-1:2015. Основные отличия от классического CAN:
- Увеличенный размер данных: до 64 байт в одном кадре (вместо 8).
- Двойная скорость: после завершения арбитража скорость передачи полезных данных может быть увеличена (например, с 500 кбит/с до 2–5 Мбит/с). Скорость арбитража остаётся прежней.
- Новый формат кадра: изменено поле управления и CRC.
CAN FD обратно совместим с классическим CAN на физическом уровне, но требует контроллеров, поддерживающих новый протокол.
CAN XL
Дальнейшее развитие, находящееся на стадии стандартизации (ISO 11898-1:2024). CAN XL позволяет передавать до 2048 байт данных на скоростях до 10–20 Мбит/с. Протокол ориентирован на конвергенцию с сетевыми технологиями Ethernet, сохраняя при этом детерминизм и простоту CAN.
Применение
Основная область применения ISO 11898 — автомобильная электроника. Современный автомобиль может содержать от 2 до 5 и более CAN-шин, обслуживающих различные подсистемы:
- Силовой агрегат (двигатель, трансмиссия) — высокая скорость (500 кбит/с).
- Шасси (ABS, ESP, подвеска) — высокая скорость.
- Комфорт (климат-контроль, освещение, центральный замок) — низкая скорость, отказоустойчивый режим.
- Диагностика (OBD-II) — доступ к блокам управления через стандартизированный разъём.
Помимо автомобилей, стандарт используется в:
- Промышленной автоматизации (CANopen, DeviceNet — протоколы верхнего уровня, базирующиеся на CAN).
- Медицинской технике (аппараты ИВЛ, диагностические системы).
- Авиации и космонавтике (системы управления полётом, бортовые сети).
- Сельскохозяйственной и строительной технике (стандарт ISOBUS).
Критика и ограничения
Несмотря на широкое распространение, ISO 11898 имеет ряд ограничений:
- Ограниченная длина шины: при скорости 1 Мбит/с максимальная длина магистрали составляет около 40 метров. При уменьшении скорости длина может быть увеличена до 1 км.
- Ограниченное количество узлов: максимальное число узлов на одной шине ограничено электрической нагрузкой (обычно не более 110–127, на практике часто меньше).
- Недостаточная пропускная способность: для современных автомобилей с развитыми системами помощи водителю (ADAS) и мультимедиа классического CAN уже недостаточно. Это привело к внедрению CAN FD и параллельному использованию шин Ethernet.
- Отсутствие встроенной аутентификации и шифрования: протокол CAN изначально не предусматривал защиты от несанкционированного доступа. Это делает CAN-сети уязвимыми для атак, что стало предметом многочисленных исследований в области кибербезопасности автомобилей.
Источники
- ISO 11898-1:2015 — Road vehicles — Controller area network (CAN) — Part 1: Data link layer and physical signalling.
- ISO 11898-2:2016 — Road vehicles — Controller area network (CAN) — Part 2: High-speed medium access unit.
- Robert Bosch GmbH — CAN Specification Version 2.0 (1991).
- CAN in Automation (CiA) — International CAN users and manufacturers organization.
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →