Что такое CAN-шина в автомобиле. Получение данных с CAN-шины автомобиля Как найти can шину в автомобиле

Диагностика и ремонт: 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-шина выглядит как асинхронная последовательность. Ее информация передается по двум витым проводникам, радиоканалу или оптоволокну.

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

CAN-шина в современных автомобилях регламентируется спецификацией "CAN Sorcjfication version 2,0".

Он состоит из двух разделов. Протокол А описывает передачу информации с применением 11-битной системы передачи данных. Часть В выполняет эти функции при применении 29-битного варианта.

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

Разновидности и маркировка

Одной из самых известных на сегодняшний день является разработанная Робертом Бошем CAN-шина. CAN BUS (под таким названием известна система) бывает последовательная, где импульс подается за импульсом. Она называется Serial bus. Если же информация передается по нескольким проводам, то это параллельная шина Parallel bus.

I - узлы управления;

II - коммуникации системы.

Опираясь на разновидности идентификаторов КАН-шин, встречается маркировка двух типов.

В случае, когда узел поддерживает 11-битный формат обмена информацией и не обозначает ошибки на сигналы 29-битного идентификатора, его маркируют "CAN2,0A Active, CAN2,0B Passive".

Когда таковые генераторы используют оба типа идентификаторов, шина имеет маркировку "CAN2,0B Active".

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

Система же функционирует при двух типах скоростей передачи сигналов - 125, 250 кбит/с. Первые предназначены для вспомогательных устройств (стеклоподъемники, освещение), а вторые обеспечивают главное управление (коробка-автомат, двигатель, ABS).

Передача сигналов

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

Общая сетевая нагрузка состоит из разрозненных сопротивлений блоков, которые входят в состав протокола, называемого КАН-шина.

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

Расположен этот прибор в конструкции управляющего блока, но бывает выполнен в виде обособленного прибора.

Представленный интерфейс применяют также для вывода и ввода сигналов диагностического характера. Для этого предусмотрено наличие унифицированной колодки OBD. Это особый разъем для диагностики системы.

Разновидности функций шин

Существуют разные типы представленного устройства.

  1. КАН-шина агрегата силового. Это быстрый канал, который передает послания со скоростью 500 кбит/с. Его главная задача заключается в коммуникации блоков управления, например трансмиссия-двигатель.
  2. Система "Комфорт" - более медлительный канал, передающий данные со скоростью 100 кбит/с. Он связывает все устройства системы "Комфорт".
  3. Информационно-командная программа шины также передает сигналы медленно (100 кбит/с). Ее основное предназначение - обеспечить связь между обслуживающими системами, например телефоном и навигацией.

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

Помехи в шине

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

Описание шины CAN оговаривает поступление посланий по проводникам High и Low в усилитель дифференциальный, где он обрабатывается и направляется в блок управления.

Усилитель определяет этот выходной сигнал как разность напряжений проводов High и Low. Такой подход позволяет исключить влияние внешних помех.

Чтобы понять, что собой представляет КАН-шина и ее устройство, следует вспомнить ее облик. Это два проводника, скрученные между собой.

Так как сигнал помехи поступает сразу на оба провода, в процессе обработки значение напряжения Low отнимается от напряжения High.

Благодаря этому CAN-шина считается надежной системой.

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

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


I - CAN-шина;

II - резистор сопротивления;

III - интерфейс.

В процессе приема-передачи информации на проведение одной операции отводится определенное время. Если оно вышло, формируется фрейм ошибки. Error Frame также длится определенное количество времени. Неисправный блок автоматически отключается от шины при накоплении большого количества ошибок.

Функциональность системы

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

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

Команда состоит из 3 разделов: имени, значения события, времени наблюдения за переменной величиной.

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

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

Разрешение конфликтов на шине

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

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

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

Физические составляющие

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

Микросхемы приемопередатчика часто встречаются от компании Philips, а также Siliconix, Bosch, Infineon.

Чтобы понять, что такое КАН-шина, следует изучить ее компоненты. Максимальная длина проводника при скорости 1 Мбит/с достигает 40 м. Шина- CAN (известная еще как CAN-BUS) в конце наделена терминатором.

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

