Zaloguj się do forum, aby móc korzystać ze wszystkich jego funkcji!

[450] Komputer pokładowy z wyświetlaczem graficznym

Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Tryby wyświetlania wątku
[450] Komputer pokładowy z wyświetlaczem graficznym
#1
 Johny_Bit 
Witam wszystkich.
Od jakiegoś czasu pracuje nad komputerem pokładowym podobnym do tego:
https://www.misterdotcom.de/produkte/sma...450-intern
Jak widać cena powala na kolana a dodatkowo taka podmiana gdzie całkowicie usuwamy fabryczny wyświetlacz przebiegu jest o ile się nie mylę niezgodna z prawem. Na chwilę obecną myślę że mogę podzielić się efektami (wcześniej tego nie robiłem gdyż miałem z tym tyle problemów że myślałem nad odpuszczeniem projektu).
Ja chcę mój wsadzić w czółkę obrotomierza. Zastosuje wyświetlacz 0,96" OLED i umieszczę go pod wskazówką obrotów w okienku wyciętym w tarczy. Może później zdecyduje się na okrągły wyświetlacz i zastąpię cały wkład czółki i wyświetlę na nim dużo więcej danych.
Najbardziej zależy mi na wskaźniku chwilowego zużycia paliwa a miło by było dodać odczyt ciśnienia/podciśnienia za turbiną, obciążenie silnika oraz aktualny bieg w trybie auto.

Przez długi czas męczyłem się z połączeniem mikrokontrolera i auta. Niby jest multum gotowych układów i schematów ale albo układ był drogi albo niedostępny albo nie do końca pasował do mojego zastosowania. Po godzinach z lutownicą i oscyloskopem udało się ogarnąć warstwę sprzętową. Nie wygląda imponująco ale to prototyp na podstawie którego zaprojektuje gotową maluteńką płytkę z wyświetlaczem. Jest spora szansa że uda się całość upchnąć na płyteczce wielkości wyświetlacza z fotki.
Obraz na wyświetlaczu jest bardzo ostry ale aparat to rozmywa. Płytke podłącza się do auta za pomocą 3 przewodów (do pinów 5, 7 i 8 w złączu OBD)

   

Niestety najwięcej czasu zajęła kwestia protokołu.
Niby SLOW INIT na K-LINE z prędkością 5 bodów działa niemal na wszystkim ale na smarcie niestety nie (w sumie to w tym aucie wszystko co może być dziwne jest dziwne).
Spróbowałem więc FAST INIT z protokołu KWP2000 i sukces auto dogaduje się z układem i wysyła poprawną ramkę odpowiedzi wraz z prawidłową suma kontrolną. Moja radość sięgnęła zenitu.
Próba odpytania jakiegoś czujnika niestety sprowadziła mnie na ziemię. Komunikat zwrotny to (pozwolę sobie wkleić):

0x11 serviceNotSupported
This response code indicates that the requested action will not be taken because the server does not support the requested service. The server shall send this response code in case the client has sent a request message with a service identifier, which is either unknown or not supported by the server. Therefore this negative response code is not shown in the list of negative response codes to be supported for a diagnostic service, because this negative response code is not applicable for supported services.

oraz

0x7F serviceNotSupportedInActiveSession
This response code indicates that the requested action will not be taken because the server does not support the requested service in the session currently active. This response code shall only be used when the requested service is known to be supported in another session, otherwise response code 0x11 (serviceNotSupported) shall be used. This response code is in general supported by each diagnostic service, as not otherwise stated in the data link specific implementation document, therefore it is not listed in the list of applicable response codes of the diagnostic services.

Utknąłem z tym na bardzo długo i nie poszedł bym dalej gdyby nie dostęp do komputera z DAS XENTRY.
Dorobiłem sobie specjalną przejściówkę dzięki której mogłem się wpiąć pomiędzy złącze OBD a wtyk komputera i za pomocą analizatora stanów logicznych podejrzałem sobie o czym rozmawia komputer z autem.
Najgorszy jest fakt iż wygląda to jak standardowa komunikacja szeregowa asynchroniczna z przepustowością 10400 bodów (oczywiście na 12V bo to K-LINE) ale komendy które są tam przesyłane brane są chyba z kosmosu. Jest to totalnie niezgodne z jakimkolwiek opisem protokołu komunikacji (zapewne dlatego te wszystkie tanie ELM-y nie dogadują się ze smartem).

Na dzień w którym pisze tego posta udało mi się dogadać z kompem w kwestii inicjalizacji połączenia (a to najważniejsze) oraz odczytu biegów.
Bez problemu dokonuję FAST INIT na magistrali po czym mogę odczytać:
- aktualny bieg (włącznie z luzem i wstecznym gdzie wsteczny figuruje jako bieg 7 XD)
- położenie dźwigni zmiany biegów (nie tylko R, N, D ale również widać pozycje takie jak + i -)
- aktualny tryb pracy A lub manual
- czy wciśnięto pedał hamulca

Może nie wygląda to przełomowo ale cały szkielet programu wraz z obsługą wyświetlacza i portem szeregowym do debugowania jest już gotowy. Teraz dopisywanie obsługi kolejnych funkcji pójdzie już z górki. Musze tylko podpatrzeć analizatorem funkcje które mnie interesują jak zapytać o to auto.

Najśmieszniejsze jest to iż komputer ma bardzo dużo informacji takich jak średnie spalanie, ciśnienie za turbo, obciążenie silnika w %, temperatura zasysanego powietrza ale nigdzie tego nie pokazuje. Fajnie przecież było by mieć wskaźnik zużycia paliwa czy zegar od ciśnienia doładowania (albo sygnał otwarcia drzwi XD prawda LAZY. ?).
 Odpowiedz


Wiadomości w tym wątku
Komputer pokładowy z wyświetlaczem graficznym - przez Johny_Bit - 04.10.2020, 17:22

Podobne wątki
Wątek: Autor Odpowiedzi: Wyświetleń: Ostatni post
  Tempomat i komputer pokładowy - ogólna dyskusja. miksell 27 27.436 22.12.2021, 20:45
Ostatni post: LAZY.
  Nowy komputer pokładowy 0.8 CDI Instantion 1 2.195 13.01.2019, 14:40
Ostatni post: obwd-crash



Użytkownicy przeglądający ten wątek: 1 gości



Menu