PCCar.ru - Ваш автомобильный компьютер

Вернуться   PCCar.ru - Ваш автомобильный компьютер > MP3Car ТехИнфа > Общение с машиной

Ответ
 
Опции темы
Старый 16.07.2015, 21:11   #11
T_r_D
Старший Пользователь
 
Регистрация: 03.07.2015
Регион: 77, 97, 99, 177
Сообщений: 321
T_r_D is a glorious beacon of lightT_r_D is a glorious beacon of lightT_r_D is a glorious beacon of lightT_r_D is a glorious beacon of lightT_r_D is a glorious beacon of light
По умолчанию

Bersenev Спасибо- понял.
Теперь сделал как у тебя.
Вот поэтому ID были такие короткие.

В первом сообщение подправил скетч.


Вот это лог снятый с машины.
<потёрто>

Последний раз редактировалось T_r_D; 16.07.2015 в 23:27.
T_r_D вне форума   Ответить с цитированием
Старый 16.07.2015, 22:16   #12
Bersenev
Бывалый писикарщик
 
Аватар для Bersenev
 
Регистрация: 23.04.2009
Возраст: 47
Город: Ставрополь
Регион: 26
Машина: Opel Zafira 2007
Сообщений: 5,301
Bersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant future
По умолчанию

Идентификатор 520, байты 0 и 1

C = buf[0];
C = (C*256+buf[1])/8;

Только файлы можно просто прикреплять к сообщению, а не вставлять их в текст
Bersenev вне форума   Ответить с цитированием
Старый 16.07.2015, 23:37   #13
T_r_D
Старший Пользователь
 
Регистрация: 03.07.2015
Регион: 77, 97, 99, 177
Сообщений: 321
T_r_D is a glorious beacon of lightT_r_D is a glorious beacon of lightT_r_D is a glorious beacon of lightT_r_D is a glorious beacon of lightT_r_D is a glorious beacon of light
По умолчанию

Bersenev
Как ты это делаешь шаман?
Какой прогой анализируешь?
Спасибо огромное!

Кстати по запросу через OBD II я так ни чего и не понял, но попробую ещё подумать.
Вики я всю пересмотрел.

PS. А что ещё можно извлечь из данного лога?

И проверил ща в машине.
Там опять какая-то каша!
Без запуска двигателя кажет
<CUT>

Скетч приобрёл вид
#include <SPI.h>
#include "mcp_can.h"
MCP_CAN CAN(10);
unsigned char len = 0;
unsigned char buf[8];
unsigned int RPM;
INT32U canId = 0x000; // идентификаторы могут быть 11-ти или 29-битные

void setup()
{
Serial.begin(115200);

START_INIT:

if(CAN_OK == CAN.begin(CAN_500KBPS,MCP_8MHz))
{
Serial.println("Init OK!");
}
else
{
Serial.println("Init fail");
delay(100);
goto START_INIT;
}
}

void loop()
{
if(CAN_MSGAVAIL == CAN.checkReceive()) // check if data coming
{
CAN.readMsgBuf(&len, buf);
canId = CAN.getCanId();
if (canId = 520)
{
RPM = buf[0];
RPM = (RPM*256+buf[1])/8;
Serial.print("Engine RPM: ");
Serial.println(RPM);
}
}
}

Последний раз редактировалось T_r_D; 17.07.2015 в 00:31.
T_r_D вне форума   Ответить с цитированием
Старый 17.07.2015, 00:01   #14
Bersenev
Бывалый писикарщик
 
Аватар для Bersenev
 
Регистрация: 23.04.2009
Возраст: 47
Город: Ставрополь
Регион: 26
Машина: Opel Zafira 2007
Сообщений: 5,301
Bersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant future
По умолчанию

Цитата:
Сообщение от T_r_D Посмотреть сообщение
Какой прогой анализируешь?
Своей, так как постоянно приходится вскрывать протоколы разной техники, пришлось написать для себя программку

