Требуется CAN-трансмиттер данных SECU-3 в протокол OBD

Все вопросы по железу
Post Reply
User avatar
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: Требуется CAN-трансмиттер данных SECU-3 в протокол OBD

Post by STC »

Выложил прошивки для тестов http://secu-3.org/forum/viewtopic.php?f ... 811#p29811 Исправлены баги.
Проверил логическим анализатором. Шлет четко то что нужно.
Скорее всего в этот раз заработает. Жду результатов тестирования :D
p.s. Ошибка 31 тоже исправлена и теперь не появляется.
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 (вступаем!)
Sergey21126
Posts: 89
Joined: 04 Dec 2016, 22:11
Your CAR: LADA 2190
SECU version: DIY SECU-3i
Has thanked: 2 times
Been thanked: 26 times

Re: Требуется CAN-трансмиттер данных SECU-3 в протокол OBD

Post by Sergey21126 »

Тахометр заработал! :)
Однако, пересчет аномальных оборотов с глюком.
Если я дам 14000 оборотов, панель покажет 5800.
SECU_14000.png
Если я дам 9400 оборотов, панель покажет 1200. По идее стрелка должна уткнуться в 7000+
На меньших оборотах все нормально.

Теперь можно тушить лампочки и слать скорость. Крутить скорость проще ;)

А есть программа эмулятора 58+2 для AT90S2313 или под мегу?
User avatar
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: Требуется CAN-трансмиттер данных SECU-3 в протокол OBD

Post by STC »

Тахометр заработал! :)
Однако, пересчет аномальных оборотов с глюком.
Если я дам 14000 оборотов, панель покажет 5800.
SECU_14000.png
Если я дам 9400 оборотов, панель покажет 1200. По идее стрелка должна уткнуться в 7000+
На меньших оборотах все нормально.
Я заполняю сообщение вот так:

Code: Select all

obd.msg.id = 0x180;   //Engine RPM
  obd.msg.flags.rtr = 0;
  obd.msg.length = 8;
  obd.msg.data[0] = d->sens.frequen >> 5; // rpm / 32
  obd.msg.data[1] = 0x00;
  obd.msg.data[2] = 0x00;
  obd.msg.data[3] = 0x00;
  obd.msg.data[4] = 0x00;
  obd.msg.data[5] = 0x00;
  obd.msg.data[6] = 0x00;
  obd.msg.data[7] = 0x00;
Теперь можно тушить лампочки и слать скорость. Крутить скорость проще ;)
Тут вопрос как можно слать. Можно ли слать подряд два разных пакета (с разными ID) без задержки или нужно выжидать 10-100мс независимо от того какой пакет посылается?

А есть программа эмулятора 58+2 для AT90S2313 или под мегу?
Под мегу - не знаю, а вообще есть:
http://forum.diyefi.org/viewtopic.php?f=52&t=1128
http://subversion.assembla.com/svn/secu ... simulator/
http://www.chiptuner.ru/content/pub_03/
https://github.com/ashabelnikov/ckps_emul
http://secu-3.org/forum/viewtopic.php?f ... 59&p=16534
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 (вступаем!)
Sergey21126
Posts: 89
Joined: 04 Dec 2016, 22:11
Your CAR: LADA 2190
SECU version: DIY SECU-3i
Has thanked: 2 times
Been thanked: 26 times

Re: Требуется CAN-трансмиттер данных SECU-3 в протокол OBD

Post by Sergey21126 »

STC wrote: obd.msg.data[0] = d->sens.frequen >> 5; // rpm / 32
Если обороты будут больше 8100 то стрелка начнет крутиться сначала.
Спортсменов это не устроит. Хотя пока сойдет :D
User avatar
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: Требуется CAN-трансмиттер данных SECU-3 в протокол OBD

Post by STC »

Sergey21126 wrote:
STC wrote: obd.msg.data[0] = d->sens.frequen >> 5; // rpm / 32
Если обороты будут больше 8100 то стрелка начнет крутиться сначала.
Спортсменов это не устроит. Хотя пока сойдет :D
Значит добавлю ограничение, чтобы если больше 8100, то = 8100. Скорость добавлю. Мне пока не понятно что с другими индикаторами делать и как я уже писал, я не знаю, можно ли слать пакеты с разными ID без задержки (я бы просто каждые 100мс слал их очередями).
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 (вступаем!)
Sergey21126
Posts: 89
Joined: 04 Dec 2016, 22:11
Your CAR: LADA 2190
SECU version: DIY SECU-3i
Has thanked: 2 times
Been thanked: 26 times

