2013-06-18 13 views
9

jaki jest najlepszy sposób uzyskania zużycia paliwa (MPG) za pomocą parametrów OBD2.Zużycie paliwa z parametrów portu OBD2

Poniższa formuła jest prosta, ale nie najdokładniejsza, a więc inna formuła, aby uzyskać pewną dokładną ocenę: .

Wartość prędkości pojazdu jest podawana w km/godz., Aby przekonwertować na mile pomnożyć przez 0.621317. Aby obliczyć MPG podzielić MPH przez GPH. Ostateczne wyrażenie matematyczne dla MPG będą:

Dla Gasoline Engine

MPG =VSS * 7.718/MAF 

chciałbym wiedzieć na Diesel Engine obliczyć natychmiastowy consumption.Also próbuję obliczyć to niezależne od modelu samochodu z parametrem dostępne od standardu obd2.

Dziękuję.


Niektóre linki, które mogą być przydatne dla tych, którzy szukają tego samego tematu.

+0

Więc rozwiązujesz swój problem? Jestem teraz w tym samym problemie i obliczam moje zużycie z GPS, aby przejąć dystans i zmienić poziom lvl zbiornika w% ... Które pids używacie do swojej formuły? – Dario

+0

Cześć, jak to w końcu obliczyć? – Dario

+0

@Dario, nie zawsze można obliczyć zużycie paliwa na podstawie informacji ODB. Ponieważ dostawcy dostarczają różne/brak informacji. – nayab

Odpowiedz

8

To wzór do natychmiastowego spożycia.

Aby obliczyć średnie zużycie paliwa, należy obliczyć całkowitą objętość paliwa zużytego w czasie i podzielić przez całkowitą odległość przebytą w tym samym okresie.

AKTUALIZACJA: Tak powinien wyglądać stosunek. chyba że chcesz stopić tłoki lub stracić moc. Stosunek powietrze/paliwo nie powinien się zmieniać, chyba że zmienisz rodzaj paliwa, np. do 102 oktanowej benzyny lub etanolu. Że kalkulacja jest prawdopodobnie najbardziej dokładne dostaniesz, chyba że chcesz zrobić to strasznie skomplikowane przez

  1. tym odczytów ze wszystkich sześciu czujników O2 w celu sprawdzenia optymalne spalanie odbył
  2. faktoring temperatury silnika (chłodnica silniki umożliwiają lepsze spalanie, ponieważ pozwala to na zagęszczanie tlenu w kolektorze dolotowym),
  3. , niezależnie od tego, czy czas wyprzedzenia jest ustawiony prawidłowo, czy też nie (co należy sprawdzić w arkuszu danych).
  4. i cokolwiek innego zostawiłem.

Pamiętaj, że nie masz szansy, że pracujesz nad Toyotą: Toyota ma dodatkowy czujnik, który mierzy ile paliwa jest wstrzykiwane do silnika. Więc możesz po prostu przeczytać ten PID. Ale w przypadku innych samochodów podana formuła jest standardem.

UPDATE 2: pewne wspólne wskaźniki powietrze/paliwo:

  1. Gaz ziemny: 17.2
  2. Benzyna: 14,7
  3. Propan: 15,5
  4. Etanol: 9
  5. Metanol: 6,4
  6. Wodór: 34
  7. Diesel: 14,6

Trzeba także wziąć pod uwagę że kiedy silnik znajduje się pod dużym obciążeniem, stosunek powietrza do paliwa zmienia się w dół.

+0

dzięki za odpowiedź, tak szukam chwilowego zużycia paliwa, ale powyżej formuły przyjmuje ration powietrza do paliwa 14.7 i gęstość paliwa, szukam jest tam jeszcze lepsze oszacowanie. – nayab

+0

Sprawdź zaktualizowaną odpowiedź. –

+0

dzięki za aktualizację. – nayab

2

Jeśli możesz odczytać szerokość impulsu wtryskiwacza i podzielić przez prędkość, możesz uzyskać natychmiastowe zużycie. Jeśli masz całkowite zużycie paliwa i odległość, możesz uzyskać średnią. Uzyskanie impulsu wtryskiwacza jest bezpośrednim sposobem uzyskania zużycia paliwa. Jest to rzeczywista ilość wtryskiwanego paliwa (cóż, czas otwarcia wtryskiwacza, ale obliczenie ilości wtryskiwanego jest łatwe w tym momencie).

+0

Próbuję obliczyć natychmiastowe zużycie.Rów próbuję obliczyć to niezależnie od modelu samochodu od parametru dostępnych od standardu obd2. – nayab

+0

@Nick, Jaka jest ilość wtryskiwanego paliwa obliczona na podstawie wtryskiwacza PW?Musiałbyś znać ciśnienie paliwa, rozmiar czopika wtryskiwacza i napięcie akumulatora (wyższe napięcie akumulatora = szybszy czas otwarcia = więcej wtryskiwanego paliwa). Napięcie akumulatora można uzyskać z OBD, ale co z resztą? Jak byś to zrobił? – DDSports

+2

Po pierwsze, nakazany PW będzie już uwzględniał wszystkie te czynniki. Wystarczy znać rozmiar wtryskiwacza i ciśnienie paliwa. Nawet jeśli nie, możesz uzyskać dobre oszacowanie, zakładając stałe napięcie akumulatora, ciśnienie paliwa itp. Ponieważ 99% samochodów benzynowych używa regulatora ciśnienia, aby utrzymać stałą różnicę ciśnień, a napięcie akumulatora będzie prawdopodobnie wynosić około 14,0 woltów. Byłoby coś takiego: http://jsfiddle.net/38db1qye/8/, chociaż wydaje mi się, że mam coś poza tym. – Nick

0

Istnieje komenda OBDII (01 5E), która podaje zużycie paliwa na godzinę. Mam go pracy z klientem C#/Xamarin, nie wiesz o Java?

Jeśli to nie jest możliwe, możesz użyć wartości VSS i MAF do obliczenia l/100km: (3600 * MAF)/(9069.90 * VSS). MPG będzie wymagać dalszych regulacji, ale to dość proste.

Dodatkowo, aby wartość prędkości uniwersalny, wdrożyć prędkość jako klasy i narazić imperialnych i metrycznych właściwości, tak jak (C#):

public Class VehicleSpeed 
{ 
public int MetricSpeed 
{ 
    get 
    { 
     return metricSpeed; 
    } 
} 

/// <summary> 
/// <para>getImperialSpeed.</para> 
/// </summary> 
/// <returns> the speed in imperial units. </returns> 
public float ImperialSpeed 
{ 
    get 
    { 
     return ImperialUnit; 
    } 
} 

/// <summary> 
/// Convert from km/h to mph 
/// </summary> 
/// <returns> a float. </returns> 
public float ImperialUnit 
{ 
    get 
    { 
     return metricSpeed * 0.621371192F; 
    } 
} 

Jeśli chcesz obliczyć tę wartość w miarę upływu czasu, dlaczego nie tylko sklep każde natychmiastowe obliczenie, a następnie uzyskać średnią?

Mam nadzieję, że to pomaga.

+0

Nie wszystkie modele samochodów mogą odpowiadać na to polecenie. W przypadku niektórych samochodów to polecenie jest niedostępne. Polecenia AT są niezależne od używanego klienta (nie ma znaczenia, czy to C#, czy Java, OBD odpowie w ten sam sposób. –