Nothing Special   »   [go: up one dir, main page]

DE102019214162A1 - Verfahren und Vorrichtung zum Simulieren eines Steuergerätes - Google Patents

Verfahren und Vorrichtung zum Simulieren eines Steuergerätes Download PDF

Info

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
Application number
DE102019214162.5A
Other languages
English (en)
Inventor
Rainer Baumgaertner
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE102019214162.5A priority Critical patent/DE102019214162A1/de
Priority to US16/943,381 priority patent/US11494535B2/en
Priority to CN202010973056.0A priority patent/CN112528350A/zh
Publication of DE102019214162A1 publication Critical patent/DE102019214162A1/de
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/593Depth or shape recovery from multiple images from stereo images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/12Timing analysis or timing optimisation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10004Still image; Photographic image
    • G06T2207/10012Stereo 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 (Prozess 11 - 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 (Prozess 12 - 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 der 3 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)

  1. 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).
  2. 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).
  3. Verfahren (10) nach Anspruch 2, gekennzeichnet durch mindestens eines der folgenden Merkmale: - die Informationen umfassen Sequenznummern oder - die Informationen umfassen Zeitstempel.
  4. Verfahren (10) nach einem der Ansprüche 1 bis 3, gekennzeichnet durch folgende Merkmale: - das Modellieren (11) erfolgt mittels einer formalen Sprache.
  5. Verfahren (10) nach Anspruch 4, gekennzeichnet durch folgendes Merkmal: - die Sprache ist eine domänenspezifische Beschreibungssprache.
  6. Verfahren (10) nach einem der Ansprüche 1 bis 5, 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.
  7. 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.
  8. Computerprogramm, welches eingerichtet ist, das Verfahren (10) nach einem der Ansprüche 1 bis 7 auszuführen.
  9. Maschinenlesbares Speichermedium, auf dem das Computerprogramm nach Anspruch 8 gespeichert ist.
  10. Vorrichtung (30), die eingerichtet ist, das Verfahren (10) nach einem der Ansprüche 1 bis 7 auszuführen.
DE102019214162.5A 2019-09-17 2019-09-17 Verfahren und Vorrichtung zum Simulieren eines Steuergerätes Pending DE102019214162A1 (de)

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)

* Cited by examiner, † Cited by third party
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

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