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

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

Аббревиатура CAN расшифровывается как Controller Area Network, то есть сеть контроллеров. Соответственно, CAN-шина – это устройство, принимающее информацию от устройств и передающее между ними. Данный стандарт был разработан и внедрён более 30 лет назад компанией Robert Bosch GmbH. Сейчас его используются в автомобилестроении, промышленной автоматизации и сфере проектирования объектов, обозначаемых «умными», например, домов.

Как работает CAN шина

Фактически, шина представляет собой компактное устройство со множеством входов для подключения кабелей или разъём, к которому подсоединяются кабели. Принцип её действия заключается в передаче сообщений между разными компонентами электронной системы.

Для передачи разной информации в сообщения включаются идентификаторы. Они уникальны и сообщают, например, что в конкретный момент времени автомобиль едет со скоростью 60 км/ч. Серия сообщения отправляется на все устройства, но благодаря индивидуальным идентификаторам они обрабатывают только те, которые предназначаются именно для них. Идентификаторы CAN-шины могут иметь длину от 11 до 29 бит.

В зависимости от назначения КАН шины разделяются на несколько категорий:

  • Силовые. Они предназначены для синхронизации и обмена данными между электронным блоком двигателя и антиблокировочной системой, коробкой передач, зажиганием, другими рабочими узлами автомобиля.
  • Комфорт. Эти шины обеспечивают совместную работу цифровых интерфейсов, которые не связаны с ходовыми блоками машины, а отвечают за комфорт. Это система подогрева сидений, климат-контроль, регулировка зеркал и т.п.
  • Информационно-командные. Эти модели разработаны для оперативного обмена информацией между узлами, отвечающими за обслуживание авто. Например, навигационной системой, смартфоном и ЭБУ.

Для чего CAN шина в автомобиле

Распространение интерфейса КАН в автомобильной сфере связано с тем, что он выполняет ряд важных функций:

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

В современном автомобиле цифровая шина обеспечивает работу следующих компонентов и систем:

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

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

Плюсы и минусы CAN шины

Специалисты по автомобильной электронике, высказываясь в пользу использования CAN-интерфейса, отмечают следующие преимущества:

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

Но есть у CAN-шины и функциональные недостатки:

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

Возможные проблемы с CAN шиной

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

  • индикация вопросительного знака на приборной панели;
  • одновременное свечение нескольких лампочек, например, CHECK ENGINE и ABS;
  • исчезновение показателей уровня топлива, оборотов двигателя, скорости на приборной панели.

Такие проблемы возникают по разным причинам, связанным с питанием или нарушением электроцепи. Это может быть замыкание на массу или аккумулятор, обрыв цепи, повреждение перемычек, падение напряжения из-за проблем с генератором или разряд АКБ.

Первая мера для проверки шины – компьютерная диагностика всех систем. Если она показывает шину, необходимо измерить напряжение на выводах H и L (должно быть ~4V) и изучить форму сигнала на осциллографе под зажиганием. Если сигнала нет или он соответствует напряжению сети, налицо замыкание или обрыв.

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

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

21.02.2006

Именно так выглядит (в основном) та самая "шина CAN", с которой в последнее время нам придется сталкиваться все чаще и чаще:

фото 1

Это обыкновенный двухпроводной кабель получивший название Twisted Pair.
На приведенном фото 1 показаны провода CAN High и CAN Low силового агрегата.
По этим проводам производится обмен данными между блоками управления, они могут нести информацию о скорости автомобиля, скорости вращения коленчатого вала, угле опережения зажигания и так далее.
Обратите внимание, что один из проводов дополнительно помечен черной полоской. Именно таким образом отмечается и визуально определяется провод CAN High (оранжево-черный).
Цвет провода
CAN-Low - оранжево-коричневый.
За основной цвет шины
CAN принят оранжевый цвет.

На рисунках и чертежах принято изображать цвета проводов шины CAN другими цветами, а именно:

фото 2

CAN-High - желтым цветом
CAN-Low - зеленым цветом

Всего существует несколько разновидностей шин CAN, определяемых выполняемыми ими функциями:
Шина CAN силового агрегата (быстрый канал ).
Она позволяет
передавать информацию со скоростью)500 кбит/с и служит для связи между блоками управления (двигатель - трансмиссия)
Шина CAN системы "Комфорт" (медленный канал ).
Она позволяет
передавать информацию со скоростью100 кбит/с и служит для связи между блоками управления, входящими в систему "Комфорт".
Шина данных CAN информационно- командной системы (медленный канал ), позволяющая передавать данные со скоростью 100 kBit/s. Обеспечивает связь между различными обслуживающимисистемами ( например,телефонной и навигационной системами) .

Новые модели автомобилей все более становятся похожими на самолеты - по количеству заявленных функций для безопасности, комфорта и экологичности. Блоков управления становится все больше и больше и "тянуть" от каждого грозди проводов - нереально.
Поэтому кроме шины CAN уже существуют другие шины, получившие названия:
– шина LIN (однопроводная шина)
– шина MOST (оптоволоконная шина)
– беспроводная шина Bluetooth

Но не будем "расплываться мыслью по древу", заострим наше внимание пока что на одной конкретной шине: CAN (по взглядам корпорации BOSCH).

На примере шины CAN силового агрегата можно посмотреть форму сигнала:

Фото 3

Когда на High шине CAN доминантное состояние, то напряжение проводе повышается до 3.5 вольт.
В рецессивном состоянии напряжение на обоих проводах равняется 2.5 вольта.
Когда на проводе
Low доминантное состояние, то напряжение падает до 1.5 вольта.
("Доминанта" - явление, доминирующее, главенствующее или господствующее в какой-либо сфере,- из словарей).

