Страница 6 из 10

ARDUINO в качестве бортового компьютера для автомобиля.

Добавлено: 25.07.2017{, 19:18}
Andrej
вот такой у меня адаптер есть. Из схемы понятно что K-Line сигнал только через БТ, меня это не устраивает. Частые обрывы связи, помехи и прочее.
СпойлерПоказать
1831199.jpg

ARDUINO в качестве бортового компьютера для автомобиля.

Добавлено: 25.07.2017{, 19:29}
DrMario
Andrej писал(а):меня это не устраивает. Частые обрывы связи, помехи и прочее.
Выше я дал ссылку как проверить нормальный адаптер. Командой ATPPS вызвать таблицу, из которой можно будет узнать на какой скорости обмена работает сам чип ЕЛМ. Если скорость головки блютуз и скорость чипа не совпадают, то адаптер будет некорректно работать.

ARDUINO в качестве бортового компьютера для автомобиля.

Добавлено: 25.07.2017{, 19:36}
Andrej
DrMario писал(а):Если скорость головки блютуз и скорость чипа не совпадают
Это я еще давно проверил, нормально все. 
А блок из этой библиотеки можно собрать? Получилось бы связка: данные-блок ОБД-блок УАРТ- отправка. Прием блоком УАРТ-обработка блоком ОБД-данные.
Бред конечно, ну а вдруг?

ARDUINO в качестве бортового компьютера для автомобиля.

Добавлено: 25.07.2017{, 20:13}
DrMario
Думаю, что блоки можно будет сделать прямо в флпроге. Для этого после положительного ответа от ЕЛМ об успешном соединении, нужно будет подать команду 01 00 и запросить список поддерживаемых PID’ов для определения какие параметры поддерживаются автомобилем - биты поддерживаемых параметров. Остальное дело техники. Все формулы для расчета значений всех параметров есть на википедии. Работать с адаптером ЕЛМ удобно еще тем, что обмен с ЕЛМ происходит в строчном виде, данные приходят тоже в строчном виде.
Пример раскладки поддерживаемых ПИДов здесь.

ARDUINO в качестве бортового компьютера для автомобиля.

Добавлено: 25.07.2017{, 20:48}
Andrej
В ваших словах есть мотивация и очень железная! Мне пообещали дать на пробу НС05, но будет это очень не скоро. Пока же я все таки попытаюсь что то сваять на МЕГЕ с использованием компаратора LM293. который есть в наличии. 
По ЕЛМ могу сказать что все это китай и очень не стабильный! Общение должно быть ровно 25/25мс, а он по каким то причинам сбивает этот режим. Есть подозрения что (схема дана выше) конденсаторы на кварце чудят или сам кварц не стабилен. Я не электронщик, это все что смог узнать. У всех моих знакомых кто купил подобные адаптеры тоже иногда наблюдается такой сбой. Поэтому и было принято решение исключить этот глюк из проекта изначально. Как вариант можно поискать с USB выходом, но там тоже поле чудес! Частенько там просто кристалл в эпоксидке и получить оттуда чистый RX-TX нет возможности.

Добавлено (25.07.2017, 20:48)
---------------------------------------------
Вот такую тему мне подкинули добрые люди.

ARDUINO в качестве бортового компьютера для автомобиля.

Добавлено: 25.07.2017{, 21:07}
DrMario
Ссылка магазина на "хвостатый" адаптер, что Вы давали выше должен нормально подойти. Он на чипе FTDI и легко можно будет найти необходимые выводы RxD и TxD. Эти выводы нужно будет напрямую подключать к порту ардуины.
Спаривать два блютуз модуля на адаптере и в ардуине даже не знаю как это получится.
Примерно накидал опрос одного параметра, который есть на всех машинах.

ARDUINO в качестве бортового компьютера для автомобиля.

Добавлено: 25.07.2017{, 21:15}
Andrej
ВОТ! Вот что мне надо! Аналог ОБД с чистым выходом RX-TX!!!

Добавлено (25.07.2017, 21:15)
---------------------------------------------
DrMario писал(а):Он на чипе FTDI
Тоесть полагаете что не возможно без интерфеса FTDI создать запросы опираясь на внутренние блоки?

ARDUINO в качестве бортового компьютера для автомобиля.

