[rusEfi] ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

User avatar
andreika
donator
donator
Posts: 412
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by andreika » Tue Jan 30, 2018 8:05 am

puff wrote:
Tue Jan 30, 2018 6:59 am
насколько быстрым должен быть сигнал о2 и насколько это критично? какие задержки считать приемлемыми
Сейчас прошивка rusEFI обновляет используемое значение AFR каждые 20 мс. Можно исходить из этого.
puff wrote:
Mon Jan 29, 2018 11:20 pm
и какие недоргие датчики сейчас бывают в продаже под это дело?
Можно заходить на aliexpress, вводить номера бошевских датчиков (например, 0258007351) и выбирать там датчик за $30-40. Это недорогой, но и далеко не самый надёжный вариант. Или, вот, darxfame недавно нашёл более дешёвый аналог - 03C906262A.
puff wrote:
Mon Jan 29, 2018 11:20 pm
и какие тут меры предосторожности соблюдать, чтоб не поломать их (в даташите к датчику, например, написано, не включать на свежем воздухе)
1) Не нагревать сильно лямбду до пуска двигателя. Иначе влага, накопившаяся в выпускной системе, при попадании внутрь, может уничтожить сенсор.
2) Не запускать двигатель с выключенным контроллером ШДК (это же касается и инновейта).
3) Не перегревать лямбду, т.е. не включать нагреватель на 100% длительное время и не ставить лямбду близко к ГБЦ.
В текущей реализации CJ125 в rusEFI уже есть эти защиты. Но нужно понимать, что код ещё как следует не протестирован, и мы не несём ответственности за какие-либо последствия его использования.

User avatar
andreika
donator
donator
Posts: 412
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by andreika » Fri Feb 02, 2018 1:17 pm

Два небольших PR:
1) Исправляем старый баг, который я нашёл ещё в июне прошлого года, но не исправил тогда до конца.
https://github.com/rusefi/rusefi/pull/564
2) Новая таблица УОЗ на пуске и две опции для его контроля, по просьбе Артёма darxfame:
https://github.com/rusefi/rusefi/pull/565

User avatar
darxfame
contributor
contributor
Posts: 259
Joined: Mon Feb 13, 2017 10:06 pm
Location: Moscow

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by darxfame » Sat Feb 10, 2018 6:20 pm

Распиновка разъема LCU4.2 и разъема WBO на плате Prometheus
WBOк.JPG
WBOк.JPG (153.96 KiB) Viewed 2829 times

User avatar
russian
Site Admin
Posts: 9588
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Soldering skill: yes
Coding skill?: yes
Contact:

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by russian » Sun Mar 18, 2018 7:25 pm

@, а Рыжик сейчас в каком состояниии - он когда последний раз передвигался под управлением rusEfi?
https://rusefi.com/s/howtocontribute
very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions
my skype is arro239

User avatar
andreika
donator
donator
Posts: 412
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by andreika » Sun Mar 18, 2018 10:58 pm

russian wrote:
Sun Mar 18, 2018 7:25 pm
@, а Рыжик сейчас в каком состояниии - он когда последний раз передвигался под управлением rusEfi?
Сейчас он в зимней спячке, стоит со снятым задним мостом. Заводился он месяца полтора назад. А передвигался ещё летом... :oops:

User avatar
andreika
donator
donator
Posts: 412
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by andreika » Sun Apr 22, 2018 6:22 pm

Сегодня заводил машину на тестовой прошивке - с новой функцией - фильтрацией помех ДПКВ. И с включённым быстрым пуском.
Лог запуска прилагаю.

В связи с этим, я выложил PR этой экспериментальной функции:
https://github.com/rusefi/rusefi/pull/592

Если вкратце, то суть идеи в том, чтобы не реагировать на каждый фронт с триггеров, а анализировать, сколько времени проводит сигнал в 0 и в 1, и реагировать на приходящий сигнал только в том случае, если статистический анализ прошлых периодов показывает, что сигнал пришёл не слишком рано.
Attachments
2018-04-22_12.01.03.msl.zip
(44.57 KiB) Downloaded 24 times

