(57)【要約】工業プロセスにおいてたいてい生じる制御および／または調整に対するすべての要求に関して、処理能力のより一層の利用、ならびに、特に関与する制御および／または調整システムの効率の改善をもたらし、それにもかかわらず、実行が簡単であり、とりわけ、方法の使用および制御、ないしはユーザによる方法への介入が可能であるようにするために、ハードウェアプラットフォーム（２）上で、リアルタイムモジュールを備えた標準的オペレーティングシステム（３）またはリアルタイムオペレーティングシステムを実施し、同時に、特有のリアルタイム要求を伴った少なくとも２つのリアルタイムアプリケーション（７，８）を前記リアルタイムモジュールの下でまたは前記リアルタイムオペレーティングシステムの下で活動化させ、特に、前記リアルタイムアプリケーション（７，８）と同時に、少なくとも１つの非リアルタイムアプリケーションを活動化させ、ただし、各々のリアルタイムアプリケーション（７，８）のリアルタイム要求は、関連する工業プロセス（１）に応じて予め定められており、各々のリアルタイムアプリケーション（７，８）に対しては、前記ハードウェアプラットフォーム（２）上で動作する割当モジュール（４）により、動作サイクル（１３）における使用可能な最長のリアルタイム部分（１１）のうちの使用可能な最長の時間割合（９，１０）が割り当てられるようにすることを提案する。
2005502146.tif 000002
【特許請求の範囲】
【請求項１】
工業プロセス（１，２０）を制御および／または調整するための方法において、
ハードウェアプラットフォーム（２）上で、リアルタイムモジュールを備えた標準的オペレーティングシステム（３）またはリアルタイムオペレーティングシステムを実施し、同時に、特有のリアルタイム要求を伴った少なくとも２つのリアルタイムアプリケーション（７，８）を前記リアルタイムモジュールの下でまたは前記リアルタイムオペレーティングシステムの下で活動化させ、特に、前記リアルタイムアプリケーション（７，８）と同時に、少なくとも１つの非リアルタイムアプリケーションを活動化させ、
ただし、各々のリアルタイムアプリケーション（７，８）のリアルタイム要求は、関連する工業プロセス（１）に応じて予め定められており、各々のリアルタイムアプリケーション（７，８）に対しては、前記ハードウェアプラットフォーム（２）上で動作する割当モジュール（４）により、動作サイクル（１３）における使用可能な最長のリアルタイム部分（１１）のうちの使用可能な最長の時間割合（９，１０）が割り当てられる、ことを特徴とする工業プロセス（１，２０）を制御および／または調整するための方法。
【請求項２】
各々のリアルタイムアプリケーション（７，８）の使用可能な最長の時間割合（９，１０）の調整可能な静的割当てを行うことができる、請求項１記載の方法。
【請求項３】
１回のテストランまたは複数回のテストランに基づいて使用可能な最長の時間割合（９，１０）を適応的に求める、請求項１または２記載の方法。
【請求項４】
時間割合（９，１０）の割当てをリアルタイムアプリケーションの実行時間中に、例えばユーザの手動入力により行うことができる、請求項１から３のいずれか１項記載の方法。
【請求項５】
リアルタイムアプリケーション（７，８）の実行時間中に、必要に応じて自動的に、リアルタイムアプリケーション（７，８）の使用可能な最長の時間割合（９，１０）の動的割当てを行う、請求項１から４のいずれか１項記載の方法。
【請求項６】
それぞれリアルタイムアプリケーション（７）に関係したＳＰＳ機能／部分プロセスとリアルタイムアプリケーション（８）に関係したＮＣ機能／部分プロセスとが設けられている、請求項１から５のいずれか１項記載の方法。
【請求項７】
標準的オペレーティングシステム（３）として、ハードウェア的に組み込まれたオペレーティングシステムを使用する、請求項１から６のいずれか１項記載の方法。
【請求項８】
使用可能な最長の時間割合（９，１０）の割当てを、リアルタイムアプリケーション（７，８）の動作とは別個の、ハードウェアプラットフォーム（２）に関連したＥＤＶ設備を介して、例えばインタフェースを用いた直接接続を介してまたはネットワーク接続を介して行う、請求項１から７のいずれか１項記載の方法。
【請求項９】
動作サイクル（１２）を外部のハードウェアイベントと同期させる、請求項１から７のいずれか１項記載の方法。
【請求項１０】
問題としているサイクル（１３）およびサイクル時間割合（ＮＣ，ＳＰＳ）に対する基準時間間隔（９，１０，１１，１３）および／または基準時点（１５，１６，１７）を、例えばオペレーティングシステムタイマであるタイマによって定める、請求項１から８のいずれか１項記載の方法。
【請求項１１】
前記時間間隔（９，１０，１１，１３）および時点（１５，１６，１７）をタイマ／オペレーティングシステムタイマのポーリングにより、例えば時間信号の相応する数をカウントすることにより定める、請求項９記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ハードウェアプラットフォーム上で実行される、工業プロセスを制御および／または調整するための方法に関する。ハードウェアプラットフォームは、例えばＰＣ、特にＨＭＩ（ヒューマンマシーンインタフェース）、または工業用ＰＣであってよい。リアルタイム処理能力を実現するため、ハードウェアプラットフォーム上には、上記ハードウェア（通常は、リアルタイム処理能力のない標準的オペレーティングシステム）の他に、さらにリアルタイムでの制御および／または調整プロセスのためのリアルタイムモジュールが設けられる、または、ハードウェアプラットフォーム上に、リアルタイムオペレーティングシステムが実現される。
【０００２】
ハードウェアプラットフォーム上で、−リアルタイムモジュールもしくはリアルタイムオペレーティングシステムの他に、またはこれらの下で−非リアルタイムアプリケーションを実行ないし活動化させてもよい。これらの非リアルタイムアプリケーションは、上記モジュールまたは上記リアルタイムオペレーティングシステムと同時に活動化する。このことは、非リアルタイムアプリケーションに相応の実行時間、すなわち、特にオペレーティングシステムサイクルの一部が割り当てられなければならないことを意味する。
【０００３】
これについては、標準的オペレーティングシステムの動作サイクルを割込み制御によってリアルタイム部分と非リアルタイム部分とに分割することが公知である。この場合、割込み制御は例えば割込みスケジューラに供給される。さらに、それぞれリアルタイムと非リアルタイムに当たる動作サイクルの時間割合を動作サイクルに固定的に割り当てることも公知である。
【０００４】
このような方法は比較的柔軟性に乏しい。というのも、工業プロセスに通常必要とされるリアルタイム要求のすべて、とりわけ、−制御すべき／調整すべきプロセスに応じて異なる−リアルタイム要求のすべてが、システムの首尾一貫性を保ちつつ適合させうる訳ではないからである。とりわけ、上記の方法では、各々の異なる工業プロセスのそれぞれの制御／調整には、それぞれのリアルタイムアプリケーションの使用のために、処理能力に対する要求が課される。その上、制御および／または調整システムの既存の処理能力は完全には利用し尽くされておらず、工業的な製造および／または加工においてたいてい現れるような複雑なプロセスにおいては特にそうである。
【０００５】
したがって、本発明の課題は、工業プロセスにおいてたいてい生じる制御および／または調整に対するすべての要求に関して、処理能力のより一層の利用、ならびに、特に関与する制御および／または調整システムの効率の改善をもたらし、それにもかかわらず、実行が簡単であり、とりわけ、方法の使用および制御、ないしはユーザによる方法への介入が可能であるようにすることである。
【０００６】
本発明は現代の制御および／または調整システムに適した方法を提供する。この方法は、関連する制御および／または調整システムに関して上位のタスクマネージメントを提供するので、制御および／または調整システムはこのような専有タスクマネージメントのタスクから解放される。
【０００７】
この利点は、−有利にはそれぞれ−特有のリアルタイム要求を伴った少なくとも２つの、複数のリアルタイムアプリケーションを、リアルタイムモジュールの下でまたはリアルタイムオペレーティングシステムの下で活動化させることで達成される。各々のリアルタイムアプリケーションのリアルタイム要求は、制御すべきおよび／または調整すべき工業プロセスによって予め決まっている。工作機械での材料加工のためには、例えば、通常は、例えばリミットスイッチの場合のような単純な転送タスクまたは単純な検出タスクの場合よりも高いリアルタイム要求が、すなわち、特に比較的小さな時定数と、アプリケーションに関するＣＰＵ／処理時間の比較的大きな割合の時間とが、与えられている。
【０００８】
通常、例えば工作機械での加工プロセスもしくはオートメーション技術における生産プロセスなどの工業プロセスにおいて、また、印刷機、工作機械および包装機械でのハンドリングにおいて制御方法に対して生じるこの要求は、本発明により柔軟に満たされる。それゆえ、本来の制御および／または調整方法、例えばＮＣでの一括処理は、このようなタスクマネージメントのタスクから解放され、それにより、比較的高い効率が達成される。個々のリアルタイムアプリケーションの適用の実施形態の変更とは無関係に、変更されない各々のリアルタイムアプリケーションの動作は確定的であり、影響を受けない。
【０００９】
さらに、本方法では、機械におけるまたは例えば生産ラインにおける特定の工業プロセスに対して、それぞれ特有のリアルタイム要求がより正確かつ柔軟に写し取られる。これは、リアルタイムアプリケーションの各々に対して、それぞれプロセスに合わせて個別に、動作サイクルにおける最長使用可能リアルタイム部分の相応する最長使用可能時間（割合）を割り当てることにより行われる。これにより、格段に正確な計算能力の割当て、すなわち、動作サイクルにおいて各々のリアルタイムアプリケーションに対して使用可能な相応する処理時間の割当てが可能になる。これにより、−静的または動的に、下記参照−それぞれの設備を格段に正確にモデル化し、設備の性能に対する相応の要求を格段に良好かつ正確に満たすことができる。それぞれ異なるリアルタイムアプリケーションに関して、プロセスに合わせて比較的正確に計算時間のモデル化を行うことにより、既存の計算能力をより効率的に利用することができる。
【００１０】
本発明の有利な実施形態は従属請求項に示されている。
【００１１】
各リアルタイムアプリケーションの最長使用可能時間割合は調整可能である、および／または静的に割り当てられる。この割当ては、運転開始の間、設備の変更の際、または作業中にも、すなわち、関連する工業プロセスの間にも行うことができる。これにより、本方法は非常に高い適応性を有し、その結果、本発明による方法を用いた制御および／または調整は、多くの工業プロセスに対して、それぞれ実行時間以前または実行時間中に行うことが可能である。このことは、最長使用可能時間割合の割当てが複数の動作サイクルの間一定である、とりわけ工業プロセスの実行時間の間一定に保たれ、通常は、設備の変更の際、または制御および／または調整に対する要求が変更される際にのみ変更されることを意味している。そのために、有利には、１回のテストランまたは複数回のテストランに基づいて、最長使用可能時間割合を適応的に求めることが提案される。これにより、関与しているプロセスを考慮しつつ、既存の処理能力の使用が最適化される。
【００１２】
割当てモジュールは、リアルタイムアプリケーションの実行時間中にも使用時間の割当てを可変に保つことができるので、例えばユーザによる手動入力によって、相応する割当てを変更することが可能である。これにより、リアルタイムアプリケーションの使用時間の割当てを−後からでも−適合させることが可能である。
【００１３】
同様に、リアルタイムアプリケーションの最長使用可能時間割合は、リアルタイムアプリケーションの実行時間中、必要に応じて自動で動的に割り当てられる。このような方法は要求の変化、とりわけ、それぞれ異なるリアルタイムアプリケーションの所要計算時間の変化に自動的に反応する。これは、例えば、生産条件が変化する場合、例えば生産速度が上昇または低下する場合などである。
【００１４】
本発明は、それぞれＳＰＳ機能／ＳＰＳ部分プロセスに関するリアルタイムアプリケーションおよびＮＣ機能／ＮＣ部分プロセスに関するリアルタイムアプリケーションが設けられれば、この種の工業プロセスで生じる要求のほとんどをすでにカバーしたことになる。本発明は、さまざまな要求、特にＳＰＳ機能とＮＣ機能のリアルタイム要求が、非常に有利なことに、基礎となるタスクマネージメントの模写になりうることを認識している。この割当ては必要に応じてかつプロセスに合わせて行いうるため、必ずしもつねにより大きな割合のＮＣ時間が用意されなければならない訳ではない。相応する設備または相応する設備の一部の構成に応じて、使用可能時間は変化することができるので、例えば、基礎となるＳＰＳ機能に対してより大きな時間割合を当てることもできる。
【００１５】
標準的オペレーティングシステムとして、例えば、組込み型オペレーティングシステムを使用してもよい。その場合には、相応の機能またはモジュール（リアルタイムモジュール、割当てモジュール）は標準的オペレーティングシステムにおいて実現することができる。
【００１６】
割当ては、制御および／または調整のための相応の装置に関しても、別個に、すなわち遠隔で行うことができる。その場合には、相応の装置は本発明による割当てのためのソフトウェアおよび／またはハードウェアから解放されており、ただ別個のＥＤＶ設備が、とりわけインタフェースを用いた直接接続を介してまたはネットワーク接続を介して、ハードウェアプラットフォーム内へと接続されるだけでよい。
【００１７】
図面に示されている実施例に基づいて本発明をより詳細に説明する。
【００１８】
図１は、本発明による機能単位の概略図を示しており、これらの機能単位の協働によって、工業プロセスに対する本発明による制御および／または調整方法が得られる。
【００１９】
図２は、連続した動作サイクルの断片に基づいた、本発明による割当て方法の概略図を示している。
【００２０】
図３は、シフトコントローラの構成の点で図３と異なる本発明による割当てのためのシフトコントローラ構成を示している。
【００２１】
図４は、標準的オペレーティングシステムおよび割当てモジュールの適切な分類による非リアルタイムタスクとリアルタイムタスクの優先順位図を示している。
【００２２】
以下では断りのないかぎり、すべての参照記号はつねにすべての図に関連している。
【００２３】
図１には、上述のような、工業プロセスを制御および／または調整するための方法を実行する本発明の基本となる機能単位の協働が示されている。図は明瞭性に配慮して専ら概略的に表現されている。制御すべき工業プロセス１は、本発明による方法によって制御および／または調整される部分プロセス２０を有している。重要なことは、制御すべき部分プロセス２０がさらなる（個別的には図示されていない）部分プロセスから構成されていることである。なお、これらのさらなる部分プロセスには、異なる２つのリアルタイムアプリケーションの使用が必要または適切である。例えば、単純なハンドリングタスクに対して、例えば部品の補給または板材の送り出しに対しては、ＳＰＳリアルタイムアプリケーションを使用することができる。さらに、例えば、ＣＮＣ／ＮＣリアルタイムアプリケーションを必要とする部品加工が必要である場合もある。これは例えば工作機械の一部であってもよい。各々のリアルタイムアプリケーション７，８は、制御および／または調整すべきプロセスに基づいた特有のリアルタイム要求を有しており、本発明による方法はこれらのリアルタイム要求を斟酌する。それゆえ、リアルタイム要求はプロセスの基準となる時定数によって決定されている。そのためには、例えば開始および停止時点の時点把握の精度ならびに本発明に従って割当てられた相応する所要時間割合も重要である。この場合、調整モジュール６と割当てモジュール４は１つの機能単位にまとめられている。調整モジュール６により時間割合（後述参照）の分配が行われた後、調整モジュール６は割当てモジュール４と通信する。割当てモジュール４は時間設定を受け取り、それを基に、各々のリアルタイムアプリケーション７，８に相応の最長実行時間を割り当てる。この実行時間によって部分プロセス２０が制御および／または調整されるので、（とりわけ、それぞれ異なる）リアルタイム要求の特性に適した、そのつどの最適なまたは従来技術に比べて改善された個別の時間割当てが行われる。異なるリアルタイムアプリケーション７，８のリアルタイム要求は実際的には同じであってもよい。
【００２４】
図２には、本発明による動作サイクル１３における時間割合９，１０の割当ての例が概略的に示されている。動作サイクル１３の持続時間は、ハードウェアプラットフォーム２によって管理できるように、また相応するリアルタイム要求のタイミング要求とサイクル持続時間に適するように選択されている。動作サイクル１３のリアルタイム部分２９は、−ここでは記号で示されている−リアルタイム／非リアルタイム分割のためのシフトコントローラ２８の位置によって予め定められる。したがって、原則的にリアルタイムアプリケーション７，８に対して使用可能な時間割合は固定されている。分かり易い図にするため、リアルタイムアプリケーション７，８間でサイクル時間の分配をするシフトコントローラ２７の調整範囲は、シフトコントローラ２８の位置により予め決められている。図示された位置によれば、リアルタイムアプリケーション８（ここではＮＣアプリケーション）に対してはＮＣ時間割合９が使用可能であり、ＳＰＳリアルタイムアプリケーション７に対しては相応する時間割合１０が使用可能である。時間割合９，１０はここではプロセス要求またはそれぞれの制御および／または調整要求にしたがって異なっている。相応する持続時間またはサイクル時間割合の実用上最適なまたは有利な分配は、例えば、テストランにより予め求めてもよいし、または、関係する部分プロセス２０を実行する相応の設備のシミュレーションにより決定してもよい。明瞭なオペレーションの別の例は図３に示されている。この例では、リアルタイムおよび非リアルタイムアプリケーション７，８間での分配のためにシフトコントローラが設けられている。ここでは、シグマ（和）によってリアルタイムが表されている。このシフトコントローラは動作サイクル１３におけるリアルタイム部分２９の調整を可能にする。このリアルタイム部分は上限および下限を有しており、この例ではそれらは１０％と９０％である。
【００２５】
下の方のシフトコントローラは、上の方のシフトコントローラによって与えられた動作サイクル１３におけるリアルタイム部分２９における個々のリアルタイムアプリケーション７，８の時間割合９，１０の分配に使用される。
【００２６】
最後に、図４には相応のモジュールまたは機能単位の優先順位に基づいた分類が示されている。非リアルタイム優先順位とリアルタイム優先順位との間の境界２３は単に模式的に示されているだけである。非リアルタイムプレーンには標準的オペレーティングシステム３がある。シフトコントローラ２２を用いた調整モジュール６による−例えば手動の−調整も非リアルタイムプレーンで行われる。さらに、標準的オペレーティングシステム３の下では非リアルタイムアプリケーション５を実行することができる。ＳＰＳリアルタイムアプリケーション７とＣＮＣアプリケーション８はリアルタイム優先順位に入っている。特別なアプリケーションの場合には、リアルタイムアプリケーション８（ＣＮＣ）の優先順位は割当てモジュール４の優先順位よりも上にくることがありうる。しかし、通常は、割当てモジュール４はリアルタイムアプリケーション７，８よりも高い優先順位を有する。これは、制御および／または調整の確定的動作の維持に役立つ。割当てモジュール４は、動作サイクル１３において相応するアプリケーションに対する適切な開始および停止時点に周期的に対応する適切な時点１４，１５，１６（図２参照）に、リアルタイムアプリケーション７，８に対して相応の開始及び停止信号を発生させる。
【図面の簡単な説明】
【００２７】
【図１】本発明による機能単位の概略図を示す。
【図２】連続した動作サイクルの断片に基づいた、本発明による割当て方法の概略図を示す。
【図３】シフトコントローラの構成の点で図３と異なる本発明による割当てのためのシフトコントローラ構成を示す。
【図４】標準的オペレーティングシステムおよび割当てモジュールの適切な分類による非リアルタイムタスクとリアルタイムタスクの優先順位図を示す。
【符号の説明】
【００２８】
１  工業プロセス（概略）
２  ハードウェアプラットフォーム
３  標準的オペレーティングシステム
４  割当てモジュール
５  非リアルタイムアプリケーション
６  調整モジュール
７  ＳＰＳリアルタイムアプリケーション
８  ＮＣリアルタイムアプリケーション
９  ＮＣ時間割合
１０  ＳＰＳ時間割合
１３  動作サイクルの持続時間
１４  ＮＣ開始時点に一致する、動作サイクルの開始時点
１５  ＳＰＳ開始時点に一致するＮＣ停止時点
１６  非リアルタイム開始時点に一致するＳＰＳ停止時点
２０  工業プロセスの部分プロセス
２１  非リアルタイムサイクル
２２  シフトコントローラ
２３  非リアルタイム／リアルタイム優先順位の境界
２４  可能な優先順位範囲
２５  非リアルタイム部分
２６  非リアルタイム部分
２７  リアルタイム分配用シフトコントローラ
２８  リアルタイム−非リアルタイム分割用シフトコントローラ
２９  リアルタイム部分
【図３】
2005502146.tif 000003
【図４】
2005502146.tif 000004
【国際公開パンフレット】
2005502146.tif 000005
2005502146.tif 000006
2005502146.tif 000007
2005502146.tif 000008
2005502146.tif 000009
2005502146.tif 000010
2005502146.tif 000011
2005502146.tif 000012
2005502146.tif 000013
2005502146.tif 000014
2005502146.tif 000015
2005502146.tif 000016
2005502146.tif 000017
2005502146.tif 000018
2005502146.tif 000019
2005502146.tif 000020
2005502146.tif 000021
2005502146.tif 000022
【国際公開パンフレット（コレクトバージョン）】
2005502146.tif 000023
2005502146.tif 000024
【国際調査報告】
2005502146.tif 000025
2005502146.tif 000026
2005502146.tif 000027
2005502146.tif 000028