(57)【要約】【課題】モデル化誤差が大きい場合であっても精度よく外力を推定する。【解決手段】情報処理装置であって、駆動部(モータ)と、前記駆動部の位置θＭを検出する第１検出部と、外力ｄＬが与えられる負荷部と、前記負荷部の位置ＸＬを検出する第２検出部と、前記駆動部の駆動力を前記負荷部に伝達する動力伝達部と、前記駆動部の位置θＭと前記負荷部の位置ＸＬとに基づいて、動力伝達力Ｔｓを算出する第１算出部と、を備え、前記第１算出部は、前記駆動部の位置θＭから求めた動力伝達力ＴｓＭと、前記駆動部の位置θＭと前記負荷部の位置ＸＬとの差から求めた動力伝達力ＴｓＫとを、重みづけαＭを変えつつ統合して第１推定動力伝達力Ｔｓ１＝αＭＴｓＭ＋（１−αＭ）ＴｓＫを算出するにあたり、前記第１推定動力伝達力Ｔｓ１の分散σ２Ｔｓ１または前記外力ｄＬの分散σ２ｄＬが最小になるように前記重みづけαＭを決定する。【選択図】  図１
2020197951.tif 000002
【特許請求の範囲】
【請求項１】
駆動部と、
前記駆動部の位置θＭを検出する第１検出部と、
外力ｄＬが与えられる負荷部と、
前記負荷部の位置ＸＬを検出する第２検出部と、
前記駆動部の駆動力を前記負荷部に伝達する動力伝達部と、
前記駆動部の位置θＭと前記負荷部の位置ＸＬとに基づいて、動力伝達力Ｔｓを算出する第１算出部と、
を備え、
前記第１算出部は、
前記駆動部の位置θＭから求めた動力伝達力ＴｓＭと、前記駆動部の位置θＭと前記負荷部の位置ＸＬとの差から求めた動力伝達力ＴｓＫとを、重みづけαＭを変えつつ統合して第１推定動力伝達力Ｔｓ１＝αＭＴｓＭ＋（１−αＭ）ＴｓＫを算出するにあたり、前記第１推定動力伝達力Ｔｓ１の分散σ２Ｔｓ１または前記外力ｄＬの分散σ２ｄＬが最小になるように前記重みづけαＭを決定する情報処理装置。
【請求項２】
前記第１推定動力伝達力を用いて、前記外力ｄＬを算出する第２算出部をさらに備えた請求項１に記載の情報処理装置。
【請求項３】
前記動力伝達部の動力伝達力ＴｓＳを検出する第３検出部をさらに備え、
前記第１算出部は、前記動力伝達力ＴｓＭと、前記動力伝達力ＴｓＫと、前記動力伝達力ＴｓＳとを、重みづけαＭおよび重みづけβＫを変えつつ統合して第２推定動力伝達力Ｔｓ２＝αＭＴｓＭ＋βＫＴｓＫ−（１−αＭ−βＫ）ＴｓＳを算出するにあたり、前記第２推定動力伝達力Ｔｓ２の分散σ２Ｔｓ２または前記外力ｄＬの分散σ２ｄＬが最小になるように前記重みづけαＭおよび前記重みづけβＫを決定する請求項１または２に記載の情報処理装置。
【請求項４】
前記第２推定動力伝達力を用いて、前記外力ｄＬを算出する第３算出部をさらに備えた請求項３に記載の情報処理装置。
【請求項５】
請求項１乃至４のいずれか１項に記載の情報処理装置を含み、前記負荷部としてのステージに与えられた外力を推定する工作機械。
【請求項６】
請求項１乃至４のいずれか１項に記載の情報処理装置を含み、前記負荷部としてのアームに与えられた外力を推定するロボット。
【請求項７】
駆動部と、
前記駆動部の位置θＭを検出する第１検出部と、
外力ｄＬが与えられる負荷部と、
前記負荷部の位置ＸＬを検出する第２検出部と、
前記駆動部の駆動力を前記負荷部に伝達する動力伝達部と、
前記駆動部の位置θＭと前記負荷部の位置ＸＬとに基づいて、動力伝達力Ｔｓを算出する第１算出部と、
を備えた情報処理装置の制御方法であって、
前記駆動部の位置θＭから動力伝達力ＴｓＭを求める第１ステップと、
前記駆動部の位置θＭと前記負荷部の位置ＸＬとの差から動力伝達力ＴｓＫを求める第２ステップと、
前記第１ステップで求めた前記動力伝達力ＴｓＭと前記第２ステップで求めた動力伝達力ＴｓＫとを、重みづけαＭを変えつつ統合して第１推定動力伝達力Ｔｓ１＝αＭＴｓＭ＋（１−αＭ）ＴｓＫを算出するにあたり、前記第１推定動力伝達力Ｔｓ１の分散σ２Ｔｓ１または前記外力ｄＬの分散σ２ｄＬが最小になるように前記重みづけαＭを決定する第３ステップと、
を含む情報処理装置の制御方法。
【請求項８】
駆動部と、
前記駆動部の位置θＭを検出する第１検出部と、
外力ｄＬが与えられる負荷部と、
前記負荷部の位置ＸＬを検出する第２検出部と、
前記駆動部の駆動力を前記負荷部に伝達する動力伝達部と、
前記駆動部の位置θＭと前記負荷部の位置ＸＬとに基づいて、動力伝達力Ｔｓを算出する第１算出部と、
を備えた情報処理装置の制御プログラムであって、
前記駆動部の位置θＭから動力伝達力ＴｓＭを求める第１ステップと、
前記駆動部の位置θＭと前記負荷部の位置ＸＬとの差から動力伝達力ＴｓＫを求める第２ステップと、
前記第１ステップで求めた前記動力伝達力ＴｓＭと前記第２ステップで求めた動力伝達力ＴｓＫとを、重みづけαＭを変えつつ統合して第１推定動力伝達力Ｔｓ１＝αＭＴｓＭ＋（１−αＭ）ＴｓＫを算出するにあたり、前記第１推定動力伝達力Ｔｓ１の分散σ２Ｔｓ１または前記外力ｄＬの分散σ２ｄＬが最小になるように前記重みづけαＭを決定する第３ステップと、
をコンピュータに実行させる情報処理装置の制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、工作機械、ロボット、情報処理装置の制御方法および情報処理装置の制御プログラムに関する。
【背景技術】
【０００２】
上記技術分野において、非特許文献１には、軸トルクセンサを用いずに、駆動部側センサ値を用いた駆動部側推定と、伝達部側センサ値を用いた伝達部側推定とを組み合わせて、負荷側の外部トルクを推定する技術が開示されている。
【先行技術文献】
【非特許文献】
【０００３】
【非特許文献１】J. Lee, C. Lee, N. Tsagarakis, and S. Oh: “Residual-Based External Torque Estimation in Series Elastic Actuators Over a Wide Stiffness Range: Frequency Domain Approach”, IEEE Robotics and Automation Letters, vol. 3 no. 3, pp. 1442-1449, Jul. 2018.
【発明の概要】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記文献に記載の技術では、周波数特性がよく表れている場合には外力を推定できるが、モデル化誤差が大きい場合には精度よく外力を推定できなかった。
【０００５】
本発明の目的は、上述の課題を解決する技術を提供することにある。
【課題を解決するための手段】
【０００６】
上記目的を達成するため、本発明に係る情報処理装置は、
駆動部と、
前記駆動部の位置θＭを検出する第１検出部と、
外力ｄＬが与えられる負荷部と、
前記負荷部の位置ＸＬを検出する第２検出部と、
前記駆動部の駆動力を前記負荷部に伝達する動力伝達部と、
前記駆動部の位置θＭと前記負荷部の位置ＸＬとに基づいて、動力伝達力Ｔｓを算出する第１算出部と、
を備え、
前記第１算出部は、
前記駆動部の位置θＭから求めた動力伝達力ＴｓＭと、前記駆動部の位置θＭと前記負荷部の位置ＸＬとの差から求めた動力伝達力ＴｓＫとを、重みづけαＭを変えつつ統合して第１推定動力伝達力Ｔｓ１＝αＭＴｓＭ＋（１−αＭ）ＴｓＫを算出するにあたり、前記第１推定動力伝達力Ｔｓ１の分散σ２Ｔｓ１または前記外力ｄＬの分散σ２ｄＬが最小になるように前記重みづけαＭを決定する。
【０００７】
上記目的を達成するため、本発明に係る情報処理装置の制御方法は、
駆動部と、
前記駆動部の位置θＭを検出する第１検出部と、
外力ｄＬが与えられる負荷部と、
前記負荷部の位置ＸＬを検出する第２検出部と、
前記駆動部の駆動力を前記負荷部に伝達する動力伝達部と、
前記駆動部の位置θＭと前記負荷部の位置ＸＬとに基づいて、動力伝達力Ｔｓを算出する第１算出部と、
を備えた情報処理装置の制御方法であって、
前記駆動部の位置θＭから動力伝達力ＴｓＭを求める第１ステップと、
前記駆動部の位置θＭと前記負荷部の位置ＸＬとの差から動力伝達力ＴｓＫを求める第２ステップと、
前記第１ステップで求めた前記動力伝達力ＴｓＭと前記第２ステップで求めた動力伝達力ＴｓＫとを、重みづけαＭを変えつつ統合して第１推定動力伝達力Ｔｓ１＝αＭＴｓＭ＋（１−αＭ）ＴｓＫを算出するにあたり、前記第１推定動力伝達力Ｔｓ１の分散σ２Ｔｓ１または前記外力ｄＬの分散σ２ｄＬが最小になるように前記重みづけαＭを決定する第３ステップと、
を含む。
【０００８】
上記目的を達成するため、本発明に係る情報処理装置の制御プログラムは、
駆動部と、
前記駆動部の位置θＭを検出する第１検出部と、
外力ｄＬが与えられる負荷部と、
前記負荷部の位置ＸＬを検出する第２検出部と、
前記駆動部の駆動力を前記負荷部に伝達する動力伝達部と、
前記駆動部の位置θＭと前記負荷部の位置ＸＬとに基づいて、動力伝達力Ｔｓを算出する第１算出部と、
を備えた情報処理装置の制御プログラムであって、
前記駆動部の位置θＭから動力伝達力ＴｓＭを求める第１ステップと、
前記駆動部の位置θＭと前記負荷部の位置ＸＬとの差から動力伝達力ＴｓＫを求める第２ステップと、
前記第１ステップで求めた前記動力伝達力ＴｓＭと前記第２ステップで求めた動力伝達力ＴｓＫとを、重みづけαＭを変えつつ統合して第１推定動力伝達力Ｔｓ１＝αＭＴｓＭ＋（１−αＭ）ＴｓＫを算出するにあたり、前記第１推定動力伝達力Ｔｓ１の分散σ２Ｔｓ１または前記外力ｄＬの分散σ２ｄＬが最小になるように前記重みづけαＭを決定する第３ステップと、
をコンピュータに実行させる。
【発明の効果】
【０００９】
本発明によれば、モデル化誤差が大きい場合であっても精度よく外力を推定できる。
【図面の簡単な説明】
【００１０】
【図１】本発明の第１実施形態に係る情報処理装置の構成を示すブロック図である。
【図２Ａ】本発明の第２実施形態に係る情報処理装置の概要を説明する図である。
【図２Ｂ】２慣性系モデル（回転駆動系）を説明する２慣性系モデル図である。
【図２Ｃ】２慣性系モデル（回転駆動系）の２慣性系ブロック図である。
【図２Ｄ】本発明の第２実施形態に係る２慣性系の最小次元オブザーバのブロック図である。
【図２Ｅ】本発明の第２実施形態に係る２慣性系ブロック図であり、図２Ｄに示した２慣性系ブロック図を等価変形した図である。
【図２Ｆ】本発明の第２実施形態に係る推定方法を説明する図である。
【図２Ｇ】本発明の第２実施形態に係る分散を用いた負荷部に与えられる外力の推定を説明する図である。
【図２Ｈ】本発明の第２実施形態に係る確率密度関数を説明する図である。
【図２Ｉ】本発明の第２実施形態に係るゲイン設計のイメージを説明する図である。
【図３】本発明の第２実施形態に係る情報処理装置の構成を示すブロック図である。
【図４】本発明の第２実施形態に係る情報処理装置の情報処理部が有する決定テーブルの一例を示す図である。
【図５】本発明の第２実施形態に係る情報処理装置の情報処理部のハードウェア構成を示すブロック図である。
【図６】本発明の第２実施形態に係る情報処理装置の情報処理部の処理手順を説明するフローチャートである。
【図７Ａ】本発明の第３実施形態に係る情報処理装置の概要を説明する図である。
【図７Ｂ】２慣性系モデル（並進駆動系）を説明する２慣性系モデル図である。
【図７Ｃ】２慣性系モデル（並進駆動系）の２慣性系ブロック図である。
【図８Ａ】本発明の第４実施形態に係る２慣性系ブロック図である。
【図８Ｂ】本発明の第４実施形態に係る推定方法を説明する図である。
【図８Ｃ】本発明の第４実施形態に係る分散を用いた負荷部に与えられる外力の推定を説明する図である。
【図９】本発明の第４実施形態に係る情報処理装置の構成を示すブロック図である。
【図１０】本発明の第４実施形態に係る情報処理装置の情報処理部が有する決定テーブルの一例を示す図である。
【図１１】本発明の第４実施形態に係る情報処理装置の情報処理部のハードウェア構成を示すブロック図である。
【図１２】本発明の第４実施形態に係る情報処理装置の情報処理部の処理手順を説明するフローチャートである。
【発明を実施するための形態】
【００１１】
以下に、本発明を実施するための形態について、図面を参照して、例示的に詳しく説明記載する。ただし、以下の実施の形態に記載されている、構成、数値、処理の流れ、機能要素などは一例に過ぎず、その変形や変更は自由であって、本発明の技術範囲を以下の記載に限定する趣旨のものではない。
【００１２】
［第１実施形態］
本発明の第１実施形態としての情報処理装置１００について、図１を用いて説明する。情報処理装置１００は、駆動部の位置および負荷部の位置に基づいて、駆動部からの駆動力を負荷部に伝達する動力伝達部の動力伝達力を算出する装置である。
【００１３】
図１に示すように、情報処理装置１００は、駆動部１０１、第１検出部１１１、負荷部１０２、第２検出部１２１、動力伝達部１０３および第１算出部１０４を含む。
【００１４】
第１検出部１１１は、駆動部１０１の位置θＭを検出する。負荷部１０２は、外力ｄＬ１２２が与えられる。第２検出部１２１は、負荷部１０２の位置ＸＬを検出する。動力伝達部１０３は、駆動部１０１の駆動力を負荷部１０２に伝達する。第１算出部１０４は、駆動部１０１の位置θＭと負荷部１０２の位置ＸＬとに基づいて、動力伝達力Ｔｓを算出する。第１算出部１０４は、駆動部１０１の位置θＭから求めた動力伝達力ＴｓＭと、駆動部１０１の位置θＭと負荷部１０２の位置ＸＬとの差から求めた動力伝達力ＴｓＫとを、重みづけαＭを変えつつ統合して第１推定動力伝達力Ｔｓ１＝αＭＴｓＭ＋（１−αＭ）ＴｓＫを算出するにあたり、第１推定動力伝達力Ｔｓ１の分散σＴｓ１２または外力ｄＬ１２２の分散σｄＬ２が最小になるように重みづけαＭを決定する。
【００１５】
本実施形態によれば、モデル化誤差が大きい場合であっても精度よく外力を推定できる。
【００１６】
［第２実施形態］
次に本発明の第２実施形態に係る情報処理装置について、図２Ａ乃至図６を用いて説明する。図２Ａは、本実施形態に係る情報処理装置の概要を説明する図である。なお、本実施形態は、上記第１実施形態と比べると、推定動力伝達力を用いて、外力ｄＬを算出する算出部をさらに有する。
【００１７】
情報処理装置２００は、産業機械２１０と情報処理部２２０とを含む。産業機械２１０は、駆動部２１１、負荷部２１２および動力伝達部２１３を含む。産業機械２１０は、例えば、工作機械、ロボットなどであるが、これらには限定されない。
【００１８】
駆動部２１１は、例えば、サーボモータなどの回転型モータであるが、これには限定されず、リニアモータであってもよい。負荷部２１２は、被駆動体である。動力伝達部２１３は、駆動部２１１から負荷部２１２へ動力を伝達する。動力伝達部２１３は、例えば、シャフトであるが、これには限定されない。動力伝達部２１３には、伝達機構２１４として、カップリングや減速機が取り付けられてもよい。駆動部２１１の回転力が動力伝達部２１３により負荷部２１２へと伝達され、被駆動体としての負荷部２１２が回転する。情報処理部２２０は、負荷部２１２に与えられる外力ｄＬを算出する。
【００１９】
図２Ｂは、２慣性系モデル（回転駆動系）を説明する図である。駆動部２１１は、ねじり剛性Ｋを有する動力伝達部２１３を介して負荷部２１２を駆動する。
【００２０】
駆動部２１１の運動方程式は、
【数１】
2020197951.tif 000003
となる。
【００２１】
動力伝達部２１３の運動方程式は、
【数２】
2020197951.tif 000004
となる。
【００２２】
負荷部２１２の運動方程式は、
【数３】
2020197951.tif 000005
となる。
【００２３】
なお、各記号の定義は、
ＴＭ：駆動トルク
θＭ：駆動部角度
ωＭ：駆動部角速度
ＪＭ：駆動部イナーシャ
ＤＭ：駆動部粘性摩擦係数
Ｋ：ねじり剛性
Ｔｓ：軸トルク
θＬ：負荷部角度
ωＬ：負荷部角速度
ＪＬ：負荷部イナーシャ
ＤＬ：負荷部粘性摩擦係数
ｄＬ：外力（負荷トルク）
である。
【００２４】
図２Ｃは、２慣性系モデル（回転駆動系）の２慣性系ブロック図である。
【００２５】
駆動部２１１の運動方程式は、
【数４】
2020197951.tif 000006
となる。
【００２６】
動力伝達部２１３の運動方程式は、
【数５】
2020197951.tif 000007
となる。
【００２７】
負荷部２１２の運動方程式は、
【数６】
2020197951.tif 000008
となる。
【００２８】
そして、ｄ・Ｌ＝０として拡大形を組んだ最小次元オブザーバは、
【数７】
2020197951.tif 000009
となる。
【００２９】
そして、ωＭ、ωＬ、Δθ（軸ねじれ角度）は観測可能であり、最小次元オブザーバは、
【数８】
2020197951.tif 000010
【数９】
2020197951.tif 000011
【数１０】
2020197951.tif 000012
のように組むことができる。
【００３０】
図２Ｄは、本実施形態に係る２慣性系の最小次元オブザーバのブロック図である。また、図２Ｅは、図２Ｄに示した２慣性系ブロック図を等価変形したブロック図である。点線で示した部分は、２慣性系のプラント２３０を示す。ここで、Ｔｓ、αＭはそれぞれ、
【数１１】
2020197951.tif 000013
【数１２】
2020197951.tif 000014
となり、１つのパラメータαＭで、配合比を調整可能となる。
【００３１】
図２Ｆは、本実施形態に係る推定方法を説明する図である。図示したように、新たに生まれたゲインの設計によって、ロバストなプラントパラメータやノイズの影響が異なる推定手法を任意の比率で組み合わせることが可能となる。
【００３２】
そして、αＭは、手動調整可能であるが、手動調整によるチューニングではなく、システマティックなゲイン設計が可能となる。
【数１３】
2020197951.tif 000015
【００３３】
負荷部２１２のパラメータ誤差は、帯域とトレードオフな関係となるので考慮していない（σＬ２と一括りしておく）。プラントのパラメータやトルクセンサのノイズはノミナル値を平均値とし、ある分散に従う互いに独立な正規性確率分布を持つものとする。
【数１４】
2020197951.tif 000016
で分散は最小になる。
【００３４】
次に、ゲイン設計の線形近似について説明する。動力伝達部２１３の運動方程式は、
【数１５】
2020197951.tif 000017
となる。
【００３５】
式（１５）は、２変数の積となっていて非線形なので、線形化すると、
【数１６】
2020197951.tif 000018
となる。
【００３６】
それぞれの変数の分散を考慮して展開すると、
【数１７】
2020197951.tif 000019
となる。
【００３７】
次に、駆動部２１１の運動方程式は、
【数１８】
2020197951.tif 000020
となる。
【００３８】
これも２変数の積となっていて非線形なので、線形化すると、
【数１９】
2020197951.tif 000021
となる。
【００３９】
これについても、それぞれに変数の分散を考慮して展開すると、
【数２０】
2020197951.tif 000022
となる。
【００４０】
そして、最小分散となるαＭは、
【数２１】
2020197951.tif 000023
となり、分散を最小化する状態量に依存して時変なαＭが得られる。
【００４１】
図２Ｇは、本実施形態に係る分散を用いた負荷部に与えられる外力の推定を説明する図である。そして、図２Ｇに示したように、最小分散となるαＭを用いることにより負荷部２１２に与えられる外力ｄＬを推定できる。これは、２つの従来のオブザーバを混合した形であるため、極設計可能かつ容易に拡張することができる。また、物理的意味が明確な設計を行うことができる（エンコーダ分解能やプラントパラメータの分散）。
【００４２】
図２Ｈは、本実施形態に係る確率密度関数を説明する図である。分解能ｑの場合の確率密度関数は、図示した通り、
【数２２】
2020197951.tif 000024
となる。
【００４３】
そして、分散は、
角度の場合：σ２θＭ，Ｌ＝ｑ２／１２≒２．９９２１ｅ−１２（２０ｂｉｔ）
角速度の場合：σ２ωＭ＝ｑ２／１２Ｔ２Ｓ≒１．８７０１ｅ−５（２０ｂｉｔ、２．５ｋＨｚ後進差分）
角加速度の場合：σ・２ωＭ＝ｑ２／１２Ｔ４Ｓ≒１１６．８８（２０ｂｉｔ、２．５ｋＨｚ２階後進差分）
となる。
【００４４】
次に、プラントパラメータの確率密度関数は、
【数２３】
2020197951.tif 000025
となる。ここで、σ２Ｋ、σ２ＪＭ、σ２ＤＭおよびσ２ｄＭは、正規性と仮定する。ノミナル値からの最大変動幅は比較的想定しやすい。例えば、ノミナル値からの変動が±３０％となるのが３σ（９９．７％）となるとすると、σ＝０．１μとなる。
【００４５】
図２Ｉは、本実施形態に係るゲイン設計のイメージを説明する図である。駆動部２１１のパラメータやセンサノイズの分布は、グラフ２４０のようになる。また、駆動部２１１の推定値の分布は、グラフ２４１のようになり、推定値の分布は、状態量に応じて時々刻々と変化する。
【００４６】
次に、動力伝達部２１３のパラメータやセンサノイズの分布は、グラフ２５０のようになる。また、動力伝達部２１３の推定値の分布は、グラフ２５１のようになり、推定値の分布は、状態量に応じて時々刻々と変化する。
【００４７】
そして、負荷部２１２の外力推定値の分布は、グラフ２６０のようになり、αＭの設計を変えること、例えば、最適設計とすることで、任意の時間での分散を最小化することができる。
【００４８】
図３は、本実施形態に係る情報処理装置の構成を示すブロック図である。情報処理装置２００は、産業機械２１０および情報処理部２２０を含む。産業機械２１０は、駆動部３０１、動力伝達部３０３および負荷部３０２を有する。負荷部３０２には、外力ｄＬ３２２が与えられる。
【００４９】
駆動部３０１は、自ら駆動して、駆動力を伝達する部材であり、例えば、サーボモータなどの回転型モータであるが、これには限定されず、リニアモータであってもよい。負荷部３０２は、駆動部３０１の駆動力により駆動される被駆動体である。動力伝達部３０３は、駆動部３０１の駆動力を伝達する部材であり、例えば、シャフトやボールねじであるが、これには限定されない。そして、負荷部３０２は、動力伝達部３０３を介して伝達された駆動部３０１の駆動力により回転駆動する。
【００５０】
情報処理部２２０は、検出部３１１，３２１、算出部３０４，３０５を有する。検出部３１１は、駆動部３０１の位置θＭを検出する。検出部３１１は、駆動部３０１の位置を検出できるセンサであり、例えば、エンコーダであるが、位置を検出できるセンサであれば、これには限定されない。検出部３２１は、負荷部３０２の位置ＸＬを検出する。検出部３２１は、負荷部３０２の位置を検出できるセンサであり、例えば、リニアスケールであるが、位置を検出できるセンサであれば、これには限定されない。
【００５１】
算出部３０４は、検出部３１１で検出した駆動部３０１の位置θＭと検出部３２１で検出した負荷部３０２の位置ＸＬとに基づいて、動力伝達力Ｔｓを算出する。動力伝達力Ｔｓは、動力伝達部３０３が、駆動部３０１から伝達された動力を負荷部３０２に伝達する際の伝達力である。
【００５２】
算出部３０４は、駆動部３０１の位置θＭから動力伝達力ＴｓＭを求める。さらに、算出部３０４は、駆動部３０１の位置θＭと負荷部３０２の位置ＸＬとの差から動力伝達力ＴｓＫを求める。そして、算出部３０４は、動力伝達力ＴｓＭと動力伝達力ＴｓＫとを、重みづけαＭを変えつつ統合して、推定動力伝達力Ｔｓ１＝αＭＴｓＭ＋（１−αＭ）ＴｓＫを算出するにあたり、推定動力伝達力Ｔｓ１の分散σ２Ｔｓ１または外力ｄＬの分散σ２ｄＬが最小になるように、重みづけαＭを決定する。
【００５３】
算出部３０５は、算出部３０４が算出した推定動力伝達力Ｔｓ１＝αＭＴｓＭ＋（１−αＭ）ＴｓＫを用いて、外力ｄＬを算出する。これにより、情報処理装置２００は、負荷部３０２に与えられる外力ｄＬ３２２の推定値を算出できる。
【００５４】
図４は、本実施形態に係る情報処理装置２００の情報処理部２２０が有する算出テーブルの一例を示す図である。算出テーブル４０１は、位置４１１に関連付けて動力伝達力４１２、分散４１３および重みづけ４１４を記憶する。位置４１１は、駆動部２１１の位置θＭと負荷部２１２の位置θＬを含む。動力伝達力４１２は、駆動部２１１の位置θＭから求めた動力伝達力ＴｓＭ、負荷部２１２の位置θＬから求めた動力伝達力ＴｓＫ、これらを統合して算出した推定動力伝達力Ｔｓ１を含む。分散４１３は、推定動力伝達力Ｔｓ１の分散σ２Ｔｓ１、および外力ｄＬの分散σ２ｄＬを含む。重みづけ４１４（αＭ）は、推定動力伝達力Ｔｓ１の算出に用いられる。外力４１５（ｄＬ）は、負荷部３０２に与えられる力である。そして、情報処理部２２０は、算出テーブル４０１を参照して外力ｄＬを算出する。
【００５５】
図５は、本実施形態に係る情報処理装置２００の情報処理部２２０のハードウェア構成を示すブロック図である。ＣＰＵ(Central Processing Unit)５１０は、演算制御用のプロセッサであり、プログラムを実行することで図３の情報処理装置２００の機能構成部を実現する。ＣＰＵ５１０は複数のプロセッサを有し、異なるプログラムやモジュール、タスク、スレッドなどを並行して実行してもよい。ＲＯＭ(Read Only Memory)５２０は、初期データおよびプログラムなどの固定データおよびその他のプログラムを記憶する。また、ネットワークインタフェース５３０は、ネットワークを介して他の装置などと通信する。なお、ＣＰＵ５１０は１つに限定されず、複数のＣＰＵであっても、あるいは画像処理用のＧＰＵ(Graphics Processing Unit)を含んでもよい。また、ネットワークインタフェース５３０は、ＣＰＵ５１０とは独立したＣＰＵを有して、ＲＡＭ(Random Access Memory)５４０の領域に送受信データを書き込みあるいは読み出しするのが望ましい。また、ＲＡＭ５４０とストレージ５５０との間でデータを転送するＤＭＡＣ(Direct Memory Access Controller)を設けるのが望ましい（図示なし）。さらに、ＣＰＵ５１０は、ＲＡＭ５４０にデータが受信あるいは転送されたことを認識してデータを処理する。また、ＣＰＵ５１０は、処理結果をＲＡＭ５４０に準備し、後の送信あるいは転送はネットワークインタフェース５３０やＤＭＡＣに任せる。
【００５６】
ＲＡＭ５４０は、ＣＰＵ５１０が一時記憶のワークエリアとして使用するランダムアクセスメモリである。ＲＡＭ５４０には、本実施形態の実現に必要なデータを記憶する領域が確保されている。位置５４１は、駆動部２１１の位置および負荷部２１２の位置である。動力伝達力５４２は、駆動部２１１の位置から求めた動力伝達力ＴｓＭ、および駆動部２１１の位置と負荷部２１２の位置との差から求めた動力伝達力ＴｓＫである。推定動力伝達力５４３は、動力伝達力ＴｓＭおよび動力伝達力ＴｓＫを統合して算出された動力伝達力である。分散５４４は、推定動力伝達力Ｔｓ１の分散σ２Ｔｓ１および外力ｄＬの分散σ２ｄＬである。重みづけ５４５は、動力伝達力ＴｓＭおよび動力伝達力ＴｓＫを統合する際に用いられる重みであり、重みづけαＭを変えつつ動力伝達力を統合して、推定動力伝達力が算出される。外力５４６は、負荷部２１２に与えられる力である。
【００５７】
送受信データ５４７は、ネットワークインタフェース５３０を介して送受信されるデータである。また、ＲＡＭ５４０は、各種アプリケーションモジュールを実行するためのアプリケーション実行領域５４８を有する。
【００５８】
ストレージ５５０には、データベースや各種のパラメータ、あるいは本実施形態の実現に必要な以下のデータまたはプログラムが記憶されている。ストレージ５５０は、算出テーブル４０１を格納する。算出テーブル４０１は、図４に示した位置４１１と外力４１５などとの関係を管理するテーブルである。
【００５９】
ストレージ５５０は、さらに、検出モジュール５５１，５５２および算出モジュール５５３，５５４を格納する。検出モジュール５５１は、駆動部２１１の位置θＭを検出するモジュールである。検出モジュール５５２は、負荷部２１２の位置ＸＬを検出するモジュールである。算出モジュール５５３は、駆動部２１１の位置と負荷部２１２の位置とに基づいて動力伝達力Ｔｓを算出するモジュールである。さらに、算出モジュール５５３は、駆動部２１１の位置から求めた動力伝達力ＴｓＭと、駆動部２１１の位置と負荷部２１２の位置との差から求めた動力伝達力ＴｓＫとを、重みづけαＭを変えつつ統合して推定動力伝達力Ｔｓ１＝αＭＴｓＭ＋（１−αＭ）ＴｓＫを算出する際に、推定動力伝達力Ｔｓ１の分散σ２Ｔｓ１または外力ｄＬの分散σ２ｄＬが最小になるように重みづけαＭを決定するモジュールである。算出モジュール５５４は、推定動力伝達力Ｔｓ１を用いて外力ｄＬを算出するモジュールである。これらのモジュール５５１〜５５４は、ＣＰＵ５１０によりＲＡＭ５４０のアプリケーション実行領域５４８に読み出され、実行される。制御プログラム５５５は、情報処理部２２０の全体を制御するためのプログラムである。
【００６０】
入出力インタフェース５６０は、入出力機器との入出力データをインタフェースする。入出力インタフェース５６０には、表示部５６１、操作部５６２、が接続される。また、入出力インタフェース５６０には、さらに、記憶媒体５６４が接続されてもよい。さらに、音声出力部であるスピーカ５６３や、音声入力部であるマイク（図示せず）、あるいは、ＧＰＳ位置判定部が接続されてもよい。なお、図５に示したＲＡＭ５４０やストレージ５５０には、情報処理部２２０が有する汎用の機能や他の実現可能な機能に関するプログラムやデータは図示されていない。
【００６１】
図６は、本実施形態に係る情報処理装置２００の情報処理部２２０の処理手順を説明するフローチャートである。このフローチャートは、図５のＣＰＵ５１０がＲＡＭ５４０を使用して実行し、図３の情報処理部２２０の機能構成部を実現する。
【００６２】
ステップＳ６０１において、情報処理部２２０は、検出部３１１，３２１により駆動部３０１および負荷部３０２の位置データを取得する。ステップＳ６０３において、情報処理部２２０は、取得した位置データに基づいて、駆動部３０１の位置θＭおよび負荷部３０２の位置ＸＬをそれぞれ検出する。ステップＳ６０５において、情報処理部２２０は、検出した位置θＭとＸＬとに基づいて、動力伝達力を算出する。
【００６３】
ステップＳ６０７において、情報処理部２２０は、駆動部３０１の位置から求めた動力伝達力ＴｓＭと、駆動部３０１の位置と負荷部３０２の位置との差から求めた動力伝達力ＴｓＫとを、重みづけαＭを変えつつ統合して推定動力伝達力Ｔｓ１を算出するにあたり、推定動力伝達力Ｔｓ１の分散σ２Ｔｓ１または外力の分散σ２ｄＬが最小になるように重みづけαＭを決定する。ステップＳ６０９において、情報処理部２２０は、決定したαＭを用いて算出した推定動力伝達力Ｔｓ１を用いて、外力ｄＬを算出する。
【００６４】
本実施形態によれば、力センサを用いない場合であっても負荷部に与えられる外力を推定することができる。また、力センサを用いないので、低コストで装置を組み立てることができる。さらに、２慣性系モデルを用いて外力を推定するので、剛体モデルで推定した場合と比較して共振の影響などを排除できる。また、本実施形態によれば、汎用性が高いため、モデル化誤差が大きい場合であっても精度よく外力を推定できる。
【００６５】
［第３実施形態］
次に本発明の第３実施形態に係る情報処理装置について、図７Ａ乃至図７Ｃを用いて説明する。図７Ａは、本実施形態に係る情報処理装置の概要を説明する図である。本実施形態に係る情報処理装置は、上記第２実施形態と比べると、上記第２実施形態が回転駆動機構であるのに対して、本実施形態はボールねじ駆動機構である点で異なる。
【００６６】
情報処理装置７００は、産業機械７１０および情報処理部７２０を有する。産業機械７１０は、駆動部７１１、負荷部７１３および動力伝達部７１６を含む。
【００６７】
駆動部７１１は、例えば、サーボモータなどの回転型モータであるが、これらには限定されず、リニアモータであってもよい。駆動部７１１からの動力は、カップリング７１２を介して動力伝達部７１６へ伝えられる。
【００６８】
負荷部７１３は、例えば、テーブルである。ワーク７１４は、負荷部７１３上に載置される。ツール７１５が、ワーク７１４に接触する。
【００６９】
動力伝達部７１６は、駆動部７１１から負荷部７１３に動力を伝達する。動力伝達部７１６は、例えば、ボールねじ、ベルト、ギアなどであるが、これらには限定されない。動力伝達部７１６がボールねじである場合、動力伝達部７１６は、駆動部７１１から負荷部７１３に並進力を伝達する。
【００７０】
ボールナット７１７は、動力伝達部７１６から伝達された動力を負荷部７１３へ伝える。負荷部７１３は、矢印７３０の方向へ移動する。なお、駆動部７１１を逆回転させれば、負荷部７１３は、矢印７３０とは逆方向へ移動する。なお、産業機械７１０は、例えば、工作機械、半導体製造装置などであるがこれらには限定されない。情報処理部７２０は、負荷部７１３に与えられる外力ｄＬを算出する。
【００７１】
図７Ｂは、２慣性系モデル（並進駆動系）を説明する２慣性系モデル図である。また、図７Ｃは、２慣性系モデル（並進駆動系）の２慣性系ブロック図である。本実施形態の並進駆動系の２慣性系モデルは図示した通りとなる。情報処理装置７００の情報処理部７２０は、負荷部７１３に与えられる外力ｄＬを算出する。駆動部７１１は、軸方向剛性Ｋｔを有する動力伝達部７１６を介して負荷部７１３を駆動する。
【００７２】
駆動部７１１（回転部）の運動方程式は、
【数２４】
2020197951.tif 000026
となる。
【００７３】
動力伝達部７１６の運動方程式は、
【数２５】
2020197951.tif 000027
となる。
【００７４】
負荷部７１３（直進部）の運動方程式は、
【数２６】
2020197951.tif 000028
となる。
【００７５】
なお、各記号の定義は、
ＴＭ：駆動トルク
θＭ：駆動部角度（回転部角度）
ωＭ：駆動部角速度（回転部角速度）
ＪＭ：駆動部イナーシャ（回転部イナーシャ）
ＤＭ：駆動部粘性摩擦係数（回転部粘性摩擦係数）
Ｒ：回転−直進変換係数
Ｋｔ：軸方向剛性
Ｆｓ：推力
ｘＬ：負荷部位置（直進部位置）
ｖＬ：負荷部速度（直進部速度）
ＭＬ：負荷部質量（直進部質量）
ＣＬ：負荷部粘性摩擦係数（直進部粘性摩擦係数）
ｄＬ：外力（負荷トルク）
である。
【００７６】
図７Ｃは、２慣性系モデル（並進駆動系）の２慣性系ブロック図である。本実施形態の並進駆動系の２慣性系ブロック図は図示した通りとなる。
【００７７】
駆動部７１１の運動方程式は、回転運動となるので、
【数２７】
2020197951.tif 000029
となる。
【００７８】
動力伝達部７１６の運動方程式は、
【数２８】
2020197951.tif 000030
となる。
【００７９】
負荷部７１３の運動方程式は、
【数２９】
2020197951.tif 000031
となる。
【００８０】
これらの式（２７）、式（２８）、式（２９）から、第２実施形態と同様に、負荷部７１３に与えられる外力ｄＬを算出できる。
【００８１】
本実施形態によれば、ボールねじ駆動機構であっても負荷部に与えられる外力を算出できる。
【００８２】
［第４実施形態］
次に本発明の第４実施形態に係る情報処理装置について、図８Ａ乃至図１２を用いて説明する。図８Ａは、本実施形態に係る２慣性系モデルの２慣性系ブロック図である。また、図８Ｂは、本実施形態に係る推定方法を説明する図である。本実施形態に係る情報処理装置は、上記第１実施形態乃至第３実施形態と比べると、動力伝達部にも軸トルクセンサを設けた点で異なる。なお、本実施形態に係る情報処理装置を上記第１実施形態乃至第３実施形態のいずれかと組み合わせた構成であってもよい。
【００８３】
産業機械８１０の情報処理部は、負荷部に与えられる外力ｄＬを算出（推定）する。駆動部は、軸方向剛性Ｋｔを有する動力伝達部を介して負荷部を駆動する。
【００８４】
外力ｄＬの推定値は、
【数３０】
2020197951.tif 000032
となる。
【００８５】
これを展開すると、
【数３１】
2020197951.tif 000033
となる。
【００８６】
最適なαＭ、βＫのとき、
【数３２】
2020197951.tif 000034
となる。
【００８７】
軸トルクセンサを適用することにより分散は必ず低減する。σ２ＴｓＳが大きいときは、低減効果は小さくなり、小さいときは、低減効果は大きくなる。実際には分散自体も小さくなるが、ノミナル値の誤差の影響を受けにくくなることが重要であると考えられる。
【００８８】
図８Ｃは、本実施形態に係る分散を用いた負荷部に与えられる外力の推定を説明する図である。そして、図８Ｃに示したように、最小分散となるαＭおよびβＫを用いることにより負荷部７１３に与えられる外力ｄＬを推定できる。
【００８９】
図９は、本実施形態に係る情報処理装置の構成を示すブロック図である。情報処理装置９００は、産業機械７１０および情報処理部７２０を含む。産業機械７１０は、駆動部７０１、動力伝達部７０３および負荷部７０２を有する。負荷部７０２には、外力ｄＬ９２２が与えられる。
【００９０】
情報処理部７２０は、検出部９０１を有する。検出部９０１は、動力伝達部の動力伝達力ＴｓＳを検出する。検出部９０１は、例えば、軸トルクセンサである。
【００９１】
情報処理部７２０は、さらに、算出部９０２および算出部９０３を有する。算出部９０２は、動力伝達力ＴｓＭと、動力伝達力ＴｓＫと、動力伝達力ＴｓＳとを、重みづけαＭおよび重みづけβＫを変えつつ統合して推定動力伝達力Ｔｓ２＝αＭＴｓＭ＋βＫＴｓＫ−（１−αＭ−βＫ）ＴｓＳを算出するにあたり、推定動力伝達力Ｔｓ２の分散σ２Ｔｓ２または外力ｄＬ９２２の分散σ２ｄＬが最小になるように重みづけαＭおよびβＫを決定する。算出部９０３は、推定動力伝達力Ｔｓ２を用いて外力ｄＬ９２２を算出する。
【００９２】
図１０は、本実施形態に係る情報処理装置の情報処理部が有する算出テーブルの一例を示す図である。算出テーブル１００１は、位置４１１に関連付けて重みづけ１０１１（βＫ）を記憶する。重みづけ１０１１（βＫ）は、推定動力伝達力Ｔｓ２の算出に用いられる。そして、情報処理部７２０は、算出テーブル１００１を算出して外力ｄＬ１０１２の推定値を算出する。
【００９３】
図１１は、本実施形態に係る情報処理装置７００の情報処理部７２０のハードウェア構成を示すブロック図である。ストレージ１１５０には、データベースや各種のパラメータ、あるいは本実施形態の実現に必要な以下のデータまたはプログラムが記憶されている。ストレージ１１５０は、算出テーブル１００１を格納する。算出テーブル１００１は、図１０に示した位置４１１と重みづけ１０１１（βＫ）などとの関係を管理するテーブルである。
【００９４】
ストレージ１１５０は、さらに、検出モジュール１１５１および算出モジュール１１５２，１１５３を格納する。検出モジュール１１５１は、動力伝達部の動力伝達力ＴｓＳを検出するモジュールである。算出モジュール１１５２は、駆動部２１１の位置から求めた動力伝達力ＴｓＭと、駆動部２１１の位置と負荷部２１２の位置との差から求めた動力伝達力ＴｓＫと、動力伝達力ＴｓＳとを、重みづけαＭおよび重みづけβＫを変えつつ統合して推定動力伝達力Ｔｓ２＝αＭＴｓＭ＋βＫＴｓＫ−（１−αＭ−βＫ）ＴｓＳを算出する際に、推定動力伝達力Ｔｓ２の分散σ２Ｔｓ２または外力ｄＬの分散σ２ｄＬが最小になるように重みづけαＭおよび重みづけβＫを決定するモジュールである。
【００９５】
算出モジュール１１５３は、推定動力伝達力ＴｓＳを用いて、外力ｄＬを算出するモジュールである。
【００９６】
図１２は、本実施形態に係る情報処理装置７００の情報処理部７２０の処理手順を説明するフローチャートである。このフローチャートは、図１１のＣＰＵ５１０がＲＡＭ５４０を使用して実行し、図９の情報処理部７２０の機能構成部を実現する。
【００９７】
ステップＳ１１０１において、情報処理部７２０は、駆動部７１１の位置から求めた動力伝達力ＴｓＭと、駆動部７１１の位置と負荷部７１３の位置との差から求めた動力伝達力ＴｓＫと、動力伝達力ＴｓＳとを、重みづけαＭおよび重みづけβＫを変えつつ統合して推定動力伝達力Ｔｓ２を算出するにあたり、推定動力伝達力Ｔｓ２の分散σ２Ｔｓ２または外力の分散σ２ｄＬが最小になるように重みづけαＭおよびβＫを決定する。ステップＳ１１０３において、情報処理部２２０は、決定したαＭおよびβＫを用いて算出した推定動力伝達力Ｔｓ２を用いて、外力ｄＬの推定値を算出する。
【００９８】
本実施形態によれば、軸トルクセンサをさらに追加して、軸トルクセンサの検出値を用いるので、より正確な外力の推定値を算出できる。
【００９９】
［他の実施形態］
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明の技術的範囲で当業者が理解し得る様々な変更をすることができる。また、それぞれの実施形態に含まれる別々の特徴を如何様に組み合わせたシステムまたは装置も、本発明の技術的範囲に含まれる。
【０１００】
また、本発明は、複数の機器から構成されるシステムに適用されてもよいし、単体の装置に適用されてもよい。さらに、本発明は、実施形態の機能を実現する情報処理プログラムが、システムあるいは装置に直接あるいは遠隔から供給される場合にも適用可能である。したがって、本発明の機能をコンピュータで実現するために、コンピュータにインストールされるプログラム、あるいはそのプログラムを格納した媒体、そのプログラムをダウンロードさせるＷＷＷ(World Wide Web)サーバも、本発明の技術的範囲に含まれる。特に、少なくとも、上述した実施形態に含まれる処理ステップをコンピュータに実行させるプログラムを格納した非一時的コンピュータ可読媒体（non-transitory computer readable medium）は本発明の技術的範囲に含まれる。
【図１】
2020197951.tif 000035
【図２Ａ】
2020197951.tif 000036
【図２Ｂ】
2020197951.tif 000037
【図２Ｃ】
2020197951.tif 000038
【図２Ｄ】
2020197951.tif 000039
【図２Ｅ】
2020197951.tif 000040
【図２Ｆ】
2020197951.tif 000041
【図２Ｇ】
2020197951.tif 000042
【図２Ｈ】
2020197951.tif 000043
【図２Ｉ】
2020197951.tif 000044
【図３】
2020197951.tif 000045
【図４】
2020197951.tif 000046
【図５】
2020197951.tif 000047
【図６】
2020197951.tif 000048
【図７Ａ】
2020197951.tif 000049
【図７Ｂ】
2020197951.tif 000050
【図７Ｃ】
2020197951.tif 000051
【図８Ａ】
2020197951.tif 000052
【図８Ｂ】
2020197951.tif 000053
【図８Ｃ】
2020197951.tif 000054
【図９】
2020197951.tif 000055
【図１０】
2020197951.tif 000056
【図１１】
2020197951.tif 000057
【図１２】
2020197951.tif 000058