User avatar
russian
Site Admin
Posts: 9588
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Soldering skill: yes
Coding skill?: yes
Contact:

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by russian » Thu Apr 26, 2018 8:39 pm

andreika wrote:
Sun Apr 22, 2018 6:22 pm
если статистический анализ прошлых периодов показывает, что сигнал пришёл не слишком рано.
а почему не запись эталонного сигнала проанализировать бы на старте? или ты думаешь, что статистика реального сигнала точнее?
https://rusefi.com/s/howtocontribute
very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions
my skype is arro239

puff
contributor
contributor
Posts: 2720
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by puff » Thu Apr 26, 2018 9:15 pm

статистический анализ прошлых периодов - типа идет ли речь о разгоне/торможении (и соответствующем ожидаемом периоде?)
тут бы еще вспомнить кучу разных настроек в тюнер-студии (что означает у нас фронт/спад - по-моему там можно было по-разному настроить)
плюс еще такая штука: в LM1815 по-моему можно выдавать импульс произвольной длины, и он при любых RPM может оставаться таким. хотя сейчас подумал - вроде бы никаких противоречий с этим алгоритмом нет.

но вообще такая проблема стоит? (кроме как у Darxfame?)

User avatar
andreika
donator
donator
Posts: 412
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by andreika » Fri Apr 27, 2018 5:56 am

russian wrote:
Thu Apr 26, 2018 8:39 pm
andreika wrote:
Sun Apr 22, 2018 6:22 pm
если статистический анализ прошлых периодов показывает, что сигнал пришёл не слишком рано.
а почему не запись эталонного сигнала проанализировать бы на старте? или ты думаешь, что статистика реального сигнала точнее?
Подозреваю, что ты мог недопонять мои слова, и из-за этого я сейчас недопонимаю твой вопрос... Особенно твоё выражение "на старте" - речь идёт о старте двигателя? Или это синоним "для начала" ("for starters"), и ты хочешь сейчас поизучать работу алгоритма на эталонах? Поясни, пожалуйста, что ты имел в виду?

Я просто описывал новое поведение прошивки при работающем реальном двигателе, и под "статистическим анализом" подразумевал всего лишь сбор и накопление интервалов получаемого сигнала триггеров, для принятия решения о фильтрации. Насколько я понимаю, и на старте двигателя, и после старта, у нас в прошивке нет эталонных сигналов, которые мы могли бы анализировать, у нас есть только реальные сигналы от датчиков, которые мы и обрабатываем.

Мы можем вместо реального датчика подсунуть эталонный формирователь сигнала, но в нём не будет нужных помех, и не будет реалистичного рывкообразного повышения оборотов. Мы не увидим той картины, которая творится на реальном двигателе - это уже будет не старт, а просто абстрактная симуляция. Да, мы можем пробовать создавать искусственные "помехи" на условном ардуино, но это будет мало чем отличаться от уже написанных мной юнит-тестов.

Напомню, вот как выглядит типичная реальная помеха на пуске, пойманная анализатором:
noise_spike.PNG
noise_spike.PNG (3.99 KiB) Viewed 2602 times
Длительность такой единичной помехи меньше 2 мкс, но она успевает переключить фронт ICU и воспринимается как начало внеочередного зуба. И происходил сбой синхронизации. А сейчас такие помехи фильтруются как кусок пирога с пареной репой! 8-)

Главный трюк в том, что нам не важно, как именно натыканы эти помехи, и нам не важны длительности каждой помехи в отдельности. Помеха с этой картинки уменьшила время, в течение которого сигнал находится в "1", всего на несколько процентов!

И нам даже почти не важно, когда именно эти помехи появляются. Например, если бы эта помеха пришла чуть попозже, то мы бы приняли её за начало "правильного" фронта очередного зуба, потому что ко времени её прихода сигнал провёл в "1" уже достаточно времени (т.е. примерно столько же сколько и в прошлом зубе, плюс-минус допуск). Но это и хорошо, пускай так! Зато когда после этой помехи пришёл бы импульс уже от настоящего зуба, то мы бы его проигнорировали, потому что он появился слишком рано после помехи (которую мы уже приняли за зуб, и начали отсчёт следующего периода с неё) - и общее число "пойманных" зубов не поменялось бы!

