American English British English Български Čeština Français Deutsch (Du) Magyar Italiano 日本語 Lietuvių Polski Српски Slovenčina Español (Tú) Türkçe Українська
Select language:

Добавл. в прошивку возможностей одновременного/моно впрыска

<<

STC

User avatar

Posts: 6536

Joined: 30 Apr 2013, 23:41

Location: Ukraine

Your CAR: AZLK 2140

SECU version: DIY SECU-3


Has thanked: 800 times
Been thanked: 1317 times

Post 19 May 2015, 09:53

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 (вступаем!)
<<

strelok22

User avatar

Posts: 381

Joined: 13 Sep 2013, 11:26


Has thanked: 46 times
Been thanked: 106 times

Post 25 May 2015, 10:40

Re: Добавл. в прошивку возможностей одновременного/моно впры

STC wrote:Есть 2 вида отсечки по оборотам. 1 это ПХХ, 2 это ограничение максимальных оборотов. Какой из них ты имеешь ввиду?

Все разобрался, подобрал нижний порог теперь все ок. Пробег уже 300 км, но расход великоват.... и вот почему. отвалился ДТВ, и я это не сразу заметил, а чек это не показывает, хорошо бы было сделать как в заводских блоках, если не подключен ДТВ она заводится и ждет пока температура чуток подрастет и если ДТВ остался на месте где-то через несколько мин. бьет чек(ловил такое на ланосе снимали коллектор забыли разъем датчика накинуть :oops: ) здорово если этот алгоритм реализовать.. а то получается ДТВ показывал -30 расход был около 15 на сотню :oops: ну понятно это мой косяк, но на будущее можно это учесть...
ВАЗ шестерка + SECU впрыск + ГБО 4 = достойный автомобильчик
<<

STC

User avatar

Posts: 6536

Joined: 30 Apr 2013, 23:41

Location: Ukraine

Your CAR: AZLK 2140

SECU version: DIY SECU-3


Has thanked: 800 times
Been thanked: 1317 times

Post 25 May 2015, 10:49

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 (вступаем!)
<<

KOT

User avatar

Posts: 328

Joined: 10 May 2013, 14:23

Location: Запорожье


Has thanked: 6 times
Been thanked: 85 times

Post 26 May 2015, 00:48

Re: Добавл. в прошивку возможностей одновременного/моно впры

А какая максимальная длительность импульса открытия форсунки, к примеру форсунка открывается 1 раз за 2 оборота коленвала, может ли длительность открытия быть почти равной времени 2х оборотов коленвала?
Машина ЗАЗ 1103i, ГБО4. Управление ДВС: аналог Secu-3 и MegasquirtAVR модифицированное железо и своя прошивка.
<<

STC

User avatar

Posts: 6536

Joined: 30 Apr 2013, 23:41

Location: Ukraine

Your CAR: AZLK 2140

SECU version: DIY SECU-3


Has thanked: 800 times
Been thanked: 1317 times

Post 26 May 2015, 11:25

Re: Добавл. в прошивку возможностей одновременного/моно впры

Точно не помню какая максимальная длительность, но вроде 0.1 или 0.2сек.

может ли длительность открытия быть почти равной времени 2х оборотов коленвала?

Да. В этом как раз основная сложность добавления поддержки распределенного впрыска. Есть всего 1 канал таймера, а он должен обрабатывать параллельно много форсунок.
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 (вступаем!)
<<

KOT

User avatar

Posts: 328

Joined: 10 May 2013, 14:23

Location: Запорожье


Has thanked: 6 times
Been thanked: 85 times

Post 26 May 2015, 15:27

Re: Добавл. в прошивку возможностей одновременного/моно впры

Может пригодится:
У меня сделано на одном таймере 3, правда он в меге 128 3-х канальный но все же.
По внешнему прерываю открываю то одну то другую форсунку, по каналу сравнения ШИМ либо закрываю первую форсунку. По каналу сравнения B то же только для второй форсунки. Ну и по каналу С определяю что двигатель остановлен, я так понимаю в СЕКЕ это ненужно.

