Автор Тема: DIY EFI MegasquirtAVR управление на впръскването  (Прочетена 182937 пъти)

Неактивен valex

  • Специалист
  • Много Напреднал
  • ***
  • Публикации: 1 505
  • Пол: Мъж
  • изчислителна техника
DIY EFI MegasquirtAVR управление на впръскването
« -: Ноември 16, 2012, 03:27:45 pm »
Здравейте,
форум с руски ентусиасти са направили доработка на Open source компютъра за автомобили EFI MegasquirtAVR, като го ползват за управление на впръскването по самооптимизиращ се алгоритъм, заменяйки оригиналната система Bosh Jetronic.

http://www.audi-club.ru/forum/showthread.php?t=206086  - темата ЭСУД под управлением EFI MegasquirtAVR в автомобилях AUDI 84/94 годов выпуска

Решихме да се спрем на MegasquirtAVR като базов вариант, а после да сменяме алгоритмите. В момента съм направил процесорната част. Имам направена и платка за симулиране на двигател. Сега се занимавам с доработката на  софтуера. Въпрос: има ли някой който да се е занимавал с подобно нещо. Можем да си бъдем полезни с идеи и опит.  :)
« Последна редакция: Ноември 18, 2012, 12:32:12 am от altium »

Неактивен mzk

  • Много Напреднал
  • *****
  • Публикации: 1 622
  • Пол: Мъж
  • http://analogov.com
    • analogov.com
Re: DIY EFI MegasquirtAVR управление на впръскването
« Отговор #1 -: Ноември 17, 2012, 11:09:29 am »
Здравей колега valex!

Изпълнението ти е доста добро, да не кажа отлично. С толкова сложни неща не съм се занимавал.
Имам проект за управление на газодизел, който събира прах.

Използвал съм Atmega16L. Стигнал съм нивото, в което събирам информация от няколко датчика (масло, оборотомер, температура) и управлявам клапана на изпарителя. Условието е да се подава газ над 1000 оборота и да се спира над 3 или 4000, защото тогава се получаваше безкрайно форсране.

В последствие записах звука от детонациите и извадих спектъра им, за да направя и "детонационен" датчик, който да ограничава подаването на газ (газов моно-инжекцион).

Проектът замря някъде в начална фаза.

Не бих се ангажирал с работа по този проект, но с някаква частична помощ или дискусия по въпроса - да.

По отношение на самооптимизиращия се алгоритъм - каква е идеята? Новите компютри по принцип следят нивото на кислород и коригират времената на инжекторите в краткосрочен и дългосрочен аспект (Short и Long Term Fuel Trim).

Какво целите?

ПС: може би темата трябва да се отдели.
« Последна редакция: Ноември 17, 2012, 11:11:42 am от mzk »

Неактивен valex

  • Специалист
  • Много Напреднал
  • ***
  • Публикации: 1 505
  • Пол: Мъж
  • изчислителна техника
Re: DIY EFI MegasquirtAVR управление на впръскването
« Отговор #2 -: Ноември 17, 2012, 05:36:01 pm »
Самия проект и платката не са мое изпълнение, а на руснаците. Аз само го репликирам.

В началото е MEGASQUIRT (MSI, MSII, MSIII ) - американски проект, който е бил фрий на базата на моторолски микропроцесор. После едни други момчета го прехвърлят на ATMEGA 128 също фрий (MEGASQUIRTAVR, MSAVR 2.2 ). В последствие го правят комерсиален под името VEMS.

Платката подържа входни сигнали CLT, MAT, TPS, O2, COIL, Ubatery и управлява два инжекциона и помпата на горивото.

Има готови разни версии на софтуера на С. Смятаме да добавим управление на запалването (тази версия няма такова управление, следващите хардуери го имат).

За сега само изчиствам софтуера от излишните неща и тествам на симулатора. Забравих да кажа, че има софтуери които комуникират с платката. Вадят информация за режимите на работата на двигателя и ги представят в графика. Също може да се променят работните графики от софта.

Относно оптимизиращия алгоритъм: не съм много добре запознат с него. Идеята е на колегата, който в момента го тества на матлаб. Идеята е в общи линии е ако се променят някои от условията на работа на двигателя: гориво, масло, механично износване и други да се търси във съответната работна точка на режима на двигателя оптимум на работа: количество гориво и ъгъл на запалване които да корегират таблиците на управление.
« Последна редакция: Ноември 18, 2012, 12:20:18 am от altium »

Неактивен valex

  • Специалист
  • Много Напреднал
  • ***
  • Публикации: 1 505
  • Пол: Мъж
  • изчислителна техника