Бывают, конечно, и более тяжёлые случаи (у darxfame):
noise_spike2.PNG
noise_spike2.PNG (5.34 KiB) Viewed 2602 times
На этой 2-й картинке, на одном из зубов суммарная длительность пребывания сигнала в "1" уменьшилась чуть ли не на 30% (!) из-за помех. Но наш алгоритм фильтрации помех способен справляться и с подобными ситуациями (хотя, возможно, и не с данной конкретной, т.к. по факту 1/3 от длительности - это уже очень много, это сравнимо с допуском на резкое увеличение оборотов)...
puff wrote:
Thu Apr 26, 2018 9:15 pm
статистический анализ прошлых периодов - типа идет ли речь о разгоне/торможении (и соответствующем ожидаемом периоде?)
Да, речь идёт о допущении, что ожидаемый период имеет незначительное отклонение от предыдущего. Именно такое допущение использует основной код декодера триггеров, а мы лишь меняем способ определения этого периода: мы не засекаем время между фронтами всех поступающих сигналов, а подсчитываем суммарное время, в течение которого сигнал "сидит" в 0 или в 1.
puff wrote:
Thu Apr 26, 2018 9:15 pm
но вообще такая проблема стоит? (кроме как у Darxfame?)
У меня раньше тоже было немало ошибок триггера, да и сейчас иногда проскакивают единичные ошибки - в основном, на пуске, когда сигнал с дпкв слабее, а накопление больше...

P.S. Сорри за длинный и слишком подробный ответ...

User avatar
russian
Site Admin
Posts: 9588
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Soldering skill: yes
Coding skill?: yes
Contact:

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by russian » Sun Apr 29, 2018 4:10 am

andreika wrote:
Fri Apr 27, 2018 5:56 am

Подозреваю, что ты мог недопонять мои слова, и из-за этого я сейчас недопонимаю твой вопрос... Особенно твоё выражение "на старте" - речь идёт о старте двигателя? Или это синоним "для начала" ("for starters"), и ты хочешь сейчас поизучать работу алгоритма на эталонах? Поясни, пожалуйста, что ты имел в виду?
Я имел ввиду на старте прошивки проанализировать эталонный сигнал. например как присваиваются значения в state->expectedTotalTime внутри findTriggerZeroEventIndex -ведь весь findTriggerZeroEventIndex работает через проигрывание формы сигнала и обработку этой эталонной формы обычным декодером триггера.
https://rusefi.com/s/howtocontribute
very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions
my skype is arro239

User avatar
andreika
donator
donator
Posts: 412
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by andreika » Sun Apr 29, 2018 6:58 am

russian wrote:
Sun Apr 29, 2018 4:10 am
Я имел ввиду на старте прошивки проанализировать эталонный сигнал. например как присваиваются значения в state->expectedTotalTime внутри findTriggerZeroEventIndex
А что предполагается получить таким образом? Как это может повлиять на алгоритм фильтрации?

Текущий алгоритм фильтрации использует главное допущение, что все зубы шкива одинаковы, и не работает для других типов триггеров. Если предлагается расширить фильтрацию на все те страшные триггеры, у которых произвольная геометрия каждого зуба (определяемая анализом эталона?), и сравнивать периоды не только между собой, а и делать коррекцию по известным эталонным соотношениям?
Юзать

Code: Select all

(switchTimes[i] - switchTimes[i-1]) / (switchTimes[i-1] - switchTimes[i-2])
...То предложение, конечно, заманчивое, но несколько выходит за рамки моей компетенции... :oops:
Во-первых, я ничего толком не знаю про эти хитрые триггеры, и видел их только на картинках...
Во-вторых, я плохо знаю код декодера триггеров и симулятора (и эмулятора :?). Например, я не понимаю эти страшные слова waveIndertionAngle(), pinStates (цитата "does this logic actually work? I think it does not!")... :shock:
Плюс недостаток мотивации: нет насущного практического применения (больше никто пока не жалуется на помехи)

User avatar
andreika
donator
donator
Posts: 412
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by andreika » Tue Sep 25, 2018 10:54 am

