Руководство по can шине

Is this page helpful?

Thank you!

Anything you would like to add?

Your email:

Your feedback:

CAN шина – это сеть обмена данными определенная в стандарте ISO 11898.  Другие каналы обмена данными в автомобиле не могут быть названы CAN шиной. AVC-LAN, BEAN, J1708, VAN и другие старые протоколы это НЕ CAN !

В автомобиле может быть более одной CAN шины. Для каждого функционального сегмента автомобиля выделяется своя сеть CAN.  Выделенные сети могут работать на разных скоростях.

Скорости работы CAN шины

CAN на разных автомобилях и в разных сегментах сети может работать на разных скоростях.

Названия сегментов сети: Мотор, Шасси, Комфорт, Салон – условны!  У Каждого автопроизводителя свои названия этих участков сети!

  • Группа VAG:  Моторшасси – 500 кбитс, Комфорт – 100 кбитс и с 2018 года шина Комфорт может иметь скорость 500 кбитс., Диагностика: 500 кбитс.
  • BMW: МоторШасси – 500кбитс, Комфорт – 100 кбитс и с 2018 года шина Комфорт может иметь скорость 500 кбитс., Диагностика: 500 кбитс.
  • Mercedes-Benz: МоторШасси – 500 кбитс, Комфорт 83.333 кбитс, 250 кбитс, Диагностика: 500 кбитс.
  • Ford, Mazda:  МоторШасси – 500 кбитс, Комфорт 125 кбитс.  (Для Ford может быть больше вариантов)
  • KIAHyundai: МоторШасси – 500 кбитс, Комфорт 125 кбитс, 500 кбитс, Мультимедиа:  125 кбитс, 500 кбитс., Диагностика: 500 кбитс.
  • GM: МоторШасси – 500 кбитс, Комфорт: 33.333 кбитс, 95.2 кбитс, Диагностика: 500 кбитс.
  • Toyota, Nissan, Honda, Subaru, Suzuki: 500 кбитс (может использоваться гейтвей! Изучайте сетевую архитектуру автомобиля!)
  • Mitsubishi: МоторШасси: 500 кбитс, СалонКомфорт – 83.333 кбитс, 250 кбитс, Диагностика: 500 кбитс.
  • Volvo:  МоторШасси: 500 кбитс, СалонКомфорт – 500 кбитс,  125 кбитс, Диагностика: 500 кбитс.
  • Renault: 500 кбитс
  • Peugeot: МоторШасси – 500 кбитс, Комфорт 125 кбитс.
  • Lada: 500 кбитс
  • Коммерческая и специальная техника: Стандарт J1939 250 или 500 кбитс.

Сегментация CAN шины по функциональному назначению

  • Как правило разные, сегменты сети разделены специальным устройством, которое называется Гейтвей (Gateway, ZGW, ETACS, ICU) .
  • В роли гейтвея может выступать панель приборов (для простых автомобилей) или отдельный специальный модуль межсетевого интерфейса.
  • Гейтвей разделяет потоки данных в разных сегментах сети и обеспечивает связь сегментов сети работающих на разных скоростях.
  • ВАЖНО:  На многих современных автомобилях CAN шина в диагностическом разъеме OBD2 отделена от других участков сети при помощи гейтвея (Gateway), поэтому подключившись к CAN шине OBD разъема невозможно увидеть поток данных. В этом случае можно увидеть только обмен между диагностическим инструментом и автомобилем во время процесса диагностики! Так же модулем Gateway оборудованы автомобили японских марок  >2016г. в зависимости от модели. Автомобили немецких марок оборудуются таким модулем с момента появления в них CAN шины.
  • ОБЯЗАТЕЛЬНО изучайте схемы на исследуемый автомобиль, чтобы знать к какому сегменту сети Вы подключаетесь!

Схема ниже изображена в общем виде для упрощения понимания роли Гейтвея. Количество CAN шин и варианты включения блоков управления к тому или другому сегменту сети могут отличаться.

Реализации CAN на уровне электрических сигналов

CAN шина может быть реализована физически тремя способами:

1 ISO11898-2 или CAN-High Speed.

Классическая витая пара нагруженная с обоих концов резисторами 120 Ом.

В этом случае уровни на шине CAN выглядят так:

Для такой реализации сети используются как правило обычные CAN трансиверы в 8 выводном корпусе, аналоги PCA82C250, TJA1050 и им подобные. Работает такая конфигурация на скоростях 500 кбитс и выше. (Но могут быть исключения) .

2 ISO11898-3 или CAN-Low Speed или Faut Tolerant CAN

В этом варианте используется та же витая пара, но линии CAN-Low и CAN-High подтянуты к напряжению питания и массе соответственно.
Подробное описание FT-CAN по ссылке
Такой вариант CAN шины способен переключаться в однопроводный режим в случае повреждения одной из линий. Работает на скоростях до 250 кбитс.Уровни сигнала на шине отличаются от High Speed CAN, при этом не теряется возможность работы с шиной FT-CAN используя трансиверы High-Speed CAN и соблюдая ряд условий.
Подробнее в нашей статье о FT-CAN – ссылка.

Fault tolerant CAN обычно используется для низкоскоростного обмена между блоками управления относящимися к сегменту сети СалонКомфортМультимедиа.

ВАЖНО: При подключении к шине Faul tolerant CAN, подключать терминальный резистор 120 Ом между линиями CAN-High и CAN-Low НЕ НУЖНО !

3 Single Wire CAN или SW-CAN

Однопроводный вариант шины CAN. Работает на скорости 33.333 кбитс

Используется специальный тип трансиверов. Для того что бы подключиться к такому варианту шины CAN необходимо линию CAN-High анализатора подключить к шине SW-CAN а линию CAN-Low к массеземле.

Время на прочтение
3 мин

Количество просмотров 8K

Всем привет! Я начинающий разработчик и увлекся Embedded стороной вопроса. Лучший способ запомнить информацию — написать какой нибудь конспект и поделиться им. Ниже моя краткая выжимка о CAN шине и передаче данных через нее:

Шина CAN (Controller Area Network).

Шина представляет из себя пару проводников, в нашем случае витую пару разделенную резисторами сопротивлением 120 Ом (Называется этот резистор Терминаторам). Состоит из линии высокого напряжения (H — high) и низкого напряжения (L-low).

Краткие характеристики:

Скорость 1 mb/s при длине шины до 40 метров (Автомобиль или комната).

Скорость 10 kb/s при длине шины до 1000 метров (здание).

Приемопередатчики равноправны в шине CAN. 

Когда никто не передает сигнал по шине и в H и в L по 2,5 вольта. Когда сигнал есть — на H 3,5V а на линии L — 1,5 В. По разнице между H и L  приемопередатчики понимают, что началась передача. Поэтому шина CAN не чувствительна к наводкам. Вольтаж на витой паре может быть другой — шина понимает о начале приема или передачи по разнице между L и H. 

Когда на вход передатчику приходит ноль — передатчик увеличивает на H напряжение. Все остальные приемопередатчики понимают, что началась передача сигнала. Кодирование выполняется в формате NRZ: 

Dominant bit — состояние когда на шине H>L — соответствует 1-це. 

Recess bit — состояние когда на линии нет сигнала воспринимается как ноль.

Смена бит происходит по частоте передатчика. Частота приемников может незначительно отличаться вследствие чего большая последовательность повторяющихся сигналов может привести к рассинхронизации. Поэтому применяется 

bit stuffing.

Bit stuffing — 5. Если идет 5 одинаковых бит — передатчик выставляет противоположный бит. Все приемники игнорируют этот бит. Если же приемники видят подряд 6 одинаковых бит — они понимают что произошла ошибка и игнорируют сообщение.

