(57)【特許請求の範囲】
【請求項１】
目標移動量に応じて所定周期ごとに動作指令を生成する移動体の指令生成方法において、
最大速度設定値および最大加速度設定値を含む設定パラメターと、前周期の指令速度と、前周期の指令加速度と、にもとづいて、
速度−加速度位相平面上において前周期の指令速度および前周期の指令加速度の対に対応する点から零速度および零加速度の対に対応する点までを結ぶ連続した軌道である停止軌道を求め、
前記停止軌道に沿った場合の移動距離である停止距離を計算し、
前記目標移動量と前周期の指令位置との差である残り距離と、前記停止距離と、を比較した結果にもとづいて、参照速度ｖｒｅｆの値を正の最大速度設定値、零および負の最大速度設定値のうちいずれかに逐次切り替え、
前記設定パラメターと、前周期の指令速度と、前周期の指令加速度と、前記参照速度と、
にもとづいて、
速度−加速度位相平面上において前周期の指令速度および前周期の指令加速度の対に対応する点から前記参照速度および零加速度の対に対応する点までを結ぶ連続した軌道である加減速軌道を求め、
前記求めた加減速軌道および前記参照速度から現周期の指令速度と現周期の指令加速度と現周期の指令位置とを逐次計算すること、を特徴とする指令生成方法。
【請求項２】
前記加減速軌道は、前記参照速度が変更されたときにのみ求められることを特徴とする請求項１記載の指令生成方法。
【請求項３】
目標速度に応じて所定周期ごとに動作指令を生成する移動体の指令生成方法において、
最大速度設定値および最大加速度設定値を含む設定パラメターと、前記目標速度と、前周期の指令速度と、前周期の指令加速度と、にもとづいて、
速度−加速度位相平面上において前周期の指令速度および前周期の指令加速度の対に対応する点から前記目標速度および零加速度の対に対応する点までを結ぶ連続した軌道である加減速軌道を求め、
前記求めた加減速軌道から現周期の指令速度と現周期の指令加速度とを逐次計算すること
を特徴とする指令生成方法。
【請求項４】
前記加減速軌道は、前記目標速度または最大速度設定値が変更されたときにのみ求められることを特徴とする請求項３記載の指令生成方法。
【請求項５】
前記加減速軌道は、加速度時間変化率の最大値の条件を満足する曲線と最大加速度の条件を満足する直線とを組み合わせて求められることを特徴とする請求項１から４記載の指令生成方法。
【請求項６】
前記加減速軌道は、加速度時間変化率の最大値の条件を満足する楕円の一部と直線とで構成されることを特徴とする請求項５記載の指令生成方法。
【請求項７】
前記加減速軌道は、加速度時間変化率の最大値の条件を満足する放物線と直線とで構成されることを特徴とする請求項５記載の指令生成方法。
【請求項８】
目標速度または目標移動量に応じて動作指令を生成する移動体の指令生成装置において、
最大速度設定値および最大加速度設定値を含む設定パラメターと、前記目標速度または前記目標移動量と前周期の指令位置と、前周期の指令速度と前周期の指令加速度とにもとづいて、
参照速度の値を正の最大速度設定値、零および負の最大速度設定値のうちいずれかに逐次切り替え、
前記設定パラメターと、前記目標移動量と、前周期の指令速度と、前周期の指令加速度と、
前記参照速度と、にもとづいて
速度−加速度位相平面上において前周期の指令速度および前周期の指令加速度の対に対応する点から前記参照速度および零加速度に対応する点までを結ぶ連続した曲線である加減速軌道を求め、
前記求めた加減速軌道から現周期の指令位置と現周期の指令速度と現周期の指令加速度とを逐次計算することを特徴とする指令生成装置。

