DE102009056758B4 - Verfahren zur Beeinflussung eines Steuergerätes und Manipulationseinheit - Google Patents

Verfahren zur Beeinflussung eines Steuergerätes und Manipulationseinheit Download PDF

Info

Publication number
DE102009056758B4
DE102009056758B4 DE102009056758.5A DE102009056758A DE102009056758B4 DE 102009056758 B4 DE102009056758 B4 DE 102009056758B4 DE 102009056758 A DE102009056758 A DE 102009056758A DE 102009056758 B4 DE102009056758 B4 DE 102009056758B4
Authority
DE
Germany
Prior art keywords
memory
time
control unit
ecu
value
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.)
Active
Application number
DE102009056758.5A
Other languages
English (en)
Other versions
DE102009056758A1 (de
Inventor
Marc Dressler
Daniel Hofmann
Bastian Kellers
Thorsten Hufnagel
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.)
Dspace GmbH
Original Assignee
Dspace GmbH
Dspace Digital Signal Processing and Control Engineering 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 Dspace GmbH, Dspace Digital Signal Processing and Control Engineering GmbH filed Critical Dspace GmbH
Priority to DE102009056758.5A priority Critical patent/DE102009056758B4/de
Priority to JP2010015277A priority patent/JP5452250B2/ja
Publication of DE102009056758A1 publication Critical patent/DE102009056758A1/de
Priority to JP2013272735A priority patent/JP5904989B2/ja
Application granted granted Critical
Publication of DE102009056758B4 publication Critical patent/DE102009056758B4/de
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3648Software debugging using additional hardware
    • G06F11/3656Software debugging using additional hardware using a specific debug interface

Abstract

Verfahren zur Beeinflussung eines Steuergerätes (ECU) mittels einer Manipulationseinheit (IN), wobei das Steuergerät (ECU) wenigstens einen Mikrokontroller (PC), wenigstens einen Speicher (SP1) mit einer Vielzahl von Speicherzellen und wenigstens eine Debug-Schnittstelle (TRDE) umfasst, und die Debug-Schnittstelle (TRDE) eine Überwachungs-Funktionalität zum Beobachten von Speicherinhalten des Speichers (SP1) aufweist, dadurch gekennzeichnet, dass mittels der Debug-Schnittstelle (TRDE) ein erster Zeitpunkt (t1) des Steuergerätes (ECU) für das Schreiben eines ersten Wertes (V1X) in eine erste Speicherzelle des ersten Speichers (SP1) detektiert wird und mittels der von der Debug-Schnittstelle (TRDE) zu dem ersten Zeitpunkt (t1) an die Manipulationseinheit (IN) übertragenen Informationen ein Auslösezeitpunkt für eine Bearbeitungsroutine (RU1) durch die Manipulationseinheit (IN) resultiert und von der Manipulationseinheit (IN) mittels der Bearbeitungsroutine (RU1) ein zweiter Wert (V1Y) mittels der Debug-Schnittstelle (TRDE) zu einem zweiten Zeitpunkt (t2) in die erste Speicherzelle des ersten Speichers (SP1) geschrieben wird, bevor die erste Speicherzelle des ersten Speichers (SP1) von dem Steuergerät (ECU) zu einem dritten Zeitpunkt (t3) gelesen wird.

