(57)【要約】【課題】歯車同士の接触にて力を伝達する場合に、比較的速やかにバックドライブを開始することができ、かつ、順方向の回転時とバックドライブ時とで制御モードの切替を不要とすることができるようにする。【解決手段】制御装置が、歯車で連結された駆動側回転部及び負荷側回転部について、前記駆動側回転部の回転加速度と前記負荷側回転部の回転加速度との相違を算出し、算出した相違に応じて前記負荷側回転部をバックドライブさせるように、前記駆動側回転部を回転させる駆動装置のトルクを制御する角度伝達誤差対応部を備える。【選択図】図４
2019049852.tif 000002
【特許請求の範囲】
【請求項１】
歯車で連結された駆動側回転部及び負荷側回転部について、前記駆動側回転部の回転加速度と前記負荷側回転部の回転加速度との相違を算出し、算出した相違に応じて前記負荷側回転部をバックドライブさせるように、前記駆動側回転部を回転させる駆動装置のトルクを制御する角度伝達誤差対応部
を備える制御装置。
【請求項２】
前記角度伝達誤差対応部は、前記駆動側回転部の回転加速度と前記負荷側回転部の回転加速度との差を算出する、
請求項１に記載の制御装置。
【請求項３】
前記角度伝達誤差対応部は、算出した差に比例して前記駆動側回転部の回転加速度と前記負荷側回転部の回転加速度との差を増幅させる向きのトルクを、前記駆動装置のトルクに加える、
請求項２に記載の制御装置。
【請求項４】
前記駆動側回転部の回転速度に基づいて前記負荷側回転部の回転に対する摩擦を推定し、推定した摩擦を補償するように駆動装置のトルクを制御する摩擦補償部を備える、
請求項１から３の何れか一項に記載の制御装置。
【請求項５】
前記駆動側回転部の回転速度及び前記負荷側回転部の回転速度に基づいて、前記負荷側回転部に外部から加えられた外部トルクを推定し、推定した外部トルクに応じて前記負荷側回転部をバックドライブさせる外力対応部を備える、
請求項１から４の何れか一項に記載の制御装置。
【請求項６】
請求項１から５の何れか一項に記載の制御装置と、
前記駆動側回転部、前記負荷側回転部、及び、前記駆動装置を備える制御対象機器と、
を備えるシステム。
【請求項７】
歯車で連結された駆動側回転部及び負荷側回転部について、前記駆動側回転部の回転加速度と前記負荷側回転部の回転加速度との相違を算出することと、
算出した相違に応じて前記負荷側回転部をバックドライブさせるように、前記駆動側回転部を回転させる駆動装置のトルクを制御することと
を含む制御方法。
【請求項８】
コンピュータに、
歯車で連結された駆動側回転部及び負荷側回転部について、前記駆動側回転部の回転加速度と前記負荷側回転部の回転加速度との相違を算出することと、
算出した相違に応じて前記負荷側回転部をバックドライブさせるように、前記駆動側回転部を回転させる駆動装置のトルクを制御することと
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、制御装置、システム、制御方法及びプログラムに関する。
【背景技術】
【０００２】
人が機器に接触した場合に人への反力を抑制して安全性を確保する観点から、機器が、人との接触で加えられる力に従って反力を生じさせないように、あるいは反力を低減させるように動作することが好ましい。かかる動作はバックドライブ（BackdriveまたはBackdriving）と呼ばれ、かかる動作のしやすさはバックドライバビリティ（Backdrivability）と呼ばれる。
【０００３】
バックドライバビリティを高めるための方法として、非特許文献１には、かみ合わされている２つの歯車の回転角度に基づいて、歯車間のバックラッシ（Backlash、歯車等の間に設けられた隙間。バックラッシュともいう）を一定に保つように制御する方法が記載されている。
また、非特許文献２には、電気静油圧アクチュエータの負荷側のギアの出力角速度を用いて外力に対する反力を算出し、バックラッシによる空転時には、この反力から、負荷側から見た駆動側との相対角速度に係数を乗算して算出される粘性摩擦力を差し引く方法が記載されている。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Shota Yamada、他１名、"Human-Machine Interactive Control for Geared Mechatronic Systems by Using Load-side Encoder"、Proc. IEEJ Int. Workshop on Sensing, Actuation, Motion Control, and Optimization、２０１７年、SS1-1
【非特許文献２】梅田滉大、他４名、「油圧アクチュエータにおける高確度な反力推定法」、ロボティクス・メカトロニクス講演会、２０１６年、２Ａ１−０４ｂ３
【発明の概要】
【発明が解決しようとする課題】
【０００５】
機器がバックドライブするべきタイミングとして、人が意図せず機器に接触したタイミングが挙げられる。通常、かかるタイミングを予め知ることはできないため、制御にてバックドライブを実現する機器は、人の接触に起因する事象を検出してバックドライブを開始する。
機器がバックドライブを開始するタイミングが遅れると、人が機器に接触してから機器がバックドライブを開始するまでの間に反力が人に加えられる。このため、人が機器に接触してから機器がバックドライブを開始するまでの時間が短いことが好ましい。
【０００６】
また、非特許文献１に記載されている方法のように、歯車間のバックラッシを一定に保つように制御することでバックドライブを行う方法は、歯車が接触する順方向の回転の制御にそのまま適用することはできない。このため、非特許文献１には、順方向の回転時とバックドライブ時とで制御モードを切り替えることが記載されている。制御モードの切り替えによる遅延を回避する観点から、順方向の回転時の制御とバックドライブ時の制御とをモード切替無しに行えることが好ましい。
【０００７】
また、非特許文献２に記載されている方法は、電気静油圧アクチュエータの制御のための方法であり、歯車同士の接触にて力を伝達する場合にそのまま適用することはできない。
【０００８】
本発明は、歯車同士の接触にて力を伝達する場合に、比較的速やかにバックドライブを開始することができ、かつ、順方向の回転時とバックドライブ時とで制御モードの切替を不要とすることができる制御装置、システム、制御方法及びプログラムを提供する。
【課題を解決するための手段】
【０００９】
本発明の第１の態様によれば、制御装置は、歯車で連結された駆動側回転部及び負荷側回転部について、前記駆動側回転部の回転加速度と前記負荷側回転部の回転加速度との相違を算出し、算出した相違に応じて前記負荷側回転部をバックドライブさせるように、前記駆動側回転部を回転させる駆動装置のトルクを制御する角度伝達誤差対応部を備える。
【００１０】
前記角度伝達誤差対応部は、前記駆動側回転部の回転加速度と前記負荷側回転部の回転加速度との差を算出するようにしてもよい。
【００１１】
前記角度伝達誤差対応部は、算出した差に比例して前記駆動側回転部の回転加速度と前記負荷側回転部の回転加速度との差を増幅させる向きのトルクを、前記駆動装置のトルクに加えるようにしてもよい。
【００１２】
前記駆動側回転部の回転速度に基づいて前記負荷側回転部の回転に対する摩擦を推定し、推定した摩擦を補償するように駆動装置のトルクを制御する摩擦補償部を備えるようにしてもよい。
【００１３】
前記駆動側回転部の回転速度及び前記負荷側回転部の回転速度に基づいて、前記負荷側回転部に外部から加えられた外部トルクを推定し、推定した外部トルクに応じて前記負荷側回転部をバックドライブさせる外力対応部を備えるようにしてもよい。
【００１４】
本発明の第２の態様によれば、システムは、前記した何れかの制御装置と、前記駆動側回転部、前記負荷側回転部、及び、前記駆動装置を備える制御対象機器と、を備える。
【００１５】
本発明の第３の態様によれば、制御方法は、歯車で連結された駆動側回転部及び負荷側回転部について、前記駆動側回転部の回転加速度と前記負荷側回転部の回転加速度との相違を算出することと、算出した相違に応じて前記負荷側回転部をバックドライブさせるように、前記駆動側回転部を回転させる駆動装置のトルクを制御することとを含む。
【００１６】
本発明の第４の態様によれば、プログラムは、コンピュータに、歯車で連結された駆動側回転部及び負荷側回転部について、前記駆動側回転部の回転加速度と前記負荷側回転部の回転加速度との相違を算出することと、算出した相違に応じて前記負荷側回転部をバックドライブさせるように、前記駆動側回転部を回転させる駆動装置のトルクを制御することとを実行させるためのプログラムである。
【発明の効果】
【００１７】
本発明によれば、歯車同士の接触にて力を伝達する場合に、比較的速やかにバックドライブを開始することができ、かつ、順方向の回転時とバックドライブ時とで制御モードの切替を不要とすることができる。
【図面の簡単な説明】
【００１８】
【図１】本発明の実施形態に係るシステムの装置構成を示す概略ブロック図である。
【図２】同実施形態に係る制御対象機器の装置構成を示す概略ブロック図である。
【図３】同実施形態に係る制御装置の機能構成を示す概略ブロック図である。
【図４】同実施形態に係る制御装置による制御対象機器の制御を示すブロック図である。
【図５】同実施形態に係るシミュレーション結果におけるモータ回転角度を示す図である。
【図６】図５における０秒から０．１５秒までの区間を拡大した図である。
【図７】同実施形態に係るシミュレーション結果におけるモータトルクを示す図である。
【図８】図７における０秒から０．１５秒までの区間を拡大した図である。
【図９】同実施形態に係る実験で制御対象機器として用いた実験機の装置構成を示す外形図である。
【図１０】同実施形態に係るモータの角速度と実験機における摩擦との関係を示すグラフである。
【図１１】Ｃａｓｅ１の実験結果を示す図である。
【図１２】Ｃａｓｅ２の実験結果を示す図である。
【図１３】Ｃａｓｅ３の実験結果を示す図である。
【図１４】Ｃａｓｅ４の実験結果を示す図である。
【図１５】同実施形態に係る角速度情報に基づく制御の例を示すブロック図である。
【図１６】同実施形態に係る角度情報に基づく制御の例を示すブロック図である。
【図１７】同実施形態に係る低ゲインでのシミュレーション結果におけるモータ回転速度を示す図である。
【図１８】図１７における０．０３秒から０．０５秒までの区間を拡大した図である。
【図１９】低ゲインでのシミュレーション結果におけるモータトルクを示す図である。
【図２０】図１９における０．０３秒から０．０５秒までの区間を拡大した図である。
【図２１】高ゲインでのシミュレーション結果におけるモータ回転速度を示す図である。
【図２２】図２１における０．０３秒から０．０５秒までの区間を拡大した図である。
【図２３】高ゲインでのシミュレーション結果におけるモータトルクを示す図である。
【図２４】図２３における０．０３秒から０．０５秒までの区間を拡大した図である。
【図２５】外力対応部を備えていない制御装置による制御対象機器の制御を示すブロック図である。
【図２６】外力対応部の有無の比較のシミュレーションにおけるモータ回転角度を示す図である。
【図２７】図２６における０秒から０．１５秒までの区間を拡大した図である。
【図２８】外力対応部の有無の比較のシミュレーションにおけるモータトルクを示す図である。
【図２９】図２８における０秒から０．１５秒までの区間を拡大した図である。
【図３０】外部対応有無の比較の実験でＣａｓｅ１の実験結果を示す図である。
【図３１】外部対応有無の比較の実験でＣａｓｅ２の実験結果を示す図である。
【図３２】外力対応部２９２の出力にゲインが設けられているシステムの例を示すブロック図である。
【図３３】フィードバックゲインを設けた構成でのシミュレーションにおけるモータ回線角度を示す図である。
【図３４】図３３における０秒から０．１５秒までの区間を拡大した図である。
【図３５】フィードバックゲインを設けた構成でのシミュレーションにおけるモータトルクを示す図である。
【図３６】図３５における０秒から０．１５秒までの区間を拡大した図である。
【発明を実施するための形態】
【００１９】
以下、本発明の実施形態を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
図１は、本発明の実施形態に係るシステムの装置構成を示す概略ブロック図である。図１に示すように、システム１は、制御対象機器１００と、制御装置２００とを備える。
【００２０】
制御対象機器１００は、人が行動する環境で動作する。制御対象機器１００の例として、工場の生産ラインに設置された工業用ロボット、および、患者の治療または検査を行うための医療用機器が挙げられるが、これらに限定されない。
制御装置２００は、制御対象機器１００を制御する。特に、制御装置２００は、制御対象機器１００を制御してバックドライブさせる。制御装置２００は、例えばＰＬＣ（Programmable Logic Controller）、ＥＷＳ（Engineering Workstation）、マイコン（Microcomputer）又はパソコン（Personal Computer）などのコンピュータを用いて構成される。
【００２１】
図２は、制御対象機器１００の装置構成を示す概略ブロック図である。図２に示すように、制御対象機器１００は、駆動装置１１１と、駆動側回転軸１１２と、駆動側エンコーダ１１３と、駆動側歯車１１４と、負荷側歯車１２１と、負荷側回転軸１２２と、負荷側エンコーダ１２３と、アーム１２４とを備える。
駆動装置１１１と、駆動側回転軸１１２と、駆動側エンコーダ１１３と、駆動側歯車１１４とを総称して駆動側回転部１１０と表記する。負荷側歯車１２１と、負荷側回転軸１２２と、負荷側エンコーダ１２３と、アーム１２４とを総称して、負荷側回転部１２０と表記する。また、駆動側歯車１１４と負荷側歯車１２１との組み合わせを、ギア装置１３０と表記する。
【００２２】
駆動装置１１１は、制御装置２００の制御に従ってトルク（回転力）を出力する。以下では、駆動装置１１１がモータである場合を例に説明するが、これに限定されない。
駆動側回転軸１１２は、駆動装置１１１が出力するトルクで回転駆動され、駆動側エンコーダ１１３および駆動側歯車１１４にトルクを伝達する。
駆動側歯車１１４は、駆動側回転軸１１２から伝達されるトルクで回転駆動される。駆動側歯車１１４は、負荷側歯車１２１と噛み合っており、負荷側歯車１２１にトルクを伝達する。
駆動側エンコーダ１１３は、駆動側回転軸１１２の回転角度（回転位置）を検出する。駆動装置１１１と駆動側回転軸１１２と駆動側歯車１１４とは同じ回転角度で回転するため、駆動側エンコーダ１１３が検出する回転角度は、駆動側歯車１１４の回転角度でもあり、駆動側回転部１１０の回転角度でもある。
【００２３】
負荷側歯車１２１は、駆動側歯車１１４から伝達されるトルクで回転駆動され、負荷側回転軸１２２にトルクを伝達する。駆動側歯車１１４から負荷側歯車１２１にトルクが伝達される際、駆動側歯車１１４と負荷側歯車１２１との歯の数の比（減速比）で回転が減速される。
負荷側回転軸１２２は、負荷側歯車１２１から伝達されるトルクで回転駆動され、負荷側エンコーダ１２３およびアーム１２４にトルクを伝達する。
【００２４】
アーム１２４は、負荷側回転軸１２２から伝達されるトルクで回転駆動される。人がアーム１２４に接触した場合に、安全のためにアーム１２４から人に反力が加わらないよう、アーム１２４がバックドライブする。制御対象機器１００の各部の構造、および、制御装置２００による制御対象機器１００の制御によって、このバックドライブが実現される。
負荷側エンコーダ１２３は、負荷側回転軸１２２の回転角度を検出する。負荷側回転軸１２２と負荷側歯車１２１とアーム１２４とは同じ回転角度で回転するため、負荷側エンコーダ１２３が検出する回転角度は、負荷側歯車１２１の回転角度でもあり、負荷側回転部１２０の回転角度でもある。
なお、制御対象機器１００に用いられるギア装置１３０は、歯車同士が接触してちからを特定の種類のものに限定されない。
【００２５】
図３は、制御装置２００の機能構成を示す概略ブロック図である。図３に示すように、制御装置２００は、通信部２１０と、記憶部２８０と、制御部２９０とを備える。制御部２９０は、摩擦補償部２９１と、外力対応部２９２と、角度伝達誤差対応部２９３とを備える。
【００２６】
通信部２１０は、他の機器と通信を行う。特に、通信部２１０は、制御対象機器１００とのインタフェースとして機能して、駆動側エンコーダ１１３が検出する回転角度および負荷側エンコーダ１２３が検出する回転角度を取得し、また、駆動装置１１１の回転を制御するための制御信号を駆動装置１１１へ出力する。
記憶部２８０は、各種情報を記憶する。記憶部２８０は、制御装置２００が備える記憶デバイスを用いて構成される。
【００２７】
制御部２９０は、制御装置２００の各部を制御して各種処理を実行する。制御部２９０は、制御装置２００が備えるＣＰＵ（Central Processing Unit,中央処理装置）が、記憶部２８０からプログラムを読み出して実行することで構成される。
摩擦補償部２９１は、駆動側回転部１１０の回転速度に基づいて負荷側回転部１２０の回転に対する摩擦を推定する。そして、摩擦補償部２９１は、推定した摩擦を補償するように駆動装置１１１のトルクを制御する。
外力対応部２９２は、駆動側回転部１１０の回転速度及び負荷側回転部１２０の回転速度に基づいて、負荷側回転部１２０に外部から加えられた外部トルクを推定する。そして、外力対応部２９２は、推定した外部トルクに応じて負荷側回転部１２０をバックドライブさせる。
【００２８】
角度伝達誤差対応部２９３は、駆動側回転部１１０の回転加速度と負荷側回転部１２０の回転加速度との相違を算出し、算出した相違に応じて負荷側回転部１２０をバックドライブさせるように、駆動装置１１１のトルクを制御する。
特に、角度伝達誤差対応部２９３は、駆動側回転部１１０の回転加速度と負荷側回転部１２０の回転加速度との差を算出する。そして、角度伝達誤差対応部２９３は、算出した差に比例して差を増幅させる向きのトルクを、駆動装置１１１のトルクに加える。
なお、制御装置２００は、バックドライブだけでなく制御対象機器１００の通常時の動作も制御する。例えば、制御部１９０が、制御対象機器１００の通常時の動作を管理する。
【００２９】
図４は、制御装置２００による制御対象機器１００の制御を示すブロック図である。図４では、制御対象機器１００のモデルと、制御装置２００が行う制御のモデルとがブロック図で示されている。
ここで、制御対象機器１００を減速機の２慣性系としてモデル化すると、駆動側回転部１１０は式（１）のようにモデル化される。
【００３０】
【数１】
2019049852.tif 000003
【００３１】
ここで、ＪＭは、駆動側回転部１１０のイナーシャ（Inertia）を示す。θＭ’’は、駆動側回転部１１０の回転加速度を示す。なお、θＭは駆動側回転部１１０の回転角度を示す。また、微分を「’」で示し、二階微分を「’’」で示す。
また、駆動側回転部１１０および負荷側回転部１２０の回転に対する摩擦を、摩擦トルクτｆとして示す。摩擦トルクτｆは、バックドライバビリティ低下の要因となる。
【００３２】
また、τＭは、駆動装置１１１のトルクを示す。Ｎは、駆動側歯車１１４と負荷側歯車１２１との減速比を示す。τｓは、軸トルクを示す。
図４では、ノード３１１、３１２及び３１３にて式（１）を示している。ノード３１３等の「ｓ」は微分を示す。また、「１／ｓ」は積分を示す。
また、負荷側回転部１２０は式（２）のようにモデル化される。
【００３３】
【数２】
2019049852.tif 000004
【００３４】
ここで、ＪＬは、負荷側回転部１２０のイナーシャを示す。θＬ’’は、負荷側回転部１２０の回転加速度を示す。なお、θＬは負荷側回転部１２０の回転角度を示す。
また、τｅｘｔは、負荷側回転部１２０に加えられる外力によるトルクを示す。以下では、負荷側回転部１２０に加えられる外力によるトルク（τｅｘｔ）を外部トルクとも称する。
図４では、ノード３１７及び３１８にて式（２）を示している。
【００３５】
また、ノード３１４〜３１６は角度伝達誤差を示す。また、τＢＬを含むノード３１５への入力はバックラッシを示す。
また、ノード３１６の「Ｋｓ」は、ばね定数を示す。
なお、重力トルクは無視する。
【００３６】
制御対象機器１００のバックドライバビリティ低下の要因として、摩擦の影響がある。これに対し、駆動装置１１１側からみた制御対象機器１００の摩擦を予めモデル化し、記憶部２８０が記憶しておく。摩擦補償部２９１は、記憶部２８０が記憶しているモデルを用いて、駆動装置１１１の角速度に応じてフィードフォワードに摩擦補償を行う。
ここでは、摩擦のモデルとして、式（３）に示す非線形摩擦の静的モデルを用いる。
【００３７】
【数３】
2019049852.tif 000005
【００３８】
ここで、τｆｍｏｄｅｌは、モデル全体の摩擦トルク（摩擦トルクτｆのモデル）を示す。τｓｔａｔｉｃは、最大静止摩擦とストライベック効果のモデルを示す。τｓｔａｔｉｃは、式（４）のように示される。
【００３９】
【数４】
2019049852.tif 000006
【００４０】
ここで、τｆｓは、最大静止摩擦力を示す。τｆｃは、クーロン摩擦力を示す。θ’ｓは、ストライベック速度を示す。
また、τｃｏｕｌｏｍｂは、クーロン摩擦モデルを示す。τｃｏｕｌｏｍｂは、式（５）のように示される。
【００４１】
【数５】
2019049852.tif 000007
【００４２】
ここで、ｓｇｎは符号関数を示す。Δθ’は、微小速度領域の速度閾値として設定されている定数を示す。
また、τｖｉｓｃｏｕｓは、粘性摩擦モデルを示す。τｖｉｓｃｏｕｓは、式（６）のように示される。
【００４３】
【数６】
2019049852.tif 000008
【００４４】
ここで、Ｄｖは、粘性摩擦係数を示す。
図４の摩擦補償部２９１のモデルにおけるノード３２１は、式（３）〜式（６）のモデルを用いた摩擦補償を示している。
【００４５】
また、図４の外力対応部２９２のモデルに関して、摩擦補償部２９１によって摩擦力が補償され無視できる場合、外部トルクτｅｘｔは、式（１）および式（２）より式（７）のように示される。
【００４６】
【数７】
2019049852.tif 000009
【００４７】
式（７）に示される関係から、駆動側エンコーダ１１３および負荷側エンコーダ１２３からのエンコーダ情報に基づき外乱オブザーバを構築すると式（８）のように示される。
【００４８】
【数８】
2019049852.tif 000010
【００４９】
ここで、τｅｘｔ＿ａは、外部トルクτｅｘｔの推定値を示す。ｇｄｉｓは、外力対応部２９２における遮断周波数（外乱オブザーバの遮断周波数（Cut-off Frequency））を示す。
図４の外力対応部２９２のモデルのノード３３１〜３４１にて式（８）を示している。
【００５０】
また、図４の角度伝達誤差対応部２９３のモデルに関し、バックラッシを含む角度伝達誤差を外乱とみなし駆動側回転部１１０に影響するとして、駆動側回転部１１０と負荷側回転部１２０との角度伝達の関係を式（９）のようにモデル化する。
【００５１】
【数９】
2019049852.tif 000011
【００５２】
ここで、τＢＬを角度伝達誤差外乱とする。
角度伝達誤差外乱τＢＬを、駆動側回転部１１０に作用する外乱トルクとして、角度伝達誤差の角加速度を用いて式（１０）のようにモデル化する。
【００５３】
【数１０】
2019049852.tif 000012
【００５４】
図４の角度伝達誤差対応部２９３のモデルのノード３５１〜３５３にて式（１０）を示している。τＢＬ＿ａは、角度伝達誤差外乱τＢＬの推定値を示す。
また、図４のノード３６１〜３６２は、外力対応部２９２が推定した外部トルクの推定値τｅｘｔ＿ａに減速比Ｎの逆数を乗算したトルク、及び、角度伝達誤差対応部２９３が推定した角度伝達誤差外乱の推定値τＢＬ＿ａを駆動装置１１１のトルクτＭから減算する（バックドライブする方向にトルクを加える）制御を示している。
また、図４のノード３６３は、摩擦補償部２９１が算出した摩擦トルクτｆｍｏｄｅｌを駆動装置１１１のトルクτＭに加算する（摩擦によるトルクの減少を補償する）制御を示している。
【００５５】
次に、システム１のシミュレーション及び実験について説明する。
システム１の動作および効果をシミュレーションにて確認した。比較のため、以下の４つの場合についてシミュレーションを行った。
Ｃａｓｅ１：制御無し
Ｃａｓｅ２：摩擦補償部２９１による摩擦補償のみ
Ｃａｓｅ３：摩擦補償部２９１による摩擦補償＋外力対応部２９２による制御
Ｃａｓｅ４：摩擦補償部２９１による摩擦補償＋外力対応部２９２による制御＋角度伝達誤差対応部２９３による制御
【００５６】
シミュレーションおよび実験におけるパラメータ値は以下のとおりである。
サンプリング時間Δｔ［μ秒］：100.0
疑似微分の遮断周波数ｇＰ［ラジアン／秒］：600.0
外力対応部２９２における遮断周波数ｇｄｉｓ［ラジアン／秒］：300.0
角度伝達誤差対応部２９３における疑似微分の遮断周波数ｇＢＬ［ラジアン／秒］：100.0
最大静止摩擦力τｆｓ［Ｎｍ（ニュートン・メートル）］：-0.0124, 0.0210
クーロン摩擦力τｆｃ［Ｎｍ］：-0.0120, 0.0206
粘性摩擦係数Ｄｖ［Ｎｍ・秒／ラジアン］：0.00030, 0.00015
ストライベック速度θｓ’［ラジアン／秒］：-0.50, 0.70
速度閾値Δθ’［ラジアン／秒］：-0.10, 0.10
【００５７】
なお、駆動側エンコーダ１１３及び負荷側エンコーダ１２３のエンコーダの角度情報から得られる角度伝達誤差を２階疑似微分することにより角度伝達誤差の角加速度を得ているため、角度伝達誤差対応部２９３における２階疑似微分の遮断周波数には、摩擦補償部２９１による摩擦補償、および、外力対応部２９２による駆動側および負荷側の角速度の疑似微分計算における遮断周波数と異なる周波数を用いている。
負荷側回転部１２０への外力として、シミュレーション時間ｔ＝０．０〜４．０［秒］の間に、式（１１）の外力を与えた。
【００５８】
【数１１】
2019049852.tif 000013
【００５９】
図５は、シミュレーション結果におけるモータ回転角度を示す図である。図５のグラフの横軸は時間［秒］を示し、縦軸は角度［ラジアン］を示す。なお、ここでの時間は、外力を与え始めてからの時間である。以下のグラフでも同様である。
線Ｌ１１１は、Ｃａｓｅ１の場合のモータ回転角度（駆動側回転部１１０の回転角度）を示す。線Ｌ１１２は、Ｃａｓｅ２の場合のモータ回転角度を示す。線Ｌ１１３は、Ｃａｓｅ３の場合のモータ回転角度を示す。線Ｌ１１４は、Ｃａｓｅ４の場合のモータ回転角度を示す。線Ｌ１１３と線Ｌ１１４とは重なっている。
【００６０】
図５を参照すると、Ｃａｓｅ１の場合には負荷側回転部１２０に与えられた外力に対してモータ回転角度がほぼ変化していないのに対し、Ｃａｓｅ２、３、４ではバックドライブしていることが確認できる。また、外力対応部２９２による制御を行っているＣａｓｅ３、４では、Ｃａｓｅ２と比較してバックドライブ量が大きいことが確認できる。
以上により、摩擦補償部２９１による摩擦補償および外力対応部２９２による制御によってバックドライバビリティが向上しているといえる。
【００６１】
図６は、図５における０秒から０．１５秒までの区間を拡大した図である。図６のグラフの横軸は時間［秒］を示し、縦軸は角度［ラジアン］を示す。
線Ｌ１２１は、Ｃａｓｅ１の場合のモータ回転角度を示す。線Ｌ１２２は、Ｃａｓｅ２の場合のモータ回転角度を示す。線Ｌ１２３は、Ｃａｓｅ３の場合のモータ回転角度を示す。線Ｌ１２４は、Ｃａｓｅ４の場合のモータ回転角度を示す。
【００６２】
図６を参照すると、Ｃａｓｅ２、３の場合にはモータ回転角度が０．１１秒付近で変化しており、バックドライブを開始している。一方、Ｃａｓｅ４では、モータ回転角度が０．０３９秒付近で変化しており、バックドライブを開始している。
Ｃａｓｅ４の場合のほうが、Ｃａｓｅ２、３の場合よりも、より早くバックドライブを開始している。
【００６３】
図７は、シミュレーション結果におけるモータトルクを示す図である。図７のグラフの横軸は時間［秒］を示し、縦軸はトルク［Ｎｍ］を示す。
線Ｌ１３１は、Ｃａｓｅ１の場合のモータトルク（駆動側回転部１１０のトルク）を示す。線Ｌ１３２は、Ｃａｓｅ２の場合のモータトルクを示す。線Ｌ１３３は、Ｃａｓｅ３の場合のモータトルクを示す。線Ｌ１３４は、Ｃａｓｅ４の場合のモータトルクを示す。線Ｌ１３３と線Ｌ１３４とは重なっている。
【００６４】
図７のトルクは、主にバックドライブのトルクを示していると考えられる。Ｃａｓｅ１の場合には負荷側回転部１２０に与えられた外力に対してモータトルクがほぼ変化していないのに対し、Ｃａｓｅ２、３、４ではバックドライブしていることが確認できる。また、外力対応部２９２による制御を行っているＣａｓｅ３、４では、Ｃａｓｅ２と比較してバックドライブ量が大きいことが確認できる。
図５の場合と同様、図７からも、摩擦補償部２９１による摩擦補償および外力対応部２９２による制御によってバックドライバビリティが向上しているといえる。
【００６５】
図８は、図７における０秒から０．１５秒までの区間を拡大した図である。図８のグラフの横軸は時間［秒］を示し、縦軸はトルク［Ｎｍ］を示す。
線Ｌ１４１は、Ｃａｓｅ１の場合のモータトルクを示す。線Ｌ１４２は、Ｃａｓｅ２の場合のモータトルクを示す。線Ｌ１４３は、Ｃａｓｅ３の場合のモータトルクを示す。線Ｌ１４４は、Ｃａｓｅ４の場合のモータトルクを示す。
【００６６】
図８を参照すると、Ｃａｓｅ２、３の場合にはモータトルクが最大静止摩擦力τｆｓ＝−０．０１２４［Ｎｍ］を下回っていない（トルクの大きさが、最大静止摩擦力の大きさよりも大きくなっていない）。これにより、Ｃａｓｅ２、３については負荷側回転部１２０に与えられた外力により駆動側回転部１１０が駆動されて摩擦補償部２９１による摩擦補償が動作し、バックドライブしていると考えられる。
【００６７】
一方、Ｃａｓｅ４では、モータトルクが０．０３９秒付近で最大静止摩擦力に達している。これにより、Ｃａｓｅ４では、角度伝達誤差外乱に基づく角度伝達誤差対応部２９３の制御によりバックラッシ領域で角度伝達誤差に応じてモータ（駆動装置１１１）が駆動されバックドライブしていると考えられる。ここでいうバックラッシ領域は、バックラッシによって歯車同士が接していない状態、またはその時間領域である。
以上より、角度伝達誤差外乱に基づいて駆動装置１１１を制御してバックドライブを実現することが可能と考えられる。
【００６８】
図９は、実験で制御対象機器として用いた実験機の装置構成を示す外形図である。図９に示すように、実験機４００は、モータ４１１と、駆動側回転軸４１２と、駆動側エンコーダ４１３と、駆動側トルクセンサ４１４と、減速機４２０と、負荷側回転軸４３１と、負荷側トルクセンサ４３２と、負荷側エンコーダ４３３と、パウダブレーキ（Powder Break）４３４とを備える。
但し、実験では、パウダブレーキ４３４を負荷側回転軸４３１から切り離して不使用とした。また、駆動側トルクセンサ４１４及び、負荷側トルクセンサ４３２は、実験における制御には用いないこととした。
【００６９】
実験機４００で、モータ４１１が回転すると、駆動側回転軸４１２がモータ４１１からのトルクで回転駆動され、モータ４１１と同じ回転角度で回転する。モータ４１１は、ＡＣサーボモータである。
駆動側回転軸４１２は、モータ４１１からのトルクを駆動側トルクセンサ４１４と、駆動側エンコーダ４１３と、減速機４２０の駆動側歯車とに伝達する。減速機４２０の駆動側歯車は、駆動側回転軸４１２に結合されている歯車である。
【００７０】
駆動側回転軸４１２がモータ４１１から伝達するトルクにより、減速機４２０の駆動側歯車がモータ４１１および駆動側回転軸４１２と同じ回転角度で回転する。駆動側トルクセンサ４１４は、駆動側回転軸４１２におけるトルクを検出する。駆動側エンコーダ４１３は、駆動側回転軸４１２の回転角度を検出する。モータ４１１と、駆動側回転軸４１２と、駆動側歯車とは同じ回転角度で回転しており、駆動側回転軸４１２の回転角度は、駆動側の回転角度（駆動側に共通の回転角度）に該当する。また、駆動側回転軸４１２におけるトルクは、駆動側のトルク（駆動側に共通のトルク）に該当する。
【００７１】
減速機４２０では、駆動側歯車から負荷側歯車へトルクが伝達され、負荷側歯車が回転する。減速機４２０の負荷側歯車は、負荷側回転軸４３１に結合されている歯車である。
実験では、減速機４２０として遊星歯車減速機を用いた。
負荷側歯車からトルクが負荷側回転軸４３１に伝達されて負荷側回転軸４３１が回転すると、さらに、負荷側回転軸４３１から負荷側トルクセンサ４３２及び負荷側エンコーダ４３３へトルクが伝達される。負荷側トルクセンサ４３２は、負荷側回転軸４３１におけるトルクを検出する。負荷側エンコーダ４３３は、負荷側回転軸４３１の回転角度を検出する。
負荷側回転軸４３１と負荷側歯車とは同じ回転角度で回転しており、負荷側回転軸４３１の回転角度は負荷側の回転角度（負荷側に共通の回転角度）に該当する。また、負荷側回転軸におけるトルクは、負荷側のトルク（負荷側に共通のトルク）に該当する。
【００７２】
図１０は、モータ４１１の角速度と実験機４００における摩擦との関係を示すグラフである。図１０のグラフの横軸は角速度［ラジアン／秒］を示す。縦軸はトルク［Ｎｍ］を示す。
線Ｌ２１１は、摩擦モデルにおける駆動装置１１１の回転速度と摩擦トルクとの関係の例を示す。線Ｌ２１２は、実験での測定における駆動装置１１１の回転速度と摩擦トルクとの関係の例を示す。
【００７３】
線Ｌ２１２に示すように、モータ４１１の回転方向によって摩擦力の大きさが異なる。そこで、線Ｌ２１１に示すように、回転方向によって摩擦力の大きさが異なる摩擦モデルを用いている。
また、モータ４１１が角速度０［ラジアン／秒］付近で停止できるように、不感帯を設けている。
また、安全のため摩擦補償の最大値を１００［ラジアン／秒］としている。
【００７４】
図１１は、Ｃａｓｅ１の実験結果を示す図である。図１１のグラフの横軸は時間［秒］を示し、縦軸は、回転角度［ラジアン］及びトルク［Ｎｍ］を示す。
線Ｌ３１１は、モータ４１１の回転角度を示す。線Ｌ３１２は、モータ４１１に対するトルク指令値を示す。線Ｌ３１３は、負荷側のトルクを示す。
【００７５】
図１２は、Ｃａｓｅ２の実験結果を示す図である。図１２のグラフの横軸は時間［秒］を示し、縦軸は、回転角度［ラジアン］及びトルク［Ｎｍ］を示す。
線Ｌ３２１は、モータ４１１の回転角度を示す。線Ｌ３２２は、モータ４１１に対するトルク指令値を示す。線Ｌ３２３は、負荷側のトルクを示す。
【００７６】
図１３は、Ｃａｓｅ３の実験結果を示す図である。図１３のグラフの横軸は時間［秒］を示し、縦軸は、回転角度［ラジアン］及びトルク［Ｎｍ］を示す。
線Ｌ３３１は、モータ４１１の回転角度を示す。線Ｌ３３２は、モータ４１１に対するトルク指令値を示す。線Ｌ３３３は、負荷側のトルクを示す。
【００７７】
図１４は、Ｃａｓｅ４の実験結果を示す図である。図１４のグラフの横軸は時間［秒］を示し、縦軸は、回転角度［ラジアン］及びトルク［Ｎｍ］を示す。
線Ｌ３４１は、モータ４１１の回転角度を示す。線Ｌ３４２は、モータ４１１に対するトルク指令値を示す。線Ｌ３４３は、負荷側のトルクを示す。
【００７８】
Ｃａｓｅ１の場合、図１１に示されるように、負荷側に加えられた外力に対してモータトルクの指令値（線Ｌ３１２）は変化しておらず、モータ回転角度（線Ｌ３１１）の変化は小さい。
一方、Ｃａｓｅ２、３、４の場合、図１２、１３、１４に示されるように、負荷側に加えられた外力に対してモータトルクの指令値（線Ｌ３２２、Ｌ３３２、Ｌ３４２）が変化しており、モータ回転角度（線Ｌ３２１、Ｌ３３１、Ｌ３４１）も変化している。
【００７９】
特に、Ｃａｓｅ４では、負荷側のトルク（線Ｌ３４３）が他の場合と比較して小さい。これは、バックドライブによって負荷側に加わる力が小さくなっているためと考えられ、Ｃａｓｅ４では実験機４００の負荷側に外力を受けた場合に効果的にバックドライブを行えていると言える。
【００８０】
次に、システム１における制御と、角速度情報に基づく制御と、角度情報に基づく制御との比較について説明する。システム１の角度伝達誤差対応部２９３では、図４のノード３５３の「ｓ２」にてバックラッシの角加速度を求め、この角加速度を用いて制御を行っている。
【００８１】
図１５は、角速度情報に基づく制御の例を示すブロック図である。図１５に示すシステム１００１は、制御対象機器１００と、制御装置１０１０とを備える。
制御対象機器１００は、図４における制御対象機器と同様であり、同一の符号（１００）を付して説明を省略する。なお、図１５では、バックラッシを不感帯にて示している点で図４の場合と異なるが、実質的な違いを示すものではない。
【００８２】
制御装置１０１０では、ノード１０１１で駆動側の回転角度θＭを減速比Ｎで除算し、ノード１０１２で、除算後の駆動側の回転角度から負荷側の回転角度を減算してバックラッシの角度を算出する。ノード１０１３では、バックラッシの角度を微分して角速度を算出し、この角速度に基づいて駆動装置１１１のトルクを制御する。
なお、ノード１０１３の「ｓ」は微分を示す。「ＪＭｎ」は、駆動側のイナーシャのノミナル値を示す。「Ｋｂｌ」は、バックラッシを補償するためのゲインを示す。
【００８３】
図１６は、角度情報に基づく制御の例を示すブロック図である。図１６に示すシステム１００２は、制御対象機器１００と、制御装置１０２０とを備える。
制御対象機器１００は、図４における制御対象機器と同様であり、同一の符号（１００）を付して説明を省略する。図１５の場合と同様図１６でも、バックラッシを不感帯にて示している点で図４の場合と異なるが、実質的な違いを示すものではない。
【００８４】
制御装置１０２０では、ノード１０２１で負荷側の回転角度θＬに減速比Ｎを乗算し、ノード１０２２で、乗算後の負荷側の回転角度から駆動側の回転角度を減算してバックラッシの角度を算出する。ノード１０２３では、バックラッシの角度に基づくＰＩＤ制御にて駆動装置１１１のトルクを制御する。
ノード１０２４では、駆動側のトルクと駆動側の粘性摩擦とを算出し、ノード１０２５にて駆動装置１１１へのトルク指令に加算している。
なお、ノード１０２３の「Ｃｐｉｄ（ｓ）」は、ＰＩＤ制御を示す。ノード１０２４の「ｓ」は微分を示す。「ＤＭｎ」は、駆動側における粘性摩擦係数のノミナル値を示す。「ＪＭｎ」は、駆動側のイナーシャのノミナル値を示す。
【００８５】
シミュレーションにおけるパラメータ値は以下のとおりである。
（システム１００１（角速度に基づく制御））
ゲイン（バックラッシ補償）Ｋｂｌ：（低ゲイン）32000, （高ゲイン）320000
疑似微分のための遮断周波数［ラジアン／秒］：（低ゲイン）100.0, （高ゲイン）100.0
【００８６】
（システム１００２（角度に基づく制御））
ＰＩＤ制御の極配置［ラジアン／秒］：（低ゲイン）0.25*2π, （高ゲイン）150*2π
２次のローパスフィルタにおける遮断周波数［ラジアン／秒］：（低ゲイン）0.50*2π, （高ゲイン）600*2π
２次のローパスフィルタにおける減衰係数［ラジアン／秒］：（低ゲイン）0.30, （高ゲイン）0.30
ここでいう低ゲインは、トルクの範囲がシステム１の場合と同程度となるように調整するためのゲインである。高ゲインは、応答が十分得られるように調整するためのゲインである。
【００８７】
以下の３つの場合それぞれに、低ゲインの場合及び高ゲインの場合についてシミュレーションを行った。
Ｃａｓｅ１：システム１００２（角度に基づく制御）
Ｃａｓｅ２：システム１００１（角速度に基づく制御）
Ｃａｓｅ３：システム１
【００８８】
図１７は、低ゲインでのシミュレーション結果におけるモータ回転速度を示す図である。図１７のグラフの横軸は時間［秒］を示し、縦軸は角度［ラジアン］を示す。
線Ｌ４１１は、Ｃａｓｅ１の場合のモータ回転角度（駆動側回転部１１０の回転角度）を示す。線Ｌ４１２は、Ｃａｓｅ２の場合のモータ回転角度を示す。線Ｌ４１３は、Ｃａｓｅ３の場合のモータ回転角度を示す。
【００８９】
図１７を参照すると、低ゲインの場合、Ｃａｓｅ２（角速度に基づく制御、線Ｌ４１２）ではバックドライブを実現できていない。一方、Ｃａｓｅ１（角度に基づく制御、線Ｌ４１１）では、２．５秒程度からバックドライブしている。Ｃａｓｅ３（システム１における制御、線Ｌ４１３）では、Ｃａｓｅ２の場合よりも早い時間からバックドライブしている。
【００９０】
図１８は、図１７における０．０３秒から０．０５秒までの区間を拡大した図である。図１８のグラフの横軸は時間［秒］を示し、縦軸は角度［ラジアン］を示す。
線Ｌ４２１は、Ｃａｓｅ１の場合のモータ回転角度を示す。線Ｌ４２２は、Ｃａｓｅ２の場合のモータ回転角度を示す。線Ｌ４２３は、Ｃａｓｅ３の場合のモータ回転角度を示す。
【００９１】
図１８を参照すると、Ｃａｓｅ１、２の場合、図１８の範囲ではバックドライブしていない。一方、Ｃａｓｅ３の場合０．０３５秒から０．０４秒までの間ぐらいからバックドライブを開始している。
【００９２】
図１９は、低ゲインでのシミュレーション結果におけるモータトルクを示す図である。図１９のグラフの横軸は時間［秒］を示し、縦軸はトルク［Ｎｍ］を示す。
線Ｌ４３１は、Ｃａｓｅ１の場合のモータトルク（駆動側回転部１１０のトルク）を示す。線Ｌ４３２は、Ｃａｓｅ２の場合のモータトルクを示す。線Ｌ４３３は、Ｃａｓｅ３の場合のモータトルクを示す。
【００９３】
図１９を参照すると、低ゲインの場合、Ｃａｓｅ２（角速度に基づく制御、線Ｌ４３２）ではモータトルクがほぼ０のままであり、図１７に示されるようにバックドライブしていない。一方、Ｃａｓｅ１（角度に基づく制御、線Ｌ４３１）では、２．５秒程度からモータトルクが変化している。これは、図１７に示されるバックドライブを行うためのトルクと考えられる。
Ｃａｓｅ３（システム１における制御、線Ｌ４３３）では、Ｃａｓｅ２の場合よりも早い時間からモータトルクが変化している。これも、図１７に示されるバックドライブを行うためのトルクと考えられる。
【００９４】
図２０は、図１９における０．０３秒から０．０５秒までの区間を拡大した図である。図２０のグラフの横軸は時間［秒］を示し、縦軸はトルク［Ｎｍ］を示す。
線Ｌ４４１は、Ｃａｓｅ１の場合のモータトルクを示す。線Ｌ４４２は、Ｃａｓｅ２の場合のモータトルクを示す。線Ｌ４４３は、Ｃａｓｅ３の場合のモータトルクを示す。
図２０を参照すると、Ｃａｓｅ１ではモータトルクはほぼ０のままである。一方、Ｃａｓｅ２、３の場合、モータトルクは０．０３５秒過ぎから負側にやや変化している。
【００９５】
図２１は、高ゲインでのシミュレーション結果におけるモータ回転速度を示す図である。図２１のグラフの横軸は時間［秒］を示し、縦軸は角度［ラジアン］を示す。
線Ｌ４５１は、Ｃａｓｅ１の場合のモータ回転角度（駆動側回転部１１０の回転角度）を示す。線Ｌ４５２は、Ｃａｓｅ２の場合のモータ回転角度を示す。線Ｌ４５３は、Ｃａｓｅ３の場合のモータ回転角度を示す。
【００９６】
図２１を参照すると、高ゲインの場合、Ｃａｓｅ２（角速度に基づく制御、線Ｌ４５２）では十分なバックドライブを行えていない。一方、Ｃａｓｅ１（角度に基づく制御、線Ｌ４５１）、Ｃａｓｅ３（システム１における制御、線Ｌ４５３）では、いずれもバックドライブしている。
【００９７】
図２２は、図２１における０．０３秒から０．０５秒までの区間を拡大した図である。図２２のグラフの横軸は時間［秒］を示し、縦軸は角度［ラジアン］を示す。
線Ｌ４６１は、Ｃａｓｅ１の場合のモータ回転角度を示す。線Ｌ４６２は、Ｃａｓｅ２の場合のモータ回転角度を示す。線Ｌ４６３は、Ｃａｓｅ３の場合のモータ回転角度を示す。
【００９８】
図２２を参照すると、Ｃａｓｅ２の場合、０．０３５秒を過ぎたあたりからバックドライブしている。但し、図２１の線Ｌ４５２のように、０秒〜４秒の区間全体では、十分なバックドライブを行えていない。バックラッシ領域を外れた後にトルクを発生させることができないためと考えられる。
Ｃａｓｅ１の場合、０．０３５秒〜０．０４秒の間頃からモータ回転角度が振動しながらではあるが負側に変化しており、バックドライブが行われている。
Ｃａｓｅ３の場合、０．０３５秒〜０．０４秒の間頃からモータ回転角度が負側に変化しており、バックドライブが行われている。
【００９９】
図２３は、高ゲインでのシミュレーション結果におけるモータトルクを示す図である。図２３のグラフの横軸は時間［秒］を示し、縦軸はトルク［Ｎｍ］を示す。
線Ｌ４７１は、Ｃａｓｅ１の場合のモータトルク（駆動側回転部１１０のトルク）を示す。線Ｌ４７２は、Ｃａｓｅ２の場合のモータトルクを示す。線Ｌ４７３は、Ｃａｓｅ３の場合のモータトルクを示す。
【０１００】
図２３を参照すると、Ｃａｓｅ１（角度に基づく制御、線Ｌ４７１）ではモータトルクが振動した後、−４程度の値を維持している。外力に対してモータ側の位置と負荷側の位置とを維持する（バックラッシを維持する）ように動作するため大きなトルクが発生し、トルク飽和していると考えられる。
一方、Ｃａｓｅ２（角速度に基づく制御、線Ｌ４７２）、Ｃａｓｅ３（システム１における制御、線Ｌ４７３）では、トルクの大きさはあまり変化していない。
【０１０１】
図２４は、図２３における０．０３秒から０．０５秒までの区間を拡大した図である。図２４のグラフの横軸は時間［秒］を示し、縦軸はトルク［Ｎｍ］を示す。
線Ｌ４８１は、Ｃａｓｅ１の場合のモータトルクを示す。線Ｌ４８２は、Ｃａｓｅ２の場合のモータトルクを示す。線Ｌ４８３は、Ｃａｓｅ３の場合のモータトルクを示す。
図２４を参照すると、Ｃａｓｅ１、２、３いずれも０．０３５秒を過ぎた辺りからモータトルクが変化している。これらのうちＣａｓｅ１は、図２３にも示されているように、モータトルクの値が大きく振動している。
【０１０２】
低ゲインの結果（図１７〜図２０）で、Ｃａｓｅ３（システム１における制御）では、Ｃａｓｅ１、２よりも早くからバックドライブを行えている。Ｃａｓｅ３では、負荷側に加えられた外力に対してモータによりバックドライブを実現している。Ｃａｓｅ１、２では、初期の段階では十分な駆動を得られず、負荷側に加えられた外力が十分に増加してから動作していると考えられる。
【０１０３】
高ゲインの結果（図２０〜図２３）で、Ｃａｓｅ１、２、３のそれぞれが、負荷側に加えられた外力に対してモータを駆動し、バックドライブ動作を実現している。
Ｃａｓｅ２（角速度に基づく制御）では、バックラッシ領域から外れるとモータを駆動できていない。
Ｃａｓｅ１（角度に基づく制御）では、ゲインが小さい場合、十分な効果を得られない。また、この制御では負荷側と駆動側との位置関係を維持するため、外力に対して十分な効果を得るためには大きなトルクを出力する必要がある。また、高ゲインの結果では、外力に対してモータトルクが飽和していることが見受けられた。
【０１０４】
一方、Ｃａｓｅ３（システム１における制御）では、角度伝達誤差対応部２９３の制御に加え、摩擦補償部２９１が摩擦を補償することで、バックラッシ領域から外れた後も、バックドライブを実現できる。バックラッシ領域から外れた場合、Ｃａｓｅ３では、必要なモータトルクは、摩擦補償部２９１が行う摩擦補償のためのトルクと、外力対応部２９２による外力の推定トルクとであり、出力トルクが比較的小さい。
また、Ｃａｓｅ３では、調整パラメータがＣａｓｅ１、２の場合よりも少なく、この点でパラメータ調整の負荷が小さくて済む。
【０１０５】
次に、システム１における外力対応部２９２の有無の影響について説明する。
外力対応部２９２は、負荷側回転部１２０に加えられる外力を推定し、駆動装置１１１のトルクにフィードバックすることでバックドライバビリティの向上を図っている。
これに対し、減速機のバックドライバビリティが十分に高い場合には、負荷側回転部１２０に加えられた外力が駆動側回転部１１０に伝達され、外力対応部２９２による制御を用いずに十分なバックドライブを実現し得る。
【０１０６】
以下のＣａｓｅについてシミュレーション及び実験を行い、この点について確認した。
Ｃａｓｅ１：摩擦補償部２９１による摩擦補償＋角度伝達誤差対応部２９３による制御
Ｃａｓｅ２：摩擦補償部２９１による摩擦補償＋外力対応部２９２による制御＋角度伝達誤差対応部２９３による制御。
【０１０７】
図２５は、外力対応部を備えていない制御装置による制御対象機器の制御を示すブロック図である。図２５に示すシステム２は、制御装置２０１が外力対応部を備えていない点で、図４のシステム１と異なる。具体的には、図２５の構成では、図４の構成の各部のうち、外力対応部２９２に含まれるノード３３１〜３４１、及び、外力対応部２９２の出力を減速比で除算するノード３６１を備えていない。それ以外の点は、図４の場合と同様である。
Ｃａｓｅ１では、図２５のように外力対応部を備えていないシステムでシミュレーションを行った。
【０１０８】
図２６は、外力対応部の有無の比較のシミュレーションにおけるモータ回転角度を示す図である。図２６のグラフの横軸は時間［秒］を示す。縦軸は角度［ラジアン］を示す。
線Ｌ５１１は、Ｃａｓｅ１の場合のモータ回転角度を示す。線Ｌ５１２は、Ｃａｓｅ２の場合のモータ回転角度を示す。
図２６を参照すると、Ｃａｓｅ１（線Ｌ５１１）、Ｃａｓｅ２（線Ｌ５１２）のいずれでもバックドライブを実現できている。
【０１０９】
図２７は、図２６における０秒から０．１５秒までの区間を拡大した図である。図２７のグラフの横軸は時間［秒］を示し、縦軸は角度［ラジアン］を示す。
線Ｌ５２１は、Ｃａｓｅ１の場合のモータ回転角度を示す。線Ｌ５２２は、Ｃａｓｅ２の場合のモータ回転角度を示す。
図２７を参照すると、Ｃａｓｅ１（線Ｌ５２１）、Ｃａｓｅ２（線Ｌ５２２）のいずれでも、０．０４秒頃からバックドライブ動作を開始している。
【０１１０】
図２８は、外力対応部の有無の比較のシミュレーションにおけるモータトルクを示す図である。図２８のグラフの横軸は時間［秒］を示す。縦軸はトルク［Ｎｍ］を示す。
線Ｌ５３１は、Ｃａｓｅ１の場合のモータトルクを示す。線Ｌ５３２は、Ｃａｓｅ２の場合のモータトルクを示す。
図２８を参照すると、Ｃａｓｅ１（線Ｌ５３１）、Ｃａｓｅ２（線Ｌ５３２）のいずれでもバックドライブを実現できている。
【０１１１】
図２９は、図２８における０秒から０．１５秒までの区間を拡大した図である。図２９のグラフの横軸は時間［秒］を示し、縦軸はトルク［Ｎｍ］を示す。
線Ｌ５４１は、Ｃａｓｅ１の場合のモータトルクを示す。線Ｌ５４２は、Ｃａｓｅ２の場合のモータトルクを示す。
図２９を参照すると、Ｃａｓｅ１（線Ｌ５４１）、Ｃａｓｅ２（線Ｌ５４２）のいずれでも、０．０３秒を過ぎた辺りからモータトルクが変化している。
【０１１２】
図３０は、Ｃａｓｅ１の場合の実験結果を示す図である。図９に示す実験機４００を用いて、Ｃａｓｅ１、２それぞれについて実験を行った。
図３０のグラフの横軸は時間［秒］を示し、縦軸は、角度［ラジアン］及びトルク［Ｎｍ］を示す。
線Ｌ６１１は、モータ４１１の回転角度を示す。線Ｌ６１２は、モータ４１１に対するトルク指令値を示す。線Ｌ６１３は、負荷側のトルクを示す。
【０１１３】
図３１は、Ｃａｓｅ２の実験結果を示す図である。図３１のグラフの横軸は時間［秒］を示し、縦軸は、回転角度［ラジアン］及びトルク［Ｎｍ］を示す。
線Ｌ６２１は、モータ４１１の回転角度を示す。線Ｌ６２２は、モータ４１１に対するトルク指令値を示す。線Ｌ６２３は、負荷側のトルクを示す。
【０１１４】
シミュレーション結果及び実験結果から、Ｃａｓｅ１、２いずれの場合もバックドライブを実現することができた。また、図２７および図２９に示されるように、動作開始時の挙動は、Ｃａｓｅ１とＣａｓｅ２とでほぼ同じであった。
これにより、Ｃａｓｅ１の外力対応部を備えていない構成でも、摩擦補償部２９１および角度伝達誤差対応部２９３によってバックドライブを実現可能であることが確認できた。
なお、動作開始後のバックドライブの動作量は、図２６および図２８に示されるようにＣａｓｅ２の方がＣａｓｅ１よりも多かった。Ｃａｓｅ２では、Ｃａｓｅ１の場合よりも外力対応部２９２による制御の分だけ動作量が大きくなっていると考えらえる。
【０１１５】
外力対応部２９２の影響についてさらに調べるため、外力対応部２９２の出力にゲインを乗算してシミュレーションを行った。
図３２は、外力対応部２９２の出力にゲインが設けられているシステムの例を示すブロック図である。図３２に示すシステム３は、制御装置２０２のノード３６１ｂにフィードバックゲインＫｅｘｔが設けられている点で、図４のシステム１の場合と異なる。それ以外は、図４の場合と同様である。
図３２に示されるシステム３で、フィードバックゲインＫｅｘｔの値が１．０、２．０、３．０、４．０、５．０の各場合についてシミュレーションを行った。
【０１１６】
図３３は、フィードバックゲインを設けた構成でのシミュレーションにおけるモータ回線角度を示す図である。図３３のグラフの横軸は時間［秒］を示し、縦軸は角度［ラジアン］を示す。
線Ｌ７１１は、フィードバックゲインＫｅｘｔの値が１．０である場合のモータ回転角度を示す。線Ｌ７１２は、フィードバックゲインＫｅｘｔの値が２．０である場合のモータ回転角度を示す。線Ｌ７１３は、フィードバックゲインＫｅｘｔの値が３．０である場合のモータ回転角度を示す。線Ｌ７１４は、フィードバックゲインＫｅｘｔの値が４．０である場合のモータ回転角度を示す。線Ｌ７１５は、フィードバックゲインＫｅｘｔの値が５．０である場合のモータ回転角度を示す。
【０１１７】
図３３を参照すると、フィードバックゲインＫｅｘｔの値が大きいほど、バックドライブの動作量が増えている。フィードバックゲインＫｅｘｔの値が大きくなることで、外力対応部２９２からの指令値が指示する動作量が増えるためと考えられる。
【０１１８】
図３４は、図３３における０秒から０．１５秒までの区間を拡大した図である。図３４のグラフの横軸は時間［秒］を示し、縦軸は回転角度［ラジアン］を示す。
線Ｌ７２１は、フィードバックゲインＫｅｘｔの値が１．０である場合のモータ回転角度を示す。線Ｌ７２２は、フィードバックゲインＫｅｘｔの値が２．０である場合のモータ回転角度を示す。線Ｌ７２３は、フィードバックゲインＫｅｘｔの値が３．０である場合のモータ回転角度を示す。線Ｌ７２４は、フィードバックゲインＫｅｘｔの値が４．０である場合のモータ回転角度を示す。線Ｌ７２５は、フィードバックゲインＫｅｘｔの値が５．０である場合のモータ回転角度を示す。
図３４を参照すると、バックドライブの動作を開始するタイミングは、フィードバックゲインＫｅｘｔの値にかかわらずほぼ一定である。
【０１１９】
図３５は、フィードバックゲインを設けた構成でのシミュレーションにおけるモータトルクを示す図である。図３５のグラフの横軸は時間［秒］を示し、縦軸はトルク［Ｎｍ］を示す。
線Ｌ７３１は、フィードバックゲインＫｅｘｔの値が１．０である場合のモータトルクを示す。線Ｌ７３２は、フィードバックゲインＫｅｘｔの値が２．０である場合のモータトルクを示す。線Ｌ７３３は、フィードバックゲインＫｅｘｔの値が３．０である場合のモータトルクを示す。線Ｌ７３４は、フィードバックゲインＫｅｘｔの値が４．０である場合のモータトルクを示す。線Ｌ７３５は、フィードバックゲインＫｅｘｔの値が５．０である場合のモータトルクを示す。
【０１２０】
図３５を参照すると、フィードバックゲインＫｅｘｔの値が大きいほどモータトルクが大きくなっていることを確認できる。図３３を参照して上述したように、フィードバックゲインＫｅｘｔの値が大きくなることで、外力対応部２９２からの指令値が指示する動作量が増えるためと考えられる。
【０１２１】
図３６は、図３５における０秒から０．１５秒までの区間を拡大した図である。図３６のグラフの横軸は時間［秒］を示し、縦軸はトルク［Ｎｍ］を示す。
線Ｌ７４１は、フィードバックゲインＫｅｘｔの値が１．０である場合のモータトルクを示す。線Ｌ７４２は、フィードバックゲインＫｅｘｔの値が２．０である場合のモータトルクを示す。線Ｌ７４３は、フィードバックゲインＫｅｘｔの値が３．０である場合のモータトルクを示す。線Ｌ７４４は、フィードバックゲインＫｅｘｔの値が４．０である場合のモータトルクを示す。線Ｌ７４５は、フィードバックゲインＫｅｘｔの値が５．０である場合のモータトルクを示す。
図３６を参照すると、バックドライブ開始時におけるモータトルクは、フィードバックゲインＫｅｘｔの値にかかわらずほぼ一定である。
【０１２２】
以上のシミュレーション結果より、外力対応部２９２のフィードバックゲインを増加させることで、外力推定値のモータトルクへのフィードバック量が増加し、バックドライブの動作量が大きくなっている。
また、フィードバックゲインＫｅｘｔがいずれの値となっていても、モータトルクは０．３８秒程度で発生しており、モータは、０．３８〜０．４２秒程度で動作している。
【０１２３】
モータの動作開始時刻がフィードバックゲインＫｅｘｔの値によって異なる原因は、フィードバック量が異なることによりモータ側が動作するに至る外力推定値の大きさが異なるためと考えられる。
また、バックドライブ開始時には、角度伝達誤差対応部２９３による制御が動作するため、フィードバックゲインを変更することによるバックドライブ開始時の挙動への影響は十分に小さいと考えられる。
このように、外力対応部２９２のフィードバック量を変更することで、バックドライブの動作量を変更することができる。
【０１２４】
以上のように、角度伝達誤差対応部２９３は、歯車で連結された駆動側回転部１１０及び負荷側回転部１２０について、駆動側回転部１１０の回転加速度と負荷側回転部１２０の回転加速度との相違を算出し、算出した相違に応じて負荷側回転部１２０をバックドライブさせるように、駆動側回転部１１０を回転させる駆動装置１１１のトルクを制御する。
【０１２５】
角度伝達誤差対応部２９３によれば、バックラッシの変化に基づいて負荷側回転部１２０への外力を検出し、駆動装置１１１を制御してバックドライブを開始させることができるので、駆動側回転部１１０へトルクが伝わってから外力を検出してバックドライブを開始する場合よりも速やかにバックドライブを開始することができる。角度伝達誤差対応部２９３によれば、この点で、比較的速やかにバックドライブを開始することができる。
【０１２６】
また、角度伝達誤差対応部２９３によれば、駆動側回転部１１０および負荷側回転部１２０の回転加速度に基づいてバックドライブの制御を行うので、駆動側回転部１１０および負荷側回転部１２０の角度に基づく場合、及び、駆動側回転部１１０および負荷側回転部１２０の角加速度に基づく場合よりも、外力によるバックラッシの変化の立ち上がりに対する感度が高い。角度伝達誤差対応部２９３によれば、この点でも、比較的速やかにバックドライブを開始することができる。
また、角度伝達誤差対応部２９３による制御は、順方向の回転時にバックラッシ領域から外れた状態（歯車間の隙間が０の状態）では、指令値が０になり、他の機能部による制御を阻害しない。角度伝達誤差対応部２９３によれば、この点で、順方向の回転時とバックドライブ時とで制御モードの切替を不要とすることができる。
【０１２７】
また、角度伝達誤差対応部２９３は、駆動側回転部１１０の回転加速度と負荷側回転部１２０の回転加速度との差を算出する。
角度伝達誤差対応部２９３が、回転加速度の差を算出するという比較的簡単な処理でバックドライブの制御を行うことができ、この点で、角度伝達誤差対応部２９３の負荷が軽くて済む。
【０１２８】
また、角度伝達誤差対応部２９３は、駆動側回転部１１０の回転加速度と負荷側回転部１２０の回転加速度との差に比例して駆動側回転部１１０の回転加速度と負荷側回転部１２０の回転加速度との差を増幅させる向きのトルクを、駆動装置１１１のトルクに加える。
これにより、角度伝達誤差対応部２９３は、駆動側回転部１１０の回転加速度と負荷側回転部１２０の回転加速度との差が大きいほど、すなわち、負荷側回転部１２０に加えられた外力が大きいほどバックドライブ量を増加させる。この点で、角度伝達誤差対応部２９３は、負荷側回転部１２０に加えられる外力の大きさに応じてバックドライブ量を制御することができる。
【０１２９】
また、摩擦補償部２９１は、駆動側回転部１１０の回転速度に基づいて負荷側回転部１２０の回転に対する摩擦を推定し、推定した摩擦を補償するように駆動装置１１１のトルクを制御する。
摩擦補償部２９１は、駆動側回転部１１０の回転速度に基づいて摩擦の補償を行うので、バックラッシ領域では摩擦の補償を行わない。これに対し、角度伝達誤差対応部２９３はバックラッシ領域で駆動装置１１１を制御してバックドライブ動作を行わせる。
摩擦補償部２９１と角度伝達誤差対応部２９３との組み合わせで、摩擦を補償し、かつ、バックラッシ領域におけるバックドライブの遅れを回避することができる。
【０１３０】
また、外力対応部２９２は、駆動側回転部１１０の回転速度及び負荷側回転部１２０の回転速度に基づいて、負荷側回転部１２０に外部から加えられた外部トルクを推定し、推定した外部トルクに応じて駆動装置１１１を制御して負荷側回転部１２０をバックドライブさせる。
式（８）のように外力対応部２９２の制御は摩擦が補償されていることを前提として設計されている場合、バックラッシ領域では、摩擦補償部２９１が摩擦の補償を行わないために、外力対応部２９２の制御では負荷側回転部１２０に十分なバックドライブを行わせることができない可能性がある。これに対し、角度伝達誤差対応部２９３はバックラッシ領域で駆動装置１１１を制御してバックドライブ動作を行わせる。
摩擦補償部２９１と外力対応部２９２と角度伝達誤差対応部２９３との組み合わせで、摩擦を補償し、外力の大きさに応じて負荷側回転部１２０にバックドライブを行わせ、かつ、バックラッシ領域におけるバックドライブの遅れを回避することができる。
【０１３１】
なお、制御装置２００、２０１、及び、２０２が行う演算及び制御の全部または一部の機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することで各部の処理を行ってもよい。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。
また、「コンピュータシステム」は、ＷＷＷシステムを利用している場合であれば、ホームページ提供環境（あるいは表示環境）も含むものとする。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含むものとする。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【０１３２】
以上、本発明の実施形態を図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計変更等も含まれる。
【符号の説明】
【０１３３】
１、２、３  システム
１００  制御対象機器
１１０  駆動側回転部
１１１  駆動装置
１１２  駆動側回転軸
１１３  駆動側エンコーダ
１１４  駆動側歯車
１２０  負荷側回転部
１２１  負荷側歯車
１２２  負荷側回転軸
１２３  負荷側エンコーダ
１２４  アーム
１３０  ギア装置
２００、２０１、２０２  制御装置
２１０  通信部
２８０  記憶部
２９０  制御部
２９１  摩擦補償部
２９２  外力対応部
２９３  角度伝達誤差対応部
【図１】
2019049852.tif 000014
【図２】
2019049852.tif 000015
【図３】
2019049852.tif 000016
【図４】
2019049852.tif 000017
【図５】
2019049852.tif 000018
【図６】
2019049852.tif 000019
【図７】
2019049852.tif 000020
【図８】
2019049852.tif 000021
【図９】
2019049852.tif 000022
【図１０】
2019049852.tif 000023
【図１１】
2019049852.tif 000024
【図１２】
2019049852.tif 000025
【図１３】
2019049852.tif 000026
【図１４】
2019049852.tif 000027
【図１５】
2019049852.tif 000028
【図１６】
2019049852.tif 000029
【図１７】
2019049852.tif 000030
【図１８】
2019049852.tif 000031
【図１９】
2019049852.tif 000032
【図２０】
2019049852.tif 000033
【図２１】
2019049852.tif 000034
【図２２】
2019049852.tif 000035
【図２３】
2019049852.tif 000036
【図２４】
2019049852.tif 000037
【図２５】
2019049852.tif 000038
【図２６】
2019049852.tif 000039
【図２７】
2019049852.tif 000040
【図２８】
2019049852.tif 000041
【図２９】
2019049852.tif 000042
【図３０】
2019049852.tif 000043
【図３１】
2019049852.tif 000044
【図３２】
2019049852.tif 000045
【図３３】
2019049852.tif 000046
【図３４】
2019049852.tif 000047
【図３５】
2019049852.tif 000048
【図３６】
2019049852.tif 000049