close

Anmelden

Neues Passwort anfordern?

Anmeldung mit OpenID

dSPACE und das V-Modell für Steuergeräte- Entwicklung Wie

EinbettenHerunterladen
Agenda
ƒ
dSPACE und das V-Modell für SteuergeräteEntwicklung
ƒ
Wie funktioniert Rapid Control Prototyping
ƒ
TargetLink: Vom Model zum Code
ƒ
Ein Wort zu HIL
ƒ
Praxisbeispiele
dSPACE (1/3)
dSPACE: Gegründet 1988 in Paderborn
Entwicklung
Mitarbeiter:
Marketing,
Administration
ƒ Über 650 Mitarbeiter weltweit,
davon über 70 % Ingenieure
ƒ Ständiges Mitarbeiterwachstum
Applikation
dSPACE (2/3)
Standorte:
ƒ Hauptsitz in Paderborn
ƒ Tochterfirmen in USA, Frankreich,
Großbritanien und Japan
Repäsentanten in 11 weiteren Ländern
Paderborn
Holzgerlingen/
Stuttgart
Pfaffenhofen/
Munich
Produktportfolio:
ƒ Unabhängiger Anbieter von Entwicklungslösungen für
Steuergeräte-Software und mechatronischen Regelungen
ƒ Weltweit mehr als 12 000
dSPACE Systeme im Einsatz
ƒ Kunden: 80 % automobiles Umfeld
20 % Luft und Raumfahrt,
Antriebstechnik, Industrieautomation
dSPACE (3/3)
Was macht dSPACE?
„Entwicklungswerkzeuge
für
Steuergeräte-Software“
Reglerentwicklung mit dem V-Zyklus
Steuergeräte
Applikation –
Kalibrierung im
Fahrzeug
z. B. mit dSPACE
Caldesk
Grafische Modellierung
und Offline Simulation –
Simulation auf dem PC
z. B. mit
Matlab/Simulink
Hardware in the
Loop - Steuergeräte
Test am Simulator
z. B. mit dSPACE HIL
Simulator
Rapid Control Prototyping –
Ausführung auf einer
Echtzeit Hardware
z. B. dSPACE Microautobox
Automatische
Seriencodegenerierung –
Code für den Zielprozessor
z. B. mit dSPACE TargetLink
Wie funktioniert Rapid Control Prototyping (1/2)
Wie funktioniert Rapid Control Prototyping (2/2)
TargetLink – Seriencode aus Simulink/Stateflow (1/2)
Codegenerierung aus grafisch spezifizierten Funktionsmodellen
Konkreter: Blockschaltbilder und Zustandsdiagramme aus
Simulink/ Stateflow
Simulink Blocksatz
TargetLink Blocksatz
C -C o d e
/* pictrl */
#define "dstypes.h
#define G1 (Int32)0x
void pictrl(UInt16 r
{
Int16 e,S2,G_1,x1,
UInt8 i;
}
Automatische
Ersetzung
Codegenerierung
e = (Int16)(ref >>
G_1 = (Int16)(((a>
x1 = (e >> 4)+x1;
G_2 = (Int16)(((a>
*u = G2 + G1;
ASAP
.a2l
OSEK
.oil
TargetLink – Seriencode aus Simulink/Stateflow (2/2)
Vorteile
ƒ Konsistenz zwischen Modell und C-Code
ƒ Einheitlicher Code
ƒ Optimierter Code (auch Anpassung an spezielle
Compiler-Kombinationen)
ƒ Erstellung von Kalibrierungsinformation
ƒ Aktuelle Code-Dokumentation
Was sind MIL, SIL und PIL?
• Funktionsvalidierung
• Referenzplots
• Quantisierungseffekte
• Genauigkeitsanalyse
• Eingabe von weiteren CCode Optionen
•
•
•
•
Laufzeitmessung
Stackverbrauch
RAM/ROM Bedarf
Letzte Verifikation
TargetLink: Optimierung
Unangenehme Wahrheit: Kein Fließkommaarithmetik
Problem:
In der Serienproduktion/Massenproduktion werden fast
ausschließlich Ganzzahlprozessoren verwendet! Jeder
Variablen ist daher ein fester Wertebereich zuzuordnen.
Beispiel 1:
Wertebereich von einer Variablen: 0-500
Gewählter Datentyp: 8 Bit
=>Skalierung: 2^1
Eine Skalierung von 2^1 bei einer 8 Bit Variablen deckt einen
Bereich von 0-512 ab, bei einer Auflösung von 2 ab.
Beispiel 2:
Im Code sieht eine Skalierung dann z.B. so aus:
y = (x1 >> 2) + (x2 >> 1);
oder so
y = (UInt8) (((UInt16)x1 + ((UInt16)x2 << 1) >> 2);
Einschub: Was ist Autosar?
Das Hauptziel von Autosar ist die Trennung von
• Applikation und
• Infrastruktur
Dies wird erreicht:
• indem eine Componente nicht mehr direkt sondern nur
noch über Interfaces mit dem System kommuniziert
Beispiel:
Zwei Software Komponenten möchten Daten
austauschen. Sie implementieren dazu ein bestimmtes
Makro. Laufen diese Komponenten später auf dem
gleichen Steuergerät, so wird dieses Makro zu einer
Globalen Variablen expandiert. Anderenfalls erfolgt der
Austausch über den Bus.
TargetLink unterstützt Autosar
Ein Wort zu HIL
Test von Getriebe, Fahrzeugdynamik,
Diesel – Ottomotors etc. mit HIL
Anwendungsbeispiel Protoytyping (1/2)
Anti-Lärm-Klappen für den Eurocopter
mit dSPACE Mircroautobox Autobox
Anwendungsbeispiel Protoytyping (2/2)
Universität Linz entwickelt mit dSPACE Hardware
eine zweibeinige Laufmaschine
Anwendungsbeispiel für Codegeneration (1/2)
Jeep Grand Cherokee von Daimer-Chryler
Der Code für das Allradgetriebe wurde
von TargetLink generiert.
Anwendungsbeispiel für Codegeneration (2/2)
Der Code für das Kabinendrucksystem des A380’s
wurde von TargetLink generiert
Anwendungsbeispiel für HIL
Kombination aus MTS-Prüfstand und dSPACE
Simulator zur Entwicklung und
Validierung mechatronischer Fahrwerksysteme
Vielen Dank
für die Aufmerksamkeit
Document
Kategorie
Technik
Seitenansichten
9
Dateigröße
679 KB
Tags
1/--Seiten
melden