Description

  • Die vorliegende Erfindung betrifft ein Verfahren zur Beeinflussung eines Steuergerätes, gemäß dem Oberbegriff des Patentanspruchs 1 und eine Manipulationseinheit gemäß dem Oberbegriff des Patentanspruchs 12.
  • Steuergeräte werden in großer Zahl in vielen Bereichen der Technik eingesetzt. Ein besonders wichtiger Anwendungsbereich ist unter anderem die Motorsteuerung bei den Automobilen und die Steuerung von Triebwerken bei Flugzeugen.
  • Ein Verfahren zur Beeinflussung eines Steuergerätes ist aus der Druckschrift DE 10 2004 027 033 A1 bekannt. Hierbei werden mittels einem Beeinflussungsgerät unter Verwendung einer Steuergerät-Debug-Schnittstelle und eines im Beeinflussungsgerät ausgebildeten Speicherbereiches Daten des Steuergerätes in den Speicherbereich des Beeinflussungsgerät gespiegelt und unter weiterer Nutzung der Steuergerät-Debug-Schnittstelle auch Daten in den Speicher des Steuergerätes zurückgespiegelt. In einer Ausführungsform werden die Daten in dem Beeinflussungsgerät von einer Koordinationseinheit empfangen und zur zeitlichen Einordnung mit einem Zeitstempel versehen. Des Weiteren verfügt die Koordinationseinheit über Anschlüsse für interne und externer Triggersignale mittels derer es möglich ist, entsprechende Untereinheiten in dem Beeinflussungsgerät zu aktivieren und beispielsweise eine Bypassroutine anzustoßen.
  • Aus der Druckschrift DE 10 2006 062 555 A1 ist ein Verfahren zur Beobachtung eines Steuergerätes bekannt, bei dem ein Beeinflussungsgerät zur Beobachtung eines Steuergerätes wenigstens einen Mikrokontroller, wenigstens einen Speicher und wenigstens eine Debug-Schnittstelle umfasst. Mit der Debug-Schnittstelle die eine sogenannte Trace-Funktionalität aufweist, ist es möglich zu beobachtende Adressen zu überwachen. Des Weiteren sind aus der DE 10 2007 017 865 A1 , der DE 2006 002 354 A1 , der WO 00/43885 A1 und der WO 2005 041 041 A2 weitere Verfahren und Vorrichtungen bekannt.
  • Aus den bisherigen Verfahren zeigte sich, dass eine Manipulation von Steuergerätefunktionen zeitaufwändig und oft über eine sogenannte externe Bypass-Methode durchgeführt wird. Hierbei wird bei der Abarbeitung des Programms mittels im Programm des Steuergerätes fest vorgegebenen Serviceaufrufen von dem Steuergerät mittels nach außen übermittelter Triggerimpulse eine Interruptverarbeitung bei einem externen Manipulationsgerät veranlasst. Im Rahmen der Interruptverarbeitung werden die zusätzlich zur Berechnung benötigten Werte an das Manipulationsgerät übermittelt. Nach der Berechnung im Manipulationsgerät werden die geänderten Größen an das Steuergerät zurück gesendet. Indem die Serviceaufrufe fest im Programmkode des Steuergerätes eingebunden sind, ist eine nachträgliche Änderung der Serviceaufrufpunkte sehr aufwändig und je nach Steuergerätehersteller nachträglich nur mit großem Aufwand durchführbar, da beispielsweise ein bereits existierendes Steuergeräteprogramm erneut übersetzt werden müsste. Des Weiteren wird durch die Serviceaufrufpunkte die Größe des benötigten Speichers vergrößert und die Verarbeitungsgeschwindigkeit der Steuergeräteprogramme nachteilig beeinflusst.
  • Aufgabe der vorliegenden Erfindung ist es, ein Verfahren anzugeben, mittels dem sich eine Steuergerät vorteilhaft beeinflussen lässt. Weitere Aufgabe der vorliegenden Erfindung ist es, eine Manipulationseinheit zur Durchführung des Verfahrens anzugeben.
  • Die erstgenannte Aufgabe wird durch die Merkmale des Patentanspruches 1 gelöst. Die zweitgenannte Aufgabe wird durch die Merkmale des Patentanspruches 12 gelöst. Günstige Ausgestaltungsformen sind Gegenstand von Unteransprüchen.
  • Verfahren zur Beeinflussung eines Steuergerätes mittels einer Manipulationseinheit, wobei das Steuergerät wenigstens einen Mikrokontroller, wenigstens einen Speicher mit einer Vielzahl von Speicherzellen und wenigstens eine Debug-Schnittstelle umfasst, und die Debug-Schnittstelle eine Überwachungs-Funktionalität zum Beobachten von Speicherinhalten aufweist und mittels der Debug-Schnittstelle ein erster Zeitpunkt des Steuergerätes für das Schreiben eines ersten Wertes in eine erste Speicherzelle des ersten Speichers detektiert wird und mittels der von der Debug-Schnittstelle zu dem ersten Zeitpunkt an die Manipulationseinheit übertragenen Informationen ein Auslösezeitpunkt für eine Bearbeitungsroutine durch die Manipulationseinheit resultiert und von der Manipulationseinheit mittels der Bearbeitungsroutine ein zweiter Wert mittels der Debug-Schnittstelle zu einem zweiten Zeitpunkt in die erste Speicherzelle des ersten Speichers geschrieben wird, bevor die erste Speicherzelle des ersten Speichers von dem Steuergerät zu einem dritten Zeitpunkt gelesen wird.
  • Gemäß einem zweiten Aspekt der Erfindung wird eine Manipulationseinheit bereitgestellt, die zur Beeinflussung eines Steuergerätes eingerichtet ist, wobei das Steuergerät mindestens einen Mikrokontroller, mindestens einen Speicher mit einer Vielzahl von Speicherzellen und mindestens eine Debug-Schnittstelle aufweist. Des Weiteren weist die Debug-Schnittstelle eine Überwachungs-Funktionalität zum Beobachten von Speicherinhalten auf und ist eingerichtet, einen ersten Zeitpunkt des Schreibens auf eine erste Speicherzelle des ersten Speichers zu detektieren und der zugehörige erste Wert an die Manipulationseinheit zu übermitteln und die Manipulationseinheit eingerichtet ist, anhand des übermittelten Zeitpunkts eine Bearbeitungsroutine ablaufen zu lassen und mittels der Bearbeitungsroutine einen zweiten Wert zu bestimmen und mittels der eingerichteten Debug-Schnittstelle, den zweiten Wert zu einem zweiten Zeitpunkt in die erste Speicherzelle des ersten Speichers zu schreiben, bevor die erste Speicherzelle des ersten Speichers von dem Steuergerät gelesen wird.
  • Ein Vorteil des Verfahrens ist es, dass mittels der Manipulationseinheit unabhängig von Serviceaufrufen an beliebigen Programmpunkten und beliebigen Zeitpunkten das Schreiben von Werten in Speicherzellen des Steuergerätes detektierbar wird und im Nachgang sich die Werte in den jeweiligen Speicherzellen verändern lassen. Hierdurch ist das erfindungsgemäße Verfahren äußerst flexibel handhabbar und lässt sich insbesondere ohne Kenntnisse des jeweiligen Quellkodes des Steuergeräteprogramms bei einer Vielzahl von Steuergeräten von unterschiedlichen Herstellern anwenden. Ferner sind keine Anpassungen des Steuergeräteprogramms notwendig. Da bei den Programmen für die Steuergeräte die entsprechenden Serviceaufrufe mit den verbundenen Programmteilen nicht notwendig sind, lässt sich eine nachteilige Beeinflussung der Programmabarbeitung und des Speicherverbrauchs vermeiden.
  • In einer Weiterbildung des Verfahrens wird von der Manipulationseinheit untersucht bzw. überwacht, ob der zweite Zeitpunkt jeweils vor dem dritten Zeitpunkt liegt bzw. lag und in Abhängigkeit des Ergebnisses der Untersuchung wird ein vorgegebener Wert ausgegeben. Hierdurch wird es möglich, den Erfolg einer Beeinflussung d. h. ein rechtzeitiges Überschreiben von Speicherzellen zu detektieren und dem Anwender mitzuteilen. In vorteilhafter Weise werden die Überwachung und die Ausgabe mittels eines Dienstprogramms, welches in der Manipulationseinheit implementiert ist, durchgeführt.
  • In einer anderen bevorzugten Ausführungsform wird die von dem Steuergerät benötigte Zeitdauer zum Beschreiben der ersten Speicherzelle des ersten Speichers mit dem ersten Wert und einem Lesen der ersten Speicherzelle des ersten Speichers durch das Steuergerät bestimmt. Gemäß einer Weiterbildung lässt sich die Bestimmung der Zeitdauer eines Schreib-/Lesezugriffs auf eine definierte Speicherzelle mittels einer Analyse des Programmkodes des Steuergerätes durchführen. Hierzu wird beispielsweise über eine Nachverfolgung des Mikrokontroller im Steuergerät ausgeführten Programmkode analysiert. Vorzugsweise wird die Analyse des Programmkodes ohne Verwendung des Steuergerätes durchgeführt, indem die Analyse auf einem externen Gerät, insbesondere einem PC, ausgeführt wird. Die Bestimmung der relevanten Zeitpunkte erfolgt vorzugsweise mittels einer sequentiellen Auswertung des jeweiligen Befehlsatzes, dem sogenannten „instruction code”. Mit Hilfe einer typischen Ausführungszeit für jeden Befehl, die sich auf Basis des Prozessortyps und der verwendeten Taktfrequenz bestimmen lässt, wird die minimale Zeitdauer zwischen den einzelnen Schreib-/Lesezugriffen extrahiert. Ein Vorteil dieser Ausführungsform ist es, dass eine Bestimmung der Zeitdauer unabhängig von einer Ausführung des Steuergeräteprogramms unter realen Bedingungen, wie es beispielsweise bei einem eingebauten Zustand in einem Fahrzeug gegeben ist, auch im Vorfeld durchgeführt werden kann. Hiermit lässt sich das Risiko von Fehlfunktionen infolge eines fehlerhaftes Überschreiben reduzieren, indem die Zeitdauern aller auftretenden Schreib-/Lesezugriffe untersucht werden und überprüft wird, inwieweit die Ausführungszeit der Manipulationseinheit ausreichend ist, die jeweiligen Werte aus der Manipulationseinheit in den betroffenen Speicherzellen zu überschreiben. Sofern das Steuergerät nicht eingebaut ist, lasst sich eine Überprüfung auch mittels einer virtuellen Testumgebung bzw. einem Simulator durchführen, d. h. dem Steuergerät werden an seinen Schnittstellen mit realen Bedingungen vergleichbare Daten zur Verfügung gestellt.
  • Gemäß einer anderen bevorzugten Weiterbildung wird von der Manipulationseinheit mittels der Überwachungs-Funktionalität der Debug-Schnittstelle die von dem Steuergerät benötigte Zeitdauer bestimmt. In einer anderen Ausführungsform lässt sich die Bestimmung der Zeitpunkte quasi „online”, d. h. im realen Betrieb des Steuergerätes bestimmen und hiernach auch während des Betriebs des Steuergeräts in Echtzeit entscheiden, welche Speicherzelle des ersten Speichers mit einem zweiten Wert durch die Manipulationseinheit beschrieben wird.
  • Gemäß einer weiteren Ausführungsform lassen sich von der Manipulationseinheit anhand der Größe der Zeitintervalle der im Steuergerät auftretenden Schreib-/Lesezugriffe die beeinflussbaren Speicherzellen des Steuergeräts mittels eines Dienstprogramms ausgeben. Hierdurch erhält der Nutzer die Möglichkeit ganz gezielt bestimmte d. h. für eine Beeinflussung geeignete Speicherzellen vorzugsweise im Vorfeld zu bestimmen.
  • In einer bevorzugten Weitebildung wird zu einem vierten Zeitpunkt der zweite Wert in eine erste Speicherzelle eines zweiten Speichers geschrieben wird und von der Manipulationseinheit der zweite Wert mittels der Bearbeitungsroutine aus der ersten Speicherzelle des zweiten Speichers gelesen. Untersuchungen der Anmelderin haben gezeigt, dass der zweite Speicher vorzugsweise eine Vielzahl von Speicherzellen aufweist und sich sowohl in dem Steuergerät als auch in den der Manipulationseinheit anordnen lässt. Ferner wird die erste Speicherzelle des zweiten Speichers in einer besonders bevorzugten Ausführungsform mittels eines Fernsteuergeräts beschrieben. Um sicherzustellen, dass der zweite Wert in den ersten Speicher geschrieben wird, bevor die erste Speicherzelle des ersten Speichers von dem Steuergerät zu einem dritten Zeitpunkt gelesen wird, ist es bevorzugt, dass der vierte Zeitpunkt vor dem zweiten Zeitpunkt liegt. Hiermit wird der zweite Wert der Manipulationsroutine vor dem Zeitpunkt zur Verfügung gestellt, an dem mittels der Manipulationsroutine der zweite Wert in die erste Speicherzelle des ersten Speichers geschrieben wird.
  • Untersuchungen der Anmelderin haben gezeigt, dass es bei besonders zeitkritischen abzuarbeitenden Aufgaben innerhalb des Steuergerätes bevorzugt ist, den zweiten Wert in der ersten Speicherzelle des zweiten Speichers zu einem vierten Zeitpunkt bereitzustellen und wobei der vierte Zeitpunkt vor dem ersten Zeitpunkt liegt. Hierdurch lässt sich eine Verzögerung bei einer Abarbeitung von Befehlen vermeiden, da bereits vor dem erstmaligen Beschreiben der ersten Speicherzelle des ersten Speichers bereits der zweite Wert für ein anschließendes Überschreiben des ersten Wertes bereitgestellt ist.
  • Gemäß einer alternativen Ausführungsform wird der zweite Wert mittels eines Fernsteuergeräts d. h. mittels eines sogenannten RCP-Geräts in die erste Speicherzelle des zweiten Speichers geschrieben. Insbesondere wenn die Komplexität der Manipulationseinheit klein gehalten werden soll, lassen sich aufwändige Berechnungen und Eingaben vorteilhaft mittels eines sehr rechenstarken Fernsteuergeräts bevorzugt erledigen. Hierbei lässt sich der zweite Speicher sowohl in der Manipulationseinheit ausbilden, als auch in dem Fernsteuergerät. In der ersten Alternative wird der zweite Speicher bevorzugt mittels des Fernsteuergeräts beschrieben.
  • Das erfindungsgemäße Verfahren soll nachfolgend anhand der Ausführungsbeispiele im Zusammenhang mit den schematisierten Zeichnungen erläutert werden. Gleichartige Funktionen in den Zeichnungsunterlagen sind mit identischen Bezugszeichen versehen. Es zeigen, die
  • 1 eine schematische Darstellung einer mit einem Steuergerät verbundenen Manipulationseinheit,
  • 2 eine schematische Darstellung einer zeitlichen Abfolge einer Datenänderung innerhalb des Steuergeräts durch die Manipulationseinheit der 1,
  • 3 eine schematische Darstellung einer mit einem Steuergerät verbundenen Manipulationseinheit mit einer angeschlossenen Fernsteuereinheit,
  • 4 eine schematische Darstellung einer zeitlichen Abfolge einer Datenänderung mit Bereitstellung des zweiten Wertes durch ein Fernsteuergerät, bevor der erste Wert gelesen wird,
  • 5 eine schematische Darstellung einer zeitlichen Abfolge einer Datenänderung durch die Manipulationseinheit.
  • Gemäß der Abbildung der 1 ist eine Manipulationseinheit IN mittels einer Datenleitung 10 mit einem Steuergerät ECU verschaltet. Des Weiteren weist das Steuergerät ECU einen Mikrokontroller PC mit einer Debug-Schnittstelle TRDE, die eine Überwachungs-Funktionalität (trace-Funktionalität) beinhaltet, auf. Der Mikrokontroller PC und die Debug-Schnittstelle TRDE, der vorzugsweise als integraler Bestandteil des Mikrokontrollers ausgeführt ist, sind mittels einer Datenleitung 20 mit einen Speicher SP1 verbunden. Vorzugsweise ist der Speicher als Bestandteil des Mikrokontrollers realisiert. Innerhalb der Manipulationseinheit IN sind im Allgemeinen unterschiedliche Dienstprogramme und insbesondere eine Bearbeitungsroutine implementiert (nicht dargestellt).
  • In der Abbildung der 2 ist ein detaillierter zeitlicher Ablauf einer Beeinflussung einer Speicherzelle mittels der Zusammenarbeit der Manipulationseinheit IN mit der Debug-Schnittstelle TRDE des Steuergerätes ECU der 1 dargestellt. Hierzu ist die zeitliche Abfolge der dargestellten Schritte über einer Zeitachse t aufgetragen. Innerhalb des Steuergerätes ECU wird mittels des Steuergeräteprogramms eine erste Aufgabe TA1 ausgeführt und im Rahmen der Abarbeitung der ersten Aufgabe TA1 ein erste Wert V1X zu einem ersten Zeitpunkt t1 in eine erste Speicherzelle des Speichers SP1 geschrieben. Das Schreiben des ersten Wertes V1X an dem ersten Zeitpunkt t1 wird zusammen mit dem Wert V1X mittels der Debug-Schnittstelle TRDE an die Manipulationseinheit IN übermittelt. In der Manipulationsgerät IN werden die übertragenen Informationen ein Auslösezeitpunkt bestimmt anhand dessen eine Bearbeitungsroutine RU1 angestoßen und abgearbeitet wird. Von der Manipulationseinheit IN wird mittels der Bearbeitungsroutine RU1 und mittels der Debug-Schnittstelle TRDE ein zweiter Wert V1Y an einem zweiten Zeitpunkt t2 in die Speicherzelle des ersten Speichers SP1 geschrieben, bevor die erste Speicherzelle von dem Steuergerät ECU während der Abarbeitung einer zweiten Aufgabe TA2 zu einem dritten Zeitpunkt t3 gelesen wird.
  • In der Abbildung der 3 ist zusätzlich zu der aus der 1 vorbekannten Manipulationseinheit IN ein Fernsteuergerät RCP ausgebildet. Im Folgenden werden nur die Unterschiede zu der in Zusammenhang mit den Zeichnungsunterlagen der 1 erläuterten Ausführungen angeführt. Das Fernsteuergerät RCP ist mittels einer Datenverbindung 30 mit der Manipulationseinheit IN verschaltet. In der Manipulationseinheit IN ist die Bearbeitungsroutine RUI als Box dargestellt. Die Bearbeitungsroutine RUI ist mit einem zweiten Speicher SP2 mit einer Vielzahl von Speicherzellen mittels einer Leitung 40 verbunden. Ferner weist das Fernsteuergerät RCP eine Kontrollroutine CO, welche ebenfalls als Box abgebildet ist, auf.
  • Mittels der Kontrollroutine CO und wird mittels der Manipulationseinheit IN ein zweiter Wert V1Y in die erste Speicherzelle des zweiten Speichers SP2 geschrieben. Der zweite Wert V1Y lässt sich anschließend mittels der Bearbeitungsroutine RUI mittels der Leitung 40 aus dem zweiten Speicher SP2 auslesen und über die Datenleitung 10 in den ersten Speicher SP1 ablegen.
  • In der 4 ist eine erste Ausführungsform einer möglichen zeitlichen Abfolge der Eingriffe auf die Speicherbereiche dargestellt. Im Folgenden werden nur die Unterschiede zu der in Zusammenhang mit den Zeichnungsunterlagen der 2 und der 3 erläuterten Ausführungen angeführt. Innerhalb des Fernsteuergerätes RCP wird mittels der Kontrollroutine CO zu einem vierten Zeitpunkt T4 der zweite Wert V1Y in den zweiten Speicher SP2 abgelegt. Hierbei liegt der vierte Zeitpunkt T4 noch vor dem ersten Zeitpunkt T1. Ein Vorteil der Abfolge ist es, dass auch bei sehr schnellen Schreib/Lesezugriffen auf den ersten Speicher SP1 der zweite Wert V1Y bereits vor dem Zeitpunkt T1 an dem der Schreibzugriff auf den ersten Speicher SP1 von der Debug-Schnittstelle TRDE detektiert wird, der zweite Wert V1Y zum Beschreiben in den ersten Speicher SP1 bereitsteht. Hierdurch entstehen keine Verzögerungen bei einem Abarbeiten der mittels des Steuergerätes abzuarbeitenden Aufgaben TA1 und TA2.
  • In der 5 ist eine weitere Ausführungsform einer möglichen zeitlichen Abfolge der Eingriffe auf die Speicherbereiche dargestellt. Im Folgenden werden nur die Unterschiede zu der in Zusammenhang mit den Zeichnungsunterlagen der 4 erläuterten Ausführungen angeführt. Innerhalb des Fernsteuergerätes RCP wird mittels der Kontrollroutine CO zu einem vierten Zeitpunkt T4 der zweite Wert V1Y in den zweiten Speicher SP2 abgelegt. Hierbei liegt der vierte Zeitpunkt T4 nach dem ersten Zeitpunkt T1 jedoch vor dem Zeitpunkt T2. Ein Vorteil der Ausführungsform ist es, dass bei einer Abhängigkeit des zweiten Wertes V1Y von dem ersten Wert V1X, der erste Wert V1X durch die Bearbeitungsroutine RUI der Fernsteuereinheit RCP zur Verfügung gestellt wird, um vorzugsweise in der Fernsteuereinheit RCP eine Berechnung durchzuführen. Insbesondere wenn das Fernsteuergerät RCP mit einer gegenüber der Manipulationseinheit IN und/oder dem Steuergerät ECU wesentlich erhöhten Rechenleistung ausgestattet ist, lassen sich auch komplexe Algorithmen mittels des Fernsteuergerätes RCP abarbeiten und den zweiten Wert V1Y schneller errechnen, als wenn der zweite Wert V1Y in der Manipulationseinheit IN oder von dem Steuergerät ECU berechnet werden würde. In dem Zeitraum zwischen Triggerung der Kontrollroutine CO mittels der Bearbeitungsroutine RUI und der zur Verfügungstellung des zweiten Wertes V1Y lässt sich die Ausführung der Bearbeitungsroutine RUI unterbrechen oder im Stand BY bis spätestens zu dem Zeitpunkt T2 ablaufen an dem der zweite Wert V1Y in den ersten Speicher SP1 abgelegt wird.

