DE10061001A1 - Verfahren und Steuergerät zur Steuerung von technischen Vorgängen in einem Kraftfahrzeug - Google Patents
Verfahren und Steuergerät zur Steuerung von technischen Vorgängen in einem KraftfahrzeugInfo
- Publication number
- DE10061001A1 DE10061001A1 DE10061001A DE10061001A DE10061001A1 DE 10061001 A1 DE10061001 A1 DE 10061001A1 DE 10061001 A DE10061001 A DE 10061001A DE 10061001 A DE10061001 A DE 10061001A DE 10061001 A1 DE10061001 A1 DE 10061001A1
- Authority
- DE
- Germany
- Prior art keywords
- control program
- task
- execution
- processed
- during
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
- Programmable Controllers (AREA)
- Testing And Monitoring For Control Systems (AREA)
Abstract
Die vorliegende Erfindung betrifft ein Verfahren und ein Steuergerät (30) zur Steuerung von technischen Vorgängen insbesondere in einem Kraftfahrzeug. Dabei wird ein Steuerprogramm von einem Rechengerät, insbesondere von einem Mikroprozessor (31) abgearbeitet. Das Steuerprogramm ist in mehrere Tasks (A, B) und jede Task (A, B) in mehrere Prozesse (345, 346, ..., 383, 384) unterteilt. Die Tasks (AB) werden in einem kooperativen oder in einem preemptiven Modus abgearbeitet. Um nach der Abarbeitung des Steuerprogramms eine möglichst realitätsnahe Simulation, insbesondere eine Offline Open Loop(OOL)-Simulation, zu ermöglichen, wird vorgeschlagen, dass während der Abarbeitung des Steuerprogramms der Prozessablauf gespeichert wird. Vorzugsweise wird vor der Abarbeitung des Steuerprogramms jedem Prozess (345, 346, ..., 383, 384) eine eindeutige Kennung zugeordnet und während der Abarbeitung des Steuerprogramms lediglich die Kennung des letzten vor Beginn einer beendeten Task (A, B) abgearbeiteten Prozesses (345, 346, ..., 383, 384) gespeichert.
Description
Die vorliegende Erfindung betrifft ein Verfahren zur
Steuerung von technischen Vorgängen insbesondere in einem
Kraftfahrzeug. Bei dem Verfahren wird ein Steuerprogramm
von einem Rechengerät, insbesondere von einem
Mikroprozessor, abgearbeitet. Das Steuerprogramm ist in
mehrere Tasks unterteilt, und jede Task mindestens einen
Prozess. Die Tasks werden in einem kooperativen oder in
einem preemptiven Modus abgearbeitet.
Die Erfindung betrifft außerdem ein Steuergerät zur
Steuerung von technischen Vorgängen insbesondere in einem
Kraftfahrzeug. Das Steuergerät weist ein Rechengerät,
insbesondere einen Mikroprozessor, auf, auf dem ein
Steuerprogramm ablauffähig ist. Das Steuerprogramm ist in
mehrere Tasks unterteilt, und jede Task umfasst mindestens
einen Prozess. Die Abarbeitung der Tasks erfolgt in einem
kooperativen oder in einem preemptiven Modus.
Die Erfindung betrifft des Weiteren ein Speicherelement,
insbesondere ein Read-Only-Memory, ein Random-Access-Memory
oder ein Flash-Memory, für ein Steuergerät insbesondere
eines Kraftfahrzeugs. Auf dem Speicherelement ist ein
Steuerprogramm gespeichert, das auf einem Rechengerät,
insbesondere auf einem Mikroprozessor, ablauffähig ist.
Schließlich betrifft die vorliegende Erfindung ein
Steuerprogramm, das auf einem Rechengerät, insbesondere auf
einem Mikroprozessor, ablauffähig ist.
Die Abarbeitung einzelner Tasks eines Steuerprogramms in
einem kooperativen Modus bedeutet, dass bei unterschiedlich
priorisierten Tasks eine auszuführende höherpriorisierte
Task zu einer Unterbrechung einer aktuell ausgeführten
niederpriorisierten Task führt. Anders als in einem
preemptiven Modus, bei dem eine auszuführende
höherpriorisierte Task einen aktuell ausgeführten Prozess
einer niederprioristierten Task unterbricht, wartet bei dem
kooperativen Modus die höherpriorisierte Task das Ende des
aktuell ausgeführten Prozesses der niederpriorisierten Task
ab. Erst danach wird die niederpriorisierte Task
unterbrochen und die höherpriorisierte Task ausgeführt.
Wenn die höherpriorisierte Task fertig ist, wird die
niederpriorisierte Task bei dem Prozess fortgesetzt, vor
dem sie unterbrochen wurde.
Die Abarbeitung der Tasks eines Steuerprogramms im
kooperativen Modus ist aus der DE 195 00 957 A1 bekannt.
Die Unterbrechung einer niederpriorisierten Task durch eine
höherpriorisierte Task gehört zu den Aufgaben eines
Multi-Tasking Betriebssystems. Ein solches Multi-Tasking
Betriebssystem, das sowohl den kooperativen Modus als auch
den preemptiven Modus bei der Abarbeitung von
Steuerprogrammen unterstützt, ist bspw. das
Echtzeitbetriebssystem ERCOSEK von der Firma ETAS
Entwicklungs- und Applikationswerkzeuge für elektronische
Systeme GmbH & Co. KG, Stuttgart, Deutschland (vgl. ETAS
GmbH & Co. KG: ERCOSEK V2.0.0 Manual, Stuttgart, 1998). Auf
die DE 195 00 957 A1 und das ERCOSEK-Handbuch wird
ausdrücklich Bezug genommen.
Die Laufzeit der Prozesse schwankt je nach Belastung des
Rechengeräts. Aus diesem Grund und aufgrund der möglichen,
von anderen höherpriorisierten Tasks verursachten
Unterbrechungen kann die Reihenfolge der Prozessaufrufe ein
und desselben Steuerprogramms bei mehrmaliger Abarbeitung
unterschiedlich sein. Das heisst, dass nach der Abarbeitung
des Steuerprogramms die genaue Reihenfolge der
Prozessaufrufe nicht bekannt ist und auch nicht bspw. für
Simulationszwecke rekonstruiert werden kann.
Zur Simulation eines Steuerprogramms oder von Teilen davon
(Algorithmus) sind verschiedene Verfahren bekannt. Eine
nachträgliche Simulation eines Algorithmus oder des
Steuerprogramms mit gemessenen Daten wird als
Offline Open Loop Simulation (OOL) bezeichnet. Bei der
sogenannten Offline Closed Loop Simulation (OCL) handelt es
sich um eine Simulation eines Algorithmus oder des
Steuerprogramms mit einem Simulationsmodell in einem
geschlossenen Simulationskreis. Die mangelnde
Reproduzierbarkeit der Reihenfolge der abgearbeitenden
Prozesse führt insbesondere bei einer nachträglichen
Simulation des Algorithmus mit gemessenen Daten (OOL) zu
erheblichen Schwierigkeiten.
Nach dem Stand der Technik werden Algorithmen, die mit
einem Multi-Tasking Betriebssystem gesteuert werden,
üblicherweise in einem optimalen Zustand simuliert. Das
bedeutet, dass die einzelnen Tasks des Steuerprogramms so
aufgerufen werden, dass keine Unterbrechung stattfindet.
In der DE 195 00 957 A1 wird erwähnt, dass die Simulation
eines im kooperativen Modus abzuarbeitenden Steuerprogramms
Vorteile gegenüber der Simulation eines im preemptiven
Modus abzuarbeitenden Steuerprogramms hat, da der zeitliche
Ablauf der Programmabarbeitung und insbesondere die
Auswirkungen von Unterbrechnungen simuliert werden können.
Das ist deshalb ohne weiteres möglich, da die einzelnen
Prozesse im kooperativen Modus nicht unterbrochen werden
und die Anzahl der Größen, die den Programmzustand
beschreiben und in einem Stapelspeicher gespeichert werden,
konstant ist. Dadurch können die Unterbrechungen zwischen
den Prozessen in der Entwicklungsphase recht gut simuliert
werden, da die Anzahl der Möglichkeiten einer
Unterbrechnung begrenzt ist und die Unterbrechnungen
unabhängig von dem Programmablauf sind.
Aufgrund einer fehlenden Reproduzierbarkeit des
Prozessablaufs im Anschluss an eine reale Abarbeitung eines
Steuerprogramms, haben sämtliche aus dem Stand der Technik
bekannten Simulationen von Algorithmen eines im
kooperativen oder im preemptiven Modus abzuarbeitenden
Steuerprogramms den Nachteil, dass eine Simulation unter
realen Bedingungen nicht möglich ist.
Der vorliegenden Erfindung liegt deshalb die Aufgabe
zugrunde, eine Simulation von Algorithmen eines im
kooperativen oder im preemptiven Modus auszuführenden
Steuerprogramms mit gemessenen Daten (OOL) unter möglichst
realitätsnahen Bedingungen zu ermöglichen.
Zur Lösung dieser Aufgabe schlägt die Erfindung ausgehend
von dem Verfahren zur Steuerung von technischen Vorgängen
der eingangs genannten Art vor, dass während der
Abarbeitung des Steuerprogramms der Prozessablauf
gespeichert wird.
Mit dem erfindungsgemäßen Verfahren kann nach der
Abarbeitung des Steuerprogramms der Prozessablauf anhand
der gespeicherten Informationen reproduziert werden. Dieser
reproduzierte Prozessablauf kann dann einer Simulation der
Algorithmen des Steuerprogramms zugrundegelegt werden.
Dadurch ist eine besonders realitätsnahe Simulation der
Algorithmen, insbesondere mit gemessenen Daten nach einer
OOL-Simulation, möglich. Die Messungen und die
Simulationsergebnisse können miteinander verglichen werden
und eine effektive Fehlersuche in dem Steuerprogramm ist
möglich. Das erfindungsgemäße Verfahren schafft die
Grundlage dafür, dass erstmals ein realer Prozessablauf
eines Steuerprogramms simuliert werden kann. Zur
Realisierung des erfindungsgemäßen Verfahrens werden bspw.
in jedem Prozess und/oder in jeder Task geeignete Befehle
hinzugefügt.
Gemäß einer vorteilhaften Weiterbildung der vorliegenden
Erfindung wird vorgeschlagen, dass vor der Abarbeitung des
Steuerprogramms jedem Prozess eine eindeutige Kennung
(Identifier) zugeordnet wird und während der Abarbeitung
des Steuerprogramms der Prozessablauf anhand der Kennungen
der Prozesse gespeichert wird. Im Rahmen der Abarbeitung
eines Prozesses wird also sein Identifier in einem
bestimmten Speicherbereich abgelegt. Anhand der in dem
Speicherbereich abgelegten Identifier kann der
Prozessablauf nach der Ausführung des Steuerprogramms
reproduziert werden. Der Identifier ist bspw. als eine
mehrstellige Zahl ausgebildet.
Gemäß einer bevorzugten Ausführungsform der vorliegenden
Erfindung wird vorgeschlagen, dass während der Abarbeitung
des Steuerprogramms lediglich jeweils für eine neue Task
die Kennung eines vor Beginn der neuen Task zuletzt
abgearbeiteten Prozesses gespeichert wird. Diese
Ausführungsform des erfindungsgemäßen Verfahrens macht sich
die Tatsache zunutze, dass jede Task eines Steuerprogramms
mit einer sogenannten Prozessliste definiert ist, in der
die einzelnen Prozesse der Task in der Reihenfolge ihrer
Abarbeitung nacheinander aufgelistet sind. Anhand der
Prozesslisten der Tasks eines Steuerprogramms lässt sich
also zusammen mit der gespeicherten Kennung des letzten vor
Beginn einer neuen Task abgearbeiteten Prozesses nach der
Abarbeitung des Steuerprogramms der Prozessablauf
vollständig reproduzieren.
Alternativ wird gemäß einer weiteren bevorzugten
Ausführungsform der vorliegenden Erfindung vorgeschlagen,
dass während der Abarbeitung des Steuerprogramms lediglich
jeweils für eine beendete Task die Kennung eines vor Beginn
der beendeten Task zuletzt abgearbeiteten Prozesses
gespeichert wird. Anhand der Prozesslisten der Tasks lässt
sich zusammen mit der gespeicherten Kennung des letzten vor
Beginn einer beendeten Task abgearbeiteten Prozesses nach
der Abarbeitung des Steuerprogramms der Prozessablauf
vollständig reproduzieren.
Diese beiden Ausführungsformen haben den Vorteil, dass die
abzuspeichernde Datenmenge, die für eine vollständige
Reproduzierbarkeit des Prozessablaufs erforderlich ist,
erheblich reduziert werden kann.
Es wird des Weiteren vorgeschlagen, dass während der
Abarbeitung des Steuerprogramms die Kennung eines jeden
abgearbeiteten Prozesses in einer Variablen und während der
Abarbeitung einer jeden Task der Inhalt der Variablen in
eine Prozessablaufdatei gespeichert wird. Die Variable, in
der die Kennung eines jeden abgearbeiteten Prozesses
gespeichert wird, ist vorzugsweise als eine globale
Variable ausgebildet. Zur Reproduktion des Prozessablaufs
nach der Abarbeitung des Steuerprogramms werden die
Prozesslisten der Tasks und die Prozessablaufdatei
ausgewertet.
Vorteilhafterweise wird am Anfang einer jeden Task der
Inhalt der Variablen in eine Task-spezifische Variable und
während der weiteren Abarbeitung der Task der Inhalt der
Task-spezifischen Variablen in die Prozessablaufdatei
gespeichert. Der Inhalt der Variablen wird also während der
Abarbeitung des Steuerprogramms ständig mit der Kennung des
aktuell abgearbeiteten Prozesses überschrieben, so dass
beim Aufruf einer neuen Task in der Variablen die Kennung
des vor dem Aufruf der Task zuletzt abgearbeiteten
Prozesses abgelegt ist. Am Anfang einer Task wird der
Inhalt dieser Variablen in eine Task-spezifische Variable
geschrieben. In der Task-spezifischen Variablen steht also
immer die Kennung des unmittelbar vor Beginn der aktuellen
Task abgearbeiteten Prozesses. Während der weiteren
Abarbeitung der Task wird der Inhalt der Task-spezifischen
Variablen in die Prozessablaufdatei gespeichert. Es ist
denkbar, dass der Inhalt der Task-spezifischen Variablen
während der weiteren Abarbeitung der Task von Messtechnik
zusammen mit allen anderen Messgrößen dieser Task in einer
Messdatei gespeichert wird. Die Prozessablaufdatei wäre
also Bestandteil dieser Messdatei.
Von besonderer Bedeutung ist die Realisierung des
erfindungsgemäßen Verfahrens in der Form eines
Speicherelements, das für ein Steuergerät insbesondere
eines Kraftfahrzeugs vorgesehen ist. Dabei ist auf dem
Speicherelement ein Steuerprogramm abgespeichert, das auf
einem Rechengerät, insbesondere auf einem Mikroprozessor,
ablauffähig zur Ausführung des erfindungsgemäßen Verfahrens
geeignet ist. In diesem Fall wird also die Erfindung durch
ein auf dem Speicherelement abgespeichertes Steuerprogramm
realisiert, so dass dieses mit dem Steuerprogramm versehene
Speicherelement in gleicher Weise die Erfindung darstellt
wie das Verfahren, zu dessen Ausführung das Steuerprogramm
geeignet ist. Als Speicherelement kann insbesondere ein
elektrisches Speichermedium zur Anwendung kommen, bspw. ein
Read-Only-Memory, ein Random-Access-Memory oder ein Flash-
Memory.
Die Erfindung betrifft auch ein Steuerprogramm, das zur
Ausführung des erfindungsgemäßen Verfahrens geeignet ist,
wenn es auf einem Rechengerät, insbesondere auf einem
Mikroprozessor, abläuft. Als Steuerprogramm wird ein
Computerprogramm bezeichnet, das zur Steuerung von
technischen Vorgängen insbesondere in einem Kraftfahrzeug
dient. Besonders bevorzugt ist dabei, wenn das
Steuerprogramm auf einem Speicherelement, insbesondere auf
einem Flash-Memory, abgespeichert ist.
Als eine weitere Lösung der Aufgabe der vorliegenden
Erfindung wird ausgehend von dem Steuergerät zur Steuerung
von technischen Vorgängen der eingangs genannten Art
vorgeschlagen, dass das Steuergerät Mittel zur Speicherung
des Prozessablaufs während der Abarbeitung des
Steuerprogramms aufweist.
Gemäß einer vorteilhaften Weiterbildung der vorliegenden
Erfindung wird vorgeschlagen, dass das Steuergerät Mittel
zur Ausführung eines erfindungsgemäßen Verfahrens aufweist.
Weitere Merkmale, Anwendungsmöglichkeiten und Vorteile der
Erfindung ergeben sich aus der nachfolgenden Beschreibung
von Ausführungsbeispielen der Erfindung, die in der
Zeichnung dargestellt sind. Dabei bilden alle beschriebenen
oder dargestellten Merkmale für sich oder in beliebiger
Kombination den Gegenstand der Erfindung, unabhängig von
ihrer Zusammenfassung in den Patentansprüchen oder deren
Rückbeziehung sowie unabhängig von ihrer Formulierung bzw.
Darstellung in der Beschreibung bzw. in der Zeichnung. Es
zeigen:
Fig. 1 ein Prozessablauf in zwei Zyklen während der
Abarbeitung eines Steuerprogramms;
Fig. 2 eine Tabelle mit der Reihenfolge der Prozesse
während der beiden Zyklen aus Fig. 1;
Fig. 3 eine Tabelle mit der Belegung verschiedener
Variablen während der Ausführung des
erfindungsgemäßen Verfahrens während der beiden
Zyklen aus Fig. 1;
Fig. 4 ein Ablaufdiagramm des erfindungsgemäßen
Verfahrens für die Abarbeitung einer TaskA;
Fig. 5 ein Ablaufdiagramm des erfindungsgemäßen
Verfahrens für die Abarbeitung einer TaskB;
Fig. 6 ein erfindungsgemäßes Steuergerät;
Fig. 7 ein Prozessablauf während der Abarbeitung eines
weiteren Steuerprogramms;
Fig. 8 eine Tabelle mit den jeweils letzten vor Beginn
einer beendeten Task während des Prozessablaufs
aus Fig. 7 abgearbeiteten Prozessen;
Fig. 9 Prozesslisten für die TaskA und die TaskB; und
Fig. 10 eine Tabelle mit der Reihenfolge der Prozesse
während der Simulation eines Steuerprogramms
anhand eines aus dem Stand der Technik bekannten
Simulationsverfahrens.
Auf einem Rechengerät, insbesondere auf einem
Mikroprozessor, eines Steuergeräts können Steuerprogramme
zur Steuerung von technischen Vorgängen insbesondere in
einem Kraftfahrzeug abgearbeitet werden. Die
Steuerprogramme können in mehrere Tasks und jede Task
wiederum in mehrere Prozesse unterteilt sein. Eine Task
wird zu einem bestimmten Zeitpunkt oder regelmäßig mit
einer bestimmten Abtastzeit aufgerufen und abgearbeitet.
Jeder Task ist eine bestimmte Priorität zugeordnet. Wenn
während der Abarbeitung des Steuerprogramms zwei Tasks
gleichzeitig ausgeführt werden sollen, werden die
Prioritäten der beiden Tasks verglichen und die Task mit
der höheren Prioriät als erste abgearbietet.
Wenn bspw. eine TaskA abgearbeitet wird und ein TaskB
ausgeführt werden soll, können je nach der von einem
Programmierer gewählten Konfiguration der Tasks
verschiedene Fälle auftreten:
Falls die TaskA eine höhere Priorität als die TaskB hat, wird mit der Ausführung der TaskB gewartet bis die TaskA beendet ist.
Falls die TaskA eine höhere Priorität als die TaskB hat, wird mit der Ausführung der TaskB gewartet bis die TaskA beendet ist.
Falls die TaskB eine höhere Priorität als die TaskA hat,
wird die Abarbeitung der TaskA unterbrochen und die TaskB
ausgeführt. Falls der Programmierer die Ausführung der
Tasks in einem sogenannten kooperativen Modus gewählt hat,
wird mit der Ausführung der TaskB auf das Ende des
aktuellen Prozesses der TaskA gewartet. Sobald dieser
Prozess beendet ist, wird die TaskA unterbrochen und die
TaskB ausgeführt. Wenn die TaskB beendet ist, wird die
TaskA zu Beginn des Prozesses, vor dem Sie zur Ausführung
der TaskB unterbrochen wurde, weiter abgearbeitet.
Falls der Programmierer die Abarbeitung der Tasks in einem
preemptiven Modus gewählt hat, unterbricht die Task B den
aktuellen Prozess der TaskA und die TaskB wird unmittelbar
ausgeführt. Anschließend wird die TaskA bei dem
unterbrochenen Prozess weiter abgearbeitet.
Die Unterbrechung einer Task durch eine andere Task mit
einer höheren Prioriät gehört zu den Aufgaben eines Multi-
Tasking Betriebsystems. Die Laufzeit der Prozesse schwankt
je nach der Belastung des Rechengeräts, auf dem das
Steuerprogramm abgearbeitet wird. Aus diesem Grund und
aufgrund der möglichen, von anderen Tasks verursachten
Unterbrechungen kann die Reihenfolge der Prozessaufrufe bei
einer mehrmaligen Ausführung ein und desselben
Steuerprogramms unterschiedlich sein (vgl. ersten und
zweiten Zyklus in Fig. 1). Nach der Abarbeitung des
Steuerprogramms ist also die Reihenfolge, in der die
einzelnen Prozesse der Tasks aufgerufen wurden, nicht
bekannt.
In Fig. 1 ist beispielhaft die Abarbeitung von zwei Tasks
in einem ersten Zyklus und einem zweiten Zyklus
dargestellt. Den einzelnen Prozessen der Tasks ist jeweils
eine eindeutige Kennung in Form einer dreistelligen Zahl
zugeordnet. Die einzelnen Prozesse einer Task sind in der
Reihenfolge der Ausführung während der Abarbeitung des
Steuerprogramms in einer Prozessliste gespeichert (vgl.
Fig. 9). Die Prozesslisten werden von dem Betriebssystem
ausgewertet, um Online den Prozessablauf zu bestimmen. Die
TaskA umfasst die Prozesse 345 bis 384 und die TaskB
umfasst die Prozesse 121 bis 129. Die TaskA wird alle
zwanzig Millisekunden aufgerufen. Die TaskB wird alle zehn
Milisekunden mit einer höheren Priorität als die TaskA
aufgerufen. Beide Tasks arbeiten im kooperativen Modus,
d. h. die TaskA kann von der höherpriorisierten TaskB
zwischen zwei Prozessen unterbrochen werden.
In Fig. 2 ist die Reihenfolge der Abarbeitung der Prozesse
in dem ersten Zyklus und in dem zweiten Zyklus dargestellt.
In dem ersten Zyklus werden die Prozesse 121 bis 129 der
TaskB abgearbeitet. Anschließend werden beginnend mit dem
Prozess 345 die Prozesse der TaskA abgearbeitet. Die
Abarbeitung der Prozesse der TaskA wird jedoch durch die
TaskB unterbrochen. In dem ersten Zyklus tritt die
Unterbrechung der TaskA nach der Abarbeitung des Prozesses
372 und in dem zweiten Zyklus erst nach der Abarbeitung des
Prozesses 383 auf. Demgemäß müssen nach der zweiten
Abarbeitung der TaskB in dem ersten Zyklus die Prozesse 373
bis 384 der TaskA und in dem zweiten Zyklus lediglich der
Prozess 384 der TaskA ausgeführt werden.
Die Tatsache, dass die Reihenfolge der Prozesse
unterschiedlich sein kann bedeutet, dass ein bestimmter
Prozessablauf nach der Abarbeitung des Steuerprogramms
nicht mehr reproduzierbar ist. Das führt insbesondere bei
einer nachträglichen Simulation der Algorithmen des
Steuerprogramms mit gemessenen Daten (sogenannte Offline-
Open-Loop (OOL)-Simulation) zu erheblichen Schwierigkeiten.
Deshalb werden nach dem Stand der Technik Algorithmen, die
mit einem Multi-Tasking Betriebssystem gesteuert werden, in
der Regel in einem optimalen Zustand simuliert, d. h. die
Tasks A, B werden so aufgerufen, dass keine Unterbrechung
stattfindet. Die entsprechende Reihenfolge der Prozesse in
dem ersten Zyklus und in dem zweiten Zyklus bei einer
Simulation anhand eines aus dem Stand der Technik bekannten
Simulationsverfahrens ist in Fig. 10 dargestellt. Es ist
deutlich zu erkennen, dass ein Unterschied zwischen dem
simulierten Prozessablauf (Fig. 10) und dem tatsächlichen
Prozessablauf (Fig. 2) besteht.
Um eine möglichst realitätsnahe Simulation der Algorithmen
eines Steuerprogramms, insbesondere eine realitätsnahe
OOL-Simulation, zu ermöglichen, wird erfindungsgemäß
vorgeschlagen, während der Abarbeitung des Steuerprogramms
den Prozessablauf zu speichern. Um die zu speichernde
Datenmenge zu reduzieren, werden nicht alle abgearbeiteten
Prozesse gespeichert, sondern nur der letzte vor dem Beginn
einer neuen oder einer beendeten Task A, B abgearbeitete
Prozess.
Jedem Prozess wird eine eindeutige Kennung (Identifier)
zugeordnet, die in dem vorliegenden Ausführungsbeispiel aus
einer dreistelligen Zahl (Prozesse 345 bis 384 für TaskA
und Prozesse 121 bis 129 für TaskB) besteht. In jeden
Prozess und in jede Task des Steuerprogramms werden
geeignete Programmbefehle hinzugefügt, die für eine
Realisierung des erfindungsgemäßen Verfahrens erforderlich
sind.
Während der Abarbeitung des Steuerprogramms wird am Ende
eines jeden Prozesses der Identifier des soeben
abgearbeiteten Prozesses in einer globalen Variablen
FinishedProcessNumber (FPN) fortgeschrieben. In der
Variablen FPN steht also immer der Identifier des zuletzt
abgearbeiteten Prozesses. Am Anfang einer jeden Task A, B
wird die Variable FPN auf eine Task-spezifische Variable
(TaskA_PredecessorPRC, TaskB_PredecessorPRC) kopiert. In
dieser Task-spezifischen Variablen steht also immer der
Identifier des Prozesses, der unmittelbar vor Beginn der
aktuellen Task A, B abgearbeitet wurde. Während der
weiteren Abarbeitung einer jeden Task wird der Inhalt der
jeweiligen Task-spezifische Variablen
(TaskA_PredecessorPRC, TaskB_PredecessorPRC) in einer
Prozessablaufdatei (PAD) gespeichert. Insbesondere wird die
jeweilige Task-spezifische Variable von Messtechnik
zusammen mit allen anderen Messgrößen dieser Task A, B in
einer Messdatei gespeichert, wobei die Prozessablaufdatei
Bestandteil der Messdatei ist.
In Fig. 7 ist ein Prozessablauf eines weiteren
Steuerprogramms dargestellt. Das Steuerprogramm umfasst
vier Tasks C, D, E und F mit unterschiedlichen Prioritäten.
Jede Task C, D, E, F umfasst eine oder mehrere Prozesse.
Die Task C umfasst den Prozess 111, die Task D die Prozesse
212 und 222, die Task E die Prozesse 313, 323 und 333 und
die Task F die Prozesse 413, 423 und 433. Jeder Prozess ist
in Fig. 7 durch einen Balken dargestellt. Die Höhe der
Balken gibt die Priorität der Tasks C, D, E, F wieder. Wenn
während der Abarbeitung des Steuerprogramms der
Prozessablauf anhand der Identifier sämtlicher Prozesse in
der Prozessablaufdatei gespeichert wird, hat die Tabelle
den nachfolgenden Inhalt: 111, 313, 212, 111, 222, 323,
111, 212, 222, 333, 413, 423, 433, 111, 313, 111, 323, 333,
413, 423, 433, 111.
Um die in der Prozessablaufdatei abzuspeichernde
Datenmenge, die für eine vollständige Reproduzierbarkeit
des Prozessablaufs erforderlich ist, zu reduzieren wird
während der Abarbeitung des Steuerprogramms lediglich der
Identifier des letzten vor Beginn einer beendeten Task
abgearbeiteten Prozesses gespeichert. Der sich daraus
ergebende Inhalt einer Prozessablaufdatei ist in Fig. 8
dargestellt. Statt der oben aufgeführten 22 Elemente
umfasst die Prozessablaufdatei aus Fig. 8 nur 12 Elemente.
Die erste beendete Task ist die Task C. Der vor Beginn der
Task C abgearbeitete Prozess ist nicht bekannt. Deshalb
wird "xxx" in die Prozessablaufdatei eingetragen.
Danach wird die Task E begonnen, jedoch nicht beendet, und
danach die Task D, jedoch ebenfalls nicht beendet. Die
nächste beendete Task ist wieder die Task C. Der vor Beginn
der Task C abgearbeitete Prozess ist 212. Deshalb wird
"212" in die Prozessablaufdatei eingetragen.
Danach wird die Task D fortgesetzt und beendet. Der vor
Beginn der Task D abgearbeitete Prozess ist 313. Deshalb
wird "313" in die Prozessablaufdatei eingetragen.
Danach wird die Task E fortgesetzt, jedoch nicht beendet.
Die nächste beendete Task ist wieder die Task C. Der vor
Beginn der Task C abgearbeitete Prozess ist 323. Deshalb
wird "323" in die Prozessablaufdatei eingetragen.
Danach wird die Task D begonnen und auch beendet. Der vor
Beginn der Task D abgearbeitete Prozess ist 111. Deshalb
wird "111" in die Prozessablaufdatei eingetragen.
Danach wird die Task E fortgesetzt und beendet. Der vor
Beginn der Task E abgearbeitete Prozess ist 111. Deshalb
wird wieder "111" in die Prozessablaufdatei eingetragen.
Danach wird die Task F begonnen und auch beendet. Der vor
Beginn der Task F abgearbeitete Prozess ist 333. Deshalb
wird "333" in die Prozessablaufdatei eingetragen. Das
Verfahren wird so lange fortgesetzt, bis das Steuerprogramm
beendet ist. Es ergibt sich der nachfolgende Inhalt der
Prozessablaufdatei: xxx, 212, 313, 323, 111, 111, 333, 433,
313, 111, 333, 433.
Nach der Abarbeitung des Steuerprogramms wird zu
Simulationszwecken zunächst die Messdatei eingelesen. Der
Prozessablauf wird mittels der Prozesslisten (vgl. Fig. 9)
und der in der Messdatei gespeicherten Informationen
rekonstruiert. Das erfindungsgemäße Verfahren schafft die
Grundlage, mit bei einem Steuerprogramm erstmals ein realer
Prozessablauf simuliert werden kann. Die Messungen und die
Simulationsergebnisse sind miteinander vergleichbar und
ermöglichen eine effektive Fehlersuche in der Software des
Steuerprogramms.
In Fig. 3 ist für den Prozessablauf aus Fig. 1 der Inhalt
der globalen Variablen FinishedProcessNumber (FPN) und der
Task-spezifischen Variablen (TaskA_PredecessorPRC,
TaskB_PredecessorPRC) dargestellt. Diese Informationen
werden in der Messdatei gespeichert.
In Fig. 4 ist ein Ablaufdiagramm zur Abarbeitung der TaskA
des Ausführungsbeispiels aus Fig. 1 dargestellt. Das
Ablaufdiagramm beginnt in einem Funktionsblock 10 mit dem
Start. In einem Funktionsblock 11 wird die TaskA
ausgewählt. In einem Funktionsblock 12 wird der Inhalt der
globalen Variablen (FinishedProcessNumber, FPN) auf die
Task-spezifische Variable (TaskA_PredecessorPRC) kopiert.
In einem Funktionsblock 13 wird dann der Inhalt der Task-
spezifischen Variablen in der Programmablaufdatei (PAD)
gespeichert. Im Weiteren wird dann in einem Funktionsblock
14 ein anhand der Prozessliste der TaskA (vgl. Fig. 9)
ausgewählter Prozess (PRC) ausgeführt. Die Kennung
(Identifier) dieses Prozesses wird in einem Funktionsblock
15 in der globalen Variablen (FinishedProcessNumber)
abgespeichert. Anschließend wird in einem Abfrageblock 16
überprüft, ob die TaskA beendet ist. Falls nein, wird zu
dem Funktionsblock 14 verzweigt, wo gemäß der Prozessliste
der nächste Prozess der TaskA ausgewählt wird. Falls die
TaskA beendet ist, ist das Ablaufdiagramm im Funktionsblock
17 beendet.
In Fig. 5 ist ein Ablaufdiagramm zur Abarbeitung der TaskB
des beschriebenen Ausführungsbeispiels dargestellt. Für die
den Funktionsblöcken 10 bis 17 aus Fig. 4 entsprechenden
Funktionsblöcke aus Fig. 5 wurden die Bezugszeichen 20 bis
27 gewählt. Die Ausführung der TaskB erfolgt entsprechend
der beschriebenen Ausführung der TaskA.
Die Ausführung der TaskA und der TaskB kann
selbstverständlich jederzeit, bzw. in dem kooperativen
Modus nach Beendigung des aktuellen Prozesses, durch eine
höherpriorisierte Task unterbrochen werden. Dies geschieht
bspw. mittels eines Interrupt-Aufrufs.
In Fig. 6 ist ein erfindungsgemäßes Steuergerät zur
Steuerung von technischen Vorgängen insbesondere in einem
Kraftfahrzeug in seiner Gesamtheit mit dem Bezugszeichen 30
bezeichnet. Das Steuergerät 30 weist ein Rechengerät,
insbesondere einen Mikroprozessor 31 auf, auf dem ein
Steuerprogramm ablauffähig ist. Das Steuergerät 30 umfasst
des Weiteren ein Speicherelement 32, auf dem das
Steuerprogramm gespeichert ist. Über eine Datenverbindung
33, die bspw. als eine Bus-Leitung ausgebildet ist, wird
das von dem Mikroprozessor 31 auszuführende Steuerprogramm
oder Teile davon zu dem Mikroprozessor 31 übertragen und
dort abgearbeitet. Über geeignete Schnittstellen werden dem
Mikroprozessor 31 Messgrößen 34 zugeführt und in dem
Mikroprozessor 31 verarbeitet. Die Messgrößen 34 werden
bspw. in dem Speicherelement 32 in einer Messdatei
gespeichert. In dieser Messdatei können erfindungsgemäß
auch Informationen über den Prozessablauf, insbesondere die
Reihenfolge der Abarbeitung der Prozesse, während der
Abarbeitung des Steuerprogramms gespeichert werden. Diese
Informationen und die Messgrößen 34 können nach der
Abarbeitung des Steuerprogramms zu Simulationszwecken
herangezogen werden.
Claims (11)
1. Verfahren zur Steuerung von technischen Vorgängen
insbesondere in einem Kraftfahrzeug, bei dem ein
Steuerprogramm von einem Rechengerät, insbesondere von
einem Mikroprozessor (31), abgearbeitet wird, wobei das
Steuerprogramm in mehrere Tasks (A, B) unterteilt ist und
jede Task (A; B) mindestens einen Prozess (345, 346, . . .,
383, 384; 121, 122, . . ., 128, 129) umfasst und die Tasks
(A, B) in einem kooperativen oder in einem preemptiven
Modus abgearbeitet werden, dadurch gekennzeichnet, dass
während der Abarbeitung des Steuerprogramms der
Prozessablauf gespeichert wird.
2. Verfahren nach Anspruch 1, dadurch gekennzeichnet,
dass vor der Abarbeitung des Steuerprogramms jedem Prozess
(345, 346, . . ., 383, 384; 121, 122, . . ., 128, 129) eine
eindeutige Kennung zugeordnet wird und während der
Abarbeitung des Steuerprogramms der Prozessablauf anhand
der Kennungen der Prozesse (345, 346, . . ., 383, 384; 121,
122, . . ., 128, 129) gespeichert wird.
3. Verfahren nach Anspruch 2, dadurch gekennzeichnet,
dass während der Abarbeitung des Steuerprogramms lediglich
jeweils für eine neue Task (A, B) die Kennung eines vor
Beginn der neuen Task (A, B) zuletzt abgearbeiteten
Prozesses (345, 346, . . ., 383, 384; 121, 122, . . ., 128,
129) gespeichert wird.
4. Verfahren nach Anspruch 2, dadurch gekennzeichnet,
dass während der Abarbeitung des Steuerprogramms lediglich
jeweils für eine beendete Task (A, B) die Kennung eines vor
Beginn der beendeten Task (A, B) zuletzt abgearbeiteten
Prozesses (345, 346, . . ., 383, 384; 121, 122, . . ., 128,
129) gespeichert wird.
5. Verfahren nach Anspruch 3 oder 4, dadurch
gekennzeichnet, dass während der Abarbeitung des
Steuerprogramms die Kennung eines jeden abgearbeiteten
Prozesses (345, 346, . . ., 383, 384; 121, 122, . . ., 128,
129) in einer Variablen (FinishedProcessNumber, FPN) und
während der Abarbeitung einer jeden Task (A, B) der Inhalt
der Variablen (FinishedProcessNumber, FPN) in einer
Prozessablaufdatei (PAD) gespeichert wird.
6. Verfahren nach Anspruch 5, dadurch gekennzeichnet,
dass am Anfang einer jeden Task (A, B) der Inhalt der
Variablen (FinishedProcessNumber, FPN) in eine Task-
spezifische Variable (TaskA_PredecessorPRC, TA_PrePRC;
TaskB_PredecessorPRC TB_PrePRC) und während der weiteren
Abarbeitung der Task (A, B) der Inhalt der Task-
spezifischen Variablen (TaskA_PredecessorPRC, TA_PrePRC;
TaskB_PredecessorPRC TB_PrePRC) in die Prozessablaufdatei
(PAD) gespeichert wird.
7. Speicherelement (32), insbesondere Read-Only-Memory,
Random-Access-Memory oder Flash-Memory, für ein Steuergerät
(30) insbesondere eines Kraftfahrzeugs, auf dem ein
Steuerprogramm gespeichert ist, das auf einem Rechengerät,
insbesondere auf einem Mikroprozessor (31), ablauffähig und
zur Ausführung eines Verfahrens nach einem der Ansprüche 1
bis 6 geeignet ist.
8. Steuerprogramm, dadurch gekennzeichnet, dass das
Steuerprogramm zur Ausführung eines Verfahrens nach einem
der Ansprüche 1 bis 6 geeignet ist, wenn es auf einem
Rechengerät, insbesondere auf einem Mikroprozessor (31),
abläuft.
9. Steuerprogramm nach Anspruch 8, dadurch
gekennzeichnet, dass das Steuerprogramm auf einem
Speicherelement (32), insbesondere auf einem Flash-Memory,
abgespeichert ist.
10. Steuergerät (30) zur Steuerung von technischen
Vorgängen insbesondere in einem Kraftfahrzeug, wobei das
Steuergerät (30) ein Rechengerät, insbesondere einen
Mikroprozessor (31), aufweist, auf dem ein Steuerprogramm
ablauffähig ist, das in mehrere Tasks (A, B) unterteilt
ist, wobei jede Task (A; B) mindestens einen Prozess (345,
346, . . ., 383, 384; 121, 122, . . ., 128, 129) umfasst und
die Abarbeitung der Tasks (A, B) in einem kooperativen oder
in einem preemptiven Modus erfolgt, dadurch gekennzeichnet,
dass das Steuergerät (30) Mittel zur Speicherung des
Prozessablaufs während der Abarbeitung des Steuerprogramms
aufweist.
11. Steuergerät (30) nach Anspruch 10, dadurch
gekennzeichnet, dass das Steuergerät (30) Mittel zur
Ausführung eines Verfahrens nach einem der Ansprüche 2 bis
6 aufweist.
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10061001A DE10061001B4 (de) | 2000-12-08 | 2000-12-08 | Verfahren und Steuergerät zur Steuerung von technischen Vorgängen in einem Kraftfahrzeug, sowie Speicherelement und Steuerprogramm hierfür |
JP2001374622A JP4571355B2 (ja) | 2000-12-08 | 2001-12-07 | 車両内の技術的プロセスの制御方法,制御プログラム,メモリ素子,制御装置 |
US10/013,167 US7296270B2 (en) | 2000-12-08 | 2001-12-10 | Method and control unit for controlling technical procedures in a motor vehicle |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE10061001A DE10061001B4 (de) | 2000-12-08 | 2000-12-08 | Verfahren und Steuergerät zur Steuerung von technischen Vorgängen in einem Kraftfahrzeug, sowie Speicherelement und Steuerprogramm hierfür |
Publications (2)
Publication Number | Publication Date |
---|---|
DE10061001A1 true DE10061001A1 (de) | 2002-06-27 |
DE10061001B4 DE10061001B4 (de) | 2005-05-04 |
Family
ID=7666242
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE10061001A Expired - Lifetime DE10061001B4 (de) | 2000-12-08 | 2000-12-08 | Verfahren und Steuergerät zur Steuerung von technischen Vorgängen in einem Kraftfahrzeug, sowie Speicherelement und Steuerprogramm hierfür |
Country Status (3)
Country | Link |
---|---|
US (1) | US7296270B2 (de) |
JP (1) | JP4571355B2 (de) |
DE (1) | DE10061001B4 (de) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8806443B2 (en) | 2005-05-09 | 2014-08-12 | Robert Bosch Gmbh | Method for monitoring control devices |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6797998B2 (en) | 2002-07-16 | 2004-09-28 | Nvidia Corporation | Multi-configuration GPU interface device |
US7984446B1 (en) * | 2003-09-18 | 2011-07-19 | Nvidia Corporation | Method and system for multitasking BIOS initialization tasks |
DE10351019A1 (de) * | 2003-10-31 | 2005-06-30 | P21 - Power For The 21St Century Gmbh | Verfahren zum Steuern und/oder Regeln wenigstens eines Aggregats in einem technischen System sowie technisches System |
JP4551349B2 (ja) * | 2006-03-31 | 2010-09-29 | 富士通テン株式会社 | 制御対象シミュレーション装置 |
GB2521151B (en) * | 2013-12-10 | 2021-06-02 | Advanced Risc Mach Ltd | Configurable thread ordering for a data processing apparatus |
GB2521155B (en) | 2013-12-10 | 2021-06-02 | Advanced Risc Mach Ltd | Configuring thread scheduling on a multi-threaded data processing apparatus |
JP6218645B2 (ja) * | 2014-03-05 | 2017-10-25 | 三菱電機株式会社 | プログラム解析装置及びプログラム解析方法及びプログラム |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3662401A (en) * | 1970-09-23 | 1972-05-09 | Collins Radio Co | Method of program execution |
DE2555963C2 (de) * | 1975-12-12 | 1982-10-28 | Ibm Deutschland Gmbh, 7000 Stuttgart | Einrichtung zur Funktionsmodifizierung |
US4937740A (en) * | 1985-09-18 | 1990-06-26 | Cadre Technologies, Inc. | Real time software analyzing system for storing selective m-bit addresses based upon correspondingly generated n-bit tags |
US4954948A (en) * | 1986-12-29 | 1990-09-04 | Motorola, Inc. | Microprocessor operating system for sequentially executing subtasks |
US6304891B1 (en) * | 1992-09-30 | 2001-10-16 | Apple Computer, Inc. | Execution control for processor tasks |
US5680645A (en) * | 1992-11-18 | 1997-10-21 | Canon Kabushiki Kaisha | System for executing first and second independently executable programs until each program relinquishes control or encounters real time interrupts |
JPH0749790A (ja) * | 1993-06-01 | 1995-02-21 | Matsushita Electric Ind Co Ltd | プロセッサにおける割り込み制御方法及び割り込み制御回路 |
DE19500957A1 (de) | 1994-07-19 | 1996-01-25 | Bosch Gmbh Robert | Verfahren zur Steuerung von technischen Vorgängen oder Prozessen |
US6009454A (en) * | 1994-09-30 | 1999-12-28 | Allen-Bradley Company, Llc | Multi-tasking operation system for industrial controller |
US5872909A (en) * | 1995-01-24 | 1999-02-16 | Wind River Systems, Inc. | Logic analyzer for software |
US5619409A (en) * | 1995-06-12 | 1997-04-08 | Allen-Bradley Company, Inc. | Program analysis circuitry for multi-tasking industrial controller |
US5844795A (en) * | 1995-11-01 | 1998-12-01 | Allen Bradley Company, Llc | Diagnostic aid for industrial controller using multi-tasking architecture |
JP3139392B2 (ja) * | 1996-10-11 | 2001-02-26 | 日本電気株式会社 | 並列処理システム |
US6128641A (en) * | 1997-09-12 | 2000-10-03 | Siemens Aktiengesellschaft | Data processing unit with hardware assisted context switching capability |
US5991792A (en) * | 1998-01-02 | 1999-11-23 | International Business Machines Corporation | Method, apparatus and computer program product for dynamically managing a thread pool of reusable threads in a computer system |
US6272388B1 (en) * | 1998-09-29 | 2001-08-07 | Rockwell Technologies, Llc | Program structure and method for industrial control |
-
2000
- 2000-12-08 DE DE10061001A patent/DE10061001B4/de not_active Expired - Lifetime
-
2001
- 2001-12-07 JP JP2001374622A patent/JP4571355B2/ja not_active Expired - Fee Related
- 2001-12-10 US US10/013,167 patent/US7296270B2/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8806443B2 (en) | 2005-05-09 | 2014-08-12 | Robert Bosch Gmbh | Method for monitoring control devices |
Also Published As
Publication number | Publication date |
---|---|
JP4571355B2 (ja) | 2010-10-27 |
US7296270B2 (en) | 2007-11-13 |
US20020099757A1 (en) | 2002-07-25 |
DE10061001B4 (de) | 2005-05-04 |
JP2002251291A (ja) | 2002-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
DE4410775C2 (de) | Steuergerät und Arbeitsverfahren eines Betriebssystems für dieses Steuergerät | |
DE2911773A1 (de) | Mikroprogrammsteuerung | |
DE19535546B4 (de) | Verfahren zum Betreiben eines durch ein Realzeit-Betriebssystem gesteuerten Realzeit-Computersystems | |
DE2101949A1 (de) | Verfahren zum Schutz von Datengruppen in einer Multiprocessing-Datenverarbeitungsanlage | |
DE10061001B4 (de) | Verfahren und Steuergerät zur Steuerung von technischen Vorgängen in einem Kraftfahrzeug, sowie Speicherelement und Steuerprogramm hierfür | |
EP0799441B1 (de) | Verfahren zur steuerung von technischen vorgängen | |
DE4106164A1 (de) | Verfahren zum suchen und beseitigen von programmfehlern durch ausfuehren eines blockmodenlaufes | |
EP3080668B1 (de) | Verfahren zur beeinflussung eines steuerprogramms eines steuergeräts | |
DE10144788A1 (de) | Verfahren und Vorrichtung zur sicheren hochperformanten Aufzeichnung von Prozessdaten bei numerisch gesteuerten industriellen Bearbeitungsmaschinen | |
EP0450116B1 (de) | Automatisierungsgerät mit Test in einzelnen Schritten | |
DE69307484T2 (de) | Steuerungsverfahren eines punktschweissroboters | |
DE10065498A1 (de) | Verfahren und Vorrichtung zur Rekonstruktion des Prozessablaufs eines Steuerprogramms | |
DE102018125090A1 (de) | Verfahren zur Datenverarbeitung und speicherprogrammierbare Steuerung | |
EP0860758B1 (de) | Einrichtung zur Programmierung einer SPS | |
DE102005059593A1 (de) | Verfahren und Vorrichtung zur Umschaltung bei einem Speicher für ein Steuergerät | |
DE10110444A1 (de) | Verfahren und Vorrichtung zum Ermitteln der Auslastung eines Rechengeräts | |
DE1774421B1 (de) | Mehrprogramm datenverarbeitungsanlage | |
EP0990964A1 (de) | Verfahren zum Betrieb eines Automatisierungssystems | |
DE102017130552B3 (de) | Verfahren zur Datenverarbeitung und speicherprogrammierbare Steuerung | |
EP2126643B1 (de) | Verfahren zum austausch von strukturkomponenten für ein automatisierungssystem | |
DE3688506T2 (de) | Datenverarbeitungsanlage. | |
DE3887717T2 (de) | Prozessor für programmierbaren logischen regler und programmierbarer logischer regler. | |
DE4333952B4 (de) | Numerische Steuerung für Werkzeugmaschinen | |
EP0121038A2 (de) | Speicherprogrammierbare Steuerung | |
DE102018205390A1 (de) | Verfahren und Vorrichtung zur Fehlerbehandlung in einer Kommunikation zwischen verteilten Software Komponenten |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
OP8 | Request for examination as to paragraph 44 patent law | ||
8364 | No opposition during term of opposition | ||
R084 | Declaration of willingness to licence | ||
R071 | Expiry of right |