Data Bus (Bus Bilgisi) - Analog ve Dijital Sinyalin Yapısı



BÖLÜM:1-2-3-4

Data Bus (Bus Bilgisi) Yapısı, Sinyalin Üretilmesi - Analog ve Dijital Sinyalin Yapısı

Bus bilgisi (ver çerçevesi) bir dizi bit’lerden oluşur. Bu bitler ancak 0 veya 1 değerlerini alabilirler. 8 bit= 1 bye. 1000 bit= 1kbit. Elektronik kontrol ünitelerinde bilgiler, bit’lerden oluşan dijital veriler (sinyaller) olarak okunur, işlenir, iletilir. ECU’ler analog verileri okuyup işleyemezler. ECU’de analog sinyaller dijital sinyallere dönüştürülür.
Konunun anlaşılması için bu bölümde analog ve dijital elektrik sinyalleri kısaca açıklanacaktır.

Analog Sinyal

Zaman içerisinde sonsuz farklı değer alabilen ve sürekli değişen elektrik sinyaline analog sinyal denir. Analog değerlere örnek olarak; akım şiddeti (amper), gerilim (voltaj), sıcaklık, basınç, ışık şiddeti verilebilir. Bir elektriksel büyüklük olan voltaj, analog veya dijital sinyal olarak karşımıza çıkar. Otomotivde analog voltajlara örnek;, tüm oto elektrik sistemi ve oto elektroniğinde ise neredeyse tüm sensör sinyalleri analog sinyallerdir. Sensörlerden gelen analog elektrik sinyalleri, ECU’lere geldiklerinde, dijital sinyallere dönüştürüldükten sonra işleme alınırlar. Bunun için ECU’lerde Analog/Dijital sinyal dönüştürücüsü  bulunur.




Örneğin bir soğutma suyu sıcaklık sensörünün besleme gerilimi sabit 5 volttur. Bu sensörün, suyun sıcaklık değişimine  bağlı olarak direnci değişir, direnci değiştiği için de sensörden gelen sinyal voltajı sıcaklığa bağlı olarak değişir. Yani sensörün sinyal voltajı 0 volt ile 5 volt arasında, sürekli değişir, bu voltaj değeri 0 ve 5 volt arasındaki sonsuz voltaj değeri alabilir. Örneğin 1, 2, 3, 4, 4.1, 4.3. 4.32, 3.4534 yazmakla bitmeyecek kadar farklı voltaj değerleri oluşabilir. İşte bu analog bir elektrik sinyalidir.
Örneğin havakütle ölçer (MAF-Debimetre): Motora alınan havanın miktarına göre, 0 ile 5 volt arasında sonsuz farklı değerde elektrik sinyali üretebilir. Bu da yine alanog sinyale örnektir.
Analog sinyal değerini, onlu sayı sistemiyle ifade ederiz. Örneğin 189 volt, 86 derece, 240 amper gibi. Analog büyüklüğü ifade ederken 0,1,2,3,4,5,6,7,8,9 gibi rakamları kullanılır. Oysa dijital bir büyüklüğü ifade ederken, aşağıda anlatıldığı gibi sadece 0 veya 1 rakamlarını kullanırız.

Dijital Sinyal

Dijital sinyal, dijital veri, sayısal sinyal; bu üç terim de aynı anlama gelir. Dijital sinyal; zaman içerisinde sadece iki farklı değer alabilen ve sürekli değişebilen sinyallere dijital sinyaller (sayısal sinyaller) denir. Dijital sinyallerde değer sadece 1 veya 0 değeri alabilir.  0,5 0,2 0,8 … gibi sonsuz sayıda ara değer alamaz, oysa analog sinyalde 0 ve 1 arasında sonsuz farklı değer alabilirdi. Analog ve dijital sinyal arasındaki temel farklardan biri budur.

Dijital Sinyalin Üretimi (Dijital Verinin Üretimi)

Basit bir elektrik devresinin çalışmasıyla, dijital sinyalin üretimi örneklendirilebilir.  Pil, kablo, anahtar ve lambadan oluşan basit bir elektrik devresi, iki farklı durum oluşturabilir.
*Anahtar KAPALIDIR, Lamba yanar (ON, 1) (kapalı devre) / Can alıcı-vericisi açık, sisteme 5 volt gönderir. (Gönderilen, “1” karşılığı voltajın değeri, sisteme göre değişir, 5 volt, 3,5 volt, 2,5 volt olabilir. Sistemde “1” in karşılığı olarak hangi voltaj değeri atanmışsa, o voltaj sinyali kullanılır).