Сам проводник в зависимости от конструкции может быть экранированным или неэкранированным. Концевое сопротивление может отходить от классического и находиться в диапазоне от 108 до 132 Ом.

Технология iCAN

Рассматривая шины транспортного средства, следует уделить внимание программе блокировки работы двигателя.

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

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

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

Защита от угона

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

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

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

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

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

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

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

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

Канальный и физический уровни CAN

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

Структура узла сети CAN

Рассматриваемый нами узел сети CAN состоит из микроконтроллера, CAN контроллера и приемопередатчика (рисунок 1). Чаще всего мы используем микроконтроллеры с встроенным CAN контроллером для упрощения схемы, но иногда используется автономный контроллер CAN с интерфейсом SPI (MCP2510). Далее приемопередатчик подключается к витой паре, на концах которой размещены согласующие резисторы (терминатор) с сопротивлением 120 Ом.

Рисунок 1 – Узел сети CAN

Для формирования логической единицы в витой паре, или свободной шине, на оба провода подается напряжение, равное половине разности напряжения между 0 или Vcc. Логическому нулю соответствует подача на провода линии дифференциального напряжения (рисунок 2).




Рисунок 2 – Логические уровни на CAN-шине

Шина CAN позволяет передавать данные со скоростью 1 Мбит/c при длине кабеля не более 40 м. В обучающей литературе написано, что при снижении скорости передачи до 10кбит/с можно добиться длины сети в 1.5км.

Пакет сообщения CAN

Формат сообщения CAN показан на рисунке 3.




Рисунок 3 – Пакет сообщения CAN

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

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

Арбитраж на шине CAN

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

Настройка скорости передачи данных по шине CAN

Скорость передачи данных по CAN шине настраивается за счет формирования квантов времени, а не как во многих других протоколах последовательной передачи данных за счет делителя скорости. В большинстве случаев используются скорости 10Кбит/c, 20Кбит/c, 50Кбит/c, 100Кбит/c, 125Кбит/c, 500Кбит/c, 800Кбит/c, 1MBaud и настройки для этих скоростей уже посчитаны. На рисунке 4 изображено окно выбора скорости в программе PcanView.



Рисунок 4 – Выбор скорости передачи данных в программе PcanView

Как мы видим при установке стандартной скорости настройки проставляются автоматически, но бывают случаи когда необходимо использовать другую скорость передачи данных. Например бортовой CAN автомобиля может работать со скоростью 83Кбит/c. В этом случае придется провести расчет настроек самостоятельно или поискать специализированный калькулятор скорости в интернете. Для самостоятельного расчета скорости необходимо понимать, что для передачи одного бита сообщения используется несколько квантов, а интервал передачи состоит из трех сегментов (рисунок 5).




Рисунок 5 – Время передачи одного бита

Первый сегмент всегда фиксирован и равняется одному кванту. Далее идет два сегмента Tseg1 и Tseg2 и количество квантов в каждом сегменте определяется пользователем и может быть равно от 8 до 25. Точка выборки находится между Tseg1 и Tseg2, т.е. в конце первого и в начале второго сегмента. Так же пользователь может определить ширину скачка синхронизации (Synchronization Jump Width - SJW) для подстройки битовой скорости принимающего устройства, который может быть в диапазоне 1 – 4 квантов времени.

Теперь приведем формулу расчета скорости (Пример расчета скорости для CAN контроллера SJA1000):

BTR = Pclk/(BRP * (1 + Tseg1 + Tseg2))

BTR – скорость передачи данных,

Pclk – частота работы CAN контроллера,

BRP – значение предделителя частоты генератора скорости передачи

Tseg1 – первый сегмент

Tseg2 – Второй сегмент

Для проверки возьмем уже посчитанную скорость 125Кбит/c и попробуем получить настройки вручную. Pclk возьмем 16 МГц.

BRP = 16МГц /(125K * (1 + Tseg1 + Tseg2))

Затем подбираем интервал передачи бита находящийся в диапазоне от 8 до 25 квантов времени, так что бы получилось целое значение BRP. В нашем случае если взять (1 + Tseg1 + Tseg2) = 16, то BRP будет равен 30.