Collision Resolution (CR) — если два передатчика начинают одновременно передавать — приоритет получает тот кто передает больше единиц. Допустим два передатчика начали одновременно вещать. Оба передают 3 единицы, на 4 бите один из них не выставляет сигнал, но фиксирует что на шине есть перепад — таким образом он понимает, что сигнал вместе с ним кто то передает параллельно и замолкает. 

CR эффективнее Collision Detection в ethernet так как в CD в случае обнаружения двух передающих передатчиков замолкают оба и начинают передачу через какой то случайный промежуток времени. 

Протокол передачи информации DATA FRAME. Передача данных когда устройство делится данными.

S — стартовый бит — всегда Dominant bit. Все приемники синхронизируются по нему. На вход приемо передатчику приходит ноль и он подает напряжение на шину H создавая тем самым разницу.
ID — уникальный номер сообщения(команды). По нему приемники понимают нужно ли им это сообщение или оно адресовано кому то другому. В стандартном исполнении CAN 11 бит, в CAN2.0b — 29 бит. 

D length — указывает какой длины в байтах будет блок данных.
Data — само сообщение от 0 до 8 байт. 

CRC — контрольная сумма размером 2 байта. 

ACK. После передачи CRC приемник получающий сообщение выставляет подтверждающий бит если сумма сходиться. Передатчик видит что приемник получил сообщение и далее выставляет 7 бит Reces сигнала — EOF.

Для всех кто увлекается Электроникой и Электротехникой — рекомендую канал

Электротехника и электроника для программистов.

Если что то не понятно или неправильно изложено — пишите поправлю. Собственно первоисточник статьи —

лекция 403 CAN шина- введение

.

Как ниже в коментариях справедливо заметили в Википедии конечно больше информации.
Ну и перепечатывать википедию смысла не вижу. Приложу тут ссылочку.

На чтение 21 мин Просмотров 20.2к. Опубликовано 20.10.2022
Обновлено 20.10.2022

Из этой статьи вы узнаете, что такое CAN-шина, почему она появилась. Разберемся с блоками управления в автомобиле и с тем, как они общаются между собой. Расскажем, какие контроллеры соединяются быстрой CAN-шиной, а какие — медленной.

Узнаете, как устроена CAN-шина на физическом и цифровом уровне, из каких данных состоит сообщение, как происходит арбитраж трафика. Какая максимальная длина кабеля и скорость передачи информации, как реализована защита от помех.

CAN-шина. Просто и понятно

Если интересует какой-то конкретный вопрос, пользуйтесь оглавлением.

Что такое CAN-шина?

Автомобиль подобен человеческому организму. Сеть контроллеров (шина CAN) это как нервная система у человека.

В свою очередь, «узлы» или «электронные блоки управления» (ЭБУ) подобны частям тела. Они соединены между собой через CAN-шину.

CAN-шина. Просто и понятно

Шина CAN представляет собой витую пару проводов. С ее помощью все блоки управления в автомобиле соединены в единую информационную сеть.

Причины появления CAN-шины

Когда вы нажимаете выключатель в своем доме, чтобы включить свет, электричество проходит через выключатель к лампам.

Автомобили раньше использовали такое же подключение. С тех пор как в 1915 году Генри Форду пришла идея добавить в свои автомобили фары и электрический сигнал, электричество поступало от аккумулятора через выключатели к фарам и другим устройствам.

К 1960-м годам в каждом автомобиле были тысячи тяжелых проводов.

CAN-шина. Просто и понятно

После нефтяного эмбарго 1970-х годов на автопроизводителей оказывалось все большее давление с целью повышения эффективности использования топлива. Поэтому они начали искать способы уменьшить вес выпускаемых автомобилей.

К началу 1980-х годов в автомобилях было все больше и больше электронных блоков управления. Сначала электронное управление получили самые важные системы, такие как системы управления двигателем, трансмиссией и тормозной системой. Но со временем электронное управление распространилось и на второстепенные либо периферийные системы, такие как климат-контроль, блоки комфорта и прочие.

В скором времени такое положение дел привело к тому, что производители столкнулись тремя проблемами:

Такие компании, как Bosch, искали тип шинной коммуникационной системы, которая могла бы использоваться в качестве системы связи между несколькими ЭБУ и системами автомобиля.

Они искали на рынке, но не могли найти именно то, что было нужно, поэтому они начали разработку «Controller Area Network» в партнерстве с Mercedes-Benz, Intel, а также несколькими университетами Германии.

Краткая история шины CAN

В 1986 году компания Bosch представила стандарт CAN на конгрессе SAE в Детройте. Год спустя корпорация Intel начала поставки первых микросхем контроллеров CAN, и автомобильный мир изменился навсегда.

  • До CAN: автомобильные ЭБУ использовали сложную проводку «точка-точка».
  • 1986: Компания Bosch разработала протокол CAN.
  • 1991: Bosch опубликовала CAN 2.0 (CAN 2.0A: 11 бит, 2.0B: 29 бит).
  • 1993: CAN принят в качестве международного стандарта (ISO 11898).
  • 2003: ISO 11898 становится серией стандартов.
  • 2012: Bosch выпустила CAN FD 1.0 (передачи данных на двух скоростях).
  • 2015: Протокол CAN FD стандартизирован (ISO 11898-1).
  • 2016: Физический уровень CAN для скоростей передачи данных до 5 Мбит/с стандартизирован в ISO 11898-2.

Теперь, например, достаточно одного датчика температуры, который подключен к блоку управления двигателем. ЭБУ опрашивает датчик температуры для себя и отправляет эту информацию в виде сообщения в информационную шину данных для других блоков.

CAN-шина. Просто и понятно

При таком подходе уменьшается количество проводов, нет дублирования датчиков. Появляется возможность ввода/вывода информации из электронных блоков управления, что позволяет диагностировать сложные системы с множеством электронных блоков управления.

Сегодня CAN является стандартом в автомобилях (легковых, грузовых, автобусах, тракторах, …), кораблях, самолетах, электромобилях и многом другом.

Что такое ЭБУ?

В автомобиле ЭБУ могут быть, например, блок управления двигателем, подушками безопасности, аудиосистемой и т. д.

В современном автомобиле может быть до 70 ЭБУ — и каждый из них может иметь информацию, которой необходимо поделиться с другими участниками сети.

CAN-шина. Просто и понятно

Именно здесь на помощь приходит CAN-шина. Она позволяет каждому блоку управления общаться со всеми другими ЭБУ без сложной специальной проводки.

В частности, блок управления может передавать данные с датчиков по шине CAN. Переданные данные принимаются всеми другими контроллерами в сети CAN, после чего каждый ЭБУ может проверить данные и решить, принимать их или игнорировать.

Физический уровень шины CAN

Физический уровень CAN описан в стандарте ISO 11898 и регламентирует способ передачи данных. В случае с CAN-шиной это два провода витой пары. При этом CAN-шина вполне может работать и по одному проводу, а витая пара прежде всего используется для защиты от помех.

Однопроводная схема

Для того чтобы лучше понять как данные передаются по двухпроводной CAN-шине, давайте сначала рассмотрим как данные передаются по однопроводной схеме, которой, например, является K-линия.

Итак, есть один провод, с его помощью соединены блоки управления. Этот провод внутри блока соединен с 12 вольтами через резистор 5 килоом. Таким образом напряжение на проводе становится по умолчанию 12 В.

CAN-шина. Просто и понятно

Каждый из подключенных блоков может стягивать это напряжение на массу, меняя его с 12 на 0 вольт. Таким образом, получаются прямоугольные импульсы на шине данных. Они могут принимать всего два уровня напряжения — 0 и 12 вольт.

