"* IMPORTANT NOTE
Bosch fuel injectors have their flow rates defined in N-Heptane as part of their engineering specification. N-Heptane is a pure chemical and does not have the same viscosity and density as standard petrol. Hence the N-Heptane flow rate figures stated should be used as a general guide for comparison purposes only "
Super te zdjęcia w bravie.Dołączam się do pytań kolegów,czy jest możliwe zamieszczenie kompletnej dokumentacji komputerka lub samego schematu ideowego.
Płytkę i tak bym przerobił na mniejszą.Wykonanie płytki dwustronnej to nie problem.
Jeśli kolega nie chce udostępnić wsadu to może poda cenę za zaprogramowany układ.Może warto by pomyśleć o przeróbce na jakiś AVR np. atmega 16,AT90S8515
itp. Czy komputerek współpracowałby z popularnymi wyświetlaczami LCD 2x16
na sterowniku HD 44780? Sam projekt bardzo fajny i przydatny,jakby była dokumentacja to już bym się brał za budowę.
Wartosc_funkcji_long_1 w tym wypadku całkowita ilość impulsów drogi
Faktycznie przydał by się cały program Nie rozumiem kilku rzeczy. Miałeś może problemy z złymi przerwaniami? ja zrobiłem coś podobnego z zegarem pcf8583 i dwoma ds18b20, wszystko działa ok do pewnego czasu, po przejechaniu np.150km wywala krzaki na LCD
Super te zdjęcia w bravie.Dołączam się do pytań kolegów,czy jest możliwe zamieszczenie kompletnej dokumentacji komputerka lub samego schematu ideowego.
Płytkę i tak bym przerobił na mniejszą.Wykonanie płytki dwustronnej to nie problem.
Jeśli kolega nie chce udostępnić wsadu to może poda cenę za zaprogramowany układ.Może warto by pomyśleć o przeróbce na jakiś AVR np. atmega 16,AT90S8515
itp. Czy komputerek współpracowałby z popularnymi wyświetlaczami LCD 2x16
na sterowniku HD 44780? Sam projekt bardzo fajny i przydatny,jakby była dokumentacja to już bym się brał za budowę.
Zastanawiam się nad upublicznieniem kodu ale póki co i tak nie mogę go skompilować. Niby plik nie byl od kilku lat otwierany a w czasie kompilacji wywala mi błąb Label not found P3.0 P3.0 to noga procka ale takiej etykiety nigdzie nie używam. Program po kompilacji ma 30kB, linii pliku bas jest 3596. Po tylu latach nie wiem czy znajdę problem. Najwyżej udostępnię wsad bo gdzieś na 100% mam.
Komputer oczywiście wpsółpracuje z popularnymi wyświetlaczami HD44780.
Dodano po 3 [minuty]:
dezmontnikus wrote:
Quote:
Warunek >5 to 5km/h, jak mniej to L/h.
If Wartosc_funkcji_byte > 5 Then
Wartosc_funkcji_long_1 = Stala_wtrysku * 10
Wartosc_funkcji_long_1 = Wartosc_funkcji_long_1 * Czas_wtrysku_sek
Wartosc_funkcji_word_1 = Wartosc_funkcji_long_1 / Wartosc_funkcji_word_1
Else
If Czas_wtrysku_sek > 0 And Postoj = Czas_postoju Then
Wartosc_funkcji_long_1 = Stala_wtrysku * Czas_wtrysku_sek
Wartosc_funkcji_long_1 = Wartosc_funkcji_long_1 * 36
Wartosc_funkcji_word_1 = Wartosc_funkcji_long_1 / 100000
Else
Gosub Podstaw_out_of_range
End If
End If
Wartosc_funkcji_word_1 w tym wypadku wnosi do obliczeń impulsy prędkości z ostatniej 0,5 sekundy
Wartosc_funkcji_long_1 w tym wypadku całkowita ilość impulsów drogi
Faktycznie przydał by się cały program Nie rozumiem kilku rzeczy. Miałeś może problemy z złymi przerwaniami? ja zrobiłem coś podobnego z zegarem pcf8583 i dwoma ds18b20, wszystko działa ok do pewnego czasu, po przejechaniu np.150km wywala krzaki na LCD
Krzaki to bardziej problem sprzętowy niż programowy. Chyba, że w przerwaniu używasz tych samych zmiennych co w pętli głównej i przerwanie zmienia ich wartość. To może dawać efekt przesuniętych lub błednych tekstów na lcd. Może też być problem ilości zmiennych. Jak zadeklarowałeś za duzo to nie ma miejsca na stos i stąd błędy.
Dodano po 4 [minuty]:
kotlet_m wrote:
Fajny projekt, wielkie uznanie, ale czy nie mogłoby jeszcze wskazywać spalanie średnie na 100km?
Oczywiście jest tylko zapomniałem dopisać. Są też i inne funkcje np. kontrola termometru zewnętrznego jak się zepsuje lub urwie to jest alarm. Są różne sygnalizacje akustyczne wciśnięcia przycisków, zmiany paliwa, wejścia do funkcji, wyjścia, gotowości, błędów itd.
Tak wygląda ten komputerek w Passacie.
Zamontowałem go ze 2 lata temu. Działa super. Raz go skalibrowałem i nie było potrzeby ponownej kalibracji. Warunek by w miarę uczciwie dolać różnicę paliwa na stacji a z tym może być problem. Jak się komuś chce to można dolać menzurką i wtedy będzie super dokładnie. Jak tankuję do pełna to porównanie spalonego paliwa i wlanego różni się średnio o 0.5-0.7l (bak 50l) ale zdarzają się stacje gdzie wlewam więcej niż pokaże komputer i takie omijam z daleka (maja inny wzorzec litra).
Witam,
Przymierzałem się do podobnego komputerka, ale niestety skończyło się tylko na rozważaniach. Ale mam takie pytanko.
Czy któryś z kolegów próbował obliczać chwilowe spalanie na podstawie ilości zasysanego powietrza (czujniki MAP, MAF ) albo korekcji obliczeń na podstawie czasów wtrysku w oparciu o te czujniki ?
Czy ktoś próbował wprowadzać poprawkę przy obliczaniu spalania gazu w oparciu o czujnik ciśnienia za reduktorem ? Z jakimi efektami ?
Gazu nie mam, Ale co do pomiaru paliwa to przy wtrysku czas otwarcia wtryskiwacza jest proporcjonalny do ilości paliwa (jest stałe ciśnienie). Po kalibracji komputer przelicza ilość wlanego paliwa na milisekundy otwarcia. Prościej i dokładniej się chyba nie da. Można kombinować przepływomierzami ale trzeba dwa na zasilaniu i powrocie. Dokładne przepływomierze tanie nie są za to nadają się do gaźnikowców!
Interesuje mnie również sposób realizacji pomiaru czasu otwarcia wtryskiwaczy (od strony sprzętowej). Kiedyś zrobiłem układzik na jednym tranzystorku podłączany do portu LPT laptopa i jakoś to działało, ale zapewne są lepsze sposoby.
Wtryski sterowane są masą przez tranzystor z otwartego kolektora. Ja zrobiłem optoizolację zasilaną z wtrysku przez mostek gretza. To po to, żeby nie było kwestii polaryzacji. Jak się nie podłączy i tak bedzie dobrze.
Zastanawiam się nad upublicznieniem kodu ale póki co i tak nie mogę go skompilować. Niby plik nie byl od kilku lat otwierany a w czasie kompilacji wywala mi błąb Label not found P3.0 P3.0 to noga procka ale takiej etykiety nigdzie nie używam. Program po kompilacji ma 30kB, linii pliku bas jest 3596. Po tylu latach nie wiem czy znajdę problem. Najwyżej udostępnię wsad bo gdzieś na 100% mam.
Komputer oczywiście wpsółpracuje z popularnymi wyświetlaczami HD44780.
Kolega da co ma jak może oczywiście, my postaramy się to naprawić.
Ale zastanawia mnie jedna rzecz. Czemu piszesz, że bascom jest ok do takiego zastosowania skoro kod zajmuje ci 30 kilo? Dyskwalifikuje to użycie tańszych procesorów.
Nie mówię, że bascom nie da rady bo nie zadziała. Zadziała ale z moich praktyk wynika, że jest nieoptymalny w stosunku do C. Może nawet będzie się dało kod zmieścić na dużo mniejszym procku. Pamiętam, że samo zrezygnowanie z arytmetyki zmiennoprzecinkowej zaoszczędziło mi ponad 3kB kodu przy czym sam kod miał 4 i jedną zmienną typu float.
Ale zastanawia mnie jedna rzecz. Czemu piszesz, że bascom jest ok do takiego zastosowania skoro kod zajmuje ci 30 kilo? Dyskwalifikuje to użycie tańszych procesorów.
Nie mówię, że bascom nie da rady bo nie zadziała. Zadziała ale z moich praktyk wynika, że jest nieoptymalny w stosunku do C. Może nawet będzie się dało kod zmieścić na dużo mniejszym procku. Pamiętam, że samo zrezygnowanie z arytmetyki zmiennoprzecinkowej zaoszczędziło mi ponad 3kB kodu przy czym sam kod miał 4 i jedną zmienną typu float.
Tańszych? At89c51rd2 kosztuje 10zł a ma 64kB flesza. Poza tym nie używam danych zmiennoprzecinkowych w ogóle.
Do wyświetlania biegu będą potrzebne dodatkowe czujniki w skrzyni lub na drążku. W większości skrzyń są tylko czujniki luzu.
Ja bym do tego projektu dodał obrotomierz:) I mam takie pytanie-układ podpina się jednym przewodem do czujnika prędkości w skrzyni? Układ będzie współpracować z wszystkimi takimi czujnikami prędkości?
Numer biegu mozna wyliczyc na podstawie prędkości i obrotów silnika. Dodatkowo dostajemy urządzenie diagnostyczne , które informuje o możliwych poślizgach sprzęgła pod koniec pracy takiego sprzegła.
Wtedy czujnik wciśniecia pedału poinformuje komputer że nie musi sobie ALU zawracac przeliczaniem.
Dodano po 2 [minuty]:
Jezeli nie mamy czujnika na sprzegle, to komputer znając przełozenia w skrzyni biegów okresli ze nie jedziemy na zadnym biegu i wyświetli literkę N lub L na wyswietlaczu LED.
Ale to przecież nie prawda - sprzęgło to nie luz. Mamy 4 bieg i wciśniemy sprzęgło to nadal mamy 4 bieg... wyświetlenie w tym momencie N było by poważną dezinformacją.
Wclae nie wyświetlana informacja na jakim biegu jedziemy a nie jaki bieg mamy włożony. Przeciez nie chodzi o to żeby sie uczyć wkładać biegi.
Jezeli to jednak przeszkadza to czujnik luzu mozna wpiąc do rozmowy z komputerem tak jak to jest w motocyklach.
Jak tankuję do pełna to porównanie spalonego paliwa i wlanego różni się średnio o 0.5-0.7l (bak 50l) ale zdarzają się stacje gdzie wlewam więcej niż pokaże komputer i takie omijam z daleka (maja inny wzorzec litra).
W Passacie (podobnie jak w innych samochodach grupy VAG) jest coś takiego jak zbiornik wyrównawczy. Ciężko jest zalać za każdym razem tyle samo paliwa (do pierwszego odbicia). W Fabii mam zbiornik 45l, ale nie raz udało mi się wlać 55l. Nie znaczy to, że stacja ma "inny wzorzec litra", tylko, że zalałem zbiornik wyrownawczy (ok. 10l). Koło wlewu jest zielony przycisk odpowietrzania, jak się go wciśnie to można właśnie wlać o te 10l więcej.
Ogólnie to jakbym miał robić taki komputerek u siebie w Fabii to podłączył bym się pod magistralę CAN lub linię K i odczytywał parametry bezpośrednio z komputera samochodu ECU. W zasadzie wszystkie parametry są tam możliwe do odczytania, łącznie z ilością paliwa w baku, czasem wtrysku, prędkością pojazdu, czy też prędkością obrotową silnika. Kwestia napisania interpretera protokołu OBD lub wykorzystania gotowego układu ELM327.
Niestety nie jest tak różowo - standard OBD precyzuje format ramki danych i pewien zbiór błędów i standardowych parametrów. Niestety informacje takie jak czas wtrysku czy poziom paliwa w zbiorniku nie są już ustandaryzowane.
O tym zbiorniku wyrównawczym paliwa to pierwsze słyszę, jest zbiornik/filtr oparów paliwa (EVAP), ale jego się nie zalewa paliwem. Więc jak masz zbiornik 45l a na jakiejś stacji "zalejesz" 50l to po prostu stacja ma uszkodzone liczydło w dystrybutorze lub niski poziom paliwa w zbiorniku i pompa pompuje paliwo z powietrzem, doliczając go do rachunku.
Czasy swoją drogą są na poziomie 1-25ms ... tak więc tragedii nie ma
Czy te czas są wiarygodne, czy tak jest faktycznie? Zastanawiam się na ile czasu otwierany jest wtryskiwacz przy obrotach np. 800 obr/min a na ile przy 6000 obr/min.
Próbuję zbudować znacznie prostszą wersję miernika spalania tyle, że nie w jednostce drogi a czasu (litry na godzinę). Chciałem podejrzeć rozwiązania autora tego postu, ale nie mogąc się doczekać kodu źródłowego męczę się sam i próbuję napisać wszystko od podstaw. Czy dobrze myślę, że wtryskiwacz otwierany jest raz na dwa obroty?
Przeglądałem kilka innych rozwiązań, ale pojmuję na razie tylko Bascoma a wszystkie inne konstrukcje, jakie znalazłem są wyższych lotów C lub asembler. Jeśli ktoś ma link do podobnego komputera na bazie Bascoma proszę o link.
Czy dobrze myślę, że wtryskiwacz otwierany jest raz na dwa obroty?
Zależy czy masz mono-wtrysk lub full-group, pół-sekwencję czy pełną sekwencję...
Jeszcze "trochę" musisz się douczyć na temat zasady działania sterownika wtrysku i stosowanych rozwiązań.
Raz na dwa obroty przy MPI i osobnym sterowaniu każdego wtryskiwacza.
Dwa razy na obrót przy MPI i wspólnym sterowaniu lub przy SPI.
Czasy wtrysku możesz mierzyć za pomocą timera i zewnętrznego przerwania.
Tu masz mój temat i rozwiązanie - jeszcze nie testowałem w aucie.
http://elportal.pl/forum/viewtopic.php?t=10481 Łatwo to przerobić na spalanie w l/h.
Nie pytałem czy czas wtrysku jest zależny od obrotów tylko, jaki jest zakres czasowy otwarcia wtrysku od minimalnych obrotów do maksymalnych. Potrzebne jest mi to do zbudowania prostego generatora, który będzie mógł symulować na stole pracę silnika.
Zdaję sobie sprawę, że w pełni zrozumienie pracy wtrysku paliwa jest bardzo skomplikowaną sprawą. Nad budową modułów sterujących w koncernach samochodowych siedzą rzesze inżynierów i całe tabuny programistów. Tak więc nie liczę, że w jednym zdaniu ktoś skondensuje zasadę działania wtrysku paliwa z najnowszych modeli samochodów.
Wydaje mi się, że sens budowania „komputerów” spalania jest tylko do silników i samochodów raczej starszych, bo od kilku lat większość ma już w standardzie miernik spalania, a skomplikowanie instalacji elektrycznej jest wystarczająca przeszkodą. Poprawne przeczytanie schematu elektrycznego w najnowszych modeli jest już nie lada wyzwaniem.
Mój przypadek to miernik spalania w jednostce czasu w silniku BMW boxer 1100 dwa cylindry. Wtryskiwacze umieszczone są w czymś, co nazwałbym (gdybym był kompletnym laikiem) gaźnikiem. Elektrycznie są z mostkowane, czyli działają jednocześnie.
Zajmuję się elektroniką a znajomość samochodów jest raczej na poziomie poloneza i konsekwencji posiadania wyobraźni technicznej, więc proszę o wyrozumiałość i nie zadzieranie nosa . Jestem pełen podziwu i pokory dla osób, którzy wiedzą więcej ode mnie chętnie ich słucham, bo wiedza to majątek.
Pozdrawiam serdecznie.
Dodam jeszcze że do wyznaczenia spalania w l/h musisz oprócz czasu wtrysku znać jeszcze prędkość obrotową silnika - można ją wyliczyć z pomiaru ilości wtrysków. Musisz do tego zatrudnić drugi timer.
Ja za pomocą tego kody mierzyłem czasy od 0,0002s do 0,001s (można nawet większe czasy) więc nadaje się jak najbardziej do pomiaru czasu wtrysku.
Ja napotkałem na pewien problem gdyż nie wiem jak wyliczyć spalanie w l/100km używając tylko dwóch timerów - jeden musiałby sumować czasy wtrysku w stałym odcinku czasu a drugi liczyć przebytą drogę.