(57)【要約】【課題】マルチタスキング可能なコンピュータプログラムの進行を，コンピュータプログラムの機能の実施に必要な入力量が機能の実施の開始時に確実に存在するように調整する。【解決手段】各種の可能なシステム状態３０をとることのできるシステムを開ループ制御および／または閉ループ制御する制御装置２０の計算機２１上で，マルチタスキング可能なコンピュータプログラムの進行の制御方法において，一のシステム状態から他のシステム状態への各可能な移行３１のために，移行条件が定められ，かつコンピュータプログラム２２の進行は，この移行のために設定されている全ての条件が満たされている場合に，初めてシステムが第１のシステム状態から第２のシステム状態へ移行されるように制御されることを特徴とする。【選択図】　　　図１
2004046857.tif 000002
【特許請求の範囲】
【請求項１】
各種の可能なシステム状態をとることのできるシステムを開ループ制御および／または閉ループ制御する制御装置の計算機上で，マルチタスキング可能なコンピュータプログラムの進行の制御方法において，
一のシステム状態から他のシステム状態への各可能な移行のために，移行条件が定められ，かつ前記コンピュータプログラムの進行は，この移行のために設定されている全ての条件が満たされている場合に，初めて前記システムが第１のシステム状態から第２のシステム状態へ移行されるように制御されることを特徴とする，マルチタスキング可能なコンピュータプログラムの進行の制御方法。
【請求項２】
前記移行条件は，少なくとも１つの移行照会と，前記移行照会に対する予め設定された回答としての対応する移行値とを有しており，
前記移行条件は，１つまたは各移行照会に対する回答として予め設定された前記移行値が返された場合に，満たされているとみなされることを特徴とする，請求項１に記載のマルチタスキング可能なコンピュータプログラムの進行の制御方法。
【請求項３】
前記移行値は，移行テーブルに格納されることを特徴とする，請求項２に記載のマルチタスキング可能なコンピュータプログラムの進行の制御方法。
【請求項４】
前記コンピュータプログラムは，多数の機能的に関連する機能性に分割され，
前記システムの前記可能なシステム状態は，前記各システム状態について前記機能性に予め設定可能な駆動状態が対応づけられることによって定められ，かつ
前記移行条件は，少なくとも前記第２のシステム状態を特徴づける機能性がこのシステム状態について前記機能性に対応づけられた駆動状態を有する場合に，満たされていることを特徴とする，請求項１から３のいずれか１項に記載のマルチタスキング可能なコンピュータプログラムの進行の制御方法。
【請求項５】
前記駆動状態は，各種の駆動状態値をとることのできる駆動状態変数によって定められ，かつ
前記移行条件は，前記第２のシステム状態を特徴づける機能性の駆動状態変数が，前記システム状態について前記機能性に対応づけられている前記駆動状態値を有する場合に満たされていることを特徴とする，請求項４に記載のマルチタスキング可能なコンピュータプログラムの進行の制御方法。
【請求項６】
前記駆動状態変数は，完全な機能性，制限された機能性，および機能性なしの位置に相当する駆動状態値をとることができることを特徴とする，請求項５に記載のマルチタスキング可能なコンピュータプログラムの進行の制御方法。
【請求項７】
前記各機能性に，前記移行テーブルが対応づけられることを特徴とする，請求項４から６のいずれか１項に記載のマルチタスキング可能なコンピュータプログラムの進行の制御方法。
【請求項８】
多数の機能性が１つのコンポーネントにまとめられ，各コンポーネントに前記移行テーブルが対応づけられることを特徴とする，請求項４から７のいずれか１項に記載のマルチタスキング可能なコンピュータプログラムの進行の制御方法。
【請求項９】
前記コンピュータプログラムの進行の制御方法が，車両内のシステムを開ループ制御および／または閉ループ制御するために使用されることを特徴とする，請求項１から８のいずれか１項に記載のマルチタスキング可能なコンピュータプログラムの進行の制御方法。
【請求項１０】
前記コンピュータプログラムの進行の制御方法が，自動車内の走行ダイナミクスシステムを開ループ制御および／または閉ループ制御するために使用されることを特徴とする，請求項９に記載のマルチタスキング可能なコンピュータプログラムの進行の制御方法。
【請求項１１】
前記コンピュータプログラムの進行の制御方法が，建物内のシステムを開ループ制御および／または閉ループ制御するために使用されることを特徴とする，請求項１から８のいずれか１項に記載のマルチタスキング可能なコンピュータプログラムの進行の制御方法。
【請求項１２】
前記コンピュータプログラムの進行の制御方法が，建物内のアラームシステム，暖房および空調システムおよび／または立入りコントロールシステムを開ループ制御および／または閉ループ制御するために使用されることを特徴とする，請求項１１に記載のマルチタスキング可能なコンピュータプログラムの進行の制御方法。
【請求項１３】
各種の可能なシステム状態をとることのできるシステムを開ループ制御および／または閉ループ制御する制御装置の計算機上で，マルチタスキング可能なコンピュータプログラムの進行を制御する制御プログラムであって，前記制御プログラムが前記計算機上で遂行可能である前記制御プログラムにおいて，
前記コンピュータプログラムは，前記計算機上で遂行された場合に，請求項１から８のいずれか１項に記載のマルチタスキング可能なコンピュータプログラムの進行の制御方法を実施するのに適していることを特徴とする，制御プログラム。
【請求項１４】
前記制御プログラムは，メモリ素子上に格納されていることを特徴とする，請求項１３に記載の制御プログラム。
【請求項１５】
各種の可能なシステム状態をとることのできるシステムを開ループ制御および／または閉ループ制御する制御装置であって，この制御装置は，マルチタスキング可能なコンピュータプログラムが遂行可能な計算機と，前記コンピュータプログラムの進行を制御する手段とを有している，前記制御装置において，
前記制御装置は，一のシステム状態から他のシステム状態への各可能な移行のための移行条件を定めるための手段を有し，かつ前記コンピュータプログラムの進行を制御する手段は，前記コンピュータプログラムの進行を，前記移行のために設定された全ての条件が満たされている場合に，初めてシステムが第１のシステム状態から第２のシステム状態へ変化するように制御することを特徴とする，制御装置。
【請求項１６】
前記制御装置は，請求項２から８のいずれか１項に記載のマルチタスキング可能なコンピュータプログラムの進行の制御方法を実施する手段を有していることを特徴とする，請求項１５に記載の制御装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は，システムを開ループ制御および／または閉ループ制御する制御装置の計算機上，特にマイクロプロセッサ上でマルチタスキング可能なコンピュータプログラムの進行の制御方法および制御装置に関する。
【０００２】
【従来の技術】
従来技術からは，例えば，自動車の走行ダイナミクスシステムを開ループ制御および／または閉ループ制御するコンピュータプログラム（いわゆる電子的な安定化プログラム，ＥＳＰ）が知られている。走行ダイナミクスシステムは，各種の可能なシステム状態をとることができる。
【０００３】
可能なシステム状態において，例えば通常駆動（ＥＳＰ＿ｎｏｒｍａｌ），ＥＳＰの車両制御器（ＦＺＲ）が機能可能ではなく，単にアンチブロッキングシステム（ＡＢＳ）のみが機能可能な第１の制限された駆動（Ｂａｃｋｕｐ＿ＡＢＳ），少なくとも後車軸に設けられた車輪の過剰制動を阻止するために，ブレーキ力を分配するシステムのみが機能可能である第２の制限された駆動（Ｂａｃｋｕｐ＿ＥＢＤ），およびエラーのある状態（ＦａｉｌＳａｆｅ）であって，このエラーのある状態においてＥＳＰの全ての主要な安全機能，特にＦＺＲ，ＡＢＳおよびＥＢＤは，機能しない。
【０００４】
安全上，危険な走行状況を回避するために，自動車の運転者には，各種のシステム状態が，少なくとも，システムの制限された機能，若しくはエラーのある機能が与えられている状態が，例えば音響的に，または警告ランプ等によって視覚的に伝達される。コンピュータプログラムは，走行ダイナミクスシステムを開ループ制御および／または閉ループ制御する制御装置の，特にプロセッサとして形成されている，計算機上で遂行可能である。
【０００５】
【発明が解決しようとする課題】
従来技術によれば，走行ダイナミクスシステムを開ループ制御および／または閉ループ制御するコンピュータプログラムは，予め設定可能なタイムラスター内で，すなわち幾つかのタイムシート内でのみ，周期的に処理される。従って，コンピュータプログラム内部の機能呼出しは，予め設定された順序で順次行われる。このとき，順序は，機能の入力量がその実施の前に提供されるように予め定められる。従って，入力量が他の機能によって計算される場合には，まず他の機能を実施してからでないと，他の機能において計算された入力量を必要とする機能を実施することはできないという問題点があった。
【０００６】
さらに，従来技術によれば，システムを開ループ制御および／または閉ループ制御するコンピュータプログラムをマルチタスキング可能な駆動システム上で実施し，かつコンピュータプログラムを唯一のタイムラスター内ではなく，各種のタイムラスター内で処理することが知られている。しかし，このことは，コンピュータプログラムの機能は，厳しく設定された順序で処理されず，かつ機能の入力量がその実施前に提供されることを保証するためには，他の措置を講じなければならないという問題点を有することを意味している。
【０００７】
また，コンピュータプログラムの機能には，各種の優先順位が対応づけられる。安全上重要な機能には，他の機能よりも高い優先順位が対応づけられる。優先順位のより高い機能は，より短いタイムラスター内で，すなわち頻繁に繰り返されるタイムラスター内で実施され，それに対して優先順位のより低い，安全上の重要さが少ない機能は，まれにしか繰り返されない，より長いタイムラスター内で処理される。特に，機能の入力量が常に正しい時点で存在することが保証されなければならず，すなわち，例えば５ｍｓ−タイムラスターで処理され，かつ４０ｍｓ−タイムラスターに基づく入力量を必要とする機能は，４０ｍｓ−タイムラスターが既に処理されて，必要な入力量が計算された後に，初めて実施することを許される。
【０００８】
本発明は，従来のマルチタスキング可能なコンピュータプログラムの進行の制御方法が有する上記問題点に鑑みてなされたものであり，本発明の目的は，マルチタスキング可能なコンピュータプログラムの進行を，コンピュータプログラムの機能の実施に必要な入力量が機能の実施の開始時に確実に存在するように，調整することの可能な，新規かつ改良されたマルチタスキング可能なコンピュータプログラムの進行の制御方法および装置を提供することである。
【０００９】
【課題を解決するための手段】
上記課題を解決するために，本発明の第１の観点によれば，各種の可能なシステム状態をとることのできるシステムを開ループ制御および／または閉ループ制御する制御装置の計算機上で，マルチタスキング可能なコンピュータプログラムの進行の制御方法において，一のシステム状態から他のシステム状態への各可能な移行のために，移行条件が定められ，かつコンピュータプログラムの進行は，この移行のために設定されている全ての条件が満たされている場合に，初めてシステムが第１のシステム状態から第２のシステム状態へ移行されるように制御されることを特徴とする，マルチタスキング可能なコンピュータプログラムの進行の制御方法が提供される。
【００１０】
本発明に基づいて設定された移行条件によって，マルチタスキング可能なコンピュータプログラムの進行を所望に調節することができる。特に，マルチタスキング可能なコンピュータプログラムを処理する場合に移行条件を適切に定めることによって，機能の実施の開始時に，この機能の実施に必要な全ての入力量または少なくとも適切な代替量が存在することが保証される。
【００１１】
このとき，本発明の好適な展開によれば，移行条件は，少なくとも１つの移行照会と，移行照会への予め設定された回答としての少なくとも１つの対応する移行値とを有し，その際に，移行条件は，１つまたは各移行照会への回答として予め設定された移行値が返された場合に，満たされたと見なされることが提案される。
【００１２】
移行照会は，例えば，第２のシステム状態の機能を処理するために必要とされる所定の入力量の存在の照会を含むことができる（例えば，「入力量ｘｙｚは，存在するか？」等）。照会に対する回答としての，対応する移行値は，例えばイエスまたはノー，あるいは１または０である（「１」：入力量が存在することを意味する。）。これらの移行照会について，第１のシステム状態から第２のシステム状態への所望のシステム移行のために設定された，他の全ての移行照会について，対応する移行値が存在する場合に，初めてシステムは，第２のシステム状態へ移行される。
【００１３】
また，本発明の好適な実施形態によれば，移行値は，移行テーブルに格納されることが提案される。かかる構成とすることにより，移行テーブル内で移行値をシステム状態に従って分割して格納することができる。すなわち，所定のシステム状態へのシステムの変化の前に，移行照会に対する回答が，このシステム状態について移行テーブルに格納されている移行値に相当するかが調べられる。移行照会は，例えば論理的なＩＦ−ＴＨＥＮ−照会として実現することができる。それは，プログラム進行の制御を他の移行照会の定式化によって，そして他の移行値を移行テーブルに格納することによって，簡単な方法で拡張し，システムの拡張された機能範囲に適合させることができるという利点を有する。
【００１４】
さらに，本発明の他の好適な展開によれば，コンピュータプログラムは，多数の機能的に関連する機能性に分割され，かつシステムの可能なシステム状態は，各システム状態について機能性に予め設定可能な駆動状態が対応づけられることによって定められ，かつ移行条件は，少なくとも，第２のシステム状態を特徴づける機能性が，このシステム状態について，その機能性に対応づけられている駆動状態を有する場合に満たされていることが提案される。
【００１５】
かかる構成とすることにより，システムのシステム状態は，機能性の駆動状態によって定められる。換言すると，システムは，システム状態を特徴づける全部の機能性が必要とされる駆動状態を有する場合に，初めて他のシステム状態へ移行する。このことは，移行条件を用いて，若しくは移行照会を用いて調べられる。
【００１６】
本発明の他の好適な実施形態によれば，駆動状態は，各種の駆動状態値をとることのできる駆動状態変数によって定められ，移行条件は，第２のシステム状態を特徴づける機能性の駆動状態変数が，このシステム状態について，その駆動状態変数に対応づけられている駆動状態値を有する場合に，満たされていることが提案される。この実施形態によると，それぞれ機能性がどのくらい多くの駆動状態変数をとることができるかに従って，駆動状態変数はビット（２つの異なる駆動状態について）またはバイト（２＾８の異なる駆動状態について）を有することができるので，本発明の特に容易で，かつわかりやすい実現を可能にする。
【００１７】
このとき，駆動状態変数は，「完全な機能性」，「制限された機能性」および「機能性なし」の位置に相当する駆動状態値をとることが好ましい。
【００１８】
本発明のさらに他の好適な展開によれば，各機能性に移行テーブルが対応づけられることが提案される。従って，システムを第１のシステム状態から第２のシステム状態へ切り替えるために，まず，コンピュータプログラムの，第２のシステム状態を特徴づける機能性が求められる。その後，第１のシステム状態を特徴づける機能性は，その機能が第２のシステム状態について自らに対応づけられている駆動状態を有しているかについて調べられる。これは，移行照会の枠内で機能性について，機能性の駆動状態変数が，第２のシステム状態についてその駆動状態変数に対応づけられ，かつ対応する移行テーブルに格納されている駆動状態値を有しているかが調べられることによって行われる。従って，移行テーブル内で各機能について定められている移行条件が満たされているかが調べられる。
【００１９】
また，本発明のさらに他の好適な実施形態によれば，多数の機能性が１つのコンポーネントにまとめられ，かつ各コンポーネントに移行テーブルが対応づけられることが提案される。従って，移行テーブルには，コンポーネントの多数の機能性について移行値が格納されている。
【００２０】
また，マルチタスキング可能なコンピュータプログラムの進行を制御するための本発明に基づく上記の方法の２つの特に好適な使用が以下に提案される。
【００２１】
１つには，コンピュータプログラムの進行を制御する方法を，車両内，特に自動車内のシステムを開ループ制御および／または閉ループ制御するために使用することが提案される。特に，コンピュータプログラムの進行を制御する方法を，自動車内の走行ダイナミクスシステムを開ループ制御および／または閉ループ制御するために使用することが提案される。
【００２２】
もう１つには，コンピュータプログラムの進行を制御する方法を，建物内のシステムを開ループ制御および／または閉ループ制御するために使用することが提案される。特に，コンピュータプログラムの進行を制御する方法を，建物内のアラームシステム，暖房および空調システムおよび／または立入りコントロールシステムを開ループ制御および／または閉ループ制御するために使用することが提案される。
【００２３】
さらに，上記課題を解決するために，本発明の第２の観点によれば，特に重要なのは，本発明に基づく方法を制御プログラムの形式で実現することであって，その制御プログラムは，各種の可能なシステム状態をとることのできるシステムを開ループ制御および／または閉ループ制御する制御装置のために設けられている。その際に，制御プログラムは制御装置の計算機上，特にマイクロプロセッサ上で遂行可能であって，かつ本発明に基づく方法を実施するのに適している。従って，この場合においては，本発明は，制御プログラムによって実現されるので，制御プログラムは，この制御プログラムが本発明の目的を実現するのに適している制御方法と同様に本発明を表す。特に，制御プログラムがメモリ素子上，特にリードオンリーメモリ，ランダムアクセスメモリまたはフラッシュメモリ上に格納されていると効果的である。
【００２４】
また，上記課題を解決するために，本発明の第３の観点によれば，制御装置は，１つのシステム状態から他のシステム状態への各可能な移行のための移行条件を定める手段を有し，かつコンピュータプログラムの進行を制御する手段がコンピュータプログラムの進行を，この移行のために定められている全ての移行条件が満たされている場合に，初めてシステムが第１のシステム状態から第２のシステム状態に変化するように制御することが提案される。
【００２５】
このとき，本発明の好適な展開によれば，制御装置は，本発明に基づく上記の方法を実施するための手段を有していることが提案される。
【００２６】
【発明の実施の形態】
以下に添付図面を参照しながら，本発明にかかる装置の好適な実施の形態について詳細に説明する。なお，本明細書及び図面において，実質的に同一の機能構成を有する構成要素については，同一の符号を付することにより重複説明を省略する。
【００２７】
本発明は，システムを開ループ制御および／または閉ループ制御する，マルチタスキング可能なコンピュータプログラムに関する。このコンピュータプログラムは，システムを開ループ制御および／または閉ループ制御する制御装置の計算機上，特にマイクロプロセッサ上で遂行可能である。また，マルチタスキング可能なコンピュータプログラムは，多数の異なるタイムラスター内で処理される。個々のタイムラスターは，周期的に繰り返されるが，全体的に見て，コンピュータプログラムは，周期的には処理されない。
【００２８】
コンピュータプログラムは，多数の課題プログラム（いわゆるタスク）に分割されており，これら課題プログラムに各種の優先順位が対応づけられている。安全上重要な課題を有するタスクには，安全上重要な課題を持たないタスクよりも高い優先順位が対応づけられるようになっている。より優先順位の高いタスクは，より短いタイムラスター内で実施され，すなわちそれらのタスクは，より優先順位の低いタスクよりも単位時間当たりにおいて，より頻繁に処理される。
【００２９】
コンピュータプログラムを多数のタスクに分割することは，コンピュータプログラムのソフトウェア技術的実現に関する。機能平面上でコンピュータプログラムは，多数の機能的に関連するユニット，いわゆる機能性に分割されている。機能性は，１つまたは複数のタスクを有することができる。自動車内の走行ダイナミクスシステムを開ループ制御および／または閉ループ制御するコンピュータプログラム（電子的な安定化プログラム，ＥＳＰ）においては，機能性として，例えば制動の際に車輪のブロッキングを阻止するアンチブロッキングシステム（ＡＢＳ）または自動車の走行ダイナミクスを得るために，個々の車輪に合わせたブレーキ介入を行う車両制御器（ＦＺＲ）がある。
【００３０】
マルチタスキング可能なコンピュータプログラムにおいては，機能呼出しは，単に順次に実行されない。換言すると，呼出しの順序によって，単純に機能性の入力量がそれに先だって実施された機能性によって既に求められていることは，保証できないという事実に基づいて，マルチタスキング可能なコンピュータプログラムにおいて，実施すべき機能性にとって常に必要な入力量が正しく存在していることを保証するために，他の措置を講じなければならない。すなわち，例えば５ｍｓ−タスク内で呼び出され，かつ４０ｍｓ−タスクからの入力量を必要とする機能性は，最初の呼出しの際に，４０ｍｓ−タスクが既に計算されている場合に，初めて実施することを許される。
【００３１】
本発明の重要な観点としては，システム状態の各々に，若しくは第１のシステム状態から第２のシステム状態への（許される）各移行に，移行条件が対応づけられており，かつコンピュータプログラムの進行は，第２のシステム状態への移行に対応づけられた全ての移行条件が満たされている場合に，初めてシステムが第２のシステム状態へ移行されるように制御されることである。移行条件が，例えば第２のシステム状態を特徴づける機能性の全入力量が提供されることにある場合には，本発明に基づく方法に基づいて，システム全体は，実際に全ての必要な入力量が存在している場合に，初めて第１のシステム状態から第２のシステム状態へ移行されることを保証することができる。
【００３２】
図１は，本発明の制御方法の第１の実施の形態におけるシステムの各種のシステム状態を示す図であり，各種のシステム状態３０が走行ダイナミクスシステム（ＥＳＰ）の例で示されている。本図によると，特に以下のシステム状態３０が可能である：
−”ＦｕｌｌＳｙｓｔｅｍ”：通常駆動，走行ダイナミクスシステムの完全な機能性を有するシステム状態；
−”Ｂａｃｋｕｐ＿ＡＢＳ”：アンチブロッキングシステム（ＡＢＳ）のみ，車両制御器（ＦＺＲ）は，アクティブではなく，制限された機能性を有するシステム状態；
−”Ｂａｃｋｕｐ＿ＥＢＤ”：電子的な制動力分配（Ｅｋｅｃｔｒｏｎｉｃ　Ｂｒａｋｅ　Ｄｉｓｔｒｉｂｕｔｉｏｎ，ＥＢＤ）のみアクティブ，制限された機能性を有するシステム状態；
−”ＦａｉｌＳａｆｅ”：ＦＺＲ，ＡＢＳ，ＥＢＤ非アクティブ，システムの機能性がないシステム状態；
−”ＸＹＺ”：任意の他のシステム状態。
【００３３】
なお，図１において，システム状態間の移行は，参照符号３１で示されている。
【００３４】
図２は，システムを開ループ制御および／または閉ループ制御する，マルチタスキング可能なコンピュータプログラムの機能性を示す図である。図２には，入力量Ｅｉｎ＿ｉと出力量Ａｕｓ＿ｉを有する機能性Ｘが示されている。入力量Ｅｉｎ＿ｉと出力量Ａｕｓ＿ｉの間には，水平の方向にスライド可能なスライダ部が設けられており，このスライダ部は，機能性Ｘの３つの異なる駆動状態Ａ，Ｂ，Ｃを表している。スライダ部をスライドさせることによって，機能性Ｘの駆動状態Ａ，Ｂ，Ｃを変化させることができる。
【００３５】
システムの各種のシステム状態３０は，システムの機能性Ｘの少なくとも１つが予め設定された駆動状態Ａ，Ｂ，Ｃを有することによって，特徴づけられている。従って，機能性Ｘの駆動状態Ａ，Ｂ，Ｃの合計から，全システムの該当する駆動状態３０が得られる。コンピュータプログラムの各機能性Ｘには，駆動状態変数が対応づけられており，その駆動状態変数は，それぞれ機能性Ｘの所定の駆動状態Ａ，Ｂ，Ｃに対応する各種の駆動状態値をとることができる。
【００３６】
機能性Ｘを他の駆動状態Ａ，Ｂ，Ｃへ切り替えることは，例えば機能性を実現するために必要な全ての入力量Ｅｉｎ＿ｉが存在していない場合に，必要となる可能性がある。まず，この機能性Ｘの進行を全ての必要な入力量Ｅｉｎ＿ｉが存在するまで，すなわち必要な入力量Ｅｉｎ＿ｉがその中で求められる他の機能性Ｘが実施されるまで，延期することを試みることができる。
【００３７】
しかし，機能性Ｘの実施を全ての必要な入力量Ｅｉｎ＿ｉが存在するまで延期することが不可能な状況が考えられる。この状況の場合においては，欠けている入力量Ｅｉｎ＿ｉを他の量を用いて修正し，あるいは代替的なアルゴリズムによって計算することもできる。また，欠けている入力量Ｅｉｎ＿ｉの代わりに，機能性Ｘを実施するために，既に提供されている他の量を利用することも考えられる。しかし，必要な入力量Ｅｉｎ＿ｉが提供されない場合に，とることのできるこれら全ての措置は，最終的に機能性の機能可能性の制限をもたらし，駆動状態Ａ，Ｂ，Ｃの変化によって表現される。
【００３８】
図３は，マルチタスキング可能なコンピュータプログラムの進行を制御する方法のフローチャートである。図３には，マルチタスキング可能なコンピュータプログラムの進行を制御する方法が，自動車内の走行ダイナミクスシステムを用いて例示されている。しかし，この方法と特に本発明の本実施形態は，マルチタスキング可能なコンピュータプログラムによって開ループ制御および／または閉ループ制御される任意のシステムのために使用可能である。ここで言及する他の使用可能性は，本発明に基づく方法を建物内のアラームシステム，暖房および空調システムおよび／または立入りコントロールシステムを開ループ制御および／または閉ループ制御するコンピュータプログラムの進行を制御するために使用することであって，従って建物マネージメントの領域における本発明の本実施形態に基づく方法の使用である。
【００３９】
機能ブロック１において，いわゆるプラットフォームソフトウェア（ＰＳＷ）が監視される。このプラットフォームソフトウェアというのは，走行ダイナミクスシステムを開ループ制御および／または閉ループ制御するコンピュータプログラムのハードウェア近傍部分のことである。
【００４０】
機能ブロック２においては，アプリケーションソフトウェア（ＡＳＷ）が監視される。このアプリケーションソフトウェアというのは，走行ダイナミクスシステムにおいては，例えばＡＢＳ制御器または車両制御器（ＦＺＲ）のことである。
【００４１】
機能ブロック１と機能ブロック２は，該当するソフトウェア部分内のエラー１１，１２を認識するために使用される。機能ブロック１と２内で認識される可能性のある可能なエラー１１，１２は，例えばセンサエラーであって，このセンサエラーは，機能性Ｘを計算するために必要とされる所定の入力量Ｅｉｎ＿ｉが提供されることを阻止する。
【００４２】
機能ブロック１と機能ブロック２で認識されたエラー１１，１２は，マクロとして実現されている機能ブロック３へ伝達される。機能ブロック３においては，機能ブロック１，２で求められたエラー１１，１２を用いて，システムの対応するエラー状態１３が求められる。このエラー状態１３は，機能ブロック３から，誤りプロセッシングシステム（ＰＦＳ）と称される他の機能ブロック４へ伝達される。
【００４３】
機能ブロック４においては，求められたエラー状態１３を考慮して，第２の状態へ移行するための適当なストラテジー，換言すると，第２のシステム状態を特徴づける機能性の駆動状態Ａ，Ｂ，Ｃを所望に変化させるためのストラテジーが求められる。
【００４４】
機能ブロック４で求められた，第２の機能状態へ移行するために機能性Ｘの駆動状態Ａ，Ｂ，Ｃを切り替えるためのストラテジー１４は，機能ブロック５へ伝達される。換言すると，機能ブロック４から機能ブロック５へ，求められたストラテジー１４に従って，第２の駆動状態を特徴づける機能性の各種の目標駆動状態が伝達される。従って，求められたストラテジー１４は，目標駆動状態，本実施形態においては第２の駆動状態を表す。
【００４５】
機能ブロック３で求められたエラー状態１３は，さらに，機能ブロック６へ伝達され，その機能ブロックにおいては機能性Ｘの入力量Ｅｉｎ＿ｉのステータスは，いわゆるインバリッドビットをセットすることによって特徴づけられる。コンピュータプログラムの機能性Ｘの各入力量Ｅｉｎ＿ｉのために，インバリッドビットの形式の専用のステータス信号が設けられている。従って，機能ブロック１または２においてセンサエラー１１，１２が検出された場合には，センサエラー１１，１２によって損なわれた入力量Ｅｉｎ＿ｉは，それに応じてインバリッドビットのセットまたは消去によって特徴づけられる。ステータス信号１５は，同様に機能ブロック５へ伝達される。
【００４６】
機能ブロック７においては，実際システム状態１６が求められて，同様に機能ブロック５へ伝達される。走行ダイナミクスシステムの例においては，実際システム状態１６は，走行ダイナミクスシステムそれ自体の状態を有するが自動車の走行状態も有する。
【００４７】
機能ブロック８において，駆動状態Ａ，Ｂ，Ｃ若しくは機能性Ｘの相互の依存性１７が求められる。求められた依存性１７は，同様に機能ブロック５へ伝達される。
【００４８】
機能ブロック５においては，機能ブロック４，６，７，８によって得られたデータの大きさ１４，１５，１６，１７に従って，目標駆動状態１８が編集される。特に，機能ブロック５においては，機能性Ｘの駆動状態変数が第２の駆動状態のために必要とされる駆動状態値を有しているか，すなわち第２の駆動状態を特徴づける機能性が必要とされる駆動状態にあるか，が検査される。機能ブロック４から８は，コントローラリリースシステム（ＣＲＳ）と称される，上位に配置された機能ブロック９内にまとめられている。
【００４９】
機能ブロック５において，駆動状態変数が必要とされる駆動状態値を有すること，すなわち第２の駆動状態を特徴づける機能性が必要とされる駆動状態にあることが検出された場合には，機能ブロック５は，１つまたは複数の目標駆動状態１８を設定し，それを機能ブロック１０へ伝達する。機能ブロック１０には，アプリケーションソフトウェア（ＡＳＷ）と安全ソフトウェア（ＳＩＳ）およびオフセット編集が含まれている。ＡＳＷは，（例えばＡＢＳ制御器，ＡＳＲ制御器またはエンジントルク制御器のための）ソフトウェアの制御器部分に相当する。
【００５０】
機能ブロック１０内の該当する機能性は，その後目標駆動状態１８へ切り替えられる。実際，駆動状態１９は，機能ブロック１０から機能ブロック７および機能ブロック８へ伝達される。そこで駆動状態１９は，機能ブロック７においては，実際システム状態を求めるため，そして機能ブロック８においては，機能性Ｘの互いに対する依存性を求めるために利用される。
【００５１】
また，１つの駆動状態Ａ，Ｂ，Ｃから他の駆動状態へ移行する場合に，原理的に以下の２つの異なる種類の移行を区別することができる。
−例えばＡＢＳ＿ＦｕｌｌｓｙｓｔｅｍからＡＢＳ＿Ｏｆｆのように，より低い優先順位の駆動状態からより高い優先順位の駆動状態への移行。この移行は，直接行われ，従って他の駆動，場合によってはエラーのある駆動をもたらすことはない。
−例えばＡＢＳ＿ＯｆｆからＡＢＳ＿Ｆｕｌｌｓｙｓｔｅｍのように，より高い優先順位の駆動状態からより低い優先順位の駆動状態への移行。この場合においては，目標駆動状態から実際駆動状態への移行は，機能性自体によって定められる。その際に，実際駆動状態は，目標駆動状態が達成されるまでの間，完全に機能可能であり続けなければならない。実際駆動状態から目標駆動状態への切替え相の間，２つの駆動状態は，並行して計算される。従って，機能性自体がいつ移行されるべきかを定める。このとき，注意しなければならないのは，移行相の間に音響的または視覚的な警告指示は，さらに出力されなければならないことである。機能ブロック４内のＦＰＳ（Ｆａｉｌｕｒｅ　Ｐｒｏｃｅｓｓｉｎｇ　Ｓｙｓｔｅｍ）からは，警告指示は，出力できない。なぜなら，リセットによって機能ブロック１または２で認識されたエラー１１，１２は，既にリセットされているからである。
【００５２】
図４には，本発明の第１の実施の形態に基づく方法を説明するためのフローチャートが示されている。図示されている方法においては，移行条件は，移行照会４０および移行照会４０への予め設定された回答としての対応する移行値４１を有している。移行条件は，１つの移行照会または各移行照会４０に対する回答として，予め設定された移行値４１が返された場合に，満たされているとみなされる。
【００５３】
コンピュータプログラム２２（図５を参照）は，多数の機能的に関連する機能性Ｘに分割されている。システムの可能なシステム状態３０は，各システム状態３０のための機能性Ｘに予め設定可能な駆動状態Ａ，Ｂ，Ｃが対応づけられることによって定められる。移行条件は，少なくとも目標システム状態１４を特徴づける機能性Ｘがこのシステム状態のために，この機能性に対応づけられている駆動状態Ａ，Ｂ，Ｃを有する場合に満たされている。
【００５４】
移行値４１は，移行テーブル４２（いわゆるＴｒａｎｓｉｔｉｏｎ　Ｔａｂｌｅｓ）に格納されている。この移行テーブル４２は，ナレッジデータバンクとして形成されており，このナレッジデータバンクは，メモリ素子上，特にシステムを開ループ制御および／または閉ループ制御する制御装置２０のリードオンリーメモリ（ＲＯＭ）上に格納されている（図５を参照）。このとき，各機能性Ｘに移行テーブル４２を対応づけることが考えられる。
【００５５】
しかし，図４に示す実施形態においては，多数の機能性Ｘが１つのコンポーネント４３にまとめられており，その際に各コンポーネント４３に移行テーブル４２が対応づけられる。コンポーネント４３内には，外部に現れる機能，例えば基礎となる機能性Ｘ（Ｂａｓｉｃ　Ｏｐｅｒａｔｉｏｎ　Ｍｏｄｅｓ；ＢａｓｉｃＯＭｓ），ＡＢＳ−機能性Ｘ，ＡＳＲ−機能性，ＦＺＲ−機能性Ｘおよびブレーキトルク請求を調節するための機能性Ｘ（ＣＯＲ）がまとめられている。
【００５６】
選択された，ＦＺＲ−コンポーネント４３の移行テーブル４２（Ｔｒａｎｓｉｔｉｏｎ　ＦＺＲ，ＴｒａＦＺＲ）を用いて，移行テーブル４２の構造を詳細に説明する。２つのコンポーネント状態４４（Ｏｆｆ）と４５（Ｎｏｒｍａｌ）について，ＦＺＲ−コンポーネント４３にまとめられている機能性Ｘの駆動状態Ａ，Ｂ，Ｃが記載されている。
【００５７】
駆動状態Ａ，Ｂ，Ｃは，各種の駆動状態値（Ｏｆｆ，Ｎｏｒｍａｌ）をとることのできる駆動状態変数ＯＭＦＺＲＥｓｔ，ＯＭＦＺＲＣｂｃ（ＣＢＣ：カーブにおけるカーブ内側車輪の過剰制動を防止するためのＣｏｒｎｅｒ　Ｂｒａｎｋｅ　Ｃｏｎｔｒｏｌ）によって定められる。移行条件は，システム状態１４，１６を特徴づける機能性Ｘの駆動状態変数ＯＭＦＺＲＥｓｔ，ＯＭＦＺＲＣｂｃが，このシステム状態についてその駆動状態変数に対応づけられている駆動状態値（Ｏｆｆ，Ｎｏｒｍａｌ）を有する場合に，満たされている。
【００５８】
移行照会４０は，コンピュータプログラム２２（図５を参照）のプログラムループ内に含まれている。プログラムループは，再帰的に，若しくは２０ｍｓ毎に通過される。まず，機能ブロック４６において，新しいシステム状態１４が要請されたかが調べられる。該当する信号１４は，ＥＰＳ−機能ブロック４（図３を参照）から来る。
【００５９】
システムの新しい状態１４が要請されていない場合には，システムは，それまでの実際システム状態１６において，さらに駆動される（機能ブロック４７）。新しいシステム状態１４が要請された場合には，機能ブロック４８において，移行照会４０の制御ビットがリセットされる。その後，移行照会４０が次々と処理される。移行照会４０は，コンポーネント状態の制御機能を表し，そのコンポーネントによってシステムが模写される。
【００６０】
移行照会４０（ＴｒａＦＺＲＯｆｆ＿Ｖ（））は，例として選び出されており，詳細に示されている。まず，制御ビットの状態（例えばＣｏｍｐＦＺＲＦＡＯｆｆＯｎｃｅ＝ＴＲＵＥ＆＆ＴｒａＢａｓｉｃＯＭｓＳｅｔｔｌｅｄ＝ＴＲＵＥ…）と他の条件が照会される。照会された制御ビットを用いて，コンポーネント若しくは個々の機能性の実際の状態を求めることができる。この照会の結果が「イエス」である場合には，上記の状態は，コンポーネント４３の機能性を実施するために必要な全ての入力量が提供されていることを意味しており，コンポーネント４３のための移行テーブル４２内の該当する入力４４（ＴｒａＦＺＲ＿Ｏｆｆ）が処理される。その際に，コンポーネント４３の機能性が，テーブル４２に記載されている駆動状態を有しているかが調べられるか，若しくは機能性が該当する駆動状態へ切り替えられる。移行テーブル４２内の入力４４が成功裏に処理されるとすぐに他のステータスビットがＴＲＵＥにセットされる。
【００６１】
図５は，本発明の第１の実施の形態に基づく制御装置の構成を示す図である。本実施形態の制御装置２０は，各種の可能なシステム状態をとることのできるシステム，特に自動車内の走行ダイナミクスシステムを開ループ制御および／または閉ループ制御するために使用される。
【００６２】
また，制御装置２０は，マイクロプロセッサとして形成されている計算機２１を備える。この計算機２１上で，多数の機能的に関連し合う機能性に分割されたマルチタスキング可能なコンピュータプログラム２２が遂行可能となる。コンピュータプログラム２２は，計算機２１上で遂行された場合に，本実施形態に基づく方法に従ってシステムを開ループ制御および／または閉ループ制御するために使用される。
【００６３】
さらに，制御装置２０内には，コンピュータプログラム２２の進行を調整する手段２３が設けられている。この手段２３は，制御プログラムとして形成されており，同様に計算機２１上で遂行可能である。コンピュータプログラム２２と制御プログラム２３は，例えばフラッシュメモリとして形成されているメモリ素子２４上に格納されている。
【００６４】
コンピュータプログラム２２および制御プログラム２３を処理するために，これらは全体として，あるいは一部分ずつデータ接続２５を介して計算機２１へ伝達される。同様に，逆方向においてデータ接続２５を介して，計算機２１で実施された計算の結果または他のデータをメモリ素子２４へ伝達して，このメモリ素子２４に格納することができる。制御プログラム２３は，計算機２１上で実施された場合に，上記の本実施形態に基づく方法を実施するために使用される。
【００６５】
以上，添付図面を参照しながら本発明の好適な実施形態について説明したが，本発明はかかる例に限定されない。当業者であれば，特許請求の範囲に記載された技術的思想の範疇内において各種の変更例または修正例に想到し得ることは明らかであり，それらについても当然に本発明の技術的範囲に属するものと了解される。
【００６６】
【発明の効果】
以上詳述したように本発明によれば，マルチタスキング可能なコンピュータプログラムの進行を，コンピュータプログラムの機能の実施に必要な入力量が機能の実施の開始時に確実に存在するように調整することができる。
【図面の簡単な説明】
【図１】図１は，システムの各種のシステム状態を示す図である。
【図２】図２は，システムを開ループ制御および／または閉ループ制御する，マルチタスキング可能なコンピュータプログラムの機能性を示す図である。
【図３】図３は，マルチタスキング可能なコンピュータプログラムの進行を制御する方法のフローチャートである。
【図４】図４は，本発明に基づく好適な実施形態の制御方法のフローチャートである。
【図５】図５は，本発明に基づく好適な実施形態の制御装置を示す図である。
【符号の説明】
１，２，３，４，５，６，７，８，９，１０　　機能ブロック
１１，１２　　エラー
１３　　エラー状態
１４　　ストラテジー
１５　　ステータス信号
１６　　実際システム状態
１７　　依存性
１８　　目標駆動状態
１９　　駆動状態
２０　　制御装置
２１　　計算機
２２　　コンピュータプログラム
２３　　（コンピュータプログラムの進行を調整する）手段
２４　　メモリ素子
２５　　データ接続
３０　　システム状態
３１　　移行
４０　　移行照会
４１　　移行値
４２　　移行テーブル
４３　　コンポーネント
４４　　入力
４６，４７，４８　　機能ブロック
【図１】
2004046857.tif 000003
【図２】
2004046857.tif 000004
【図３】
2004046857.tif 000005
【図４】
2004046857.tif 000006
【図５】
2004046857.tif 000007