Присвоим низкому уровню в ноль вольт логический ноль, а уровню 12 вольт — логическую единицу. Зададим тактовый сигнал шины, то есть обозначим сколько раз секунду блоки будут опрашивать шину и соответственно сколько времени будет длиться один бит.

CAN-шина. Просто и понятно

То есть наименьшая часть цифровой информации вид может принимать только два значения 0 или 1. Таким образом, мы получили физическую возможность отправлять и принимать двоичные данные между блоками управления.

Витая пара. Как работает CAN high-speed

В CAN-шине тот же принцип, только сигнал считывается как разница между напряжениями проводов CAN-high и CAN-low, которые образуют витую пару.

CAN-шина. Просто и понятно
CAN-шина. Просто и понятно

Чтобы понять, как именно это происходит, давайте рассмотрим как могут меняться уровни напряжения на этих проводах.

По умолчанию на проводе CAN-high, как и на проводе CAN-low, напряжение соответствует величине в 2,5 В. При этом разница напряжений между проводами составляет 0 В. Такое состояние can-шины называется рецессивным (recessive) и интерпретируется как логическая единица.

Существует и второе состояние шины, при котором напряжение на проводе CAN-high будет 3,5 вольт, а на проводе CAN-low — 1,5 В. Разница напряжений между проводами составит 2 вольта. Это состояние называется доминантным (dominant) и соответствует логическому нулю.

CAN-шина. Просто и понятно

Логическая 1 (рецессивное состояние):

  • 2,5 вольта на проводе CAN_H;
  • 2,5 вольта на проводе CAN_L;
  • дифференциальное напряжение 0 вольт.

Логический 0 (доминантное состояние):

  • 3,5 вольта на проводе CAN_H;
  • 1,5 вольта на проводе CAN_L;
  • дифференциальное напряжение 2 вольта.

Так работает высокоскоростная шина CAN high speed. Она описана в стандарте ISO 11898-2.

Работа CAN low speed

Устройство низкоскоростной шины CAN low speed описано в стандарте ISO 11898-3. Для нее уровни напряжения такие.

CAN-шина. Просто и понятно

Логическая 1 (рецессивное состояние):

  • 0 вольт на проводе CAN_H;
  • 5 вольт на проводе CAN_L;
  • дифференциальное напряжение 5 вольт.

Логический 0 (доминантное состояние):

  • 3,6 вольта на проводе CAN_H;
  • 1,4 вольта на проводе CAN_L;
  • дифференциальное напряжение 2,2 вольта.

Защита от помех

Ведь и на одном проводе все работало, так зачем усложнять?

CAN-шиной объединены самые ответственные блоки управления автомобиля. От качества этой связи напрямую зависит безопасность движения. В связи с этим CAN-шине предъявляются высокие требования к надежности и безотказности.

Дело в том, что многие компоненты автомобиля являются источниками электромагнитных помех. Особенно система зажигания.

Использование витой пары позволяет в значительной степени решить эту проблему. Давайте посмотрим, как это происходит.

CAN-шина. Просто и понятно

Представьте себе, что витая пара CAN-шины попадает в зону действия электромагнитной помехи. В медном проводе индуцируется напряжение, которое плюсуется или отнимается от напряжения, уже существующего на этом проводе.

CAN-шина. Просто и понятно

Предположим, что на проводе CAN-high в рецессивном состоянии напряжение было 2,5 В. Помеха увеличила его на 1,1 В. Соответственно мы получили напряжение в 3,6 В, которое могло быть интерпретировано уже как доминантное состояние.

Но CAN-шина устойчива к таким помехам, потому что сигналом является не просто изменение уровня напряжения на одном из проводов, а именно изменение разницы между напряжениями на этих проводах. А разница как раз не изменилась из-за применения витой пары.

CAN-шина. Просто и понятно

Таким образом, на проводе CAN_L напряжение поднимется на те же 1,1 В. А разница напряжений как была 2,5 — 2,5 = 0 В, так и осталась 3,6 — 3,6 = 0 В. Действие помехи на шину в доминантном состоянии аналогично.

Зачем нужен трансивер

Название Transceiver произошло от двух слов receiver (приемник) и transmitter (передатчик). Переводится как приемопередатчик.

Трансиверы обрабатывают дифференциальный сигнал, принимают и передают информацию. Трансивер связывает провода витой пары (CAN_H и CAN_L) с линиями Tx и Rx микропроцессора, который не умеет напрямую работать с CAN-шиной.

По линии Tx микропроцессор отправляет информацию в шину данных, а по линии Rx он считывает информацию.

CAN-шина. Просто и понятно

В трансивере находится схемотехника, которая формирует разные уровни напряжения на проводах CAN_H и CAN_L для доминантного и рецессивного состояния шины.

Трансивер обычно устанавливается внутри электронного блока управления и представляет собой специализированную микросхему.

Оконечные сопротивления

Это еще одна часть физического уровня CAN-шины. Оконечные сопротивления используются для борьбы с отраженным сигналом так называемым эхом.

CAN-шина. Просто и понятно

Отраженный сигнал препятствует нормальной передаче данных. Причем, чем больше будет длина проводов шины и чем выше будет скорость передачи данных, тем значительней будет проявляться этот негативный эффект.

Правильно подобранные конечные нагрузочные сопротивления компенсируют отраженный сигнал. Обычно это два резистора по 120 ом внутри блока управления. Они подключены к противоположным концам шины. Таким образом, сопротивление между проводами can-шины составляет около 60 ом.

У разных автопроизводителей величина оконечных сопротивлений может отличаться.

Где применяется CAN high speed, а где CAN low speed

HS-CAN и LS-CAN отличаются скоростью передачи данных и уровнями рабочих напряжений. Быстрый CAN применяется для связи блоков управления двигателя, автоматической коробки передач, тормозов, рулевого управления, подушек безопасности, полного привода, пневмоподвески и других важных систем, от которых напрямую зависит безопасность движения.

CAN-шина. Просто и понятно

Медленный CAN используется для менее важных систем, таких как климат-контроль, системы комфорта, наружное освещение, электропривод сидений и т. п. в зависимости от комплектации автомобиля.

CAN-шина. Просто и понятно

Особенностью медленного CAN является возможность сохранять работоспособность в однопроводном режиме, если второй провод витой пары поврежден.

Высокоскоростной и низкоскоростной CAN автопроизводители могут называть по-своему, а также пользоваться любой из доступных скоростей передачи данных.

Межсетевой шлюз (CAN gateway)

Часто есть необходимость передавать информацию от блока управления, подключенного к быстрой CAN-шине, к блоку, подключенному к медленной CAN-шине, и наоборот. Например, блоку управления климатом нужно знать температуру двигателя.

Так как напрямую разные CAN-шины не соединить, для этих целей используется межсетевой шлюз (CAN gateway). К нему подключаются шины с разными скоростями. Это могут быть не только CAN-шины, но и другие шины, присутствующие в автомобиле, к примеру, FlexRay или Ethernet.

CAN-шина. Просто и понятно

Часто в CAN gateway хранится информация об автомобиле, VIN номер и комплектация. Именно из него сканеры получают информацию при автоопределении автомобиля.

Сам межсетевой интерфейс может быть выполнен как отдельным блоком, так и встроен в другие блоки. Обычно это приборная панель, электронный замок зажигания или блок управления бортовой сети (Body Control Module — BCM).

CAN-шина. Просто и понятно
Межсетевой шлюз CAN

Мы разобрались физическим уровнем CAN-шины. Теперь вы знаете, как напряжение на витой паре становится единицами и нолями, как биты передаются от одного блока управления к другому.

Канальный уровень CAN-шины (передача данных)