Claims (14)

  1. Verfahren zur Beeinflussung eines Steuergerätes (ECU) mittels einer Manipulationseinheit (IN), wobei das Steuergerät (ECU) wenigstens einen Mikrokontroller (PC), wenigstens einen Speicher (SP1) mit einer Vielzahl von Speicherzellen und wenigstens eine Debug-Schnittstelle (TRDE) umfasst, und die Debug-Schnittstelle (TRDE) eine Überwachungs-Funktionalität zum Beobachten von Speicherinhalten des Speichers (SP1) aufweist, dadurch gekennzeichnet, dass mittels der Debug-Schnittstelle (TRDE) ein erster Zeitpunkt (t1) des Steuergerätes (ECU) für das Schreiben eines ersten Wertes (V1X) in eine erste Speicherzelle des ersten Speichers (SP1) detektiert wird und mittels der von der Debug-Schnittstelle (TRDE) zu dem ersten Zeitpunkt (t1) an die Manipulationseinheit (IN) übertragenen Informationen ein Auslösezeitpunkt für eine Bearbeitungsroutine (RU1) durch die Manipulationseinheit (IN) resultiert und von der Manipulationseinheit (IN) mittels der Bearbeitungsroutine (RU1) ein zweiter Wert (V1Y) mittels der Debug-Schnittstelle (TRDE) zu einem zweiten Zeitpunkt (t2) in die erste Speicherzelle des ersten Speichers (SP1) geschrieben wird, bevor die erste Speicherzelle des ersten Speichers (SP1) von dem Steuergerät (ECU) zu einem dritten Zeitpunkt (t3) gelesen wird.
  2. Verfahren gemäß Anspruch 1, dadurch gekennzeichnet, dass von der Manipulationseinheit (IN) überwacht wird, ob der zweite Zeitpunkt (t2) vor dem dritten Zeitpunkt (t3) liegt und in Abhängigkeit des Ergebnisses der Untersuchung ein vorgegebener Wert ausgegeben wird, um ein rechtzeitiges Überschreiben von Speicherzellen zu detektieren und dem Anwender mitzuteilen.
  3. Verfahren gemäß Anspruch 1, dadurch gekennzeichnet, dass die von dem Steuergerät (ECU) benötigte Zeitdauer (T1) zum Beschreiben der ersten Speicherzelle mit dem ersten Wert (V1X) und einem Lesen der ersten Speicherzelle durch das Steuergerät (ECU) bestimmt wird.
  4. Verfahren gemäß Anspruch 3, dadurch gekennzeichnet, dass die Bestimmung der Zeitdauer (T1) mittels einer Analyse des Programmkodes des Steuergerätes (ECU) durchgeführt wird.
  5. Verfahren gemäß Anspruch 4, dadurch gekennzeichnet, dass die Analyse des Programmkodes ohne Verwendung des Steuergerätes (ECU) durchgeführt wird.
  6. Verfahren gemäß Anspruch 3, dadurch gekennzeichnet, dass von der Manipulationseinheit (IN) mittels der Überwachungs-Funktionalität der Debug-Schnittstelle (TRDE) die von dem Steuergerät (ECU) benötigte Zeitdauer (T1) bestimmt wird.
  7. Verfahren nach einem der Ansprüche 3 bis 6, dadurch gekennzeichnet, dass von der Manipulationseinheit (IN) anhand der Größe der Zeitintervalle der im Steuergerät (ECU) auftretenden Schreib-/Lesezugriffe die beeinflussbaren Speicherzellen des Steuergeräts (ECU) ausgegeben werden.
  8. Verfahren nach einem der Ansprüche 1 bis 7, dadurch gekennzeichnet, dass zu einem vierten Zeitpunkt (T0) der zweite Wert (V1Y) in eine erste Speicherzelle eines zweiten Speichers (SP2) geschrieben wird und von der Manipulationseinheit (IN) der zweite Wert (V1Y) mittels der Bearbeitungsroutine (RUI) aus der ersten Speicherzelle des zweiten Speichers (SP2) gelesen wird.
  9. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass der vierte Zeitpunkt (T0) vor dem zweiten Zeitpunkt (T2) liegt.
  10. Verfahren nach Anspruch 8 oder Anspruch 9, dadurch gekennzeichnet, dass der vierte Zeitpunkt (T0) vor dem ersten Zeitpunkt (T1) liegt.
  11. Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass der zweite Wert (V1Y) mittels eines Fernsteuergeräts (RCP) in die erste Speicherzeile des zweiten Speichers (SP2) geschrieben wird.
  12. Manipulationseinheit (IN) eingerichtet zur Beeinflussung eines Steuergerätes (ECU), wobei das Steuergerät (ECU) mindestens einen Mikrokontroller (PC), mindestens einen Speicher (SP1) und mindestens eine Debug-Schnittstelle (TRDE) aufweist, und die Debug-Schnittstelle (TRDE) eine Überwachungs-Funktionalität zum Beobachten von Speicherinhalten des Speichers (SP1) aufweist, dadurch gekennzeichnet, dass die Debug-Schnittstelle (TRDE) eingerichtet ist, einen ersten Zeitpunkt (t1) des Schreibens auf eine erste Speicherzelle des ersten Speichers (SP1) zu detektieren und der zugehörige erste Wert (V1X) an die Manipulationseinheit (IN) zu übermitteln, die Manipulationseinheit (IN) eingerichtet ist, anhand des übermittelten Zeitpunkts (t1) eine Bearbeitungsroutine (RU1) ablaufen zu lassen und mittels der Bearbeitungsroutine (RU1) einen zweiten Wert (V1Y) zu bestimmen und mittels der eingerichteten Debug-Schnittstelle (TRDE) den zweiten Wert (V1Y) zu einem zweiten Zeitpunkt (t2) in die erste Speicherzelle des ersten Speichers (SP1) zu schreiben, bevor die erste Speicherzelle des ersten Speichers (SP1) Von dem Steuergerät (ECU) gelesen wird.
  13. Manipulationseinheit (IN) nach Anspruch 12, dadurch gekennzeichnet, dass eine erste Speicherzelle eines zweiten Speichers (SP2) zur Aufnahme des zweiten Werte (V1Y) vorgesehen ist.
  14. Manipulationseinheit (IN) nach Anspruch 13, dadurch gekennzeichnet, dass die erste Speicherzelle eines zweiten Speichers (SP2) von einem Fernsteuergerät (RCP) beschreibbar ist.
