JP3563191B2 - 数値制御装置 - Google Patents
数値制御装置 Download PDFInfo
- Publication number
- JP3563191B2 JP3563191B2 JP03784496A JP3784496A JP3563191B2 JP 3563191 B2 JP3563191 B2 JP 3563191B2 JP 03784496 A JP03784496 A JP 03784496A JP 3784496 A JP3784496 A JP 3784496A JP 3563191 B2 JP3563191 B2 JP 3563191B2
- Authority
- JP
- Japan
- Prior art keywords
- interference
- work
- solid
- interfering object
- shape
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Numerical Control (AREA)
Description
【発明の属する技術分野】
この発明は、数値制御装置に係わり、特に数値制御装置における工作機械等の破損を防止するための工具、ワークなどの干渉チェックおよび干渉回避に関するものである。
【0002】
【従来の技術】
数値制御装置は、紙テープなどより加工プログラムを読み取り、加工プログラムによる命令に基づいて数値制御処理(解析処理)を実行し、この処理結果により工作機械の工具位置などをそれに対応する数値情報で指令するものである。
【0003】
工作機械を扱うオペレータによって作成される加工プログラムによっては、工作機械の工具、主軸台、ワークなどが干渉し、破損する可能性がある。これを回避するために各種の干渉チェックが従来より提案されている。
【0004】
図48は干渉チェック機能を有する従来のコンピュータ数値制御装置(CNC)の一例を示している。コンピュータ数値制御装置は、加工プログラム1a、1b、・・・を格納するメモリ3と、加工プログラム解析処理部2a、2b、・・・とを有し、加工プログラム1a、1b、・・・を系統という単位でそれぞれ独立して実行できる。
【0005】
加工プログラムの実行に際しては、メモリ3から加工プログラムが1ブロックずつ読み出され、加工プログラム解析処理部2a、2b、・・・によって解析される。
【0006】
ついで、補間処理部7によって補間処理が行われ、軸制御部10にて予めパラメータ設定部4で設定された各系統の制御軸ごとに軸制御処理が行われ、軸移動量出力回路11よりサーボ制御部12a、12b、・・・に軸移動量が出力される。これによりサーボモータ13a、13b、・・・が駆動され、工作機械のテーブル、刃物台が移動する。また機械制御信号処理部8を介してシーケンス回路9へ指令信号が入力されることにより、スピンドル正転/逆転/停止やチャックの開閉などの機械制御が行われる。
【0007】
また、メモリ3に格納された情報が画面表示処理部5へ出力され、その出力情報が表示ユニット6に表示される。
【0008】
従来の数値制御装置における干渉チェックには、各工具が存在する領域を定義した干渉領域同士が干渉するか否かによって工具同士が干渉するか否かをチェックする方式がある。
【0009】
この干渉チェックでは、各工具が存在する領域である干渉領域を定義する干渉物定義データ21を予めCNCのメモリ3に格納しておき、工具の移動に対応させてその干渉領域を移動させ、干渉領域同士が干渉するか否かを補間処理部7の干渉判定手段25にて判定することにより、工具同士の干渉チェックを行う。
【0010】
次に、この干渉チェックの具体例を図49を用いて説明する。この干渉チェックにおいては、2つの工具160、162がそれぞれ納まる干渉領域161、163を一つの長方体で設定し、工具160、162の移動に合わせてその干渉領域161、163の位置を移動させ、干渉領域161と163との干渉を判定することによって、工具160と162との干渉を防ぐことが行われる。
【0011】
例えば、工具160、162が補間処理に伴う軸移動に応じてそれぞれA、B位置よりC、D位置へ移動すると、それに応じて干渉領域161、163もA、B位置に対応する位置よりその軸移動に追従する形態でC、D位置に対応する位置に移動する。このとき、干渉領域同士が移動によって干渉し合う場合には、そこで軸移動量の出力を停止し、工具の干渉を防ぐ。
【0012】
図50は従来の干渉チェックの処理フローを示している。この処理フローでは、先ず、入力された干渉物定義データより干渉領域の形状を計算し(ステップS1)、干渉領域が移動する場合には(ステップS2肯定)、加工プログラム1a、1b、・・・の解析結果による移動指令に応じて移動先の干渉領域の位置計算を行う(ステップS3)。ついで干渉の判定を行い(ステップS4)、干渉領域同士が干渉する場合には、軸移動を停止し、アラームを発生する(ステップS5)。
【0013】
【発明が解決しようとする課題】
従来の数値制御装置では、干渉チェックが上述のように行われるため、例えば工具の干渉チェックを行う場合には、対象となる工具が納まるように設定した一つの長方体領域を全て干渉領域とするため、実際には干渉し得ない範囲まで干渉領域とすることがあり、詳細な干渉チェックが行われない。
【0014】
また、一般に、油圧などで駆動されるユニットについては、CNCはその駆動装置に移動開始信号を入力するのみで、ユニットの位置制御を行わないため、このようなユニットの干渉チェックは行えないか、もしくはそのユニットの移動可能範囲を全て干渉領域とすることによって干渉を防止することが行われている。しかし、一つのユニットの移動可能範囲を全て干渉領域とする場合には、別のユニットの移動範囲が限定されるなどの欠点が存在する。
【0015】
また、工具交換などによって干渉領域の形状が変化するユニットの干渉チェックを行う場合には、予め、形状の変化に対処できるよう干渉領域を広範囲に定義しておくか、或いは予め設定されている干渉領域内に納まる形状のユニットのみを使用することが行われている。
【0016】
このため、干渉チェックを行う際のユニット選択の自由度が低下し、明らかに干渉しないと思われる領域であるにも拘らず干渉チェックを行う範囲がさらに広がり、実際には干渉していないにも拘らず干渉と判断される場合が生じる。
【0017】
また、加工中の工具が干渉を回避すべく一時停止することによって、切削加工面が粗くなるか、もしくは、例えばねじ切り加工時のように、主軸の位相、すなわちワークの位相に同期して工具の位置を決定し、加工を行う場合には、主軸は回転するが、工具は一時停止するため、非加工面まで切削されるなど、正常な加工がされない不具合が生じる。
【0018】
また、従来の干渉チェックでは、簡易な干渉判定しか行えず、例えば、複数の主軸を持ち、主軸間でワークを受け渡すことができる数値制御工作機械においてワークの干渉チェックを行う場合には、ワークの受け渡しによってワークを移動せしめる軸が異なり、それに対応する手段がないため、このような場合の干渉チェックを行うことができなかった。
【0019】
また、従来の干渉チェックにおいては、予め定義した干渉領域が軸移動に応じて移動し、干渉領域同士が干渉するか否かの判定を行うことによって、干渉領域を設定したユニットの干渉チェックを行うため、干渉領域として設定できるのは、加工室内に進入したユニットの一部分についてだけであった。
【0020】
これに対し、ユニットの全部分を全て干渉領域とした場合には、干渉領域が加工室の外に出ることになるため、加工室の壁面を境界とした場合の加工室の壁面と干渉領域として設定したユニットとの干渉チェックが行えなくなる。
【0021】
本発明は、上記のような問題点を解決するためのもので、緻密な干渉物の設定が可能で、従来より大幅に正確な干渉チェック、干渉回避が行え、また加工の全工程に亙り加工に影響を与えることなく干渉チェック、干渉回避を行える数値制御装置を得ることを目的としている。
【0022】
【課題を解決するための手段】
上述の目的を達成するために、この発明による数値制御装置は、メモリから加工プログラムを加工プログラム解析処理部によって読み込み解析し、補間処理部によって解析結果に基づく軸移動のための補間処理を行う数値制御装置において、工具、タレット、主軸台及びワークのいずれかが位置するため干渉し得る領域を表す干渉物をいくつかの立体の組み合わせにより構成されているように定義され、各立体の形状を定義する形状指定点の座標を軸移動に拘らず固定させるように定義できる移動/固定座標値選択データを含む立体定義データを格納するメモリと、前記移動/固定座標値選択データを設定するための形状指定点固定設定手段と、立体の形状を定義する形状指定点の座標を軸移動に拘らず固定させた場合の立体形状の計算を行う形状指定点固定立体計算手段と、現在の干渉物の位置と干渉物を移動せしめる軸の移動量とから補間処理に伴う軸移動量出力後の干渉物の移動位置を計算する干渉物移動位置計算手段と、前記立体定義データに定義された干渉物を構成する立体において補間処理前の位置から前記干渉物移動位置計算手段により計算された補間処理後の位置への移動における干渉物を構成する立体の干渉し得る領域を表す干渉判定立体を計算し、この干渉判定立体の組み合わせにより干渉判定領域を設定する干渉判定領域計算手段と、前記干渉判定領域計算手段により設定される干渉判定領域に基づいて干渉の有無を判定する干渉判定手段とを有しているものである。
【0023】
この発明による数値制御装置において、立体定義データは、干渉チェックまたは干渉回避を行うための計算に用いる干渉物を定義するための入力データであり、干渉物を構成する一つ以上の立体の大きさ、位置、立体の属する干渉物、立体を移動せしめる軸、立体の移動/固定軸、立体の移動/固定面、干渉物の対象となるユニットの種類を設定する。
【0024】
干渉物移動位置計算手段は、現在の干渉物の位置と干渉物を移動せしめる軸の移動量から、補間処理に伴う軸移動量出力後の干渉物の移動位置を計算し、干渉判定領域計算手段は、干渉物を構成する立体において、補間処理前の位置から補間処理後の位置への移動における干渉物を構成する立体の干渉し得る領域を表す干渉判定立体を計算することにより、干渉判定立体を組み合わせてなる、干渉物の干渉判定を行う領域である干渉判定領域を得る。
立体定義データは干渉物を構成する立体の形状を表す形状指定点の座標を軸の移動に拘らず固定させるように定義できる移動/固定座標値選択データを含んでいる。形状指定点固定設定手段は立体定義データに含まれる移動/固定座標値選択データの設定を行う。形状指定点固定立体計算手段は、加工プログラムの指令による各軸の移動に拘らず、干渉物を構成する立体の形状を表す形状指定点の座標を固定した場合の立体形状を計算する。
【0025】
干渉判定手段は干渉物の干渉判定を行うために干渉判定立体の干渉の有無を判定する。
【0026】
次の発明による数値制御装置は、前記補間処理部による補間処理に基づく各軸の移動量をもとに干渉物の移動方向を判定する干渉物移動方向判定手段と、前記干渉物移動方向判定手段により判定された干渉物の移動方向に応じて前記干渉判定立体の形状を変形させた干渉回避立体を計算し、この干渉回避立体を組み合わせてなる干渉回避領域干渉物の移動方向に応じて干渉回避を行うための干渉判定を行う干渉回避領域を計算する干渉回避領域計算手段と、各干渉物の位置や複数の干渉物の移動のうち加工する干渉物の動きを優先させその他の干渉物の移動を後回しとする移動の優先順位の状態から干渉の回避方法を設定する干渉回避計算手段と、干渉回避モードとするか否かの選択を行う干渉回避モード信号を検出する干渉回避モード信号検出手段とを有し、前記干渉判定手段は、干渉回避モードでない場合には前記干渉判定領域に基づいて干渉の有無を判定し、干渉回避モードである場合には前記干渉回避領域に基づいて干渉の有無を判定し、干渉時には前記干渉回避計算手段によって干渉の回避方法を設定するものである。
【0027】
この発明による数値制御装置においては、干渉回避モード信号検出手段は、干渉回避を行うか否かを決定する干渉回避モード信号の入力を検出し、干渉回避モード信号の入力に応じて立体定義データの干渉回避モード選択を変更するものである。
【0028】
干渉物移動方向判定手段は、加工プログラムが解析され、補間処理後、軸制御部によって計算される各軸の移動量をもとに干渉物の移動方向を判定し、干渉回避領域計算手段は、干渉物の移動方向に応じて干渉判定立体の形状を変形させた干渉回避立体を計算することにより、干渉回避立体を組み合わせてなる干渉回避領域を得る。
【0029】
干渉判定手段は干渉物の干渉判定を行うために干渉回避モードである否かに応じて干渉判定立体または干渉回避立体の干渉の有無を判定する。干渉回避計算手段は各干渉物の位置や加工する干渉物の動きを優先させその他の干渉物の移動を後回しとする移動の優先順位などの状態から干渉の回避方法を得る。
【0030】
次の発明による数値制御装置は、特定の立体定義データを有効または無効とする選択をするための立体定義有効信号を検出する立体定義有効信号検出手段と、入力された立体定義有効信号に対応する立体についてのみ干渉判定が行われるように前記立体定義データにおける特定の立体を有効または無効とする立体定義有効/無効切換手段とを有しているものである。
【0031】
この発明による数値制御装置においては、立体定義有効信号検出手段はある立体に関する立体定義データを有効とする立体定義有効信号を検出し、立体定義有効/無効切換手段は、入力された立体定義有効信号に対応する立体に関する立体定義データを有効とし、干渉チェックまたは干渉回避を行う。
【0032】
次の発明による数値制御装置は、再入力される立体定義データを記憶する立体定義データ設定テーブルと、干渉判定の計算を行うための立体定義データを再入力された立体定義データに変更するための立体定義変更信号を検出する立体定義変更信号検出手段と、前記立体定義変更信号の入力によって前記立体定義データ設定テーブルより立体定義データを読み込み干渉判定に用いる立体定義データを変更する立体定義変更手段とを有しているものである。
【0033】
この発明による数値制御装置においては、立体定義データ設定手段はシーケンス回路における立体定義データの入力を行い、立体定義データ設定テーブルが立体定義データ設定手段により入力された内容を記憶する。
【0034】
立体定義変更信号検出手段は、シーケンス回路において、立体定義データ設定手段により入力された立体定義データを干渉判定の計算に用いるために、立体定義データ設定テーブルの内容をメモリ内の立体定義データに書き込みを行う起動信号である立体定義変更信号の入力を検出し、立体定義変更手段は、立体定義変更信号の入力によって、立体定義データ設定テーブルの内容をメモリ内の立体定義データに書き込み、干渉チェックまたは干渉回避の計算に用いる立体定義データを変更する。
【0035】
次の発明による数値制御装置は、干渉物の対象となるユニットを定義する干渉物対象設定を含む立体定義データを格納するメモリと、加工プログラムの実行ブロックが加工ブロックであるか否かを判定し、加工ブロックであると判定された加工プログラムにより駆動されるユニットの干渉回避動作を優先させる加工干渉物優先判定手段と、加工プログラムの実行ブロックの加工モードまたは該加工プログラムにより駆動されるユニットの種類に応じて干渉回避時の移動優先度を定義するための優先回避定義テーブルとを有しているものである。
【0036】
この発明による数値制御装置においては、立体定義データは、干渉物の対象を例えば工具のように設定するための干渉物対象設定を含んでいる。加工干渉物優先判定手段は、干渉物の対象であるユニットを移動せしめる加工プログラムの実行ブロックが加工ブロックか否かによって、該ユニットが加工中のユニットであることを判定する。更に、干渉物の対象が加工中のユニットである場合、優先回避定義テーブルに定義された加工モードまたは加工中のユニットの種類による干渉回避時の移動優先度に応じて干渉回避時における移動を優先させる。
【0039】
次の発明による数値制御装置は、メモリから加工プログラムを加工プログラム解析処理部によって読み込み解析し、補間処理部によって解析結果に基づく軸移動のための補間処理を行う数値制御装置において、干渉物の対象となるワークに関するデータであるワーク関連定義データを含む立体定義データと、ワークを対象とした干渉物であるワーク干渉物の初期の座標値を定義するためのワーク干渉物初期設定手段と、ワーク干渉物の形状を計算するか否かを選択するためのワーク干渉物形状計算有効信号を検出するためのワーク干渉物形状計算有効信号検出手段と、前記ワーク干渉物形状計算有効信号が有効な場合に前記ワーク干渉物初期設定手段によって定義されたワーク干渉物の初期座標値とワーク移動量とワーク関連定義データからワーク干渉物の形状計算を行うワーク干渉物形状計算手段と、メイン主軸台と背面主軸台の相対距離を計算する相対距離計算手段と、前記相対距離計算手段によって計算された前記相対距離に基づいてメイン主軸に保持されているワークが背面主軸に持ち変えられたことを判定するワークつかみ変え判定手段と、チャック開閉の指令を認識するためのチャック開閉用補助指令定義テーブルと、加工プログラムの解析結果と前記チャック開閉用補助指令定義テーブルのチャック開閉用補助指令とによりメイン主軸台のチャックと背面主軸台のチャックの開閉を検出するチャック開閉検出手段と、前記ワークつかみ変え判定手段によるワークつかみ変え判定と前記チャック開閉検出手段により検出されるチャックの開閉に応じてワーク干渉物を干渉物として計算するか否かを選択するワーク干渉物有効/無効切換手段と、前記ワーク干渉物形状計算手段により計算されたワーク干渉物形状に基づいて干渉の有無を判定する干渉判定手段とを有しているものである。
【0040】
この発明による数値制御装置において、ワーク関連定義データはワークの直径や機械端側ワーク中心の座標値などの定義を格納するものである。ワーク干渉物初期設定手段はワーク干渉物の初期の座標値を定義し、ワーク干渉物形状計算有効信号検出手段はシーケンス回路からのワーク干渉物形状計算有効信号の検出を行う。
【0041】
ワーク干渉物形状計算手段はワーク干渉物形状計算有効信号検出手段によりワーク干渉物形状計算有効信号が検出された場合にワーク干渉物の初期座標値とワーク移動量とワーク直径などからワーク干渉物の形状計算を行い、干渉判定手段がワーク干渉物形状計算手段により計算されたワーク干渉物形状に基づいて干渉の有無を判定する。またこのとき、相対距離計算手段が、メイン主軸台と背面主軸台の相対距離を計算し、ワークつかみ変え判定手段が相対距離計算手段によって計算された前記相対距離に基づいてメイン主軸に保持されているワークが背面主軸に持ち変えられたことを判定する。チャック開閉検出手段は加工プログラムの解析結果と前記チャック開閉用補助指令定義テーブルのチャック開閉用補助指令とによりメイン主軸台のチャックと背面主軸台のチャックの開閉を検出し、ワーク干渉物有効/無効切換手段がワークつかみ変え判定手段によるワークつかみ変え判定とチャック開閉検出手段により検出されるチャックの開閉に応じてワーク干渉物を干渉物として計算するか否かを選択する。
【0042】
次の発明による数値制御装置は、ワークを切断するための工具である突切り工具で切断されたワークの長さを計算するワーク長計算手段を有し、前記ワーク干渉物形状計算手段は前記ワーク長計算手段によって計算されたワーク長に基づいて、突切りにより分割された各ワーク干渉物の形状計算を行うものである。
【0044】
ワーク長計算手段が突切り工具で切断されたワークの長さを計算し、ワーク干渉物形状計算手段はこのワーク長計算手段によって計算されたワーク長に基づいて、前記突切り工具により分割された各ワーク干渉物の形状計算を行う。
【0045】
なお、チャック開閉用補助指令定義テーブルはシーケンス回路における該チャックの開閉指令をCNCに認識させるためのテーブルである。
【0046】
【発明の実施の形態】
以下に添付の図を参照してこの発明の実施の形態を詳細に説明する。なお、以下に説明するこの発明の実施の形態において、上述の従来例と同一構成の部分は、上述の従来例に付した符号と同一の符号を付して その説明を省略する。
【0047】
(実施の形態1)
図1はこの発明による数値制御装置の実施の形態1を示している。
【0048】
この数値制御装置においては、メモリ3に干渉物定義データ21に代えて立体定義データ22が格納される。立体定義データ22は、干渉チェックまたは干渉回避を行うための計算に用いる干渉物を定義するための入力データであり、干渉物をいくつかの立体の組み合わせにより構成されているように定義する。
【0049】
即ち、立体定義データ22は、干渉物を構成する一つ以上の立体の大きさ、位置、立体の属する干渉物、立体を移動せしめる軸、立体の移動/固定軸、立体の移動/固定面、干渉回避モード選択、干渉回避における移動優先度、干渉物の対象となるユニットの種類を設定するものであり、この実施の形態では、立体の大きさや位置を表す形状指定点のオフセット値と、立体の属する干渉物の番号、立体を移動せしめる加工プログラムの系統番号、干渉物の移動/固定軸定義、干渉回避における移動優先順位を設定している。
【0050】
図2(a)〜(c)は立体定義データの設定画面例を示している。
【0051】
図2(a)に示されている画面1においては、480で干渉回避時における干渉物の移動優先度を示す干渉物優先順位、481で干渉物を定義するために用いる立体の総数を示す立体定義数のパラメータ設定が各々行われる。
【0052】
図2(b)に示されている画面2は各干渉物毎に関するパラメータの設定画面であり、この画面2では、484〜486で干渉物を移動せしめる軸を示すパラメータの設定が行われ、496が選択されることにより、画面が干渉物1、干渉物2、・・・に関するパラメータ設定画面に切り替わる。
【0053】
図2(c)に示されている画面3は立体毎に関するパラメータの設定画面であり、488で立体の系統番号/干渉物番号、489〜491で立体の形状を示す第1形状指定点の各軸(X、Y、Z軸)のオフセット値、492〜494で立体の形状を示す第2形状指定点の各軸(X、Y、Z軸)のオフセット値のパラメータ設定が各々行われ、497が選択されることにより、画面が立体1、立体2、・・・に関するパラメータ設定画面に切り替わる。
【0054】
干渉物を定義するために用いる立体は直方体であり、この立体を定義する第1形状指定点と第2形状指定点は立体的に相互に対角線上に位置する隅角点に設定される。
【0055】
また画面1では483にて、画面2では487にて、画面3では495にて、項目番号とパラメータ設定値が入力されることにより、これらが立体定義データ22に設定される。
【0056】
図3は数値制御装置で使用される座標系を示している。図3において、422は第1系統の加工プログラムに従い移動する立体を、425は第2系統の加工プログラムに従い移動する立体を各々示している。第1系統の立体422はX1軸とY1軸とZ1軸に従い移動し、第2系統の立体425はX2軸とZ2軸に従い移動する。干渉物の干渉は、X軸とY軸とZ軸で表される基準機械座標系において判定される。
【0057】
また、図3において、428は基準機械座標系基準点から第1系統機械座標原点までの位置ベクトルを、429は基準機械座標系基準点から第2系統機械座標系原点までの位置ベクトルを、426は第1系統における機械値を、420は機械値から立体422の第1形状指定点までのオフセット値を、421は機械値から立体422の第2形状指定点までのオフセット値を、427は第2系統における機械値を、423は機械値から立体425の第1形状指定点までのオフセット値を、424は機械値から立体425の第2形状指定点までのオフセット値を各々示している。
【0058】
図4は基準機械座標基準点相対距離パラメータ設定画面を示している。このパラメータ設定画面では、440で基準機械座標系基準点から各系統の機械座標系原点までのオフセット値を、X軸とY軸とZ軸の各座標値をもってパラメータ設定する。このオフセット値は図3における基準機械座標系基準点から第1、第2系統機械座標原点までの位置ベクトル428、429に相当する。
【0059】
また、このパラメータ設定画面では、442が選択されることにより、第1系統、第2系統、・・・のように設定対象の系統が選択され、441に必要な項目と軸と設定値を入力されることにより、基準機械座標系基準点から各系統の機械座標系原点までのオフセット値が設定される。
【0060】
図5は工具50と主軸台53との干渉チェックを行う場合における従来の干渉領域と、この発明による数値制御装置で使用される立体定義データによって定義される干渉物の比較している。
【0061】
従来であれば、工具50と主軸台53を囲む単一矩形(長方体)の干渉領域51、54によって工具50と主軸台53の干渉チェックを行っていたが、本発明においては、干渉物52、55のように、干渉物をいくつかの立体11〜13、21、22で構成して詳細に形状を定義した干渉物において干渉チェック、干渉回避を行う。
【0062】
補間処理部7は、干渉物移動方向判定手段23と、干渉物移動位置計算手段24cと、干渉判定領域計算手段24と、干渉回避領域計算手段24bと、干渉判定手段25と、干渉回避計算手段26とを有している。
【0063】
また、機械制御信号処理部8は干渉回避モード信号検出手段27を有している。干渉回避モード信号検出手段27は、干渉回避を行うか否かを決定する干渉回避モード信号の入力を検出し、干渉回避モード信号の入力に応じて立体定義データの干渉回避モード選択を変更する。
【0064】
干渉物移動方向判定手段23は、加工プログラムが解析され、補間処理後に軸制御部10によって計算される各軸の移動量をもとに干渉物の移動方向を判定する。
【0065】
干渉物移動位置計算手段24cは、現在の干渉物の位置と干渉物を移動せしめる軸の移動量から、補間処理に伴い軸移動量出力後の干渉物の移動位置を計算する。
【0066】
干渉判定領域計算手段24は、干渉物を構成する立体において、補間処理前の位置から補間処理後の位置への移動における干渉物を構成する立体の干渉し得る領域を表す干渉判定立体を計算し、干渉判定立体を組み合わせてなる干渉判定領域を計算する。
【0067】
図6は干渉判定領域計算手段24によって計算される干渉判定立体及び干渉判定領域を例示している。ここでは、P11とP12で定義される立体56aと、P13とP14で定義される立体57aとで一つの干渉物が構成され、干渉物はX軸及びZ軸方向に移動するものとする。
【0068】
補間処理に伴い移動ベクトル601だけ軸移動量が出力されると、立体56aがP21とP22とで定義される立体56bの位置へ移動し、立体57aがP23とP24とで定義される立体57bの位置へ移動する。このとき、立体56aの干渉判定立体はP1とP2で定義される立体58に、立体57aの干渉判定立体はP3とP4で定義される立体59となり、干渉判定領域は干渉判定立体58と干渉判定立体59の2つの領域を連結してなる領域となる。
【0069】
干渉回避領域計算手段24bは、干渉物の移動方向に応じて干渉判定立体の形状を変形させた干渉回避立体を計算し、干渉回避立体を組み合わせてなる干渉回避領域を計算する。
【0070】
図7は干渉回避領域計算手段24bにより計算される干渉回避立体及び干渉回避領域を例示している。干渉回避領域計算手段24bは、図6に示されているような干渉判定立体58と干渉判定立体59と干渉物の移動ベクトル601より得られる移動方向から、P1とP5で定義される干渉回避立体60aと、P6とP4で定義される干渉回避立体60bを計算する。
【0071】
干渉判定手段25は、干渉物の干渉判定を行うために、干渉判定立体あるいは干渉回避立体の干渉の有無を判定する。
【0072】
図8は干渉判定手段25による干渉判定例を示している。図8では、干渉判定手段25によって干渉を判定した立体73と立体74と立体75があり、立体73はP11とP12で、立体74はP21とP22で、立体75はP31とP32で各々定義されている。P11、P12、P21、P22、P31、P32の各点の座標値は図示されている通りである。この場合、立体1と立体2は干渉し合うが、そのほかの立体の組み合わせでは干渉し合わない。
【0073】
図9は、干渉判定領域または干渉回避領域のような領域同士の干渉判定において、各領域を構成する立体同士の干渉判定を行うことにより領域同士の干渉を判定する際の立体の組み合わせ例を示している。領域aは立体201と立体202と立体203で構成され、領域bは立体205と立体206で構成されている。
【0074】
干渉回避計算手段26は各干渉物の位置や移動優先順位などの状態から干渉の回避方法(回避手順)を計算する。
【0075】
図10(a)〜(d)は各々干渉回避計算手段26による干渉回避例を示している。図10(a)〜(d)に示されているように、干渉物80が干渉回避領域82を作成し、干渉物81が干渉回避領域83を作成し、干渉回避領域82と干渉回避領域83とが干渉し合う場合には、干渉回避のための計算が干渉回避計算手段26によって行われる。このとき、干渉物80と干渉物81の位置関係により、図10の(a)(b)(c)(d)の4つの干渉パターンが考えられる。
【0076】
図10(a)の場合;干渉物80を補間移動させて干渉物81の補間処理による軸移動を一時停止させた場合には干渉回避領域82と干渉物81が干渉するため干渉物81は一時停止不可能と判定される。逆に干渉物80の補間処理による軸移動を一時停止させて干渉物81を補間移動させた場合には干渉物80と干渉回避領域83が干渉するため干渉物80も一時停止不可能と判定される。干渉物80と干渉物81が共に一時停止不可能なため、この場合には干渉回避不可能と判定して、軸移動を停止し、アラームを発生する。
【0077】
図10(b)の場合;干渉物80を補間移動させて干渉物81の補間処理による軸移動を停止させた場合には干渉回避領域82と干渉物81は干渉するため干渉物81は一時停止不可能と判定される。逆に干渉物80の補間処理による軸移動を停止させて干渉物81を補間移動させた場合、干渉物80と干渉回避領域82は干渉しないため干渉物80は一時停止可能と判定される。よって、この場合には、一時停止可能な干渉物80を一時停止させ、干渉物81を先行移動させることによって干渉回避を行う。
【0078】
図10(c)の場合;干渉物80を補間移動させて干渉物81の補間処理による軸移動を停止させた場合には干渉回避領域82と干渉物81は干渉しないため干渉物81は一時停止可能と判定される。逆に干渉物80の補間処理による軸移動を停止させて干渉物81を補間移動させた場合には干渉物80と干渉回避領域83は干渉するため干渉物80は一時停止不可能と判定される。よって、この場合には、一時停止可能な干渉物81を一時停止させ、干渉物80を先行移動させることによって干渉回避を行う。
【0079】
図10(d)の場合;干渉物80を補間移動させて干渉物81の補間処理による軸移動を停止させた場合には干渉回避領域82と干渉物81は干渉しないため干渉物81は一時停止可能と判定される。逆に干渉物80の補間処理による軸移動を停止させて干渉物81を補間移動させた場合には干渉物80と干渉回避領域83は干渉しないため干渉物80も一時停止可能と判定される。この場合には、干渉物80と干渉物81のどちらもが一時停止可能なため、定義されている移動優先度を用いて一時停止させる干渉物を決定し、干渉物回避を行う。例えば、干渉物80の方が移動優先度が高い場合には、干渉物81を一時停止させ、干渉物80を先行移動させることによって干渉回避を行う。
【0080】
図11(a)〜(d)、図12(a)〜(d)は各々、主軸台85が干渉物87で定義され、タレット86が干渉物88で定義される場合の干渉チェックと干渉回避動作例を示している。
【0081】
図11に示されている例では、(a)に示すように、主軸台85が−Z方向に、タレット86が+X方向にそれぞれ移動しはじめ、干渉チェック時には(b)→(c)のように動作する。89は干渉物87の干渉判定領域を表し、90は干渉物88の干渉判定領域を表す。また、干渉回避時は、(d)→(e)のように動作する。91は干渉物87の干渉回避領域を表し、92は干渉物88の干渉回避領域を表す。
【0082】
図12に示されている例では、(a)に示すように、主軸台85が+Zの方向に、タレット86が+X方向に移動しはじめ、(b)→(c)→(d)のように干渉回避動作を行う。93は干渉物87の干渉回避領域を表し、94は干渉物88の干渉回避領域を表す。
【0083】
次に、実施の形態1における干渉チェック、干渉回避動作を図13〜16に示されているフローチャートを参照して説明する。
【0084】
図13は干渉チェック・干渉回避のメインフローである。まず、立体定義データ22を図2、図4に示されているようなパラメータ設定画面において設定する(ステップS10)。このパラメータ設定画面において設定されたパラメータ値をもとに、立体定義データ22が決定され、メモリ3に格納される。
【0085】
立体形状は、立体(直方体)の対角線を作る第1形状指定点と第2形状指定点の2つの頂点を設定することによって定義する。第1形状指定点は直方体の8個の頂点の中で座標原点より最も遠い点、第2形状指定点は最も近い点である。
【0086】
例えば、図6に示す立体56aにおいては、第1形状指定点はP11で、第2形状指定点はP12である。このとき各座標値においてX11>X12、Z11>Z12の関係がある。また、立体57aにおいては、第1形状指定点はP13で、第2形状指定点はP14である。立体56aと同様に、この場合も各座標値においてX13>X14、Z13>Z14の関係がある。
【0087】
また、立体の形状及び位置を示す第1形状指定点及び第2形状指定点は、図3に示されているように、立体の属する系統における機械座標値からの各軸のオフセット値で定義する。このとき各系統の機械座標原点の相対位置は図4に示されている基準機械座標基準点相対距離パラメータ設定画面の例で示されるパラメータで設定される。
【0088】
次に、立体定義データにおいて定義された干渉物の現在位置と補間処理による移動後の干渉物の移動位置を干渉物移動位置計算手段24cによって計算する(ステップS11)。
【0089】
より具体的には、干渉物移動位置計算手段24cは、干渉物を構成する立体の形状指定点の座標値に各軸の移動量を加算して補間処理後の干渉物の位置を得る計算を行う。例えば、図6においては、P11、P12、P13、P14の各座標値に、補間処理に伴う各軸の移動量を加えて得る点がそれぞれP21、P22、P23、P24となる。
【0090】
次に、干渉物移動方向判定手段23によって立体を移動せしめる各軸の補間処理ごとの移動量から、立体の各軸ごとの移動方向を判定する(ステップS12)。例えば、図6においては、X軸については−方向、Z軸については+方向に移動すると判定される。
【0091】
次に、干渉判定領域計算手段24によって補間処理の前後における立体の位置を囲む領域を立体で表した干渉判定立体を計算し、これを組み合わせてなる干渉判定領域を得る(ステップS13)。干渉判定立体は、ある立体において、各軸毎の移動量が正の時、立体の第1形状指定点の座標値に軸移動量を加算し、軸移動量が負の時、立体の第2形状指定点の座標値に軸移動量を加算して得られる2点で構成される立体となる。
【0092】
例えば、図6に示すように、P11、P12で形成される立体56aの干渉判定領域はP1、P2で形成される干渉判定立体58に、P13、P14で形成される立体57aの干渉判定領域はP3、P4で形成される干渉判定立体59となる。
【0093】
次に、干渉回避モード信号検出手段27によってシーケンス回路9より入力される干渉回避モード信号を検出し、その入力状態によって干渉回避モードであるか否かを判定する(ステップS14)。
【0094】
干渉回避モードでなければ(ステップS14否定)、干渉チェックモードであるとし、干渉判定手段23によって干渉判定立体同士の干渉を判定することによって、干渉判定立体を組み合わせてできる干渉判定領域同士の干渉を判定する(ステップS15)。干渉判定領域同士が干渉する場合には(ステップS15肯定)、アラーム停止する(ステップS16)。
【0095】
これに対し、干渉回避モードであれば(ステップS14否定)、干渉回避領域計算手段24bを用いて、図7に例示されているように干渉物の移動方向に応じて干渉判定立体の形状を変更して得られる干渉回避立体を計算し、これを組み合わせてなる干渉回避領域を作成する(ステップS17)。
【0096】
次に、干渉判定手段23によって干渉回避立体同士の干渉を判定することにより、干渉回避立体を組み合わせてできる干渉回避領域同士の干渉を判定する(ステップS18)。干渉回避領域同士の干渉判定は、一方の干渉回避領域を構成する干渉回避立体と他方の干渉回避領域を構成する干渉回避立体の干渉を判定し、干渉し合う干渉回避立体が存在すれば、干渉回避領域同士が干渉すると判定する。
【0097】
干渉回避領域同士が干渉する場合には、干渉回避計算手段によって図16に示されている干渉回避フローを実行し、干渉回避動作を行う(ステップS19)。
【0098】
ここで、ステップS17における干渉回避立領域計算手段24bによる干渉回避立体の計算ルーチンを図14に示されている干渉回避領域計算フローに従って説明する。干渉回避立体は、干渉判定立体の第1形状指定点または第2形状指定点を干渉物を構成する立体の移動方向に応じて移して得られる2点で形成される。この干渉回避領域計算は干渉回避立体の形状計算に必要な各軸について行われる。
【0099】
干渉回避領域計算フローでは、干渉物移動方向判定手段23によって判定された干渉物を構成する立体の各軸の移動方向を判別する(ステップS22、24)。
【0100】
ある軸に沿って立体が正方向に移動する場合には、同じ干渉物に属する干渉判定立体の第1形状指定点の座標値のうちで最大のものを干渉回避立体の第1形状指定点の座標値とする(ステップS23)。
【0101】
これに対し、立体が負方向に移動する場合には、同じ干渉物に属する干渉判定立体の第2形状指定点の座標値の内で最小のものを、干渉回避立体の第2形状指定点の座標値とする(ステップS25)。
【0102】
なお、これら以外の干渉回避立体の座標値については、干渉判定立体の第1または第2形状指定点の座標値と同一とする。
【0103】
例えば、図7においては、X軸方向には負方向に、Z軸方向には正方向に移動するため、P1、P2で形成される干渉判定立体58より算出される干渉回避立体は、P2のX座標を変更してなるP5とP1とで形成される立体60aになる。また、P3、P4で形成される干渉判定立体59より算出される干渉回避立体は、P3のZ座標を変更してなるP6とP4とで形成される立体60bになる。
【0104】
干渉回避領域は干渉物を構成する立体の干渉回避立体を全て重ねることにより得えれる領域である。図7の場合には、干渉回避領域は干渉回避立体60aと干渉回避立体60bの領域を重ねて得るP1、P5で形成される立体で表される領域になる。この干渉回避領域は干渉物を構成する各立体の干渉回避立体が存在する領域であるから、干渉回避領域同士の干渉判定はそれぞれの干渉回避領域を構成する干渉回避立体同士の干渉判定を行うことでできる。
【0105】
次に、上述の干渉チェック(ステップS15)または干渉回避における干渉判定手段25による干渉判定(ステップS18)について、図15に示されている干渉判定フローに従って説明する。干渉判定フローでは、干渉チェックモードの場合には干渉判定立体同士の干渉判定を行い、干渉回避モードの場合には干渉回避立体同士の干渉判定を行う。
【0106】
まず、干渉チェックモードの時には干渉判定立体、干渉回避モードの時には干渉回避立体の形状データを読み込む(ステップS27)。ここで、仮に、干渉判定を行う2つの立体を第1立体と第2立体とする。また、第1立体の第1形状指定点の座標値を(X11,Y11,Z11)、第2形状指定点の座標値を(X12,Y12,Z12)、第2立体の第1形状指定点の座標値を(X21,Y21,Z21)、第2形状指定点の座標値を(X22,Y22,Z22)とする。
【0107】
ある座標軸に沿って一方の立体の第2形状指定点の座標値と他方の立体の第1形状指定点の座標値との差分が正の場合が一つでもあるとき、即ちi22−i11>0またはi12−i21>0となる座標軸i(i=X,Y,Z)が一つでも存在すれば(ステップS28a、28b、28c肯定)、干渉しないと判断する(ステップS31)。これに対し、i22−i11>0またはi12−i21>0となる座標軸iが一つもない場合には(ステップS28a、28b、28c否定)、干渉すると判断する(ステップS30)。
【0108】
例えば、図8においては、立体73と立体74は、X12−X21<0、Z12−Z21<0、X22−X11<0、Z22−Z11<0であり、干渉する。これに対し立体73と立体75については、Z32−Z11>0があり、干渉しない。同様に立体74と立体75についても、X32−X21>0があり、干渉しない。尚、この干渉判定では、3次元にて計算を行っているが、図8の例では簡単のため2次元で示している。
【0109】
干渉物同士の各モードにおける干渉判定を行うにあたり、干渉回避モードの場合には、干渉物毎に得る干渉回避領域を構成する干渉回避立体同士の干渉判定を全ての組み合わせにおいて行うことによって干渉回避領域同士の干渉判定を行う。
【0110】
これに対し、干渉チェックモードの場合には、干渉物毎に得る干渉判定領域を構成する干渉判定立体同士の干渉判定を全ての組み合わせにおいて行うことによって干渉判定領域同士の干渉判定を行う。
【0111】
どちらの場合も、各領域に属する立体同士の干渉判定に帰着して考えることができる。例えば、図9においては、領域a200と領域b204の干渉判定において、立体201と立体205、立体201と立体206、立体202と立体205、立体202と立体206、立体203と立体205、立体203と立体206の2×3=6通りの干渉判定を行うことによって、領域a200と領域b204の干渉を判定する。ここで云う領域と立体とは、干渉回避モードの場合には干渉回避領域と干渉回避立体であり、干渉チェックモードの場合には干渉判定領域と干渉判定立体である。
【0112】
次に、ステップS18における干渉回避計算ルーチンについて図16に示されている干渉回避計算フローに従って説明する。この干渉回避計算ルーチンは、干渉回避モードにおいて干渉回避計算手段26によって実行される。
【0113】
干渉物1と干渉物2の干渉回避において、先ず干渉物2の軸移動を停止した場合の干渉物1との干渉判定を行う(ステップS33)。干渉物2の軸移動を停止すれば、干渉物1と干渉物2とが干渉する場合には(ステップS33肯定)、次に干渉物1の軸移動を停止した場合の干渉物2との干渉判定を行う(ステップS34)。
【0114】
また干渉物2の軸移動を停止すれば、干渉物1と干渉物2とが干渉しない場合も(ステップS33否定)、次に干渉物1の軸移動を停止した場合の干渉物2との干渉判定を行う(ステップS39)。
【0115】
これらの判定において、干渉しない場合には、軸移動停止側の干渉物を停止可能とする。停止側の干渉物については、立体定義データにて定義された干渉物において干渉判定を行い、移動側の干渉物については、干渉回避領域において干渉判定を行う。
【0116】
ステップS33肯定→ステップS34肯定、即ち図10(a)に例示されているように、何れの軸移動停止でも干渉する場合には、干渉物1と干渉物2は共に停止不可能なため(ステップS35)、アラームを発生し、共に軸移動を停止する(ステップS36)。
【0117】
ステップS33肯定→ステップS34否定、即ち図10(b)に例示されているように、干渉物1が停止可能な場合には(ステップS37)、干渉物1の軸移動を一時停止する(ステップS38)。
【0118】
ステップS33否定→ステップS39肯定、即ち図10(c)に例示されているように、干渉物1が停止可能な場合には(ステップS40)、干渉物2の軸移動を一時停止する(ステップS41)。
【0119】
ステップS33否定→ステップS39否定、即ち図10(d)に例示されているように、干渉物1と干渉物2が共に停止可能な場合には(ステップS42)、立体定義データにおいて定義される移動優先度に基づいて干渉物の優先順位を決定し(ステップS43)、移動優先度の低い干渉物を一時停止する(ステップS44)。
【0120】
このようにして停止可能な干渉物の軸移動量の出力を一時停止することによって、加工経路を外れずに干渉回避を行う。
【0121】
例えば、図11において、(a)に示す主軸台85とタレット86がそれぞれ矢印の方向に移動するとき、干渉物87と干渉物88のように詳細に干渉物を定義し、定義された形状に基づき干渉判定を行い、主軸台85とタレット86の干渉を防ぐ場合、(b)に示すように干渉判定領域89と干渉判定領域90にて干渉を判定するだけでは、主軸台85とタレット86がお互いのユニットの一部によって進行が阻まれて、(c)のように干渉回避が不可能となる場合がある。
【0122】
しかし、本発明によれば、(d)、(e)に示すような干渉回避領域91と干渉回避領域92にて干渉を判定し、その判定結果より干渉回避動作を行うため、(d)→(e)の順に干渉回避動作を行い、干渉物の一部分によって進行が阻まれ、干渉回避ができなくなることを未然に防ぐことができる。
【0123】
また、主軸台85とタレット86が、図12(a)に示すように矢印の方向に移動する場合においては、干渉回避領域93と干渉回避領域94にて干渉判定を行うため、(b)→(c)→(d)のように、干渉を防止する各ユニットが互いに干渉し合わず、より接近した位置まで移動することができる。
【0124】
このように、干渉物の移動逆方向に位置する干渉物との干渉チェックについては干渉物の詳細な定義による緻密な干渉チェックが行え、かつ、干渉物の移動方向に位置する干渉物との干渉チェックについては回避不可能になることを防ぐことができ、正確な干渉チェックまたは干渉回避が可能となる。
【0125】
(実施の形態2)
図17はこの発明による数値制御装置の実施の形態2を示している。尚、図17に於いて、図1に対応する部分は図1に付した符号と同一の符号を付けてその説明を省略する。
【0126】
この数値制御装置においては、補間処理部7に立体定義有効/無効切換手段28が、機械制御信号処理部8に立体定義有効信号検出手段29が各々付加されている。
【0127】
立体定義有効信号検出手段29はシーケンス回路9よりの信号により特定の立体に関する立体定義データを有効または無効とする選択をするための立体定義有効信号を検出する。
【0128】
立体定義有効/無効切換手段28は、入力された立体定義有効信号に対応する立体に関する立体定義データを有効とし、有効な立体定義データに関してのみ干渉チェックまたは干渉回避が行われるようにする。
【0129】
図18(a)、(b)は実施の形態2の数値制御装置が使用されて好適な加工システム(立体定義有効/無効切換)の一例を示している。この切断加工システムは、チャック110に保持されて加工を行ったワークWを突切り工具111で切断し、切断したワークWをA位置にて製品受け114で受け取り、製品受け114をA位置よりB位置へ移動させ、ワークWをベルトコンベア116に載せて搬送する。
【0130】
図19は上述の切断加工システムのシーケンス回路(一部抜粋)を示している。このシーケンス回路は、加工プログラムにおいて製品受け114をB位置へA位置へ移動させる指令時に、デバイスM80がオンし、製品受け114をA位置へ移動させる信号を出力すると共にA位置に割り当てた干渉物を構成する立体を有効とする立体定義有効信号Y2FFを出力する回路となっている。立体定義有効信号は、立体毎に割り当てられている。
【0131】
次に、実施の形態2における干渉チェック、干渉回避動作を図20、図21に示されているフローチャートを参照して説明する。
【0132】
図20は実施の形態2における干渉チェック・干渉回避のメインフローである。なお、図20において、図13に対応するステップは図13に付したステップ番号と同一のステップ番号を付けてその説明を省略する。
【0133】
このメインフローでは、干渉物移動位置計算に先立って、立体定義有効/無効切換手段28によって立体定義有効/無効切換が行われ(ステップS10a)、干渉判定手段25による干渉判定時に、立体定義データを有効とした立体の干渉判定のみを行い、立体定義データを無効とした立体の干渉判定を行わない。
【0134】
図21は立体定義有効/無効切換の処理フローを示している。この処理フローでは、まず、立体定義有効信号検出手段29によって立体定義有効信号がシーケンス回路9より出力されているか否かを判定する(ステップS51)。
【0135】
例えば、図19に示されているようなシーケンス回路が作成されている場合には、図18において製品受け114がB位置にあれば、立体定義有効信号は出力されず、製品受けがA位置にあるときにのみ立体定義有効信号は出力される。
【0136】
立体定義有効信号が出力されている時には、対応する立体に関する立体定義データを有効として干渉判定が行われるようにし(ステップS52)、これに対し立体定義有効信号が出力されていない時には、対応する立体に関する立体定義データを無効とする(ステップS53)。
【0137】
例えば、図18において、製品受け114がA位置にあるときには、A位置に割り当てた干渉物を構成する立体に対応する立体定義有効信号が出力され、製品受け114の干渉チェックが行われる。これに対し製品受け114がB位置にあるときには、A位置の製品受け114に割り当てた干渉物を構成する立体に対する立体定義有効信号が出力されないので、A位置の製品受け114の領域に工具111などが進入しても問題ない。
【0138】
以上のようにして、製品受け114のように、例えば油圧のような付加軸で駆動され、CNCは移動開始指令信号をシーケンス回路より入力するのみで、位置制御を行わないユニットの干渉チェックがオペレータの要求に応じて行うことができるようになる。
【0139】
(実施の形態3)
図22はこの発明による数値制御装置の実施の形態3を示している。尚、図22に於いても、図1に対応する部分は図1に付した符号と同一の符号を付けてその説明を省略する。
【0140】
この数値制御装置においては、補間処理部7に立体定義変更手段39が、機械制御信号処理部8に立体定義データ設定手段31、立体定義変更信号検出手段39bが各々付加され、また立体定義データ設定テーブル40が設けられている。
【0141】
立体定義データ設定手段31はシーケンス回路9における立体定義データを再入力する。
【0142】
立体定義データ設定テーブル40は立体定義データ設定手段31により入力された内容を記憶する。
【0143】
立体定義変更信号検出手段39bは、シーケンス回路9において立体定義データ設定手段31により入力された立体定義データを干渉判定の計算に用いるために、立体定義データ設定テーブル40の内容をメモリ3内の立体定義データ322に書き込みを行う起動信号である立体定義変更信号の入力を検出する。
【0144】
立体定義変更手段39は、立体定義変更信号の入力によって、立体定義データ設定テーブル40の内容をメモリ3内の立体定義データ22に書き込み、干渉チェックまたは干渉回避の計算に用いる立体定義データを変更する。
【0145】
図23は実施の形態3の数値制御装置が使用されて好適な工作機械の一例(立体定義変更)を示している。この工作機械は回転することにより工具101や工具102のように所望の工具を選択することができるタレット100を有している。タレット100に取り付けた工具には3つの立体で構成される干渉物を割り当てる。立体103と立体104と立体105は工具101が選択された場合に割り当てる干渉物を構成する立体で、立体106は立体107と立体108は工具102が選択された場合割り当てる干渉物を構成する立体である。
【0146】
図24は上述の工作機械のシーケンス回路(一部抜粋)を示している。このシーケンス回路において、デバイスM101は加工プログラムにおいて工具101が選択されてタレット100が工具101を使用できる位置に回転した時にオンする。また、デバイスM102は工具102が選択されてタレット100が工具102を使用できる位置に回転した時にオンする。
【0147】
このシーケンス回路9では、タレット100に取り付けられた工具に割り当てた干渉物に関する立体定義データを、M101がオンした時には工具101を囲むように定義し、M102がオンした時には工具102を囲むように定義し、M101またはM102がオンしたとき、立体定義データ設定テーブル40の入力を行い、立体定義変更信号を出力する。
【0148】
図25はシーケンス回路より立体定義データ設定テーブル40に入力される内容などを表している。図25において、450は立体定義データ設定テーブルの制御信号、451は干渉チェックまたは干渉回避における状態を表すステータス、452は干渉回避時の干渉物の移動優先順位、453は干渉物を移動せしめる軸の選択を行うための軸移動/固定選択、456は設定した立体の個数を表す立体定義数、457、465、・・・は立体の属する系統番号及び干渉物番号、459〜464、467〜472は、・・・立体の形状を表す立体形状指定点のオフセット値である。また、454、458、466、・・・は予備値(無効な値)である。立体定義データを変更したい場合、これらに所望の値を入力する。
【0149】
次に、実施の形態3における立体定義データ変更の動作を図26、図27のフローチャートを参照して説明する。
【0150】
図26は立体定義データ入力・設定フローを示している。この立体定義データ入力・変更設定フローでは、まず立体定義データ設定手段を用いて立体定義データ設定テーブル40に変更したい立体定義データを入力する(ステップS60)。
【0151】
例えば、図23に示されているように、工具選択(工具交換)に伴いタレット100に取り付けた工具に割り当てた干渉物を構成する立体の形状を変更する場合には、図24に示されているようなシーケンス回路を用いて立体定義データ設定テーブル40の459〜464、467〜472、・・・を所望の立体形状となるように変更する。
【0152】
次に、立体定義変更信号検出手段39bによって立体定義変更信号の出力を検出する(ステップS61)。例えば、図23のシーケンス回路の場合には、図27のフローチャートに示されているように、工具101または工具102が選択されたとき(ステップS63)、立体定義データ設定テーブル40への入力を行い、立体定義変更信号を出力する(ステップS64)。
【0153】
立体定義変更信号検出手段39bは、ここで出力される立体定義変更信号を検出する。立体定義変更信号が出力されていれば(ステップS61肯定)、立体定義変更手段39によって立体定義データ設定テーブル40の内容をメモリ3の立体定義データ22に書き込む(ステップS62)。
【0154】
この図26に示されている立体定義データ入力・設定フローは、実施の形態1におけるメインフロー(図13)における干渉物移動位置計算ステップ(ステップS11)の実行前に呼び出される。これにより、補間処理毎に計算される干渉判定の前に立体定義データが変更され、変更された立体定義データに基づいて干渉チェックまたは干渉回避の計算が行われる。
【0155】
以上のように、工具の選択などによって干渉物の形状を変更する必要がある場合には、上述のように干渉物の形状を変更して引き続き干渉チェックまたは干渉回避を行うことができる。
【0156】
(実施の形態4)
図28はこの発明による数値制御装置の実施の形態4を示している。尚、図28に於いても、図1に対応する部分は図1に付した符号と同一の符号を付けてその説明を省略する。
【0157】
この数値制御装置においては、加工状況に応じて干渉回避の動作を行う優先順位を決定する加工干渉物優先判定手段32が補間処理部7に追加され、また加工状況に応じて干渉回避を行う優先順位を定義するための優先回避定義テーブル41が設けられている。さらにメモリ3の立体定義データ22は干渉物の対象を、例えば工具のように設定するための干渉物対象設定部225を含んでいる。
【0158】
詳細には、加工干渉物優先判定手段32は、干渉物の対象であるユニットを移動せしめる加工プログラムの実行ブロックが加工ブロックか否かによって、該ユニットが加工中のユニットであることを判定し、干渉物の対象が加工中のユニットである場合には、優先回避定義テーブル41に定義された加工モードまたは加工中のユニットの種類による干渉回避時の移動優先度に応じて干渉回避時における移動を優先させる。
【0159】
図29は実施の形態4の数値制御装置が使用されて好適な工作機械(加工干渉物優先移動)を示している。この工作機械はチャック120で保持されているワークWの加工を行う工具123、工具124と、工具123による切断加工が完了したワークWの端面を工具124によって加工するためにワークWを保持して移動する主軸台122とを有している。
【0160】
工具123がA位置よりB位置へ、主軸台122がC位置よりD位置へ各々移動すれば、これらはお互いに干渉する。
【0161】
そこで、実施の形態1における干渉回避動作に基づき、工具123または主軸台122のどちらかの移動を一時停止させることによって、これらの干渉を回避させる。
【0162】
図30は優先回避定義テーブル41の設定例を示している。図30において、307aは干渉物を移動せしめる加工プログラムの実行中のGコード番号、307bは立体定義データ22に追加された干渉物対象設定225の設定番号、307cは干渉物において307a、307bの状態にあるときの干渉回避時の干渉物の移動優先度である。上述の307aと307bと307cを一組とし、これがいくつかの組によって優先回避定義テーブル41が構成されている。
【0163】
次に、図31に示されている加工干渉物優先判定フローについて説明する。加工干渉物優先判定フローは実施の形態1の干渉回避計算フロー(図16)における優先順位決定ステップにて実行される。
【0164】
この加工干渉物優先判定フローでは、まず、加工プログラムの実行中ブロックが加工ブロックであるか否かを判定する(ステップS71)。例えば、図29の例では、工具123を対象とした干渉物については、加工プログラムの実行中ブロックがねじ切りであるため、加工ブロックであると判定される。
【0165】
次に、加工ブロックであると判定された場合には、優先回避定義テーブル41を参照し(ステップS72)、加工干渉物優先判定手段32によって優先回避定義テーブル41に定義された実行中の加工指令または干渉物の対象ユニットに応じた移動優先度より干渉回避時の干渉物の移動優先順位を変更する。
【0166】
例えば、図30に示されているように優先回避定義テーブル41が設定されていた場合には、図29における工具123と主軸台122の干渉回避においては、工具123がねじ切り加工中の工具で移動優先度は100、主軸台122は直線補間中の主軸台で、優先回避定義テーブル41には定義されていないために移動優先度は0と判定され、工具123の移動優先順位のほうが主軸台122の移動優先順位よりも高くなる。
【0167】
以上のようにして、図29の例では、加工中の工具123の移動を優先させて干渉を回避するため、ワークWの破損を回避することができる。
【0168】
尚、この実施の形態では、優先回避定義テーブル41における定義よりねじ切り中の工具を優先的に移動させているが、移動優先度の定義に関して、別の加工指令または別のユニットを優先させてもよい。
【0169】
また、この実施の形態4は実施の形態1の干渉回避動作におけるものであるが、この実施の形態4が示す発明の目的は、ワークを破損させることなく干渉回避を行うために、加工の状況に応じて干渉を回避させるユニットの動作を決定することにあり、実施の形態1における干渉回避動作以外の干渉回避において、この発明が実施されても差し支えない。
【0170】
(実施の形態5)
図32はこの発明による数値制御装置の実施の形態5を示している。尚、図32に於いても、図1に対応する部分は図1に付した符号と同一の符号を付けてその説明を省略する。
【0171】
この数値制御装置においては、機械制御信号処理8に立体の形状を示す第1形状指定点または第2形状指定点の座標値を軸の移動に依らず固定とする設定を行う形状指定点固定設定手段900が、加工プログラムの指令による各軸の移動に拘らず、干渉物を構成する立体の形状を表す形状指定点の座標を固定した場合の立体形状を計算する形状指定点固定立体計算手段914が各々追加され、またシーケンス回路9で干渉物を構成する立体の形状指定点の座標値を固定と設定する形状指定点固定設定データ901が設けられている。
【0172】
詳細には、形状指定点固定立体計算手段914は、補間処理部7に形状指定点固定設定手段900によって設定された立体の形状指定点の座標値を固定にして形状指定点固定設定手段900で固定と設定されていない形状指定点の座標値を計算することによって干渉物立体の形状計算を行う。
【0173】
また立体定義データ22は、各立体毎に、第1形状指定点または第2形状指定点の座標値を軸移動に依らずに固定とするための移動/固定座標値選択データ210を含んでいる。この立体定義データ22に追加された移動/固定座標値選択データ210は干渉物を構成する立体の形状を示す第1形状指定点および第2形状指定点の座標値を、軸移動により更新するか否かの情報を設定するためのものである。
【0174】
図33(a)、(b)は実施の形態5の数値制御装置が使用されて好適な工作機械(干渉物定義)を示している。この工作機械は、ワークWを保持するチャック801と、ワークWを切削する刃物802が取り付けられた刃物台804とを有している。刃物台802はZ軸方向にのみ移動可能な干渉物とする。
【0175】
刃物台802は干渉チェックを行うために定義された立体すなわち干渉物立体aとなる。この干渉物立体aは第1形状指定点Paと第2形状指定点Pbとで定義されている。また図33にて、Gは実際に機械が可動する範囲、すなわち加工エリアを表している。
【0176】
次に、この実施の形態5の動作を図34、図35に示されているフローチャートを参照して説明する。図34は形状指定点固定設定フローであり、この設定フローでは、シーケンス回路9により、形状指定点固定設定データ901(図36参照)の474、475・・・のように、干渉物を構成する立体の形状指定点の座標値が固定と設定された情報を、形成指定点固定設定手段900によって読取り、これを立体定義データ22の形状指定点の移動/固定座標値選択データ210に設定する。
【0177】
たとえば、図33(a)では第1形状指定点PaのZ軸座標値の移動/固定座標値選択データ210に固定座標の設定を行う。
【0178】
図35は固定座標設定の干渉物データ計算フローであり、この計算フローでは、まず原点復帰時の干渉物の初期値Zaを設定する。図33(a)の刃物台804がZ軸方向に移動した場合には(ステップS202肯定)、補間処理部7で干渉物が移動したかを判定した後に形状指定点固定立体計算手段914が立体定義データ22中の移動/固定座標値選択データ210の内容を読取り、固定座標が選択されている場合、たとえば、図33(a)の第1形状指定点PaのZ軸座標値が固定座標として選択されているので、Z軸の移動量(Zb−Za)を算出する(ステップS203)。
【0179】
次に、形状指定点固定立体計算手段914が第2形状指定点PbのZ軸座標値のみをステップS203で算出した移動量(Zb−Za)だけ更新し、第1形状指定点PaのZ軸座標値は更新しないで干渉物立体のエリアを再計算する。
【0180】
その結果、図33(b)に示されているような干渉物立体bが計算される。これにより干渉物が軸移動によって軸移動方向へ伸縮し、余分な領域の干渉判定を行う無駄を省くことができる。
【0181】
なお、上述の実施の形態では、刃物台804はZ軸方向のみ移動可能な干渉物として説明したが、他の軸方向に可動な干渉物であっても構わない。
【0182】
(実施の形態6)
図37はこの発明による数値制御装置の実施の形態6を示している。尚、図37に於いても、図1に対応する部分は図1に付した符号と同一の符号を付けてその説明を省略する。
【0183】
この数値制御装置においては、ワークの直径や機械端側ワーク中心の座標値などのワーク関連定義データ911が立体定義データ22に設けられ、このデータを定義するためのワーク関連データ設定手段912がパラメータ設定部4に設けられている。
【0184】
また、シーケンス回路9からのワーク干渉物形状計算有効信号を検出するためのワーク干渉物形状計算有効信号検出手段913が機械制御信号処理部8に、このワーク干渉物形状計算有効信号が有効な場合に立体定義データ22のワーク関連定義データ911を読取ってワーク移動量からワーク干渉物の形状計算を行うワーク干渉物形状計算手段915と、ワーク干渉物の初期座標値を定義するためのワーク干渉物初期設定手段910とが補間処理部7に各々追加されている。
【0185】
図38(a)、(b)は実施の形態6の数値制御装置が使用されて好適な工作機械(ワーク干渉物定義)を示している。ワークWはZ軸方向のみ移動可能な干渉物であり、工作機械はワークWを保持するチャック811と、チャック811によって保持されたワークWを切削加工時に回転させる主軸810とを有している。
【0186】
なお、図38(a)において、MCは機械端側のワーク中心を、ZaaはワークWがある位置に位置決めされたときのワーク端面のZ軸座標値を、Zoは機械端のZ軸座標値を、WdはワークWの直径を、Gは実際に機械が可動する範囲、すなわち加工エリアを各々示している。図38(a)の場合にはワーク端面のZ軸座標値Zaaと機械のZ軸座標値Zoとが一致している。
【0187】
また図38(b)において、Zbbは加工中のワークWの端面のZ軸座標値を示しており、加工中のワーク干渉物bが存在する。
【0188】
次にこの実施の形態6のの動作を図39〜図41に示されているフローチャートを参照して説明する。
【0189】
図39はシーケンス回路9側の動作フローであり、この動作フローでは、チャック811を開閉するための加工プログラムの指令が加工プログラム解析処理部2a、2b・・・で解析され、機械制御信号処理部8を介し、シーケンス回路9に通知されされるこにより、この通知されたデータからシーケンス回路9がチャック閉の動作指令が指令されたか否かを判定する(ステップS210)。
【0190】
チャック閉と判断された場合には、機械制御信号処理部8に対してワーク干渉物形状計算有効信号を出力する(ステップS211)。これに対しチャック開と判断された場合には、機械制御信号処理部8に対するワーク干渉物形状計算有効信号の出力をオフする(ステップS212)。
【0191】
図40はワーク干渉物の設定フローであり、表示ユニット6に画面表示された項目に従ってワークWの直径Wdを設定する(ステップS230)。設定されたデータ(直径Wd)はワーク関連データ設定手段912によって立体定義データ22のワーク関連定義データ911に書き込まれる。
【0192】
次に、ワーク干渉物のワーク中心MCの固定側、すなわち機械端側の座標値を設定する。設定されたデータ(ワーク中心MCの固定側の座標値)はワーク関連データ設定手段912によって立体定義データ22のワーク関連定義データ911に書き込まれる。
【0193】
次に、ワーク干渉物の形状計算について図41のフローチャートを使って説明する。このワーク干渉物形状計算フローでは、加工プログラムで指令された座標値セットが加工プログラム解析手段2a、2b・・・で解析され、補間処理部7に渡され、ワーク干渉物初期設定手段910が加工プログラム解析手段2a、2b・・・からの座標値情報をチェック、換言すれば座標初期化であるか否かを判別する(ステップS220)。
【0194】
座標値情報がない場合には、ステップS223へジャンプするが、座標値情報がある場合には、ワーク干渉物初期値設定手段910が初期化情報をもとにワーク干渉物の可動側の座標値の初期化を行い(ステップS221)、次いでワーク干渉物形状計算手段915が固定側、可動側の座標値とワーク直径からワーク干渉物の形状計算を行う(ステップS222)。
【0195】
通常、座標値がセットされた時点では、ワーク干渉物の可動側と固定側の座標値が一致するので、図38(a)に示されているように(ワーク端面のZ軸座標値Zaa)−(機械のZ軸座標値Zo)=0となり、実質的なワーク干渉物が存在しない。
【0196】
次に、ワーク干渉物形状計算有効信号検出手段913によってシーケンス回路9からのワーク干渉物形状計算有効信号をチェックし(ステップS223)、この信号がオンであれば、すなわちチャック811が閉状態の場合には、補間処理部7でワーク干渉物の移動(Z軸移動)を判定する(ステップS224)。
【0197】
ワーク干渉物の移動があれば、ワーク干渉物形状計算手段915によって移動量を計算する(ステップS225)。図38の例では、ワーク端面Zbb−ワーク端面Zaaが移動量に相当する。
【0198】
この計算結果をもとにワーク干渉物形状計算手段915によってワーク干渉物形状を再計算を行う(ステップS226)。
【0199】
なお、以降の干渉チェックおよび干渉回避に関する動作については、実施の形態1と同様の動作を行う。
【0200】
以上により、図38の主軸810がZ軸方向に移動することによってチャック811に保持されているワークWも一緒に移動し、長手方向(Z軸方向)の切削を行う数値制御工作機械において、ワークWが加工エリアGに進入している部分のみを干渉物として計算することができる。
【0201】
また、チャック811が開状態でワークが保持されていない場合には、主軸810が移動してもワーク812は移動しないため、加工エリアGにおけるワーク干渉物の長さは変わらない。このときには干渉物形状を再計算せずに干渉チェックおよび干渉回避を行うことができる。
【0202】
(実施の形態7)
図42はこの発明による数値制御装置の実施の形態7を示している。尚、図42に於いて、図37に対応する部分は図37に付した符号と同一の符号を付けてその説明を省略する。
【0203】
この数値制御装置においては、上述の実施の形態6によるものに加えて、メイン主軸に保持されているワークを背面主軸に持ち変えたことを判定するワークつかみ変え判定手段920と、ワーク干渉物を干渉物として計算するか否かを選択するワーク干渉物有効/無効切換手段921と、図43に例示されている突切り工具827によって切断されたワークWの長さを計算するワーク長計算手段922と、図43に例示されているメイン主軸810と背面主軸820の相対距離を計算する相対距離計算手段923とが補間処理部7に設けられている。
【0204】
また、図43に例示されているメイン主軸810のチャック811と背面主軸820のチャック821の開閉を検出するチャック開閉検出手段924が機械制御信号処理部8に追加され、さらにチャック開閉の指令をCNCに認識させるためのチャック開閉用補助指令定義テーブル925が設けられている。
【0205】
次に、図43(a)、(b)、(c)、(d)に示されている工作機械について説明する。図43の例では、ワークWはZ軸方向にのみ移動可能なものとしている。この工作機械は、ワークWを保持するチャック811と、チャック811によって保持されたワークWを切削加工時に回転させるメイン主軸810と、ワークWを切断する突切り工具827と、切断されたワークWを保持するチャック821およびこれを保持する背面主軸820とを有している。
【0206】
なお、図43(a)において、MCは機械端側のワーク中心を、ZaaaはワークWがある位置に位置決めされたときのワーク端面のZ軸座標値を、Zoは機械端のZ軸座標値を、Gは実際に機械が可動する範囲、すなわち加工エリアを各々示している。また図43(d)において、Zbbbは突切り工具827により切断された後にワークWのメイン主軸側に残った部分の切断面をZ軸座標値を示している。
【0207】
次に、この実施の形態7の動作を図44、45に示されているフローチャートを参照して説明する。
【0208】
図44はシーケンス回路(ラダー回路)9のフローチャートを示している。この動作フローでは、シーケンス回路9がチャック開閉を動作させる補助指令を、図46に例示されているようなチャック開閉用補助指令定義テーブル925に補助指令の番号で登録する。
【0209】
なお、図46に示されているチャック開閉用補助指令定義テーブル925において、770はメイン主軸810、背面主軸820のチャック開、閉の種別を示すテーブルを、771は各々のテーブルに対応する補助指令番号を示している。シーケンス回路9は補助指令番号771を対応するテーブルにセットする。これを行うことによってシーケンス回路9で指令するチャック開閉をCNCが認識できるようになる。
【0210】
次に、ワークつかみ変えの判定とワーク干渉物の再定義について図45に示されているフローチャートを参照して説明する。まず、メイン主軸810と背面主軸820のX軸の座標値が一致しているか否かを相対距離計算手段923によって計算し、判定する(ステップS250)。
【0211】
多系統対応のCNCは加工プログラムを各々独立して実行することが可能な系統という単位で構成されており、メイン主軸810と背面主軸820とは、個別の加工プログラムによって各々独立して制御され、各々個別の系統になっている。
【0212】
各々の系統は独立した座標系を有し、プログラムを実行するため各々の系統に所属する制御軸は独立した座標系で制御される。そのため、例えば、第1系統のX軸と第2系統のX軸の位置関係、すなわち相対距離は不明である。そこで、予め各系統の原点の位置関係、すなわち原点相対距離を定義しておくことによってこの問題を解決できる。
【0213】
ここで、相対距離計算手段923による相対距離計算方法について図47を参照して説明する。図47において、Mo1 はZ1軸、X1軸による第1系統機械座標の原点を、Mo2 はZ2軸、X2軸による第2系統機械座標の原点を各々示している。また第1系統の機械位置は(X 1 ,Z 1 )、第2系統の機械位置は(X 2 ,Z 2 )で示されている。
【0214】
第1系統機械座標原点Mo1 と第2系統機械座標原点Mo2 とは、Z軸方向に原点相対距離Zooを、X軸方向に原点相対距離Xooを有しており、これら原点相対距離Zoo、Xooは予めパラメータとして定義しておく。
【0215】
相対距離計算手段923は、これらのデータを使って第1系統と第2系統の各々の軸の相対距離、すなわち、図47では、Z軸の相対距離Z 12 とX軸の相対距離X 12 を計算する。X軸の相対距離X 12 は下式により算出される。
【0216】
(X軸の相対距離X 12 )=(第2系統のX軸機械位置X 2 )−(第1系統機械座標原点と第2系統機械座標原点のX軸原点相対位置Xoo)−(第1系統のX軸機械位置X 1 ) この計算結果をワークつかみ変え判定手段920が監視しており、X軸の相対距離X 12 が0(図43(a)にて背面主軸台の中心がワーク中心に一致している状態)になれば(ステップS250肯定)、ワークつかみ変え判定手段920からの指示によって上述のチャック開閉用補助指令定義テーブル925をチャック開閉検出手段924が読み出し、加工プログラム1に指令されているチャック開閉の補助指令を、例えば背面主軸チャック閉指令を加工プログラム解析処理部2a、2b、・・・で解析し、この解析結果と図46に示されているようなチャック開閉用補助指令定義テーブル925の背面チャック開データを比較することによって、かつ、シーケンス回路9からの補助指令実行完了通知を検出することによって背面主軸台820のチャック821が開状態であるか否かを判定する(ステップS251)。
【0217】
この判定の結果、背面主軸チャック821が開状態であれば、ワークつかみ変え判定手段920からの指示によってワーク干渉物有効/無効切換手段921がワーク干渉物形状計算手段915に対して形状計算を無効にするように指示する(ステップS252)。
【0218】
具体的には、立体定義データ22にワーク干渉物有効/無効の識別エリアを確保し、このエリアにワーク干渉物有効/無効切換手段921が無効のデータを書き込み、またワーク干渉物形状計算手段915がこのデータをチェックし、無効と判定した場合には、ワーク干渉物の形状計算を取り止める。ワーク干渉物が無効になれば、背面主軸台820がワークWをつかみにいっても、すなわち、図43(b)に示されているような状態になっても、干渉アラームになることはない。
【0219】
次に、チャック開閉検出手段924によって加工プログラムの解析結果から背面主軸台820のチャック821が閉状態であるか否かを判定する(ステップS253)。
【0220】
閉状態である場合には、図43(c)に示されているような突切り工具827によってワークWを切断する動作を開始し、これの完了をワークつかみ変え判定手段920にって検知する(ステップS254)。
【0221】
具体的には突切りを行う場合には、工具とワークが当たる部分の円周方向の速度を一定にする周速一定制御機能を使う。この機能を使いながら突切り工具827をワーク中心に向けて移動させる。
【0222】
この場合、ワークつかみ変え判定手段920は、突切り工具が選択された周速一定制御の指令中において突切り工具837のX軸がワーク中心と一致すれば、ワークWが切断されたと判断する。
【0223】
突切り加工が完了すると、ワークつかみ変え判定手段920はワーク端面のZ軸座標値Zaaaとワーク切断時のZ軸座標値、すなわちワーク切断面の座標値Zbbbとを読み出し、ワークの長さ(Zaaa−Zbbb)を計算する。また、切断されて残ったワークについても機械端座標Zoからワーク長(Zbbb−Zo)を計算する(ステップS255)。
【0224】
次に、ワーク干渉物有効/無効切換手段921からの指示によってワーク干渉物形状計算手段915がワーク長の計算結果と予め登録されているワーク直径値と背面主軸820にチャックされている切断されたワークWのワーク端面Zaaaから(Zbbb−Zaaa)の長さの切断されたワークの干渉物形状計算を行い、図43(d)に示されているようなワーク干渉物bを干渉チェックに加える。また、切断されて残ってワークについてもワーク干渉物有効/無効切換手段921からの指示によってワーク干渉物形状計算手段914がワーク直径値と機械端Zoから(Zbbb−Z0)の長さに干渉物形状計算を行い、図43(a)に示されているメイン主軸側のワーク干渉物aを図43(d)に示されているワーク干渉物cに変更する(ステップS256)。
【0225】
この後にメイン主軸側のワーク干渉物cを有効にする(ステップS257)。
【0226】
このようにして背面主軸820に保持されている切断されたワークに対してもワーク干渉物を計算することができる。
【0227】
これによりメイン主軸810から背面主軸820へ持ち変えたワークの干渉チェックまたは干渉回避を行うことができ、このような加工のプロセスにおいてもより確実に工作機械の保護を行うことができるようになる。
【0228】
【発明の効果】
以上の説明から理解される如く、この発明による数値制御装置によれば、干渉物をいくつかの立体の組み合わせにより構成されているように定義した立体定義データを使用し、この立体定義データに定義された立体の組み合わせに基づいて干渉判定領域を設定するから、干渉チェックを従来の比して緻密かつ正確に行うことができる。
【0229】
次の発明による数値制御装置によれば、干渉物をいくつかの立体の組み合わせにより構成されているように定義した立体定義データを使用し、この立体定義データに定義された立体の組み合わせに基づいて干渉回避判定領域を設定し、干渉回避モードである場合には干渉回避領域に基づいて干渉の有無を判定し、干渉時には干渉回避計算手段によって干渉の回避方法を設定するから、干渉回避を緻密かつ正確に行うことができる。
【0230】
次の発明による数値制御装置によれば、干渉物を構成する立体毎の立体定義データをシーケンス回路からの信号によって有効または無効に選択できるため、シーケンス制御による指令によって駆動されるユニットの干渉チェックを行うことができる。
【0231】
また、一度干渉チェックを行いながら試運転を行い、干渉しない場合は2回目以降の運転において立体定義データを無効にすることによって干渉チェックを行わないようにすることもできる。
【0232】
また、オペレータが都合の良い干渉物となるように、立体定義データを自由に追加または削除することができるので、例えば油圧などによって駆動されるためにCNCがその位置を把握していないユニットの干渉チェックまたは干渉回避も行える効果がある。
【0233】
次の発明による数値制御装置によれば、オペレータが干渉物の形状を自由に変更できるので、加工中に形状が変化するユニットの干渉チェックまたは干渉回避を行う場合に、使用するユニットの選択の自由度が向上する効果がある。
【0234】
また、立体定義データの変更をシーケンス回路と機械制御信号処理部を介して行うようにしたため、加工プログラムの指令に応じて機械制御信号処理部に立体定義データの変更指令信号を送る加工プログラムを作成して、シーケンス回路において検出した信号の種類によって任意の立体定義データの変更を行うことができる。このため、オペレータの作成する加工プログラムの状態に応じて最適な干渉物の設定を行うことができる。
【0235】
また、オペレータが都合の良い干渉物となるように、立体定義データを自由に変更することができるので、この場合も、例えば油圧などによって駆動されるためにCNCがその位置を把握していないユニットの干渉チェックまたは干渉回避も行える効果がある。
【0236】
次の発明による数値制御装置によれば、加工プログラムより加工中のユニットであるか否かを判定し、加工中のユニットを優先して移動させることにより、干渉回避のために途中で加工中の工具が停止することによる加工精度の低下またはワークの破損を防ぐと云う効果が得られる。
【0237】
また、干渉回避時における移動優先順位を自動で生成するため、オペレータの入力負荷を減らすこともできる。
【0238】
次の発明による数値制御装置によれば、干渉物が軸移動によってその軸移動方向へ伸縮するため、余分な領域の干渉判定を行う無駄を省くことができるようになる。
【0239】
次の発明による数値制御装置によれば、主軸がZ軸方向に移動することによって、主軸に取り付けられたチャックによって保持されているワークも連動して移動することにより、ワークの長手方向の切削を行う数値制御装置において、ワークの加工室内に進入している部分のみを干渉物として計算することができる。
【0240】
また、チャックの開閉状態によっては、ワークが移動したりしなかったりするが、チャックの開閉状態に応じてワーク干渉物形状計算有効信号を入力することによって、干渉物の形状計算を行うか否かを選択できるようにしたため、チャックの開閉によって移動したりしなかったりするワークの干渉チェックを行うことができるようになる。
【0241】
次の発明による数値制御装置によれば、複数の主軸に備える数値制御工作機械において、ワークをメイン主軸において保持して加工を行い、次に背面主軸においても保持し突切り工具によって切断することによって、切断されたワークの背面主軸にて保持されている側の加工を行う場合において、メイン主軸から背面主軸へ持ち変えたワークの干渉チェックまたは干渉回避を行うことができる。このような加工のプロセスにおいても、より確実に工作機械の保護を行うことができる効果がある。
【図面の簡単な説明】
【図1】この発明による数値制御装置の実施の形態1を示すブロック線図である。
【図2】(a)〜(c)は立体定義データの設定画面例を示す説明図である。
【図3】この発明による数値制御装置で使用される座標系を示す説明図である。
【図4】基準機械座標基準点相対距離パラメータ設定画面を示す説明図である。
【図5】干渉チェック形状を例示した説明図である。
【図6】干渉判定立体及び干渉判定領域を例示した説明図である。
【図7】干渉判定立体及び干渉回避領域を例示した説明図である。
【図8】干渉判定例を示す説明図である。
【図9】干渉判定/回避領域を例示した説明図である。
【図10】(a)〜(d)は各々干渉回避例を示す説明図である。
【図11】(a)〜(d)は干渉チェックと干渉回避動作の一例を示す説明図である。
【図12】(a)〜(d)は干渉チェックと干渉回避動作の他の例を示す説明図である。
【図13】実施の形態1における干渉チェック・干渉回避のメインフローを示すフローチャートである。
【図14】干渉回避領域計算フローを示すフローチャートである。
【図15】干渉判定フローを示すフローチャートである。
【図16】干渉回避計算フローを示すフローチャートである。
【図17】この発明による数値制御装置の実施の形態2を示すブロック線図である。
【図18】(a)は実施の形態2の数値制御装置が使用されて好適な加工システム例を示す側面図、(b)はそれの正面図である。
【図19】干渉物有効/無効判定のシーケンス回路図である。
【図20】実施の形態2における干渉チェック・干渉回避のメインフローを示すフローチャートである。
【図21】立体定義有効/無効切換フローを示すフローチャートである。
【図22】この発明による数値制御装置の実施の形態3を示すブロック線図である。
【図23】実施の形態3の数値制御装置が使用されて好適な工作機械の平面図である。
【図24】立体定義変更のシーケンス回路である。
【図25】立体定義データ設定テーブルの一例を示す説明図である。
【図26】立体定義データ入力・設定フローを示すフローチャートである。
【図27】立体定義変更のシーケンス回路の動作フローを示すフローチャートである。
【図28】この発明による数値制御装置の実施の形態4を示すブロック線図である。
【図29】実施の形態4の数値制御装置が使用されて好適な工作機械の平面図である。
【図30】優先回避定義テーブルの一例を示す説明図である。
【図31】加工干渉物優先判定フローを示すフローチャートである。
【図32】この発明による数値制御装置の実施の形態5を示すブロック線図である。
【図33】(a)、(b)は実施の形態5の数値制御装置が使用されて好適な工作機械を示す平面図である。
【図34】形状指定点固定設定フローを示すフローチャートである。
【図35】干渉物計算フローを示すフローチャートである。
【図36】形状指定点固定設定データの一例を示す説明図である。
【図37】この発明による数値制御装置の実施の形態6を示すブロック線図である。
【図38】(a)、(b)は実施の形態6の数値制御装置が使用されて好適な工作機械を示す平面図である。
【図39】シーケンス回路の動作フローを示すフローチャートである。
【図40】シーケンス回路の動作フローを示すフローチャートである。
【図41】ワーク干渉物の設定フローフローを示すフローチャートである。
【図42】この発明による数値制御装置の実施の形態7を示すブロック線図である。
【図43】(a)〜(d)は実施の形態7の数値制御装置が使用されて好適な工作機械を示す平面図である。
【図44】ラダー回路の動作フローを示すフローチャートである。
【図45】ワークつかみ変え判定とワーク干渉物再定義フローを示すフローチャートである。
【図46】チャック開閉用補助指令定義テーブルの一例を示す説明図である。
【図47】各系統の機械位置の相対距離を示す説明図である。
【図48】従来の数値制御装置の一例を示すブロック線図である。
【図49】従来の数値制御装置における干渉チェック例を示す説明図である。
【図50】従来の数値制御装置における干渉チェックフローを示すフローチャートである。
【符号の説明】
1 加工プログラム,2 加工プログラム解析処理部,3 メモリ,4 パラメータ設定部,5 画面表示部,6 表示ユニット,7 補間処理部,8 機械制御信号処理部, 9 シーケンス回路,10 軸制御部,11 軸移動量出力回路,12 サーボ制御部, 13 サーボモータ,21 干渉物定義データ,22 立体定義データ,23 干渉物移動方向判定手段,24c 干渉物移動位置計算手段,24 干渉判定領域計算手段,24b 干渉回避領域計算手段,25 干渉判定手段,26 干渉回避計算手段,27 干渉回避モード信号検出手段, 28 立体定義有効/無効切換手段,29 立体定義有効信号検出手段,39 立体定義変更手段,39b 立体定義変更信号検出手段,31 立体定義データ設定手段,40 立体定義データ設定テーブル,41 優先回避定義テーブル,32 加工干渉物優先判定手段,21f 干渉物対象設定,210 移動/固定座標値選択データ,34 形状指定点固定立体計算手段,900 形状指定点固定設定手段 ,901 形状指定点固定設定データ,911 ワーク関連定義データ,912 ワーク関連データ設定手段,910 ワーク干渉物初期設定手段,914 ワーク干渉物形状計算手段,913 ワーク干渉物形状計算有効信号検出手段,921 ワーク干渉物有効/無効切換手段,920 ワークつかみ変え判定手段,922 ワーク長計算手段,923 相対距離計算手段,924 チャック開閉検出手段,925 チャック開閉用補助指令定義テーブル
Claims (7)
- メモリから加工プログラムを加工プログラム解析処理部によって読み込み解析し、補間処理部によって解析結果に基づく軸移動のための補間処理を行う数値制御装置において、
工具、タレット、主軸台及びワークのいずれかが位置するため干渉し得る領域を表す干渉物をいくつかの立体の組み合わせにより構成されているように定義され、各立体の形状を定義する形状指定点の座標を軸移動に拘らず固定させるように定義できる移動/固定座標値選択データを含む立体定義データを格納するメモリと、
前記移動/固定座標値選択データを設定するための形状指定点固定設定手段と、
立体の形状を定義する形状指定点の座標を軸移動に拘らず固定させた場合の立体形状の計算を行う形状指定点固定立体計算手段と、
現在の干渉物の位置と干渉物を移動せしめる軸の移動量とから補間処理に伴う軸移動量出力後の干渉物の移動位置を計算する干渉物移動位置計算手段と、
前記立体定義データに定義された干渉物を構成する立体において補間処理前の位置から前記干渉物移動位置計算手段により計算された補間処理後の位置への移動における干渉物を構成する立体の干渉し得る領域を表す干渉判定立体を計算し、この干渉判定立体の組み合わせにより干渉判定領域を設定する干渉判定領域計算手段と、
前記干渉判定領域計算手段により設定される干渉判定領域に基づいて干渉の有無を判定する干渉判定手段と
を有していることを特徴とする数値制御装置。 - 前記補間処理部による補間処理に基づく各軸の移動量をもとに干渉物の移動方向を判定する干渉物移動方向判定手段と、
前記干渉物移動方向判定手段により判定された干渉物の移動方向に応じて前記干渉判定立体の形状を変形させた干渉回避立体を計算し、この干渉回避立体を組み合わせてなる干渉回避領域干渉物の移動方向に応じて干渉回避を行うための干渉判定を行う干渉回避領域を計算する干渉回避領域計算手段と、
各干渉物の位置や複数の干渉物の移動のうち加工する干渉物の動きを優先させその他の干渉物の移動を後回しとする移動の優先順位の状態から干渉の回避方法を設定する干渉回避計算手段と、
干渉回避モードとするか否かの選択を行う干渉回避モード信号を検出する干渉回避モード信号検出手段とを有し、前記干渉判定手段は、干渉回避モードでない場合には前記干渉判定領域に基づいて干渉の有無を判定し、干渉回避モードである場合には前記干渉回避領域に基づいて干渉の有無を判定し、干渉時には前記干渉回避計算手段によって干渉の回避方法を設定する
ことを特徴とする請求項1に記載の数値制御装置。 - 特定の立体定義データを有効または無効とする選択をするための立体定義有効信号を検出する立体定義有効信号検出手段と、
入力された立体定義有効信号に対応する立体についてのみ干渉判定が行われるように前記立体定義データにおける特定の立体を有効または無効とする立体定義有効/無効切換手段とを有している
ことを特徴とする請求項1または2に記載の数値制御装置。 - 再入力される立体定義データを記憶する立体定義データ設定テーブルと、
干渉判定の計算を行うための立体定義データを再入力された立体定義データに変更するための立体定義変更信号を検出する立体定義変更信号検出手段と、
前記立体定義変更信号の入力によって前記立体定義データ設定テーブルより立体定義データを読み込み干渉判定に用いる立体定義データを変更する立体定義変更手段とを有している
ことを特徴とする請求項1または2に記載の数値制御装置。 - 干渉物の対象となるユニットを定義する干渉物対象設定を含む立体定義データを格納するメモリと、
加工プログラムの実行ブロックが加工ブロックであるか否かを判定し、加工ブロックであると判定された加工プログラムにより駆動されるユニットの干渉回避動作を優先させる加工干渉物優先判定手段と、
加工プログラムの実行ブロックの加工モードまたは該加工プログラムにより駆動されるユニットの種類に応じて干渉回避時の移動優先度を定義するための優先回避定義テーブルとを有している
ことを特徴とする請求項2に記載の数値制御装置。 - メモリから加工プログラムを加工プログラム解析処理部によって読み込み解析し、補間処理部によって解析結果に基づく軸移動のための補間処理を行う数値制御装置において、
干渉物の対象となるワークに関するデータであるワーク関連定義データを含む立体定義データと、
ワークを対象とした干渉物であるワーク干渉物の初期の座標値を定義するためのワーク干渉物初期設定手段と、
ワーク干渉物の形状を計算するか否かを選択するためのワーク干渉物形状計算有効信号を検出するためのワーク干渉物形状計算有効信号検出手段と、
前記ワーク干渉物形状計算有効信号が有効な場合に前記ワーク干渉物初期設定手段によって定義されたワーク干渉物の初期座標値とワーク移動量とワーク関連定義データからワーク干渉物の形状計算を行うワーク干渉物形状計算手段と、
メイン主軸台と背面主軸台の相対距離を計算する相対距離計算手段と、
前記相対距離計算手段によって計算された前記相対距離に基づいてメイン主軸に保持されているワークが背面主軸に持ち変えられたことを判定するワークつかみ変え判定手段と、
チャック開閉の指令を認識するためのチャック開閉用補助指令定義テーブルと、
加工プログラムの解析結果と前記チャック開閉用補助指令定義テーブルのチャック開閉用補助指令とによりメイン主軸台のチャックと背面主軸台のチャックの開閉を検出するチャック開閉検出手段と、
前記ワークつかみ変え判定手段によるワークつかみ変え判定と前記チャック開閉検出手段により検出されるチャックの開閉に応じてワーク干渉物を干渉物として計算するか否かを選択するワーク干渉物有効/無効切換手段と、
前記ワーク干渉物形状計算手段により計算されたワーク干渉物形状に基づいて干渉の有無を判定する干渉判定手段とを有している
ことを特徴とする数値制御装置。 - ワークを切断するための工具である突切り工具で切断されたワークの長さを計算するワーク長計算手段を有し、
前記ワーク干渉物形状計算手段は前記ワーク長計算手段によって計算されたワーク長に基づいて、前記突切り工具により分割された各ワーク干渉物の形状計算を行う
ことを特徴とする請求項6に記載の数値制御装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP03784496A JP3563191B2 (ja) | 1996-02-26 | 1996-02-26 | 数値制御装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP03784496A JP3563191B2 (ja) | 1996-02-26 | 1996-02-26 | 数値制御装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH09230918A JPH09230918A (ja) | 1997-09-05 |
JP3563191B2 true JP3563191B2 (ja) | 2004-09-08 |
Family
ID=12508852
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP03784496A Expired - Fee Related JP3563191B2 (ja) | 1996-02-26 | 1996-02-26 | 数値制御装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3563191B2 (ja) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003305625A (ja) * | 2002-04-16 | 2003-10-28 | Makino Milling Mach Co Ltd | 加工工程決定方法及び装置 |
JP2005128686A (ja) * | 2003-10-22 | 2005-05-19 | Fanuc Ltd | 数値制御装置 |
JP2006004128A (ja) * | 2004-06-17 | 2006-01-05 | Mori Seiki Co Ltd | 干渉確認装置 |
JP2007048083A (ja) * | 2005-08-10 | 2007-02-22 | Univ Of Electro-Communications | 加工シミュレーション装置及び加工シミュレーション方法 |
JP2007286688A (ja) * | 2006-04-12 | 2007-11-01 | Nakamura Tome Precision Ind Co Ltd | 工作機械の干渉検出方法及び制御装置 |
JP4955371B2 (ja) * | 2006-11-24 | 2012-06-20 | 三菱電機株式会社 | 数値制御システム |
JP4298770B2 (ja) | 2007-08-28 | 2009-07-22 | ファナック株式会社 | 干渉チェック機能を備えた数値制御装置 |
ES2579434T3 (es) * | 2008-07-10 | 2016-08-11 | Citizen Machinery Co., Ltd. | Dispositivo de comprobación de interferencias, procedimiento de comprobación de interferencias, y máquina herramienta que tiene el dispositivo de comprobación de interferencias |
US9002500B2 (en) | 2010-04-27 | 2015-04-07 | Mitsubishi Electric Corporation | Numerical control device |
JP2016159367A (ja) * | 2015-02-26 | 2016-09-05 | ファナック株式会社 | ロボットの動作モードを自動的に切替えるロボット制御装置 |
JP6651815B2 (ja) * | 2015-11-30 | 2020-02-19 | ブラザー工業株式会社 | 数値制御装置と数値制御装置の制御方法 |
CN115698875B (zh) * | 2020-09-11 | 2023-07-07 | 三菱电机株式会社 | 数控装置及工业机械控制系统 |
JP7175340B2 (ja) * | 2021-04-05 | 2022-11-18 | Dmg森精機株式会社 | 工作機械、情報処理装置および情報処理プログラム |
-
1996
- 1996-02-26 JP JP03784496A patent/JP3563191B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH09230918A (ja) | 1997-09-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3563191B2 (ja) | 数値制御装置 | |
EP0740236B1 (en) | Numerical control unit | |
EP3088979B1 (en) | Control device for machine tool | |
EP0104409B1 (en) | A method of establishing safe zones in a numerically controlled machine | |
EP0129092B1 (en) | Numerical control device for use with a machine tool | |
US20110257778A1 (en) | Method and device for simulating nc working machine | |
CN105629884A (zh) | 进行退刀控制的数值控制装置 | |
US7715942B2 (en) | Method for controlling a movable tool, input device and machine tool | |
EP1235125A2 (en) | Control apparatus for cutting machine, cutting machine and cutting method | |
US20080086221A1 (en) | Machine-tool controller | |
JPS6365469B2 (ja) | ||
EP0529239B1 (en) | Numerical control unit with position counter control and display | |
JPH11170117A (ja) | 工作機械の移動軸の制御方法及び装置 | |
JP3464307B2 (ja) | Nc旋盤における干渉チェック方法 | |
JP2006235776A (ja) | 工作機械及びこの工作機械による加工方法 | |
JPH09179620A (ja) | 被干渉体の形態決定方法およびその装置とワーク支持形態の自動決定方法とツーリング形態の自動決定方法 | |
JP2895316B2 (ja) | 工作機械の衝突防止装置 | |
JP3072934B2 (ja) | 数値制御工作機械における干渉チェック装置 | |
KR100655299B1 (ko) | 공구보정 에러체킹을 위한 표시방법 | |
JPH1020919A (ja) | 移動体経路生成方法及びその装置 | |
JPS6240722B2 (ja) | ||
JP3065167B2 (ja) | 数値制御用自動プログラミング装置 | |
EP1116078A1 (en) | Process and system for working a workpiece through numerically controlled machine tools | |
JP2926524B2 (ja) | 試切削機能を有する数値制御装置 | |
JPH09288509A (ja) | 数値制御装置のブロックデータ処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040209 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040316 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040510 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040601 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040602 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080611 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080611 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090611 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100611 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100611 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110611 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120611 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130611 Year of fee payment: 9 |
|
LAPS | Cancellation because of no payment of annual fees |