CAN является широковещательной шиной последовательной передачи данных. То есть данные отправляются по очереди бит за битом и при этом между узлами сети реализован один общий эфир, когда каждый слышит каждого.

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

Эту задачу решает канальный уровень (data link layer), описанный в стандарте ISO 11898-1. Каждый узел может отправлять и принимать информацию кадр за кадром.

Существует четыре типа сообщений-кадров:

  • Кадр данных (data frame). Передает информацию одному или нескольким узлам-приемникам.
  • Кадр удаленного запроса (remote frame). Запрашивает данные у других узлов.
  • Кадр ошибки (error frame). Сообщает об ошибках.
  • Кадр перегрузки (overload frame). Сообщает о состоянии перегрузки.

Из чего состоит кадр CAN-шины

Рассмотрим структуру самого распространенного кадра Data frame.

CAN-шина. Просто и понятно

SOF. Начало кадра

Первый бит кадра (SOF — Start Of Frame) всегда доминантный логический ноль. Он выводит шину из состояния холостого хода и начинает передачу данных.

Арбитражное поле

Дальше следует арбитражное поле. Оно используется для того, чтобы определить, какой из узлов получит доступ к вещанию по шине. Ведь передача данных последовательная, бит за битом, кадр за кадром. Соответственно узлам приходится ждать своей очереди для отправки сообщения в шину, но при этом слушают шину они постоянно.

Зачем нужен арбитраж CAN-шины

Арбитраж сообщений это процесс, в котором два или более CAN-контроллеров договариваются о том, кто должен использовать шину.

Любой узел может начать передачу данных, когда обнаружит незанятую шину. Это может привести к тому, что два или более контроллеров начнут передачу сообщения почти одновременно.

Нет такого блока, который будет вещать всегда первым. Первым всегда будет передавать информацию тот блок, чьё сообщение имеет наивысший приоритет. И как раз этот спор и решается в арбитражном поле. Разберемся как именно.

Как происходит арбитраж CAN-шины и что такое идентификатор

Представим, что есть три узла, которые одновременно хотят получить доступ к CAN-шине. После бита «Start Of Frame» каждый из этих блоков начинает отправлять биты идентификаторов в шину данных.

CAN-шина. Просто и понятно

Идентификатор присвоен каждому сообщению и определяет его приоритет, то есть определяет, какое сообщение более важное и должно быть отправлено в первую очередь.

Все узлы одновременно, бит за битом, начинают отправлять идентификаторы кадров в шину данных. В это же время все узлы также и считывают каждый новый появившийся бит на шине.

CAN-шина. Просто и понятно

Пока отправляемые биты у всех блоков совпадают, все идет без изменений. Но рано или поздно случается конфликт, когда разные узлы одновременно отправят разные биты. И вот тут самое время вспомнить, что доминантный бит (логический 0) перебивает рецессивный бит (логическую 1) в конфликтных ситуациях. Это реализовано аппаратно в схемотехнике трансивера.

Это условие приводит к тому, что узел, у которого рецессивный бит (логическая единица) проигрывает арбитраж тому узлу, у которого оказался доминантный бит (логический ноль).

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

Выигравшему блоку принадлежит право отправить сообщение в шину, а потому именно он будет продолжать начатый кадр.

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

Поскольку шина является проводной, а доминирующий бит логически равен 0, следует, что в арбитраже победит сообщение с численно наименьшим Арбитражным полем.

11-bit и 29-bit идентификаторы

11 бит дают возможность использовать только 2048 идентификаторов, то есть 2048 параметров Этого иногда бывает недостаточно. В этом случае используется 29-битый ID. Таким образом, появляется возможность использовать миллионы идентификаторов.

CAN-шина. Просто и понятно

Кадр с расширенным 29-битным идентификатором (CAN 2.0B) идентичен кадру с 11-битным идентификатором (CAN 2.0A), за исключением более длинного идентификатора. Он используется, например, в протоколе J1939 для большегрузных автомобилей.

Что произойдет, если узел будет один на шине и попытается передать сообщение?

Блок, конечно, выиграет арбитраж и с радостью продолжит передачу сообщения. Но когда придет время подтверждения… ни один узел не пошлет доминирующий бит подтверждения ACK (о нем ниже).

Передатчик почувствует ошибку ACK, пошлет флаг ошибки, увеличит свой счетчик ошибок передачи на 8 и начнет повторную передачу. Это произойдет 16 раз. Затем передатчик перейдет в режим пассивной передачи ошибок.

По специальному правилу алгоритма ограничения ошибок, счетчик ошибок передачи не увеличивается, если узел пассивен и ошибка является ошибкой ACK. Таким образом, узел будет продолжать передачу вечно, по крайней мере, до тех пор, пока кто-то не подтвердит сообщение.

RTR. Запрос на удаленную передачу.

Следующий бит Remote Transmission Request (RTR). Это бит запроса. Он определяет какого типа будет сообщение:

  • Dataframe, когда вещающий блок сообщает информацию или
  • Remote frame, когда передающий блок запрашивает информацию.

Поле Control

Дальше следует поле Control, в котором первый бит ID extension. Если в нем будет логический ноль, то будет использоваться стандартный 11-битный идентификатор, а если логическая единица, то расширенный 29-битный.

CAN-шина. Просто и понятно

Каждый идентификатор это какой-то параметр. Например, обороты двигателя, температура, состояние замка зажигания, угол поворота руля, скорость автомобиля, запрос на включение кондиционера и так далее.

Биты DL3 — DL0 в поле Control используется для определения заранее количества байтов, которые будут передаваться в следующем поле Data. Чтобы не передавать лишние биты и сократить время фрейма, тем самым увеличив скорость передачи данных. По этой же причине по-умолчанию используется 11-битный идентификатор, чтобы без надобности не тратить время на лишние 18 бит.

Поле Data

В поле Data находится самая полезная информация, которую нужно передать. Обороты, скорость, нагрузка и т. п.

CAN-шина. Просто и понятно

Ради передачи этой информации и строится весь фрейм. Это поле может составлять от 1 до 8 байт, то есть от 8 до 64 бит.

CRC. Контрольная сумма

Следующее поле это контрольная сумма CRC (Cyclic Redundancy Check). Представляет собой значение, вычисленное по определенной формуле, на основе битов из предыдущих полей.

CAN-шина. Просто и понятно

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

После этого уже блок-получатель повторно вычисляет контрольную сумму CRC таким же алгоритмом, но уже на базе полученной информации.

Если каждый из битов был распознан правильно, то контрольная сумма у блока-получателя будет такой же, как и у блока-отправителя. В этом случае данные считаются переданными без ошибок.

Если же контрольная сумма не сходится, распознается ошибка передачи данных и полученная информация игнорируется.

ACK. Бит подтверждения

Следующим идет бит подтверждения ACK (Acknowledge). Узел-отправитель выставляет в нем рецессивное состояние, но узел-получатель перебивает его доминантным в случае успешного приема, тем самым подтверждая передачу сообщения.

CAN-шина. Просто и понятно

Отправитель проверяет наличие бита подтверждения и повторно передает сообщение, если подтверждение не было обнаружено.

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

EOF. Конец кадра

Дальше идут 7 бит поля End of Frame (EOF). Это конец кадра, после которого кадр завершается и шина снова переходит состояние холостого хода.

CAN-шина. Просто и понятно

И так до тех пор, пока один или несколько блоков снова не начнут отправлять сообщения.

Адресация и идентификация сообщений CAN-шины

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

Фактически, в CAN не существует понятия адреса сообщения. Вместо этого, содержимое сообщений идентифицируется по ID, который присутствует в кадре. Считается, что сообщения CAN имеют «адрес содержимого».

