JP2008071015A - Numerical controller - Google Patents

Numerical controller Download PDF

Info

Publication number
JP2008071015A
JP2008071015A JP2006247691A JP2006247691A JP2008071015A JP 2008071015 A JP2008071015 A JP 2008071015A JP 2006247691 A JP2006247691 A JP 2006247691A JP 2006247691 A JP2006247691 A JP 2006247691A JP 2008071015 A JP2008071015 A JP 2008071015A
Authority
JP
Japan
Prior art keywords
interference
movable part
interference check
maximum
check
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.)
Pending
Application number
JP2006247691A
Other languages
Japanese (ja)
Inventor
Koichi Murata
耕一 村田
Masatoshi Nakajima
政利 中嶋
Mamoru Kubo
守 久保
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fanuc Corp
Original Assignee
Fanuc Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fanuc Corp filed Critical Fanuc Corp
Priority to JP2006247691A priority Critical patent/JP2008071015A/en
Publication of JP2008071015A publication Critical patent/JP2008071015A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Numerical Control (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To provide a numerical controller having an interference checking function to accurately predict occurrence of an interference even at long intervals. <P>SOLUTION: An interpolation/distribution process is performed at predetermined intervals for executing an NC program and outputting an amount of movement instruction to each shaft that drives a movable part. The maximum/minimum positions (coordinate values) of each shaft between the prediction of a leading position and the interval of the interference checks are obtained through interpolation and distribution processes a predetermined time earlier than the above interpolation/distribution process. Based on the maximum/minimum values of each shaft between the position A of the movable part 1 during the previous interference check and the position B of the movable part 1 during the current interference check and on the three-dimensional configuration of the movable part 1, a three-dimensional area 4 for the interference checks is calculated and a determination is made as to whether or not the three-dimensional area 4 interferes with an object 2 to be interfered. Since the three-dimensional area 4 for the interference checks is calculated on the basis of the maximum and minimum positions of each shaft during the movement between the interference checks and the interference is checked, the occurrence of an interference can be reliably predicted. <P>COPYRIGHT: (C)2008,JPO&INPIT

Description

本発明は、数値制御装置で駆動される機械の可動部と他の干渉対象物との干渉をチェックする干渉チェック機能を有する数値制御装置に関する。   The present invention relates to a numerical control device having an interference check function for checking interference between a movable part of a machine driven by a numerical control device and another interference object.

数値制御装置で制御される工作機械等においては、工具やワーク等の可動部が他のものと衝突又は干渉し、破損することを防止するために、可動部と他の干渉対象物が干渉するか否かを動作開始前にチェックすることが一般に行われている。特に、数値制御装置の自動運転中に干渉チェックを行なうために、一定時間先行した機械位置を出力する機能を有する数値制御装置から可動部の位置を取得し、干渉チェックを行なう方式がすでに公知である。   In a machine tool or the like controlled by a numerical control device, a movable part such as a tool or a workpiece interferes with or interferes with another object, and the movable part interferes with another interference object in order to prevent damage. It is generally performed to check whether or not the operation has started. In particular, in order to perform an interference check during automatic operation of a numerical control device, a method for acquiring the position of a movable part from a numerical control device having a function of outputting a machine position preceded by a predetermined time and performing an interference check is already known. is there.

例えば、工具等の干渉物を複数の立体の組み合わせの立体で定義しておき、加工プログラムを実行して補間処理を行い、各軸への移動量出力後の干渉物の移動位置を計算し、現在の位置からこの計算して得られた位置まで直線移動する干渉物を構成する立体の干渉し得る領域を表す干渉判定立体を計算して求め、この干渉判定立体に基づいて干渉の有無を判断するようにした、数値制御装置による干渉チェック方法が公知である(特許文献1参照)。   For example, interfering objects such as tools are defined by a solid of a combination of a plurality of solids, a machining program is executed to perform interpolation processing, and the movement position of the interfering object after the movement amount output to each axis is calculated, Calculate and obtain an interference judgment solid that represents the area that can interfere with the solid constituting the interferer that moves linearly from the current position to this calculated position, and determine the presence or absence of interference based on this interference judgment solid An interference check method using a numerical control device is known (see Patent Document 1).

特開平9−230918号公報JP-A-9-230918

図1、図2は、前記特許文献1に記載された発明などにより従来から実施されている干渉チェック方法である。図1において符号1は工具等の数値制御装置で制御される機械の可動部であり、図では予め定義されている可動部1の立体形状として表している。又、符号2は予め定義されている干渉対象物であり、この干渉対象物2を定義した立体形状で示しており、これらを概念的に表している。又、図1(a)は干渉対象物2と可動部1を上方から見た上面図であり、図1(b)は、斜視図である。前回の干渉チェック時の可動部1の位置がAであり、今回の干渉チェック時の可動部1の位置がBであったとき、可動部1に対して定義されている立体形状が位置Aから位置Bに直線移動して得られる可動部1の立体形状が通過する領域を干渉判定領域3(図1において、位置Aと位置Bの可動部1の立体が破線で結ばれる)として、該干渉判定領域3と予め定義されている干渉対象物2の形状が干渉しているか否かによって、干渉をチェックしている。図1の例では、可動部1が、干渉対象物2の領域まで侵入していることから、干渉が発生すると判断する。   FIG. 1 and FIG. 2 are interference check methods that have been implemented conventionally according to the invention described in Patent Document 1. In FIG. 1, reference numeral 1 denotes a movable part of a machine controlled by a numerical control device such as a tool, and is represented as a three-dimensional shape of the movable part 1 defined in the drawing. Reference numeral 2 denotes a predefined interference object, which is shown in a three-dimensional shape defining the interference object 2 and conceptually represents these. 1A is a top view of the interference object 2 and the movable portion 1 as viewed from above, and FIG. 1B is a perspective view. When the position of the movable part 1 at the time of the previous interference check is A and the position of the movable part 1 at the time of the current interference check is B, the three-dimensional shape defined for the movable part 1 is from the position A. The area through which the three-dimensional shape of the movable part 1 obtained by linearly moving to the position B passes is defined as an interference determination area 3 (in FIG. 1, the solid of the movable part 1 at the position A and the position B is connected by a broken line). The interference is checked based on whether or not the determination area 3 and the predefined shape of the interference object 2 interfere with each other. In the example of FIG. 1, since the movable part 1 has entered the area of the interference target object 2, it is determined that interference occurs.

一方、図2に示す例は、この従来の干渉チェック方法において、干渉発生を見落とす例を示している。前回の干渉チェック時の可動部1の位置がAで今回の干渉チェック時の可動部の位置がBであったとする。しかし、可動部1は、前回と今回の干渉チェック間隔の間に、位置Aより通過点位置Cを経由して位置Bに移動するものである。この場合、位置Aから位置Bへの移動の間で通過点位置Cで干渉対象物2の領域に侵入し干渉が発生する。しかし、干渉チェック処理においては、位置Aから位置Bに直線移動して得られる可動部1の立体形状が通過する領域を干渉判定領域3とすることから、この通過点位置Cを含まないので干渉は発生しないと判断し、干渉発生を見落としてしまう。   On the other hand, the example shown in FIG. 2 shows an example of overlooking the occurrence of interference in this conventional interference check method. Assume that the position of the movable portion 1 at the previous interference check is A and the position of the movable portion at the current interference check is B. However, the movable part 1 moves from the position A to the position B via the passing point position C between the previous and current interference check intervals. In this case, during the movement from the position A to the position B, it enters the area of the interference object 2 at the passing point position C and interference occurs. However, in the interference check process, since the region through which the three-dimensional shape of the movable part 1 obtained by linearly moving from the position A to the position B passes is set as the interference determination region 3, it does not include this passing point position C. It is determined that no interference occurs, and the occurrence of interference is overlooked.

以上のように、実際の機械動作は干渉チェック処理に比べて十分に早い(干渉チェック処理の処理時間が機械動作に比べて遅い)ことから、干渉発生の見落としが発生し、干渉発生を予測できない場合がある。この問題はプログラムでの指令が直線補間でも発生しするが(例えば、直線的に移動し、次に逆方向に移動するような場合)、3次元円弧やスプライン補間のような、非直線的な移動の場合に顕著に発生する。   As described above, the actual machine operation is sufficiently fast compared to the interference check process (the process time of the interference check process is slow compared to the machine operation). Therefore, the occurrence of interference is overlooked and the occurrence of interference cannot be predicted. There is a case. This problem occurs even when the program command is linear interpolation (for example, when moving linearly and then moving in the opposite direction), such as a three-dimensional arc or spline interpolation. This is noticeable when moving.

例えば、干渉チェック処理に100msec必要な場合、干渉チェックに使用する位置情報は、100msec毎の座標値で行われる。図2を例にとると、前回位置Aから今回位置Bまでの機械動作時間を100msecとすると、干渉チェックは位置Aと位置Bまでの破線の領域3でのみ行われることになり、実際に通過した通過点位置Cでの干渉チェックは行なわれない。
干渉チェック処理が機械の動作にリアルタイムに追従できればこのような問題はないが、干渉チェックは、干渉対象物として機械を構成する全ての要素(ワーク、テーブル、コラムなど)に対して行われるため処理時間がかかり、実際の機械動作に追従できず、通過点位置Cのような干渉を検出、予測できない不検出部が発生する。
For example, when 100 msec is required for the interference check process, the position information used for the interference check is performed with a coordinate value every 100 msec. Taking FIG. 2 as an example, if the machine operation time from the previous position A to the current position B is 100 msec, the interference check is performed only in the broken line area 3 from the position A to the position B, and it actually passes. The interference check at the passing point position C is not performed.
If the interference check process can follow the machine operation in real time, this problem will not occur. However, the interference check is performed on all elements (work, table, column, etc.) constituting the machine as interference objects. It takes time, cannot follow the actual machine operation, and generates a non-detection unit that cannot detect and predict the interference such as the passing point position C.

このような問題を解決するためには、干渉チェック処理時間を高速化(たとえば50msec)して、通過点位置Cの情報を取得するようにすることが想定されるが、処理の高速化にはソフトロジックの変更やCPU能力の向上が必要となり対応が困難である。   In order to solve such a problem, it is assumed that the interference check processing time is increased (for example, 50 msec) and information on the passing point position C is acquired. It is difficult to cope with changes in software logic and improvement in CPU capability.

そこで、本発明の目的は、干渉チェックの周期が従来と同じように長くても、確実に干渉発生を予測できる干渉チェック機能を有する数値制御装置を提供することにある。   Therefore, an object of the present invention is to provide a numerical control device having an interference check function that can reliably predict the occurrence of interference even when the interference check cycle is as long as the conventional one.

本発明は、自動運転中に干渉チェックを行なう機能を有する数値制御装置において、前回の干渉チェック時の可動部の位置から、今回の干渉チェック時の可動部の位置までの移動における各軸の最大位置、最小位置を取得する手段と、予め定義されている可動部の立体形状が、前記取得した各軸の最小位置から最大位置まで移動する立体領域を作成する手段と、該立体領域が予め定義されている干渉対象物の形状に対して干渉するかをチェックする手段を備えることによって、可動部と他の干渉対象物との干渉発生を確実に予測できるようにした。   The present invention provides a numerical control device having a function of performing an interference check during automatic operation, and the maximum of each axis in the movement from the position of the movable part at the time of the previous interference check to the position of the movable part at the time of the current interference check. Means for obtaining the position and minimum position; means for creating a solid area in which the three-dimensional shape of the predefined movable part moves from the minimum position to the maximum position of each of the obtained axes; and the solid area is defined in advance. By providing a means for checking whether or not the interference object is interfered with, it is possible to reliably predict the occurrence of interference between the movable part and another interference object.

干渉チェックの間隔が長くても、干渉チェックの間隔内に各軸が移動する最大位置と最小位置を求めて干渉チェックのための立体領域を作成し、該立体領域が干渉対象物と干渉するか判断するため、干渉発生の見落としがなくなり、確実に干渉発生を予測できる。   Even if the interference check interval is long, whether or not the solid region for interference check is created by obtaining the maximum position and the minimum position where each axis moves within the interference check interval, and the solid region interferes with the interference object Therefore, it is possible to reliably predict the occurrence of interference without overlooking the occurrence of interference.

以下、本発明の一実施形態を図面と共に説明する。
図3は、本発明の干渉チェック方法の原理説明図である。図1,図2と同様に、符号1は、工作機械の工具等の数値制御装置で駆動制御される機械の可動部であり、符号2は、干渉対象物である。この図3においても、可動部1及び干渉対象物2は、予め定義され、数値制御装置に設定されているその立体形状で表示している。図3(a)は上面図で、図3(b)は斜視図である。NCプログラム運転中に、前回の干渉チェック時に取得した可動部1の位置がAであり、今回の干渉チェック時に取得した可動部1の位置がBであったとき、前回の干渉チェックに取得する位置Aから今回取得した位置Bまでに移動した間における各軸の最大位置/最小位置の範囲情報を取得するようにする。可動部1に対して定義されている立体形状が位置Aから位置Bに移動する際の可動部1の通過する領域として、この最大位置、最小位置で囲まれた移動範囲の干渉チェック用の立体領域4を作成し、その立体領域4と素材や機械構造物などの干渉対象物2との干渉チェックを行う。
Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
FIG. 3 is an explanatory diagram of the principle of the interference checking method of the present invention. Similar to FIGS. 1 and 2, reference numeral 1 denotes a movable part of a machine that is driven and controlled by a numerical control device such as a tool of a machine tool, and reference numeral 2 denotes an interference target. Also in FIG. 3, the movable part 1 and the interference object 2 are displayed in their three-dimensional shapes that are defined in advance and set in the numerical control device. 3A is a top view and FIG. 3B is a perspective view. During NC program operation, when the position of the movable part 1 acquired at the previous interference check is A and the position of the movable part 1 acquired at the current interference check is B, the position acquired for the previous interference check The range information of the maximum position / minimum position of each axis during the movement from A to the position B acquired this time is acquired. As a region through which the movable part 1 passes when the three-dimensional shape defined with respect to the movable part 1 moves from the position A to the position B, a solid for interference check of the movement range surrounded by the maximum position and the minimum position. An area 4 is created, and an interference check between the three-dimensional area 4 and the interference target 2 such as a material or a mechanical structure is performed.

例えば、図3において可動部1がX−Y平面を移動するものとすると、X座標の最大値、最小値と、Y座標の最大値と最小値を求め、このX、Y座標の最大値、最小値によって囲まれる図3で破線で示すような干渉チェック用の立体領域4が干渉対象物2の立体形状と干渉していないか判別して干渉チェックを行う。
これによって、図2に示したような従来の干渉チェック周期毎に取得した位置間を直線移動させて得られる干渉判定領域3と干渉対象物2との干渉チェックでは干渉を予測できない、位置Aと位置B間の通過点Cによる干渉発生を予測することができるようにしたものである。
For example, if the movable part 1 moves in the XY plane in FIG. 3, the maximum value and minimum value of the X coordinate and the maximum value and minimum value of the Y coordinate are obtained, and the maximum value of the X and Y coordinates is calculated. The interference check is performed by determining whether or not the interference check solid region 4 as indicated by a broken line in FIG. 3 surrounded by the minimum value interferes with the solid shape of the interference object 2.
As a result, the interference check between the interference determination area 3 and the interference object 2 obtained by linearly moving between the positions acquired for each conventional interference check period as shown in FIG. The generation of interference due to the passing point C between the positions B can be predicted.

図4は、本発明の一実施形態の数値制御装置10の機能ブロック図である。
NCプログラムのブロック解析処理12では、NCメモリ11に格納されているNCプログラムの各ブロックを順次読込、実行データに変換するブロック解析処理を行う。移動指令量の分配処理16では、NCプログラムのブロック解析処理12で求められた各ブロックの実行データに基づいて、補間及び各軸への移動指令の分配処理を分配処理周期毎行い、各軸を駆動するサーボモータM1〜Mnに、それそれの移動指令量を出力し、各サーボ制御回路を介して各サーボモータM1〜Mnを駆動制御する。以上までの動作処理は従来の数値制御装置と同一である。
FIG. 4 is a functional block diagram of the numerical controller 10 according to one embodiment of the present invention.
In the block analysis process 12 of the NC program, each block of the NC program stored in the NC memory 11 is sequentially read and a block analysis process is performed to convert it into execution data. In the movement command amount distribution processing 16, interpolation and movement command distribution processing to each axis are performed for each distribution processing cycle based on the execution data of each block obtained in the block analysis processing 12 of the NC program. The movement command amount is output to each of the servomotors M1 to Mn to be driven, and the servomotors M1 to Mn are driven and controlled via each servo control circuit. The operation processing up to this point is the same as that of the conventional numerical control device.

本実施形態は、さらに、干渉が発生する機械の工具、ワーク、テーブル、コラムなどの干渉対象物の立体形状を定義し記憶する干渉対象物定義手段13を備える。又、可動部の先行位置予測と可動部1を駆動する各軸の最大/最小値保存処理15を行う。この処理は、移動指令量の分配処理16と同様に、NCプログラムのブロック解析処理12で求められた各ブロックの実行データより、補間及び各軸への移動指令の分配処理を分配処理周期毎行い、可動部の位置(可動部を駆動する各軸の位置)を求め記憶すると共に、後述する干渉チェック処理からの干渉チェックのための位置読み出し間における各軸の最大値及び最小値を求め記憶する処理であり、移動指令量の分配処理16よりも所定時間(分配処理周期×N)だけ先行して行う。   The present embodiment further includes an interference object defining means 13 for defining and storing a three-dimensional shape of an interference object such as a tool, work, table, column, etc. of a machine where interference occurs. Further, the preceding position prediction of the movable part and the maximum / minimum value storage process 15 for each axis that drives the movable part 1 are performed. In this process, similar to the movement command amount distribution process 16, interpolation and movement command distribution processing for each axis are performed for each distribution processing cycle based on the execution data of each block obtained in the block analysis process 12 of the NC program. The position of the movable part (the position of each axis that drives the movable part) is obtained and stored, and the maximum value and the minimum value of each axis during the position reading for the interference check from the interference check process described later are obtained and stored. This processing is performed prior to the movement command amount distribution processing 16 by a predetermined time (distribution processing cycle × N).

干渉チェック処理14は、干渉チェック処理周期毎に、先行位置予測と各軸の最大/最小値保存処理15で求められている、前回の干渉チェック時の読み出し時から、当該読み出し時までの干渉チェック読み出し間の各軸の最大位置及び最小位置を記憶するレジスタから、この最大位置、最小位置を読み出し、その後このレジスタに予測した先行位置を格納する(図4における各軸最大/最小座標値の取得処理21)。   The interference check process 14 is an interference check from the time of reading at the time of the previous interference check to the time of reading, which is obtained by the preceding position prediction and the maximum / minimum value storage process 15 of each axis for each interference check processing period. The maximum position and the minimum position are read from a register that stores the maximum position and the minimum position of each axis during reading, and then the predicted preceding position is stored in this register (acquisition of maximum / minimum coordinate values of each axis in FIG. 4). Process 21).