SP = ((1 + Tseg1 + Tseg2) * 70)/100

Подставляем значения и получаем 16 * 0.7 = 11.2, что соответствует соотношению Tseg1 = 10, Tseg2 = 5, т.е. 1 + 10 + 5 = 16. Далее смотрим если Tseg2 >= 5, то SJW = 4, если Tseg2 < 5, то SJW = (Tseg2 – 1). В нашем случае SJW = 4.

Итого для получения скорости 125Кбит/c необходимо в параметрах указать, BRP = 30, Tseg1 = 10, Tseg2 = 5, SJW = 4.

P.S. Конфигурирование baud rate значительно отличается между старыми модулями USB-CANmodul (GW-001 и GW-002) с контроллером SJA1000 и новыми модулями sysWORXX с контроллером AT91SAM7A3. В статье описывающей работу с бортовым CAN автомобиля на скорости 83кбит/c приведен расчет скорости для контроллера AT91SAM7A3.


Пример получения и передачи данных по CAN-интерфейсу

В примере будем использовать CAN-адаптер с программой PcanView от SYSTEC и подключимся к салонному CAN автомобиля, работающему со скоростью 125Кбит/с. Рассматриваемый нами автомобиль оснащен креслами с электроприводом и поэтому исследуем данные отвечающие за положение кресел и постараемся изменить положение спинки подменив пакет с помощью компьютера.

Для начала на схеме автомобиля находим наиболее удобно расположенный разъем с линиями CANH и CANL и подключаем к нему наш адаптер. Если разъем и провода найти не получилось, то можно подлезть к блоку управления кресла, найти там два скрученных между собой провода и аккуратно надрезав провода подключить адаптер. Если после подключения и настройки адаптера сообщения не приходят, то в первую очередь попробуйте поменять между собой CANH CANL и проверить включено ли зажигание.
Далее запускаем программу PcanView, в открывшемся окне настроек устанавливаем Baudrate = 125Кбит/c и нажимаем ОК (рисунок 4). В следующем окне устанавливаем Message filter = Standard, диапазон адресов от 000 до 7FF и нажимаем ОК (рисунок 6).



Рисунок 6 – Настройка CAN фильтра

Если все сделано правильно, то мы увидим сообщения от кресел (рисунок 7), а при нажатии кнопки наклона спинки на пульте управления мы увидим еще одно сообщение с адресом 1F4 идущее от пульта к креслу (рисунок 8).



Рисунок 7 – CAN сообщения от кресла с электроприводом


Рисунок 8 – CAN сообщения от кресла с электроприводом и сообщение от пульта управления к креслу

Теперь мы знаем какие должны быть адрес, длина и данные в CAN пакете для имитации нажатия кнопки изменения положения спинки. Во вкладке Transmit нажимаем NEW и в открывшемся окне создаем копию пакета 1F4, т.е. ID = 1F4, Length = 3, Data = 40 80 00. Period можно оставить 0 ms, тогда сообщения будут отправляться по факту нажатия кнопки пробел (рисунок 9).



Рисунок 9 – Создание CAN сообщения

На рисунке 10 отображено поле Transmit главного окна содержащее все отправляемые сообщения в CAN и информацию о них. При выделении сообщения и нажатии кнопки пробел произойдет отправка пакета в CAN сеть и кресло немного сдвинется в нужном направлении.



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

Итог

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

Сегодня я хочу познакомить вас с интересной микроконтроллерной платформой CANNY . Это обзорная статья в которой вы узнаете о технологии, а в последующих статьях я расскажу вам о работе с сообщениями CAN, интеграции CANNY c Arduino Mega Server и о тех возможностях, которые предоставляет эта связка.

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

Шина CAN

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

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

Контроллеры CANNY

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

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

Кроме CANNY 7 в линейке контроллеров присутствует ещё несколько моделей, мы будем проводить свои эксперименты с более простой встраиваемой моделью CANNY 5 Nano. Она также поддерживает работу с CAN шиной, но при этом похожа на уже знакомую нам Arduino Nano.

Визуальное программирование

