(57)【要約】  加加減速区間パラメータ設定部（２）は、加速度指令曲線の加減速区間を加速度増加区間、等加速度区間および加速度減少区間に分割し、各区間の時間の長さを互いに独立に設定し、加加減速区間三角関数指令生成部（１）は、１／２周期分の三角関数に基づいて生成された加速度指令曲線を用いることで位置指令もしくは速度指令を生成する。
2010125958.tif 000002
【特許請求の範囲】
【請求項１】
１／２周期分の三角関数に基づいて生成された加速度指令曲線を用いることで位置指令もしくは速度指令を生成する加加減速区間三角関数指令生成部を備えることを特徴とする指令生成装置。
【請求項２】
前記加速度指令曲線の加減速区間を加速度増加区間、等加速度区間および加速度減少区間に分割し、各区間の時間の長さを互いに独立に設定する加加減速区間パラメータ設定部をさらに備えることを特徴とする請求項１に記載の指令生成装置。
【請求項３】
現在速度から加速度一定で減速停止させる場合の移動距離を基準減速停止距離として演算する基準減速停止距離演算部と、
前記基準減速停止距離演算部にて算出された基準減速停止距離に基づいて、現在速度から減速停止させる場合の移動距離を減速停止距離として演算する減速停止距離演算部と、
目標位置と現在位置の差分に対応した差距離を演算する差距離演算部と、
前記減速停止距離と前記差距離との比較結果に基づいて、減速を開始させる減速開始指令を前記加加減速区間三角関数指令生成部に出力する減速開始判別部とをさらに備えることを特徴とする請求項１または２に記載の指令生成装置。
【請求項４】
加速度増加区間および加速度減少区間の時間の長さに関するパラメータに基づいて、前記減速停止距離を補正する補正係数を算出する補正係数演算部をさらに備えることを特徴とする請求項３に記載の指令生成装置。
【請求項５】
現在の速度指令に基づいて、現在速度から減速停止させる場合の移動距離を減速停止距離として演算する減速停止距離演算部と、
目標位置と現在位置の差分に対応した差距離を演算する差距離演算部と、
前記減速停止距離と前記差距離との比較結果に基づいて、減速を開始させる減速開始指令を前記加加減速区間三角関数指令生成部に出力する減速開始判別部とをさらに備えることを特徴とする請求項１または２に記載の指令生成装置。
【請求項６】
加速区間の加速度増加区間もしくは等速区間にある場合に、現在の位置指令、速度指令および加速度指令から新たに加速度減少曲線を生成して加速度を０にする場合に、加速度が０になるまでの速度増加量に対応した加速区間残速度と、加速度が０になるまでの移動量に対応した加速区間残距離とに基づいて、加速度の減少を開始させる加速度減少開始指令を前記加加減速区間三角関数指令生成部に出力する算出加速区間残距離残速度演算部と、
前記基準減速停止距離演算部にて算出された加速区間残速度および加速区間残距離に基づいて、現在速度から減速停止させる場合の移動距離を減速停止距離として演算する減速停止距離演算部と、
目標位置と現在位置の差分に対応した差距離を演算する差距離演算部と、
前記減速停止距離と前記差距離との比較結果に基づいて、減速を開始させる減速開始指令を前記加加減速区間三角関数指令生成部に出力する減速開始判別部とをさらに備えることを特徴とする請求項１または２に記載の指令生成装置。
【請求項７】
加速度増加区間および加速度減少区間の時間の長さに関するパラメータおよび減速区間の加速度最大値に基づいて、前記減速停止距離を補正する補正係数を算出する補正係数演算部をさらに備えることを特徴とする請求項５または６に記載の指令生成装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は指令生成装置に関し、特に、実装機、半導体製造装置、射出成形機、ロボット、工作機械、包装機械、印刷機械などのメカニカルシステムの位置指令もしくは速度指令を生成する指令生成装置に関する。
【背景技術】
【０００２】
従来の指令生成装置では、ステージの加速による高周波振動励起を抑制し、整定時間の短縮化を図るため、加減速区間をそれぞれ、加速度増加区間、等加速度区間、加速度減少区間の３つに分け、加速度増加区間、加速度減少区間の位置指令をそれぞれ７次関数とし、加加速度（加速度の時間変化率：ジャークとも言う）が連続的に変化するように７次関数の各係数を決定する方法がある（特許文献１）。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０００−４０６５８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記従来の技術によれば、位置指令を生成するために、７次関数が用いられている。このため、現在位置および現在速度から減速停止させる時に停止距離と残距離を比較し、停止距離が残距離以上となった時点で減速を開始させる場合、減速開始判定のために要する計算量が多い問題があった。また、位置指令を時々刻々と設定する場合にも、７次関数の計算が必要となり、計算量が多いという問題があった。【０００５】
本発明は、上記に鑑みてなされたものであって、指令生成に必要な計算量の増大を抑制しつつ、加加速度区間を独立に設定するとともに、加加速度を連続的に設定することが可能な指令生成装置を得ることを目的とする。
【課題を解決するための手段】
【０００６】
上述した課題を解決し、目的を達成するために、本発明の指令生成装置は、１／２周期分の三角関数に基づいて生成された加速度指令曲線を用いることで位置指令もしくは速度指令を生成する加加減速区間三角関数指令生成部を備えることを特徴とする。
【発明の効果】
【０００７】
この発明によれば、指令生成に必要な計算量の増大を抑制しつつ、加加速度区間を独立に設定するとともに、加加速度を連続的に設定することが可能という効果を奏する。
【図面の簡単な説明】
【０００８】
【図１】図１は、本発明に係る指令生成装置の実施の形態１の概略構成を示すブロック図である。
【図２】図２は、図１の加加減速区間三角関数指令生成部１で生成される加速度指令曲線の一例を示す図である。
【図３】図３は、本発明に係る指令生成装置の実施の形態２の概略構成を示すブロック図である。
【図４】図４は、本発明に係る指令生成装置の実施の形態３の概略構成を示すブロック図である。
【発明を実施するための形態】
【０００９】
以下に、本発明に係る指令生成装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
【００１０】
実施の形態１．
図１は、本発明に係る指令生成装置の実施の形態１の概略構成を示すブロック図である。図１において、指令生成装置には、加加減速区間三角関数指令生成部１、加加減速区間パラメータ設定部２、基準減速停止距離演算部３、差距離演算部４、補正係数演算部５、減速停止距離演算部６および減速開始判別部７が設けられている。
【００１１】
ここで、加加減速区間三角関数指令生成部１は、１／２周期分の三角関数に基づいて生成された加速度指令曲線を参照し、予め設定されている最大加速度および最高速度と、動作毎に与えられる移動距離もしくは動作開始点と動作終了点に基づいて、制御周期（指令値生成周期）毎の位置指令ｐｓもしくは速度指令ｖｓを生成することができる。なお、加加減速区間三角関数指令生成部１は、制御対象のメカニカルシステムに対して位置制御を行う場合には位置指令ｐｓもしくは位置指令ｐｓと速度指令ｖｓの両方を生成し、制御対象のメカニカルシステムに対して速度制御を行う場合には速度指令ｖｓを生成することができる。
【００１２】
加加減速区間パラメータ設定部２は、加速区間の加速度増加区間と加速度減少区間および減速区間の加速度増加区間と加速度減少区間の時間の長さを独立に設定し、加加減速区間三角関数指令生成部１に出力することができる。
【００１３】
基準減速停止距離演算部３は、速度指令が速度台形パターン（加減速区間の加速度が一定の指令）となる位置指令もしくは速度指令に従って現在の速度から減速停止させる場合の現在地点から減速停止される地点までの距離を基準減速停止距離Ｌ０として演算する。
【００１４】
差距離演算部４は、その動作の目標位置もしくは当該動作での移動距離（メカニカルシステムを動作させるプログラムで指定された目標位置）Ｐｅｎｄと現在の位置指令Ｐｎｏｗとの差分に対応した差距離Ｌｓ＝Ｐｅｎｄ−Ｐｎｏｗを算出することができる。
【００１５】
補正係数演算部５は、加加減速区間の時間長さに関するパラメータから、制御対象の動作ごとに補正係数Ｐｇを算出することができる。
【００１６】
減速停止距離演算部６は、基準減速停止距離演算部３にて算出された基準減速停止距離Ｌ０と、補正係数演算部５にて算出された補正係数Ｐｇに基づいて、現在速度から減速停止されるまでの移動距離に対応した減速停止距離Ｌｇを算出することができる。例えば、減速停止距離Ｌｇ＝Ｐｇ＊Ｌ０で与えることができる。
【００１７】
減速開始判別部７は、指令生成周期ごとに減速停止距離演算部６で算出された減速停止距離Ｌｇと差距離演算部４で算出された差距離Ｌｓを比較することができる。そして、Ｌｇ≧Ｌｓという条件が満たされた指令生成周期において、減速を開始させる減速開始指令Ｉｓを加加減速区間三角関数指令生成部１に出力することができる。
【００１８】
図２は、図１の加加減速区間三角関数指令生成部１で生成される加速度指令曲線の一例を示す図である。図２において、加速度指令曲線には、加速区間Ａ、等速区間Ｂ、減速区間Ｃが含まれている。そして、位置指令、速度指令いずれも加速度指令で見た場合に、加速区間Ａ、減速区間Ｃのそれぞれが加速度増加区間Ｋ１、Ｋ７、等加速度区間Ｋ２、Ｋ６、加速度減少区間Ｋ３、Ｋ５の３区間に分割され、等速区間Ｂを合わせると、１つの動作で７つの区間Ｋ１〜Ｋ７に分けて指令が生成される。
【００１９】
また、合計４区間ある加速度増加区間Ｋ１、Ｋ７、加速度減少区間Ｋ３、Ｋ５の加速度指令が半周期（１／２周期）の三角関数（三角関数に定数を乗じてオフセットを加算してもよい）となるように指令が生成される。ここで、三角関数の周期は４区間Ｋ１、Ｋ３、Ｋ５、Ｋ７で別個に設定するようにしてもよい。
【００２０】
また、加速度増加区間Ｋ１、Ｋ７、等加速度区間Ｋ２、Ｋ６、加速度減少区間Ｋ３、Ｋ５の時間の長さは加加減速区間パラメータ設定部２より与えられる。加速度増加区間Ｋ１、Ｋ７、等加速度区間Ｋ２、Ｋ６、加速度減少区間Ｋ３、Ｋ５の時間長さをそれぞれ、ａｔ、ｄｔ、ｅｔ、ｆｔ、ｂｔ、ｃｔとする（これらはいずれも加加減速区間パラメータ設定部２より与えられる）。また、加速区間Ａおよび減速区間Ｃでの加速度最大値をそれぞれａｋｓ、ａｇｓとする。この時、動作開始からｔ秒後の位置位置指令ｐｓ（ｔ）、速度指令ｖｓ（ｔ）は、下記のように生成される。
【００２１】
すなわち、等速度区間Ｋ４までは、以下の（１）式から（１０）式で与えることができる。
・ｔ≦ａｔの時（加速度増加区間Ｋ１の時）
ｘ＝π＊ｔ／ａｔ−π／２  ・・・（１）
ｖｓ（ｔ）＝ａｋｓ＊ｔ／２−ａｋｓ＊ａｔ＊ｃｏｓ（ｘ）／２／π  ・・・（２）
ｐｓ（ｔ）＝ａｋｓ＊ｔ＊ｔ／４
−ａｔ＊ａｔ＊ａｋｓ＊（ｓｉｎ（ｘ）＋１）／２／π／π  ・・・（３）
【００２２】
・ａｔ＜ｔ≦ｋｔ２の時（等加速度区間Ｋ２の時：ｋｔ２＝ａｔ＋ｅｔ）
ｖｓ（ｔ）  ＝  ｖ１＋ａｋｓ＊（ｔ−ａｔ）  ・・・（４）
ｐｓ（ｔ）＝ｐ１＋ｖ１＊（ｔ−ａｔ）
＋ａｋｓ＊（ｔ−ａｔ）＊（ｔ−ａｔ）／２  ・・・（５）
【００２３】
・ｋｔ２＜ｔ≦ｋｔ２＋ｂｔの時（加速度減少区間Ｋ３の時）
ｘ＝π＊（ｔ−ｋｔ２）／ｂｔ−π／２  ・・・（６）
ｖｓ（ｔ）＝ｖ２＋ａｋｓ＊（ｔ−ｋｔ２）／２
＋ａｋｓ＊ｂｔ＊ｃｏｓ（ｘ）／２／π  ・・・（７）
ｐｓ（ｔ）＝ｐ２＋ｖ２＊（ｔ−ｋｔ２）＋ａｋｓ＊（ｔ−ｋｔ２）＊（ｔ−ｋｔ２）／４＋ａｋｓ＊ｂｔ＊ｂｔ＊（ｓｉｎ（ｘ）＋１）／２／π／π  ・・・（８）
【００２４】
・ｋｔ２＋ｂｔ＜ｔの時（減速開始まで、等速度区間Ｋ４）
ｖｓ（ｔ）＝ｖｓ  ・・・（９）
ｐｓ（ｔ）＝ｐ３＋ｖｓ＊（ｔ−ｋｔ２−ｂｔ）  ・・・（１０）
【００２５】
ただし、ｐ１、ｖ１、ｐ２、ｖ２、ｐ３はそれぞれ以下の（１１）式から（１５）式で与えることができる。
ｐ１＝ａｋｓ＊ａｔ＊ａｔ／４−ａｔ＊ａｔ＊ａｋｓ／π／π  ・・・（１１）
ｖ１＝ａｋｓ＊ａｔ／２  ・・・（１２）
ｐ２＝ｐ１＋ｖ１＊（ｋｔ２−ａｔ）
＋ａｋｓ＊（ｋｔ２−ａｔ）＊（ｋｔ２−ａｔ）／２  ・・・（１３）
ｖ２＝  １＋ａｋｓ＊（ｋｔ２−ａｔ）  ・・・（１４）
ｐ３＝ｐ２＋ｖ２＊ｂｔ
＋ａｋｓ＊ｂｔ＊ｂｔ／４＋ｂｔ＊ｂｔ＊ａｋｓ／π／π  ・・・（１５）
【００２６】
減速開始判別部７から減速開始指令Ｉｓが入力された時刻をｔｇｓとすると、時刻ｔｇｓからは、位置指令ｐｓもしくは速度指令ｖｓは加速度減少区間Ｋ５から生成される。そして、時刻ｔｇｓにおける速度指令をｖｇｓ、位置指令をｐｇｓとすると、指令生成周期ごとの指令は、加速度減少区間Ｋ５からは、以下の（１６）式から（２３）式で与えることができる。
【００２７】
・ｔｇｓ＜ｔ≦ｔｇｓ＋ｃｔの時（加速度減少区間Ｋ５の時）
ｔ２＝ｔ−ｔｇｓとすると、
ｘ＝π＊ｔ２／ｃｔ−π／２  ・・・（１６）
ｖｓ（ｔ）＝ｖｇｓ−ａｇｓ＊ｔ２／２
＋ａｇｓ＊ｃｔ＊ｃｏｓ（ｘ）／２／π  ・・・（１７）
ｐｓ（ｔ）＝ｐｇｓ＋ｖｇｓ＊ｔ２−ａｇｓ＊ｔ２＊ｔ２／４
＋ｃｔ＊ｃｔ＊ａｇｓ＊（ｓｉｎ（ｘ）＋１）／２／π／π  ・・・（１８）
【００２８】
・ｔｇｓ＋ｃｔ＜ｔ≦ｔｇｓ＋ｃｔ＋ｆｔの時（等加速度区間Ｋ６の時）
ｔ２＝ｔ−ｔｇｓ−ｃｔとすると、
ｖｓ（ｔ）＝ｖ１ｇ−ａｇｓ＊ｔ２  ・・・（１９）
ｐｓ（ｔ）＝ｐ１ｇ＋ｖ１ｇ＊ｔ２−ａｇｓ＊ｔ２＊ｔ２／２  ・・・（２０）
【００２９】
・ｔｇｓ＋ｇｔ２＜ｔ≦ｔｇｓ＋ｇｔ２＋ｄｔの時（加速度増加区間Ｋ７の時：ｇｔ２＝ｃｔ＋ｆｔ）
ｔ２＝ｔ−ｔｇｓ−ｇｔ２とすると、
ｘ＝π＊ｔ２／ｄｔ−π／２  ・・・（２１）
ｖｓ（ｔ）＝ｖ２ｇ−ａｇｓ＊ｔ２／２
−ａｇｓ＊ｄｔ＊ｃｏｓ（ｘ）／２／π  ・・・（２２）
ｐｓ（ｔ）＝ｐ２ｇ＋ｖ２ｇ＊ｔ２−ａｇｓ＊ｔ２＊ｔ２／４ａｇｓ＊ｄｔ＊ｄｔ＊（ｓｉｎ（ｘ）＋１）／２／π／π  ・・・（２３）
【００３０】
ｔ＞ｔｇｓ＋ｇｔ２＋ｄｔの時は、加速度指令および速度指令はいずれも０とし、位置指令は目標位置とする。
【００３１】
ただし、ｐ１ｇ、ｖ１ｇ、ｐ２ｇ、ｖ２ｇはそれぞれ以下の（２４）式から（２７）式で与えることができる。
ｐ１ｇ＝ｐｇｓ＋ｖｇｓ＊ｃｔ−ａｇｓ＊ｃｔ＊ｃｔ／４
＋ｃｔ＊ｃｔ＊ａｇｓ／π／π  ・・・（２４）
ｖ１ｇ＝ｖｇｓ−ａｇｓ＊ｃｔ／２  ・・・（２５）
ｐ２ｇ＝ｐ１ｇ＋ｖ１ｇ＊（ｇｔ２−ｃｔ）
−ａｇｓ＊（ｇｔ２−ｃｔ）＊（ｇｔ２−ｃｔ）／２    ・・・（２６）
ｖ２ｇ＝ｖ１ｇ−ａｇｓ＊（ｇｔ２−ｃｔ）  ・・・（２７）
【００３２】
以下、指令生成装置の動作について説明する。加加減速区間パラメータ設定部２において、加速度増加区間Ｋ１、Ｋ７、等加速度区間Ｋ２、Ｋ６および加速度減少区間Ｋ３、Ｋ５の時間長さａｔ、ｅｔ、ｂｔ、ｃｔ、ｆｔ、ｄｔがそれぞれ設定され、加加減速区間三角関数指令生成部１に出力される。また、加速区間Ａおよび減速区間Ｃの加速度最大値ａｋｓ、ａｇｓもそれぞれ設定され、加加減速区間三角関数指令生成部１に出力される。
【００３３】
なお、加速度増加区間Ｋ１、Ｋ７、等加速度区間Ｋ２、Ｋ６および加速度減少区間Ｋ３、Ｋ５の時間長さａｔ、ｅｔ、ｂｔ、ｃｔ、ｆｔ、ｄｔが直接指定されている場合は、指定された値がそのまま加加減速区間三角関数指令生成部１へ出力される。
【００３４】
また、速度指令が加速度一定の速度指令（もしくは位置指令、速度台形パターンと呼ばれる）に従って生成され、加速区間Ａおよび減速区間Ｃの加速度最大値をそれぞれａｋｓ、ａｇｓとした場合の加速時間ｋｔと減速時間ｇｔに対する比率ｒａｔ、ｒｅｔ、ｒｂｔ、ｒｃｔ、ｒｆｔ、ｒｄｔで与えられる場合、以下の（２８）式から（３３）式にて加速度増加区間Ｋ１、Ｋ７、等加速度区間Ｋ２、Ｋ６および加速度減少区間Ｋ３、Ｋ５の時間長さａｔ、ｅｔ、ｂｔ、ｃｔ、ｆｔ、ｄｔが算出され、加加減速区間三角関数指令生成部１に出力される。また、加速時間ｋｔと減速時間ｇｔに対する比率ｒａｔ、ｒｅｔ、ｒｂｔ、ｒｃｔ、ｒｆｔ、ｒｄｔは、補正係数演算部５に出力される。
【００３５】
ａｔ＝ｒａｔ＊ｋｔ  ・・・（２８）
ｅｔ＝ｒｅｔ＊ｋｔ  ・・・（２９）
ｂｔ＝ｒｂｔ＊ｋｔ  ・・・（３０）
ｃｔ＝ｒｃｔ＊ｇｔ  ・・・（３１）
ｆｔ＝ｒｆｔ＊ｇｔ  ・・・（３２）
ｄｔ＝ｒｄｔ＊ｇｔ  ・・・（３３）
【００３６】
ここで、時間長さａｔ、ｅｔ、ｂｔ、ｃｔ、ｆｔ、ｄｔが直接指定されている場合、加速時間ｋｔと減速時間ｇｔに対する比率ｒａｔ、ｒｅｔ、ｒｂｔ、ｒｃｔ、ｒｆｔ、ｒｄｔは、以下の（３４）式から（３９）式から算出することができる。
【００３７】
ｒａｔ＝ａｔ／ｋｔ  ・・・（３４）
ｒｅｔ＝ｅｔ／ｋｔ  ・・・（３５）
ｒｂｔ＝ｂｔ／ｋｔ  ・・・（３６）
ｒｃｔ＝ｃｔ／ｇｔ  ・・・（３７）
ｒｆｔ＝ｆｔ／ｇｔ  ・・・（３８）
ｒｄｔ＝ｄｔ／ｇｔ  ・・・（３９）
【００３８】
なお、加速区間Ａおよび減速区間Ｃの加速度最大値ａｋｓ、ａｇｓは、指令生成装置ごとに定められているパラメータを読み込むようにしてもよいし、指令生成装置を動作させるプログラムでの設定値を読み込むようにしてもよい。また、加速区間Ａおよび減速区間Ｃの加速度最大値ａｋｓ、ａｇｓがプログラムで設定されていない場合は、指令生成装置ごとに予め設定されている値を用いるようにしてもよい。
【００３９】
ここで、プログラムで設定される制御対象の動作の最高速度をｖｍａｘとすると、加速時間ｋｔと減速時間ｇｔはそれぞれ、以下の（４０）式および（４１）式にて算出することができる。
【００４０】
ｋｔ＝ｖｍａｘ／ａｋｓ  ・・・（４０）
ｇｔ＝ｖｍａｘ／ａｇｓ  ・・・（４１）
なお、時間長さａｔ、ｂｔ、ｃｔ、ｄｔもしくは加速時間ｋｔと減速時間ｇｔに対する比率ｒａｔ、ｒｂｔ、ｒｃｔ、ｒｄｔは独立に設定することができる。
【００４１】
そして、加速度増加区間Ｋ１、Ｋ７、等加速度区間Ｋ２、Ｋ６および加速度減少区間Ｋ３、Ｋ５の時間長さａｔ、ｅｔ、ｂｔ、ｃｔ、ｆｔ、ｄｔが加加減速区間三角関数指令生成部１に出力されると、１／２周期分の三角関数に基づいて加速度指令曲線が加加減速区間三角関数指令生成部１にて生成される。そして、制御対象の動作の目標位置もしくは当該動作での移動距離Ｐｅｎｄが加加減速区間三角関数指令生成部１に与えられると、その加速度指令曲線に従って位置指令ｐｓおよび速度指令ｖｓのいずれか一方もしくは両方が指令生成周期ごとに生成され、基準減速停止距離演算部３および差距離演算部４に出力される。
【００４２】
なお、加加減速区間三角関数指令生成部１から位置指令ｐｓが出力される時は指令生成周期ごとにｐｓ（ｔ）を出力し、加加減速区間三角関数指令生成部１から速度指令ｖｓが出力される時は指令生成周期ごとにｖｓ（ｔ）を出力し、加加減速区間三角関数指令生成部１から位置指令ｐｓと速度指令ｖｓの両方が出力される時は、ｐｓ（ｔ）とｖｓ（ｔ）を出力する。
【００４３】
ここで、加加減速区間の加速度指令が半周期の三角関数で表現されているため、加加減速区間の速度指令ｖｓ（ｔ）は三角関数と時間ｔの１次式、位置指令ｐｓ（ｔ）は三角関数と時間ｔの２次式で表現することができる。
【００４４】
次に、位置指令ｐｓおよび速度指令ｖｓのいずれか一方もしくは両方が基準減速停止距離演算部３に入力されると、現在の速度指令ｖｓ（ｔ）の値をｖｎとし、ｖｎから加速度一定の加速度最大値ａｇｓで減速される場合の現在地点から停止位置までの距離Ｌ０が算出され、減速停止距離演算部６に出力される。なお、現在地点から停止位置までの距離Ｌ０は、加速度一定の加速度最大値ａｇｓで速度ｖｎから減速停止する場合の移動距離であるので、以下の（４２）式にて与えることができる。
Ｌ０＝ｖｎ＊ｖｎ／ａｇｓ／２  ・・・（４２）
【００４５】
また、位置指令ｐｓおよび速度指令ｖｓのいずれか一方もしくは両方が差距離演算部４に入力されると、制御対象の動作の目標位置もしくは当該動作での移動量Ｐｅｎｄと現在の位置指令Ｐｎｏｗとの差分に対応した差距離Ｌｓ＝Ｐｅｎｄ−Ｐｎｏｗが算出され、減速開始判別部７に出力される。ただし、Ｐｎｏｗ＝ｐｓ（ｔ）とした。
【００４６】
また、加速時間ｋｔと減速時間ｇｔに対する比率ｒａｔ、ｒｅｔ、ｒｂｔ、ｒｃｔ、ｒｆｔ、ｒｄｔが加加減速区間パラメータ設定部２から補正係数演算部５に入力されると、減速停止距離演算部６にて算出される減速停止距離Ｌｇを補正する補正係数Ｐｇが算出され、減速停止距離演算部６に出力される。なお、補正係数Ｐｇは、加速度一定で減速停止させる場合の移動距離と、加加減速区間三角関数指令で減速停止する場合の移動距離の比から計算することができ、以下の（４３）式で与えることができる。
【００４７】
Ｐｇ＝（１＋ｒｃｔ）
＋２＊（１／８−１／π／π）＊（ｒｄｔ＊ｒｄｔ−ｒｃｔ＊ｒｃｔ）  ・・・（４３）
なお、加速時間ｋｔと減速時間ｇｔに対する比率ｒｃｔ、ｒｄｔは、制御対象の動作中は一定であるため、（４３）式の演算は各動作の動作開始時に１度だけ行えばよく、指令生成周期ごとに行う必要はない。
【００４８】
次に、基準減速停止距離演算部３にて算出された基準減速停止距離Ｌ０が減速停止距離演算部６に入力されるとともに、補正係数演算部５にて算出された補正係数Ｐｇが減速停止距離演算部６に入力されると、加加減速区間三角関数指令で減速停止させる場合の減速停止距離Ｌｇ＝Ｐｇ＊Ｌ０が指令生成周期ごとに算出され、減速開始判別部７に出力される。
【００４９】
次に、差距離演算部４にて算出された差距離Ｌｓが減速開始判別部７に入力されるとともに、減速停止距離演算部６にて算出された減速停止距離Ｌｇが減速開始判別部７に入力されると、減速停止距離Ｌｇと差距離Ｌｓとが指令生成周期ごとに比較される。そして、動作開始後に初めてＬｇ≧Ｌｓという条件を満たすと、その指令生成周期に減速開始指令Ｉｓが加加減速区間三角関数指令生成部１に出力される。そして、減速開始指令Ｉｓが加加減速区間三角関数指令生成部１に入力されると、加加減速区間三角関数指令生成部１にて生成される位置指令ｐｓもしくは速度指令ｖｓが図２の加速度減少区間Ｋ５に入り、（１６）式から（２３）式に従がって位置指令ｐｓもしくは速度指令ｖｓを順次生成される。
【００５０】
以上説明したように、実施の形態１によれば、加加減速区間長さを４箇所独立に設定することが可能となるとともに、１／２周期分の三角関数に基づいて加速度指令曲線を生成することができ、計算量の増大を抑制しつつ、加加速度を連続的に設定することができる。また、加速度一定で停止させる場合の基準減速停止距離Ｌ０に補正係数Ｐｇを乗算することで、現在の位置および速度から減速停止させる場合の減速停止距離Ｌｇを算出させることができ、減速開始を判別するために必要な計算量を減少させることができる。さらに、加加減速区間の始点及び終点にて加加速度が０となるため、動作区間全域（加速度増加区間Ｋ１、Ｋ７、等加速度区間Ｋ２、Ｋ４、Ｋ６、加速度減少区間Ｋ３、Ｋ５）で常に加加速度を連続させることができ、メカニカルシステムの制御対象を滑らかに動作させることができる。
【００５１】
実施の形態２．
図３は、本発明に係る指令生成装置の実施の形態２の概略構成を示すブロック図である。図３において、この指令生成装置では、図１の基準減速停止距離演算部３、補正係数演算部５および減速停止距離演算部６の代わり、補正係数演算部１５および減速停止距離演算部１６が設けられている。
【００５２】
ここで、補正係数演算部１５は、加加減速区間の時間長さに関するパラメータおよび減速区間の加速度最大値に基づいて、制御対象の動作ごとに補正係数Ｐｇ２を算出することができる。
【００５３】
減速停止距離演算部１６は、加加減速区間三角関数指令生成部１にて生成された位置指令ｐｓもしくは速度指令ｖｓと、補正係数演算部１５にて算出された補正係数Ｐｇ２に基づいて、現在速度から減速停止されるまでの移動距離に対応した減速停止距離Ｌｇ２を算出することができる。
【００５４】
そして、加速時間ｋｔと減速時間ｇｔに対する比率ｒａｔ、ｒｅｔ、ｒｂｔ、ｒｃｔ、ｒｆｔ、ｒｄｔが加加減速区間パラメータ設定部２から補正係数演算部１５に入力されると、減速停止距離演算部１６にて算出される減速停止距離Ｌｇ２を補正する補正係数Ｐｇ２が算出され、減速停止距離演算部１６に出力される。なお、補正係数Ｐｇ２は、速時間ｋｔと減速時間ｇｔに対する比率ｒａｔ、ｒｂｔ、ｒｃｔ、ｒｄｔと減速区間の加速度最大値ａｇｓから、以下の（４４）式で与えることができる。
Ｐｇ２＝（（１＋ｒｃｔ）／２＋（１／８−１／π／π）＊（ｒｄｔ＊ｒｄｔ−ｒｃｔ＊ｒｃｔ））／ａｇｓ    ・・・（４４）
【００５５】
次に、加加減速区間三角関数指令生成部１にて生成された位置指令ｐｓもしくは速度指令ｖｓが減速停止距離演算部１６に入力されるとともに、補正係数演算部１５にて算出された補正係数Ｐｇ２が減速停止距離演算部１６に入力されると、加加減速区間三角関数指令で減速停止させる場合の減速停止距離Ｌｇ２が指令生成周期ごとに算出され、減速開始判別部７に出力される。なお、減速停止距離Ｌｇ２は、補正係数演算部１５で算出された補正係数Ｐｇ２と現在の速度指令ｖｎ＝ｖｓ（ｔ）から、以下の（４５）式で与えることができる。
Ｌｇ＝Ｐｇ２＊ｖｎ＊ｖｎ  ・・・（４５）
【００５６】
以上説明したように、実施の形態２によれば、加加減速区間長さを４箇所独立に設定することが可能となるとともに、１／２周期分の三角関数に基づいて加速度指令曲線を生成することができ、計算量の増大を抑制しつつ、加加速度を連続的に設定することができる。また、現在速度の２乗に定数を乗じることで、現在の位置および速度から減速停止させる場合の減速停止距離Ｌｇ２を算出させることができ、減速開始を判別するために必要な計算量を減少させることができる。さらに、加加減速区間の始点及び終点にて加加速度が０となるため、動作区間全域（加速度増加区間Ｋ１、Ｋ７、等加速度区間Ｋ２、Ｋ４、Ｋ６、加速度減少区間Ｋ３、Ｋ５）で常に加加速度を連続させることができ、メカニカルシステムの制御対象を滑らかに動作させることができる。
【００５７】
実施の形態３．
図４は、本発明に係る指令生成装置の実施の形態３の概略構成を示すブロック図である。図４において、この指令生成装置では、図３の加加減速区間三角関数指令生成部１および減速停止距離演算部１６の代わり、加加減速区間三角関数指令生成部２１および減速停止距離演算部２６および加速区間残距離残速度演算部９が設けられている。
【００５８】
ここで、加速区間残距離残速度演算部９は、図２の加速区間Ａの加速度増加区間Ｋ１もしくは等速区間Ｂにある場合に、現在の位置指令、速度指令および加速度指令から新たに加速度減少曲線を生成して加速度を０にする場合に、加速度が０になるまでの速度増加量に対応した加速区間残速度ｖｚと、加速度が０になるまでの移動量に対応した加速区間残距離Ｐｂとに基づいて、加速度の減少を開始させる加速度減少開始指令を加加減速区間三角関数指令生成部２１に出力することができる。
【００５９】
減速停止距離演算部２６は、加速区間残距離残速度演算部９にて生成された加速区間残速度ｖｚおよび加速区間残距離Ｐｂと、補正係数演算部１５にて算出された補正係数Ｐｇ２に基づいて、現在速度から減速停止されるまでの移動距離に対応した減速停止距離Ｌｇ４を算出することができる。
【００６０】
加加減速区間三角関数指令生成部２１は、１／２周期分の三角関数に基づいて生成された加速度指令曲線を参照し、予め設定されている最大加速度および最高速度と、動作毎に与えられる移動距離もしくは動作開始点と動作終了点に基づいて、制御周期（指令値生成周期）毎の位置指令ｐｓもしくは速度指令ｖｓを生成することができる。また、加加減速区間三角関数指令生成部２１は、減速開始判別部７から出力された減速開始指令Ｉｓに基づいて、減速を開始させるとともに、加速区間残距離残速度演算部９から出力された加速度減少開始指令Ｉａに基づいて、加速度の減速を開始させることができる。
【００６１】
そして、位置指令ｐｓもしくは速度指令ｖｓが加速区間残距離残速度演算部９に入力されると、加速区間Ａの加速度増加区間Ｋ１もしくは等速区間Ｂにあるかどうかが判断される。そして、加速区間Ａの加速度増加区間Ｋ１もしくは等速区間Ｂにある場合、現在の位置指令、速度指令、加速度指令から新たに加速度減少曲線を生成して加速度を０にする場合に、加速度が０になるまでの速度増加量（加速区間残速度）ｖｚおよび加速度０になるまでの移動量（加速区間残距離）Ｐｂが算出される。
【００６２】
具体的には、加速区間残速度ｖｚおよび加速区間残距離Ｐｂは、現在の加速度指令ａｎ、加速度減少区間Ｋ３の比率ｒｂｔ、最高速度ｖｍａｘ、加速度最大値ａｋｓを用いることで、以下の（４６）式から（４８）式にて算出することができる。
ｖｚ＝ａｎ＊ａｎ＊ｒｂｔ＊ｖｓ／ａｋｓ／ａｋｓ  ・・・（４６）
ｂｂｔ＝ａｎ＊ｒｂｔ＊ｋｔ／ａｋｓ  ・・・（４７）
Ｐｂ＝ｖｎ＊ｂｂｔ＋ａｎ＊ｂｂｔ２＊（１／４＋１／π２）  ・・・（４８）
【００６３】
なお、現在の加速度指令ａｎは、速度指令ｖｓの差分で算出してもよいし、（２）式および（４）式の時間微分式から算出してもよい。
【００６４】
そして、ｖｚ≧ｖｍａｘ−ｖｎという条件を満たした最初の指令生成周期で、加速度減少開始指令Ｉａが加加減速区間三角関数指令生成部２１に出力される。また、加速区間残速度ｖｚと現在の速度指令の値ｖｎとから、ｖｅｎｄ＝ｖｎ＋ｖｚという演算が行われ、（４８）式で算出した加速区間残距離Ｐｂとｖｅｎｄが減速停止距離演算部２６に出力される。
【００６５】
そして、加速区間残距離Ｐｂとｖｅｎｄが減減速停止距離演算部２６に入力されると、以下の（４９）式を用いることで、加速度が０になった地点で減速を開始した場合の停止までの移動距離Ｌｇ３が算出される。そして、移動距離Ｌｇ３が算出されると、以下の（５０）式を用いることで、現在の位置指令、速度指令から新たに加速度減少曲線を生成して加速度を０まで減少し、加速度０になった地点から減速停止する場合の減速停止までの減速停止距離Ｌｇ４が算出され、減速開始判別部７に出力される。
Ｌｇ３＝Ｐｇ２＊ｖｅｎｄ＊ｖｅｎｄ  ・・・（４９）
Ｌｇ４＝Ｐｂ＋Ｌｇ３  ・・・（５０）
【００６６】
そして、減速停止距離Ｌｇ４が減速開始判別部７に入力されると、動作開始後初めてＬｇ４≧Ｌｓという条件を満たした指令生成周期で減速開始指令Ｉｓが加加減速区間三角関数指令生成部２１に出力される。
【００６７】
そして、加加減速区間三角関数指令生成部２１において、加速区間残距離残速度演算部９から加速度減少開始指令Ｉａが受け取られた場合か、減速開始判別部７から減速開始指令Ｉｓが受信された場合、現在時刻をｋｔ２とし、加速度減少区間Ｋ３以降の指令生成が開始される。
【００６８】
ここで、加速区間残距離残速度演算部９からの加速度減少開始指令Ｉａに基づいて、加速度減少区間Ｋ３以降の指令生成が開始された場合は、減速開始判別部７から減速開始指令Ｉｓを受信するまでは減速は開始されず、減速開始判別部７から減速開始指令Ｉｓを受信した指令生成周期から減速が開始され、加速度減少区間Ｋ５の指令生成が開始される。一方、減速開始判別部７からの減速開始指令Ｉｓに基づいて、加速度減少区間Ｋ３以降の指令生成が開始された場合は、加速度減少区間Ｋ３での指令生成が終了すると直ちに加速度減少区間Ｋ５の指令生成が開始され、減速が開始される。
【００６９】
以上説明したように、実施の形態３によれば、ｖｚ≧ｖｍａｘ−ｖｎという条件を満たした最初の指令生成周期で加速度の減少を開始させることにより、図２の加速区間Ａから減速停止が開始される場合においても、加速度が不連続になることを防止できる。
【産業上の利用可能性】
【００７０】
以上のように本発明に係る指令生成装置は、指令生成に必要な計算量の増大を抑制しつつ、加加速度区間を独立に設定するとともに、加加速度を連続的に設定することができ、実装機、半導体製造装置、射出成形機、ロボット、工作機械、包装機械、印刷機械などのメカニカルシステムの位置指令もしくは速度指令を生成する方法に適している。
【符号の説明】
【００７１】
１、２１  加加減速区間三角関数指令生成部
２  加加減速区間パラメータ設定部
３  基準減速停止距離演算部
４  差距離演算部
５、１５  補正係数演算部
６、１６、２６  減速停止距離演算部
７  減速開始判別部
９  加速区間残距離残速度演算部
【図１】
2010125958.tif 000003
【図２】
2010125958.tif 000004
【図３】
2010125958.tif 000005
【図４】
2010125958.tif 000006
【手続補正書】
【提出日】平成23年8月1日(2011.8.1)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
１／２周期分の三角関数に基づいて加加速度が連続となるように生成された加速度指令曲線を用いることで位置指令もしくは速度指令を生成する加加減速区間三角関数指令生成部を備えることを特徴とする指令生成装置。 
【請求項２】
前記加速度指令曲線の加減速区間を加速度増加区間、等加速度区間および加速度減少区間に分割し、加加速度が連続となるように各区間を接続し、各区間の時間の長さを互いに独立に設定する加加減速区間パラメータ設定部をさらに備えることを特徴とする請求項１に記載の指令生成装置。 
【請求項３】
現在速度から加速度一定で減速停止させる場合の移動距離を基準減速停止距離として演算する基準減速停止距離演算部と、
前記基準減速停止距離演算部にて算出された基準減速停止距離に基づいて、現在速度から減速停止させる場合の移動距離を減速停止距離として演算する減速停止距離演算部と、
目標位置と現在位置の差分に対応した差距離を演算する差距離演算部と、
前記減速停止距離と前記差距離との比較結果に基づいて、減速を開始させる減速開始指令を前記加加減速区間三角関数指令生成部に出力する減速開始判別部とをさらに備えることを特徴とする請求項１または２に記載の指令生成装置。 
【請求項４】
加速度増加区間および加速度減少区間の時間の長さに関するパラメータに基づいて、前記減速停止距離を補正する補正係数を算出する補正係数演算部をさらに備えることを特徴とする請求項３に記載の指令生成装置。 
【請求項５】
現在の速度指令に基づいて、現在速度から減速停止させる場合の移動距離を減速停止距離として演算する減速停止距離演算部と、
目標位置と現在位置の差分に対応した差距離を演算する差距離演算部と、
前記減速停止距離と前記差距離との比較結果に基づいて、減速を開始させる減速開始指令を前記加加減速区間三角関数指令生成部に出力する減速開始判別部とをさらに備えることを特徴とする請求項１または２に記載の指令生成装置。 
【請求項６】
加速区間の加速度増加区間もしくは等速区間にある場合に、現在の位置指令、速度指令および加速度指令から新たに加速度減少曲線を生成して加速度を０にする場合に、加速度が０になるまでの速度増加量に対応した加速区間残速度と、加速度が０になるまでの移動量に対応した加速区間残距離とに基づいて、加速度の減少を開始させる加速度減少開始指令を前記加加減速区間三角関数指令生成部に出力する算出加速区間残距離残速度演算部と、
前記基準減速停止距離演算部にて算出された加速区間残速度および加速区間残距離に基づいて、現在速度から減速停止させる場合の移動距離を減速停止距離として演算する減速停止距離演算部と、
目標位置と現在位置の差分に対応した差距離を演算する差距離演算部と、
前記減速停止距離と前記差距離との比較結果に基づいて、減速を開始させる減速開始指令を前記加加減速区間三角関数指令生成部に出力する減速開始判別部とをさらに備えることを特徴とする請求項１または２に記載の指令生成装置。 
【請求項７】
加速度増加区間および加速度減少区間の時間の長さに関するパラメータおよび減速区間の加速度最大値に基づいて、前記減速停止距離を補正する補正係数を算出する補正係数演算部をさらに備えることを特徴とする請求項５または６に記載の指令生成装置。
【国際調査報告】
2010125958.tif 000007
2010125958.tif 000008