Cześć
chciałbym Wam przedstawić mój projekt wskaźnika LED pomocnego w eksploatacji naszych silników diesla w Maździe 3 generacji. Niestety Mazda nie przewidziała żadnego wskaźnika poziomu napełnienia ani indykacji aktywnego procesu wypalania. Teoretycznie można przerywać proces, ECU samo wznowi gdy będzie to możliwe ale po co przerywać wypalanie jak jest w końcowej fazie a my o tym wiemy
w 2 FL widać to też na paneli eloopa że start stop jest niegotowy, słychać też po wydechu ale nigdy nie wiadomo kiedy zacznie się wypalnie oraz w jakiej fazie jest aktualnie.
Na początku kilka informacji:
* urządzenie jest wskaźnikiem, nie służy do diagnostyki
* wskazania oparte są na parametrze PM_GEN który w 95% przypadków inicjuje wypalanie przy sprawnym filtrze
* mogę zrobić wersję opartą na PM_ACC gdyby komuś bardzo zależało
* testowane z Mazdą 6 GL 2016r 2.2D AWD+AT ale powinno działać z wszystkimi wersjami raczej PIDy są wspólne
* do poprawnego działania wymagany jest interfejs ELM327 V-LINK w wersji 3.0. Wersja 4.0 czyli BLE nie była testowana i prawdopodobnie nie będzie działała.
Jak wcześniej wspomniałem wskaźnik składa się z modułu komunikującego się z interfejsem oraz paska 10x LED. Urządzenie odczytuje za pomocą BT odpowiednie PIDy z ECU silnika, dla Mazdy są następujące (adresy w formacie HEX)
* REG_DIS: PID 220434; Rówanie:((B<16)+(C<8)+D)*( 1/640 )
* PM_ACC: PID 22042C; Równanie: ((A*256)+B)/628
* PM_GEN: PID 22042D; Równanie: ((A*256)+B)/628
* REG_REQ_A: PID 220380; Równanie: A/2
Po podłączeniu zasilania przez pierwszych kilka sekund układ próbuje nawiązać komunikację z modułem BT. Kiedy uda się nawiązać poprawne połączenie niebieska dioda LED (LED10) sygnalizuje to szybkim 2 krotnym miganiem. Jeśli z jakiegoś powodu nie uda się nawiązać połączenia sygnalizowane jest to 4 krotnym wolnym miganiem diody. Ważne jest to, że moduł próbuję nawiązać połączenie tylko w fazie rozruchu, jeśli nie uda się nawiązać połączenia oznacza problem którego powód należy odnaleźć, przy sprawnej konfiguracji łączy się "od ręki".
Wskazania oparte są o parametr PM_GEN gdyż w normalnych warunkach przy sprawnie działającym filtrze w większości przypadków regeneracja filtra jest aktywowana wartością PM_GEN przekraczającą 5.7-5.9 - u mnie przy wyłączonym EGR tylko i wyłącznie. Gdyby ktoś bardzo chciał jest możliwość modyfikacji aby diody wskazywały poziom na podstawie PM_ACC jednak jest to bardzo niepraktyczne – wartości dość mocno skaczą w górę i w dół a finalnie i tak prawdopodobnie regenerację aktywuje wysoki poziom PM_GEN. Wskaźnik ma dać obraz czy jesteśmy bliżej fazy po wypalaniu czy przed.
Cała linijka LED składa się z 10 diod LED – 1 niebieska, 4 zielone, 3 pomarańczowe, 2 czerwone. Dioda niebieska przy rozruchu służy jako informacja o stanie komunikacji BT, po uruchomieniu przejmuje rolę wskazania aktywnego wypalania. Zostaje ona uruchomiona w momencie aktywacji regeneracji filtra i pozostaje aktywna do końca cyklu wypalania, tzn. kiedy parametr dystansu od ostatniej regeneracji osiągnie 0 km. Nie uwzględnia ona przerwania regeneracji w momencie gdy pojazd porusza się w korku i zostaje przerwane wypalanie przez ECU silnika ponieważ i tak gdy tylko będzie możliwość komputer rozpocznie ponownie regenerację do momentu jej zakończenia, potwierdzonego wpisem 0 km.
Diody uruchamiane są kolejno, najpierw 4 zielone, następnie 3 pomarańczowe, w ostatniej fazie 2 czerwone. Progi dla kolejnych diod są następujące:
Układ przewiduje jedną sytuację w której ostrzega użytkownika. W momencie gdy PM_GEN jest poniżej 4.2 przy jednoczesnym PM_ACC powyżej 5.7 diody od 1 do 7 świecą światłem ciągłym, natomiast diody czerwone 8 i 9 powoli migają. Taki stan jest utrzymywany do momentu aktywacji regeneracji filtra.
Można użyć wskaźnika wyłącznie jako sygnalizację wypalania, w tym celu należy podłączyć jedynie
diodę LED 10, np. do jakiejś lampki/kontrolki etc.
Wskaźnik uwzględnia podłączenie do podświetlenia deski rozdzielczej tak aby wskaźnik był czytelny w słoneczny dzień oraz nie przeszkadzał podczas nocnej jazdy. Wartości natężenia można dowolnie modyfikować w programie.
Jak widzicie powyżej mój wskaźnik będzie zainstalowany w lewym panelu przycisków. Na zdjęciu jeszcze widać białe nie podmalowane krawędzie wskaźnika
Bez obudowy i zataśmowane przewody aby nic nie urwać. To jest jeszcze wersja deweloperska służy mi do testów i aktualizacji oprogramowania.
Pod poniższym linkiem znajdziecie instrukcję, schemat oraz najnowszy kod programu, na tą chwilę jest to V3.2. Wskaźnik działa ale cały czas poprawiam delikatnie kod zatem numer rewizji może wzrosnąć
https://github.com/maciekelga/Mazda-6-GJ-GL-DPFWskaźnik łączy się z interfejsem zatem "zajmuje" kanał komunikacyjny, na linii zasilania należy zamontować przełącznik aby móc korzystać z Forscana w telefonie. Należy wtedy wyłączyć wskaźnik i połączyć telefon z interfejsem, nie ma możliwości jednoczesnej pracy wskaźnika i drugiego urządzenia, taki urok V-LINKa
Dodatkowo wersja BT 3.0 PRO ma opcję autostartu interfejsu po uruchomieniu auta. Jeśli mamy zwykłą wersję każdorazowo trzeba kliknąć przycisk włączenia ponieważ V-LINK przechodzi w stan uśpienia po 30 min od wyłączenia auta.
Wszelkie informacje potrzebne do złożenia i uruchomienia są podane, nie przewiduję żadnego programowania i wysyłania czy składania modułów. Projekt typu open, kto czuje się na siłach sobie złoży i poradzi, można sobie dowolnie modyfikować, całość jest dość prosta. Wersja ESP to ESP 32 DevKit V1 30 pin. Elementy podane są na schemacie, kondensatory 100nF foliowe, 100uF elektrolity, rezystory 1/4W. Z tego co kojarzę LM2940CT jest już niedostępny ze względy na ROHSa, w sprzedaży jest chyba wersja bez T, generalnie ma być typu LDO. Wartości reszty elementów mogą być zbliżone, nie muszą być idealne to nie prom kosmiczny
Program jest mojego autorstwa i jest ogólnodostępny. Pewnie można zrobić to lepiej, jak ktoś potrafi droga wolna, można poprawiać, ja programistą nie jestem, nigdy nie byłem i nie będę - na szczęście
Wielkie podziękowania dla
darrecki i
popielasty za dyskusje techniczne