Anahtar AÇIKTIR, lamba yanmaz (OFF, 0) (açık devre) / Can alıcı-vericisi kapalı, sisteme voltaj gönderilmez, yaklaşık 0 volt. Bit değeri “0” dır.
Dijital verinin en küçük birimi “bit” tir, bu bitler 0 veya 1 olabilir. Bu 0 veya 1 değerleri, bir elektrik sinyaliyle elde edilir. Demek ki, istenen bir voltaj değeri için “1” değeri ve 0 volt için de “0” değerini atanabilir. Böylece dijital elektrik sinyalinden, daha önceden tanımlanmış anlamlı kodlar elde edilebilir. Yani dijital elektrik sinyali bir iletişim diline (sayısal veriye) dönüştürülebilir. Bit’ler, kelimelerdeki harfler gibidir, bu harfler kurala uygun bir şekilde yan yana dizilirse, anlamlı bir kelime meydana gelir. “Lmae” harfleri yan yana geldiğinde anlamsızdır fakat; “elma”  şeklinde yan yana gelirse, insan beyni için anlam ifade eder. ECU’ler için de motor devri 1800 ifadesi anlamsızdır, fakat  ECU’ye “00010101” denirse, ECU bunu anlar. Çünkü mesaj, ECU’nün anladığı dile, sayısal veriye (dijital veriye) dönüştürülmüştür.
Elektronik kontrol üniteleri sadece dijital verileri işleyebildiğine göre, kontrol ünitesinin hafızasına her analog verinin dijital veri olarak karşılığı daha önceden yüklenirse, artık ECU her analog veriyi dijital veriye çevirebilir ve bunu okuyabilir. Daha sonra bunu tekrar dijital veriye çevirip diğer ECU’lerle CAN BUS sistemi üzerinden paylaşabilir.
Örneğin motor sıcaklığının 100 derece olduğu bilgisi, analog bir değerdir ve motor soğutma suyu sıcaklık sensöründen, motor ECU’süne gönderilir. Motor ECU’sü bu 100 derece analog verisini, buna karşılık gelen hafızasındaki dijital veriye dönüştürür, örneğin 00101011 olsun. 00101011 bilgisiyle, motorun çok ısındığı yorumunu yapar ve fan motorunun çalışmasını sağlayan dijital sinyal kodunu gönderir. Bu sinyal, analog bir voltaj değerine dönüştürülür ve fan rölesini açar, fan motoru çalışır.



Basit lamba devresine geri dönülürse. Lambanın yanması “1” gibi tek bir bit’lik veriyle ifade  edilir. Yine lambanın sönmesi “0” bit’iyle ifade edilir. Otomotivde binlerce veri kullanılır ve çok daha fazla detaylı bilgilerin işlenmesi gerekir. Dijital sinyal (dijital veri) birbiri ardına dizilmiş bitlerden oluştuğuna göre, bu durumda bit’lerin sayısı artacak ve dizilimleri de değişecektir. Her bit dizilimi (dijital veri), ECU’de kayıtlı anlamlı bir bilgiye karşılık gelir. İletilen mesaj, bit’lerden oluşan bir diziden meydana gelir. Aynı bit dizilimi farklı sistemlerde farklı anlamlarda kullanılır.
Şimdi dijital veri ile nasıl farklı mesajların oluşturulabileceğini örnekle görelim. Bilginin içeriği ve detayı, kullanılan bit’lerin sıralamasının ve bit  sayısının artışıyla artacaktır.
“0” lamba kapalı.
“1” lamba açık.
Görüldüğü gibi tek haneli olarak sadece “1” veya “0” sıfır kullanıldığında,  sadece iki mesaj oluşturulabildi: lamba açık veya kapalı.
Aşağıda “0” ve “1” beraber iki haneli olarak kullanıldığındaysa daha fazla farklı bilgi oluşturulabilir:
“00” lamba kapalı
“01” lamba açık
“11” lamba kısa aralıklarla yanıp sönüyor.
“10” lamba uzun aralıklarla yanıp sönüyor.
 

Motor soğutma suyu sıcaklık bilgisinin, dijital sinyal olarak üretilmesi:
Sadece tek bir bit kullanıldığında (tek bit’lik veri): 0 veya 1 olacaktır.
“0”= 10 oC
“1”= 20 oC  görüldüğü gibi sadece iki farklı sıcaklık değeri ifade edilebildir.
İki bit’lik veri kullanıldığında:
“00”= 10 oC
“01”=20 oC
“10”=30 oC
“11”=40 oC
Üç bitlik veri kullanıldığında:
“000”=10 oC
“001”=20 oC
“010”=30 oC
“011”=40 oC
“100”=50 oC
“101”60 oC
“110”=70 oC
“111”=80 oC
Görüldüğü gibi veri bit’i arttığında, dijital veri kombinasyonu da çeşitleniyor, böylece çok daha fazla bilgi dijital olarak aktarılabiliyor. Bu örnek, otomotivde her sistem için uyarlanabilir ve her mesajın içeriği bu şekilde oluşturulabilir.
 