前回の干渉チェック時の読み出し時に読み出した位置(可動部を駆動する各軸の位置)Aと今回の干渉チェック時に読み出した可動部の位置Bへ移動の間における各軸の最大位置、最小位置と干渉対象物定義手段13で定義されている可動部1の立体形状に基づいて、干渉チェック用の立体領域4を作成する(図4におけるチェック用の立体領域作成処理22)。さらに、チェック用の立体領域作成処理22で求められた立体領域4と干渉対象物定義手段13に記憶する他の干渉対象物2との干渉が発生しているか判別する干渉チェック処理を行う(図4における干渉対象物と立体領域の干渉チェック処理23)。   The maximum position and the minimum position of each axis between the position (position of each axis that drives the movable part) A read during the previous interference check and the movement to the position B of the movable part read during the current interference check Based on the three-dimensional shape of the movable part 1 defined by the interference object defining means 13, the three-dimensional area 4 for interference check is created (three-dimensional area creation process for check 22 in FIG. 4). Further, an interference check process is performed to determine whether or not there is interference between the three-dimensional area 4 obtained in the check three-dimensional area creation process 22 and another interference object 2 stored in the interference object definition means 13 (FIG. 4. Interference check processing 23) between the interference object and the three-dimensional area.

この干渉チェック処理により、干渉が発生すると判断された時には、分配停止処理17を行い移動指令量の分配処理16を停止させ、各軸のサーボモータの移動を停止させる。この結果、先行位置予測と各軸の最大/最小値保存処理15は、移動指令量の分配処理16での実行よりも所定時間(分配処理周期×N)だけ早くNCプログラムのブロックの指令を実行する(同じブロックの指令を移動指令量の分配処理16は、先行位置予測と各軸の最大/最小値保存処理15よりも所定時間遅れて補間分配処理を行う)ことから、実際に可動部1が干渉位置に移動する前に、干渉することが予測され、移動が停止することから、干渉を回避することができる。   When it is determined by this interference check process that interference occurs, a distribution stop process 17 is performed to stop the movement command amount distribution process 16 and stop the movement of the servo motors of the respective axes. As a result, the preceding position prediction and the maximum / minimum value storage processing 15 of each axis execute the NC program block command earlier by a predetermined time (distribution processing cycle × N) than the movement command amount distribution processing 16. (The movement command amount distribution processing 16 is performed for the same block with a predetermined time later than the preceding position prediction and the maximum / minimum value storage processing 15 for each axis), so that the movable part 1 is actually operated. Interference is predicted before moving to the interference position, and the movement stops, so that interference can be avoided.

