3 Ocak 2013 Perşembe

OBD-II Araç Bilgi Ekranı



Aracın bilgi ekranında gösterilmeyen bazı verileri izlemek, bazılarını da bir araya toplamak için küçük bir projeye başlamıştım. Henüz tam olarak bitmese de sona yaklaştım.

OBD2 soketi bazı markalarda farklılık gösterse de genelde resimdeki gibi 16 pinli bir soket.
Direksiyonun alt taraflarında veya orta konsolda oluyor, C4'lerde kül tablasının altındaydı örneğin. Astra'da vitesin arkasında, kapağın altına gizlenmişti. Seat'da sol altta, yine kapağın altında.



Donanım 2 bölümden oluşuyor.
1.bölüm, OBD portundan verileri alıp işleyen ve seri olarak displaye gönderen modül
2.bölüm, seri dataları işleyip ekrana basan 3.2" lik grafik ekran ve 320x240 çözünürlükte. Üzerinde kendi kontrolcüsü ve donanımsal seri portu var. 





Alınan datalar:
Hız
Motor devri
Motor suyu sıcaklığı
Dış ortam sıcaklığı
Turbo hava girişi sıcaklığı
CAT sıcaklığı
AKÜ voltajı

Yakıt tüketimi ile ilgili bilgiler maalesef hazır olarak gelmiyor. Saatteki yakıt tüketim (lt/h) bilgisi alınabiliyor. ancak anlık tüketim, ortamalama tüketim vs. bilgilerin,
bazı datalardan hesaplanarak çıkartılması gerekiyor. (Araç hızı, MAF sensör bilgisi gibi) Bunların dışında, OBD2'den gelen birçok data var, istenirse bunlar da işlenip kullanılabilir.

Verileri diagnostik portundan okumanın bir kaç yolu var.
ELM çipli bir devre (veya hazır modül) kullanabilirsiniz veya PIC/Ardunio gibi bir kontrolcü kullanabilirsiniz.
ELM kullanacaksanız, daha önceki konularda anlattığım gibi, AT komutlarını kullanabilirsiniz. Bağlantı kurulduktan sonra, mod ve pid değerlerini sorgulamanız yeterli.

Mode: 0x01 için sorgulanacak pid değerleri:
#define ENGINE_COOLANT_TEMP 0x05  //A-40
#define ENGINE_RPM          0x0C  //((A*256)+B)/4
#define VEHICLE_SPEED       0x0D  //A
#define INTAKE_AIR_TEMP     0x0F  //A-40
#define CONT_MODULE_VOLT    0x42  //((A*256)+B)/1000
#define AMBIENT_AIR_TEMP    0x46  //A-40
#define ENGINE_OIL_TEMP     0x5C  //A-40
#define CATALYST_TEMP_B1S1  0x3C  //(((A*256)+B)/10)-40

ELM entegresini veya hazır devreleri kullanmak istemezseniz, diagnostik portla bağlantı kuracak bir arabirime ihtiyacınız olacak. Bunun için microchip firmasının 2515 ve 2551 canbus entegrelerini kullanabilirsiniz. 


Canbus haberleşmesi, bir-iki satırla geçiştirilmeyecek kadar kapsamlı. O nedenle, bunu daha sonraya bırakıyorum. Ben, test için daha önce yaptığım CANBUS arabirimini kullandım.



Modül, OBD2/CANBUS hattına sürekli olarak yukarıdaki sorgu komutlarını gönderiyor ve aşağıdaki şekilde yanıt alıyor. Bu datalar belirli bir formata çevrilip, seri port üzerinden grafik LCD'ye gönderiliyor.



Display devresi, seri porttan gelen bilgileri işleyerek ekrana yazıyor.
Arabirim ve GLCD 5V ile çalışıyor. Deneme için diagnostik portundaki 12V çıkışını kullandım. Kontak kapalı olduğunda bile bu uçta gerilim var. Test için kullanılabilir ancak kalıcı bir uygulama için başka bir yerden +12V almak daha mantıklı.


Yukarıda bahsettiğim grafik display, ELM327 modülünü AT komutları ile sorgulayacak ve gelen dataları işleyecek kapasitede. ELM modülü ile ek bir devre olmadan da okuma yapılabilir.

Burada karşıma çıkacak en büyük sorun, kullandığım ekrana, araç içinde uygun ve güzel bir yer bulmak. tabi bu her model araç için farklı çözümler gerektiriyor.

Proje istediğim gibi gelişirse, ilerleyen zamanlarda, aracın kendi multimedya sistemini kullanmayı düşünüyorum.

VAG araçlarında (vw, seat, audi, skoda) kullanılan RCD/RNS510 medya cihazının, geri görüş kamerası için bir video girişi bulunuyor. Bu giriş bir kontak girişiyle tetikleniyor.



Okunan ve işlenen dataları PAL formatında göndermek, -zahmetli olsa da- mümkün. Yine bu bilgiler, MFD üzerinde de izlenebilir. 

devam edecek...


linkler:
ELM327 ile OBD-II Haberleşmesi -1
ELM327 ile OBD-II Haberleşmesi -2
ARDUINO-CANBUS

2 yorum:

  1. Merhaba
    Bu sayfadaki Grafik ekrandaki otomobilin değerlerini gösteren bir kart yapmak istesem ELM327 ve diğer malzemeleri nereden temin edebilirim.
    Bu tarz göstergeleri olmayan TOFAŞ otomobillere bu özellikler ilave edilebilirmi. En az kaç yıllık otomobiller için eklenebilir?
    Chipler , PCB ve program konusunda yardımcı olabilirmisiniz. Ücreti için ne düşünüyorsunuz.
    Selamlar.

    YanıtlaSil
    Yanıtlar
    1. Merhaba,
      Amerika'da 96 yılından itibaren kullanılmaya başlamış. Araç modeli ve model yılına göre araştırmak lazım. Konnektör genelde sürücü tarafında, direksiyonun alt bölgesinde oluyor.

      OBD2 portu varsa, yine marka/modele göre değişmekle birlikte bazı bilgileri alabilirsiniz. Bunun için hazır OBD okuyuculardan alıp android kullanan bir telefon veya tabletle bilgileri izleyebilirsiniz. (ebay, dx gibi sitelerde 20-25$'a bulunabilir)
      Ayrı bir ekran kullanmak isterseniz, kullanacağınız donanıma göre çözüm üretmek gerekiyor.

      Sil