logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Projektowanie komputera pokładowego do 1.9 JTD - sygnały obrotów i prędkości

Darcze 20 Gru 2015 14:48 1917 9
REKLAMA
  • #1 15256058
    Darcze
    Poziom 9  
    Witam,
    Od pewnego czasu przymierzam się do zaprojektowania i wykonania od podstaw komputera pokładowego do auta z silnikiem 1.9 JTD. Ale przed rozpoczęciem prac chcę zebrać wszystkie wymagane informacje. Chcę uniknąć sytuacji, że wystąpi potrzeba odczytu jakiegoś sygnału, co było by niemożliwe bo na przykład przy projektowaniu hardwere nie przewidziałem takiej potrzeby.

    Zaczynając opcje jakie chcę zawrzeć w pierwszej wersji urządzenia to takie jakie posiada każdy komputer pokładowy:
    -średnie spalanie
    -chwilowe spalanie
    -temperatura (w wielu miejscach XD )
    -obroty
    -prędkość
    to wymagania dla układu bazowego potem będzie rozbudowany.
    Ale pytanie brzmi:
    -Sygnał obrotów ma postać impulsów jak w enkoderze: skąd wziąć informacje stosunku impulsów do obrotu ?
    -Sygnał prędkość ma postać taką jak sygnał obrotów ?
    -co do temperatury prawdopodobnie nie będzie problemów

    I tu się zaczynają schody a mianowicie SPALANIE:
    -w silniku JTD mam do dyspozycji sygnał ciśnienia paliwa oraz sygnały sterujące wtryskami jak bazując na tych informacjach wyliczyć spalanie ?

    Z góry informuję iż tak samochód posiada OBD2 ale jest to projekt którego założeniem w przyszłości jest samodzielne sterowanie silnikiem jak i resztą podzespołów.

    Iż na początek nie potrzebuję zawrotnej mocy obliczeniowej zdecydowałem się skorzystać z uC z rodziny Atmel nie wiem może Któraś atmega wszystko zależy od zebranych informacji. Kolejne wersje komputera zamierzam oprzeć o jakiś mikro komputer.

    Z dziękuje.
  • REKLAMA
  • #2 15256158
    Steryd3
    Poziom 33  
    Projekt ECU silnika to b. trudny temat. Komponentów na silniku służących do pomiaru ciśnień, temperatur czy przepływów jest obecnie sporo, dodatkowo dochodzą czujniki prędkości obrotowej i fazy, regulacja ciśnienia w rail'u a w końcu sterowanie czasem wtrysku ( a raczej czasami bo dawek jest kilka)...
    Jak złożony jest to proces i jak dokładna musi być elektronika i sterowanie tego niech świadczy fakt, że każdy wtryskiwacz jest unikalny i w sterowaniu uwzględniane są jego parametry(wprowadzane do centralki na etapie produkcji).
    Rozumiem, że wszystkie informację które chcesz uzyskać miały by pochodzić z czujników znajdujących się oryginalnie na silniku?

    Najłatwiej by te informacje było wydobyć przez OBD ..ale rozumiem, że założenia są inne.

    Co do Twoich pytań- wszystko zależy od tego co masz na silniku.
    Sygnał prędkości obrotowej pochodzi z czujnika umieszczonego na tzw. kole fonicznym które zazwyczaj ma 60-2 zębów (czyli 58) - co daje 58 impulsów na obrót. Jakie to będą impulsy-zależy od typu czujnika.
    Z prędkością samochodu...znów zależy z czego pochodzi sygnał.
    Co do temperatur - na silniku najczęściej korzysta się z czujników typu termistor NTC lub jakieś Pt200 -ogólnie zmiana temperatury przekłada się na zmianę rezystancji którą trzeba mierzyć.
    Dokładny pomiar rezystancji nie jest trywialny bo wymaga zastosowanie źródła prądowego a co za tym idzie "podebranie" takiego sygnału nie należy do zadań prostych.

    Na koniec mogę Ci polecić coś na temat budowy tego typu sprzętów- projekt nosi nazwę "megasquirt" i można tam podglądnąć jak się wykonuje różne obwody wejściowe dla różnych czujników stosowanych w motoryzacji.
  • REKLAMA
  • REKLAMA
  • #4 15257974
    kamyczek
    Poziom 38  
    Nie wiem czy zdajesz sobie sprawę ze złożoności tematu oraz ilości obliczeń jakie musi wykonać taki sterownik . Nie chcę być pesymistą ale o kilku rzeczach możesz zapomnieć pierwsza to lepsze parametry , druga współdziałanie z resztą auta , trzecia zgodność z jakąkolwiek normą spalin . Obsługa wtrysków , pomiary , komunikacja can , diagnostyka , immobilizer , procedury testowe , bloki pomiarowe , parametry auto adaptacyjne , AVR może i tak ale nie jeden , bo zabraknie czasu na obliczenia . Do tego Bascom odpada , C z grubą ilością wstawek z asemblera jak nie sam asembler w przypadku tak "słabego" do takiego zastosowania mikrokontrolera AVR . W edc16 jest MPC556 w edc17 jeszcze mocniejszy . Do takich rozwiązań stosuje się 16 i 32 bitowe rozwiązania że względu na sporo obliczeń matematycznych ,które trzeba zrobić bardzo szybko . np. przy 1000 obrotów masz do obliczenia 4 czasy wtrysków dla każdego cylindra , obrotów , temp , ciśnienia , musisz wysterować turbo , egr , wtryski i zrobić całą resztę zdążysz ???
  • REKLAMA
  • #5 15258100
    Steryd3
    Poziom 33  
    Zgadzam się z kamyczek całkowicie.
    Budowa centralki na AVR która była by namiastką profesjonalnego ECU jest niemożliwa- nawet na samym asemblerze. Nie chodzi tu tylko o moc obliczeniową ale i o zasoby pamięciowe. Oczywiście jakieś sterowanie proste silnikiem na AVR można sklecić -kolega np. stworzył sterowanie silnika od malucha.

    Z tym, że kolega Autor raczej nie chce budować na AVR centralki a komputer pokładowy co wydaje mi się zadaniem do udźwignięcia. Ja rozumiem to tak, że autor chce sobie testować mniejsze zagadnienia a docelowo wstawić coś mocniejszego.

    Pomijam fakt, że sterowanie silnikiem z zasilaniem Common Rail jest zadaniem nieco trudniejszym niż sterowaniem silnikiem z malucha.

    W takim projekcie nie chodzi też o to by robić jakąś super kalibracje dotyczącą toksyczności spalin i przechodzić testy Euro6 na rolce czy implementować tam OBD lub immobilizer. Tego typu projekty centralek mają w założeniu nabycie umiejętności i wiedzy oraz stworzenie otwartej konstrukcji gdzie będzie można bez problemów dokonywać łatwych kalibracji i modyfikacji. Jeżeli gdzieś się takie coś ma przydać to będzie to sport motorowy czy tuning. Z pewnością nie będzie to seryjna produkcja do seryjnego samochodu bo taka konstrukcja nie ma szans spełnić 90% norm które są obecnie wymagane.
  • #6 15277097
    Darcze
    Poziom 9  
    Jak koledzy zaważyli budowa ECU na malutkim avr jest niewykonalna przy takim silniku, a sama próba to jak iść z motyką na słońce. To też ten iż projekt ma mieć na celu jedynie rejestrację kilku istotnych informacji. A bardziej zaawansowany projekt oprę o mikrokomputer ale to odległa przyszłość XD
  • #7 15277483
    linuxtorpeda
    Poziom 26  
    https://www.youtube.com/watch?v=p9l8qepzlO8
    Tutaj jak widać się dało nawet na stareńkim 8051 (niecałe 2 MIPS, dla przypomnienia - ATmega8 może osiągać do 20 MIPS)

    Kolejna sprawa - w autach nie ma czegoś takiego jak "centralny komputer pokładowy". Skrót ECU może zarówno oznaczać to, jak i to - jedno stanowi podtyp drugiego, jednak absolutnie nie są to tożsame pojęcia.

    O zachowaniu auta decyduje sieć wzajemnie ze sobą połączonych jednostek pokładowych (ang. electronic control units). Każda z jednostek pełni swoją ściśle określoną funkcję, chociaż niektóre z nich są w stanie gospodarować swoją mocą obliczeniową bardziej liberalnie (o wymogach odnośnie architektury ECU dla nowoczesnych aut możesz poczytać m.in. tu, chociaż na początek zalecam poszukanie przystępniejszego źródła). W aucie może się znajdować do kilkudziesięciu takich jednostek.

    Sposób komunikacji między jednostkami może wyglądać różnie, zależnie od zastosowanej szyny. W jednym aucie może ze sobą współgrać wiele rodzajów szyn komunikacyjnych. Do przekazu informacji pomiędzy różnymi typami szyn służą tzw. gatewaye. Przykładową sieć złożoną z wielu szyn możesz zobaczyć tu.

    Na temat rodzajów szyn (magistral) nie będę się rozwodził, sporo informacji można wygooglać samodzielnie. Najpopularniejsze standardy to CAN (w odmianach HS, LS, TT), LIN, FlexRay, MOST.

    Pisanie firmware'u dla ECU w czystym assemblerze włożyłbym między bajki :) Poza pewnymi assemblerowymi fragmentami systemu operacyjnego, firmware przeważnie jest pisany w C lub C++.

    Co do wyznaczenia spalania - ilość spalonego paliwa jest wprost proporcjonalna do ilości obrotów silnika, liczby cylindrów i czasu wtrysku. Po doświadczalnym wyznaczeniu współczynnika spalania, pomiary powinny być w miarę rzetelne. Możesz też przejrzeć ten wątek lub poszukać informacji na Google :)
  • #8 15280374
    Steryd3
    Poziom 33  
    linuxtorpeda napisał:
    Co do wyznaczenia spalania - ilość spalonego paliwa jest wprost proporcjonalna do ilości obrotów silnika, liczby cylindrów i czasu wtrysku

    Rozumiem, że ciśnienie w rail'u nie ma znaczenia oraz fakt, że w systemie zasilania common rail dawka wtryskowa składa się z wielu części?
    Mam wrażenie, że niektórym ciągle podczas pisania postów w tym wątku na myśl przychodzi sterowanie silnikiem benzynowym które jest jednak nieco inne od sterowania w silnikach wysokoprężnych z zasilaniem Common Rail.
    Co do reszty jak najbardziej się zgadzam.
  • #9 15281585
    linuxtorpeda
    Poziom 26  
    @Steryd3
    No niezbyt dobrze rozumiesz. Nigdzie nie wykluczałem wpływu innych parametrów. Jakbyś zajrzał do wątku, który zalinkowałem, to znalazłbyś to, o czym teraz piszesz.

    Jeśli znasz wzór na wyznaczenie spalania z akceptowalną przez grono forumowiczów dokładnością, to go podaj.
  • #10 15281983
    Steryd3
    Poziom 33  
    linuxtorpeda napisał:
    @Steryd3
    No niezbyt dobrze rozumiesz. Nigdzie nie wykluczałem wpływu innych parametrów. Jakbyś zajrzał do wątku, który zalinkowałem, to znalazłbyś to, o czym teraz piszesz.

    Jeśli znasz wzór na wyznaczenie spalania z akceptowalną przez grono forumowiczów dokładnością, to go podaj.


    Nie wykluczyłeś ale i nie zaznaczyłeś, że coś innego ma jeszcze wpływ.
    Co do wzoru...idea się zgadza. Niestety w praktyce nie jest tak różowo.
    Ktoś na podanym przez Ciebie forum podał, że dodatkowo proporcjonalne to jest do przepływu- i tu się można zgodzić bo z kolei ten jest uzależniony od ciśnienia w szynie, wielkości otworów w wtryskiwaczu, ich ilości, lepkości paliwa, i jeszcze pewnie kilku innych zmiennych. Od czego znów zależny lepkość płynu... zmiennych ciągle przybywa. Sprawa z ilością wtryśniętego paliwa przez wtryskiwacz jest na tyle skomplikowana, że producenci silników na etapie kalibracji centralki do konkretnego egzemplarza wgrywają do niej dane dotyczące każdego z wtryskiwaczy który na silniku jest zamontowany. Jest to później uwzględniane w czasie otwarcia wtryskiwacza(wspominałem o tym).
    Dodatkowo w różnych punktach pracy silnika dawka jest dzielona na inną ilość części- wie to ten kto z oscyloskopem pooglądał sygnał wtryskiwacza.

    Tak więc by mieć dokładny pomiar (bo o taki tu chodzi jak kolega chce sobie później robić z tego układ sterowania silnikiem) trzeba by robić charakterystyki wtryskiwacza. Oczywiście silnik bez tego też będzie pracował...tylko pytanie jak optymalnie.

    A tak na marginesie... co do pomiaru zużycia paliwa podawanych w fabrycznych komputerach pokładowych... wiele firm zaniża nieco ten parametr z czego fachowcy zdają sobie sprawę.
REKLAMA