DE102009056758B4 - Verfahren zur Beeinflussung eines Steuergerätes und Manipulationseinheit - Google Patents
Verfahren zur Beeinflussung eines Steuergerätes und Manipulationseinheit Download PDFInfo
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3648—Software debugging using additional hardware
- G06F11/3656—Software 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 derDE 10 2007 017 865 A1 , derDE 2006 002 354 A1 , derWO 00/43885 A1 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 der1 , -
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 Datenleitung10 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 Datenleitung20 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 der1 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 der1 vorbekannten Manipulationseinheit IN ein Fernsteuergerät RCP ausgebildet. Im Folgenden werden nur die Unterschiede zu der in Zusammenhang mit den Zeichnungsunterlagen der1 erläuterten Ausführungen angeführt. Das Fernsteuergerät RCP ist mittels einer Datenverbindung30 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 Leitung40 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 Datenleitung10 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 der2 und der3 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 der4 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)
- 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.
- 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.
- 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.
- Verfahren gemäß Anspruch 3, dadurch gekennzeichnet, dass die Bestimmung der Zeitdauer (T1) mittels einer Analyse des Programmkodes des Steuergerätes (ECU) durchgeführt wird.
- Verfahren gemäß Anspruch 4, dadurch gekennzeichnet, dass die Analyse des Programmkodes ohne Verwendung des Steuergerätes (ECU) durchgeführt wird.
- 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.
- 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.
- 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.
- Verfahren nach Anspruch 8, dadurch gekennzeichnet, dass der vierte Zeitpunkt (T0) vor dem zweiten Zeitpunkt (T2) liegt.
- Verfahren nach Anspruch 8 oder Anspruch 9, dadurch gekennzeichnet, dass der vierte Zeitpunkt (T0) vor dem ersten Zeitpunkt (T1) liegt.
- 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.
- 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.
- Manipulationseinheit (IN) nach Anspruch 12, dadurch gekennzeichnet, dass eine erste Speicherzelle eines zweiten Speichers (SP2) zur Aufnahme des zweiten Werte (V1Y) vorgesehen ist.
- Manipulationseinheit (IN) nach Anspruch 13, dadurch gekennzeichnet, dass die erste Speicherzelle eines zweiten Speichers (SP2) von einem Fernsteuergerät (RCP) beschreibbar ist.
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)
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)
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)
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 |
-
2009
- 2009-06-01 US US12/475,934 patent/US8074118B2/en active Active
- 2009-12-04 DE DE102009056758.5A patent/DE102009056758B4/de active Active
- 2009-12-16 DE DE102009058652A patent/DE102009058652A1/de active Pending
-
2010
- 2010-01-27 JP JP2010015277A patent/JP5452250B2/ja active Active
- 2010-01-27 JP JP2010015711A patent/JP5431188B2/ja active Active
-
2013
- 2013-12-27 JP JP2013272735A patent/JP5904989B2/ja active Active
Patent Citations (6)
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 |