Örnek: Elektrikli Cam Sistemi
“00”: Cam hareket halinde
“01”: Cam durur halde
“11”: Cam açık halde
“10”: Cam kapalı

Örnek
Gaz kelebeğinin açıklık miktarı, gaz kelebeği konum sensöründen, motor kontrol ünitesine iletilir. Motor kontrol ünitesi, gaz kelebeğinin (% olarak) ne kadar açık olduğunun bilgisini, diğer kontrol üniteleriyle paylaşır (örn: otomatik şanzıman kontrol ünitesiyle). Bu durumda, motor ECU, Can bus hattına bus bilgisini (mesajı) 0-1’lerden oluşan kod olarak gönderir. Bunun için 8 bitlik veri kullanır. Bu 8 bit ile, 256 farklı bilgi iletebilir. Sürücünün gaz pedalına basma miktarına göre, gaz kelebeği %0 açık (kapalıdır) pozisyonuyla %100 tamamen açık pozisyonları arasında bir değerdedir.
%0 ile %100 açıklık arasındaki her farklı durum, 256 farklı kodla ile iletilebilir. 100/256= 0,4. Demek ki gaz kelebeğinin açıklık miktarı, % 0.4 hassasiyetle veri olarak aktarılabilir.
Örneğin:
0000 0000 %0 açıklık (kapalı)
0000 0001 % 0,4 açık
1100 1011 %60 açık
1111 1111 %100 tamamen açık gibi.



Data Bus Bilgisinin (Mesajın) İletim Önceliği

Can bus ağında onlarca elektronik kontrol ünitesi (ECU) bulunur. Can bus ağındaki ECU’ler aynı anda mesaj (data) gönderdiğinde, sistem hangisinin mesajını öncelikli olarak ileteceğine karar vermek zorundadır. Bu durumda, gönderilen mesajın (bus bilgisinin) yüksek önceliğe sahip olanı ilk olarak iletilir.
Aktarılan verideki (bus bilgisindeki) her bit’in bir değeri vardır. Önceliğin belirlenmesi açısından bit’ler iki çeşittir: “Baskın Bit” ve “Çekinik Bit” .
“0” Bit’i Baskın bittir.
“1” Bit’i Çekinik bittir.
İletilen her veride, o verinin öncelik derecesini belirten 11 bit’lik bir kod bulunur. Bu 11 haneli kodun baş kısmında “0” lar çoğunluktaysa, o veri daha önce aktarılır. Çünkü “0” bit’i baskın bit olduğundan, o verinin öncelikli olmasını sağlar.
ABS/ESP ECU gönderdiği veriye ait önceliklendirme kodu: 001 1010 0000
Motor ECU gönderdiği veriye ait önceliklendirme kodu: 010 1000 0000
Otomatik Şanzıman ECU gönderdiği veriye ait önceliklendirme kodu: 100 0100 0000

Motorlu araçlarda güvenlik sebebiyle fren ve sürüş-çekiş kontrol sistemlerini (ABS/ESP) yöneten ECU’lerin gönderdiği veriler, öncelikli olarak iletilirler. ECU’ler arasındaki hiyerarşi genellikle: ABS/ESP ECU, Motor ECU, Şanzıman ECU şeklinde sıralanır.
Görüldüğü gibi ABS/ESP ECU’sünün gönderdiği kod 001 şeklinde daha fazla baskın “0” bit’i içerdiğinden, 3 ECU aynı anda veri gönderdiğinde, ABS/ESP ECU’sünün mesajı (verisi) öncelikli olarak iletilir. Bu durumda, diğer kontrol üniteleri CAN BUS hattındaki yüksek öncelikli veriyi algılayarak, veri göndermeyi durdururlar, “verici” yerine “alıcı” konumuna geçerler ve gönderilen veriyi alıp okurlar.
BÖLÜM:1-2-3-4

Yorumlar

  1. Emeğinize saglik, takipçilerinizden bir isteğiniz olursa buradayız.

    YanıtlaSil

Yorum Gönder

Arızalarla ilgili soru ve cevaplar için: Soru Cevap Forumu