Этим летом я ещё раз проверил прошивку rusEFI и блок Prometheus в "боевых" условиях, в очередной поездке по Европе:
map-2018.jpg
map-2018.jpg (290.77 KiB) Viewed 2247 times

Проехал по маршруту Украина-Польша-Германия-Франция-Испания-Италия-Словения-Венгрия-Украина около 6,5 тыс. км.
Т.е. до Барселоны и затем обратно по Ривьере (Лазурный берег).

В целом, ЭБУ и прошивка проявили себя с наилучшей стороны, как и в прошлую поездку!

Но на этот раз я ездил с коррекцией топлива:
fuel-corr.png
fuel-corr.png (10.64 KiB) Viewed 2247 times

И с TPS-based таблицей УОЗ (т.е. зажигание в режиме Alpha-N, а впрыск по ДАД):
tps-based-advance.png
tps-based-advance.png (20.82 KiB) Viewed 2247 times

Таблицу постоянно менял в поездке, экспериментировал, так что на скриншоте просто образец...

В целом, и коррекция топлива, и УОЗ по TPS показали себя неплохо, расход по трассе 8-9 л (смотря как валить, в среднем я ехал 120-140 км/ч).

По приезду, после небольшого перерыва, я подготовил три PR:

#610 Prepare for TPS-based Advance and tCharge Modes + Fixes
* подготовка для двух последующих PR и мелкие исправления в прошивке;

#611 Tps-based Advance Table
* реализация УОЗ по TPS;

#612 AirFlow-interpolated tCharge Mode
* реализация УОЗ по TPS, см. соответствующую тему.

Надеюсь, это кому-то пригодится...

User avatar
russian
Site Admin
Posts: 9588
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Soldering skill: yes
Coding skill?: yes
Contact:

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by russian » Sat Sep 29, 2018 2:23 pm

andreika wrote:
Tue Sep 25, 2018 10:54 am
6,5 тыс. км.
Это 80 часов за рулём получается? Это в каком составе и сколько водителей? Запчасти в багажнике были или поломок не было и не будет?
https://rusefi.com/s/howtocontribute
very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions
my skype is arro239

User avatar
andreika
donator
donator
Posts: 412
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by andreika » Sat Sep 29, 2018 5:51 pm

russian wrote:
Sat Sep 29, 2018 2:23 pm
Это 80 часов за рулём получается?
Наверное всё же меньше, >80% из них - езда по трассе со скоростью 120-140 км/ч. В города мы редко въезжаем, останавливаемся где-то в пригородных кэмпингах или отелях на околицах, и оттуда уже на городском транспорте...
russian wrote:
Sat Sep 29, 2018 2:23 pm
Это в каком составе и сколько водителей?
Я, основной водитель, плюс ещё один резервный водитель на подмену. Главное правило - стараться проезжать не больше 600 км в день, и делать остановки каждые 2-3 часа. Ну и, в общем-то, всё это удовольствие было растянуто на 20 дней, и каждые несколько дней обязательно должны быть вообще без машины, на месте...
russian wrote:
Sat Sep 29, 2018 2:23 pm
Запчасти в багажнике были или поломок не было и не будет?
Немного запчастей в багажнике было, конечно. Например, ремень генератора, свечи запасные, катушки... Но а так, в целом, поломок не было, и запчасти, к счастью, не понадобились. За исключением датчика скорости, который под конец начал немного "моросить" (но его-то я как раз и не взял :twisted: )...

User avatar
andreika
donator
donator
Posts: 412
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by andreika » Wed Oct 31, 2018 2:37 pm

