(57)【要約】  本発明は、工作機械、生産機械および／またはロボットの制御のための制御装置（４）のインタプリタ（５）によるサブプログラム（２）の翻訳のための方法において、サブプログラム（２）が多数の処理単位を有し、処理単位がインタプリタ（５）によって順々に読み込まれ、グラフィック情報によってパターン命令として定義されていてかつ後続の処理単位のデータ形式に関する構造情報を含んでいる処理単位をインタプリタ（５）が読み込んだときに、インタプリタ（５）によってこのデータ形式を有する書式（８）が発生させられかつ記憶され、インタプリタ（５）によって読み込まれた後続の処理単位のパラメータが書式（８）に書き込まれ、それにより書式（８）および処理単位のパラメータからデータセットが発生させられる方法に関する。更に、本発明はこれに関係する制御装置に関する。本発明は工作機械、生産機械および／またはロボットを制御するための制御装置のインタプリタによりサブプログラムを翻訳するための簡単で高速の方法をもたらす。更に、本発明はこれに関係する制御装置をもたらす。
2008532130.tif 000002
【特許請求の範囲】
【請求項１】
工作機械、生産機械および／またはロボットの制御のための制御装置（４）のインタプリタ（５）によるサブプログラム（２）の翻訳のための方法において、サブプログラム（２）が多数の処理単位を有し、処理単位がインタプリタ（５）によって順々に読み込まれ、グラフィック情報によってパターン命令として定義されていてかつ後続の処理単位のデータ形式に関する構造情報を含んでいる処理単位をインタプリタ（５）が読み込んだときに、インタプリタ（５）によってこのデータ形式を有する書式（８）が発生させられかつ記憶され、インタプリタ（５）によって読み込まれた後続の処理単位のパラメータが書式（８）に書き込まれ、それにより書式（８）および処理単位のパラメータからデータセットが発生させられることを特徴とする方法。
【請求項２】
処理単位が作業命令およびパラメータを含んでいることを特徴とする請求項１記載の方法。
【請求項３】
インタプリタ（５）によって読み込まれる後続の処理単位が他のグラフィック情報によってパターン命令に属するものとして定義されていてかつパラメータのみを有し、後続の処理単位のパラメータが書式（８）に書き込まれることを特徴とする請求項１乃至２の１つに記載の方法。
【請求項４】
パラメータが特殊文字として構成されていることを特徴とする請求項１乃至３の１つに記載の方法。
【請求項５】
サブプログラム（２）およびインタプリタ（５）を含む工作機械、生産機械および／またはロボットの制御のための制御装置（４）において、サブプログラムがインタプリタ（５）によって順々に読み込まれる多数の処理単位を有し、インタプリタ（５）が次のように構成されていること、すなわち、グラフィック情報によってパターン命令として定義されていてかつ後続の処理単位のデータ形式に関する構造情報を含んでいる処理単位をインタプリタ（５）が読み込んだとき、インタプリタ（５）によってこのデータ形式を有する書式（８）が発生させられかつ記憶され、インタプリタ（５）によって読み込まれた後続の処理単位のパラメータが書式に書き込まれ、それにより書式および処理単位のパラメータからデータセットが発生させられるように構成されていることを特徴とする制御装置（４）。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、工作機械、生産機械および／またはロボットの制御のための制御装置のインタプリタによるサブプログラムの翻訳のための方法に関する。
【０００２】
更に、本発明はこの方法に関係する工作機械、生産機械および／またはロボットの制御のための制御装置に関する。
【０００３】
例えば工作機械、生産機械および／またはロボットのための制御装置においては、加工すべき工作物の加工プロセスが、機械の制御のための制御装置によって読み込まれるいわゆるサブプログラムに記述されている。各サブプログラムは、加工プロセスを規定する多数の処理単位からなる。この種のサブプログラムは、今日では一般にＣＡＤシステム上で作成され、しばしばいつも同じ構造を有する数千の処理単位からなる。極めてしばしば、処理単位ごとに加工に必要なパラメータが変わるだけである。
【０００４】
市販品に使用される機械制御のための制御装置はインタプリタにより動作する。すなわち、個々の処理単位のそれぞれが個別にインタラプタによって翻訳される。この場合に、翻訳は、処理単位のＡＳＣＩＩ文字の変換、処理単位の構文チェック、処理単位のプログラミング規則チェックおよび規定データフォーマットでの付属データセットの発生を意味する。データセットは、後で制御装置のインタポレータによって読み込まれ、インタポレータはデータセットから機械の駆動装置のための目標値を発生する。
【０００５】
この方法の欠点は、サブプログラムにおける多くの冗長データによりインタプリタによる処理単位の翻訳時に余計な計算時間が使用されることにある。
【０００６】
更に、サブプログラムは、しばしば制御装置のメモリ内に納まらないほど大きく、それゆえ、そのプログラム実行中に外部コンピュータから部分ごとに制御装置のメモリ内に取り込まれなければならない。外部コンピュータと制御装置との間における市販品に使用されているバス接続は限られた伝送容量しか持たないために、しばしば、必要な速度にて処理単位をインタプリタに任意に処理させることができない。
【０００７】
上述の欠点は、加工速度の低下および／または機械によって加工される工作物の表面仕上げ品質の低下をひき起こす。
【０００８】
工業製品ではこれまで高速のハードウェアにより計算時間を短縮することが試みられた。
【０００９】
しかしながら、この解決策は贅沢であり高価である。
【００１０】
本発明の課題は、工作機械、生産機械および／またはロボットの制御のための制御装置のインタプリタによるサブプログラムの翻訳のための簡単なかつ高速の方法を提供することにある。更に、これに関係する制御装置を提供しようとするものである。
【００１１】
この課題は、工作機械、生産機械および／またはロボットの制御のための制御装置のインタプリタによるサブプログラムの翻訳のための方法において、サブプログラムが多数の処理単位を有し、処理単位がインタプリタによって順々に読み込まれ、グラフィック情報によってパターン命令として定義されていてかつ後続の処理単位のデータ形式に関する構造情報を含んでいる処理単位をインタプリタが読み込んだときに、インタプリタによってこのデータ形式を有する書式が発生させられかつ記憶され、インタプリタによって読み込まれた後続の処理単位のパラメータが書式に書き込まれ、それにより書式および処理単位のパラメータからデータセットが発生させられることによって解決される。
【００１２】
更に、この課題は、サブプログラムおよびインタプリタを含む工作機械、生産機械および／またはロボットの制御のための制御装置において、サブプログラムがインタプリタによって順々に読み込まれる多数の処理単位を有し、インタプリタが次のように構成されていること、すなわち、グラフィック情報によってパターン命令として定義されていてかつ後続の処理単位のデータ形式に関する構造情報を含んでいる処理単位をインタプリタが読み込んだとき、インタプリタによってこのデータ形式を有する書式が発生させられかつ記憶され、インタプリタによって読み込まれた後続の処理単位のパラメータが書式に書き込まれ、それにより書式および処理単位のパラメータからデータセットが発生させられるように構成されていることによって解決される。
【００１３】
処理単位が作業命令およびパラメータを含んでいることが有利であることが分かった。これは処理単位の普通の形である。
【００１４】
更に、インタプリタによって読み込まれる後続の処理単位が他のグラフィック情報によってパターン命令に属するものとして定義されていてかつパラメータのみを有し、後続の処理単位のパラメータが書式に書き込まれることが有利であることが分かった。他のグラフィック情報により、処理単位が、定められたパターン命令に属するものとして定義可能である。
【００１５】
それゆえ各パターン命令に任意の個数の処理単位を割り当てることができる。
【００１６】
更に、  パラメータが特殊文字として構成されていることが有利であることが分かった。なぜならば、翻訳すべきデータの個数をなおも更に低減することができるからである。
【００１７】
制御装置の有利な構成は方法の有利な構成に類似してもたらされ、またその逆もそうである。
【００１８】
本発明の実施例を図面に示し、以下において詳細に説明する。図面において、図１は制御装置を示し、図２はデータセットを示し、図３は書式を示す。
【００１９】
図１には、ブロック図の形で、例えば工作機械、生産機械および／またはロボットの如き機械の主たる制御構成要素が示されている。
【００２０】
市販品では一般にパーソナルコンピュータとして構成されていてかつ主として機械の操作のために用いられる外部コンピュータ３上に工作物加工のための多数のサブプログラムが記憶されている。図１には分かり易さのために１つのみのサブプログラム２が示されている。各サブプログラムは順番に続く多数の処理単位からなり、これらの処理単位は図１にサブプログラム２内のぎざぎざの線によって示されている。実施例の枠内において、以下ではサブプログラムが下記の処理単位Ａ，Ｂ，ＣおよびＤからなることが仮定されている。
Ｃ＝ＡＣＰ（−１０．２３）  Ｘ１．１  Ｙ＝ＩＣ（３．４）                （Ａ）
Ｃ＝ＡＣＰ（−２０．２３）  Ｘ２．１  Ｙ＝ＩＣ（４．８）                （Ｂ）
Ｙ＝ＩＣ（５．１）                                                      （Ｃ）
Ｃ＝ＡＣＰ（−２２．２３）  Ｘ３．３  Ｙ＝ＩＣ（２．９）                （Ｄ）
【００２１】
各処理単位は、例えば機械軸の移動を指示する作業命令および相応のパラメータを含み、処理単位は一般に順々に処理される。模範的に処理単位Ａを考察するならば、パラメータ−１０．２３と関連した作業命令Ｃ＝ＡＣＰは、機械のＣ軸が正方向に値−１０．２３へ回転させられるべきであることを意味する。パラメータ１．１と関連した作業命令Ｘは、機械のＸ軸が位置１．１へ移動されるべきことを意味する。パラメータ３．４と関連した作業命令Ｙ＝ＩＣは、Ｙ軸が現在位置から３．４の値だけ移動されるべきであることを意味する。
【００２２】
実施例では各作業命令に１つの個別パラメータしか割り当てられていない。しかしながら、作業命令の種類に応じて１つの作業命令に複数のパラメータが属してもよい。処理単位ＢおよびＤは相応に処理単位Ａと同様の構造によって構成されている。処理単位Ｃはそれと異なる構造を有する。
【００２３】
工作物の加工開始時に、そのために必要なサブプログラムが、外部コンピュータ３から、これがサブプログラムの大きさから可能であるならば、工作機械、生産機械および／またはロボットの制御のための制御装置４のメモリ１０上にダウンロードされ、これは図１にそれ相応の矢印によって示されている。サブプログラム２がメモリ１０にとって大きすぎる場合には、先ずサブプログラムの一部のみがメモリ１０にロードされる。加工プロセス中に相応にサブプログラム２の残りの部分がロードされる。外部コンピュータ３および制御装置４はデータ交換のために一般にバス接続にて相互に接続されている。
【００２４】
サブプログラム２の個々の処理単位が順番にインタプリタ５によって翻訳され、処理単位ごとにインタポレータ６のための相応のデータセットを発生する。インタプリタの翻訳時に、処理単位のＡＳＣＩＩ文字の変換、処理単位の構文チェックおよび処理単位のプログラミング規則チェックが行なわれる。インタポレータ６は、インタプリタによって発生させられたデータセットに基づいて、機械の対応する軸■，ＹおよびＣを移動させるための駆動装置７Ａ，７Ｂおよび７Ｃの
入力量としての軸目標値を算定する。実施例においては、駆動装置７ＡはＸ軸を駆動し、駆動装置７ＢはＹ軸を駆動し、そして駆動装置７ＣはＣ軸を駆動する。
【００２５】
本発明によれば、サブプログラムにおいて特別の処理単位がグラフィック情報の助けによりいわゆるパターン命令として定義される。この定義は、好ましくはサブプログラムの初めに行なわれる。パターン命令自体はもはやパラメータを含まず、あとわずかに後続の処理単位のデータ形式に関する構造情報のみを含み、後続の処理単位は他のグラフィック情報によってパターン命令に属するものとして定義されていて、パラメータのみを有する。
【００２６】
本発明による方法のために使用されるサブプログラムは、上記の処理単位Ａ，Ｂ，ＣおよびＤに応じて、
ＤＥＦＰＡＴＴ  Ｃ＝ＡＣＰ（ＲＥＡＬ）  Ｘ（ＲＥＡＬ）  Ｙ＝ＩＣ（Ｒｅａｌ）（Ｐ）
＆−１０．２３，１．１，３．４                                            （Ａ*）
＆−２０．２３，２．１，４．８                                            （Ｂ*）
Ｙ＝ＩＣ（５．１）                                                        （Ｃ*）
＆−２２．２３，３．３，２．９                                            （Ｄ*）
という内容である。
【００２７】
ここでは実施例の枠内で仮定されたサブプログラムの開始時に、パターン命令Ｐにより、インタプリタによって読み込まれる後続の処理単位のデータ形式が定義される。後続の処理単位は他のグラフィック情報によってパターン命令に属するものとして定義されている。ＡＳＣＩＩ文字列「ＤＥＦＰＡＴＴ」は、実施例において、パターン命令としての処理単位の定義のためのグラフィック情報を成す。後続の処理単位の幾つかにおける他のグラフィック情報「＆」によって、これらが上述のパターン命令に属していることが規定される。実施例において、これらは処理単位Ａ*，Ｂ*およびＤ*である。パターン命令Ｐは、後続の「＆」にて示された処理単位のデータ形式に関する構造情報を含んでいる。例えば、処理単位Ａ*のパラメータ−１０．２３が実数として解釈されるべきであり、Ｃ＝ＡＣＰにしたがってＣ軸が時計方向に位置−１０．２３へ移動されるべきであることが定められる。更に、処理単位Ａ*において、コンマによって分離されてパラメータ１．１が示され、これは、パターン命令にしたがって、位置１．１へのＸ軸の移動のための実数として解釈されるべきである。更に、コンマにて分離されてパラメータ３．４が示され、これは同様にパターン命令Ｐにしたがって実数として解釈されるべきであり、Ｙ軸を現在位置から値３．４だけ移動させることを指示する。これに対応して処理単位Ｂ*およびＤ*のパラメータが解釈されるべきである。
【００２８】
サブプログラムが、一般に、異なるパラメータによってのみ異なり、もしそうでなければ同じ作業命令を有し得る多数の処理単位を有することによって、サブプログラムの翻訳の著しい簡単化が達成可能である。他のグラフィック情報（実施例においては「＆」）によりパターン命令に属するものとして定義されている処理単位について、作業命令のＡＳＣＩＩ文字の変換、構文チェックおよび作業命令のプログラミング規則のチェックが省略され、このことが計算時間を著しく短縮する。更に、サブプログラムのデータボリューム自体も著しく低減されるので、多くの用途において、工作物加工中における外部コンピュータ３から制御装置４のメモリ１０へのサブプログラムのダウンロードをなしで済ますことができる。
【００２９】
市販品ではサブプログラム２の処理単位Ａ，Ｂ，ＣおよびＤからインタプリタ５により制御装置４のインタポレータ６のために、その都度１つのそれぞれの処理単位に付属するデータセット９が発生させられ、そのデータセット９の構造が図２に示されている。図２には、インタプリタ５が処理単位Ａからの翻訳過程の最終結果として発生するデータセット９を示す。処理単位Ａに応じて、第１列には移動すべき軸が登録される。第２列「Ｐａｒａｍｅｔｅｒ」には、処理単位Ａにおいて定義されているそれぞれの軸に属するパラメータが書き込まれている。更に後に続く３つの列には、２進コードにより、それぞれの軸のための作業命令が定められる。「１」は、当該作業命令が当該軸における列「Ｐａｒａｍｅｔｅｒ」内にあるパラメータにより実行されるべきであることを意味する。既に述べたように、「ＡＣＰ」なる表記はパラメータの位置への時計方向における当該軸の移動を意味し、「ＩＣ」なる作業命令は与えられた位置からのパラメータだけの当該軸の移動を意味し、「ＡＣ」なる作業命令はパラメータによる絶対位置への当該軸の移動を意味する。データセット９はインタポレータ６によって読み込まれ、それからインタポレータ６によって駆動装置７Ａ，７Ｂおよび７Ｃのための目標値が算定される。
【００３０】
本発明による方法では、グラフィック情報（実施例においては、「ＤＥＦＰＡＴＴ」）によってパターン命令Ｐとして定義されていてかつ後続の処理単位Ａ*，Ｂ*およびＤ*のデータ形式に関する構造情報を含んでいる処理単位をインタプリタが読み込んだときに、インタプリタ６によってこのデータ形式を有する（図３による）書式８が発生させられ、記憶される。
【００３１】
図３にはこのような書式が示されている。書式８は、列「Ｐａｒａｍｅｔｅｒ」にパラメータがまだ書き込まれていないという事実を除いて図２によるデータセット９に対応する。ひき続いてインタプリタによって読み込まれる後続の処理単位（ここでは、処理単位Ａ*）のパラメータが書式８に書き込まれる。この後続の処理単位Ａ*は他のグラフィック情報「＆」によってパターン命令Ｐに属するものとして定義されていて、かつパラメータ（−１０．２３，１．１，３．４）のみを有する。このようなやり方で書式８への処理単位Ａ*のパラメータの書き込みによって、図２に応じたデータセット９が発生させられる。
【００３２】
作業命令Ｃ*の翻訳は、本発明による方法によって、実施例によれば、手つかずのままである。なぜならば、この作業命令は他のグラフィック情報「＆」を持っていないからである。それゆえ、作業命令Ｃ*の翻訳は、既に図２に対して説明した市販品の公知の方法により行なわれる。
【００３３】
パターン命令によるサブプログラムにおいて後続の全ての処理単位が、例えば次のパターン命令まで以前のパターン命令での定義により定義されるならば、パターン命令に蔵するもととして定義されるべき後続の処理単位における他のグラフィック情報（「＆」）の形での定義は省略可能である。
【００３４】
更に、例えば個別のパラメータを、作業命令Ｄ**（下記参照）にしたがって、繰り返し同じ値を有する特定のパラメータの代わりとして指定することも可能であることはもちろんである。
ＤＥＦＰＡＴＴ  Ｃ＝ＡＣＰ（ＲＥＡＬ）  Ｘ（ＲＥＡＬ）  Ｙ＝ＩＣ（Ｒｅａｌ）（Ｐ）
＆−１０．２３，１．１，３．４                                          （Ａ*）
＆−２０．２３，２．１，４．８                                          （Ｂ*）
Ｙ＝ＩＣ（５．１）                                                      （Ｃ*）
＆−２２．２３，！，２．９                                              （Ｄ**）
【００３５】
本発明による方法によって、サブプログラムの翻訳時間が著しく短縮される。なぜならば、処理単位のＡＳＣＩＩ文字の変換、処理単位の構文チェック、処理単位のプログラミング規則チェックが大幅に省略されるからである。短い翻訳時間によって本発明による方法は機械の高い加工速度を可能にする。更に、サブプログラムのデータ量も抜本的に低減されるので、多くの場合に外部コンピュータ上でのサブプログラムの記憶がもはや必要でなく、したがって外部コンピュータが省略可能である。
【図面の簡単な説明】
【００３６】
【図１】制御装置を概略構成を示すブロック図
【図２】インタプリタが処理単位からの翻訳過程の最終結果として発生するデータセットの説明図
【図３】インタプリタによって発生させられる書式の説明図
【符号の説明】
【００３７】
２          サブプログラム
３          外部コンピュータ
４          制御装置
５          インタプリタ
６          インタポレータ
７Ａ        Ｘ軸の駆動装置
７Ｂ        Ｙ軸の駆動装置
７Ｃ        Ｃ軸の駆動装置
８          定型用紙
９          データセット
１０        メモリ
【図１】
2008532130.tif 000003
【図２】
2008532130.tif 000004
【図３】
2008532130.tif 000005
【国際調査報告】
2008532130.tif 000006
2008532130.tif 000007
2008532130.tif 000008
2008532130.tif 000009