Код немного упростил, там просто еще по сравнению считаю количество тактов, расход топлива и другие вспомогательные функции
  Code:

//По внешнему прерыванию:
#pragma vector=TIMER3_CAPT_vect
__interrupt void TIMER3_CAPT_vect_isr(){

    //если = 1 значить была  форсунка 2 в работе, открываем первую
      if(flagStatusInj){      
            
         flagStartImpInj1 = 1;//флаг стартовый импульс на форсунку 1
         flagStatusInj = 0;//флаг форсунка 1 в работе

   
          //включить стартовый импульс на форсунку1
         PORTFLYB12 |= (1<<PIN_NFLYB1); //открыть слив энергии форсунки 1         
           PORT_INJ_COIL1 &= ~(1<<PIN_N_INJ_COIL1); //включить стартовый импульс на форсунку1   
                  
         uint16_t tmpOpeningTimeInj = openingTimeInj; //длительность стартового импульса
         OCR3A = tmpOpeningTimeInj + TCNT3; //значение когда должно быть прерывание
         
         ETIFR = (1<<OCF3A); //сбрасываем флаги перываний по 3-му таймеру
         ETIMSK |= (1<<OCIE3A); //разрешиь прерывание от cравнения
      }
          
    
   //иначе открываем вторую    
       else{   
 
         flagStartImpInj2 = 1;//флаг стартовый импульс на форсунку 2
         flagStatusInj = 1;//флаг форсунка 2 в работе

   
          //включить стартовый импульс на форсунку2
         PORTFLYB12 |= (1<<PIN_NFLYB2); //открыть слив энергии форсунки 2         
           PORT_INJ_COIL2 &= ~(1<<PIN_N_INJ_COIL2); //включить стартовый импульс на форсунку2            
   
         uint16_t tmpOpeningTimeInj = openingTimeInj; //длительность стартового импульса
         OCR3B = tmpOpeningTimeInj + TCNT3; //значение когда должно быть прерывание
         
         ETIFR = (1<<OCF3B); //сбрасываем флаги перываний по 3-му таймеру
         ETIMSK |= (1<<OCIE3B); //разрешиь прерывание от cравнения
      }
}
///--------------------------------------------------------------------------------------------------------------------------
#pragma vector=TIMER3_COMPA_vect
__interrupt void TIMER3_COMPA_vect_isr(){
 
// если был установлен старотовый импульс на форсунку 1, то меняем его на ШИМ
   if(flagStartImpInj1){       
         flagStartImpInj1 = 0; //убираем флаг стартовый импульс на форсунку   
        TCCR1A |= (1<<COM1A1) | (1<<COM1A0);   //включаем ШИМ, вместо стартового импульса форсунка1      
      uint16_t tmpTimeInj = timeInj; //время ШИМа (открытого состояния форсунки)
      OCR3A = tmpTimeInj + TCNT3;//текущее значение таймера + время ШИМа (открытого состояния форсунки)      
   } 
 
// если нет стартового импульса то нужно закрыть форсунку 1
   else{
      ETIMSK &= ~(1<<OCIE3A); //убрать разрешение на прерывание TIMER3_COMPA_vect
      
        PORT_INJ_COIL1 |= (1<<PIN_N_INJ_COIL1);  //закрыть форсунку 1      
      TCCR1A &= ~((1<<COM1A1) | (1<<COM1A0)) ;//убрать управление от таймера1(ШИМ)    
      PORTFLYB12 &= ~(1<<PIN_NFLYB1);    //закрыть слив энергии форсунки 1   

   } 
}


//-----------------------------------------------------------------------------      

