DE10229686A1 - Verfahren und Steuergerät zur Steuerung des Ablaufs eines multitaskingfähigen Computerprogramms - Google Patents

Verfahren und Steuergerät zur Steuerung des Ablaufs eines multitaskingfähigen Computerprogramms Download PDF

Info

Publication number
DE10229686A1
DE10229686A1 DE10229686A DE10229686A DE10229686A1 DE 10229686 A1 DE10229686 A1 DE 10229686A1 DE 10229686 A DE10229686 A DE 10229686A DE 10229686 A DE10229686 A DE 10229686A DE 10229686 A1 DE10229686 A1 DE 10229686A1
Authority
DE
Germany
Prior art keywords
transition
computer program
control
execution
state
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.)
Ceased
Application number
DE10229686A
Other languages
English (en)
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Robert Bosch GmbH
Original Assignee
Robert Bosch GmbH
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Robert Bosch GmbH filed Critical Robert Bosch GmbH
Priority to DE10229686A priority Critical patent/DE10229686A1/de
Priority to JP2003184751A priority patent/JP2004046857A/ja
Priority to US10/608,796 priority patent/US20040060050A1/en
Publication of DE10229686A1 publication Critical patent/DE10229686A1/de
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60TVEHICLE BRAKE CONTROL SYSTEMS OR PARTS THEREOF; BRAKE CONTROL SYSTEMS OR PARTS THEREOF, IN GENERAL; ARRANGEMENT OF BRAKING ELEMENTS ON VEHICLES IN GENERAL; PORTABLE DEVICES FOR PREVENTING UNWANTED MOVEMENT OF VEHICLES; VEHICLE MODIFICATIONS TO FACILITATE COOLING OF BRAKES
    • B60T13/00Transmitting braking action from initiating means to ultimate brake actuator with power assistance or drive; Brake systems incorporating such transmitting means, e.g. air-pressure brake systems
    • B60T13/10Transmitting braking action from initiating means to ultimate brake actuator with power assistance or drive; Brake systems incorporating such transmitting means, e.g. air-pressure brake systems with fluid assistance, drive, or release
    • B60T13/66Electrical control in fluid-pressure brake systems
    • B60T13/662Electrical control in fluid-pressure brake systems characterised by specified functions of the control system components
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60TVEHICLE BRAKE CONTROL SYSTEMS OR PARTS THEREOF; BRAKE CONTROL SYSTEMS OR PARTS THEREOF, IN GENERAL; ARRANGEMENT OF BRAKING ELEMENTS ON VEHICLES IN GENERAL; PORTABLE DEVICES FOR PREVENTING UNWANTED MOVEMENT OF VEHICLES; VEHICLE MODIFICATIONS TO FACILITATE COOLING OF BRAKES
    • B60T8/00Arrangements for adjusting wheel-braking force to meet varying vehicular or ground-surface conditions, e.g. limiting or varying distribution of braking force
    • B60T8/32Arrangements for adjusting wheel-braking force to meet varying vehicular or ground-surface conditions, e.g. limiting or varying distribution of braking force responsive to a speed condition, e.g. acceleration or deceleration
    • B60T8/88Arrangements for adjusting wheel-braking force to meet varying vehicular or ground-surface conditions, e.g. limiting or varying distribution of braking force responsive to a speed condition, e.g. acceleration or deceleration with failure responsive means, i.e. means for detecting and indicating faulty operation of the speed responsive control means
    • B60T8/885Arrangements for adjusting wheel-braking force to meet varying vehicular or ground-surface conditions, e.g. limiting or varying distribution of braking force responsive to a speed condition, e.g. acceleration or deceleration with failure responsive means, i.e. means for detecting and indicating faulty operation of the speed responsive control means using electrical circuitry
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60TVEHICLE BRAKE CONTROL SYSTEMS OR PARTS THEREOF; BRAKE CONTROL SYSTEMS OR PARTS THEREOF, IN GENERAL; ARRANGEMENT OF BRAKING ELEMENTS ON VEHICLES IN GENERAL; PORTABLE DEVICES FOR PREVENTING UNWANTED MOVEMENT OF VEHICLES; VEHICLE MODIFICATIONS TO FACILITATE COOLING OF BRAKES
    • B60T2270/00Further aspects of brake control systems not otherwise provided for
    • B60T2270/40Failsafe aspects of brake control systems
    • B60T2270/402Back-up
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25347Multitasking machine control
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/26Pc applications
    • G05B2219/2637Vehicle, car, auto, wheelchair

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Transportation (AREA)
  • Mechanical Engineering (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Programmable Controllers (AREA)
  • Control By Computers (AREA)

Abstract

Die Erfindung betrifft ein Verfahren und ein Steuergerät (20) zur Steuerung des Ablaufs eines multitaskingfähigen Computerprogramms (22) auf einem Rechengerät (21), insbesondere auf einem Mikroprozessor, eines Steuergeräts (20) zur Steuerung und/oder Regelung eines Systems, das verschiedene mögliche Systemzustände (30) einnehmen kann. Um den Ablauf des Computerprogramms (22) derart zu koordinieren, dass die für die Ausführung einer Funktion des Computerprogramms (22) erforderlichen Eingangsgrößen (Ein_i) zu Beginn der Ausführung der Funktion mit Sicherheit vorliegen, wird vorgeschlagen, dass für jeden möglichen Übergang (31) von einem Systemzustand (30) in einen anderen Systemzustand (30) Übergangsbedingungen definiert werden und der Ablauf des Computerprogramms (22) derart gesteuert wird, dass das System erst dann von einem ersten Systemzustand (30) in einen zweiten Systemzustand (30) überführt wird, wenn alle für diesen Übergang (31) definierten Übergangsbedingungen erfüllt sind.

Description

  • Stand der Technik
  • Die vorliegende Erfindung betrifft ein Verfahren zur Steuerung des Ablaufs eines multitaskingfähigen Computerprogramms auf einem Rechengerät, insbesondere auf einem Mikroprozessor, eines Steuergeräts zur Steuerung und/oder Regelung eines Systems. Das System kann verschiedene mögliche Systemzustände einnehmen.
  • Die Erfindung betrifft außerdem ein Steuerprogramm zur Steuerung des Ablaufs eines multitaskingfähigen Computerprogramms auf einem Rechengerät, insbesondere auf einem Mikroprozessor, eines Steuergeräts zur Steuerung und/oder Regelung eines Systems, das verschiedene mögliche Systemzustände einnehmen kann. Das Steuerprogramm ist auf dem Rechengerät ablauffähig.
  • Die vorliegende Erfindung betrifft schließlich auch ein Steuergerät zur Steuerung und/oder Regelung eines Systems, das verschiedene mögliche Systemzustände einnehmen kann. Das Steuergerät umfasst ein Rechengerät, insbesondere einen Mikroprozessor, auf dem ein multitaskingfähigen Computerprogramm ablauffähig ist, und Mittel zur Steuerung des Ablaufs des Computerprogramms.
  • Aus dem Stand der Technik ist bspw. ein Computerprogramm zur Steuerung und/oder Regelung eines Fahrdynamiksystems (sog. elektronisches Stabilitätsprogramm, ESP) eines Kraftfahrzeugs bekannt. Das Fahrdynamiksystem kann verschiedene mögliche Systemzustände einnehmen. Mögliche Systemzustände sind bspw. ein Normalbetrieb (ESP_normal), ein erster eingeschränkter Betrieb (Backup_ABS), in dem ein Fahrzeugregler (FZR) des ESP nicht und lediglich ein Antiblockiersystem (ABS) funktionsfähig ist, ein zweiter eingeschränkter Betrieb (Backup_EBD), in dem lediglich ein System zur Verteilung der Bremskraft (Electronic Brake Distribution, EBD) funktionsfähig ist, um zumindest ein Überbremsen der Räder an der Hinterachse zu verhindern, und ein fehlerhafter Zustand (FailSafe), in dem alle wesentlichen Sicherheitsfunktionen des ESP, insbesondere FZR, ABS und EBD, ausgefallen sind. Um sicherheitskritische Fahrsituationen zu vermeiden, werden einem Fahrer des Kraftfahrzeugs die verschiedenen Systemzustände, zumindest aber die Zustände, in denen nur noch eine eingeschränkte bzw. eine fehlerhafte Funktion des Systems gegeben ist, bspw. akustisch oder optisch mittels Warnlampen mitgeteilt. Das Computerprogramm ist auf einem Rechengerät, das insbesondere als ein Prozessor ausgebildet ist, eines Steuergeräts zur Steuerung und/oder Regelung des Fahrdynamik-Systems ablauffähig.
  • Nach dem Stand der Technik wird das Computerprogramm zur Steuerung und/oder Regelung des Fahrdynamik-Systems in einem vorgebbaren Zeitraster, d. h. lediglich in einer einzigen Zeitscheibe, zyklisch abgearbeitet. Die Funktionsaufrufe innerhalb des Computerprogramms erfolgen also in einer vorgegebenen Reihenfolge nacheinander. Die Reihenfolge wird derart vorgegeben, dass die Eingangsgrößen der Funktionen vor deren Ausführung zur Verfügung stehen. Bei Eingangsgrößen, die von anderen Funktionen berechnet werden, müssen also diese anderen Funktionen zunächst ausgeführt werden, bevor die Funktion ausgeführt werden kann, welche die in den anderen Funktionen berechneten Eingangsgrößen benötigt.
  • Aus dem Stand der Technik ist es des Weiteren bekannt, Computerprogramme zur Steuerung und/oder Regelung eines Systems auf einem multitaskingfähigen Betriebssystem auszuführen, und das Computerprogramm statt in einem einzigen in verschiedenen Zeitrastern abzuarbeiten. Das. bedeutet jedoch, dass die Funktionen des Computerprogramms nicht mehr in einer strikt festgelegten Reihenfolge abgearbeitet werden und dass nunmehr andere Vorkehrungen getroffen werden müssen, um sicherzustellen, dass die Eingangsgrößen der Funktionen vor deren Ausführung zur Verfügung stehen.
  • Den Funktionen des Computerprogramms werden verschiedene Prioritäten zugeordnet. Sicherheitsrelevanten Funktionen wird eine höhere Priorität zugeordnet als anderen Funktionen. Höherpriore Funktionen werden in kürzeren Zeitrastern ausgeführt, d. h. in Zeitrastern, die häufiger wiederholt werden, wohingegen weniger sicherheitsrelevante Funktionen mit einer niedrigeren Priorität in längeren Zeitrastern abgearbeitet werden, die seltener wiederholt werden. Insbesondere muss sichergestellt werden, dass die Eingangsgrößen der Funktionen immer zum richtigen Zeitpunkt vorliegen, d. h. eine Funktion, die bspw. in einem 5ms-Zeitraster abgearbeitet wird und Eingangsgrößen aus einem 40ms-Zeitraster benötigt, darf erst dann ausgeführt werden, nachdem das 40ms-Zeitraster bereits abgearbeitet wurde und die erforderlichen Eingangsgrößen berechnet wurden.
  • Der vorliegenden Erfindung liegt die Aufgabe zugrunde, den Ablauf eines multitaskingfähigen Computerprogramms derart zu koordinieren, dass die für die Ausführung einer Funktion des Computerprogramms erforderlichen Eingangsgrößen zu Beginn der Ausführung der Funktion mit Sicherheit vorliegen.
  • Zur Lösung dieser Aufgabe wird ausgehend von dem Verfahren der eingangs genannten Art vorgeschlagen, dass für jeden möglichen Übergang von einem Systemzustand in einen anderen Systemzustand Übergangsbedingungen definiert werden und der Ablauf des Computerprogramms derart gesteuert wird, dass das System erst dann von einem ersten Systemzustand in einen zweiten Systemzustand überführt wird, wenn alle für diesen Übergang definierten Übergangsbedingungen erfüllt sind.
  • Vorteile der Erfindung
  • Durch die erfindungsgemäß definierten Übergangsbedingungen kann der Ablauf eines multitaskingfähigen Computerprogramms gezielt beeinflusst werden. Insbesondere kann durch eine geeignete Definition der Übergangsbedingungen bei der Abarbeitung eines multitaskingfähigen Computerprogramms sichergestellt werden, dass zu Beginn der Ausführung einer Funktion alle zur Ausführung dieser Funktion erforderlichen Eingangsgrößen oder zumindest geeignete Ersatzgrößen vorliegen.
  • Gemäß einer vorteilhaften Weiterbildung der vorliegenden Erfindung wird vorgeschlagen, dass eine Übergangsbedingung mindestens eine Übergangsabfrage und mindestens einen entsprechenden Übergangswert als vorgegebene Antwort auf die Übergangsabfrage umfasst, wobei eine Übergangsbedingung dann als erfüllt angesehen wird, wenn als Antwort auf die oder jede Übergangsabfrage der vorgegebene Übergangswert zurückgegeben wird. Eine Übergangsabfrage kann bspw. als eine Abfrage nach dem Vorliegen einer bestimmten Eingangsgröße umfassen, welche zur Abarbeitung einer Funktion des zweiten Systemzustands benötigt wird („Liegt Eingangsgröße xyz vor?"). Der entsprechende Übergangswert als Antwort auf die Abfrage ist bspw. ja oder nein bzw. 1 oder 0 („1": Eingangsgröße liegt vor). Erst wenn für diese Übergangsabfrage und für alle anderen Übergangsabfragen, die für einen gewünschten Systemübergang einem ersten zu einem zweiten Systemzustand definiert wurden, die entsprechenden Übergangswerte vorliegen, wird das System in den zweiten Systemzustand überführt.
  • Gemäß einer bevorzugten Ausführungsform der vorliegenden Erfindung wird vorgeschlagen, dass die Übergangswerte in einer Übergangstabelle abgelegt werden. In der Übergangstabelle können die Übergangswerte unterteilt nach Systemzuständen abgelegt werden. D. h. vor einem Wechsel des Systems in einen bestimmten Systemzustand wird überprüft, ob die Antworten auf die Übergangsabfragen den in der Übergangstabelle für diesen Systemzustand abgelegten Übergangswerten entsprechen. Die Übergangsabfragen können bspw, als logische IF-THEN-Abfragen realisert sein. Das hat den Vorteil, dass die Steuerung des Programmablaufs durch das Formulieren weiterer Übergangsabfragen und durch Abspeichern weiterer Übergangswerte in der Übergangstabelle auf einfache Weise erweitert und an einen erweiterten Funktionsumfang des Systems angepasst werden kann.
  • Gemäß einer anderen vorteilhaften Weiterbildung der vorliegenden Erfindung wird vorgeschlagen, dass das Computerprogramm in mehrere funktional zusammenhängende Funktionalitäten unterteilt wird, dass die möglichen Systemzustände des Systems definiert werden, indem den Funktionalitäten für jeden Systemzustand vorgebbare Betriebszustände zugeordnet werden und dass die Übergangsbedingungen erfüllt sind, wenn zumindest die den zweiten Systemzustand charakterisierenden Funktionalitäten die ihnen für diesen Systemzustand zugeordneten Betriebszustände aufweisen. Gemäß dieser Weiterbildung werden also die Systemzustände des Systems durch die Betriebszustände der Funktionalitäten definiert. Das System geht erst dann in einen anderen Systemzustand über, wenn sich sämtliche den Systemzustand charakterisierenden Funktionalitäten die geforderten Betriebszustände aufweisen. Dies wird anhand der Übergangsbedingungen bzw. anhand der Übergangsabfragen überprüft.
  • Gemäß einer weiteren bevorzugten Ausführungsform der vorliegenden Erfindung wird vorgeschlagen, dass ein Betriebszustand durch eine Betriebszustandsvariable definiert wird, die verschiedene Betriebszustandswerte annehmen kann und dass die Übergangsbedingungen erfüllt sind, wenn die Betriebszustandsvariablen der den zweiten Systemzustand charakterisierenden Funktionalitäten die ihnen für diesen Systemzustand zugeordneten Betriebszustandswerte aufweisen. Diese Ausführungsform ermöglicht eine besonders einfache und übersichtliche Realisierung der Erfindung. Je nach dem wie viele Betriebszustände eine Funktionalität annehmen kann, kann die Betriebszustandsvariable ein Bit (für zwei verschiedene Betriebszustände) oder ein Byte (für 2^8 verschiedene Betriebszustände) umfassen.
  • Vorteilhafterweise nimmt die Betriebszustandsvariable den Stellungen „volle Funktionalität", „eingeschränkte Funktionalität" und „keine Funktionalität" entsprechende Betriebszustandswerte an.
  • Gemäß noch einer anderen bevorzugten Weiterbildung der vorliegenden Erfindung wird vorgeschlagen, dass jeder Funktionalität eine Übergangstabelle zugeordnet wird. Um das System von einem ersten in einen zweiten Systemzustand umzuschalten, werden also zunächst diejenigen Funktionalitäten des Computerprogramms ermittelt, durch welche der zweite Systemzustand charakterisiert ist. Dann werden die den zweiten Systemzustand charakterisierenden Funktionalitäten darauf hin überprüft, ob sie die ihnen für den zweiten Systemzustand zugeordneten Betriebszustände aufweisen. Dies geschieht dadurch, dass im Rahmen von Übergangsabfragen Funktionalität für Funktionalität überprüft wird, ob die Betriebszustandsvariable der Funktionalität den ihr für den zweiten Systemzustand zugeordneten und in der entsprechenden Übergangstabelle abgelegten Betriebszustandswert aufweist. Es wird also überprüft, ob die in den Übergangstabelle für die jeweilige Funktion definierten Übergangsbedingungen erfüllt sind.
  • Gemäß noch einer weiteren bevorzugten Ausführungsform der vorliegenden Erfindung wird vorgeschlagen, dass mehrere Funktionalitäten zu einer Komponente zusammenfasst werden und jeder Komponente eine Übergangstabelle zugeordnet wird. In einer Übergangstabelle sind also die Übergangswerte für mehrere Funktionalitäten einer Komponente abgelegt.
  • Erfindungsgemäß werden des Weiteren zwei besonders vorteilhafte Verwendungen des erfindungsgemäßen Verfahrens zur Steuerung des Ablaufs eines multitaskingfähigen Computerprogramms vorgeschlagen. Zum einen wird vorgeschlagen, das Verfahren zur Steuerung des Ablaufs eines Computerprogramms zur Steuerung und/oder Regelung eines Systems in einem Fahrzeug, insbesondere in einem Kraftfahrzeug, zu verwenden. Insbesondere wird vorgeschlagen, das Verfahren zur Steuerung des Ablaufs eines Computerprogramms zur Steuerung und/oder Regelung eines Fahrdynamiksystems in einem Kraftfahrzeug zu verwenden. Zum anderen wird vorgeschlagen, das Verfahren zur Steuerung des Ablaufs eines Computerprogramms zur Steuerung und/oder Regelung eines Systems in einem Gebäude zu verwenden. Insbesondere wird vorgeschlagen, das Verfahren zur Steuerung des Ablaufs eines Computerprogramms zur Steuerung und/oder Regelung eines Alarmsystems, eines Heizungs- und Klimatisierungssystems und/oder eines Zugangskontrollsystems in einem Gebäude zu verwenden.
  • Von besonderer Bedeutung ist die Realisierung des erfindungsgemäßen Verfahrens in der Form eines Steuerprogramms, das für ein Steuergerät zur Steuerung und/oder Regelung eines Systems, das verschiedene mögliche Systemzustände einnehmen kann, vorgesehen ist. Dabei ist das Steuerprogramm auf einem Rechengerät, insbesondere auf einem Mikroprozessor, des Steuergeräts ablauffähig und zur Ausführung des erfindungsgemäßen Verfahrens geeignet. In diesem Fall wird also die Erfindung durch das Steuerprogramm realisiert, so dass das Steuerprogramm in gleicher Weise die Erfindung darstellt wie das Verfahren, zu dessen Ausführung es geeignet ist. Besonders bevorzugt ist dabei, wenn das Steuerprogramm auf einem Speicherelement, insbesondere auf einem Read-Only-Memory, auf einem Random-Access-Memory oder auf einem Flash-Memory abgespeichert ist.
  • Als eine weitere Lösung der Aufgabe der vorliegenden Erfindung wird ausgehend von dem Steuergerät der eingangs genannten Art vorgeschlagen, dass das Steuergerät Mittel zur Definition von Übergangsbedingungen für jeden möglichen Übergang von einem Systemzustand in einen anderen Systemzustand und die Mittel zur Steuerung des Ablaufs des Computerprogramms den Ablauf des Computerprogramms derart steuern, dass das System erst dann von einem ersten Systemzustand in einen zweiten Systemzustand wechselt, wenn alle für diesen Übergang definierten Übergangsbedingungen erfüllt sind.
  • Gemäß einer vorteilhaften Weiterbildung der vorliegenden Erfindung wird vorgeschlagen, dass das Steuergerät Mittel zur Ausführung des erfindungsgemäßen Verfahrens aufweist.
  • Zeichnungen
  • 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:
  • 1 verschiedene Systemzustände eines Systems;
  • 2 eine Funktionalität eines multitaskingfähigen Computerprogramms zur Steuerung und/oder Regelung eines Systems;
  • 3 ein Ablaufdiagramm eines Verfahrens zur Steuerung des Ablaufs eines multitaskingfähigen Computerprogramms;
  • 4 ein Ablaufdiagramm eines erfindungsgemäßen Verfahrens gemäß einer bevorzugten Ausführungsform; und
  • 5 ein erfindungsgemäßes Steuergerät gemäß einer bevorzugten Ausführungsform.
  • Beschreibung der Ausführungsbeispiele
  • Die vorliegende Erfindung betrifft ein multitaskingfähiges Computerprogramm zur Steuerung und/oder Regelung eines Systems. Das Computerprogramm ist auf einem Rechengerät, insbesondere auf einem Mikroprozessor, eines Steuergeräts zur Steuerung und/oder Regelung des Systems ablauffähig. Das multitaskingfähige Computerprogramm wird in mehreren unterschiedlichen Zeitrastern abgearbeitet. Zwar wiederholen sich die einzelnen Zeitraster zyklisch, insgesamt betrachtet wird das Computerprogramm aber nicht zyklisch abgearbeitet.
  • Das Computerprogramm ist in mehrere Aufgabenprogramme (sog. Tasks) unterteilt, denen verschiedene Prioritäten zugeordnet sind. Tasks mit sicherheitsrelevant Aufgaben werden höhere Prioritäten zugeordnet als solchen Tasks, die keine sicherheitsrelevanten Aufgaben haben. Die höher prioren Tasks werden in kürzeren Zeitrastern ausgeführt, d. h. sie werden pro Zeiteinheit häufiger abgearbeitet als die nieder Prioren Tasks.
  • Die Unterteilung des Computerprogramms in mehrere Tasks betrifft die softwaretechnische Realisierung des Computerprogramms. Auf der funktionalen Ebene ist das Computerprogramm in mehrere funktional zusammenhängende Einheiten, sog. Funktionalitäten, unterteilt. Eine Funktionalität kann eine oder mehrere Tasks umfassen. Bei einem Computerprogramm zur Steuerung und/oder Regelung eines Fahrdynamiksystems (elektronisches Stabilitätsprogramm, ESP) in einem Kraftfahrzeug sind Funktionalitäten bspw. ein Antiblockiersystem (ABS), durch das ein Blockieren der Räder beim Bremsen verhindert wird, oder ein Fahrzeugregler (FZR), der auf die einzelnen Räder gezielt Bremseingriffe vornimmt, um die Fahrdynamik des Kraftfahrzeugs zu erhalten.
  • Aufgrund der Tatsache, dass bei einem multitaskingfähigen Computerprogramm die Funktionsaufrufe nicht einfach nacheinander erfolgen und somit nicht einfach durch die Reihenfolge der Aufrufe sichergestellt werden kann, dass die Eingangsgrößen einer Funktionalität von einer zuvor ausgeführten Funktionalität bereits ermittelt worden sind, müssen bei multitaskingfähigen Computerprogrammen andere Vorkehrungen getroffen werden, um sicherzustellen, dass den auszuführenden Funktionalitäten die erforderlichen Eingangsgrößen immer richtig vorliegen. So darf bspw. eine Funktionalität, die in einer 5ms-Task aufgerufen wird und die Eingangsgrößen aus einer 40ms-Task benötigt, beim ersten Aufruf erst dann ausgeführt werden, wenn die 40ms-Task bereits berechnet wurde.
  • Ein wichtiger Aspekt der vorliegenden Erfindung ist es, dass jedem der Systemzustände bzw. jedem (zulässigen) Übergang von einem ersten Systemzustand zu einem zweiten Systemzustand Übergangsbedingungen zugeordnet sind, und der Ablauf des Computerprogramms derart gesteuert wird, dass das System erst dann in den zweiten Systemzustand überführt wird, wenn alle dem Übergang in den zweiten Systemzustand zugeordneten Übergangsbedingungen erfüllt sind. Wenn die Übergangsbedingung bspw. darin besteht, dass sämtliche Eingangsgrößen einer den zweiten Systemzustand charakterisierenden Funktionalität zur Verfügung stehen, kann anhand des erfindungsgemäßen Verfahrens sichergestellt werden, dass das Gesamtsystem tatsächlich erst dann von dem ersten Systemzustand in den zweiten Systemzustand überführt wird, wenn alle erforderlichen Eingangsgrößen vorliegen.
  • Die verschiedenen Systemzustände 30 sind in 1 am Beispiel eines Fahrdynamiksystems (ESP) dargestellt. Es sind u.a. die nachfolgenden Systemzustände 30 möglich:
    • – „FullSystem": Normalbetrieb, volle Funktionsfähigkeit des Fahrdynamiksystems;
    • – „Backup_ABS": Nur Antiblockiersystem (ABS), kein Fahrzeugregler (FZR) aktiv, eingeschränkte Funktionsfähigkeit;
    • – „Backup_EBD": Nur elektronische Bremskraftverteilung (Electronic Brake Distribution, EBD) aktiv, eingeschränkte Funktionsfähigkeit;
    • – „FailSafe": FZR, ABS, EBD inaktiv, keinerlei Funktionsfähigkeit des Systems; und
    • – „XYZ": ein beliebig anderer Systemzustand.
  • Die Übergänge zwischen den Systemzuständen sind mit dem Bezugszeichen 31 bezeichnet.
  • In 2 ist eine Funktionalität X dargestellt, welche die Eingangsgrößen Ein_i und die Ausgangsgrößen Aus_i aufweist. Zwischen den Eingangsgrößen Ein_i und den Ausgangsgrößen Aus_i ist ein in horizontaler Richtung verschiebbarer Schieber vorgesehen, der drei verschiedene Betriebszustände A, B, C der Funktionalität X repräsentiert. Durch Verschieben des Schiebers kann der Betriebszustand A, B, C der Funktionalität X gewechselt werden.
  • Die verschiedenen Systemzustände 30 des Systems sind dadurch charakterisiert, dass mindestens eine der Funktionalitäten X des Systems einen vorgebbaren Betriebszustand A, B, C aufweist. Aus der Summe der Betriebszustände A, B, C der Funktionalitäten X ergibt sich somit der entsprechende Systemzustand 30 des Gesamtsystems. Jeder Funktionalität X des Computerprogramms ist eine Betriebszustandsvariable zugeordnet, die verschiedene Betriebszustandswerte, die jeweils einem bestimmten Betriebszustand A, B, C der Funktionalität X entsprechen, annehmen kann.
  • Das Umschalten einer Funktionalität X in einen anderen Betriebszustand A, B, C kann bspw. erforderlich sein, wenn nicht alle zur Ausführung der Funktionalität X erforderlichen Eingangsgrößen Ein_i vorliegen. Zunächst kann versucht werden, den Ablauf dieser Funktionalität X so weit hinauszuzögern, bis alle erforderlichen Eingangsgrößen Ein_i vorliegen, d. h. bis andere Funktionalitäten X, in denen die erforderlichen Eingangsgrößen Ein_i ermittelt wurden, ausgeführt worden sind. Es sind jedoch Situationen denkbar, in denen ein Hinauszögern der Ausführung einer Funktionalität X, bis alle erforderlichen Eingangsgrößen Ein_i vorliegen, nicht möglich ist. In einem solchen Fall können die fehlenden Eingangsgrößen Ein_i auch anhand anderer Größen modelliert oder mittels eines alternativen Algorithmus berechnet werden. Es ist auch denkbar, statt der fehlenden Eingangsgröße Ein_i eine andere Größe, die bereits zur Verfügung steht, zur Ausführung der Funktionalität X heranzuziehen. Alle diese Maßnahmen, die ergriffen werden können, falls eine erforderliche Eingangsgröße Ein_i nicht zur Verfügung steht, führen letzten Endes jedoch mehr oder weniger zu einer Einschränkung der Funktionsfähigkeit der Funktionalität, was durch einen Wechsel des Betriebszustandes A, B, C ausgedrückt wird.
  • In 3 wird ein Verfahren zur Steuerung des Ablaufs eines multitaskingfähigen Computerprogramms beispielhaft anhand eines Fahrdynamiksystems in einem Kraftfahrzeug beschrieben. Dieses Verfahren und insbesondere die vorliegende Erfindung kann jedoch für beliebige Systeme eingesetzt werden, die durch ein multitaskingfähiges Computerprogramm gesteuert und/oder geregelt werden. Eine weitere Einsatzmöglichkeit, die hier ausdrücklich angesprochen wird, ist der Einsatz des erfindungsgemäßen Verfahrens zur Steuerung des Ablaufs eines Computerprogramms zur Steuerung und/oder Regelung eines Alarmsystems, eines Heizungs- und Klimatisierungssystems und/oder eines Zugangskontrollsystems in einem Gebäude, also an den Einsatz des erfindungsgemäßen Verfahrens im Bereich des Gebäudemanagements.
  • In einem Funktionsblock 1 wird die sog. Plattform-Software (PSW) überwacht. Unter Plattform-Software wird der hardwarenahe Teil des Computerprogramms zur Steuerung und/oder Regelung des Fahrdynamiksystems verstanden. In einem Funktionsblock 2 wird die Anwender-Software (ASW) überwacht. Unter Anwender-Software wird bei einem Fahrdynamiksystem bspw. der ABS-Regler oder der Fahrzeugregler (FZR) verstanden. Die Funktionsblöcke 1 und 2 dienen zur Erkennung von Fehlern 11, 12 in den entsprechenden Softwareteilen. Ein möglicher Fehler 11, 12, der in den Funktionsblöcken 1 und 2 erkannt werden könnte, wäre bspw. ein Sensorfehler, der es verhindert, dass eine bestimmte Eingangsgröße Ein_i, die zur Berechnung einer Funktionalität X erforderlich ist, zur Verfügung steht.
  • Die in den Funktionsblöcken 1 und 2 erkannten Fehler 11, 12 werden an einen Funktionsblock 3 übermittelt, der als ein Makro realisiert ist. In dem Funktionsblock 3 wird anhand der in den Funktionsblöcken 1 und 2 ermittelten Fehler 11, 12 ein entsprechender Fehlerzustand 13 des Systems ermittelt. Dieser Fehlerzustand 13 wird von dem Funktionsblock 3 an einen weiteren Funktionsblock 4 übertragen, der als Failure Processing System (FPS) bezeichnet wird. In dem Funktionsblock 4 wird unter Berücksichtigung der ermittelten Fehlerzustände 13 eine entsprechende Strategie zum Übergang in den zweiten Systemzustand, genauer gesagt, eine Strategie zum gezielten Wechseln der Betriebszustände A, B, C der den zweiten Systemzustand charakterisierenden Funktionalitäten, ermittelt. Die in dem Funktionsblock 4 ermittelte Strategie 14 zum Umschalten der Betriebszustände A, B, C der Funktionalitäten X zum Übergang in den zweiten Systemzustand, wird an einen Funktionsblock 5 übermittelt. Genauer gesagt, werden von dem Funktionsblock 4 an den Funktionsblock 5 gemäß der ermittelten Strategie 14 nacheinander verschiedene Soll-Betriebszustände derjenigen Funktionalitäten übermittelt, die den zweiten Systemzustand charakterisieren. Die ermittelte Strategie 14 repräsentiert also einem Soll-Systemzustand, in dem vorliegenden Ausführungsbeispiel den zweiten Systemzustand.
  • Die in dem Funktionsblock 3 ermittelten Fehlerzustände 13 werden außerdem an einen Funktionsblock 6 übertragen, in welchem der Status der Eingangsgrößen Ein_i der Funktionalitäten X durch Setzen eines sog. Invalid Bit gekennzeichnet wird. Für jede Eingangsgröße Ein_i der Funktionalitäten X des Computerprogramms ist ein eigenes Statussignal in Form des Invalid Bit vorgesehen. Wenn also in den Funktionsblöcken 1 oder 2 ein Sensorfehler 11, 12 detektiert wurde, werden diejenigen Eingangsgrößen Ein_i, die von dem Sensorfehler 11, 12 beeinträchtigt werden, durch Setzen oder Löschen des Invalid Bit entsprechend gekennzeichnet. Das Statussignal 15 wird ebenfalls an den Funktionsblock 5 übertragen.
  • In einem Funktionsblock 7 wird der Ist-Systemzustand 16 ermittelt und ebenfalls an den Funktionsblock 5 übertragen. Am Beispiel eines Fahrdynamiksystems umfasst der Ist-Systemzustand 16 den Zustand des Fahrdynamiksystems an sich, aber auch den Fahrzustand des Kraftfahrzeugs. In einem Funktionsblock 8 werden die Abhängigkeiten 17 der Betriebszustände A, B, C bzw. der Funktionalitäten X untereinander ermittelt. Die ermittelten Abhängigkeiten 17 werden ebenfalls an den Funktionsblock 5 übermittelt.
  • In dem Funktionsblock 5 werden Soll-Betriebszustände 18 in Abhängigkeit der von den Funktionsblöcken 4, 6, 7, 8 erhaltenen Größen 14, 15, 16, 17 aufbereitet. Insbesondere wird in dem Funktionsblock 5 überprüft, ob die Betriebszustandsvariablen der Funktionalitäten X die für den zweiten Systemzustand geforderten Betriebszustandswerte aufweisen, d. h. ob sich die den zweiten Systemzustand charakterisierenden Funktionalitäten in den geforderten Betriebszuständen befinden. Die Funktionsblöcke 4 bis 8 sind in einem übergeordneten Funktionsblock 9 zusammengefasst, der als Controller Release System (CRS) bezeichnet wird.
  • Falls in dem Funktionsblock 5 festgestellt wird, dass die Betriebszustandsvariablen die geforderten Betriebszustandswerte aufweisen, d. h. sich die Funktionalitäten, welche den zweiten Systemzustand charakterisieren, in den geforderten Betriebszuständen befinden, gibt der Funktionsblock 5 einen oder mehrere Soll-Betriebszustände 18 vor und übermittelt diese an einen Funktionsblock 10. In dem Funktionsblock 10 ist die Anwendersoftware (ASW) und eine Sicherheitssoftware (SIS) sowie eine Offsetaufbereitung enthalten. Die ASW entspricht dem Reglerteil der Software (z. B. zur ABS-, ASR- oder Motormomentenregler). Die entsprechenden Funktionalitäten in dem Funktionsblock 10 werden dann in den Soll-Betriebszustand 18 geschaltet. Der Ist-Betriebszustand 19 wird von dem Funktionsblock 10 an die Funktionsblöcke 7 und 8 übermittelt. Dort werden sie zur Ermittlung des Ist-Systemzustandes in Funktionsblock 7 und zur Ermittlung der Abhängigkeiten der Funktionalitäten X untereinander in Funktionsblock 8 herangezogen.
  • Beim Übergang von einem Betriebszustand A, B, C in einen anderen können prinzipiell zwei unterschiedliche Arten von Übergängen unterschieden werden:
    • – Der Übergang von einem Betriebszustand niedriger Priorität zu einem Betriebszustand höherer Priorität wie bspw. der Übergang von ABS_Vollsystem zu ABS_Off. Dieser Übergang erfolgt unmittelbar, damit es zu keinen weiteren eventuell fehlerhaften Ansteuerungen kommen kann.
    • – Der Übergang von einem Betriebszustand höherer Priorität zu einem Betriebszustand niedrigerer Priorität, wie bspw. von ABS_Off zu ABS_Vollsystem. In diesem Fall wird der Übergang von dem Soll- zu dem Ist-Betriebszustand durch die Funktionalität selbst bestimmt. Dabei muss der Ist-Betriebszustand solange voll funktionsfähig bleiben, bis der Soll-Betriebszustand erreicht ist. Während der Umschaltphase von dem Ist-Betriebszustand in den Soll-Betriebszustand werden beide Betriebszustände parallel berechnet. Somit bestimmt die Funktionalität selbst, wann der Übergang erfolgen soll. Zu beachten ist, dass während der Übergangsphase akustische oder optische Warnhinweise weiterhin ausgegeben werden müssen. Seitens des FPS (Failure Processing System) in Funktionsblock 4 werden keine Warnhinweise mehr ausgegeben, da durch einen Reset der in den Funktionsblöcken 1 oder 2 erkannte Fehler 11, 12 bereits zurückgesetzt wurde.
  • In 4 ist ein Ablaufdiagramm zur Verdeutlichung des erfindungsgemäßen Verfahrens dargestellt. Bei dem dargestellten Verfahren umfassen die Übergangsbedingungen Übergangsabfragen 40 und entsprechende Übergangswerte 41 als vorgegebene Antworten auf die Übergangsabfragen 40. Eine Übergangsbedingung wird dann als erfüllt angesehen, wenn als Antwort auf die oder jede Übergangsabfrage 40 der vorgegebene Übergangswert 41 zurückgegeben wird.
  • Das Computerprogramm 22 (vgl. 5) ist in mehrere funktional zusammenhängende Funktionalitäten X unterteilt. Die möglichen Systemzustände 30 des Systems werden definiert, indem den Funktionalitäten X für jeden Systemzustand 30 vorgebbare Betriebszustände A, B, C zugeordnet werden. Die Übergangsbedingungen sind erfüllt, wenn zumindest die den Soll-Systemzustand 14 charakterisierenden Funktionalitäten X die ihnen für diesen Systemzustand 14 zugeordneten Betriebszustände A, B, C aufweisen.
  • Die Übergangswerte 41 sind in Übergangstabellen 42 (sog. Transition Tables) abgelegt. Die Übergangstabellen 42 sind als eine Wissensdatenbank ausgebildet, die auf einem Speicherelement abgespeichert sind, insbesondere auf einem Read-Only-Memory (ROM) eines Steuergeräts 20 zur Steuerung und/oder Regelung des Systems (vgl. 5). Es ist denkbar, jeder Funktionalität X eine Übergangstabelle 42 zuzuordnen. In der Ausführungsform aus 4 ist sind jedoch mehrere Funktionalitäten X zu einer Komponente 43 zusammengefasst, wobei jeder Komponente 43 eine Übergangstabelle 42 zugeordnet wird. In einer Komponente 43 sind nach außen in Erscheinung tretende Funktionen, bspw. grundlegende Funktionalitäten X (Basic Operation Modes; BasicOMs), ABS-Funktionalitäten X, ASR-Funktionalitäten, FZR-Funktionalitäten X und Funktionalitäten X zur Koordination von Bremsmomentansprüchen (COR) zusammengefasst.
  • Anhand einer ausgewählten Übergangstabelle 42 einer FZR-Komponente 43 (Transition FZR, TraFZR) wird der Aufbau der Übergangstabellen 42 näher erläutert. Für zwei Komponenten-Zustände 44 (Off) und 45 (Normal) sind die entsprechenden Betriebszustände A, B, C derjenigen Funktionalitäten X angegeben, die zu der FZR-Komponente 43 zusammengefasst sind. Ein Betriebszustand A, B, C wird durch eine Betriebszustandsvariable OMFZREst, OMFZRCbc (CBC: Corner Branke Control zur Verhinderung des Überbremsens eines kurveninneren Rades in einer Kurve) definiert, die verschiedene Betriebszustandswerte (Off, Normal) annehmen kann. Die Übergangsbedingungen sind erfüllt, wenn die Betriebszustandsvariablen OMFZREst, OMFZRCbc der den System-Zustand 14, 16 charakterisierenden Funktionalitäten X die ihnen für diesen System-Zustand zugeordneten Betriebszustandswerte (Off, Normal) aufweisen.
  • Die Übergangsabfragen 40 sind in einer Programmschleife des Computerprogramms 22 (vgl. 5) enthalten. Die Programmschleife wird rekursiv, bspw. alle 20ms, durchlaufen. Zunächst wird in einem Funktionsblock 46 überprüft, ob ein neuer Systemzustand 14 angefordert wurde. Das entsprechende Signal 14 kommt von dem FPS-Funktionsblock 4 (vgl. 3). Falls kein neuer Systemzustand 14 des Systems angefordert wurde, wird das System in dem bisherigen Ist-Systemzustand 16 weiter betrieben (Funktionsblock 47). Falls ein neuer Systemzustand 14 angefordert wurde, werden in einem Funktionsblock 48 Steuerbits der Übergangsabfragen 40 zurückgesetzt. Danach werden die Übergangsabfragen 40 nacheinander abgearbeitet. Die Übergangsabfragen 40 stellen Steuerfunktionen der Komponentenzustände dar, durch welche das System abgebildet wird.
  • Eine Übergangsabfrage 40 (TraFZROff_V()) ist beispielhaft herausgegriffen und im Detail dargestellt. Zunächst wird der Zustand von Steuerbits (z.B. CompFZRFAOffOnce = TRUE && TraBasicOMsSettled = TRUE ...) und werden weitere Bedingungen abgefragt. Anhand der abgefragten Steuerbits kann der aktuelle Zustand der Komponente bzw. der einzelnen Funktionalitäten ermittelt werden. Falls das Ergebnis dieser Abfragen „JA" ist, bedeutet dies, dass alle für die Ausführung der Funktionalitäten der Komponente 43 erforderlichen Eingangsgrößen zur Verfügung stehen und der entsprechende Eintrag 44 (TraFZR_Off) in der Übergangstabelle 42 für die Komponente 43 (TraFZR) wird abgearbeitet. Dabei wird überprüft, ob die Funktionalitäten der Komponente 43 die in der Tabelle 42 angegebenen Betriebszustände aufweisen bzw. werden die Funktionalitäten in die entsprechenden Betriebszustände geschaltet. Sobald der Eintrag 44 in der Übergangstabelle 42 erfolgreich abgearbeitet worden ist, werden weitere Statusbits auf TRUE gesetzt.
  • In 5 ist ein erfindungsgemäßes Steuergerät in seiner Gesamtheit mit dem Bezugszeichen 20 bezeichnet. Das Steuergerät 20 dient zur Steuerung und/oder Regelung eines Systems, das verschiedene mögliche Systemzustände einnehmen kann, insbesondere eines Fahrdynamiksystems in einem Kraftfahrzeug. Das Steuergerät 20 umfasst ein Rechengerät 21, das als ein Mikroprozessor ausgebildet ist. Auf dem Rechengerät 21 ist ein in mehrere funktional zusammenhängende Funktionalitäten unterteiltes multitaskingfähiges Computerprogramm 22 ablauffähig. Das Computerprogramm 22 dient zur Steuerung und/oder Regelung des Systems nach dem erfindungsgemäßen Verfahren, wenn es auf dem Rechengerät 21 abläuft. Des Weiteren sind in dem Steuergerät 20 Mittel 23 zur Koordination des Ablaufs des Computerprogramms 22 vorgesehen. Die Mittel 23 sind als ein Steuerprogramm ausgebildet, das ebenfalls auf dem Rechengerät 21 ablauffähig ist. Das Computerprogramm 22 und das Steuerprogramm 23 sind auf einem Speicherelement 24 abgespeichert, das bspw. als ein Flash-Memory ausgebildet ist. Zur Abarbeitung des Computerprogramms 22 und des Steuerprogramms 23 werden diese entweder als Ganzes oder abschnittsweise über eine Datenverbindung 25 an das Rechengerät 21 übermittelt. Ebenso können in der Gegenrichtung über die Datenverbindung 25 Ergebnisse von Berechnungen, die in dem Rechengerät 21 ausgeführt wurden, oder andere Daten an das Speicherelement 24 übermittelt und dort abgespeichert werden. Das Steuerprogramm 23 dient zur Ausführung des erfindungsgemäßen Verfahrens, wenn es auf dem Rechengerät 21 ausgeführt wird.

Claims (16)

  1. Verfahren zur Steuerung des Ablaufs eines multitaskingfähigen Computerprogramms (22) auf einem Rechengerät (21), insbesondere auf einem Mikroprozessor, eines Steuergeräts (20) zur Steuerung und/oder Regelung eines Systems, das verschiedene mögliche Systemzustände (30) einnehmen kann, dadurch gekennzeichnet, dass für jeden möglichen Übergang (31) von einem Systemzustand (30) in einen anderen Systemzustand (30) Übergangsbedingungen definiert werden und der Ablauf des Computerprogramms (22) derart gesteuert wird, dass das System erst dann von einem ersten Systemzustand (30) in einen zweiten Systemzustand (30) überführt wird, wenn alle für diesen Übergang (31) definierten Übergangsbedingungen erfüllt sind.
  2. Verfahren nach Anspruch 1, dadurch gekennzeichnet, dass eine Übergangsbedingung mindestens eine Übergangsabfrage (40) und mindestens einen entsprechenden Übergangswert (41) als vorgegebene Antwort auf die Übergangsabfrage (40) umfasst, wobei eine Übergangsbedingung dann als erfüllt angesehen wird, wenn als Antwort auf die oder jede Übergangsabfrage (40) der vorgegebene Übergangswert (41) zurückgegeben wird.
  3. Verfahren nach Anspruch 2, dadurch gekennzeichnet, dass die Übergangswerte (41) in einer Übergangstabelle (42) abgelegt werden.
  4. Verfahren nach einem der Ansprüche 1 bis 3, dadurch gekennzeichnet, dass das Computerprogramm (22) in mehrere funktional zusammenhängende Funktionalitäten (X) unterteilt wird, dass die möglichen Systemzustände (30) des Systems definiert werden, indem den Funktionalitäten (X) für jeden Systemzustand (30) vorgebbare Betriebszustände (A, B, C) zugeordnet werden und dass die Übergangsbedingungen erfüllt sind, wenn zumindest die den zweiten Systemzustand (30) charakterisierenden Funktionalitäten (X) die ihnen für diesen Systemzustand (30) zugeordneten Betriebszustände (A, B, C) aufweisen.
  5. Verfahren nach Anspruch 4, dadurch gekennzeichnet, dass ein Betriebszustand (A, B, C) durch eine Betriebszustandsvariable (OMFZREst, OMFZRCbc) definiert wird, die verschiedene Betriebszustandswerte (Off, Normal) annehmen kann und dass die Übergangsbedingungen erfüllt sind, wenn die Betriebszustandsvariablen (OMFZREst, OMFZRCbc) der den zweiten Systemzustand (30) charakterisierenden Funktionalitäten (X) die ihnen für diesen Systemzustand (30) zugeordneten Betriebszustandswerte (Off, Normal) aufweisen.
  6. Verfahren nach Anspruch 5, dadurch gekennzeichnet, dass die Betriebszustandsvariable (OMFZREst, OMFZRCbc) den Stellungen „volle Funktionalität" (ESP), „eingeschränkte Funktionalität" (Backup_ABS, Backup_EBD) und „keine Funktionalität" (FailSafe) entsprechende Betriebszustandswerte annehmen kann.
  7. Verfahren nach einem der Ansprüche 4 bis 6, dadurch gekennzeichnet, dass jeder Funktionalität (X) eine Übergangstabelle (42) zugeordnet wird.
  8. Verfahren nach einem der Ansprüche 4 bis 7, dadurch gekennzeichnet, dass mehrere Funktionalitäten (X) zu einer Komponente (43) zusammenfasst werden und jeder Komponente (43) eine Übergangstabelle (42) zugeordnet wird.
  9. Verwendung eines Verfahrens zur Steuerung des Ablaufs eines Computerprogramms (22) nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, dass das Verfahren zur Steuerung des Ablaufs eines Computerprogramms (22) zur Steuerung und/oder Regelung eines Systems in einem Fahrzeug, insbesondere in einem Kraftfahrzeug, verwendet wird.
  10. Verwendung nach Anspruch 9, dadurch gekennzeichnet, dass das Verfahren zur Steuerung des Ablaufs eines Computerprogramms (22) zur Steuerung und/oder Regelung eines Fahrdynamiksystems in einem Kraftfahrzeug verwendet wird.
  11. Verwendung eines Verfahrens zur Steuerung des Ablaufs eines Computerprogramms (22) nach einem der Ansprüche 1 bis 8, dadurch gekennzeichnet, dass das Verfahren zur Steuerung des Ablaufs eines Computerprogramms (22) zur Steuerung und/oder Regelung eines Systems in einem Gebäude verwendet wird.
  12. Verwendung nach Anspruch 11, dadurch gekennzeichnet, dass das Verfahren zur Steuerung des Ablaufs eines Computerprogramms (22) zur Steuerung und/oder Regelung eines Alarmsystems, eines Heizungs- und Klimatisierungssystems und/oder eines Zugangskontrollsystems in einem Gebäude verwendet wird.
  13. Steuerprogramm (23) zur Steuerung des Ablaufs eines multitaskingfähigen Computerprogramms (22) auf einem Rechengerät (21), insbesondere auf einem Mikroprozessor, eines Steuergeräts (20) zur Steuerung und/oder Regelung eines Systems, das verschiedene mögliche Systemzustände (30) einnehmen kann, wobei das Steuerprogramm (23) auf dem Rechengerät (21) ablauffähig ist, dadurch gekennzeichnet, dass das Computerprogramm (22) zur Ausführung eines Verfahrens nach einem der Ansprüche 1 bis 8 geeignet ist, wenn es auf dem Rechengerät (21) abläuft.
  14. Steuerprogramm (23) nach Anspruch 13, dadurch gekennzeichnet, dass das Steuerprogramm (23) auf einem Speicherelement (24), insbesondere auf einem Read-Only-Memory, auf einem Random-Access-Memory oder auf einem Flash-Memory abgespeichert ist.
  15. Steuergerät (20) zur Steuerung und/oder Regelung eines Systems, das verschiedene mögliche Systemzustände (30) einnehmen kann, wobei das Steuergerät (20) ein Rechengerät (21), insbesondere einen Mikroprozessor, auf dem ein multitaskingfähiges Computerprogramm (22) ablauffähig ist, und Mittel (23) zur Steuerung des Ablaufs des Computerprogramms (22) umfasst, dadurch gekennzeichnet, dass das Steuergerät (20) Mittel zur Definition von Übergangsbedingungen für jeden möglichen Übergang (31) von einem Systemzustand (30) in einen anderen Systemzustand (30) und die Mittel (23) zur Steuerung des Ablaufs des Computerprogramms (22) den Ablauf des Computerprogramms (22) derart steuern, dass das System erst dann von einem ersten Systemzustand (30) in einen zweiten Systemzustand (30) wechselt, wenn alle für diesen Übergang (31) definierten Übergangsbedingungen erfüllt sind.
  16. Steuergerät (20) nach Anspruch 15, dadurch gekennzeichnet, dass das Steuergerät (20) Mittel zur Ausführung eines Verfahrens nach einem der Ansprüche 2 bis 8 aufweist.
DE10229686A 2002-06-27 2002-06-27 Verfahren und Steuergerät zur Steuerung des Ablaufs eines multitaskingfähigen Computerprogramms Ceased DE10229686A1 (de)

Priority Applications (3)

Application Number Priority Date Filing Date Title
DE10229686A DE10229686A1 (de) 2002-06-27 2002-06-27 Verfahren und Steuergerät zur Steuerung des Ablaufs eines multitaskingfähigen Computerprogramms
JP2003184751A JP2004046857A (ja) 2002-06-27 2003-06-27 マルチタスキング可能なコンピュータプログラムの進行の制御方法および制御装置
US10/608,796 US20040060050A1 (en) 2002-06-27 2003-06-27 Method and controller for program control of a computer program having multitasking capability

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE10229686A DE10229686A1 (de) 2002-06-27 2002-06-27 Verfahren und Steuergerät zur Steuerung des Ablaufs eines multitaskingfähigen Computerprogramms

Publications (1)

Publication Number Publication Date
DE10229686A1 true DE10229686A1 (de) 2004-01-22

Family

ID=29761573

Family Applications (1)

Application Number Title Priority Date Filing Date
DE10229686A Ceased DE10229686A1 (de) 2002-06-27 2002-06-27 Verfahren und Steuergerät zur Steuerung des Ablaufs eines multitaskingfähigen Computerprogramms

Country Status (3)

Country Link
US (1) US20040060050A1 (de)
JP (1) JP2004046857A (de)
DE (1) DE10229686A1 (de)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1983433A1 (de) * 2007-04-20 2008-10-22 Hitachi, Ltd. Verfahren zur Konfiguration eines durch einen Controller ausführbaren Steueralgorithmus
EP1993009A1 (de) * 2007-05-16 2008-11-19 Tac AB Steuerung, System, Verfahren und Computerprogramme zur Gebäudesteuerung
JP4950796B2 (ja) * 2007-07-31 2012-06-13 株式会社東芝 半導体装置
CN102063447A (zh) * 2009-11-16 2011-05-18 联想(北京)有限公司 ***状态切换时的文件呈现方法及便携终端
US8914013B2 (en) * 2013-04-25 2014-12-16 Airwatch Llc Device management macros
US9826500B1 (en) 2016-05-11 2017-11-21 International Business Machines Corporation Preventing driver distraction from incoming notifications

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3872421T2 (de) * 1987-04-08 1992-12-03 Hitachi Ltd Steuersystem fuer kategorisierte motorzustaende.
EP0990966A2 (de) * 1998-10-04 2000-04-05 Husky Injection Molding Systems Ltd. Integrierte Steuerungsstation für eine Spritzgussanlage

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS57181938A (en) * 1981-04-30 1982-11-09 Hitachi Ltd Engine control device
DE19500957A1 (de) * 1994-07-19 1996-01-25 Bosch Gmbh Robert Verfahren zur Steuerung von technischen Vorgängen oder Prozessen
US6219590B1 (en) * 1998-04-03 2001-04-17 Johnson Controls Technology Co. State machine controller for operating variable air volume terminal units of an environmental control system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3872421T2 (de) * 1987-04-08 1992-12-03 Hitachi Ltd Steuersystem fuer kategorisierte motorzustaende.
EP0990966A2 (de) * 1998-10-04 2000-04-05 Husky Injection Molding Systems Ltd. Integrierte Steuerungsstation für eine Spritzgussanlage

Also Published As

Publication number Publication date
US20040060050A1 (en) 2004-03-25
JP2004046857A (ja) 2004-02-12

Similar Documents

Publication Publication Date Title
DE4334260C2 (de) Steuervorrichtung für ein Fahrzeug mit einer Antiblockier-Bremseinrichtung und einer Servolenkeinrichtung
DE3518105C2 (de)
EP0547196B1 (de) Antiblockierregelsystem
DE10131806A1 (de) Verfahren und Vorrichtung zum Betreiben eines dezentralen Steuersystems
DE10223880B4 (de) Verfahren zur gegenseitigen Überwachung von Komponenten eines dezentral verteilten Rechnersystems
DE19509150C2 (de) Verfahren zum Steuern und Regeln von Fahrzeug-Bremsanlagen sowie Fahrzeug-Bremsanlage
EP3056322B1 (de) Verfahren und system zum betreiben einer mehrachsigen maschine, insbesondere eines roboters
DE69916772T2 (de) Steuervorrichtung eine automatischen Maschine
DE102015223611A1 (de) Verfahren und Steuereinheit zur Beschleunigungsüberwachung und -anpassung
DE10142511B4 (de) Fehlerbehandlung von Softwaremodulen
DE10229686A1 (de) Verfahren und Steuergerät zur Steuerung des Ablaufs eines multitaskingfähigen Computerprogramms
EP3338189A2 (de) Verfahren zum betrieb eines mehrkernprozessors
DE10229676B4 (de) Verfahren zur Steuerung des Ablaufs eines multitaskingfähigen Computerprogramms
DE102016106572A1 (de) Verfahren zum betreiben eines steuergeräts für ein fahrzeug, steuergerät, betriebssystem, kraftfahrzeug
EP0791193A1 (de) Satzübergreifende geschwindigkeitsführung für beliebigen override-bereich
DE102004058996A1 (de) Verfahren und Fahrfunktionssystem zum Überführen von sicherheitsrelevanten Fahrfunktionen eines Fahrzeugs in den sicheren Zustand
DE102007046706A1 (de) Steuervorrichtung für Fahrzeuge
DE102017218274A1 (de) Lenkungssteuersystem für ein Lenksystem eines Kraftfahrzeuges sowie Verfahren zum Betreiben eines Lenkungssteuersystems
DE10254819A1 (de) Grenzlastabhängiges teilweises Abschalten einzelner Funktionen der Systemkomponenten eines Fahrzeugs
EP4091054A1 (de) Verfahren und vorrichtung zum rekonfigurieren eines automatisiert fahrenden fahrzeugs in einem fehlerfall
DE102020200414A1 (de) Verfahren und Vorrichtung zum Rekonfigurieren eines automatisiert fahrenden Fahrzeugs in einem Fehlerfall
DE102017217100B4 (de) Verfahren und Vorrichtung zum Betreiben eines Stellmotors eines Lenksystems
WO2007141063A1 (de) Verfahren zur einstellung von fahrdynamikreglern
EP3098748A1 (de) Verfahren zur konvertierung von zumindest einer ersten sicherheitskonfigurationsdatei
DE102015212702A1 (de) Verfahren zur Prüfung eines Zustandes eines Steuergerätes eines Kupplungsaktors

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
8131 Rejection