CAN BUS SİSTEMİ NEDİR?

 

CAN BUS SİSTEMİ NEDİR

“Controller Area Network Bus” olan yani “Kontrol Alan Ağı Veri yolu”dur.

CAN, otomotiv endüstrisindeki en bilinen haberleşme sistemidir. Her ne kadar başlangıçta yalnızca otomotiv uygulamaları için tasarlanmış olsa da yüksek performansı güvenirliliğinden dolayı birçok dağıtık (distrubuted) endüstriyel kontrol uygulamalarında yaygın olarak kullanılmaktadır.

Güvenliğin çok önemli olduğu gerçek zamanlı uygulamalarda da kullanılır. Öyle ki istatistiksel olasılık hesapları sonucunda bir asırda bir tane tespit edilemeyen mesaj hatası yapabileceği tespit edilmiştir.

Uygulama alanı yüksek hızlı ağlardan düşük maliyetli çoklu kablolamalı sistemlere kadar geniştir. CAN-BUS, otomobil elektroniği, akıllı motor kontrolü, robot kontrolü, akıllı sensörler, asansörler, makine kontrol birimleri, kaymayı engelleyici sistemler, trafik sinyalizasyon sistemleri, akıllı binalar ve laboratuar otomasyonu gibi uygulama alanlarında maksimum 1Mbit/sn lik bir hızda veri iletişimi sağlar.

CAN-BUS sisteminin sahip olduğu özellikler:

  • Mesaj önceliği
  • Kayıp zaman güvenliği
  • Yapılandırma esnekliği
  • Senkronizasyonlu çoklu kabul: Aynı veri birçok ünite tarafından alınabilinir
  • Sistemdeki veri yoğunluğunu kaldırabilme
  • Çok efendili (Multimaster) çalışma
  • Hata tespiti ve hataya ilişkin sinyalleri üretme
  • Mesajın yollanmasında hata oluşması halinde mesajın iletim hattının (BUS) boş olduğu bir anda mesajın otomatik tekrar yollama
  • Ünitelerde oluşan geçici ve kalıcı hataları ayırt edebilme ve özerk olarak kalıcı hatalı üniteleri kapatabilme

 

CAN BUS SİSTEMİ TARİHÇESİ

Kontrol Alanı Ağı (CAN veriyolu) zengin bir geçmişe sahiptir ve çeşitli geliştirme aşamalarından geçmiştir. Yıllar içindeki gerçek gelişim aşamaları aşağıda görülebilir:

 

·       CAN veri yolunun gelişimi, Bosch'un daha sonra ISO 11898-1 standardına göre kodlanan Kontrol Alanı Ağı'nı ilk olarak icat ettiği 1983 yılına kadar gider.

 

·       CAN protokolü daha sonra 1986'da Otomotiv Mühendisleri Derneği  tarafından (SAE) yayınlandı.

 

·       Intel , 1987'de CAN denetleyici yongalarını ilk tanıtan firmaydı ve Phillips bundan kısa bir süre sonra Intel'e katıldı.

 

·       1991 yılında Bosch, CAN 2.0'ı yayınladı (CAN 2.0A: 11 bit, 2.0B: 29bit).

 

·       CAN bus, ISO 11898'de uluslararası bir standart olarak, 1993 yılında benimsenmiştir.

 

·       2003 yılında ISO 11898 standart bir seri haline geldi.

 

·       2012 yılında Bosch, esnek veri hızı CAN FD 1.0'ı piyasaya sürdü.

 

·       2015 yılında CAN FD protokolü ISO 11898-1'de standardize edilmiştir.

 

·       Son olarak, 5 Mbit/sn'ye kadar olan fiziksel CAN katmanı, 2016 yılında ISO 11898-2'de standardize edilmiştir.

          

                                                                   Görsel-1.1

 

CAN BUS SİSTEMİ NASIL ÇALIŞIR

CAN-BUS’ ı ISO/OSI Reference Modeli üzerinden açıklamak istersek CAN BUS’ı:

  • Nesne Katmanı (Object layer)
  • İletim Katmanı (Transfer layer)
  • Fiziksel Katman (Physical layer)

şeklinde üç alt bölüme ayırabiliriz. Bu üç alt bölümü alatacak olursak…

Nesne Katmanı

Nesne Katmanının görevleri;

  • Hangi mesajın transfer edileceğini tespit etmek
  • İletim katmanında hangi mesajın alınacağına karar vermek
  • Donanımla ilgili uygulamaya arayüz sağlamaktır.

İletim Katmanı

İletim katmanının başlıca görevi transfer protokolüdür.

 

·       Çerçeve (frame) kontrolü

·       Mesaj önceliği belirleme

·       Hata kontrolü

·       Hata sinyalleşmesi