しかも、図3で説明したように、干渉チェックのための位置読み出し間隔内における可動部1を駆動する各軸の最大/最小座標値に基づいて、可動部の立体の移動による干渉チェック用の立体領域4を作成して、この立体領域4と干渉対象物2との干渉発生かを判断することから、干渉発生の見落としがなく確実に干渉発生を予測することができる。   In addition, as described with reference to FIG. 3, a solid for interference check by moving the solid of the movable part based on the maximum / minimum coordinate value of each axis that drives the movable part 1 within the position reading interval for interference check. Since the region 4 is created and it is determined whether the interference between the three-dimensional region 4 and the interference object 2 occurs, it is possible to reliably predict the occurrence of interference without overlooking the occurrence of interference.

図5は、数値制御装置のプロセッサ(CPU)が先行位置予測と各軸の最大/最小値保存処理15として実施する処理のアルゴリズムを示すフローチャートである。この処理は、前述したように、数値制御装置が通常行う移動指令量の分配処理16と同じ周期で、該分配処理より所定時間早く(分配周期×Nの時間だけ早い時間)処理を開始するものである。そのため、通常の移動指令量の分配処理16は、この先行位置予測と各軸の最大/最小値保存処理15より所定時間遅れて実行されることになる。   FIG. 5 is a flowchart showing an algorithm of processing executed by the processor (CPU) of the numerical controller as the preceding position prediction and the maximum / minimum value storage processing 15 of each axis. As described above, this process starts the process at the same cycle as the movement command amount distribution process 16 normally performed by the numerical control device, a predetermined time earlier than the distribution process (a time earlier by the distribution period × N). It is. Therefore, the normal movement command amount distribution process 16 is executed after a predetermined time delay from the preceding position prediction and the maximum / minimum value storage process 15 of each axis.

