Найти в Дзене
Колеса и крылья

Шина CAN в автомобилях. История, настоящее, будущее. А, главное, для чего она нужна и как работает? Часть 3.

Предыдущая часть: https://dzen.ru/a/Xv4Ne3yKRBJI0ONk Теперь выясним, как блоки совместно работают в CAN-шине и при этом не мешают друг другу. Применительно к цифровой цепи используются понятия логических «нуля» и «единицы», которые в автомобиле равны примерно 0,5-1,5В и 3,5-5В соответственно. Один микропроцессор передает комбинации «нулей» и «единиц», а на другом конце линии второй микропроцессор, «зная» алгоритм кодирования (протокол), расшифровывает данные. Информация передается сериями импульсов, которые образуют кадры данных. Соседние кадры разделены межкадровым пространством. Один «единичный» импульс на фоне постоянного «нуля», или наоборот, образует один информационный бит. Таким образом, скорость 500 Кбит/сек означает, что за одну секунду по шине передается 500 тыс. импульсов. В вычислительной технике чаще применяют другую величину количества информации – байт, который равен восьми битам. Итак, информация передается кодированными пачками импульсов определенной длительности – ка

Предыдущая часть: https://dzen.ru/a/Xv4Ne3yKRBJI0ONk

Теперь выясним, как блоки совместно работают в CAN-шине и при этом не мешают друг другу.

Применительно к цифровой цепи используются понятия логических «нуля» и «единицы», которые в автомобиле равны примерно 0,5-1,5В и 3,5-5В соответственно. Один микропроцессор передает комбинации «нулей» и «единиц», а на другом конце линии второй микропроцессор, «зная» алгоритм кодирования (протокол), расшифровывает данные. Информация передается сериями импульсов, которые образуют кадры данных. Соседние кадры разделены межкадровым пространством. Один «единичный» импульс на фоне постоянного «нуля», или наоборот, образует один информационный бит. Таким образом, скорость 500 Кбит/сек означает, что за одну секунду по шине передается 500 тыс. импульсов. В вычислительной технике чаще применяют другую величину количества информации – байт, который равен восьми битам.

Схематичное изображение сигнала в CAN-шине.
Схематичное изображение сигнала в CAN-шине.

Итак, информация передается кодированными пачками импульсов определенной длительности – кадрами данных. Процессоры постоянно «прослушивают» линию и, если понадобилось передать информацию, ждут, пока шина освободится. Затем, не переставая «слушать», синхронно все вместе начинают передавать каждый свой кадр. Сначала передается приоритет сообщения. Право на дальнейшую передачу получает узел, сообщение которого имеет приоритет наибольшей длительности, а остальные переключаются на прием (таким образом, в первую очередь передается важнейшая информация). Затем «победивший» процессор передает тип данных (скорость автомобиля, например), сами данные (60 км\ч) и заканчивает кадр контрольной суммой своего сообщения. Сообщения в CAN-шине не имеют конкретного адресата: их принимают все блоки сети, а уж они «решают сами», кому из них нужна эта информация, а кому нет. Абоненты сравнивают полученную информацию с контрольной суммой и, если хотя бы один узел принял сообщение с ошибкой, он сигнализирует об этом и информация передается снова, если, конечно, кто-то не начнет в это время передачу сообщения с большим приоритетом. Остальные узлы в это время «терпеливо ждут» возможности отправить свои сообщения.

А если кому-нибудь из абонентов понадобится какая-либо информация? Он отправляет запрос в сеть, все остальные «слушают вопрос», а затем узел, имеющий необходимые данные, передает ответ, но опять-таки соблюдая приоритет. Бывает, какой-либо процессор перегружен и не справляется с потоком информации. Он сигнализирует об этом, и остальные на время прекращают свои передачи, давая ему время «переварить» полученные данные. А вообще, в CAN-шине для получения высочайшей надежности передачи информации реализовано много оригинальных решений.

Ну а если блок долгое время не передает и не получает сообщений, он почти полностью отключается, практически переставая потреблять энергию. К примеру, вы поставили автомобиль на стоянку и ушли по своим делам. Некоторое время в шине продолжается интенсивный обмен, однако, если не будет происходить каких-либо событий, блоки начнут «засыпать» один за другим. И наступит момент, когда они почти все «угомонятся», снижая энергопотребление, но стоит нажать кнопку на ключе для отпирания дверей, в шине будет объявлен «подъем», и там опять начнется своя бурная и суматошная жизнь.

Продолжение следует...