DE102009056758.5A 2009-01-28 2009-12-04 Verfahren zur Beeinflussung eines Steuergerätes und Manipulationseinheit Active DE102009056758B4 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE102009056758.5A DE102009056758B4 (de) 2009-01-28 2009-12-04 Verfahren zur Beeinflussung eines Steuergerätes und Manipulationseinheit
JP2010015277A JP5452250B2 (ja) 2009-01-28 2010-01-27 制御装置を調整するための方法および操作ユニット
JP2013272735A JP5904989B2 (ja) 2009-01-28 2013-12-27 制御装置を調整するための方法および調整ユニット

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
DE102009006517.2 2009-01-28
DE102009006517 2009-01-28
DE102009056758.5A DE102009056758B4 (de) 2009-01-28 2009-12-04 Verfahren zur Beeinflussung eines Steuergerätes und Manipulationseinheit

Publications (2)

Publication Number Publication Date
DE102009056758A1 DE102009056758A1 (de) 2010-07-29
DE102009056758B4 true DE102009056758B4 (de) 2017-07-27

Family

ID=42282751

Family Applications (2)

Application Number Title Priority Date Filing Date
DE102009056758.5A Active DE102009056758B4 (de) 2009-01-28 2009-12-04 Verfahren zur Beeinflussung eines Steuergerätes und Manipulationseinheit
DE102009058652A Pending DE102009058652A1 (de) 2009-01-28 2009-12-16 Verfahren zur Beeinflussung eines Steuergerätes und Manipulationseinheit

