CANBus Üzerinde Bir Uygulama Protokolü: Canup - ASCAN
Özet
Bu çalışmada yaygın olarak kullanılan beş endüstriyel ağ Ethernet, Modbus, Profibus, Foundation Fieldbus ve CANBus kısaca anlatılarak avantaj ve dezavantajları incelenmiştir. CAN (Controller Area Network) protokolü tanımlamalar ve fonksiyonlar açısından ayrıntılarıyla açıklanmıştır. CANBus üzerinde tanımlanmış iki uygulama protokolü kısaca anlatılarak, bu iki protokol karşılaştırılmış benzerlik ve farklılıklar tartışılmıştır. CANBus üzerinde yeni bir uygulama protokolü tanımlanmıştır. CANUP (CAN Uygulama Protokolü) adını verdiğimiz bu protokolde uygulamadan bağımsız olarak haberleşme hızı, mesaj kimliği atama, veri değişimi metotları, ağ yönetimi ve mesaj tetikleme mekanizmaları ile ilgili kurallar ve yapılar tanımlanmaktadır. CANUP protokolünün bir uygulaması Asansör kontrol sistemleri için geliştirilmiştir. ASCAN olarak adlandırılan bu uygulamada asansör kontrol sistemlerinde kullanılan üç ayrı seri haberleşme hattı tek bir CANBus hattında birleştirilmiştir. Ana kontrol paneli ile kat ve kabin üniteleri arasındaki haberleşme sistemi ayrıntılı olarak anlatılmıştır.
In this study, five commonly used industrial networks Ethernet, Modbus, Profibus, Foundation Fieldbus and CANBus are briefly explained and advantages and disadvantages are analysed. CAN (Controller Area Network) protocol is described in detailed with definitions and functions. Two well-known application protocols CANopen and DeviceNet defined on CANBus are explained briefly. They are compared in different points and similarities and differences are discussed. A new application protocol on CANBus is defined. The protocol named as CANUP defines general rules and structures for message identifier allocation, data exchange methods, network management, message triggering and baudrate. An application of CANUP protocol for lift control systems is developed. In this application named as ASCAN three different networks in lift control systems are gathered on single CAN network. Communication system between Main Controller, Car (COP) and Landing (LOP) units is described in details.
Açıklama
Tez (Yüksek Lisans) -- İstanbul Teknik Üniversitesi, Fen Bilimleri Enstitüsü, 2004
Thesis (M.Sc.) -- İstanbul Technical University, Institute of Science and Technology, 2004
CANBUS_CANUP_ASCAN_ITU_2004_Akın_ÖZDEMİR.pdf
ASANSÖR HABERLEŞME SİSTEMLERİNDE CANBUS HATA_TOLERANS MODU KULLANIMI_2014_İzmir.pdf
Anahtar kelimeler
Endüstriyel Ağlar, Mikrodenetleyici ağları, Denetleyici Alan, Industrial Networks, Microcontroller Networking, CAN, Controller
---------------------------------------------------------------------------------------------------------------------------------------------------------------------
CAN BUS Hattının Çalışma Prensibi ve Özellikleri
Elektronik Kontrol Üniteleri (ECU) CAN BUS hattı
ile birbirlerine bağlıdır ve bilgi alışverişinde bulunurlar. (Can bus: ken bas diye okunur).
Elektronik kontrol ünitelerinin birbirlerine gönderdiği bu bilgilere BUS BİLGİSİ (data bus) denir. Bus bilgisi, kontrol üniteleri arasındaki ağda (CAN BUS) dolaşan bir yolcu otobüsü gibi, bir çok bilgiyi içeren “Bus Bilgisini” ilgili kontrol ünitelerine iletir. CAN BUS hattı burada, veri otoyolu gibi çalışır.
Araç üzerindeki onlarca kontrol ünitesi, CAN BUS ağına, yani iki adet bakır tele, paralel olarak bağlanmış durumdadır ve sürekli olarak birbirleriyle iletişim kurarlar.
Elektronik kontrol üniteleri arasındaki veri iletimi, dijital olarak gerçekleştirilir. Örneğin krank devir sensöründen gelen elektrik sinyali bir analog büyüklüktür (voltajdır), bu sinyal ECU tarafından dijital karşılığına dönüştürülür, örneğin motor devri 2000 devir/dk bilgisi, 0100100101 gibi sıfır ve birlerden oluşan bir dijital sinyale dönüştürülür, ECU içerisindeki mikro işlemcide ancak bu şekilde anlamlı hale gelir, işlenir, yorumlanır ve Can Bus hattı üzerinden diğer ECU’lerle yine bu şekilde dijital veri olarak paylaşılır. (Bkz: Tüm Sensörler)
Veri iletim hızı 100Kbit/sn ile 1000Kbit/sn arasında değişmektedir. 500Kbit/sn veri hızı neredeyse gerçek zamanlı bir iletim sağlamaktadır.
CAN BUS hattında bir arıza meydana geldiğinde, ilgili ECU hafızasına arıza kaydedilir, OBD sistemiyle bu arıza teşhis edilip, test cihazıyla kontrol edilebilir.
Tahrik CAN Hattı: Motor kontrol ünitesi, şanzıman kontrol ünitesi, fren kontrol ünitesi, hava yastığı kontrol ünitesi, ABS kontrol ünitesi, gösterge paneli kontrol ünitesi, direksiyon kontrol ünitesi vb. Bu sistemler araçta öncelikli olduğundan veri iletim hızı en yüksek değerde seçilir. Örneğin 500Kbit/sn
Konfor CAN Hattı: Klima kontrol ünitesi, lastik basınç sensörü, otomatik park yardımı kontrol ünitesi, Kapı ve aydınlatma kontrol ünitesi vb. Bu sistemlerde nispeten daha düşük veri iletim hızları kullanılabilir. Örneğin 100Kbit/sn
Multimedya-Navigasyon CAN Hattı: Müzik sistemi, Navigasyon, telefon bağlantısı vb.
Veri İletim Yöntemleri
Elektronik kontrol üniteleri arasındaki veri iletimi için 2 yöntem kullanılabilirdi. Bunar Seri Veri İletimi ve Paralel Veri İletimidir.
Paralel veri iletiminde iletim hızı yüksektir fakat; her bir bilgi için ayrı bir hat (kablo) gerekir, uzun mesafeler için uygun değildir, kablo sayısı artar, ağırlık artar, maliyet artar, kapladığı yer artar, arıza olasılığı artar. Kontrol üniteleri arasında her an yüzlerce bilginin paylaşıldığı ve her biri için ayrı kablolama yapıldığı düşünülürse, bu yöntemin uygunsuzluğu daha kolay anlaşılabilir. Bu sebeple, ECU’ler arası veri iletiminde “paralel verimi iletimi” kullanılmaz.
Seri veri iletiminde kontrol üniteleri arasında iki kablodan oluşan tek bir hat kullanılır. Tüm elektronik kontrol üniteleri bu tek hata bağlıdır. Otomotive kullanılan CAN BUS protokolü (kontrol üniteleri arası ağ), bu iletim yöntemi üzerinde geliştirilmiş bir sistemdir. Sistemdeki bir elektronik kontrol ünitesindeki bilgi, CAN BUS ağı sayesinde, aynı zamanda tüm kontrol ünitelerinin sahip olduğu bilgi anlamına gelir. Seri veri iletimi yöntemindeki CAN BUS veri iletim yöntemi sayesinde, kablo sayısı azalmıştır (2 tane kablo), maliyet azalmıştır, kapladığı alan azalmıştır, arıza olasılığı azalmıştır. Sistemde iletilen bilgi miktarı ve kontrol ünitesi sayısı ne kadar artarsa artsın; bir tek hat tüm işlevi yerine getirmektedir.
CAN Bus Bilgisi (CAN Data Bus)
Elektronik kontrol üniteleri arasında alıp verilen ve bir çok veriyi içeren bilgi kümesine, CAN Bus Bilgisi denir (kısaca “Bus bilgisi”). Basitçe tanımlanırsa: CAN: Bilginin aktarıldığı oto yol. Data Bus: Veri otobüsü. Veri otobüsü, oto yolda dolaşarak, tüm kontrol üniteleri arasındaki bilgiyi taşır. Bir çok kontrol ünitesinin bağlı olduğu CAN BUS hattında iletilen CAN Bilgisi sayesinde, tüm kontrol üniteleri uyumlu bir şekilde tek bir sistem gibi çalışırlar. Can Data Bus Bilgisi, dijital bir veridir.
Can Data Bus ver iletim sisteminin avantajları: Sadece yazılım güncellemesiyle veri iletim protokolü genişletilebilir. Düşük hata oranı. Çok az kablo hattıyla sensör sinyalininçok fazla sayıda kullanımı mümkündür. ECU’lere arası yüksek veri iletim hızı. Daha az kablo, daha az soket ve daha küçük ECU’ler sayesinde, daha az alan işgal edilir.
CAN BUS Veri İletim Sisteminin Çalışması (Çalışma Prensibi)
Can veri iletim sisteminde, verinin iletilmesi çoklu telefon konuşmasına benzetilir. İkiden çok kişinin telefonda konuşmasına telekonferans denir. Telefon görüşmesinde bir kişi konuşurken, diğer kişler bunu dinler. Burada konuşan kişi, bilgiyi veren ECU’dür. Dinleyen kişilerse bilgiyi alan ECU’lerdir. Konuşmada söylenen şeyi, dinleyenler arasında ilgisini çeken kişiler algılar, diğerleri bunu algılamaz, umursamaz ve görmezden gelir. CAN BUS sisteminde de böyledir. Bir ECU’den gönderilen bilgi, sadece bu bilgiyle ilgilenen ECU’ler tarafından alınır, diğer ECU’ler tarafından yok sayılır.
Çalışmaya bir başka örnekse, bir kontrol ünitesi veri gönderdiğinde bu radyo istasyonundan bir şarkı çalınması gibidir; diğer tüm ECU’ler bu sinyali alır yani şarkıyı dinleyebilirler.
CAN BUS Sisteminin Parçaları ve Elektronik Kontrol Üniteleri Arasındaki Veri İletimi
CAN BUS Sistemi parçaları: Kontrol ünitesi, Can kontrolörü, Can alıcı-vericisi, Can-bus hattı, Hat sonu direnci (Terminal Uç)
Elektronik Kontrol Ünitesi (ECU): Motorlu araçlarda bağlı olduğu sistemi yöneten bir mikrobilgisayardır. Sensörlerden bilgi alır, bilgiyi yorumlar, aktörlere emir vererek çalıştırır, sahip olduğu bilgileri diğer ECU’lerle CAN BUS üzerinden paylaşır. Basitçe sistemin beynidir.Daha fazla bilgi için (Bkz:ECU Nedir?)
CAN Kontrolörü (CAN Controller): CAN kontrolörü, transfer edilen veriyi, elektronik kontrol ünitesindeki mikroişlemciden alır, bu veriyi işler, ve daha sonra CAN alıcı-vericisine iletir. Tam tersi olarak yine aynı şekilde; can alıcı-vericisinden veriyi alır, bu veriyi işler ve elektronik kontrol ünitesindeki mikroişlemciye iletir. ECU içerisinde bulunur.
CAN Alıcı-Vericisi (CAN Transceiver): Hem alıcı hem verici görevi gören bir devredir. CAN kontrolöründen gelen veriyi, elektrik sinyaline dönüştürdükten sonra, CAN Data bus hattına gönderir. Yine aynı şekilde, Can Data Bus hattından gelen sinyali, veri sinyaline dönüştürdükten sonra, Can kontrolörüne gönderir.
CAN BUS Hattı: ECU’ler arasındaki iletişimin sağlandığı ağdır. Daha fazla bilgi için (Bkz: Can Bus Hattı Nedir?)
Hat Sonu Direnci (Can Bus Terminal): ECU içerisinde bulunan bir direnç elemanıdır. Can bus hattında gönderilen verilerin yansıma yaparak geri dönmesini önler. Eko önlenmiş olur, böylece bus bilgisinde (data'da) kesinti-bozulma yaşanmaz.
ECU, gönderilecek veriyi oluşturur --> CAN kontrolörüne gönderir --> Can kontrolörü bu veriyi Can alıcı-vericisine iletir --> Can alıcı vericisi bu veriyi elektrik sinyaline dönüştürür ve can bus hattına gönderir --> CAN BUS hattındaki diğer tüm ECU’ler alıcı durumundadır --> ECU’ler bu verinin işlerine yarayıp yaramayacağına bakar --> Eğer işe yarar bir veriyse bu veriyi alır ve işlerler --> Eğer işe yaramaz-ilgisiz bir veriyse bunu görmezden gelirler-yok sayarlar.
Örneğin, motor devri bilgisi motor kontrol ünitesine, krank devir sensöründen gelen kabloyla iletilir. Bu bilgi motor kontrol ünitesinde vardır. Bu bilgiye otomatik şanzıman kontrol ünitesi de ihtiyaç duyar, bu bilgiyi CAN BUS üzerinden alır ve kullanır. Fakat aydınlatma kontrol ünitesine giden bu bilgi gereksizdir, bu sebeple aydınlatma ECU sü tarafından bu bilgi kabul edilmez, yok sayılır.