Обычный адрес сообщения будет выглядеть так: «Вот сообщение для узла N». Сообщение с адресом содержимого выглядит так: «Вот сообщение, содержащее данные с меткой N». Разница между этими двумя понятиями небольшая, но существенная.

Содержимое поля арбитража, согласно стандарту, используется для определения приоритета сообщения на шине. Все контроллеры CAN также используют все поле арбитража (некоторые используют только часть) в качестве ключа в процессе аппаратной фильтрации.

Стандарт не говорит, что поле арбитража должно использоваться в качестве идентификатора сообщения. Тем не менее это очень распространенное использование.

Что такое CAN FD (Flexible Data Rate CAN)?

С расширением функциональности автомобиля возрастает и нагрузка на CAN-шину. CAN FD (Flexible Data Rate) была разработана как шина CAN «следующего поколения».

CAN-шина. Просто и понятно

Стандартная длина каждого сообщения была увеличена в 8 раз — с 8 до 64 байт, а максимальная скорость передачи данных была аналогично увеличена с 1 Мбит/с до 8 Мбит/с. Одним словом, CAN FD повышает скорость и эффективность. Поэтому она используется в современных автомобилях.

CAN FD обратно совместим и поддерживает протокол CAN 2.0, а также специальные протоколы, такие как SAE J1939.

CAN FD по сути является расширением оригинального стандарта CAN, как указано в ISO 11898-1, и полностью совместим с классическими CAN-шинами.

Отличия CAN FD от обычной CAN-шины

  • CAN FD работает одновременно на двух скоростях. Поле арбитража или заголовок кадра передается со стандартной скоростью, например 500 кбит/с. А поле данных передается на скорости в несколько раз выше, вплоть до 8 Мбит/с.
  • Размер сообщения увеличен до 64 байт. В обычной CAN-шине — максимум 8 байт.
  • Контроллер CAN FD способен принимать обычные CAN сообщения, а стандартный CAN узел не может принимать кадры формата CAN FD.
  • Для шины CAN FD нужны специальные микросхемы-трансиверы с повышенным быстродействием.
CAN-шина. Просто и понятно

В настоящее время CAN FD используется в высокопроизводительных автомобилях, но по мере развития ЭБУ и снижения стоимости аппаратного обеспечения CAN FD, это лишь вопрос времени, когда CAN FD появится практически во всех автомобилях.

Будущее шины CAN

В будущем протокол шины CAN будет оставаться актуальным, хотя на него будут влиять основные тенденции:

  • Потребность во все более расширяющихся функциях автомобиля.
  • Рост облачных вычислений.
  • Развитие Интернета вещей (Internet of Things — IoT).
  • Развитие самоуправляемых автомобилей (без водителя).

В частности, рост числа подключенных автомобилей V2X и облачных вычислений приведет к быстрому росту автомобильной телематики и IoT CAN-регистраторов.

В свою очередь, перевод сети шины CAN в режим «онлайн» также подвергает автомобили рискам безопасности и может потребовать перехода на новые протоколы CAN, такие, как CAN FD.

Максимальная скорость CAN-шины

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

Медленный CAN low speed (ISO 11898-3) может работать на скорости до 125 кбит/с.

Однопроводной CAN может работать со скоростью около 50 кбит/с в стандартном режиме, а в специальном высокоскоростном режиме, используемом, например, для программирования ЭБУ, — до 100 кбит/с.

Максимальная длина кабеля в CAN-шине

При скорости 1 Мбит/с максимальная длина кабеля может составлять около 40 метров. Это связано с тем, что схема арбитража требует, чтобы волновой фронт сигнала успел распространиться до самого удаленного узла и обратно. Другими словами, длина кабеля ограничена скоростью света.

Другие максимальные длины кабелей (значения приблизительны):

  • 100 метров при скорости 500 кбит/с;
  • 200 метров — при 250 кбит/с;
  • 500 метров — при 125 кбит/с;
  • 6 километров — при 10 кбит/с.

Если для обеспечения гальванической развязки используются оптопары, максимальная длина шины соответственно уменьшается.

Страсти вокруг кода P0500, часть 4


Продолжение, начало см.
Страсти вокруг кода P0500
Страсти вокруг кода Р0500, часть 2
Страсти вокруг кода P0500, часть 3 (Фрагментарные знания в авторемонте)

Посмотрим тему: «Toyota Corolla 2ZR-FE 2012, Ошибка Р0500»,- http://forum.autodata.ru/264/23671/all.htm

 Почему когда задается вопрос по CAN… то ответ начинается всегда :-« КАН- шина это…»….

Да не о шине вопрос, вопрос о системе.

Описание шины CAN: CAN шина — CAN BUS — КАН ШИНА Controller Area Network — CAN шина

Описание шины CAN 

Впервые идея CAN была предложена в середине 80-х немецкой компанией Robert Bosch, которая задумывала ее в качестве экономичного средства для объединения контроллеров, расположенных внутри автомобиля. Традиционный способ связи распределенных по объекту контроллеров жгутами проводов по своей технической сложности, по ценовым и по весовым параметрам для столь массового изделия, коим является автомобиль, оказался непригоден. Требовалось альтернативное решение, сокращающее количество проводов, поэтому был предложен протокол CAN, для которого достаточно любой проводной пары. 

Вот так примерно. И что следует из этого пояснения?  А то, что, если бы не R.Bosch, мы бы до сих пор лаптем щи хлебали. Увы, это не так. А то, что предложил  Bosch, так это касается  транспорта. А все остальное было и работало до него. Теперь относительно CAN — тут непонятно совершенно, что это. В начале:  «идея CAN» , в конце пояснения: «протокол CAN». И что же такое CAN, протокол или идея?

Поэтому  начнем с определения:

CAN — это система обмена данными между контролерами (процессорами) блоков управления включенных, или задействованных для управления объектом.

В нашем случае, объектом управления является автомобиль, фото 1:

Сейчас уже  очевидно, что помимо управления впрыском и зажиганием требуется кое-что еще. Количество систем в автомобиле увеличилось. И все они в той или иной мере, принимают участие в управлении объектом, а значит, обмен данными между ними неизбежен.  Все блоки управления систем включаются в общую шину обмена данными. Поэтому существует общая шина обмена данными, и существуют  шины, соединяющие блоки управления с общей шиной. CAN-шинаэто всего лишь «среда», в которой происходит обмен данными. Это может быть и витая пара, и оптоволокно, и коаксиальный кабель. Все зависит от  скорости и объема данных. Что касается «цены и экономии меди» я пропущу. Об этом достаточно написано. А вот о  нескольких основных принципов, положенных в основу работы данной системы(сети), сказать стоит.

— Обмен данными идет дискретными сообщениями. Формат этих сообщений строго определен. Каждое сообщение несет в себе информацию только об одном параметре (скорость, скорость вращения КВ, температура ОЖ и пр.) Вот эта часть сообщения называется типом сообщения. И каждому сообщению присваивается идентификатор типа. И есть еще «хвостик» в конце сообщения из двух бит, который служит для проверки правильности переданного/принятого сообщения. Это избыточный код. Информации он не несет никакой, но если сообщение будет искажено, то это станет сразу очевидным. И такое сообщение не будет принято как достоверное. Другими словами – это контрольная сумма.

На что похож установленный формат для сообщений в

CAN?  Правильно, на обычную телеграмму. Адрес, сообщение, подпись.

— При построении

CAN  априорно предполагается, что количество блоков управления включенных в нее относительно невелико. Следовательно, и количество типов различных сообщений невелико. И ограничение на количество блоков управления и типов сообщений накладывает сам объект управления. Все зависит от его технологической сложности. В нашем случае мы имеем всего лишь простой автомобиль. 