Re: DIY EFI MegasquirtAVR управление на впръскването
« Отговор #3 -: Ноември 17, 2012, 05:45:27 pm »
Altium извинявай,че не се обадих.
Знам за оптичния метод на оптимизация, но не мисля че е масово приложим и има голям проблем с зацапването. А метода който смятаме да ползваме е следния: в определената работна точка се търси чрез промяна на въздействието към двигателя максимални обороти на въртене и минимален разход. Като тази оптимизация се прави непрекъснато и се запомня.

Неактивен valex

  • Специалист
  • Много Напреднал
  • ***
  • Публикации: 1 505
  • Пол: Мъж
  • изчислителна техника
Re: DIY EFI MegasquirtAVR управление на впръскването
« Отговор #4 -: Ноември 17, 2012, 07:41:28 pm »
Както писах не съм много добре в алгоритъма (за сега не го разглеждам), но той е пробван върху автомобил на колегата с PIC реализация без много допълнителни обратни връзки.
« Последна редакция: Ноември 17, 2012, 11:26:48 pm от altium »

Неактивен valex

  • Специалист
  • Много Напреднал
  • ***
  • Публикации: 1 505
  • Пол: Мъж
  • изчислителна техника
Re: DIY EFI MegasquirtAVR управление на впръскването
« Отговор #5 -: Ноември 18, 2012, 08:54:32 am »
altium ще те помоля да ме ми променяш текста който съм написал.
Така е няма запалване в MEGASQUIRTAVR. Туй ни е идеята да се добави и да се промени съответно алгоритмите. На тази база да се пробват част от нещата, а после да направя по-компактен хардуер и  платка.

Неактивен valex

  • Специалист
  • Много Напреднал
  • ***
  • Публикации: 1 505
  • Пол: Мъж
  • изчислителна техника
Re: DIY EFI MegasquirtAVR управление на впръскването
« Отговор #6 -: Ноември 18, 2012, 08:59:27 am »
http://vems.hu/ тук има пълно изпълнение и доста описания.

Неактивен valex

  • Специалист
  • Много Напреднал
  • ***
  • Публикации: 1 505
  • Пол: Мъж
  • изчислителна техника
Re: DIY EFI MegasquirtAVR управление на впръскването
« Отговор #7 -: Ноември 29, 2012, 10:12:00 pm »
Вече е в кутия :) А и доста сухи тренировки проведохме за настройка :) Настройката става с MEGATUNE софтуер и е многовариянтно. Искам да кажа ,че има страшно много комбинации на параметри  за настройка. Явно ще има доста донастройки след като се монтира на колата (Додж Спирит).

 Имам проблем с компилирането на една от версиите на софтуера. Сорса е на GCC към AVR STUDIO 4.  Ако някой има желание и възможности може да ми помогне.
« Последна редакция: Ноември 29, 2012, 10:29:42 pm от valex »

Неактивен valex

  • Специалист
  • Много Напреднал
  • ***
  • Публикации: 1 505
  • Пол: Мъж
  • изчислителна техника
Re: DIY EFI MegasquirtAVR управление на впръскването
« Отговор #8 -: Декември 04, 2012, 09:01:40 am »
От вчера мога да гарантирам, че системата работи. :)  Пробвана е без ламбда сондата. Проблем е, че пуска повече гориво, но това се коригира с таблиците за управление.
« Последна редакция: Декември 04, 2012, 09:55:02 am от Maistora52 »

Неактивен mzk

  • Много Напреднал
  • *****
  • Публикации: 1 622
  • Пол: Мъж
  • http://analogov.com
    • analogov.com
Re: DIY EFI MegasquirtAVR управление на впръскването
« Отговор #9 -: Декември 04, 2012, 10:17:48 am »
Здравей valex,

Така и не стана много ясно точно какво целите. Честито за работещия компютър! GCC-то, надали мога да помогна много, но ако искаш пиши на ЛС.

Неактивен valex

  • Специалист
  • Много Напреднал
  • ***
  • Публикации: 1 505
  • Пол: Мъж
  • изчислителна техника
Re: DIY EFI MegasquirtAVR управление на впръскването
« Отговор #10 -: Декември 04, 2012, 01:31:16 pm »
Целта на цялото това занимание е да се направи евтин и достъпен универсален компютър управляващ ДВГ. Може да се използва ако е дефектирал оригиналния компютър, ако се добави газово устройство да го управлева със съответните корекции на впръсването и ъгъла на запалване в съответните режими. Може да се направи по-икономично управление на ДВГ. Може и други неща които ще измислим :)

Неактивен mzk

  • Много Напреднал
  • *****
  • Публикации: 1 622
  • Пол: Мъж
  • http://analogov.com
    • analogov.com
Re: DIY EFI MegasquirtAVR управление на впръскването
« Отговор #11 -: Декември 04, 2012, 03:49:03 pm »
Здрасти valex,

