Добавл. в прошивку возможностей одновременного/моно впрыска
- 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 (вступаем!)
- strelok22
- Posts: 476
- Joined: 13 Sep 2013, 11:26
- Your CAR: Ваз
- SECU version: DIY SECU-3i
- Has thanked: 67 times
- Been thanked: 130 times
Re: Добавл. в прошивку возможностей одновременного/моно впры
Все разобрался, подобрал нижний порог теперь все ок. Пробег уже 300 км, но расход великоват.... и вот почему. отвалился ДТВ, и я это не сразу заметил, а чек это не показывает, хорошо бы было сделать как в заводских блоках, если не подключен ДТВ она заводится и ждет пока температура чуток подрастет и если ДТВ остался на месте где-то через несколько мин. бьет чек(ловил такое на ланосе снимали коллектор забыли разъем датчика накинуть ) здорово если этот алгоритм реализовать.. а то получается ДТВ показывал -30 расход был около 15 на сотню ну понятно это мой косяк, но на будущее можно это учесть...STC wrote:Есть 2 вида отсечки по оборотам. 1 это ПХХ, 2 это ограничение максимальных оборотов. Какой из них ты имеешь ввиду?
ВАЗ шестерка + SECU впрыск + ГБО 4 = достойный автомобильчик
- 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: 328
- Joined: 10 May 2013, 14:23
- Your CAR: I go on foot
- SECU version: DIY SECU-3
- Location: Запорожье
- Has thanked: 6 times
- Been thanked: 89 times
Re: Добавл. в прошивку возможностей одновременного/моно впры
А какая максимальная длительность импульса открытия форсунки, к примеру форсунка открывается 1 раз за 2 оборота коленвала, может ли длительность открытия быть почти равной времени 2х оборотов коленвала?
Машина ЗАЗ 1103i, ГБО4. Управление ДВС: аналог Secu-3 и MegasquirtAVR модифицированное железо и своя прошивка.
- 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: Добавл. в прошивку возможностей одновременного/моно впры
Точно не помню какая максимальная длительность, но вроде 0.1 или 0.2сек.
Да. В этом как раз основная сложность добавления поддержки распределенного впрыска. Есть всего 1 канал таймера, а он должен обрабатывать параллельно много форсунок.может ли длительность открытия быть почти равной времени 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: 328
- Joined: 10 May 2013, 14:23
- Your CAR: I go on foot
- SECU version: DIY SECU-3
- Location: Запорожье
- Has thanked: 6 times
- Been thanked: 89 times
Re: Добавл. в прошивку возможностей одновременного/моно впры
Может пригодится:
У меня сделано на одном таймере 3, правда он в меге 128 3-х канальный но все же.
По внешнему прерываю открываю то одну то другую форсунку, по каналу сравнения ШИМ либо закрываю первую форсунку. По каналу сравнения B то же только для второй форсунки. Ну и по каналу С определяю что двигатель остановлен, я так понимаю в СЕКЕ это ненужно.
Код немного упростил, там просто еще по сравнению считаю количество тактов, расход топлива и другие вспомогательные функции
У меня сделано на одном таймере 3, правда он в меге 128 3-х канальный но все же.
По внешнему прерываю открываю то одну то другую форсунку, по каналу сравнения ШИМ либо закрываю первую форсунку. По каналу сравнения B то же только для второй форсунки. Ну и по каналу С определяю что двигатель остановлен, я так понимаю в СЕКЕ это ненужно.
Код немного упростил, там просто еще по сравнению считаю количество тактов, расход топлива и другие вспомогательные функции
Code: Select all
//По внешнему прерыванию:
#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
- Posts: 476
- Joined: 13 Sep 2013, 11:26
- Your CAR: Ваз
- SECU version: DIY SECU-3i
- Has thanked: 67 times
- Been thanked: 130 times
Re: Добавл. в прошивку возможностей одновременного/моно впры
Наконец подключил ЛЗ - работает!!!!! коррекция плавает от - 30 до +30 при езде по ровному участку на 4 передаче около 70 км расход воздуха 4. планирую убавить коррекцию до 10% . еще вопрос если мне нужно время впрыска на хх около 4-5 мс, можно просто увеличить в программе объем двигла, а то меньше 200 производительность форсы не уменьшается, или лучше 1 впрыск на такт(я имел ввиду цикл ) поставить? - это надо чтоб газовые форсы напрямую подключить.
Еще по ДТВ - на плате я его подключил так же как ДТОЖ - 10к на вход, кондер на корпус и 2к подтяжка к 5в. (прошивка с опцией 5 в.) но характеристика получилась обратная. я так понял подтяжка не нужна.... плата самодельная форум читал но так и не понял подозрение закралось.....
А так тест продолжается.... пока полет нормальный конкретных косяков по впрыску не замечено(кроме тех что сам устроил )
Еще по ДТВ - на плате я его подключил так же как ДТОЖ - 10к на вход, кондер на корпус и 2к подтяжка к 5в. (прошивка с опцией 5 в.) но характеристика получилась обратная. я так понял подтяжка не нужна.... плата самодельная форум читал но так и не понял подозрение закралось.....
А так тест продолжается.... пока полет нормальный конкретных косяков по впрыску не замечено(кроме тех что сам устроил )
Last edited by strelok22 on 28 May 2015, 08:48, edited 1 time in total.
ВАЗ шестерка + SECU впрыск + ГБО 4 = достойный автомобильчик
- yuren
- Posts: 296
- Joined: 13 Jan 2014, 23:52
- Your CAR: ВАЗ 2107 1999
- SECU version: official SECU-3T
- Location: Украина
- Has thanked: 25 times
- Been thanked: 73 times
Re: Добавл. в прошивку возможностей одновременного/моно впры
Трудно сказать как двигатель отреагирует на такой впрыск, но валтыки обязательно обрадуютсяили лучше 1 впрыск на такт поставить?
Я бы попробовал первым делом
- 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: Добавл. в прошивку возможностей одновременного/моно впры
Не на такт, а на цикл (цикл = 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 (вступаем!)
Клуб проекта в Facebook https://www.facebook.com/groups/secu3club
Клуб проекта ВКонтакте https://vk.com/secu3club (вступаем!)
- yuren
- Posts: 296
- Joined: 13 Jan 2014, 23:52
- Your CAR: ВАЗ 2107 1999
- SECU version: official SECU-3T
- Location: Украина
- Has thanked: 25 times
- Been thanked: 73 times
Re: Добавл. в прошивку возможностей одновременного/моно впры
Немного не дочитал, я так же имел в виду именно 1 впрыск на цикл, в соответствии с настройками менегера.