Мысли вслух по использованию входов Прометея для будущего проекта Ion Sensing (вариант реализации):
1) Исходим из того, что у нас освобождается триггерный вход датчика фаз и аналоговый вход датчика детонации.
2) Два сигнала воспламенения C1 (1+3) и C2 (2+4) подаём на входы ЭБУ CAM+ и IN2 по такой схеме:
Cam = C1 (OR) C2
In2 = C1
3) Т.е. подаём на вход триггера CAM сигнал с обоих выходов, объединенный по логической схеме ИЛИ - тогда триггер сработает по любому сигналу (Есть вероятность, что сигналы C1 и C2 можно просто физически соединить друг с другом, если в модуле использованы выходные каскады по схеме open drain/collector).
4) А на обычный вход In2 (In1 у нас задействован под датчик скорости) подаём только сигнал C1 - так мы можем определить, какой из сигналов - источник воспламенения (предполагая, что одновременно оба сигнала C1 и С2 не будут активны одновременно) - просто опрашиваем состояние входа по прерыванию триггера cam.
5) Соответственно, нужно написать код распознавания фазы сигналы воспламенения на замену датчика фаз (и, впоследствии, для аварийных режимов).
6) По идее, вход In2 будет задействован только в начальный момент синхронизации (поиска фазы), а потом мы и так уже будем знать, в каком цилиндре сейчас могло быть воспламенение, и нам будет интересно только его наличие и точное время (по триггеру cam).
7) Сигнал детонации пускаем вместо входа датчика детонации (плюс напишем соответствующий код), тут всё просто.

Abricos
contributor
contributor
Posts: 710
Joined: Mon Aug 18, 2014 12:32 am

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by Abricos » Wed Oct 31, 2018 4:17 pm

Я так понимаю это будет работать только с определенными индивидуальными котушками и дополнительной магической коробочкой ???

puff
contributor
contributor
Posts: 2720
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by puff » Wed Oct 31, 2018 5:04 pm

Тут бы неплохо побольше разжевать. Я ничего не понял.
Вроде как идея заключалась в том, чтобы измерять ток в момент искрения (пусть преобразовательная часть ток-напряжение будет "черной коробочкой")
И если так, то я плохо себе представляю, как этот ion sensing работает с wasted spark (сигнал-то надо брать со свечи, которая не холостая, а с холстой - сигнал будет в лучшем случае неинформативным? если смешивать - интересны нюансы этого смешивания)
в природе существуют микросхемы коммутаторов аналогового сигнала, чуть ли не восьмиканальные, работающие по spi. но вот про скорость коммутации я не скажу. а задача стоит

User avatar
andreika
donator
donator
Posts: 412
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by andreika » Wed Oct 31, 2018 5:59 pm

Abricos wrote:
Wed Oct 31, 2018 4:17 pm
Я так понимаю это будет работать только с определенными индивидуальными котушками и дополнительной магической коробочкой ???
Скорее всего, да.
puff wrote:
Wed Oct 31, 2018 5:04 pm
Вроде как идея заключалась в том, чтобы измерять ток в момент искрения (пусть преобразовательная часть ток-напряжение будет "черной коробочкой")
Да, замерять ток, но не в момент искрения, а сразу после, в момент поджига смеси и её сгорания.
puff wrote:
Wed Oct 31, 2018 5:04 pm
И если так, то я плохо себе представляю, как этот ion sensing работает с wasted spark
Да, плохо работает с wasted spark, нужны индивидуальные катушки, фазированное зажигание. И, возможно, не всякие катушки подойдут (поэтому лучше начинать со специализированных, заточенных под это дело). Поскольку я и так давний фанат фазированного зажигания, то за этим дело не станет ;)
Всё это были лишь мысли вслух, и не стоит воспринимать это как открытый призыв к действиям. Речь пока идёт просто о совместном эксперименте с Андреем @Russian...

User avatar
russian
Site Admin
Posts: 9588
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Soldering skill: yes
Coding skill?: yes
Contact:

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by russian » Thu Nov 01, 2018 6:12 pm

Сначала попробуем с магическими катушками и магической коробочкой - к счастью они достаточно доступные. В мечтах можно потом коробочку заменить своей, но до этого ещё очень и очень далеко :)
https://rusefi.com/s/howtocontribute
very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions
my skype is arro239

User avatar
andreika
donator
donator
Posts: 412
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by andreika » Thu Dec 20, 2018 7:03 pm

Первые испытания ion sense. Часть 1.

Имеем вот такой набор саабовских запчастей:
ion1.jpg
ion1.jpg (253.25 KiB) Viewed 1724 times
- Блочок Ion Sensing Module SAAB 55352173 ("цифровой");
- 4 новых катушки 12787707 (китайские DMCOIL);
- проводка с разъёмами для катушек (б/у);
- коннектор для блочка и контакты к нему (аналог Tyco 1-965427-1).