Моето мнение доста се различава от твоето по куп причини, макар че, признавам, има някои положителни страни в твоята реализация.
1. За АГУ - ЕКУ-то на по-старите коли обикновено управлява само впръскването, без аванса. Примерно карах Пежо 205 с TU1M мотор, който на газ си работеше чудесно без компютър (с делко е). Идеята ми за тази кола беше да се ползва мап сензор + ламбда сонда за да се направи газов моноинжекцион. Предимства - не се занимаваш с настройки на изпарителя.
2. Компютър за АГУ - да, добра идея, но е хубаво да се има предвид, че бензиновия комп. следи постоянно параметрите и затова последните модели на комерсиални компютри се закачат на ОБД-то. Ето какво се получава: ако бензиновия комп. има динамично създадени таблици (би трябвало), той се съобразява с качеството на горивото, състоянието на системата като цяло (EGR клапана или инжектор с влошено състояние ще се отразят веднага в показателите на О2 сензора, от там се изменят и Short и Long Term Fuel Trim (STFT, LTFT). От там се изменят и времената на инжекторите, които ако се повторят от газовото ЕКУ биха дали съвсем различни показания. При много голямо разминаване в двата режима на работа е възможно "да се появи грешка" от бензиновото ЕКУ, т.е. параметрите са силно изместени от оригиналните таблици (примерно до +/- 20% разлика от LTFT). Някои газаджии биха имали известно право (макар че не го знаят) да оставят компютъра да работи в авариен режим. Така той няма да ползва динамично създадени таблици и времето на бензиновите инжектори ще е константно, от там параметрите на газовите инжектори ще са по-постоянни, защото коефициентие от газовото ЕКУ на практика "плуват" над бензиновите.

А най-новата мода следи именно STFT и LTFT и динамично може да напасне коефициентита, така че бензиновото ЕКУ да не се стряска много от драстични разлики. Освен тях следят и ламбда сондата, т.е. доближават се доста до това, което едно газово ЕКУ трябва да бъде (според мен). Остава корекция на предварението, което е друг въпрос и се оказва по-сложно...

Но така и не ми стана много ясно какво целите. Имате алгоритъм за икономия. Ако е тайна - ОК, но ако не е, защо не го коментираме?  :)
Аз например имам някои идеи, но от опит знам, че едно е идеята, а да се реализира съвсем различно, и накрая често се оказва, че идеята е нереализуема.  ???

Неактивен valex

  • Специалист
  • Много Напреднал
  • ***
  • Публикации: 1 505
  • Пол: Мъж
  • изчислителна техника
Re: DIY EFI MegasquirtAVR управление на впръскването
« Отговор #12 -: Декември 04, 2012, 04:52:10 pm »
Идеята е компютъра да поеме работата с бензин и когато трябва да минава на управление на газ и обратно. Естествено с различни алгоритми.
Алгоритъма за оптимизация не е изчистен съвсем ( трябват доста експерименти ) и за сега усилията ми са насочени към добавяне на управление и на запалването.
Самата идея е: при постоянно натоварване, оборотите са в линейна функция спрямо въртящия момент (мощността еквивалентно). Когато се променя въздействието (време на инжектиране на гориво и/или ъгъла на запалване) се променят оборотите и се търси оптимален режим на въздействието т. е. максимални обороти при минимално гориво. Съответно това въздействие се запомня или директно се коригират работните таблици. Естествено има много проблеми : как да се постигне постоянно натоварване или по-скоро как да се определи, че това моментно натоварване е постоянно за достатъчно дълъг период за да се извърши анализа и самото въздействие.
« Последна редакция: Декември 04, 2012, 05:12:31 pm от Maistora52 »

Неактивен mzk

  • Много Напреднал
  • *****
  • Публикации: 1 622
  • Пол: Мъж
  • http://analogov.com
    • analogov.com
Re: DIY EFI MegasquirtAVR управление на впръскването
« Отговор #13 -: Декември 04, 2012, 05:56:30 pm »
Здрасти, идеята май си струва, но реализацията - не знам. Ако пазиш данните, трябва и температура (а може би добре и влажност) на входящия въздух, температура на двигателя и всички останали възможни параметри, защото аванса е малко проблемен.

Иначе потвърждавам - при мен например, като си играя с аванс процесора имам "пик" на оборотите, където на празен ход моторът има малко по-високи обороти, отколкото с по-голямо или по-малко предварение. Динамично да се снема и управлява тази характеристика - не ми се мисли :)

Неактивен valex

  • Специалист
  • Много Напреднал
  • ***
  • Публикации: 1 505
  • Пол: Мъж
  • изчислителна техника
Re: DIY EFI MegasquirtAVR управление на впръскването
« Отговор #14 -: Декември 04, 2012, 07:29:20 pm »
Докато не се пробва не се знае дали ще стане :)