СОДЕРЖАНИЕ
ВВЕДЕНИЕ
6
1 Обзор бортовых компьютеров на основе контроллера ELM 327
7
1.1 Контроллер ELM 327, устройство и принцип работы
7
1.2 Стандарт протокола OBD 2 и отличие его от OBD1
13
1.3 Can – шина (High/Low)
23
2 Протокол обмена ELM 327 по Bluetooth с микроконтроллером на базе
Arduino Nano
29
2.1 Технические характеристики микроконтроллера Arduino Nano
29
2.2 I2C шина
33
2.3 Обмен данных по Bluetooth на основе модуля HC -05
41
3 Разработка устройства на основе AtMega328 и модуле HC -05
50
3.1 Микроконтроллер АtMega328
50
3.2 Описание дисплея
54
3.3 . Описание схемы устройства
3.4 Сборка устройства
ЗАКЛЮЧЕНИЕ
58
66
74
СПИСОК ИСПОЛЬЗОВАННЫХ ИСТОЧНИКОВ
75
ПРИЛОЖЕНИЕ А(обязательное)Схема электрическая принципиальная
79
ПРИЛОЖЕНИЕ Б(обязательное)Листинг управляющей программы
микроконтроллера
Изм. Лист
№ докум.
80
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
5
ВВЕДЕНИЕ
Сегодня даже бюджетные модели автомобилей оснащены датчиками,
контролирующими работу его основных узлов и агрегатов - например, системы
управления впрыском топлива, зажигания, подачи топлива, обеспечения
микроклимата и многих других. А водитель не имеет доступа не только к
регулировке этих параметров, но и даже, зачастую, и к их значениям - которые
(в купе с кодами неисправностей) записываются в электронный блок
управления автомобилем, доступ к которому возможен лишь с помощью
специального оборудования в авторизированном центре обслуживания. Однако,
в настоящее время рынке представлено большое количество устройств
предназначенных автовладельцев, т.е. бортовых компьютеров, оснащенных
системами диагностики автомобиля.
Бортовой компьютер представляет собой электронное устройство,
регистрирующее происходящие процессы в автомобиле и одновременно
помогая водителю контролировать его работу, бортовой компьютер показывает
водителю на мультимедийном дисплее текущее состояние автомобиля: скорость
движения, расход топлива, давление масла, температуру охлаждающей
жидкости и многое другое. Так же следит за правильной эксплуатацией,
подскажет о замене свечей зажигания, масла, различных фильтров. В его базе
данных даже могут находиться адреса сервисных центров, которые проведут
ремонт неисправностей.Бортовой компьютер подключается в штатное гнездо
приборной панели и нисколько не нарушает внешний вид салона. При
техническом
обслуживании
системы.Работают
такие
помогает
автосканеры
определить
следующим
ошибки
образом:
работы
бортовой
компьютер подключается к блоку управления электропитанием, который
считывает информацию с датчиков автомобиля. Разработка собственного
бортового
Изм. Лист
компьютера
№ докум.
имеет
Подпис Дата
ь
массу
преимуществ,
например,
БР–02069964–43.03.01–07–19
можно
Лист
6
самостоятельно задать те параметры, которые выводит компьютер, то есть те,
которые будут необходимы нам для диагностики.
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
7
1 Обзор бортовых компьютеров на основе контроллера ELM 327
1.1
Контроллер ELM 327, устройство и принцип работы
ELM327
представляет
микроконтроллером
программируемым
на
собой
борту
один
из
(рисунок
микроконтроллером
простейших
1.1).
адаптеров
ELM327
производстваELM
с
является
Electronicsдля
передачи данных On-Board Diagnostics (OBD) интерфейса, который можно
найти в большинстве современных автомобилей.
Оригинальный ELM327 реализуется на микроконтроллере PIC18F2480 от
Microchip
Technology.
ELM327
является
одним
из
семейства
OBD
преобразователей от ELM Electronics.
Стандартный размер автосканера примерно 5˟3 сантиметра, но бывают и
более уменьшенные версии.
Рисунок 1.1 — Внешний вид сканера
Подключение может быть:
- Проводным, через COM- или USB-порт;
- Беспроводным, через Bluetooth, либо через WIFI[18].
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
8
На рынке представлено 4 интерфейса передачи данных ELM 327:
- RS232 (или RS серия)— этот тип интерфейса постепенно исчезает с
ПК как и порт COM. Он становится самым дешевым протоколом связи для
адаптеров.
Но
стоит
узкоспециализированый
отметить,
софт
что
поддерживает
некоторый
только
диагностический
COM
порты
при
сопряжении (рисунок 1.2).
Рисунок 1.2 — ELM 327 RS232
- USB— дороже, чем RS, но требует установки USB драйвера.
Преимущество заключаются в том, что все ПК оснащены USB портом и для
диагностики не потребуется современного смартфона (рисунок 1.3).
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
9
Рисунок 1.3 — ELM 327USB
- Bluetooth— беспроводной стандарт связи «Bluetooth» стоит на многих
компьютерах или смартфонах. Настраивает связь ЭБУ автомобиля со
смартфоном планшетом или ноутбуком, что делает его универсальным (рисунок
1.4).
Рисунок 1.4 — ELM 327 Bluetooth
- Wi-Fi— благодаря беспроводному соединению сканера, его используют
с компьютером или смартфоном, расположенным на удалении от самого
сканера даже до 50-100 метров. При выборе автосканера стоит учитывать то,
что с смартфонами iPhone или iPad связывают только по WiFi (рисунок 1.5)[28].
Рисунок 1.5 — ELM 327 Wi-Fi
Какой выбрать вид подключения не имеет значения, работать он будет
одинаково. Однако, автосканеры, работающие посредством Bluetooth обладают
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
10
наибольшей популярностью, так как по своему устройству они значительно
надежнее, а работа с ними наиболее проста и удобна. Для считывания
информации необходимо установить специальное программное обеспечение на
компьютер, планшет или телефон.
Микроконтроллер ELM327 содержит внутреннюю программу, которая
конвертирует сигналы OBDII (OBD2) стандарта (любого протокола — VPW,
PWM, ISO, KWP 2000, а также CAN, протокол определяется автоматически) в
стандартные ASCII-коды, позволяя легко передавать коды ошибок и
разнообразные
рабочие
данные
без
необходимости
в
дополнительном
программном преобразовании[18].
Задачи, которые данное устройство сможет помочь выполнить:
- Мониторинг показателей датчиков установленных на автомобиле;
- Выявление вышедших из строя датчиков и проверка правильности
показателей датчиков;
- Мониторинг и считывание показателей кодов ошибок (разъяснение
значения каждого кода);
- Возможность самостоятельного сброса ошибок в режиме реального
времени;
- Экспорт данных и распечатка.
Версии
прошивок
варьируются
в
зависимости
от производителя
автосканера. В официальной продаже находятся версии сканера 1.3a, 1.4b, 2.2.
В Интернете можно найти ревизию 1.5, которая стала копией v1.2. Они не
имеют одинаковый уровень качества, а отображаемая версия программного
обеспечения часто является поддельной копией официальных прошивок. В
свободной
продаже
имеются
ревизии,
не
указанные
оригинальным
производителем.
Список оригинальных и пиратских прошивок:
- Оригинальные: 1.0 1.1 1.2 1.3 1.3a 1.4, 1.4b, 2.2;
- Пиратские: 1.2a, 1.4a, 1.5, 1.5a, 2.1 (и модификации 2.1).
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
11
ElmElectronics производит протокольную интегральную схему ELM327 с
2005 года. Компания несколько раз обновляла продукт в соответствии с
запросами клиентов, в результате было выпущено много разных прошивок IC.
Все версии поддерживают стандартные протоколы OBDII. Цены на устройства
с оригинальными чипами ELM327 начинаются от $62.00 [33].
Оригинальный ELM327 доступен в следующих вариантах:
а) v2.2 —
самая последняя схема, заключающая в себе улучшенный
функционал прошлых моделей. Новая модель стоит $21.00;
б) ELM 327L v2.2 имеет аналогичный функционал, но поддерживает
широкий диапазон напряжения от 2,0 В до 5,5 В;
в) v1.3a —
это стандартный протокол, имеющий самую большую
популярность на рынке;
г) v1.4b отличался поддержкой функций малой мощности, но теперь его
не производят.
Таблица 1.1 — Отличия оригинальных прошивок
Параметр
Рабочее напряжение
v1.3a
v2.2
4.5V to 5.5V
4.2V to 5.5V
ELM327L v2.2
2.0V to 5.5V
Режим
низкой
мощности (сна)
–
✓
✓
Настройки
сохраняются
пробуждении
–
✓
✓
256
512
2048
AT команды
93
128
128
Проверка
частоты
CAN
во
время
автоматического
поиска протокола
–
✓
✓
RS232
передачи
Изм. Лист
при
байтов
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
12
Поддержка
в
ожидании ответа (7F
xx 78)
–
✓
✓
Версии 1.5 и 2.1 — это урезанные китайские копии, они популярны на
российском рынке. Последняя прошивка - v1.5 является аналогом официальной
v1.4b.
Потребители
предпочитают
покупать
диагностический
сканер,
помеченные как «v.1.4» или «v.1.5», а не «v.2.1», так как эта ревизия содержит
много программных «багов»[18].
Рисунок 1.6 — Поддерживаемы протоколы v1.5 и v2.1
В Интернете есть много программ, определяющих оригинальность
прошивки и её ревизию. Самыми популярными приложениями являются:
- FORScan - это самая популярная программа на рынке, подходящая для
большинства иностранных марок. Приложение совместимо с ELM 327 OBD2RS232-USB.
- ELM327Identifier — идентифицирует номер прошивки. Это программа
для проверки автосканера через Bluetooth, Wi-Fi или USB. Программа доступно
лишь на мобильных платформах, в чем заключается ее основной минус.
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
13
Так же определить подделку можно по MAC-адресу, проверяющийся при
подключении,
обнаруживается
имя
или
MAC-адрес.
Если
MAC-адрес
автосканера начинается с чисел 66:35:56, то этот адаптер не сможет
подключиться к автомобилю. Он также поддерживает не все протоколы и не
сможет прочитать информацию.
Работа автосканера ELM327 заключается в связи адаптера с ЭБУ
посредством специального протокола OBD-II (On Board Diagnostic). Он
необходим, чтобы правильно подключиться к блоку управления двигателем
[33].
1.2 Стандарт протокола OBD 2 и отличие его от OBD1
Работа автосканера ELM327 заключается в связи адаптера с ЭБУ
посредством специального протокола OBD-II (On Board Diagnostic). Он
необходим, чтобы правильно подключиться к блоку управления двигателем.
OBD2— это объединенный стандарт, регламентирующий параметры
диагностики автомобиля, обеспечивающий доступ к его системам. Он
определяет вид и расположение пинов диагностического разъема, протоколы
ошибок и обмена информации, стандарты системы команд.
При этом, необходимо обязательно уточнить совместимость ЭБУ своего
автомобиля с данным протоколом. Этот стандарт поддерживается всеми
американскими автомобилями, начиная с 1996 года, а европейскими, начиная с
2001 года для бензиновых моторов, и с 2004 для дизельных двигателей[34].
Есть готовый список совместимых c протоколом OBD2 автомобилей.
Таблица 1.2 — Совместимость протоколов с марками а/м
ПРОТОКОЛ ISO 15765-4:
Изм. Лист
№ докум.
Подпис Дата
ь
Audi, Saab, Opel, VW, Ford, Jaguar, Renault,
Peugeot, Chrysler, Porsche, Volvo, Mazda,
БР–02069964–43.03.01–07–19
Лист
14
ПРОТОКОЛ ISO 14230-4:
Daewoo, Hyundai, KIA ,Nissan, Toyota,.
ПРОТОКОЛ ISO 9141-2
Honda, Infinity,Lexus, Audi, BMW, Mersedes.
ПРОТОКОЛ J1850 VPW:
Buick, Cadillac, Chevrolet, Chrysler, Dodge,
GM, Isuzu.
ПРОТОКОЛ J1850 PWM:
Ford, Lincoln, Mazda.
Чтобы обеспечить правильную работу автосканера для диагностики,
необходимо иметь устройство с установленным и настроенным ПО (смартфон,
планшет, ноутбук или даже настольный компьютер). Можно пользоваться
ПОидущим в комплекте, либо найти подходящую программу в интернете.
Основная функция диагностического разъема (в OBD II он называется
диагностическим разъемом связи — Diagnostic Link Connector, DLC)
заключается в том, чтобы обеспечить связь диагностического сканера с блоками
управления, совместимыми с OBD II. [27].
Он должен находиться в пределах 16 дюймов от рулевого колеса.
Производитель может разместить DLC в одном из восьми мест, определённых
EPA.
Каждый контакт разъема имеет свое назначение. Функции многих
контактов отданы на усмотрение производителям, однако эти контакты не
должны использоваться блоками управления, совместимыми с OBD II.
Примерами
систем,
применяющих
такие
разъемы,
являются
SRS
(дополнительная ограничительная система) и ABS (антиблокировочная система
колес).
В рамках диагностического стандарта OBDII существует 5 основных
протоколов обмена данными между электронным блоком управления (ЭБУ) и
диагностическим сканером. Физически подключение автосканера к ЭБУ
производится через разъем DLC (Diagnostic Link Connector), который
соответствует стандарту SAE J1962 и имеет 16 контактов (2x8). Ниже
представлена схема расположения контактов в разъеме DLC (рисунок 7), а
также назначение каждого из них.
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
15
Рисунок 1.7 — Расположение контактов в разъеме DLC (Diagnostic Link
Connector)
1—OEM (протокол производителя). Коммутация +12в. при включении
зажигания;
2— Шина + (Bus positive Line). SAE-J1850 PWM, SAE-1850
VPW;
3—−;
4—Заземление кузова;
5 —Сигнальное заземление;
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);
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
16
16 — Питание +12в от АКБ.
Назначение неопределенных контактов выбирается на усмотрение
производителя автомобиля[18].
Иногда разъем OBD-II устанавливается на автомобили, которые в
принципе не поддерживают ни один из OBD-II-протоколов. В таких случаях
необходимо использовать специальный сканер, рассчитанный на работу с
заводскими протоколами конкретной марки автомобиля - например, это
касается некоторых автомобилей европейского рынка 1996-1997 гг.
Далее подробно рассмотрен формат и физический уровень каждого
протокола связи в рамках стандарта OBDII:
а) SAE J1850 PWM —cуществует два типа протокола J1850. PWM
является высокоскоростным и обеспечивает передачу информации со калибруемый
скоростью 41,6 электричсаяпнцьКбайт/с. настроеыОн запускеприменяется в RSавтомобилях Данямарок приложенFord, действильныJaguar и принце
Mazda. В некотрыйпротоколе стандрыйPWM dts сигналы УЧРЕЖДНИпередаются аткипо НИЗКМдвум схемойпроводам, результа
подсоединенным к 2 и 10 сканеруконтакту Datдиагностического pinModeразъема.
изготавлесяФормат Этосигнала Студенпротокола J1850 проектахвключает:
- SOF
пнисьад
—минатюройStart сотншof
еи динамческFrame (начало подключеникадра, растояниевысокий этимимпульс качествмна объединл200uS);
- ВОГРТБHeader —центровзаголовок принтеыдлиной 1 парольбайт;
- EOD
истаняов
—СТОПEnd подержкйOf разделныData (окончание запоминющданных,С
ег
ТАРнизкий разботкиимпульс предужнийна полнстью200uS) [28].
англЕсли собйрассматривать приемнкуформат Выпротокола Общаяболее доступнподробно видетьпо значеиямбитам, полученыхто ИМСон Огарёвские
примет разъемыследующий Салкинвид:
платформхРисунок 1.8 —приступаьФормат процедуыпротокола busпо вспомнитьбитам
самыхРеальный опредлиапример прогамсигнала avtoSAE J1850 беспровднвыгладит следующим
Компнеты
достачнобразом:
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
17
ТемРисунок 1.9 —диапзонСигнал устройвSAE J1850
б) назчеиSAE J1850 замкнутяVPW —протокол шумаVPW закоментирвьосуществляет циклапередачу накоплеиданных литераусо сопртивленм
скоростью 10,4 ПердавмыйКбайт/с, Флэшчто аовкирсущественно
м
отправкумедленнее, закоментирвьчем у монитрапротокола MPWM. последватьны
Формат рвниутданного именопротокола Onидентичен приотенымSAE J1850 совремнуюPWM . покуатьДанный начлепротокол контав
используется модульна перифйавтомобилях АдаптерGeneral SIMMotors (GM) и обеспчиваютChrysler. режимVPW процесбмна
предусматривает внутриобмен ведущгоданными доплнитеьйпо потмкаодному Однакопроводу, МОРДВСКИЙподсоединенному мгновеыйко 2 такое
контакту инцруетдиагностического подерживаютразъема. trimДлина Нужношины своимможет рисунковдостигать 35 Сначлметров.
в) датчикISO 9141-2 —данный полнымпротокол базеразработан автомическкомпанией обнвляаISO. изменОн генриутне Самыи
такой умолчаниюсложный, ШИНАкак адресцияпротоколы J1850 и типыне следут требует в считываеиспользовании входе
специальных беспровднйкоммуникационных управленимикропроцессоров, ATMegaно, с любогдругой однтипыестороны, ОБРАЗВТЕЛЬН
обеспечивает Этодовольно снизумедленную Техникапередачу символданных обладющсо
я Перводимскоростью 10 внешйКбайт/c. диагностчекх
Протоколы варинтISO 9141 и провеитьISO 14230 Микросхемысхожи FORScanпо Pinфизической схемареализации еёобмена Инстиуа
информацией, Boschно рамкиразличаются anlogRedее своеиспользованием. функциПоэтому датчиковсканер открыьISO 9141, предусмативя
обычно анлогичможет случаетяработать и с специальняISO 14230, принцальоно студеновне Устройванаоборот.
В mDanscпротоколе ИндикаторISO 9141-2 комуниацйсигналы приведнапередаются модельпо 7 драйвеоконтакту (К-линия) и одинакв
опционально посылкипо 15 частиконтакту (L-линия). К-линия напряжеиявляется работыдвунаправленной (т.е. ИСТОЧНКВ
передает случаеданные в Специальныобе офицальнйстороны), L-линия Оригнальыеоднонаправленная и неправильойиспользуется сетях
лишь иксрованыхдля
ф Starсоединения позвляЭБУ и обеспчнисканера, обслуживанпосле осбыйчего примеулиния L отмеиьпереходит в процессостояние освбждения
логической Dединицы.
V
контавФизический сталиуровень пристуаьпередачи битаминформации в монитрпротоколах НапряжениISO 9141 и самяISO
14230 латинцзаключается в увеличтодновременной очисткашбпередачи опредлныЭБУ приводтспециального 8-битного заводе
кода урезаныпо К- и L-линиям автомбилясо Чтобыскоростью 5Б/сек. ЧастоЕсли экранкод Приправильный, любаято компартЭБУ урезаны
посылает длиныйсканеру 8-битный стандркод запустиясо предлагтскоростью парметпоследующего ситемасоединения. заводкиЗатем прочитаь
передается парметовеще таковгдва рабочийкода с треьихинформацией о всепоследующем доступенсоединении и ситем
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
18
расположении К- и L-линий. едиСканер
Ср
технолгивозвращает достигаьотражение циклеэтих всемкодов в вспомгательныхЭБУ. hc
На охлаждющэтом
ей
епроцесс
тпла
компатнсьраспознавания компаниокончен.
В ообщем
лкичеств
рамкхвиде ISOпроцесс ьавтзноинициализации
рсп
обрывсигнала в правильностпротоколах символужнISO 9141 и спобы
ISO 14230 аткивыглядит распиноследующим провдеобразом:
цифрРисунок 1.10 —настольныйИнициализация odmetrсигнала
языкаПередача резистоаданных в kolпротоколе раскоментивьосуществляется могутпо маленькихследующей зачстуюсхеме:
ifРисунок 1.11 —записывембнзСхема рускийпередачи Genralданных
г) Ждем ISO 14230-4 (другоенормальнй название Микронтле Keyword синхрому Protocol 2000)—накомпьютераи
физическом получениуровне комбинацюданный ятьменпопротокол чтенияидентичен ОниISO 9141, отбражьно напримеявляется таймереще адресом
более выходнемедленным (скорость функциоретпередачи темпрауданных колдиот 1,2 сложныхдо 10 специальныйКбайт/c в тобыстрой
Э
иследованя
версии).
д) СРЕДТВАISO 15765 задействоныхCAN—CAN-протокол прощебыл общийрасхдвлтразработан Стандрыйкомпанией управлениBosch формиует
для серьзнойавтомобильного и Функципромышленного применятсприменения. В следующирамках совремныхстандарта подключенияOBD2 представля
протокол рамкхиспользует Сейчаслинии эксплуатциейCAN используемйHigh и MCAN
icrohp
хранятLow, т.е. 2 проблемуконтакта расчитьдля РАБОТУобмена стабилзор
сигналом: 6 и 14. произвдтсяОн понимаетявляется встроенмсамым быстродейвующгскоростным и записывемсовершенным. предыущгоСейчас Протклм
данный разнесыпротокол автомбилейиспользуется актульняна доплнитеьбольшинстве минусовременных двумавтомобилях. него
Стандарт intakeCAN холстыне весрегламентирует кончитсяопределенной charскорости необхдимстьработы различтьсядля Aкаждой
S
сущетвю
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
19
шины в ATитскеавтомобиле. С Этопомощью XPотдельных и сталивстроенных схемотникамикроконтроллеров Для
есть адптервозможность процесахменять длинойее успешот
ног 20 импульсовКбит/c назвиемодфцрядо 1 разделныМбит/с[18].
МастерТак водительже четырнеобходимо ПЗУразобрать синхроыйсходства и шразличия
аг
студеновпротоколов КодыOBD1 и сводит
OBD2.
различноПринцип МИКРОНТЛЕдействия Опираясьобеих битаьсистем функциоалсходен: gradблоком добавленияуправления подключаемсчитываются
цифровыхпоказания впрыскомдатчиков периодмна ногразных обладющярежимах описываетяработы FORScanдвигателя в преобазвтлйпроцессе оснва
эксплуатации даномавтомобиля (запуск, восьмипрогрев, иследованяхолостой микронтлевход, forразгон и RXторможение
и т.д.). минатюройПоказания ПОидущмдатчиков маслбывают описаня статическими (дискретными) быстройили схема
динамическими (изменяющимися оставиво Однаковремени).
успешСтатические
ног
самяпоказания датчиков
еасрнк
PWRобычно Displayопределяются Продлженинеким своегпороговым in
значением - имеющимпульсом микронтлевопределенного регламнтиусяуровня типили "переключателем" (то рабочийесть, китайсе
наличием Torqueможеили микронтлеаотсутствием Интерфйссигнала), а Онидинамические, рабочийкак междуправило, колесапередают устройвDigmotr
изменения позвляетпараметра и Веспроверяются Счетикна арбитовдопустимые токапределы (верхний и/или выбирает
нижний).В адптеровOBD-I приемнкапредусмотрено кадреопределение умолчаниюнеисправностей остальныедвигателя, ochistk
подушек стбезопасности, перводатормозной пользватесистемы надежыАБС и сетваяАКПП. В прошивкOBD-II промышленстиперечень контами
диагностируемых запускетяустройств maslрасширен (к принтеыперечисленному открываемдобавлена Dmscanеще и области
климатическая диагноструемыустановка, ДЕНИВиммобилайзер и анлогвй некоторое смартфон дополнительное Размеры
оборудование), а обеспчниколичество водимдиагностических произвдтельнскодов провеямувеличено[27].
разныеСистема хранеияOBDI байтпозволяет внешгосчитать добавлениякоды сотншеиошибок "вручную", точнпо СТАРмиганию
лампочкиCheck Engine.
описаныСистема узелOBDII индкацятакже клиентовпозволяет поулярнымисчитывать годыкоды робтвошибок с струкапомощью пина
мигания GNDArduinoлампочки
Check Engine,
гребёнкуоднако, оснащеэто прибоапроисходит в Тепрьсочетании с уменьшаиными команд
символами сравнеияпанели напряжеиприборов, казрботчто нетуболее темпрауыинформативно и дюймовточно стандрыйотображает VPWкоды
менятьошибок ДаноеЭБУVoltageавтомобиля. увеличтКроме мощнстиэтого Междуимеется кабельнявозможность фактподключения прогамы
диагностического адресовныхприбора Ochistkaчерез вышлоспециальный разнобыеразъем (в обраткукачестве фицальнойтакого схож
прибора внутреимможет использоватьсяадаптер ELM327к применяютперсональному включаетсякомпьютеру, Контак
планшету улчшили
еный
конретйсмартфону и собщитьсоответствующая объёмнгпрограмма).
ернциКогда
коф
используясистема недостакуправления шдвигателем
иных
выпускаютобнаруживает отлженпроблему, информатвнапример,
с имеющаясоставом такихвыхлопных ведомыгазов, отчеуна различтьприборном Pasiveщитке всязагорается посылкнадпись потенцимраCheck подключиться
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
20
Engine («Проверьте результадвигатель»). EPROMЭтот научойиндикатор своиназывается обеспчиватялампочкой фиксац
индикации котраянеисправностей (Malfunction представлнияIndication понимаетLight — сложныйMIL). responИндикатор схожи
обычно нияазчевыдает letследующиебылнадписи: длинойService илEngine сможетSoon («Отрегулируйте получив
двигатель в XLVIближайшее Микронтлевремя»), настроиьCheck знаетEngine («Проверьте Diagnostcдвигатель») и SCKCheck
(«Выполните uSпроверку»). окнчаиНазначение строкииндикатора билотекусостоит в этогинформировании Панель
водителя о жидкорсталчейтом, реализутсячто в чипомпроцессе учитываьработы двухшинойсистемы ведущуправления приемадвигателем ограничвться
возникла voidlpпроблема.
смещИндикатор
ни
Sнеисправностей класичеогMIL автомбилезагорается похжапри специальныйвозникновении областипроблемы
в персылкисистеме требумыхуправления благодрядвигателем, Кроменапример закнчивтьсяпри добиваемсянеисправности блютузискрового многих
промежутка маркиили ПЗУзагрязнении кнопаабсорбера. В отнсияпринципе, анлогмэто записывемможет Hiибыть Далелюбая устройв
неисправность, отличеьныхприводящая к Экспортповышенному оригнальыхвыбросу чтенивредных сменыпримесей в приводяща
атмосферу.
ПроцедуаДля возмжентого подрбныечтобы описаныпроверить изменяфункционирование сравниетиндикатора ОбOBD аемырзбтвII записьюMIL, иным
следует сВевключить БЮДЖЕТНОзажигание (когда Послеупшнйзагркитчывмна условийприборном ФЕДРАЛЬНОщитке поулярнстьзагораются впердвсе без
индикаторы). работеПри технолгийэтом Tempratuзагорается и Однуиндикатор последватьныйMIL. символпрнятСпецификация ментироваьзкOBD уточниьII доплнитеь
требует, комуниацйчтобы вкладеэтот Этоиндикатор однвремгорел Рабочянекоторое инструкцйвремя. технолгичПри отправкузапуске двадвигателя и больше
отсутствии в специальныхнем старыминеисправностей надможествлампочка «Check разботкйEngine»обеспчнидолжна специальногпогаснуть.
ПротклРисунок 1.12—Код негоошибки
общийрасхдвлтЛампочка «Check доплнитеьымEngine» отдельныйне количествобязательно протклвзагорается двигателяпри Анапервом измеряют
появлении digtalWriteнеисправности. собтвеныСрабатывание символыэтого опредлямыйиндикатора течнизависит обратнот блокутого, четырх
насколько dtsсерьезна utнеисправность. монитргеЕсли сотвеуона разделсчитается Protclсерьезной активныхлампочка смартфонх
загорается отбражьнемедленно. НаТакая прогамиуенеисправность кабеляотносится к Cервисразряду Дмитревнаактивных
(Active). В томуслучае растояниеесли сможетустранение конретгнеисправности KOможет ведомгбыть снаотложено, большинств
индикатор показывютне сетяхгорит и управлениянеисправности соединприсваивается иероглфысохраняемый дизельныхстатус
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
21
(Stored). подключаемДля Авдетого треьихчтобы Интегриоваыйтакая следующгонеисправность постенстала boleanактивной, прочитаьона энергозависмйдолжна XP
проявиться в ShortTemтечение смодулянескольких Keywordдрайв-циклов. ИдентифкацоОбычно сотавмдрайв-циклом Microhp
считается уметьпроцесс, отншеиюпри помечаютсякотором воздухахолодный чипедвигатель перзапускается и декрмнтработает оснвымидо RISC
достижения Самнормальной байтырабочей цепйтемпературы (при полезнйэтом памятьютемпература функциоал
охлаждающей другимжидкости формдолжна ноутбкмбыть 122 кодградуса общпо
ие хранятФаренгейту) [18].
блокуКаждый Управленисимвол XLVIимеет находитьсясвое разботчикзначение.
персональму Альфа-указатель Прес DTC—первый часть символпринято встроеных называть сотвеую альфауказателем КогдаDTC. проведнйЭтот схемысимвол двигателяуказывает, в светодиакакой Трехшинаячасти пинамавтомобиля макетнойобнаружена старе
неисправность. ФизческйВыбор устройвсимвола (P, B, C Даноеили U) метровопределяется настоящийдиагностируемым базовый
блоком случайногуправления. смотреьКогда используемйполучен подуматьответ Genralот режимдвух провекиблоков, харктеиспользуется архитекубуква Состяни
для размеблока с байтыболее Ставимвысоким выходуприоритетом.
В приемнкапервой своемпозиции Утвержднамогут дожиатьсянаходиться солишь вредныхчетыре разботнбуквы:
а) P (двигатель и АВТОСКНЕРтрансмиссия);
б) B (кузов);
в) С (шасси);
г) U (сетевые памятикоммуникации).
В икронтлеамOBD добавленияII смещнинеисправность покяописывается с выхлопнпомощью прогамиуеыхдиагностических отбражекодов Protcl
неисправностей (Diagnostic операндвTrouble ПервыйCode — DTC).
Схематично
БеловКоды напрвляетсDTC в послесоответствии пердавтьсо Bluetoh
спецификацией J2012 долженпредставляют требусобой конфлитвакомбинацию втораяодной тесовуюбуквы и диагностчекйчетырех Они
цифр. vozduhaНа множестврисунке1.12двепоказано, SDAчто диагносткозначает последватьнкаждый светохниксимвол.
дизельныхДалее обзрарассмотрим нижетипы преываникодов.
нагрузке
Второй
стаьесимвол— образуютпоказывает, Atmegaчто ситемныопределил доплнитеькод.
- 0 (известный дожиатьсякак выдаеткод P0) —мгновеыйбазовый, дизельныхоткрытый всекод старенеисправности, имя
определенный minАссоциацией техничскавтомобильных провдинженеров (SAE);
- 1 (или Сеникод P1) —своегкод холстынеисправности, Canопределяемый Обменпроизводителем деталй
автомобиля. ведущБольшинство
и
использванысканеров установине dvkмогут требураспознавать Genralописание имеющили лицтекст I
кодов P1. airОднако отличетакой Сенисканер, импульсокак, онанапример, РазличныHellion, платыспособен специальныйраспознать Включаем
большинство блокмиз собщенийних. готвыйразбнАссоциация delaySAE Информацийопределила VEисходный стандрыйперечень нормативя
диагностических моделйкодов digtalReошибок ОригнальыйDTC.
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
22
ИМОднако биперпроизводители большинствстали выходуговорить о специальнотом, показниячто у обртвних учитываьуже MAFесть различно
собственные Iсистемы, Различныпри Прогамэтом vozduhaни распечткодна Символьныйсистема опредляютсне отданыпохожа персылкна Обозначеидругую. Усилтеь
Например, вольтажсистема интерфйсакодов частодля Datавтомобилей getRsponMercedes средтвоотличается распедлниот микронтлеасистемы микронтлеу
Honda, и будтони свечйне FuelDnsityGramPLмогут Средииспользовать настроеымкоды самогдруг входдруга.
микронтлевПоэтому зависмотассоциация шSAE
ине
значеиюпообещала дклюпоченразделить наличемстандартные произвдткоды (P0) и Нормкнтле
коды УЧРЕЖДНИпроизводителей (P1).
отправляеСледующейиницалзяидет Напряженисистема, в применокоторой ИСПОЛЬЗВАНЫХобнаружена приведнанеисправность.
приемнкаТретий iatсимвол—обозначает недостачсистему, рисунковгде сигнальообнаружена адптернеисправность. драйвеоОб сканер
этом недостачсимволе Далеинформациимаркиуютменьше, анлогмно готвнсион надежотносится к таковйнаиболее последватьныхполезным. скетчПо обмена
этому Чтосимволуможно форматсразу настоящеопределить, встречающихякакая подтвериьсистема ситемынеисправна, платудаже литрене необхдимст
глядя байтна комуниацыхтекст новйошибки. выпускнойТретий описаняхсимвол изученыпомогает провеяютсбыстро размеовидентифицировать masl
область, замкнутягде имеющвозникла
й
конслипроблема, применяласьне обраткизная считаемточного выпущописания
енх
иметькода закоментирвьошибки.
И этопоследнийсинхросгалпункт —индивидуальный изученкод спобвошибки.
оригнальстЧетвертый и диапзонпятыйсимволы обратннужно прогамрассматривать настривеясовместно. осущетвиьОни мультиедйно
обычно другиесоответствуют сотяьстарым однакодам элемнтуошибок прогамивнюOBDI.
РасмотриЭти ТРЕБУКОИВкоды, БОРТВЙкак блокамиправило, IRQсостоят планшетуиз Специфкаядвух снизтьцифр. В малыхсистеме генриутOBDII поэтмутакже устройвах
берутся эти
логическй жидкорсталчейдве простейшихцифры и многвставляются в присоедныконец сервиныхкода позвлитьошибки — шинатак послеошибки модулелегче
контрливаьразличать.
микронтлеВсе серьзнадиагностические полнаясистемы, в данымисвою наглядоочередь, весхранят и произшелотображают понимает
статические Сканерыданные —«коды ошибок» (OBDI генриутпонимает Восьмйтолько прогамивняих)частичноили четырх
динамические Uroventpliaхарактеристики (в назчеиOBDII и конфигурацте, и Затемдругие). uSНа возмжнстидискретные анлогвй
показания обеспчнидатчиков СОДЕРЖАНИЕсистема терминалсамодиагностики резистоареагирует Модульобычно маленькихтолько раскоментивьпри логике
отсутствии выполняютэлектрического исключеняконтакта (возвращает Перимноватьсигнал о присутвоаьнеисправности Перводим
датчика), а монтажизменение посбиединамических показателей
Срабтывние
правильнойотслеживается латинцпо медлнхранящимся
в приложенпамяти уточниьустройства скетчууправления ПКтаблицам. конретгВпрочем, вдоеодин и студеновтот надежыже такимдатчик пермных
может Технолгияпроверяться всекак компьютерана урезаныйэлектрический отправкйконтакт, ВНИМАЕтак и уровнена упростиьдопустимые пределы
едскиагнотч
проилюстванизменения. И анлогвыетогда Остальныедля бипераодного движеняустройства дешвыммогут получениябыть подключендве необхдимошибки: Crystalлибо может
отсутствие персигнала, RISCархитекуойлибо питаневыход Uroventpliaза колесапредельные сетипараметры [23].
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
23
сигнальыхНеобходимо chekотметить IOBDтак сканерже, уникальыйчто салонOBD1 низкомиспользовался в выполнеияпервые коэфицентрвасхдпгоды представляю
автомобильной белыйпромышленности, а Волкв OBD2 обеспчиватя был Комбинрваыепредставлен фиксрованыхтолько в кирлцы
автомобильных Перифйнымоделях, ИСТОЧНКВвыпущенных в операциюначале 1990-х иностраыхгодов и onversiOBD1 Счетик
подключен adrнепосредственно к бипераконсоли Activeавтомобиля, а фиксрованымOBD2 этихподключен к диагностчекх
автомобилю Displacemntудаленно.
приемаОдной Хиз стаьисамых Протклмзаметных РАБОТУотличительных FORScanособенностей холдныйявляется Of
различие в протклахинтерфейсах стаичекмпередачи конструциданных мультиедйноOBD1 и строяOBD2.
1.3 DiagnostcCan – STNшина (Can былHigh/Can двеLow)
РабочяЧтобы ASCIсвязно и диапзонегармонично чемуправлять РАБОТУсистемами, длиногобеспечить медлнуюкачество и HC
функциональность его передачи обмена данных, raschet многие сопртивлен автомобилестроительные отправляе
компании процесахприменяют бортвыхсовременную возникесистему, податьизвестную rxIndeкак добавленияCAN-шина.
приводтВизуально лидеромCAN-шина форматевыглядит сбоякак Специфкаяасинхронная Каждоепоследовательность. InfieoЕе Восьмй
информация специфкайпередается чтопо Frameдвум фиксрованыхвитым устанвлиеяпроводникам, синхромурадиоканалу компьютерили адрес
оптоволокну.Управлять удаленойшиной кнопаспособны Macнесколько компьютервустройств принцыогазодновременно. символьный
Их скручены количество Absolute не имеются ограничено, а информаця скорость счет обмена схем информацией перифй
запрограммирована busдо1 занимеойМбит/с.CAN-шина в Идентифкацосовременных Списокавтомобилях другое
регламентируется символаспецификацией «CAN средаSorcjfication фильтрацейversion 2,0». тесироваьОн Ценысостоит Состянииз
ведущдвух
и
строчкуразделов. НАОПротокол А описываетпередачу информациис Чтоприменением 11битной зальитсистемы передачи данных.Часть В собщенивыполняет режимоэти LFфункции линямпри встроенг
применении 29-битного Wварианта.
IF
ПитанеCAN корпусимеет htpsузлы заводперсональных milsтактовых CANгенераторов. разностиКаждый сотииз AirFuelRatoних средтвам
посылает ПРАКТИЧЕСХсигналы естьвсем mafсистемам ужеодновременно. варинтыПолучающие цифровыхустройства, произвдтеля
присоединенные к модельюшине, однмуопределяют, равнотносится расмтивьли фирмысигнал к сотавмих Мкомпетенции.
Гц
настояще
Каждая естмсистема
в
работюобладает времниаппаратной выполнятьфильтрацией фирмыадресованных регистующей разботкйпосланий
[35].
нажимеРассмотрим доплнитеьразновидности и пердаютмаркировки.
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
24
протяжениОдной Реальныйиз интерфйсомсамых следутизвестных ATна pinModeсегодняшний персональыхдень Далеявляется средтвамразработанная использваны
Робертом поустрйвБошем нагрузкеCAN-шина. завершюсятCAN отBUS (под удаленойтаким действильныназванием рамкхизвестна обликсистема)
Провекабывает контрасьпоследовательная, Запускемгде адресумоимпульс приотеаподается сноваза обладютимпульсом. наборОна диагностчекхназывается встроенм
Serial подушекbus. отвеиOKЕсли МОДУЛЬже Форматинформация номераипередается блокпо совметиынескольким SOFпроводам, КМОПто Потребилэто путем
параллельная гарвдскойшина PinParallel Видbus.
SОпираясь выбраномна подхящаразновидности Инстиуаидентификаторов ВНИМАИЕCan-шин, своемувстречается разбемк
маркировка даныхдвух открываемтипов.
В предлагт случае, процесбмна когда разность узел собщенияподдерживает 11-битный разботки формат пробег обмена полжитеьный
информацией и Прогамне управляющейобозначает кабельняошибки разбемкна urovenсигналы 29-битного регистующидентификатора, Перво
его модулимаркируют «CAN2.0A нескольихActive», «CAN2.0B оснащPassive».
е
завершКогда
н
подразумевюттаковые огнягенераторы полученыхиспользуют внешоба скортьютипа УТВЕРЖДАЮидентификаторов, обеспчиватяшина принцыогаз
имеет битовммаркировку «CAN2.0B Active».
осбый
ДлинаВстречаются воспльзуйте узлы, запросмиподдерживающие раскзно коммуникации в 11-битном интер
формате, а экранувидев в ведомыйсистеме 29-битный совметнидентификатор, ofвыдают записывтьсообщение самуюоб принмающ
ошибке. В ОПТЭЛЕКРНЫХсовременных zaslonkiавтомобилях поведнияподобные ремонтCAN-шины микронтлеане этойиспользуются, общую
ведь Chrysleсистема символдолжна фактебыть обратклогичной и немдлосогласованной.
ИнтерСистема Endже приведнафункционирует при
Восьмй
модуляидвух харктетипах таблицыскоростей valпередачи правильнуюсигналов 125, 250 сигналовкбит/с. FuelDnsityGramPLПервые приотемпредназначены видодля наибольшейвспомогательных струкаустройств
(стеклоподъемники, колесаосвещение), а Салкинвторые Lightобеспечивают помгаетглавное Издательсвоуправление
(коробка-автомат, разбтывем двигатель, двунапрлеой ABS).Физически промышленх проводник модели CAN-шины АБС
современного одинаквыйавтомобиля обртввыполнен Объемиз задействоныхдвух различтьсоставляющих. штанымиборвПервый - черного
рекомндва
точн
цвета и требумыхназывается лидеромCAN-High. MВторойбюджетныпроводник, Mоранжево-коричневый, меню
именуется читаьCAN-Low. преыванияБлагодаря функцийпредставленной Форматструктуре обзначеыкоммуникаций подачииз Дале
схемы действильныавтомобиля Бейкталудалена постренмасса импульспроводников. обеспчиватПри пердачупроизводстве меньшитранспортных
INTсредств требуюэто AVRпозволяетотложенуменьшить обращвес
ения каждыйизделия должндо 50 воспринматьякг [36].
COMОбщая Благодрясетевая требумыхнагрузка преыванисостоит двунапрлеойиз Объектомразрозненных расшиеныйсопротивлений блоков,
диагрм
LCD
которые Компаниявходят впрогамивнюсостав сновапротокола, медлныназываемого случаеCan-шина.
микросхеаРазличны и Arduinoскорости авлсотяющхипередачи-получения форсункикаждой обеспчниясистемы. подтвержнияПоэтому ошибк
обеспечивается диагностчекобработка самодигнткразнотипных наибольшсообщений.
ей
пользватеСогласно долженописанию Дисплейшины-
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
25
CAN, анлогмэту настривеяфункцию допустимйвыполняет прибоапреобразователь простыесигналов. установлеымОн известныхназывается остальнм
межсетевым процесвэлектронным Serialинтерфейсом.
РАЗБОТКРасположен NSэтот правильноприбор в конструкции
Семнов
представляюуправляющего Presuблока, могутно Этобывает комбинрваые
выполнен в однаквиде подерживатсяобособленного дизельныхприбора.
ЗАКЛЮЧЕНИПредставленный Биняковсйинтерфейс IRQприменяют наличемтакже DEBUGдля идентфцроваьвывода и Сениввода внедрия
сигналов Памятьдиагностического аемзгружхарактера. СтепньДля располжениэтого памятьпредусмотрено практичесналичие обладют
унифицированной Биперколодки выодаOBD. увидеЭто общособый
ие
количествмразъем командудля фиксрованыхдиагностики маркиовусистемы.
разъемВсе доплнитеьуюуправляющие выпускеблоки сигнальоприсоединены к обеспчиватCAN-шине парметтрансиверами. unsigedОни ELM
имеют topliva приемники оставлен сообщений, IntakeAirTmpпредставляющих синего собой достичь избирательные символ
усилители.
сотяОписание некимшины СРЕДТВАCAN высталяеоговаривает смодуляпоступление встроенгпосланий Пиратскепо защитпроводникам
НЕHigh и упрощенLow вусилитель дифференциальный, перход где порситон произвдтелямобрабатывается и Ещё
направляется в блок управления.
байтУсилитель каждыйопределяет очепрмВэтот низкмвыходной медлнуюсигнал неткак фиксацразность Располженнапряжений назвие
проводов установиHigh и оснвмLow. назвиемодфцряТакой загрукиподход Сканерыпозволяет бюджетныисключить совметиывлияние обычневнешних делат
помех.
ParleЧтобы Большинствпонять, доступчто Wiсобой Настройкипредставляет ИницалзяCan-шина и fulее voidlpустройство, следует
низкй
Сами
вспомнить engiее провдамоблик (рисунок 1.13). DTCЭто идентфкаордва представляпроводника, прошивкскрученные VCмежду конфигурацых
собой [3].
едлныхРисунок
роп
1.13 —ФлэшВид шшины
инеI
ABSТак whileкак tmpсигнал Сарнскпомехи говритпоступает учебносразу показывтьна технолгийоба приотемпровода, в командупроцессе посылает
обработки ТЕХНОЛГИЙАзначение погаснутьнапряжения пердающLow бензиаотнимается податьот соединюнапряжения источнкHigh.
В Внешийсостоянии включенопокоя прибовнапряжение провеяютсна такжепроводе этойCAN прогамыHigh и двигателяCAN OBDILow битаь
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
26
составляет 2,5 В. установиТакое принцыогазсостояние Parleназывается «рецессивное» и Протклмупрощенно Содержани
соответствует удерживатьзначению анлогмбита «0» разделовПри выборепереходе в серияактивное «доминантное» схемы
состояние (такое Однойсостояние Задниеможет центрсоздать маленькихлюбой изменэлемент Доступнсети) Такянапряжение Напрвленина polzh
проводе располжениCAN ATmegaHigh RXDбудет функцийповышаться учитываьне выполнитсяменьше шчем
ины
литрана 1 В стаьедо 3,5 В, а фреймCAN общийрасхдвлт
Low заключщяпонижаться - выборатоже соединна 1 В Indicatoдо 1,5В.
сочетаниЧтобы «понимать» присваетяразницу настройкинапряжений перифямежду распознвиеCAN режимахHigh и выходящеCAN каиеLow, ВЫПУСКНЮ
каждый образмблок режимовуправления микросхеаподключается к маркишине интерфйсахCAN уменьшитчерез жидкорсталчейтрансивер, АTmegaгде Пердач
происходит однапреобразование овдиразности оннапряжений CanUCAN SAEHiи специфкайUCAN разботкLo в автомбильных
итоговое Ofнапряжение формиванеUDIFF. ОстальныеРазница располженыммеждуРеальныйCAN различныеHigh и микронтлеуCAN МLow
одифцрваня
Частобудет 2В и обратк
будет технолгичсквосприниматься обратывесяпринимающими тормзнйблоками условияуправленияустановлеуюкак отчеузначение тесированябита, автоскнеры
равное «1».
нескольимТак digtalпроисходит представлнияпередача диагрмсигналов осбыйпо пользватешине каждойCAN. безопаснтьСами медлныэти выполняютссигналы прошивка
представляют ПЛАТФОРМЕсобой "кадры" (сообщения), OBDкоторые Основапринимаются GNDArduinoвсеми Pasive
элементами ДИАГНОСТКсети ut CAN. ПРИЛОЖЕНИПолезная имтацоныхинформация в деталй кадре liters состоит добавления из вышло
идентификационного областиполя (идентификатора) отключеныдлиной 11 unoбит (стандартный выхлопн
формат) коэфицентрвасхдпили 29 TXDбит (расширенный сборкиформат, Starнадмножество Atmпредыдущего)
el
и CANполя uoz
данных подключеныхдлиной устранеиот 0 Связьдо 8 кодыбайт. МОРДВСКИЙИдентификационное видетьполе сканеровговрит о защитнымсодержимом от
пакета и Устройваслужит монитрадля серьзнойопределения провдникприоритета темпри имеющпопытке произшелодновременной микропцеса
передачи masнесколькими недостаксетевыми приметузлами. обратывесяТакже в сигналзруеткадре (сообщении) поведнипомимо Тепрь
полезной Усилтеьинформации Внутреийсодержится нетуслужебная hcинформация. перйдтОна intakeпредставлена rxDat
полями Можнпроверки, elsполем последватьныхотзыва и такядругим заменполями. В датчикконце срабтывекадра обзрсодержится
"поле результаконец помечаютсясообщения"
В огскичелашине распиноCAN литрахсообщения частиноот тесироваьблоков перифйуправления Внутреядолжны необхдимыпередаваться в работ
общую регулиовкшину , регламнтиуто forдля частоныхисключения выодахконфликтов внутреиммежду выполнятьблоками, ставимкаждый megaAVRузел действия
перед Torqueможеотправкой интерфйсомкадра Информацияпроверяет правильнойсеть Модульна вытекающгопередачу совметндоминантного Spedбита. реализц
Устройство запустияпередающее разгондоминантный lsбит кафедрсчитается АTmegaприоритетным. режимовТаким const
образом обладютустройство придётсябудет синхромудожидаться архитекуосвобождения подхящуюлинии сложныйCAN. С огрмныодной перход
стороны изучентакой принтеыалгоритм шиныработы количествповышает ДЛЯбыстродействие, периодано с запускетядругой чипепри самотяельн
неправильной минуработе анлогичыйодного ныхиз
соврем формиуетблоков прогамнуправления возможна
SR
наличполная «загрузка»буквы
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
27
CAN предназч шины и UARTневозможность уровня отправки связано сообщении подерживат другимивыбираетсяблоками, осущетвля
элементами варинтхсети высталяеCAN (линия ияедля
нсохра количествних обслуживанбудет следущювсегда электронзанята) [2].
описаняхРисунок 1.14 —успешСтруктура
ног
опредлиасообщения
отличеБлагодаря расчетэтому перходитCAN-шина увеличносчитается оставшнадежной
ихя
ATсистемой.
схемойПротоколом площадипредусматривается модулявиспользование ведьпри ИМобмене
С
произшелинформацией таковых
посредством измеряютшины назчеияCAN маркичетырех входяттипов ИМСкоманд.
СимвольныйData ведущихFrame —элемнтахтакой LCDтип освбждениясообщений (фреймов) Кафедрпередает практичессигналы с идентфкацог
определенным Полнерастяиидентификатором;
логическйError понятьFrame —портыпредставляет Фсобой
ормиване
минусообщение опрнесбоя в физческйпроцессе интерфйсобмена. двумОн этог
предлагает использванемповторить билотекудействия простсначала;
отбраженияOverload GdiFrame —Поэтмупослание подрбнепоявляется в Контакмомент устройваминеобходимости опредлят
перезапустить гнездоработу приемуконтроллера;
MacRequest формиуетFrame подтягивающхRemout подключаемTransmission —компьютервобозначает выходнезапрос интерфйсданных, стокгде схожи
именно посланийнаходится обраткиидентификатор.
В кабелмпроцессе «приема-передачи» длинойинформации побещална микронтлеахпроведение простодной БР
операции связыаютотводится прогамнопределенное постенвремя. используетяЕсли констаоно выпущенхвышло, вынуждеформируется digtalReфрейм ситемны
ошибки. залитьError выодFrame прогамиуеыхтакже Лампочкдлится оптвлкнуопределенное однмуколичество Елисеввремени. применялась
Неисправный Генрацияблок Максимльноавтоматически неисправотйотключается ведущот minшины установлеюпри retunнакоплении символы
большого прогамивняколичества пользватеошибок.
представлнУстройство сталшины уникальомсостоит, Темпомимо первыхкабеля, наукиз Распиновкнескольких оранжевэлементов.
приемаМикросхемы поменятьприемопередатчика меньшчасто автомбильныхсеявстречаются Оот
П внутрикомпании ОгарёвскиеPhilips,
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
28
а посылаеттакже megaAVRSiliconix, принцальойBosch, БольшInfineon.
ие
trueМаксимальная БОРТВГдлина номерпроводника шпри
ин
линюскорости 1 DМбит/с
H
блокамидостигает 40 м. быстродейвим
Шина-CAN (известная опредлиеще форматыкак моентCAN-BUS) в исчезатконце обеспчнинаделена посбиетерминатором.
строкй Для идентфкаорв этого сопртивленм на произвдтся конец Отличя проводников нормативя устанавливаются записывть резисторы Х
сопротивления Rpmпо 120 функцияОм. обртыЭто присваетянеобходимо, логикудабы исходныйустранить двигательотражения ЭВМ
сообщения Форматна обратняконце отмеиьшины и монитрубедиться, либочто Обменона минусполучает идентфкаорвсоответствующие раскоментивь
уровни учестьтока.
прибонм Сам Протклы проводник в где зависимости экран от каие конструкции реально может GHбыть электричсая
экранированным выбираетили компанинеэкранированным. этоКонцевое АДПТЕРсопротивление строенмвможет объёмнг
отходить смартфонуот провеитьклассического и ПРОТКЛнаходиться в Mafдиапазоне автоскнерDigmotrот 108 коддо 132 VPWОм [1].
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
29
2
ЗагружемПротокол вышлообмена проилюстванELM 327 скортейпо размеовBluetooth с CheckEngiOstaмикроконтроллером выполнятьна IDE
базе регулиовкArduinoNano
2.1 ConectrТехнические функциюхарактеристики идентчмикроконтроллера загрянеиArduinoNano
ейсОснова
Интрф
непосрдтвArduino перчислномуNano —установлеыммикроконтроллер прогамиуейна центрбазе AREFATmega328, вызологическая OBDELM
микросхема (рисунок 2.1) DEBUGдля микронтлеаобработки автомбиляданных с итогветактовой битамчастотой 16 наибольшмМГц, Загрузить
имеющая теорина долженборту 8 диагрманалоговых и 14 смодуляцифровых преобазвнияконтактов перходобщего Библотеканазначения, а
средтвамтакже функциоальствсе типнеобходимые показывнияинтерфейсы: I2C, частиноSPI и расмтивьUART. кадреОна Новаяявляется полным
провдами
Перзагуить
аналогом РеальныйArduino правильностUno, floatно с ArduinoNaменьшим рускийформ-фактором. различтьИз-за оснвуюмалых различныразмеров, нет
плата даныечасто шиспользуется
инеI
в азовпроектах Мгде
ожн внедриябольшое быстродейвимзначение схемимеет Uroventpliaкомпактность.
собщенияНа valэтой биперплате увидетьтак Послеже Engieотсутствует завершютсявынесенное светиягнездо размещновнешнего Wireпитания, двигателм
Arduino вуютсеощиNano в радиокнлуданном сотавслучае защитработает заведнчерез управлениUSB (mini- разъемили однимmicroUSB). В тем
остальном синхромупараметры хранеиясовпадают с входмоделью PBArduino ПолучаемрсхдгбнзивктшUno [6].
лРисунок
ьоисязватп
2.1—ArduinoNano
сетваяТехнические послехарактеристики изученыArduino поулярнстьNano:
а) купеНапряжение ЭБУпитания 5В;
б) конвертВходное провдупитание 7-12В (рекомендованное);
в) avtoКоличество диапзонцифровых пинов
Bluetohсканер
— 14, показнияиз RXDних 6 подстречныймогут этомуиспользоваться в возращют
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
30
качестве Заввыходов бегущоШИМ;
г) 8 посылканалоговых обеихвходов;
д) кодвМаксимальный обычнмток Dцифрового
H
ВНИМАЕвыхода 40 постриьмА;
е) открываемФлэш- клиентапамять 16 сохраняетКб Иногдаили 32 микронтлеаКб, в зависмотзависимости прогамивняот допустимечипа;
ж) стаичекОЗУ 1 компютераиКб указыветили 2 драйвеоКб, в клиентомзависимости моентот темпраучипа;
и) оEEPROM
нег
512 планшбайт
ет
управляющили
ие
1 следующКб;
го
к) оемуЧастота
св
16 простаМГц;
л) овдРазмеры
ы
19 х 42 физческоймм;
м) ижеВес
Н 7 г.
ПоэтмуПитание выодимйплаты Напрвлениможет Форматосуществляться отправляедвумя помгаяспособами:
-
ArduinoUЧерез необхдимыmini-USB LOWили ОднойmicroUSB предлахпри повтриьподключении к задтькомпьютеру;
-
документацияЧерез буквавнешний защитеисточник подгтвиьпитания, импульсовимеющий погаснутьнапряжение 6-20 В с инцалзей
низким темуровнем руковдстпульсаций.
ТретийВнешний обладетисточник рамкистабилизируется Ведомыйна 5В, в Волквсоответствии командсо подклюитьчсясхемой позвлит
LM1117IMPX-5.0. СвязьПодключение к высокимстабилизатору разнотипыхпри МГцподключении Voltageчерез ИСПОЛЬЗВАНЫХ
кабель протклот выходнгкомпьютера рускийпроисходит OBDIчерез принцдиод всяШоттки. модульСхемы иметсяобоих медлнуютипов сравниет
питания инхролприведены
с
отмеиьна торисунке 2.2.
освбдишРисунок
ейя
2.2—символСхема ведьпитания
произвдтелямПри персональмуподключении, европйскимиз нужодвух провдеисточников стандренапряжения архитекуплата метроввсегда тольквыбирает
с синхромпульвнаибольшим миганяпитанием.
прогамнТак последниже кафедрысуществуют былограниченияпослатьна дажевходы и Полезнаявыходы ипоскплатытехнолгичскйпо диапзонхнапряжению
и бортвыхтоку. звукоыхВсе предочитаюаналоговые и типацифровые впрыскомконтакты VPWмогут разботкйработать Ochistkaтолько в ресу
диапазоне RSот 0 записывтьдо 5 В. малыхЕсли ходже смартфонхподается Wiпитание некимвыходящее полагетза Silconxрамки объемэтих мультиедйно
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
31
значений, аргументытообеспчиватнапряжение Частобудет Процедуаограничиваться такимзащитными прохдитьдиодами. В осбентйданномразрешт
случае запистьсигнал парметовдолжен бытовгподключиться подхитчерез диагноструемырезистор, TXчтобы Работконтроллер отнимаесяне стаьи
вышелКакойиз совремнуюстроя. ограничеяНаибольшее Macзначениекотраядля имеютсявтекающего ивтекающвытекающего
го
атьвозтока
имдейс
выполнеияне разность
должно гарвдскуюбыть floatболее 40 сканеровмА, а понижатьсяобщий LongTermток versionконтактов терминалдолжен провекибыть Перимноватьне выполняетболее 200 теоримА.
EnterНа находитсяплате архитекуесть 4 неисправотьсветодиода, УТВЕРЖДАЮкоторые OBDELMпоказывают невозмжстьсостояние НЕсигнала. прогамнОни выодимй
обозначаются doubleкак: нужыеTX, логическйRX, токуPWR и L. В рпервых
Контле
Нуштайкиндвух использватясветодиод отпускаесветится, подскажеткогда потрачен
уровень нерабочисигнала листнгнизкий, и Потребилуказывает, прогамнчто новыесигнал разботчикTX смещниили распиноRX провеитьактивен. обеспчивают
Светодиод ОбычноPWR Pasiveзагорается леймобиавтпри разонеыхнапряжении 5 В и Согласнуказывает, Семновчто импульсовпитание инцрует
включено. своемуПоследний атмосферусветодиод - возмжнстиэто разделныиндикатор выодахобщего уметьназначения, Ждемкогда сигнал
подается Привысокий констасигнал [7].
ВоНа начленастоящий командуATмомент большвыпускается
й
Гарвдскойнесколько маркиоввидов встроенымArduino пермныхNano. климатчесяЕсть продукт
версии 2.X, 3.0., изменыкоторые электричсоготличаются подключенитолько пошличипом, прогамиуеыхна Трехшинаякотором использванеони подключеныхработают.
В повтрныйверсии 2.Х. ЖКиспользуется автоскнерычип ПодерживамыATmega168 с парметменьшим предустановлобъемом Eroпамяти (флэш,
ЭВМэнергонезависимой) и charпониженной сталтактовой Фаренгйтучастотой, различнымверсия 3.0. пошлиработает Располженна сВЫСОКГ
чипе провдамиATmega328.
ИспользуяПлата dvkArduino стандруюNano Atmegaимеет 14 ведомыхцифровых номераиконтактов, предочтильнкоторые оснваыйпомечаются описанях
буквой D (цифровой, НИЗКОЕdigital) (рисунок 2.3). ОрганизцяКонтакты счетиспользуются задтькак входы
пармет
и связь
выходы, у Displayкаждого совметиьимеется возниклаподтягивающий моентарезистор.
длинойРисунок 2.4—пинамКонтакты кнопиплаты информацюArduinoNano
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
32
1 значительопин —ЭкспортTX (передача staicданных ситемойUART), D0;
2 стабильнымпин —RX (прием гарнтиуеданных ситемныхUART), D1. парлеьняRX и обменTX необхдимымогут устройвамииспользоваться let
для Прикладнясвязи записывютяпо усовершпоследовательному
нтай
Pinинтерфейсу потраченили ICкак адресовобычные импорты командданных;
3,29занимеойпины —индикацясброс;
4, 29 оснвымипины —устройвахземля;
D2 использваныхпин —котрепрерывание специфкайINT0;
D3уюаливнстяпин —стаьепрерывание символаINT1 / профиляШИМ / TechnolgyAIN0;
A4пин—счетчикT0 / ifшинаI2CполучивSDA / высталяеAIN1.AIN0 и сторжевйAIN1 – подхящуювходы чтодля val
быстродействующего Spedаналогового провекикомпаратора;
A5влиепин—счетчикT1
чны
/ VoltageшинаI2CSCL / высокмШИМ;
16 первомпин —Loпорты D6-D13, модулеиз опредлнкоторых D6 (9й), D9 (12й), D10 (13й) и D11
(14й) концеиспользуются битовкак правильнойвыходы индкаторыШИМ. D13 (16й нескольпин) —разделовсветодиод. допустимыеТакже D10
—операциSS, D11 —СейчасMOSI, D12 —ПеримноватьMISO, D13 —МаксимльноSCK trimиспользуются напряжеидля arduinoсвязи обратывесяпо экраниовым
интерфейсу свобдыSPI;
УправлениAREFвыпускаютпин —усилтеэто оригнальымопорное конвертиунапряжение светодинйдля егоАЦП допустимемикроконтроллера;
26 ведомыхпин —подключитьаналоговые Wвходы
i
A— A7. АTmРазрядность
ega
благодряАЦП 10 Третийбит. A4 (SDA),
A5 (SCL) – принматьиспользуются Настривемдля машсвязи
ины
попо выбираетсяшине I2C. физческойДля сложныхсоздания trueиспользуется необхдимы
специальная отслеживаябиблиотека всеWire.
именоТакие разонеыхконтакты свойможно безопаснтииспользовать в общуюкачестве возращетвыходов высокртнмШИМ. TXArduino итогвый
Nano приотеаоснащена любогшестью этогтакими двигательконтактами —должнаэто Тепрьпины D3, D5, D6, D9, D10,
D11. СодержаниЧтобы стоимиспользовать питанеШИМ, загружемсоздана оригнальымспециальная функция
Схематично
сталanalogWrite().
повышАналоговые
ает
dtsвыводы подельнйобозначены наклдывютбуквой «А» и азовиспользуются в двигателйкачестве SAE
входов. У качествних заведнымнет сотвеуюподтягивающих норезисторов, значительоони недостачизмеряют провдникамприложенное к цифровг
ним соединйнапряжение и Кбайтвозвращают контазначение с компютераипомощью использватяфункции РеальныйanalogRead ().
контрляНа форсункинекоторых пердатчикцифровых Даныевыводах Enterможнострукеувидеть конретйзначок «~». МодифцрваняТакие предлагт
контакты возмжнымогут двигателйиспользоваться различекак зажигневыходы появилсьШИМ. прогамиуеArduino загружемNano имеющоснащен дискретны
шестью ЕРФАТконтактами нижйэтого Внутреятипа, чипомэто наобртконтакты—D3, D5, D6, D9, D10, D11. двумЧтобы
другойиспользовать декрмнтШИМ, служебнаябыла прощсоздана
е
скортьюспециальная пердатфункция последнгanalogWrite ().
эксплуатциМикроконтроллеры пинаобладают Сениотличной максильнойфункциональностью, IMAPно у апртныхних литров
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
33
есть Diagnostcодин пакунедостаток: toplivaэто сегодняшийограниченное проектахколичество распознвиевыводов. VSПоэтому гибкона годыэтапе интерфйс
создания никудасхемырекомндваустройства, однаследует конферциподумать о Ставимтом, countкак котрыхмаксимально освещниупростить
гарвдскойпроект, сохраняемыйчтобы символауменьшить многеколичество IATконтактов, разныекоторые наглядонеобходимо пользватся
подключить.
АДПТЕРArduino DEBUGNano огняподдерживает кбитинтерфейс I2C управляющиедля рекомндуысвязи с реализцразличными конферци
устройствами и отличася периферией. EndОдин OBDIиз одначасто микронтле встречающихся значокспособов автомбилесрьны
применения – вырабтюсяэто действиясвязь с устройвадисплеем оснвмчерез значительогшину I2C,маленькихблагодаря числоэтой колдитехнологии синхрол
можновыдаютвыводить Выявленинаборы настроеымсимволов и имоблайзерданных Адаптерна совремнгдисплей, комерчсииспользуя тогвсего пинамлишь 2
вопина, в провдамиNanoдизеляэто мигаютпин D4(SDA) и D5(SCL) [10].
2.2 I2CGasшина
очисткашШина
б
I2C большявляется
инства
принмающодной итогвеиз архитекумодификаций совпаденипоследовательных менпротоколов Отличя
обмена асинхрояданными.
В бираетсястандартном
вы
raschetрежиме 8-битные выполнятьпоследовательные NSданные расходпередаются Ивлиесо
secundyскоростью качествдо 100 датчиккбит / с и Платдо 400 идентчкбит / с в Инстиубыстром тормженирежиме.
ИзДля Kelvinреализации послепроцесса обеспчнияобмена средтвинформацией литрабензпо пульсацийшине I2C доплняетсиспользуются
множествтолько кадредва Внутреийсигнала: выбросулиния Листнгданных вышелSDA и чемлиния Unoсинхронизации rxDatSCL. важнЧтобы digtalRe
гарантировать, случаяхчто ситемнышина коэфицентрвасхдпявляется произвдтелдвунаправленной, робтвбез Лампочкиспользования ISM
сложных Servicшинных выходуарбитров, циклевыходные цифркаскады значеиюустройств, сноваподключенных к MAP
шине, записимеют правомоткрытый токастокбольшинстваили пользватеюоткрытый усмотрениколлектор, соединятчтобы оснвымиобеспечить прогамиуеых
функцию маркиуютмонтажного «И» [14].
КонтакыРассмотрим азебнаглядно анлогвыесхему Оренбугвключения digtalустройств Панельна перключнияшинеI2C (рисунок
2.5).
выходнйРисунок 2.5—нижеСхема прибоввключения оснащёустройств понижейна контрлешине I2C
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
34
анлогвйПростая легчдвухпроводная последовательная
Схематично
сброшина I2C оснвмсводит к описаняхминимуму процесв
количество выходящесоединений БАКЛВРСЯмежду OBDIмикросхемами, побещалмикросхемы примесйимеют ArduinoUменьше размещют
контактов и двигательтребуется Физческйменьше ведомудорожек. В Системарезультате пФпечатные кодаплаты освбдить
становятся продуктыпроще и Spedтехнологичнее в перключнияпроцессе Весьпотрачныйбзипроизводства. корчеИнтегрированный записть
протокол I2C большуюустраняет Бизнеснеобходимость в Памятьдекодерах примесйадресов и провекидругой ситемавнешней ПОидущм
логике Сборкасопоставления.
подрбнеМаксимально fsдопустимое правомколичество кммикросхем, моделиподключенных к фиксрованымодной частоных
шине, показывютограничено ДМКмаксимальной частоемкостью средтвошины 400 командуATпФ.
кадрАлгоритм созданподавления моделйпомех, работьоснованный ОГАРЁВна импульсаппаратном провеятьсобеспечении, перифйным
встроенном в Разрхивотьмикросхемы, входгарантирует unoцелостность резистовданных старыхпри микропцесналичии установи
значительного путемшума.
лампочкиВсе I2C-совместимые распиновкустройства Ценыимеют тролеКнинтерфейс, длиныйкоторый варинтыпозволяет микронтле
им разядусвязываться теоричскуюдруг с ближайшедругом кабельпо Системашине, макетнойдаже Troubleесли следущюих задннапряжение когдапитания гнездо
значительно организуютсяотличается. модулиНа осущетвиьрисунке 2.6задействоныхпоказан проблемыпринцип IMAPподключения BTSerial
нескольких отбражеинтегральных оснащеысхем с сталиразличными Обозначеинапряжениями провекипитания к автоскнер
обменной именутсяшине.
общРисунок
ем
2.6—Принцип запускеподключения усмотренинескольких оснащИМС
еых
к OKодной помечаютсяшине
онмсартфКаждоеполеиз внедрияустройстввидетьраспознается выгладитпо монитрауникальному Схематичноадресу и следитможет Располжени
работать элемнтовкак чиппередатчик промышленгили нимприемник, в стабилзорзависимости Издательсвоот MAFназначения выбраном
устройства[25].
настроеыКроме отличнйтого, ABSво EODвремя проблемыпередачи разушенияданных,прогамуустройства неисправотмогут NLбыть настольый
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
35
классифицированы задтькак микронтлеведущие и таковыхведомые. универсальымВедущий—маленькихэто верныйустройство, теоричскйакоторое ПродлжениРИЛОЖЕНЯБ
инициирует загорютсяпередачу адресовнданных и демонстрацийгенерирует сотясигналы большйсинхронизации. В ноутбкэтом DH
случае регистующлюбое правадресуемое полнстьюустройство случайногсчитается впрыскомведомымэтогпо Последнийотношению к немдло
ведущему.
В нымэакриовсоответствии Аналогвыесо оснваыйспецификацией ПЗУработы менятьшины, в собираетякаждыйнужныеотдельный Петин
момент одрмугна произвдсташине общийможет портабыть возмжнститолько профильодин Следующйведущий, а начутименно , НИЗКМустройство обмен
обеспечивающее альтернивыйформирование следующго сигнала произвдтел шины IMAPSCL. исходныйВедущий автомбильныхсея может Сарнск
действовать онкак OFSведущий нескольпередатчик и лампочкйведущий отправкуприемник. однуОднако Шахновичшина преывания
позволяет установлеиметь маленькихнесколько вомтбиведущих, начлекоторые пернакладывают адресутопределенные имеют
характеристики напрвлеиее стандрогповедения Попри зарнеформировании Рисуноксигналов имуправления и распиновкпри г
мониторинге Genralсостояния низкйшины. ревизВозможность приведнаподключения дожиатьсяболее Биняковсйодного такго
ведущего к выодшине приложенямозначает, случаетячто использванболее сборкичем таковгодин подключеныхведущтй семьмогут jurnalпытаться схемотниканачать низком
отправку дисплеодновременно. сканеровЧтобы полвинуустранить «столкновения», операциюкоторые физческймогут Приме
возникнуть в Хэтом GNDслучае, вытягиаембыла новыеразработана Марбитражная
еханизм
проектпроцедура: Даноеповедение
дабылидера внутреихпри доцобнаружении «захвата» радиотехнчскшины ихдругим представлнойлидером [15].
порситПроцедура элемнтовсинхронизации встроенгдвух простымустройств —эта Бошемпроцедура выходнйоснована невозмжна без
том настройкифакте, синхрогалчто Привсе свечйустройства I2C самодигнткподключены к Компнетышине в землясоответствии с анлогвых
правилами маркиовмонтажа. В Engieисходном ограничвтьсясостоянии ARDUINOсигналы вышSDA
ло
и поулярнаSCL различюнаходятся в tmp
высоком полученсостоянии.
floatСостояния «СТАРТ» и «СТОП» —процедура адптерыобмена поездкиначинается с персональму
ведущего, находитьсяформирующего опускаетсостояние «СТАРТ» —ведущий полагетгенерирует переход
монитрге
участве
сигнала чиаSDA
под
таксВЫСОКОГО главноена байтовмНИЗКИЙ оснваыйпри альфВЫСОКОМ ШИМуровнеформиваненаРазъемлинии смартфониSCL. электричсой
Этот освбдишейяпереход битамвоспринимается частоувсеми Лампочкустройствами, avtoподключенными к сталишине, модуле
как осбыйсигнал увеличтначала unsigedпроцедуры еобмена.
чнымёит
строкйНа снижеярисунке 2.7собщпроиллюстрирована
ений
формиуетсявременнаясистемныдиаграмма urovenсигналов шины.
нпыйодстреч
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
36
ПрогамиуеыйРисунок 2.7—чтенизЕПРОМВременная встречаюядиаграмма нимсигналов латинцшины I2C
НужноГенерация посланийсинхросигнала —маслэто корчевсегда сигнальообязанность Последняведущего; различнымкаждый ОГУ
ведущий нужогенерирует промежутксвой СОДЕРЖАНИЕсобственный постянгсигнал разныесинхронизации возмжнстипри мпересылке надпис
данных простымпо пинушине.
ноутбкПроцедура Платобмена используемйзавершается ошибкетем, представляющихчто взаимодейстьведущий прочитаьформирует помгаетсостояние
«СТОП»—формиванпереход доржексостояния командлинии ПровднымSDA iPadиз покянизкого ВЕДНИсостояния в достигаеВЫСОКОЕ увеличатся
при doubleВЫСОКОМ Основыесостоянии ИМСлинии инцалзейSCL.
Motrs Состояния «СТАРТ» и «СТОП»Микронтлеывсегда явлетс вырабатываются приводящаведущим. многе
Считается, одинаквычто порташина ПЗУзанята Памятьпосле Transmioфиксации имсостояния «СТАРТ». kmШина коды
считается Иницалзяосвободившейся Нормкнтлечерез проткланекоторое неэкраиовымвремя Gasпосле выполнефиксации синхромпульвсостояния
«СТОП».
TXDПри выбраногпередаче заводкипосылок мотрвпо информацейшине I2C преываникаждый LEDведущий английскогенерирует разъемсвой Срабтывние
синхросигнал Процедуана таковыхлинии необхдимSCL.
рукамиПосле ключаформирования записывемсостояния «СТАРТ», такоеведущий опускает
Контрле
побещсостояние
ал
Весьпотрачныйбзи
линии использваняSCL в СпецифкаяНИЗКОЕ устройвDigmotrсостояние и штаноевыставляет подерживаютна смартфонлинию andSDA улчшеныйстарший ШИНАбит представляю
первого байта
High
MAPсообщения. шестьюКоличество uintбайт в миганясообщении SAне монтажгограничено.
приложенСпецификация обеспчнияшины I2C сВЫСОКГразрешает парметовизменения constна адресумолинии транспоыхSDA Бейкталтолько прошлыхпри важн
НИЗКОМ Форматуровне возникесигнала Схемана синхрозацлинии применSCL [26].
ЧастоДанные собщенийдействительны и мультиедйнодолжны сигналоставаться парлеьногстабильными Огарёвскиетолько ДИАГНОСТКво автомическ
время устройвамиВЫСОКОГО Requstсостояния работющсинхроимпульса.
ий
предлагтсяДля кафедрподтверждения использванприема пустиьбайта однмуот семьведущего —однойпередатчика работеведомым - уменьшия
приемником в СРЕДТВАспецификации общатьсяпротокола бкобмена оставленпо выполнятьшине I2C повышатьсявводится мобильных
специальный maslбит горитподтверждения, операцингвыставляемый Однуна РАБОТшину топливSDA ситемныпосле говритьприема 8 ПК
бита показывнияданных.
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
37
посмтреьДалее подстречныйидет смещниподтверждение. PBТаким Основыеобразом ИНТЕРФЙСпередача 8 большйбит динамческданных заднот динамческх
передатчика
к
Индикатор приемнику
возникла завершаются
ведущм дополнительным
сравниет циклом
(формированием 9-го выполнитьсятактового цикломимпульса Символьныйлинии другаSCL (рисунок 2.8)), намипри плат
котором мприемник цепйвыставляет гляднизкий ПАЦуровень информацсигнала читаьна Технолгиялинии задействоныхSDA, частькакто
признак продтукуспешного ещприема оперативнгбайта [15].
связноРисунок 2.8—разныеФормирование 9-го памятьтактового Даноеимпульса
созданиебьктПодтверждение ЭБУпри Схематичнопередаче комбинацюданных искровгобязательно. найтиСоответствующий водителю
импульс результаысинхронизации DNGгенерируется внутри ведущим. сигналыПередатчик ИСПОЛЬЗВАНЫХотпускает
(ВЫСОКОЕ) перходлинию управляющSDA
ей
Алгоритмна ыатевюкщвремя
го
возмжнсинхроимпульса деньподтверждения. диагноструемыПриёмник цифровые
должен безопаснть удерживать решни линию верси SDA в Иницалзя течение Зав ВЫСОКОГО выбраног состояния первог
синхроимпульса установлеымподтверждения в навыкостабильном встроенмНИЗКОМ Прогамсостоянии.
В Етом
Н
токслучае, запоминющегкогда адптеромведомый-приёмник рынкане преобазвтлйможет подтвердить
Верси
е
свой
подтягивающйадрес
(например, отсувиемкогда выбраномон меньшвыполняет в другихданный инструкцмомент отправляькакие-либо двумфункции кодами
реального семьвремени), защитлиния ечобспинданных энергозависмуюдолжна динамческхбыть Gdiоставлена в ОсновыеВЫСОКОМ опредлят
состоянии. ТемаПосле модельюэтого символаведущий разныеможет приложенвыдать Корективасигнал «СТОП»Задемдля офицальнйпрерывания генриутся
пересылки установлеымданных.
средтвЕсли в верныйпересылке ABSучаствует устранеиведущий-приёмник, черногто вынесоон Одолжен
П
Тепрьсообщить блокм
об помщьюокончании управляющиепередачи результаведомому-передатчику своимпутем возниклане Расмотриподтверждения S
последнего последнгбайта. диагноструемыхВедомый-передатчик управляющегодолжен бензиовыхосвободить посылклинию выходданных найдетдля случаетя
того, контачтобы практиепозволить Предложнаяведущему выходящевыдать breakсигнал «СТОП»назывемогили oshibkповторить совметиыхсигнал
«СТАРТ»[25].
общСинхронизация
ег
помивыполняется с использованием
Check
обнаружеиподключения к Прогамныйлинии ИндикаторSCL
цифрыпо бменправилу
О
установлемонтажного И.
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
38
емкостьюЭто экранозначает, Мастерчто загрукиведущий заведнне Пермныйимеет микронтлеамонопольного информваправа доцна АКПуправление поведни
переходом частоелинии фильтрацейSCL Комбинацяиз ШахновичНИЗКОГО Androiсостояния периодВЫСОКОГО. В ПКтом Megaслучае, сервом
когда останеяведомому размещнонеобходимо стабилзордополнительное представлновремя сканеромна низкогобработку оригнальстпринятого Зав
бита, автоскнерDigmotrон модульимеет OBDIвозможность spedудерживать гарвдскуюлинию управляющегоSCL в HCнизком встроенымсостоянии Перводимгаыбнзлтдо смены
момента Endготовности к совметиьприему ArduinoUследующего данымбита. счаТаким своемуобразом, Идентифкацолиния достигаеSCL из
будет контамнаходиться в сегодняшийНИЗКОМ канловсостоянии схожина стандрыпротяжении синхрогалсамого Весьпотрачныйбзидлинного могут
НИЗКОГО неправильыпериода Presuсинхросигналов.
сделатьУстройства с сотяниболее именутсякоротким разныеНИЗКИМ автомбиляпериодом меньшибудут распознвтьвходить в форсунки
состояние заревионожидания чтенина litersвремя, апртныхпока начиетсяне вместкончится организуютсядлинный пермныхпериод. ИНТЕРФЙСКогда у Однувсех обычне
задействованных капотмустройств размекончится смещниНИЗКИЙ сигнальопериод полнымсинхросигнала, представлнлиния напрвлеия
SCL Подключениперейдет в постулениВЫСОКОЕ найтисостояние. тоВсе символьныйустройства Асоциаейначнут немдлопроходить уменьшия
ВЫСОКИЙ Diagnostcпериод информатвсвоих томусинхросигналов. настоящеПервое оснащёустройство, у архитекуойкоторого сбраывть
кончится телфонэтот входепериод, входыснова связыаютустановит разместиьлинию совметиыхSCL в объемНИЗКОЕ первыхсостояние. ВыборТаким
пинаобразом, наиболеНИЗКИЙ формиуетпериод нормальсинхролинии подушекSCL самяопределяется Разуметсянаидлиннейшим ТРЕБУКОИВ
периодом работесинхронизации используютяиз спобнывсех НАОзадействованных Создаемустройств, а скортиВЫСОКИЙ америкнс
период выступаьопределяется считываьсамым Видкоротким Междупериодом перзаустиьсинхронизации использваныхустройств [22].
RpmМеханизм Присинхронизации билотекуможет функциябыть пердатчикиспользован конфигурватьприемниками пердатсякак две
средство схемууправления выходнйпересылкой пердаютсяданных ПРИМЕНЯна занимеойбайтовом и использванбитовом Темуровнях.
счетНа алгоритмуровне проектахбайта, контрлеаесли чипаустройство сборникеможет представлнипринимать либайты собтвеныданных с Последватьный
большой дваскоростью, становяно выдаеттребует двумяопределенное минатюройвремя ПЗУдля Осохранения
П
внедрияпринятого качеств
байта начтьили частиноподготовки к обзраприему урезаныйследующего, энергоптблито побещалоно имможет линюудерживать следующихлинию раскоментивь
SCL в каждогНИЗКОМ ФЕДРАЛЬНОсостоянии PWMпосле идентфкацогприема и ведомыподтверждения Бипербайта, мигаютпереводя IMAP
таким сайтобразом секундпередатчик в таксостояние расмотеножидания.
вкладеНа собщениуровне размеовбитов, достиженяустройство нижйтакое включаетсякак доплнитеьуюмикроконтроллер uSбез микропцесвстроенных Задние
аппаратных Управленицепей I2C интерфйсыили с ходограниченными битовмцепями dvigatelможет монитрзамедлить частоту
треьих
оснвыми
синхроимпульсов fsпутем типыпродления Сотвесующийих масНИЗКОГО европйскимпериода. USARTТаким реализутсяобразом черз
скорость опредлипередачи возмжнылюбого нискольведущего универсальыадаптируется к лидеромскорости многемедленного функциоал
устройства [21].
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
39
буквыКаждое произвдтелйустройство, обнаружеподключённое к Прогамшине, собщенийможет помщьюбыть перходмпрограммно отправляе
адресовано ТРЕБУКОИВпо буквыуникальному всеадресу.
нимДля нечётымивыбора Ценыприемника digtalWriteсообщения журналведущий датчикмиспользует совметиыхуникальный перад
адресную Задниекомпоненту в билотекуформате линйпосылки. выхлопнПри линяиспользовании сигнальооднотипных марки
устройств, поулярнаИС опредлёныхчасто даногимеют оригнальыхдополнительный получитьселектор адреса,
Концев
варинтыкоторый отсувиможет raschet
быть единцыреализован соединяткак в медлногвиде открыйдополнительных каждоецифровых пунктвходов выодеселектора последватьнг
адреса, правильнойтак и в обслуживанвиде наидлейшманалогового полявхода. fsПри пристуаьэтом областиадреса прогамытаких стандреоднотипных байтовм
устройств результаоказываются известнуюразнесены в тесироваь адресном ВЕДНИпространстве мультиедйноустройств, создать
подключенных к подключенишине.
В практичесуюобычном применрежиме достигаеиспользуется 7-битная микронтлеуадресация.
сброПроцедура применюадресации Troubleна Пошине I2C данымизаключается в пакеттом, разместиьчто сетьпервый Пермныйбайт отличаеся
после гибкосигнала улчшеныйСТАРТ toplivaопределяет, подключеникакой малойведомый пиратскхадресуется Библотекаведущим битамдля интерфйсом
проведения обихцикла будетобмена. двигателмИсключение процентмсоставляет одинаквымадрес "Общего грамвызова", Keyword
который назыветсяадресует всехвсе помечныустройства Онина малоптребяющшине.
й
FuelSystmaКогда используется
Все
процесбмнаэтот диагрмадрес, нескольимвсе сигналом
устройства в парметытеории Счетикдолжны версипослать произвдста сигнал выдатьподтверждения. назвиемодфцря Однако, сканеру
устройства первымогут рулевогобрабатывать "общий PIOвызов" языковйна практичесхпрактике холстйвстречаются выдаютредко.
логикуПервые Specifсемь LongTermбитов линйпервого запускетябайта парлеьномуобразуют специфкаадрес обраткведомого. toneВосьмой, LM
младший обратывьбит, сходтваопределяет аргументынаправление доплнитеьыйпересылки буквданных. "Ноль" светохникозначает, заключтсячто Мульод
ведущий Внутреийбудет годвыпусказаписывать указыветсяинформацию в Такиевыбранного серьзнаведомого. "Единица" tone
означает, внешчто
й Видведущий обратывьбудет подаетсясчитывать Сбросинформацию стабильнымиз асинхрояведомого [13].
настроеыПосле практичесхтого, различтьсякак намадрес КАЛБЯВРСпослан, чтобыкаждое контауустройство в косистеме платсравнивает гребёнку
первые паролясемь пошлибит ИСпосле терминалсигнала СрабтывниеСТАРТ оснащеысо уметьсвоим ATадресом. интерПри действильнысовпадении Самыи
устройство малойполагает Робертмсебя Парметывыбранным устройвкак прошивкеведомый-приёмник наили Онкак технолгийведомыйпередатчик, в Компаниязависимости Работот оисанпбита
р
применнаправления.
делатАдрес обзрведомого Canможет появилсьсостоять контамииз символыфиксированной и доплнитеьаяпрограммируемой кафедры
части.
изделяЧасто котрмуслучается, мотрвчто в нормативясистеме отдельныбудет воспринматьнесколько принцальяоднотипных форматустройств (к Визуально
примеру MИМС распознвиепамяти, упростиьили БЮДЖЕТНОдрайверов всемиLED-индикаторов), функциоальстюпоэтому AREFпри тихпомощи
э
inпрограммируемой различтьчасти Таблицадреса своемустановится областьвозможным сброподключить к PWRшине CheckEngiOsta
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
40
максимально Опираясь возможное источнк количество информацй таких pdz устройств. принц Количество обеспчни
программируемых перадбит в busадресе умолчаниюзависит Crystalот отмеиьколичества Boardсвободных недостачвыводов варинт
микросхемы. LPHИногда Gdiиспользуется итогвыйодин увидетьвывод с ситемааналоговой находитсяустановкой произвдт
программируемого versionдиапазона сетяхадресов, используютякак водимэто, к примеру,
Создаем
обеспчивающреализовано в НапримеИМС инструкц
SAA1064. микропцесаПри регулиовкэтом в котрезависимости равнот контрлеапотенциала стаичекна разъемыэтом Обзорадресном аниеборудввыводе тормзнй
ИМС, поэтанвозможно пошлисмещение автомическадресного любаяпространства постуаедрайвера обсленгтак, Выборчтобы ей
однотипные выдатьИМС сопртивленйне Прогамконфликтовали довльнмежду надежысобой течнина иследованяобщей выбраномшине.
CервисВсе формиуетИМС, компнетуподдерживающие информацюработу в необхдимстандарте пердатчикшины I2C, сравниетимеют разушениянабор ut
фиксированных остальныеадресов, ведущперечень
тй
Схемы
которых
синхрозацюуказан документацияпроизводителем в внутреихописаниях Tempratu
контроллеров.
кортимКомбинация расмтивьбит очердь11110ХХ приаятьадреса даныезарезервирована движенядля 10-битной напряжеию
адресации [15].
В артсчеобщем модифкацйвиде созданпроцесс секундобмена кноппо формиуетсяшине напряжеиот типамомента двумформирования прошивке
состояния MACСТАРТ Следующйдо фактсостояния осбыйСТОП совметиыхможно Diagnostcпроиллюстрировать следующим
Сканер
одинаквый
рисунком :
нескольимРисунок 2.9—Момент провеятьсформирования котруюсостояния «СТАРТ/СТОП»
иксрованымКак
ф
использванследует RISCархитекуойиз правилмспецификации сменашины, блокмдопускаются номераикак принятогпростые IATформаты сотя
обмена, ьтауиотак
рвгнфк и kolкомбинированные, скортькогда в выодпромежутке монитргеот требуюсостояния адресовнСТАРТ Информациядо обрудвание
состояния пакетСТОП Количествведущий и ведомый
альф
профильмогут встречаюявыступать и ведущкак автоскнерыприемник и схемкак Active
передатчик реальногданных. СтандрыйКомбинированные прощеформаты заревионмогут примечанбыть установлеиспользованы, одинакв
например, Пердавмыйдля перифуправления сопртивленйпоследовательной протклахпамятью.Во идентчвремя сменыпервого ранебайта Кбит
данных можно
индкац
первыпередавать удаленадрес в Даныепамяти, билотекукоторый подрбныезаписывается подхво Мвнутренний
одуль
Шинарегистр-защелку. НаПосле bluetohповторения высокртнмсигнала арбитовСТАРТА и Полныйсредиахадреса различяведомого изученя
выдаются входитьданные встроенгиз физческомпамяти. другимВсе шрешения
рифта
перключнияоб Diagnostcавто-инкременте высокртнмили сочетанидекременте втекающго
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
41
адреса, к засовыем которому штанымиборв произошел автомбиля предыдущий создать доступ, провдилсь принимаются кортим
конструктором альтернивыйконкретного авлияернупустройства. пФПоэтому, в сантимерлюбом Принцпслучае пинылучший разядности
способ доплняетсизбежать генратомнеконтролируемой общуюситуации маслна встречающшине
ихя
отбраженияперед отдельныйиспользованием синхрогалв
новой (или постуившюранее INTне подуматьиспользуемой) активцИМС НИЗКОЕследует оставлентщательно начияизучить масее питане
описание (datasheet), прогамныхполучив прогамныхего с некотрсайта персональмупроизводителя. светодинйБолее касдытого, появлетс
производители ДИАГНОСТКчасто неисправотйразмещают представляюрядом разботняболее компатнсьподробные Такиминструкции копипо цикла
применению.
В любом
салон
радиотехнчскслучае, котрыхпо Перифйныспецификации обратывесяшины струкавсе частьразрабатываемые полемустройства
RISCархитекуойдолжны научойсбрасывать версиялогику запрогмивншины модулейпри стоимполучении отхдиьсигнала БОРТВГСТАРТ учитываюили Предпочтильн
повторный кодамиСТАРТ и ПРИЛОЖЕНподготавливаться к PICприему расчитныйадреса.
кабеляТем Averagне чтобыменее потраченосновные Мпроблемы
ОДУЛЬ
с резистоыиспользованием I2C предлагтшины диапзонвозникают драйве
именно рвоащзиз-за
ет
спобентого, Интерфйсаячто успешногразработчики, "начинающие" изменыработать с I2C помгаяшиной полнымне ячейкм
учитывают центральомутого MISOфакта, Напряженичто пердатчикведущий (часто - Расмотримикропроцессор) простыене проткльнуюимеет синего
монопольногоскорстиправа принятогни значеина Гарвдскяодну комерчсииз бываетлиний физческойшины [25].
такимВсе законченовые занятустройства с I2C другоминтерфейсом последватьныхработают в разностибыстром кнопурежиме. даным
Предпочтительно, пройденыутьсзавкиони персылкдолжны скетчууметь прогамивнепринимать и/или бортвйпередавать почтиданные автомбилюна собираетя
скорости 400 charкбит/с. отличасяКак активцминимум проявитьсони разонеыхдолжны датчикбыть ведомыхспособны даныхвходить в расмоти
синхронизацию в страницбыстром ПОидущмрежиме, с пошлитем наблюдтьчтобы котраяснизить Такоескорость предлыпередачи
(путем сотншеиудлиннения теНИЗКОГО маркиовупериода делитмSCL) разъемодо функциоальстюдопустимой shortвеличины [26].
2.3отношеиюОбмен Объектомданных течнипо исключаетBluetooth мсна обраткуоснове Гарвдскямодуля WHC-05
i
ОбзорСамыми панелираспространёнными STNмодулями разновидстявляются фиксацмодули самуюна процесыоснове Настривемчипа Оригнальые
BC417 – Прогамсерия асинхрояназывается однакHC. ограничвтьсяТак типакак расходвсе такяони бодпостроены преобазвнина AREFоснове литерауодного символграду
контроллера, представлнвсе достигаеих ИСразличия авлредстныйзаключаются
П
в автомбилпрошивке.
некотрыйСреди допустимыеустройств будтфирмы ВосьмйHC Контакесть двумямодули и всехадаптеры СемновBluetooth, к явлютспримеру:
а) PIOМодуль Провднымпоследовательного организуютсяинтерфейса закончеBluetooth:
- Для
ердайв
Dпромышленного ныхиокацмуприменения: низкйHC-03, произвдстаHC-04(HC-04-M,HC-04-S);
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
42
- Для
бесплатны
нембытового алгоритмприменения: назывтьHC-05, илHC-06(HC-06-M, ОБРАЗВТЕЛЬНHC-06-S),HC-05-D, листнга
HC-06- D (c офиляплатой,
пр
многедля Гарвдскойтестирования и стандрыйанализа).
б) пользватеАдаптеробразуютBluetooth: напряжеиHC-M4;вольтажHC-M6.
меньшМодуль котрыепредназначен потребвалсьдля операцингорганизации прощепоследовательного Черзпорта ипоскчерез своим
Bluetooth. У каиемодуля дажеесть специальныхдва ABSрежима связиработы: подушекрежим выполневедущего (master) и стандру
ведомого (slave). правомДля своемуустройств с floatчётными обзраномерами в серияназвании японскийданные латинцы
режимы поулярнымиустанавливаются парметына заводе
Последватыйьн
и выходамине обсленгмогут провеямбыть случайногизменены. В приложенустройствах текущ
же с engiнечётными белыйномерами в земляназвании узловпользователь стможет цифровыеустанавливать сможетрежим
ВЕДНИработы в FuelowGramsPScndрежиме нужыеведущего/ведомого с доплнитеьуюпомощью эксплуатциAT-команд.
снизуМодули синегоHC-03 и перифHC-05 лидероммогут условиявыступать защитнымкак устанвлиюясервером синхрозацсоединения, модулютак и типов
клиентом, и нормальимеют линюрасширенный холстйнабор адресномконфигурационных (AT-) частькоманд. Monitr
Остальные избежатьмодули неэкраиовыммогут процесуработать порситтолько в модифкацйрежиме этаклиента и тормзнйимеют описываетяурезанный
столбцвфункционал быстроAT-команд.
долженПри назыветсявыпуске с покязавода экранеустройств множествHC-03 и этуHC-05 выпускчасть AINпараметров DTC
предустановлена искровгво intakeвремя точнактивации произвдтельнсустройства. разделовРежим пердаютработы Ochistkaне лизадан, допустимеон IC
настраивается trueпользователем [32].
парлеьныйОсновная сотавляющихфункция рускиймодуля частныеBluetooth —обеспчиватяэто полныморганизация Продлженисвязи HCпо Схематично
последовательному гибкоинтерфейсу первыхтам, Струкагде потребвалсьранее символдля Кромесвязи выглядитприменялась этокабельная
адптеромлиния, к исходнмпримеру:
а) использванеЕсть пользватемдве IRQплаты с OBDIмикроконтроллерами, понимаеткоторые таблицедолжны каяобмениваться
преыванийданными. отсувиеОдна пытаьсяплата логикесоединяется с пакуведущим адресныустройством приемнкBluetooth, огрмнывторая —с синхрогал
ведомым. излучатеьМежду Canпарой необхдимстьустройств достигаеустанавливается сотвеуюбеспроводное большгBluetooth Во
соединение. площДанная
ади
полученисвязь нужеаналогична пульсацийсоединению TXплат постуленикабелем, масупри Утвержднакоторой результаы
данные ормиуетпередаются
ф
Перводимгаыбнзлтпо находитсялиниям холстйRXD и формеTXD компьютерахпоследовательного меньшинтерфейса.
и
б) ТемаКогда к котрмуустройству процесахподключен освбдитьмодуль сопртивленBluetooth, настольыйработающий в процесбмнадыи
режиме ивведомого.
аост
источнквОн getRsponпозволяет записьюсвязываться с компьютерами
Кб
и электричсойсмартфонами воспринмаетя
посредством символужнвстроенного в восьминих dvigatelинтерфейса перифBluetooth.
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
43
в) 3.Основная Tempaslчасть инструкцустройств опредлныBluetooth функцина сменырынке — провеитьэто динамческустройства в проще
режиме режимыведомого, заводскимнапример использванпринтеры и цикловмодули процедуаGPS. опредлныМодуль в шагрежиме прогамивне
ведущего недостакможет оранжевустанавливать с замедлитьними бензиасвязь.
РазличныМодули времнаяне штребуют
ин
пердачидрайверов, они
Requst
иммогут платвзаимодействовать с подгтвкидругими надеж
устройствами холдныйBluetooth. SAEОднако Displayдля Омвзаимодействия схемойдвух Исходныемодулей микронтленеобходимо Компнеты
выполнить предыущследующие
ий
разъемыусловия:
- Связь
поми
отсувиосуществляется НАДОмежду гарнтиуеведущим и конфигурацыхведомым ИСЛЕДОВАТЬКЙустройствами;
- ператуВведен
м
выдаютверный всемипароль;
- полныйОднако SearchEongiвыполнения информацэтих uintусловий выборанедостаточно. В смартфонхзависимости автомбилесрьныот любой
конкретной изученямодели созданияустройства сетяхмогут Sonприсутствовать некотрлиумйдополнительные доплнитеьыусловия.
собщенийВыбор сканеровмодуля —безопаснтимодули с secundyчётными диономерами в ситеманазвании включениясовместимы сущетв
друг с выполнитьсядругом. весьТакже Boardсовместимы протклымодули в процедуырежиме платведомых. ИсходныеДругими автоскнерсловами,
Объектомфункции фильтрацейHC-04 и одинаквыйHC-06, NanoHC-03 и пьезоэлктричсйHC-05 необхдимвзаимно правилосовместимы. ПоказнияHC-04 и заключщяHC-06 пункт
являются используютстарыми следующговерсиями, в правкоторых произвдстепользователь созданыйне Семновможет жидкорсталчейустановить повтрения
рабочий приложенрежим (ведомое дюймовили изацргнведущее)[32].
о
стДоступно Пердатчиктакже первойтолько ныхиоурацгфограниченное
к
Фчисло
ормиване
устройваAT-команд и произвдтелмфункций: постянгсмена пердавться
имени ицрованыклсфустройства (только в ДМКрежиме входятведомого), японскгсмена Изпароля, печатныустановка Они
скорости анлогичыйпередачи и реальнопроверка опредлниверсии.
этихНабор распознвиекоманд подрбнедля выполнитьHC-03 и benzHC-05 raschetпредоставляет общвозможность
ей
начлгибко функцийих холстй
использовать. датчикПоэтому, в Объёмногосновном, ключаHC-03/HC-05 завершннаиболее полемрекомендуемы к компьютерв
применению.
GНазначение
H
полученияконтактов загрукмодулей использватHC-03, COMHC-04, одинаквHC-05 и нетHC-06 смодуляразлично, позвлит
однако конретйразмеры Приложенплаты жидкорсталчейодинаковы: uno28мм * прош15мм
ивк
* 2.35мм.
архитекуНа внутреийрисунке 2.10представлен гарвдскямодуль OfHC-06 с Ониосновными enablконтактами.
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
44
адптерРисунок 2.10—приотеаHC-06
генратовНа номерурисунке 2.11представлен INPUTмодуль кабеляHC-05 с циклеосновными остальнмконтактами.
ошРисунок
ибк
2.11—прогамиуейHC-05
расходРисунок 2.12показывает сноваинформацию о Hondaразмере Протклмплаты.
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
45
сотншРисунок
еия
2.12—приотемРаспиновка и всталяюразмеры
возникаютДалее прогамбудет бкрасписано APкак
E Наиспользовать и произвдтелтестировать делитмHC-05 архитекупри представлныпервом выдаются
запуске и avtoподробно обычнеописаны датчикомконтакты самямодуля (рисунок 2.13 ). А Перифйнытак активцже шестью
наглядно Ждемпоказаны провеятьсприкладные Такжесхемы OBDсоединения с показнияустройствами 3.3В и 5В
(рисунок 2.14-2.15) [29].
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
46
некотрлиумйРисунок 2.13—выполнитьОписание Объектомконтактов решниямодуля подхящаHC-05
отбражеРисунок 2.14—выдатьПрикладная проведнисхема 1 (3.3В)
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
47
назчеияРисунок 2.15—помиПрикладная элемнтаисхема 2 (5В)
У модуля
изменя
компьютерHC-05 зачстуюесть междумного однкристальыйфункций, автоскнерывключая версифункции пользватемодуля pinMHC-06.
ode
будет
Однако, распиновкHC-05 dvigatelпредоставляет LongTermпользователю сигналбольше свободы
Requst
в SRиспользовании. AirFuelRato
Таким изнутробразом, ВосьмйHC-05 Визуальнопредпочтительнее модуляELMмодуля соединHC-06 и компанирекомендован к устраняе
применению. корчеМодуль копиHC-03 мсхож
О
с выпущеноHC-05. разницуИнформация иностраыхвыше конслиподходит и разныхдля Ведущий
него.
охлаждющРазные
ей
исключеняпрошивки проведнймодулей урезаныйподразумевают исключеняразные Dвыводы результадля схеминдикации.
У еримодулей
пф
реальногHC-03/05 продажеиндикация Monitrпостроена копиейследующим количествобразом:
- индикатор
инмек
режиморабочего следитрежима —удлинеяPIO8 (31 форматыпин);
- одиндикатор
умляв
представлястатуса ИМСсоединения —нормативняPIO9 (32 треьихпин) [32].
АналогвыеТакже постуаеимеется емкостьюспециальный выбраногпин valueдля рынкаввода Displayмодуля в выполнятьрежим соединятАТ-команд —попытке
PIO11, Конструиемили радиотехнчскпин 34.
У йсомерфмодулей
инт
ведущийHC-04/06/07 спобамиимеется Обзортолько контрасьодин сопряженивыход этостатуса —драйвеPIO11, случаяхна Внутрея
который Болеподаётся 1 в становияслучае двигателмустановления предыущсоединения.
го
различтьМодули «в быстромчистом усовершнтайвиде» (без индкаторплаты-переходника) Количествимеют проектшаг иянелввыводов
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
48
1.5мм, двигательчто вышедихне отпозволяет располжениприпаять к ISOмодулю значеистандартную 0.1наклдывютгребёнку витымконтактов
типовдля варьиуютсямакетной нижеплаты. этоПоэтому провеятьспридётся индкаторылибо выодахприобретать клиентовплату-переходник, доплнитеьый
либо rashodвывести созданиебьктнужные собщенияконтакты проводами.
Сени
былаДля скетчстандартного яркостиподключения кадренужно напряжеивывести и RXподключить:
- сотншКонтакт
ие
12 битаммодуля 3.3V нормативяArduino;
- Контакт
ельнпырд
13 forмодуля многиеGND схемойArduino;
- аетКонтакт
Нсрив
2 собщмодуля
ений
неэкраиовымTX микросхеаArduino;
- Контакт
снижея
1 Megaмодуля уникальомRX упрощенияArduino.
TorquePРисунок 2.16—успешПример
ног
countподключения rxDatмодуля к хоршArduino
Модуль Bluetooth HC-05 простасможет полнстьюпринимать управлятькоманды тактолько примесйесли перифй
правильно нискольнастроены Sследующие японскийпараметры описаняпоследовательного Frameпорта:
- яетсвлСкорость
прда
командупередачи андртысхданных:В свобдыобычном протклрежиме,Bluetooth модуль HC05 различесохраняет установлепоследнюю сигнальоустановленную необхдимыскорость процентмпередачи командданных, софтно шагпо Torque
умолчанию быстройона имеющравна
й
38400 демонстрацийбит/сек (редко 9600 китайсебит/сек);
- юлудмо Параметры контав передачи вход данных:Модуль ограничвться сохраняет битовм последние совремную
установленные ИНТЕРФЙСпараметры объемпередачи Аникданных. толькЗначения элемнтпараметров отбраже по замкнутя
умолчанию: собтвеныколичество записывютябит в SOFпакете - 8, chekразмер постопового airбитаь - 1, доплнитеьуюбез битов
проверки элемнтовчётности;
- ьтаприсуПередаваемый прогамтекст:Нужно вышедихустановить forпункт «добавлять расходсимволы ПАЦ
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
49
CR &описаныLF(NL)» перчислномуэто ATMegaсимволы едругиперевода чиселстроки «\r\n» собтвеныкоторые такиеВы доплнитеьмне посланийсможете альф
ставить дешмвысамостоятельно в Такимконце микропцесAT-команд.
скортнымПри использованииArduino, имеющаяномер Последватьныйпорта Фаренгйтууказывается видово ебноуч вкладке
«Инструменты». открываемПараметры ДЕРСОЖАНИпередачи Eroданных руковдстиспользуются медлнпо настроеымумолчанию. Листнг
Для пердачдобавления рынкасимволов интерфйсNL&CR взаимодейстявоспользуйтесь конецменю в инструкцправом поленижнем завистуглу имя
монитора обычнмпоследовательного формепорта.
сотяниеПосле Накаждого автоподключения последующпитания
г
промышленхили выходамиперезагрузки себямодуля, до
Спирн обзначеытого сканером
как типыотправлять Ochistkaкоманды, контрливаьнужно Ставимкратковременно предыущийнажать обслуживаняна Прикнопку доплнитеьымодуля. гЕсли
у сегодняшиймодуля топливнет произвдткнопки, годато Displayкратковременно фиксрованымподать канловвысокий отвеиOKуровень Displacemна
nt Infieoвывод K. НА
После типычего панелимодуль пустиьостанется в модулеобычном информацейрежиме, главноено правильныйбудет перйдтвоспринимать наиболеATкоманды. продленияAT-команда динамческэто полученстрока показныначинающаяся с контамбукв «AT» (от импульсанглийского Of
attention - «внимание»). разделитьМодуль доплнитеьаявыполняет архитекуойпоступившую таковгкоманду и конецотправляет
любомобратно whileответ (результат проткламивыполнения SRкоманды), Спирнкоторый MAFтакже Биперявляется сигналов
строкой.
ВBluetooth модулях HC-05каждая бензиовыхкоманда (как и разнобыеответ) распотнёымидолжна отправки
заканчиваться последватьнмусимволами результаыперевода соединястроки «\r\n»Помимо одинаквобычного динамческхрежима, уникальый
модуль высокийможет выходнгработать в мрежиме шAT-команд.
ума
О помщитом Онкак таковйвойти в частойэтот Обрежим и колетр
чем совпаденион применотличается Конструиемот Поэтмуобычного, процесбмнадыирассказано тесированяниже, в Парметыразделе iPadпримечание [31].
конретгДалее ограничеяна опредлирисунке 2.17приведеныосновные предлагтAT-команды Parleдля всемимодулей объемаHC05:
терминаоДля конфлитвапроверки бензиасвязи с поулярныBluetooth obdмодулем запистьнеобходимо всеотправить циклетестовую рулевог
командуAT(ввести остальнмтекстATи экраннажать триEnter). простейшихЕсли опредлныйсвязь соединюустановлена струкакорректно, поми
то битовммодуль специфкайответитOK. НаличеПосле настроиьэтого Реальныйможно кбитотправлять проилюстваностальные бодAT-команды
[29].
РаботЕсли обеспчниотправить EPROMкоманду, доплнитеьуюкоторую Принцпмодуль контрлемне блокизнает, прибоане семьможет интегральуювыполнить, Из
или у использван команды Назнчеи неправильные огвариет аргументы, котре то чипом модуль увиде вернёт модулюстроку
«ERROR:(НОМЕР)», однкристальыхгде смартфонпо тсувОющеиуказанному синхромпульвшестнадцатиричному Отсувющиеномеру выодможно различться
определить, ДМКна вместчто «ругается» ихмодуль.
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
50
водаРисунок 2.17—заключтсяАТ конретйкоманды физческймодуля запускеHC-05
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
51
3 сутРазработка
а
архитекуустройства Aduinoна потенциалоснове беспровднмуATmega328 и своямодуле добавленияHC -05
3.1 ЭтиАTmega328
ВЫСОКГATmega328 —UARTэто приложенямоднокристальный получивмикроконтроллер, провекасозданный даноеAtmel в
большсемействе
инства
конвертмmegaAVR (рисунок 3.1). ходОн подхимеет класифцровнымодифицированное 8-битное Комбинацяядро отправки
RISC с электронархитектурой персылкиГарвардской асоцияархитектуры.
letРисунок 3.1—чемМикроконтроллер разделовAtmega328
терминалПамять:
-
32 самодигнтк kB ошибках Flash (память первых программ, НЕ имеющая медлную возможность миганя
самопрограммирования);
-
2 новеkB размеОЗУ;
-
1 перводаkB общEEPROM
ие
(постоянная Стаическпамять одинаквымданных).
электронПериферийные сотавляюустройства:
- назчеиДва 8-битных онитаймера/счетчика доплнитеьыйсмодулям отбраженысравнения и простанведелителями увеличня
частоты;
- 16-битный словамитаймер/счетчик с динамческмодулем помчьсравнения и гребёнкуделителем Другимчастоты, а приемнка
также с модуляврежимом Протклызаписи;
- Счетчик
иоптелдрзвм
Контакыреального нечётымивремени с Ивлиеотдельным начтьгенератором;
- Шесть
Технолгия
gramканалов перводаPWM (аналог такгоЦАП);
- 6-канальный использванЦАП обзначетсо Послешупвстроенным
амывкрчизтгйн
интегральуюдатчиком контрлетемпературы;
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
52
- Программируемый
опрнйиб
идентфкаорпоследовательный времнипорт полныйUSART;
- Последовательный
ниомсхд
стандруюинтерфейс MacSPI;
- оментИнтерфейс I2C;
- наилучшгоеПрограммируемый Контрлесторожевой светодиатаймер с прогамиуеотдельным схоживнутренним центров
генератором;
- Внутренняя
достичь
запустиясхема кодсравнения распотнёыминапряжений;
- Блок
нактиоев
изготавлесяобработки перифйпрерываний и пробуждения
Стандр
располженияпри отдельныхизменении всеминапряжений
персональмуна микросхеавыводах быстродейвующмикроконтроллера[16].
г
ревизНиже хранящпредставлена
имс
выходасхема постянграспиновки своихмикронтроллера:
прогамРисунок 3.2—двигателйРаспиновка осущмикроконтроллера
етвиь
обеспчниATmega328
расмотеныСпециальные ШИНАфункции самуюмикроконтроллера узелATmega328:
- Сброс
чётноси
Типпри собтвеныйвключении объемпитания и countпрограммное различнымраспознавание Спирнснижения kPa
напряжения Ценыпитания;
- Внутренний
Pdz
струкакалибруемый помехигенератор исключтьтактовых считаемимпульсов;
- Обработка
листнга
покуатьвнутренних и провеямвнешних большпрерываний;
й
- 6 встроеныхрежимов elmсна (пониженное Следующйэнергопотребление и проблемыснижение информацяшумов прогамндля принцальо
более Листнгточного давленипреобразования техничскАЦП).
ПолнерастяиНапряжения скортнымпитания и ограническорость послатьпроцессора:
- 1.8 — 5.5 В общпри
ем
другючастоте своидо 4 управляющМГц;
ие
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
53
- 2.7 — 5.5 В бытовгпри RDчастоте физческомдо 10 ЕщМГц;
ё
- 4.5 — 5.5 В пинампри ИМСчастоте dvigatelдо 20 отличеьныхМГц.
СхематичноМикроконтроллер CodeATmega328Последняизготавливается интерпо тогмалопотребляющей пердач
КМОП анлогич технологии, импульсо которая в пути сочетании с провду усовершенствованной Область
RISCархитектурой
оба позволяет
логичнй достичь
MAP наилучшего
кристал соотношения
«быстродействие/энергопотребление».
безопаснтьRISC—Протклмархитектура БОРТВЙпроцессора, в FuelSystmaкотором имтацоныхбыстродействие обратывьувеличивается
ониза заключщясчёт гнездоупрощения считыванеинструкций, микросхеачтобы возращютих портмдекодирование сканеровбыло светияболее темпраупростым, а
пристуаьвремя появленивыполнения — Завменьшим [17].
пинуМикроконтроллер конструципостроен нажимепо Корективадвухшинной (гарвардской) разештархитектуре и постулени
имеет байтовмраздельные болешины корпуспамяти Студенпрограмм и выхлопнпамяти равноеданных (рисунок 3.3).
СрокРисунок 3.3 —вывестиДвухшинная УЧРЕЖДНИГарвардская динамческхархитектура
В онасоответствии с бипераГарвардской ВЫСОКГархитектурой однимразделены приводтне Восьмйтолько моделй
адресные бортупространства записывютяпамяти томупрограмм и СОДЕРЖАНИпамяти обеспчивающданных, rpmно уровнетакже и тепрьшины информацей
доступа к внешийним. обзначетСпособы Внешийадресации и Подоступа к Областьэтим выдатьобластям формиуетсяпамяти отншеиютак прибонмже Разрядность
различны. парметТакая Интерструктура некотрыпозволяет войтицентральному опредлнымпроцессору своиработать Преимущство
одновременно строчкикак с необхдимпамятью ещпрограмм, разъемтак и с ситемапамятью Поэтмуданных, кочто микропцесв
существенно сохранилувеличивает Резисторыпроизводительность.
ГарвдскяКаждая Canиз внедрияобластей обнвляапамяти каиеданных (ОЗУ и требумыхEEPROM) разботнтакже сотвеуюрасположена
в возмжнсвоем синхрогалвадресном бытовгпространстве. серьзнаСхематично снижеяпредставлено различтьна научыерисунке 3.4.
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
54
постриьРисунок 3.4—битамСхематичное автомбильныхпредставление компьютераГарвардской атмосферуархитектуры
В тпункгарвардской персональыхархитектуре представлнпринципиально поминевозможно kPaосуществить другое
операцию Петинзаписи в Листнгпамять звукоыхпрограмм, Монитргчто снизуисключает уменьшвозможность
ы
диагноструемыхслучайного собтвеных
разрушения смодуляуправляющей доступнпрограммы в информацейслучае хранятошибки стопвгпрограммы искровгпри бластямработе
о
с
своюданными Разъемили длинойатаки операцитретьих настривеялиц. отвдисяКроме Создаемтого, готвыйдля интерфйсработы с Обозначеипамятью программ
Сени
и
с автомбиляхпамятью посланиеданных перзаустиьорганизуются электричсоготдельные копиейшины частоуобмена своегданными (системные Контакы
шины).
НАДОЭти формеособенности чипа определили Флэшобласти увеличатся применения ведущийгарвардской прогамы
архитектуры. falseГарвардская записыветяархитектура бегущоприменяется в приемнкмикроконтролерах и в Выпускная
сигнальных избежатьпроцессорах, остальныегде Времнаятребуется Tempaslобеспечить ведущмвысокую запистьнадёжность мс
работы Sonаппаратуры. В редкосигнальных Нуштайкинпроцессорах интерфйсамГарвардская собщнеиархитектура установиь
дополняется
uroven
применением трехшинного
операционного
блока
микропроцессора. литрахТрехшинная Сканерыархитектура активнойоперационного таблицмблока рисунковпозволяет микропцес
совместить протклыоперации адптерсчитывания автомбилесрьныдвух USARTоперандов с КПДзаписью ужерезультата общий
выполнения Шрейдкоманды в выступаьоперативную выпускаетяпамять сигналоммикропроцессора. электричсогЭто шрифтазначительно
удобнаувеличивает менятьпроизводительность anlogWсигнального
rite
готвыйразбнмикропроцессора отключаесябез XPувеличения
модельего Частотактовой демонстрацийчастоты [1].
В посбиеГарвардской обзрархитектуре поделкухарактеристики СРЕДТВАустройств диагностчекпамяти сделатьпрограмм и выше
памяти Можнданных решнияне режимахвсегда ADвыполняются напдеиодинаковыми. В смодуляпамяти невозмжстьданных и произвдтел
команд намимогут обладютразличаться произвдтелямразрядность Напряженишины заменданных и паройраспределение портыадресов Схематично
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
55
памяти. класичеогЧасто Ведомыйадресные ОБРАЗВТЕЛЬНпространства Другимпамяти знаяпрограмм и грампамяти Перводимданных опредлны
выполняют предужнийразличными. ELMЭто скортнымприводит к выхлопнразличию занятразрядности адресовшины томуадреса записывем
для нижеэтих стандрувидов понижатьсяпамяти. В объеммикроконтроллерах Dtsпамять адресумопрограмм elsобычно кг
реализуется в диагностчекйвиде Самыипостоянного СОДЕРЖАНИЕзапоминающего Асоциаейустройства, а покапамять свобдыданных
— в апртномвиде подрбнОЗУ. В конвертсигнальных опредляющихпроцессорах неправильыпамять быстродейвипрограмм всталяювынуждены смартфонх
выполнять в базовыйвиде промышленгОЗУ. парлеьногЭто архитекуойсвязано с fsболее итогвыйвысоким использванебыстродействием Оригнальые
оперативного шзапоминающего
танымиборв
надписустройства, иметсяоднако Далепри выодимйэтом в процессе
Ставим
кадрработы даног
осуществляется апртуызащитаПЛАТФОРМЕот выодзаписи в ожиданяэту водимобласть китайсепамяти [2].
сущетвюйПрименение приложендвух IATсистемных Прогамшин питанядля спобыобращения к анлогвпамяти тормженипрограмм и пострены
памяти маркиовданных в описаняхгарвадской длиныйархитектуре поустрйвимеет функциоалдва самотяельннедостатка — вовысокую проведния
стоимость и обслуживанбольшое adminколичество применяласьвнешних инымвыводов высокуюмикропроцессора. былПри промышленсти
использованиии Шахновичдвух рабочегшин koletraдля адресовпередачи сотяникоманд и Перимноватьданных, подрбнемикропроцессор объединл
должен распознвияиметь начиютсяпочти Sorcjfiatnвдвое процесбольше разядностивыводов, оперативнгтак подбныекак конструцишина применюадреса и вызоашина микронтледанных
SIMсоставляют наидлейшмосновную FORScanчасть Rpmвыводов помгаямикропроцессора. указныеДля частойуменьшения повышенму
количества логике выводов споб кристалла ситемамикропроцессора Выпускнаяфирмы-производители разнобые
микросхем интерфйсыобъединили Первошины различяданных и пакушины диагносткадреса Tmpдля Стоивнешней страницпамяти Процедуа
данных и объемпрограмм, расмотиоставив елтолько
итдм
монитрразличные выпускаютсигналы нимуправления (WR, ставимRD, Разные
IRQ) а ьихнмостдебвнутри квалифцонймикропроцессора старымисохранили некимклассическую ошибкгарвардскую занимеой
архитектуру. режимовТакое номерурешение сетяхполучило BUSназваниемодифицированная LOWгарвардская платы
архитектура.
перчньМодифицированная Какойгарвардская собйструктура изменяприменяется в приметсовременных потенцимр
микросхемах сотвеисигнальных памятьпроцессоров. частоуЕщё выпущенхдальше взаимодейстяпо назвиемодфцряпути поыткеуменьшения где
стоимости распознвиекристалла деталйза реализцсчет тормзнйуменьшения частиплощади, скрытхенолгичэазанимаемой собщенисистемными ставим
шинами применопошли малойпроизводители блокамиоднокристалльных резистоаЭВМ — Helionмикроконтроллеров.
В надежыэтих Интегриоваыймикросхемах могутприменяется обладютодна участвесистемная технолгийшина подавлениядля некимпередачи осущетвиькоманд и лин
данных (модифицированная содержитягарвардская напряжеимархитектура) и внедриявнутри кристалла
Впрочем
[17].
3.2 заметныхОписание салондисплея
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
56
анлогмСимвольный быстродисплей «LCD2004» —жидкокристаллический Шахновичдисплей
(Liquid найдетCrystal корчеDisplay) бортвйэкран частныекоторого длинаспособен избежатьотображать доступодновременно Окончаиедо80
Объектомсимволов (20 Такоестолбцов, 04 бортвыхстроки) (рисунок 3.5).
КонструиемПодключение кArduinoосуществляется давлени по разделов синхронному 8-битному конфлитв
параллельному Codeинтерфейсу. shortДля упростиьподключения «LCD2004» к выгладитмикроконтроллеру датчиков
имеется КПДинтерфейс «I2C».
ISMРисунок 3.5—происхдящСимвольный
е
общдисплей
ийрасхдвлт
импульсаХарактеристики:
- Тип
стабилзор
малоптребяющвыводимой
й
пердаютинформации: синхрогалвсимвольный;
- внешЯзык
ий
в ХарктеисПЗУ DEBUGдисплея: выгоднлатиница, прибонмяпонский;
- Возможность
Обзор
связыатьзагрузки прогамесобственных адптерысимволов: Исключениесть;
- Формат
чипа
Микронтлеывыводимой диапзонхинформации: 20×04 чипсимволов;
- аТип
сборк
таймердисплея: удаленоLCD;
- ыхТехнология
сам
отличасядисплея: ьниматSTN;
пр
- Угол
принял
подхобзора: 180°;
- ведущТип
тй
кнопподсветки: схемLED;
- Цвет
анпиярогмв
dvkподсветки: записсиний;
- Цвет
овпмрыск
провеитьсимволов: назвибелый;
- Контроллер:
оирмацнф
помжетHD44780;
- ОбщяаИнтерфейс: ничегосинхронный, 8-битный, организцпараллельный;
- Напряжение
Рисунок
заменпитания 5 В;
- DРабочая
H
берутсятемпература: -20 ... +70 °С;
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
57
- ствоТемпература
рдук
адресовхранения -30 ... +80 °С;
онусмартфДисплей ICLCD2004 разядностьоснащён воспринмаетяплатой нетуконвертером Parleдля стандрупреобразования уровне
параллельного 8-битного своеинтерфейса служитдисплея в начлшину I2C, рекомндуыпо оснвакоторой сервомон и ограничтелья
подключается к dvigatelArduino возникутьпо перходитадресу 0x3F помгаетили 0x27. описанНаличие достичьпоследовательного идет
интерфейса блютузпозволяет удерживатьобщаться с областямконтроллером РазмерыArduino класифцровныпо обязательнсредствам 2-х Адрес
проводной этогсвязи, длиногэто элемнтупоможет менюсэкономить minцифровые Дляпины Темконтроллера FORScanдля CR
подключения представлядополнительной класифцровныпериферии [27].
светодиТак LiqudCrystalже семйтвана I2C/SPI электронымконвертере исходныйустановлен COMпотенциометр салонедля загоретсярегулировки приотеа
яркости чтоподсветки.
АналогвыеДисплей функциоальстюLCD-2004B-IIC Мможет
бит
жидкостодновременно нажтиотображать benzдо 80 показывтьсимволов
(20 китайсесимволов, 4 немустроки).
памятьДисплей бегущоснащён
о
обменасветодиодной сбраывтьподсветкой понятисинего Стоицвета.
процесахКонтроллер замкнутядисплея водителюHD44780 стандромимеет освбдишейяПЗУ в завершнкоторой подключаемхранятся инаетсячцифры, шиных
символы рабочейлатиницы и polzhнекоторые сторныиероглифы двухшинойяпонского медлнязыка, спобдля ранеих логическй
отображения разядностьна AINдисплее. ТипОтсутствующие Бортвйсимволы, в т.ч. и гарнтиуесимволы смещникириллицы,
рекомндваможно Приложензагружать в чистомпамять технОЗУ потраченгконтроллера.
ПриёмнкРисунок 3.6 —тестовуюРазмеры полнымдисплея
ВерсиДалее опредляющихрассмотрим осбентйкак протяженипроисходит работьподключение Цветдисплея МодифцрваняLCD2004 к объёмнг
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
58
Arduino через
пнисьад
I2C:жидкокристаллический пользватемонитор БольшинствLCD2004 с инструкцйподдержкой I2Cувеличня
подключается к VSплате строкиArduino междупри полвинупомощи оснвйчетырех OBDELMпроводов —окончаидва Принцппровода прогаму
для Версиданных, общдва
аться Основаяпровода точнгдля деньпитания.
- строGND
бы
—общий;
- VCC
техничск
— «+5 В»;
- уёмразъSDA —записывемпоследовательная медлноглиния представляданных —управляюйщена темпрауArduino текущUno и отличеьныхNano А4
(SDA), модулина опрнеArduino потенцимраMega – 20 (SDA);
- осущявлтьеSCL —поустрйвпоследовательная разъемылиния совремнгсинхронизации —генратона сигналзруетArduino секундыUno и подрбне
Nano А5 (SCL), microUSBна ТехничскArduino правильнойMega — 21 (SCL)[15].
придётсяРисунок 3.7—достичьСхема обладютподключения 2004-LCD к диагностчекмArduino ВЫПУСКНЮчерез I2C
подисьДлявзаимодействие НИЗКОГArduino c БошемLCD 2004 символьныйпо встречаяшине I2C харктенам потраченпотребовалось уровнем
две условийбиблиотеки:
а) снаБиблиотека СпирнWire.h ячахстдля автомбилеработы с I2C (уже адресногимеется в капотмстандартной правило
программе модульArduino секIDE);
б) однимБиблиотека БошемLiquidCrystal_I2C.h, НАВЫКОкоторая страницвключает в Сегоднясебя оббольшое SPI
разнообразие правилмкоманд EDдля сотавуправления включенимонитором сотвеующаяпо объёмнгшине I2C и установлеыпозволяет избежать
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
59
сделать яркостискетч контрлевпроще и общкороче.
аться
быстрой После струка подключения Основадисплея расход нужно алгоритмы дополнительно ПАЦ установить сетвыми
библиотеку adr LiquidCrystal_I2C.h. АвдеСуществуют Consta различные IRQверсии void этой возмжне
библиотеки, полныйактуальная литерауверсия сигнальоNewliquidCrystal_1.3.4.
ЛистнгДалее НСнеобходимо:
а) Скачать библиотеку NewliquidCrystal (версия 1.3.4);
б) размеРазархивировать oshibkпапку с становябиблиотекой “NewliquidCrystal” в ochistkпапку, Engieгде множеств
установлена схемсреда завершютсяпрограммирования «Arduino уменьшияIDE» (например: C:Program узлы
FilesArduinolibraries);
в) ног Переименовать
произвдтся папку
встроеных библиотеки
“NewliquidCrystal”
значеим на
“LiquidCrystal_I2C”;
г) последнгПерезагрузить Бортвйсреду КВАЛИФЦОНУЮпрограммирования «Arduino коэфицентаIDE»;
д) земляЗагрузить емскетч
т
в спобамиплату диагностчекArduino;
УстройваПосле датчикмподключения к настоящийскетчу сбровсех расчитьнеобходимых Сарнскбиблиотек японскгможно бк
приступать к обеихработе.
3.3ЭБУОписание паройсхемы необхдимаустройства
РазныеArduinoNanoпроведнйэто даногполный ходаналог общуюArduinoUno —рядомон упростиьтакже нескольихработает bsoluteна
A записывютячипе опредлятс
ATmega328P (хотя верныйвсе установлеыеще мАможно найти
Сейчас
формиванварианты с сэконмитьприменением интерфйсаATmega168), медлн
но с едройменьшим
каф
четырформ-фактором. ситемахПлата удаленчасто EPROMиспользуется в выходапроектах, в отбражениякоторых исполнею
важна выходнекомпактность. доплнитеьНа выпускаютплате связинет разушениявнешнего генриутисточника повышаетпитания, периодаустройство Максимльно
Arduino работает
Obd
адреснычерез ШИМUSB (miniUSB объемили защитнымmicroUSB). малойОстальные обеспчиватпараметры процеса
такие УНИВЕРСАЛЬЫЙже, бесплатныкак у зарнемодели наскольArduinoUno.
а) разушрассчитать
ения
пердачурасход одинаквыйтоплива;
б) явлютсотображать секундыинформацию о Остальныетемпературе пульсацийантифриза;
в) контрлемрассчитать лучшскорость
ий
и приводтрасстояние стандройпоездки;
г) изменывывести адресцияотработавшее Pdzтопливо встречающна
ихя VPWопределенный провеканидляхrecovyпробег;
д) busопределить доскорость использвандвигателя и т.д.
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
60
е) Организцярассчитать Последватьныйрасход калибруемыйтоплива;
ж) контрлевотображать входаинформацию о известнуютемпературе буквойантифриза;
и) турассчитать
кпрод
ведомыхскорость и отдавемыхрасстояние синхрогалпоездки;
к) лоьневывести
гтдпсав
Rpmотработавшее Гарвдскойтопливо кирлцына монтажопределенный пароляпробег;
л)определить Объёмногскорость машдвигателя
ины
и т.д.
ИСПОЛЬЗВАНЫХРисунок 3.8 —включаетсяПлата СначлArduinoNano
напдеиИспользуя водителюплату ПРИЛОЖЕНИЯArduino изнутрNano, Затемможно энергозависмйпостроить разбтывембортовой Technolgyкомпьютер циклом
автомобиля, устройвамикоторый командуATпозволит:
В обязансть дополнение к избрательныустройству даныеDD1 (Arduino-nano) Наибольшетакже отмеиь нужен ВЫСОКЕ
жидкокристаллический светодиа модуль офицальныхдисплея однй HG1 (LCD2004), ПКадаптер архитеку DD2
(Bluetooth NS-05),
е
а автомическтакже вышсканер
е
учебноELM327 и Основаярезистор R1 Specifсопротивлением 10 сначл
кОм (используется микронтлеадля контаминастройки типаяркости инымдисплея).
обслуживанРазумеется, усовершнтаьнеобходимо расшиеныйподготовить одинпьезоэлектрический регулиовкизлучатель ЭБУPB1
в ВЫСШЕГОкачестве созданияиндикатор импульсавыбора газовменю, Степнькоторый pdzсрабатывает удаленкаждый выдаетраз дальшепри лишь
нажатии ведущкнопки,
им
динамческхкоторая гармоничподключается к архитекуразъёму диапзонXP1 к податьконтакту 2 (ECU). необхдимстНа частные
элементах зарнеDA1,C1-C4 сможетсобран предльныстабилизатор водителянапряжения [3] имендля используемйпитания наклдывютмодуля
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
61
КОМПЬЮТЕРАDD1 остальнмнапряжение значеимна открыйвходе двигателйданного бегущоблока длясоставляет 9В, некотрысветодиод Расмотри
сигнализирует о отбражемяналичии отрицаельныйвыходного перифйнапряжения сотвеующсо
и безстабилизатора.
омэтДля изменяуменьшения кончитсянагрузки предыущгона Информациявнутренний весьстабилизатор настривеянапряжения распечтк
модуля низкмDD1, пользватемкоторый выполняетформирует пользватеюнапряжение 5 В выодимйдля некимработы инструкцмодуля оперативнуюDD2 и первода
индикатора порситHG1. rxIndeРезисторы R3, R4 адресныпредставляют ПРОТКЛсобой формиуетсяделитель нимнапряжения ПродлжениРИЛОЖЕНЯБ
для низкогизмерения устанвлиеявходного генриутнапряжения действильнына fulбортовой выполняетскомпьютер[11].
измерняСхема поулярнымиустройства компьютераиприведена осбентина сотяьрисунке 3.9.
DРисунок
V
3.9—CrystalСхема шбортового
рифта
LCD
компьютера
разядностьна Авдеоснове DBArduino-Nano
dvigatelПроцедура теорисборки и созданиебьктнастройки AREFследующая:
а) вруойстСначала адреснынастроимвышедихадаптер допускаютяBluetooth. СтрукаНеобходимо коэфицентрвасхдпприпаятьмонпльгпровода к Специальны
контактам USBустройства;
б) нияСам
преобазв
прогамнмодуль описаняхподключается к VEплате различнодля расмотиконфигурации, задтьдля выпущеноэтого безопаснтьнужно Послеупшнйзагркитчывм
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
62
открыть правильнуюпрограмму НормкнтлеArduino ELMIDE номераилюбой доплнитеьйверсии, обртвпосле полнстьютого, возмженкак поделкуона капотм
запустится,залить Потребилпрограмму в токасхему SCKчерез доцUSB-вход;
в) опмКогда
рыскв
проткльнуюзагрузка загрукбудет разностизавершена, двенужно перейти
CAN
в обладющихменю приемуService —rndPort менMonitor и модуляELMустановить обычнгскорость даноедо 9600 форсункибит / с.;
г) ICЗатем
P
обратывесясхема настройкисобирается с правомплатой самотяельнArduino-Nano, гарвдскойадаптером и постянгдисплеем, показывют
подготовленным полученизаранее. помгаетСначала изменподключается модуляадаптер посланBluetooth (рисунок 3);
Рисунок 3.10—НАВЫКОПодключение цветаконтактов ВоBluetooth
д)spedКроме уровнетого, конструмподключается помщидополнительная доплнитеьаякнопка, функциоальстюкоторая значокбудет режим
выполнять разъёмуфункцию занимеойпереключения бортвыхэкранов с адресноминформацией. сотяниеОдин узлыконтакт однкристальыхот темпрау
кнопки ильпереходит
проф
к внешэлементу masGND, архитекувторой - к былконтакту A3. ОсноваДля всемподключения приводт
бипера обычнположительный отншеиюконтакт смартфонхподключен к 13 распиновкконтактам, а сотяниеотрицательный - к нажть
GND;
е)такимЗатем, Петиниспользуя адптерто неисправотйже megaAVRпрограммное возмжнеобеспечение контрливаьArduino такимIDE, совмети
необходимо опускаетзалить шагипрошивку. варьиуютсяТеперь ISMпросто запускетянужно КМОПнастроить режимбортовой перход
компьютер и клиентаподключить немдлоего к увеличноавтомобилю [27].
делитьИспользуя хранеиядостаточно Продлженинедорогую спобплату ЖдемArduino-Nano и появлетсмодуль Bluetooth
Выпускная
Выпускная
НС-05 качествосовместно с Иницалзяадаптером изделяELM327 пакуможно преыванияполучить черзвозможность информацейчитать чем
данные с внешдиагностической
их
Напрвленишины настривеяавтомобиля и режимконфигурировать программное
УНИВЕРСТ
символпрнят
обеспечение заводетаким Встречаюяобразом, Биперчтобы AVRвыводить синхромпульана электроныйжидкокристаллический Исходные
индикатор ПКтолько значеияту Eroинформацию, прибокоторая иероглфынеобходима имтацоныхпользователю двухшиной
автомобиля. AbsoluteПредложенная обменйсхема такихвыгодно окнчеотличается этимот Работстандартных реальног
компьютеров и понятиприложения схемадля типних, сВЫСОКГгде FilesArdunobaдоступность автомбилеизменения помщипрограммы и делитм
получения управляющиедополнительных очкаисштбданных большуюне расшиенпредставляется цифровгвозможным. учитываьДанное опредлны
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
63
устройство Типможно valueусовершенствовать, изученыдобавив к получениянему оставшихямодуль линудаленного пердавть
управления, LOWописанный в варинтстатье.[
источнкаДалее совметиыописан быстродейвующгподробнее ИнтердиагностическийпробегаавтосканерDigimotor VCDmscan черног
Elm 327 турекObd2
с
v1.5 (рисунок 3.11).
кнопаРисунок 3.11 —СамыиАдаптер простымDigimotor скортьюDmscan оснвуюElm 327 означетObd2 v1.5
провднйВид dvigatelизнутри, подбныеразъем и адресовныхраспиновка постуившюадаптера перзаустиьпредставлены провдуниже.
RXРисунок 3.12 —назывемогВнутренний напрвлеивид весадаптера
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
64
LCDРисунок 3.13 —добавленРазъем применадаптера (OBD2)
ПЛАТФОРМЕРаспиновка ВыборадаптераИнформацийDigimotor доплнитеьйDmscan ФункциElm327представлена Прогамиуеыйна аняиемодфцрвзрисунке
3.14.
правилуРисунок 3.14 —пытаьсяРаспиновка МГцадаптера
сменыСканеры наборOBD-2, всехпостроенные архитекуна уровнибазе атмосферумикроконтроллера адресовныхELM327 частихорошо
БРуниверсальны и выборанадежны. болеБлагодаря интерфйсамэтим достигаекачествам проилюстванмногие сетиразработчики выход
диагностического KWпрограммного
P
загоретсяобеспечения анлогвыпускают технолгийсвои струкапрограммы версидля напряжеи
сканеров ArduinoNaэтого памятьтипа. В двумяИнтернете Indicato размещено ничего множество Утверждна программ, ДИАГНОСТК
обладающих темразличными обязательнфункциональными Разницвозможностями, электричсаяпнцьинтерфейсами и сводит
языковой фильтровподдержкой. оставшихяСреди внешгоних рисунковесть USBкак подсеинымкоммерческие внешийпродукты, сохранилтак и имен
бесплатные парметверсии.В самотяельннашем Sслучае
V
очисткашббыло Четврыйиспользовано однкристальыйприложение следующгоTorquePro.уровни
Это LiqudCrystalединственная предустановлпрограмма иежобладающая
нс
организуютсяогромным работющиеколичеством посылкфункций, и к опредлнг
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
65
тому коретиваже ДЛЯона Такоеимеет выбросуполностью ShortTemнастраиваемый Объектомрусский ситемахинтерфейс.
ошДалее
ибке
допустимепоэтапно Третийразберемкак сотвеуюнастроить промежуткадаптер:
а) платойЗапускаем Protclнастройки Android;
Скорсть
б) предустановлВключаем сервомBluetooth. автомбильныхЖдем Obdнекоторое своемвремя. ведьПосле стандретого Sonкак Android
синхромпульв
вознике
найдетпердустройствоDigimotor болеDmscan оранжевElm 327 синхромуObd2 v1.5 (рисунок 3.15),Стандрон Библотека
попросит digtalReввести прибоапароль. В настольыйнашемагреатовслучаенайтиподходящим срабтывеоказалсяпароль: 1234.
ТехнолгияРисунок 3.15—монитрВыбор используемйBluetooth-устройства (адаптер провдникамOBD2)
в) приобетаьПри такявключении, постренына ОисзьвЕПРапМадаптере салонгорит газодна разъемолампочка. А однимкогда ФЕДРАЛЬНОвнешнее давлени
устройство разнотипыхBluetooth надписподключено и хоршидет изученыпередача описаняданных — закнчивтьсявсе стаьелампочки ОГАРЁВ
мигают в последватьныхрежиме rxDatбегущего обзначютсяогня.
установкйЗатем пятыйсимволнастройки сотяниидут в вспомгательныхвыбраном собтвенынами другимприложении EPAдля принматьдиагностики
(Torque) .
а) СтавимНастраиваем теоричскйапрофильИМСнашего провеяющавтомобиля
ийс
(рисунок 3.16);
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
66
оРисунок
нслки
3.16—английскоНастройка лампочкпрофиля синхрозацюавтомобиля в медлногприложении НижеTorque
б) подтягивающЗадаем
й
ДМКнастройки и гопрописываем
т
столбцвальтернативный смартфонзаголовок versionдля фирмы
адаптера (рисунок 3.17);
SilconxРисунок 3.17—темпратуНастройки правомадаптера в сегодняшприложении
ий
часTorque
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
67
микронтлеуПрограммный Затемлистинг менюуправляюйщей технолгичскпрограммы устройвмикроконтроллера M
представлен в микронтлеприложении А.
3.4 приемнкаСборка различныустройства
выходаНиже maslбудет токупредставлен провекасписок чтобытребуемых оставшихядеталей смартфондля опредлнсборки Потребилбортового приема
компьютера.
а) котрыеArduino произвдтсяNano;
конвертРисунок 3.18 —литерауПлата СтепньArduino обязательнNano
б) voidsetupЖК-модуль;
StarРисунок 3.19 —LCD2004 приложенямэкран
в)Модуль отдельныBluetooth TorqueможеHC-05;
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
68
необхдимРисунок 3.20 —буквойМодуль ситемBluetooth
г)DigiMotorOBDELM327 втормBluetoothсканер;
чемРисунок 3.21 —Адаптер этогOBDELM327
д)Резистор 10 КоличествкОм выбираетподстроечный, ранебипер произвдтелйдля отдельныйзвука, 2 кандкнопки компатнсьдля ArduinoNaсмены робтв
экранов, контампровода общдля
ей tcoreсоединений, созданиякорпус;
е)требутсяРазъем информацйOBD2 (в зависмотсалоне и частьразъем диагноструемысамодиагностики оставипод secundyкапотом).
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
69
кадрРисунок 3.22 —Разъем номераидиагностики (в различносалоне однакавтомобиля)
импульсовСтоит ПРАКТИЧЕСХотметить, описанчто ьюстноаркпод различтькапотом Частоимеется опредлниразъем скортнымсамодиагностики
(рисунок 3.23), фильтровчерез Послекоторый СТОПтак Constaже подключеныхможно равнподключиться, работюоднако в произвдтелямнем ситем
отсутствуют goritнужные прошивкпины, обладетпоэтому расчитныйвся тогсборка заднпроизводилась местчерез листаьразъем в обртв
салоне.
подстречныйРисунок 3.24 —шРазъем
танымиборв
всесамодиагностики (под iPadкапотом)
микролатПроцесс РазъемнастройкизарнеBluetooth провдемодуля адресутHC-05:
произшелПодпаиваем Оригнальыепровода к редкопинам анлогичBluetooth:(картинку с обеспчиватявыходами используяможно памяти
видеть в Процесописании unsigedтребуемых SIMдеталей).
1 –Цельэто адресутTX
2 – AveragэтотуRX
12 – уникальомэто 3.3V
13 – подхитэто EODGND
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
70
34 – последватьнмуна Engieэтот потраченвход понятьтоже 3,3 V (нужен последля получивперевода Pdzмодуля в асинхроярежим получив
настройки с таковыепомощью указныеAT ничегокоманд).
специальняПодключаем пьезоэлктричсйBluetoothверсиямодуль к становияArduinoнарушетдля VEего толькнастройки.
АТРисунок 3.25 —комуникацСхема увеличатсяподключение voidмодуля ПермныйBluetooth к RemoutArduinoNano
1 –kBTXвозниквемодуля в 6 огрмныпин удаленоArduino;
2 –ИнформацийRXсобймодуля в 7 ВЫСОКМпин идентфкацогArduino;
12 – и 34 Тепрьпин к 3,3V сохраняемыйArduino;
13 –шестьюGNDArduino.
опредлнияДалее правильнооткрываем ейпрограмму MISOAduino прогамиуеыхIDE 1.0.6 и Когдазагружаемоднокристальыхскетч опредлятсчерез предлах
USB ерияпорт
пф
в Такоеплату.
#include <SoftwareSerial.h>
илSoftwareSerial модуляELMBTSerial(6, 7);
//TX | понижейRX
ипоск
voidsetup(){
digtalWrite
Serial.begin(9600);
стабилзору
Serial.println('EnterATcommands:');
oshibk
BTSerial.begin(38400);}
научойvoid Типloop()
{
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
71
отзываif (BTSerial.available())
работь
Serial.write(BTSerial.read());
Averagif (Serial.available())
подключеныхBTSerial.write(Serial.read());
}
HelionПослеуспешнойзагрузкискетчаоткрываемКомпанияследующие Завнастройки:Сервис>Мониторпорта. уменьшДалее
ия
обнаружеснизу таставим
моен
выодскорость 9600 бод
CR и EPROMNL+CR последватьнйвместе.
соединДалее ИСТОЧНКВвводим цифровгкоманды Алгоритмпо Однакоодной и ДИАГНОСТКнажимаем «Послать». eficnyПосле архитекуойкаждого режим
ввода перходдолжен Кромебыть правильнуюответ «ok».
MAT//
AF
резистоаAT+NAME=Car //ПрисваиваемимямодулюCar.
TempaslAT+ROLE=1 // ЭБУПереводим текущмодуль в служитрежим ЕлисевМастер.
обеспчниAT+PSWD=1234 // охлаждющейСтавим разядупароль 1234 принцекак Процесна ревизяOBD терминаоELM327.
считываьAT+BIND=AABB,CC,112233 //Прописываем Mac
БАКЛВРСЯ
следующаяадрес посланOBD провдникамELM327.
распознвиеAT+CMODE=1 // редкоПодключение соединямодуля с огняфиксированным avtoадресом.
резистоыAT+UART=9600,0,0 // staicСкорость pinработы смотреьпо срабтывеUART.
последватьныйНастройкаотражениямодуля цветаBluetooth Genralзакончена.
кодыДалее Функцинеобходимо Возмжнстьсобрать процесвсхему однмArduino + созданBluetooth – проведутЖК потребвалсьэкран.
utСхема идеромпредставлена
л
пятыйсимволна линямрисунке 3.26.
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
72
внутреийРисунок 3.26 —схеманепосрдтвнArduino + использванBluetooth + отдельныЖК цикловэкран
ОгарёвскиеНачинаем с бортвйподключения автомбилюHC-05 подключеныBluetooth ведомумодуля:
-
Контак1TX литераумодуля ГОСУДАРТВЕНЫЙзасовываем в 7 допустимйPin (Rx) КакойArduino (именно объемTX в МОДУЛЬRX, Двухшинаяне каятак смены
как туранее);
-
2 приемнкаRX разботкимодуля логическйзасовываем в 8 считыванеPin (Tx) осущArduino;
етвля
-
12 сохранеияPin (3,3V) версимодулявщPin
итке 3,3VdvkArduino;
-
13 ВведнPin (Gnd) вGDNGndРазмерыArduino;
-
34 назывтьPin продуктыникуда Пердатчикне Вторйподключаем.
работьПодключаем ЖКмонитор простLCD:
- атьVSS
созд
ограничтельяэкрана к тесироваьGND генриутArduino;
- VDD
Анеалыогв
WiFэкрана к 5V класичеуюArduino;
- V0 лидераэкрана к Встречаюяцентральному старшийвыходу операндврезистора;
- RS
комплет назчеиэкрана к 12 выпускаетяпину СтоиArduino;
- RW
принцалья
трансмияэкрана к асоцияGND продленияArduino;
- E Atmegaэкрана к 11 вредныхпину rxDatArduino;
- ЧИСТНОКВDB4 Адресэкрана к 5 автодигнскпину retunArduino;
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
73
- касдыDB5 пароляэкрана к 4 настроиьпину МмсаликоьнArduino;
- DB6
урезаны
Петинэкрана к 3 Преспину Arduino;
быстром
- иDB7
блок
адптируесяэкрана к 2 DEBUGпину ФлэшArduino;
- A — к 5V наилучшArduino;
его
- K — даныеGND формArduino.
прогамивняОдну останеяиз записоставшихся чтобыног токапотенциометра остальнмпустить секна необхдимыGND NSArduino.
наобртПеременный Весьпотрачныйбзирезистор измеряютна своему10кОм INTнужен, пульсацийчтобы DTCуправлять автомбилеконтрастностью некотрлиумй
монитора, выодотрегулировать принятогконтрастность образмшрифтаструкаможно Softwareilповоротом обеспчиваютрезистора.
оказлсяпрьПодключаем Специфкаядополнительную размеыкнопку масудляMotrsпереключения серияэкранов с Прогамный
данными.«1 ИСкнопка»: оставленодин выгладитконец от
Bosch контаунормально-открытойбольшуюкнопки понижатьсяподключаем в конце
GND созданArduino, а ведомывторой Можнконец в формепин 10. «2 точнкнопка»: совметиGND + маркиуютпин 9.
путиБипер защдля
ите
COBDзвуковых предлыпредупреждений ногподключается биперпо данымиследующей разницусхеме
«+»к обзначетпину 13, а надписминус к открываемGND рыArduino.
уетамп
последнийЗагружаем клиентовскетч в DArduino с частоныхпомощью протклеAduino символыIDE 1.0.6 . кгНужно Каждябудет FuelDnsityGramPL
обязательно практичесойучесть достигаьтри пердатсяпеременных:
а) СписокED=1.998; ХНапример всемиобъем ОБРАЗВТЕЛЬНдвигателя в разботкилитрах 1.398;
б) процесVE_correct=1.0; ИнтерфйсКорректировка высокмобъёмного стандруКПД конфлитвДВС микросхепо расшиеныйтаблице: (если
разныхрасход Manifoldреально осущменьше
етвля
— провекастянидлчшто
б ечсарятвуменьшаем прогамнзначение в отсувюпроцентном Kelvinсоотношении).
в) присоедныSpeed_korrect_val=1; салонеКорректировка проведутскорости расшиенмашины, Atmelсмотреть портапо секунд
GPS/.
присваетяУправление:«Кнопка 1», «Кнопка 2» — Выпускнаялистать темпрауэкран посланиевперед процесбмнаназад.
ЯзыкПри RXDвключении такпри пердаютсянадписи «Connecting»… распотнёымидержать «кнопку 1»ABSвход в Pasive
режим ейсупоказывания
интрф
байттехнологических прибовэкранов и Провднымпараметров контрляотдаваемых выбраногЭБУ в
16-чном йлезатформате.
пок
«Кнопка 1» + «Кнопка 2»: 4 КМОПсекунды — возмжнстьСброс перзаустиьжурнала обеспчиватяобщего zaslonkiпробега и синего
потраченного МОДУЛЬбензина предлына экраневтором примесйэкране, ведущитакже ICэто климатчесясброс Каждяошибок ICна сопртивленйэкране рекомндуы
информации разностьоб jurnalошибках.
выпускеДалее описываютяпроверяем схемойработоспособность Запускемпри КОМПЬЮТЕРАподключении к Обавтомобилю.
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
74
В ьупатокпрограмме ситемныхTorqueможем распознтьтак типовже одиннаблюдать случайноготображенные прошивкапараметры
(рисунок 3.27)
МеждуРисунок 3.28—действильныПанель обзрприборов в добавленияпрограмме VSTorque
ОсноваНа собранрисунке 3.29взаимодействяпредставлен Прогамныйитоговый кабельвид бортового
NewliqudCrysta
диагностчекйкомпьютера.
тесироваьРисунок 3.29 —Бортовой двухшинойкомпьютер
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
75
НАДОЗАКЛЮЧЕНИЕ
В работырезультате наидлейшмвыполнения схемабакалаврской адресномработы размеырассмотрены РАЗБОТКИобщие блютузвопросысвязанные с Физческйразработкой используетябортового Разницкомпьютерадожидатьсядля обслуживаняавтомобилязалитьна Bluetohоснове CR
ArduinoNano, предлагтся разработан йкодсветп бортовой факте компьютерограничео на Длина базе примечан кафедры большг
Информационной свое безопасности и распознетя сервиса, предлах Института обратывь электроники и сохраняемый
светотехники.
В Тепрьпервой генратоыглаве LFподробно Дмитревнаизучены двухустройство и ИСпринцип Genralработы отдельны
контроллера различныELM327, европйскграссмотрены даномстандарты большепротокола сканеруOBD2 и модулепринцип Обычно
работы числоCan-шины.
сигналомВо описанювторой Общглаве
ая
ochistkописан менпроцессобменасбросаданнымиограничеымELM 327 КОМПЬЮТЕРАпо располжениBluetooth с загрянеи
микроконтроллером Шоткина Располженибазе КаждоеArduinoNano, Бошемгде редкоболее Первыйподробно большерассмотрены битовм
технические рабочиехарактеристики резистоаArduinoNano и апртномизучена блокишина I2C.
В метровтретьей посланиеглаве разештподробно наличемописан и инцалзейпроиллюстрирован Режимпроцеес возникесборки ограничея
бортового самогкомпьютера.
наглядо Выпускная Опираяськвалификационная подсветкй работаunsiged содержит легко теоретическую и растояние
практическую выодчасть. В условиятеоретическойчасти Связьпредставлены монитррезультаты модулюизучения оперативнг
ипоиск научыеинформации беспровднйпоустройству и литераупринципу спиокработы двеконтроллера первыйELM327, могут
стандарту ФЕДРАЛЬНОпротокола режимыOBD2 , опускаетизучен запроспроцессобменаданнымистандрпо произвдласьBluetooth Кромена delay
основе наличемодуля начлеHC-05.В прочитаьпрактическойfsчасти строкапредставлено сохранилописание оснвйэлементов включается
устройства, комерчсисхема архитекупринципиальная полямиэлектрическая, а малыхтак частоуже узламивесь doubleпроцесс терминаосборки
и помгаяподключения.
В ifвыпускной расшквалификационной
иеный
сантимерработесобственыописываются генриутчастные и проведутсистемные
ограничеымпроблемы оснащеыподключения специальныймодуляELM327,ограничеясуществующей в приемодатчкавтомобилях Presuстарых count
годоввыпуска, модулине Оригнальыйоснащенных подстречныйштатнымибортовыми корпускомпютерами, а роизвдтельПтак неисправотьже, Максимльный
имеющими описаннерабочие andразъемы toplivaсамодиагностики.
В оказлсяпрькачестве интегральуювывода к Стандротчету принмающпредлагаетсяIICготовыйразработанный стандрбортовой анлогвых
компьютер, с процедуаприложением в распознвиевиде калистинга известнапрограммы и отсувиемсхемы необхдимэлектрической пинов
принципиальной.
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
76
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
77
простанвеСПИСОК контрасьюИСПОЛЬЗОВАННЫХ OBDIИСТОЧНИКОВ
1
собщитьАвдеев В.А. имеющПериферийные внешгоустройства: регламнтиуинтерфейсы, смодулясхемотехника, rashod
программирование: перучебное томпособие / В.А. этомуАвдеев. −М. : допускаютяДМК запоминющПресс,
ег
2014. −
848 с.
2
пердаютсяАвдеев В.А. случаетяОрганизация выполнитсяЭВМ и разъемпериферия с ДВСдемонстрацией устройвм
имитационных общеммоделей : минусучебное топособие / В.А. ТемАвдеев.− М. : придётсяДМК НАОПресс,
2014. − 708 с.
3
апртуыАникин А.Обзор дизелясовременных процесатехнологий Macбеспроводной обеспчнипередачи многие
данных в Шрейдчастотных бытовгдиапазонах HeadrISM (Bluetooth, разделитьZigBee, УтвержднаWi-Fi) и 434/868 ИздательсвоМГц.
/А. IATАникин //Беспроводные технологии− 2011.−25.
4
напряжеи Баранов В.Н. ПоследватьныйПрименение планшетоммикроконтроллеров ЦеныAVR: имется схемы, рабочей
алгоритмы, ВЫСОКМпрограммы : обзначютсяучебное Atmegaпособие / В.Н. отвеБаранов.− М. : связиДМК работьПресс,
2010. − 288 с.
5
имеющйБейктал Д. сопртивленйКонструируем функциоальстюроботов ИЗМЕНЯТЬна обраткиArduino. PWRПервые олеБшаги : Прес
руководство / Д. старБейктал; генратопер. с однйангл. О.А. caseТрефиловой.− М. : пердавтьИздательство
«Лаборатория двезнаний», 2016. − 323 с.
6
различныБелов А.В. полямиARDUINO: обратняот нетазов старыхпрограммирования цепямидо внешийсоздания Затем
практических представлнустройств / А.В. tmpБелов. −правильностСПб : документацияНаука и помгаяТехника, 2018. − 480 с.
7
символпрнятБелов А.В. своемуПрограммирование наличеARDUINO. исполнеюСоздаем селкторапрактические реализовн
устройства / А.В. преобазвнияБелов.−оптовлкнуСПб : AbsoluteНаука и лиТехника, 2018. − 272 с.
8
таймерБирюков А.А. СначлИнформационная Torqueбезопасность: Ихзащита и Завнападение /
А.А. ПолныйсредиахБирюков. −М.: выодимйДМК таковыеПресс, 2017. − 434 с.
9
прогамнеБортовой компьютервкомпьютер литресвоими Подтвержнируками [Электронный учитываьресурс]. −отличнойРежим совметиых
доступа:https://www.instructables.com/id/ArduinoLCD-HC05-Bluetooth/.
10 содержимБоровский А.С. настоящийПрограммирование разботкмикроконтроллера БизнесArduino в провдилсь
информационно-упрвляющих каиесистемах: потребвалсьучебное Благодряпособие / А.С. трансивеБоровский,
М.Ю. активнойШрейдер−дальшОренбург
е
: действоаьОГУ, 2017. − 113 с.
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
78
11 строкиВолков А.В. СчетикРазработка памятисистемы представлнойудаленного обратняконтроля парлеьныйна неисправотйGSM сканерумодуле
обычнгSIM900D / А.В. внедрияВолков, А.Д. некотрыхНуштайкина // В правильнойсборнике: линXLVI входитьОгарёвские им
чтения.Материалы стнаучной oshibkконференции: В 3-х OBDIчастях. СхематичноОтветственный УТВЕРЖДАЮза посбие
выпуск П.В. нашемСенин. – 2018. – С. 268−273.
12 мощнстиЕлисеев Н. выбореArduino −придётсяэто Infieoочень понятисерьезно. антифрзБольшие кнопвозможности транспоых
маленьких обраткустройств /Н. ноЕлисеев, И. расмтивьШахнович // ПолезнаяЭлектроника: темпрауНаука, GPS
Технология, однкристальыхБизнес.− 2016. − 3.
13 АдресИнтерфейс I2C и инцалзяArduino [Электронный нужересурс]. −автомбилеРежим Lowдоступа:
https://soltau.ru/i/en/arduino/item/interfejs-i2c-i-Arduino/.
14 низкмИнтерфейсная Pasiveшина опредлнг IIC (I2C) [Электронный Mресурс]. −менРежим полная
доступа:http://easyelectronics.ru/interface-bus-iic-i2c.html/.
15 АВТОСКНЕРЛоган С. STNУправление транспоыхнесколькими MILпериферийными действильныустройствами уменьшияпо завод
линиям тришин любоеSPI/I2C / С. следующЛоган
ий
//Компоненты и технологии−2008.−84.
16 неправильыМикроконтроллер MOSIATMega328 [Электронный Pinресурс]. −выглядитРежим DTC
доступа: https://amperka.ru/product/avr-atmega328/.
17 информва Микроконтроллер
памятью ATmega328
−стандрый описание,
устройвDigmotr характеристики
[Электронный обладющихресурс]. −нетРежим втормдоступа: http://robolive.ru/atmega328-opisaniexarakteristiki/.
18 ChrysleОбзор ограничеOBD 2 анлогмELM327 dtsBluetooth longадаптеров потенциалдля однаавтодиагностики
[Электронный синйресурс]. −прописываемРежим Прогамиуеыйдоступа: https://elm327-obd2.ru/obzory/obd-2diagnosticheskiy-adapter-elm327-bluetooth.html/.
19 читаьПетин В.А. уровниПрактическая различныеэнциклопедия схемуArduino / В.А. retunПетин, А.А. требу
Биняковский.− М. : выходДМК формПресс, 2017. − 152 с.
20 японскийПлата ConectrArduino Nano v 3.0 : распиновка, схемы, драйвера [Электронный
ресурс].−Режим
доступа:
https://arduinomaster.ru/platy-arduino/plata-arduino-
nano/.
21 Семенов Б.Ю. Шина I2C в радиотехнических конструкциях / Б.Ю.
Семенов.− М. : СОЛОН-Пресс, 2017. − 192 с.
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
79
22 Семенов Б.Ю. Шина I2C в радиотехнических конструкциях / Б.Ю.
Семенов.− М. : СОЛОН-Пресс, 2015. − 224 с.
23 Спирин Ю.Л. УНИВЕРСАЛЬНЫЙ ЛАБОРАТОРНЫЙ КОМПЛЕКС
«ФОРМИРОВАНИЕ
ПРИМЕНЕНИЯ
ПРАКТИЧЕСКИХ
НАНО-,
НАВЫКОВ
МИКРО-
И
РАЗРАБОТКИ
И
ОПТОЭЛЕКТРОННЫХ
ТЕХНОЛОГИЙНА ПЛАТФОРМЕ «ARDUINO / Ю.Л. Спирин //Проблемы
современной науки и образования − 2015.− 12.
24 Что такое ARDUINO? [Электронный ресурс]. − Режим доступа:
http://arduino-nano.ru/#desc/.
25 Шина
управления
I2C[Электронный
ресурс].
−
Режим
доступа:http://cxem.net/comp/comp67.php/.
26 Шина I2C. Основные понятия [Электронный ресурс]. − Режим
доступа:https://radioprog.ru/post/197/.
27 Эксперименты с Arduino. Часть 1. Бортовой компьютер [Электронный
ресурс].− Режим доступа: //www.drive2.ru/l/6258151/.
28 Эмуляция ELM327 посредством Arduino [Электронный ресурс]. −
Режим доступа:https://www.drive2.com/c/697276/.
29 AT-команды Bluetooth HC-05 [Электронный ресурс]. − Режим доступа:
https://wiki.iarduino.ru/page/at-komandy-bluetooth-hc-05/.
30 Arduino Nano: обзор и характеристики миниатюрной платы от Arduino
[Электронный ресурс]. − Режим доступа: https://arduinoplus.ru/arduino-nano/.
31 Arduino и Bluetooth-модули HC-05 [Электронный ресурс]. − Режим
доступа: https://voltiq.ru/arduino-and-hc-05/.
32 Bluetooth модуль HC-05 [Электронный ресурс]. − Режим доступа:
https://3d-diy.ru/wiki/arduino-moduli/bluetooth-modul-hc-05/.
33 ELM327 Bluetooth OBD-II Адаптер для диагностики автомобилей
[Электронный ресурс]. − Режим доступа: https://www.drive2.ru/l/1341785/.
для
34 OBD2
Изм. Лист
№ докум.
Подпис Дата
ь
удаленной
диагностики
состояния
БР–02069964–43.03.01–07–19
Лист
80
автомобиля[Электронный
ресурс].
−
Режим
доступа:https://e.lanbook.com/journal/issue/284793//
в
35 CAN-шина
промышленных
сетях
[Электронный
ресурс]//
Компоненты и технологии.− 2018.− 17. − Режим доступа: https: /journal/284793/.
36 Сan-шина в автомобильныхсетях [Электронный ресурс]. — Режим
доступа:https://www.syl.ru/.
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
81
ПРИЛОЖЕНИЕ А
(обязательное)
Схема электрическаяпринципиальная
Рисунок А.1 — Схема электрическаяпринципиальная
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
82
ПРИЛОЖЕНИЕ Б
(обязательное)
Листинг управляющей программы микроконтроллера
Бортовой компьютер для автомобиля на arduino + bluetooth hc-05 + elm327
*/
#include <LiquidCrystal.h>
#include <EEPROM.h>
#include "OBD.h"
//#define DEBUG Serial //раскоментировать чтобы получить дебаг информацию на Serial port (0) ,
скорость для работы терминала 115200 бод
LiquidCrystal lcd(12, 11, 5, 4, 3, 2); // LiquidCrystal(rs, enable, d4, d5, d6, d7)
//---------------------float voltage = 0;
COBD obd;
//----------------------// ТРЕБУТКОРРЕКТИРОВКИ---------------------------------------------------------------------------------------double tcorrect = 1.0;
// ВНИМАНИЕ!!! Корректировка коэффициента времени arduino uno, у каждого
свой.
double speed_korrect_val = 1; // ВНИМАНИЕ!!! Корректировка коэффициента скорости, посмотреть по
GPS
double VE_correct = 1.0;
// ВНИМАНИЕ!!! Корректировка Объёмного КПД ДВС: добиваемся чтобы
мгновенный расход на холостых оборотах был в половину объема двигателя
double ED = 1.998;
// ВНИМАНИЕ!!! Объем двигателя в литрах (пример: 1.398)
//------------------------------------------------------------------------------------------------------------// НЕ НАДО ИЗМЕНЯТЬ ------------------------------------------------------------------------------------------byte count_display = 20; // Количество экранов бк
byte pin = 10, pin2 = 9; // пины кнопок
int engine_on_rpm = 400; // обороты при которых считать двигатель заведенным
double AirFuelRatio = 14.70; // константа расхода 14,7 воздуха к 1 литра бензина, у дизеля своя, у газа
своя
double FuelDensityGramsPerLiter = 750.0; // константа - грамм бензина в 1 литре бензина
//------------------------------------------------------------------------------------------- -----------------boolean off2 = true;
char v1, v2, v3, v4, v5;
char rxData[20];
char rxIndex = 0;
int selmon, off, value, value2, t1, kol_check_engine_error_val, fss_val;
int speed_error, tmp_error, rpm_error, dvk_error, iat_error, rnd_error, dts_error, uoz_error, maf_error,
pdz_error, ut_error, tm_error;
int dvk_var, intake_air_temp_var, davlenie_topliva_var, tmp_masla_var, speed_var, tmp_var, t2,
check_engine_km, check_engine_flash;
unsigned long time_new, time_old, time_old_gurnal;
uint8_t time_to_reconnect;
int VE, rpm_var, uoz_var, raschet_nagruzka_dvigatelya_var, maf_var, polozh_dross_zaslon, uroven_topliva_var, IMAP, MAF ,
long_term_val, short_term_val, b1s1_val, b1s2_val;
double LPH, FuelFlowGramsPerSecond, FuelFlowLitersPerSecond, ls_term_val, LP100, benz_add, time,
odometr, benz_potracheno, odometr_add, odometr_add_gurnal, benz_add_gurnal;
byte response[20];
static const unsigned char PROGMEM grad[8] = // символградуса
{
B01100,
B10010,
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
83
Продолжение ПРИЛОЖЕНИЯ Б
B10010,
B01100,
B00000,
B00000,
B00000,
B00000,
};
void setup()
{
time_to_reconnect = 0;
lcd.begin(20, 4);
pinMode(pin, INPUT);
digitalWrite(pin, HIGH);
pinMode(pin2, INPUT);
digitalWrite(pin2, HIGH);
lcd.setCursor(0, 0);
lcd.print("Connecting...");
delay(2000);
value = digitalRead(pin); // проверкакнопкидлявходавrecovery
if (value == LOW) {
off = 222;
count_display = count_display + 3; // 3 скрытыхтехнологическихэкрана
lcd.clear();
lcd.setCursor(0, 1);
lcd.print("|----[recovery]----|");
//отключаемвытаскиваниеданныхиз
elm327
принажатиинакнопкупринадписи Connecting...
tone(13, 3000, 500);
delay(2000);
value = digitalRead(pin); // проверкакнопкидлявходав admin
if (value == LOW) {
off2 = false; // отключаем функцию getResponse, а то ничего не будет показывать без связи с блютуз
lcd.clear();
lcd.setCursor(0, 1);
lcd.print("|----[all off]----|"); //отключаем вытаскивание данных из elm327
tone(13, 3000, 500);
delay(2000);
}
}
lcd.clear();
lcd.print("Connecting...[ok]");
delay(1000);
lcd.clear();
lcd.createChar(1, grad);
//---------------lcd.clear();
obd.begin();// созданиеобьекта obd
if (off != 222)
{
lcd.print("initELM");
for (int8_t i = 9; i >= 0; i--) //небольшая задержка перед инициализацией для исключения ошибок
подключения если БК включается от поворота ключа зажигания
{
lcd.setCursor(12, 0);
lcd.print(i);
delay(1000);
}
while (!obd.init()); // инициализация связи с компьютером автомобиля
}
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
84
ПродолжениеПРИЛОЖЕНИЯБ
//-----------------------}
voidloop()
{
time_to_reconnect++;
rpm_var = 0;
IMAP = 0;
MAF = 0;
FuelFlowGramsPerSecond = 0;
FuelFlowLitersPerSecond = 0;
LPH = 0;
odometr_add = 0;
benz_add = 0;
ls_term_val = 0;
//-----------------if (time_to_reconnect > 10 ) // если в течении 10 циклов не появились обороты или был обрыв связи изза перепада напряжения во время работы стартера, реинициализация подключения
{
lcd.clear();
lcd.print("re-init ELM");
obd.end();
delay(100);
obd.begin();
while (!obd.init());
time_to_reconnect = 0;
}
//-----------------//--------------value = digitalRead(pin); // проверка состояния кнопки для переключения экрана
value2 = digitalRead(pin2);
if (value == LOW) {
if (selmon == count_display - 3) {
lcd.clear();
selmon = 0;
}
else {
lcd.clear();
selmon++;
}
tone(3, 3000, 100);
delay(150);
}
if (value2 == LOW) {
if (selmon == 0) {
lcd.clear();
selmon = count_display - 3;
}
else {
lcd.clear();
selmon--;
}
delay(150);
tone(3, 3000, 100);
}
/* IMAP = RPM * MAP / IAT
MAF = (IMAP/120)*(VE/100)*(ED)*(MM)/(R)
MAP - Manifold Absolute Pressure in kPa
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
85
ПродолжениеПРИЛОЖЕНИЯБ
IAT - Intake Air Temperature in Kelvin
R - Specific Gas Constant (8.314472 J/(mol.K)
MM - Average molecular mass of air (28.9644 g/mol)
VE - volumetric efficiency measured in percent, let's say 80%
ED - Engine Displacement in liters */
if (off2)
{
if ((t1 == 60) or (t2 == 10)) { // чтение температуры и вольтажа каждые 100 циклов работы (примерно
30 секунд), первый раз чтение выполниться через примерно 5 секунд со старта
Tmp();
Voltage();
LongTerm();
t1 = 0;
t2++;
}
else {
t1++;
t2++;
}
Rpm();
}
else {
delay(300);
}
if (rpm_var > engine_on_rpm) { // если обороты больше engine_on_rpm то считаем расход и расстояние
(машина заведена)
time_to_reconnect = 0;
FuelSystemStatus();
Rnd(); // вытягиваем информацию о нагрузка двигателя, если нету такго параметра в ЭБУ то
закомментировать строчку символами //
if (raschet_nagruzka_dvigatelya_var > 3) { // Проверка торможения двигателем по нагрузке двигателя,
если информации о нагрузке в ЭБУ нету то поменять на ((fss_val==2) or (speed_var>70))
ShortTerm();
IntakeAirTemp();
//------------------------------------------------------//если нет данных от MAF (нету такго параметра в ЭБУ) , то раскоментировать все что ниже до
строчки
//
// Maf();
//
//-------↓-↓-↓-↓-↓-↓-↓-↓-↓-↓-↓-↓-↓-↓-↓-↓-↓-↓-↓-↓-↓-↓-↓-----------------------------//
DavlenVpuskKoll();
//
if (rpm_var < 800) {
//
VE = 64;
//
}
//
else {
//
if (rpm_var < 1001) {
//
VE = 66;
//
}
//
else {
//
if (rpm_var < 1251) {
//
VE = 70;
//
}
//
else {
//
if (rpm_var < 1501) {
//
VE = 70;
//
}
//
else {
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
86
Продолжение ПРИЛОЖЕНИЯ Б
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
Изм. Лист
if (rpm_var< 1751) {
VE = 74;
}
else {
if (rpm_var < 2001) {
VE = 74;
}
else {
if (rpm_var < 2126) {
VE = 76;
}
else {
if (rpm_var < 2251) {
VE = 77;
}
else {
if (rpm_var < 2376) {
VE = 79;
}
else {
if (rpm_var < 2501) {
VE = 80;
}
else {
if (rpm_var < 2626) {
VE = 82;
}
else {
if (rpm_var < 2751) {
VE = 82;
}
else {
if (rpm_var < 2876) {
VE = 83;
}
else {
if (rpm_var < 3001) {
VE = 84;
}
else {
if (rpm_var < 3501) {
VE = 85;
}
else {
if (rpm_var < 4001) {
VE = 86;
}
else {
if (rpm_var < 4501) {
VE = 88;
}
else {
if (rpm_var < 5001) {
VE = 90;
}
else {
if (rpm_var < 5501) {
VE = 93;
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
87
Продолжение ПРИЛОЖЕНИЯ Б
//
}
else {
if (rpm_var< 6001) {
VE = 95;
}
else {
if (rpm_var < 6501) {
VE = 91;
}
else {
if (rpm_var < 7000) {
VE = 85;
}
}
}
}
}
}
}
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
//
}
//
}
//
}
//
}
//
}
//
}
//
}
//
}
//
}
//
}
//
}
//
}
//
}
//
}
//
}
//
IMAP = double(rpm_var * dvk_var) / double(intake_air_temp_var + 273.15);
//
MAF = double(IMAP / 120.0) * double(double(VE * VE_correct) / 100.0) * ED * 28.9644 / 8.314472;
//----------------------------------------// если нет данных от MAF (нету такго параметра в ЭБУ) , то закоментировать следущую строчку
Maf();
MAF = maf_var;
if (fss_val == 2) { // если замкнутая обратная связь - Closed Loop
ls_term_val
=
double(100.0
+
(long_term_val
+
short_term_val))
/
100.0;
//
коэффициенткорректировкирасходапо ShortTerm и LongTerm
}
else {
ls_term_val = double(100.0 + long_term_val) / 100.0; // коэффициенткорректировкирасходапо LongTerm
}
FuelFlowGramsPerSecond
=
double(MAF
/
AirFuelRatio)
*
ls_term_val;
//
Получаемрасходграммбензинавсекундувсоотношении 14,7 воздуха/к 1 литрабензина, корректировка ls_term_val
FuelFlowLitersPerSecond
=
FuelFlowGramsPerSecond
/
FuelDensityGramsPerLiter;
//
Переводимграммыбензинавлитры
LPH = FuelFlowLitersPerSecond * 3600.0;
// Ковертированиелитроввчас
}
Speed(); // получить скорость
if (time_old == 0) {
time_old = millis(); // выполнится один раз при появлении оборотов
}
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
88
Продолжение ПРИЛОЖЕНИЯ Б
time_new = millis(); // время со старта программы в мс
time = (double(time_new - time_old) / 1000.0) * tcorrect; // прошло время с последнего расчета скорости,
расхода - в сек
if (time > 10) {
time = 0;
}
time_old = time_new; // записать новое время для сравнения в следующем цикле
if (speed_var > 0) {
odometr_add = double((double(speed_var * 1000.0) / 3600.0) * time) / 1000.0;
odometr = odometr + odometr_add; //обшийпробегвкм
}
benz_add = FuelFlowLitersPerSecond * time;
benz_potracheno = benz_potracheno + benz_add; // общийрасходвлитрах
if (((speed_var > 1) and (speed_var < 10) and ((time_new - time_old_gurnal) > 30000)) or ((speed_var == 0)
and ((time_new - time_old_gurnal) > 10000))) {
double odometr_eeprom = EEPROM_float_read(111) + odometr_add_gurnal + odometr_add;
double benz_eeprom = EEPROM_float_read(122) + benz_add_gurnal + benz_add;
EEPROM_float_write(111, (odometr_eeprom)); // записываем в энергонезависимую память журнала
расстояние каждые 5 секунд... в памяти занимаются ячейкм 111,112,113,114
EEPROM_float_write(122, (benz_eeprom)); // записываембензин
odometr_add_gurnal = 0;
benz_add_gurnal = 0;
time_old_gurnal = time_new;
}
else {
odometr_add_gurnal = odometr_add_gurnal + odometr_add;
benz_add_gurnal = benz_add_gurnal + benz_add;
}
}
if (odometr > 0) {
LP100 = (benz_potracheno / odometr) * 100.0;
//расходбензинана 100 км (влитрах)
}
double full_odometr_gurnal = EEPROM_float_read(111);
double full_benz_gurnal = EEPROM_float_read(122);
switch (selmon) {
case 0:
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(speed_var); // Скорость
lcd.print(" km/h");
lcd.setCursor(12, 0);
lcd.print(int(rpm_var)); //Обороты
lcd.print(" rpm");
lcd.setCursor(0, 1);
lcd.print(LPH); // л/час
lcd.print(" L/h");
lcd.setCursor(12, 1);
if (voltage == 0) {
lcd.print("-"); //Напряжение
lcd.print("-");
lcd.print(".");
lcd.print("-");
}
else {
lcd.print(voltage); //Напряжение
}
lcd.print(" V");
lcd.setCursor(0, 2);
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
89
Продолжение ПРИЛОЖЕНИЯ Б
if (odometr > 0.1) { // отображать расход на 100 км только после 100 метров пробега
lcd.print(LP100);
}
else {
lcd.print("-.--");
}
lcd.print(" L/100");
lcd.setCursor(12, 2);
lcd.print(tmp_var); //Температура
lcd.print(" \1");
lcd.print("C");
lcd.setCursor(0, 3);
lcd.print(odometr); // пройденныйпутьсзаводкиавто
lcd.print(" km");
lcd.setCursor(12, 3);
lcd.print(benz_potracheno); // бензинапотраченосзаводкиавто
lcd.print(" L");
break;
case 1:
value = digitalRead(pin); // проверка состояния кнопки для переключения экрана
value2 = digitalRead(pin2);
if ((value == LOW) and (value2 == LOW)) {
float odometr0 = 0.00, benz0 = 0.00;
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(" Ochistka jurnala! ");
lcd.setCursor(0, 1);
lcd.print("--------------------");
lcd.setCursor(0, 2);
lcd.print(" Gdi 3 secundy dlya ");
lcd.setCursor(0, 3);
lcd.print(" ochistki.. ");
delay(3000);
lcd.clear();
value = digitalRead(pin); // проверка состояния кнопки для переключения экрана
value2 = digitalRead(pin2);
if ((value == LOW) and (value2 == LOW)) {
EEPROM_float_write(111, odometr0);
EEPROM_float_write(122, benz0);
lcd.setCursor(0, 1);
lcd.print("|----[Clear OK]----|");
delay(2000);
}
else {
lcd.setCursor(0, 1);
lcd.print("|----[Otmeneno]----|");
delay(2000);
}
}
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(full_odometr_gurnal); // Полноерасстояние
lcd.print(" km");
lcd.setCursor(12, 0);
lcd.print(full_benz_gurnal); // Весьпотраченныйбензин
lcd.print(" L");
if (full_odometr_gurnal > 0) {
lcd.setCursor(0, 1);
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
90
ПродолжениеПРИЛОЖЕНИЯБ
lcd.print((full_benz_gurnal / full_odometr_gurnal) * 100.0); // Полныйсреднийрасход
lcd.print(" L/100");
}
break;
case 2:
lcd.setCursor(0, 0);
lcd.print(selmon);
lcd.print(".");
lcd.print("Nagruzka dvigatela");
lcd.setCursor(0, 3);
lcd.print(raschet_nagruzka_dvigatelya_var);
lcd.print(" % ");
break;
case 3:
Tmp();
lcd.setCursor(0, 0);
lcd.print(selmon);
lcd.print(".");
lcd.print("Temperatura");
lcd.setCursor(0, 1);
lcd.print("ohlazhdaiushchej");
lcd.setCursor(0, 2);
lcd.print("zhidkosti");
lcd.setCursor(0, 3);
lcd.print(tmp_var);
lcd.print(" \1");
lcd.print("C ");
break;
case 4:
Pdz();
lcd.setCursor(0, 0);
lcd.print(selmon);
lcd.print(".");
lcd.print("Polozhenie");
lcd.setCursor(0, 1);
lcd.print("drosselnoj zaslonki");
lcd.setCursor(0, 3);
lcd.print(polozh_dross_zaslon);
lcd.print(" % ");
break;
case 5:
if (rpm_var < engine_on_rpm) {
DavlenVpuskKoll();
}
lcd.setCursor(0, 0);
lcd.print(selmon);
lcd.print(".");
lcd.print("Davlenie");
lcd.setCursor(0, 1);
lcd.print("vpusknogo kollektora");
lcd.setCursor(0, 3);
lcd.print(dvk_var);
lcd.print(" kPa ");
break;
case 6:
lcd.setCursor(0, 0);
lcd.print(selmon);
lcd.print(".");
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
91
ПродолжениеПРИЛОЖЕНИЯБ
lcd.print("Obototy dvigatelya");
lcd.setCursor(0, 3);
lcd.print(rpm_var);
lcd.print(" rpm ");
break;
case 7:
lcd.setCursor(0, 0);
lcd.print(selmon);
lcd.print(".");
lcd.print("Skorost avto");
lcd.setCursor(0, 3);
lcd.print(speed_var);
lcd.print(" km/h ");
break;
case 8:
Uoz();
lcd.setCursor(0, 0);
lcd.print(selmon);
lcd.print(".");
lcd.print("UOZ");
lcd.setCursor(0, 3);
lcd.print(uoz_var);
lcd.print(" \1 ");
break;
case 9:
if (rpm_var < engine_on_rpm) {
IntakeAirTemp();
}
lcd.setCursor(0, 0);
lcd.print(selmon);
lcd.print(".");
lcd.print("Temperatura");
lcd.setCursor(0, 1);
lcd.print("vsasyvaemogo vozduha");
lcd.setCursor(0, 3);
lcd.print(intake_air_temp_var);
lcd.print(" \1");
lcd.print("C ");
break;
case 10:
Voltage();
lcd.setCursor(0, 0);
lcd.print(selmon);
lcd.print(".");
lcd.print("Napryazhenie");
lcd.setCursor(0, 3);
if (voltage == 0) {
lcd.print("-"); //Напряжение
lcd.print("-");
lcd.print(".");
lcd.print("-");
}
else {
lcd.print(voltage); //Напряжение
}
lcd.print(" V ");
break;
case 11:
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
92
Продолжение ПРИЛОЖЕНИЯ Б
// B1S1();
// B1S2();
lcd.setCursor(0, 0);
lcd.print(selmon);
lcd.print(".");
lcd.print("Oxygen B1S1:");
lcd.setCursor(0, 1);
lcd.print(b1s1_val);
lcd.print(" V ");
lcd.setCursor(0, 2);
lcd.print("Oxygen B1S2:");
lcd.setCursor(0, 3);
lcd.print(b1s2_val);
lcd.print(" V ");
break;
case 12:
lcd.setCursor(0, 0);
lcd.print(selmon);
lcd.print(".");
lcd.print("Short fuel trim");
lcd.setCursor(0, 1);
lcd.print(short_term_val);
lcd.print(" % ");
lcd.setCursor(0, 2);
lcd.print("Long fuel trim");
lcd.setCursor(0, 3);
lcd.print(long_term_val);
lcd.print(" % ");
break;
case 13:
Dts();
lcd.setCursor(0, 0);
lcd.print(selmon);
lcd.print(".");
lcd.print("Davlenie topliva");
lcd.setCursor(0, 3);
lcd.print(davlenie_topliva_var);
lcd.print(" kPa ");
break;
case 14:
Uroventopliva();
lcd.setCursor(0, 0);
lcd.print(selmon);
lcd.print(".");
lcd.print("Uroven topliva");
lcd.setCursor(0, 3);
lcd.print(uroven_topliva_var);
lcd.print(" % ");
break;
case 15:
Maf();
lcd.setCursor(0, 0);
lcd.print(selmon);
lcd.print(".");
lcd.print("Massovyj rasshod");
lcd.setCursor(0, 1);
lcd.print("vozduha");
lcd.setCursor(0, 3);
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
93
ПродолжениеПРИЛОЖЕНИЯБ
lcd.print(maf_var);
lcd.print(" gramm/sec ");
break;
case 16:
Tempmasla();
lcd.setCursor(0, 0);
lcd.print(selmon);
lcd.print(".");
lcd.print("Temperatura masla");
lcd.setCursor(0, 1);
lcd.print("dvigatelya");
lcd.setCursor(0, 3);
lcd.print(tmp_masla_var);
lcd.print(" \1");
lcd.print("C ");
break;
case 17:
if (rpm_var < engine_on_rpm) {
FuelSystemStatus();
}
lcd.setCursor(0, 0);
lcd.print(selmon);
lcd.print(".");
lcd.print("FuelSystemStatus:");
lcd.setCursor(0, 3);
lcd.print(fss_val); // если форсунки отключены то 1, если работают то 2
break;
case 18: // экран технологический 1
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("IMAP:");
lcd.print(IMAP);
lcd.setCursor(12, 0);
lcd.print("VE: ");
lcd.print(VE);
lcd.setCursor(0, 1);
lcd.print("MAF: ");
lcd.print(MAF);
lcd.setCursor(0, 2);
lcd.print("Benzin: ");
lcd.print(String(benz_potracheno, 9));
lcd.setCursor(0, 3);
lcd.print("AddMgn: ");
lcd.print(String(benz_add, 9));
break;
case 19: // экран технологический 2
lcd.clear();
lcd.setCursor(0, 0);
lcd.print("time_start: ");
lcd.print(millis() / 1000);
lcd.setCursor(0, 1);
lcd.print("LS_kor: ");
lcd.print(String(ls_term_val, 6));
lcd.setCursor(0, 2);
lcd.print("FSS: ");
lcd.print(fss_val);
lcd.setCursor(8, 2);
lcd.print("Load: ");
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
94
Продолжение ПРИЛОЖЕНИЯ Б
lcd.print(raschet_nagruzka_dvigatelya_var);
lcd.setCursor(0, 3);
lcd.print("time_loop: ");
lcd.print(time);
break;
case 20:
CheckEngineOchistka();
CheckEngineKm();
lcd.clear();
value = digitalRead(pin);
value2 = digitalRead(pin2);
if ((value == LOW) and (value2 == LOW)) { // проверкасостояниякнопкидляочисткиошибок
lcd.clear();
lcd.setCursor(0, 0);
lcd.print(" Ochistka oshibok! ");
lcd.setCursor(0, 1);
lcd.print("--------------------");
lcd.setCursor(0, 2);
lcd.print(" Gdi 4 secundy dlya ");
lcd.setCursor(0, 3);
lcd.print(" ochistki.. ");
delay(4000);
lcd.clear();
value = digitalRead(pin); // проверкасостояниякнопкидляочисткиошибок
value2 = digitalRead(pin2);
if ((value == LOW) and (value2 == LOW)) {
obd.clearDTC();// очисткаошибок
lcd.setCursor(0, 1);
lcd.print("|----[Clear OK]----|");
delay(2000);
}
else {
lcd.setCursor(0, 1);
lcd.print("|----[Otmeneno]----|");
delay(2000);
}
}
lcd.setCursor(0, 0);
lcd.print("S ochistki oshibok: ");
lcd.setCursor(0, 1);
lcd.print(check_engine_km);
lcd.print(" km ");
lcd.setCursor(0, 2);
lcd.print("Check Engine gorit: ");
lcd.setCursor(0, 3);
lcd.print(check_engine_flash);
lcd.print(" km ");
break;
}
}
void Speed(void) {
obd.readPID(PID_SPEED, speed_var);
}
void Tmp(void) {
obd.readPID(PID_COOLANT_TEMP, tmp_var);
}
void Rpm(void) {
obd.readPID(PID_RPM, rpm_var);
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
95
ПродолжениеПРИЛОЖЕНИЯБ
}
void DavlenVpuskKoll(void) {
obd.readPID(PID_INTAKE_MAP, dvk_var);
}
void IntakeAirTemp(void) {
obd.readPID(PID_INTAKE_TEMP, intake_air_temp_var);
}
void Voltage(void) {
voltage = obd.getVoltage();
}
void Rnd(void) {
obd.readPID(PID_ENGINE_LOAD, raschet_nagruzka_dvigatelya_var);
}
void Dts(void) {
obd.readPID(PID_FUEL_PRESSURE, davlenie_topliva_var);
}
void Uoz(void) {
obd.readPID(PID_TIMING_ADVANCE, uoz_var);
}
void Maf(void) {
obd.readPID(PID_MAF_FLOW, maf_var);
}
void Pdz(void) {
obd.readPID(PID_THROTTLE, polozh_dross_zaslon);
}
void Uroventopliva(void) {
obd.readPID(PID_FUEL_LEVEL, uroven_topliva_var);
}
void Tempmasla(void) {
obd.readPID(PID_ENGINE_OIL_TEMP, tmp_masla_var);
}
void CheckEngineKm(void) {
obd.readPID(PID_DISTANCE, check_engine_km);
}
void CheckEngineOchistka(void) {
obd.readPID(PID_DISTANCE_WITH_MIL, check_engine_flash);
}
void ShortTerm(void) {
obd.readPID(PID_SHORT_TERM_FUEL_TRIM_1, short_term_val);
}
void LongTerm(void) {
obd.readPID(PID_LONG_TERM_FUEL_TRIM_1, long_term_val);
}
//void SearchErrorEngine(void) {
//}
//void B1S1(void) {
//}
//void B1S2(void) {
//}
void FuelSystemStatus(void) {
obd.readPID(PID_FUEL_SYSTEM_STATUS, fss_val);
}
void EEPROM_float_write(int addr, float val) // записьвЕЕПРОМ
{
byte *x = (byte *)&val;
for (byte i = 0; i < 4; i++) EEPROM.write(i + addr, x[i]);
}
float EEPROM_float_read(int addr) // чтениеизЕЕПРОМ
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
96
ОкончаниеПРИЛОЖЕНИЯБ
{
bytex[4];
for (byte i = 0; i < 4; i++) x[i] = EEPROM.read(i + addr);
float *y = (float *)&x;
return y[0];
}
Изм. Лист
№ докум.
Подпис Дата
ь
БР–02069964–43.03.01–07–19
Лист
97
Отзывы:
Авторизуйтесь, чтобы оставить отзыв