Skip to main content

Etiket: vehicle network toolbox

CAN’dan XCP’ye: Vehicle Network Toolbox ile CAN/CAN FD Haberleşmesi

CAN, CAN FD ve J1939 hattındaki mesajları göndermek, almak, kodlamak ve çözmekten; DBC ya da ARXML dosyalarıyla sinyalleri ayrıştırıp canlı trafiği izlemeye, XCP üzerinden ECU belleğine doğrudan erişip kalibrasyon parametrelerini gerçek zamanlı değiştirmeye kadar tüm süreç, MATLAB ve Simulink içinden tek bir ortamda yönetilebilir. Bu da hem hattaki haberleşmeyi hem de hedef donanımın davranışını, yazılımı yeniden derlemeye gerek kalmadan gözlemleyebilmeniz anlamına gelir.

Bu yazıda, Vehicle Network Toolbox‘ın CAN, CAN FD ve J1939 mesaj katmanını, ardından XCP protokolü üzerinden ECU belleğine doğrudan erişimi, desteklenen donanımları ve TI F28379D LaunchPad üzerinde FOC motor kontrolü demosuyla uçtan uca bir kurulumu ele alacağız.

CAN, CAN FD ve J1939 ile Başlangıç

Klasik kullanım şu şekilde işliyor: DBC ya da ARXML dosyanızı MATLAB veya Simulink’e bağlıyorsunuz, toolbox hattaki ham CAN mesajlarını otomatik olarak mühendislik birimlerine (hız, sıcaklık, akım gibi) çeviriyor. Simulink tarafında Pack/Unpack bloklarıyla bu kodlama-çözme işini modelin içine gömebiliyorsunuz; bu bloklar üretim koduna geçerken de modelde kalıyor. MATLAB tarafında ise CAN Explorer ve CAN FD Explorer uygulamalarıyla hattaki trafiği canlı grafikte izleyip, yaptığınız işlemi otomatik olarak MATLAB koduna döktürebiliyorsunuz. J1939 desteği de aynı altyapıyı kullanıyor; ağır ticari araç dünyasında yaygın olan bu protokolde parametre gruplarını (PGN) kodlayıp çözebiliyor, çok çerçeveli haberleşmeyi ve adres talebini de (address claiming) yönetebiliyorsunuz.

CAN üzerinden XCP: ECU’nun Belleğine Doğrudan Erişim

CAN mesajları genellikle önceden tanımlanmış sabit sinyaller taşır. Yeni bir değişkeni izlemek istediğinizde çoğu zaman yazılımı yeniden derlemek gerekir. XCP (Universal Measurement and Calibration Protocol) bu sınırlamayı ortadan kaldırır.

Vehicle Network Toolbox, CAN, CAN FD veya UDP üzerinden bir XCP istemcisi (client) olarak çalışırken ECU tarafı XCP sunucusu (server) rolünü üstlenir. Bağlantı kurulduğunda, yalnızca CAN mesajlarında tanımlanan sinyallere değil, ECU belleğinde bulunan ölçüm ve kalibrasyon değişkenlerine de doğrudan erişilebilir.

Bunun en önemli avantajları şunlardır:

  • Yeni CAN mesajları oluşturmadan değişkenleri okuyabilme
  • Kalibrasyon parametrelerini gerçek zamanlı değiştirebilme
  • Yazılımı yeniden derlemeden algoritma davranışını izleyebilme
  • Ölçüm ve kalibrasyon işlemlerini MATLAB veya Simulink üzerinden gerçekleştirebilme

Bu altyapının temelini A2L dosyaları oluşturur. Derleme sonrasında oluşturulan A2L dosyası; ölçüm değişkenlerini, kalibrasyon parametrelerini, haberleşme ayarlarını ve olay (event) tanımlarını içerir.

Vehicle Network Toolbox bu dosyayı kullanarak DAQ ve STIM listelerini otomatik oluşturabilir, aynı anda birden fazla ECU ile haberleşebilir ve kullanıcıların kendi kalibrasyon uygulamalarını geliştirmesine olanak tanır.

Host PC ile hedef donanım arasında CAN/CAN FD, J1939 ve XCP ile kurulan bağlantının basitleştirilmiş şeması

Şekil — Host PC ile hedef donanım arasında CAN/CAN FD, J1939 ve XCP ile kurulan bağlantının basitleştirilmiş şeması

Desteklenen CAN Donanımları

Vehicle Network Toolbox farklı üreticilerin CAN arayüzleriyle birlikte çalışabilir. Desteklenen başlıca donanımlar şunlardır:

  • Vector
  • Kvaser
  • PEAK-System
  • National Instruments (NI)
  • Intrepid Control Systems
  • SocketCAN destekli Linux cihazları
  • CSS Electronics veri kayıt cihazları (MDF veri okuma)

Fiziksel bir CAN donanımı bulunmadığında ise MathWorks tarafından sunulan sanal CAN kanalları kullanılarak geliştirme ve test süreçleri gerçekleştirilebilir.

Desteklenen cihazların ve gerekli sürücülerin tam listesine buradan ulaşabilirsiniz.

Örnek Uygulama: TI C2000 Üzerinde FOC Motor Kontrolü

Anlattıklarımızın pekiştirmek için elimizdeki bir demoyu örnek olarak kullanıyoruz. TI’ın F28379D LaunchPad kartında, Hall sensörlü bir PMSM motoru Field Oriented Control (FOC) ile sürülüyor; algoritma Simulink’te hazırlanıp Embedded Coder ile karta yükleniyor. Host PC ile kart arasında bir CAN arayüzü üzerinden bağlantı kurup hız referansı, ölçülen hız ve akım geri beslemesi gibi sinyalleri anlık izleyip karta yeni parametreler gönderdik.

Böylece algoritmanın hedef donanım üzerindeki davranışı yazılımı yeniden derlemeye gerek kalmadan gözlemlenebiliyor ve kalibrasyon işlemleri çok daha kısa sürede tamamlanabiliyor.Bu uygulamanın adım adım gerçekleştirilişini aşağıdaki videoda izleyebilirsiniz.

Şekil — Hall sensörlü PMSM için Field Oriented Control Simulink modeli (Hardware Board: TI Delfino F28379D LaunchPad)

Sonuç

Vehicle Network Toolbox, yalnızca CAN mesajlarını okumak ve yazmak için kullanılan bir haberleşme aracı olmanın ötesine geçerek, gömülü sistem geliştirme sürecinin tamamını hızlandıran kapsamlı bir çözüm sunar.

CAN, CAN FD ve J1939 protokolleriyle haberleşme süreçlerini kolaylaştırırken, XCP desteği sayesinde ECU belleğine doğrudan erişim sağlayarak gerçek zamanlı ölçüm ve kalibrasyon yapılmasına imkân tanır. Bu sayede geliştirme ekipleri daha az derleme yapar, daha hızlı hata ayıklar ve hedef donanım üzerinde çalışan algoritmalarını çok daha verimli şekilde doğrulayabilir.

Uygulamayı Yakından İnceleyin

S-PMSM için C2000 üzerinde gerçekleştirilen FOC uygulamasının detaylarını keşfetmek için S-PMSM Field-Oriented Control (FOC) With C2000 makalesini inceleyebilirsiniz.

© FİGES A.Ş. Tüm hakları saklıdır.