Präsentation herunterladen
Die Präsentation wird geladen. Bitte warten
Veröffentlicht von:Mitzi Lamping Geändert vor über 11 Jahren
1
Seminar Software-Engineering für softwareintensive Systeme
ASCET MD / INTECRIO Seminar Software-Engineering für softwareintensive Systeme
2
Softwarewerkzeuge der Firma ETAS ASCET
Überblick Softwarewerkzeuge der Firma ETAS ASCET Entwurf von Steuerungssoftware Unterstützt Prototyping und Simulation Codegenerierung für versch. Zielsysteme INTECRIO Integriert Steuerungsmodelle aus unterschiedlichen Anwendungen (ASCET MD, Matlab/Simulink, usw...)
3
Modularer Aufbau ASCET ASCET MD ASCET RP ASCET SE ASCET SE
Entwurf & Simulation ASCET RP Rapid Prototyping & Testing ASCET SE Codegenerierung für ... ASCET SE ... unterschiedliche Zielsysteme
4
Arbeitsablauf in ASCET MD
Spezifizieren einzelner Komponenten Module Klassen / Zustandsautomaten Testen der Einzelkomponenten durch Simulation Zusammenfassung der Komponenten zu einem Projekt Schedule für Gesamtsystem festlegen Testen des Gesamtsystems
5
Komponenten Klassen Module Mehrere Instanzen Nur eine Instanz
Beliebige Parameter / ein Rückgabewert Keine Interprozess-kommunikation Module Nur eine Instanz Keine Parameter / Rückgabewerte Echtzeit-Interprozess-kommunkikation durch Messages Elemente: Variablen / Parameter Schnittstellen: Prozesse / Methoden / Variablen / Messages Algorithmen: spezifiziert durch Blockdiagramme / ESDL / C
6
Modellierung von Komponenten
Blockdiagramme intuitiver für Ingenieure (Schaltplansemantik) größtenteils äquivalent zu ESDL ESDL an Java angelehnt für automotiven Bereich ausgelegt: nur Datentypen udisc, sdisc, cont, log (kein String!) keine Vererbung, keine Methodenüberladung ANSI C für BD und ESDL : zielspezifische Generierung des Codes hier : zielspezifische Programmierung erforderlich keine Datenkonsistenzprüfung durch ASCET MD
7
Elemente in Blockdiagrammen (1)
Messages Parameter Variablen Arithmetische Operatoren x /... Vergleichsoperatorn < > = ... Logische Operatorn & | ! Bedingter Operator If (condition) Then trueValue; Else fasleValue; Komplexe Elemente
8
Elemente in Blockdiagrammen (2)
Komplexe Elemente
9
Semantik von Blockdiagrammen
Anschlüsse können verbunden werden Sequenznummern bestimmen Ausführungsreihenfolge
10
Vergleich Blockdiagramme / ESDL (1)
ndiff = n_nominal - n; pi_value = Integrator.integrate(ndiff) + (ndiff * Kp); if (pi_value > air_low) { air_nominal = pi_value; } else { air_nominal = air_low; }
11
Vergleich Blockdiagramme / ESDL (2)
While (i < 10) { c = b * c; i = i + 1; }
12
Zustandsautomaten History Werden wie Klassen behandelt
Trigger als öffentliche Methode Reihenfolge der Transitionen festlegbar (Prioritäten) Werden wie Klassen behandelt Hierarchische Zustände Eintritts- / Austritts- und statische Aktionen
13
Arbeitsablauf in ASCET MD
Spezifizieren einzelner Komponenten Module Klassen / Zustandsautomaten Testen der Einzelkomponenten durch Simulation Zusammenfassung der Komponenten zu einem Projekt Schedule für Gesamtsystem festlegen Testen des Gesamtsystems
14
Simulation Simulation einzelner Komponenten oder des Gesamtsystems
Animierte Automaten Eingabe jederzeit modifizierbar Vielfältige Ausgaben Zahlenwerte Oszilloskop ...
15
Arbeitsablauf in ASCET MD
Spezifizieren einzelner Komponenten Module Klassen / Zustandsautomaten Testen der Einzelkomponenten durch Simulation Zusammenfassung der Komponenten zu einem Projekt Schedule für Gesamtsystem festlegen Testen des Gesamtsystems
16
Projekt Task Projekte & Tasks Enthält alle Komponenten
Legt Scheduling der Prozesse fest „Gehirn“ des eingebetteten Kontrollsystems Task Fasst Prozesse mit gleicher Frequenz zusammen Führt diese in fester Reihenfolge aus verschiedene Typen (Alarm-Tasks, Init-Tasks, ...) präemptiv / kooperativ / nicht-unterbrechbar
17
Scheduling Keine integrierte Schedulability Analyse!
( eigenes Werkzeug RTA-Trace)
18
INTECRIO Modellierungs-Tools unterschiedlich gut geeignet für bestimmte Aspekte (z.B. MatLab Differentialgleichungen zur Beschreibung der Umwelt) Verschiedene Notationen (nicht einheitlich wie z.B. UML) Zusammenführung verschiedener Modelle gewünscht Zwei Möglichkeiten Überführung der Modelle ineinander (gleiche Semantik nötig) Co-Simulation in einem Framework
19
Co-Simulation Generierter C-Code kann über ein Interface in INTECRIO integriert werden
20
Integration mehrerer Modelle
Vorhandene Interfaces für ASCET und MatLab / SIMULINK Erweiterbar durch benutzerspezifizierte Interfaces INCODIO generiert Interface aus vorhandenem C-Code Verwendung mehrerer alternativer Modellierungen aus unterschiedlichen Tools Umschaltung zur Systemlaufzeit
21
Prototyping Verbindung mit ES1000-Testsystem
Unterschiedliche Erweiterungskarten Schnittstellen Simulationskarten D/A-Wandler Verschiedene Analysefunktionen
Ähnliche Präsentationen
© 2025 SlidePlayer.org Inc.
All rights reserved.