Проводка нам досталась "покоцанная", с отрезанным коннектором ионного блочка:
ion2.jpg
ion2.jpg (141.86 KiB) Viewed 1724 times
Восстанавливаем коннектор, обжимая имеющиеся провода и добавляя новые. В неиспользуемые гнёзда вставляем три затычки:
ion3.jpg
ion3.jpg (142.29 KiB) Viewed 1724 times
Всё заматываем изолентой, сигналы воспламенения и детонации выводим в разъёмы проводки датчиков детонации и фазы, чтобы использовать старую проводку по максимуму без переделок (и оставить совместимость со старым вариантом):
ion4.jpg
ion4.jpg (170.03 KiB) Viewed 1724 times
ЭБУ тоже переделываем:
- убираем BIPы, поскольку новые катушки - "логические", управляются "плюсом" 5В;
- сигналы воспламенения подаём на входы In1 и In2 Прометея;
- добавляем подтяжку к +5В по входам (поставил 2.7кОм);
- сигнал датчика скорости перенаправляем в Cam+ вместо датчика фаз;
- переводим прошивку на режим попарного зажигания (холостая искра).

Собираем на столе простенький стенд для проверки:
ion5.jpg
ion5.jpg (218.9 KiB) Viewed 1724 times
Искра бегает, всё отлично, и анализатор не фиксирует сигналы воспламенения, как и должно быть.
Остальное проверим на машине. Просто накидываем катушки с проводкой "на весу":
ion6.jpg
ion6.jpg (145.63 KiB) Viewed 1724 times
Двигатель завёлся на удивление легко! Такое ощущение, что эти новые катушки дают более мощную искру, чем старые.
К ЭБУ подключаем анализатор и пишем сигналы воспламенения:
ion7.PNG
ion7.PNG (19.74 KiB) Viewed 1724 times
good1-inj1-disabled-at-the-end.logicdata
(504.5 KiB) Downloaded 207 times
Анализатор ловит помехи, но, в принципе, картина ясна: после подачи управляющего импульса на катушку от блочка приходит один или несколько импульсов воспламенения. Причём, 1-й импульс как правило, очень короткий (~0.15 мс) и есть всегда, когда есть воспламенение, а за ним иногда идёт один или несколько (до 3-х?) импульсов подлиннее (до 5 мс).

* * *

User avatar
andreika
donator
donator
Posts: 412
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by andreika » Thu Dec 20, 2018 7:07 pm

Первые испытания ion sense. Часть 2.

Идём дальше и добавляем в прошивку примитивный тестовый код чтения этих сигналов:
patch-ion-test.patch
(10.34 KiB) Downloaded 203 times
Что он делает:
- подцепляет на внешние прерывания обработчик входов воспламенения (на базе кода джойстика);
- каждый такт собирает статистику по сигналам воспламенения (по двум каналам 1+3 и 2+4);
- добавляет новый режим отладки DBG_ION и выдаёт статистику в логи (debug*);
- ставит приоритет для внешних прерываний (STM32_EXT_EXTI*) на уровне ICU_PRIORITY;

Собирается следующая статистика:
- debugInt1 - счётчик числа тактов (чтобы можно было ориентироваться в логах, где какие данные);
- debugInt2, debugInt3 - количество изменений сигналов воспламенения (С1 и С2) с момента начала такта;
- debugFloat1,debugFloat2,debugFloat3 - время с момента начала такта до появления 1-го, 2-го и 3-го изменения сигнала воспламенения С1 (переход с 0->1 и наоборот);
- debugFloat4,debugFloat5,debugFloat6 - то же время, но для сигнала C2.
- debugFloat7 - общий счётчик срабатываний прерываний С1,С2.

Получаем два вот таких лога:

1) Пуск и ХХ на УОЗ=14 градусов, на 29-й секунде отключение 1-й форсунки (двигатель троит), затем на~32-й секунде отключение и 2-й форсунки (двигатель двоит).
ion8_adv10.PNG
ion8_adv10.PNG (131.51 KiB) Viewed 1724 times
Хорошо видно, как уменьшаются счётчики импульсов под конец.

