(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-09-04
(45)【発行日】2023-09-12
(54)【発明の名称】情報処理装置、工作機械、ロボット、情報処理装置の制御方法および情報処理装置の制御プログラム
(51)【国際特許分類】
G05D 3/12 20060101AFI20230905BHJP
B25J 9/18 20060101ALI20230905BHJP
G05B 19/19 20060101ALI20230905BHJP
H02P 29/00 20160101ALI20230905BHJP
【FI】
G05D3/12 305Z
B25J9/18
G05B19/19 P
H02P29/00
(21)【出願番号】P 2019104005
(22)【出願日】2019-06-03
【審査請求日】2022-04-20
【新規性喪失の例外の表示】特許法第30条第2項適用 集会名:The 27th IEEE International Symposium on Industrial Electronics(ISIE2018) 開催日:平成30年6月13日から平成30年6月15日 集会名:The SICE Annual Conference 2018 開催日:平成30年9月11日から平成30年9月14日
(73)【特許権者】
【識別番号】000146847
【氏名又は名称】DMG森精機株式会社
(73)【特許権者】
【識別番号】504137912
【氏名又は名称】国立大学法人 東京大学
(74)【代理人】
【識別番号】100134430
【氏名又は名称】加藤 卓士
(74)【代理人】
【識別番号】100133639
【氏名又は名称】矢野 卓哉
(74)【代理人】
【識別番号】100198960
【氏名又は名称】奥住 忍
(72)【発明者】
【氏名】山田 翔太
(72)【発明者】
【氏名】藤本 博志
(72)【発明者】
【氏名】寺田 祐貴
(72)【発明者】
【氏名】伊佐岡 慶浩
【審査官】今井 貞雄
(56)【参考文献】
【文献】特開2014-023370(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G05D 3/12
B25J 9/18
G05B 19/19
H02P 29/00
(57)【特許請求の範囲】
【請求項1】
駆動部と、
前記駆動部の位置を検出する第1検出部と、
外力dLが与えられる負荷部と、
前記負荷部の位置を検出する第2検出部と、
前記駆動部の駆動力を前記負荷部に伝達する動力伝達部と、
前記駆動部の位置と前記負荷部の位置とに基づいて、動力伝達力を算出する第1算出部と、
を備え、
前記第1算出部は、
前記駆動部の運動方程式を用いて前記駆動部の位置から求めた動力伝達力TsMと、
前記動力伝達部の運動方程式を用いて前記駆動部の位置と前記負荷部の位置との差から求めた動力伝達力TsKとを、重みづけαMを変えつつ統合して第1推定動力伝達力Ts1=αMTsM+(1-αM)TsKを算出するにあたり、前記第1推定動力伝達力Ts1の分散σ2Ts1または前記外力dLの分散σ2dLが最小になるように前記重みづけαMを決定する情報処理装置。
【請求項2】
前記第1推定動力伝達力を用いて、前記外力dLを算出する第2算出部をさらに備えた請求項1に記載の情報処理装置。
【請求項3】
前記動力伝達部の動力伝達力TsSを検出する第3検出部をさらに備え、
前記第1算出部は、前記動力伝達力TsMと、前記動力伝達力TsKと、前記動力伝達力TsSとを、重みづけαMおよび重みづけβKを変えつつ統合して第2推定動力伝達力Ts2=αMTsM+βKTsK-(1-αM-βK)TsSを算出するにあたり、前記第2推定動力伝達力Ts2の分散σ2Ts2または前記外力dLの分散σ2dLが最小になるように前記重みづけαMおよび前記重みづけβKを決定する請求項1または2に記載の情報処理装置。
【請求項4】
前記第2推定動力伝達力を用いて、前記外力dLを算出する第3算出部をさらに備えた請求項3に記載の情報処理装置。
【請求項5】
請求項1乃至4のいずれか1項に記載の情報処理装置を含み、前記負荷部としてのステージに与えられた外力を推定する工作機械。
【請求項6】
請求項1乃至4のいずれか1項に記載の情報処理装置を含み、前記負荷部としてのアームに与えられた外力を推定するロボット。
【請求項7】
駆動部と、
前記駆動部の位置を検出する第1検出部と、
外力dLが与えられる負荷部と、
前記負荷部の位置を検出する第2検出部と、
前記駆動部の駆動力を前記負荷部に伝達する動力伝達部と、
前記駆動部の位置と前記負荷部の位置とに基づいて、動力伝達力を算出する第1算出部と、
を備えた情報処理装置の制御方法であって、
前記駆動部の運動方程式を用いて前記駆動部の位置から動力伝達力TsMを求める第1ステップと、
前記動力伝達部の運動方程式を用いて前記駆動部の位置と前記負荷部の位置との差から動力伝達力TsKを求める第2ステップと、
前記第1ステップで求めた前記動力伝達力TsMと前記第2ステップで求めた動力伝達力TsKとを、重みづけαMを変えつつ統合して第1推定動力伝達力Ts1=αMTsM+(1-αM)TsKを算出するにあたり、前記第1推定動力伝達力Ts1の分散σ2Ts1または前記外力dLの分散σ2dLが最小になるように前記重みづけαMを決定する第3ステップと、
を含む情報処理装置の制御方法。
【請求項8】
駆動部と、
前記駆動部の位置を検出する第1検出部と、
外力dLが与えられる負荷部と、
前記負荷部の位置を検出する第2検出部と、
前記駆動部の駆動力を前記負荷部に伝達する動力伝達部と、
前記駆動部の位置と前記負荷部の位置とに基づいて、動力伝達力を算出する第1算出部と、
を備えた情報処理装置の制御プログラムであって、
前記駆動部の運動方程式を用いて前記駆動部の位置から動力伝達力TsMを求める第1ステップと、
前記動力伝達部の運動方程式を用いて前記駆動部の位置と前記負荷部の位置との差から動力伝達力TsKを求める第2ステップと、
前記第1ステップで求めた前記動力伝達力TsMと前記第2ステップで求めた動力伝達力TsKとを、重みづけαMを変えつつ統合して第1推定動力伝達力Ts1=αMTsM+(1-αM)TsKを算出するにあたり、前記第1推定動力伝達力Ts1の分散σ2Ts1または前記外力dLの分散σ2dLが最小になるように前記重みづけαMを決定する第3ステップと、
をコンピュータに実行させる情報処理装置の制御プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置、工作機械、ロボット、情報処理装置の制御方法および情報処理装置の制御プログラムに関する。
【背景技術】
【0002】
上記技術分野において、非特許文献1には、軸トルクセンサを用いずに、駆動部側センサ値を用いた駆動部側推定と、伝達部側センサ値を用いた伝達部側推定とを組み合わせて、負荷側の外部トルクを推定する技術が開示されている。
【先行技術文献】
【非特許文献】
【0003】
【文献】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.
【発明の概要】
【発明が解決しようとする課題】
【0004】
しかしながら、上記文献に記載の技術では、周波数特性がよく表れている場合には外力を推定できるが、モデル化誤差が大きい場合には精度よく外力を推定できなかった。
【0005】
本発明の目的は、上述の課題を解決する技術を提供することにある。
【課題を解決するための手段】
【0006】
上記目的を達成するため、本発明に係る情報処理装置は、
駆動部と、
前記駆動部の位置を検出する第1検出部と、
外力dLが与えられる負荷部と、
前記負荷部の位置を検出する第2検出部と、
前記駆動部の駆動力を前記負荷部に伝達する動力伝達部と、
前記駆動部の位置と前記負荷部の位置とに基づいて、動力伝達力を算出する第1算出部と、
を備え、
前記第1算出部は、
前記駆動部の運動方程式を用いて前記駆動部の位置から求めた動力伝達力TsMと、前記動力伝達部の運動方程式を用いて前記駆動部の位置と前記負荷部の位置との差から求めた動力伝達力TsKとを、重みづけαMを変えつつ統合して第1推定動力伝達力Ts1=αMTsM+(1-αM)TsKを算出するにあたり、前記第1推定動力伝達力Ts1の分散σ2Ts1または前記外力dLの分散σ2dLが最小になるように前記重みづけαMを決定する。
【0007】
上記目的を達成するため、本発明に係る情報処理装置の制御方法は、
駆動部と、
前記駆動部の位置を検出する第1検出部と、
外力dLが与えられる負荷部と、
前記負荷部の位置を検出する第2検出部と、
前記駆動部の駆動力を前記負荷部に伝達する動力伝達部と、
前記駆動部の位置と前記負荷部の位置とに基づいて、動力伝達力を算出する第1算出部と、
を備えた情報処理装置の制御方法であって、
前記駆動部の運動方程式を用いて前記駆動部の位置から動力伝達力TsMを求める第1ステップと、
前記動力伝達部の運動方程式を用いて前記駆動部の位置と前記負荷部の位置との差から動力伝達力TsKを求める第2ステップと、
前記第1ステップで求めた前記動力伝達力TsMと前記第2ステップで求めた動力伝達力TsKとを、重みづけαMを変えつつ統合して第1推定動力伝達力Ts1=αMTsM+(1-αM)TsKを算出するにあたり、前記第1推定動力伝達力Ts1の分散σ2Ts1または前記外力dLの分散σ2dLが最小になるように前記重みづけαMを決定する第3ステップと、
を含む。
【0008】
上記目的を達成するため、本発明に係る情報処理装置の制御プログラムは、
駆動部と、
前記駆動部の位置を検出する第1検出部と、
外力dLが与えられる負荷部と、
前記負荷部の位置を検出する第2検出部と、
前記駆動部の駆動力を前記負荷部に伝達する動力伝達部と、
前記駆動部の位置と前記負荷部の位置とに基づいて、動力伝達力を算出する第1算出部と、
を備えた情報処理装置の制御プログラムであって、
前記駆動部の運動方程式を用いて前記駆動部の位置から動力伝達力TsMを求める第1ステップと、
前記動力伝達部の運動方程式を用いて前記駆動部の位置と前記負荷部の位置との差から動力伝達力TsKを求める第2ステップと、
前記第1ステップで求めた前記動力伝達力TsMと前記第2ステップで求めた動力伝達力TsKとを、重みづけαMを変えつつ統合して第1推定動力伝達力Ts1=αMTsM+(1-αM)TsKを算出するにあたり、前記第1推定動力伝達力Ts1の分散σ2Ts1または前記外力dLの分散σ2dLが最小になるように前記重みづけαMを決定する第3ステップと、
をコンピュータに実行させる。
【発明の効果】
【0009】
本発明によれば、モデル化誤差が大きい場合であっても精度よく外力を推定できる。
【図面の簡単な説明】
【0010】
【
図1】本発明の第1実施形態に係る情報処理装置の構成を示すブロック図である。
【
図2A】本発明の第2実施形態に係る情報処理装置の概要を説明する図である。
【
図2B】2慣性系モデル(回転駆動系)を説明する2慣性系モデル図である。
【
図2C】2慣性系モデル(回転駆動系)の2慣性系ブロック図である。
【
図2D】本発明の第2実施形態に係る2慣性系の最小次元オブザーバのブロック図である。
【
図2E】本発明の第2実施形態に係る2慣性系ブロック図であり、
図2Dに示した2慣性系ブロック図を等価変形した図である。
【
図2F】本発明の第2実施形態に係る推定方法を説明する図である。
【
図2G】本発明の第2実施形態に係る分散を用いた負荷部に与えられる外力の推定を説明する図である。
【
図2H】本発明の第2実施形態に係る確率密度関数を説明する図である。
【
図2I】本発明の第2実施形態に係るゲイン設計のイメージを説明する図である。
【
図3】本発明の第2実施形態に係る情報処理装置の構成を示すブロック図である。
【
図4】本発明の第2実施形態に係る情報処理装置の情報処理部が有する決定テーブルの一例を示す図である。
【
図5】本発明の第2実施形態に係る情報処理装置の情報処理部のハードウェア構成を示すブロック図である。
【
図6】本発明の第2実施形態に係る情報処理装置の情報処理部の処理手順を説明するフローチャートである。
【
図7A】本発明の第3実施形態に係る情報処理装置の概要を説明する図である。
【
図7B】2慣性系モデル(並進駆動系)を説明する2慣性系モデル図である。
【
図7C】2慣性系モデル(並進駆動系)の2慣性系ブロック図である。
【
図8A】本発明の第4実施形態に係る2慣性系ブロック図である。
【
図8B】本発明の第4実施形態に係る推定方法を説明する図である。
【
図8C】本発明の第4実施形態に係る分散を用いた負荷部に与えられる外力の推定を説明する図である。
【
図9】本発明の第4実施形態に係る情報処理装置の構成を示すブロック図である。
【
図10】本発明の第4実施形態に係る情報処理装置の情報処理部が有する決定テーブルの一例を示す図である。
【
図11】本発明の第4実施形態に係る情報処理装置の情報処理部のハードウェア構成を示すブロック図である。
【
図12】本発明の第4実施形態に係る情報処理装置の情報処理部の処理手順を説明するフローチャートである。
【発明を実施するための形態】
【0011】
以下に、本発明を実施するための形態について、図面を参照して、例示的に詳しく説明記載する。ただし、以下の実施の形態に記載されている、構成、数値、処理の流れ、機能要素などは一例に過ぎず、その変形や変更は自由であって、本発明の技術範囲を以下の記載に限定する趣旨のものではない。
【0012】
[第1実施形態]
本発明の第1実施形態としての情報処理装置100について、
図1を用いて説明する。情報処理装置100は、駆動部の位置および負荷部の位置に基づいて、駆動部からの駆動力を負荷部に伝達する動力伝達部の動力伝達力を算出する装置である。
【0013】
図1に示すように、情報処理装置100は、駆動部101、第1検出部111、負荷部102、第2検出部121、動力伝達部103および第1算出部104を含む。
【0014】
第1検出部111は、駆動部101の位置θMを検出する。負荷部102は、外力dL122が与えられる。第2検出部121は、負荷部102の位置XLを検出する。動力伝達部103は、駆動部101の駆動力を負荷部102に伝達する。第1算出部104は、駆動部101の位置θMと負荷部102の位置XLとに基づいて、動力伝達力Tsを算出する。第1算出部104は、駆動部101の位置θMから求めた動力伝達力TsMと、駆動部101の位置θMと負荷部102の位置XLとの差から求めた動力伝達力TsKとを、重みづけαMを変えつつ統合して第1推定動力伝達力Ts1=αMTsM+(1-αM)TsKを算出するにあたり、第1推定動力伝達力Ts1の分散σTs1
2または外力dL122の分散σdL
2が最小になるように重みづけαMを決定する。
【0015】
本実施形態によれば、モデル化誤差が大きい場合であっても精度よく外力を推定できる。
【0016】
[第2実施形態]
次に本発明の第2実施形態に係る情報処理装置について、
図2A乃至
図6を用いて説明する。
図2Aは、本実施形態に係る情報処理装置の概要を説明する図である。なお、本実施形態は、上記第1実施形態と比べると、推定動力伝達力を用いて、外力d
Lを算出する算出部をさらに有する。
【0017】
情報処理装置200は、産業機械210と情報処理部220とを含む。産業機械210は、駆動部211、負荷部212および動力伝達部213を含む。産業機械210は、例えば、工作機械、ロボットなどであるが、これらには限定されない。
【0018】
駆動部211は、例えば、サーボモータなどの回転型モータであるが、これには限定されず、リニアモータであってもよい。負荷部212は、被駆動体である。動力伝達部213は、駆動部211から負荷部212へ動力を伝達する。動力伝達部213は、例えば、シャフトであるが、これには限定されない。動力伝達部213には、伝達機構214として、カップリングや減速機が取り付けられてもよい。駆動部211の回転力が動力伝達部213により負荷部212へと伝達され、被駆動体としての負荷部212が回転する。情報処理部220は、負荷部212に与えられる外力dLを算出する。
【0019】
図2Bは、2慣性系モデル(回転駆動系)を説明する図である。駆動部211は、ねじり剛性Kを有する動力伝達部213を介して負荷部212を駆動する。
【0020】
【0021】
動力伝達部213の運動方程式は、
【数2】
となる。
【0022】
【0023】
なお、各記号の定義は、
TM:駆動トルク
θM:駆動部角度
ωM:駆動部角速度
JM:駆動部イナーシャ
DM:駆動部粘性摩擦係数
K:ねじり剛性
Ts:軸トルク
θL:負荷部角度
ωL:負荷部角速度
JL:負荷部イナーシャ
DL:負荷部粘性摩擦係数
dL:外力(負荷トルク)
である。
【0024】
図2Cは、2慣性系モデル(回転駆動系)の2慣性系ブロック図である。
【0025】
【0026】
動力伝達部213の運動方程式は、
【数5】
となる。
【0027】
【0028】
そして、d
・
L=0として拡大形を組んだ最小次元オブザーバは、
【数7】
となる。
【0029】
そして、ω
M、ω
L、Δθ(軸ねじれ角度)は観測可能であり、最小次元オブザーバは、
【数8】
【数9】
【数10】
のように組むことができる。
【0030】
図2Dは、本実施形態に係る2慣性系の最小次元オブザーバのブロック図である。また、
図2Eは、
図2Dに示した2慣性系ブロック図を等価変形したブロック図である。点線で示した部分は、2慣性系のプラント230を示す。ここで、T
s、α
Mはそれぞれ、
【数11】
【数12】
となり、1つのパラメータα
Mで、配合比を調整可能となる。
【0031】
図2Fは、本実施形態に係る推定方法を説明する図である。図示したように、新たに生まれたゲインの設計によって、ロバストなプラントパラメータやノイズの影響が異なる推定手法を任意の比率で組み合わせることが可能となる。
【0032】
そして、α
Mは、手動調整可能であるが、手動調整によるチューニングではなく、システマティックなゲイン設計が可能となる。
【数13】
【0033】
負荷部212のパラメータ誤差は、帯域とトレードオフな関係となるので考慮していない(σ
L
2と一括りしておく)。プラントのパラメータやトルクセンサのノイズはノミナル値を平均値とし、ある分散に従う互いに独立な正規性確率分布を持つものとする。
【数14】
で分散は最小になる。
【0034】
次に、ゲイン設計の線形近似について説明する。動力伝達部213の運動方程式は、
【数15】
となる。
【0035】
式(15)は、2変数の積となっていて非線形なので、線形化すると、
【数16】
となる。
【0036】
それぞれの変数の分散を考慮して展開すると、
【数17】
となる。
【0037】
次に、駆動部211の運動方程式は、
【数18】
となる。
【0038】
これも2変数の積となっていて非線形なので、線形化すると、
【数19】
となる。
【0039】
これについても、それぞれに変数の分散を考慮して展開すると、
【数20】
となる。
【0040】
そして、最小分散となるα
Mは、
【数21】
となり、分散を最小化する状態量に依存して時変なα
Mが得られる。
【0041】
図2Gは、本実施形態に係る分散を用いた負荷部に与えられる外力の推定を説明する図である。そして、
図2Gに示したように、最小分散となるα
Mを用いることにより負荷部212に与えられる外力d
Lを推定できる。これは、2つの従来のオブザーバを混合した形であるため、極設計可能かつ容易に拡張することができる。また、物理的意味が明確な設計を行うことができる(エンコーダ分解能やプラントパラメータの分散)。
【0042】
図2Hは、本実施形態に係る確率密度関数を説明する図である。分解能qの場合の確率密度関数は、図示した通り、
【数22】
となる。
【0043】
そして、分散は、
角度の場合:σ2
θM,L=q2/12≒2.9921e-12(20bit)
角速度の場合:σ2
ωM=q2/12T2
S≒1.8701e-5(20bit、2.5kHz後進差分)
角加速度の場合:σ・2
ωM=q2/12T4
S≒116.88(20bit、2.5kHz2階後進差分)
となる。
【0044】
次に、プラントパラメータの確率密度関数は、
【数23】
となる。ここで、σ
2
K、σ
2
JM、σ
2
DMおよびσ
2
dMは、正規性と仮定する。ノミナル値からの最大変動幅は比較的想定しやすい。例えば、ノミナル値からの変動が±30%となるのが3σ(99.7%)となるとすると、σ=0.1μとなる。
【0045】
図2Iは、本実施形態に係るゲイン設計のイメージを説明する図である。駆動部211のパラメータやセンサノイズの分布は、グラフ240のようになる。また、駆動部211の推定値の分布は、グラフ241のようになり、推定値の分布は、状態量に応じて時々刻々と変化する。
【0046】
次に、動力伝達部213のパラメータやセンサノイズの分布は、グラフ250のようになる。また、動力伝達部213の推定値の分布は、グラフ251のようになり、推定値の分布は、状態量に応じて時々刻々と変化する。
【0047】
そして、負荷部212の外力推定値の分布は、グラフ260のようになり、αMの設計を変えること、例えば、最適設計とすることで、任意の時間での分散を最小化することができる。
【0048】
図3は、本実施形態に係る情報処理装置の構成を示すブロック図である。情報処理装置200は、産業機械210および情報処理部220を含む。産業機械210は、駆動部301、動力伝達部303および負荷部302を有する。負荷部302には、外力d
L322が与えられる。
【0049】
駆動部301は、自ら駆動して、駆動力を伝達する部材であり、例えば、サーボモータなどの回転型モータであるが、これには限定されず、リニアモータであってもよい。負荷部302は、駆動部301の駆動力により駆動される被駆動体である。動力伝達部303は、駆動部301の駆動力を伝達する部材であり、例えば、シャフトやボールねじであるが、これには限定されない。そして、負荷部302は、動力伝達部303を介して伝達された駆動部301の駆動力により回転駆動する。
【0050】
情報処理部220は、検出部311,321、算出部304,305を有する。検出部311は、駆動部301の位置θMを検出する。検出部311は、駆動部301の位置を検出できるセンサであり、例えば、エンコーダであるが、位置を検出できるセンサであれば、これには限定されない。検出部321は、負荷部302の位置XLを検出する。検出部321は、負荷部302の位置を検出できるセンサであり、例えば、リニアスケールであるが、位置を検出できるセンサであれば、これには限定されない。
【0051】
算出部304は、検出部311で検出した駆動部301の位置θMと検出部321で検出した負荷部302の位置XLとに基づいて、動力伝達力Tsを算出する。動力伝達力Tsは、動力伝達部303が、駆動部301から伝達された動力を負荷部302に伝達する際の伝達力である。
【0052】
算出部304は、駆動部301の位置θMから動力伝達力TsMを求める。さらに、算出部304は、駆動部301の位置θMと負荷部302の位置XLとの差から動力伝達力TsKを求める。そして、算出部304は、動力伝達力TsMと動力伝達力TsKとを、重みづけαMを変えつつ統合して、推定動力伝達力Ts1=αMTsM+(1-αM)TsKを算出するにあたり、推定動力伝達力Ts1の分散σ2
Ts1または外力dLの分散σ2
dLが最小になるように、重みづけαMを決定する。
【0053】
算出部305は、算出部304が算出した推定動力伝達力Ts1=αMTsM+(1-αM)TsKを用いて、外力dLを算出する。これにより、情報処理装置200は、負荷部302に与えられる外力dL322の推定値を算出できる。
【0054】
図4は、本実施形態に係る情報処理装置200の情報処理部220が有する算出テーブルの一例を示す図である。算出テーブル401は、位置411に関連付けて動力伝達力412、分散413および重みづけ414を記憶する。位置411は、駆動部211の位置θ
Mと負荷部212の位置θ
Lを含む。動力伝達力412は、駆動部211の位置θ
Mから求めた動力伝達力T
sM、負荷部212の位置θ
Lから求めた動力伝達力T
sK、これらを統合して算出した推定動力伝達力T
s1を含む。分散413は、推定動力伝達力T
s1の分散σ
2
Ts1、および外力d
Lの分散σ
2
dLを含む。重みづけ414(α
M)は、推定動力伝達力T
s1の算出に用いられる。外力415(d
L)は、負荷部302に与えられる力である。そして、情報処理部220は、算出テーブル401を参照して外力d
Lを算出する。
【0055】
図5は、本実施形態に係る情報処理装置200の情報処理部220のハードウェア構成を示すブロック図である。CPU(Central Processing Unit)510は、演算制御用のプロセッサであり、プログラムを実行することで
図3の情報処理装置200の機能構成部を実現する。CPU510は複数のプロセッサを有し、異なるプログラムやモジュール、タスク、スレッドなどを並行して実行してもよい。ROM(Read Only Memory)520は、初期データおよびプログラムなどの固定データおよびその他のプログラムを記憶する。また、ネットワークインタフェース530は、ネットワークを介して他の装置などと通信する。なお、CPU510は1つに限定されず、複数のCPUであっても、あるいは画像処理用のGPU(Graphics Processing Unit)を含んでもよい。また、ネットワークインタフェース530は、CPU510とは独立したCPUを有して、RAM(Random Access Memory)540の領域に送受信データを書き込みあるいは読み出しするのが望ましい。また、RAM540とストレージ550との間でデータを転送するDMAC(Direct Memory Access Controller)を設けるのが望ましい(図示なし)。さらに、CPU510は、RAM540にデータが受信あるいは転送されたことを認識してデータを処理する。また、CPU510は、処理結果をRAM540に準備し、後の送信あるいは転送はネットワークインタフェース530やDMACに任せる。
【0056】
RAM540は、CPU510が一時記憶のワークエリアとして使用するランダムアクセスメモリである。RAM540には、本実施形態の実現に必要なデータを記憶する領域が確保されている。位置541は、駆動部211の位置および負荷部212の位置である。動力伝達力542は、駆動部211の位置から求めた動力伝達力TsM、および駆動部211の位置と負荷部212の位置との差から求めた動力伝達力TsKである。推定動力伝達力543は、動力伝達力TsMおよび動力伝達力TsKを統合して算出された動力伝達力である。分散544は、推定動力伝達力Ts1の分散σ2
Ts1および外力dLの分散σ2
dLである。重みづけ545は、動力伝達力TsMおよび動力伝達力TsKを統合する際に用いられる重みであり、重みづけαMを変えつつ動力伝達力を統合して、推定動力伝達力が算出される。外力546は、負荷部212に与えられる力である。
【0057】
送受信データ547は、ネットワークインタフェース530を介して送受信されるデータである。また、RAM540は、各種アプリケーションモジュールを実行するためのアプリケーション実行領域548を有する。
【0058】
ストレージ550には、データベースや各種のパラメータ、あるいは本実施形態の実現に必要な以下のデータまたはプログラムが記憶されている。ストレージ550は、算出テーブル401を格納する。算出テーブル401は、
図4に示した位置411と外力415などとの関係を管理するテーブルである。
【0059】
ストレージ550は、さらに、検出モジュール551,552および算出モジュール553,554を格納する。検出モジュール551は、駆動部211の位置θMを検出するモジュールである。検出モジュール552は、負荷部212の位置XLを検出するモジュールである。算出モジュール553は、駆動部211の位置と負荷部212の位置とに基づいて動力伝達力Tsを算出するモジュールである。さらに、算出モジュール553は、駆動部211の位置から求めた動力伝達力TsMと、駆動部211の位置と負荷部212の位置との差から求めた動力伝達力TsKとを、重みづけαMを変えつつ統合して推定動力伝達力Ts1=αMTsM+(1-αM)TsKを算出する際に、推定動力伝達力Ts1の分散σ2
Ts1または外力dLの分散σ2
dLが最小になるように重みづけαMを決定するモジュールである。算出モジュール554は、推定動力伝達力Ts1を用いて外力dLを算出するモジュールである。これらのモジュール551~554は、CPU510によりRAM540のアプリケーション実行領域548に読み出され、実行される。制御プログラム555は、情報処理部220の全体を制御するためのプログラムである。
【0060】
入出力インタフェース560は、入出力機器との入出力データをインタフェースする。入出力インタフェース560には、表示部561、操作部562、が接続される。また、入出力インタフェース560には、さらに、記憶媒体564が接続されてもよい。さらに、音声出力部であるスピーカ563や、音声入力部であるマイク(図示せず)、あるいは、GPS位置判定部が接続されてもよい。なお、
図5に示したRAM540やストレージ550には、情報処理部220が有する汎用の機能や他の実現可能な機能に関するプログラムやデータは図示されていない。
【0061】
図6は、本実施形態に係る情報処理装置200の情報処理部220の処理手順を説明するフローチャートである。このフローチャートは、
図5のCPU510がRAM540を使用して実行し、
図3の情報処理部220の機能構成部を実現する。
【0062】
ステップS601において、情報処理部220は、検出部311,321により駆動部301および負荷部302の位置データを取得する。ステップS603において、情報処理部220は、取得した位置データに基づいて、駆動部301の位置θMおよび負荷部302の位置XLをそれぞれ検出する。ステップS605において、情報処理部220は、検出した位置θMとXLとに基づいて、動力伝達力を算出する。
【0063】
ステップS607において、情報処理部220は、駆動部301の位置から求めた動力伝達力TsMと、駆動部301の位置と負荷部302の位置との差から求めた動力伝達力TsKとを、重みづけαMを変えつつ統合して推定動力伝達力Ts1を算出するにあたり、推定動力伝達力Ts1の分散σ2
Ts1または外力の分散σ2
dLが最小になるように重みづけαMを決定する。ステップS609において、情報処理部220は、決定したαMを用いて算出した推定動力伝達力Ts1を用いて、外力dLを算出する。
【0064】
本実施形態によれば、力センサを用いない場合であっても負荷部に与えられる外力を推定することができる。また、力センサを用いないので、低コストで装置を組み立てることができる。さらに、2慣性系モデルを用いて外力を推定するので、剛体モデルで推定した場合と比較して共振の影響などを排除できる。また、本実施形態によれば、汎用性が高いため、モデル化誤差が大きい場合であっても精度よく外力を推定できる。
【0065】
[第3実施形態]
次に本発明の第3実施形態に係る情報処理装置について、
図7A乃至
図7Cを用いて説明する。
図7Aは、本実施形態に係る情報処理装置の概要を説明する図である。本実施形態に係る情報処理装置は、上記第2実施形態と比べると、上記第2実施形態が回転駆動機構であるのに対して、本実施形態はボールねじ駆動機構である点で異なる。
【0066】
情報処理装置700は、産業機械710および情報処理部720を有する。産業機械710は、駆動部711、負荷部713および動力伝達部716を含む。
【0067】
駆動部711は、例えば、サーボモータなどの回転型モータであるが、これらには限定されず、リニアモータであってもよい。駆動部711からの動力は、カップリング712を介して動力伝達部716へ伝えられる。
【0068】
負荷部713は、例えば、テーブルである。ワーク714は、負荷部713上に載置される。ツール715が、ワーク714に接触する。
【0069】
動力伝達部716は、駆動部711から負荷部713に動力を伝達する。動力伝達部716は、例えば、ボールねじ、ベルト、ギアなどであるが、これらには限定されない。動力伝達部716がボールねじである場合、動力伝達部716は、駆動部711から負荷部713に並進力を伝達する。
【0070】
ボールナット717は、動力伝達部716から伝達された動力を負荷部713へ伝える。負荷部713は、矢印730の方向へ移動する。なお、駆動部711を逆回転させれば、負荷部713は、矢印730とは逆方向へ移動する。なお、産業機械710は、例えば、工作機械、半導体製造装置などであるがこれらには限定されない。情報処理部720は、負荷部713に与えられる外力dLを算出する。
【0071】
図7Bは、2慣性系モデル(並進駆動系)を説明する2慣性系モデル図である。また、
図7Cは、2慣性系モデル(並進駆動系)の2慣性系ブロック図である。本実施形態の並進駆動系の2慣性系モデルは図示した通りとなる。情報処理装置700の情報処理部720は、負荷部713に与えられる外力d
Lを算出する。駆動部711は、軸方向剛性K
tを有する動力伝達部716を介して負荷部713を駆動する。
【0072】
駆動部711(回転部)の運動方程式は、
【数24】
となる。
【0073】
動力伝達部716の運動方程式は、
【数25】
となる。
【0074】
負荷部713(直進部)の運動方程式は、
【数26】
となる。
【0075】
なお、各記号の定義は、
TM:駆動トルク
θM:駆動部角度(回転部角度)
ωM:駆動部角速度(回転部角速度)
JM:駆動部イナーシャ(回転部イナーシャ)
DM:駆動部粘性摩擦係数(回転部粘性摩擦係数)
R:回転-直進変換係数
Kt:軸方向剛性
Fs:推力
xL:負荷部位置(直進部位置)
vL:負荷部速度(直進部速度)
ML:負荷部質量(直進部質量)
CL:負荷部粘性摩擦係数(直進部粘性摩擦係数)
dL:外力(負荷トルク)
である。
【0076】
図7Cは、2慣性系モデル(並進駆動系)の2慣性系ブロック図である。本実施形態の並進駆動系の2慣性系ブロック図は図示した通りとなる。
【0077】
駆動部711の運動方程式は、回転運動となるので、
【数27】
となる。
【0078】
動力伝達部716の運動方程式は、
【数28】
となる。
【0079】
負荷部713の運動方程式は、
【数29】
となる。
【0080】
これらの式(27)、式(28)、式(29)から、第2実施形態と同様に、負荷部713に与えられる外力dLを算出できる。
【0081】
本実施形態によれば、ボールねじ駆動機構であっても負荷部に与えられる外力を算出できる。
【0082】
[第4実施形態]
次に本発明の第4実施形態に係る情報処理装置について、
図8A乃至
図12を用いて説明する。
図8Aは、本実施形態に係る2慣性系モデルの2慣性系ブロック図である。また、
図8Bは、本実施形態に係る推定方法を説明する図である。本実施形態に係る情報処理装置は、上記第1実施形態乃至第3実施形態と比べると、動力伝達部にも軸トルクセンサを設けた点で異なる。なお、本実施形態に係る情報処理装置を上記第1実施形態乃至第3実施形態のいずれかと組み合わせた構成であってもよい。
【0083】
産業機械810の情報処理部は、負荷部に与えられる外力dLを算出(推定)する。駆動部は、軸方向剛性Ktを有する動力伝達部を介して負荷部を駆動する。
【0084】
【0085】
【0086】
【0087】
軸トルクセンサを適用することにより分散は必ず低減する。σ2
TsSが大きいときは、低減効果は小さくなり、小さいときは、低減効果は大きくなる。実際には分散自体も小さくなるが、ノミナル値の誤差の影響を受けにくくなることが重要であると考えられる。
【0088】
図8Cは、本実施形態に係る分散を用いた負荷部に与えられる外力の推定を説明する図である。そして、
図8Cに示したように、最小分散となるα
Mおよびβ
Kを用いることにより負荷部713に与えられる外力d
Lを推定できる。
【0089】
図9は、本実施形態に係る情報処理装置の構成を示すブロック図である。情報処理装置900は、産業機械710および情報処理部720を含む。産業機械710は、駆動部701、動力伝達部703および負荷部702を有する。負荷部702には、外力d
L922が与えられる。
【0090】
情報処理部720は、検出部901を有する。検出部901は、動力伝達部の動力伝達力TsSを検出する。検出部901は、例えば、軸トルクセンサである。
【0091】
情報処理部720は、さらに、算出部902および算出部903を有する。算出部902は、動力伝達力TsMと、動力伝達力TsKと、動力伝達力TsSとを、重みづけαMおよび重みづけβKを変えつつ統合して推定動力伝達力Ts2=αMTsM+βKTsK-(1-αM-βK)TsSを算出するにあたり、推定動力伝達力Ts2の分散σ2
Ts2または外力dL922の分散σ2
dLが最小になるように重みづけαMおよびβKを決定する。算出部903は、推定動力伝達力Ts2を用いて外力dL922を算出する。
【0092】
図10は、本実施形態に係る情報処理装置の情報処理部が有する算出テーブルの一例を示す図である。算出テーブル1001は、位置411に関連付けて重みづけ1011(β
K)を記憶する。重みづけ1011(β
K)は、推定動力伝達力T
s2の算出に用いられる。そして、情報処理部720は、算出テーブル1001を算出して外力d
L1012の推定値を算出する。
【0093】
図11は、本実施形態に係る情報処理装置700の情報処理部720のハードウェア構成を示すブロック図である。ストレージ1150には、データベースや各種のパラメータ、あるいは本実施形態の実現に必要な以下のデータまたはプログラムが記憶されている。ストレージ1150は、算出テーブル1001を格納する。算出テーブル1001は、
図10に示した位置411と重みづけ1011(β
K)などとの関係を管理するテーブルである。
【0094】
ストレージ1150は、さらに、検出モジュール1151および算出モジュール1152,1153を格納する。検出モジュール1151は、動力伝達部の動力伝達力TsSを検出するモジュールである。算出モジュール1152は、駆動部211の位置から求めた動力伝達力TsMと、駆動部211の位置と負荷部212の位置との差から求めた動力伝達力TsKと、動力伝達力TsSとを、重みづけαMおよび重みづけβKを変えつつ統合して推定動力伝達力Ts2=αMTsM+βKTsK-(1-αM-βK)TsSを算出する際に、推定動力伝達力Ts2の分散σ2
Ts2または外力dLの分散σ2
dLが最小になるように重みづけαMおよび重みづけβKを決定するモジュールである。
【0095】
算出モジュール1153は、推定動力伝達力TsSを用いて、外力dLを算出するモジュールである。
【0096】
図12は、本実施形態に係る情報処理装置700の情報処理部720の処理手順を説明するフローチャートである。このフローチャートは、
図11のCPU510がRAM540を使用して実行し、
図9の情報処理部720の機能構成部を実現する。
【0097】
ステップS1101において、情報処理部720は、駆動部711の位置から求めた動力伝達力TsMと、駆動部711の位置と負荷部713の位置との差から求めた動力伝達力TsKと、動力伝達力TsSとを、重みづけαMおよび重みづけβKを変えつつ統合して推定動力伝達力Ts2を算出するにあたり、推定動力伝達力Ts2の分散σ2
Ts2または外力の分散σ2
dLが最小になるように重みづけαMおよびβKを決定する。ステップS1103において、情報処理部220は、決定したαMおよびβKを用いて算出した推定動力伝達力Ts2を用いて、外力dLの推定値を算出する。
【0098】
本実施形態によれば、軸トルクセンサをさらに追加して、軸トルクセンサの検出値を用いるので、より正確な外力の推定値を算出できる。
【0099】
[他の実施形態]
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明の技術的範囲で当業者が理解し得る様々な変更をすることができる。また、それぞれの実施形態に含まれる別々の特徴を如何様に組み合わせたシステムまたは装置も、本発明の技術的範囲に含まれる。
【0100】
また、本発明は、複数の機器から構成されるシステムに適用されてもよいし、単体の装置に適用されてもよい。さらに、本発明は、実施形態の機能を実現する情報処理プログラムが、システムあるいは装置に直接あるいは遠隔から供給される場合にも適用可能である。したがって、本発明の機能をコンピュータで実現するために、コンピュータにインストールされるプログラム、あるいはそのプログラムを格納した媒体、そのプログラムをダウンロードさせるWWW(World Wide Web)サーバも、本発明の技術的範囲に含まれる。特に、少なくとも、上述した実施形態に含まれる処理ステップをコンピュータに実行させるプログラムを格納した非一時的コンピュータ可読媒体(non-transitory computer readable medium)は本発明の技術的範囲に含まれる。