·       Hata kapatma

İletim katmanı yeni bir mesajı yollamadan önce iletim hattının boş olmasına dikkat eder. İletim hattından veri alınmasından da sorumludur. Ayrıca senkron iletişim için veri transferi sırasında bit zamanlamasının bazı parametrelerini göz önünde bulundurur.

Fiziksel Katman

Fiziksel Katman, üniteler arasında veri haberleşmesi sırasındaki tüm elektriksel kısımdır.

 

ÇALIŞMA MANTIĞI

CAN-BUS üzerinden haberleşen tüm sistem bileşenlerine ünite (node) denir. Örneğin 100 tane birbirinden bağımsız mikrodenetleyicili devrelerimiz olsun. Bunları CAN—BUS sistemi ile haberleştirdiğimizi varsayım. Bu sistemde her bir mikrodenetleyicili sistem bir üniteyi oluşturur. CAN-BUS sisteminde tüm üniteler iletim hattına eşit öncelikli veri yollama hakkına sahiptirler. Buna multimaster çalışma denir.

CAN, iletişim ortamına erişim yöntemi olarak bit öncelikli yapı ile CSMA/CD (Carrier Sense Multiple Access with Collision Detection) kullanır. CSMA/CD (Carrier Sense Multiple Access with Collision Detection) den kısaca bahsedersek CAN sistemi, güvenli iletişim gücünü bu yapıyı kullanmasından alır.

CAN ile tüm veriler çerçeveler halinde gönderilir ve dört tür vardır:

  • Veri çerçeveleri, verileri bir veya daha fazla alıcı düğümüne aktarır
  • Uzak çerçeveler diğer düğümlerden veri ister
  • Hata çerçeveleri rapor hataları
  • Aşırı yük çerçeveleri, aşırı yük durumlarını bildirir

Mesaj uzunluğunun iki çeşidi vardır: standart ve genişletilmiş. Gerçek fark, tahkim alanındaki ek 18 bitlik tanımlayıcıdır.

 



                                                                    Görsel-1.2

 

CAN VERİ MESAJ YAPISI (CAN ÇERÇEVESİ)

Alan        Bitler   Tanım

SOF            1       Tek baskın Çerçeve Başlangıcı. Bu bit, bir mesajın başlangıcını işaretler. Boşta kalma       süresinin ardından düğümleri senkronize eder.

Identifier 11      Tanımlayıcı.CAN 11 bit tanımlayıcı veri alanı mesaj önceliğini belirler. Daha düşük değerler, daha yüksek  öncelikler anlamına gelir.

RTR          1         Uzaktan İletim Talebi. Bu bit, bilgi başka bir düğüm tarafından talep edildiğinde baskındır. Tüm düğümler isteği alır, ancak tanımlayıcı istenen düğümü belirler.

IDE           1         Tanımlayıcı Uzantı biti, standart bir CAN tanımlayıcının (uzatılmış değil) aktarıldığını gösterir.

R0            1          Gelecekte kullanılmak üzere rezerve edilmiştir.

DLC         4          Veri Uzunluğu Kodu, iletimdeki bayt sayısını içerir.

Veri         0 – 64 Aktarılan gerçek veriler.

CRC         16        16 bitlik (15 bit artı sınırlayıcı) döngüsel artıktık denetimi (CRC), hata algılamayı iletmek için önceki uygulama verilerinin sağlama toplamını (iletilen bit sayısı) içerir.

ACK         2          Bir düğüm başarılı bir şekilde bir mesaj aldığında, ACK bunun üzerine yazarak bu bitin üzerine baskın bir biti yazar. Öte yandan, bir düğüm bir mesajda bir hata bulursa, bu bitin resesif kalmasına izin verir ve mesajı yok sayar. ACK yuvası ve ACK sınırlayıcısının her biri bir bit uzunluğundadır.

EOF       7            Çerçeve Sonu, her CAN çerçevesinin (mesajının) sonunu gösteren 7 bitlik bir alandır.

IFS         3+          Çerçeveler Arası Boşluk (IFS), denetleyicinin bir çerçeveyi (mesajı) arabellek alanındaki konuma taşıması gereken zamandır. IFS’nin minimum üç ardışık resesif (1) bit içerdiğine dikkat edin. Üç resesif bit geçtikten sonra, baskın bir bit algılandığında, sonraki çerçevenin SOF biti olur.

 

CAN VERİ YOLUNUN ÇEŞİTLERİ

  • Düşük Hızlı CAN
  • Yüksek Hızlı CAN
  • CAN FD (Esnek Veri Hızı CAN)

Düşük Hızlı CAN