А если это так, то возможно построить безадресную и абсолютно децентрализованную систему.

Сторонники анархии могут успокоиться …-)), ничего похожего на анархию в системе

CAN  не может быть. И конфликтов нет – все разрешается быстро, спокойно и просто.  Дисциплина в  системе  жесткая. Протоколом установлены четыре вида служебных сообщений, называемых фреймами:

Data

Frame — это фрейм передачи данных. На простом языке это звучит примерно так:- «Вот данные с идентификатором  Х, получайте»

Error

Frame — это фрейм ошибки- «так, СТОП! Все сначала!»

Overload

Frame — это фрейм, служебное сообщение перегрузке контролера.- «Всем  ждать, я занят. Чуть позже… все успеете»

Remote

Transmission  Request Frameэто служебное сообщение запроса данных . «А где у нас начальник транспортного цеха? Где сообщение с идентификатором  Х?».

Для передачи и приема сообщений в системе  есть время, и если сигнал не поступил в отведенное для него время, формируется такой запрос. Запрос по ошибке также идет не бесконечно. Счетчик считает количество ошибок. И в итоге неисправный блок может быть отключен от шины… чтоб под ногами не путался -).

В шине CAN биты 0 и 1 имеют ещё одно название: рецессивный уровень и доминантный уровень, соответственно. Если двумя разными передатчиками будет одновременно передан рецессивный и доминантный уровни, то доминантный уровень подавит рецессивный.  Вот на этом построен арбитраж на шине. Каждый передатчик одновременно считывает то, что он предаёт в шину. Передатчик с более низким приоритетом вынужден «отпустить шину», так как чужой доминантный уровень с более высоким приоритетом исказил его передачу. В то же время, сообщение с более высоким уровнем остается неизменным. Передатчик,  «отпустивший шину», может повторить попытку через некоторое время

Это вам  не в очереди за медицинскими полюсами… где возле одной двери сошлись Герой Соцтруда, Ветеран Куликовской битвы  и Мать  Героиня на сносях.

А вот теперь цитата с форума, а вы попробуйте определить, что в ней неверно. Основные принципы построения и назначение системы описано выше.  «

Наверное и CAN- шина заходит в комбинацию. Для работы стрелки спидометра. Информация о скорости идет по CAN-шине от блока ABS. Хотя та же шина заходит в ЕСМ, но информацию о скорости авто ЕСМ получает от блока ABS через комбинацию. Автор не проследил сигнал на этой цепи. А надо было. Блок ABS, наверное, фирмы Бош? Да ладно, съели давно уже это.»

Если блоки управления включены в систему обмена данных, возможна ли ситуация, когда информация получается через кого-то (через панель). А ЕСМ, включенный, в эту же шину сигнала этого не видит? НЕТ.

Значит, сигнала о скорости автомобиля в шине нет. Эта ситуация аналогична другой: вам адресованная телеграмма приходит вашему соседу сначала… и он решает, отнесу  я ее  завтра…или  вечером. И Бош «под руку подвернулся кстати», тоже досталось. Нет, уважаемые коллеги, система CAN — это не наш форум. В ней несколько простых правил и арбитраж. И полный порядок при полной децентрализации.  Так что действительно «съели» — «еду» в пакетике. И теперь разбираемся, что же входило в ее состав.

Ну вот если коротко о принципах построения системы

CAN, которые должны быть понятны человеку решившему побороться с ошибкой .

Поэтому нужно сделать первый вывод: 

CAN — это система (или сеть, кому как больше нравится), на которую возложены диспетчерские функции, в общей системе управления объектом. И  ничего более. Все системы существовавшие до этого без нее и с ней, как выполняли свои функции, так и выполняют. Как существовали коды ошибок по ним, так они и остались. Как были методики работы по кодам ошибок, так они и остались.

Просто нужно учитывать особенность: коды ошибок, считанные с системы управления двигателем, АКПП и пр., могут оказаться не доминирующими, поскольку обмен информацией и получение информации идет по системе обмена данными. А в ней есть тоже чему ломаться.

Что сбивает с толку, и что пугает некоторых диагностов, и не только начинающих.

К чему привыкли?  А привыкли к тому, что вся информация, и весь обмен ею был адресный.  Сигнал от датчика, разъем … пин №… далее на промежуточный разъем, пин №…. Далее красным проводом на пин № блока управления. И все это можно проверить хоть осциллографом, хоть мультиметром. А главное те, кто имел навыки по работе или работал автоэлектриком, или просто знает порядок поиска неисправностей в обычных цепях, сейчас оказался в « позе глубочайшей задумчивости». Мало того, что не все понятно, но и способы проверки не подходят.

Предлагаемые же способы, в том числе и производителем, скудны. И порой не приводят к желаемому результату.   И в большинстве случаев  диагност стоит перед выбором: « заказать целиком узел или блок, или продолжить поиск». Как бы все проверил, и как бы все нормально. И шел по шагам как в программе, а уверенности нет… А блок стоит не пятак. А если клиент его купит, а неисправность останется, что тогда?

Вот такая ситуация была  с Лексусом. Диагност приговорил и блок, и рулевую рейку с датчиком. А клиент «притаранил» это все. И через несколько часов стало понятно, что не тот «бобик сдох». Выход?

Понятно, что клиент сейчас взвоет, и взвоет на полную стоимость. Хотя приобрел это все за полцены у официалов. Я никакой тайны не раскрыл, просто озвучил реальную ситуацию. Те, кто занимается ТО новых авто,  как раз этим занимаются тоже. Это не считается кражей, это не скупка краденного… это называется очень толерантно: «купить деталь, по цене ниже, чем у производителя». Но суть не в этом. Машину нужно вернуть в исправном состоянии владельцу. Тогда будут и волки сыты и овцы целы.  «Корпоративность» нашему брату, как и специалистам других профессий, не чужда. Многие сотрудничают между собой и помогают друг другу в подобных ситуациях. Клиент же об участии в ремонте «третьей стороны» просто не ставится в известность. Знаете, почему диагност приговорил и блок и рейку. Потому, что… хрен его знает, может это, а может это.  А «цепи»  он проверил. Проверил и ошибся. И неисправность пропустил, просто ерундовую, на коннекторе. Потому что проверял согласно методики… мультиметром, в режиме измерения сопротивлений.

Давайте немного подробнее, о самом простом, о витой паре. Фото 2:

Скрин сделан с Мотордаты. Хотя без разницы, можно и любой иноземный мануал взять, результат будет тот же. Все неисправности в CAN сведены к трем возможным:

— неисправность блока;
— неисправность проводки (шины);
— наведенные помехи в шине данных.

Способы проверки просты. Дается вот такая, или наподобие картинка, фото 3:

И предлагается выполнить осциллографирование… или использовать тот же омметр.

Посмотрите на эту картинку внимательно. Затем возьмите каждый свой мультиметр, которым вы работаете ежедневно… и вытащите из него источник питания и посмотрите, на сколько он Вольт. И сравните его со значением уровней, которые действуют в шине. Так вот, обрыв и замыкание вы обнаружите, в этом сомнений никаких нет. А ассиметрию в шине, длиною в 1метр или менее? Да даже если взять витую пару предельно допустимой длины — 4 метра… фигушки.

 А у нас же у каждого есть осциллограф! И осциллограмма какая-никакая есть для  сравнения. Ну – ну… Именно так, чтобы не затевать дискуссий скажет тот, кто знает что такое осциллограф, тот, кто изучал этот прибор и работал с ним. И на этих людей слабо действуют рекламные трюки: «простой в использовании, интуитивно понятный интерфейс…» Их больше интересуют возможности прибора. А что касается наших осциллографов, которыми мы работаем, так они  «кастрированы» по сигналы системы управления. Могут выполнять отдельные функции мотортестера. Все. Так что сравнивать и анализировать сигнал подобным прибором…

