OBD – Binek araçlarda arıza bulma sistemi

OBD – On-board diagnosis

Araçta tanılama (OBD), bir aracın kendi kendini tanılama ve raporlama yeteneğini ifade eden bir otomobil terimidir. OBD sistemleri, araç sahibi veya onarım teknisyenine çeşitli araç alt sistemlerinin durumuna erişim sağlar. OBD aracılığıyla mevcut olan teşhis bilgilerinin miktarı, araç üstü bilgisayarların 1980’lerin başlarında piyasaya sürülmesinden bu yana geniş çapta değişmiştir. OBD’nin erken versiyonları, bir problem tespit edildiyse ancak problemin doğasıyla ilgili herhangi bir bilgi vermezse, bir arıza gösterge lambasını veya “idiot light” ı aydınlatır. Modern OBD uygulamaları, standart bir dizi arıza bulma hata koduna ek olarak gerçek zamanlı veri sağlamak için standartlaştırılmış bir dijital iletişim portu veya aracın içindeki arızaların hızlı bir şekilde tanımlanmasını ve düzeltilmesini sağlayan DTC’leri kullanır.

Tarihçesi

1968: Volkswagen, içten yanmalı Tip 3 modellerinde tarama kabiliyetine sahip ilk yerleşik bilgisayar sistemini tanıttı.
1978: Datsun 280Z Yerleşik bilgisayarlar, yakıt enjeksiyon sistemlerinin gerçek zamanlı olarak ayarlanmasına duydukları ihtiyaç nedeniyle büyük ölçüde motive edilen tüketici araçlarında görünmeye başlıyor. Basit OBD uygulamaları, neyin izlendiğine veya nasıl rapor edildiğine dair bir standartlaşma olmamasına rağmen ortaya çıkar.
1980: General Motors, araç montaj hattındaki Motor Kontrol Modülünün (ECM) test edilmesi için özel bir arayüz ve protokol uygular. ‘Assembly line diagnostic link’ (ALDL) protokolü 160 bit / s hızında yayın yapıyor. 1980 model yılı için California araçları ve 1981’de Amerika Birleşik Devletleri’nin geri kalanında uygulandı. Çoğu durumda, ECM (Motor Kontrol Modülü), DTC’leri (Arıza Teşhis Kodu (ları)) üzerinde yanıp sönen bir model olarak görüntülemek için yapılabilir. CEL (Çek Motor Lambası) veya MIL (Arıza Gösterge Lambası). WinALDL olarak adlandırılan bir PC tabanlı Yazılım paketi, ECM tarafından RS232’ye iletilen 160 baud TTL seri verilerini dönüştüren oldukça kolay bir arabirim kablosu üzerinden CLCC (Kapalı Çevrim Karbüratör Kontrolü) ve erken CLC EFI veri akışlarını dinleyecektir veya USB [2] seri verileri ancak bu erken ECM’ler tarafından aktarılan fazla bilgi yoktur.
1986: Yarı çift yönlü UART sinyali ile 8192 bit / s’de iletişim kuran, ALDL protokolünün yükseltilmiş bir sürümü görünür. Bu protokol GM XDE-5024B’de tanımlanmıştır.
1988: Otomotiv Mühendisleri Derneği (SAE), standart bir tanı konnektörünü ve tanı testi sinyallerini önermektedir.
1991: California Hava Kaynakları Kurulu (CARB), Kaliforniya’da 1991’de satılan tüm yeni araçların ve daha yeni araçların bazı temel OBD yeteneğine sahip olmasını gerektirir. Bu gereksinimler genellikle “OBD-I” olarak adlandırılır, ancak bu isim OBD-II’nin uygulanmasına kadar uygulanmaz. Veri bağlantısı konektörü ve konumu standartlaştırılmamış veya veri protokolü değildir.
1994: Devlet çapında bir emisyon test programı arzusuyla motive olan CARB, OBD-II şartnamesini yayınladı ve 1996 yılında modelde başlayarak California’da satılan tüm otomobiller için benimsenmesini zorunlu kıldı (bkz. CCR Başlık 13 Bölüm 1968.1 ve 40 CFR Kısım 86 Bölüm 86.094). SAE tarafından önerilen DTC’ler ve bağlayıcılar bu belirtime dahil edilmiştir.
1996: Amerika Birleşik Devletleri’nde üretilen tüm otomobiller için Amerika Birleşik Devletleri’nde OBD-II şartnamesi zorunlu hale getirildi.
2001: Avrupa Birliği, Avrupa Birliği’nde satılmış olan benzinli (benzinli) araçlarda, MY2001’den başlayarak EOBD’yi zorunlu kılar (bkz. Avrupa emisyon standartları Direktif 98/69 / EC).
2003: Avrupa Birliği, Avrupa Birliği’nde satılan tüm dizel otomobiller için EOBD’yi zorunlu kılıyor
2008: Çin’deki bazı hafif araçlar, Çevre Koruma İdaresi tarafından 1 Temmuz 2008 tarihine kadar OBD (standart GB18352) uygulamasına ihtiyaç duyuyor. Bazı bölgesel muafiyetler geçerli olabilir.
2010: Amerika Birleşik Devletleri’nde satılan seçilmiş ticari (binek olmayan otomobil) motorlar için HDOBD (ağır hizmet) şartnamesi zorunludur.

OBD II