Цитата:
Сообщение от T_r_D Посмотреть сообщение
PS. А что ещё можно извлечь из данного лога?
Из этого лога только обороты, так как для них он и делался, вроде ещё попалась температура ОЖ, но не факт. Для всего есть своя методика, но меня по работе интересует в основном скорость и уровень топлива
Bersenev вне форума   Ответить с цитированием
Старый 17.07.2015, 00:04   #15
Bersenev
Бывалый писикарщик
 
Аватар для Bersenev
 
Регистрация: 23.04.2009
Возраст: 47
Город: Ставрополь
Регион: 26
Машина: Opel Zafira 2007
Сообщений: 5,301
Bersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant future
По умолчанию

Цитата:
Сообщение от T_r_D Посмотреть сообщение
if (canId = 520)
А надо

if (canId == 520)
Bersenev вне форума   Ответить с цитированием
Старый 17.07.2015, 00:28   #16
T_r_D
Старший Пользователь
 
Регистрация: 03.07.2015
Регион: 77, 97, 99, 177
Сообщений: 321
T_r_D is a glorious beacon of lightT_r_D is a glorious beacon of lightT_r_D is a glorious beacon of lightT_r_D is a glorious beacon of lightT_r_D is a glorious beacon of light
По умолчанию

Bersenev всё- заработало, ещё раз спасибо!
А остальные цифры в 520 что-то значат?
Возможно ли что в одном ID два параметра находятся?

А в принципе видимо из этих данных можно выловить всё о машине что касается двигателя?

Как сделать лог для всего остального?
Ну например той же температуры ОЖ, скорости, напряжения, уровня топлива и самое главное расхода топлива?

И можно ли каким-то стандартным софтом анализировать протокол?
Хочу хоть примерно понять.

PS. Температура ОЖ там врядли была. она ровнялась температуре окружающей среды
T_r_D вне форума   Ответить с цитированием
Старый 17.07.2015, 00:59   #17
Bersenev
Бывалый писикарщик
 
Аватар для Bersenev
 
Регистрация: 23.04.2009
Возраст: 47
Город: Ставрополь
Регион: 26
Машина: Opel Zafira 2007
Сообщений: 5,301
Bersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant future
По умолчанию

Цитата:
Сообщение от T_r_D Посмотреть сообщение
Bersenev всё- заработало, ещё раз спасибо!
А остальные цифры в 520 что-то значат?
Возможно ли что в одном ID два параметра находятся?
Конечно возможно, даже в одном байте разные биты могут отвечать за разные датчики.

Цитата:
Сообщение от T_r_D Посмотреть сообщение
А в принципе видимо из этих данных можно выловить всё о машине что касается двигателя?
Можно, но сложно, если нет описания протокола.

Цитата:
Сообщение от T_r_D Посмотреть сообщение
Как сделать лог для всего остального?
Ну например той же температуры ОЖ, скорости, напряжения, уровня топлива и самое главное расхода топлива?
Для ОЖ просто зависти машину и ждать подъёма температуры градусов на десять. Для скорости равномерно разогнать машину до 40 - 50 км/ч и также спокойно остановиться. Напряжение не искал, но я бы просто померял его с помощью ардуино. Для топлива снимаем протокол, потом заливаем 10-20 литров и снова снимаем, для верности ещё заливаем и ещё раз снимаем протокол, потом анализируем три протокола. Расхода топлива в протоколе нет, его надо рассчитывать на основе других данных.

Цитата:
Сообщение от T_r_D Посмотреть сообщение
И можно ли каким-то стандартным софтом анализировать протокол?
Хочу хоть примерно понять.
я не знаю такого софта, все канхакеры, что находилось в сети, мне не подошли.

Цитата:
Сообщение от T_r_D Посмотреть сообщение
PS. Температура ОЖ там врядли была. она ровнялась температуре окружающей среды
ид 1362 , байт 1 и 2. формула скорее всего такая

(buf[1]*256 + buf[2])/256

то есть в байте 1 температура в градусах, а в байте 2 значение после запятой. У тебя в логе она поднялась с 37.8 до 39.2
Bersenev вне форума   Ответить с цитированием
Старый 17.07.2015, 01:36   #18
T_r_D
Старший Пользователь
 
Регистрация: 03.07.2015
Регион: 77, 97, 99, 177
Сообщений: 321
T_r_D is a glorious beacon of lightT_r_D is a glorious beacon of lightT_r_D is a glorious beacon of lightT_r_D is a glorious beacon of lightT_r_D is a glorious beacon of light
По умолчанию

Цитата:
Конечно возможно, даже в одном байте разные биты могут отвечать за разные датчики.
ТОгда нужно будет проконтролить не идёт ли чего нить ещё с оборотами вместе.

Цитата:
ид 1362 , байт 1 и 2. формула скорее всего такая

(buf[1]*256 + buf[2])/256

то есть в байте 1 температура в градусах, а в байте 2 значение после запятой. У тебя в логе она поднялась с 37.8 до 39.2
Завтра проверю.

И если будет время запишу лог разгона и торможения.

По поводу напряжения- хочется всётаки понять где оно там спрятано.

По поводу топлива- алгоритм-то понятен. Надо только лейку найти и доехать в канистру 20л бензина налить, вот только как потом ровно по 10 литров налить?
А второй канистры нету.

По поводу расхода- понятно. Там наверняка берётся из расчёта времени открытия форсунок и может быть давления в рампе.
T_r_D вне форума   Ответить с цитированием
Старый 17.07.2015, 21:11   #19
T_r_D
Старший Пользователь
 
Регистрация: 03.07.2015
Регион: 77, 97, 99, 177
Сообщений: 321
T_r_D is a glorious beacon of lightT_r_D is a glorious beacon of lightT_r_D is a glorious beacon of lightT_r_D is a glorious beacon of lightT_r_D is a glorious beacon of light
По умолчанию

Снял лог.
Разгон 0-60 и потом 60-0 с отпущенным газом.
Файл приложил.
В архиве txt

Про температуру.
Вчера ты написал
Цитата:
ид 1362 , байт 1 и 2. формула скорее всего такая

(buf[1]*256 + buf[2])/256

то есть в байте 1 температура в градусах, а в байте 2 значение после запятой. У тебя в логе она поднялась с 37.8 до 39.2
Скорее всего не 37.8, а 18.9 так как тепмература на улице не могла быть 40 градусов
Ща схожу проверю в машине.
Вложения
Тип файла: zip speed.zip (66.1 Кб, 159 просмотров)
T_r_D вне форума   Ответить с цитированием
Старый 17.07.2015, 23:38   #20
Bersenev
Бывалый писикарщик
 
Аватар для Bersenev
 
Регистрация: 23.04.2009
Возраст: 47
Город: Ставрополь
Регион: 26
Машина: Opel Zafira 2007
Сообщений: 5,301
Bersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant futureBersenev has a brilliant future
По умолчанию

ид 1101 скорость в 0 и 1, 2 и 3, 4 и 5, 6 и 7 байтах, но судя по всему в первых трёх парах скорость в милях, а в последней в километрах

Если разгонялся до 60 км/ч, то формула такая

(buf[6]*256 + buf[7])/200

Но это ещё надо разбираться, возможно что скорость в км именно в 0 и 1 байтах, тогда

(buf[0]*256 + buf[1])/100

что именно верно надо уже проверять экспериментально.

также скорость в ид 909 байт 0 и 1

(buf[0]*256 + buf[1])/100

В моторной шине скорость часто идёт с разными ид.

Но лучше их брать с шины которая идёт на панель приборов., там она всегда одна.

а ид 1362 ночно не температура ОЖ
Bersenev вне форума   Ответить с цитированием
Ответ


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.



Часовой пояс GMT +4, время: 09:35.


Работает на vBulletin® версия 3.8.4.
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Перевод: zCarot
Яндекс.Метрика