2) Пуск и ХХ на УОЗ=20 градусов, на 19-й секунде отключаю 1-ю форсунку (двигатель троит);
ion9_adv20.PNG
ion9_adv20.PNG (139.33 KiB) Viewed 1724 times
Похоже, что с увеличением УОЗ время появления 1-го импульса воспламенение чуть-чуть уменьшилось (если сравнивать на одинаковых оборотах, что непросто с учётом изменения УОЗ). Впрочем, о влиянии УОЗ пока говорить рано...

Напомню, в обоих случаях - попарно-параллельный режим зажигания и впрыска, двигатель непрогретый.
К сожалению, наблюдаются "потери" части тактов, поскольку частота выдачи лога недостаточна для таких оборотов ХХ (надо смотреть на rpm<1000).

* * *
Теперь нужно поизучать логи и подумать, что можно с них вытащить, и какую ещё отладочную инфу записать...
На этом пока всё, всем спасибо за внимание!

puff
contributor
contributor
Posts: 2720
Joined: Mon Nov 11, 2013 11:28 am
Location: Moskau

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by puff » Sat Dec 22, 2018 10:23 pm

крутая тут движуха!
а какую цель мы вообще преследуем, когда играем с этим ion sense? его настраивать проще/удобнее, чем традиционные датчики детонации?
про запчасти: блок продается на авите. катушки глянул в магазине типа экзиста - цены за штуку отличается от 1тр до 8тр - не слабый разброс!
про логи. я и в английской ветке догнать не могу, и тут тоже.
вроде бы где-то тут в вики писалось, что из блока идут два выходящих сигнала: один сигнализирует, в какой из катушек идет замер, а второй - указывает на наличие или отсутствие события детона (или я выдумал все это?)

на картинке из лог анализатора ign1 - это сигнал с эбу на блок зажигания? (туда он не инвертированный разве приходит?)
a с13 и с24?
интересная пила получилась у df1 и df4 в первом логе (уж очень друг на друга похоже - точно не одно и то же значение? и как это интерпретировать?), красный график на тех же логах отличается почему-то (а df3 и df6 и вовсе не показывает).
можно было бы предположить, что в норм условиях (без детона) должно быть только два графика (белый и красный), один над другим, которые бы указывали продолжительность горения? (или это мои очень наивные представления?).

начало пилы совпало с каким-то из отключений форсунок? кстати, они соответствуют разным каналам зажигания?

а когда будет код, который будет влиять на расчет впрыска/зажигания? :-)

User avatar
andreika
donator
donator
Posts: 412
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by andreika » Sun Dec 23, 2018 8:04 am