【発明の詳細な説明】
【技術分野】
【０００１】
本発明は，目標移動量に応じて動作指令を生成する移動体の指令生成方法および装置に関する。
【背景技術】
【０００２】
サーボモータやロボットなどの移動体の動作指令は，移動体の動特性を考慮して過大な加速度が生じないように，すなわち速度を急激に変化させることがないように生成しなければならない。速度指令が急激に変化すると，移動体の機構そのものやアクチュエータに過大な付加を与え損傷させる恐れがあるばかりか，軌跡精度の悪化や停止時の行き過ぎおよび残留振動を増長するためである。また，移動体の最大速度や最大加速度は，移動体の作業内容や機械的な仕様に応じて適切に設定できることが望ましい。ここで最大速度および最大加速度とは，時々刻々変化する指令速度および指令加速度の一動作における最大値を指す。更には，振動励起を抑制するために，速度と加速度に加えて加速度の時間変化率の大きさを制限することが要求される場合も多い。
【０００３】
従来，移動体の動作指令を目標位置にもとづき生成するには，(従来技術１)目標移動量に応じてステップ状に出力した速度指令を移動平均フィルタに通す，(従来技術２)目標移動量に応じてステップ状に出力した速度指令をローパスフィルタに通す，といった方法があった。
【０００４】
(従来技術1)の移動平均フィルタとは，時系列の離散入力ｕ［ｉ］に対して出力ｙ［ｉ］を次式
【０００５】
【数１】
0005028674.tif 000002
【０００６】
によって計算するものであって，図１０(a)のようなステップ状の入力に対して図１０(b)のような台形型の波形を出力する。ここでＮは平均化時間で，
【０００７】
【数２】
0005028674.tif 000003
【０００８】
とする。図１０においてｖｍａｘが設定した最大速度，ｓが指定移動量であって時間軸と速度曲線とによって囲まれる面積に等しい。ここで，その加速度および減速度ａは，
【０００９】
【数３】
0005028674.tif 000004
【００１０】
で規定される。ただしΔｔ＞０は離散時間間隔である。移動平均フィルタに高さが設定最大速度ｖｍａｘで指定移動量ｓの面積を有するステップ状の入力を与えると，加減速度ａの台形型の速度指令となって出力される。したがって，急激に変化しない速度指令を簡単に生成することができるのである。
【００１１】
(従来技術２)のローパスフィルタとは，時系列の離散入力ｕ［ｉ］に対して出力ｙ［ｉ］を次式
【００１２】
【数４】
0005028674.tif 000005
【００１３】
によって計算するものであって，図１１(a)のような指定移動量ｓの面積を有するステップ状の入力に対して近似的に
【００１４】
【数５】
0005028674.tif 000006
【００１５】
で与えられる図１１(b)のような波形を出力する。ここでＴｌｏｗｐａｓｓはフィルタの時定数で，この値を大きくすると入力に対する出力の変化がより緩やかになる。また，加速度の最大値は
【００１６】
【数６】
0005028674.tif 000007
【００１７】
で与えられる。移動平均フィルタとは得られる波形が異なるが，ローパスフィルタによって急激に変化しない速度指令を簡単に生成することができる。
【００１８】
上記従来技術１，２は単体で用いられることもあるが，移動平均フィルタを二回用いて加速度が連続的に変化する滑らかな指令波形を得る，移動平均フィルタの出力結果を更にローパスフィルタに通してより滑らかな指令波形を得る，といった方法も公知である。
【００１９】
特許文献１ではサーボモータの加減速制御において加速度を台形状に変化させ，なおかつ加減速中間領域において一定の最大加速度を維持して加減速することによって滑らかな駆動力変化と加減速所要時間の短縮を狙った方法が開示されている。図１２において(a)が時間軸ｔに対する加速度ａの波形，(b)が速度ｖの波形であって，ｎは加速度増加区間および加速度減少区間に対応する時間を処理周期に対応する時間で割った処理回数，
0005028674.tif 000008
は加速度一定区間に対応する処理回数，である。加速度増加区間および加速度減少区間における加速度の時間変化率は，それぞれ正／負の一定値に保たれる。加速度一定区間における加速度の時間変化率は零である。すなわち，加速度を台形状に連続的に変化させれば，加速度の時間変化率は零でない一定値または零に保たれる。加速度の変化率が大きな値をとらないように制限することで，駆動する機械系に与える振動を抑制できる。ただし特許文献１は目標速度(ここでは，ＮＣ装置の送り速度)が指令された場合の加減速方法を与えるものであって，目標位置や目標移動量に対し指定された点まで移動して停止するような位置決め手段を提供するものではない。
【００２０】
以上に示したような従来技術１，２の他にも，(従来技術3) 設定最大速度と設定最大加速度および目標移動量にもとづいて加速度波形を正弦曲線や直線で構成する
方法がある。(従来技術3)は，正弦曲線や正弦曲線と直線との組み合わせによって構成した加速度波形にもとづいた速度指令波形を出力するものである。その例は，例えば特許文献２に開示されている。図１３は，特許文献２の加減速制御方法によって得られる加速度波形と，これに対応する速度波形を並べた図である。図においてＴａは加減速時間，ａｍａｘは最大加速度，ａは加速度指令，ｔは時間，ｖは速度指令，ｖｍａｘは最大速度，Ｓは目標移動量であって，区間１から７はそれぞれ加速度波形の構成が異なる区間である。区間１，３，５，７はそれぞれ正弦曲線であり，各区間の時間は加減速時間Ｔａの１／４となっている。また区間２，６は一定加速度区間，区間４は一定速度区間である。図のように各区間での加速度が連続となるように正弦曲線と直線とを組み合わせて加速度波形を構成することで，(従来技術１，２)のような加速度不連続による振動励起の問題を生じにくい。指令目標移動量Ｓに応じた指令を生成するためには，区間４の時間や加減速時間Ｔａを調整する。更に特許文献２では，特に目標移動量が小さい場合に加減速時間Ｔａの減少に伴う加速度時間変化率(躍動値)の増大を避けるため，最大速度ｖｍａｘと最大加速度ａｍａｘを計算し直す手順を設けている。図１４は特許文献２の加減速方法の手順を示した流れ図である。図において１４０１は予め設定された加速度時間変化率の最大値などのパラメターにもとづいて加減速計算に必要な諸変数を計算するとともに後段の初期設定を実行する初期計算ブロック，１４０２は初期計算ブロックの計算結果を利用して動作周期毎の計算を逐次実行する逐次計算ブロックである。ここでは，初期計算ブロック１４０１において初期速度や初期化速度はいずれも零であることが前提となっている。また，逐次計算ブロック１４０２では経過時間ｔのみが変化し，初期計算ブロックで計算した最大速度や目標移動量などは固定値となっている。このように，特許文献２では，一連の指令生成に必要なパラメターを最初に計算し，動作開始後は計算したパラメターにもとづいて指令速度波形を一意に生成するようになっていた。なお，区間１，３，５，７の各時間は加減速時間Ｔａの１／４となっているが，これは計算のため特許文献２で特に限定したものであって，一般には固定する必要がない値である。
【特許文献１】特開平６−１６８０２１号公報（第１頁，図５，図６）
【特許文献２】特開２００１−２９６９１２号公報（第５−１０頁，図４，図６）
【発明の開示】
【発明が解決しようとする課題】
【００２１】
上記(従来技術１)で得られる指令は加速度が不連続であり，加速度の時間変化率が非常に大きくなるため移動体の高次振動を励起し易いという問題がある。また，式（３）から分かるように移動平均フィルタへのステップ入力の高さ(最大速度)に応じて加速度の大きさが変化するため，特に低速運転時の加減速時間が長くなり，結果として移動完了までの所要時間が長くなってしまう。(従来技術２)も動作開始時や減速開始時に加速度が不連続となる問題を抱えている。加速度の大きさは式（６）から分かるように最大速度ｖｍａｘと時定数Ｔｌｏｗｐａｓｓの設定で調整できるが，このときの出力指令は式（５）によって一意に決まる。式（５）の値は時定数Ｔｌｏｗｐａｓｓの値によって０に収束する速度が決まるので，加速度の大きさを制限するためにＴｌｏｗｐａｓｓを大きくすると，移動完了が非常に遅くなるという問題もある。
特許文献１の方法によれば，加速度が連続的に変化するため上記従来技術における振動励起の問題は解決できる。しかし，与えられた目標速度と前周期の指令速度との差が小さい場合，図１２(a)のような台形型の加速度波形を用いると指令速度が目標速度を上回ってしまうため，一定加速度を不連続に切り替える制御を実施しなければならない(特許文献１の第5頁，第００２９−００３０段落)。この場合，従来技術１や２と同様，加速度が不連続となるため振動励起の問題が発生する。更に，特許文献１は与えられた目標速度を実現するための加減速方法を与えるものであって，移動体の目標移動量を実現する方法については言及されていない。
【００２２】
特許文献２の方法では目標移動量から適切な速度指令波形を予め設計するため，上に述べたような従来技術１，２の問題点は解決できる。しかし，速度指令波形の設計は初期状態および動作完了状態において移動体が完全停止していることを前提としており，移動中に目標移動量が変更された場合や最大速度の設定値が変更された場合には対応できないという問題がある。特にロボットでは複数の目標点列を順次切り替えて連続的な動作を実現させることが多いため，停止状態に始まり停止状態に終わる動作を前提とした特許文献２の方法を利用することは困難である。また，区間１，３，５，７の各時間は加減速時間Ｔａの１／４に固定されていたが，目標移動量Ｓに応じてＴａを短縮すると，この制約によって加速度時間変化率の増大が顕著になり，結果として最大加速度を減少させなければ加速度時間変化率の制限が守れない場合が多くなってしまう。最大加速度の減少は動作時間の増大を招くことは特許文献２においても指摘されており，特許文献２では最大加速度を減少させて振動を抑制するか，動作時間短縮を優先して最大加速度を保ったまま加減速時間を短縮するか，をユーザーが選択できるようにしていた。
【００２３】
以上に述べた問題点を総合すると，従来の方法では，初期運動状態(初期速度，初期加速度)によらず指令波形を生成可能である，移動途中であっても目標移動量や最大速度の変更に対応可能である，移動体の振動励起を抑制できる，といった，サーボモータやロボットにしばしば求められる条件を同時に満足することができていなかった。
【００２４】
本発明は以上に述べたような従来技術の問題点を解決するべくなされたものであって，
移動体の振動励起を抑制しなおかつできるだけ目標移動量への到達が早い動作指令を出力可能であるとともに，移動中の目標移動量や最大速度の変更にも対応可能である指令生成方法を提供することを目的としている。
【課題を解決するための手段】
【００２５】
上記問題を解決するため，本発明は、次のように構成したのである。
請求項１に記載の発明は，目標移動量に応じて所定周期ごとに動作指令を生成する移動体の指令生成方法において、最大速度設定値および最大加速度設定値を含む設定パラメターと、前周期の指令速度と、前周期の指令加速度と、にもとづいて、速度−加速度位相平面上において前周期の指令速度および前周期の指令加速度の対に対応する点から零速度および零加速度の対に対応する点までを結ぶ連続した軌道である停止軌道を求め、前記停止軌道に沿った場合の移動距離である停止距離を計算し、前記目標移動量と前周期の指令位置との差である残り距離と、前記停止距離と、を比較した結果にもとづいて、参照速度ｖｒｅｆの値を正の最大速度設定値、零および負の最大速度設定値のうちいずれかに逐次切り替え、前記設定パラメターと、前周期の指令速度と、前周期の指令加速度と、前記参照速度と、にもとづいて、速度−加速度位相平面上において前周期の指令速度および前周期の指令加速度の対に対応する点から前記参照速度および零加速度の対に対応する点までを結ぶ連続した軌道である加減速軌道を求め、前記求めた加減速軌道および前記参照速度から現周期の指令速度と現周期の指令加速度と現周期の指令位置とを逐次計算すること、を特徴とするものである。
また，請求項２に記載の発明は、前記加減速軌道は、前記参照速度が変更されたときにのみ求められることを特徴とするものである。
また，請求項３に記載の発明は、目標速度に応じて所定周期ごとに動作指令を生成する移動体の指令生成方法において、最大速度設定値および最大加速度設定値を含む設定パラメターと、前記目標速度と、前周期の指令速度と、前周期の指令加速度と、にもとづいて、
速度−加速度位相平面上において前周期の指令速度および前周期の指令加速度の対に対応する点から前記目標速度および零加速度の対に対応する点までを結ぶ連続した軌道である加減速軌道を求め、前記求めた加減速軌道から現周期の指令速度と現周期の指令加速度とを逐次計算することを特徴とするものである。
また，請求項４に記載の発明は、前記加減速軌道は、前記目標速度または最大速度設定値が変更されたときにのみ求められることを特徴とするものである。
また，請求項５に記載の発明は、前記加減速軌道は、加速度時間変化率の最大値の条件を満足する曲線と最大加速度の条件を満足する直線とを組み合わせて求められることを特徴とするものである。
また，請求項６に記載の発明は、前記加減速軌道は、加速度時間変化率の最大値の条件を満足する楕円の一部と直線とで構成されることを特徴とするものである。
また，請求項７に記載の発明は、前記加減速軌道は、加速度時間変化率の最大値の条件を満足する放物線と直線とで構成されることを特徴とするものである。
また，請求項８に記載の発明は、目標速度または目標移動量に応じて動作指令を生成する移動体の指令生成装置において、最大速度設定値および最大加速度設定値を含む設定パラメターと、前記目標速度または前記目標移動量と前周期の指令位置と、前周期の指令速度と前周期の指令加速度とにもとづいて、参照速度の値を正の最大速度設定値、零および負の最大速度設定値のうちいずれかに逐次切り替え、前記設定パラメターと、前記目標移動量と、前周期の指令速度と、前周期の指令加速度と、前記参照速度と、にもとづいて
速度−加速度位相平面上において前周期の指令速度および前周期の指令加速度の対に対応する点から前記参照速度および零加速度に対応する点までを結ぶ連続した曲線である加減速軌道を求め、前記求めた加減速軌道から現周期の指令位置と現周期の指令速度と現周期の指令加速度とを逐次計算することを特徴とするものである。
【発明の効果】
【００２６】
請求項１，８に記載の発明によれば，移動体の動作状態に依存することなく適切な動作指令を生成でき、さまざまな加減速軌道を容易に設計でき、さらに単純な論理演算によって所望の移動量を実現するとともに，最大速度の条件を満足できる。
また，請求項２，４に記載の発明によれば，指令生成に必要な計算負荷を軽減することができる。
また、請求項３に記載の発明によれば、移動体の動作状態に依存することなく適切な動作指令を生成でき、さまざまな加減速軌道を容易に設計できる。
また，請求項５に記載の発明によれば，生成される指令の加速度時間変化率の大きさを制限でき，また加速度をできるだけ大きくとることができる。結果として，移動体の振動励起を抑えつつ，加減速を高速化できる。
また，請求項６に記載の発明によれば，加速度時間変化率の大きさが制限された，加速度が区分的に滑らかかつ連続的に変化する加減速軌道を容易に設計できる。
また，請求項７に記載の発明によれば，加速度時間変化率の最大値条件を満足する最速の加減速軌道を得ることができる。
【発明を実施するための最良の形態】
【００２７】
以下、本発明の具体的実施例について、図を用いて説明する。
【実施例１】
【００２８】
図１は本発明の方法を実施する指令生成装置の使用例を示したブロック図である。図において１００は前記指令生成装置，１０１は指令生成装置１００で生成した指令を受け付けるサーボモータあるいはロボットの制御装置(本実施例では，サーボモータの制御装置)，１０２は制御装置１０１で制御されるサーボモータまたはロボット(本実施例では，サーボモータ)，１０３は上位制御器から出力されるサーボモータ１０２に対する目標移動量，１０４はサーボモータの逐次動作指令(本実施例では，位置指令)，１０５は指令生成に必要な各種の設定パラメター(本実施例では，最大速度ｖｍａｘ，最大加速度ａｍａｘおよび加速度時間変化率の大きさの最大値ｊｍａｘ)である。図のように，本発明の方法を実施する指令生成装置はサーボモータへの目標移動量１０３と設定パラメター１０５とにもとづいて制御装置１０１に対する動作指令を逐次出力する。
【００２９】
続いて，指令生成装置１００の内部処理を図２で説明する。なお、図２の処理全体は、所定の制御周期（以下、単に「周期」と呼ぶ。）毎に実行されるものである。図において，ステップＳ２００は前周期の参照速度ｖｒｅｆが零，かつ目標移動量Ｓに変更がない，かつ最大速度ｖｍａｘに変更がない場合はステップＳ２１２に，それ以外はステップＳ２０１に移行する判断ステップである。ここで参照速度ｖｒｅｆは加減速を考慮しない目標速度であって，本実施例では−ｖｍａｘ，ｖｍａｘ，０の何れかに設定される。Ｓ２０１は前周期のサーボモータへの指令位置ｓと目標移動量Ｓとから残り移動量ｄ＝Ｓ−ｓを計算するステップ，Ｓ２０２は前周期の指令速度ｖ０と前周期の指令加速度ａ０から停止するまでの停止軌道を速度-加速度位相平面上で設計するステップ，Ｓ２０３はＳ２０２で計算した速度-加速度軌道に沿った場合の停止までの移動距離である停止距離ｄｓを計算するステップ，Ｓ２０４は残り移動量ｄと停止距離ｄｓの差が距離閾値ｅ＞０に対して大きい場合はステップＳ２０８へ，それ以外の場合はステップＳ２０５へ移行する判断ステップ，Ｓ２０５は残り移動量ｄと停止距離ｄｓの差が距離閾値−ｅ＜０に対して小さい場合はステップＳ２０７へ，それ以外の場合はステップＳ２０６へ移行する判断ステップ，Ｓ２０６は参照速度ｖｒｅｆを零に設定するステップ，Ｓ２０７は参照速度ｖｒｅｆを−ｖｍａｘに設定するステップ，Ｓ２０８は参照速度ｖｒｅｆをｖｍａｘに設定するステップ，Ｓ２０９は現周期の参照速度ｖｒｅｆが前周期の参照速度ｖｒｅｆ０から変化している場合はステップＳ２１０へ，それ以外の場合はステップＳ２１２へと移行する判断ステップ，Ｓ２１０は前周期の指令速度ｖ０と前周期の指令加速度ａ０から現周期の参照速度ｖｒｅｆに到る新たな加減速軌道を速度-加速度位相平面上で設計するステップ，Ｓ２１１は設計した加減速軌道と参照速度ｖｒｅｆを保存するステップ，Ｓ２１２は保存された加減速軌道にもとづいて現周期の指令速度ｖと現周期の指令加速度ａを計算し保存するステップ，Ｓ２１３は現周期の指令速度ｖを積分して指令位置を計算し出力・保存するステップである。なお，ここで最大速度ｖｍａｘは指令速度ｖが移動中にとり得る最大の値であるが，移動中に最大速度の設定が変更された場合にはその限りではない。
【００３０】
以下，各ステップについて，詳細に説明する。
（１）まず，Ｓ２０２およびＳ２１０において加減速軌道を設計する具体的方法について，加減速軌道設計の手順を示した流れ図である図３および加減速軌道の例である図４，５，６，７を参照しながら説明する。Ｓ２０２はＳ２１０の参照速度ｖｒｅｆを零とした場合と等価であるから，ここでは簡略化のため両者をまとめて扱う。加減速軌道は，速度−加速度位相平面上において前周期の速度および加速度の対（ｖ，ａ）＝（ｖ０，ａ０）に対応する点から（ｖ，ａ）＝（ｖｒｅｆ，０）に対応する点までを結ぶ連続した軌道であって，加速度時間変化率の最大値ｊｍａｘの条件を満足する曲線と最大加速度ａｍａｘを満足する直線とを組み合わせて設計するものである。
図３においてステップＳ３０１は後述のパラメターαｔｍｐ，Ａｔｍｐを最大加速度ａｍａｘおよび加速度時間変化率の最大値ｊｍａｘにもとづいて計算するステップ，ステップＳ３０２は後述のパラメターＢｔｍｐを前周期の指令速度と前周期の指令加速度の対（ｖ０，ａ０）および現周期の参照速度ｖｒｅｆおよびＳ３０１で求めたαｔｍｐとＡｔｍｐにもとづいて計算するステップ，ステップＳ３０３はＳ３０２で求めたＢｔｍｐの値が−Ａｔｍｐ＜Ｂｔｍｐ＜Ａｔｍｐを満足する場合はステップＳ３０５に，それ以外の場合はステップＳ３０４に移行する判断ステップ，ステップＳ３０４はＢｔｍｐの値が正ならばステップＳ３０６に，それ以外の場合はステップＳ３０７に移行する判断ステップ，ステップＳ３０５は後述のパラメターαｔｍｐ２，Ａｔｍｐ２を前周期の指令速度と前周期の指令加速度の対（ｖ０，ａ０）および現周期の参照速度ｖｒｅｆおよび最大加速度ａｍａｘおよび加速度時間変化率の最大値ｊｍａｘにもとづいて計算するステップ，ステップＳ３０６，ステップＳ３０７，ステップＳ３０８は，それぞれ得られたパラメターから加減速軌道を設定するステップである。
【００３１】
以下で各ステップの処理について更に詳細に説明する。
（Ｓ３０１）Ｓ３０１では，最大加速度ａｍａｘおよび加速度時間変化率の最大値ｊｍａｘの設定値から，パラメターαｔｍｐ，Ａｔｍｐを以下の式にもとづいて計算する。
【００３２】
【数７】
0005028674.tif 000009
【００３３】
計算されるαｔｍｐ，Ａｔｍｐの値は最大加速度ａｍａｘおよび加速度時間変化率の最大値ｊｍａｘを変えない限り一定であるから，計算量を節約するため最初に計算した値をメモリーに記憶しておき，適宜読み出して使用するようにしてもよい。
（Ｓ３０２）Ｓ３０２では，前周期の指令速度と前周期の指令加速度の対（ｖ０，ａ０）および現周期の参照速度ｖｒｅｆおよびＳ３０１で求めたαｔｍｐとＡｔｍｐから，パラメターＢｔｍｐを以下の式にもとづいて計算する。
【００３４】
【数８】
0005028674.tif 000010
【００３５】
【数９】
0005028674.tif 000011
【００３６】
(Ｓ３０３）Ｓ３０３は，ステップＳ３０１およびＳ３０２で計算したパラメターＡｔｍｐとＢｔｍｐの値にもとづき，論理式
【００３７】
【数１０】
0005028674.tif 000012
【００３８】
が成立していればステップＳ３０５へ，それ以外の場合はステップＳ３０４へと進む判断ステップである。前述のように，加減速軌道は，速度−加速度位相平面上において前周期の速度および加速度の対（ｖ，ａ）＝（ｖ０，ａ０）に対応する点から（ｖ，ａ）＝（ｖｒｅｆ，０）に対応する点までを結ぶ連続した軌道であって，加速度時間変化率の最大値ｊｍａｘの条件を満足する曲線と最大加速度ａｍａｘを満足する直線とを組み合わせて設計するものである。式（１０）が成立しない場合，加減速軌道は長径および短径が（Ａｔｍｐ，αｔｍｐＡｔｍｐ）である楕円の一部と加減速度ａ＝ａｍａｘまたはａ＝−ａｍａｘの直線とで構成できる(こうして構成される軌道は，後述の加減速軌道１−１および１−２に相当する)。しかし，式（１０）が成立する場合は同様の構成ができないため，新たに楕円軌道を設計する必要がある(こうして構成される軌道は，後述の加減速軌道２に相当する)。これがＳ３０３の判断ステップを実行する理由である。
【００３９】
(Ｓ３０４)Ｓ３０４は，ステップＳ３０２で得られたパラメターＢｔｍｐの正負に応じて処理を分岐する判断ステップである。すなわち，Ｂｔｍｐ＞０である場合はステップＳ３０６へ，それ以外の場合はステップＳ３０７へ進む(本判断ステップの結果は，後述の加減速軌道１−１と１−２の区別に相当する)。
【００４０】
（Ｓ３０５）Ｓ３０５では，加速度時間変化率の最大値ｊｍａｘの設定値から，パラメターαｔｍｐ２，Ａｔｍｐ２を以下の式にもとづいて計算する。
【００４１】
【数１１】
0005028674.tif 000013
【００４２】
【数１２】
0005028674.tif 000014
【００４３】
（Ｓ３０６〜Ｓ３０８）Ｓ３０６からＳ３０８では，以上で得られたパラメターを利用して速度−加速度平面において楕円軌道と直線軌道を組み合わせた加減速軌道を設定する。ここで楕円軌道とは，一般式
【００４４】
【数１３】
0005028674.tif 000015
【００４５】
で与えられる軌道であって，その中心座標は（Ｂ，０），速度軸方向の径は２Ａ，加速度軸方向の径は２αＡである。楕円軌道の形状はパラメターα，Ａ，Ｂに依存するため，以下ではパラメターα，Ａ，Ｂと式（１３）によって規定される楕円軌道を楕円軌道（α，Ａ，Ｂ）のように記載するものとする。
この表記によれば，Ｓ３０６で設定する加減速軌道は，
楕円１−１１:        （α，Ａ，Ｂ）＝（αｔｍｐ，Ａｔｍｐ，Ｂｔｍｐ），
直線１−１：  ａ＝−ａｍａｘ  ，
楕円１−１２:        （α，Ａ，Ｂ）＝（αｔｍｐ，Ａｔｍｐ，Ａｔｍｐ）
の組み合わせであって，以下では加減速軌道１−１と呼ぶ。
また，Ｓ３０７で設定する加減速軌道は，
楕円１−２１:        （α，Ａ，Ｂ）＝（αｔｍｐ，Ａｔｍｐ，Ｂｔｍｐ），
直線１−２：  ａ＝ａｍａｘ  ，
楕円１−２２:        （α，Ａ，Ｂ）＝（αｔｍｐ，Ａｔｍｐ，−Ａｔｍｐ）
の組み合わせであって，以下では加減速軌道１−２と呼ぶ。
また，Ｓ３０８で設定する加減速軌道は，
楕円２:              （α，Ａ，Ｂ）＝（αｔｍｐ２，｜Ａｔｍｐ２｜，Ａｔｍｐ２）
であって，以下では加減速軌道２と呼ぶ。加減速軌道１−１，１−２，２はいずれも加速度時間変化率の最大値条件を満足している。
【００４６】
図４は速度−加速度位相平面上に描いた加減速軌道１−１と加減速軌道１−２の例である。図５は図４の加減速軌道１−１について，指令加速度と指令速度の時間波形を描いたものである。図６は速度−加速度位相平面上に描いた加減速軌道２の例である。図７は図６の加減速軌道２について，指令加速度と指令速度の時間波形を描いたものである。
図４において，横軸は速度と参照速度との偏差ｖ−ｖｒｅｆ，縦軸は加速度ａ，点４０１は前周期の指令速度と前周期の指令加速度の対（ｖ０，ａ０）の一例を示す点，点４０２は点４０１に対応する現周期の指令速度と指令加速度の対（ｖ，ａ）を示す点，点４０３は点４０１を通る楕円軌道１−１１から加速度ａ＝−ａｍａｘの直線軌道１−１へと移行する境界点，点４０４は直線軌道１−１から原点を通る楕円軌道１−１２へと移行する境界点，曲線４０５は点４０１に始まって原点に終わる加減速軌道１−１の全体，曲線４０６は加減速軌道４０５の一部を構成する楕円軌道１−１１，直線４０７は加減速軌道４０５の一部を構成する直線軌道１−１，曲線４０８は加減速軌道４０５の一部を構成する楕円軌道１−１２，点４０９は前周期の指令速度と前周期の指令加速度の対（ｖ０，ａ０）の一例を示す点４０１とは異なる点，曲線４１０は点４０９に始まって原点に終わる加減速軌道１−２の全体である。
図５においてΔｔは指令生成装置の指令生成周期である。
図４から７に示したように，設計される加減速軌道は最大加速度ａｍａｘと加速度時間変化率の最大値ｊｍａｘの条件をいずれも満足しつつ，速度と参照速度の偏差ｖ−ｖｒｅｆが有限時間内に零に収束するものである。
【００４７】
（２）続いてステップＳ２０３における処理について説明する。Ｓ２０３では，Ｓ２０２で得られた参照速度ｖｒｅｆを零とした場合の加減速軌道(停止軌道)に沿った場合の停止までの移動距離(停止距離)を計算する。停止距離は，図５や図７に示した指令速度の時間波形を積分することで計算できる。
【００４８】
（３）ステップＳ２０４からＳ２０８では，目標移動量Ｓだけサーボモータを移動させるため，参照速度を切り替える。残り移動量ｄと停止距離ｄｓとの差の大きさ｜ｄ−ｄｓ｜が閾値ｅより大きい場合は参照速度の大きさを最大速度に設定して残り移動量を減少させ，｜ｄ−ｄｓ｜が閾値ｅ以下となる場合に参照速度を零として停止動作に入るため，停止時の総移動量は領域［Ｓ−ｅ，Ｓ＋ｅ］に入る。ここで閾値ｅを設けたのは，微小な計算誤差や位置ずれなどによる停止位置付近での振動現象を防止するためである。
【００４９】
（４）ステップＳ２０９からＳ２１１までの処理は，参照速度が変更された場合に限って加減速軌道を再設定するものである。Ｓ２１０の処理は前述の通りであるが，参照速度が零の場合の軌道設計はＳ２０２で実行済みなので，Ｓ２１０ではその結果を複写するのみとなる。
【００５０】
（５）ステップＳ２１２では，現周期の指令加速度ａと指令速度ｖを次のように計算する。現周期が楕円軌道にあたる場合は以下の式による。
【００５１】
【数１４】
0005028674.tif 000016
【００５２】
現周期が直線軌道にあたる場合は以下の式による。
【００５３】
【数１５】
0005028674.tif 000017
【００５４】
ここで、加速度ａの値は該直線が直線軌道１−１か１−２かによって決まる。
【００５５】
以上の手順で得られる加減速軌道全体の例を図８，９に示す。図において横軸は速度，縦軸は加速度，点８０１は前周期の指令速度と前周期の指令加速度の対（ｖ０，ａ０）の一例を示す点，点８０２は点８０１に対応する現周期の指令速度と指令加速度の対（ｖ，ａ）を示す点，曲線８０３は点８０１に始まり原点に終わる加減速軌道の全体，点８０４は参照速度がｖｍａｘから
0005028674.tif 000018
に切り替わる点である。点８０１から点８０４に到るまでは残り移動量ｄが停止距離ｄｓより大きいため，参照速度はｖｍａｘに設定される。点８０４で残り移動量ｄが停止距離ｄｓに等しくなると参照速度は零に設定されて停止動作に入る。
【００５６】
実施例１で得られる指令加速度波形は正弦曲線と直線との組み合わせであり，特許文献２で得られる結果と類似のものとなる。しかし，本発明の結果は以下の点において特許文献２とは大きく異なっている。すなわち，（ｉ）特許文献２では図１３において区間１，３，５，７の各時間は加減速時間Ｔａの１／４に固定されていたが，本発明の指令生成方法によれば最大速度，最大加速度および加速度時間変化率の最大値の設定値および初期状態に応じて一意に決定される。加速度時間変化率の最大値を超えない範囲で最大加速度を維持する区間を長くとることができるので，加減速に要する時間を短縮することができる。（ｉｉ）特許文献２を含む多くの従来技術が加減速開始時に速度と加速度が零であることを前提としていたのに対し，本発明の指令生成方法は速度−加速度位相平面において曲線や楕円の一部を組み合わせて加減速軌道を設計することにより，前記前提を排除した。加減速軌道設計時の状態に制約がないため，目標移動量や速度の途中変更にも対応できる。
【００５７】
実施例１では，加減速軌道を楕円と直線とで構成していたが，楕円の代わりに放物線を利用してもよい。楕円を用いた場合，正弦波状に滑らかに変化する加速度曲線が得られるが，放物線を用いると台形状の加速度曲線が得られる。放物線では加速度の滑らかさは失われるものの，加速度時間変化率の最大値に対応した放物線を用いれば，より高速な加減速を実現できる。
【００５８】
実施例１の指令生成装置は目標移動量を入力信号，サーボモータへの位置指令を出力信号としていたが，これをそれぞれ指令移動速度，速度指令に置き換えた場合でも本発明は実施可能である。この場合，図２のステップＳ２００からＳ２０８までの処理は不要であるから，入力された指令移動速度を直接参照速度ｖｒｅｆとして設定する。指令移動速度が急激に変化した場合でも，最大加速度や加速度時間変化率の最大値の条件を満足する速度指令を生成・出力できる。
【産業上の利用可能性】
【００５９】
本発明の指令生成方法によれば，初期運動状態(初期速度，初期加速度)によらず指令波形を設計可能である，目標移動量や最大速度の移動途中の変更にも対応可能である，移動体の振動励起を抑制できる，といった条件を同時に満足することができるため，単にサーボモータ以外にもロボットや工作機械など，アクチュエータによって駆動される機械システム全般に適用できる。
【図面の簡単な説明】
【００６０】
【図１】本発明の方法を適用する指令生成装置の使用例を示した図
【図２】本発明の方法の処理手順を示した流れ図
【図３】本発明の第1実施例における加減速軌道設計の処理手順を示した流れ図
【図４】本発明の第1実施例において設計される加減速軌道１−１および１−２の例を示した図
【図５】図４に対応する加減速軌道１−１の加速度と速度の時間波形を示した図
【図６】本発明の第1実施例において設計された加減速軌道２の例を示した図
【図７】図６に対応する加減速軌道２の加速度と速度の時間波形を示した図
【図８】本発明の第1実施例において設計された加減速軌道全体の例を示した図
【図９】図８に対応する加減速軌道全体の加速度と速度の時間波形を示した図
【図１０】従来の移動平均フィルタを用いた指令生成方法を示した図
【図１１】従来のローパスフィルタを用いた指令生成方法を示した図
【図１２】特許文献１の方法により生成される波形の例を示した図
【図１３】特許文献２の方法により生成される波形の例を示した図
【図１４】特許文献２の加減速方法の手順を示した流れ図
【符号の説明】
【００６１】
１００  指令生成装置
１０１  サーボモータの制御装置
１０２  サーボモータ
１０３  目標移動量
１０４  位置指令
１０５  設定パラメター
４０１  前周期の指令速度と前周期の指令加速度の対の一例を示す点
４０２  点４０１に対応する現周期の指令速度と指令加速度の対を示す点
４０３  楕円軌道１−１１から直線軌道１−１へと移行する境界点
４０４  直線軌道１−１から楕円軌道１−１２へと移行する境界点
４０５  加減速軌道１−１の全体
４０６  楕円軌道１−１１
４０７  直線軌道１−１
４０８  楕円軌道１−１２
４０９  前周期の指令速度と前周期の指令加速度の対の一例を示す点４０４とは異なる点
４１０  加減速軌道１−２の全体
８０１  前周期の指令速度と前周期の指令加速度の対の一例を示す点
８０２  点８０１に対応する現周期の指令速度と指令加速度の対を示す点
８０３  加減速軌道の全体
８０４  参照速度の切り替わり点
【図１】
0005028674.tif 000019
【図２】
0005028674.tif 000020
【図３】
0005028674.tif 000021
【図４】
0005028674.tif 000022
【図５】
0005028674.tif 000023
【図６】
0005028674.tif 000024
【図７】
0005028674.tif 000025
【図８】
0005028674.tif 000026
【図９】
0005028674.tif 000027
【図１０】
0005028674.tif 000028
【図１１】
0005028674.tif 000029
【図１２】
0005028674.tif 000030
【図１３】
0005028674.tif 000031
【図１４】
0005028674.tif 000032