что такое разъем obd
Что такое диагностический разъем OBD
С 2006 года все автомобили, как легковые, так и грузовые вне зависимости от используемого топлива в обязательном порядке должны быть оснащены системой OBD. Это позволяет обслуживать автомобили и производить их ремонт на территории Евросоюза при условии наличия стандартизированного разъема OBD. При этом доступ к системам должен быть свободным для всех заинтересованных организаций и служб.
Обзор OBD
Как правило, в состав оборудования современных автомобилей входит электронный блок управления (ЭБУ). Это устройство предназначено для сбора и анализа данных о функционировании некоторых его систем. Чтобы предотвратить несанкционированное подключение к ЭБУ, можно выбрать один из трех способов:
установить дополнительный иммобилайзер с разрывом шины передачи данных;
установить любые дополнительные разъемы в разрыв шины передачи данных;
блокирование шины передачи данных OBD с помощью установки дополнительных каналов (должно происходить в режиме охраны сигнализации, которая установлена на ваше авто).
Общие понятия
Общий термин OBD означает самодиагностику автомобиля. Благодаря использованию этой технологии, появляется возможность контролировать различные системы автомобиля с помощью бортового компьютера.
В начале развития этой технологии имелась возможность получения информации о возникновении неисправности, однако, о ее причинах данные не поступали. В современных версиях в системе применяется стандартизированный цифровой интерфейс, благодаря которому имеется возможность получения получение данных о состоянии систем в реальном времени. При этом одновременно получаются коды неисправностей, идентифицирующих их.
Распиновка
Разъем OBD необходим для подключения приборов, с помощью которых контролируется функционирование систем автомобиля и определяют химический состав выхлопных газов. Под распиновкой OBD2 понимают определенные требования, которым подчиняются автопроизводители.
Место расположения диагностического разъема OBD должно располагаться на расстоянии максимум 18 см от рулевой колонки. Стандартизированная система характеризуется универсальностью и работает с использованием цифрового CAN-протокола, позволяющего получать детальную информацию о возникающих неисправностях.
Благодаря протоколам OBD2 становится возможно считывание параметров систем машины. Их число различается у разных автопроизводителей и зависит от ЭБУ.
Как правило, имеется возможность поддержки приблизительно 20 параметров. Для реализации контроля над какой-либо системой достаточно располагать 2-3 параметрами. В некоторых случаях их требуется больше. На количество параметров, контроль за которыми осуществляется одновременно, и форма их выдачи находится в зависимости от устройства, осуществляющего сканирование, и скорости передачи информации.
Устройство диагностического разъема OBD оснащено 16-ю контактами. Используя распиновку, происходит совмещение бортовых систем автомобиля с колодкой диагностики.
При обнаружении несоответствия состава выхлопных газов нормам, появляется надпись CheckEngine. Она говорит о том, что необходимо осуществить проверку двигателя.
Разъем OBD 2
Устройства с разъемом OBD 2
Описание OBD 2
OBD (On board diagnostics, от англ. бортовая диагностика) предполагает наличие специального диагностического разъема. Данное решение необходимо для подключения сканера, ноутбука или смартфона к системе OBD. Само наличие ОБД в автомобиле означает возможность самодиагностики ТС, а также позволяет считывать определенную информацию с различных бортовых систем: ЭБУ двигателем, управляющие блоки Airbag, система ABS и т.д. Другими словами, OBD позволяют осуществить проверку состояния различных систем.
Указанная самодиагностика появилась в США, произошло это достаточно давно (с начала 80-х годов). Главной задачей внедрения стала борьба за экологию, то есть контроль за составом выхлопных газов и исправностью работы систем, которые снижали токсичность выхлопа. Первые версии были способны только определить наличие или отсутствие неполадок, при этом без локализации самой проблемы. Добавим, что на начальном этапе каждый производитель автомобилей имел свой стандарт диагностического разъема OBD-I и необходимое для считывания данных диагностическое оборудование, что значительно затрудняло проверку ТС различных марок в рамках одного автосервиса.
Дальнейшее развитие привело к тому, что появился OBD 2, который превратился в унифицированный стандартный цифровой разъем. Через такой разъем можно просматривать информацию о состоянии и работе отдельных систем любого ТС в режиме реального времени, считывать необходимые данные и коды записанных в память блоков управления ошибок для их расшифровки. Благодаря такой функциональности проверка машины через OBD-II сегодня позволяет намного быстрее и точнее обнаружить имеющуюся неисправность в случае ее возникновения.
Если сравнить систему OBD на начальном этапе с более современным решением, тогда ранние версии затрагивали следующие элементы: датчик кислорода, систему рециркуляции (EGR), систему питания ДВС и блока управления двигателем (ЭБУ). Вся проверка сводилась к определению уровня токсичности выхлопных газов. Появление стандарта OBD II стало набором требований, согласно которым система управления двигателем должна соответствовать закрепленным на законодательном уровне стандартам применительно к составу отработавших газов. Получается, OBD II это не просто диагностический разъем с определенной распиновкой, особыми протоколами связи и форматами отображаемой информации для проверки авто, а целый пакет требований, которым должна соответствовать продукция различных автопроизводителей.
В Европе указанный стандарт называется EOBD и основан на американской OBD-II. Такой стандарт обязателен для всех ТС с января 2001 г. В Японии аналогичный стандарт получил название JOBD. Сегодня активно разрабатывается автодиагностика по стандарту OBD-III, которая должна в скором времени сменить OBD II.
Распиновка OBD 2
Вывод | Описание |
---|---|
1 | OEM (протокол производителя). |
2 | Шина + (Bus positive Line). SAE-J1850 PWM, SAE-1850 VPW. |
3 | — |
4 | Заземление кузова (Chassis Ground). |
5 | Сигнальное заземление (Signal Ground). |
6 | Линия CAN-High высокоскоростной шины CAN Highspeed (ISO 15765-4, SAE-J2284). |
7 | K-Line (ISO 9141-2 и ISO 14230). |
8 | — |
9 | Линия CAN-Low, низкоскоростной шины CAN Lowspeed. |
10 | Шина — (Bus negative Line). SAE-J1850 PWM, SAE-1850 VPW. |
11 | — |
12 | — |
13 | — |
14 | Линия CAN-Low высокоскоростной шины CAN Highspeed (ISO 15765-4, SAE-J2284). |
15 | L-Line (ISO 9141-2 и ISO 14230). |
16 | Питание +12в от АКБ (Battery Power). |
Контакты 3, 8, 11, 12, 13 не определены стандартом.
Разъем OBD: что это и зачем его нужно блокировать?
Что такое OBD-разъем?
Практически каждый автолюбитель слышал про OBD-разъем, через который можно проверить работоспособность систем автомобиля, обновить прошивку блоков управления двигателем, АКПП, расшифровать имеющиеся ошибки и др.
Про OBD вспоминают, как правило, при появлении на приборной панели надписи CheckEngine, свидетельствующей о неисправностях в работе двигателя.
Разъем OBD в настоящее время имеется на всех современных автомобилях, оснащенных системой самодиагностики. Это позволяет производить диагностику основных параметров даже без использования специализированного дилерского оборудования.
Для этого достаточно иметь специальный сканер, который опрашивает электронный блок управления автомобилем (ЭБУ) по цифровой шине и получает информацию в режиме реального времени о состоянии систем и датчиков.
Что можно сделать через разъем OBD?
OBD2-разъем получает исчерпывающую информацию по CAN-протоколу от ЭБУ, приблизительно по 20 параметрам работы двигателя. С помощью сканеров и специального оборудования можно:
Кроме того, OBD позволяет скорректировать показания спидометра автомобиля, обнаружить заблокированную электрическую цепь, установленной в автомобиле сигнализацией, или прописать дополнительный ключ.
Эти действия в случае несанкционированного доступа деактивируют штатный иммобилайзер программно, и, соответственно, отключают защиту автомобиля.
Данными возможностями зачастую пользуются преступники, чтобы завладеть автомобилем. Зачастую в эту схему вовлекаются недобросовестные работники сервисных центров.
Как защитить?
OBD-разъем должен быть доступен. Однако, для предотвращения несанкционированного доступа следует озаботиться о защите или блокировке данного разъема.
Существует три варианта защиты разъема OBD и ограничения доступа к ЭБУ.
Рассмотрим подробнее каждый из них.
1. Перенос разъема в труднодоступное место, либо защита его специальным кожухом.
Как правило, данные действия не влекут за собой ограничения в управлении автомобилем. Но в этом случае могут возникнуть вопросы у дилера (особенно при переносе разъема), о несанкционированном вмешательстве в штатную электрическую систему автомобиля и о сохранении гарантийных обязательств. Кроме того, в зависимости от расположения блока не всегда возможно установить защитный кожух.
2. Произвести перепиновку контактов, т.е. поменять их местами, либо замена OBD-разъема другим, нестандартной формы.
В этом случае клиенту передается специальный переходник для подключения типового оборудования (сканеров). Минусы данного решения аналогичны предыдущему – вероятное снятие автомобиля с гарантии. Кроме того, каждый сервис, осуществляющий диагностику, будет в курсе произведенной перепиновки или замены. А значит, велика вероятность, что злоумышленники будут подготовлены к данному факту, и защита не сработает.
3. Блокировка разъема посредством разрыва цифровой шины, связывающей разъем с ЭБУ.
Блокировка осуществляет с помощью стандартного реле дополнительных каналов охранных систем и сигнализаций. Мы считаем этот способ самым оптимальным вариантом защиты OBD-разъема от несанкционированного доступа. В этом случае диагностический разъем доступен любому подключению, пока сигнализация или иммобилайзер не находится в режиме охраны. Место подключения находится в недоступном месте, и выявить ее крайне сложно. В результате сервисмены или угонщики даже не узнают о произведенной блокировке.
Произвести блокировку диагностического разъема вы можете в любом филиале Автостудио в Москве или СПб. |
Выводы
OBD-разъем, несомненно, удобная и необходимая функция вашего автомобиля. При правильной организации защиты вероятность угона значительно уменьшается. Необходимо применять комплексную защиту и не надеяться только на штатный иммобилайзер, также, как и на отдельно сигнализацию или блокировку диагностического разъема.
Сами по себе все эти устройства и действия имеют определенные недочеты и «дыры» в защите, которыми успешно пользуются злоумышленники. Способы отключения и обхода охранных устройств отработаны ими до автоматизма.
И только нестандартные решения, требующие дополнительного времени на преодоление каждого рубежа охраны, обеспечивают максимальную защиту вашего автомобиля.
А организовать ее вам помогут специалисты Автостудио. Достаточно позвонить нам и получить подробную бесплатную консультацию.
Что такое OBD2 разъем и как пользоваться адаптером системы диагностики автомобилей
Понятие интерфейса между объектом, управляемым при помощи компьютеризированного оборудования, и устройством, выполняющим функции контроля и диагностики, подразумевает жёсткую стандартизацию протокола обмена информацией. В случае автомобиля необходимость в этом присутствует, но в единообразии не очень заинтересованы производители.
Однако на законодательном уровне всё же удалось создать нечто стандартное, удобное для проверяющих организаций и частных предприятий по диагностике и ремонту. Это интерфейсный диагностический разъём OBD II, которым сейчас снабжены практически все автомобили.
История диагностики с OBD II
Изначально мало кто заботился об удобстве автомобильных диагностов. Микрокомпьютеры, управляющие агрегатами машины, могли быть проверены дилерскими средствами, в свободную продажу не поступающими и открытыми кодами не обеспеченными. Поэтому первый шаг был сделан государственными организациями, призванными следить за экологической чистотой транспорта.
Появился контрольный стандарт в США, где Калифорния всегда славилась, как самый требовательный к ограничению загрязнений окружающей среды двигателями внутреннего сгорания штат.
К середине 90х годов описание разъёма окончательно сформировалось в виде OBD II, то есть второго финального варианта исполнения. On-Board Diagnostics II стал обязателен к применению на всех автомобилях в США после 1996 года.
Что такое EOBD
Встречающаяся аббревиатура EOBD особого смысла в понятие OBD не добавляет, и даже нет точной определённости, что значит дополнительная буква в начале.
Это может быть сокращение от European, намёк на дополнительные способности Enhanced или просто бессмысленная приставка Electronic (других просто не существует).
Но чаще склоняются к началу внедрения позитивного американского стандарта в производство европейских автомобилей. Тем более, что рынок США всегда считался самым важным.
В результате параллельно с американскими стандартами на диагностический интерфейс SAE образовались и общемировые ISO.
В большинстве случаев идентичные, но с другими цифробуквенными обозначениями, а чаще применяется тот, который раньше появился. Это относится к протоколам физического и логического уровней.
Основная функция диагностического разъема
Диагностический разъём необходим для возможности организации связи внешнего контрольного компьютера с внутренними вычислительными ресурсами автомобиля. Через него информация визуализируется на мониторах и может быть считана и проанализирована специалистами автосервисов.
Это позволяет своевременно и быстро найти неисправность, тем самым, с точки зрения законодателей, оперативно предотвратить экологическое нарушение, а мастера получили инструмент, с помощью которого постепенно смогли выполнять те же сервисные процедуры, что и официальные дилеры.
Где находится
Расположение разъёма также стандартизировано, расстояние от руля не должно превышать 16 дюймов, более того, указаны совершенно точные места в нескольких вариантах для монтажа разъёма.
Обычно он прикрыт от загрязнений, но точное расположение в конкретном автомобиле и способ доступа хорошо известен ремонтникам.
Распиновка разъема ОБД 2
Очевидно, что назначение всех контактов в подобной системе должно быть чётко прописано. Использован стандартный 16-контактный разъём. а наиболее важные соединения однозначно привязаны к номерам контактов (пинам):
Использование тех или иных контактов можно определить визуально, обычно если цепь не применяется, то пин в гнезде отсутствует полностью.
Классификация протоколов
Привести всё к единому протоколу обмена не удалось, поскольку система разрабатывалась и внедрялась сразу многими производителями, а затем непрерывно совершенствовалась, что продолжается и сейчас.
Удивительно ещё, что протоколов относительно немного. Укрупнённо их можно насчитать примерно девять, хотя если замечать все различия, то гораздо больше. Но особых проблем с совместимостью не возникает, сканеры включают в себя все интерфейсы, от первых, до самых совершенных.
Протоколы класса A самые низкоскоростные, но одновременно и простые, базируются на традиционных компьютерных последовательных интерфейсах, то есть не требуют значительных мощностей в виде преобразующих микроконтроллеров. Скорость до 10 кбит в секунду. Это то, что называют K-line.
Чуть более быстрые и сложные интерфейсные последовательные протоколы, лучше защищены от помех, используют различные виды модуляции цифрового сигнала. Скорость примерно в 5-10 раз выше.
Пока самые современные протоколы, к ним относится CAN-шина, то есть скорость порядка 500 кбит/c, увеличена разрядность кодовых посылок и усложнены прочие алгоритмы. Хорошая помехозащищённость дифференциального сигнала с витой пары.
Протокол ISO9141
Содержит два провода K и L, хотя обмен вполне возможен и по двунаправленной K-линии, без контроля по L. Раньше широко использовались «шнурки» — универсальные K-line адаптеры. Работает вполне надёжно, но очень медленно.
J1850 VPW
Относится к группе протоколов американского стандарта J1850. Применяется на машинах GM. Работает впятеро медленнее, чем полностью аналогичный по логике J1850 PWM, используемый Ford.
Различаются интерфейсы по физической реализации, одно- или двухпроводные линии, модуляция по широте или по скважности. Описаны в одном стандарте.
Расшифровка ошибок по системе OBD2
Общим для всех производителей являются коды ошибок DTC (Diagnostic Trouble Code), не всегда и всеми соблюдаемые, но к этому стремятся. Обычно каждый код содержит четыре или пять знаков.
Первый знак
Им может быть одна из четырёх букв:
Подобная локализация задумана для удобства работы с кодами на ранних этапах, без расшифровок.
Второй знак
Второй знак примерно относит кодировку к стандартной на уровне ISO или используемой производителем. Здесь пока единства нет. «0» — это кодовая страница ISO или SAE.
Третий знак
Конкретизирует подсистему, где произошла неисправность. Согласно таблицам, где приводятся все коды, это может быть зажигание, питание, электронное обеспечение, элементы трансмиссии и прочие группы устройств.
Четвертый и пятый символы
Данные знаки выступают в роли двузначного кода, конкретизирующего произошедшую ошибку. Например, обрыв, замыкание, пропуск, выход значений из допустимых рамок. Выглядят хорошей подсказкой диагносту, хотя и не всегда.
OBD2 и ELM327
Считывать информацию и организовывать обмен через OBD можно самыми разнообразными профессиональными и любительскими устройствами. Но одна из фирм сделала удачный ход, создав прошивку универсального микроконтроллера, превратившего его в инструмент, преобразующий сигналы диагностического разъёма в типовой код для стандартного интерфейса бытовых компьютеров.
Небольшой приборчик, содержащий в типовом случае программируемый контроллер, микросхемы питания, электрически перезаписываемой памяти и связи по типовым интерфейсам (трансмиттеры), по габаритам ненамного крупнее разъёма.
Он устанавливается в розетку OBD2 и выдаёт сигнал стандартного последовательного интерфейса UART, известного ещё с первых персональных компьютеров. Физически его можно передавать в ноутбук, компьютер или планшет через распространённые интерфейсы USB, Bluetooth или Wi-Fi.
Информация обрабатывается и преобразуется в визуально удобную программным обеспечением персонального компьютера или смартфона. Приложения могут быть разного уровня сложности, платные и бесплатные, вплоть до наличия дилерских алгоритмов, если их уже написали для конкретной машины.
При этом сам адаптер остаётся простым, универсальным и дешёвым. Надо только проследить за наличием в нём всех рекламируемых возможностей по реализуемым функциям и протоколам. Это ещё не профессиональный уровень, но уже очень удобно во многих практических применениях.
Разъем диагностики OBD-II, как интерфейс для IoT
Когда-то давно, примерно в середине 90-х, во время появления процессора Pentium Pro, один из основателей компании Intel Гордон Мур заметил, что: «Если бы автомобилестроение развивалось со скоростью эволюции полупроводниковой промышленности, то сегодня Роллс-Ройс мог бы проехать полмиллиона миль на одном галлоне бензина, и было бы дешевле его выбросить, чем платить за парковку». Но, пожалуй, уже сегодня автомобилестроение совершает гигантский шаг развития в направлении, как кардинальной смены типа топлива, так и технологий управления автомобилем. Практически недавно представлены коммерческие электромобили и авто на водородном топливе, а автопилот становится желаемым компонентом электронной «начинки» транспортного средства. В большинстве своем, как раз стремительный рывок автопрома обусловлен появлением надежных и безопасных решений на основе умной электроники для автомобильных бортовых систем управления. Но, где же в повседневной жизни Интернет в автомобиле, где же технологии Интернета вещей (IoT), а также многим известная концепция подключенного к сети автомобиля (Connected Car)?
The Rolls-Royce 103EX. Rolls-Royce unveils driverless, electric concept car, complete with silk love seat – The Telegraph.
На самом деле, все вышеперечисленные технологии уже существуют и используются, однако, только в достаточно обособленных решениях. Виною тому, строгие требования к обеспечению безопасности, которые непременно должны быть реализованы при запуске любой новой технологии или решения на транспорте. Поэтому, нельзя сказать, что, садясь в автомобиль со смартфоном, можно автоматически получить решение IoT или Connected Car. В большинстве стран, и это очень логично, существует запрет на использование смартфона или других гаджетов за рулем, а если говорить о голосовых ассистентах, то в большинстве случаев они сейчас раздражают и отвлекают, как водителя, так и пассажиров. В свою очередь, медиа-центр, дополнительные видеоэкраны и отличная акустика, конечно, являются очень привлекательными составляющими современного автомобиля. Но хочется поймать себя на слове, и отметить, что как хорошо приглушить музыку и просто смотреть в окошко на проносящиеся мимо улицы или природу. Конечно, есть пробки, но в этой публикации ставится цель отметить не сколько этическую составляющую или рассмотреть проблемы информационного перенасыщения участников дорожного движения, а рассмотреть те «невидимые» компоненты технологий IoT, которые уже используются в транспортных средствах и доступны для широкого применения.
На сегодня, интересным и очень перспективным решением автомобильного IoT, является платформа Open Connected Car компании Mojio. Эта платформа с открытым интерфейсом (API) предоставляет облачный сервис для «подключенных» авто и уже доступны коммерческие предложения. Например, телекоммуникационный гигант Т-Mobile, на базе этой платформы, предоставляет сервис SyncUP DRIVE. Это программно-аппаратное решение на базе портативного устройства, подключаемого к автомобилю через разъем диагностики OBD-II, и соответствующее мобильное приложение. Благодаря такому подходу можно эффективно выполнять непрерывный мониторинг параметров работы своего автомобиля и в любой момент времени получать его текущее месторасположение. Приложение может рассказать о стилях вождения, предупредить о профилактическом обслуживании, а также уведомить владельца о проблемах с транспортным средством. Кроме того, SyncUP DRIVE разворачивает в автомобиле точку доступа Wi-Fi, используя доступ по высокоскоростному протоколу мобильного стандарта LTE.
The Open Connected Car Platform – Mojio
Для подключения к автомобилю используется стандартный диагностический разъем OBD-II. Большинство серийных автомобилей, выпущенных после 1996 года, уже оснащены таким разъемом. Хотя такой разъем диагностики и стандартизирован, но в нем поддерживаются сразу несколько протоколов различных систем управления двигателем (физически используются разные контакты на разъеме), которые должен «знать» коммуникационный модуль IoT. Соответственно в разных марках автомобилей могут быть разные внутренние шины получения данных диагностики с бока управления двигателя (ECU — Electronic control unit). Для работы с сервисом SyncUP DRIVE предлагается решение на основе модуля VM6200S компании ZTEWelink.
Модуль VM6200S поддерживает подключение по мобильному протоколу LTE, содержит интегрированный 3-х осевой датчик ускорений и 3-х осевой гироскоп, приемник GPS-сигналов, чип OBD-II, с поддержкой протоколов ISO 15765-4 (CAN), ISO 14230-4 KWP (Keyword Protocol 2000), ISO 9141-2 (Chrysler, Euro, and Asian automobiles), SAE J1850 PWM (Ford vehicles), SAE J1850 VPW (GM vehicles). Таким образом, модуль позволяет развернуть точку доступа Wi-Fi 802.11 b/g/n/, регистрировать события во время движения, выполнять диагностику работы двигателя, оценивать экономичность расхода топлива и т.п. А поскольку партнерами Mojio являются проекты Amazon Alexa, сервис IFTTT и другие, то для разработчиков и интеграторов решений открываются все перспективы вплоть до создания социального IoT на основе «подключенного» автомобиля, как составляющей такой инфраструктуры.
VM6200S4G OBD Device – ZTEWelink Corporation
Но не только SyncUP DRIVE сейчас представлена на рынке, например, многие компании предоставляют нечто подобное. Конечно, недавно появившийся Samsung Connect auto device – одно из таких интересных предложений, превращающих автомобиль в подключенное устройство. Решение от Samsung аналогичным образом использует мобильную сеть поколения 4G LTE и разворачивает внутри автомобиля точку доступа Wi-Fi: 802.11 a/b/g/n. Connect auto device поддерживает подключение Bluetooth v4.1, содержит GPS-приемник, датчик ускорений, гироскоп и базируется на 4-х ядерном процессоре с частотой 1.2GHz и операционной системе Tizen. Следует отметить, что корейский электронный гигант Samsung говорит о защищенности системы за счет использования Samsung Knox – мобильного решения с защитой уровня предприятия. Фактически Samsung Knox – это программно-аппаратное решение для усиления защиты операционной системы Android.
Samsung Connect auto
Таким образом, информация, полученная по средствам считывания данных OBD-II, текущие координаты месторасположения с GPS-приемника и параметры динамики движения автомобиля, полученные с гиро-сенсоров, на текущий момент времени и де-факто, стали основой для превращения любого транспортного средства в устройство IoT. Дальше можно рассмотреть сценарии использования агрегированной информации, полученной от автомобилей, применять различные методики обработки Big Data, и при этом не нужно забывать о перспективах объединения таких данных с информацией от инфраструктуры «умных» дорог. Но прежде чем заняться обработкой данных, нужно их сначала получить, поэтому в этой публикации уделим основное внимание аппаратной составляющей реализации сценариев работы на уровне диагностического разъема OBD-II.
Так или иначе, но все ранее рассмотренные решения – это более совершенные промышленные изделия, по сравнению с обычным устройством считывания кодов диагностики на базе микросхемы ELM327 канадской компании Elm Electronics. ELM327 – это универсальный преобразователь протоколов, используемых в диагностических шинах автомобилей, в последовательный протокол типа RS-232.
Структурная схема микросхемы ELM327 v2.2 – Elm Electronics
Mini ELM327 Bluetooth OBD-II Car Diagnostic Adaptor V1.5
Теперь можно подключить стандартный модуль Mini ELM327 Bluetooth OBD-II V1.5 (интересно, что во многих источниках советуют использовать модули со старой прошивкой версии 1.5, а не новые с версией 2.2, т.е. как аргумент высказывается более стабильная работа модуля на старой прошивке и поддержка большего количества авто, но это очень субъективно) и поэкспериментировать с подключением смартфона к выбранному модулю, например, для платформы Android можно использовать одну из самых популярных программ диагностики Torque Lite (OBD2 & Car) или Torque Pro (OBD 2 & Car), а также что-нибудь попроще или использовать свои наработки.
Работа приложения Torque Pro под Android.
Кстати, хочется отметить, очень удобный сервис MockUPhone с бесплатными mock-up современных гаджетов, который очень пригодился, для подготовки скриншота работы программы Torque. Но это небольшое отступление от темы публикации. Нужно заметить, что в большинстве случаев, разъем OBD-II, к которому подключается модуль диагностики, находится под рулевой колонкой автомобиля.
Getting Started with OBD-II – SparkFun Electronics
ECUsim 2000 OBD Simulator – ScanTool
Конечно, профессиональный эмулятор не заменишь, но энтузиастов и гиков вполне может заинтересовать самостоятельная реализация менее сложного проекта на Arduino или Raspberry Pi. Например, можно ограничиться только наиболее распространенным интерфейсом CAN (Controller Area Network). В свое время, стандарт CAN, предложенный компанией Bosch, совершил заметный прогресс в разработке систем для автомобильной электроники. Если автомобиль в сети Интернет появился только недавно, то концепция сети внутри автомобиля существует уже с середины 80-х. Идея очень проста, и как Ethernet совершил прорыв в компьютерных сетях, так и CAN стал основой надежных коммуникаций внутри автомобиля.
An Arduino Based CAN Bus Network – Henry’s Bench
Раньше в автомобиле, как правило, к центральному блоку управления двигателем «стекались» шины и провода различных подключенных модулей и устройств. Последовательная двухпроводная шина CAN позволила реализовывать уже независимые интеллектуальные модули, например, центральный блок управления стал просто одним из таких модулей, которые «общаются» друг с другом фактически по сетевому протоколу. При этом значительно уменьшается количество проводки внутри автомобиля.
В отличие от Ethernet, сеть CAN значительнее надежнее, что обусловило ее применение не только в автопроме, но и в системах промышленной автоматики, решениях умного дома и т.п. На физическом уровне в CAN используется двухпроводная линия, CAN Lo и CAN Hi, которые побитно передают данные, упакованные в пакет. На концах шины присутствуют согласующие сопротивления по 120 Ом, а также для подавления помех следует использовать скрутку проводов. Скорость передачи данных может достигать 1 Мбит/с.
A Controller Area Network (CAN bus)
Передача данных в CAN bus чем-то напоминает модель «издатель-подписчик», где каждое устройство на шине имеет уникальный идентификатор и, когда передает данные одно устройство, то все остальные слушают, и принимают решение на основе этого идентификатора – нужны ли конкретно им эти данные для приема и обработки или нет. В общем, протокол достаточно сложен, но для микроконтроллера или микропроцессора вряд ли придется писать реализацию CAN, а также думать об особенностях физической среды передачи данных. Для решения этих задач уже есть готовые аппаратные контроллеры шины, а для согласования уровней, зачастую применяются интегральные преобразователи. Например, контроллер MCP2515 с интерфейсом SPI и трансивер (согласовательная микросхема уровней) MCP2551. Как раз на базе этих микросхем и предложен проект Arduino OBD2 Simulator, опубликованный на площадке Instructable. Для его реализации потребуется лишь плата Arduino UNO и CAN-BUS Shield, например, компании Seeed Technology.
Эксперименты с применением Arduino OBD2 Simulator
В принципе, для разработки эмулятора данных OBD-II, не помешает наличие блока питания DC на 12V для модуля ELM327, а также разъем OBD-II. Впрочем, no-name преобразователь DC-DC-USB-TO-12V вполне может решить проблему, т.к. несколько блоков питания на 5V, пожалуй, будут под рукой у любого разработчика для Интернета вещей и не только. Для подключения к OBD-II потребуется два информационных провода CAN_H и CAN_L, а также наличие питания 12 V, но как было замечено ранее, 12 V нужно только для обеспечения работоспособности для модуля ELM327.
CAN-BUS Shield V1.2 — Seeed Development Limited Wiki
На плате расширения CAN-BUS Shield очень удобно использовать не разъем D-SUB, а просто клеммник на два контакта (CAN_H, CAN_L). С точки зрения разработки программного кода, следует отметить, что прототип энтузиасты выложили на GitHub. Сейчас платы от Seeed изменились, да и в любом случае для контроллера MCP2515 лучше использовать новые драйверы все той-же Seeed-Studio. Конечно, оригинальную программу нужно будет немного доработать под новые драйверы, но это дело на пару минут.
Работа с CAN-BUS в среде Arduino IDE на основе low cost OBD2 ECU Simulator
Однако, рассмотренный пример очень примитивен, так как все параметры, отправляемые по протоколу OBD-II, просто генерируются случайным образом, нет связи параметров работы двигателя между собой и т.д. Как продолжение проекта очевидным является разработка приложения, похожего на Freematics OBD-II Emulator GUI. Это графическая оболочка с открытым исходным кодом, которая используется в аппаратном решении Freematics OBD-II Emulator.
Freematics OBD-II Emulator GUI – Freematics
Таким образом, собрав на базе Arduino модуль, позволяющий работать с CAN, вполне можно создать эмулятор OBD-II, так как протокол диагностики хорошо описан и его несложно реализовать. Следует отметить, что реализация взаимодействия микроконтроллера и бортовой шины CAN – это совсем другая задача и нужно понимать, что внутренние высокоуровневые протоколы этой шины не документируются автопроизводителями, да и с другой стороны – не следует внедрятся во внутреннее устройство автомобильной электроники, чтобы не коим образом не снизить безопасность эксплуатации транспортных средств. Если говорить о CAN в общем, то для разработки своих устройств на базе этой шины вполне можно использовать высокоуровневый открытый протокол CANopen.
Остается дело за малым – немного свободного времени и в удовольствие выполнять разработку своего кода. Правда, где же это время найти в конце года? Но будем оптимистами. А вот, если говорить о применении такого эмулятора OBD-II, то самое прямое направление – это разработка уже своего модуля для диагностического разъема. Например, за отправную точку можно взять открытый проект Carloop, который нацелен на создание модуля подключения автомобиля к облаку с использованием технологий 3G, Wi-Fi или Bluetooth.
Carloop Bluetooth
Проект Carloop основывается на использовании плат: Particle Photon (на базе Wi-Fi модуля Cypress BCM43362, который поддерживает стандарт 802.11b/g/n; контроллера семейства ARM Cortex M3 – STM32F205 на частоте 120Mhz; 1MB флеш-памяти; 128KB оперативной памяти) и Electron (платы с поддержкой подключения к сети мобильной связи 3G/2G). Платформа Particle и сама очень интересна, поскольку базируется на облачном сервисе подключения устройств IoT, облачной IDE для разработки, например, на базе плат Photon, где используется язык похожий на C/C++ для Arduino. Фактически Particle – это отдельная тема для публикации, а проект Carloop однозначно заслуживает отдельного внимания со сороны энтузиастов автомобиля, как подключенного устройства IoT.
Подключив автомобиль к сети Интернет и сервисам IoT, можно реализовать множества сценариев, которые несомненно будут способствовать удобству эксплуатации транспортных средств, повышению комфорта и, просто, эфективному решению повседневных задач, конечно, включая и решение транспортных перевозок. Например, данные о стиле вождения, надежности работы двигателя и агрегатов автомобиля, вполне могут и уже сейчас учитываются страховыми компаниями. Текущее месторасположение автомобиля будет актуально для сервисов такси и аренды автомобилей. Взаимодействие участников дорожного движения стает более удобной при использовании IoT, так же проблема парковок, поиска свободных мест на стоянке, и многое-многое другое.
Надеемся, что идея этой публикации достигнута – в одном месте собраны материалы по работе с диагностическим разъемом OBD-II, как на уровне простого считывания кодов неисправностей, так и эмуляции физического подключения к автомобилю. Также надеемся на комментарии читателей. В завершении хочется отметить, что рассмотрены лишь некоторые вопросы разработки устройств Connected Car, но «за кадром» остались многие технологии, которые, так или иначе, превращают современный автомобиль в устройство IoT и делают поезки более комфортными и безопасными. Разумеется мы будем возвращаться к этим темам в наших будущих публикациях.