Yüksek güncelleme oranları gerektirmeyen hataya dayanıklı sistemler için kullanılır. Maksimum veri aktarım hızı 125 kbps’dir, ancak bu nedenle kablolama, yüksek hızlı CAN’den daha ekonomiktir. Otomotiv uygulamalarında, teşhis, gösterge paneli kontrolleri ve ekranları, elektrikli camlar vb. İçin düşük hızlı CAN kullanılır.

Yüksek Hızlı CAN

Yüksek güncelleme hızları ve yüksek veri doğruluğu gerektiren kritik alt sistemler arasındaki iletişimler için kullanılır (örneğin, kilitlenme önleyici fren sistemi, elektronik denge kontrolü, hava yastıkları, motor kontrol üniteleri, vb.). Yüksek hızlı CAN’ın veri aktarım hızları saniyede 1 kbit ile 1 Mbit arasında değişir.

Yüksek hızlı CAN, düşük hızdan daha hızlıdır, ancak yeni otomotiv uygulamalarının bant genişliği gereksinimi her yıl artmaktadır, bu nedenle otomobil OEM’leri artık CAN FD’yi yeni arabalara kurmaktadır. CAN FD, yanak dilini “steroidler üzerinde CAN” olarak tanımlanmıştır.

CAN FD (Esnek Veri Hızı CAN)

CAN’ın en son sürümü, esnek bir veri hızı, mesaj başına daha fazla veri ve çok daha yüksek hızlı aktarımlar sunar. Her standart (düşük hız ve yüksek hız) CAN mesajındaki veri uzunluğu 8 bayttır, ancak CAN FD ile bu, %800 artırılarak 64 bayta çıkarılmıştır. Ek olarak, maksimum veri hızı da önemli ölçüde 1 Mbps’den 8 Mbps’ye yükseltildi.



                                                                       Görsel-1.3

CAN FD ayrıca geriye dönük olarak uyumludur ve CAN 2.0 iletişim protokolünün yanı sıra CAN çıkışının salt okunur olarak kullanıldığı SAE J1939 gibi özel protokolleri destekler. CAN FD, esasen ISO 11898-1’de belirtildiği gibi orijinal CAN standardının bir uzantısıdır ve klasik CAN sistemleriyle tamamen uyumludur.

CAN FD, ECU’ların gerçek zamanlı gereksinimlere göre iletim hızlarını dinamik olarak değiştirmelerine ve daha büyük veya daha küçük mesaj boyutları seçmelerine izin verdiği için ileriye doğru önemli bir adımdır. Şimdi yüksek performanslı araçlarda bulunur, ancak ECU performansı yükseldikçe ve CAN FD donanım maliyetleri düştükçe, CAN FD’nin neredeyse tüm araçlara girmesi sadece bir zaman meselesidir.

BAZI CAN BUS ÖRNEKLERİ

                                                                  Görsel-1.4



                                                                           Görsel-2



                                                                      Görsel-3

 

 

KAYNAKÇA

dewesoft.com/blog/what-is-can-bus

autopi.io/blog/can-bus-explained/

CAN Bus Explained - A Simple Intro [v1.0 | 2019] - YouTubewww.youtube.com

en.wikipedia.org/wiki/CAN_FD

What is this CAN Bus? - YouTubewww.youtube.com
CAN (Controller Area Network) Hattı | Motor Dersi
www.motordersi.com

CAN Bus Communication Explained (Part 1) - YouTubewww.youtube.com

CAN Bus Explained - A Simple Intro [v1.0 | 2019] - YouTubewww.youtube.com

rmc.com.tr/can-bus-controller-area-network-nedir-ve-diger-arac-bus-veri-yolu-aglari-ile-nasil-karsilastirilir/#:~:text=CAN%20Bus%20(Veri%20Yolu)%20Protokolü,tasarlanmış%20mesaj%20tabanlı%20bir%20protokoldür.

Görsel-1.1: https://www.autopi.io/media/django-summernote/2021-09-02/f4e9baf8-c432-4627-9080-86b6f16fa1b3.jpg

Görsel-1.2: https://rmc.com.tr/wp-content/uploads/2022/08/Picture5-2.png

Görsel-1.3: https://rmc.com.tr/wp-content/uploads/2022/08/Picture6-3.png

Görsel- 1.4: https://www.seeedstudio.com/blog/2019/11/27/introduction-to-can-bus-and-how-to-use-it-with-arduino/

Görsel-2: https://esd.eu/en/support/can-bus-wiring-notes

Görsel-3: https://www.snapon.com/EN/US/Diagnostics/News-Center/CAN-Bus

 

 






Yorumlar

Bu blogdaki popüler yayınlar

ERROR TYPES

Dünyanın ilk 4. Nesil ısı pompası tanıtıldı!

Elektrikli araçlarınızın batarya ömrünü arttıracak 6 basit tavsiye!