Для настройки функций модуля существует два режима программирования:
- основной режим — используется для ввода четырехзначного номера автомобиля и программирования функций модуля при начальной установке.
- дополнительный режим — используется для программирования функций модуля, а также для просмотра номера автомобиля, когда номер уже записан в охранный комплекс.
- Основной режим программирования
- Вход в основной режим программирования
- Выбор номера автомобиля
- Последовательность программирования
- Пример программирования модуля в основном режиме
- Дополнительный режим программирования
- Как настроить can шину
- CAN-шина
- Особенности устройства CAN-шины
- Передача данных по Кан-шине
- Обзор возможностей протокола CAN
- Скорость передачи данных CAN-шины
- Протоколы высокого уровня
- Достоинства и недостатки протокола CAN
- Описание CAN шины и как через нее подключить автосигнализацию
- Что такое CAN-шина и принцип ее работы
- Плюсы и минусы
- Виды и маркировки
- Разновидность функций шин
- Девайс для автомобильного двигателя
- Устройство типа Комфорт
- Информационно-командный девайс
- Могут ли быть проблемы в работе CAN-шин?
- Как подключить сигнализацию по CAN-шине
- Видео «Пример подключения КАН-шины»
- Побеждаем шину CAN. Часть 1. Технология
- Шина CAN
- Контроллеры CANNY
- Визуальное программирование
- Подключение
- Практические примеры
- Режим симуляции
- Заливка в контроллер
- Аналоговые входы
- Заключение по вводной статье цикла
- Хакаем CAN шину авто. Мобильное приложение вместо панели приборов
- Программный сниффер VCDS
- Протокол UDS
- VW Transport Protocol 2.0
- Диагностический адаптер ELM327
- Мобильное приложение VAG Virtual Cockpit
Видео:Подробно про CAN шинуСкачать
Основной режим программирования
Программирование параметров осуществляется с помощью сервисной кнопки в соответствии со схемой, отображающей меню программирования.
Видео:STM32 CAN шина. Часть 1. Настройка и странности HALСкачать
Вход в основной режим программирования
Для входа в режим программирования выполните следующие действия:
Отключите питание охранного комплекса.
Нажмите и удерживайте сервисную кнопку, подайте питание на комплекс. Последуют 5 звуковых сигналов, во время которых продолжайте удерживать сервисную кнопку.
После прекращения звуковых сигналов отпустите сервисную кнопку. Последуют 4 коротких звуковых сигнала, подтверждающих переход системы в режим программирования.
Видео:Как настроить Canbus на Android магнитоле . Правильное подключение .Скачать
Выбор номера автомобиля
Все автомобили, поддерживаемые модулем, зарегистрированы в библиотеке протоколов под уникальными 4-значными номерами. Эти номера Вы можете посмотреть на сайте can.starline.ru. После установки необходимо записать в память охранного комплекса номер, соответствующий вашему автомобилю.
Для записи уникального 4-значного номера выполните следующие действия:
Войдите в режим программирования и однократным нажатием на сервисную кнопку выберите первый раздел меню программирования. Один звуковой сигнал подтвердит выбор первого раздела меню.
Нажмите сервисную кнопку число раз, соответствующее первой цифре номера автомобиля. Система подтвердит ввод значения серией звуковых сигналов, количество которых будет соответствовать первой цифре номера автомобиля.
Аналогично введите остальные цифры номера автомобиля, дожидаясь звукового подтверждения охранного комплекса после ввода каждой цифры.
Если сервисная кнопка будет нажата более 9 раз, система выдаст 4 коротких звуковых сигнала и вернется в основное меню программирования.
Через 2 секунды после подтверждения ввода последней цифры номера автомобиля, система выдаст одну из серий звуковых сигналов:
- 2 коротких сигнала — номер введен правильно и записан в память охранного комплекса;
- 4 коротких сигнала — произошла ошибка, введенный номер сохранен не будет.
После завершения ввода номера автомобиля (независимо от результата) будет осуществлен переход в основное меню программирования.
Если при вводе очередной цифры номера сервисная кнопка не будет нажата в течение 5 секунд, то произойдет переход в основное меню программирования. Комплекс оповестит об этом 4 короткими звуковыми сигналами. При изменении номера автомобиля значения параметров, установленные ранее в процессе программирования модуля, сохраняются.
Видео:Can Bus - что это такое ? Зачем нужен ? Как настроить ?Скачать
Последовательность программирования
Для того, чтобы реализовать необходимые функции через цифровые шины автомобиля выполните программирование модуля:
Выберите необходимый раздел основного меню программирования, нажав сервисную кнопку число раз, соответствующее номеру раздела меню. Выбор будет подтвержден серий звуковых сигналов.
Затем аналогичным способом выберите необходимый параметр.
Если сервисная кнопка будет нажата число раз, превышающее количество пунктов меню программирования, то система выдаст 4 коротких звуковых сигнала и останется в основном меню программирования. Если в течении 10 секунд после входа в режим программирования не будет выбран ни один из параметров, система выдаст 4 длинных звуковых сигнала оповещения и вернется в штатный режим работы.
Для определения текущего состояния выбранного параметра дождитесь выдачи звуковых сигналов, количество которых будет соответствовать значению параметра. При необходимости можно перейти к изменению состояния параметра сразу же после его выбора, не дожидаясь сигналов оповещения о текущем состоянии.
Нажмите сервисную кнопку число раз, соответствующее значению требуемого состояния параметра. Через 2 секунды после окончания установки прозвучит серия звуковых сигналов, количество которых будет соответствовать состоянию параметра (1 звуковой сигнал — включен, 2 звуковых сигнала — отключен). Еще через 2 секунды последуют 2 коротких звуковых сигнала, означающих, что состояние параметра было успешно изменено и осуществлен переход в меню выбранного пункта.
Если сервисная кнопка будет нажата более 3 раз или если в течение 5 секунд после входа в подпункт меню значение параметра не будет установлено, то система выдаст 4 коротких звуковых сигнала и вернется в меню выбранного пункта.
Для перехода к программированию следующего параметра повторите действия, изложенные в пп.2. 4, с выбором пункта меню и изменением его состояния.
Видео:лекция 403 CAN шина- введениеСкачать
Пример программирования модуля в основном режиме
Задача: требуется провести согласование модуля с шиной автомобиля Lada Granta 2011 года выпуска и запретить передачу сигналов «стояночный тормоз» и «зажигание» из цифровых шин автомобиля.
Последовательность программирования:
- Войдите в режим программирования:
• отключите питание охранного комплекса;
• нажмите сервисную кнопку и, удерживая ее, подайте питание на охранный комплекс;
• отпустите сервисную кнопку после прекращения сигналов сирены;
• убедитесь в выдаче 4 длинных звуковых сигналов. - Осуществите ввод номера автомобиля в память охранного комплекса:
• нажмите сервисную кнопку коротко один раз — раздастся один звуковой сигнал, извещающий о готовности к вводу номера;
• введите номер автомобиля 7111 (см. справочную таблицу на сайте can.starline.ru):
• нажмите сервисную кнопку 7 раз — убедитесь в выдаче 7 звуковых сигналов;
• нажмите сервисную кнопку 1 раз — убедитесь в выдаче 1 звукового сигнала;
• нажмите сервисную кнопку 1 раз — убедитесь в выдаче 1 звукового сигнала;
• нажмите сервисную кнопку 1 раз — убедитесь в выдаче 1 звукового сигнала;
• проконтролируйте выдачу 2 коротких звуковых сигналов, свидетельствующих об успешной записи номера в память охранного комплекса, после подтверждения ввода последней цифры номера. - Отключите сигналы «стояночный тормоз/паркинг» и «зажигание»:
• выберите раздел «Статусные функции» меню программирования — нажмите сервисную кнопку 2 раза подряд и убедитесь в выдаче 2 звуковых сигналов;
• выберите параметр «Стояночный тормоз/паркинг» — нажмите сервисную кнопку 2 раза подряд и убедитесь в выдаче 2 звуковых сигналов;
• дождитесь звукового сигнала оповещения о текущем состоянии параметра (1 сигнал — стояночный тормоз, 2 сигнала — паркинг, 3 — отключен);
• отключите сигнал «стояночный тормоз/паркинг», нажав сервисную кнопку 3 раза и убедитесь в выдаче 3 звуковых сигналов подтверждения;
• проконтролируйте выдачу 2 коротких звуковых сигналов, свидетельствующих об успешном изменении состояния функции;
• выберите параметр «Зажигание» меню программирования — нажмите сервисную кнопку 4 раза подряд и убедитесь в выдаче 4 звуковых сигналов;
• дождитесь звукового сигнала оповещения о текущем состоянии параметра (1 сигнал — включен, 2 сигнала — отключен);
• отключите сигнал «зажигание», нажав сервисную кнопку 2 раза и убедившись в выдаче 2 звуковых сигналов подтверждения;
• проконтролируйте выдачу 2 коротких звуковых сигналов, свидетельствующих об успешном изменении состояния функции;
• дождитесь выдачи двух серий 4 звуковых сигналов оповещения о выходе из режима программирования.
Видео:Как настроить CAN-шину в магнитолеСкачать
Дополнительный режим программирования
Используйте дополнительный режим программирования для изменения установленных параметров, когда номер автомобиля уже записан в память охранного комплекса.
Вход в дополнительный режим программирования:
При выключенном зажигании нажмите сервисную кнопку 15 раз.
Включите зажигание не позднее, чем через 5 секунд после последнего нажатия сервисной кнопки.
Дождитесь 4 длинных звуковых сигналов сирены, извещающих о переходе системы в режим программирования.
Дальнейшие действия по выбору и изменению функций (кроме выбора автомобиля) выполняются аналогично основному режиму программирования. При выборе первого пункта возможен только просмотр номера автомобиля с помощью звуковых сигналов сирены, каждой цифре номера соответствует такое же количество сигналов.
Выход из программирования осуществляется автоматически через 10 секунд после последнего сигнала сирены.
Видео:CAN шина👏 Как это работаетСкачать
Как настроить can шину
Видео:STM32 настройка CANСкачать
CAN-шина
CAN – стандарт обмена информации промышленной автоматики, призванный объединить в единое сообщество все многообразие электронного оборудования.
Протокол разработан на основе стандартов ISO передачи данных.
В середине 80-х годов прошлого столетия компании Intel и Robert Bosch GmbH разработали цифровое устройство для обмена данных, которое стало стандартом автомобильной
электроники.
Подобно тому, как собираются в единую сеть несколько компьютеров, CAN собирает в цепь все электронные блоки автомобиля. Это делает управление более надежным, быстрым и эффективным. Кроме того, через кабель CAN происходит обмен данными между ЭБУ и сторонними электроприборами, что делает диагностику автомобиля максимально точной и быстрой.
Читайте также: Строительство из отходов шин
Видео:Экспресс диагностика CAN шины на автомобиле. №21Скачать
Особенности устройства CAN-шины
Передаются данные, со скоростью 1Мбит/сек, по радиоканалам или на оптоволоконном уровне. Биты данных одномоментно превращаются в кадры (подобие ограниченных порций). Есть сложная схема разделения кадров на доминантные и рецессивные и приоритетов формирования очереди передачи, с применением арбитража. Однако в эти области высоких технологий, простому автолюбителю заглядывать нет никакой нужды.
На физическом уровне CAN-сеть – это непрерывная «шина» дифференциальной пары, в роли проводника информации, прописанной стандартом ISO. Доступ к ней осуществляется посредством драйвера CAN-шины.
Во всех системах современного автомобиля применяется протокол CAN для взаимодействия электронного блока управления с контрольными блоками систем, исполнительными устройствами, датчиками, и в целом всей совокупности периферийного оборудования. Устройство столь умного прибора, на удивление, очень простое (можно сказать примитивное) – два провода и чип. Вот и все!
Первые поколения прибора были снабжены множеством выходов, по каждому их которых передавался лишь один сигнал. Сейчас, по каждому проводу проходят сотни импульсов.
В последних выпусках есть функции подключения к смартфонам.
Есть заложенная функция предвидения и устранения некоторых неполадок электрооборудования автомобиля. Даже электробрелки зажигания, подключаясь через CAN, получают необходимые данные от ЭБУ автомобиля.
CAN – шина, практически, абсолютно нечувствительна к радиопомехам, с высокой степени изолированными контактами.
Видео:CAN блоки в магнитолах Android или CAN шина в автомобиле ВОПРОС/ОТВЕТСкачать
Передача данных по Кан-шине
Сигналы с электронных приборов, параллельно соединенных в цепь Кан-шины, по двум сплетенным проводам (витой паре), поступает на полосы шины. При этом, на каждом проводе будет свое напряжение, отличное от напряжения во втором проводе.
Другие участники считывают эту информацию. Путем проставления фильтров и идентификаторов, зашифрованных в самом послании, определяется адресат сообщения.
Тот, получив наказ на какое-либо действие, спешит его выполнить.
В покое, напряжение в проводах витой пары одинаковое и составляет 2,5В. Это, так называемое, рецессивное положение. Во время начала сеанса, провода приводятся в возбуждение участником, посылающим сообщение. Напряжение на одном из проводов (CAN High) начинает возрастать, достигая 3,5В. На другом (CAN low) – убывать, до достижения отметки 1В.
Каждое звено общей цепи подключается к CAN кабелю посредством трансивера, в котором разность двух напряжений преобразуется в одно, выходное (2В). Его и получают участники процесса. Таким образом, исключается влияние на обмен информации, непостоянство напряжения электрической сети автомобиля.
Видео:Настройка can шины магнитолы андроид vw volkswagen vagСкачать
Обзор возможностей протокола CAN
— сигнальная сбалансированная двухпроводная схема high–speed CAN представляет вторую часть стандарта ISO 11898;
— третья часть ISO 11898 составляет следующий уровень вышеназванной схемы;
— однопроводной уровень, описываемый стандартом SAE J2411. Шины этого уровня установлены, например, на автомобилях линейки Дженерал Моторс.
Видео:Как управлять автомобилем через CAN-шину?Скачать
Скорость передачи данных CAN-шины
Все составляющие сети CAN должны иметь единую скорость передачи информации. Однако данный стандарт не задает одного определенного параметра, ограничиваясь лишь максимальным пределом – 1Мбит/с. Изменения объема передаваемого кадра должно успеть распространиться по всей длине сети, что ставит в обратную зависимость скорости от протяженности – чем длиннее провод, тем ниже скорость. Для передачи 1Мбита за 1секунду нужная длина должна составлять не менее 40 метров. Добавьте к этому объективные факторы, снижающие скорость – защита от помех и разветвленная сеть, где происходят множественные отражения сигнала.
В угоду ускорения процесса, разработчики уменьшают протяженность проводов, одновременно увеличивая число цепей, с возможностью подключения большего количества приборов. Например, общая длина шины, составляющая 10 метров, способна пропускать через себя кадры, со скоростью 2 Мбит/c, с 64 подключенными приборами. Если автомобиль снабжен большим числом электрооборудования, то добавляется одна, две, и т. д. цепи.
Видео:Canbus - зачем он нужен? И как его настроить.Скачать
Протоколы высокого уровня
CAN всего лишь решает проблему доставки информации из одного пункта в другой, малыми пакетами (всего 8 байт). Многие аспекты обмена данных, остаются вне его компетенции. Ввиду большого спроса на рынке, незамедлительно, появились разработки усовершенствованных протоколов – так называемые, протоколы высокого уровня. Они взялись оказывать более расширенный пакет услуг. Ими пользуются, когда нужно:
Видео:#10. Как отправлять сообщения и команды в CAN-шину для управления автомобилем?Скачать
Достоинства и недостатки протокола CAN
Протокол CAN вошел в состав стандартного протокола OBD-II.
К несомненным преимуществам CAN относятся:
Применяется этот протокол не только в автомобильной промышленности. В некоторых отраслях промышленности, дорожного строительства, при строительстве высокотехнологичных объектов (так называемые, умные дома), в велосипедном производстве.
Видео:Контроль топлива. Подключение к CAN шине.Скачать
Описание CAN шины и как через нее подключить автосигнализацию
Для того чтобы упорядочить работу всех контроллеров, которые облегчают управление и повышают контроль вождения автомобилем, используется CAN-шина. Подключить такое устройство к сигнализации машины можно своими руками.
Видео:Настройки CAN BUSСкачать
Что такое CAN-шина и принцип ее работы
КАН-шина представляет собой сеть контроллеров. Устройство используется для объединения всех управляющих модулей автомобиля в одну рабочую сеть с общим проводом. Этот девайс состоит из одной пары кабелей, которая называется CAN. Информация, передающаяся по каналам из одного модуля на другой, отправляется в закодированном виде.
Какие функции может выполнять CAN-шина:
Эта система работает в нескольких режимах:
Канал Виалон СУшка в своем видео рассказал о КАН-шине и что надо знать про ее эксплуатацию.
Плюсы и минусы
Какими преимуществами обладает КАН-шина:
Какие недостатки характерны для устройства:
Видео:Магия CAN-шиныСкачать
Виды и маркировки
Самым популярным типом шин являются устройства, разработанные Робертом Бошем. Девайс может функционировать последовательно, то есть сигнал передается за сигналом. Такие устройства называются Serial BUS. В продаже можно встретить и параллельные шины Parallel BUS. В них передача данных осуществляется по нескольким каналам связи.
О разновидностях, принципе действия, а также возможностях КАН-шины можно узнать из видео, снятого каналом DIYorDIE.
С учетом разных типов идентификаторов можно выделить несколько видов устройств:
Надо учесть, что в современных машинах такие типы устройств не применяются. Это связано с тем, что работа системы должна быть согласованной и логичной. А в данном случае она может функционировать при нескольких скоростях передачи импульсов – на 125 либо 250 кбит/с. Более низкая скорость используется для управления дополнительных устройств, таких как осветительные приборы в салоне, электрические стеклоподъемники, стеклоочистители и т. д. Высокая скорость нужна для обеспечения рабочего состояния трансмиссии, силового агрегата, системы ABS и т. д.
Видео:Видеоинструкция по настройке CAN шины сигнализации с помощью приложение StarLine Master с телефона.Скачать
Разновидность функций шин
Рассмотрим, какие существуют функции у различных девайсов.
Девайс для автомобильного двигателя
При соединении устройства обеспечивается быстрый канал передачи данных, по которому информация распространяется со скоростью 500 кбит/с. Основное предназначение шины заключается в синхронизации работы управляющего модуля, к примеру, коробки передач и мотора.
Устройство типа Комфорт
Скорость передачи данных по этому каналу более низкая и составляет 100 кбит/с. Функция такой шины заключается в соединении всех устройств, относящихся к данному классу.
Информационно-командный девайс
Скорость передачи данных такая же, как и в случае с устройствами типа Комфорт. Главная задача шины заключается в обеспечении связи между обслуживающимися узлами, к примеру, мобильным девайсом и системой навигации.
Шины от разных производителей приведены на фото.
Видео:Настройки Canbus для китайской магнитолыСкачать
Могут ли быть проблемы в работе CAN-шин?
В современном авто цифровая шина используется постоянно. Она работает одновременно с несколькими системами, причем по ее каналам связи постоянно передается информация. Со временем в работе устройства могут возникнуть неполадки. В результате анализатор данных будет функционировать неверно. При обнаружении неполадок автовладелец должен найти причину.
По каким причинам возникают сбои в работе:
При поиске причин учитывайте, что неисправность может заключаться в некорректной работе вспомогательных устройств, устанавливающихся дополнительно. К примеру, причина может заключаться в неправильном функционировании противоугонной системы, контроллеров и девайсов.
О ремонте CAN-шины приборной панели в автомобиле Форд Фокус 2 можно узнать из ролика, снятого пользователем Brock – Video Corporation.
Читайте также: Датчик давления в шинах как часто менять
Процесс поиска неисправности осуществляется так:
Диагностика работоспособности КАН-шины требует определенных навыков и опыта, поэтому процедуру поиска неисправностей лучше доверить специалистам.
Видео:MCP2515, контроллер CAN шины с интерфейсом SPIСкачать
Как подключить сигнализацию по CAN-шине
Для подключения КАН-шины своими руками к автосигнализации машины с автозапуском либо без него надо знать, где находится блок управления противоугонной системой. Если установка сигнализации осуществлялась самостоятельно, то процесс поиска не вызовет сложностей у автовладельца. Управляющий модуль обычно ставится под приборной панелью в районе рулевого колеса либо за контрольным щитком.
Как произвести процедуру подключения:
Видео «Пример подключения КАН-шины»
Пользователь Alexander Bast в видеоролике показал на примере автомобиля Фольксваген Поло, как производится процедура подключения шины к бортовой сети автомобиля.
Побеждаем шину CAN. Часть 1. Технология
Сегодня я хочу познакомить вас с интересной микроконтроллерной платформой 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.
После того, как программа написана и отлажена, её можно загрузить в ваш контроллер. Это делается просто — в меню выбираете пункт «Устройство/Диаграмма/Записать» и через несколько секунд программа оказывается записанной в контроллер.
Далее нужно отключить контроллер от USB порта компьютера, снять перемычку на плате и можно включать запрограммированный контроллер, который после включения будет работать по вашей программе.
Аналоговые входы
Для того, чтобы лучше понять принцип программирования контроллеров CANNY в среде разработке CannyLab, давайте ещё разберём пример работы с аналоговым входом в этой системе.
Мы будем отслеживать уровень напряжения на 10 пине контроллера и если он находится в диапазоне 2,5 В ± 20%, будем зажигать встроенный в плату светодиод.
Как и в предыдущем примере, конфигурируем 4-й пин как выход для того, чтобы иметь возможность управлять работой светодиода.
Включаем АЦП на 10-м канале.
Далее пользуемся двумя логическими блоками, которые выдают 1 на выход, если напряжение находится в заданном диапазоне. Полный диапазон от 0 до 4095.
Блок «Логическое И» довершает работу и со своего выхода управляет работой светодиода на плате.
Вот и всё. То, что мы привычно делали на Arduino, мы легко сделали в CannyLab. Осталось только освоиться в этой среде программирования и вы сможете легко и непринуждённо создавать свои проекты на этой платформе.
Эти простые примеры составления программ даны для того, чтобы вы могли понять принцип визуального программирования микроконтроллеров CANNY. В дальнейшей работе вам поможет отличная справочная документация и поддержка разработчиков на сайте и форуме системы.
Читайте также: Какие шины зимой лучше для нивы шевроле
Заключение по вводной статье цикла
Если вам нравится визуальное программирование в стиле CannyLab, то контроллеры CANNY могут стать для вас интересной альтернативой Arduino или работать в связке с контроллерами Arduino. Об этом мы поговорим во второй статье цикла, в которой я расскажу вам об интеграции контроллеров CANNY с системой Arduino Mega Server.
Напомню, что AMS теперь работает не только на платах Arduino, но и на беспроводных Wi-Fi модулях ESP8266 и именно о такой связке пойдёт речь в следующий раз.
И как обычно, оставайтесь с нами, будет интересно!
Хакаем CAN шину авто. Мобильное приложение вместо панели приборов
Я продолжаю изучать CAN шину авто. В предыдущих статьях я голосом открывал окна в машине и собирал виртуальную панель приборов на RPi. Теперь я разрабатываю мобильное приложение VAG Virtual Cockpit, которое должно полностью заменить приборную панель любой модели VW/Audi/Skoda/Seat. Работает оно так: телефон подключается к ELM327 адаптеру по Wi-Fi или Bluetooth и отправляет диагностические запросы в CAN шину, в ответ получает информацию о датчиках.
По ходу разработки мобильного приложения пришлось узнать, что разные электронные блоки управления (двигателя, трансмиссии, приборной панели и др.) подключенные к CAN шине могут использовать разные протоколы для диагностики, а именно UDS и KWP2000 в обертке из VW Transport Protocol 2.0.
Программный сниффер VCDS
Чтобы узнать по какому протоколу общаются электронные блоки я использовал специальную версию VCDS с программным сниффером в комплекте. В этот раз никаких железных снифферов на Arduino или RPi не пришлось изобретать. С помощью CAN-Sniffer можно подсмотреть общение между VCDS и автомобилем, чтобы затем телефон мог прикинуться диагностической утилитой и отправлять те же самые запросы.
Я собрал некоторую статистику по использованию диагностических протоколов на разных моделях автомобилей:
Протокол UDS
Диагностические данные от двигателя по протоколу UDS (Skoda Octavia A7)
В моей машине (Skoda Octavia A5) приборка использует UDS протокол, это дало мне легкий старт разработки, т.к. данные были в простом формате Single Frame SF (фрейм, вся информация которого умещается в один CAN пакет) и большинство значений легко поддавались расшифровке. Volkswagen не дает документацию на формат значений, поэтому формулу расшифровки для каждого датчика приходилось подбирать методом логического мышления. Про UDS протокол очень хорошо и с подробным разбором фреймов написано на canhacker.ru.
Разбор UDS пакета в формате Single Frame
Пример запроса и ответа температуры моторного масла:
Запрос температуры моторного масла:
Ответ температуры моторного масла:
Первая версия мобильного приложения VAG Virtual Cockpit умела подключаться только к приборной панели по UDS.
VW Transport Protocol 2.0
Т.к. KWP2000 использует сообщения переменной длины, а CAN шина позволяет передавать сообщения не больше 8 байт, то VW TP 2.0 разбивает длинное сообщение KWP2000 на части при отправке по CAN шине и собирает заново при получении.
Диагностические данные от двигателя по протоколу KWP2000 (Skoda Octavia A5)
ЭБУ двигателя моей машины использует протокол VW TP 2.0, поэтому мне пришлось изучить его. Видимо Volkswagen разрабатывала транспортный протокол не только для работы по надежной CAN шине, но и для менее надежных линий связи, иначе нет объяснения для чего требуется такая избыточная проверка целостности данных. Главным источником информации по VW TP 2.0 является сайт https://jazdw.net/tp20.
Разбор протокола VW TP 2.0 на примере подключения к первой группе двигателя:
Настраиваем ЭБУ на отправку сразу 16 пакетов и выставляем временные параметры
Получили положительный ответ
Мы отправили первый ACK, что получили ответ
300 22 00 1A 61 01 01 C8 13
300 23 05 0A 99 14 32 86 10
300 24 FF BE 25 00 00 25 00
300 15 00 25 00 00 25 00 00
Отправляем ACK. Прибывляем к нашему предыдущему ACK количество полученных пакетов 0xB1 + 0x4 = 0xB5
Запрос KeepAlive, что мы еще на связи
ЭБУ в ответ тоже разрывает связь
Во второй версии мобильного приложения VAG Virtual Cockpit появилась возможность диагностировать двигатель и трансмиссию по протоколу VW TP 2.0.
Диагностический адаптер ELM327
Для меня некоторое время было вопросом, как получить данные из CAN шины и передать на телефон. Можно было бы разработать собственный шлюз с Wi-Fi или Bluetooth, как это делают производители сигнализаций, например Starline. Но изучив документацию на популярный автомобильный сканер ELM327 понял, что его можно настроить с помощью AT команд на доступ к CAN шине.
Копия диагностического сканера ELM327 Не все ELM327 одинаково полезны
Оригинальный ELM327 от компании elmelectronics стоит порядка 50$, в России я таких не встречал в продаже. У нас продаются только китайские копии/подделки, разного качества и цены 10-30$. Бывают полноценные копии, которые поддерживают все протоколы, а бывают и те которые умеют отвечать только на несколько команд, остальные игнорируют, такие адаптеры не имеют доступ к CAN шине. Я например пользуюсь копией Viecar BLE 4.0, который поддерживает 100% всех функций оригинала.
Для работы с протоколом UDS через ELM327 нужно указать адреса назначения, источника и разрешить длинные 8 байтные сообщения, по умолчанию пропускается максимум 7 байт.
Последовательность ELM327 AT команд для работы с UDS по CAN шине:
Для работы с протоколом KWP2000 через ELM327 нужно только указать адреса назначения и источника.
Последовательность ELM327 AT команд для работы с VW TP 2.0 по CAN шине:
Мобильное приложение VAG Virtual Cockpit
Для разработки мобильного приложения подключаемого к автомобилю требовалось:
Сниффером собрать трафик от диагностической утилиты VCDS
Изучить работу протоколов UDS, VW TP 2.0, KWP2000
Настроить диагностический сканер ELM327 на работу с UDS и VW TP 2.0
Изучить новый для меня язык программирования Swift
Мобильное приложение VAG Virtual Cockpit для iOS
В итоге получилось приложение, которое сочетает в себе функции отображения точных данных панели приборов и диагностика основных параметров двигателя и трансмиссии.
На данный момент приложение показывает следующие параметры:
Приборная панель
Трансмиссия (температура)
1) Какая дверь открыта
2) Скорость
3) Обороты
4) Температура масла
5) Температура ОЖ
6) Топливо в баке в л.
7) Запас хода в км.
8) Средний расход
9) Время в машине
10) Пробег
11) Температура за бортом
1) Обороты
2) Массовый расход воздуха
3) Температура забора воздуха
4) Температура выхлопа (рассчитанная)
5) Критический уровень масла
6) Уровень масла
7) Наддув турбины (реальный)
8) Наддув турбины (ожидаемый)
9) Пропуски зажигания в цилиндрах
10) Углы откатов зажигания в цилиндрах
1) ATF AISIN (G93)
2) DSG6 (G93)
3) Блок управления DSG6 (G510)
4) Масло диска сцепления DSG6 (G509)
5) Мехатроник DSG7 (G510)
6) Процессор DSG7
7) Диск сцепления DSG7
Я стремлюсь чтобы приложение поддерживало как можно больше моделей автомобилей. Пока что поддерживаются производители: Volkswagen, Skoda, Seat, Audi. На разных комплектациях могут отображаться не все параметры, но это поправимо.
Сейчас я провожу тестирование версии 3.0. Приложение доступно только на iOS, после релиза 3.0 перейду к разработке версии для Android.
Если интересно потестировать и есть желание принять участие в проекте, то установить приложение можно по ссылке. Также я веду бортжурнал на drive2.ru, где делюсь полезной информацией и новостями о VAG Virtual Cockpit.
- Свежие записи
- Нужно ли менять пружины при замене амортизаторов
- Скрипят амортизаторы на машине что делать
- Из чего состоит стойка амортизатора передняя
- Чем стянуть пружину амортизатора без стяжек
- Для чего нужны амортизаторы в автомобиле