JP5492034B2 - Collision prevention device in numerical control device - Google Patents
Collision prevention device in numerical control device Download PDFInfo
- Publication number
- JP5492034B2 JP5492034B2 JP2010201046A JP2010201046A JP5492034B2 JP 5492034 B2 JP5492034 B2 JP 5492034B2 JP 2010201046 A JP2010201046 A JP 2010201046A JP 2010201046 A JP2010201046 A JP 2010201046A JP 5492034 B2 JP5492034 B2 JP 5492034B2
- Authority
- JP
- Japan
- Prior art keywords
- speed
- interference
- feed
- limit value
- collision
- 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
- 230000002265 prevention Effects 0.000 title claims description 10
- 238000000034 method Methods 0.000 claims description 40
- 238000004088 simulation Methods 0.000 claims description 13
- 230000008569 process Effects 0.000 description 22
- 230000001133 acceleration Effects 0.000 description 5
- 238000007665 sagging Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000004364 calculation method Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
Landscapes
- Numerical Control (AREA)
Description
本発明は、数値制御装置における衝突防止装置に関する。 The present invention relates to a collision prevention device in a numerical control device.
図8に従来技術の数値制御装置における衝突防止装置の構成を示す。工作機械自体は図示していないが、Z軸とX軸の2軸を有する工作機械を例にしており、軸を駆動することでワークと工具を相対的に移動させ加工を行う。 FIG. 8 shows a configuration of a collision preventing device in a conventional numerical control device. Although the machine tool itself is not shown in the figure, a machine tool having two axes of the Z axis and the X axis is taken as an example, and the workpiece and the tool are moved relative to each other by driving the axis.
プログラム解釈手段12は、数値制御装置の制御のためのパートプログラム10を1ブロックずつ読み込み、そこに指令されている経路、送り速度などを解釈し、関数発生手段16で実行可能な形の実行データを生成する。生成された実行データは一旦バッファ14に格納される。これは時間のかかる解釈処理などを先行して実施し実行データを溜めこんでおくことで、1ブロック分の関数発生に要する時間との差を緩和し、滞りなく実行するための緩衝器である。
The program interpreting means 12 reads the
関数発生手段16は、バッファ14に格納されている実行データを順次読み出し、実行データにある指令経路上を、実行データに示された目標位置まで、指令された送り速度で一定時間(関数発生周期)毎に補間していく。
The
補間点は関数発生周期毎の移動指令に変換されたうえで軸毎の指令に分けられ、X軸駆動手段17X及びZ軸駆動手段17Zが備える加減速手段18X及び18Zにて機械動作の際に不要な衝撃を与えないような時定数で加減速処理を施された後、サーボ20X及び20Zに渡される。サーボ20X及び20Zは与えられた指令にしたがい、機械を駆動するモータを検出器によりフィードバック制御する(モータ及び検出器22X及び22Z)。
Interpolation points are converted into movement commands for each function generation cycle and then divided into commands for each axis. When the mechanical operation is performed by the acceleration /
さて、図8における衝突防止は、工作機械がパートプログラム10にしたがって動作するとき、衝突すると判断されたブロックの関数発生をしないことで実現している。
Now, the collision prevention in FIG. 8 is realized by not generating a function of a block determined to collide when the machine tool operates according to the
干渉チェック手段26は、モデルデータ24を仮想空間内で組立て、移動体を実行データの指令経路にしたがって移動させ干渉の有無を判断する。モデルデータ24とは、工作機械の可動部単位や可変単位、つまり工作機械本体や送り軸、工具、ワークといった干渉チェックする干渉チェック対象物の形状を個別に数値として保持しているデータ群である。干渉の有無の判断は1ブロック毎に行い、干渉有無のデータは実行データのひとつとしてバッファ14に格納していく。
The interference check means 26 assembles the
実行管理手段28は、実行ブロックに干渉がなかった場合には通常に関数発生手段にて補間を実行させるが、干渉があった場合には補間をさせず、干渉を検出した旨の警告を出す。
When there is no interference in the execution block, the
図8のような従来技術での衝突防止装置では、干渉しないと判断されても実際には干渉してしまう場合がある。軸駆動手段17X及び17Zの加減速手段18X及び18Zにおいて追従遅れによる軌跡のダレが生じるためで、実際の機械の動き(制御する工具の軌跡)は、指令とは異なってしまうためである。 In the conventional anti-collision device as shown in FIG. 8, even if it is determined that there is no interference, there may be actual interference. This is because sagging of the trajectory due to follow-up delay occurs in the acceleration / deceleration means 18X and 18Z of the shaft driving means 17X and 17Z, and the actual machine movement (the trajectory of the tool to be controlled) differs from the command.
この問題を解決するために、出願人は、図9のような衝突防止装置を提案した(特許文献1。例えば図2参照)。この装置では、指令軌跡に加え、実際の機械の動き(ダレた軌跡)に対しても干渉チェックを行うことで、干渉の見逃しを少なくするものである。関数発生手段16による移動指令の実行に先立ち、局部シミュレーション手段40が備える局部関数発生シミュレーション手段42及び局部加減速シミュレーション手段44によりダレた軌跡を求め、これを干渉チェックすることで、干渉の見逃しの低減を実現している。なお、直線化許容量48の範囲内の軌跡はチェック対象選択手段46により干渉チェックの対象から外すことで、干渉チェック手段26の計算負荷を低減している。
In order to solve this problem, the applicant has proposed a collision prevention apparatus as shown in FIG. 9 (
しかしながら、図9の衝突防止装置では、干渉すると判断されても実際には干渉しない場合がある。軌跡がダレる量は送り速度に依存するが、移動指令の実行においてオペレータが送り速度を変更することは普通に行われる。たとえば、移動指令の実行において送り速度を指令の半分で送った場合、ダレの量も事前の局部シミュレーションの半分程度になるので、干渉チェック時点で干渉すると判断されても、実際には衝突しない場合がありうる。事前のシミュレーション時点では実際の送り速度がわからないためである。このようなケースだと、干渉検知の都度衝突防止のために送りが止まるので、復旧に手間がかかるという問題につながる。 However, in the collision prevention apparatus of FIG. 9, even if it is determined that interference occurs, there is a case where the interference does not actually occur. Although the amount of trajectory sagging depends on the feed rate, it is normal for the operator to change the feed rate when executing the movement command. For example, if the feed speed is sent at half of the command in the execution of the movement command, the amount of sag is also about half that of the local simulation in advance. There can be. This is because the actual feed rate is not known at the time of prior simulation. In such a case, the feed stops to prevent a collision every time interference is detected, leading to a problem that it takes time to recover.
本発明は、実際の送り速度が指令値から変更される場合に対応して、衝突防止のために送り停止となるケースを少なくすることができる衝突防止装置を提供するものである。 The present invention provides a collision prevention device that can reduce the number of cases where the feed is stopped to prevent a collision in response to a case where the actual feed speed is changed from a command value.
1つの側面では、本発明は、機械動作時の衝撃を和らげるため関数発生後に移動体の移動速度を加減速処理する工作機械の数値制御装置にて、プログラム指令の実行前に、前記プログラム指令において指令された移動体の移動経路及びこの指令された移動経路からダレた経路と干渉チェック対象物との干渉チェックを行い、干渉すると判断された場合には関数発生をしないことで衝突を防止する衝突防止装置において、前記プログラム指令による実行データに対して、指示された送り速度に従ってシミュレーションを行うことによって移動経路を生成する経路生成手段と、前記経路生成手段からの移動経路について干渉チェック対象物との干渉チェックを行い、干渉の有無を判断する干渉チェック手段と、前記プログラム指令における送り速度から規定される送り速度の上限値と送り速度の下限値から始め、2分法により中間速度を決めながら、それぞれの送り速度を前記経路生成手段に指示してその送り速度での移動経路を生成させ、それらの移動経路と干渉チェック対象物との干渉の有無に基づき、移動経路と干渉チェック対象物とが衝突する速度帯域を判定する制限判断手段と、前記制限判断手段により判定された前記衝突する速度帯域に基づき、関数発生の送り速度を制御する送り速度制限手段であって、前記プログラム指令における送り速度での移動経路が干渉チェック対象物と干渉する場合でも、前記プログラム指令が実行されるときの送り速度である実行時速度が前記速度帯域外であれば、その実行時速度にて移動体を送るよう制御する送り速度制限手段と、を備える。 In one aspect, the present invention provides a numerical control device for a machine tool for accelerating / decelerating a moving speed of a moving body after generating a function in order to reduce an impact during machine operation. Collision that prevents the collision by performing interference check between the movement path of the commanded moving body and the path sagging from the commanded movement path and the interference check object, and if it is determined that interference will occur In the prevention apparatus, a path generation unit that generates a movement path by performing a simulation according to an instructed feed speed on the execution data according to the program command, and an interference check target for the movement path from the path generation unit Interference check means for performing an interference check and determining the presence or absence of interference, and a feed speed in the program command Starting from the upper limit value of the feed rate and the lower limit value of the feed rate specified from the above, the intermediate speed is determined by the bisection method, and each path speed is instructed to the path generation means to generate the movement path at that feed speed Limit determination means for determining a speed band where the movement path and the interference check target collide based on the presence or absence of interference between the movement path and the interference check target, and the collision determined by the limit determination means Feed rate limiting means for controlling a feed rate generated by a function based on a speed band to be executed, and the program command is executed even when a movement path at the feed rate in the program command interferes with an interference check object. Feed rate limiting means for controlling the mobile body to be fed at the run-time speed if the run-time speed that is the feed speed is out of the speed band. .
1つの態様では、前記送り速度制限手段は、前記プログラム指令が実行されるときの送り速度が前記速度帯域内であればその送り速度をその速度帯域の下限の速度に変更することで衝突を回避する、ことを特徴とする。 In one aspect, the feed speed limiting means avoids a collision by changing the feed speed to the lower limit speed of the speed band if the feed speed when the program command is executed is within the speed band. It is characterized by.
複数の送り速度でのシミュレーションにより移動軌跡についての干渉チェックを行うことで衝突する速度帯域をあらかじめ求めておき、実行時の送り速度がその帯域内か否かで制御を切り替えるので、プログラムの速度指令では干渉が生じると判断される場合でも実際の送り速度では干渉しないケースには送り停止を行わないようにことができる。つまり、実際の送り速度の変更に対応でき、操作性が向上する。 By checking the movement trajectory by performing simulations with multiple feed speeds, the collision speed band is obtained in advance, and control is switched depending on whether the feed speed at execution is within that band. Then, even when it is determined that interference occurs, it is possible to prevent the feed from being stopped in cases where there is no interference at the actual feed speed. That is, it is possible to cope with a change in actual feed speed, and operability is improved.
また、1つの態様では、送り速度を遅くすれば干渉しない場合にはその速度へと自動的に制限するので、衝突防止のために送り停止となるケースが少なくなり、停止からの復旧に要する手間や時間が少なくなる分、生産効率が上がる。 Also, in one aspect, if the feed speed is slowed down, if there is no interference, the speed is automatically limited to that speed, so the number of cases where the feed stops to prevent collisions is reduced, and the effort required to recover from the stop is reduced. And the production efficiency increases as time is reduced.
図1に、本発明の実施形態の構成の一例を示す。図1において、図9に示した要素と同様の要素には同一符号を付して詳細な説明を省略する。 FIG. 1 shows an example of the configuration of the embodiment of the present invention. 1, the same elements as those shown in FIG. 9 are denoted by the same reference numerals, and detailed description thereof is omitted.
図1の経路生成手段30は、図9(特許文献1の図2の例に対応)の局部シミュレーション手段40とチェック対象選択手段46と直線化許容量48を包含したものに相当する。ただし、本実施形態の経路生成手段30は、内包する局部シミュレーション手段40の局部関数発生シミュレーション手段42に相当する機能モジュール(図示省略)に対して、外部から送り速度を指定できるようになっている点が、図9に示した特許文献1の構成とは異なる。なお、局部シミュレーション手段40とチェック対象選択手段46と直線化許容量48の機能や処理内容については特許文献1に詳しく説明されているので、この明細書では、経路生成手段30が備えるそれらモジュールの機能についての説明は省略する。
The
特許文献1の装置では、指令軌跡か指令速度のダレた軌跡において干渉を検出した場合に、衝突防止のために関数発生を停止する。図6aは工具等の移動体をP[-1]からP[0]に移動するブロックとP[0]からP[1]に移動するブロックとの2つのブロックを含んだ指令を受けた場合の動作例である。またワークは干渉チェック対象物の一例である。指令軌跡では移動体はワークに干渉しないが、指令速度のダレた軌跡ではワークとの干渉が検知されるので、2番目のブロックの関数発生は行われず、P[0]で止まってワークとの衝突が回避される。(なおこの例では、その後このままプログラムを再開しても、P[0]からP[1]の軌跡上を移動するので、衝突は起きない。)
In the apparatus of
本実施形態の構成においても、特許文献1の図2の例と同じようにダレた軌跡に対する干渉チェックを行うが、本実施形態では複数の送り速度でこれを行う点が特許文献1の場合と異なる。このような複数の送り速度でのチェックを実行するのが制限判断手段32である。制限判断手段32は、送り速度の上限値と送り速度の下限値から始め、2分法により中間速度を決めながら、それぞれの速度を経路生成手段30に指示し、それぞれの速度での移動体の移動経路を生成させる。そして、それら各速度の経路とワークとの干渉の有無に基づき、衝突する速度帯域(すなわち移動体とワークの干渉が生じる移動体速度の範囲)を求める。
Even in the configuration of the present embodiment, the interference check is performed on the sagging locus in the same manner as in the example of FIG. 2 of
この処理の具体的な例を図2のフローチャートに示す。図2では説明の都合上、速度を基準速度に対する%で表記している。基準速度が明確であれば%表記でも等価である。また、送りオーバーライドと表記している図もあるがこれも%表記の送り速度と等価である。本例では、一例として、送り速度の上限値を100%、下限値を1%と定めた。 A specific example of this processing is shown in the flowchart of FIG. In FIG. 2, for convenience of explanation, the speed is expressed as% with respect to the reference speed. If the reference speed is clear, the% notation is equivalent. In addition, there is a figure that is described as a feed override, but this is also equivalent to the feed speed in% notation. In this example, as an example, the upper limit value of the feed rate is set to 100% and the lower limit value is set to 1%.
また「高速側制限値」と「低速側制限値」は衝突する速度帯域の上限と下限を示すデータである。また、「高速側制限値:なし」とは、「低速側制限値」から送り速度の上限値(この例では基準速度の100%)までの速度帯域で、送り速度の制限が行われることを意味する。 The “high speed side limit value” and the “low speed side limit value” are data indicating the upper limit and the lower limit of the collision speed band. “High speed limit value: None” means that the feed speed is limited in the speed band from the “low speed limit value” to the upper limit value of the feed speed (100% of the reference speed in this example). means.
図6aと同じケースを例にとって、制限判断手段32の処理を説明する。まず、送りオーバーライド(送り速度)100%と1%、そしてその中間速度として50%の3種類の速度で移動体を送った場合の移動体の軌跡(経路)を経路生成手段30に生成させ、これら経路とワークとの干渉チェックを行う(S10,S12,S14)。そして、それら3種類の速度での移動体経路について、ワークとの干渉が生じたかどうかを判定する。この際、干渉有無の判定は低速の経路から順に行っていく(S16,S18,S20)。
Taking the same case as in FIG. 6a as an example, the processing of the
なお、各速度についての経路生成手段30による移動体の移動経路の算出や、干渉チェック手段26によるその軌跡とワークとの干渉の判定は、特許文献1に示される技術を用いて行えばよい。
The calculation of the moving path of the moving body by the
この手順で、速度1%(S16)でも速度50%(S18)でも干渉しないと判定した場合、更に速度100%で干渉が発生するか否かを判定する(S20)。その結果、速度100%でも干渉が発生しないと判定した場合、制限判断手段32は、高速側制限値を0(ゼロ)に設定する(S54)。高速度制限値が0である場合、本実施形態の装置では、送り速度の制限を行わない。すなわち、指示された送り速度をそのまま用いて移動体を移動させる。速度1%、50%、100%のいずれでも干渉が発生しないと判定されるので、全速度範囲にわたって干渉が発生しない可能性が極めて高いと判断されるからである。 If it is determined in this procedure that no interference occurs even at a speed of 1% (S16) or a speed of 50% (S18), it is further determined whether or not interference occurs at a speed of 100% (S20). As a result, when it is determined that interference does not occur even at a speed of 100%, the limit determination means 32 sets the high speed side limit value to 0 (zero) (S54). When the high speed limit value is 0, the apparatus of this embodiment does not limit the feed speed. That is, the moving body is moved using the instructed feed speed as it is. This is because it is determined that no interference occurs at any of the speeds of 1%, 50%, and 100%, and therefore it is determined that there is an extremely high possibility that no interference occurs over the entire speed range.
一方、S20において、速度100%で干渉があると判定した場合、制限判断手段32は、(100%は送り速度の上限なので)干渉が発生する可能性が高い範囲の上限速度(高速側制限値と呼ぶ)は100%(なお、この実施形態では、高速側制限値が100%の場合、高速側制限値を「なし」と表現する)とするとともに(S46)、その範囲の下限速度である低速側制限値を求める(S48〜S52)。 On the other hand, if it is determined in S20 that there is interference at a speed of 100%, the limit determination means 32 determines the upper limit speed (high speed side limit value) in a range where interference is likely to occur (since 100% is the upper limit of the feed speed). Is 100% (in this embodiment, when the high speed side limit value is 100%, the high speed side limit value is expressed as “none”) (S46), and the lower limit speed of the range. A low speed side limit value is obtained (S48 to S52).
送り速度100%、50%及び1%のそれぞれの場合の軌跡を図6bに示す。図6bの例では、送り速度100%の軌跡だけが干渉すると判断される。この場合、S20の判定結果が「あり」となり、図2の右から2列目のパスを通ることになる。この場合、制限判断手段32は、「高速側制限値」を「なし」に設定するが(S46)、「低速側制限値」は50%よりも高い速度であると推定できるので(1%でも50%でも干渉しないため)、A=100%、B=50%に設定し(S48)、2分法による絞り込みを行う。これが「制限値上昇絞り込み」処理(S50)である。 The trajectories for each of the feed rates of 100%, 50% and 1% are shown in FIG. 6b. In the example of FIG. 6b, it is determined that only a trajectory with a feed rate of 100% interferes. In this case, the determination result in S20 is “Yes”, and the path in the second column from the right in FIG. In this case, the restriction determination means 32 sets the “high speed side limit value” to “none” (S46), but since the “low speed side limit value” can be estimated to be a speed higher than 50% (even 1%). Since no interference occurs even at 50%), A = 100% and B = 50% are set (S48), and narrowing down by the bisection method is performed. This is the “limit value increase narrowing” process (S50).
「制限値上昇絞り込み」処理S50の詳細な手順の例を図3に示す。この処理は、二分法により速度の制限値を徐々に上昇させながら、適切な制限値を判定するための処理である。「制限値上昇絞り込み」処理では、AとBの中間速度C(図示例ではAとBの平均)を計算し(S100)、その中間速度Cでの移動体の移動経路を生成して干渉チェックを行い(S102)、干渉の有無を判定する(S104)。この例では、1回目の呼び出しでは、データAに100%を、データBに50%が設定されている。したがって、AとBの中間速度Cは75%である。送り速度75%の場合の軌跡が、図6cのようであったとすると、干渉なしとなる。この判定の後、2分法の繰り返し回数が所定回数に達したかどうかを判定する(S106)。この繰り返し回数を多くするほど、処理に要する時間が長くなるものの、制限値の絞り込みが細やかになる。「所定回数」の値は、この処理所要時間と絞り込みの細かさのトレードオフを考慮してあらかじめ定めておく。繰り返し回数が所定回数に達していれば、制限値RにCを代入して(S108)、処理を終える。この制限値Rが呼び出し側のルーチン(特に図2のS50)に戻される。図2のS52では、この制限値Rを低速側制限値とする。 An example of a detailed procedure of the “limit value increase narrowing” process S50 is shown in FIG. This process is a process for determining an appropriate limit value while gradually increasing the speed limit value by the bisection method. In the “limit value increase narrowing down” process, an intermediate speed C between A and B (average of A and B in the illustrated example) is calculated (S100), and a moving path of the moving body at the intermediate speed C is generated to check interference. (S102) and the presence or absence of interference is determined (S104). In this example, in the first call, 100% is set for data A and 50% is set for data B. Therefore, the intermediate speed C between A and B is 75%. If the trajectory when the feed rate is 75% is as shown in FIG. 6c, there is no interference. After this determination, it is determined whether or not the number of repetitions of the bisection method has reached a predetermined number (S106). As the number of repetitions increases, the time required for processing increases, but the limit value becomes narrower. The value of “predetermined number of times” is determined in advance in consideration of the trade-off between the processing time required and the fineness of narrowing down. If the number of repetitions has reached the predetermined number, C is substituted for the limit value R (S108), and the process ends. This limit value R is returned to the calling routine (especially S50 in FIG. 2). In S52 of FIG. 2, the limit value R is set as a low speed side limit value.
例えば、「所定回数」を1回とすると、この例ではすでに中間速度75%について干渉チェックを1回済ませているので、S106の判定はYesとなり、その結果としての制限値Rが75%となる(S108)。これを呼び出し側で「低速側制限値」として保持する(図2のS52)。 For example, if the “predetermined number of times” is 1, in this example, the interference check has already been completed once for the intermediate speed of 75%, so the determination in S106 is Yes, and the resulting limit value R is 75%. (S108). This is held as the “low speed limit value” on the calling side (S52 in FIG. 2).
この例では、以上のような処理により、制限判断手段32は、「高速側制限値:なし」「低速側制限値=75%」を決定する。 In this example, the limit determination means 32 determines “high speed side limit value: none” and “low speed side limit value = 75%” by the processing as described above.
なお、S106で繰り返しが所定回数に達していない場合は、制限判断手段32は、今回求めた中間速度Cを低速側の速度Bに代入し(S110)、S100以降の処理を繰り返す。
If the number of repetitions has not reached the predetermined number in S106, the
また、S104で「干渉あり」と判定した場合、2分法の繰り返し回数があらかじめ定めた所定回数に達しているかどうかを判定する(S112)。所定回数に達していれば、制限値RにBを代入し(S114)、この制限値Rを呼び出し側ルーチンに戻す。S112で、繰り返し回数が所定回数に達していない場合は、S100で計算した中間速度Cを高速側の速度Aに代入し(S116)、S100以降の処理を繰り返す。 If it is determined that there is “interference” in S104, it is determined whether the number of repetitions of the bisection method has reached a predetermined number of times (S112). If the predetermined number of times has been reached, B is substituted for the limit value R (S114), and this limit value R is returned to the calling routine. If the number of repetitions does not reach the predetermined number in S112, the intermediate speed C calculated in S100 is substituted for the high speed side A (S116), and the processes after S100 are repeated.
このようにして高速側制限値及び低速側制限値が求められると、図1の送り速度制限手段34は、それら高速側制限値及び低速側制限値に基づき関数発生手段16が発生する送り速度を制限する。通常の関数発生では、プログラムから指示された送り速度で軸を送るが、本実施形態の送り速度制限手段34は高速側制限値及び低速側制限値により規定される、衝突(干渉)が生じる速度帯域を避けるように送り速度を変更する。
When the high speed side limit value and the low speed side limit value are obtained in this way, the feed
図5のフローチャートは、送り速度制限手段34の処理の流れの一例を示すものである。この処理はパートプログラム10の個々のブロックの開始時に実行され、そのブロックでの実際の送り速度を決める。
The flowchart in FIG. 5 shows an example of the processing flow of the feed
この手順では、まず停止指示(図2のS22。詳細は後述)があるかどうかを判定する(S140)があれば、どのような速度でも干渉する可能性が高いので、送り速度制限手段34は、関数発生手段16の関数発生を停止させ、軸送りを止めて衝突を防止する(S142)。 In this procedure, if there is a stop instruction (S140 in FIG. 2; details will be described later) (S140), there is a high possibility of interference at any speed. Then, the function generation of the function generating means 16 is stopped, and the axis feed is stopped to prevent a collision (S142).
停止指示がなければ、次は「高速側制限値」があるかどうかを判断する(S144)。高速側制限値がある場合には、これと指示された送り速度とを比較する(S146)。ここでいう「指示された送り速度」は、基本的にはパートプログラム10により指示された送り速度であるが、数値制御装置のオペレータが実際の移動速度をパートプログラム10に規定された送り速度から変更している場合は、オペレータにより変更された送り速度である。指示された送り速度が「高速側制限値」以上である場合には、干渉しないので実速度は指示された送り速度のままでよい(S148)。実速度とは、移動体を実際に移動させる際の速度のことである。なお「高速側制限値」がゼロのときは、このパスを通ることになり、これは制限速度がないこと(すなわち指示された速度を制限する必要がないこと)を意味する。
If there is no stop instruction, it is next determined whether or not there is a “high speed side limit value” (S144). If there is a high speed side limit value, this is compared with the instructed feed speed (S146). The “instructed feed speed” here is basically the feed speed instructed by the
「高速側制限値」がない場合、あるいは、指示された送り速度が「高速側制限値」より小さい場合、「低速側制限値」と指示された送り速度とを比較する(S150)。なお、「高速側制限値」が「ない」とは、送り速度の上限値までの範囲で、速度制限が行われることを意味する。また、このときには、「低速側制限値」は必ず存在するので、「低速側制限値」の有無の判定はしていない。 When there is no “high speed side limit value” or when the instructed feed speed is smaller than the “high speed side limit value”, the “low speed side limit value” is compared with the instructed feed speed (S150). Note that “the high speed side limit value” is “not present” means that the speed is limited within the range up to the upper limit value of the feed speed. At this time, since the “low speed limit value” always exists, the presence / absence of the “low speed limit value” is not determined.
指示された送り速度が「低速側制限値」以下である場合には、干渉しないので実速度は指示された送り速度のままでよい(S152)。逆に、指示された送り速度が「低速側制限値」より大きい場合には、干渉する危険性が高いので、実速度を「低速側制限値」に置き換える(S154)。 When the instructed feed speed is equal to or lower than the “low speed side limit value”, the actual speed may remain the instructed feed speed because there is no interference (S152). On the other hand, if the instructed feed speed is larger than the “low speed limit value”, the risk of interference is high, and the actual speed is replaced with the “low speed limit value” (S154).
さて、前述の図6a〜図6cの例では「高速側制限値:なし」、「低速側制限値=75%」と決定されている。この場合において、現在の実際の送り速度がオーバーライド100%であったとする。この場合、送り速度制限手段34の処理は、図5のフローチャートのS140,S144,S150,S154のパスを通るので、実速度が75%に抑えられることになる。ここで、仮にオペレータが、オーバーライド50%で運転していたとすると、S140,S144,S150,S152のパスを通ることになり、その結果、オーバーライド50%の速度のままで運転される。いずれにしても、これらの例では、関数発生手段16の関数発生処理が衝突防止のために停止されることはない。 In the example of FIGS. 6a to 6c described above, “high speed side limit value: none” and “low speed side limit value = 75%” are determined. In this case, it is assumed that the current actual feed speed is 100% override. In this case, the processing of the feed speed limiting means 34 passes through the paths S140, S144, S150, and S154 in the flowchart of FIG. 5, so that the actual speed is suppressed to 75%. Here, if the operator is operating at an override of 50%, the operator passes through the paths of S140, S144, S150, and S152, and as a result, the operator is operated at the speed of the override of 50%. In any case, in these examples, the function generation processing of the function generation means 16 is not stopped to prevent collision.
もう一つの例として、図7のケースで説明する。この例は、指令軌跡とほぼ同じ送りオーバーライド1%の軌跡で干渉が検知された場合である。制限判断手段32の処理(図2)の最左列のパス(S10,S12,S14,S16,S22)を通り停止指示が出力される。すなわち、S16の判定結果が「あり」となり、S22にて制限判断手段32が停止指示を出力する。停止指示が出されると、送り速度制限手段34の処理(図5)にて、S140の判定結果が「あり」となり、S142で関数発生手段16の関数発生が停止することで、移動体とワークとの衝突が防止される。
As another example, the case of FIG. 7 will be described. In this example, interference is detected on a trajectory of 1% of the feed override that is substantially the same as the command trajectory. A stop instruction is output through the path (S10, S12, S14, S16, S22) in the leftmost column of the process of the restriction determination means 32 (FIG. 2). That is, the determination result in S16 is “Yes”, and the
なお、送り速度の下限値でワークとの干渉が生じても、図7の例のように送り速度が高くなれば干渉しなくなる場合もある。このため、送り速度の下限値で干渉が発生するとシミュレーションで求められた場合、実際の送り速度をある速度以下にしないように送り速度制限手段34を構成することで干渉を回避することも可能である。しかし、この実施形態では、異常事態で停止した時も安全なようにするための措置として、送り速度の下限値で干渉を検知した場合は停止するようにした。
Even if interference with the workpiece occurs at the lower limit of the feed rate, there is a case where interference does not occur if the feed rate is increased as in the example of FIG. For this reason, when it is determined by simulation that interference occurs at the lower limit value of the feed speed, it is possible to avoid the interference by configuring the feed
次に、図2のフローチャートにおいて、送り速度の下限値(図示例では1%)の経路で干渉なしと判定され(S16の判定結果が「なし」)、下限値と上限値の中間速度(図示例では50%)の経路で干渉ありと判定された場合の処理の流れを説明する。 Next, in the flowchart of FIG. 2, it is determined that there is no interference on the path of the lower limit value (1% in the illustrated example) of the feed speed (the determination result in S16 is “None”), and an intermediate speed between the lower limit value and the upper limit value (FIG. The flow of processing when it is determined that there is interference on a route of 50% in the example will be described.
この場合、制限判断手段32は、更に速度が上限値(100%)のときの経路で干渉が生じるかどうかを判定する(S24)。この判定の結果、上限値(100%)のときも干渉が発生することが分かった場合、制限判断手段32は、(50%でも100%でも干渉が生じるため)高速側制限値を「なし」に設定すると共に(S26)、低速側制限値を下限値(1%)から中間値(50%)の範囲から探す。このために、A=50%、B=1%に設定し(S28)、2分法による制限値上昇絞込処理を行う(S30)。S30では、既に説明した図3に示した処理手順を実行すればよい。S30で制限値Rが求められると、このRを低速側制限値に設定する(S32)。
In this case, the
また、S24で速度100%の経路で干渉がないと判定された場合について考える。この場合、1%でも100%でも干渉は生じないが、その間の50%では干渉が生じている。したがって、干渉が発生する可能性の高い範囲の上限(高速側制限値)は50%と100%の間にあり、下限(低速側制限値)は1%と50%の間にある。そこで、S34〜S38で高速側制限値を、S40〜S44で低速側制限値を求める。なお、S34〜S38と、S40〜S44とは、どちらを先に実行してもよい。 Further, consider a case where it is determined in S24 that there is no interference on a route of 100% speed. In this case, interference does not occur at 1% or 100%, but interference occurs at 50% in the meantime. Therefore, the upper limit (high speed side limit value) of the range where interference is likely to occur is between 50% and 100%, and the lower limit (low speed side limit value) is between 1% and 50%. Therefore, the high speed side limit value is obtained in S34 to S38, and the low speed side limit value is obtained in S40 to S44. Note that either S34 to S38 or S40 to S44 may be executed first.
S34ではA=100%、B=50%に設定し、S36にて図4に示すような「制限値下降絞り込み」処理を行う。この処理は、図3の「制限値上昇絞り込み」処理と類似した2分法の処理であるが、速度が高い方には干渉がなく速度の低い方で干渉する図3とは逆のパターンにおいて、制限速度を速度の低い方に向って2分法で求めてゆくものである。 In S34, A = 100% and B = 50% are set, and in S36, the “restriction of limit value lowering” as shown in FIG. 4 is performed. This process is a bisection process similar to the “limit value increase narrowing down” process of FIG. 3, but in a pattern opposite to FIG. 3 in which there is no interference in the higher speed and interference in the lower speed. The speed limit is determined by the bisection method toward the lower speed.
この「制限値下降絞り込み」処理では、AとBの中間速度Cを計算し(S120)、その中間速度Cでの移動体の移動経路を生成して干渉チェックを行い(S122)、干渉の有無を判定する(S124)。干渉なしと判定した場合、2分法の繰り返し回数が所定回数に達したかどうかを判定する(S126)。繰り返し回数が所定回数に達していれば、制限値RにCを代入して(S128)、処理を終える。この制限値Rが呼び出し側のルーチン(特に図2のS36)に戻される。図2のS38では、この制限値Rを高速側制限値とする。S126で繰り返しが所定回数に達していない場合は、制限判断手段32は、今回求めた中間速度Cを高速側の速度Aに代入し(S130)、S120以降の処理を繰り返す。 In this “limit value lowering and narrowing down” process, an intermediate speed C between A and B is calculated (S120), a moving path of the moving body at the intermediate speed C is generated, and an interference check is performed (S122). Is determined (S124). If it is determined that there is no interference, it is determined whether the number of repetitions of the bisection method has reached a predetermined number (S126). If the number of repetitions has reached the predetermined number, C is substituted for the limit value R (S128), and the process ends. This limit value R is returned to the calling routine (especially S36 in FIG. 2). In S38 of FIG. 2, the limit value R is set as the high speed side limit value. If the number of repetitions has not reached the predetermined number in S126, the limit determination means 32 substitutes the intermediate speed C obtained this time for the high speed side speed A (S130), and repeats the processes after S120.
また、S124で「干渉あり」と判定した場合、2分法の繰り返し回数があらかじめ定めた所定回数に達しているかどうかを判定する(S132)。所定回数に達していれば、制限値RにAを代入し(S134)、この制限値Rを呼び出し側ルーチン(図2のS36)に戻す。S132で、繰り返し回数が所定回数に達していない場合は、S120で計算した中間速度Cを低速側の速度Bに代入し(S136)、S130以降の処理を繰り返す。 If it is determined that there is “interference” in S124, it is determined whether the number of repetitions of the bisection method has reached a predetermined number of times (S132). If the predetermined number of times has been reached, A is substituted into the limit value R (S134), and this limit value R is returned to the calling routine (S36 in FIG. 2). If the number of repetitions does not reach the predetermined number in S132, the intermediate speed C calculated in S120 is substituted for the low-speed speed B (S136), and the processes after S130 are repeated.
また、制限判断手段32は、S40でA=50%、B=1%に設定し、S42にて2分法による制限値上昇絞込処理を行う。S42では、既に説明した図3に示した処理手順を実行すればよい。S30で制限値Rが求められると、このRを低速側制限値に設定する(S44)。 Further, the limit determination means 32 sets A = 50% and B = 1% in S40, and performs limit value increase narrowing processing by the bisection method in S42. In S42, the processing procedure shown in FIG. When the limit value R is obtained in S30, this R is set to the low speed side limit value (S44).
以上のように、本発明によって実際の送り速度の変更に対応できる衝突防止装置を実現することができる。さらに、衝突防止のために送り停止となるケースを少なくすることができる。 As described above, according to the present invention, it is possible to realize a collision preventing apparatus that can cope with a change in actual feed speed. Furthermore, it is possible to reduce the number of cases where the feed is stopped to prevent a collision.
この実施形態の衝突防止装置は、上述した各手段の機能を記述したプログラムをコンピュータに実行させることにより実現することができる。 The collision prevention apparatus of this embodiment can be realized by causing a computer to execute a program describing the functions of the above-described means.
10 パートプログラム、12 プログラム解釈手段、14 バッファ、16 関数発生手段、17X X軸駆動手段、17Z Z軸駆動手段、18X,18Z 加減速手段、20X,20Z サーボ、22X,22Z モータ及び検出器、26 干渉チェック手段、30 経路生成手段、32 制限判断手段、34 送り速度制限手段。 10 part program, 12 program interpretation means, 14 buffer, 16 function generation means, 17X X axis drive means, 17Z Z axis drive means, 18X, 18Z acceleration / deceleration means, 20X, 20Z servo, 22X, 22Z motor and detector, 26 Interference check means, 30 path generation means, 32 restriction determination means, 34 feed speed restriction means.
Claims (2)
前記プログラム指令による実行データに対して、指示された送り速度に従ってシミュレーションを行うことによって移動経路を生成する経路生成手段と、
前記経路生成手段からの移動経路について干渉チェック対象物との干渉チェックを行い、干渉の有無を判断する干渉チェック手段と、
前記プログラム指令における送り速度から規定される送り速度の上限値と送り速度の下限値から始め、2分法により中間速度を決めながら、それぞれの送り速度を前記経路生成手段に指示してその送り速度での移動経路を生成させ、それらの移動経路と干渉チェック対象物との干渉の有無に基づき、移動経路と干渉チェック対象物とが衝突する速度帯域を判定する制限判断手段と、
前記制限判断手段により判定された前記衝突する速度帯域に基づき、関数発生の送り速度を制御する送り速度制限手段であって、前記プログラム指令における送り速度での移動経路が干渉チェック対象物と干渉する場合でも、前記プログラム指令が実行されるときの送り速度である実行時速度が前記速度帯域外であれば、その実行時速度にて移動体を送るよう制御する送り速度制限手段と、
を備える数値制御装置における衝突防止装置。 In a numerical control device of a machine tool for accelerating / decelerating the moving speed of a moving body after generating a function in order to relieve an impact during machine operation, the moving path of the moving body commanded in the program command before executing the program command, and In the collision prevention device that performs the interference check between the interference path check object and the path that has sag from the commanded movement path, and prevents the collision by not generating a function when it is determined that interference occurs,
Route generation means for generating a movement route by performing simulation according to the instructed feed speed for execution data by the program command,
An interference check unit that performs an interference check with an interference check target on a moving route from the route generation unit, and determines whether or not there is interference;
Starting from the upper limit value of the feed rate and the lower limit value of the feed rate specified from the feed rate in the program command, while determining the intermediate speed by the bisection method, each feed rate is instructed to the route generation means and the feed rate. Limiting determination means for generating a movement path at the position and determining a speed band in which the movement path and the interference check target collide based on the presence or absence of interference between the movement path and the interference check target;
Feed speed limiting means for controlling a feed speed generated by a function based on the collision speed band determined by the limit determination means, and a movement path at the feed speed in the program command interferes with an interference check target. Even in this case, if the running speed, which is the feeding speed when the program command is executed, is outside the speed band, the feed speed limiting means for controlling the mobile body to be sent at the running speed;
An anti-collision device in a numerical control device comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010201046A JP5492034B2 (en) | 2010-09-08 | 2010-09-08 | Collision prevention device in numerical control device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010201046A JP5492034B2 (en) | 2010-09-08 | 2010-09-08 | Collision prevention device in numerical control device |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2012058976A JP2012058976A (en) | 2012-03-22 |
JP5492034B2 true JP5492034B2 (en) | 2014-05-14 |
Family
ID=46056003
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010201046A Expired - Fee Related JP5492034B2 (en) | 2010-09-08 | 2010-09-08 | Collision prevention device in numerical control device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5492034B2 (en) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6321583B2 (en) | 2015-06-30 | 2018-05-09 | ファナック株式会社 | Numerical control device for 3D interference check corresponding to speed change |
JP6396273B2 (en) * | 2015-10-14 | 2018-09-26 | ファナック株式会社 | Numerical control device for positioning to avoid interference with workpiece |
JP7419026B2 (en) | 2019-11-06 | 2024-01-22 | 芝浦機械株式会社 | Numerical control equipment and machine tools |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH04347705A (en) * | 1991-05-24 | 1992-12-02 | Yamazaki Mazak Corp | Rapid traverse positioning controller in machine tool |
JP2008046899A (en) * | 2006-08-17 | 2008-02-28 | Mitsubishi Electric Corp | Numerical control device |
-
2010
- 2010-09-08 JP JP2010201046A patent/JP5492034B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2012058976A (en) | 2012-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5139230B2 (en) | Collision prevention device in numerical control device | |
US9678500B2 (en) | Machining program creating device numerical control device, machining system, machining program creating method, numerical control method, and machining program | |
JP5556971B1 (en) | Numerical controller | |
JP5431987B2 (en) | Machine tool controller | |
CN107850884B (en) | Trajectory determination method for non-productive time motion | |
US10514681B2 (en) | Numerical controller including overlap function between arbitrary blocks by common acceleration/deceleration control unit | |
US10048675B2 (en) | Numerical controller performing 3-dimensional interference check corresponding to feedrate change | |
JP5492034B2 (en) | Collision prevention device in numerical control device | |
JP2018062026A (en) | Robot control device with function for restricting speed and acceleration of robot | |
JPH10254526A (en) | Numerical controller | |
US9122257B2 (en) | Thread cutting machine | |
JP2021192949A5 (en) | ||
JP5220241B1 (en) | Command generation apparatus and command generation method | |
WO2014013550A1 (en) | Numerical control device and numerical control system | |
CN108089554B (en) | Numerical controller | |
JP2020003958A (en) | Numerical control device | |
JP2016034669A (en) | Robot control device and robot control method | |
JP2008148449A (en) | Motor position control method | |
JP2985138B2 (en) | Speed control device and numerical control feed speed control method | |
JP7502135B2 (en) | Robot program adjustment device | |
JP6923736B2 (en) | Numerical control device | |
JPH0744214A (en) | Control system for robot group | |
WO2022097607A1 (en) | Control device | |
JP2012078891A (en) | Numerical controller, travel path correction method, travel path correction program, and storage medium | |
WO2021187498A1 (en) | Speed adjustment assistance device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20130507 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20140214 |
|
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: 20140225 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20140228 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5492034 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |