Протокол обмена данными
-
- Posts: 4657
- Joined: 18 Sep 2013, 01:58
- Your CAR: ВАЗ-21099 1,5л.
- SECU version: official SECU-3i TBZ
- Location: Украина, Павлоград
- Has thanked: 624 times
- Been thanked: 1020 times
- Contact:
Re: Протокол обмена данными
Тоже на 32 нужно делить, чтобы получить УОЗ?
60-2/SECU-3iTBZ-v4.9/бенз-газ/ДПДЗ/ДТВ/УДК/ГБО-4/ВЗ.
Отчёт ГБО-4 на карбюратор с SECU-3i - http://secu-3.org/forum/viewtopic.php?f=19&t=1549
Продаю бортовой компьютер - viewtopic.php?p=47182#p47182
Отчёт ГБО-4 на карбюратор с SECU-3i - http://secu-3.org/forum/viewtopic.php?f=19&t=1549
Продаю бортовой компьютер - viewtopic.php?p=47182#p47182
- STC
- Posts: 13843
- Joined: 30 Apr 2013, 23:41
- Your CAR: AZLK 2140
- SECU version: DIY SECU-3
- Location: North Korea
- Has thanked: 2160 times
- Been thanked: 4335 times
- Contact:
Re: Протокол обмена данными
Да.
Author of the SECU-3™ project http://SECU-3.org. An open source engine control unit / Ignition control system, (C) 2007.
Клуб проекта в Facebook https://www.facebook.com/groups/secu3club
Клуб проекта ВКонтакте https://vk.com/secu3club (вступаем!)
Клуб проекта в Facebook https://www.facebook.com/groups/secu3club
Клуб проекта ВКонтакте https://vk.com/secu3club (вступаем!)
-
- Posts: 4657
- Joined: 18 Sep 2013, 01:58
- Your CAR: ВАЗ-21099 1,5л.
- SECU version: official SECU-3i TBZ
- Location: Украина, Павлоград
- Has thanked: 624 times
- Been thanked: 1020 times
- Contact:
Re: Протокол обмена данными
Что нужно делать со значением лямбды, чтобы получить корректные данные? Делить на 4?
И с ускорением ДПДЗ?
И с ускорением ДПДЗ?
60-2/SECU-3iTBZ-v4.9/бенз-газ/ДПДЗ/ДТВ/УДК/ГБО-4/ВЗ.
Отчёт ГБО-4 на карбюратор с SECU-3i - http://secu-3.org/forum/viewtopic.php?f=19&t=1549
Продаю бортовой компьютер - viewtopic.php?p=47182#p47182
Отчёт ГБО-4 на карбюратор с SECU-3i - http://secu-3.org/forum/viewtopic.php?f=19&t=1549
Продаю бортовой компьютер - viewtopic.php?p=47182#p47182
- STC
- Posts: 13843
- Joined: 30 Apr 2013, 23:41
- Your CAR: AZLK 2140
- SECU version: DIY SECU-3
- Location: North Korea
- Has thanked: 2160 times
- Been thanked: 4335 times
- Contact:
Re: Протокол обмена данными
Делить на 512Что нужно делать со значением лямбды, чтобы получить корректные данные?
Если ты имеешь в виду скорость открытия/закрытия ДПДЗ, то значение уже в %/cек. А ускорение это уже вторая производная и мы его не вычисляем.И с ускорением ДПДЗ?
Author of the SECU-3™ project http://SECU-3.org. An open source engine control unit / Ignition control system, (C) 2007.
Клуб проекта в Facebook https://www.facebook.com/groups/secu3club
Клуб проекта ВКонтакте https://vk.com/secu3club (вступаем!)
Клуб проекта в Facebook https://www.facebook.com/groups/secu3club
Клуб проекта ВКонтакте https://vk.com/secu3club (вступаем!)
-
- Posts: 4657
- Joined: 18 Sep 2013, 01:58
- Your CAR: ВАЗ-21099 1,5л.
- SECU version: official SECU-3i TBZ
- Location: Украина, Павлоград
- Has thanked: 624 times
- Been thanked: 1020 times
- Contact:
Re: Протокол обмена данными
Спасибо.
А длительность впрыска? И сколько знаков после запятой? И значение в мсек.?
А длительность впрыска? И сколько знаков после запятой? И значение в мсек.?
60-2/SECU-3iTBZ-v4.9/бенз-газ/ДПДЗ/ДТВ/УДК/ГБО-4/ВЗ.
Отчёт ГБО-4 на карбюратор с SECU-3i - http://secu-3.org/forum/viewtopic.php?f=19&t=1549
Продаю бортовой компьютер - viewtopic.php?p=47182#p47182
Отчёт ГБО-4 на карбюратор с SECU-3i - http://secu-3.org/forum/viewtopic.php?f=19&t=1549
Продаю бортовой компьютер - viewtopic.php?p=47182#p47182
- STC
- Posts: 13843
- Joined: 30 Apr 2013, 23:41
- Your CAR: AZLK 2140
- SECU version: DIY SECU-3
- Location: North Korea
- Has thanked: 2160 times
- Been thanked: 4335 times
- Contact:
Re: Протокол обмена данными
Длительность впрыска в тиках таймера, 1 тик = 3.2мкс
Author of the SECU-3™ project http://SECU-3.org. An open source engine control unit / Ignition control system, (C) 2007.
Клуб проекта в Facebook https://www.facebook.com/groups/secu3club
Клуб проекта ВКонтакте https://vk.com/secu3club (вступаем!)
Клуб проекта в Facebook https://www.facebook.com/groups/secu3club
Клуб проекта ВКонтакте https://vk.com/secu3club (вступаем!)
-
- Posts: 17
- Joined: 23 Dec 2017, 21:16
- Your CAR: Vaz 21093
- SECU version: official SECU-3T
- Location: Київ
- Has thanked: 3 times
- Been thanked: 3 times
Re: Протокол обмена данными
Есть несколько вопросов.
Прошивка 23072018. Получаю какой то слишком длинный пакет:
0A 82 - Это, как я понял резервные байты.
0D - /r, окончание пакета.
Главное что интересует, какие байты соответствуют описанию пакета SENSOR_DAT из http://secu-3.org/opisanie-protokola-ob ... n/?lang=RU ?
Надеюсь это первые 24 байта?)
Не плохо было бы где то почитать про остальные байты в пакете.
Прошивка 23072018. Получаю какой то слишком длинный пакет:
40 71 - @ q, начало пакета, SENSOR_DAT40 71 04 4C 06 6A 15 31 01 75 02 26 00 00 00 00 03 00 45 00 01 44 02 CE 00 00 00 00 00 00 00 00 00 00 00 00 B6 7F FF 02 0A 82 7F FF FF F1 00 00 FF F5 00 00 00 00 00 00 00 00 00 00 00 00 00 00 06 58 19 53 0D
0A 82 - Это, как я понял резервные байты.
0D - /r, окончание пакета.
Главное что интересует, какие байты соответствуют описанию пакета SENSOR_DAT из http://secu-3.org/opisanie-protokola-ob ... n/?lang=RU ?
Надеюсь это первые 24 байта?)
Не плохо было бы где то почитать про остальные байты в пакете.
21093, карб / SECU-3T, 60-2, ДПКВ, ДТОЖ, МЗ-042.3705.
- STC
- Posts: 13843
- Joined: 30 Apr 2013, 23:41
- Your CAR: AZLK 2140
- SECU version: DIY SECU-3
- Location: North Korea
- Has thanked: 2160 times
- Been thanked: 4335 times
- Contact:
Re: Протокол обмена данными
Из последней прошивки:
Code: Select all
case SENSOR_DAT:
#ifdef SEND_INST_VAL
build_i16h(d.sens.inst_frq); // instant RPM
#else
build_i16h(d.sens.frequen); // averaged RPM
#endif
#ifdef SEND_INST_VAL
build_i16h(d.sens.inst_map); // instant MAP pressure
#else
build_i16h(d.sens.map); // averaged MAP pressure
#endif
#ifdef SEND_INST_VAL
build_i16h(d.sens.inst_voltage); // instant voltage value
#else
build_i16h(d.sens.voltage); // voltage (avaraged)
#endif
build_i16h(d.sens.temperat); // coolant temperature
build_i16h(d.corr.curr_angle); // advance angle
build_i16h(d.sens.knock_k); // knock value
build_i16h(d.corr.knock_retard); // knock retard
build_i8h(d.airflow); // index of the map axis curve
//boolean values
build_i16h(_CBV16(d.ie_valve, 0) | // IE flag
_CBV16(d.sens.carb, 1) | // carb. limit switch flag
_CBV16(d.sens.gas, 2) | // gas valve flag
_CBV16(d.fe_valve, 3) | // power valve flag
_CBV16 (d.ce_state, 4) | // CE flag
_CBV16(d.cool_fan, 5) | // cooling fan flag
_CBV16(d.st_block, 6) | // starter blocking flag
#if defined(FUEL_INJECT) || defined(GD_CONTROL)
_CBV16(d.acceleration, 7) |// acceleration enrichment flag
#else
_CBV16(0, 7) |
#endif
#if defined(FUEL_INJECT) || defined(GD_CONTROL)
_CBV16(d.fc_revlim, 8) | // fuel cut rev.lim. flag
#else
_CBV16(0, 8) |
#endif
_CBV16(d.floodclear, 9) | // flood clear mode flag
_CBV16(d.sys_locked, 10)); // system locked flag (immobilizer)
#ifdef SEND_INST_VAL
build_i8h(d.sens.inst_tps); // instant TPS (0...100%, x2)
#else
build_i8h(d.sens.tps); // TPS (0...100%, x2)
#endif
#ifdef SEND_INST_VAL
build_i16h(d.sens.inst_add_i1); // instant ADD_I1 voltage
#else
build_i16h(d.sens.add_i1); // averaged ADD_I1 voltage
#endif
build_i16h(d.sens.add_i2); // ADD_I2 voltage
build_i16h(d.ecuerrors_for_transfer); // CE errors
build_i8h(d.choke_pos); // choke position
build_i8h(d.gasdose_pos); // gas dosator position
#ifdef SPEED_SENSOR
build_i16h(d.sens.speed); // vehicle speed (2 bytes)
build_i24h(d.sens.distance); // distance (3 bytes)
#else
build_i16h(0);
build_i24h(0);
#endif
#ifdef FUEL_INJECT
build_i16h(d.inj_fff); // instant fuel flow (frequency: 16000 pulses per 1L of burnt fuel)
#else
build_i16h(0);
#endif
#ifdef AIRTEMP_SENS
if (IOCFG_CHECK(IOP_AIR_TEMP))
build_i16h(d.sens.air_temp);
else
build_i16h(0x7FFF); //<--indicates that it is not used, voltage will be shown on the dashboard
#else
build_i16h(0);
#endif
//corrections
build_i16h(d.corr.strt_aalt); // advance angle from start map
build_i16h(d.corr.idle_aalt); // advance angle from idle map
build_i16h(d.corr.work_aalt); // advance angle from work map
build_i16h(d.corr.temp_aalt); // advance angle from coolant temperature correction map
build_i16h(d.corr.airt_aalt); // advance angle from air temperature correction map
build_i16h(d.corr.idlreg_aac); // advance angle correction from idling RPM regulator
build_i16h(d.corr.octan_aac
#ifdef PA4_INP_IGNTIM
+ d.corr.pa4_aac
#endif
); // octane correction value
#if defined(FUEL_INJECT) || defined(CARB_AFR) || defined(GD_CONTROL)
build_i16h(d.corr.lambda); // lambda correction
#else
build_i16h(0);
#endif
#ifdef FUEL_INJECT
build_i16h(d.inj_pw); // injector pulse width
#else
build_i16h(0);
#endif
#if defined(FUEL_INJECT) || defined(GD_CONTROL)
build_i16h(d.sens.tpsdot); // TPS opening/closing speed
#else
build_i16h(0);
#endif
#ifndef SECU3T //SECU-3i
build_i16h(d.sens.map2);
build_i16h(d.sens.tmp2);
#else
build_i16h(0);
build_i16h(0);
#endif
#if defined(FUEL_INJECT) || defined(CARB_AFR) || defined(GD_CONTROL)
build_i16h(d.sens.afr);
#else
build_i16h(0);
#endif
build_i16h(d.load);
build_i16h(d.sens.baro_press);
break;
Author of the SECU-3™ project http://SECU-3.org. An open source engine control unit / Ignition control system, (C) 2007.
Клуб проекта в Facebook https://www.facebook.com/groups/secu3club
Клуб проекта ВКонтакте https://vk.com/secu3club (вступаем!)
Клуб проекта в Facebook https://www.facebook.com/groups/secu3club
Клуб проекта ВКонтакте https://vk.com/secu3club (вступаем!)
-
- Posts: 17
- Joined: 23 Dec 2017, 21:16
- Your CAR: Vaz 21093
- SECU version: official SECU-3T
- Location: Київ
- Has thanked: 3 times
- Been thanked: 3 times
Re: Протокол обмена данными
STC, спасибо за протокол.
Хочу кое что уточнить. На build_i24h(d.sens.distance); попадает такая последовательность: FF 02 [0A 82], на сколько я понял, ее нужно читать как FF 02 40, так? Это защита от ложного срабатывания флага начала пакета?
В конце есть строки:
build_i16h(d.load);
build_i16h(d.sens.baro_press);
Они передаются в пакете или нет? Байты в пакете закончились, а эти строки остались.
P.S. Я в программировании чайник, только начал изучать arduino. Так что если буду задавать глупые вопросы, не сердитесь пожалуйста!)
Хочу кое что уточнить. На build_i24h(d.sens.distance); попадает такая последовательность: FF 02 [0A 82], на сколько я понял, ее нужно читать как FF 02 40, так? Это защита от ложного срабатывания флага начала пакета?
В конце есть строки:
build_i16h(d.load);
build_i16h(d.sens.baro_press);
Они передаются в пакете или нет? Байты в пакете закончились, а эти строки остались.
P.S. Я в программировании чайник, только начал изучать arduino. Так что если буду задавать глупые вопросы, не сердитесь пожалуйста!)
21093, карб / SECU-3T, 60-2, ДПКВ, ДТОЖ, МЗ-042.3705.
-
- Posts: 4657
- Joined: 18 Sep 2013, 01:58
- Your CAR: ВАЗ-21099 1,5л.
- SECU version: official SECU-3i TBZ
- Location: Украина, Павлоград
- Has thanked: 624 times
- Been thanked: 1020 times
- Contact:
Re: Протокол обмена данными
Да, в пакете. Если у тебя последний предрелиз, то всё должно быть нормально.
60-2/SECU-3iTBZ-v4.9/бенз-газ/ДПДЗ/ДТВ/УДК/ГБО-4/ВЗ.
Отчёт ГБО-4 на карбюратор с SECU-3i - http://secu-3.org/forum/viewtopic.php?f=19&t=1549
Продаю бортовой компьютер - viewtopic.php?p=47182#p47182
Отчёт ГБО-4 на карбюратор с SECU-3i - http://secu-3.org/forum/viewtopic.php?f=19&t=1549
Продаю бортовой компьютер - viewtopic.php?p=47182#p47182