OBD-II, hem yetenek hem de standardizasyonda OBD-I’ye göre bir gelişmedir. OBD-II standardı, diyagnostik konnektörü ve pinout tipini, elektriksel sinyalizasyon protokollerini ve mesaj formatını belirler. Ayrıca, her biri için verilerin nasıl kodlanacağı ile birlikte izlemek için araç parametrelerinin bir aday listesi sağlar. Konektörde, tarama aleti için araç aküsünden güç sağlayan ve bir tarama aletini ayrı ayrı bir güç kaynağına bağlama ihtiyacını ortadan kaldıran bir pim bulunmaktadır. Bununla birlikte, bazı teknisyenler, bir aracın arıza nedeniyle elektrik kesintisi yaşadığı olayı olağandışı bir durumda korumak için hala tarama aletini yardımcı bir güç kaynağına bağlayabilir. Son olarak, OBD-II standardı standartlaştırılmış DTC’lerin listesini sağlar. Bu standardizasyon sonucunda, tek bir cihaz herhangi bir araçta bu parametreler için araç bilgisayarı (bilgisayarları) sorgulayabilir. OBD-II standardizasyonunun giderek karmaşıklaşan emisyon ekipmanlarının teşhisini basitleştirmesi istenmiştir ve ABD mevzuatına göre sadece emisyonla ilgili kodlar ve veriler iletilmesi gerektiğinden, çoğu üretici OBD-II Veri Bağlantı Konektörünü ana konektöre yapmıştır. tüm sistemlerin teşhis edildiği ve yeniden programlandığı araçta. OBD-II Diyagnostik Hata Kodları 4 harfli, önce bir harfle gelir: Motor ve şanzıman için P (aktarma organı), gövde için B, şasi için C ve ağ için U. Üreticiler, gerçek zamanlı veri istekleri ve sorun kodları dahil olmak üzere, özel OBD-II uygulamasına özel veri parametreleri de ekleyebilirler.

OBD üzerinden veri alınması:

OBD üzerinden veri almak için  usb, seri port veya bluetooth üzerinden OBD portuna takılabilen bir çok çeşit OBD cihazı vardır. En sık kullanılanları genellikle ELM327 çipi kullanır. Denemelerimizi ELM327 çipli bir cihaz ile yaptık. Sizlerle küçük bir giriş yapmak istedik.

Docklight ve TeraTerm gibi bir terminal programı ile cihazın bağlı bulunduğu seri port seçilerek bağlantı kurulur.

İletişimi başlatma: Kartla iletişim kurmaya başlamak için terminal penceresine “ATZ” yazın ve “enter” tuşuna basın. Bu, kartı sıfırlamak için komut gönderir. Kartınızda bazı LED’lerin yanıp söndüğünü görmeli ve ardından terminal penceresindeki başlatma komutunu görmelisiniz.

Bozuk karakterler geri döner ise terminalinizde doğru seri bağlantı noktası ayarlarına sahip olduğunuzdan emin olun.

Kartınızın kurulumu ile uygun bir iletişim kurduktan sonra, OBD-II UART sistem voltajını okumayı deneyin. Terminal penceresine “ATRV” yazın ve enter tuşuna basın. Kart size sistem voltajını göndermelidir.

OBD komutları, ASCII karakterlerinde yazılmış hexadecimal kodlardan oluşur. Genel olarak, bu komutlar 2 veya daha fazla hexadecimal sayı çifti içerir, ancak birkaç komut sadece 1 tane sayı çifti verir

OBD komutundaki ilk hex çifti, kullanılması gereken OBD modunu temsil eder. Bundan sonraki aşağıdaki hexadecimal çiftler, belirtilen moddan okunacak Parametre ID’sini (PID) temsil eder. 10 OBD modu vardır, ancak tüm araçların tüm 10 modu kullanamayacağını unutmayın. Hangi OBD modlarının ve parametre kimliğinin desteklendiğini görmek için aracınızın protokollerini kontrol etmelisiniz.

İnternette OBD PIDs işlevselliği hakkında daha fazla bilgi edinebilirsiniz. Bazı araç üreticileri de kendi özel parametrelerini kullanırlar, bu nedenle bunların aracınız için kapsamlı bir liste olmadığını unutmayın. ELM327 AT Komutları veri sayfası ek olarak aşağıdadır.

Muhtemelen en önemli PID 00’dır. Bu PID’yi OBD’yi destekleyen herhangi bir araç üzerinde çalıştırıarak aracın desteklediği diğer PID’lerin bir listesini alabilirsiniz. Terminal pencerenizde “0100” yazıp “enter” tuşuna basın. Bu komut “01 modunda, hangi PID’lerin desteklendiğinin bir listesini verir.

Tüm OBD cevaplarının ortak bir genel yapısı vardır. İlk yanıt baytı (yukarıdaki örnekte 0x41) komutta istenen modu listeler. Board mesajı 0x40 + 0x01 şeklinde gönderir. İkinci bayt, istenen parametredir, bizim örneğimizde, 0x00. Diğer baytlar, komutun yanıtlarıdır. Bu durumda, 0xBF, 0x9F, 0xA8 ve 0x93, araç tarafından desteklenen PID’lerdir.

Mode ve PID listesini linkten inceleyebilirsiniz. https://www.outilsobdfacile.com/obd-mode-pid.php#MODE_1_2

Bizim projemizde OBD üzerinden okunması gereken veriler ve bu verilere ait mod ile PID’ler aşağıda belirtilmiştir.

  • Motor Devri: Mode: 01h, PID:0Ch, Data Size:2 Byte

Test için terminal penceresinde 010C girin ve Enter’a basın. Genel yapıya göre alacağımız cevabı hatırlayalım. İlk yanıt baytı (0x40 + 0x01) yani (0x41) olacaktır. İkinci byte (0x0C) olacaktır. Daha sonraki baytlar ise motor devrini verir.

0x0E 0x96 değerini desimale çevirirseniz 3734 ondalık değerini bulursunuz. Bu aslında, gerçek RPM’nin 4 katıdır. Değer 4’e bölündüğünde, 933 olarak motor devri bulunabilir.


Tıkla Ara Whatsapp Destek