Мне попался производитель осциллографа в интернете, который честно сказал  о своем приборе:«можно наблюдать цифровой сигнал» . Вот его скрины. Фото 4 и фото 5:

 А теперь я дам другой скрин, и посмотрим где удобнее, фото 6:

 

Есть разница?  Существенная. А как она повлияет на поиск неисправности той же «ассиметрии в витой паре»? А никак. Потому что при всей красоте и наглядности, это не то,  мягко говоря. Вот если бы к этой красоте и наглядности  те показания которые мы на осциллографе видим, тогда «да» скажут некоторые… А добавлю, не совсем «да». Что касается сравнения, многие не знают, ведь дело имеем с цифровым сигналом, тут еще надо точку выбрать для отсчета и сравнения, а для этого нужно записать сигнал. И потом только сидеть и пыхтеть над осциллограммой. И записывать нужно долго… Конечно, как говорят: «на безрыбье…». Ассиметрию проще всего выявить по уровням сигнала. И осциллограф, имеющий возможность измерять значения напряжения до третьего знака после запятой, это прямо скажем не только «кое-что». Но все-равно это долго, нудно. В самой витой паре отклонения от параметров маловероятны, ну если только брак. А вот соединения — да. Они могут.

Любое соединение на цифровой шине — это неоднородность. От неоднородности электрический сигнал отражается. Любая неоднородность вызывает затухание сигнала и может приводить к его искажениям. Поэтому стандартом (протоколом) для таких систем предусматриваются отдельные требования: (и величина допустимой ассиметрии в витой паре, и требования к конекторам (местам соединений), и рабочему затуханию  сигнала в ней.)

 Пайка на витой паре, насколько мне известно, не приветствуется. В случае ее повреждения, соединение восстанавливают с помощью вот таких  клипс, фото 7:

Проводки вставляются в отверстие, нажимается оранжевая кнопка, провода зажимаются между двумя посеребренными пластинами. А пустоты в отверстиях, куда вставлен провод, заполняются гелем (давится капсула внутри), который застывает и герметизирует соединение. Вот почему мультиметр для поиска неоднородностей не подходит. Неоднородности настолько незначительны для омметра, что он их просто не видит. Скрутку, которую сделает сигнальщик случайно перекусивший кусачками провод, вы не увидите. А в системе обмена данных из-за этой неоднородности сразу упадет скорость, возникнут искажения, ошибки и получите СЕ. Но самая интересная особенность витой пары это то, что она сохраняет работоспособность при повреждении одного из проводов. Это один из вариантов, когда есть ошибка по CAN, а все работает. Нет ничего, нет никаких других признаков и сбоев работе других систем. И если владелец дотошный  и узнал  о такой ошибке (СЕ при этом может и не гореть), мозг будет выносить не на одном СТО. Вот это нужно иметь ввиду. Здесь просто система либо фиксирует  моменты, когда сигнал приходит не в установленное время; скорость обмена данными снизилась, либо при определенной последовательности обмена возникает искажение, возникающее за счет отражения сигнала от неоднородности. И когда счетчик заполняется — ошибка вылазит.

Что нельзя проверить в системе?   В системе не получается или не всегда получается имеемыми средствами проверить исправность  контролеров CAN. Если это удается, то тогда, в некоторых случаях, клиент несет меньшие затраты по ремонту. А диагност получает не только моральное удовлетворение, а значительное заслуженное материальное. Система CAN не новинка. Системы обмена данными существовали и до нее. И более серьезные, замечу я вам. Но как-то вопрос о поиске неисправностей и их локализации не стоял. Стандарт CAN также ничем не отличается от тех стандартов, и в нем предусмотрен этот вопрос. Просто система, несмотря на то, что давно разработана, вводится по частям, а не в полном объеме сразу. Ведь развитие самих систем управления применяемых в автомобиле тоже на месте не стоит. Да плюс еще пресловутый маркетинг. Которому отдача нужна сейчас и немедленно. Есть новое, давай-давай! Потом доработаем. Главное, есть фишка, которая позволяет реализовывать продукцию и получать прибыль. И не только от продажи автомобилей.

А придет время, и  CAN будет тестироваться со сканера, обычно и привычно.

Как скажем, сейчас вы это делаете с клапаном РХХ, или проверяете работу исполнительных механизмов системы кузова и панели приборов… сидя в автомобиле.   Но пока вот так. Здесь трудно помочь тем, кто не имеет базовых знаний. А те знания, которые приобретаются за деньги или через интернет, могут принести больше вреда, чем пользы. Вот поэтому я никогда не отвечаю на вопросы типа: «на какую ногу нужно встать… что нужно покрутить и пр.» Потому что «вставать и крутить» — это нужно осознавая что делаешь, а не на авось. Потому что человек, научившийся так выполнять ремонт, толком не понимая, что сделал, потом еще и теорию может двинуть, основанную на личном практическом опыте. И переубедить его не получится.

А желающих освоить подобный опыт, чтобы «быстро, не потея и не вникая» у нас хоть отбавляй. Рынок предлагает и приборы для поиска неисправностей в системе CAN. Я не буду говорить  что там плохого, что хорошего. Просто скажу- это все не то. Подключить анализатор для проверки CAN шины, послать и принять   до десятка тысяч сообщений теста, затем убедиться в том, что они прошли и данные не потеряны… а если есть потерянные данные, значит, шина неисправна. Нормально. Мне уже сканер  сообщил, что неисправность есть.

Так вот, нужен прибор хоть за 100$ хоть за 1000$… хоть больше, но чтобы он  давал уверенную возможность локализовать неисправность хоть в шине, хоть в контролере CAN любого блока управления включенного в систему. Хотелось бы проверять шину методом зондирования, и видеть все неоднородности в ней, а не посылать поток тестовых данных, а потом смотреть, что там прошло, а что нет. Чтобы можно было определить расстояние от точки подключения прибора до места неисправности в шине.  Хотелось бы иметь прибор, который позволяет дать служебную команду: Remote Transmission  Request Frame «А где у нас начальник транспортного цеха? Где сообщение с идентификатором  Х?», и вот тогда  бы не возникало двойственных ситуаций, и можно точно было сказать исправен блок или нет. Потому что такой запрос можно  бы было делать на  блок, отключив его от  шины данных. «Помечтай, помечтай» -, кто-то скажет. Отвечаю скептикам — подобное оборудование использовалось тогда, когда o CAN на автомобилях и не слышали. Но мне немножко посчастливилось подержать  в руках, нечто подобное.  Ну а пока могу только сказать, где почерпнуть информацию о проверке витых пар. Это у связистов. У них это фундаментально, эдак, года с 1965 в учебнике «Теория проводов» расписано уже  было. А к концу 60-х уже и оптоволокно. Сейчас уже есть информация и по витым парам, общепринятая, типы для них установлены, и требования приняты. Вот там  можно найти цифры, которые помогут при поиске неисправности.

 Был вопрос в теме http://forum.autodata.ru/264/23671/all.htm а бывают ли цифровые датчики? Бывают… будь они неладны. Фото 8:

Вот он, красавец. Включен  прямо в шину данных. А это значит что он цифровой. Потому что любая импульсная последовательность, если попадет в шину данных, подавит там обмен информацией сразу. А этот датчик формирует сообщение такого же формата, как описано в самом начале. И проверить его можно, несмотря на то, что он цифровой.