Family Applications After (1)

Application Number Title Priority Date Filing Date
DE102009058652A Pending DE102009058652A1 (de) 2009-01-28 2009-12-16 Verfahren zur Beeinflussung eines Steuergerätes und Manipulationseinheit

Country Status (3)

Country Link
US (1) US8074118B2 (de)
JP (3) JP5452250B2 (de)
DE (2) DE102009056758B4 (de)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8171341B2 (en) 2009-01-28 2012-05-01 Dspace Digital Signal Processing And Control Engineering Gmbh Method for controlling an operating mechanism and a manipulation unit
US8166344B2 (en) 2009-01-28 2012-04-24 Dspace Digital Signal Processing And Control Engineering Gmbh Method for controlling an operating mechanism and a manipulation unit
US8074118B2 (en) 2009-01-28 2011-12-06 Dspace Digital Signal Processing And Control Engineering Gmbh Method for influencing a control unit and manipulation unit
WO2012077704A1 (ja) 2010-12-07 2012-06-14 日本電気株式会社 デバッグスタブサーバ、デバッグ方法およびプログラム
EP2869145B1 (de) * 2013-10-29 2016-04-27 dSPACE digital signal processing and control engineering GmbH Verfahren zur Beeinflussung eines Steuerprogramms eines Steuergerätes
CN105556402A (zh) 2013-12-09 2016-05-04 帝斯贝思数字信号处理和控制工程有限公司 用于影响控制设备的控制程序的方法
DE102015110729A1 (de) 2014-07-21 2016-01-21 Dspace Digital Signal Processing And Control Engineering Gmbh Anordnung zur teilweisen Freigabe einer Debuggingschnittstelle
CN104299495B (zh) * 2014-11-13 2016-09-21 南京富士通南大软件技术有限公司 汽油发动机电控教学实验系统及其模拟方法
CN106475950B (zh) * 2016-12-19 2020-10-30 北京小米移动软件有限公司 螺丝刀的控制方法及装置
DE102017203556A1 (de) 2017-03-06 2018-09-06 Robert Bosch Gmbh Gesteuerte maschine, gerät und verfahren zur inbetriebnahme und/oder wartung einer solchen gesteuerten maschine

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000043885A1 (de) * 1999-01-19 2000-07-27 Siemens Aktiengesellschaft Verfahren zum tracen von daten
WO2005041041A2 (de) * 2003-10-23 2005-05-06 Siemens Aktiengesellschaft Verfahren und anordnung zur laufzeitmessung von funktionen
DE60019750T2 (de) * 1999-06-11 2005-09-29 Microsoft Corp., Redmond Allgemeines api zur gerätefernsteuerung
DE102004027033A1 (de) * 2004-03-15 2005-10-13 Dspace Gmbh Beeinflussungsgerät für Steuergeräte
DE102006002354A1 (de) * 2006-01-18 2007-07-19 Robert Bosch Gmbh Verfahren zum Debuggen eines Mikrocontrollers, Mikrocontrollervorrichtung und Debugvorrichtung
DE102007017865A1 (de) * 2007-04-13 2008-11-13 Dspace Digital Signal Processing And Control Engineering Gmbh Adaptions-Element und Testanordnung sowie Verfahren zum Betrieb derselben

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06284161A (ja) * 1993-03-26 1994-10-07 Mazda Motor Corp 電子制御ユニット、調整装置、電子制御ユニットと調整装置との間の通信装置及びその使用方法
US6009370A (en) * 1993-07-26 1999-12-28 Hitachi, Ltd. Control unit for vehicle and total control system therefor
EP0636955B1 (de) * 1993-07-26 1998-11-04 Hitachi, Ltd. Steuerungseinheit für ein Fahrzeug und ein gesamtes Steuerungssystem hierfür
US5740199A (en) * 1994-03-23 1998-04-14 Motorola Inc. High speed wire-or communication system and method therefor
JP3246833B2 (ja) * 1994-07-08 2002-01-15 株式会社日立製作所 自動車制御装置及び自動車制御方法
JP3352557B2 (ja) * 1994-12-27 2002-12-03 マツダ株式会社 電子制御ユニットのモニタ方法
US5978937A (en) * 1994-12-28 1999-11-02 Kabushiki Kaisha Toshiba Microprocessor and debug system
DE19536490C2 (de) 1995-09-29 1999-01-21 Daimler Benz Ag Verfahren zum Einschreiben von Daten in einen Speicher eines Steuergerätes
JPH09319727A (ja) * 1996-05-31 1997-12-12 Hitachi Ltd データプロセッサ及びデータ処理システム
JPH10214201A (ja) * 1997-01-29 1998-08-11 Mitsubishi Electric Corp マイクロコンピュータ
JP3508507B2 (ja) * 1997-10-13 2004-03-22 株式会社デンソー 電子制御ユニットの開発支援装置
US5894549A (en) * 1997-12-12 1999-04-13 Scenix Semiconductor, Inc. System and method for fault detection in microcontroller program memory
JP2000227862A (ja) * 1999-02-08 2000-08-15 Toyota Motor Corp データ処理装置
JP4253110B2 (ja) * 2000-09-04 2009-04-08 株式会社日立製作所 車両制御システム
US6948098B2 (en) * 2001-03-30 2005-09-20 Cirrus Logic, Inc. Circuits and methods for debugging an embedded processor and systems using the same
US20020144235A1 (en) * 2001-03-30 2002-10-03 Charles Simmers Debugging embedded systems
DE10148109B4 (de) * 2001-09-28 2006-10-12 Infineon Technologies Ag Verfahren zum Speichern oder Weiterleiten von Daten
US7080283B1 (en) * 2002-10-15 2006-07-18 Tensilica, Inc. Simultaneous real-time trace and debug for multiple processing core systems on a chip
DE10303490A1 (de) 2003-01-30 2004-08-12 Robert Bosch Gmbh Steuergerät für ein Kraftfahrzeug und Kommunikationsverfahren dafür
US7042913B2 (en) * 2003-09-30 2006-05-09 Nortel Networks Limited Method and system for writing data to memory elements
DE10352172A1 (de) 2003-11-05 2005-06-09 Robert Bosch Gmbh Verfahren und Vorrichtung zur Anpassung von Funktionen zur Steuerung von Betriebsabläufen
DE102004041523A1 (de) 2004-08-27 2006-03-02 Robert Bosch Gmbh Verfahren zum Betreiben eines Steuergeräts
US20070006166A1 (en) * 2005-06-20 2007-01-04 Seagate Technology Llc Code coverage for an embedded processor system
US7522369B1 (en) * 2005-07-15 2009-04-21 Marvell International Ltd. Circuits, architectures, apparatus, systems, and methods for maintaining constant spacing in a read/write apparatus for data storage
JP4496205B2 (ja) * 2006-12-18 2010-07-07 日立オートモティブシステムズ株式会社 制御用マイクロコンピュータの検証装置および車載用制御装置
DE102006062555B4 (de) 2006-12-29 2018-08-16 Dspace Digital Signal Processing And Control Engineering Gmbh Verfahren zur Beobachtung eines Steuergeräts
US20080162900A1 (en) * 2006-12-29 2008-07-03 Andre Rolfsmeier System, Method and Apparatus for Observing a Control Device
JP2010020494A (ja) * 2008-07-09 2010-01-28 Mitsubishi Electric Corp 保護制御装置
US8074118B2 (en) 2009-01-28 2011-12-06 Dspace Digital Signal Processing And Control Engineering Gmbh Method for influencing a control unit and manipulation unit

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000043885A1 (de) * 1999-01-19 2000-07-27 Siemens Aktiengesellschaft Verfahren zum tracen von daten
DE60019750T2 (de) * 1999-06-11 2005-09-29 Microsoft Corp., Redmond Allgemeines api zur gerätefernsteuerung
WO2005041041A2 (de) * 2003-10-23 2005-05-06 Siemens Aktiengesellschaft Verfahren und anordnung zur laufzeitmessung von funktionen
DE102004027033A1 (de) * 2004-03-15 2005-10-13 Dspace Gmbh Beeinflussungsgerät für Steuergeräte
DE102006002354A1 (de) * 2006-01-18 2007-07-19 Robert Bosch Gmbh Verfahren zum Debuggen eines Mikrocontrollers, Mikrocontrollervorrichtung und Debugvorrichtung
DE102007017865A1 (de) * 2007-04-13 2008-11-13 Dspace Digital Signal Processing And Control Engineering Gmbh Adaptions-Element und Testanordnung sowie Verfahren zum Betrieb derselben

