CAN (англ. Controller Area Network — сеть контроллеров) — стандарт промышленной сети, ориентированный, прежде всего, на объединение в единую сеть различных исполнительных устройств и датчиков. Режим передачи — последовательный, широковещательный, пакетный.
CAN разработан компанией Robert Bosch GmbH в середине 1980-х и в настоящее время широко распространён в промышленной автоматизации, технологиях домашней автоматизации («умного дома»), автомобильной промышленности и многих других областях. Стандарт для автомобильной автоматики.
Благодаря своей высокой устойчивости при эксплуатации в непростых условиях, характерных для автомобильных приложений, возможностям защиты от сбоев и уникальной обработке сообщений CANbus теперь используется там, где прежде никогда не был распространен. Нынешние рыночные тенденции демонстрируют все более широкое внедрение CANbus, порой заменяющего RS‑485 в традиционных индустриальных программах.
Базовой спецификации CAN недостаёт многих возможностей, требуемых в реальных системах: передачи данных длиннее 8 байт, автоматического распределения идентификаторов между узлами, единообразного управления устройствами различных типов и производителей. Поэтому вскоре после появления CAN на рынке начали разрабатываться протоколы высокого уровня для него. В число распространённых на данный момент протоколов входят:
- CANopen
- DeviceNet
- CAN Kingdom
- J1939
- SDS
- NMEA-2000 (морской транспорт)
- ARINC-825 (авиация) (нем.)
- UAVCAN (робототехника и летательные аппараты)
Итак, CAN-шина – это система цифровой связи и управления электрическими устройствами автомобиля, позволяющая собирать данные от всех устройств, обмениваться информацией между ними, управлять ими. Информация о состоянии устройств и командные (управляющие) сигналы для них передаются в цифровой форме по специальному протоколу двумя проводами, т.н. «витая пара». Кроме того к каждому устройству подается и питание от бортовой электросети, но в отличии от обычной проводки – все потребители соединены параллельно, т.к. нет необходимости вести от каждого выключателя до каждой лампочки свой провод. Это значительно упрощает монтаж, снижает число проводов в жгутах и повышает надёжность всей электросистемы. Для замены стремительно устаревающей, но, тем не менее применяемой, шины CAN создана шина FlexRay.
Преимущества протокола CAN:
1. Высокая производительность передачи данных.
2. Надежность и отказоустойчивость при передаче данных.
3. Возможность передачи данных на дальние расстояния.
4. Низкое потребление энергии.
5. Простота и гибкость в настройке сети.
Недостатки протокола CAN:
1. Ограниченная пропускная способность в сравнении с другими современными протоколами.
2. Отсутствие стандартного механизма шифрования для обеспечения безопасности данных.
3. Ограниченные возможности по масштабированию сети.
4. Сложность настройки и управления сетью в случае большого количества устройств.
5. Высокие затраты на оборудование и программное обеспечение для реализации сети CAN.