Добавлено: 25.07.2017{, 21:36}
DrMario
Чип FTDI нужно будет убрать из ELM адаптера совсем, он там будет не нужен. Вместо него нужно будет подключать КОМ порт ардуины и управлять самим чипом ELM при помощи АТ команд. Ответы от чипа можно выводить на дисплей в строчном виде, а после ответа что ELM соединился с ЭБУ двигателем уже отправлять запросы параметров тоже в строчном виде.
Если идти другим, аппаратным путем на низком уровне, то необходимо знание формата сообщений протокола, на котором работает данный ЭБУ а прежде нужно научится делать инициализацию этого протокола.

Добавлено (25.07.2017, 21:36)
---------------------------------------------
Andrej писал(а):ВОТ! Вот что мне надо! Аналог ОБД с чистым выходом RX-TX!!!
Это называется обычный адаптер K-Line

ARDUINO в качестве бортового компьютера для автомобиля.

Добавлено: 26.07.2017{, 14:28}
Andrej
Формат я знаю. А вот с инициализацией пока затык. Если вы правы, а вы правы то ардуино имеет тот же эффект сбоя такта как и китайские ЕЛМ. Интересно, у не китайских ардуино тоже есть такая болезнь?

Управление спомощью АТ команд это замечательно и очень облегчит задачу! Но я их совершенно незнаю и не представляю как это будет смотреться.
В общем пока занимаюсь таймерами и читаю форум.

Добавлено (26.07.2017, 14:28)
---------------------------------------------
Нашел такой таймер SP-таймер. Аналог на сименсах судя по описанию. Как думаете, подойдет?

ARDUINO в качестве бортового компьютера для автомобиля.

Добавлено: 31.07.2017{, 14:04}
omich66
Вот   проект, только не на Ардуине. Идею можно позаимствовать. Используется STM32. На ней проще, поскольку многое поддерживается аппаратно.

ARDUINO в качестве бортового компьютера для автомобиля.

Добавлено: 01.08.2017{, 06:22}
Andrej
omich66 писал(а):Используется STM32
Там же нет ни настроек, ни вменяемых параметров. Полуподелка. 
Заказал шнурок ЕЛМ. Ждем.

ARDUINO в качестве бортового компьютера для автомобиля.

Добавлено: 01.08.2017{, 10:18}
omich66
Andrej писал(а):Там же нет ни настроек, ни вменяемых параметров
Настройки в исходниках.
При наличии ELMа проще установить Torque на смартфон или планшет или ScanMaster под винду и получите все необходимое без ардуины.
Можно кое-что здесь посмотреть. Только задачка там обратная. Ардуино выступает в роли ECU.

Добавлено (01.08.2017, 10:18)
---------------------------------------------
Andrej писал(а):Заказал шнурок ЕЛМ. Ждем
Версия шнурка какая?
Если 2.1 то можно попасть на урезанный вариант прошивки.

ARDUINO в качестве бортового компьютера для автомобиля.

Добавлено: 01.08.2017{, 13:55}
Andrej
omich66 писал(а):При наличии ELMа проще установить Torque
Я не горю желанием загружать телефон торкуэ когда он мне нужен как телефон. Если вы купите мне еще один смартфон, тогда согласен!
omich66 писал(а):Настройки в исходниках.
Я похож на крутого специалиста по программированию??? Не смешите мои дырявые носки!   
Спасибо, но stm32 отпадает за незнанием языка "с". А все мои попытки хотя бы разобраться в том что дали и собрать работающую поделку приведут к вашему суициду.    Будут такие вопросы?!?   Что в пору застрелиться! Лучше живите счастливо! 

ARDUINO в качестве бортового компьютера для автомобиля.

Добавлено: 01.08.2017{, 15:09}
omich66
Andrej писал(а):Я не горю желанием загружать телефон торкуэ когда он мне нужен как телефон
Поэксперементировав с телефоном вы хотя бы поймете что можно получить от вашего авто, и надо ли оно вам.
Возможно на этом все и закончится

ARDUINO в качестве бортового компьютера для автомобиля.

Добавлено: 01.08.2017{, 15:22}
OlegAn1962
По-моему, это очередная мертвая тема на кучу страниц.

ARDUINO в качестве бортового компьютера для автомобиля.

Добавлено: 01.08.2017{, 16:32}
omich66
OlegAn1962 писал(а):По-моему, это очередная мертвая тема на кучу страниц.
Согласен

ARDUINO в качестве бортового компьютера для автомобиля.

