У зв'язку із встановленням по місту камер, що фіксують порушенняшвидкісного режиму, вирішив зробити собі пристрій, який менедисциплінував. Це була моя початкова ідея, потім апетит у менепочав приходити в міру вникання в цю тему. Так як мені цікаворозібратися в цій проблемі, я відкинув стандартні гаджети і вирішивпридумати щось своє.Довго збирав інформацію на просторах інтернету, форумів вирішив трохи поділитися і розповісти простою мовою проможливості, що можна витягти з мізків машини. — не нашкодь машині Зцих міркувань вирішив використовувати діагностичний роз'єм машини зпротоколом обміну по блютузу.Спершу вивчив у вікіпедії можливостіOBD II. З цього протоколу збирати потрібну інформацію Виявилося, щокожна машина має доступ не до всіх параметрів OBD II Наявністьдоступних параметрів видається за запитом (00Н) Зробивши запит, яотримав відповідь
41 00 BE 1F B8 11
Код (BEH) розшифровується (розшифровка у вікіпедії) і простийдоступ до блютузу у мене доступний до :
1. Розрахункове навантаження двигуна. (04H)
2. Температура охолоджуючої рідини двигуна. (05H)
3. Короткочасне коригування паливоподачі - банк 1. (06H)
4. Довгострокове коригування паливоподачі - банк 1 . (07H)
5. Оберти двигуна. (0CH)
6. Швидкість автомобіля. (0DH)
7. УОЗ. (0EH)
8. Температура повітря, що всмоктується. (0FH)
9. Витрата повітря MAF.(10Н)
10. Положення дросельної заслінки. (11Н)
11. Наявність датчиків кисню. (13Н)
12. Датчик кисню 1 A:Напруга B:Короткочасне коригуванняпаливоподачі.(14Н)
13. Датчик кисню 2 A:Напруга B:Короткочасне коригуванняпаливоподачі. (15Н)
Виходить, що простим способом можна отримувати інформацію прошвидкість автомобіля (що мені і треба було) і далі аналізувати тасигналізувати. Плюс можна трохи діагностувати роботу авто зкорекцій, ДМРВ, заслінку, УОЗ, ТЕЖ. Далі у мене постало питанняяким способом витягнути цю інформацію. Довелося з нуля розібратисяв новому для мене напрямі Arduino. Грубо кажучи, це мікроконтролер, який може виконувати певні команди. Ці справи нині повальнозахоплена молодь. Управління роботами, механізмами тощо. Мовапрограмування для мене була не дуже знайома, але потроху я в нійрозібрався, вивчаючи чужі приклади програм. Ну і найголовніше – цеяк зв'язати OBD II та Arduino без злому автомобіля? Звичайно -блютуз на базі ELM327 (синій зуб) версії 1.5 за K, L-лініями. ДляАрдуїнки теж купили блютузний блочок НС-08. Для того щоб подружитиELM327 і НС-08 їх треба запрограмувати, тобто перевести в спецрежимпрограмування за допомогою АТ-команд. Ось тут я засів надовго. Якщоз ELM327 я розібрався швидко, з НС-08 у мене виникла проблема, якуя поки що не вирішив – не міг увімкнути програмування АТ-командами.Зрештою я купив НС-05 з яким все вдало вийшло, а НС-08 відклав докращих часів. Наступна складність у мене виникла в написанніпрограми (скетчу), тому що викладені у вільному доступі програми непішли. Довелося сидіти та писати своє власне. Може й корявонаписане, але працює. Поки сиджу граюсь, дивлюся параметри таналагоджую програму. У планах зробити бортовийкомп'ютер-помічник-діагност. Займаюся цим не поспішаючи, у мірувільного часу. Проект не комерційний, опобікований для загальногоознайомлення. А глобальні плани полізти ще глибше – CAN-шина. Тамще більше інформації, але це вже інша тема. Приклад обробкипараметра - обороти двигуна. br>






Коментарі19
поділись будь ласка скетчем, до elm підключився, чого далі робити не зрозумію. приклад якийсь би глянути.
Здрастуйте, Андрію. Я хочу зробити щось подібне на 7 дюймів дисплей вивести навігатор, музику і діагностику. Тільки машина у мене інша, Volvo S60. У мене питання звідки ви брали інформацію по кодах діагностики?
Є стандартні коди діагносики, приклад у цій статті. Якщо треба достукатися глибше, то з цим проблема. Цією інформацією не діляться і їх дізнаються або платно або хакають шину (обчислюють) шляхом пролущування шини. Для кожної марки машин є свої коди, ...
зі швидкістю не зрозуміло. Навіщо вимагати з діагностики швидкість, якщо простіше взяти вже готовий сигнал із вторинного датчика швидкості, який формує сама приладка. Вже готова цифра присутня у вигляді 8 імпульсів на оберт колеса.
Це ж треба в приладку лізти, розкривати, паяти. А, наприклад, значення ДМРВ? корекцій? температури ОЖ? лямбда? І все лізти з проводами в приладку? легше порахувати, ніж взяти одну цифру з діагностичного роз'єму?
Звичайно простіше. Та й аналогові сигнали температури і палива там же, на роз'ємах приладки присутні. Ось обтотів, лямбди, витрати повітря там немає. датчиком витрат повітря трохи інше, його показання дійсно можна використовувати для відображення мом...
А як приладка реагуватиме якщо паралельний підпаяти?
безумовно звичайно не можна, потрібна узгодження на операційниках з високим вхідним опором, типу комон рейл.
Мої знання електроніки не на такому рівні.
Нічого складного немає в цьому. Для того, щоб узгодити аналогову величину зі входом ацп контролера потрібен найпростіший оу включений за схемою повторювача напруги, з ку =1. Це з'єднаний інв. вхід з виходом а сигнал з датчика подавати на неінв. а вих...
А ти маєш цей опис по Х-трейлу
files.dp.ua/ru/PXQcрозпаковуєш каталог, тиснеш на підфнік меню і звідти тиснеш файл MWI
Дякую, вивчатиму.
Все дуже здорово, але тема розміщена не в тому паблику. Є співтовариство Ардуїно для авто (сам її почитаю і пишу), там ваші праці гідно оцінять. А тут пости про те, як помив машину, замінив двірник на задній двері чи відбійник на підлокітнику От сюди...
Я те саме в тому суспільстві. Але розмістив цей матеріал у бортжурналі з міркування, що простий обиватель може простими способами діагностувати свою машинку. Я у своїх публікаціях наголошую на самостійній діагностиці в межах власного гаража своїми си...
Температуру варіатору можна вивести?
Наскільки я розібрався, треба робити запити через CAN-шину
я ось намагаюся знайти якийсь запит робити. Після покупки машини став замислюватися як зробити бортовий комп'ютер, щоб кожен раз телефон не підключати. За фактом мені тільки температура варіатора на даний момент і важлива.
за влучним запитом поки не скажу, ще не дійшли руки до цього. Але для контролю температури поки використовую програму Сvtz50.