DE102019214162A1 - Verfahren und Vorrichtung zum Simulieren eines Steuergerätes - Google Patents
Verfahren und Vorrichtung zum Simulieren eines Steuergerätes Download PDFInfo
- Publication number
- DE102019214162A1 DE102019214162A1 DE102019214162.5A DE102019214162A DE102019214162A1 DE 102019214162 A1 DE102019214162 A1 DE 102019214162A1 DE 102019214162 A DE102019214162 A DE 102019214162A DE 102019214162 A1 DE102019214162 A1 DE 102019214162A1
- Authority
- DE
- Germany
- Prior art keywords
- software component
- control device
- relationships
- outputs
- following features
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
- G06T7/55—Depth or shape recovery from multiple images
- G06T7/593—Depth or shape recovery from multiple images from stereo images
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/12—Timing analysis or timing optimisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10004—Still image; Photographic image
- G06T2207/10012—Stereo images
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Data Mining & Analysis (AREA)
- Computational Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Probability & Statistics with Applications (AREA)
- Evolutionary Biology (AREA)
- Operations Research (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Algebra (AREA)
- Bioinformatics & Computational Biology (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Debugging And Monitoring (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Stored Programmes (AREA)
Abstract
Verfahren (10) zum Simulieren eines Steuergerätes, gekennzeichnet durch folgende Merkmale:- für mindestens eine Softwarekomponente (20) des Steuergerätes werden Beziehungen zwischen Eingängen (21) und Ausgängen (22) der Softwarekomponente (20) modelliert (11) und- anhand der Beziehungen wird ein Laufzeitverhalten des Steuergerätes simuliert (12).
Description
- Die vorliegende Erfindung betrifft ein Verfahren zum Simulieren eines Steuergerätes. Die vorliegende Erfindung betrifft darüber hinaus eine entsprechende Vorrichtung, ein entsprechendes Computerprogramm sowie ein entsprechendes Speichermedium.
- Stand der Technik
- Der Begriff des hochautomatisierten Fahrens (highly automated driving, HAD) bezeichnet gemeinhin eine Entwicklungsstufe zwischen dem assistierten Fahren, bei welchem der Fahrer durch zahlreiche (oft getrennte) Fahrerassistenzsysteme bei der Fahraufgabe unterstützt wird, und dem autonomen Fahren, bei welchem das Fahrzeug gänzlich selbsttätig und ohne Einwirkung des Fahrers fährt. Beim hochautomatisierten Fahren verfügt das Fahrzeug gewissermaßen über eine eigene Intelligenz, die vorausplant und die Fahraufgabe zumindest in den meisten Situationen übernehmen könnte. Fahrer und Steuergeräte (electronic control units, ECUs) führen zusammen das Fahrzeug, wobei der menschliche Fahrer jederzeit bestimmt, wie stark er in das Fahrverhalten des Fahrzeuges eingreift.
-
WO2018146000A1 offenbart ein Steuergerät für ein Kraftfahrzeug, das eingerichtet ist, mehrere Anwendungen und Zwischenanwendungen (middleware) zu betreiben und einen durch die Anwendungen und Zwischenanwendungen gemeinsam nutzbaren Speicher (shared memory) umfasst. Die Zwischenanwendungen sind eingerichtet, eine Interprozesskommunikation zwischen den Anwendungen über den Speicher abzuwickeln. -
DE102018207172A1 beschreibt ein Verfahren zum Simulieren eines cyberphysischen Systems (CPS) in einer realen Betriebssituation, bei dem Messdaten und interne Zustände von Softwarekomponenten des Systems in der Betriebssituation abgespeichert und ein Simulator mit den Messdaten und Zuständen parametriert wird. - Offenbarung der Erfindung
- Die Erfindung stellt ein Verfahren zum Simulieren eines Steuergerätes, eine entsprechende Vorrichtung, ein entsprechendes Computerprogramm sowie ein entsprechendes Speichermedium gemäß den unabhängigen Ansprüchen bereit.
- Der erfindungsgemäße Ansatz fußt hierbei auf der Erkenntnis, dass zahlreiche Fahrerassistenzsysteme für hochautomatisiertes Fahren aktuell in der Entstehungsphase sind. Es ist damit zu rechnen, dass die Komplexität entsprechender Software jene herkömmlicher fahrzeugtechnischer (automotive) Anwendungen um Größenordnungen übersteigt.
- Der vorgeschlagenen Lösung liegt ferner die Einsicht zugrunde, dass Systeme für hochautomatisiertes Fahren technisch aufwändig sind. Dies gilt ebenso für zukünftige Robotik-Systeme. Sie benötigen eine hohe Rechenleistung und einen großen Speicher und haben deutlich erhöhte Sicherheitsanforderungen. Das Berücksichtigen der funktionalen Sicherheitsanforderungen erhöht zusätzlich die Systemkomplexität.
- Das nachfolgend beschriebene Verfahren trägt schließlich dem Umstand Rechnung, dass heutige Systeme im automobilen Umfeld oft als direkt kommunizierende Applikationen oder Komponenten ausgelegt sind. Daten werden, sobald sie verfügbar sind, sofort anderen Applikationen zur Verfügung gestellt. Der exakte zeitliche Zusammenhang der einzelnen Applikationen kann dabei aus technischen Gründen oftmals nicht exakt vorgegeben werden, z. B. da die Anzahl unabhängiger Rechenkerne weit hinter der Anzahl der darauf ausführbaren (executable) Applikationen zurückbleibt. Der exakte Sendezeitpunkt spezifischer Daten ist daher mitunter schwer zu bestimmen. Das Alter der Daten, die von einer bestimmten Applikation empfangen werden, ist entsprechend unvorhersagbar und hängt in hohem Maße von Laufzeitbedingungen ab.
- Eine frühzeitig im Entwicklungsprozess ansetzende modellbasierte Simulation von Zeitsteuerung und -abstimmung (timing) ist daher wünschenswert, um bereits in der Entwurfsphase (design) zeitliche „Engpässe“ erkennen und die Erfüllbarkeit nichtfunktionaler Anforderungen prüfen zu können. Während der Entwicklung kann auf diese Weise zudem regelmäßig das Design mit der Implementierung abgestimmt werden. Am Markt verfügbare Werkzeuge für diese Aufgaben sind z. B. die TA Tool Suite der Vector Informatik GmbH oder chronSIM der INCHRON GmbH.
- In einem zahlreiche Softwarekomponenten umfassenden Steuergerät stellt vor allem die Simulation der Weitergabe von Informationen ein typisches Problem dar. Timing-Simulationen liegt im Allgemeinen kein äquivalentes funktionales Modell zugrunde. Nach dem Stand der Technik ist daher in der Regel eine manuelle Implementierung oder eine starke Vereinfachung der Annahmen erforderlich.
- Gerade angesichts der im Hinblick auf hochautomatisierte Fahrfunktionen geschaffenen Option, Aktivierungsbedingungen zu modellieren, ist diese Herangehensweise mit Einschränkungen und hohem Aufwand verbunden.
- Ein Vorzug der erfindungsgemäßen Lösung liegt vor diesem Hintergrund in der eröffneten Möglichkeit, durch eine abstrakte Modellierung der Weitergabe von Informationen Timing-Modelle automatisch zu erstellen und die Güte der Timing-Simulation deutlich zu verbessern. Zudem wird das Single-Source-Prinzip unterstützt.
- Durch die in den abhängigen Ansprüchen aufgeführten Maßnahmen sind vorteilhafte Weiterbildungen und Verbesserungen des im unabhängigen Anspruch angegebenen Grundgedankens möglich.
- Figurenliste
- Ausführungsbeispiele der Erfindung sind in den Zeichnungen dargestellt und in der nachfolgenden Beschreibung näher erläutert. Es zeigt:
-
1 das Flussdiagramm eines Verfahrens gemäß einer ersten Ausführungsform. -
2 auszugsweise das Komponentendiagramm eines zu simulierenden Steuergerätes. -
3 schematisch einen Arbeitsplatzrechner gemäß einer zweiten Ausführungsform. - Ausführungsformen der Erfindung
-
1 illustriert den grundlegenden Ablauf eines erfindungsgemäßen Verfahrens (10 ). - Dessen Anwendung sei nunmehr anhand der in
2 abgebildeten Softwarekomponente (20 ) eines Steuergerätes erläutert. Mittels einer domänenspezifischen Beschreibungssprache werden die Beziehungen zwischen den Eingängen (21 ) und Ausgängen (22 ) der Softwarekomponente (20 ) modelliert (Prozess11 -1 ). Dazu wird die Funktion „lnput-output-relation()‟ eingeführt, welche es erlaubt, die Weitergabe von Informationen wie Sequenznummern und Zeitstempeln von den Eingängen (21 ) an die Ausgänge (22 ) zu beschreiben. Im vorliegenden Beispiel gibt etwa „lnput-output-relation(disparity, Stereo image (seq())“ an, dass die Softwarekomponente (20 ) die Sequenznummer am Ausgang „disparity“ vom Eingang „Stereo image“ bezieht. - In entsprechender Weise spezifiziert der Ausdruck „lnput-output-relation(disparity, Stereo image (timestamp)“, dass die Softwarekomponente (
20 ) den Zeitstempel am Ausgang „disparity“ vom Eingang „Stereo image“ bezieht. - Vorzugsweise modelliert „lnput-output-relation(disparity, activation_timestamp)“, dass die Softwarekomponente (
20 ) den Zeitstempel am Ausgang „disparity“ vom Zeitpunkt ihrer eigenen Aktivierung ableitet. - Damit sind diese Beziehungen in Aktivierungsbedingung, Simulation und vorzugsweise Implementierung vergleichbar und verwendbar.
- Vorzugsweise wird zusätzlich die Funktion „output-expectation()“ eingeführt, welche angibt, wie viele Abtastwerte (samples) am Ausgang der Softwarekomponente (
20 ) abhängig von ihrer Aktivierung und ihren Eingängen (21 ) generiert werden. Damit lassen sich in der anschließenden Timing-Simulation (Prozess12 -1 ) die statistischen Eingangsverteilungen auf die Ausgangsverteilungen der Softwarekomponente (20 ) abbilden. - Dieses „Produktivitätsmaß“ ist zudem wichtig, um die statistische Verteilung der durch die Aktivierungsbedingung modellierten Aktivierung abhängiger Komponenten zu simulieren. Letzteres wiederum ist notwendig, da in deren Aktivierungsbedingung die an den Ausgängen (
22 ) produzierten Abtastwerte als Stimuli einfließen. - Schließlich modelliert „output-expectation(disparity, Stereo image , 1)“, dass die Softwarekomponente (
20 ) bei Aktivierung pro Abtastwert am Eingang „Stereo image“ einen Wert am Ausgang „disparity“ produziert. Entsprechend modelliert „output-expectation(disparity, 1)“, dass die Softwarekomponente (20 ) pro Aktivierung einen Abtastwert am Ausgang „disparity“ produziert. - Dieses Verfahren (
10 ) kann beispielsweise in Software oder Hardware oder in einer Mischform aus Software und Hardware beispielsweise in einer Arbeitsstation (30 ) implementiert sein, wie die schematische Darstellung der3 verdeutlicht. - ZITATE ENTHALTEN IN DER BESCHREIBUNG
- Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.
- Zitierte Patentliteratur
-
- WO 2018146000 A1 [0003]
- DE 102018207172 A1 [0004]
Claims (10)
- Verfahren (10) zum Simulieren eines Steuergerätes, gekennzeichnet durch folgende Merkmale: - für mindestens eine Softwarekomponente (20) des Steuergerätes werden Beziehungen zwischen Eingängen (21) und Ausgängen (22) der Softwarekomponente (20) modelliert (11) und - anhand der Beziehungen wird ein Laufzeitverhalten des Steuergerätes simuliert (12).
- Verfahren (10) nach
Anspruch 1 , gekennzeichnet durch folgendes Merkmal: - die Beziehungen umfassen eine Weitergabe von Informationen von den Eingängen (21) an die Ausgänge (22). - Verfahren (10) nach
Anspruch 2 , gekennzeichnet durch mindestens eines der folgenden Merkmale: - die Informationen umfassen Sequenznummern oder - die Informationen umfassen Zeitstempel. - Verfahren (10) nach einem der
Ansprüche 1 bis3 , gekennzeichnet durch folgende Merkmale: - das Modellieren (11) erfolgt mittels einer formalen Sprache. - Verfahren (10) nach
Anspruch 4 , gekennzeichnet durch folgendes Merkmal: - die Sprache ist eine domänenspezifische Beschreibungssprache. - Verfahren (10) nach einem der
Ansprüche 1 bis5 , gekennzeichnet durch folgende Merkmale: - für die Softwarekomponente (20) werden ferner Erwartungen hinsichtlich einer Produktivität der Ausgänge (22) modelliert (11) und - das Simulieren (12) erfolgt ferner anhand der Erwartungen. - Verfahren (10) nach
Anspruch 6 , gekennzeichnet durch folgendes Merkmal: - die Erwartungen hinsichtlich der Produktivität werden abhängig von einer Aktivität an den Eingängen (21) angegeben. - Computerprogramm, welches eingerichtet ist, das Verfahren (10) nach einem der
Ansprüche 1 bis7 auszuführen. - Maschinenlesbares Speichermedium, auf dem das Computerprogramm nach
Anspruch 8 gespeichert ist. - Vorrichtung (30), die eingerichtet ist, das Verfahren (10) nach einem der
Ansprüche 1 bis7 auszuführen.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102019214162.5A DE102019214162A1 (de) | 2019-09-17 | 2019-09-17 | Verfahren und Vorrichtung zum Simulieren eines Steuergerätes |
US16/943,381 US11494535B2 (en) | 2019-09-17 | 2020-07-30 | Method and device for simulating a control unit |
CN202010973056.0A CN112528350A (zh) | 2019-09-17 | 2020-09-16 | 用于对控制器进行模拟的方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102019214162.5A DE102019214162A1 (de) | 2019-09-17 | 2019-09-17 | Verfahren und Vorrichtung zum Simulieren eines Steuergerätes |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102019214162A1 true DE102019214162A1 (de) | 2021-03-18 |
Family
ID=74686533
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102019214162.5A Pending DE102019214162A1 (de) | 2019-09-17 | 2019-09-17 | Verfahren und Vorrichtung zum Simulieren eines Steuergerätes |
Country Status (3)
Country | Link |
---|---|
US (1) | US11494535B2 (de) |
CN (1) | CN112528350A (de) |
DE (1) | DE102019214162A1 (de) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4184058B2 (ja) * | 2002-12-05 | 2008-11-19 | 本田技研工業株式会社 | 制御装置 |
US8781808B2 (en) * | 2005-10-10 | 2014-07-15 | Sei Yang Yang | Prediction-based distributed parallel simulation method |
EP2940586B1 (de) * | 2014-04-29 | 2023-03-01 | Hitachi, Ltd. | Verfahren und System zum Testen von Steuerungssoftware eines gesteuerten Systems |
DE102017201966A1 (de) | 2017-02-08 | 2018-08-09 | Robert Bosch Gmbh | Steuergerät für ein Kraftfahrzeug und entsprechendes Kraftfahrzeug |
DE102018207172A1 (de) | 2018-05-08 | 2018-06-21 | Robert Bosch Gmbh | Verfahren und Vorrichtung zum Simulieren eines cyber-physischen Systems |
-
2019
- 2019-09-17 DE DE102019214162.5A patent/DE102019214162A1/de active Pending
-
2020
- 2020-07-30 US US16/943,381 patent/US11494535B2/en active Active
- 2020-09-16 CN CN202010973056.0A patent/CN112528350A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
CN112528350A (zh) | 2021-03-19 |
US20210081584A1 (en) | 2021-03-18 |
US11494535B2 (en) | 2022-11-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2685382B1 (de) | Verfahren und Vorrichtung zum Erstellen und Testen eines Steuergeräteprogramms | |
DE102014110096A1 (de) | Testeinrichtung zum Echtzeittest eines virtuellen Steuergeräts | |
EP3451202B1 (de) | Verfahren zum erzeugen eines auf einem testgerät ausführbaren modells eines technischen systems und testgerät | |
EP2866111B1 (de) | Testen eines Steuergerätes mittels einer Testumgebung | |
DE102017211433A1 (de) | Verfahren zum Durchführen eines Funktionstests eines Steuergeräts in einem Hardware-in-the-Loop-Test, HIL-Test, sowie HIL-Prüfstand und Steuergerät | |
DE102019124018A1 (de) | Verfahren zum Optimieren von Tests von Regelsystemen für automatisierte Fahrdynamiksysteme | |
DE102017120016A1 (de) | Verfahren zur Konfiguration eines zum Testen eines elektronischen Steuergeräts eingerichteten Testgeräts sowie Konfigurationssystem | |
DE102019134053A1 (de) | Verfahren zur kontinuierlichen Absicherung im Fahrversuch applizierter automatisierter Fahrfunktionen | |
EP3179372A1 (de) | Verfahren und vorrichtung zum testen einer mehrzahl von steuereinheiten einer technischen einheit | |
EP3306295A1 (de) | Verfahren und vorrichtung zum testen elektronischer steuerungen, insbesondere zum testen von automobilsteuerungen | |
DE102019214162A1 (de) | Verfahren und Vorrichtung zum Simulieren eines Steuergerätes | |
WO2021089499A1 (de) | Verfahren und system zum prüfen einer automatisierten fahrfunktion durch reinforcement-learning | |
DE102018207172A1 (de) | Verfahren und Vorrichtung zum Simulieren eines cyber-physischen Systems | |
DE102014002593A1 (de) | Dynamisches speicherprogrammierbares Steuergerät | |
DE10228610A1 (de) | Verfahren zum Überprüfen eines auf einer elektronischen Recheneinheit ablaufenden Steuerprogramms | |
DE102021208759A1 (de) | Verfahren zum Trainieren eines Algorithmus des maschinellen Lernens zum Erzeugen von Testspezifikationen zum Testen eines auf Software basierenden Systems | |
DE102021200927A1 (de) | Verfahren und Vorrichtung zur Analyse eines insbesondere in einen zumindest teilautonomen Roboter oder Fahrzeug eingebetteten Systems | |
EP3933593A1 (de) | Verfahren und computerprogramm zum testen eines technischen systems | |
DE102020206327A1 (de) | Verfahren und Vorrichtung zum Prüfen eines technischen Systems | |
DE102014105109A1 (de) | Verfahren und Vorrichtung zum Erzeugen und Abarbeiten von Testfällen | |
DE102019214160A1 (de) | Verfahren und Vorrichtung zum Automatisieren einer Fahrfunktion | |
DE102017120013A1 (de) | Verfahren zur Konfiguration eines zum Testen eines elektronischen Steuergeräts eingerichteten Testgeräts sowie Konfigurationssystem | |
DE102016207768A1 (de) | Vorrichtung und Verfahren zum Bereitstellen einer Menge von Modultypen | |
DE102019120165B4 (de) | Fünf Stufen der Baubarkeit | |
DE102016101853A1 (de) | Computerimplementiertes Verfahren zur Simulation eines Restbus-Steuergeräteverbundes |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R079 | Amendment of ipc main class |
Free format text: PREVIOUS MAIN CLASS: G06F0017500000 Ipc: G06F0030000000 |