説明

制御装置、制御プログラムおよび記録媒体

【課題】LUT30の参照値の数を減らした場合でも出力値の精度を劣化させず且つ計算コストを増加させない制御装置1等を提供する。
【解決手段】時刻kで入力された引数x(参照値xとxi+1との間に存在)に対して平均を0とする所定の確率分布に従うノイズnを付加し新たな引数xnとする。引数xnに最も近い参照値(例えばxi+1)をLUT30から検索する。参照値xi+1に対応する出力値yi+1を引数xに対応する出力値yとして制御対象40側へ出力する。多次元LUTを用いた場合についても同様である。引数xが(x+xi+1)/2より参照値xi+1側へΔi+1だけ離れている場合、出力値yがyi+1となる確率Pr(y=yi+1)=Pr(n<Δi+1)となる。ノイズnが平均を0とする正規分布又は一様分布等の場合、出力値yの平均E{y}はガウス補間又は線形補間を行った場合と同様になる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、制御対象に対する制御の一周期における入出力に際し、ルックアップテーブルを用いる制御装置等に関し、特に自動車等のクルーズコントロールシステムにおける制御の一周期における入出力に際し、ルックアップテーブルを用いる制御装置等に関する。
【背景技術】
【0002】
一般に、制御システムの開発において、制御システムが出力する値等が解析的に求まらない場合、あるいは制御システムにおける制御ロジックを実現するために制御対象に合わせた詳細なチューニングが必要な場合等には、ルックアップテーブル(LUT)というデータ構造を参照する方式が用いられることがある。
【0003】
上述の制御システムの例として、車速およびエンジン回転数等を入力し、スロットル開度を制御する制御システムが挙げられる(特許文献1参照)。同様な制御システムであるクルーズコントロールシステムは、目標車速、現在車速およびエンジン回転数等を入力し、目標車速および現在車速から目標車速に到達するために要する必要トルクを計算し、予め作成してある必要トルクおよびエンジン回転数とスロットル開度との関係を示す2次元のLUTを検索することにより、スロットル開度を出力している。
【発明の概要】
【発明が解決しようとする課題】
【0004】
クルーズコントロールシステムのようなハードリアルタイムシステムでLUTを用いる場合、テーブルの大きさが問題となることがあった。LUTを構成する参照点の数は、取り扱う引数の数(LUTの次元数)が増加すると、これに応じてべき乗で増加するため、消費メモリおよびLUTの検索時間の増加に直結することになる。特に、検索時間の増加はハードリアルタイムシステムにおいてリアルタイム性を損なう原因になるという問題があった。LUTの参照点の間隔を粗くする、言いかえれば各次元における参照値の数を減らせばこの問題を解決することができる。しかし、これは逆に、出力する値の精度を劣化させることになるという問題を生じる。精度の劣化を補うために、各種の補間アルゴリズムを用いた場合、補間のための計算コストが増加するため、LUTを用いることによる計算コストの削減効果が薄くなってしまうという問題があった。
【0005】
そこで、本発明の目的は、上記問題を解決するためになされたものであり、LUTの参照値の数を減らした場合でも出力する値の精度を劣化させず、且つ計算コストを増加させない制御装置等を提供することにある。
【課題を解決するための手段】
【0006】
この発明の制御装置は、制御対象に対する制御の一周期における入出力に際し、記録部に記録されたm(≧1)次元表を検索する制御装置であって、制御対象側から入力されたデータに基づくm個の引数の各々に平均を0とする所定の確率分布に従う値を付加して、m個の新たな引数を作成する付加手段と、前記付加手段により作成されたm個の新たな引数につき、各引数に最も近い参照値を各々選択する選択手段と、前記選択手段により選択されたm個の参照値に対応した出力値を前記m次元表から検索する検索手段と、前記検索手段により検索された出力値を制御対象に対して出力する出力手段とを備えたことを特徴とする。
【0007】
ここで、この発明の制御装置において、前記所定の確率分布は正規分布又は一様分布とすることができる。
【0008】
ここで、この発明の制御装置において、前記付加手段、前記選択手段及び前記検索手段を所定の回数繰返す繰返し手段をさらに備え、前記出力手段は、前記検索手段により検索された複数の出力値の平均値を出力することができる。
【0009】
ここで、この発明の制御装置において、前記制御対象はエンジン制御コンピュータであり、前記m次元表の引数としてエンジン回転数及び必要トルクを含み、出力値はスロットル開度とすることができる。
【0010】
この発明の制御プログラムは、制御対象に対する制御の一周期における入出力に際し、記録部に記録されたm(≧1)次元表を検索する制御装置が実行する制御プログラムであって、制御装置のコンピュータに、制御対象側から入力されたデータに基づくm個の引数の各々に平均を0とする所定の確率分布に従う値を付加して、m個の新たな引数を作成する付加ステップ、前記付加ステップで作成されたm個の新たな引数につき、各引数に最も近い参照値を各々選択する選択ステップ、前記選択ステップで選択されたm個の参照値に対応した出力値を前記m次元表から検索する検索ステップ、前記検索ステップで検索された出力値を制御対象に対して出力する出力ステップを実行させるための制御プログラムである。
【0011】
ここで、この発明の制御プログラムにおいて、前記所定の確率分布は正規分布又は一様分布とすることができる。
【0012】
ここで、この発明の制御プログラムにおいて、前記付加ステップ、前記選択ステップ及び前記検索ステップを所定の回数繰返す繰返しステップをさらに備え、前記出力ステップは、前記検索ステップで検索された複数の出力値の平均値を出力することができる。
【0013】
ここで、この発明の制御プログラムにおいて、前記制御対象はエンジン制御コンピュータであり、前記m次元表の引数としてエンジン回転数及び必要トルクを含み、出力値はスロットル開度とすることができる。
【0014】
この発明の記録媒体は、本発明のいずれかかの制御プログラムを記録したコンピュータ読取り可能な記録媒体である。
【発明の効果】
【0015】
本発明のクルーズコントロールシステム等によれば、例えば1次元LUTを用いる場合の参照方法(制御プログラム)は以下のようになる。ある時刻kにおいて入力された引数xに対して平均を0とする所定の確率分布に従うノイズnを付加し、これを新たな引数xn(=x+n)とする。平均を0とする所定の確率分布としては正規分布または一様分布が好適であるが、他の適切な分布であってもよい。次に、得られた新たな引数xnに最も近い参照値(例えば、xi+1)を1次元LUTから検索する。参照値xi+1に対応する出力値yi+1を得て、これを時刻kにおいて入力された引数xに対応する出力値yとして制御対象側へ出力する。多次元(m>1)LUTを用いた場合についても同様である。出力値yがyi+1となる確率Pr(y=yi+1)=Pr(n<Δi+1)となる。ここで、入力された引数xは参照値xとxi+1との間に存在し、引数xが(x+xi+1)/2より参照値xi+1側へΔi+1だけ離れているものとする。ノイズnが平均を0とする正規分布または一様分布等の場合、出力値yの平均E{y}はガウス補間(正規分布)または線形補間(一様分布)を行った場合と同様の結果を得ることができる。
【0016】
本発明のクルーズコントロールシステム等におけるLUTの参照方法(制御プログラム)によれば、従来の補間アルゴリズムを用いる場合と異なり、出力値yは依然としてLUT内のデータと同じ間隔(y,yi+1,...)で離散化された状態である。しかし、その平均E{y}は各種補間アルゴリズムを用いた場合と同じになる。即ち、本発明のクルーズコントロールシステム等におけるLUTの参照方法は計算コストの高い各種補間アルゴリズムの近似として用いることができる。ノイズnの付加は単純な加算によって実現できるため、ノイズnの付加により新たに発生する計算量(計算コスト)は僅かな量に抑えることができる。この結果、本発明のクルーズコントロールシステム等におけるLUTの参照方法によれば、制御対象に対するリアルタイム且つ短い制御の一周期で繰返し入力データの処理を行う必要があるLUTの参照アルゴリズムを実現する場合において、LUTの参照値の数を減らした場合でも出力値の精度を劣化させることなく、且つ単純な加算等の処理の組合せにより計算コストを増加させずに済むという効果がある。本発明のクルーズコントロールシステム等におけるLUTの参照方法は引数xの性質に依存しないため、エンジン回転数ES等に限定されず、様々なセンサ値に対して応用することができる。LUTの次元数mが大きくなった場合、本発明のクルーズコントロールシステム等におけるLUTの参照方法は従来の各種補間アルゴリズムよりさらに有利となるため、様々なセンサ値を組み合わせるような制御に対して有効に適用することができるという効果がある。
【図面の簡単な説明】
【0017】
【図1】本発明の制御装置および制御プログラムにおけるLUTの参照方法を説明するための図である。
【図2】ノイズnの確率分布Pr(n<Δi+1)を示すグラフである。
【図3】引数xが(x+xi+1)/2より参照値xi+1側へ離れている程度を示すΔi+1と確率Pr(y=yi+1)との関係を示すグラフである。
【図4】本発明の実施例1におけるクルーズコントロールシステム(制御装置)1または制御プログラムの機能ブロック図および制御対象40等を示す図である。
【図5】2次元LUT30aを用いた場合のクルーズコントロールシステム1または制御プログラムの機能ブロック図および制御対象40等を示す図である。
【図6】2次元LUT30aの実例を示す図である。
【図7】本発明の実施例2におけるクルーズコントロールシステム(制御装置)2または制御プログラムの機能ブロック図および制御対象40等を示す図である。
【図8】本発明の実施例3における制御プログラムの処理の流れを示すフローチャートである。
【図9】本発明の制御プログラムを実行するクルーズコントロールシステム1等のコンピュータの内部回路50を示すブロック図である。
【発明を実施するための形態】
【0018】
以下、まず、本発明の制御装置および制御プログラムの機能の根拠を図面を参照して説明する。次に、各実施例について図面を参照して詳細に説明する。
【実施例1】
【0019】
図1は、本発明の制御装置および制御プログラムにおけるLUTの参照方法(参照アルゴリズム)を説明するための図である。簡略化のため、本発明の制御装置等が1次元LUT(m=1の場合のm次元表)を用いる場合について説明する。図1において、横軸xは入力された引数と1次元LUTの参照値とを重ねて示し、縦軸yは参照値に対応した1次元LUTの出力値を示す。図1に示されるように、例えば参照値がxの場合、出力値はyであり、参照値がxi+1の場合、出力値はyi+1である。ここで、ある時刻kにおいて入力された引数をx(例えば制御対象がエンジン制御コンピュータの場合、エンジン回転数等のセンサ値)とし(ステップS1)、引数xが参照値xとxi+1との間に存在する場合(x≦x≦xi+1)を考える。図1に示される例のように、入力された引数xは(x+xi+1)/2より参照値xi+1側へΔi+1だけ離れている。引数xに対して平均を0とする所定の確率分布に従う値(以下、「ノイズ」と言う。)を付加し、これを新たな引数xn(=x+n)とする(ステップS2)。平均を0とする所定の確率分布としては正規分布または一様分布が好適であるが、他の適切な分布であってもよい。次に、得られた新たな引数xnを用いて1次元LUTを検索する。即ち、新たな引数xnに最も近い参照値を検索する(ステップS3)。図1に示される例では参照値xi+1が新たな引数xnに最も近い参照値となる。参照値xi+1に対応する出力値yi+1を得て(ステップS4)、これを時刻kにおいて入力された引数xに対応する出力値yとして制御対象側へ出力する(ステップS5)。
【0020】
多次元(m>1)LUTを用いた場合についても上述した1次元LUTを用いた場合と同様に、m個の引数xm,kの各々に対して平均を0とする所定の確率分布に従うノイズを付加して新たな引数xnm,k(=xm,k+n)とする。平均を0とする所定の確率分布としては1次元LUTを用いた場合と同様に、正規分布または一様分布が好適であるが、他の適切な分布であってもよい。次に、得られた新たな引数xnm,kを用い、m次元LUTにおいて新たな引数xnm,kに最も近い参照値を各々検索する(例えば参照値xm,i+1とする。)。m次元LUTにおけるm個の各参照値xm,i+1に対応する出力値yi+1を得て、これを時刻kにおいて入力されたm個の引数xm,kに対応する出力値yとして制御対象側へ出力する。上述の説明ではm個の引数xm,kの各々に対して同一のノイズnを付加したが、これは一例であって、m個の引数xm,k毎に平均を0とする異なる所定の確率分布に従う異なるノイズnm,kを付加してもよい。あるいはm個の引数xm,kについて平均を0とする同一または異なる所定の確率分布を適宜選択し、これらの確率分布に従うノイズを付加してもよい。
【0021】
次に、1次元LUTを用いた場合における出力値yの性質を説明する。出力値yがyi+1となる確率Pr(y=yi+1)は、以下の式1で与えられる。
【0022】
【数1】

【0023】
図2はノイズnの確率分布Pr(n<Δi+1)を示すグラフである。図2において、横軸はΔi+1、縦軸は確率分布Pr(n<Δi+1)である。式1について、ノイズnの確率分布Pr(n<Δi+1)が例えば図2に示されるような(0,1/2)を中心とした点対称であると仮定する。図2より、以下の式2が得られる。
【0024】
【数2】

【0025】
ここで、式2を変形すると、式3となる。
【0026】
【数3】

【0027】
さらに、確率の一般的な性質から、式3の右辺はさらに変形できて、式4のようになる。
【0028】
【数4】

【0029】
以上より、式1は式5のようになる。
【0030】
【数5】

【0031】
一般的には、上述した「点対称である」という仮定が成立するように引数xに対して付加するノイズnを選ぶため、当該仮定は特別なものではない。これは、「点対称である」という仮定をとらない場合、出力値yが偏ることになることからも明らかである。
【0032】
式5より出力値yの平均E{y}は、以下の式6で与えられる。
【0033】
【数6】

【0034】
図3は、確率Pr(y=yi+1)と引数xが(x+xi+1)/2より参照値xi+1側へ離れている程度を示すΔi+1との関係を示すグラフである。図3において、横軸はΔi+1、縦軸は式5で示される確率Pr(n<Δi+1)である。直線Uはノイズnが一様分布に従う場合の確率Pr(n<Δi+1)を示し、曲線Nはノイズnが正規分布に従う場合の確率Pr(n<Δi+1)を示す。図3に示されるように、ノイズnが上記いずれの確率分布に従う場合でも、Δi+1=(x+xi+1)/2の場合、確率Pr(n<Δi+1)=1となり、Δi+1=0の場合、確率Pr(n<Δi+1)=0.5となり、Δi+1=−(x+xi+1)/2の場合、確率Pr(n<Δi+1)=0となる。図3に示される直線Uまたは曲線Nのようにy=yi+1となる重みである確率Pr(y=yi+1)を選ぶことにより、平均E{y}としては線形補間(直線U)またはガウス補間(曲線N)を行った場合と同様の結果を得ることができる。上述した本発明の制御装置等におけるLUTの参照方法によれば、従来の補間アルゴリズムを用いる場合と異なり、出力値yは依然としてLUT内のデータと同じ間隔(y,yi+1,...)で離散化された状態である。しかし、その平均E{y}は各種補間アルゴリズムを用いた場合と同じになる。
【0035】
図4は、本発明の実施例1におけるクルーズコントロールシステム(制御装置)1または制御プログラムの機能ブロック図および制御対象40等を示す。図4に示されるように、クルーズコントロールシステム1はエンジン45を制御するエンジン制御コンピュータ(制御対象)40に対する制御の一周期における入出力に際し、ディスク等の記録部20に記録されたm(≧1)次元LUT30(m(≧1)次元表)を検索する制御プログラムを実行する。図4に示されるように、クルーズコントロールシステム1または制御プログラムは、付加部(付加手段)11、選択部(選択手段)12、検索部(検索手段)13および出力部(出力手段)14を備えている。以下、上述した1次元または多次元LUTを用いた場合の符号を適宜用いて説明する。
【0036】
付加部11は、ある時刻kにおいてエンジン制御コンピュータ40側から入力されたデータ(DATA)に基づくm個の引数xm,kの各々に、平均を0とする所定の確率分布に従うノイズn(またはノイズnm,k)を付加してm個の新たな引数xnm,kを作成する。
【0037】
選択部12は、付加部11により作成されたm個の新たな引数xnm,kにつき、各引数に最も近い参照値(例えば、参照値xm,i+1)を各々選択する。
【0038】
検索部13は、選択部12により選択されたm個の参照値xm,i+1に対応した出力値yi+1をm次元LUT30から検索する。
【0039】
出力部14は、検索部13により検索された出力値yi+1(RVAL)をエンジン制御コンピュータ40に対して出力する。エンジン制御コンピュータ40はエンジン45から現在車速等の情報(INF)を受け取っており、上記出力値yi+1(RVAL)としてスロットル開度(POS)等の指示を与える。より具体的な例は以下で説明する。
【0040】
図5は、2次元LUT30aを用いた場合のクルーズコントロールシステム1または制御プログラムの機能ブロック図および制御対象40等を示す。図5で図4と同じ符号を付した箇所は同じ要素を示すため、説明は省略する。図5に示されるように、クルーズコントロールシステム1の制御対象は図4の場合と同様にエンジン制御コンピュータ40である。エンジン45からはエンジン回転数(Engine Speed[rpm] : ES)およびエンジン45が現在発生させているエンジントルク(Engine Torque[N] : ET)が適切なセンサ(不図示)によって測定され、エンジン回転数ESはエンジン制御コンピュータ40を介してクルーズコントロールシステム1へ伝えられる。エンジン45からの動力をタイヤ(不図示)まで伝えるパワートレーン47からは現在車速(Vehicle Speed[km/h] : VS)が適切なセンサ(不図示)によって測定され、現在車速VSはエンジン制御コンピュータ40を介してクルーズコントロールシステム1へ伝えられる。クルーズコントロールシステム1のRET計算部15は、エンジン制御コンピュータ40から伝えられた現在車速VSと任意の入力部(例えば後述する入力操作部59)から入力された目標車速(Target Speed[km/h] : TS)とに基づき、現在車速VSから目標車速TSへ到達するために必要なエンジントルク(Required Engine Torque[Nm] : RET。必要トルク)を求める。例えば単純に比例制御する場合、必要トルクRET=比例ゲインg×(目標車速TS−現在車速VS)により求めることができる。
【0041】
図5に示されるように、2次元LUT30aは、その引数としてエンジン回転数ES(参照値:ES1,ES2,...)と必要トルクRET(参照値:RET1,RET2,...)とを有し、出力値はスロットル開度(Throttle Position[%] : TP。TP11,TP12,...)である。クルーズコントロールシステム1の付加部11は、ある時刻kにおいてエンジン制御コンピュータ40側から入力されたデータに基づく2個の引数x1,kおよびx2,k(データがエンジン回転数ESの場合はそのままESが引数x1,kとなる。データが現在車速VSの場合はRET計算部15により求められた必要トルクRETが引数x2,kとなる。)の各々に、平均を0とする所定の確率分布に従うノイズn(またはノイズn1,k、ノイズn2,kもしくは3つのノイズから適宜選択したノイズ)を付加して2個の新たな引数xn1,kおよびxn2,kを作成する。選択部12は、付加部11により作成された2個の新たな引数xn1,kおよびxn2,kにつき、各引数に最も近い参照値x1,i+1(例えばエンジン回転数ES1)、x2,i+1(例えば必要トルクRET1)を各々選択する。検索部13は、選択部12により選択された2個の参照値(例えばエンジン回転数ES1、必要トルクRET1)に対応した出力値yi+1(スロットル開度TP11)を2次元LUT30aから検索する。出力部14は、検索部13により検索された出力値(スロットル開度TP11。図4ではRVALに対応)をエンジン制御コンピュータ40に対して出力する。エンジン制御コンピュータ40はエンジン45へスロットル開度TP11(図4ではPOSに対応)の指示を与える。
【0042】
上述の説明では2次元LUT30aを用いたが、パワートレーン47の特性を考慮して、エンジン45が現在発生させているエンジントルクETを加えた3次元LUTとすることも可能である。エンジントルクETはエンジン45から測定されエンジン制御コンピュータ40へ伝えられているため、エンジン制御コンピュータ40からクルーズコントロールシステム1へ伝えればよい。その後は上述した2次元LUT30aを用いた場合の処理と同様に、3次元LUTを用いて付加部11、選択部12および検索部13による処理を経た後、出力部14がスロットル開度TPを出力する。
【0043】
図6は、2次元LUT30aの実例を示す。但し、図5に示されるLUT30aと異なり、引数のエンジン回転数ESと必要トルクRETとが入れ替わっている。出力値は同様にスロットル開度TPである。エンジン回転数ESの参照値はES1=15[rpm]、ES2=35[rpm]、...となっており、必要トルクRETの参照値はRET1=450[Nm]、RET2=850[Nm]、...となっている。2個の参照値、例えばエンジン回転数ES1および必要トルクRET1に対応した出力値は、スロットル開度TP11=1.33[%]となる。
【0044】
以上を纏めると、本発明のクルーズコントロールシステム1が1次元LUT30を用いる場合、その参照方法は次のようになる。ある時刻kにおいて入力された引数をx(例えば制御対象がエンジン制御コンピュータの場合、エンジン回転数ES等のセンサ値)とし、引数xが参照値xとxi+1との間に存在する場合(x≦x≦xi+1)を考える。例えば、入力された引数xは(x+xi+1)/2より参照値xi+1側へΔi+1だけ離れているものとする。引数xに対して平均を0とする所定の確率分布に従うノイズnを付加し、これを新たな引数xn(=x+n)とする。平均を0とする所定の確率分布としては正規分布または一様分布が好適であるが、他の適切な分布であってもよい。次に、得られた新たな引数xnを用いて1次元LUTを検索する。即ち、新たな引数xnに最も近い参照値を検索する。例えば、参照値xi+1が新たな引数xnに最も近い参照値とする。そこで参照値xi+1に対応する出力値yi+1を得て、これを時刻kにおいて入力された引数xに対応する出力値yとして制御対象側へ出力する。多次元(m>1)LUTを用いた場合についても上述した1次元LUTを用いた場合と同様である。
【0045】
上述したように、出力値yがyi+1となる確率Pr(y=yi+1)=Pr(n<Δi+1)となり(式5)、出力値yの平均はE{y}となる(式6)。確率Pr(y=yi+1)と引数xが(x+xi+1)/2より参照値xi+1側へ離れている程度を示すΔi+1との関係を示すグラフ(図3)によれば、ノイズnが一様分布に従う場合の確率Pr(n<Δi+1)(直線U)とノイズnが正規分布に従う場合の確率Pr(n<Δi+1)(曲線N)とは、いずれも、Δi+1=(x+xi+1)/2の場合、確率Pr(n<Δi+1)=1となり、Δi+1=0の場合、確率Pr(n<Δi+1)=0.5となり、Δi+1=−(x+xi+1)/2の場合、確率Pr(n<Δi+1)=0となる。従って、図3に示される直線Uまたは曲線Nのようにy=yi+1となる重みである確率Pr(y=yi+1)を選ぶことにより、平均E{y}は線形補間(直線U)またはガウス補間(曲線N)を行った場合と同様の結果を得ることができる。
【0046】
上述した本発明のクルーズコントロールシステム1におけるLUT30の参照方法(制御プログラム)によれば、従来の補間アルゴリズムを用いる場合と異なり、出力値yは依然としてLUT30内のデータと同じ間隔(y,yi+1,...)で離散化された状態である。しかし、その平均E{y}は各種補間アルゴリズムを用いた場合と同じになる。即ち、本発明のクルーズコントロールシステム1におけるLUT30の参照方法は計算コストの高い各種補間アルゴリズムの近似として用いることができる。ノイズnの付加は単純な加算によって実現できるため、ノイズnの付加により新たに発生する計算量(計算コスト)は僅かな量に抑えることができる。この結果、本発明のクルーズコントロールシステム1におけるLUT30の参照方法(制御プログラム)によれば、制御対象に対するリアルタイム且つ短い制御の一周期で繰返し入力データの処理を行う必要があるLUT30の参照アルゴリズムを実現する場合において、LUT30の参照値の数を減らした場合でも出力値の精度を劣化させることなく、且つ単純な加算等の処理の組合せにより計算コストを増加させずに済むという効果を得ることができる。本発明のクルーズコントロールシステム1におけるLUT30の参照方法(制御プログラム)は引数xの性質に依存しないため、上述したエンジン回転数ES等に限定されず、様々なセンサ値に応用することができる。LUT30の次元数mが大きくなった場合、本発明のクルーズコントロールシステム1におけるLUT30の参照方法(制御プログラム)は従来の各種補間アルゴリズムよりさらに有利となるため、様々なセンサ値を組み合わせるような制御に対して有効である。
【実施例2】
【0047】
図7は、本発明の実施例2におけるクルーズコントロールシステム(制御装置)2または制御プログラムの機能ブロック図および制御対象40等を示す。図7で図4と同じ符号を付した箇所は同じ要素を示すため、説明は省略する。クルーズコントロールシステム2はクルーズコントロールシステム1の有する機能に加え、付加部11、選択部12および検索部13を所定の回数繰返す繰返し部(繰返し手段)16をさらに備えている。
【0048】
繰返し部16を備えることにより、クルーズコントロールシステム2はエンジン制御コンピュータ40に対する制御の一周期における入出力に際し、ある時刻kにおいてエンジン制御コンピュータ40側から入力されたデータ(DATA)に基づくm個の引数xm,kの各々に、平均を0とする所定の確率分布に従うノイズn(またはノイズnm,k)を付加してm個の新たな引数xnm,kを作成する付加部11の処理と、付加部11により作成されたm個の新たな引数xnm,kにつき、各引数に最も近い参照値xm,i+1を各々選択する選択部12の処理と、選択部12により選択されたm個の参照値xm,i+1に対応した出力値yi+1をm次元LUT30から検索する検索部13の処理とを所定の回数繰返すことができる。出力部14は、検索部13により検索された複数の出力値yi+1の平均値を出力する。
【0049】
以上より、本発明の実施例2によれば、クルーズコントロールシステム2は繰返し部16を備えることにより、エンジン制御コンピュータ40に対する制御の一周期における入出力に際し、m次元LUT30を複数回検索し、検索部13により検索された複数の出力値yi+1の平均値を出力することができる。実施例2におけるLUT30の参照方法は、実施例1におけるLUT30の参照方法と同様に計算コストの高い従来の各種補間アルゴリズムの近似として用いることができる。
【実施例3】
【0050】
図8は、本発明の実施例3における制御プログラムの処理の流れをフローチャートで示す。以下、実施例1および2で用いた図4、図5および図7の符号を適宜参照して説明する。
【0051】
図8に示されるように、クルーズコントロールシステム1または2(以下、「クルーズコントロールシステム1等」と略す。)のコンピュータ(後述する図9のCPU51)は、エンジン制御コンピュータ40から現在車速VSおよびエンジン回転数ESを読み取り、任意の入力部(例えば後述する入力操作部59)から目標車速TSを読み取る(ステップS10)。
【0052】
次に、クルーズコントロールシステム1等のRET計算部15は、現在車速VSと目標車速TSとに基づき、現在車速VSから目標車速TSへ到達するための必要トルクRETを求める(ステップS12)。
【0053】
続いて、クルーズコントロールシステム1等はエンジン制御コンピュータ40に対する制御の一周期における入出力に際し、記録部20に記録されたm(≧1)次元LUT30を検索する。実施例1で説明した2次元LUT30aを用いる場合、m=2となり、エンジン制御コンピュータ40側から入力されたデータに基づく2個の引数x1,kおよび引数x2,kは、各々エンジン回転数ES、必要トルクRETとすればよい。クルーズコントロールシステム1等の付加部11は、エンジン制御コンピュータ40側から入力されたデータに基づくm=2個の引数(引数x1,k=エンジン回転数ES、引数x2,k=必要トルクRET)の各々に平均を0とする所定の確率分布に従うノイズn(またはノイズn1,k、ノイズn2,kもしくは3つのノイズから適宜選択したノイズ)を付加して、m=2個の新たな引数(引数xn1,kおよびxn2,k)を作成する(付加ステップ。ステップS14)。
【0054】
クルーズコントロールシステム1等の選択部12は、付加ステップ(ステップS14)で作成されたm=2個の新たな引数(引数xn1,kおよびxn2,k)につき、各引数に最も近い参照値(参照値x1,i+1(例えばエンジン回転数ES1)、x2,i+1(例えば必要トルクRET1))を各々選択する(選択ステップ。ステップS16)。
【0055】
クルーズコントロールシステム1等の検索部13は、選択ステップ(ステップS16)で選択されたm=2個の参照値(エンジン回転数ES1、必要トルクRET1)に対応した出力値yi+1(スロットル開度TP11)をm=2次元LUT30aから検索する(検索ステップ。ステップS18)。
【0056】
クルーズコントロールシステム1等の繰返し部16は、所定の回数繰返したかどうか判定し(繰返しステップ。ステップS20)、まだ終了していない場合は付加ステップ(ステップS14)、選択ステップ(ステップS16)および検索ステップ(ステップS18)を繰返す。所定の回数繰返したと判定した場合、次のステップS22へ進む(繰返しステップ。ステップS20)。
【0057】
クルーズコントロールシステム1等の出力部14は、検索ステップ(ステップS18)で検索された出力値yi+1等をエンジン制御コンピュータ40に対して出力する(出力ステップ。ステップS22)。ここで、上記所定の回数(繰返し回数)が1回の場合は検索された出力値yi+1(スロットル開度TP11)を出力し、繰返し回数が複数回の場合は検索された複数の出力値yi+1等(スロットル開度TP11等)の平均値を出力する。
【0058】
以上より、本発明の実施例3によれば、クルーズコントロールシステム1等のコンピュータCPU51は、エンジン制御コンピュータ40から現在車速VSおよびエンジン回転数ESを読み取り、任意の入力部(例えば後述する入力操作部59)から目標車速TSを読み取り、現在車速VSと目標車速TSとに基づき、現在車速VSから目標車速TSへ到達するための必要トルクRETを求める。続いて、コンピュータCPU51は本発明の制御プログラムにおける付加ステップ(ステップS14)、選択ステップ(ステップS16)、検索ステップ(ステップS18)、繰返しステップ(ステップS20)、出力ステップ(ステップS22)を実行する。以上のようにして、クルーズコントロールシステム1等のコンピュータCPU51は、本発明の制御プログラムを計算コストの高い従来の各種補間アルゴリズムの近似として実行することができる。
【実施例4】
【0059】
図9は、本発明の制御プログラムを実行するクルーズコントロールシステム1等のコンピュータの内部回路50を示すブロック図である。図9に示されるように、CPU51、ROM52、RAM53、画像制御部56、コントローラ57、入力制御部60および外部I/F部61はバス62に接続されている。図9において、上述の本発明の制御プログラムは、ROM52、ディスク等の記録部20またはDVD若しくはCD−ROM58等の記録媒体(脱着可能な記録媒体を含む)に記録されている。記録部20には、LUT30、30a等を記録しておくことができる。制御プログラムは、ROM52からバス62を介し、あるいは記録部20またはDVD若しくはCD−ROM58等の記録媒体からコントローラ57を経由してバス62を介しRAM53へロードされる。画像制御部56は、出力部14等により出力が行われる際のデータをVRAM55へ送出する。ディスプレイ等の表示装置54はVRAM55から送出された上記データ等を表示する。VRAM55は表示装置54の一画面分のデータ容量に相当する容量を有している画像メモリである。入力操作部59は、例えば目標車速TSをクルーズコントロールシステム1等に入力するためのマウス、テンキー等の入力装置であり、入力制御部60は入力操作部59と接続され入力制御等を行う。外部I/F部61はコンピュータの外部と接続する際のインタフェース機能を有している。
【0060】
上述のようにコンピュータCPU51が本発明の制御プログラムを実行することにより、本発明の目的を達成することができる。制御プログラムは上述のようにDVD若しくはCD−ROM58等の記録媒体の形態でコンピュータCPU51に供給することができ、制御プログラムを記録したDVD若しくはCD−ROM58等の記録媒体も同様に本発明を構成することになる。制御プログラムを記録した記録媒体としては上述された記録媒体の他に、例えばメモリ・カード、メモリ・スティック、光ディスク、FD等を用いることができる。
【産業上の利用可能性】
【0061】
本発明の活用例として、短い制御周期で繰返しエンジン回転数ES等の様々なセンサ値を入力し、LUT30を参照する処理を行うクルーズコントロールシステム1等のような制御システムに適用することができる。
【符号の説明】
【0062】
1、2 クルーズコントロールシステム、 11 付加部、 12 選択部、 13 検索部、 14 出力部、 15 RET計算部、 16 繰返し部、 20 記録部、 30、30a LUT、 40 エンジン制御コンピュータ、 45 エンジン、 47 パワートレーン、 50 内部回路、 51 CPU、 52 ROM、 53 RAM、 54 表示装置、 55 VRAM、 56 画像制御部、 57 コントローラ、 58 DVD、CD−ROM、 59 入力操作部、 60 入力制御部、 61 外部I/F部、 62 バス。
【先行技術文献】
【特許文献】
【0063】
【特許文献1】特開平8−200111号公報

【特許請求の範囲】
【請求項1】
制御対象に対する制御の一周期における入出力に際し、記録部に記録されたm(≧1)次元表を検索する制御装置であって、
制御対象側から入力されたデータに基づくm個の引数の各々に平均を0とする所定の確率分布に従う値を付加して、m個の新たな引数を作成する付加手段と、
前記付加手段により作成されたm個の新たな引数につき、各引数に最も近い参照値を各々選択する選択手段と、
前記選択手段により選択されたm個の参照値に対応した出力値を前記m次元表から検索する検索手段と、
前記検索手段により検索された出力値を制御対象に対して出力する出力手段とを備えたことを特徴とする制御装置。
【請求項2】
請求項1記載の制御装置において、前記所定の確率分布は正規分布又は一様分布であることを特徴とする制御装置。
【請求項3】
請求項1又は2記載の制御装置において、前記付加手段、前記選択手段及び前記検索手段を所定の回数繰返す繰返し手段をさらに備え、前記出力手段は、前記検索手段により検索された複数の出力値の平均値を出力することを特徴とする制御装置。
【請求項4】
請求項1乃至3のいずれかに記載の制御装置において、前記制御対象はエンジン制御コンピュータであり、前記m次元表の引数としてエンジン回転数及び必要トルクを含み、出力値はスロットル開度であることを特徴とする制御装置。
【請求項5】
制御対象に対する制御の一周期における入出力に際し、記録部に記録されたm(≧1)次元表を検索する制御装置が実行する制御プログラムであって、制御装置のコンピュータに、
制御対象側から入力されたデータに基づくm個の引数の各々に平均を0とする所定の確率分布に従う値を付加して、m個の新たな引数を作成する付加ステップ、
前記付加ステップで作成されたm個の新たな引数につき、各引数に最も近い参照値を各々選択する選択ステップ、
前記選択ステップで選択されたm個の参照値に対応した出力値を前記m次元表から検索する検索ステップ、
前記検索ステップで検索された出力値を制御対象に対して出力する出力ステップを実行させるための制御プログラム。
【請求項6】
請求項5記載の制御プログラムにおいて、前記所定の確率分布は正規分布又は一様分布であることを特徴とする制御プログラム。
【請求項7】
請求項5又は6記載の制御プログラムにおいて、前記付加ステップ、前記選択ステップ及び前記検索ステップを所定の回数繰返す繰返しステップをさらに備え、前記出力ステップは、前記検索ステップで検索された複数の出力値の平均値を出力することを特徴とする制御プログラム。
【請求項8】
請求項5乃至7のいずれかに記載の制御プログラムにおいて、前記制御対象はエンジン制御コンピュータであり、前記m次元表の引数としてエンジン回転数及び必要トルクを含み、出力値はスロットル開度であることを特徴とする制御プログラム。
【請求項9】
請求項5乃至8のいずれかに記載の制御プログラムを記録したコンピュータ読取り可能な記録媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate


【公開番号】特開2010−257161(P2010−257161A)
【公開日】平成22年11月11日(2010.11.11)
【国際特許分類】
【出願番号】特願2009−105730(P2009−105730)
【出願日】平成21年4月23日(2009.4.23)
【出願人】(502087460)株式会社トヨタIT開発センター (232)
【Fターム(参考)】