puff wrote:
Sat Dec 22, 2018 10:23 pm
а какую цель мы вообще преследуем, когда играем с этим ion sense?
Например, вот три цели:
1) Диагностика пропусков воспламенения (и потенциально индикация необходимости замены свечей, поцилиндровое отключение впрыска/сушка и т.д. - надо изучать, что умеют делать крутые ЭБУ);
2) Обнаружение детонации (по идее, ионное обнаружение точнее акустического, во всяком случае на таких "шумных" цепных движках как у меня);
3) В идеале - автонастройка УОЗ (самая вкусная цель лично для меня).
puff wrote:
Sat Dec 22, 2018 10:23 pm
вроде бы где-то тут в вики писалось, что из блока идут два выходящих сигнала
a с13 и с24?
Из блока в ЭБУ идут 3 сигнала:
1) с13 - сигнал воспламенения в 1+3 цилиндре
2) с24 - в 2+4 цилиндре.
3) сигнал детонации.
Суть в том, что два сигнала воспламенения 1+3 и 2+4 позволяют точно определить, в каком из цилиндров оно сейчас происходит. Исходим из того, что у нас схема работы цилиндров 1-3-4-2, т.е. ВМТ сейчас либо в 1+4, либо в 2+3 цилиндрах.
Т.е. мы получаем 4 возможных варианта:
1) ВМТ в 1+4 и сигнал С1+3 --> воспламенение в 1-м цилиндре;
2) ВМТ в 1+4 и сигнал С2+4 --> воспламенение в 4-м цилиндре;
3) ВМТ в 2+3 и сигнал С1+3 --> воспламенение в 3-м цилиндре;
4) ВМТ в 2+3 и сигнал С2+4 --> воспламенение в 2-м цилиндре;
И когда мы уже знаем, где именно воспламенение, то дополнительно смотрим и 3-й сигнал детонации.
puff wrote:
Sat Dec 22, 2018 10:23 pm
на картинке из лог анализатора ign1 - это сигнал с эбу на блок зажигания? (туда он не инвертированный разве приходит?)
Да, это он. Он приходит не инвертированный (точнее, дважды инвертированный - один раз в растройках rusEFI, второй раз инвертируется в буфере 74HCT04). Я же писал выше, что катушка управляется плюсом, т.е. при подаче +5В начинается накопление, и при снятии напряжения идёт искра.
puff wrote:
Sat Dec 22, 2018 10:23 pm
а когда будет код, который будет влиять на расчет впрыска/зажигания? :-)
В самом конце, когда всё остальное будет готово. :)
puff wrote:
Sat Dec 22, 2018 10:23 pm
начало пилы совпало с каким-то из отключений форсунок? кстати, они соответствуют разным каналам зажигания?
Да, именно при отключениях та "пила" в конце и появилась. Но я не уверен, что она нам что-то может сообщить. В том смысле, что когда движок двоил, и смесь была неизвестно какая, и коленвал очень неравномерно вращается, из-за этого ошибки таймингов УОЗ, и пропуски в оставшихся 2-х цилиндрах и т.д. На таких данных вообще нереально что-либо понять.
Пока что главный источник информации для нас - это dint2 и dint3 - счётчики импульсов воспламенения.
На данный момент, я склонен полагать, что 1-й импульс, который приходит практически всегда, это помеха. Поэтому, если мы посчитали 2 или больше импульса в такте - то это и есть воспламенение, а если 1 или меньше - пропуск. Но если так, то пропусков что-то слишком много даже на "нормальном" с виду ХХ. Я очень хочу верить, что сам ионный блочок не "глотает" импульсы, и что это несовершенство моего обработчика в прошивке или входных цепей Прометея...

User avatar
andreika
donator
donator
Posts: 412
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by andreika » Sun Mar 10, 2019 9:29 pm

Сегодня был в гараже, завёл "Рыжика" и немного прогрел.
Завелась с первого раза, но тут же заглохла:
20190310_1st.msl
(86.63 KiB) Downloaded 152 times
Такое происходит только на холодном движке, если хоть чуть-чуть прогреется (поработает минутку), то потом уже не глохнет после пуска. Надо будет что-то подправить в настройках...

А так, с самой машиной пока ничего не происходит. Зимняя спячка :)
Зато идёт активная подготовка к будущим проектам, и, в том числе, работа над новой платой Deucalion.

User avatar
andreika
donator
donator
Posts: 412
Joined: Mon Feb 13, 2017 2:35 pm
Location: Kiev

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by andreika » Fri Mar 22, 2019 4:10 pm

Выложил PR с ПИД-автокорректором оборотов ХХ по УОЗ, а также поддержкой режима настройки VE по TPS вместо MAP:

https://github.com/rusefi/rusefi/pull/713

Вот пример тестовых настроек, проверенных на машине Артёма @darxfame:
timingPidSettings_example.PNG
timingPidSettings_example.PNG (28.53 KiB) Viewed 1141 times
P.S. Также обновил бутлоадер для Прометея, поскольку есть уже несколько плат Прометея на разных процессорах (469 и 405), плюс с учётом новой версии ChibiOS.

User avatar
russian
Site Admin
Posts: 9588
Joined: Wed Aug 28, 2013 1:28 am
Location: Jersey City
Soldering skill: yes
Coding skill?: yes
Contact:

Re: ВАЗ-2103 "Рыжик" (1977) :: Lada 1500 "Ryzhik" (1977) #37

Post by russian » Sat Mar 23, 2019 3:00 am

Красота :)
https://rusefi.com/s/howtocontribute
very limited telepathic abilities - please post logs & tunes where appropriate - http://rusefi.com/s/questions
my skype is arro239

Post Reply