まず、プロセッサはNCプログラムのブロック解析処理によって求められているブロックの実行データを最初より読み出し(ステップa1)、該実行データに基づいて、補間、分配処理を行い、分配周期毎の各軸への移動指令量を求める(ステップa2)。
この各軸への移動指令量より各軸の予測位置(座標値)を求める(ステップa3)。
次に、干渉チェック周期間の各軸の最大位置(座標値)を記憶するレジスタRmaxの値とステップa3で求めた各軸のそれぞれの値を比較し、ステップa3で求めた位置(座標値)の方が大きければ、該レジスタRmaxにこの値を格納する。同様に、干渉チェック周期間の各軸の最小位置(座標値)を記憶するレジスタRminの値とステップa3で求めた各軸のそれぞれの値を比較し、ステップa3で求めた値の方が小さければ、該レジスタRminにこの値を格納する(ステップa4)。こうして各軸毎に最大位置、最小位置をレジスタRmax、Rminに更新記憶する。なお、最初は、運転開始時の各軸位置(座標値)が、このレジスタRmax、Rminに初期設定されている。
First, the processor reads the execution data of the block obtained by the block analysis processing of the NC program from the beginning (step a1), performs interpolation and distribution processing based on the execution data, and applies to each axis for each distribution cycle. A movement command amount is obtained (step a2).
The predicted position (coordinate value) of each axis is obtained from the movement command amount to each axis (step a3).
Next, the value of the register Rmax that stores the maximum position (coordinate value) of each axis during the interference check cycle is compared with the value of each axis obtained in step a3, and the position (coordinate value) obtained in step a3. If is larger, this value is stored in the register Rmax. Similarly, the value of the register Rmin that stores the minimum position (coordinate value) of each axis during the interference check period is compared with the value of each axis obtained in step a3, and the value obtained in step a3 is smaller. For example, this value is stored in the register Rmin (step a4). Thus, the maximum position and the minimum position are updated and stored in the registers Rmax and Rmin for each axis. Initially, the axis positions (coordinate values) at the start of operation are initially set in the registers Rmax and Rmin.