А путаница идет и вопросы возникают потому, что многие либо не имеют, либо пренебрегли  основополагающими знаниями. Было такое, когда попытка объяснить разницу между аналоговым сигналом, импульсной последовательностью, цифровым сигналом… мягко, скажем, заканчивалось ничем.  А если прямо сказать — невежество побеждало. Поэтому и по сей день  можно услышать: «шире-уже, пауза-промежуток, частота импульсной последовательности и пр. А цифровой сигнал — это вообще сигнал датчика Холла, если его уровень привести к логическому».

Если взять ось времени и над нею изобразить аналоговый, изменяющийся во времени сигнал, то в любой момент времени значения этого сигнала будут различны. И их будет множество.

Если взять ось времени и над ней изобразить импульсную последовательность из прямоугольных импульсов, то в любой момент времени значений будет всего лишь два: — это либо низкий уровень( амплитуда), либо высокий.

Если над осью времени изобразить цифровой сигнал  то мы в различные моменты времени будем видеть либо уровень  логического  ноля, либо единицы, либо переход из одного состояния в другое.

Цифровой сигнал — это данные в виде цифрового кода. На осциллографе мы можем видеть импульсы, но ни один из параметров импульсной последовательности или импульса к цифровому сигналу неприменим.

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

Вот как выходит, пока машинки были старые, там можно было толкать любую «теорию» от «конкретного практика». Сейчас уже номер не проходит. Хочешь разобраться — начинай с основ. Но желание «скажи к какой ноге подпаяться осталось».

И еще что хотелось бы отметить:- жаргон технический или то, что многие используют при объяснении или общении… Это тоже не терминология. Это … короче смотрим, фото 9:

Мировой шедевр. Сальвадор Дали. Называется картина:«Сон, навеянный полетом пчелы вокруг граната за миг до пробуждения.» Это сюрреализм. Я в нем полный ноль. Поэтому потратил время, пока нашел пчелу, летающую над гранатом. Это все, что я смог.  Оценивать картину я просто не могу, а сказать, что на ней изображено, и объяснить смысл, тем более.

А теперь реализм, фото 10:

Сигнал на каналах 3 и 4 назван «пилой». Это конечно не С. Дали… это незнание основ импульсной техники. И жаргонное слово «пила» применено не просто  не к месту. На жаргоне «пила» — это импульсы пилообразной формы. И генераторы таких импульсов применяются  в блоках развертки, но ни как  ни в системах управления. Потому что такой импульс не может содержать в себе информацию о состоянии, или каком — либо качественном параметре. У них другое назначение.

Вот «пила», фото 11:

Так вот, во втором случае жаргон можно принять, он не меняет основ. А в первом — меняет и искажает, потому что это совершенно другой сигнал. Это все равно, что валенок горшком назвать, и только лишь потому, что и туда и туда жидкость можно налить.  Но в горшке можно хранить, варить, есть в конце концов… а из валенка слабо? А на форуме не слабо, прикрыть пробел в фрагментальных знаниях  жаргонным красивым словечком, или фразой на иноземном языке. А то и целой выдержкой из текста. Можно читать по-английски, можно переводить, но думать нужно на родном языке. А если, прочитав иноземный текст, не можешь объяснить это на том языке, на котором тебя учили думать, извините уважаемый, вы сути процесса не понимаете.

Но есть еще и «помощники», которые помогают  достичь определенной стадии невежества. Это торговцы информацией. Есть и доморощенные, есть и от официалов. Ну вот например, фото 12:

Все легко! А главное:«ничего не бойся». Есть еще видеокурс. Там подороже 300$, но принцип тот же: «легко! И ничего не бойся». Расчет на тех, кто ищет «ногу, на которую нужно встать» и решить разом все проблемы. А раз есть спрос, есть предложение. Рынок, однако.

От официалов  продавцы опаснее. Их продукция привлекает внешним видом, простотой пояснения, и на первый взгляд кажется,  что именно сама суть изложена, и ничего лишнего.

Смотрим фото 13-14:

Вот так, сначала известная всем эмблема автопроизводителя. Затем картинки. Минимум текста, море, яхта природа… Воспринимается «на  ура». Но картинками все не пояснишь, надо что-то писать… И вот как начали писать, так сразу и видно стало. Оказывается,  датчик-то цифровой. Вот так. Век живи, век учись. Или так: «хочешь научиться- фильтруй информацию». Где не понимаешь, спрашивай у тех, кто может объяснить.

И крупным планом финал, фото 15:

Ну, тут без полулитры не разобраться… Но попробуем. Допустим, что сигнал цифровой… только допустим… Но передается он не виде данных (цифрового кода), а в виде «формы частотного сигнала». Что это за зверь — непонятно. Но и это не все. Оказывается, информация цифровая заложена не в коде, а в длине периодов импульсов. Если предположить, что сигнал «частотный», то основной параметр у него частота. Откуда периоды взялись – не понятно. Текст осилить не удалось. Попробуем изображение рассмотреть сигнала. Видим последовательность прямоугольных импульсов. О том, что это именно импульсная последовательность, говорят оси на которых она изображена. Это ось времени и ось величины амплитуды сигнала (напряжение), кроме того, четко выделен период в импульсной последовательности.

А это означает только одно — сигнал датчика представляет собой импульсную последовательность. С ярко выраженной дискретностью. Возьмите любые  моменты времени на оси и им будут соответствовать только два значения – максимальная амплитуда или минимальная. Цифровым сигналом тут и близко не пахнет. Если бы это был он, то изображение было бы только на оси времени. И никаких периодов, и никаких частот. Цифровой сигнал это данные в виде кода. А здесь данные о количестве воздуха заложены в величине периода .

Вот и все. Человек, прочитавший это будет лепить усвоенные им термины:- «цифровой, частотный, длину периода и прочий бред» — к любому сигналу, который будет похож на изображенный. И будет ставить знаки равенства между несовместимыми понятиями. Затем купит программку по удалению… или еще что-то. И  в итоге может крепко попасть… и ладно, если это будет просто определенная субстанция, определенной консистенции. А можно и серьезнее …

Время изменилось, подходы тоже. Без понимания процессов уже нельзя работать. Поэтому, если у кого-то вдруг возникает вопрос… элементарный, из букваря. Наверное, правильно будет не ухмыляться или отшучиваться, или отвечать на вопрос вопросом, а объяснить. А если нет желания — промолчать, кто-то другой ответит. Потому что это не вина человека задающего такой вопрос. Это беда. И беда не одного.

Вот сколько всплыло всего в обыкновенной теме. А началось-то все с простого кода Р0500. Да, совсем забыл. Шин, где используется оптоволокно, вообще не нужно боятся. Их проверить очень легко. Для этого нужно иметь всего лишь источник света. Все шины сходятся в общую, соединение параллельное. Поэтому  подсветив  любую шину вы увидите свет на других, а там где он не проходит – шина повреждена.

О многом написано в наших статьях на Легион-Автодате:  autodata.ru/article/ .

Как там говорят: «Ищущий да обрящет?». Всё правильно. А если проще, то так: «Без труда не выловишь …». Ну вы поняли -) …

Маркин А.В.

© Легион-Автодата

Маркин Александр Васильевич


(ник на форуме Легион-Автодата — A_V_M)


г.
Белгород, Таврово мкр 2, пер.Парковый, д.29-б.


Тел.: +7 (4722) 30-07-09.


Союз автомобильных диагностов

Вас также может заинтересовать:

Диагностика и ремонт: CAN — шина

Шина CAN системы «Комфорт»

Шина данных CAN — небольшая заметка по устройству

Понравилась статья? Поделить с друзьями:
  • Продать дом за материнский капитал пошаговая инструкция через мфц
  • Должностная инструкция автослесарь по ремонту автомобилей
  • Руководство таможни российской федерации
  • Как 600мг капсулы инструкция по применению
  • Естествознание методическое руководство