(57)【要約】【課題】電力またはトルクのピークを減少させるとともに、制御対象を所定位置に所望時間で到達させる速度軌跡を生成する【解決手段】指定駆動時間を受け付ける入力受付部（１００）と、立上がり部分と平坦部分と立下がり部分とを含むとともに、最小原理を用いて求められた算出軌跡に基づいて入力軌跡を生成する軌跡部（２００）と、を備えている。【選択図】図１
2017102674.tif 000002
【特許請求の範囲】
【請求項１】
装置の制御に用いる入力軌跡を生成する軌跡生成装置において、
ユーザから、制御対象が所定位置に移動するまでに時間である指定駆動時間を受け付ける入力受付部と、
立上がり部分と平坦部分と立下がり部分とを含むとともに、最小原理を用いて、前記制御対象の制御に必要な総トルクまたは総電力が最小となるように、もしくは総電力および総トルクがともに減少するように、求められた軌跡であって、前記入力受付部で受け付けた前記指定駆動時間が経過したときに速度が零となる算出軌跡を算出する軌跡算出部と、
前記軌跡算出部が算出した算出軌跡に基づいて、前記入力軌跡として、制御対象の時間と速度の関係を示す速度軌跡を生成する軌跡生成部と、を備えていることを特徴とする軌跡生成装置。
【請求項２】
前記入力受付部は、ユーザから、評価関数の入力を受付け、
前記軌跡算出部は、前記評価関数を用いて前記制御対象の制御に必要な総電力または総トルクが最小となるように、もしくは総電力および総トルクがともに減少するように、前記算出軌跡を算出することを特徴とする請求項１に記載の軌跡生成装置。
【請求項３】
前記軌跡生成部は、前記軌跡算出部が算出した前記算出軌跡の前記立上がり部分を、下に凸から上に凸となる変曲点を有するように生成することにより、前記入力軌跡を生成することを特徴とする請求項１または２に記載の軌跡生成装置。
【請求項４】
前記軌跡生成部は、前記指定駆動時間を短縮するとともに、短縮した時間の移動平均を算出して、前記変曲点を有する前記入力軌跡を生成することを特徴とする請求項３に記載の軌跡生成装置。
【請求項５】
前記軌跡生成部は、前記軌跡算出部が算出した前記算出軌跡の立上がり部分および立下り部分と、４次以上の高次曲線の立上がり部分および立下り部分とを、それぞれ所定の比率で足し合わせることによって、前記入力軌跡を生成することを特徴とする請求項１〜４のいずれか１項に記載の軌跡生成装置。
【請求項６】
前記入力受付部は、ユーザから前記比率を入力の受け付けることを特徴とする請求項５に記載の軌跡生成装置。
【請求項７】
前記軌跡生成部は、生成した速度軌跡を微分して、制御対象の時間と加速度との関係を示す加速度軌跡を生成すること、および、生成した速度軌跡を積分して、制御対象の時間と位置との関係を示す位置軌跡を生成すること、の少なくとも何れかを実行することを特徴とする請求項１〜６のいずれか１項に記載の軌跡生成装置。
【請求項８】
装置の制御に用いる入力軌跡を生成する軌跡生成装置の制御方法であって、
ユーザから、制御対象が所定位置に移動するまでに時間である指定駆動時間を受け付ける入力受付ステップと、
立上がり部分と平坦部分と立下がり部分とを含むとともに、最小原理を用いて、前記制御対象の制御に必要な総トルクまたは総電力が最小となるように、もしくは総電力および総トルクがともに減少するように、求められた軌跡であって、前記入力受付ステップで受け付けた前記指定駆動時間が経過したときに速度が零となる算出軌跡を算出する軌跡算出ステップと、
前記軌跡算出ステップで算出した算出軌跡に基づいて前記入力軌跡として、制御対象の時間と速度の関係を示す速度軌跡を生成する軌跡生成ステップと、を含むことを特徴とする軌跡生成装置の制御方法。
【請求項９】
請求項１に記載の軌跡生成装置としてコンピュータを機能させるための制御プログラムであって、前記軌跡算出部および前記軌跡生成部としてコンピュータを機能させるための制御プログラム。
【請求項１０】
請求項９に記載の制御プログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置に入力する速度軌跡を生成する軌跡生成装置等に関する。
【背景技術】
【０００２】
機械・設備等の動作の制御において、イナーシャが大きく、かつ、高速で駆動させる必要がある場合、高速な駆動と大きなトルクが必要となるため、大きな電力が必要となる。
【０００３】
そして、必要な電力が瞬間的に大きくなった場合つまり電力のピークが立った場合、電源設備から出力できる瞬間電力が不足してしまう可能性がある。そこで、瞬間的な電力不足を補うために、電源設備を大きくすることが考えられるが、そのためには、電源設備の大規模な変更が必要になるため、実現は容易ではない。
【０００４】
そこで、現在では、フライホイールなどを用いて電力をエネルギーとして一時的に貯蔵し、これを再利用することによって、瞬間的な電力不足が起きないようにしているが、これでも足りない場合があり、その場合は、タクトを落とすことによって対応している。
【０００５】
また、トルクに関しても、大きなものを移動させる場合にはトルクが足りなくなるので、大きなモータで駆動させるまたは低速度で動作させることにより対応している。
【０００６】
なお、特許文献１には、電力を削減する方法が開示されている。また、特許文献２には、台形カーブの速度軌跡を最適化する方法が開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特表２０１４−５１７６７３号公報（２０１４年７月１７日公表）
【特許文献２】特開２０１２−１７３９００号公報（２０１２年９月１０日公開）
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、前記特許文献１に記載された技術は、到達時刻を変更しながら電力の二乗和が最小となる場合を算出して、電力を削減するものであり、到達時刻を指定することができない。したがって、ユーザが所望する時間で所定位置に制御対象を到達させる装置に適用することができない。
【０００９】
また、前記特許文献２に記載された技術は、速度軌跡である台形カーブの最適化を行っているのみであり、電力の削減を目的としたものではないため、必ずしも最適な電力とはならない。
【００１０】
また、どちらの文献も総電力に関する内容であり、ピークのカットということは考えられていない。
【００１１】
本発明は、前記の問題点に鑑みてなされたものであり、その目的は、トルクまたは電力のピークを削減するとともに、制御対象を所定位置に所望時間で到達させることができるように、装置を制御するための速度軌跡を生成する軌跡生成装置等を実現することにある。
【課題を解決するための手段】
【００１２】
上記の課題を解決するために、本発明に係る軌跡生成装置は、装置の制御に用いる入力軌跡を生成する軌跡生成装置において、ユーザから、制御対象が所定位置に移動するまでに時間である指定駆動時間を受け付ける入力受付部と、立上がり部分と平坦部分と立下がり部分とを含むとともに、最小原理を用いて、前記制御対象の制御に必要な総トルクまたは総電力が最小となるように、もしくは総電力および総トルクがともに減少するように、求められた軌跡であって、前記入力受付部で受け付けた前記指定駆動時間が経過したときに速度が零となる算出軌跡を算出する軌跡算出部と、前記軌跡算出部が算出した算出軌跡に基づいて、前記入力軌跡として、制御対象の時間と速度の関係を示す速度軌跡を生成する軌跡生成部と、を備えている構成である。
【００１３】
前記の構成によれば、最小原理により求めた算出軌跡を用いるので、消費電力を削減または総トルクを減少させることができるとともに、対象物体を、ユーザが指定した指定駆動時間で所定位置に移動させることができる。すなわち、消費電力を削減または総トルクを減少させつつ、目的時刻に目的位置に対象物体を移動させることができる。
【００１４】
また、平坦部分を含むことにより、速度に制約がある場合にも対応できるとともに、指定駆動時間が変更された場合でも、平坦部分を伸長または短縮することにより、複雑な再計算を実行することなく対応することができ、処理量を低減することができる。
【００１５】
前記入力受付部は、ユーザから、評価関数の入力を受け付け、前記軌跡算出部は、前記評価関数を用いて前記制御対象の制御に必要な総トルクおよび総電力の少なくとも何れかが最小となるように前記算出軌跡を算出するものであってもよい。
【００１６】
前記の構成によれば、受け付けた評価関数を用いて算出軌跡を算出することができるので、評価関数が総消費電力が最小になる関数であれば、消費電力のピークが下げる算出軌跡を算出でき、評価関数が総トルクが最小になる関数であれば、トルクのピークを下げる算出軌跡を算出することができる。また、評価関数を総消費電力を最小にする関数と総トルクを最小にする関数を重みの比によって足し合わせた関数であれば、電力とトルクの両方のピークを下げる算出軌跡を算出することができる。
【００１７】
前記軌跡生成部は、前記軌跡算出部が算出した前記算出軌跡の前記立上がり部分を、下に凸から上に凸となる変曲点を有するように生成することにより、前記入力軌跡を生成するものであってもよい。
【００１８】
一般に、移動の開始時は、静止摩擦の影響で、モデルで想定される摩擦力より実際の摩擦力が高くなる。そのため、最小原理のみで算出した軌跡の場合、移動開始時に大きなトルクのピークが立ってしまう。前記の構成によれば、立上がり部分が緩やかになることにより、移動開始時の速度を遅くすることができ、移動開始時のトルクのピーク値を抑制することができる。
【００１９】
前記軌跡生成部は、前記指定駆動時間を短縮するとともに、短縮した時間の移動平均を算出して、前記変曲点を有する前記入力軌跡を生成するものであってもよい。
【００２０】
前記の構成によれば、移動平均を算出するという簡易な処理で、下に凸から上に凸となる変曲点を含む立上がり部分を有する入力軌跡を生成することができる。
【００２１】
前記軌跡生成部は、前記軌跡算出部が算出した前記算出軌跡の立上がり部分および立下り部分と、４次以上の高次曲線の立上がり部分および立下り部分とを、それぞれ所定の比率で足し合わせることによって、前記入力軌跡を生成するものであってもよい。
【００２２】
４次以上の高次曲線による軌跡の場合、一般的にトルクの振動が生じにくい制御が可能となる。よって、前記の構成によれば、算出軌跡の立上がり部分および立下り部分に４次以上の高次曲線の立上がり部分および立下り部分が組み入れられた入力軌跡が生成されるので、トルクのピークの抑制と装置の振動の抑制とを両立することができる。
【００２３】
前記入力受付部は、ユーザから前記比率を入力の受け付けるものであってもよい。
【００２４】
前記の構成によれば、算出軌跡の立上がり部分および立下り部分に４次以上の高次曲線の立上がり部分および立下り部分を組み入れる比率をユーザに設定させることができる。これにより、トルクのピークを抑制することを重視するか、もしくは、装置の振動を抑制することを重視するかをユーザに指定させることができる。
【００２５】
前記軌跡生成部は、生成した速度軌跡を微分して、制御対象の時間と加速度との関係を示す加速度軌跡を生成すること、および、生成した速度軌跡を積分して、制御対象の時間と位置との関係を示す位置軌跡を生成すること、の少なくとも何れかを実行するものであってもよい。
【００２６】
前記の構成によれば、加速度軌跡または位置軌跡を用いて、装置を制御することができる。
【００２７】
上記の課題を解決するために、本発明に係る軌跡生成装置の制御方法は、装置の制御に用いる入力軌跡を生成する軌跡生成装置の制御方法であって、ユーザから、制御対象が所定位置に移動するまでに時間である指定駆動時間を受け付ける入力受付ステップと、立上がり部分と平坦部分と立下がり部分とを含むとともに、最小原理を用いて、前記制御対象の制御に必要な総トルクまたは総電力の少なくとも何れかが最小となるように、もしくは総電力および総トルクがともに減少するように、求められた軌跡であって、前記入力受付ステップで受け付けた前記指定駆動時間が経過したときに速度が零となる算出軌跡を算出する軌跡算出ステップと、前記軌跡算出ステップで算出した算出軌跡に基づいて、前記入力軌跡として、制御対象の時間と速度の関係を示す速度軌跡を生成する軌跡生成ステップと、を含む方法である。
【００２８】
前記の構成により上述した効果を奏する。
【００２９】
本発明に係る軌跡生成装置は、コンピュータによって実現してもよく、この場合には、コンピュータを上記軌跡生成装置が備える各部（ソフトウェア要素）として動作させることにより上記軌跡生成装置をコンピュータにて実現させる軌跡生成装置の制御プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
【発明の効果】
【００３０】
本発明によれば、最小原理により求めた算出軌跡を用いるので、消費電力のピークまたは総トルクのピークを減少させすることができるとともに、対象物体を、ユーザが指定した指定駆動時間で所定位置に移動させることができるという効果を奏する。すなわち、消費電力のピークまたは総トルクのピークを減少させつつ、目的時刻に目的位置に対象物体を移動させることができるという効果を奏する。
【００３１】
また、平坦部分を含むことにより、速度に制約がある場合にも対応できるとともに、指定駆動時間が変更された場合でも、平坦部分を伸長または短縮することにより、複雑な再計算を実行することなく対応することができ、処理量を低減することができるという効果を奏する。
【図面の簡単な説明】
【００３２】
【図１】本発明に係る制御装置の要部構成を示すブロック図である。
【図２】上記制御装置を含む制御システムの概略を示す図である。
【図３】上記制御システムの詳細を示す図である。
【図４】上記制御システムに含まれるサポート装置のハードウェア構成を示す模式図である。
【図５】上記制御装置における入力軌跡（速度軌跡、位置軌跡、加速度軌跡）を生成する処理の流れを示すフローチャートである。
【図６】最小原理を用いた結果から生成された速度軌跡の例であり、（ａ）は、（ｂ）に示す速度軌跡を装置に入力した場合の制御対象の時間と位置との関係を示すグラフであり、（ｂ）は、最小原理を用いた結果から生成された速度軌跡（入力軌跡）を示す図である。
【図７】最小原理を用いて軌跡を算出する際に速度制限の制約を付けて生成した速度軌跡の例を示す図であり、（ａ）は、（ｂ）に示す速度軌跡をサーボドライバに入力した場合の制御対象の時間と位置との関係を示すグラフであり、（ｂ）は、最小原理を用いて軌跡を算出する際に速度制限の制約を付けて生成した速度軌跡（入力軌跡）を示す図である
【図８】図６、７に示した速度軌跡と台形速度制御による速度軌跡との比較を示す図であり、（ａ）は制御対象の位置と時間との関係を示すグラフであり、（ｂ）は速度軌跡を示す図である。
【図９】トルクのピークを下げる評価関数をもとに提案手法Ａを用いたときのトルクの状態を示す図であり、（ａ）は、（ｂ）に示す速度軌跡に対応する、制御対象の位置と時間との関係を示すグラフであり、（ｂ）は、速度軌跡を示す図であり、（ｃ）は（ｂ）の速度軌跡に対応するトルクの状態と時間との関係を示すグラフである。
【図１０】電力のピークを下げる評価関数をもとに提案手法Ａを用いたときの消費電力の状態を示す図であり、（ａ）は、（ｂ）に示す速度軌跡に対応する、制御対象の位置と時間との関係を示すグラフであり、（ｂ）は、速度軌跡を示す図であり、（ｃ）は（ｂ）の速度軌跡に対応する消費電力の状態と時間との関係を示すグラフである。
【図１１】速度と摩擦力との関係を示した図であり、（ａ）は一般的な摩擦モデル図であり、（ｂ）は一般的な装置の場合の摩擦力と速度の関係を示す図である。
【図１２】トルクのピークを下げる評価関数をもとに提案手法Ｂを用いた場合の速度軌跡の例、および、そのときのトルク状態を示す図であり、（ａ）は、トルクのピークを下げる評価関数をもとに提案手法Ｂを用いた場合の速度軌跡の例、およびトルクのピークを下げる評価関数をもとに提案手法Ａを用いた例を示した図、および、両者の立上がり部分を拡大した図であり、（ｂ）は、トルクのピークを下げる評価関数をもとに提案手法Ｂを用いた場合のトルク状態と、トルクのピークを下げる評価関数をもとに提案手法Ａを用いた軌跡に対応するトルク状態とを示す図である
【図１３】振動を抑制する速度軌跡を生成する方法を説明するための図である。
【図１４】トルクのピークを下げる評価関数をもとに提案手法Ｃによる速度軌跡、トルクのピークを下げる評価関数をもとに提案手法Ａによる速度軌跡、ジャーク付台形速度制御による速度軌跡と、それぞれの場合の制御対象の位置、トルク状態を示す図であり、（ａ）は制御対象の位置と時間との関係を示すグラフであり、（ｂ）は速度軌跡を示す図であり、（ｃ）は時間とトルクとの関係を示すグラフである。
【図１５】制約付提案手法Ａの速度軌跡と４−１−４次曲線の速度軌跡とを組み合わせた場合を説明するための図である。
【発明を実施するための形態】
【００３３】
以下、本発明の実施形態について、詳細に説明する。本実施形態に係る制御システムは、制御装置（軌跡生成装置）１において、制御対象を目的位置に目的時刻に移動させることができ、かつ消費電力（総電力）削減（またはトルク（総トルク）削減）できる速度軌跡（または、位置軌跡、加速度軌跡）を生成し、生成した速度軌跡（または、位置軌跡、加速度軌跡）をサーボドライバ３に入力して、サーボモータ４を駆動させて制御対象を移動させるものである。なお、速度軌跡とは、制御対象の時間と速度との関係を示す軌跡であり、位置軌跡とは、制御対象の時間と位置との関係を示す軌跡であり、加速度軌跡とは、制御対象の時間と加速度との関係を示す軌跡である。なお、本実施形態では、サーボドライバ３を例に挙げて説明するが、制御装置１が生成する入力軌跡の入力先はサーボドライバ３に限られるものではなく、軌跡を用いて制御を行う装置であればどのようなものであってもよい。例えば、温度調整装置のようなものであってもよい。
〔制御システムの概要〕
まず、制御システムの概要について図２、３を参照して説明する。図２は、制御システムの概略を示す図である。また、図３は、制御システムの詳細を示す図である。
【００３４】
図２に示すように、制御システムは、概略的には、制御装置１、サーボドライバ３、および制御対象５（サーボモータ４）を含み、制御装置１で生成された指令値（速度軌跡）をサーボドライバ３に入力し、サーボドライバ３は、受け取った指令値に基づくトルクによりサーボモータ４を駆動して制御対象５を移動させるものである。
【００３５】
制御装置１は、機械や設備などの制御対象を制御するための指令値（速度軌跡）を設定するものであり、その構成要素としてＣＰＵユニット１３を含む。ＣＰＵユニット１３は、マイクロプロセッサと、マイクロプロセッサのメインメモリを含む記憶手段と、通信回路とを含む。ＣＰＵユニット１３は、出力データの送信と、入力データの受信と、入力データを使用して出力データを生成する制御プログラムの実行とを繰り返すことによって制御対象を制御するように構成されている。
【００３６】
記憶手段は、制御プログラム、および当該制御プログラムの実行と入力データおよび出力データの入出力とを制御するシステムプログラムの格納に用いられる。マイクロプロセッサは、記憶手段に格納されたシステムプログラムおよび制御プログラムを実行する。
【００３７】
通信回路は、出力データを送信し、入力データを受信する。制御装置１は、通信回路として、制御装置システムバスによって出力データの送信および入力データの受信を行う第１通信回路と、フィールドネットワーク２によって出力データの送信および入力データの受信を行う第２通信回路とを有している。
【００３８】
より詳細に図３を参照して説明する。図３に示すように、制御装置システムは、制御装置１と、制御装置１とフィールドネットワーク２を介して接続されるサーボドライバ３およびリモートＩＯターミナルと、フィールド機器であるセンサ６およびリレー７とを含む。また、制御装置１には、接続ケーブル１０などを介してサポート装置８が接続されている。
【００３９】
制御装置１は、主たる演算処理を実行するＣＰＵユニット１３と、１つ以上のＩＯユニット１４と、特殊ユニット１５とを含む。これらのユニットは、ＰＬＣシステムバス１１を介して、データを互いに遣り取りできるように構成されている。また、これらのユニットには、電源ユニット１２によって適切な電圧の電源が供給される。なお、制御装置１として構成される各ユニットは、制御装置メーカーが提供するものであるので、ＰＬＣシステムバス１１は、一般に制御装置メーカーごとに独自に開発され、使用されている。これに対して、フィールドネットワーク２は、異なるメーカーの製品同士が接続できるように、その規格などが公開されている場合も多い。
【００４０】
ＩＯユニット１４は、一般的な入出力処理に関するユニットであり、オン／オフといった２値化されたデータの入出力を司る。すなわち、ＩＯユニット１４は、センサ６などのセンサが何らかの対象物を検出している状態（オン）、および何らの対象物も検出していない状態（オフ）のいずれであるかという情報を収集する。また、ＩＯユニット１４は、リレー７やアクチュエータといった出力先に対して、活性化するための指令（オン）および不活性化するための指令（オフ）のいずれかを出力する。
【００４１】
特殊ユニット１５は、アナログデータの入出力、温度制御、特定の通信方式による通信といった、ＩＯユニット１４ではサポートしない機能を有する。
【００４２】
フィールドネットワーク２は、ＣＰＵユニット１３と遣り取りされる各種データを伝送する。フィールドネットワーク２としては、典型的には、各種の産業用イーサネット（登録商標）を用いることができる。産業用イーサネットとしては、たとえば、ＥｔｈｅｒＣＡＴ（登録商標）、Ｐｒｏｆｉｎｅｔ  ＩＲＴ、ＭＥＣＨＡＴＲＯＬＩＮＫ（登録商標）−ＩＩＩ、Ｐｏｗｅｒｌｉｎｋ、ＳＥＲＣＯＳ（登録商標）−ＩＩＩ、ＣＩＰ  Ｍｏｔｉｏｎなどが知られており、これらのうちのいずれを採用してもよい。さらに、産業用イーサネット以外のフィールドネットワークを用いてもよい。たとえば、モーション制御を行わない場合であれば、ＤｅｖｉｃｅＮｅｔ、ＣｏｍｐｏＮｅｔ／ＩＰ（登録商標）などを用いてもよい。本実施の形態に係る制御装置システムでは、典型的に、産業用イーサネットであるＥｔｈｅｒＣＡＴをフィールドネットワーク２として採用する場合の構成について例示する。
【００４３】
なお、制御装置１は、ＣＰＵユニット１３にＩＯユニット１４の機能やサーボドライバ３の機能を持たせることにより、そのような内蔵機能でまかなえる範囲については、ＩＯユニット１４やサーボドライバ３などを介さずにＣＰＵユニット１３が直接制御対象を制御する構成でもよい。
【００４４】
サーボドライバ３は、フィールドネットワーク２を介してＣＰＵユニット１３と接続されるとともに、ＣＰＵユニット１３からの指令値に従ってサーボモータ４を駆動する。より具体的には、サーボドライバ３は、制御装置１から一定周期で、位置指令値、速度指令値、トルク指令値といった指令値（入力軌跡）を受ける。また、サーボドライバ３は、サーボモータ４の軸に接続されている位置センサ（ロータリーエンコーダ）やトルクセンサといった検出器から、位置、速度（典型的には、今回位置と前回位置との差から算出される）、トルクといったサーボモータ４の動作に係る実測値を取得する。そして、サーボドライバ３は、ＣＰＵユニット１３からの指令値を目標値に設定し、実測値をフィードバック値として、フィードバック制御を行う。すなわち、サーボドライバ３は、実測値が目標値に近づくようにサーボモータ４を駆動するための電流を調整する。なお、サーボドライバ３は、サーボモータアンプと称されることもある。
【００４５】
なお、図１には、サーボモータ４とサーボドライバ３とを組み合わせたシステム例を示すが、その他の構成、たとえば、パルスモータとパルスモータドライバとを組み合わせたシステムを採用することもできる。
【００４６】
図１に示す制御装置システムのフィールドネットワーク２には、さらに、リモートＩＯターミナルが接続されている。リモートＩＯターミナルは、基本的には、ＩＯユニット１４と同様に、一般的な入出力処理に関する処理を行う。より具体的には、リモートＩＯターミナルは、フィールドネットワーク２でのデータ伝送に係る処理を行うための通信カプラ５２と、１つ以上のＩＯユニット５３とを含む。これらのユニットは、リモートＩＯターミナルバス５１を介して、データを互いに遣り取りできるように構成される。
【００４７】
〔サポート装置８のハードウェア構成〕
次に、制御装置１で実行されるプログラムの作成および制御装置１のメンテナンスなどを行うためのサポート装置８について説明する。図４は、サポート装置８のハードウェア構成を示す模式図である。サポート装置８は、典型的には、汎用のコンピュータで構成される。なお、メンテナンス性の観点からは、サポート装置８は、可搬性に優れたノート型のパーソナルコンピュータが好ましい。
【００４８】
図４に示すように、サポート装置８は、ＯＳを含む各種プログラムを実行するＣＰＵ８１と、ＢＩＯＳや各種データを格納するＲＯＭ（Read Only Memory）８２と、ＣＰＵ８１でのプログラムの実行に必要なデータを格納するための作業領域を提供するメモリＲＡＭ８３と、ＣＰＵ８１で実行されるプログラムなどを不揮発的に格納するハードディスク（ＨＤＤ）８４とを含む。ＣＰＵ８１がサポート装置８の演算部に相当し、ＲＯＭ８２、ＲＡＭ８３およびハードディスク８４がサポート装置８の記憶部に相当する。
【００４９】
サポート装置８は、さらに、ユーザからの操作を受付けるキーボード８５およびマウス８６と、情報をユーザに提示するためのモニタ８７とを含む。さらに、サポート装置８は、制御装置１（ＣＰＵユニット１３）などと通信するための通信インターフェイス（ＩＦ）８９を含む。
【００５０】
サポート装置８で実行される各種プログラムは、ＣＤ−ＲＯＭ９に格納されて流通する。このＣＤ−ＲＯＭ９に格納されたプログラムは、ＣＤ−ＲＯＭ（Compact Disk-Read Only Memory）ドライブ８８によって読取られ、ハードディスク（ＨＤＤ）８４などへ格納される。あるいは、上位のホストコンピュータなどからネットワークを通じてプログラムをダウンロードするように構成してもよい。
【００５１】
なお、本実施形態では、制御装置１とサポート装置８とを別の装置として記載しているが、１つの装置として制御装置１によって構成されていてもよい、この場合、サポート装置８のハードウェア構成は、そのまま制御装置１のハードウェア構成となる。
【００５２】
〔制御装置１の詳細〕
次に、図１を参照して、制御装置１の詳細について説明する。図１は、制御装置１の要部構成を示すブロック図である。
【００５３】
図１に示すように、制御装置１は、入力受付部１００、軌跡部（軌跡算出部）２００、および動作指示部３００を含み、軌跡部２００は、評価関数代入部２０１、運動方程式代入／作成部２０２、条件設定部２０３、および軌跡生成部２０４を含む。
【００５４】
入力受付部１００は、サポート装置８を介して、ユーザからの指示を受け付け、軌跡部２００に通知する。受け付ける指示内容は、例えば、「駆動時間（指定駆動時間）」、「初期位置」、「初期速度」、「評価関数」、「終端位置」、「終端速度」である。なお、制約条件・後述する提案方法Ｂに用いる移動平均の時間、後述する提案手法Ｃに用いる足し合わせ比率を受け付ける構成が含まれてもよい。
【００５５】
軌跡部２００は、サーボドライバ３へ指示する位置軌跡（入力軌跡）、速度軌跡（入力軌跡）、または加速度軌跡（入力軌跡）を生成するものであり、上述したように、評価関数代入部２０１、運動方程式代入／作成部２０２、条件設定部２０３、および軌跡生成部２０４を含む。
【００５６】
評価関数代入部２０１は、ユーザが決定した評価関数（例えば、電力のピーク、トルクのピーク、または電力とトルクとのピークを下げることができる評価関数）を代入する。
【００５７】
なお、評価関数代入部２０１によって代入される評価関数の例としては、以下のものが挙げられる。まず、トルクのピークを下げる評価関数としては、トルクの二乗和を最小にする評価関数が挙げられる。トルクの二乗和を最小にする評価関数を用いることにより、トルクをなるべく一定にすることができるという効果が得られる。トルクが一定になるということは、トルクのピークが立ちにくいということであり、トルクのピークが立ちにくいということはトルクのピークを下げることができるということである。したがって、トルクのピークを下げる関数＝トルクの二乗和を最小にする評価関数ということができる。
【００５８】
また、電力は、例えば、Ｋ（係数）×速度×トルクという形で表すことができる。よって、電力のピークを下げる評価関数としては、Ｋ（係数）×速度×トルクの二乗和を最小にする関数を挙げることができる。
【００５９】
なお、総トルクが最小の軌跡の評価関数は、次の数式（１）で表すことができる。
【００６０】
【数１】
2017102674.tif 000003
【００６１】
また、総電力が最小の軌跡の評価関数は、次の数式（２）で表すことができる。
【００６２】
【数２】
2017102674.tif 000004
【００６３】
また、総トルクおよび総電力の両方を減少させる軌跡の評価関数は、次の数式（３）で表すことができる。
【００６４】
【数３】
2017102674.tif 000005
【００６５】
運動方程式代入／作成部２０２は、制御対象５の運動方程式を代入または作成する。運動方程式は、運動方程式代入／作成部２０２により、自動的に作成してもよいし、Ｍａｔｌａｂ（Matrix laboratory）や外部装置による数値解析などによって決定し、これを代入してもよい。
【００６６】
条件設定部２０３は、位置軌跡、速度軌跡、または加速度軌跡を生成するための条件を設定する。条件は、前記入力受付部が受け付けた指示内容である。
【００６７】
軌跡生成部２０４は、評価関数代入部２０１がに代入した評価関数、および運動方程式代入／作成部２０２が代入または作成した運動方程式に、最小原理を適用して、ピークカットする速度軌跡（算出軌跡：例えば、トルクのピークを下げる軌跡、電力のピークを下げる軌跡、電力のピークとトルクのピークとの両方を下げる軌跡）を生成し、生成した速度軌跡をサーボドライバ３に入力する。また、生成した速度軌跡を微分して加速度軌跡を生成してもよいし、生成した速度軌跡を積分して位置軌跡を生成してもよい。
【００６８】
最小原理とは、ポントリャーギンの最小原理であり、状態または制御入力に関する制約がある場合に、動的システムを或る状態から別の状態に移行させるのに取り得る最良の制御を決定するものである。
【００６９】
動作指示部３００は、軌跡部２００が生成した速度軌跡（または、位置軌跡、加速度軌跡）にしたがって、サーボドライバ３に指令を送信する。
【００７０】
〔制御装置１における処理の流れ〕
次に、図５を参照して、制御装置１における速度軌跡（または、位置軌跡、加速度軌跡）を生成する処理の流れを説明する。図５は、制御装置１における速度軌跡（または、位置軌跡、加速度軌跡）を生成する処理の流れを示すフローチャートである。
【００７１】
図５に示すように、制御装置１では、まず評価関数代入部２０１が、ユーザによって決定された、電力のピーク、トルクのピーク、または電力とトルクとの両方のピークをカットする評価関数を代入する（Ｓ１）。次に、Ｍａｔｌａｂや外部装置による数値解析などによって決定された、制御対象５の運動方程式を運動方程式代入／作成部２０２が代入するか、または運動方程式代入／作成部２０２自身が制御対象５の運動方程式を作成する（Ｓ２）。次に、条件設定部２０３が、前記入力受付部１００が受け付けた指示内容の条件設定を行う（Ｓ３）。
【００７２】
その後、軌跡生成部２０４は、評価関数代入部２０１が代入した評価関数および運動方程式代入／作成部２０２が代入または作成した運動方程式からハミルトニアンを作成し、例えば内部の２変数の初期値を設定する（Ｓ４）。なお、内部の変数は、前記運動方程式の次数によって異なる。運動方程式が２次の場合は、設定する変数は２つとなる。そして、変数を用いて、制御対象５の計算上の終端位置、および終端速度を算出する（Ｓ５）。なお、ステップＳ５において、速度および加速度の制限を加えてもよい。この場合、速度と加速度の違反を見るというステップは不要となる。速度と加速度の制限をかけた場合、違反することはないためである。そして、ステップＳ５で算出した計算上の終端位置および終端速度が、終端時間における目標位置および目標速度と比較して閾値内であれば、位置軌跡、速度軌跡、または加速度軌跡を生成する（Ｓ７）。一方、ステップＳ５で算出した計算上の終端位置および終端速度が、終端時間における目標位置および目標速度と比較して閾値外であれば、ステップＳ４に戻り、例えばニュートンラプソン法により内部の変数の初期値を更新する。
【００７３】
以上が、制御装置１における位置軌跡、速度軌跡、または加速度軌跡を生成する処理の流れである。なお、入力受付ステップは、図５に示すフローチャートの前に存在し、図５に示すフローチャートが軌跡算出ステップ、軌跡生成ステップに相当する。
【００７４】
〔軌跡部２００が生成する軌跡例〕
次に、図６〜１５を参照して、軌跡部２００によって生成される入力軌跡（速度軌跡、位置軌跡、加速度軌跡）の例について説明する。なお、以下では、速度軌跡を例に挙げて説明している箇所があるが、上述したように速度軌跡から位置軌跡および加速度軌跡を算出することは可能であり、速度軌跡ではなく、速度軌跡から算出した位置軌跡または加速度軌跡を用いて行ってもよい。
【００７５】
〔提案手法Ａ〕
まず、図６〜１０を参照して、提案手法Ａについて説明する。提案手法Ａでは、速度軌跡（または、位置軌跡、加速度軌跡）を、最小原理を用いた結果から生成するか、または最小原理を用いて算出する際に速度または加速度の制限の制約を付けて生成している。最小原理を用いた結果の速度軌跡（または、位置軌跡、加速度軌跡）を生成することにより、消費電力およびトルクのピークを抑制することができる。
【００７６】
図６に、最小原理を用いた結果から生成する速度軌跡の例を示す。図６（ｂ）は、最小原理を用いた結果より生成した速度軌跡（入力軌跡）を示す図であり（図６（ｂ）には、提案手法Ａ速度と記載）、図６（ａ）は、（ｂ）に示す速度軌跡をサーボドライバ３に入力した場合の制御対象５の時間と位置との関係を示すグラフである（図６（ａ）には、提案手法Ａ位置と記載）。なお、以下では、最小原理のみ用いた結果により生成した速度軌跡を「提案手法Ａの速度軌跡」と呼び、「提案手法Ａの速度軌跡」に対応する制御対象５の位置と時間と示す軌跡を「提案手法Ａの位置軌跡」と呼ぶ。
【００７７】
また、図７（ｂ）は、最小原理を用いた軌跡を算出する際に速度制限の制約を付けて生成した速度軌跡（入力軌跡）を示す図であり（図７（ｂ）には、制約付提案手法Ａ速度と記載）、図７（ａ）は、（ｂ）に示す速度軌跡をサーボドライバ３に入力した場合の制御対象５の時間と位置との関係を示すグラフである（図７（ａ）には制約付提案手法Ａ位置と記載）。なお、以下では、最小原理を用いた軌跡を算出する際に速度制限の制約を付けて生成した入力軌跡を「制約付提案手法Ａの速度軌跡」と呼び、「制約付提案手法Ａの速度軌跡」に対応する制御対象５の位置と時間と示す軌跡を「制約付提案手法Ａの位置軌跡」と呼ぶ。
【００７８】
図８（ｂ）は、図６（ｂ）および図７（ｂ）に示した速度軌跡と台形速度制御を行う場合の速度軌跡（以下、台形速度軌跡とよぶ）とを示した図である。図８（ｂ）に示すように、「提案手法Ａの速度軌跡」は、「台形速度軌跡」と比較して、立上がり部分および立下がり部分が急峻となっているとともに、最高速度が低く抑えられている。また、「制約付提案手法Ａの速度軌跡」は、「提案手法Ａの速度軌跡」と比較して、立上がり後、立下がりまでの軌跡が平坦（平坦部分）となっている。
【００７９】
図８（ａ）は、図８（ｂ）に示した速度軌跡をサーボドライバ３に入力したときの制御対象５の時間と位置との関係を示すグラフである。図８（ａ）に示すように、「提案手法Ａの位置軌跡」および「制約付提案手法Ａの位置軌跡」は、「台形速度軌跡」に対応する位置の軌跡（台形位置軌跡）と比較して、位置と時間との関係がより直線的になっている。また、台形位置軌跡と、「提案手法Ａの位置軌跡」および「制約付提案手法Ａの位置軌跡」とは、終端位置および終端時間が同じである。よって、提案手法Ａの速度軌跡によっても、台形速度軌跡の場合と同様に、ユーザ所望の駆動時間で所定の位置に制御対象５を移動させることができる。
【００８０】
図９は、トルクのピークを下げる評価関数をもとに提案手法Ａを用いたときのトルクの状態を示す図である。図９（ａ）は、（ｂ）に示す速度軌跡に対応する、制御対象５の位置と時間との関係を示すグラフであり、（ｂ）は、速度軌跡を示す図であり、（ｃ）は（ｂ）の速度軌跡に対応するトルクの状態と時間との関係を示すグラフである。なお、図９では、図８と異なり単なる台形速度制御ではなく、ジャーク付台形速度制御による速度軌跡および結果（位置、トルク）を示している。
【００８１】
図９（ｃ）に示すように、ジャーク付台形速度制御による速度軌跡の場合のトルクの最大値が８５程度となっているのに対し（図９（ｃ）には、ジャーク付台形トルクと記載）、「提案手法Ａの速度軌跡」に対応するトルクの最大値が６８程度（図９（ｃ）には、提案手法Ａトルクと記載）、「制約付提案手法Ａの速度軌跡」に対応するトルクの最大値が７２程度となっており（図９（ｃ）には、制約付提案手法Ａトルクと記載）、提案手法Ａによって生成された速度軌跡によりトルクの最大値が小さくなっている、すなわちトルクのピークがカットされていることがわかる。
【００８２】
図１０は、電力のピークを下げる評価関数をもとに提案手法Ａを用いたときの消費電力の状態を示す図である。図１０（ａ）は、（ｂ）に示す速度軌跡に対応する、制御対象５の位置と時間との関係を示すグラフであり、（ｂ）は、速度軌跡を示す図であり、（ｃ）は（ｂ）に示す速度軌跡に対応する消費電力の状態と時間との関係を示すグラフである。なお、消費電力は、速度×トルクで求めており、図１０では仮想電力と記載している。
【００８３】
図１０（ｃ）に示すように、台形速度制御による速度軌跡の場合の消費電力の最大値が８３５００程度となっているのに対し（図１０（ｃ）には、台形仮想電力と記載）、「提案手法Ａの速度軌跡」に対応する消費電力の最大値が４６５００程度（図１０（ｃ）には、提案手法Ａ仮想電力と記載）、「制約付提案手法Ａの速度軌跡」に対応する消費電力の最大値が４５０００程度となっており（図１０（ｃ）には、制約付提案手法Ａ仮想電力と記載）、提案手法Ａによって生成された速度軌跡により消費電力の最大値が４０パーセント程度小さくなっている、すなわち消費電力のピークがカットされていることがわかる。したがって、提案手法Ａにより消費電力を削減しつつ、制御対象５を所定位置に所望の時間で移動させることができることが分かる。
【００８４】
〔提案手法Ｂ〕
次に、図１１、１２を参照して、提案手法Ｂについて説明する。提案手法Ｂは、提案手法Ａと比較して、速度軌跡の駆動開始時（立上がり時）を緩やかにしたものである。
【００８５】
一般に、装置が移動するときの摩擦力は、静止時に大きくなり、駆動開始時に一旦低下し、その後、移動速度の上昇に伴って上昇していく。しかし、静止時の摩擦力（静止摩擦）の大きさを把握することが難しく、動作時の摩擦に比べて静止時の摩擦力が大きいため駆動時に装置の運動方程式から予想される想定以上の多大なトルクを必要とし、結果として実際に動かした際に、トルクのピークが上昇してしまう可能性がある。
【００８６】
この点について、図１１を参照して説明する。図１１は、速度と摩擦力との関係を示した図であり、（ａ）は一般的な摩擦モデル図であり、（ｂ）は一般的な装置の場合の摩擦力と速度の関係を示す図である。図１１（ａ）に示すように、摩擦モデルでは、速度の上昇とともに摩擦力も上昇していくことが示されているが、静止時（速度が零の時）の摩擦力の大きさは考慮されていない。実際の一般的な装置では、図１１（ｂ）に示すように、静止時の摩擦力が大きくなるため、摩擦モデルを用いて装置の移動を想定すると、この点が原因で想定しないトルクピークが発生する可能性がある。
【００８７】
そこで、本提案手法Ｂでは、速度軌跡の立上がり部分を、下に凸から上に凸となるような変曲点を有する曲線とすることで、緩やかに速度が上昇するようにしている。より詳細には、次の通り速度軌跡を生成する。まず、指定された駆動時間を短縮して速度軌跡を生成する。次に、短縮した時間分の軌跡の移動平均を算出する。これにより、立上がり部分が緩やかになるとともに、駆動時間および移動位置は提案手法Ａと変わらない速度軌跡を生成することができる。
【００８８】
図１２に、トルクのピークを下げる評価関数をもとに提案手法Ｂを用いた場合の速度軌跡の例、および、そのときのトルク状態を示す。図１２（ａ）は、トルクのピークを下げる評価関数をもとに提案手法Ｂを用いた場合の速度軌跡の例（図１２（ａ）には提案手法Ｂ速度と記載）、およびトルクのピークを下げる評価関数をもとに提案手法Ａを用いた軌跡の例（図１２（ａ）には最小原理のみ使用の際の速度と記載）を示した図、および、両者の立上がり部分を拡大した図（拡大図）である。拡大図に示すように、提案手法Ｂの速度軌跡では、総電力最小軌跡と比較して、立上がりが緩やかとなっている。
【００８９】
図１２（ｂ）は、トルクのピークを下げる評価関数をもとに提案手法Ｂを用いた場合のトルク状態と（図１２（ｂ）には提案手法Ｂトルクと記載）、トルクのピークを下げる評価関数をもとに提案手法Ａを用いた軌跡に対応するトルク状態（図１２（ｂ）には最小原理のみ使用の際のトルクと記載）とを示す図である。図１２（ｂ）に示すように、トルクのピークを下げる評価関数をもとに提案手法Ａを用いた軌跡に対応するトルクでは、駆動時（立上がり時）にピークが発生しているのに対し、提案手法Ｂの速度軌跡に対応するトルクでは、駆動時にピークは発生していない。したがって、提案手法Ｂによれば、駆動時のトルクのピークを抑制できることが分かる。
【００９０】
〔提案手法Ｃ〕
次に、図１３〜１５を参照して、提案手法Ｃについて説明する。提案手法Ｃは、装置の振動を抑制した速度軌跡を生成するものである。
【００９１】
まず、振動を抑制する速度軌跡を生成する方法について図１３を参照して説明する。図１３は、振動を抑制する速度軌跡を生成する方法を説明するための図である。
【００９２】
５次曲線等の高次曲線による速度軌跡は振動を起こしにくい軌跡である。よって、この速度軌跡とトルクのピークを下げる評価関数をもとに提案手法Ａ、制限付き提案手法Ａ、または提案手法Ｂを用いた軌跡とを足して割ることにより、振動を抑制しつつトルクのピークを抑制できる速度軌跡を生成することができる。なお、ここでは、５次曲線または４次曲線を例に挙げて説明するが、高次曲線の次数はこれに限られず、４次以上であれば何次であってもよい。
【００９３】
図１３には、トルクのピークを下げる評価関数をもとに提案手法Ａを用いた軌跡と５次曲線の速度軌跡と足して２で割ったときの速度軌跡を提案手法Ｃの速度軌跡として示している。なお、トルクのピークを下げる評価関数をもとに提案手法Ａを用いた軌跡と５次曲線の速度軌跡とを組み合わせる割合を変更することにより、振動の抑制に重きを置くことも可能であるし、ピークの抑制に重きを置くことも可能となる。例えば、振動を抑制することに重きを置く場合は、（５次曲線の速度軌跡×３＋提案手法Ａ（Ｂ））／４にすればよく、トルクのピークを抑制することに重きを置く場合は（５次曲線の速度軌跡＋提案手法Ａ（Ｂ）×３）／４にすればよい。また、５次曲線の速度軌跡と提案手法Ａとを組み合わせることによっても、上述した静止摩擦の影響を軽減することができる。
【００９４】
図１４に、トルクのピークを下げる評価関数をもとに提案手法Ｃによる速度軌跡（図１４には、振動抑制位置（速度、トルク）と記載）、トルクのピークを下げる評価関数をもとに提案手法Ａを用いた速度軌跡、ジャーク付台形速度制御による速度軌跡と、それぞれの場合の制御対象５の位置、トルク状態を示す。
【００９５】
図１４（ｃ）に示すように、提案手法Ｃによれば、トルクの立ち上がり、立下りが緩やかになり、装置の振動が抑制されることがわかる。
【００９６】
また、速度制限がある場合は、速度一定部分を直線とした４−１−４次曲線など（５−１−５次曲線など４次よりも高次な曲線でもよい）と提案手法Ａ（Ｂ）の速度軌跡とを組み合わせることにより、振動を抑制しつつトルクのピークを抑制できる速度軌跡を生成することができる。
【００９７】
具体的に、図１５を参照して説明する。図１５は、制約付提案手法Ａの速度軌跡（図１５には制約付提案手法Ａ速度と記載）と４−１−４次曲線の速度軌跡とを組み合わせた場合を示している。図１５に示すように、立上がり部分と立下がり部分とについて、制約付提案手法Ａの速度軌跡と４−１−４次曲線の速度軌跡とを所定の比率で組み合わせることにより、速度制限に対応しつつ、振動を抑制しピークを抑制できる速度軌跡（図１５には制約付提案手法Ｃ速度と記載）を生成することができる。
【００９８】
なお、提案手法Ｃにおいて、高次の速度軌跡と提案手法Ａ（Ｂ）の速度軌跡とを組み合わせる比率を、例えば、入力受付部１００により受け付けることによりユーザに指定させてもよい。これにより、上述したように、振動の抑制に重きを置くか、ピークの抑制に重きを置くか、をユーザに選択させることができる。
【００９９】
〔ソフトウェアによる実現例〕
制御装置１の制御ブロック（特に軌跡部２００（評価関数代入部２０１、運動方程式代入／作成部２０２、条件設定部２０３、軌跡生成部２０４）および動作指示部３００）は、集積回路（ＩＣチップ）等に形成された論理回路（ハードウェア）によって実現してもよいし、ＣＰＵ（Central Processing Unit）を用いてソフトウェアによって実現してもよい。
【０１００】
後者の場合、制御装置１は、各機能を実現するソフトウェアであるプログラムの命令を実行するＣＰＵ、上記プログラムおよび各種データがコンピュータ（またはＣＰＵ）で読み取り可能に記録されたＲＯＭ（Read Only Memory）または記憶装置（これらを「記録媒体」と称する）、上記プログラムを展開するＲＡＭ（Random Access Memory）などを備えている。そして、コンピュータ（またはＣＰＵ）が上記プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体（通信ネットワークや放送波等）を介して上記コンピュータに供給されてもよい。なお、本発明は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
【０１０１】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【符号の説明】
【０１０２】
１  制御装置（軌跡生成装置）
３  サーボドライバ
４  サーボモータ
５  制御対象
８  サポート装置
１００  入力受付部
２００  軌跡部（軌跡算出部）
２０１  評価関数代入部
２０２  運動方程式代入／作成部
２０３  条件設定部
２０４  軌跡生成部
３００  動作指示部
【図１】
2017102674.tif 000006
【図２】
2017102674.tif 000007
【図３】
2017102674.tif 000008
【図４】
2017102674.tif 000009
【図５】
2017102674.tif 000010
【図６】
2017102674.tif 000011
【図７】
2017102674.tif 000012
【図８】
2017102674.tif 000013
【図９】
2017102674.tif 000014
【図１０】
2017102674.tif 000015
【図１１】
2017102674.tif 000016
【図１２】
2017102674.tif 000017
【図１３】
2017102674.tif 000018
【図１４】
2017102674.tif 000019
【図１５】
2017102674.tif 000020