次に、干渉チェック処理からの位置読み出し入力があるか判断し(ステップa5)、読み出し入力がなければ、ステップa7に移行する。又、読み出し入力があるときは、レジスタRmax、Rminに記憶する最大位置及び最小位置を干渉チェック処理に引き渡し、各軸の最大位置、最小位置を記憶するレジスタをRmax、Rminにステップa3で求めた各軸の予測位置をそれぞれ格納する(ステップa6)。   Next, it is determined whether there is a position reading input from the interference check process (step a5). If there is no reading input, the process proceeds to step a7. When there is a read input, the maximum and minimum positions stored in the registers Rmax and Rmin are transferred to the interference check process, and registers for storing the maximum and minimum positions of each axis are obtained in Rmax and Rmin in step a3. The predicted position of each axis is stored (step a6).

そして、機械停止指令が発生したか判断し(ステップa7)、機械停止指令が発生していなければ、当該ブロックの補間分配処理が終了したか判断し、終了してなければ、ステップa2に戻り、又、終了していればステップa1に戻り、前述した処理を補間分配周期毎実施する。
以上のように、先行位置予測と各軸の最大/最小値保存処理では、実際に各軸のサーボモータへの移動指令量の補間分配を行う時より所定時間(所定周期)前に、可動部1を駆動する各軸の予測位置(座標値)と、前回の干渉チェック時と今回の干渉チェック時間における各軸の最大位置、最小位置が求め、干渉チェック時にこの各軸の最大位置、最小位置が読み出されることになる。
Then, it is determined whether or not a machine stop command has been generated (step a7). If no machine stop command has been generated, it is determined whether or not the interpolation / distribution process for the block has been completed. If not, the process returns to step a2. If completed, the process returns to step a1, and the above-described processing is performed every interpolation distribution period.
As described above, in the preceding position prediction and the maximum / minimum value storage processing of each axis, the movable unit is moved a predetermined time (predetermined cycle) before the actual interpolation of the movement command amount to the servo motor of each axis. The predicted position (coordinate value) of each axis that drives 1 and the maximum and minimum positions of each axis during the previous interference check and the current interference check time are obtained, and the maximum and minimum positions of each axis are determined during the interference check. Will be read out.