Для повышения надежности передачи данных, в шине CAN применяется дифференциальный способ передачи сигналов по двум проводам, имеющим название Twisted Pair. А провода, которые образуют эту пару, называются CAN High и CAN Low.
В исходном состоянии шины на обоих проводах поддерживается постоянное напряжение на определенном (базовом) уровне. Для шины
CAN силового агрегата оно приблизительно равняется 2.5 вольта.
Такое исходное состояние называется "состоянием покоя" или "рецессивом".

Каким образом передаются и преобразуются сигналы по CAN шине?

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

фото 4

Поступающие по проводам High и Low сигналы, поступают в дифференциальный усилитель, обрабатываются и поступают на вход блока управления.
Эти сигналы представляют собою напряжение на выходе дифференциального усилителя.
Дифференциальный усилитель формирует это выходное напряжение как разность между напряжениями на проводах High и Low шины CAN.
Таким образом исключается влияние величины базового напряжения (у шины CAN силового агрегата оно равно 2,5 В) или какого либо напряжения, вызванного, например, внешними помехами.

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

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

Так как шина CAN состоит из двух проводов, которые перекручены между собой, то помеха одновременно воздействует на два провода:

Из вышеприведенного рисунка видно, что происходит далее: в дифференциальном усилителе напряжение на проводе Low (1,5 В – " Pp") вычитается из напряжения
на проводе High (3,5 В – "
Pp") и в обработанном сигнале помеха отсутствует (" Pp" - помеха).


Примечание: По наличию времени статья может иметь продолжение - много еще остается "за кадром".



Кучер В.П.
© Легион-Автодата

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

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

[ Скрыть ]

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

Электронный КАН-интерфейс в авто представляет собой сеть контроллеров, использующихся для объединения всех управляющих модулей в единую систему.

Данный интерфейс представляет собой колодку, с которой можно соединять посредством проводов блоки:

  • противоугонного комплекса, оборудованного функцией автозапуска либо без нее;
  • системы управления мотором машины;
  • антиблокировочного узла;
  • системы безопасности, в частности, подушек;
  • управления автоматической коробкой передач;
  • контрольного щитка и т. д.

Устройство и где находится шина

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

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

Как работает?

Принцип работы автоматической системы заключается в передаче закодированных сообщений. В каждом из них имеется специальный идентификатор, являющийся уникальным. К примеру, «температура силового агрегата составляет 100 градусов» или «скорость движения машины 60 км/ч». При передаче сообщений все электронные модули будут получать соответствующую информацию, которая проверяется идентификаторами. Когда данные, передающиеся между устройствами, имеют отношение к конкретному блоку, то они обрабатываются, если нет — игнорируются.

Длина идентификатора CAN-шины может составить 11 либо 29 бит.

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

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

  1. Фоновый, который называется спящим или автономным. Когда он запущен, все основные системы машины отключены. Но при этом на цифровой интерфейс поступает питание от электросети. Величина напряжения минимальная, что позволяет предотвратить разряд аккумуляторной батареи.
  2. Режим запуска или пробуждения. Он начинает функционировать, когда водитель вставляет ключ в замок и проворачивает его для активации зажигания. Если машина оборудована кнопкой Старт/Стоп, это происходит при ее нажатии. Выполняется активация опции стабилизации напряжения. Питание подается на контроллеры и датчики.
  3. Активный. При активации этого режима процедура обмена данными осуществляется между регуляторами и исполнительными устройствами. Параметр напряжения в цепи увеличивается, поскольку интерфейс может потреблять до 85 мА тока.
  4. Деактивация или засыпание. Когда силовой агрегат останавливается, все системы и узлы, подключенные к шине CAN, перестают функционировать. Выполняется их деактивация от электрической сети транспортного средства.

Характеристики

Технические свойства цифрового интерфейса:

  • общее значение скорости передачи информации составляет около 1 Мб/с;
  • при отправке данных между блоками управления различными системами этот показатель уменьшается до 500 кб/с;
  • скорость передачи информации в интерфейсе типа «Комфорт» — всегда 100 кб/с.

Канал «Электротехника и электроника для программистов» рассказал о принципе отправки пакетных данных, а также о характеристиках цифровых адаптеров.

Виды CAN-шин

Условно CAN-шины можно разделить между собой на два типа в соответствии с использующимися идентификаторами:

  1. КАН2, 0А. Так маркируются цифровые устройства, которые могут функционировать в 11-битном формате обмена данными. Этот тип интерфейсов по определению не может выявить ошибки на сигналы от модулей, работающих с 29 бит.
  2. КАН2, 0В. Так маркируются цифровые интерфейсы, функционирующие в 11-битном формате. Но ключевая особенность состоит в том, что данные об ошибках будут передаваться на микропроцессорные устройства, если обнаруживается идентификатор на 29 бит.

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

  1. Для силового агрегата автомобиля. Если подключить к нему такой тип интерфейса, это позволит обеспечить быструю связь между управляющими системами по дополнительному каналу. Предназначение шины заключается в синхронизации работы ЭБУ двигателя с другими узлами. Например, коробкой передач, антиблокировочной системой и т. д.
  2. Устройства типа Комфорт. Такая разновидность цифровых интерфейсов используется для соединения всех систем данной категории. К примеру, электронной регулировки зеркал, подогрева сидений и т. д.
  3. Информационно-командные интерфейсы. Имеют аналогичную скорость передачи информации. Используются для обеспечения качественной связи между узлами, необходимыми для обслуживания транспортного средства. К примеру, между электронным блоком управления и навигационной системой или смартфоном.

О принципе действия, а также о разновидностях цифровых интерфейсов рассказал канал «Электротехника и электроника для программистов».

Инструкция по подключению сигнализации по CAN-шине

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

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

Если сигналку ставили специалисты, то надо обратиться за помощью с этим вопросом на СТО. Обычно устройство располагается за приборной панелью автомобиля или под ней. Иногда установщики ставят микропроцессорный модуль в свободное пространство за бардачком или автомагнитолой.

Что понадобится?

Для выполнения задачи потребуется:

  • мультиметр;
  • канцелярский нож;
  • изолента;
  • отвертка.

Пошаговые действия

Процедура подключения противоугонной установки к CAN-шине осуществляется так:

  1. Сначала надо убедиться, что все элементы охранного комплекса установлены и работают. Речь идет о микропроцессорном блоке, антенном модуле, сервисной кнопке, сирене, а также концевых переключателях. Если сигнализация имеет опцию автозапуска, надо убедиться в правильности монтажа этого устройства. Все элементы противоугонной установки подключаются к микропроцессорному блоку.
  2. Выполняется поиск основного проводника, идущего к CAN-шине. Он более толстый и его изоляция обычно окрашена в оранжевый цвет.
  3. Основной блок автосигнализации соединяется с данным контактом. Для выполнения задачи используется разъем цифрового интерфейса.
  4. Производится монтаж блока управления охранной системы, если он не был установлен. Его следует разместить в сухом и недоступном для посторонних глаз месте. После монтажа устройство надо качественно зафиксировать, иначе в процессе движения на него будут оказывать негативное воздействие вибрации. В результате это приведет к быстрой поломке модуля.
  5. Место соединения проводников тщательно изолируется, допускается использование термоусадочных трубок. Рекомендуется дополнительно обмотать изолентой провода. Это позволит увеличить их ресурс эксплуатации и не допустить стирания изоляционного слоя. Когда подключение будет выполнено, осуществляется проверка. Если возникли проблемы в передачи пакетных данных, с помощью мультиметра следует произвести диагностику целостности электроцепей.
  6. На завершающем этапе выполняется настройка всех каналов связи, в том числе дополнительных, если они имеются. Это позволит обеспечить бесперебойную работу охранной системы. Для настройки используется сервисная книжка, входящая в комплектацию противоугонной установки.

Пользователь Sigmax69 рассказал о соединении охранного комплекса с цифровым интерфейсом на примере автомобиля Хендай Солярис 2017.

Неисправности

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

Признаки и причины

О появлении неисправностей могут сообщить такие «симптомы»:

  • на приборной панели загорелись одновременно несколько значков без причины — подушки безопасности, рулевое управление, давление в системе смазки и т. д.;
  • появился световой индикатор Check Engine;
  • на контрольном щитке отсутствует информация о температуре силового агрегата, уровне топлива в баке, скорости т. д.

Причины, по которым могут возникнуть неисправности в работе CAN-интерфейса:

  • обрыв проводки в одной из систем или повреждение электролиний;
  • короткое замыкание в работе агрегатов на батарею или землю;
  • повреждение резиновых перемычек на разъеме;
  • окисление контактов, в результате чего нарушается передача сигнала между системами;
  • разряд АКБ автомобиля либо падение величины напряжения в электросети, что связано с неправильным функционированием генераторной установки;
  • замыкание систем CAN-high либо CAN-low;
  • появление неисправностей в работе катушки зажигания.

Подробнее о поломках цифрового интерфейса и тестировании с использованием компьютера рассказал канал «KV Avtoservis».

Диагностика

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

Процесс проверки:

  1. Диагностика начинается с поиска проводника витой пары КАН-шины. Кабель имеет черную либо оранжево-серую изоляцию. Первый является доминантным уровнем, а второй — второстепенным.
  2. С помощью мультиметра производится проверка величины напряжения на контактных элементах. При выполнении задачи зажигание нужно включить. Процедура тестирования позволит выявить напряжение в диапазоне от 0 до 11 вольт. На практике это обычно 4,5 В.
  3. Выполняется отключение зажигания. От аккумулятора отсоединяется проводник с отрицательным контактом, предварительно гаечным ключом надо ослабить зажим.
  4. Выполняется измерение параметра сопротивления между проводниками. О замыкании контактов можно узнать, если эта величина стремится к нулю. Когда диагностика показала, что сопротивление бесконечно, то в электролинии имеется обрыв. Проблема может заключаться непосредственно в контакте. Требуется более детально проверить разъем и все провода.
  5. На практике замыкание обычно происходит из-за поломки управляющих устройств. Для поиска вышедшего из строя модуля следует поочередно отключить от питания каждый блок и выполнить проверку величины сопротивления.

Пользователь Филат Огородников рассказал о диагностике КАН-шины с использованием осциллографа.

Как сделать анализатор своими руками?

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

Основные нюансы процедуры:

  1. В соответствии со схемой на первом фото в галерее надо приобрести все элементы для разработки анализатора. На ней подписаны составляющие детали. Потребуется плата с контроллером STM32F103С8Т6. Понадобится электросхема стабилизированного регуляторного устройства и КАН трансивер МСР2551.
  2. При необходимости в анализатор добавляется блютуз-модуль. Это позволит при эксплуатации девайса записать основную информацию на мобильное устройство.
  3. Процедура программирования выполняется с использованием любой утилиты. Рекомендуется применение программ КАНХакер или Ардуино. Первый вариант более функциональный и имеет опцию фильтрации пакетных данных.
  4. Для осуществления прошивки потребуется преобразовательное устройство USB-TTL, оно понадобится для отладки. Простой вариант — применение ST-Link второй версии.
  5. Загрузив программу на компьютер, основной файл формата ЕХЕ необходимо прошить в контроллер с использованием программатора. После выполнения задачи ставится перемычка бутлоудера, а изготовленное устройство подключается к ПК через USB-выход.
  6. Заливать прошивку в анализатор можно с использованием программного обеспечения MPHIDFlash.
  7. Когда обновление ПО будет завершено, надо отсоединить провод и демонтировать перемычку. Производится установка драйверов. Если устройство собрано верно, то на компьютере оно будет определяться как COM-порт, это можно посмотреть в диспетчере задач.

Фотогалерея

Схема для разработки CAN-анализатора Основная плата для сборки устройства

Плюсы и минусы CAN-шин

Преимущества, которыми обладает цифровой интерфейс:

  1. Быстродействие. Устройство может оперативно обмениваться пакетными данными между разными системами.
  2. Высокая устойчивость к воздействию электромагнитных помех.
  3. Все цифровые интерфейсы имеют многоуровневую систему контроля. Благодаря этому можно не допустить появления ошибок при передаче информации и ее приеме.
  4. При работе шина сама раскидывает скорость по каналам в автоматическом режиме. Благодаря этому обеспечивается эффективная работа электронных систем транспортного средства.
  5. Цифровой интерфейс является безопасным. Если к электронным узлам и системам автомобиля кто-то попытается получить незаконный доступ, шина автоматически заблокирует эту попытку.
  6. Наличие цифрового интерфейса позволяет упрощенно произвести монтаж охранной системы на машину с минимальным вмешательством в штатную бортовую сеть.

Минусы, которыми обладает CAN-шина:

  1. Некоторые интерфейсы имеют ограничения по объему информации, которая может передаваться. Этот недостаток будет весомым для современного автомобиля, «напичканного» электроникой. При добавлении дополнительных устройств на шину возлагается более высокая нагрузка. Из-за этого снижается время отклика.
  2. Все пакетные данные, которые передаются по шине, имеют определенное назначение. Для полезной информации отводится минимальная часть трафика.
  3. Если применяется протокол повышенного уровня, это станет причиной отсутствия стандартизации.

Видео «Ремонт CAN-интерфейса своими руками»

Пользователь Roman Brock рассказал о процедуре восстановления шины приборной панели в автомобиле Форд Фокус 2 рестайлинг.

Задача: Получить доступ к показаниям штатных датчиков автомобиля без установки дополнительных.
Решение: Считывание данных с автомобиля.

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

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

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

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

  • обороты двигателя;
  • уровень топлива в баке;
  • пробег автомобиля;
  • температура охлаждающей жидкости двигателя ТС;
  • и т.д.

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

. Что такое ?

CAN (англ. Controller Area Network — сеть контроллеров) — популярный стандарт промышленной сети, ориентированный на объединение в единую сеть различных исполнительных устройств и датчиков, широко используемый в автомобильной автоматике. На сегодняшний день практически все современные автомобили оснащены так называемой цифровой проводкой - автомобильной CAN-шиной.


. Откуда появилась задача считывания данных с CAN-шины?

Задача считывания данных с CAN-шины появилась как следствие задачи оптимизации расходов на эксплуатацию автотранспорта.

В соответствии с типовыми запросами заказчиков, автомобили и спецтехника оснащаются системой спутникового ГЛОНАСС или GPS мониторинга и системой контроля оборота топлива (на базе погружных либо ультразвуковых датчиков уровня топлива).

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

Именно таким решением стало получение информации с CAN-шины. Ведь оно имеет целый ряд преимуществ:

1. Экономия на дополнительных устройствах

Не нужно нести значительных расходов на приобретение и установку различных датчиков и устройств.

2. Сохранение гарантии на автомобиль

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

3. Получение доступа к информации со штатно установленных электронных устройств и датчиков.



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

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



. Какие достоинства и недостатки влечет за собой решение со считыванием данных с CAN-шины?

Достоинства:

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

Недостатки:

Максимальная длина сети обратно пропорциональна скорости передачи.
. Большой размер служебных данных в пакете (по отношению к полезным данным).
. Отсутствие единого общепринятого стандарта на протокол высокого уровня.

Стандарт сети предоставляет широкие возможности для практически безошибочной передачи данных между узлами, оставляя разработчику возможность вложить в этот стандарт всё, что туда сможет поместиться. В этом отношении CAN-шина подобна простому электрическому проводу. Туда можно «затолкать» любой поток информации, который сможет выдержать пропускная способность шины.

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

Изготовители, как правило, не афишируют, как именно они используют полезные байты в пакете. Поэтому FMS прибор не всегда может расшифровать данные, которые «отдает» CAN-шина. Кроме того, не все марки автомобилей имеют CAN-шину. И даже не все автомобили одной марки и модели могут выдавать одинаковую информацию.


Пример реализации решения:

Не так давно компанией Скайсим совместно с партнером был реализован большой проект по мониторингу автотранспорта. В парке были различные грузовые автомобили иностранного производства. В частности, грузовые автомобили Scania p340.


Для того, чтобы проанализировать процесс получения данных с CAN-шины мы, по солгасованию с заказчиком, провели соответствующие исследования на трех автомобилях Scania p340: один 2008 года выпуска, второй начала 2009 и третий конца 2009 года.


Результаты оказались следующими:

  • с первого данные получены так и не были;
  • со второго был получен только пробег;
  • с третьего были получены все интересующие данные (уровень топлива, температура охлаждающей жидкости, обороты двигателя, общий расход, общий пробег).


На рисунке отображен фрагмент сообщения из информационной системы Wialon, где:
Fuel_level - уровень топлива в баке в %;
Temp_aqua - Температура охлаждающей жидкости в градусах Цельсия;
Taho - Данные с тахометра (об/мин).

Регламент реализации решения был следующий:

1. Навигационный прибор Galileo ГЛОНАСС/GPS был подключен к CAN-шине грузовиков.
Данная модель автотрекера была выбрана из-за оптимального сочетания функционала, надежности и стоимости. Кроме того, она поддерживает FMS (Fuel Monitoring System) - систему, которая позволяет регистрировать и контролировать основные параметры использования транспортного средства, т.е. подходит для подключения к CAN-шине.

Схему подключения к CAN-шине со стороны прибора Galileo можно найти в руководстве пользователя. Для подключения со стороны автомобиля необходимо, в первую очередь, найти свитую пару проводов, подходящую к диагностическому разъёму. Диагностический разъем всегда в доступности и располагается вблизи от рулевой колонки. В 16 контактном разъёме по стандарту OBD II это 6-CAN high, 14-CAN low. Обратите внимание, что у проводов High напряжение примерно 2,6-2,7В, у проводов Low оно, как правило на 0,2В меньше.


_________________________________________________________________________

Еще одним уникальным решением, которое было использовано для снятия данных с CAN-шины, стал бесконтактный считыватель данных CAN Crocodile (производство СП Технотон, г. Минск). Он отлично подходит для работы с приборами Galileo.


Преимущества технологии CAN Crocodile:

CAN Crocodile позволяет получать данные о работе автомобиля из шины CAN без вмешательства в целостность самой шины.

Считывание данных происходит без механического и электрического контакта с проводами.

CAN Crocodile применяется для подключения к шине CAN систем GPS/ГЛОНАСС мониторинга, которые получают информацию о режимах работы двигателя, состоянии датчиков, наличии неисправностей и т.д.

CAN Crocodile не нарушает изоляцию проводов CAN и "слушает" обмен по шине с помощью специального беспроводного приемника.

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



2. Если провода обнаружены и идентифицированы верно, можно приступать к запуску CAN-сканера в приборе Galileo.

3. Выбирается стандарт FMS, скорость для большинства автомобилей 250 000.

4. Запускается сканирование.

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

6. Если ничего, кроме «end scan» Вы не увидели, тут есть несколько вариантов. Либо было неправильно осуществлено подключение, либо автомобиль по каким-то причинам не выдает данные, либо прибору неизвестен шифр данной CAN-шины. Как уже было сказано, такое случается довольно часто, поскольку пока не существует единого стандарта для передачи данных и их обработки по CAN. К сожалению, как показывает практика, получить полные данные с CAN-шины не всегда удается.


Но есть еще один момент, который важно затронуть.

Чаще всего основной целью клиентов является контроль уровня и расхода топлива.

  • Даже если данные со штатных датчиков будут успешно получены с CAN-шины, какова их практическая ценность?

Дело в том, что основное назначение штатных датчиков уровня топлива - дать оценку с той степенью точности, которая кажется правильной производителю ТС. Эта точность не может быть ставнима с точностью, которую дает погружной датчик уровня топлива (ДУТ) производства Омникомм или, например, Технотон .

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

Выводы


По ряду вышеназванных причин, мы рекомендуем не полагаться полносьтю на показания штатных датчиков уровня топлива, а рассматривать каждую ситуацию индивидуально. Как правило, подходящее решение может быть найдено только совместно с техническими специалистами. У разных производителей ТС разная точность показаний. У всех заказчиков также разные задачи. И только под конкретную задачу целесообразно подбирать средства решения. Кому-то вполне подойдет решение с получением данных с CAN-шины, так как оно в разы дешевле и не требует никаких изменений топливной системы ТС. А вот заказчикам с высокими требованиями по точности разумно рассматривать вариант с погружным ДУТом.

Шина CAN – Введение

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

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

Протокол CAN

Протокол CAN описан в стандарте ISO 11898–1 и может быть кратко охарактеризован следующим образом:

Физический уровень использует дифференциальную передачу данных по витой паре;

Для управления доступом к шине используется неразрушающее bit–wise разрешение конфликтов;

Сообщения имеют малые размеры (по большей части 8 байт данных) и защищены контрольной суммой;

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

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

Протоколы более высоких уровней

Сам по себе протокол CAN определяет всего лишь, как малые пакеты данных можно безопасно переместить из точки A в точку B посредством коммуникационной среды. Он, как и следовало ожидать, ничего не говорит о том, как управлять потоком; передавать большое количество данных, нежели помещается в 8–байтное сообщение; ни об адресах узлов; установлении соединения и т.п. Эти пункты определяются протоколом более высокого уровня (Higher Layer Protocol, HLP). Термин HLP происходит из модели OSI и её семи уровней.

Протоколы более высокого уровня используются для:

Стандартизации процедуры запуска, включая выбор скорости передачи данных;

Распределения адресов среди взаимодействующих узлов или типов сообщений;

Определения разметки сообщений;
обеспечения порядка обработки ошибок на уровне системы.

Пользовательские группы и т.п.

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

Продукты CAN

На низком уровне принципиально различают два типа продуктов CAN, доступных на открытом рынке – микросхемы CAN и инструменты разработки CAN. На более высоком уровне – другие два типа продуктов: модули CAN и инструменты проектирования CAN. Широкий спектр данных продуктов доступен на открытом рынке в настоящее время.

Патенты в области CAN

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

Системы распределённого управления

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

Систему распределённого управления можно описать как систему, вычислительная мощность которой распределена между всеми узлами системы. Противоположный вариант – система с центральным процессором и локальными точками ввода–вывода.

Сообщения CAN

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

Адресация сообщений CAN

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

Типы сообщений

Существует 4 типа сообщений (или кадров), передающихся по шине CAN:

Кадр данных (Data Frame);

Удаленный кадр (Remote Frame);

Кадр ошибки (Error Frame);

Кадр перегрузки (Overload Frame).

Кадр данных

Кратко: «Всем привет, есть данные с маркировкой X, надеюсь вам понравятся!»
Кадр данных – самый распространенный тип сообщения. Он содержит в себе следующие основные части (некоторые детали не рассматриваются для краткости):

Поле арбитража (Arbitration Field), которое определяет очередность сообщения в том случае, когда за шину борятся два или более узла. Поле арбитража содержит:

В случае CAN 2.0A, 11–битный идентификатор и один бит, бит RTR который является определяющим для кадров данных.

В случае CAN 2.0B, 29–битный идентификатор (который также содержит два рецессивных бита: SRR и IDE) и бит RTR.

Поле данных (Data Field), которое содержит от 0 до 8 байт данных.

Поле CRC (CRC Field), содержащее 15–битную контрольную сумму, посчитанную для большинства частей сообщения. Эта контрольная сумма используется для обнаружения ошибок.

Слот распознавания (Acknowledgement Slot). Каждый контроллер CAN, способный корректно получить сообщение, посылает бит распознавания (Acknowledgement bit) в конце каждого сообщения. Приемопередатчик проверяет наличие бита распознавания и, если таковой не обнаруживается, высылает сообщение повторно.

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

Примечание 2: Идентификатор в поле арбитража, несмотря на свое название, необязательно идентифицирует содержимое сообщения.

Кадр данных CAN 2.0B («cтандартный CAN»).

Кадр данных CAN 2.0B («расширенный CAN»).

Удаленный кадр

Кратко: «Всем привет, кто–нибудь может произвести данные с маркировкой X?»
Удаленный кадр очень похож на кадр данных, но с двумя важными отличиями:

Он явно помечен как удаленный кадр (бит RTR в поле арбитража является рецессивным), и

Отсутствует поле данных.

Основной задачей удаленного кадра является запрос на передачу надлежащего кадра данных. Если, скажем, узел A пересылает удаленный кадр с параметром поля арбитража равным 234, то узел B, если он должным образом инициализирован, должен выслать в ответ кадр данных с параметром поля арбитража также равным 234.

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

Есть одна уловка, связанная с удаленным кадром: код длины данных (Data Length Code) должен быть установлен длине ожидаемого ответного сообщения. В противном случае разрешение конфликтов работать не будет.

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

Кадр ошибки (Error Frame)

Кратко (все вместе, громко): «О, ДОРОГОЙ, ДАВАЙ ПОПРОБУЕМ ЕЩЁ РАЗОК»
Кадр ошибки (Error Frame) – это специальное сообщение, нарушающее правила формирования кадров сообщения CAN. Он посылается, когда узел обнаруживает сбой и помогает остальным узлам обнаружить сбой – и они тоже будут отправлять кадры ошибок. Передатчик автоматически попробует послать сообщение повторно. Наличествует продуманная схема счетчиков ошибок, гарантирующая, что узел не сможет нарушить передачу данных по шине путём повторяющейся отсылки кадров ошибки.

Кадр ошибки содержит флаг ошибки (Error Flag), который состоит из 6 бит одинакового значения (таким образом нарушая правило вставки битов) и разграничителя ошибки (Error Delimiter), состоящего из 8 рецессивных бит. Разраничитель ошибки предоставляет некоторое пространство, в котором другие узлы шины могут отправлять свои флаги ошибки после того, как сами обнаружат первый флаг ошибки.

Кадр перегрузки (Overload Frame)

Кратко: «Я очень занятой 82526 маленький, не могли бы вы подождать минуточку?»
Кадр перегрузки упоминается здесь лишь для полноты картины. По формату он очень похож на кадр ошибки и передается занятым узлом. Кадр перегрузки используется нечасто, т.к. современные контроллеры CAN достаточно производительны, чтобы его не использовать. Фактически, единственный контроллер, который будет генерировать кадры перегрузки – это ныне устаревший 82526.

Стандартный и расширенный CAN

Изначально стандарт CAN установил длину идентификатора в поле арбитража равной 11 битам. Позже, по требованию покупателей стандарт был расширен. Новый формат часто называют расширенным CAN (Extended CAN), он позволяет использовать не менее 29 бит в идентификаторе. Для различения двух типов кадров используется зарезервированный бит в поле управления Control Field.

Формально стандарты именуются следующим образом –

2.0A – только с 11–битными идентификаторами;
2.0B – расширенная версия с 29–битными или 11–битными идентификаторами (их можно смешивать). Узел 2.0B может быть

2.0B active (активным), т.е. способным передавать и получать расширенные кадры, или

2.0B passive (пассивным), т.е. он будет молча сбрасывать полученные расширенные кадры (но, смотрите ниже).

1.x – относится к оргинальной спецификации и её ревизиям.

В настоящее время новые контроллеры CAN обычно относятся к типу 2.0B. Контроллер типа 1.x или 2.0A прибудет в замешательство, получив сообщения с 29 битами арбитража. Контроллер 2.0B пассивного типа примет их, опознает, если они верны и, затем – сбросит; a контроллер 2.0B активного типа сможет и передавать, и получать такие сообщения.

Контроллеры 2.0B и 2.0A (равно, как и 1.x) совместимы. Можно использовать их все на одной шине до тех пор, пока контроллеры 2.0B будут воздерживаться от рассылки расширенных кадров.

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

Основной CAN (Basic CAN) и полный CAN (Full CAN)

Термины Basic CAN и Full CAN берут начало в «детстве» CAN. Когда–то существовал CAN–контроллер Intel 82526, предоставлявший программисту интерфейс в стиле DPRAM. Потом появился Philips с моделью 82C200, в котором применялась FIFO–ориентированная модель программирования и ограниченные возможности фильтрации. Для обозначения различия между двумя моделями программирования, люди стали называть способ Intel – Full CAN, а способ Philips – Basic CAN. Сегодня большинство контроллеров CAN поддерживают обе модели программирования, поэтому нет смысла в использовании терминов Full CAN и Basic CAN – фактически, эти термины могут вызвать неразбериху и стоит воздержаться от их употребления.

В действительности, контроллер Full CAN может взаимодействовать с контроллером Basic CAN и наоборот. Проблемы с совместимостью отсутствуют.

Разрешение конфликтов на шине и приоритет сообщения

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

Любой контроллер CAN может начать передачу, когда обнаружит, что шина простаивает. Это может привести к тому, что два или более контроллеров начнут передачу сообщения (почти) одновременно. Конфликт решается следующим образом. Передающие узлы осуществляют мониторинг шины в процессе отправки сообщения. Если узел обнаруживает доминантный уровень в то время, как сам он отправляет рецессивный уровень, он незамедлительно устранится от процесса разрешения конфликта и станет приемником. Разрешение конфликтов осуществляется по всему полю арбитража, и после того, как это поле отсылается, на шине остается только один передатчик. Данный узел продолжит передачу, если ничего не случится. Остальные потенциальные передатчики попытаются передать свои сообщения позже, когда шина освободится. В процессе разрешения конфликта время не теряется.

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

Поскольку, CAN–шина является шиной с подсоединением устройств по типу «монтажное И» (wired–AND) и доминантный бит (Dominant bit) является логическим 0, следовательно сообщение с самым низким в численном выражении полем арбитража выиграет в разрешении конфликта.

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

Ответ: Узел, разумеется, выиграет в разрешении конфликта и успешно проведет передачу сообщения. Но когда наступит время распознавания… ни один узел не отправит доминантный бит области распознавания, поэтому передатчик определит ошибку распознавания, пошлет флаг ошибки, повысит значение своего счетчика ошибок передачи на 8 и начнет повторную передачу. Этот цикл повторится 16 раз, затем передатчик перейдет в статус пассивной ошибки. В соответствии со специальным правилом в алгоритме ограничения ошибок, значение счетчика ошибок передачи не будет более повышаться, если узел имеет статус пассивной ошибки и ошибка является ошибкой распознавания. Поэтому узел будет осуществлять передачу вечно, до тех пор, пока кто–нибудь не распознает сообщение.

Адресация и идентификация сообщения

Повторимся, нет ничего страшного в том, что в сообщениях CAN нет точных адресов. Каждый контроллер CAN будет получать весь траффик шины, и при помощи комбинации аппаратных фильтров и ПО, определять – «интересует» его это сообщение, или нет.

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

Определённый адрес работает так: «Это сообщение для узла X». Контентно–адресованное сообщение можно описать так: «Это сообщение содержит данные с маркировкой X». Разница между этими двумя концепциями мала, но существенна.

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

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

Примечание о значениях идентификатора

Мы говорили, что идентификатору доступны 11 (CAN 2.0A) или 29 (CAN 2.0B) бит. Это не совсем верно. Для совместимости с определенным старым контроллером CAN (угадайте каким?), идентификаторы не должны иметь 7 старших бит установленных в логическую единицу, поэтому 11–битным идентификаторам доступны значения 0..2031, а пользователи 29–битных идентификаторов могут использовать 532676608 различных значений.

Заметьте, что все остальные контроллеры CAN принимают «неправильные» идентификаторы, поэтому в современных системах CAN идентификаторы 2032..2047 могут использоваться без ограничений.

Физические уровни CAN

Шина CAN

Шина CAN использует код без возвращения к нулю (NRZ) с вставкой битов. Существуют два разных состояния сигнала: доминантное (логический 0) и рецессивное (логическая 1). Они соответствуют определенным электрическим уровням, зависящим от используемого физического уровня (их несколько). Модули подключены к шине по схеме «монтажное И» (wired–AND): если хотя бы один узел переводит шину в доминантное состояние, то вся шина находится в этом состоянии, вне зависмости от того, сколько узлов передают рецессивное состояние.

Различные физические уровни

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

Существует несколько различных версий физических уровней: Наиболее распространенным является вариант, определенный стандартом CAN, часть ISO 11898–2, и представляющий собой двухпроводную сбалансированную сигнальную схему. Он также иногда называется high–speed CAN.

Другая часть того же стандарта ISO 11898–3 описывает другую двухпроводную сбалансированную сигнальную схему – для менее скоростной шины. Она устойчива к сбоям, поэтому передача сигналов может продолжаться даже в том случае, когда один из проводов будет перерезан, замкнут на «землю» или в состоянии Vbat. Иногда такая схема называется low–speed CAN.

SAE J2411 описывает однопроводной (плюс «земля», разумеется) физический уровень. Он используется в основном в автомобилях – например GM–LAN.

Существуют несколько проприетарных физических уровней.

В былые времена, когда драйверов CAN не существовало, использовались модификации RS485.

Различные физические уровни как правило не могут взаимодействовать между собой. Некоторые комбинации могут работать (или будет казаться, что они работают) в хороших условиях. Например, приемопередатчики high–speed и low–speed могут работать на одной шине лишь иногда.

Абсолютное большинство микросхем приемопередатчиков CAN произведено компанией Philips; в число других производителей входят Bosch, Infineon, Siliconix и Unitrode.

Наиболее распространен приемопередатчик 82C250, в котором реализован физический уровень, описываемый стандартом ISO 11898. Усовершенствованная версия – 82C251.

Распространенный приемопередатчик для «low–speed CAN» – Philips TJA1054.

Максимальная скорость передачи данных по шине

Максимальная скорость передачи данных по шине CAN, в соответствии со стандартом , равна 1 Мбит/с. Однако некоторые контроллеры CAN поддерживают скорости выше 1 Мбит/с и могут быть использованы в специализированных приложениях.

Low–speed CAN (ISO 11898–3, см. выше) работает на скоростях до 125 кбит/с.

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

Минимальная скорость передачи данных по шине

Имейте в виду, что некоторые приемопередатчики не позволят вам выбрать скорость ниже определенного значения. Например, при использовании 82C250 или 82C251 вы можете без проблем установить скорость 10 кбит/с, но если вы используете TJA1050, то не сможете установить скорость ниже 50 кбит/с. Сверяйтесь со спецификацией.

Максимальная длина кабеля

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

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

100 метров при 500 кбит/с;

200 метров при 250 кбит/с;

500 метров при 125 кбит/с;
6 километров при 10 кбит/с.

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

Оконечное прерывание шины

Шина CAN стандарта ISO 11898 должна заканчиваться терминатором. Это достигается путем установки резистора сопротивлением 120 Ом на каждом конце шины. Терминирование служит двум целям:

1. Убрать отражения сигнала на конце шины.

2. Убедиться, что получает корректные уровни постоянного тока (DC).

Шина CAN стандарта ISO 11898 обязательно должна терминироваться вне зависимости от её скорости. Я повторю: шина CAN стандарта ISO 11898 обязательно должна терминироваться вне зависимости от её скорости. Для лабораторной работы может хватить и одного терминатора. Если ваша шина CAN работает даже при отсутствии терминаторов – вы просто счастливчик.

Заметьте, что другие физические уровни , такие как low–speed CAN, однопроводная шина CAN и другие, могут требовать, а могут и не требовать наличия оконечного терминатора шины. Но ваша высокоскоростная шина CAN стандарта ISO 11898 всегда будет требовать наличия хотя бы одного терминатора.

Кабель

Стандарт ISO 11898 предписывает, что волновое сопротивление кабеля номинально должно равнятся 120 Ом, однако допускается интервал значений сопротивления Ом.

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

ISO 11898 описывает витую пару, экранированную или неэкранированную. Идёт работа над стандартом однопроводного кабеля SAE J2411.



Эта статья также доступна на следующих языках: Тайский

  • Next

    Огромное Вам СПАСИБО за очень полезную информацию в статье. Очень понятно все изложено. Чувствуется, что проделана большая работа по анализу работы магазина eBay

    • Спасибо вам и другим постоянным читателям моего блога. Без вас у меня не было бы достаточной мотивации, чтобы посвящать много времени ведению этого сайта. У меня мозги так устроены: люблю копнуть вглубь, систематизировать разрозненные данные, пробовать то, что раньше до меня никто не делал, либо не смотрел под таким углом зрения. Жаль, что только нашим соотечественникам из-за кризиса в России отнюдь не до шоппинга на eBay. Покупают на Алиэкспрессе из Китая, так как там в разы дешевле товары (часто в ущерб качеству). Но онлайн-аукционы eBay, Amazon, ETSY легко дадут китайцам фору по ассортименту брендовых вещей, винтажных вещей, ручной работы и разных этнических товаров.

      • Next

        В ваших статьях ценно именно ваше личное отношение и анализ темы. Вы этот блог не бросайте, я сюда часто заглядываю. Нас таких много должно быть. Мне на эл. почту пришло недавно предложение о том, что научат торговать на Амазоне и eBay. И я вспомнила про ваши подробные статьи об этих торг. площ. Перечитала все заново и сделала вывод, что курсы- это лохотрон. Сама на eBay еще ничего не покупала. Я не из России , а из Казахстана (г. Алматы). Но нам тоже лишних трат пока не надо. Желаю вам удачи и берегите себя в азиатских краях.

  • Еще приятно, что попытки eBay по руссификации интерфейса для пользователей из России и стран СНГ, начали приносить плоды. Ведь подавляющая часть граждан стран бывшего СССР не сильна познаниями иностранных языков. Английский язык знают не более 5% населения. Среди молодежи — побольше. Поэтому хотя бы интерфейс на русском языке — это большая помощь для онлайн-шоппинга на этой торговой площадке. Ебей не пошел по пути китайского собрата Алиэкспресс, где совершается машинный (очень корявый и непонятный, местами вызывающий смех) перевод описания товаров. Надеюсь, что на более продвинутом этапе развития искусственного интеллекта станет реальностью качественный машинный перевод с любого языка на любой за считанные доли секунды. Пока имеем вот что (профиль одного из продавцов на ебей с русским интерфейсом, но англоязычным описанием):
    https://uploads.disquscdn.com/images/7a52c9a89108b922159a4fad35de0ab0bee0c8804b9731f56d8a1dc659655d60.png