【文献】
佐藤正和,酒井悟,ビジュアル・カルマンフィルタに基づく水面形制御に関する基礎的研究,「運動と振動の制御」シンポジウム講演論文集,一般社団法人日本機械学会,2011年 6月29日,p.673−678
(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0012】
(スロッシング制御装置の構成)
本発明に係る移動体の動作制御装置の適用例として、スロッシング制御装置を構成した例について説明する。
図1は、スロッシング制御装置の構成を示すブロック図である。本実施形態のスロッシング制御装置は、水を収容した水槽10と、水槽10を一方向に進退駆動するモータ12と、水槽10の前方に配置され水槽10の前面全体を撮影するカメラ14と、カメラ14から得られる画像を解析し、解析結果に基づいてモータ12を駆動制御する制御部16とを備える。本実施形態のスロッシング制御装置においては、水槽10が制御対象である移動体、モータ12が移動体の駆動部、カメラ14が視認部に相当する。移動体の動きにともなって変動する検知対象は、この場合、水槽10内における水の状態(波の状態)である。
【0013】
水槽10は、透明なガラス板からなる直方体の容器に形成され、水平に支持された平板板からなる支持板上に、支持板の往復動方向と長手方向を平行に固定支持される。支持板の往復動方向は支持板の底面に固設したガイドレールにより一方向に規定される。支持板はモータ12の出力軸に連結したラックギアに連繋して設けられ、モータ12の正逆回転にともなって支持板(水槽10)は一方向に進退駆動される。モータ12にはDCサーボモータを使用し、制御部16に入力されるエンコーダパルスに基づいて水槽10の移動位置を検出するように構成した。
【0014】
本実施形態においては、水槽10に収容した水の表面の位置(表面の形状)を識別しやすくするため、水槽10の全量の約半分量を青色に着色した水とし、残り分を流動パラフィン(透明)として水槽10を水と流動パラフィンにより充填し、水槽10を密閉した。流動パラフィンは水よりも軽いから、水槽10が静止した状態では、水槽10の下側に水面が水平になった状態で水が収容され、水の上に流動パラフィンがのった状態になる。流動パラフィンを充填したのは、水槽10を揺動(往復動)させて波を起こしたときに、波頭が巻き込むような形態にならないようにして、波の形状を認識しやすくするためである。
【0015】
(制御方法:多項式空間の考え方による制御)
モータ12を駆動制御する制御部16は、水槽10内で生じた波を、水槽10(支持板)の往復動作を制御して水を静止させる(水面が水平になるようにする)。本試験では、水槽10をはじめに一定時間往復動させて波を起こさせた後、制御を開始して水槽10内の水を静止させるようにした。
本実施形態においては、カメラ14によって取得した水槽10内の波の画像を解析し、安定化制御方法により水槽10の動きを制御して水を静止させた。水槽10内の波の状態は刻々と変化するから、カメラ14からは短周期(実施例では15fps)で水槽10の画像を取得し、個々の画像ごとに解析を行い、それぞれの解析結果に基づいて水槽10の動きを制御して波を静止させた。
【0016】
図2は、水槽10を一方向(水槽の長手方向に平行な方向)に往復動させ、水槽10内で波を起こさせた状態の画像の例である。水槽10の下側の色の濃い領域が水である。
図3は、この画像を解析して求めた近似曲線(破線)を示す。近似曲線は便宜的に1次曲線によって近似している。
水槽10内の水面の形状(波の形)は、カメラ14によって取得した画像をRGB化し、特定の閾値以上の画素の集合を選択して水面として特定した。得られた水面の形状(波の形)を関数としてみると、水面の形状はヒルベルト空間として定義される多項式空間における基底の一次結合として表現することができる。
水槽10内の水の表面は実際には3次元的に揺らぐが、本実施形態のように長手方向に平行に水槽10を往復動させて波を起こした場合は、波が2次元的に変動するとみても制御上、大きな誤差は生じない。
【0017】
なお、多項式空間の正規直交基底e
m(x)は次式(1)のルジャンドル多項式によって表現される。
【数1】
多項式空間の元f(x)は、(1)式の正規直交基底を用いて次式(2)のように、基底の一次結合によって表現できる。すなわち、本実施形態において画像として得られる波の形は、この基底の一次結合として表現することができる。
【数2】
波の形は時間的に変化するから、時間的に変化する波の形は、次式(3)の多項式f(x,t)(0≦t≦∞)によって表現される。すなわち、波の変化は成分a
m(t)の時間変化としてあらわれるから、この成分a
m(t)を監視制御することによって波を制御することが可能である。
【数3】
【0018】
(システムの同定)
本実施形態における制御部16による制御手法は、観測した波の形状を多項式空間における基底の一次結合として表現した場合の成分a
m(t)の時間変化を監視し、その後の変化を推定して、目標とする状態(水面を静止させる状態)に漸近安定化させるものである。制御対象である観測量a
m(t)の次数は制限されるものではないが、本実施形態においては、検証のための第一段階として観測量をa
2(k)、すなわち観測対象の成分のうち1次の成分を制御対象とする状態変数として制御することにし、予測誤差法の式誤差モデルであるARX法を用いてシステムを同定した。このモデルでは、次式(4)の離散時間線形時不変システムによって入出力応答が定義される。
【数4】
【0019】
以下のチャープ信号u(t)を印加してシステムを同定した。この同定操作は、水槽10をさまざまな周波数により揺動(往復動)させ、外力に対して水槽10(システム)がどのようにレスポンスするかを特定するという意味であり、本実施形態では次数34まで同定した。
u(t)=Acos(2πf
ct+παt
2+θ)
A:振幅0.55(V)、f
c:中心周波数0.198(Hz)、α:チャープ率2.3761×10
-3(Hz/s)、
θ:初期位相-(1/2)π(rad)
【0020】
システムの同定条件は以下のとおりである。
水:2.52(l)、水温:22.4(℃)、流動パラフィン:5.05(l)、パラフィン温度:22.1(℃)、水槽サイズ:横幅490×奥行き180×高さ300(mm)、カメラモード:5Mモード、カメラ高さ:130(mm)、カメラ-水槽距離:430(mm)
【0021】
同定した式(4)の行列A、B、C、Dを以下に示す。
【数5】
【数6】
【数7】
【数8】
【0022】
図4は同定モデルの出力と実際の出力とを比較したグラフである。
図5は
図4における50〜150秒の範囲を拡大して示したものである。グラフから、実際の出力と同定モデルの出力とが良く一致していることがわかる。すなわち、上述した本システムの同定モデルが妥当であることが確認できた。
【0023】
なお、比較のため、従来手法である重心の位置を制御対象とする場合についても制御試験を行った。重心(x
G,y
G)は次式(9)によって与えられる。
【数9】
式(9)において、Wは全画素値の総和であり、n、mは画像のドット数、X
j、Y
jは座標値である。
図3に、式(9)によって求めた重心の位置をドットで示した。
【0024】
重心の位置を制御対象とする場合も、あらかじめ同定する必要があり、上述したARX法により、x
Gを要素とする状態変数ベクトルを制御対象とし、式(4)の離散時間線形時不変システムを定義して同定した。チャープ信号及び同定条件は前記と同様である。
図6に実際の出力と同定モデルの出力を示した。
図7は
図6の50〜150秒の範囲を拡大したものである。実出力と同定した出力が略一致しており、同定モデルが妥当であることを示す。
【0025】
(制御試験)
本実施形態の制御試験においては、式(4)に示す線形時不変システムに対し、目標とする水面の形状(水平面)にまで安定化させる手法としてLQG制御方法を利用した。制御対象を特定の挙動をなすように制御する手法にはさまざまな手法があり、LQG制御方法に限定されるものではない。
【0026】
LQG制御方法においては、次式(10)を評価関数Jとし、評価関数Jを最小とする状態フィードバックFを加えるように設計する。
【数10】
式(10)中のQ
f≧0、R
f>0は最適フィードバック重みである。
フィードバックゲインFは、リカッチ方程式
【数11】
の解Π>0を用いて、次式(12)によって与えられる。
【数12】
本実施形態においては、フィードバックゲインをRf=5、Qf=I×0.001として設計した。この場合のフィードバックゲインを以下に示す。
【数13】
【0027】
制御試験で使用したシステムの条件は、前述した同定条件において、水温20.8(℃)、パラフィン温度21.0(℃)である以外は同一である。
試験では、0〜15.00(s)までの間は、モータ(DCモータ)12への入力電圧を0.55sin(2πt×0.285)(V)として水槽10を揺動させ、15.00(s)経過後に制御を開始して、その後の水槽10の挙動を観察した。
【0028】
図8は、本実施形態による制御方法、重心を制御対象とする制御方法、まったく制御を行わない場合(無制御)について、指令電圧の時間変化を示す。15秒経過時までは周期的に電圧が印加されていること、本実施形態の制御方法によれば15秒経過後、徐々に指令電圧が小さくなって収束に向かっていることがわかる。重心を制御対象とする制御方法では、15秒経過後は、初期の印加電圧よりも指令電圧が抑制される傾向にあるが、本実施形態の制御方法と比較すると収束度が劣っている。制御を行わない場合は、15秒経過後の指令電圧が0(V)となる。
【0029】
図9は、上記の3方法について、多項式空間の成分a
2の時間変化、いいかえれば水槽10内の波の動き(揺れ方)を示す。本実施形態による制御方法の場合と、重心を制御対象とする制御方法の場合ともに、無制御の場合にくらべて短時間で波が収まっている(整定する)ことがわかる。
図10は、上記の3方法について、重心x
Gの時間変化を示す。この場合も、本実施形態の制御方法と、重心を制御対象とする制御方法ともに、無制御の場合にくらべて整定時間が短くなっており、スロッシングを防止する制御がなされていることがわかる。
【0030】
図11は、水槽10の前面の一部を紙で遮蔽した場合にスロッシング防止機能が働くか否かを試験した例である。水槽10の前面の左半部を紙で隠し、カメラ12からは水槽10の右半部の波の動きのみ検知できるようにして制御試験を行った。
図12は、そのときのモータの回転角度を示す。試験結果は、本実施形態の制御方法による場合は、15秒間水槽10を揺動させた後、制御開始すると徐々に波が整定されて収束したが、重心を制御対象とした場合は中途で拡散し、制御不能となった。
【0031】
この試験結果は、本実施形態の制御方法においては、特徴量を抽出して制御するという考え方によるものではないために、部分的な画像情報からも、水槽10全体の波の動きを予測して制御することが可能となり、重心位置のような特徴量を抽出して制御する方法では制御不能な場合であっても的確な制御が可能であることを示す。
【0032】
なお、上記実施形態は、画像情報から特徴量を抽出することなく挙動を制御する方法として、従来の数ベクトルの概念を利用することなく制御する一例として、スロッシング防止装置の制御を取り上げたものである。実施形態では、制御を容易にするために、水槽の動き方向を一方向に限定し、水槽中の波が2次元内において変化する設定とし、ヒルベルト空間の一つである多項式空間を想定することによって制御の可能性を検証した。その検証結果は、画像情報から特徴量を抽出することなく制御する方法が有効に利用できることを示している。
【0033】
(制御方法:行列空間の考え方による制御)
上述した実施形態では、スロッシング制御装置の制御方法として水槽内の水面の形状を多項式空間の基底の一次結合とみて制御した。以下では、線形制御理論を行列空間上に再構築する方法によって制御する方法について説明する。
【0034】
行列空間はヒルベルト空間であり、この空間における正規直交基底は以下で示される。
【数14】
行列空間内の元である行列Xと、正規直交基底e
k,lとの内積を用いることにより、行列Xは次式のように線形結合として表すことができる。
【数15】
時間変化する行列X(t)の場合、行列の成分はa
k,l(t)で示され、以下のように書き表される。
【数16】
また、行列空間は数ベクトル空間と同様にヒルベルト空間であるので、以下の線形制御理論が成り立つ。
【数17】
すなわち、カメラから得られた画像情報を行列空間内の1点としてとらえ、線形制御理論を適用して制御することが可能である。
【0035】
本実施形態においても前述したスロッシング装置を使用した。実験では、画像情報のサンプリング周期を15[fps]とし、カメラ14から得られるRGB行列(画像情報:480×640画素)をグレースケール空間に座標変換した行列((480、640)型)を、平均値をとって(6、6
)型の行列(M(t))に低次元化し、行列M(t)と行列空間の正規直交基底の内積によって得られる成分を制御量(a
k,l(t))とした。
図13に、画像情報をグレースケール化し、(6、6
)型の行列に低次元化する例をイメージ図で示す。
【0036】
行列空間の考え方を利用して制御するため、装置の同定試験を行った。
モータ12にチャープ信号(入力電圧c(t))を入力し、同定出力を行列M(t)と行列空間における正規直交基底e
k,l(t)との内積によって得られる成分a
k,l(t)とする。システムを入力1、出力36のSIMO系とし、部分空間法によって同定した。部分空間法として本実施形態ではn4sid法を利用した。使用したチャープ信号は下記のものである。
c(t)=Acos(2πf
ct+παt
2+θ)[V]
A:振幅0.6(V)、f
c:中心周波数 1.28×10
-2(Hz)、α:チャープ率9.0×10
-6(Hz/s)、
θ:初期位相-(1/2)π(rad)
【0037】
6×6の各同定出力a
k,l(t)について、モデルの出力と実出力との適合率を計算したところ、水槽10の水面の境界面に相当する4行目の成分については、適合率が64.97(%)、74.75(%)、62.36(%)、36.1(%)、67.98(%)、65.35(%)となり、モデル化が良好であることが確かめられた。
図14に、同定出力の例として、出力a
4,1(t)の実出力とモデル出力を示す。
図14(b)は、
図14(a)の100〜120秒の範囲を拡大して示したものである。
【0038】
(比較試験)
上記のスロッシング制御装置について、本実施形態の制御方法と、従来の重心に着目して制御する方法について比較実験を行った。
本実施形態による制御方法では、上述した同定結果に基づき、行列M(t)に対してLQG制御を施した。レギュレータの重みR
I=5×10
4I、Q
I=100、カルマンフィルタの重みR
g=1×10
8I、Q
g=1×10
-6Iとした。
従来法の重心を制御対象とする場合も、重心に対して同定する操作を行い、この同定結果に基づいてLQG制御を施した。レギュレータの重みR
I=1、Q
I=1、カルマンフィルタの重みR
g=1×10
3、Qg=1とした。
【0039】
比較試験は、はじめに0〜15秒間、モータ12に正弦波電圧を入力し水槽10を一方向に(直線的に)往復駆動させた後、水面を静止状態に移行させる制御を開始して推移を観察した。実験では、制御開始時に、カメラ14の視野を横切るようにカメラ14の前で手を動かし、カメラ14の視野を短時間遮るオクルージョンを行って各々の制御による挙動を調べた。
【0040】
図15は、本実施形態の制御方法の場合の行列M(t)と推定行列^M(t)のノルムを示す。往復動を開始して15秒経過した時点で行列M(t)のノルムが大きく変動している。これはオクルージョンの影響によるものである。行列M(t)のノルムが大きく変動する一方、推定行列^M(t)のノルムは、オクルージョンによってはほとんど影響されず、強制振動を停止後、短時間のうちに整定されている。
ここでノルムとは行列M(t)と目標画像との差の行列、または推定行列^M(t)と目標画像との差の行列について,全成分の二乗を足し合わせて平方根をとったものである。よって推定行列^M(t)のノルムが、オクルージョンによってはほとんど影響されないことは,オクルージョンが雑音として除去されて推定行列^M(t)を乱さないことを示す。同時に,ノルムがゼロになったとき行列M(t)または推定行列^M(t)は目標画像に整定したといえる。
【0041】
図16は、従来法の制御による場合の水面座標y(t)と推定座標^y(t)のノルムを示す。LQG制御により、水面が揺動する状態から水面が静止する状態へ移行させるように制御したが、
図16に示すように、オクルージョンの影響を受けて推定座標^y(t)が大きく変動した。つまり,従来法ではオクルージョンが雑音として除去されずに推定座標^y(t)を乱していることを示す。
【0042】
図17は、本実施形態と従来法の制御による場合のモータ12の入力電圧(制御電圧)を示す。0〜15秒間の入力電圧があらかじめ設定した正弦波電圧、15秒経過後が制御電圧である。従来法の制御の場合は、15秒経過後の電圧がオクルージョンの作用によって大きく変動したのに対し、本実施形態の制御による場合は、オクルージョンの影響をほとんど受けることなく、短時間のうちに電圧が0[V]近傍に収束し、短時間で水面の揺動が整定されている。
【0043】
図18は、本実施形態と従来法による制御状態での水槽の支持板上の移動位置を示す。水槽をはじめに往復駆動(周期的な往復動)させている状態から制御を開始すると、水面を静止させるために水槽は微妙な動きをする。
図18に示す本実施形態の制御では、制御開始後、短時間のうちに水槽は動きを停止し、水面を静止させた状態になった。一方、従来法による場合は、オクルージョンの影響によって水槽は左右(一方向)に大きく移動している。
【0044】
以上の比較実験の結果は、行列空間の考え方を利用した制御方法が、水槽の水面の整定に有効に利用できること、とくに、重心のような特徴量に着目する制御方法では、わずかなオクルージョンの影響であっても的確な制御ができなくなるのに対して、本実施形態のように特徴量に着目せずに制御する方法は、オクルージョンの影響を受けることなく、的確に制御できることが確かめられた。
【0045】
なお、制御方法の相違による制御状態を比較するため、LQG制御とP制御(比例制御)を利用して水面を静止させる実験を行った。いずれも、はじめに15秒間水槽を往復駆動させた後、カメラの視野を遮るオクルージョンを行い、その後の経過を観察した。
図19は、LQG制御とP制御でのモータの入力電圧を示す。P制御による場合はオクルージョンの作用によって制御開始後の電圧が大きく変動するのに対して、LQG制御では短時間のうちに整定されている。
図20は、支持板上の水槽の位置を示す。LQG制御による場合は制御開始とともに一定位置に整定されているのに対して、P制御では水槽の制御が的確になされずに発散している。この実験結果は、LQG制御がP制御に比較して優位であること、行列空間におけるLQG制御理論が有用であることを示す。
【0046】
以上、各実施形態において説明したように、画像情報に基づいて、特徴量を抽出することなく制御する方法は、多項式空間に限らず、行列の和とスカラー倍が定義されるベクトル空間である行列空間についても適用される。行列空間は多項式空間と同様にヒルベルト空間の一つであり、画像情報を多項式空間の1点として制御する方法と同様に、行列空間の1点として制御することが可能である。画像情報を多項式空間の1点あるいは行列空間の1点と解釈して制御する方法は、制御しようとする対象ごとに、重心位置といった特定の特徴量を見出して、その特徴量を制御しなければならない従来方法とくらべて、少なくとも、制御する対象を問わずに、画像情報をもとに汎用的に制御できる方法を提供できる点において有効であると考えられる。
なお、行列空間の考え方は、制御対象がまったく限定されずいかなる制御対象にも汎用的に利用できる、特徴量を全く抽出しないので画像処理・制御系設計の段階が試行錯誤的にならないという特徴がある。また、多項式空間の考え方は、制御対象が水槽の水面のように曲線で表されるもので多項式空間の考え方が適用しやすいものについては、効果的な制御が可能になるという特徴がある。