Добавлено: 02.08.2017{, 05:40}
Andrej
omich66 писал(а):Поэксперементировав
Прийдет елм и будем посмотреть.

ARDUINO в качестве бортового компьютера для автомобиля.

Добавлено: 07.08.2017{, 14:19}
Andrej
Такая схема будет работать? Дело в том что с китая ждать нужные микросхемы очень долго, а тут я в наличии нашел последние 2 таких. Уже собрал на проводках схему, но пока не испытывал. Машина очень далеко, в другом районе. В суботу заберу и попробую.
СпойлерПоказать
4135609.jpg
Добавлено (05.08.2017, 19:26)
Попробовал. Не понимает он что я от него хочу. Запрос идет, а ЭБУ не отвечает. Придется ждать шнурок.     Уже разные форматы испробовал. Молчит. Правда разок выдал 255, видно замучал я его вот он и матюкнулся.

Добавлено (07.08.2017, 14:19)
Все таки откликнулся раз ЭБУ вчера! Потом ноут выключился, батарея села. Подключал через 0-1, скорость 9600. Я на 13й пин подсадил опознание байта ответа. Да и на дисплее что то высветилось, не успел расмотреть.

ARDUINO в качестве бортового компьютера для автомобиля.

Добавлено: 08.08.2017{, 08:53}
DrMario
Тема может и не совсем мертвая, если правильно поставить задачу.
Если целью является получать данные от мотора по стандарту (протоколу) OBD-II Generic, то для начала необходимо разобраться с самим стандартом. Это даст возможность осознать, какой список параметров будет доступен после запроса поддерживаемых PID's.
После чего необходимо иметь знания и понимать разницу в протоколах обмена данными и инициализации протоколов. Для общего стандарта ОБД2 их несколько типов:
1 - SAE J1850 PWM (41.6 Kbaud) 
2 - SAE J1850 VPW (10.4 Kbaud) 
3 - ISO 9141-2  (5 baud init, 10.4 Kbaud) 
4 - ISO 14230-4 KWP (5 baud init, 10.4 Kbaud) 
5 - ISO 14230-4 KWP (fast init, 10.4 Kbaud) 
6 - ISO 15765-4 CAN (11 bit ID, 500 Kbaud) 
7 - ISO 15765-4 CAN (29 bit ID, 500 Kbaud) 
8 - ISO 15765-4 CAN (11 bit ID, 250 Kbaud) 
9 - ISO 15765-4 CAN (29 bit ID, 250 Kbaud)
Для заводских (OEM) протоколов еще есть много разновидностей.
После этого можно пытаться получать данные от ЭБУ двигателя и выводить их на дисплей например.
Если пропустить второй этап, то останется только иметь понятие о стандарте OBD-II Generic и данные получать через интерфейс ELM-327.
Вот как-то так.

ARDUINO в качестве бортового компьютера для автомобиля.

Добавлено: 08.08.2017{, 21:27}
Andrej
Все верно! Я использую протокол 5 - ISO 14230-4 KWP (fast init, 10.4 Kbaud) с устойчивой скоростью ( не путать с максимальной) 10400Kb. Но так как в ФЛпрог нет такой скорости, я использовал 9600, это ближе к тем параметрам что заявил разработчик ЭБУ. У меня раз получилось подцепиться, но как вы уже знаете ноут разрядился.
Вот по такой схеме у меня получилось. диск. Возможно я что то перемудрил, но спрашивать нестал. Схема примерная, так как я порядком трех часов что то изменял, корректировал. Изменения помоему только в данных. Ну может что то из блоков добавил.

Добавлено (08.08.2017, 18:58)
---------------------------------------------
Еще я нашел вот такой сайт с описанием протокола на буржуйском. Пока изучаю.

Добавлено (08.08.2017, 20:30)
---------------------------------------------
Нужна помощь. Я использую шаблоны с форумов, но хотелось бы формировать самому данные запроса. Исходя из ОПИСАНИЯ я попробую сформировать запрос, а вы поправьте.

Мне нужно к примеру получить параметр "010C2Обороты двигателя016,383.75rpm((A*256)+B)/4"
Получается что мне надо сформировать в НЕХ 8211F1(Это заголовок)0С01(данные) а как вычислить контрольную сумму? Из чего она исчисляется?

Добавлено (08.08.2017, 21:27)
---------------------------------------------
Разобрался. На хабаре нашел нужный калькулятор. Надо просто все сложить вместе и последние два байта и есть контрольная сумма.