図6は、干渉チェック処理14として、数値制御装置のプロセッサが干渉チェック処理周期毎に実施する処理のアルゴリズムを示すフローチャートである。
まず、レジスタRmax、Rminに記憶する最大位置、最小位置を読み出す(ステップb1)。
この読み出した最大位置と最小位置、さらに、各軸で駆動される可動部1の定義されている立体形状に基づいて、干渉チェック用の立体領域4を作成する(ステップb2)。
FIG. 6 is a flowchart showing an algorithm of a process performed as the interference check process 14 by the processor of the numerical controller every interference check process cycle.
First, the maximum position and the minimum position stored in the registers Rmax and Rmin are read (step b1).
On the basis of the read maximum position and minimum position, and the three-dimensional shape of the movable unit 1 driven by each axis, a solid area 4 for interference check is created (step b2).

求めた立体領域4と定義されている干渉対象物の間で干渉が発生するかの干渉チェックを行い(ステップb3)、干渉が発生するか否か判断し(ステップb4)、干渉が発生しなければ、ステップb1に戻る。以下、干渉チェック周期毎にステップb1からステップb4の処理を繰り返し実行して、干渉チェックを行う。ステップb4で干渉が発生すると判断されたときには、機械停止指令を出力し(ステップb5)、各軸のサーボモータへの移動指令量の分配処理(図4の16の処理)を停止させ、機械の動作を停止させる。   An interference check is performed to determine whether interference occurs between the obtained three-dimensional region 4 and the defined interference object (step b3), and it is determined whether interference occurs (step b4). Then, the process returns to step b1. Hereinafter, the interference check is performed by repeatedly executing the processing from step b1 to step b4 for each interference check period. If it is determined in step b4 that interference will occur, a machine stop command is output (step b5), the movement command amount distribution process (process 16 in FIG. 4) to the servo motors of each axis is stopped, and the machine Stop operation.

