- Unit, integration, MIL, SIL ve HIL test seviyelerini ayırt edebilmek.
- Battery emulator ve cell emulator kavramlarını açıklayabilmek.
- Bir BMS arıza senaryosu için stimulus, expected behavior, detection, reaction ve recovery tanımlayabilmek.
- Test piramidinin seri üretim maliyetiyle ilişkisini açıklayabilmek.
BMS-19 — BMS Validation / SIL / HIL
1. Gerçek Hücrede Arıza Testi Yapamazsın
BMS’in overvoltage, kısa devre veya termal kaçak gibi senaryolara doğru tepki verdiğini doğrulamak gerekiyor — ama bunları gerçek bir HV pakette bilerek tetiklemek tehlikeli ve pahalı. Çözüm, riski kademeli azaltan bir test piramidi:
Unit Test → Integration Test → MIL → SIL → HIL → Bench → Pack → Vehicle
Bir yazılım hatasını unit test aşamasında (saniyeler içinde, bilgisayarda) yakalamak, aynı hatayı araç testinde (gerçek araç, günler süren kampanya) yakalamaktan çok daha ucuz ve güvenli. Bu yüzden piramit, “çoğu hata alt katmanlarda, az sayıda entegrasyon hatası üst katmanlarda yakalanmalı” ilkesine dayanıyor.
2. Altı Test Seviyesi
| Seviye | Ne test ediliyor |
|---|---|
| Unit test | Tek fonksiyon/bileşen (ör. SOC hesaplama fonksiyonu, donanımsız) |
| Integration test | Bileşenlerin birlikte çalışması (SOC algoritması + fault manager) |
| MIL (Model-in-the-Loop) | Kontrol modeli simülasyon ortamında; henüz üretim kodu yok |
| SIL (Software-in-the-Loop) | Gerçek üretim kodu, model/simülasyonla, PC üzerinde |
| HIL (Hardware-in-the-Loop) | Gerçek BMS donanımı, gerçek zamanlı batarya simülasyonuyla |
| Bench / Pack / Vehicle | Gerçek donanımla son teyit aşamaları |
MIL ile SIL arasındaki fark önemli: MIL’de test edilen mantık henüz üretim koduna dönüşmemiş bir model; SIL’de gerçek, derlenmiş kod test ediliyor. Bu, model ile kod arasındaki çeviri hatalarını (yuvarlama, veri tipi farkları gibi) yakalıyor.
3. Emülatörler: Tehlikeyi Simülasyona Taşımak
Bir hücreyi gerçekten 4,5 V’a (overvoltage) çıkarmak tehlikeli ve hücreyi tahrip edici. Battery emulator, gerçek hücreler yerine programlanabilir hücre gerilimleri üretiyor — BMS’in ölçüm girişine “sanki gerçek bir hücre 4,5 V’taymış gibi” bir sinyal veriyor, BMS buna gerçek bir hücreymiş gibi tepki veriyor ama ortada kimyasal risk yok. Cell emulator aynı mantığı tek tek hücre düzeyinde uyguluyor.
4. Bir Arıza Testi Nasıl Tanımlanır
Genel çerçeve: Stimulus (uyarı) → Expected behavior (beklenen davranış) → Detection (tespit) → Reaction (tepki) → Recovery (kurtarma).
Cell Overvoltage: Bir hücre gerilimi üst sınırın üzerine çıkarılır → BMS overvoltage’ı tespit eder → şarj kesilir/kontaktör açılır → gerilim sınıra dönünce güvenli koşulda normale dönülür.
Current Sensor Offset: Akım sensörüne sabit offset enjekte edilir → BMS offset’i plausibility ile tespit eder → uyarı/derating → offset düzeltilince normale döner.
Pre-charge Timeout: Pre-charge direnç devresine yapay yüksek direnç enjekte edilir → DC-link gerilimi beklenen 5τ süresinde eşiğe ulaşmaz → pre-charge zaman aşımıyla iptal edilir, kontaktörler açık kalır → yalnızca kök neden giderildikten sonra yeniden denenir.
Diğer tipik testler: undervoltage, overcurrent, overtemperature/undertemperature, sensör açık/kısa devresi, CAN kaybı, kontaktör yapışması, HVIL açık, izolasyon arızası.
ASSUMPTION — Yukarıdaki senaryolar ve parametreler eğitim amaçlı temsili örneklerdir; gerçek test spesifikasyonları projeye özgü gereksinim ve safety concept dokümanlarından türetilir.
5. Test Coverage ve ASIL
Test coverage, yazılan testlerin kodun/gereksinimlerin ne kadarını kapsadığını ölçüyor. ASIL seviyesi yükseldikçe (BMS-17) gereken kapsama derinliği (MC/DC gibi) artıyor.
6. Üretimde Nasıl Doğrulanır
Piramidin üst seviyeleri (Bench, Pack, Vehicle) üretim öncesi son teyit aşamaları — HIL’de zaten test edilmiş senaryoların gerçek donanımla doğrulanması. Burada yeni arıza türleri aranmıyor, önceden tanımlanmış senaryoların gerçek sistemde de doğru çalıştığı teyit ediliyor (BMS-20).
7. Diğer Sistemlerle Bağlantısı
Doğrulama stratejisi; fonksiyonel güvenlik konseptinin (BMS-17) her safety mechanism’ini test ediyor, arıza yönetiminin (BMS-13) tüm senaryolarını kapsıyor ve seri üretim sürecinin (BMS-20) omurgasını oluşturuyor.
Özet
- Test piramidi birimden araca doğru ilerliyor; erken aşamada hata yakalamak daha ucuz.
- MIL model, SIL üretim kodu, HIL gerçek donanımı test ediyor; emülatörler tehlikeli senaryoları güvenle simüle ediyor.
- Her arıza testi stimulus → detection → reaction → recovery çerçevesiyle tanımlanıyor.
Kaynaklar
- ISO 26262 — doğrulama ve validasyon.
- Gregory L. Plett, Battery Management Systems — test metodolojisi.
Teknik Diyagramlar
Quiz
HIL testinde neyle test edilir?
HIL, gerçek BMS donanımını gerçek zamanlı bir simülasyon (emülatör) ile test eder.
Battery emulator neden kullanılır?
Emülatör, gerçek bir hücreyi tehlikeye atmadan BMS'in tepkisini test etmeyi sağlar.
MIL ile SIL arasındaki temel fark nedir?
MIL, kontrol modelini; SIL ise gerçek derlenmiş üretim kodunu simülasyon ortamında test eder.
Test piramidinde erken aşamada (unit test) hata yakalamak neden daha avantajlıdır?
Bir hatayı unit test aşamasında yakalamak, araç testinde yakalamaktan çok daha düşük maliyetli ve risksizdir.
Test coverage (ör. MC/DC) neden ASIL seviyesi yükseldikçe daha derin olmalıdır?
Yüksek ASIL, daha sıkı geliştirme ve doğrulama (ör. daha derin kod kapsama) gerektirir.
Pre-charge timeout test senaryosunda 'Expected behavior' ne olmalıdır?
Beklenen davranış, sistemin anormal yavaş şarjı zaman aşımıyla doğru tespit etmesidir.
Sözlük (Glossary)
| English Term | Türkçe | Tanım |
|---|---|---|
| HIL (Hardware-in-the-Loop) | Donanım-Döngüde Test | Gerçek BMS donanımının, gerçek zamanlı batarya simülasyonuyla test edilmesi. |
| SIL (Software-in-the-Loop) | Yazılım-Döngüde Test | Üretilen yazılım kodunun model/simülasyon ortamında test edilmesi. |
| Battery Emulator | Batarya Emülatörü | Gerçek hücreler yerine programlanabilir hücre gerilimleri üreten donanım; BMS testini güvenli kılar. |
| MIL (Model-in-the-Loop) | Model-Döngüde Test | Henüz üretim koduna dönüşmemiş kontrol modelinin simülasyon ortamında test edilmesi. |
| Cell Emulator | Hücre Emülatörü | Tek tek hücre gerilimlerini simüle eden, gerçek hücre olmadan tehlikeli senaryoları güvenle test etmeyi sağlayan donanım. |
| Test Coverage | Test Kapsama | Yazılan testlerin kodun/gereksinimlerin ne kadarını kapsadığını ölçen gösterge; ASIL yükseldikçe derinleşir. |