#pragma vector=TIMER3_COMPB_vect
__interrupt void TIMER3_COMPB_vect_isr(){
 
    //если был установлен старотовый импульс на форсунку 2, то меняем его на ШИМ
   if(flagStartImpInj2){

      flagStartImpInj2 = 0; //убираем флаг стартовый импульс на форсунку         
      TCCR1A |= (1<<COM1B1) | (1<<COM1B0);   //включаем ШИМ, вместо стартового импульса форсунка1   
      uint16_t tmpTimeInj = timeInj; //время ШИМа (открытого состояния форсунки)
      OCR3B = tmpTimeInj + TCNT3;//текущее значение таймера + время ШИМа (открытого состояния форсунки)
     }

// если нет стартового импульса то нужно закрыть форсунку 2
   else{
      ETIMSK &= ~(1<<OCIE3B); //убрать разрешение на прерывание TIMER3_COMPB_vect
   
      PORT_INJ_COIL2 |= (1<<PIN_N_INJ_COIL2);  //закрыть форсунку 2      
      TCCR1A &= ~((1<<COM1B1) | (1<<COM1B0)) ;//убрать управление от таймера1(ШИМ)    
      PORTFLYB12 &= ~(1<<PIN_NFLYB2);    //закрыть слив энергии форсунки 2   

   }

}

//-----------------------------------------------------------------------------   

Машина ЗАЗ 1103i, ГБО4. Управление ДВС: аналог Secu-3 и MegasquirtAVR модифицированное железо и своя прошивка.
<<

strelok22

User avatar

Posts: 381

Joined: 13 Sep 2013, 11:26


Has thanked: 46 times
Been thanked: 106 times

Post 27 May 2015, 14:36

Re: Добавл. в прошивку возможностей одновременного/моно впры

Наконец подключил ЛЗ - работает!!!!! коррекция плавает от - 30 до +30 при езде по ровному участку на 4 передаче около 70 км расход воздуха 4. планирую убавить коррекцию до 10% . еще вопрос если мне нужно время впрыска на хх около 4-5 мс, можно просто увеличить в программе объем двигла, а то меньше 200 производительность форсы не уменьшается, или лучше 1 впрыск на такт(я имел ввиду цикл :oops: ) поставить? - это надо чтоб газовые форсы напрямую подключить.
Еще по ДТВ - на плате я его подключил так же как ДТОЖ - 10к на вход, кондер на корпус и 2к подтяжка к 5в. (прошивка с опцией 5 в.) но характеристика получилась обратная. я так понял подтяжка не нужна.... плата самодельная форум читал но так и не понял :oops: подозрение закралось.....
А так тест продолжается.... пока полет нормальный конкретных косяков по впрыску не замечено(кроме тех что сам устроил :lol:)
Attachments
Last edited by strelok22 on 28 May 2015, 08:48, edited 1 time in total.
ВАЗ шестерка + SECU впрыск + ГБО 4 = достойный автомобильчик
<<

yuren

User avatar

Posts: 217

Joined: 13 Jan 2014, 23:52

Location: Украина

Your CAR: ВАЗ 2107 1999

SECU version: official SECU-3T


Has thanked: 19 times
Been thanked: 63 times

Post 28 May 2015, 01:12

Re: Добавл. в прошивку возможностей одновременного/моно впры

или лучше 1 впрыск на такт поставить?

Трудно сказать как двигатель отреагирует на такой впрыск, но валтыки обязательно обрадуются :)
Я бы попробовал первым делом ;)
<<

STC

User avatar

Posts: 6536

Joined: 30 Apr 2013, 23:41

Location: Ukraine

Your CAR: AZLK 2140

SECU version: DIY SECU-3


Has thanked: 800 times
Been thanked: 1317 times

Post 28 May 2015, 01:25

Re: Добавл. в прошивку возможностей одновременного/моно впры

Не на такт, а на цикл (цикл = 4 такта).
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 (вступаем!)
<<

yuren

User avatar

Posts: 217

Joined: 13 Jan 2014, 23:52

Location: Украина

Your CAR: ВАЗ 2107 1999

SECU version: official SECU-3T


Has thanked: 19 times
Been thanked: 63 times

Post 28 May 2015, 02:00

Re: Добавл. в прошивку возможностей одновременного/моно впры

Немного не дочитал, я так же имел в виду именно 1 впрыск на цикл, в соответствии с настройками менегера.
PreviousNext

Return to Прошивки

Who is online

Users browsing this forum: Google [Bot] and 2 guests

Powered by phpBB® Forum Software © phpBB Group.