従来の干渉チェックの説明図である。It is explanatory drawing of the conventional interference check. 従来の干渉チェックの説明図である。It is explanatory drawing of the conventional interference check. 本発明の干渉チェックの原理説明図である。It is principle explanatory drawing of the interference check of this invention. 本発明の一実施形態の数値制御装置の機能ブロック図である。It is a functional block diagram of the numerical control apparatus of one Embodiment of this invention. 同実施形態における先行位置予測と各軸の最大/最小位置保存処理のアルゴリズムを示すフローチャートである。It is a flowchart which shows the algorithm of the preceding position prediction in the same embodiment, and the maximum / minimum position preservation | save process of each axis | shaft. 同実施形態における干渉チェック処理のアルゴリズムを示すフローチャートである。It is a flowchart which shows the algorithm of the interference check process in the embodiment.

符号の説明Explanation of symbols

1 可動部
2 干渉対象物
10 数値制御装置
M1〜Mn サーボモータ
A 前回の干渉チェック時の可動部の位置
B 今回の干渉チェック時の可動部の位置
C 通過点位置
DESCRIPTION OF SYMBOLS 1 Movable part 2 Interference object 10 Numerical control apparatus M1-Mn Servo motor A Position of the movable part at the time of the previous interference check B Position of the movable part at the time of the current interference check C Passing point position

Claims (1)

