JP5715195B2 - プログラム実行ペースを指定できるモーションコントローラ - Google Patents
プログラム実行ペースを指定できるモーションコントローラ Download PDFInfo
- Publication number
- JP5715195B2 JP5715195B2 JP2013140102A JP2013140102A JP5715195B2 JP 5715195 B2 JP5715195 B2 JP 5715195B2 JP 2013140102 A JP2013140102 A JP 2013140102A JP 2013140102 A JP2013140102 A JP 2013140102A JP 5715195 B2 JP5715195 B2 JP 5715195B2
- Authority
- JP
- Japan
- Prior art keywords
- program
- block
- execution time
- time
- acceleration
- 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
- 230000001133 acceleration Effects 0.000 claims description 92
- 238000000034 method Methods 0.000 description 51
- 230000006870 function Effects 0.000 description 27
- 238000005259 measurement Methods 0.000 description 18
- 239000004020 conductor Substances 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000032683 aging Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/4155—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by programme execution, i.e. part programme or machine function execution, e.g. selection of a programme
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B11/00—Automatic controllers
- G05B11/01—Automatic controllers electric
- G05B11/36—Automatic controllers electric with provision for obtaining particular characteristics, e.g. proportional, integral, differential
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/34—Director, elements to supervisory
- G05B2219/34384—Execute next block after predetermined time
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B2219/00—Program-control systems
- G05B2219/30—Nc systems
- G05B2219/35—Nc in input of data, input till input file format
- G05B2219/35386—Look ahead processing of plural block data from buffer
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Human Computer Interaction (AREA)
- Manufacturing & Machinery (AREA)
- Programmable Controllers (AREA)
- Debugging And Monitoring (AREA)
Description
なお、プログラムに含まれるブロックが1ブロックの場合、先行技術を使えば、指令された時間でプログラムを実行することができるが(特許文献1参照)、複数ブロックが含まれる場合は考慮されていない。
そして、本願の請求項1に係る発明は、あらかじめ登録され、複数のブロックで構成されたプログラムを逐次実行するモーションコントローラにおいて、前記プログラムの各ブロックの実行時間を実測する手段と、前記プログラム全体の実行時間を指定する手段と、
前記ブロックのパルス出力が完了した直後からインポジション状態になるまでの時間を設定する手段と、前記実測したプログラムの各ブロック実行時間と前記指定したプログラム実行時間、および前記設定したインポジション状態になるまでの時間から、前記プログラムが指定した実行時間になるような各ブロックの速度または加減速時定数を算出する算出手段と、前記算出した速度または加減速時定数でプログラムを実行する実行手段、とを有することを特徴とするモーションコントローラである。
請求項3に係る発明は、補助機能の実行に要する時間を設定する手段を備え、該設定した補助機能の実行時間も加味して、前記プログラムが指定した実行時間になるような各ブロックの速度または加減速時定数を算出して、算出した速度または加減速時定数でプログラムを実行することを特徴とする請求項1または2のいずれかに記載のモーションコントローラである。
請求項5に係る発明は、前記プログラムの各ブロック実行時間を実測する手段の代わりに、前記プログラムの各ブロック実行時間を解析する手段を備え、該解析したプログラムの各ブロック実行時間と指定したプログラム実行時間から、前記プログラムが指定した実行時間になるような各ブロックの速度または加減速時定数を算出して、算出した速度または加減速時定数でプログラムを実行することを特徴とする請求項1〜4のいずれか1つに記載のモーションコントローラである。
請求項7に係る発明は、複数のプログラムを同時に実行する手段と、前記プログラム全体の実行時間を指定する手段の代わりに、前記複数のプログラムの内の指定されたプログラム全体の実行時間を実測し、前記複数のプログラムの内の他の各プログラムの実行時間として指定する手段を備え、各プログラムの実行時間と指定されたプログラムの実行時間から、各プログラムが指定されたプログラムと同じ実行時間になるような各ブロックの速度または加減速時定数を算出して、該算出した速度または加減速時定数で各プログラムを実行することを特徴とする請求項1〜4のいずれか1つに記載のモーションコントローラである。
請求項9に係る発明は、前記プログラムに含まれる各ブロックの加速度を解析する手段と、各ブロックの加速度を比較して、加速度が大きいブロックに対して加速度が小さくなるように速度または加減速時定数を算出する手段を備え、実行するプログラム全体の中で、加速度の大きいところを集中的に下げることで、プログラムが指定した実行時間、または指定した割合の実行ペースになるようにプログラム全体の実行ペースを変更することを特徴とする請求項1〜8のいずれか1つに記載のモーションコントローラである。
<実施形態1>(請求項1に対応)
モーションコントローラのメモリに図2に示されるプログラムを格納し、そのプログラムを逐次実行するモーションコントローラを例にして説明する。モーションコントローラの構成は図17を用いて後述する。図2のプログラムでは、G00でX100.0の位置に速度1000で位置決め早送りを行い(ブロック番号1)、G01でX軸方向に100.0だけ速度2000で直線補間を行う(ブロック番号2)。
次に、実測プログラム実行時間Tprと指定プログラム実行時間Tpsの比から、指定プログラム実行時間Tpsでプログラムを実行する際の各ブロックの実行時間Tbs_iを数1式により算出する(iはプログラムのブロック番号)。
●[ステップSA01]プログラム実行時間が保存されているか否か判断し、保存されている場合(YES)にはステップSA04へ移行し、保存されていない場合(NO)にはステップSA02へ移行する。
●[ステップSA02]プログラムを実行して、各ブロックの実行時間Tbr_iと実測プログラム実行時間Tprを計測する。
●[ステップSA03]計測結果をデータ領域に保存し、ステップSA04へ移行する。
●[ステップSA04]インポジション予想時間Tinpを読み込む。
●[ステップSA05]指定プログラム実行時間Tpsを読み込む。
●[ステップSA06]各ブロックの実行時間Tbs_iを数1式により算出する。
●[ステップSA07]各ブロックの移動速度Fs_iを数2式により算出する。
●[ステップSA08]各ブロックの移動速度をステップSA07で算出した移動速度Fs_iに入れ換え、処理を終了する。
プログラムによっては、インポジション状態になるまでの時間がブロックごとに異なる場合がある。この時、実施形態1の方法を用いようとすると、インポジション状態になるまでの時間を設定するパラメータがプログラムに含まれるブロックの数だけ必要になるため、ブロック数が増えるほど設定に手間がかかる。
まず、実施形態1と同様に、あらかじめ、時間測定のための計測信号をオンにしてプログラムをそのまま実行し、プログラムに含まれる各ブロックの実測ブロック実行時間Tbr_i(i:ブロック番号)と、プログラム全体の実測プログラム実行時間Tprを計測しておく。その際、各ブロックにおけるパルス出力が完了直後からインポジション状態になるまでの時間であるインポジション時間Tinp_iも計測する。各ブロックの実測した実行時間Tbr_i、実測プログラム実行時間Tprと同様、実測したインポジション時間Tinp_iも内部のデータ領域に保存しておけば、プログラムを変更しない限り、計測し直す必要はない。
●[ステップSB01]プログラム実行時間が保存されているか否か判断し、保存されている場合(YES)にはステップSB04へ移行し、保存されていない場合(NO)にはステップSB02へ移行する。
●[ステップSB02]プログラムを実行して、各ブロックの実測ブロック実行時間Tbr_i、各ブロックのインポジション状態になる時間Tinp_i、プログラム全体の実行時間である実測プログラム実行時間Tprを計測する。
●[ステップSB03]計測結果をデータ領域に保存し、ステップSB04へ移行する。
●[ステップSB04]指定プログラム実行時間Tpsを読み込む。
●[ステップSB05]各ブロックの実行時間Tbs_iを数1式により算出する。
●[ステップSB06]各ブロックの移動速度Fs_iを数3式により算出する。
●[ステップSB07]各ブロックの速度をステップSB06で算出した移動速度Fs_iに入れ換え、処理を終了する。
モーションコントローラのプログラムは、途中で外部機器を動作させるために、補助機能を含むことがある。補助機能のブロックでは、外部機器の動作完了を待って次のブロックを実行するが、この完了までの時間はオーバライドが変化しても一定となるのが一般的である。実施形態1および実施形態2の方法では、補助機能を含むプログラムを扱うことはできないため、以下の方法を追加する。
●プログラムをそのまま実行した場合 :Tpr − Taux
●指定した実行時間でプログラムを実行する場合 :Tps − Taux
これらの時間の比から、指定プログラム実行時間Tpsでプログラムを実行する際の各移動指令ブロックの実行時間Tbs_iを数5式により算出する。
●[ステップSC01]プログラム実行時間が保存されているか否か判断し、保存されている場合(YES)にはステップSC04へ移行し、保存されていない場合(NO)にはステップSC02へ移行する。
●[ステップSC02]プログラムを実行して、各ブロックの実行時間Tbr_i、実測プログラム実行時間Tprを計測する。
●[ステップSC03]計測結果をデータ領域に保存し、ステップSC04へ移行する。
●[ステップSC04]インポジション状態になるまでのインポジション予想時間Tinpを読み込む。
●[ステップSC05]各補助機能(Mxx)の予想実行時間Taux_xxを読み込む。
●[ステップSC06]所望するプログラム全体の実行時間である指定プログラム実行時間Tpsを読み込む。
●[ステップSC07]プログラムに含まれる補助機能ブロックの実行時間の合計Tauxを算出する。
●[ステップSC08]移動指令のブロックの実行時間の合計を算出する。プログラムをそのまま実行した場合:Tpr−Taux、指定した実行時間でプログラムを実行する場合:Tps−Taux
●[ステップSC09]移動指令の各ブロックの実行時間Tbs_iを数5式により算出する。
●[ステップSC10]各ブロックの移動速度Fs_iを数2式により算出する。
●[ステップSC11]各ブロックの指令速度をステップSC10で算出した移動速度Fs_iに入れ換え、処理を終了する。
実施形態3の方法では、各補助機能(Mxx)に対してパラメータを設定する必要があるため、外部機器の数が増えるほど設定に手間がかかるようになる。
そこで、補助機能の実行時間をパラメータで設定するのではなく、実測する方法を追加する。まず、実施形態3と同様に、あらかじめ、時間測定のための計測信号をオンにしてプログラムをそのまま実行し、プログラムに含まれる各ブロックの実行時間Tbr_i(i:ブロック番号)と、実測プログラム実行時間Tprを計測しておく。その際、補助機能が指令されたブロックの実行時間Taux_iも計測する。
●[ステップSD01]プログラム実行時間が保存されているか否か判断し、保存されている場合(YES)にはステップSD04へ移行し、保存されていない場合(NO)にはステップSD02へ移行する。
●[ステップSD02]プログラムを実行して、各ブロックの実行時間である実測ブロック実行時間Tbr_i、補助機能が指令されたブロックの実行時間である補助機能の実行時間Taux_i、プログラム全体の実行時間である実測プログラム実行時間Tprを計測する。
●[ステップSD03]計測結果をデータ領域に保存し、ステップSD04へ移行する。
●[ステップSD04]インポジション状態になるまでのインポジション予想時間Tinpを読み込む。
●[ステップSD05]所望するプログラム全体の実行時間である指定プログラム実行時間Tpsを読み込む。
●[ステップSD06]プログラムに含まれる補助機能ブロックの実行時間の合計Tauxを算出する。
●[ステップSD07]移動指令のブロックの実行時間の合計を算出する。プログラムをそのまま実行した場合:Tpr−Taux、指定した実行時間でプログラムを実行する場合:Tps−Taux
●[ステップSD08]各ブロックの実行時間Tbs_iを数5式により算出する。
●[ステップSD09]各ブロックの移動速度Fs_iを数2式により算出する。
●[ステップSD10]各ブロックの指令速度をステップSD09で算出した移動速度Fs_iに入れ換え、処理を終了する。
実施形態1の方法では、プログラムの実行時間を実測する必要があり、手間がかかる。そこで、プログラムの実行時間を実測するのではなく、シミュレーションによりプログラムを解析して求める方法を用いる。なお実施形態5では、実施形態1の各ブロックの実行時間Tbr_i、実測プログラム実行時間Tprを本実施形態の方法により求めた値に置き換えるものとする。
●[ステップSE01]インポジション予想時間Tinpを読み込む。
●[ステップSE02]プログラムを解析し、プログラムに含まれる各ブロックにおいて、移動距離L_i、指令速度F_i、加減速時定数Tcon_i、パラメータで設定したインポジション予想時間Tinpから、実測ブロック実行時間Tbr_iを算出し、ステップSE03へ移行する。
●[ステップSE03]指定プログラム実行時間Tpsを読み込む。
●[ステップSE04]各ブロックの実行時間Tbs_iを数1式により算出する。
●[ステップSE05]各ブロックの移動速度Fs_iを数2式により算出する。
●[ステップSE06]各ブロックの指令速度をステップSE05で算出した移動速度Fs_iに入れ換え、処理を終了する。
システム全体の実行ペースを同じ比率で変更する時、システム内の各機器に各々の実行時間を指定するのではなく、実行ペースの割合を指定したい場合がある。そのため、以下の技術を追加する。
●[ステップSF01]プログラム実行時間が保存されているか否か判断し、保存されている場合(YES)にはステップSF04へ移行し、保存されていない場合(NO)にはステップSF02へ移行する。
●[ステップSF02]プログラムを実行して、各ブロックの実行時間Tbr_iと実測プログラム実行時間Tprを計測する。
●[ステップSF03]計測結果をデータ領域に保存し、ステップSF04へ移行する。
●[ステップSF04]インポジション予想時間Tinpを読み込む。
●[ステップSF05]プログラム実行ペース割合rを読み込む。
●[ステップSF06]プログラム実行時間Tps’を数7式により算出する。
●[ステップSF07]各ブロックの実行時間Tbs_i’を数8式により算出する。 ●[ステップSF08]各ブロックの移動速度Fs_i’を数9式により算出する。
●[ステップSF09]各ブロックの移動速度をステップSF08で算出した移動速度Fs_i’に入れ換え、処理を終了する。
複数のプログラムを同時に実行し、同時に実行した全プログラムが同時に終了すればよい場合がある。この様な場合、あらかじめ、同時に実行する複数のプログラムの実行時間を実測しておく。実施形態1において、所望するプログラム全体の実行時間Tpsを、この同時実行する複数のプログラムの中で指定されたプログラムの実行時間とすれば、指定されたプログラムと同じ時間で同時実行するその他のプログラムも実行できる。
これを使って、最も実行時間の長いプログラムに、その他の各プログラムの実行時間を合わせれば、サイクルタイムを延ばすことなく消費電力量を最小に抑えることができる。
上述した本発明の実施形態は、同じ条件でプログラムを実行すると常に同じ実行時間になることを前提としていた。しかし、実際には、ワークの個体差や機械の経年変化等によって位置決めに要する時間が変化する場合がある。この場合、プログラムの実行時間が長いほど、指定した実行時間(指定プログラム実行時間Tps)と実際にかかる時間(実測プログラム実行時間Tpr)とがずれていってしまう。
まず、実施形態1を実行して、あらかじめ各ブロックの算出ブロック実行時間Tbs_iと算出移動速度Fs_i(i:ブロック番号)を導出しておく。そして、第1ブロックの指令速度を導出した算出移動速度Fs_1に入れ換えてプログラムを実行する。各ブロックでは、ブロックの開始から終了までに実際にかかった時間Tba_iを計測する。例えば、第iブロック終了時、ブロックの実行時間Tbs_iと実際にかかった時間Tba_iの差を求め、第i+1ブロックの実行時間Tbs_i+1から引く(数10式)。
以降も同様に、各ブロックの実行時間のずれを次ブロックの実行時間から引いていくことで、実行時間のずれが蓄積しないようになる。
●[ステップSG01]実行中のブロックの実行時間Tba_iを計測する。
●[ステップSG02]i番目のブロック終了時、ブロックの実行時間Tbs_iと実行時間Tba_iの差を求め、i+1番目の実行時間Tbs_i+1から引いて、Tbs_i+1’を数10式により算出する。
●[ステップSG03]ステップSG02で算出したTbs_i+1’をブロックの実行時間として、i+1番目の移動速度Fs_i+1’を数11式により算出する。
●[ステップSG04]i+1番目のブロックの速度をFs_i+1’に入れ換えて、処理を終了する。
加速度が大きいブロックと小さいブロックが混在しているプログラムの実行時間を延ばす場合、各ブロックの実行時間を一定の比率で延ばすより、加速度が大きいブロックの実行時間を集中的に延ばして加速度を下げる方が、効率的に消費電力量を減らすことができる。そこで、以下の技術を追加する。まず、以下の手順によって、各ブロックの加速度を求める。
<1>プログラム全体の実行時間Tprを実測または計算する。
<2>指定されたプログラム全体の実行時間TpsとTprとの差ΔTを数12式により求める。
<4>加速度がA1である全てのブロックにおいて、各ブロックの指令速度F_iを用いて合計の加減速時間Tcon_sumを数13式により計算する。ただし、数13式のjは、加速度がA1のブロックの番号を表す。
●[ステップSH01]プログラム実行時間が保存されているか否か判断し、保存されている場合(YES)ステップSH04へ移行し、保存されていない場合(NO)ステップSH02へ移行する。
●[ステップSH02]プログラムを実行して、実測プログラム実行時間Tprを計測する。
●[ステップSH03]計測結果をデータ領域に保存する。
●[ステップSH04]指定されたプログラム全体の実行時間Tpsを読み込む。
●[ステップSH05]指定されたプログラム全体の実行時間Tpsと実行時間Tprの差ΔTを数12式により算出する。
●[ステップSH06]各ブロックの指令速度F_jを用いて、加速度がA1であるブロックの合計加減速時間Tcon_sumを数13式により計算する(A1は最も大きな加速度)。
●[ステップSH07]ステップSH06の合計加減速時間Tcon_sumに対して、ステップSH05で算出したΔTだけ引き延ばした時の加速度Aを数14式により算出する。
●[ステップSH08]ステップSH07で算出した加速度Aが加速度A2以上か否か判断し、以上の場合(YES)ステップSH09へ移行し、未満の場合(NO)ステップSH10へ移行する。
●[ステップSH09]加速度A1のブロックの加速度をAに更新し、処理を終了する。●[ステップSH10]A1の加速度のブロックをA2の加速度のブロックとする。
●[ステップSH11]加速度をA2としたときの合計の加減速時間Tcon_sum’を数15式により計算する。
●[ステップSH12]数16式により、ΔT’を算出する。
●[ステップSH13]ΔTの値をΔT’に更新してステップSH06に戻る。
SRAM14は図示しないバッテリでバックアップされ、数値制御装置10の電源がオフされても記憶状態が保持される不揮発性メモリとして構成され、本発明に係る計時プログラムを含むプログラム、本発明を実行するために必要なデータ、インタフェース15を介して読み込まれた後述する加工プログラム、LCD/MDIユニット70を介して入力された加工プログラム等が記憶されるようになっている。また、ROM12には、加工プログラムの作成及び編集のために必要とされる編集モードの処理や自動運転のための処理を実施するための各種のシステムプログラムがあらかじめ書き込まれている。
インタフェース19は手動パルス発生器71に接続され、手動パルス発生器71は工作機械の操作盤に実装され、手動操作に基づく分配パルスによる各軸制御で工作機械の可動部を精密に位置決めするために使用される。
Tbr_i 実測ブロック実行時間
Tps 指定プログラム実行時間
Tbs_i Tpsでプログラムを実行する際のブロック実行時間
Tinp インポジション予想時間
Tinp_i 各ブロックの実測インポジション時間
Fs_i 移動速度
Taux_xx 補助機能予想実行時間
Taux_i 各ブロックの実測補助機能実行時間
Claims (9)
- あらかじめ登録され、複数のブロックで構成されたプログラムを逐次実行するモーションコントローラにおいて、
前記プログラムの各ブロックの実行時間を実測する手段と、
前記プログラム全体の実行時間を指定する手段と、
前記ブロックのパルス出力が完了した直後からインポジション状態になるまでの時間を設定する手段と、
前記実測したプログラムの各ブロック実行時間と前記指定したプログラム実行時間、および前記設定したインポジション状態になるまでの時間から、前記プログラムが指定した実行時間になるような各ブロックの速度または加減速時定数を算出する算出手段と、
前記算出した速度または加減速時定数でプログラムを実行する実行手段、
とを有することを特徴とするモーションコントローラ。 - 前記ブロックのパルス出力が完了した後からインポジション状態になるまでの時間を設定する手段の代わりに、前記ブロックのパルス出力が完了した直後からインポジション状態になるまでの時間を実測する手段を備え、前記プログラムが指定した実行時間になるような各ブロックの速度または加減速時定数を算出して、算出した速度または加減速時定数でプログラムを実行することを特徴とする請求項1記載のモーションコントローラ。
- 補助機能の実行に要する時間を設定する手段を備え、該設定した補助機能の実行時間も加味して、前記プログラムが指定した実行時間になるような各ブロックの速度または加減速時定数を算出して、算出した速度または加減速時定数でプログラムを実行することを特徴とする請求項1または2のいずれかに記載のモーションコントローラ。
- 前記補助機能の実行に要する時間を設定する手段の代わりに、前記補助機能の実行時間を実測する手段を備え、前記プログラムが指定した実行時間になるような各ブロックの速度または加減速時定数を算出して、該算出した速度または加減速時定数でプログラムを実行することを特徴とする請求項3記載のモーションコントローラ。
- 前記プログラムの各ブロック実行時間を実測する手段の代わりに、前記プログラムの各ブロック実行時間を解析する手段を備え、該解析したプログラムの各ブロック実行時間と指定したプログラム実行時間から、前記プログラムが指定した実行時間になるような各ブロックの速度または加減速時定数を算出して、算出した速度または加減速時定数でプログラムを実行することを特徴とする請求項1〜4のいずれか1つに記載のモーションコントローラ。
- 前記プログラム全体の実行時間を指定する手段の代わりに、前記プログラム全体の実行ペースの割合を指定する手段を備え、前記プログラム全体の実行ペースが指定した割合になるような各ブロックの速度または加減速時定数を算出して、該算出した速度・加減速時定数でプログラムを実行することを特徴とする請求項1〜5のいずれか1つに記載のモーションコントローラ。
- 複数のプログラムを同時に実行する手段と、前記プログラム全体の実行時間を指定する手段の代わりに、前記複数のプログラムのうちの指定されたプログラム全体の実行時間を実測し、前記複数のプログラムのうちの他の各プログラムの実行時間として指定する手段を備え、各プログラムの実行時間と指定されたプログラムの実行時間から、各プログラムが指定されたプログラムと同じ実行時間になるような各ブロックの速度または加減速時定数を算出して、該算出した速度または加減速時定数で各プログラムを実行することを特徴とする請求項1〜4のいずれか1つに記載のモーションコントローラ。
- 前記プログラムの実行中に各ブロックの実行時間を実測する手段と、該実測したブロック実行時間から、次に実行する予定のブロックの速度または加減速時定数を算出する手段を備え、該算出した速度または加減速時定数で対象となるブロックを実行することで、プログラムが指定した実行時間、または指定した割合の実行ペースになるようにプログラム全体の実行ペースを変更することを特徴とする請求項1〜7のいずれか1つに記載のモーションコントローラ。
- 前記プログラムに含まれる各ブロックの加速度を解析する手段と、各ブロックの加速度を比較して、加速度が大きいブロックに対して加速度が小さくなるように速度または加減速時定数を算出する手段を備え、実行するプログラム全体の中で、加速度の大きいところを集中的に下げることで、プログラムが指定した実行時間、または指定した割合の実行ペースになるようにプログラム全体の実行ペースを変更することを特徴とする請求項1〜8のいずれか1つに記載のモーションコントローラ。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013140102A JP5715195B2 (ja) | 2013-07-03 | 2013-07-03 | プログラム実行ペースを指定できるモーションコントローラ |
DE102014108964.2A DE102014108964B4 (de) | 2013-07-03 | 2014-06-26 | Regelung für die Geschwindigkeit einer Programmausführung |
US14/321,953 US9798316B2 (en) | 2013-07-03 | 2014-07-02 | Motion controller capable of specifying program execution pace |
CN201410315927.4A CN104281445B (zh) | 2013-07-03 | 2014-07-03 | 能够指定程序执行步调的动作控制器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2013140102A JP5715195B2 (ja) | 2013-07-03 | 2013-07-03 | プログラム実行ペースを指定できるモーションコントローラ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2015014849A JP2015014849A (ja) | 2015-01-22 |
JP5715195B2 true JP5715195B2 (ja) | 2015-05-07 |
Family
ID=52106430
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2013140102A Expired - Fee Related JP5715195B2 (ja) | 2013-07-03 | 2013-07-03 | プログラム実行ペースを指定できるモーションコントローラ |
Country Status (4)
Country | Link |
---|---|
US (1) | US9798316B2 (ja) |
JP (1) | JP5715195B2 (ja) |
CN (1) | CN104281445B (ja) |
DE (1) | DE102014108964B4 (ja) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6151729B2 (ja) | 2015-01-16 | 2017-06-21 | ファナック株式会社 | 加工プログラムに応じて数値制御装置のコントロールソフトウェアを最適化する機能を備えた制御システム |
JP6250894B2 (ja) * | 2015-04-22 | 2017-12-20 | ファナック株式会社 | スキップ信号やキー操作が不要な座標値の取得機能を有する数値制御装置 |
JP6200456B2 (ja) * | 2015-06-29 | 2017-09-20 | ファナック株式会社 | 工作機械とロボット間の干渉チェックシステム |
JP6378249B2 (ja) * | 2016-05-16 | 2018-08-22 | ファナック株式会社 | サーボ制御および機械運動の遅れを考慮する加工時間予測機能を有する数値制御装置 |
JP7332443B2 (ja) | 2019-11-20 | 2023-08-23 | ファナック株式会社 | ロボット制御装置及びロボット制御方法 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1019880C (zh) | 1992-01-17 | 1993-02-03 | 清华大学 | 全自动定量装车的方法及装置 |
JP3512559B2 (ja) * | 1996-02-14 | 2004-03-29 | 三菱電機株式会社 | 数値制御装置 |
JPH1031509A (ja) * | 1996-07-15 | 1998-02-03 | Mitsubishi Electric Corp | 数値制御装置 |
DE10343809B4 (de) * | 2002-09-27 | 2018-03-15 | Siemens Aktiengesellschaft | Verfahren und Vorrichtung zur numerischen Steuerung |
JP2005056196A (ja) | 2003-08-05 | 2005-03-03 | Fanuc Ltd | プログラマブルコントローラ |
JP4891528B2 (ja) * | 2004-04-07 | 2012-03-07 | オークマ株式会社 | 加工時間算出装置 |
JP4951165B2 (ja) * | 2006-02-06 | 2012-06-13 | シチズンホールディングス株式会社 | 数値制御工作機械、この数値制御工作機械におけるワークの加工方法 |
GB2446183B (en) * | 2007-01-31 | 2011-07-20 | Hewlett Packard Development Co | Method and apparatus for controlling motion of storage media |
JP4905597B1 (ja) * | 2011-03-15 | 2012-03-28 | オムロン株式会社 | コントローラサポート装置、その装置において実行されるためのコントローラサポートプログラム、およびそのプログラムを格納する記録媒体 |
US8977534B2 (en) * | 2011-03-15 | 2015-03-10 | Omron Corporation | Controller support apparatus, controller support program executed on the apparatus, storage medium storing the program, and method of estimating execution time of control program |
JP5208325B1 (ja) | 2011-09-15 | 2013-06-12 | 三菱電機株式会社 | 数値制御装置、加工システム、および数値制御方法 |
WO2013171850A1 (ja) * | 2012-05-15 | 2013-11-21 | 三菱電機株式会社 | 数値制御装置 |
-
2013
- 2013-07-03 JP JP2013140102A patent/JP5715195B2/ja not_active Expired - Fee Related
-
2014
- 2014-06-26 DE DE102014108964.2A patent/DE102014108964B4/de not_active Expired - Fee Related
- 2014-07-02 US US14/321,953 patent/US9798316B2/en active Active
- 2014-07-03 CN CN201410315927.4A patent/CN104281445B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
DE102014108964B4 (de) | 2019-04-04 |
CN104281445A (zh) | 2015-01-14 |
US9798316B2 (en) | 2017-10-24 |
US20150012120A1 (en) | 2015-01-08 |
DE102014108964A1 (de) | 2015-01-08 |
JP2015014849A (ja) | 2015-01-22 |
CN104281445B (zh) | 2016-10-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5715195B2 (ja) | プログラム実行ペースを指定できるモーションコントローラ | |
JP6285396B2 (ja) | 工作機械の実測定の要否を自動判定する熱変位補正装置 | |
JP5149421B2 (ja) | 加工時間予測部および加工誤差予測部を有する数値制御装置 | |
JP5607695B2 (ja) | 工作機械の熱変位補正装置 | |
JP6267041B2 (ja) | 工作機械の熱変位補正装置 | |
US10191472B2 (en) | Numerical controller provided with program pre-reading function | |
CN104035394B (zh) | 具有部件检修时期通知功能的机械的数值控制装置 | |
JP6557285B2 (ja) | 制御装置及び機械学習装置 | |
JP6499710B2 (ja) | 加減速制御装置 | |
CN105843167B (zh) | 机床的热位移校正装置 | |
DE102015105055A1 (de) | Thermische Verschiebungskorrekturvorrichtung für eine Werkzeugmaschine | |
KR102224970B1 (ko) | 제어 장치 및 기계 학습 장치 | |
DE102017003904A1 (de) | Numerische Steuerung | |
JP6174652B2 (ja) | 加工エリアの大きさによるパラメータの自動選定機能を有する数値制御装置 | |
JP2019168973A (ja) | 駆動装置及び機械学習装置 | |
EP3015208B1 (en) | Keyway machining path creating device for wire electric discharge machine | |
JP6333797B2 (ja) | 主軸負荷により送り速度を制御する数値制御装置 | |
DE102015013634A1 (de) | Numerische Steuervorrichtung | |
JP2014038482A (ja) | 数値制御装置の処理能力を考慮する加工時間予測装置 | |
JP5715189B2 (ja) | オーバライドの変化時に送り速度を円滑に変更する機能を有する数値制御装置 | |
DE102016010370A1 (de) | Numerische steuerung mit positionsbasierter steuerung von bearbeitungsbedingungen | |
JP6105548B2 (ja) | 干渉回避位置決め機能を備えた数値制御装置 | |
JP6077601B2 (ja) | 加工プログラムのサイクルタイムを短縮する数値制御装置 | |
JP2017049766A (ja) | 位置による最大速度制御機能を具備した数値制御装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A975 | Report on accelerated examination |
Free format text: JAPANESE INTERMEDIATE CODE: A971005 Effective date: 20141112 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20141118 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20150109 |
|
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: 20150217 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20150312 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5715195 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |