(57)【特許請求の範囲】
【請求項１】
ストアードプログラム制御および数値制御のそれぞれの本来の機能を統合して含んでいる汎用運動制御システムにおいて、
相異なる優先順位を有する相異なる形式の複数のランレベルを含む１つに統合されたランレベルモデルが形成されており、その際に最高の優先順位から最低の優先順位まで下記のランレベル：
ａ）クロックされるシステムレベルおよびユーザーレベルから成る位置調節器レベル、
ｂ）クロックされるシステムレベルおよびユーザーレベルから成る内挿器レベル、
ｃ）応答されるべき事象（イベント）に応答するイベントタスクに対するイベントシステムレベル、
ｄ）非同期の誤りに対するユーザーレベル、
ｅ）イベントタスクに対するユーザーレベルイベント、警報タスクに対するユーザーレベル警報、サイクリックなタスクに対するユーザーレベルクロックドおよび外部からロード可能なユーザープログラムに対するシステムレベルパラメータ化からなるユーザーにより要求に応じて自由に設定可能な別のユーザーレベル（ＦＡ）、
ｆ）数値制御に属する運動シーケンス（ＢＳ１〜ＢＳ３）に対するユーザーレベル順次、ストアードプログラム制御に属する自由なサイクル（ＦＺ）に対するユーザーレベル自由なサイクルおよび低優先順位のその他のシステムタスク（ＳＴ）に対するシステムレベル背景の連続から形成される、背景処理に対するレベル群
が設けられており、ランレベルａないしｅが実時間処理のためのランレベル群を形成することを特徴とする汎用運動制御システム。
【請求項２】
前記e)の自由に設定可能な別のユーザーレベル（ＦＡ）において、自由にプログラム可能なタスク（Ｔ１〜Ｔ４）がそれぞれクロックされるシステムレベルからの信号（Ｓ１）ないしイベントシステムレベルからの信号（Ｓ２）により起動可能であることを特徴とする請求項１記載の汎用運動制御システム。
【請求項３】
１つのランレベルのなかにさらに異なる優先順位を有する層構造が設けられていることを特徴とする請求項１または２記載の汎用運動制御システム。
【請求項４】
非同期の誤りに対するユーザーレベルにおいて、ユーザーにより設定可能な異なる優先順位の層構造が設けられることを特徴とする請求項３記載の汎用運動制御システム。
【請求項５】
前記ａないしｅにおいて規定された実時間処理のためのレベル群において外部からロード可能なプログラムも統合可能であることを特徴とする請求項１ないし４のいずれか１つに記載の汎用運動制御システム。
【請求項６】
前記ｆにおいて規定された背景処理に対するレベル群において運動シーケンス（ＢＳ１〜ＢＳ３）、自由なサイクル（ＦＺ）および低優先順位のその他のシステムタスク（ＳＴ）がラウンド・ロビン法に従って実行可能であることを特徴とする請求項１ないし５のいずれか１つに記載の汎用運動制御システム。
【発明の詳細な説明】
【０００１】
本発明は、ストアードプログラム制御装置および数値制御装置のそれぞれの本来の機能を統合して含んでいる汎用の運動制御システム（モーションコントロールシステム）に関する。以下のおいてＳＰＳと称されるストアードプログラム制御装置は、一般的にはＰＬＣ（プログラマブルロジックコントローラ）と呼ばれるものに相当する。また数値制御は、ＮＣと略称され、主として工作機械のＮＣ加工の際の工具等の運動を制御することから、運動制御とも呼ばれる。
【０００２】
ストアードプログラム制御に対しても運動制御に対しても、各技術的プロセスを制御するためのソフトウェア‐タスクが対応付けられるそれぞれ相異なる階層的なランレベルによってモデル化することは現在では通常行われている。これらのタスクはシステム課題を満足し、あるいはユーザープログラムされていてもよい。
【０００３】
ドイツ特許出願公開第 197 40 550 A1号明細書から、ストアードプログラム制御“ＳＰＳ”のプロセス制御機能およびＮＣ制御の運動制御機能を、統一的に構成して１つの制御システムに統合することができることは公知である。
【０００４】
このＳＰＳ／ＮＣ統合はＳＰＳ制御モジュールおよびＮＣ制御モジュールの結合接続の形態で行われる。しかしこのような統合を単純に行なっただけでは、両者の制御課題を含む全体的な制御課題に対して最適かつ効率的なタスク構造は達成されない。
【０００５】
従って、本発明の課題は、それぞれ相異なる制御課題および基礎となっている技術的プロセスの相異なる周辺条件または要求に対して、簡単な仕方で、組み合わされたＳＰＳ／ＮＣ制御の最適な融合形を作成することである。
【０００６】
これらの最適な融合形は、原理的に、組み合わされたＳＰＳ／ＮＣ制御の制御タスクに対する統一的に構成されたランレベルモデルにより達成される。
【０００７】
この出発点から出発して上記の本発明の課題は、相異なる優先順位を有する相異なる形式の複数のランレベルを有する統一的なランレベルモデルが形成されており、その際に最高の優先順位から最低の優先順位まで下記のランレベル：
ａ）クロックされるシステムレベルおよびユーザーレベルから成る位置調節器レベル、
ｂ）クロックされるシステムレベルおよびユーザーレベルから成る内挿器レベル、
ｃ）応答されるべき事象（イベント）に対するイベントシステムレベル、
ｄ）非同期の誤りに対するユーザーレベル、
ｅ）イベントタスクに対するユーザーレベルイベント、警報タスクに対するユーザーレベル警報、サイクリックなタスクに対するユーザーレベルクロックドおよび外部からロード可能なユーザープログラムに対するシステムレベルパラメータ化からなるユーザーにより要求に応じて自由にプログラム可能な別のユーザーレベル、
ｆ）数値制御に属する運動シーケンスに対するユーザーレベル順次、ストアードプログラム制御に属する自由なサイクルに対するユーザーレベル自由なサイクルおよび低優先順位のその他のシステムタスクに対するシステムレベル背景の連続から形成される、背景処理に対するレベル群
が設けられており、ランレベルａないしｅが実時間処理のためのランレベル群を形成することにより解決される。
【０００８】
この層形成（ランレベル形成）の主な利点は、プロセス制御のタスクと運動制御のタスクとの間の通信が最小化されることにある。他の利点は、プロセス制御および運動制御に対する制御課題のプログラミングが統一的な作成領域を有する統一的なプログラム言語で行われ得ることにある。
【０００９】
本発明の第１の構成は、自由にプログラム可能なタスクがそれぞれクロックされるシステムレベルからの信号およびイベント‐システムレベルからの信号により起動可能であることにある。それによりたとえば外部の事象が制御により直ちに反応され得ることが保証される。
【００１０】
本発明の別の有利な構成は、別の優先順位を有する層形成がランレベル内に設けられていることにある。組み合わされたＳＰＳ／ＮＣ運動制御のソフトウェア構造はそれにより相異なる制御課題に、または基礎となっている技術的プロセスの要求に最適に適合し得る。こうして非同期の誤りに対するユーザーレベルにおいて相異なる誤り原因が昇順の優先順位を有する相異なるレベルに対応付けられ得る。
【００１１】
この際に、非同期の誤りに対するユーザーレベルにおいて優先順位の層形成がユーザーにより設定可能であることが可能である。それによって非常にフレキシブルにユーザーにより制御が、応用の基礎となっている事象スペクトルに適合し得る。
【００１２】
本発明の別の有利な構成は、“実時間処理のためのレベル群” （前記ランレベルａないしｅ）のなかに外部からロード可能なプログラムも統合可能であることにある。このアフターロードにより出力制御が別のテクノロジー的な機能についてダイナミックに拡張され得る。
【００１３】
本発明の別の有利な構成は、背景処理（バックグランド処理）に対するレベル群（前記ランレベルｆ）において運動シーケンス、自由なサイクルおよび低優先順位のその他のシステムタスクがラウンド・ロビン法に従って実行可能であることにある。
【００１４】
それにより、このレベルのすべてのタスクがユーザーにより決定可能な時間の間に処理されること、またこのレベルのタスクが無駄にその処理を待たなくてよいことが保証される。
【００１５】
本発明により達成される主な利点は特に、ユーザーによるランレベルのパラメータ化の可能性により、相応する状況に対するそれぞれ制御の最適な形成が達成されることにある。なぜならば、各制御課題および各技術的プロセスは、制御の内部におけるソフトウェア技術的な変換または解決に対して相異なる要求（たとえば必要とされるプログラム、モジュール、タスクの数、生じ得る誤り状況の数、相応に反応されなければならない外部の事象の数、同期化の複雑さ）を課するからである。さらにプロセス制御および運動制御の統合により制御における通信費用が劇的に低減される。
【００１６】
本発明の１実施例が図面に示されており、以下に説明される。
【００１７】
図１には構造図の形態で、技術的プロセスＴＰ１を制御するためストアードプログラム制御装置ＳＰＳおよび運動制御装置ＮＣ（数値制御）の並列な作動が行われることが示されている。ストアードプログラム制御装置ＳＰＳおよび運動制御装置ＮＣはそれぞれランタイムシステムＲＴＳ１またはＲＴＳ２を含んでいる。両方の制御装置の間の通信は特別な補助手段を介して行われ、例として双方向性の通信チャネルＫが示されている。ユーザーによる制御のプログラミングは通常、相異なる作成領域を有する相異なるプログラミング言語で行われる。すなわち、それぞれ分離したプログラミングシステムまたはエンジニアリングシステムＰ１、ＥＳ１およびＰ２、ＥＳ２により行われる。この従来通常のやり方の主な欠点は、一方では両制御装置の間の費用のかかる通信にあり、他方では分離した相異なるプログラミングシステムまたはエンジニアリングシステムＰ１、ＥＳ１およびＰ２、ＥＳ２にある。制御装置の入出力端ＥＡ１、ＥＡ２を介して本来の技術的プロセスＴＰ１が制御される。プログラミングシステムＰ１とストアードプログラム制御装置ＳＰＳとの間、またはプログラミングシステムＰ２と数値制御装置ＮＣとの間に情報経路Ｉ１またはＩ２が位置しており、それらを介してプログラムが各制御にロードされる。
【００１８】
図２には古典的なストアードプログラム制御装置（ＳＰＳ；図１）の、優先順位に従って配置されている主なランレベルが示されている。優先順位の昇順はその際に矢印により示されている。最も低い優先順位のレベルに、破線により示されているように、２つの相異なる課題、すなわち自由なサイクルすなわち“ユーザーレベル  自由なサイクル”と、バックグランド（背景）システムレベルすなわち“システムレベル  背景”とが、ラウンド・ロビン法で、すなわちタイムスライス制御されて、実行される。バックグランド（背景）システムレベルにはたとえば通信課題が対応付けられている。“ユーザーレベル  クロックド”と呼ばれる後続のクロック制御されるユーザーレベルにおいて、このレベルのタスクまたはプログラムの呼出しクロックがパラメータ化可能である。それに続いて、このクロックされるレベルのユーザープログラムの処理が、開始イベントの新たな生起以前に、適時に終了しているかどうかに関して監視が行われる。対応付けられているレベルのユーザープログラムが完全に処理されることなしにクロック時間が経過すれば、優先順位が次の次の“非同期の誤りに対するユーザーレベル”の相応するタスクが開始される。この“非同期の誤りに対するユーザーレベル”においてユーザーは誤り状態の取扱をプログラムすることができる。
【００１９】
“ユーザーレベル  クロックド”に“ユーザーレベル  イベント”が続く。外部または内部の事象（イベント）への反応は“ユーザーレベル  イベント”のなかで行われる。このような事象の典型的な例は限界値の超過である。“システムレベル  高優先”に、ストアードプログラム制御の作動の仕方を保証するオペレーティングシステムの課題が位置している。
【００２０】
図３は運動制御装置（ＮＣ；図１）の主なランレベルを示す。ここでも個々のレベルはそれらの優先順位に従ってハイアラーキ的に、矢印により示されているように、配置されている。“システムレベル  背景”および“ユーザーレベル  順次”は等しい優先順位、すなわち最も低い優先順位、を有する。この課題的な関連性は図２のように、破線により示されている。“ユーザーレベル  順次”のタスクは“システムレベル  背景”のタスクと一緒にラウンド‐ロビン法で処理される。“システムレベル  背景”の典型的なタスクはたとえば通信課題のためのタスクである。“ユーザーレベル  順次”においてはユーザーによりプログラムされた本来の制御課題（ＮＣ制御の課題）に対するプログラム部分が実行される。制御がこれらのプログラム部分の１つの中において運動命令または位置決め命令に突き当たると、サスペンドがセットされる、すなわちユーザープログラムがこの個所で中断される。この運動命令または位置決め命令の処理は最も優先順位の高い“システムレベル  クロックド”において行われる。“システムレベル  クロックド”においてランする各位置調節器がこの運動命令または位置決め命令を実行する。命令の実行の後に“ユーザーレベル  順次”に復帰跳躍（ジャンプ）され、またサスペンドにより中断されていたユーザープログラムがレジュームにより同じ個所において継続される。“システムレベル  クロックド”は既述の位置調節器とならんで制御の内挿（インターポレーション）部分をも含んでいる。
【００２１】
優先順位の最も低いレベルの上には“ユーザーレベル  クロックド”がある。ここでサイクリックなタスク、たとえば調節器機能、がランする。
【００２２】
後続の“ユーザーレベル  イベント”において、外部または内部の事象に反応するこのようなタスクが格納されている。このような事象はたとえば警報であってよい。
【００２３】
本発明の実施例を示す図４においては技術的プロセスＴＰ２は組み合わされたＳＰＳ／ＮＣ制御装置ＵＭＣにより制御される。頭字語ＵＭＣはＵＮＩＶＥＲＳＡＬ‐ＭＯＴＩＯＮ‐ＣＯＮＴＲＯＬを表す。制御装置ＵＭＣと所属の技術的プロセスＴＰ２との間の接続は双方向に入出力ＥＡ３を介して行われる。組み合わされたＳＰＳ／ＮＣ制御装置のプログラミングは共通のプログラミングシステムＰ３またはエンジニアリングシステムＥＳ３を介して行われ、その際にエンジニアリングシステムＥＳ３は図１の際と同様にプログラミングシステムＰ３に対する便利な領域を提供する。それによって作成されたプログラムは情報経路Ｉ３を経て汎用運動制御装置ＵＭＣのランタイムシステムＲＴＳ３に伝達される。
【００２４】
図５は、図４に示された本発明による汎用運動制御装置のランレベルモデルを示す。レベルの優先順位は先の図と同じく最も高い優先順位の方向への矢印により示されている。最も優先順位の低いレベル群はいわゆる“レベル群  背景‐処理”である。それは“システムレベル  背景”、“ユーザーレベル  自由なサイクル”および“ユーザーレベル  順次”から成っている。これらの３つの等しい優先順位のレベル（破線の境界線により示されている）のタスクはサイクリックにラウンド・ロビン法により処理される（その詳細は後で図８と関連して説明される）。“レベル群  背景処理”に高優先順位側に続くランレベルは、ユーザーにより要求に応じて自由に設定可能なユーザーレベルＦＡである。このユーザーレベルＦＡは、二重枠により示されたイベントタスク、警報タスク、サイクリックなタスクおよび外部からロード可能なユーザープログラムに対するランレベルを含む。このユーザーレベルＦＡはこうして明示的に４つの形式のレベルから成っている。これらの４つの形式のレベルはユーザーレベルＦＡのなかでのそれらの優先順位に関して再びユーザーにより層形成可能である。これについては図７と関連してさらに説明される。
形式１：ユーザーレベル  イベント      （イベントタスク）
形式２：ユーザーレベル  警報          （警報タスク）
形式３：ユーザーレベル  クロックド    （サイクリックなタスク）
形式４：システムレベル  パラメータ化  （外部からロード可能なユーザープログラム）
【００２５】
これらの形式のレベルはユーザーにより自由に選択可能な優先順位を有するものとしてユーザーレベルＦＡのなかに配置され得る。それによってユーザーは、制御課題および制御すべき技術的プロセスの要求および周辺条件に対して、汎用の運動制御を最適に組み合わせることが可能である。
【００２６】
“ユーザーレベル  イベント”において、たとえば、周辺の入力に反応するタスクが配置されている。“ユーザーレベル  警報”のなかにたとえば、限界値警報に反応するタスクが配置されている。“ユーザーレベル  クロックド”のなかにサイクリックな、ユーザーによりプログラム可能なタスクが含まれている。“システムレベル  パラメータ化”のなかに外部からロード可能なプログラムが一体に含まれ得る。それにより、汎用運動制御がダイナミックに付加的なテクノロジー的な機能を拡張され得る。この“システムレベル  パラメータ化”のなかに通常、ゆっくりした調節課題または監視課題（たとえば１００ｍｓの範囲内のサイクル時間を有する課題）がロードされる。
【００２７】
汎用運動制御のランレベルモデルのなかのすぐ次に高い優先順位のレベルは“非同期の誤りに対するユーザーレベル”である。このレベルのなかでユーザーは、ストアードプログラム制御の際と同様に、誤り状態の取扱をプログラムすることができる。“非同期の誤りに対するユーザーレベル”のなかにたとえば、テクノロジー的な警報に反応するタスクが位置している。ユーザーは、この“非同期の誤りに対するユーザーレベル”のなかで組み合わせに対して特有の数のレベルをパラメータ化する可能性をも有する。図面を見やすくするため、その詳細は図示されていない。ユーザーはこうして必要に応じて特定の誤り事象に特定の優先順位を対応付けることができる。
【００２８】
すぐ次に“イベントシステムレベル”が続く。“イベントシステムレベル”のタスクはたとえば非常停止のような臨界的な内部または外部の事象に反応する。
【００２９】
すぐ次のレベルは“内挿器（インターポレータ）レベル”である。それは“クロックされるシステムレベル”および“ユーザーレベル”を含んでいる。
【００３０】
最も高い優先順位のレベルは“位置調節器レベル”である。またそれは“クロックされるシステムレベル”および“ユーザーレベル”を含んでいる。位置調節器レベルおよび内挿器レベルのユーザーレベルは、位置調節器タスクおよび内挿器タスクのなかに呼出されるタスクを含んでいる。これらのタスクのラン時間は監視され、システムにより決定された時間の超過はそのレベルの中断および“非同期の誤りに対するユーザーレベル”のなかの非同期の誤りの生起に通ずる。
【００３１】
位置調節器は内挿器（インターポレータ）よりも高い優先順位を有する、すなわち位置調節器は内挿器により中断され得ない。しかし位置調節器は内挿器を中断し得る。
【００３２】
汎用運動制御のランレベルモデルのなかには原理的に個々のランレベルのなかに既述の層とならんで、別の優先順位の層が設けられていてよい。
【００３３】
図６には、“システムレベル  クロックド”（調節器および内挿器）のなかで発生される信号Ｓ１と“イベントシステムレベル”のなかで発生される信号Ｓ２とにより、警報タスク、イベントタスク、サイクリックなタスクおよび外部からロード可能なユーザープログラムに対する、ユーザーにより要求に応じて自由に設定可能なユーザーレベルＦＡのなかのタスクがどのように突き動かされるかが示されている。
【００３４】
図７は例としてユーザーにより要求に応じて自由に設定可能な、警報タスク、イベントタスク、サイクリックなタスクおよび外部からロード可能なユーザープログラムに対するユーザーレベル（ＦＡ；図５および６）の組み合わせを示す。これらのレベルにタスクＴ１、Ｔ２、Ｔ３およびＴ４が対応付けられる。対応付けは対応付け矢印ＺＰ１ないしＺＰ４により示されている。レベルの優先順位は、先の示し方のように、最も高い優先順位に向かう方向の矢印により示されている。
【００３５】
図８は“レベル群  背景処理”（図５および６）のタスクの処理を示す。その際に運動シーケンスＢＳ１、ＢＳ２およびＢＳ３ならびに、原理的にストアードプログラム制御（ＳＰＳ）で周知の自由なサイクルＦＺ、および“システムレベル  背景”のシステム‐タスクＳＴはラウンド・ロビン法で処理される。このような方法ではタスクが統一的なタイムスライス法に従って取り扱われる。そのタイムスライスが経過していると、または中断が生ずると、タスクはコントロールを発する、即ちすぐ次のタスクが取り扱われる。タイムスライスの選択により、制御を各要求に適合させることができる。こうしてラウンド・ロビン法は、プロセスレベルのすべてのタスクが取り扱われることを保証する。すなわち、個々のタスクが計算機能力を専ら利用し、他のタスクがもはや取り扱われないという事態が排除されている。
【図面の簡単な説明】
【図１】  別々のストアードプログラム制御および運動制御を有する技術的プロセスの公知の制御。プログラミングはそれぞれ別々のプログラミングシステムを介して行われる。
【図２】  古典的なストアードプログラム制御の主なランレベル。
【図３】  公知の運動制御の主なランレベル。
【図４】  本発明による汎用制御。
【図５】  本発明による汎用制御の主なランレベル。
【図６】  両方のクロックされるシステムレベルおよび汎用制御のランレベルモデルの“イベントシステムレベル”からのタスクの呼出し。
【図７】  ユーザーにより要求に応じて自由に設定可能な、イベントタスク、警報タスク、サイクリックなタスクおよび外部からロード可能なユーザープログラムに対するユーザーレベルの１実施例。
【図８】  背景処理に対するレベル群において運動シーケンス、自由なサイクルおよび優先順位の低いその他のシステムタスクがどのようにラウンド・ロビン法で処理されるかの１実施例。
【図１】
0004633319.tif 000002
【図２】
0004633319.tif 000003
【図３】
0004633319.tif 000004
【図４】
0004633319.tif 000005
【図５】
0004633319.tif 000006
【図６】
0004633319.tif 000007
【図７】
0004633319.tif 000008
【図８】
0004633319.tif 000009