Elektroda.pl
Elektroda.pl
X
Metal Work Pneumatic
Proszę, dodaj wyjątek www.elektroda.pl do Adblock.
Dzięki temu, że oglądasz reklamy, wspierasz portal i użytkowników.

Sterownik wtrysku na atmega128 bascom

rxr2 11 Gru 2013 22:46 2892 6
  • #1 11 Gru 2013 22:46
    rxr2
    Poziom 9  

    Witam

    Proszę o wsparcie wiedzą i doświadczeniem przy programie na procesor atmega128.

    Program ma sterować dodatkowym wtryskiem gazu w tym przypadku będzie to instalacja 5tej generacji LPG czyli fazy ciekłej.

    Zasada działa nia jest bardzo prosta i wymaga:


    Podłączenia sygnałów z 2 wtryskiwaczy (tyle wystarczy w 4 cylindrowym silniku) przez diody prostownicze i dzielniki napięcia do wejścia procesora.

    Będzie to nasz TRIGER (to on będzie wyzwalał pętle programu )

    Dodatkowo można dać if TRIGER >= by nie wzbudzał sie układ przypadkowo



    potrzebujemy jeszcze informacji ciśnieniu w kolektorze dolotowym bo to silnik turbo wiec podamy na 2 wejście sygnał analogowy z mapsensora 0-5V

    Nazwiemy te zmienną MAP

    Ostatnią rzeczą potrzebna do dostrojenia układu dodatkowego wtryskiwacza jest zmienna X. Będzie to współczynnik ustawiany najlepiej potencjometrem za pomocą dzielnika napięcia na wejściu 3.

    zmienna WYNIK to czas otwarcia dodatkowego wtrysku wyrażona w milisekundach podania napięcia na port Wyjściowy pod który będzie podłączony mosfet sterujący pracą dodatkowego wtrysku LPG

    Pętla programu:

    case MAP > 0,6 BAR ' gdy ciśnienie większe niż 0,6 bar

    WYNIK= 5 * MAP*X ' gdzie 5 będzie nasza podstawą czasu 5 ms map będzie współczynnikiem zwiększającym czas wtrysku w zależności od ciśnienia, a nasze X da nam możliwość strojenia układu w aucie.



    Na koniec dobrze było by na wyświetlaczu 2x16 dać:
    na górnej linii wartość X
    na dolnej wartość MAP i wartość WYNIK

    odświeżane co 500ms


    To na początek reasumując potrzebne funkcje:

    1)sprawdzanie stanu WE1 dla TRIGER
    2)sprawdzanie napiecia na WE2 dla MAP


    Wiem ze mój program to prosta sprawa dla kogoś kto ma doświadczenie w bascom ale ja ostatni program jaki napisałem był na 1 roku i to w Pascalu...

    A uprzedzając pytanie czemu atmega128 bo po prostu mam taka płytke ZL8AVR czyli Zestaw ZL8AVR to uniwersalna płyta bazowa dla modułu atmega 128 wraz z wyświetlaczem 2x16.

    0 6
  • Metal Work Pneumatic
  • #2 11 Gru 2013 23:34
    rxr2
    Poziom 9  

    A może coś więcej niż ironiczna riposta... ?


    O kwestie mechaniki proszę się nie obawiać.

    Auto to mocno zmodyfikowane 2.0 turbo, własnoręcznie wystrojone prze zemnie zarówno jak i na PB jak i na lpg. problem w tym ze na pb mam 325 KM a na LPG kończą mi sie wtryski przy 230KM.

    Dodatkowy wtrysk to nie jest fanaberia... Takie coś jest bardzo popularne w Holandii. I jest dokładnie tak samo sterowane jak opisałem w poprzednim poście.

    Dodatkowo auto ma wskaźniki EGT i AFR szerokopasmowy wraz z logerami do nich..

    Skupmy się na programie.

    Dlaczego Bascom miał by sobie nie poradzić z tak prostym programem?

    program zanim zacznie sterować prawdziwym sterownikiem będzie przetestowany na biurku gdzie odtworzę warunki prawdziwego auta.

    0
  • Metal Work Pneumatic
  • Pomocny post
    #3 12 Gru 2013 00:43
    dondu
    Moderator Mikrokontrolery Projektowanie

    Jeżeli czujesz się na siłach, masz wiedzę o silnikach i możesz zaryzykować ewentualne straty spowodowane nieprawidłowym działaniem Twojego sterownika (o ile straty mogą wystąpić), to działaj. :)

    Musisz być jednak świadomy, że samochód to wredne środowisko pracy dla mikrokontrolerów. Aby dobrze zrobić sterownik należy dobrze opracować schemat i płytkę PCB pod kątem odporności na zakłócenia. Ty chcesz zastosować płytkę ogólnego przeznaczenia, która może sobie poradzi w tym środowisku, a może nie. Nie na darmo do samochodów są też stosowane specjalne rodziny mikrokontrolerów.

    Jeżeli sądzisz, że:

    rxr2 napisał:
    ... program zanim zacznie sterować prawdziwym sterownikiem będzie przetestowany na biurku gdzie odtworzę warunki prawdziwego auta.

    to jesteś w poważnym błędzie.

    Dodatkowo chcesz mieć wyświetlacz sterowany tym samym mikrokontrolerem, a tutaj powstają problemy długich przewodów i zakłóceń.

    Teraz masz nieco więcej do przemyślenia, a to co napisał Marek_Skalski jest baaaardzo słuszne.
    Nie mówię, że się nie da, ale należy być świadomym wielu ograniczeń tego języka w stosunku do zadań przed nim stawianych.
    Ponieważ nie znam się na sterowaniu silnikami, to pozostawiam tę kwestię Tobie i Twojej wiedzy.

    PS.
    Ode mnie w prezencie 25 punktów, bo masz zero a na pewno ci się przydadzą :)

    0
  • #4 12 Gru 2013 00:58
    Marek_Skalski
    Moderator Projektowanie

    Wymyśliłeś sobie, że na sztywno przyjmiesz sygnał sterujący z wtryskiwaczy, do tego kolejny sztywny próg +600mbar i magiczne X, które dobierzesz w drodze eksperymentów na biurku, a pewnie później na hamowni. Powodzenia!
    P.S.
    Jeszcze kilka lat temu zajmowałem się sterowaniem silników spalinowych i jak widzę takie pomysły, to mi ręce opadają. Też mam samochód z silnikiem Otto + turbo, na bezpośrednim wtrysku, ze zmiennymi fazami, z podwójnymi sondami i trochę wiem jak to działa. Ludzie, z którymi pracowałem mają o tym znacznie większe pojęcie i nigdy, ale to nigdy nie odważyliby się sterować silnikiem spalinowym, a do tego z turbiną (kolejna maszyna przepływowa) w obszarze maksymalnych mocy za pomocą prymitywnego kontrolera pod kontrolą programu napisanego w Bascomie. Czy Ty wiesz co to jest dynamika procesu zasilania silnika, kiedy potrzebujesz dostarczyć 15m3 powietrza na minutę? Co się dzieje w strefie zaworów, w kolektorze wylotowym i w turbinie kiedy mieszanka będzie "trochę uboga" albo "zbyt bogata"? Jak szybko zmienia się zapotrzebowanie silnika, gdy drgnie Ci noga na pedale gazu?
    Jeżeli chcesz mieć pojazd do zaliczenia ćwiartki, to ok. Może nawet uda się zaliczyć kilka przejazdów, ale jeżeli chcesz tym jeździć do pracy i korzystać z tej mocy, to przy takim sterowniku nie zrobisz więcej niż 2000km w najbardziej optymistycznym wariancie.
    A co do Holandii... Chyba mieszkam w innej Holandii, bo tutaj każdy kombinuje jak nie płacić podatku drogowego, albo jak go zminimalizować. Nikt też nie przejdzie przeglądu w RDW na dłubanym silniku. Tego pilnują bardzo mocno. Modować to sobie można skutery, które policjanci też czasami sprawdzają na ulicy na zasadzie maksymalnej prędkości. Jeżeli jest powyżej tego co masz na tablicach (niebieskie albo żółte), to zabierają na lawecie do wyjaśnienia. Za to rowerem możesz jeździć po pijaku i nic nie robią.

    0
  • #5 12 Gru 2013 02:12
    rxr2
    Poziom 9  

    kurcze połowa dłubnietych turbo w holandii lata na piątym wtryskiwaczu który sie włącza gdy brak lpg w vialle...


    Sterownik wtrysku na atmega128 bascom Sterownik wtrysku na atmega128 bascom

    widać tu wyraźnie ze daja to przed przepustnicą około 70cm od gniazda zawodowego by udało sie odparować LPG (dodatkowo by to nieźle chłodziło powietrze.)


    przeglądałem liste instalacji vialle lpi na forum NL i wychodzi na to ze taki wtrysk biały daje rade na +50KM a ciemny brąz to 65KM co przy 5 szt daje 285KM jest 4 czy 5 aut zrobionych na vialle na +250KM wiec trzeba iść w te stronę bo to sprawdzony trop.

    Załaczam linka dla głodnych wiedzy z translatora do przykładowych konfiguracji vialle na modyfikowanych saabach

    http://translate.google.pl/translate?hl=pl&sl=nl&tl=pl&u=http%3A%2F%2Fwww.saabforum.nl%2Fviewtopic.php%3Ff%3D51%26t%3D31586%26start%3D240&sandbox=1

    czym wysterować taki dodatkowy wtrysk... chyba DET3 "ecumajstera" bedzie najwygodniejsze.. ale chce zrobić coś samemu... to auto to to moja pasja.

    Sam wykonałem kolektory, intercooler, zbudowałem hybrydę turbo, czy pospawałem wydech z nierdzewki. To samo się tyczy pracy przy modyfikacjach zawieszenia czy wyczynowych 4 tłoczkowych hamulcach, wszystko sam...

    A instalacje vialle osobiście zakładałem od podstaw... Dlatego wiem co jest możliwe tylko jeszcze nie wiem jak tego dokonać, DLATEGO PROSZĘ O POMOC...

    Nie mowie ze się uda od razu ale przy odpowiednich zabezpieczeniach przepięciowych czyt. odpowiednie zasilanie itp.... myślę ze się uda.

    zawsze można wprowadzić dodatkowe zabezpieczenie w postaci ograniczenia doładowania :
    if
    AFR wyższe niż 13 powyżej doładowania 0.7
    then
    ustaw doładowanie bazowe 0.7bar.

    mam obecnie taki przycisk który własnie gdy przełączam na lpg zwiera sygnał do masy w ECU i komputer myśli ze hamuje i ogranicza boost do bazowego.

    Wiec zawsze są jakieś sposoby...

    Najpierw program.
    potem testy test test...

    zima długa wiec jest czas..

    0
  • #6 14 Gru 2013 15:11
    rxr2
    Poziom 9  

    Wiec trochę to trwało by cokolwiek napisać ( brak programatora działającego z bascom trochę mnie stopował)

    Zrobiłem juz prosty algorytm tego co potrzeba zrobić

    i podzieliłem prace na 4 etapy:

    1) wejścia adc dla map sensora ( zrobione ;)

    2 wejście dla enkodera ( muszę zakupić jakiś impulsator i napisać parę linijek)

    3 pomiar czasu pracy każdego z wtryskiwaczy. ( tu potrzebna jest pomoc) Zeby to było dobrze zrobione trzeba by to dać na jakiś przerwaniach i ustawić jakieś parametry wyeliminować zakłócenia. Np ustalić stan wysoki powyżej pewnego parametru. )

    4 ) zebranie całego programu w całość i testowanie



    Na razie mam to : czyli pomiar map sensora z wyświetlaniem średniej z 8 oraz jeszcze nie sprawdzony kod na impulsator * w poniedziałek ogarnę jakiś z tme

    Teraz brak mi jeszcze przerwiań bo np LCD pasowało by dać na 100ms odświeżanie by nie pulsował.. No i nie mam pojęcia jeszcze jak ugryźć pomiar czasu sygnałów z wtrysków

    Kod: basic4gl
    Zaloguj się, aby zobaczyć kod

    0
  • #7 16 Gru 2013 12:36
    rxr2
    Poziom 9  

    Troche sie zamotałem i nie wiem jak wybrnąć...


    Jak zliczyc przerwania on timer0, innymi słowy jak policzyc ile 1ms wystąpiła przy podczas przerwania wtrysku...

    Kod: basic4gl
    Zaloguj się, aby zobaczyć kod

    0
  Szukaj w 5mln produktów