Vývoj a testování elektronických řídicích jednotek pro automobily Jiří Sehnal Humusoft spol. s r.o. sehnal@humusoft.com EVV 2011 Automobilová elektronika Praha, 7. 6. 2011 Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 1
O společnosti HUMUSOFT Název firmy: Humusoft s.r.o. Založena: 1990 Počet zaměstnanců: 18 Sídlo: Praha 8, Pobřežní 20 MATLAB, Simulink Comsol Multiphysics dspace - vývojové systémy Vývoj vlastního SW & HW Multiprocesorové stanice HeavyHorse Výukové modely Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 2
Počítačová síť na kolech Počet elektronických řídicích jednotek (ECU): 40 ve Volkswagenu Golf BMW 7 a Mercedes S-Class cca. 70 Software v Mercedesu S-Class: 1990 1 MByte 1998 100 MByte 2005 > 500 MByte Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 3
Složitost elektronických systémů je vážný problém Složitost architektury ECU Celkem 40 až 80 ECU Několik subsystémů ECU ECU si musí předávat data Složitost propojení - Stovky až tisíce signálů - Různé komunikační protokoly - Diagnostika a správa po sběrnici Složitost jednotlivých ECU - 50 až 500 softwarových modulů - Aplikační SW a základní software Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 4
Vývojový proces jako V-cyklus Návrh řízení a offline simulace Kalibrace Rapid Control Prototyping Simulace Hardware-in-the-Loop Automatické generování produkčního kódu Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 5
MATLAB Prostředí pro technické výpočty Numerické výpočty Analýza a vizualizace dat de facto industry-standard, programovací jazyk vysoké úrovně umožnující snadný vývoj algoritmů Toolboxy pro zpracování signálu a obrazu, statistiku, optimalizaci, symbolickou matematiku a další oblasti Základ nástrojů firmy MathWorks Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 6
Simulink Prostředí pro modelování, simulace a implementace dynamických systémů Lineární, nelineární, diskrétní, spojité a hybridní systémy včetně systémů s více vzorkovacími frekvencemi Prostředí pro Model-Based Design, fyzikální modelování, automatické generování kódu, verifikaci Otevřená architektura umožňuje integraci modelů z jiných prostředí Aplikace v řízení, zpracování signálu, komunikacích a dalších oblastech inženýrské praxe Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 7
Vývojový cyklus - Model Based Design Požadavky a specifikace Modely prostředí Modely chování systému Návrh Modely prostředí Modely fyzických komponent Implementace Algoritmy Spustitelný model Simulace Algoritmy - Snižuje potřebu fyzických prototypů - Umožňuje systematickou what if analýzu C, C, C++ MCU MCU DSP DSP Automatické generování kódu VHDL, Verilog FPG FPG ASIC A Testy a Verifikace - Redukce času a úsilí - Minimalizace chyb při programování Hardware-in-the- Loop Processor-in-the- Loop Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 8
Model Based Design - modelování a simulace Vytvoření modelu regulované soustavy Návrh regulátoru Ověření návrhu offline simulací MATLAB Simulink System Identification Toolbox Simulink Design Optimization MATLAB Simulink Stateflow Control System Toolbox Simulink Control Design Simulink Design Optimization MATLAB Simulink Stateflow Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 9
Vývojový proces jako V-cyklus Návrh řízení a offline simulace Kalibrace Rapid Control Prototyping Simulace Hardware-in-the-Loop Automatické generování produkčního kódu Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 10
Model Based Design - Rapid Control Prototyping Simulink Coder Překladač C Knihovna I/O Návrh regulátoru Zdrojový kód C Prototypová řídicí jednotka MATLAB Simulink Simulink Coder Knihovna I/O podle cílové platformy - dspace RTI Překladač C Prototypová řídicí jednotka dspace MicroAutoBox, RapidPro Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 11
Vývojový proces jako V-cyklus Návrh řízení a offline simulace Kalibrace Rapid Control Prototyping Simulace Hardware-in-the-Loop Automatické generování produkčního kódu Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 12
Model Based Design - Generování produkčního kódu Produkční řídicí jednotka - Navržena s ohledem na minimální náklady v sériové výrobě - Malý výkon CPU - Málo paměti - Většinou nemá floating-point ALU - Náročné na optimalizaci TargetLink Model-Based Design - Model odladěný na prototypové ECU se použije i na produkční ECU - Použije se generátor produkčního kódu - Implementace fixed-point aritmetiky - Optimalizace využití paměti - Optimalizace na konkrétní CPU - Kvalita ručně psaného kódu TargetLink Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 13
TargetLink - Pracovní postup Bloky TargetLinku a Simulinku lze kombinovat v jednom modelu Uživatel rozhodne která část modelu se použije pro generování kódu Možnost simulovat systémy s uzavřenou smyčkou s částmi používajícími TargetLink Je možná simulace celého modelu Standardní Simulinková část stimulace soustava Část s TargetLinkem pro generování kódu Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 14
TargetLink - Pracovní postup Simulink Blockset TargetLink Blockset ECU automatický převod generování kódu Host floating-point simulation (MIL) návrh algoritmů testy chování systému scaling (aut. nebo ruční) detekce přetečení referenční data Host Prod. Code simulation (SIL) efekty pevné řádové čárky kvantizační chyby saturace a přetečení implementační volby Target Prod. Code E V M simulation (PIL) validace kódu doba výpočtu velikost zásobníku velikost RAM / ROM konečná verifikace Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 15
TargetLink - Příklad meziblokové optimalizace RCP Code bool1 = (In >= 10); bool2 = (In <= -10); bool3 = bool1 bool2; tmp1 = table_lookup(table, In); tmp2 = In; if (bool3) out = tmp1; else out = tmp2; - Odstraní zbytečný kód - Zkrátí dobu výpočtu - Odstraní dočasné proměnné TargetLink Code if ((In >= UT) (In <= LT)) out = table_lookup(table, In); else out = In; Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 16
TargetLink - Scaling proměnných Princip: scaling po blocích, autoscaling - na základě výsledků simulace - pro nejhorší případ Kompromis rychlosti, nároků na paměť a přesnosti: velká rychlost výpočtu malá scaling mocninou dvou scaling mocninou dvou s offsetem obecný scaling obecný scaling s offsetem f = 2 n i f = 2 n i + offs f = S i f = S i + offs Scaling dialog: malá přesnost velká Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 17
TargetLink - AUTOSAR Library AUTOSAR (AUTomotive Open System Architecture) Generování SWC podle standardu AUTOSAR Generování XML popisu SWC podle standardu AUTOSAR Snadná integrace navržených algoritmů do vývojového prostředí AUTOSAR (například EB Tresos Studio) Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 18
Vývojový proces jako V-cyklus Návrh řízení a offline simulace Kalibrace Rapid Control Prototyping Simulace Hardware-in-the-Loop Automatické generování produkčního kódu Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 19
Simulace Hardware In the Loop (HIL) Systém je ověřen jako ve skutečném prostředí Testování implementace HW i SW Testování bez fyzických efektů prototypů (chyby, vadné kontakty, stárnutí součástek) Možnost simulace poruch (přerušené spoje, zkraty, poruchy čidel atd.) Reprodukovatelnost testů Testování kritických situací bez rizika Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 20
Simulační modely ASM Soft ECU Soft ECU Model motoru Zážehový, vznětový Soft ECU Signals Engine Sensor Signals Model pohonu Pohon předních/zadních/všech kol Automatická/manuální převodovka Elasticita hřídelí Dynamika vozidla Pohyb vozidla Pneumatiky Odpružení, tlumiče Řízení Aerodynamika Brzdový systém (BrakeHydraulics) Okolní prostředí Silnice Řidič Manévry Actuator signals from ECU Environment Signals Engine Speed Torque Engine Drivetrain Torque Differential Tire Speed Vehicle Dynamics Environment Sensor signals to ECU Sensor Signals Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 21
HIL Simulátor motoru dspace Reálná řídicí jednotka Real-time hardware s aplikací a I/O Simulace poruch Reálné a simulované zátěže Reálné i virtuální přístroje Diagnostika Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 22
Vývojový proces jako V-cyklus Návrh řízení a offline simulace Kalibrace Rapid Control Prototyping Simulace Hardware-in-the-Loop Automatické generování produkčního kódu Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 23
Nové trendy Nové návrhy jsou dělané jako Model Based Design Generování cílového kódu je zavedená technologie Nové oblasti aplikací sofistikované asistenční systémy Nové snímače (radar, kamera, GPS) HIL je standardem pro testování Redukce počtu ECU sdružováním funkcí problémy se přesouvají ze síťové integrace do SW integrace (SystemDesk) AUTOSAR FPGA implementace, generování VHDL Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 24
Děkuji za pozornost Jiří Sehnal, Humusoft spol. s r. o., sehnal@humusoft.com 25