Суббота, 20 Апрель 2024

Протокол CAN

Предложенная Робертом Бошем в 1987 году система CAN оперировала короткими, длиной до 8 байт, сообщениями, поддерживала доступ в сеть многочисленных устройств (конфликты разрешались с помощью приоритетов) и отличалась высокой надежностью: каждое сообщение контролировалось 15-бит циклическим избыточным кодом. Уже в середине 1987 года фирма Intel выпустила первую CAN-микросхему модели 82526, выполнявшую все функции, необходимые для поддержки последовательной связи (передачу и прием сообщений, их фильтрацию, поиск передающего объекта и прерывания) при минимальном взаимодействии с хост-микроконтроллером или процессором. Вскоре микросхему CAN-контроллера 82С200 выпустила и компания Philips Semiconductor. Европейское отделение ISO приняло CAN в качестве сетевого протокола высокоскоростной передачи, и в 1991 году CAN-интерфейс был реализован в электронных системах автомобилей марки Mercedes Benz класса S. Сегодня микросхемы с CAN-интерфейсом выпускают более 20 фирм, и почти каждый легковой автомобиль, производимый в Европе, имеет по крайней мере одну CAN-сеть.
Хотя протокол CAN первоначально предназначался для применения в легковых автомобилях, он получил широкий спрос в самых разнообразных секторах рынка, особенно европейского. Уже в начале 90-х потребовалась стандартизация различных появившихся к тому времени решений по его реализации. В 1992 году была сформирована международная Ассоциация пользователей и производителей CAN-систем – CAN in Automation (CiA). Одной из первых задач CiA стала разработка стандарта прикладного уровня CAN (CAL), поскольку CAN-протокол, касающийся реализации уровня канала передачи данных, не содержал стандартов, описывающих процессы обмена объектами данных на прикладном уровне. Но, хотя протокол CAL и нашел применение в промышленных системах, каждому пользователю приходилось разрабатывать свой коммуникационный профиль в соответствии с конкретным приложением.