Also Published As

Publication number Publication date
US20100192015A1 (en) 2010-07-29
JP2014123381A (ja) 2014-07-03
JP2010174891A (ja) 2010-08-12
DE102009058652A1 (de) 2010-07-29
JP2010173633A (ja) 2010-08-12
JP5452250B2 (ja) 2014-03-26
JP5431188B2 (ja) 2014-03-05
JP5904989B2 (ja) 2016-04-20
DE102009056758A1 (de) 2010-07-29
US8074118B2 (en) 2011-12-06

Similar Documents

Publication Publication Date Title
DE102009056758B4 (de) Verfahren zur Beeinflussung eines Steuergerätes und Manipulationseinheit
EP2851815A1 (de) Testeinrichtung zum Echtzeittest eines virtuellen Steuergeräts
DE102014102551A1 (de) Maschine und Verfahren zum Evaluieren von fehlschlagenden Softwareprogrammen
DE102012224276B4 (de) Verzögerte Ausführung auf mehreren Prozessoren
WO2004049159A2 (de) Einrichtung und verfahren zur analyse von eingebetteten systemen
EP3080668B1 (de) Verfahren zur beeinflussung eines steuerprogramms eines steuergeräts
DE19539353A1 (de) Programmierbarer Kontroller, der ermöglicht, daß eine externe periphere Vorrichtung einen internen Betriebszustand einer CPU-Einheit überwacht
DE102006062555A1 (de) Verfahren zur Beobachtung eines Steuergeräts
DE102013000857A1 (de) Kompakte Funktionsablaufprotokollierung
DE102019109258A1 (de) Wellenformanzeigevorrichtung
DE102017005608B4 (de) Numerische Steuerung und Variablen-Ermittlungsverfahren
DE102016101344A1 (de) Verfahren zur Konfiguration eines für das Testen eines Steuergeräts eingerichteten Testgeräts
EP2592504B1 (de) Verfahren zur Abschätzung eines Ressourcenverbrauchs bei der Erzeugung eines Steuergeräteprogrammcodes
EP3377949B1 (de) Verfahren zum betreiben eines steuergeräts sowie zum externen bypassing eingerichtetes steuergerät
DE112022001202T5 (de) Prüf- und Messsystem
DE102011052512A1 (de) Verfahren zur Verarbeitung von Daten in einem Beeinflussungsgerät
DE19903302B4 (de) Verfahren und Vorrichtung zur Überprüfung der Funktion eines Rechners
EP1936452A1 (de) Verfahren und Vorrichtung zur dynamischen Behandlung von Objekten eines Simulationsmodells
DE102011052511A1 (de) Verfahren zur Verarbeitung von Daten in einem Beeinflussungsgerät
EP1646946B1 (de) Zugriff auf eine speicherprogrammierbare steuerung
EP2634700A1 (de) Verfahren und Entwicklungsumgebung zur Überwachung eines ablaufenden Programms
DE10131317A1 (de) Steuergerät und Verfahren zum Testen eines Steuergerätes
DE102011079429A1 (de) Performancesimulation von medizintechnischen Prozeduren in einer Client-Server-Umgebung
EP2128727A1 (de) Verfahren und Computerprogrammprodukt zur Bereitstellung eines speicherplatzreduzierten Steuerprogrammes
EP2557462B1 (de) Verfahren zur Verarbeitung von Daten in einem Beeinflussungsgerät

Legal Events

Date Code Title Description
OM8 Search report available as to paragraph 43 lit. 1 sentence 1 patent law
8110 Request for examination paragraph 44
R016 Response to examination communication
R016 Response to examination communication
R016 Response to examination communication
R016 Response to examination communication
R018 Grant decision by examination section/examining division
R020 Patent grant now final
R081 Change of applicant/patentee

Owner name: DSPACE GMBH, DE

Free format text: FORMER OWNER: DSPACE DIGITAL SIGNAL PROCESSING AND CONTROL ENGINEERING GMBH, 33102 PADERBORN, DE