Развитая поддержка шины CAN это не единственная особенность этих контроллеров, кроме этого CANNY имеют свою собственную среду программирования, CannyLab, но не «обычную», а визуальную, где весь процесс написания программ сводится к манипулированию готовыми структурными блоками, заданию их параметров и соединению входов и выходов этих блоков в определённой последовательности, в соответствии с алгоритмом решаемой задачи.

Ни одной строчки кода!

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

Мне, как минимум, было «прикольно» составлять программы таким образом и через некоторое время мне это стало даже нравиться. Возможно, что если продолжить этим заниматься, то через некоторое время уже написание кода покажется неудобным.

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

Подключение

Подключение CANNY 5 Nano к компьютеру мало чем отличается от подключения контроллеров Arduino. При наличии в системе драйвера Silicon Labs CP210x, либо после его установки из скаченного дистрибутива CannyLab, Windows создаёт виртуальный COM порт и CANNY готов к работе. В моём случае понадобилось ещё перезагрузить компьютер, но возможно это особенность моей системы.

Практические примеры

Давайте на простых примерах разберём, как в CannyLab выполнять действия, привычные нам в Arduino IDE. Начнём с традиционного мигания светодиодом.

В контроллере CANNY 5 на выводе С4 (Channel 4) присутствует тестовый светодиод (аналог светодиода, находящегося на 13 выводе в Arduino). И его тоже можно использовать для индикации и экспериментов, чем мы и воспользуемся.

Что же нужно, чтобы помигать светодиодом в контроллере CANNY? Нужно сделать всего две вещи - сконфигурировать пин четвертого канала как выход и подать на этот выход сигнал с ШИМ генератора. Все эти действия мы уже не раз проделывали в Arduino IDE, посмотрим как это выглядит в CannyLab.

Итак, конфигурируем пин четвертого канала как выход

Настраиваем генератор ШИМ. Задаём период 500 миллисекунд, заполнение - 250 миллисекунд (то есть 50 %) и 1 (true) на входе генератора «Старт» и… всё! Больше ничего делать не нужно - программа готова, осталось только залить её в контроллер.

Режим симуляции

Тут нужно сказать пару слов о процессе симуляции на компьютере работы контроллера и заливке разработанной программы в память «железного» контроллера.

Среда разработки CannyLab позволяет запускать и отлаживать программу, не записывая её в память контроллера. В режиме симуляции вы можете видеть результат работы программы прямо в реальном времени и даже вмешиваться в её работу.

Заливка в контроллер

Для работы контроллеров CANNY, перед заливкой программы (в терминологии разработчиков «диаграммы») нужно сначала залить операционную систему «Устройство/Системное ПО/Записать». Это нужно сделать только один раз, для этого нужно выбрать соответствующий вашему контроллеру файл с расширением .ccx .

После того, как программа написана и отлажена, её можно загрузить в ваш контроллер. Это делается просто - в меню выбираете пункт «Устройство/Диаграмма/Записать» и через несколько секунд программа оказывается записанной в контроллер.

Аналоговые входы

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

Мы будем отслеживать уровень напряжения на 10 пине контроллера и если он находится в диапазоне 2,5 В ± 20%, будем зажигать встроенный в плату светодиод.

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

Включаем АЦП на 10-м канале.

Блок «Логическое И» довершает работу и со своего выхода управляет работой светодиода на плате.

Вот и всё. То, что мы привычно делали на Arduino, мы легко сделали в CannyLab. Осталось только освоиться в этой среде программирования и вы сможете легко и непринуждённо создавать свои проекты на этой платформе.

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

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

Can шина – имеет ли она что-то общее с обычными шинами и для чего нужна

ВНИМАНИЕ! Найден совершенно простой способ сократить расход топлива! Не верите? Автомеханик с 15-летним стажем тоже не верил, пока не попробовал. А теперь он экономит на бензине 35 000 рублей в год!

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

Когда была разработана цифровая CAN шина и какое её назначение

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

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

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

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

Can шина – параметры скорости и особенности передачи данных

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

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

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

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

Могут ли возникать проблемы в работе кан шины

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

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

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

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

Какие системы входят в современную Can шину автомобиля

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

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

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

CAN шина, как подключается автосигнализация к цифровой шине

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

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

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

Поделиться: