以下、添付図面を参照しながら本実施形態について説明する。説明の理解を容易にするため、各図面において同一の構成要素に対しては可能な限り同一の符号を付して、重複する説明は省略する。
第1実施形態について説明する。本実施形態に係る制御装置100は、動力伝達システム10を制御するための装置として構成されている。制御装置100の説明に先立ち、制御対象である動力伝達システム10の構成について先ず説明する。
図1には、動力伝達システム10の一般的な構成が模式的に示されている。本実施形態の動力伝達システム10は、力発生装置11と、減速要素12と、不感帯要素13と、捩りばね要素14と、負荷15と、を有している。
力発生装置11は、回転力を発生させる装置であって、具体的には回転電機である。力発生装置11は、制御装置100から送信される指令値に応じた回転力(つまりトルク)を発生させる。このような構成を実現するために、指令値を、力発生装置11に供給される電流に変換するためのドライバが設けられているのであるが、図1においてはその図示が省略されている。力発生装置11で生じる回転力のことを、以下では「TM」とも表記する。
力発生装置11は出力軸を有しており、当該出力軸が後述の減速要素12へと繋がっている。出力軸は、力発生装置11で発生した回転力を外部に出力するための回転軸となっている。出力軸の回転速度、具体的には出力軸の回転角周波数のことを、以下では「ωM]とも表記する。ωMは、力発生装置11の動作速度である。また、出力軸のイナーシャのことを以下では「JM」とも表記し、出力軸が回転する際に受ける粘性摩擦力の粘性摩擦係数のことを以下では「BM」とも表記する。
減速要素12は、力発生装置11の出力軸の回転速度を減速して、後述の捩りばね要素14へと出力するための装置である。減速要素12の減速比のことを、以下では「N」とも表記する。捩りばね要素14の回転速度は、力発生装置11の出力軸の回転速度の1/Nということになる。尚、減速要素12は必須のものではない。力発生装置11で発生した回転力が、後述の捩りばね要素14へと直接伝達される構成としてもよい。
不感帯要素13は、力発生装置11から捩りばね要素14までの力の伝達経路における、部材間の隙間を模式的に表すものである。このような「隙間」としては、例えば、ギヤのバックラッシやスプラインのガタ等が挙げられる。不感帯要素13が存在することで、負荷15の動作方向を反転させる場合等において、一時的に、力発生装置11で生じた力が負荷15に伝達されない状態となる。このように、力が負荷に伝達されない動作範囲のことを、以下では「不感帯」とも称する。力発生装置11の出力軸と、捩りばね要素14との間の相対的な回転角において、不感帯となる角度範囲の1/2の大きさのことを、以下では「θBL」とも表記する。すなわち、上記の相対的な回転角が最大でθBL×2となる範囲において、力が負荷15に伝達されないことがある。
捩りばね要素14は、力発生装置11で発生した回転力を負荷15に伝達するための要素であり、「伝達部材」として機能するものである。力発生装置11の駆動力を負荷15に伝達する際においては、捩りばね要素14では捩れが生じる。捩りばね要素14の捩れ剛性のことを、以下では「KS」とも表記する。
負荷15は、動力伝達システム10の駆動対象となる部分である。上記のように、力発生装置11で発生した回転力は、減速要素12や捩りばね要素14を介して負荷15に伝達され、負荷15を回転させる。負荷15の動作速度、具体的には負荷15の回転角周波数のことを、以下では「ωL」とも表記する。また、負荷15が捩りばね要素14から受ける回転力のことを以下では「TS」とも表記し、負荷15のイナーシャのことを以下では「JL0」とも表記し、負荷15が回転する際に受ける粘性摩擦力の粘性摩擦係数のことを、以下では「BL」とも表記する。更に、負荷15が外部から受ける回転力のことを、以下では「TL」とも表記する。
本実施形態では、動力伝達システム10及び制御装置100のそれぞれが、電動車両EVに搭載される装置として構成されている。力発生装置11は、本実施形態の場合、電動車両EVを走行させるための駆動力を発生させる回転電機(モータージェネレータ)である。また、捩りばね要素14に該当する部材は、本実施形態の場合、電動車両EVが有する駆動軸である。
負荷15は、本実施形態の場合、電動車両EVの車体である。尚、車体のうち実際に回転動作するのは、電動車両EVの車輪であるから、負荷15は当該車輪ということもできる。ただし、電動車両EVの通常の走行時においては、負荷15のイナーシャであるJL0として、電動車両EVの車体全体の質量を車輪のイナーシャに換算した値が用いられる。一方、電動車両EVの車輪が地面に接触していない状態で空転する場合においては、負荷15のイナーシャであるJL0として、電動車両EVが有する車輪の実際のイナーシャが用いられる。
尚、以上のような動力伝達システム10の適用はあくまで一例である。図1に示される動力伝達システム10は、電動車両EV以外の様々な装置に適用することができる。
本実施形態に係る制御装置100の構成について、図2を参照しながら説明する。制御装置100は、CPU、ROM、RAM等を有するコンピュータシステムとして構成されている。制御装置100は、その機能を表すブロック要素として、速度取得部110と、力推定部120と、外乱推定部130と、変位差推定部140と、補正部150と、を備えている。
速度取得部110は、力発生装置11の動作速度を取得する処理を行う部分である。本実施形態では、力発生装置11の回転角周波数であるωMが、上記の動作速度として速度取得部110により取得される。本実施形態では、力発生装置11に、ωMを測定するための不図示のセンサが設けられている。速度取得部110は、当該センサから出力される信号に基づいてωMの値を取得する。
このような態様に替えて、速度取得部110が、他の物理量に基づいてωMの値を推定し、これにより力発生装置11の動作速度を取得する構成としてもよい。例えば、本実施形態のように力発生装置11が回転電機である場合には、力発生装置11では出力軸の回転に伴い、誘起電圧が変動することが知られている。このため、速度取得部110が、力発生装置11における誘起電圧の変動周期に基づいて、ωMの値を推定し取得することとしてもよい。
力推定部120は、速度取得部110により取得された力発生装置11の動作速度に基づいて、力発生装置11で発生した力を推定する処理を行う部分である。力推定部120が、力発生装置11で発生した力を推定するための具体的な方法については、後に説明する。
外乱推定部130は、力推定部120により推定された力に基づいて、動力伝達システム10への外乱を推定する処理を行う部分である。後に説明するように、本実施形態の外乱推定部130は、力推定部120により推定された力と、力発生装置11へのトルク指令値(後述の「TM
**」)との差を、上記の外乱として推定する。
変位差推定部140は、力発生装置11の変位量と負荷15の変位量との差、である変位差を推定する処理を行う部分である。本実施形態の場合、上記の「変位量」とは回転角のことを示す。変位差の具体的な定義や推定方法については後に説明する。
補正部150は、外乱推定部130により推定された外乱に基づいて、力発生装置11に向けて送信される指令値への補正値を算出する処理を行う部分である。後に説明するように、補正部150により算出された補正値は、補正前の指令値から減算される。減算後の値が、力発生装置11に送信される最終的な指令値となる。力発生装置11に送信される最終的な指令値、すなわち、上記補正が行われた後の指令値のことを、以下では「TM
**」とも表記する。また、上記補正が行われる前の指令値のことを、以下では「TM
*」とも表記する。補正部150が補正値を算出するための具体的な方法については、後に説明する。
制御装置100により行われる制御の概要について説明する。力発生装置11の出力軸の回転について、運動方程式は以下の式(1)となる。
式(1)の「s」は微分演算子である。以降に示す各式においても、微分演算子として「s」の表記を用いる。
負荷15の回転について、運動方程式は以下の式(2)となる。
負荷15が捩りばね要素14から受ける回転力、すなわちT
Sは、以下の式(3)により表される。
式(3)におけるθdは、捩りばね要素14の捩れ角を表している。θdは、捩りばね要素14が捻じれる方向に変形した際の、一旦側の回転角と他端側の回転角との差(つまり位相差)、ということもできる。
θ
dは直接測定することが難しいパラメータである。特に、動力伝達システム10のように不感帯要素13が存在するシステムにおいては、θ
dの値を、ω
Mやω
Lから直接算出することも難しい。そこで、θ
dを算出可能とするために、以下の式(4)で表されるようなθ
Sを用いることとする。
上記のθSは、力発生装置11の変位量と、負荷15の変位量と、の間の差であって、先に述べた「変位差」に該当するものである。式(4)で表されるθSのことを、ここでは改めて「変位差」として定義する。
式(4)を見ると明らかなように、「力発生装置11の変位量」としては、減速要素12により減速された後の変位量が用いられる。本実施形態ように減速要素12が設けられている構成においては、力発生装置11と減速要素12とを組み合わせたものの全体を、「力発生装置」と捉えることもできる。減速要素12が設けられていない場合には、式(4)におけるNの値を1とすればよい。いずれの場合であっても、「力発生装置11の変位量」とは、力発生装置11で発生した力を伝達部材に伝達する部分の変位量を意味する。
不感帯要素13の存在により、θSとθdとの関係は、図3(A)に示されるような関係となる。θSの値が、-θBLからθBLまでの所定範囲に収まっているときには、θSの値によることなくθdは0となる。それ以外のときには、θSの増加に伴い、θdは傾きが1の直線に沿って増加する。
θ
Sの値に応じて、図3(A)のように変化するθ
dを表現するために、本実施形態では、sat(θ
S)というパラメータを用いる。図3(B)には、θ
Sと、これに応じて変化するsat(θ
S)との関係が示されている。同図に示されるように、変位差であるθ
Sが上記所定範囲の下限値(-θ
BL)よりも小さい場合には、sat(θ
S)は、θ
Sの値によって変化しない一定値(-θ
BL)となる。θ
Sが、上記所定範囲に収まっている場合には、θ
Sの増加に伴い、sat(θ
S)は傾きが1の直線に沿って増加する。つまり、sat(θ
S)はθ
Sに比例した値となる。θ
Sが、上記所定範囲の上限値(θ
BL)よりも大きい場合には、sat(θ
S)は、θ
Sの値によって変化しない一定値(θ
BL)となる。以上のように定義されるパラメータsat(θ
S)を式によって表すと、以下の式(5)となる。
sat(θ
S)を用いると、図3(A)のように変化するθ
dは、以下の式(6)により表される。
また、式(3)と式(6)から、T
Sを以下の式(7)のように表すこともできる。
これまでに説明した式(1)、式(2)、式(4)、式(5)、式(6)、式(7)によれば、ω
Mを表す式(8)、及びθ
Sを表す式(9)を、T
L=0という条件の下で、それぞれ以下のように導くことができる。
式(8)及び式(9)に示されるa
3やa
2等の係数は、以下の式(10)乃至(23)により表されるものである。
式(8)の右辺において、T
Mに掛かる係数の全体をA(s)と表記し、sat(θ
S)に掛かる係数の全体をB(s)と表記すると、式(8)は以下の式(24)のように表される。
尚、式(8)における右辺第1項のことを、以下では「ωM0」とも表記する。また、式(8)における右辺第2項のことを、以下では「ωBL」とも表記する。ωM0及びωBLはいずれも、力発生装置11の動作速度であるωMを表すパラメータである。このうち、ωM0は、力発生装置11の動作速度であるωMの基本値を示すもの、ということができる。一方、ωBLは、不感帯の存在に起因して生じるωMの誤差成分を示すもの、ということができる。
上記と同様に、式(9)の右辺において、T
Mに掛かる係数の全体をC(s)と表記し、sat(θ
S)に掛かる係数の全体をD(s)と表記すると、式(9)は以下の式(25)のように表される。
本実施形態に係る制御装置100は、式(24)及び式(25)に示される関係を用いて、ωMやθSの値を推定し、更に、TM
*から減算されるべき補正値を算出するように構成されている。
制御装置100により実行される処理の具体的な内容について説明する。図4に示されるブロック図は、制御装置100が行う制御の全体を表すものとなっている。同図のブロックB01は、上位の制御装置(不図示)から入力されるトルク指令値TM0に基づいて、フィードフォワード補償を行う部分である。ブロックB01は、TM0に基づいてTM
*を算出し出力する。尚、ブロックB01で行われるフィードフォワード補償の処理としては、公知の処理を用いることができる。
尚、フィードフォワード補償を行うブロックB01は必須ではなく、ブロックB01が存在しない態様としてもよい。この場合、上位の制御装置から、TM0が直接減算器B02へと入力されることとなる。
ブロックB01から出力されたTM
*は、減算器B02へと入力される。減算器B02では、ブロックB01から入力されたTM
*から、後述のブロックB04から入力されるTFBを減算することで、TM
**を算出する処理が行われる。TFBは、先に述べた補正部150により算出される補正値である。TM
*は補正前の指令値であり、TM
**は補正後の指令値である。つまり、減算器B02で行われる上記処理は、補正前の指令値TM
*から補正値TFBを減算することで、補正後の指令値TM
**を算出する処理である。当該処理により算出されたTM
**は、ブロックB03へと入力される。
ブロックB03は、制御対象である動力伝達システム10の実プラントを表現したモデルである。ブロックB03は、補正後のトルク指令値であるTM
**の入力を受けて、ωMを出力するブロックとして表現されている。ブロックB03から出力されるωMの値は、不図示のセンサにより測定された実測値である。ωMはブロックB04へと入力される。
ブロックB04は、上記のようにブロックB03から入力されたωMと、減算器B02から入力されたTM
**との値に基づいて、フィードバック補償を行う部分である。ブロックB04は、ωMとTM
**との両方に基づいて上記のTFBを算出し、これを減算器B02へと入力する。
図5では、ブロックB03の内容、及び、ブロックB04で行われる処理の内容のそれぞれが、更に具体的なブロック図として示されている。
先ず、ブロックB03について説明する。図5に示されるように、ブロックB03は、ブロックB11やブロックB17等を用いることにより、実プラントである動力伝達システム10を表現したモデルとなっている。図5では、力発生装置11のトルクに対する外乱が、「d」として表現されている。
外乱dは、加算器B05においてTM
**に対し加算された後、動力伝達システム10を表すブロックB03に入力される。図5では、TM
**にdを加えたものが「TM」として表現されている。このTMは、外乱であるdの影響を受けながら、力発生装置11で実際に発生するトルクを表している。
TMは、ブロックB03が有するブロックB11及びブロックB13のそれぞれに入力される。ブロックB11は、式(24)におけるA(s)を表したブロック、すなわち、動力伝達システム10における、TMから式(24)の右辺第1項(つまりωM0)への変換を表現したブロックである。ブロックB11における上記変換で得られた値は、後述の加算器B12へと入力される。
ブロックB13は、式(25)におけるC(s)を表したブロック、すなわち、動力伝達システム10における、TMから式(25)の右辺第1項への変換を表現したブロックである。ブロックB13における上記変換で得られた値は、加算器B14へと入力される。
加算器B14では、ブロックB13から入力される値に対し、後述のブロックB16から出力される値が加算される。前者はC(s)TMを表しており、後者はD(s)sat(θS)を表している。式(25)から明らかなように、加算器B14における上記加算により得られる値は、変位差であるθSとなる。θSは、加算器B14からブロックB15へと入力される。
ブロックB15は、式(5)を表したブロック、すなわち、動力伝達システム10における、θSからsat(θS)への変換を表現したブロックである。ブロックB15における上記変換で得られた値は、ブロックB16と、後述のブロックB17へと入力される。
ブロックB16は、式(25)におけるD(s)を表したブロック、すなわち、動力伝達システム10における、θSから式(25)の右辺第2項への変換を表現したブロックである。ブロックB16における上記変換で得られた値は、加算器B14へと入力された後、先に述べたようにC(s)TMに対し加算される。
ブロックB17は、式(24)におけるB(s)を表したブロック、すなわち、動力伝達システム10における、θSからから式(24)の右辺第2項(つまりωMBL)への変換を表現したブロックである。ブロックB17における上記変換で得られた値は、加算器B12へと入力される。
加算器B12では、ブロックB11から入力されるωM0に対し、ブロックB17から出力されるωMBLが加算される。式(24)から明らかなように、加算器B12における上記加算により得られる値は、力発生装置11の動作速度であるωMとなる。以上のように、図5のブロックB03では、動力伝達システム10におけるTMからωMへの変換が表現されている。
引き続き図5を参照しながら、ブロックB04について説明する。先に述べたように、ブロックB04は、制御装置100が行うフィードバック補償のための処理内容を表している。ブロックB04には、加算器B12からωMが入力される。このωMは、速度取得部110により取得された実際のωMである。ωMは、ブロックB04が有する減算器B22へと入力される。
減算器B22では、入力されたω
Mに対し、後述のブロックB27から出力されるω
MBLの推定値を減算する処理が行われる。ω
M0及びω
MBLの定義から明らかなように、ω
M0の推定値は、ω
Mとω
MBLの推定値とを用いて以下の式(26)で表される。このため、減算器B22では、上記処理によりω
M0の推定値が算出されることとなる。
減算器B22において算出されたωM0の推定値は、ブロックB21へと入力される。ブロックB21は、式(24)のA(s)による変換、の逆変換を行うブロックである。当該処理は、式(24)のA(s)の逆数による演算を行う処理、ということもできる。ブロックB21では、入力されたωM0の推定値に対して上記逆変換が行われる。
ω
M0の定義から明らかなように、T
Mの推定値は、ω
M0の推定値を用いて以下の式(27)で表される。このため、ブロックB21では、上記の変換によりT
Mの推定値が算出されることとなる。
ブロックB21で算出されたTMの推定値は、ブロックB23と、後述の減算器B28とのそれぞれに入力される。
ブロックB23では、入力されたTMの推定値に対し、式(25)のC(s)による演算を施す処理が行われる。当該処理により得られた値、すなわちC(s)TMは、ブロックB23から加算器B24へと入力される。
加算器B24では、ブロックB23から入力されるC(s)TMに対し、後述のブロックB26から入力されるD(s)sat(θS)を加算する処理が行われる。式(25)から明らかなように、当該処理により得られる値はθSの推定値、すなわち変位差の推定値となる。以上のようにθSの値を推定する処理は、変位差推定部140によって行われる。加算器B24において算出されたθSの推定値は、ブロックB25へと入力される。
ブロックB25では、入力されたθSの推定値に基づいて、sat(θS)の推定値を算出する処理が行われる。当該処理は式(5)を用いて行われる。
ブロックB25で算出されたsat(θS)の推定値は、ブロックB26と、後述のブロックB27とのそれぞれに入力される。ブロックB26では、入力されたsat(θS)に対し、式(25)のD(s)による演算を施す処理が行われる。当該処理により得られた値、すなわちD(s)sat(θS)は、ブロックB26から加算器B24へと入力された後、先に述べたようにθSの推定値の算出に供される。
ブロックB27では、入力されたsat(θS)に対し、式(24)のB(s)による演算を施す処理が行われる。
ω
MBLの定義から明らかなように、ω
MBLの推定値は、B(s)とsat(θ
S)の推定値とを用いて以下の式(28)で表される。このため、ブロックB27では、上記の処理によりω
MBLの推定値が算出されることとなる。
ωMBLの推定値は、ブロックB27から減算器B22へと入力された後、先に述べたようにωM0の推定値の算出に供される。
図5において、符号「B20」が付された点線により囲まれた範囲の全体は、動力伝達システム10を表すブロックB03とは逆の変換を行うことにより、ωMをTMの推定値に変換する処理を行うブロックとなっている。当該ブロックのことを、以下では「ブロックB20」とも表記する。ブロックB20は、動力伝達システム10の「プラント逆モデル」の演算を行うブロックともいうことができる。ブロックB20で示される演算は、力推定部120により行われる。
以上のように、制御装置100の力推定部120は、速度取得部110により取得されたωMに基づいて、TMの値を推定する処理を、ブロックB20で表されるモデルを用いることによって行う。また、ブロックB20で表される上記モデルは、力発生装置11で発生した力が負荷に伝わらない不感帯、の存在を表現したモデルとなっている。
「不感帯の存在を表現したモデル」とは、本実施形態の場合、図3(A)のように変化するθd、もしくは図3(B)のように変化するsat(θS)、のうちの少なくとも一方を内部で算出可能なモデル、ということもできる。ただし、不感帯の存在の具体的な表現方法は、上記とは異なるものであってもよい。
力推定部120により算出されたTMの推定値は、ブロックB04が有する減算器B28に入力される。減算器28では、ブロックB21から入力されたTMの推定値から、トルクの指令値であるTM
**を減算する処理が行われる。
先に述べたように、T
Mは、T
M
**に外乱dを加えたものであるから、dの推定値は以下の式(29)により表される。このため、減算器28では、上記の処理によりdの推定値が算出されることとなる。
このように、TMの推定値とTM
**との差を、外乱dの推定値として算出する処理は、外乱推定部130により行われる。尚、dの推定値を算出する際に、TMの推定値を用いて減算される対象は、本実施形態のようにTM
**であってもよいが、TM
*やTM0等であってもよい。いずれの場合であっても、外乱推定部130によるdの推定値の算出は、力推定部120により算出されたTMの推定値に基づいて行われる。
補正部150は、外乱dの推定値に基づいて、補正値であるTFBを算出する。本実施形態では、外乱推定部130により推定されたdの値が、そのまま補正値TFBとして算出される。図5のブロック図に示されるように、減算器B28の演算により得られた外乱dの推定値は、補正値であるTFBとして減算器B02に入力され、TM
**の算出に供される。
本実施形態では、不感帯の存在を表現したモデルを用いてTMの推定値が算出され、当該推定値に基づいて外乱d及び補正値TFBがそれぞれ算出される。このため、不感帯を通過するような動作時においても、正確なTMの推定値に基づいて適切なTFBを算出し、伝達部材等における振動の発生を十分に抑制することができる。
本実施形態の変位差推定部140は、力推定部120により推定された力、すなわち、ブロックB21から出力されるTMの推定値を用いて、加算器B24等により変位差θSを推定する。TMは、上記のように不感帯を考慮しながら比較的正確に推定された値であるから、TFBをより適切な値として算出することができる。
図6(A)、(C)、(E)には、従来の制御が行われた場合における、各測定値の時間変化の例が示されている。このうち、図6(A)に示されるのは、力発生装置11で生じる回転力の実測値、すなわちTMの時間変化の例である。図6(C)に示されるのは、負荷15が捩りばね要素14から受ける回転力、すなわちTSの時間変化の例である。図6(E)に示されるのは、力発生装置11の動作速度、すなわちωMの時間変化の例である。
図6(A)、(C)、(E)に示される例においては、時刻t0に、それまで減速していた電動車両EVを加速へと切り換える制御が行われている。図6(C)に示される点線DL3は、上位から送信されるトルク指令値(つまりTM0)の時間変化を示している。
図6(C)に示されるように、時刻t0以降においてTSは増加し、時刻t1において一旦0となる。その後、TSは、時刻t1から時刻t2までの期間において0のままとなっており、時刻t2以降においては再び増加している。このように、時刻t1から時刻t2までの期間においてTSの値が0となるのは、動力伝達システム10が不感帯を有していることに起因している。従来の制御においては、このような不感帯の存在が考慮されていないので、図6(A)に示されるTM、図6(C)に示されるTS、及び図6(E)に示されるωMのそれぞれが、時刻t0以降において比較的大きく振動してしまっている。
図6(A)に示される点線DL1は、減速から加速への切り換えが行われた後、TMの振動が減衰し概ね一定となった状態における、TMの平均値を示している。従来の制御においては、TMの値が点線DL1を上回る程度に大きく振動してしまっている。
図6(B)、(D)、(F)には、制御装置100によりこれまで説明した制御が行われた場合における、各測定値の時間変化の例が示されている。このうち、図6(B)に示されるのは、力発生装置11で生じる回転力の実測値、すなわちTMの時間変化の例である。図6(D)に示されるのは、負荷15が捩りばね要素14から受ける回転力、すなわちTSの時間変化の例である。図6(F)に示されるのは、力発生装置11の動作速度、すなわちωMの時間変化の例である。
図6(B)、(D)、(F)に示される例においても、先の従来例と同様に、時刻t0に、それまで減速していた電動車両EVを加速へと切り換える制御が行われている。図6(D)に示される点線DL4は、上位から送信されるトルク指令値(つまりTM0)の時間変化を示している。当該時間変化は、図6(C)の点線DL3で示されるものと同じ時間変化となっている。
図6(D)の例でも、時刻t1から時刻t2までの期間において、不感帯の影響によりTSの値が0となっている。しかしながら、図6(A)と図6(B)、図6(C)と図6(D)、及び図6(E)と図6(F)をそれぞれ比較すると明らかなように、本実施形態の制御によれば、TM、TS、ωMのそれぞれで生じる振動が、従来に比べて十分に抑制されていることがわかる。
図6(B)に示される点線DL2は、減速から加速への切り換えが行われた後、TMの振動が減衰し概ね一定となった状態における、TMの平均値を示している。本実施形態の制御においては、TMの振動が充分に抑制される結果、TMの値が常に点線DL2以下に抑えられている。
第2実施形態について説明する。以下では、第1実施形態と異なる点について主に説明し、第1実施形態と共通する点については適宜説明を省略する。
図7に示されるように、本実施形態に係る制御装置100は、その機能を表すブロック要素として、フィルタ処理部160を更に備えている。フィルタ処理部160は、外乱推定130部により推定された外乱dに対し、フィルタ処理を施す部分である。
フィルタ処理部160が行うフィルタ処理の内容について、図8を参照しながら説明する。図8に示されるブロック図は、本実施形態に係る制御装置100が行う制御の内容を、図5と同様の方法により描いたものである。本実施形態では、減算器B28で算出されたdの推定値が、減算器B28と減算器B02との間に配置されたブロックB29へと入力される。
ブロックB29は、減算器B28から入力されたdの推定値に対し、フィルタ処理部160によるフィルタ処理を施す部分である。当該処理を表す伝達関数E(s)は、以下の式(30)により表されるものである。
式(30)における「ω
r」は、捩りばね要素14の振動における共振周波数であり、以下の式(31)により表されるものである。
上記のような伝達関数E(s)を経ることにより、減算器B28からブロックB29に入力されたdの推定値は、共振周波数であるωr以外の周波数からなる振動成分を減衰させた後、補正値TFBとして、ブロックB29から減算器B02へと入力されることとなる。換言すれば、ブロックB29から出力されたdの推定値のうち、概ね共振周波数ωrの周波数成分のみがブロックB29を通過して、減算器B02においてTM
**の算出に供される。このように、フィルタ処理部160によるフィルタ処理では、概ね共振周波数ωrの周波数成分のみを通過させるようなバンドパス特性を持つフィルタが用いられる。
本実施形態の補正部150は、フィルタ処理部160による上記フィルタ処理が施された後の外乱dに基づいて、指令値への補正値TFBを算出することとなる。共振周波数ωrの周波数成分のみに基づく補正値TFBにより補正が行われるので、制御の応答性を向上させることができる。尚、フィルタ処理に用いられる伝達関数E(s)としては、式(30)により表されるものとは異なる関数であってもよい。
第3実施形態について説明する。以下では、上記の第2実施形態と異なる点について主に説明し、第2実施形態と共通する点については適宜説明を省略する。
図9に示されるブロック図は、本実施形態に係る制御装置100が行う制御の内容を、図8と同様の方法により描いたものである。本実施形態では、ブロックB23にTMの推定値が入力されず、替わりにTM
*が入力される。つまり、本実施形態のブロックB23には、補正前のトルク指令値が入力される。
ブロックB23では、入力されたTM
*に基づいてC(s)TMの値を算出する処理が行われる。その算出方法は、図5を参照しながら説明した第1実施形態の算出方法において、TMの推定値をTM
*に置き換えたものに等しい。
以上のように、本実施形態の変位差推定部140は、補正値TFBにより補正される前の指令値、すなわちTM
*を用いて変位差θSを推定する。TM
*は、ブロックB04における演算により算出されるのではなく、外部から入力される値である。このため、変位差推定部140は、演算による時間遅れの影響を受けることなく、安定的に変位差θSを推定することができる。
尚、以上のような方法による変位差θSの推定は、ブロックB29が設けられていない第1実施形態に適用することもできる。
第4実施形態について説明する。以下では、第2実施形態と異なる点について主に説明し、第2実施形態と共通する点については適宜説明を省略する。
図10に示されるブロック図は、本実施形態に係る制御装置100が行う制御の内容を、図8と同様の方法により描いたものである。本実施形態では、ブロックB23にTMの推定値が入力されず、替わりにTM
**が入力される。つまり、本実施形態のブロックB23には、補正後のトルク指令値が入力される。
ブロックB23では、入力されたTM
**に基づいてC(s)TMの値を算出する処理が行われる。その算出方法は、図5を参照しながら説明した第1実施形態の算出方法において、TMの推定値をTM
**に置き換えたものに等しい。
以上のように、本実施形態の変位差推定部140は、補正値TFBにより補正された後の指令値、すなわちTM
**を用いて変位差θSを推定する。このため、変位差推定部140は、演算による時間遅れの影響を受けることなく、安定的に変位差θSを推定することができる。また、TM
**は、実プラントを示すブロックB03に入力されるトルク指令値であるから、TMの推定値に比べて、実際のトルクにより近い値となっている。このため、本実施形態では更に正確に変位差θSを推定することができる。
尚、以上のような方法による変位差θSの推定は、ブロックB29が設けられていない第1実施形態に適用することもできる。
第5実施形態について説明する。以下では、第1実施形態と異なる点について主に説明し、第1実施形態と共通する点については適宜説明を省略する。
本実施形態において、制御装置100により実行される処理の内容を示すブロック図は、図5に示されるものと同じである。このため、以下では図5を参照しながら、本実施形態における制御の内容について説明する。
先に述べたように、図5のブロックB11は、動力伝達システム10の実プラントを表現したモデル、であるブロックB03が有するものである。ブロックB11の処理を示す伝達関数であるA(s)は、力発生装置11で発生した力であるT
Mから、力発生装置11の動作速度であるω
M0への変換を表す伝達関数、ということができる。このような伝達関数は、以下の式(32)を用いて表すことができる。
式(32)におけるω
rは、以下の式(33)により表される周波数である。
式(32)におけるξrは、伝達関数A(s)の分母の式中において、2ωrsの項の係数として現れる減数率である。また、式(32)におけるξaは、伝達関数A(s)の分子の式中において、2ωasの項の係数として現れる減数率である。
先に述べたように、図5のブロックB21は、A(s)による変換、の逆変換を行うブロックである。このような伝達関数A(s)
-1は、以下の式(34)を用いて表すことができる。
式(34)におけるξamは、伝達関数A(s)-1の分母の式中において、2ωasの項の係数として現れる減数率である。また、式(34)におけるξrmは、伝達関数A(s)-1の分子の式中において、2ωrsの項の係数として現れる減数率である。
伝達関数A(s)-1の定義に鑑みれば、式(32)の右辺は、式(34)の右辺の逆数となる。このため、第1実施形態の場合には、ξrとξrmとは互いに等しくなり、ξaとξamとは互いに等しくなる。
これに対し、本実施形態では、式(34)におけるξrmの値を、式(32)におけるξrの値よりも大きな値に変更したものが、ブロックB21の演算を表す伝達関数A(s)-1として設定されている。
このような構成においては、プラント逆モデルであるブロックB20を設定するにあたり、モデル化の誤差が生じたとしても、振動抑制の効果を十分に得ることができる。
図11に示されるのは、制御装置100により行われる制御における入力信号の周波数(横軸)と、出力信号のゲイン(縦軸)との関係、すなわち周波数特性を示すボード線図である。線L1は、ブロックB04によるフィードバック補償が行われない場合における周波数特性を示している。線L2は、第1実施形態のように、ξrm=ξrとなるようξrmの値を設定した場合における周波数特性を示している。線L3は、本実施形態のように、ξrm>ξrとなるようξrmの値を設定した場合における周波数特性を示している。図11から明らかなように、本実施形態では、ξrmの値をξrよりも大きな値に設定することで、共振周波数ωrの近傍におけるゲインを抑制し、より安定的な制御を行うことが可能となっている。
ここで、動力伝達システム10の実プラントを表現したモデル(つまりブロックB03)において、力発生装置11で発生した力から、力発生装置11の動作速度への変換を表す伝達関数A(s)の、分母の式中に現れる減衰率ξrを、以下では「実減衰率」と定義する。
ブロックB20が有するブロックB21は、力発生装置11の動作速度であるωM0から、力発生装置11で発生した力(つまりTMの推定値)へと変換する処理を行う部分であり、本実施形態における「変換部」に該当する。変換部は、力推定部120の一部として構成されている。本実施形態では、変換部における変換を表す伝達関数A(s)-1の、分子の式中に現れる減衰率ξrmが、実減衰率であるξrよりも大きな値として設定されている。このような構成により、動力伝達システム10における振動を更に抑制することが可能となっている。
以上に説明した制御、すなわち、A(s)-1の減衰率ξrmをξrよりも大きな値に設定して行われる制御は、これまで説明した第2実施形態等のように、ブロックB29が設けられた構成においても適用することができる。
第6実施形態について説明する。以下では、第2実施形態と異なる点について主に説明し、第2実施形態と共通する点については適宜説明を省略する。図12に示されるブロック図は、本実施形態に係る制御装置100が行う制御の内容を、図8と同様の方法により描いたものである。
本実施形態のブロックB21では、A(s)-1を用いてωM0を変換したものを、更に積分する処理が行われる。
T
Mの値を積分したものを、以下では「T
Mint」と表記する。T
Mintは、力発生装置11で発生した回転力の積分値であり、本実施形態における「第1積分値」に該当する。式(27)の両辺を積分すると、T
Mintを表す以下の式(35)を得ることができる。
式(35)から明らかなように、本実施形態のブロックB20では、ブロックB21における上記処理により、TMintが算出されることとなる。つまり、本実施形態の力推定部120は、力発生装置11で発生した力を、その積分値である第1積分値(TMint)として推定するように構成されている。
TMintの推定値は、ブロックB21から、減算器B28及びブロックB23のそれぞれに入力される。本実施形態のブロックB23では、TMintに対しC(s)の演算を行い、更に微分する処理が行われる。当該処理により得られた値、すなわちsC(s)TMintは、ブロックB23から加算器B24へと入力される。加算器B24では、sC(s)TMintに対し、D(s)sat(θS)を加算する処理が行われる。
T
Mintを用いると、式(25)は、以下の式(36)に変換することができる。
式(36)から明らかなように、加算器B24における上記処理によれば、θSの推定値が算出されることとなる。θSは、これまでの例と同様に、加算器B24からブロックB25へと入力される。
本実施形態では、減算器B02と減算器B28との間に、ブロックB30が設けられている。ブロックB30では、減算器B02から入力されるT
M
**を積分する処理が行われる。T
M
**を積分したものを、以下では「T
Mint
**」と表記する。その定義から明らかなように、T
Mint
**は以下の式(37)により表される。
算出されたTMint
**は、ブロックB30から減算器B28へと入力される。減算器B28では、TMintの推定値から、TMint
**を減算する処理が行われる。
dの値を積分したものを、以下では「d
int」と表記する。d
intは、動力伝達システム10への外乱の積分値であり、本実施形態における「第2積分値」に該当する。式(29)の両辺を積分すると、d
intの推定値を表す以下の式(38)を得ることができる。
式(38)から明らかなように、本実施形態では、減算器B28における上記処理により、dintの推定値が算出されることとなる。つまり、本実施形態の外乱推定部130は、外乱dの値を、その積分値である第2積分値(dint)として推定するように構成されている。
減算器B28で算出されたdintの推定値は、ブロックB29へ入力される。本実施形態のブロックB29では、dintの推定値に対しE(s)の演算を行い、更に微分する処理が行われる。当該処理により得られた値、すなわちsE(s)dintは、第2積分値であるdintを微分した値、すなわち外乱dの推定値に対し、E(s)によるフィルタ処理を施したものに等しくなる。ブロックB29では、dintを微分して得られる値を用いて、E(s)によるフィルタ処理の演算が行われる、ということもできる。
このようにして得られた値は、第2実施形態におけるTFBに概ね等しい値となる。TFBは、本実施形態でもブロックB29から減算器B02に入力され、TM
**の算出に供される。TFBを上記のように算出する処理は、本実施形態でも補正部150により行われる。
以上のように、本実施形態の外乱推定部130は、第1積分値(TMint)に基づいて、外乱dを第2積分値(dint)として推定する。また、本実施形態の補正部150は、第2積分値(dint)を微分して得られる値を用いて、補正値であるTFBを算出する。
このような構成としたことの利点について説明する。式(32)を変形すれば、ブロックB21の伝達関数を表す以下の式(39)を得ることができる。
式(25)のC(s)は、先に述べたξ
r等を用いて、以下の式(40)により表される。
また、式(40)の両辺を微分すれば、ブロックB23の伝達関数を表す以下の式(41)を得ることができる。
更に、式(30)の両辺を微分すれば、ブロックB29の伝達関数を表す以下の式(42)を得ることができる。
これまでに説明した他の実施形態のブロックB21は、式(32)で表されるA(s)の逆数であるから、分子におけるsの次数の方が、分母におけるsの次数よりも大きくなっていた。つまり、第2実施形態等におけるブロックB21の演算は、微分演算となっていた。よく知られているように、微分演算のブロックが存在すると、制御が不安定になる傾向がある。
これに対し、本実施形態におけるブロックB21の伝達関数では、式(39)に示されるように、分子におけるsの次数と、分母におけるsの次数とが等しくなっている。また、ブロックB23やブロックB29等、図12に示される他の全てのブロックでも、分子におけるsの次数が、分母におけるsの次数以下となっている。その結果、微分演算となるブロックが存在しないので、本実施形態では制御を安定的に行うことが可能となっている。
尚、以上のような処理、すなわちTMintやdint等を用いる処理は、第2実施形態のみならず、これまで説明したいずれの実施形態にも適用することができる。尚、第1実施形態のように、ブロックB29を有さない構成に適用する場合には、図12におけるブロックB29の位置に、微分のみを行うブロックを設けることとすればよい。
第7実施形態について説明する。以下では、第2実施形態と異なる点について主に説明し、第2実施形態と共通する点については適宜説明を省略する。
図13に示されるように、本実施形態に係る制御装置100は、その機能を表すブロック要素として、スリップ率取得部170を更に備えている。スリップ率取得部170は、電動車両EVにおける車輪のスリップ率を取得する部分である。スリップ率のことを、以下では「λ」とも表記する。また、車輪のうち路面に接する部分の、車輪以外の車体部分に対する相対速度のことを、以下では「VL1」と表記する。更に、電動車両EVの車速を、以下では「V」と表記する。
電動車両EVの駆動時においては、スリップ率λは以下の式(43)で表される。
一方、電動車両EVの制動時においては、スリップ率λは以下の式(44)で表される。
上記のVL1は、電動車両EVが有する複数の車輪のうち、駆動輪の回転数を不図示のセンサで検出した上で、当該回転数に基づいて算出することができる。また、上記のVは、電動車両EVが有する複数の車輪のうち、従動輪の回転数を不図示のセンサで検出した上で、当該回転数に基づいて算出することができる。スリップ率取得部170は、VL1及びVのそれぞれを上記のように取得した上で、λを所定の周期で繰り返し算出し取得する。
電動車両EVの駆動力、すなわち、車輪が路面に対して加える力を「F」と表記し、電動車両EVの全体の質量を「M」と表記すると、以下式(45)で表される運動方程式が成立する。
また、電動車両EVの車輪の半径を「r」と表記すると、上記のFは以下の式(46)で表される。
これまでに説明した式(1)、式(2)、式(4)、式(5)、式(6)、式(7)、式(43)、式(44)、式(45)、式(46)によれば、以下の式(47)を導くことができる。
式(47)におけるJ
L(λ)は、電動車両EVの車体全体の質量を車輪のイナーシャに換算した値を、λの関数として表したものである。J
L(λ)は以下の式(48)で表される。
尚、式(48)における「JL0」は、ここでは車輪の実際のイナーシャを表すものとして用いられている。
式(47)におけるB
L1(λ)は、電動車両EVの車輪が受ける粘性摩擦力の粘性摩擦係数を、λの関数として表したものである。B
L1(λ)は以下の式(49)で表される。
尚、式(51)における「BL」は、スリップ率λが0の場合における粘性摩擦係数である。
これまでに説明した式(1)、式(2)、式(4)、式(5)、式(6)、式(7)に加え、上記の式(47)を用いれば、ω
Mを表す式(50)、及びθ
Sを表す式(51)を、それぞれ以下のように導くことができる。
式(50)及び式(51)に示されるa3やa2等の係数は、先に挙げた式(10)乃至(23)を用いて表されるものである。ただし、本実施形態では、各式中のJL0をJL(λ)に、BLをBL1(λ)に、それぞれ置き換えたものが用いられる。
式(50)の右辺において、T
Mに掛かる係数の全体をA(s,λ)と表記し、sat(θ
S)に掛かる係数の全体をB(s,λ)と表記すると、式(50)は以下の式(52)のように表される。
同様に、式(51)の右辺において、T
Mに掛かる係数の全体をC(s,λ)と表記し、sat(θ
S)に掛かる係数の全体をD(s,λ)と表記すると、式(51)は以下の式(53)のように表される。
本実施形態に係る制御装置100は、式(52)及び式(53)に示される関係を用いて、ωMやθSの値を推定するように構成されている。
式(31)において、J
L0を式(48)のJ
L(λ)に置き換えると、共振周波数ω
rは以下の式(54)のように表される。
図14を参照しながら、本実施形態において実行される処理について説明する。図14に示されるブロック図は、本実施形態に係る制御装置100が行う制御の内容を、図8と同様の方法により描いたものである。
本実施形態のブロックB21では、入力されたωM0の推定値に対し、式(52)のA(s,λ)の逆数による演算を施す処理が行われる。また、本実施形態のブロックB27では、入力されたsat(θS)の推定値に対し、式(52)のB(s,λ)による演算を施す処理が行われる。更に、本実施形態のブロックB29では、入力されたdの推定値に対し、E(s,λ)によるフィルタ処理を施す処理が行われる。E(s,λ)とは、式(30)の右辺におけるωrを、全て式(54)のωr(λ)に置き換えることで、式(30)のE(s)をλの関数として表現したものである。
本実施形態のブロックB23では、入力されたTMの推定値に対し、式(53)のC(s,λ)による演算を施す処理が行われる。また、ブロックB26では、入力されたsat(θS)の推定値に対し、式(53)のD(s,λ)による演算を施す処理が行われる。
以上のように、本実施形態では、ブロックB21、B27、B29、B23、B26におけるそれぞれの伝達関数が、スリップ率取得部170で取得されたλの値によって動的に変更される。それぞれの伝達関数は、TFBの算出に必要な「制御パラメータ」ということができる。
λの値により各伝達関数を変更する処理は、補正部150によってなされる。つまり、本実施形態の補正部150は、スリップ率λに応じて、補正値であるTFBの算出に必要な制御パラメータを変化させるように構成されている。このため、車輪のスリップ状態に応じた正確な補正値TFBを算出し、振動の発生を更に抑制することができる。
尚、フィルタ処理部160、スリップ率取得部170、ブロックB21、B27、B29、B23、B26は、これまでに説明した他の実施形態に適用してもよい。当該適用に当たっては、フィルタ処理部160及びスリップ率取得部170の両方を適用するのではなく、スリップ率取得部170のみを適用することとしてもよい。
以上の各実施形態においては、動力伝達システム10が、力発生装置11の回転力により、負荷15を回転運動させるものとして構成されている場合の例について説明した。しかしながら、制御対象である動力伝達システムは、力発生装置の並進力により、負荷15を並進運動させるものとして構成されているものであってもよい。
図15には、後者のような構成の動力伝達システム20の例が模式的に示されている。動力伝達システム20は、力発生装置21と、減速要素22と、不感帯要素23と、ばね要素24と、負荷25と、を有している。このような構成の動力伝達システム20は、例えば、工作機械等に用いられる。
力発生装置21は、並進力を発生させる装置であって、例えばリニアモーターである。力発生装置21は、制御装置100から送信される指令値に応じた並進力を発生させる。このような構成を実現するために、指令値を、力発生装置21に供給される電流に変換するためのドライバが設けられているのであるが、図15においてはその図示が省略されている。力発生装置21で生じる並進力のことを、以下では「FM」とも表記する。
力発生装置21は出力軸を有しており、当該出力軸が後述の減速要素22へと繋がっている。出力軸は、力発生装置21で発生した並進力を外部に出力する部分となっている。出力軸の並進速度のことを、以下では「VM]とも表記する。VMは、力発生装置21の動作速度である。また、出力軸の質量のことを以下では「MM」とも表記し、出力軸が並進する際に受ける粘性摩擦力の粘性摩擦係数のことを以下では「CM」とも表記する。
減速要素22は、力発生装置21の出力軸の並進速度を減速して、後述のばね要素24へと出力するための装置である。減速要素22の減速比のことを、これまでと同様に「N」とも表記する。ばね要素24の並進速度は、力発生装置21の出力軸の並進速度の1/Nということになる。尚、減速要素22は必須のものではない。力発生装置21で発生した並進力が、後述のばね要素24へと直接伝達される構成としてもよい。
不感帯要素23は、力発生装置21からばね要素24までの力の伝達経路における、部材間の隙間を模式的に表すものである。このような「隙間」としては、例えば、ギヤのバックラッシ等が挙げられる。不感帯要素23が存在することで、負荷25の動作方向を反転させる場合等において、一時的に、力発生装置21で生じた力が負荷25に伝達されない状態となる。このように、動力伝達システム20においても、動力伝達システム10と同様に不感帯が存在する。力発生装置21の出力軸と、ばね要素24との間の相対的な距離において、不感帯となる範囲の1/2の大きさのことを、以下では「xBL」とも表記する。すなわち、上記の相対的な距離が最大でxBL×2となる範囲において、力が負荷25に伝達されないことがある。
ばね要素24は、力発生装置21で発生した並進力を負荷25に伝達するための要素である。ばね要素24は、この例における「伝達部材」に該当する。力発生装置21の駆動力を負荷25に伝達する際においては、ばね要素24では並進方向に沿った変形が生じる。ばね要素24の剛性のことを、これまでと同様に「KS」とも表記する。
負荷25は、動力伝達システム20の駆動対象となる部分である。上記のように、力発生装置21で発生した並進力は、減速要素22やばね要素24を介して負荷25に伝達され、負荷25を並進運動させる。負荷25の動作速度のことを、以下では「VL]とも表記する。また、負荷25がばね要素24から受ける並進力のことを以下では「FS」とも表記し、負荷25の質量のことを以下では「ML」とも表記し、負荷25が並進運動する際に受ける粘性摩擦力の粘性摩擦係数のことを、以下では「CL」とも表記する。更に、負荷25が外部から受ける並進力のことを、以下では「FL」とも表記する。
動力伝達システム20を制御するにあたり用いられる数式について説明する。
力発生装置21の出力軸の動作について、運動方程式は以下の式(55)となる。
負荷25の動作について、運動方程式は以下の式(56)となる。
ここで、力発生装置21の変位量と、負荷25の変位量と、の間の差のことを、以下では「x
S」と表記する。x
Sは、これまでのθ
Sのような「変位差」に該当するものである。
ばね要素24の変形量を「x
d」とすると、x
dとF
Sとの関係は、以下の式(57)により表される。
不感帯要素23の存在により、xSとxdとの関係は、図3(A)に示されるθSとθdとの関係と同様の関係となる。
当該関係を表すために、以下の式(58)で示されるsat(x
S)が用いられる。
sat(x
S)を用いると、x
Sとx
dとの関係は以下の式(59)により表される。
変位差であるx
Sは、V
MとV
Lとを用いて、以下の式(60)により表される。
動力伝達システム20に対しても、以上に挙げた式(55)乃至(60)を用いることで、制御装置100はこれまでに説明したものと同様の制御を適用することができる。式(55)、(56)、(57)、(58)、(59)、(60)は、それぞれ、式(1)、(2)、(3)、(5)、(6)、(4)に対応するものであり、VMとωMとのような各要素の対応関係も明らかであることから、動力伝達システム20の詳細な制御については説明を省略する。
以上、具体例を参照しつつ本実施形態について説明した。しかし、本開示はこれらの具体例に限定されるものではない。これら具体例に、当業者が適宜設計変更を加えたものも、本開示の特徴を備えている限り、本開示の範囲に包含される。前述した各具体例が備える各要素およびその配置、条件、形状などは、例示したものに限定されるわけではなく適宜変更することができる。前述した各具体例が備える各要素は、技術的な矛盾が生じない限り、適宜組み合わせを変えることができる。
本開示に記載の制御装置及び制御方法は、コンピュータプログラムにより具体化された1つ又は複数の機能を実行するようにプログラムされたプロセッサ及びメモリを構成することによって提供された1つ又は複数の専用コンピュータにより、実現されてもよい。本開示に記載の制御装置及び制御方法は、1つ又は複数の専用ハードウェア論理回路を含むプロセッサを構成することによって提供された専用コンピュータにより、実現されてもよい。本開示に記載の制御装置及び制御方法は、1つ又は複数の機能を実行するようにプログラムされたプロセッサ及びメモリと1つ又は複数のハードウェア論理回路を含むプロセッサとの組み合わせにより構成された1つ又は複数の専用コンピュータにより、実現されてもよい。コンピュータプログラムは、コンピュータにより実行されるインストラクションとして、コンピュータ読み取り可能な非遷移有形記録媒体に記憶されていてもよい。専用ハードウェア論理回路及びハードウェア論理回路は、複数の論理回路を含むデジタル回路、又はアナログ回路により実現されてもよい。