Re: Требуется CAN-трансмиттер данных SECU-3 в протокол OBD

Post by Sergey21126 »

STC wrote:Мне пока не понятно что с другими индикаторами делать и как я уже писал, я не знаю, можно ли слать пакеты с разными ID без задержки (я бы просто каждые 100мс слал их очередями).
В общем шину забивать данными нельзя. Пакеты чаще 10 мс не вылетают.
В течении 100мс (хотя можно и чуть пореже слать) должны прилететь все три пакета (скорость, лампочки, тахометр). Чаще чем 10 мс пакеты не вылетают. Наверно, чтобы и другие блоки могли что-то послать ;)

STC wrote:Значит добавлю ограничение, чтобы если больше 8100, то = 8100.
Еще и для скорости. Не более 240 км/ч 8-)
User avatar
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: Требуется CAN-трансмиттер данных SECU-3 в протокол OBD

Post by STC »

Хорошо, понял. Раз уже решили сделать серьезно, то нужно разобраться как всеми индикаторами управлять. Что там еще отображается на ЖК дисплее?
Тахометр
Скорость
Лампа Check Engine
Лампа аварии заряда АКБ
Лампа аварии давления масла
...
?
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 (вступаем!)
Sergey21126
Posts: 89
Joined: 04 Dec 2016, 22:11
Your CAR: LADA 2190
SECU version: DIY SECU-3i
Has thanked: 2 times
Been thanked: 26 times

Re: Требуется CAN-трансмиттер данных SECU-3 в протокол OBD

Post by Sergey21126 »

STC wrote:Что там еще отображается на ЖК дисплее?
panelka.jpeg
1 - давление масла. Надо погасить. Можно сделать контроль через SPI расширитель в 3i.
2 - чек. Надо вывести :D Есть режим моргания. Можно активировать на время обогащения/прогрева.
3 - перегрев. Надо использовать. У кого на какой закипает?
4 - авария заряда. Погасить. Можно сделать контроль через SPI расширитель в 3i.

Code: Select all

uint8_t FAILS = 0x00; //Нет аварий.
    uint8_t AKB = 0x00;   // Нормы заряда АКБ нет.

    FAILS |= 1<<0; // Зажечь индикатор Check Engine постоянно . УПРАВЛЯЕМ!
    //FAILS |= 1<<1; // Моргать индикатором Check Engine 1 Гц.  МОЖНО прикрутить.
    //FAILS |= 1<<2; // Зажечь индикатор - нет давления масла.  ПОКА ТУШИМ. УПРАВЛЯЕМ в 3i.
    FAILS |= 1<<3; // Зажечь индикатор - перегрев! ПРИ ПЕРЕГРЕВЕ МОТОРА!

    AKB |= 1<<0; // Тушим лампочку аварии заряда АКБ УПРАВЛЯЕМ в 3i.

    message.id = 0x551;
    message.header.length = 8;
    message.header.rtr = 0;

    message.data[0] = 0x00;
    message.data[1] = 0x00;
    message.data[2] = 0x00;
    message.data[3] = AKB;
    message.data[4] = FAILS; 
    message.data[5] = 0x00; // СOUNTER.
    message.data[6] = 0x00;
    message.data[7] = 0x00;
Слать не реже 500 мс.
alvikagal
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: Требуется CAN-трансмиттер данных SECU-3 в протокол OBD

Post by alvikagal »

Аварию заряда можно брать из порогов ошибок CE, а именно напряжение бортсети. Зачем вам нужно ещё что-то тянуть к SECU?
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
User avatar
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: Требуется CAN-трансмиттер данных SECU-3 в протокол OBD

Post by STC »

alvikagal wrote:Аварию заряда можно брать из порогов ошибок CE, а именно напряжение бортсети. Зачем вам нужно ещё что-то тянуть к SECU?
Вот и я тоже думаю об этом.

А что с расстоянием и другими показаниями на ЖК дисплее? Они не из ЭБУ получают данные?
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 (вступаем!)
Post Reply

Return to “Аппаратное обеспечение”