自動運転中に干渉チェックを行なう機能を有する数値制御装置において、前回の干渉チェック時の可動部の位置から、今回の干渉チェック時の可動部の位置までの移動における各軸の最大位置、最小位置を取得する手段と、予め定義されている可動部の立体形状が、前記取得した各軸の最小位置から最大位置まで移動する立体領域を作成する手段と、該立体領域が予め定義されている干渉対象物の形状に対して干渉するかをチェックする手段を備えることを特徴とする数値制御装置。   In a numerical control device that has a function of performing an interference check during automatic operation, the maximum and minimum positions of each axis in the movement from the position of the movable part at the previous interference check to the position of the movable part at the current interference check Means for obtaining a three-dimensional area in which the three-dimensional shape of the movable part defined in advance moves from the minimum position to the maximum position of each of the obtained axes, and interference in which the three-dimensional area is defined in advance. A numerical control apparatus comprising: means for checking whether interference occurs with a shape of an object.
JP2006247691A 2006-09-13 2006-09-13 Numerical controller Pending JP2008071015A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006247691A JP2008071015A (en) 2006-09-13 2006-09-13 Numerical controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006247691A JP2008071015A (en) 2006-09-13 2006-09-13 Numerical controller

Publications (1)

Publication Number Publication Date
JP2008071015A true JP2008071015A (en) 2008-03-27

Family

ID=39292560

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006247691A Pending JP2008071015A (en) 2006-09-13 2006-09-13 Numerical controller

Country Status (1)

Country Link
JP (1) JP2008071015A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010244256A (en) * 2009-04-03 2010-10-28 Fanuc Ltd Numerical controller having interference check function
JP2017027501A (en) * 2015-07-27 2017-02-02 ファナック株式会社 Machine tool-robot real-time intervention confirmation system
JP2017076211A (en) * 2015-10-14 2017-04-20 ファナック株式会社 Numerical control device performing positioning for avoiding interference with work
JP2019101590A (en) * 2017-11-30 2019-06-24 ファナック株式会社 Information processing device
JP2021015333A (en) * 2019-07-10 2021-02-12 株式会社小松製作所 Machine tool system and method of estimating machine tool specifications

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010244256A (en) * 2009-04-03 2010-10-28 Fanuc Ltd Numerical controller having interference check function
JP2017027501A (en) * 2015-07-27 2017-02-02 ファナック株式会社 Machine tool-robot real-time intervention confirmation system
US10071480B2 (en) 2015-07-27 2018-09-11 Fanuc Corporation Real-time interference check system of machine tool and robot
JP2017076211A (en) * 2015-10-14 2017-04-20 ファナック株式会社 Numerical control device performing positioning for avoiding interference with work
US10444728B2 (en) 2015-10-14 2019-10-15 Fanuc Corporation Numerical controller performing positioning for avoiding interference with workpiece
JP2019101590A (en) * 2017-11-30 2019-06-24 ファナック株式会社 Information processing device
US10838395B2 (en) 2017-11-30 2020-11-17 Fanuc Corporation Information processing device
JP2021015333A (en) * 2019-07-10 2021-02-12 株式会社小松製作所 Machine tool system and method of estimating machine tool specifications
JP7316126B2 (en) 2019-07-10 2023-07-27 株式会社小松製作所 Machine tool system and method of estimating machine tool specifications

Similar Documents

Publication Publication Date Title
JP4920785B2 (en) Numerical control method and apparatus
JP6457468B2 (en) Deburring device
JP5000543B2 (en) Machine tool control method and apparatus therefor
JP4298770B2 (en) Numerical control device with interference check function
JP6140130B2 (en) Numerical control device for protecting tools and workpieces
US9002500B2 (en) Numerical control device
JP4847428B2 (en) Machining simulation apparatus and program thereof
JP6706518B2 (en) Processing time prediction device, cutting processing system, and processing time prediction method
JP2019152936A (en) Machine tool machining simulation device
JP2008071015A (en) Numerical controller
JP3853752B2 (en) Simulation device
CN109874403B (en) Numerical control device
JP2007172068A (en) Numerical control device
CN102439525A (en) Method and device for machining simulation and program for allowing computer to execute the method
Schumann et al. A real-time collision prevention system for machine tools
JP5030628B2 (en) Interference check system
JP6026484B2 (en) System that enables independent control of peripheral equipment of machine tools
JP5439062B2 (en) Method for preventing collision of machine tools
JP2008226112A (en) Numerically controlled apparatus
JP6316919B2 (en) Numerical control device for machine tools
JP2009053823A (en) Machining simulation device
JP4112433B2 (en) Numerical control device for machine tool and numerical control method for machine tool
JP4867876B2 (en) Numerical control device, numerical control program, and storage medium storing numerical control program
WO2020065854A1 (en) Workpiece position detecting method and machine tool
JP6777516B2 (en) Information processing device