(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0013】
以下、図面を参照しながら、本発明の実施形態について説明する。本実施形態に係る反力出力装置は、車両に搭載され、人により操作されるアクセルペダルなどの車両の操作子に対して、操作方向とは逆方向の力である反力を出力するための装置である。
図1は、反力出力装置とその周辺機器との機能構成の一例を示す図である。本実施形態に係る反力出力装置1は、車両の備える上位ECU(Electronic Control Unit)2と接続されている。
【0014】
上位ECU2は、反力出力装置1が出力する反力の大きさを指定する。上位ECU2は、例えば、車両の速度やアクセル開度、車両の進行方向に現れた障害物と車両との距離などの情報を各種センサから取得し、これらの情報を操作子に反力として伝達するため、操作子に付与する反力の大きさを算出する。上位ECU2は、算出した反力の大きさを示す反力情報を反力出力装置1に出力する。
【0015】
本実施形態に係る反力出力装置1は、マイクロコントローラ(マイコン)10と、駆動制御部11と、駆動部12と、電圧値検出部13と、駆動部電流値検出部14と、を備える。反力出力装置1は、PWM(Pulse Width Modulation)制御により駆動部12の出力を制御する。
マイコン10は、上位ECU2から取得した反力情報が示す反力の大きさを所定の大きさとして、所定の大きさの力を駆動部12に出力させるために駆動部12に流される電流の目標値である目標電流値を算出する。ここで、目標電流値は、駆動部12によって出力される力に係る電流値の一つである。マイコン10は、算出した目標電流値に応じて、PWM制御のデューティ比を算出し、算出したPWM制御のデューティ比を駆動制御部11に出力する。
【0016】
駆動制御部11は、マイコン10から取得したデューティ比に基づいて、駆動部12に対してPWM制御を実行する。
駆動部12は、PWM制御に基づいて力を出力するための動力発生機構を備える。駆動部12は、例えば、モータを備え、駆動制御部11によって出力が制御される。
【0017】
電圧値検出部13は、駆動部12に印加される電圧の電圧値を検出するためのモニタ回路(不図示)を備える。電圧値検出部13は、当該モニタ回路により、駆動部12に電力を供給する電源から出力される電圧をA/D(Analog-to-Digital)変換し、電圧値を検出する。以下、この駆動部12に印加される電圧の電圧値を電源電圧値と称す。電圧値検出部13は、電源電圧値を随時検出し、検出した電源電圧値を示す電源電圧値情報をマイコン10に出力する。
【0018】
駆動部電流値検出部14は、駆動部12によって出力される力に係る電流値の一つであり、駆動部12を流れる電流の電流値を検出するための電流検知回路(不図示)を備える。駆動部電流値検出部14は、当該電流検知回路により、駆動部12のモータに接続されたシャント抵抗に印加される電圧をA/D変換し、電圧値を検出する。駆動部電流値検出部14は、当該電圧値とシャント抵抗の抵抗値に基づいて、駆動部12を流れる電流値である駆動部電流値を検出する。ここで、駆動部電流値検出部14は、一定値以下の電流値については精度を保証しないが、電流値の検出は行う。駆動部電流値取得部140は、駆動部電流値を随時検出し、検出した駆動部電流値を示す駆動部電流値情報をマイコン10に出力する。
【0019】
マイコン10は、PWM制御のデューティ比を以下の2つの方法で算出する。
第1の算出方法において、マイコン10は、目標電流値と、電源電圧値と、に基づいてデューティ比を算出する。第2の算出方法において、マイコン10は、目標電流値と、電源電圧値と、駆動部電流値と、に基づいてPI(Proportional Integral)演算によりデューティ比を算出する。
【0020】
マイコン10は、目標電流値と駆動部電流値とに基づいて、これら2つのデューティ比算出方法を切り替える。マイコン10は、例えば、目標電流値が所定の規定値未満である場合に、第1の算出方法によりデューティ比を算出する。これに対し、マイコン10は、例えば、駆動部電流値が所定の規定値以上である場合に、第2の算出方法によりデューティ比を算出する。
【0021】
次に、マイコン10の機能構成について説明する。
マイコン10は、CAN(Controller Area Network)通信部110と、目標電流値算出部120と、電圧値取得部130と、駆動部電流値取得部140と、記憶部150と、デューティ比制御部160と、を備える。
【0022】
CAN通信部110は、CAN通信インタフェースを備え、上位ECU2との通信を行う。CAN通信部110は、上位ECU2から反力情報を受信する。
目標電流値算出部120は、CAN通信部110が受信した反力情報が示す反力の大きさに基づいて目標電流値を算出し、算出した目標電流値をデューティ比制御部160に出力する。
【0023】
電圧値取得部130は、電圧値検出部13から電源電圧値情報を取得し、取得した電源電圧値情報が示す電源電圧値をデューティ比制御部160に出力する。
駆動部電流値取得部140は、駆動部電流値検出部14から駆動部電流値情報を取得し、取得した駆動部電流値情報が示す駆動部電流値をデューティ比制御部160に出力する。
【0024】
記憶部150は、例えば、HDD(Hard Disc Drive)、フラッシュメモリ、EEPROM(Electrically Erasable Programmable Read Only Memory)、ROM(Read Only Memory)、またはRAM(Random Access Memory)などを備え、マイコン10の備えるCPU(Central Processing Unit)に実行させるための各種プログラム(ファームウェアやアプリケーションプログラムなど)やCPUが実行した処理の結果などを記憶する。目標電流値算出部120およびデューティ比制御部160は、例えば、記憶部150に記憶されたプログラムをCPUに実行させることにより機能する。
【0025】
また、記憶部150は、第1の規定値を記憶する第1の規定値記憶部151と、第2の規定値を記憶する第2の規定値記憶部152と、を備える。第1の規定値は、駆動部電流値に基づく判定のための規定値を示す。第2の規定値は、目標電流値に基づく判定のための規定値を示す。第1の規定値は、第2の規定値に比して大きく設定されている。また、第2の規定値は、例えば、駆動部電流値を検出する電流検知回路の保証精度の下限値である。このように2つの閾値を設定し、ヒステリシスを与えることで、電流値が閾値の近辺で揺らいだ場合でも出力を安定させることができる。
【0026】
デューティ比制御部160は、駆動部12によって出力される力に係る駆動部電流値及び目標電流値に基づいて、PWM制御に係るデューティ比の2つの算出方法である第1の算出方法および第2の算出方法のうちのいずれか1つを選択し、選択した算出方法によりデューティ比を算出する。デューティ比制御部160は、算出したデューティ比を駆動制御部11に出力する。デューティ比制御部160は、判定部161と、選択部162と、第1の算出部163と、第2の算出部164と、を備える。
【0027】
判定部161は、目標電流値算出部120から取得した目標電流値と駆動部電流値取得部140から取得した駆動部電流値とについて、それぞれの値と規定値との大小を判定し、判定結果を選択部162に出力する。判定部161は、第1の規定値記憶部151が記憶する第1の規定値と駆動部電流値とを比較し、駆動部電流値が第1の規定値未満であるか否かを判定する。判定部161は、記憶部150が記憶する第2の規定値と目標電流値とを比較し、駆動部電流値が第2の規定値以上であるか否かを判定する。
【0028】
選択部162は、判定部161による判定結果に基づいて、PWM制御に係るデューティ比の2つの算出方法のうちの1つを選択する。判定部161が駆動部電流値が第1の規定値未満であると判定した場合、選択部162は、第1の算出方法を選択し、デューティ比の算出命令を第1の算出部163に出力する。判定部161が目標電流値が第2の規定値以上であると判定した場合、選択部162は、第2の算出方法を選択し、デューティ比の算出命令を第2の算出部164に出力する。
【0029】
第1の算出部163は、駆動部電流値に基づかない第1の算出方法によりデューティ比を算出し、算出したデューティ比を駆動制御部11に出力する。第1の算出部163は、目標電流値算出部120から取得した目標電流値と、電圧値取得部130から取得した電源電圧値と、に基づいてデューティ比を算出する。第1の算出部163は、例えば、PI演算によるデューティ比算出式の近似式である以下の式(1)により、デューティ比を算出する。
【0030】
D={a×(1/V)
3+b×(1/V)
2+c×(1/V)+d}×I
P+e×(1/V) …(1)
【0031】
ここで、上記の式(1)において、Dはデューティ比を示し、Vは電源電圧値を示し、I
Pは目標電流値を示す。また、a、b、c、d、eは所定の係数を示す。式(1)の係数a〜eの値は、駆動部12の備えるモータの特性によって変化し、回路シミュレーションの計算値や各パラメータの実測値から、モータ毎に決定することができる。
【0032】
第2の算出部164は、駆動部電流値に基づく第2の算出方法によりデューティ比を算出し、算出したデューティ比を駆動制御部11に出力する。第2の算出部164は、目標電流値算出部120から取得した目標電流値と、電圧値取得部130から取得した電源電圧値と、駆動部電流値取得部140から取得した駆動部電流値と、に基づいてフィードバック演算によりデューティ比を算出する。第2の算出部164は、例えば、目標電流値から駆動部電流値を減じた偏差と電源電圧値とに基づくPI演算により、デューティ比を算出する。
【0033】
図2は、反力出力装置1の備えるマイコン10の動作の一例を示す図である。
まず、マイコン10は、駆動部電流値と目標電流値とを取得する(ステップS101)。次に、マイコン10は、取得した駆動部電流値と第1の規定値とを比較し、駆動部電流値が第1の規定値未満であるか否かを判定する(ステップS102)。駆動部電流値が第1の規定値
未満である場合(ステップS102;
YES)、マイコン10は、電源電圧値を取得する(ステップS103)。そして、マイコン10は、第1の算出方法によりデューティ比を算出し(ステップS104)、駆動制御部11に出力する。その後、マイコン10はステップS108の処理を進める。
【0034】
また、駆動部電流値が第1の規定値
以上である場合(ステップS102;
NO)、マイコン10は、目標電流値が第2の規定値以上であるか否かを判定する(ステップS105)。目標電流値が第2の規定値
未満である場合(ステップS105;
NO)、マイコン10は、ステップS103の処理を進める。また、目標電流値が第2の規定値以上である場合(ステップS105;
YES)、マイコン10は、電源電圧値を取得する(ステップS106)。そして、マイコン10は第2の算出方法によりデューティ比を算出し(ステップS107)、駆動制御部11に出力する。
【0035】
次に、マイコン10は、停止条件が成立したか否かを判定する(ステップS108)。ここで、停止条件とは、例えば、上位ECU2から取得した反力情報が示す反力の大きさがゼロであることや、反力出力装置1に故障が検出されたことなどである。停止条件が成立した場合(ステップS108;YES)、マイコン10は、駆動制御部11を介して駆動部12の出力を停止する(ステップS109)。また、停止条件が成立していない場合(ステップS108;NO)、マイコン10は、ステップS101に処理を戻す。
【0036】
以上説明したように反力出力装置1は、人により操作される操作子に対し、操作方向とは逆方向の力を出力する反力出力装置1であって、PWM制御に基づいて力を出力する駆動部12と、駆動部12によって出力される力に係る目標電流値や駆動部電流値に基づいて、PWM制御に係るデューティ比の2つの算出方法である第1の算出方法および第2の算出方法のうちの1つを選択し、選択した算出方法によりデューティ比を算出するデューティ比制御部160と、を備える。これにより、反力出力装置1は、例えば、2つの算出方法のうち、取得した目標電流値や駆動部電流値に応じてデューティ比の算出方法を切り替えることができるため、目標電流値や駆動部電流値が大きく変動する場合であっても適切な反力を出力することができる。
【0037】
また、デューティ比制御部160は、駆動部12を流れる電流の電流値である駆動部電流値に基づいて、2つの算出方法のうちのいずれか1つを選択し、選択した算出方法によりデューティ比を算出する。これにより、反力出力装置1は、検出された駆動部電流値が電流検知精度の保証外であるか否かを適切に判定し、デューティ比の算出方法を切り替えることができる。従って、反力出力装置1は、さらに適切な反力を出力することができる。
【0038】
また、デューティ比制御部160は、反力情報が示す所定の大きさの力を駆動部12に出力させるために駆動部12に流される電流の目標値である目標電流値に基づいて、2つの算出方法のうちのいずれか1つを選択し、選択した算出方法によりデューティ比を算出する。これにより、反力出力装置1は、目標電流値に基づいてデューティ比の算出方法を選択することができるため、さらに適切な反力を出力することができる。
【0039】
また、デューティ比制御部160は、駆動部電流値が第1の規定値未満である場合に、2つの算出方法のうち、駆動部12に印加される電圧の電圧値である電源電圧値と目標電流値とに基づく第1の算出方法を選択し、選択した第1の算出方法によりデューティ比を算出する。これにより、例えば、駆動部電流値が電流検知精度の保証外である低い電流値であり、当該電流値を使用した場合に、デューティ比の算出に誤差を生じる可能性があるような場合であっても、反力出力装置1は、当該電流値を使用せずにデューティ比を算出することができる。従って、反力出力装置1は、不正確な駆動部電流値に基づく不適切な反力の出力を行わないため、さらに適切な反力を出力することができる。また、同等の効果を得るために低電流を検出可能な電流検出回路を備える必要がないため、コストを低減することができる。
【0040】
また、デューティ比制御部160は、目標電流値が第2の規定値以上である場合に、2つの算出方法のうち、駆動部電流値に基づく第2の算出方法を選択し、選択した当該算出方法によりデューティ比を算出する。これにより、反力出力装置1は、駆動部電流値の変化をデューティ比の算出に反映させることができる。従って、反力出力装置1は、例えば、操作子が操作されたときには制動制御を行い、出力する反力を抑制することができるため、反力出力装置1は、さらに適切な反力を出力することができる。
【0041】
なお、
図2に示したステップS102、S105の判定処理において、マイコン10の判定部161は、ステップS102とステップS105との処理のいずれかを省略してもよい。この場合は、選択部162はいずれかの判定結果にのみ基づいて算出方法を選択してもよい。例えば、ステップS105の処理を省略し、ステップS102の判定のみを行う場合、駆動部電流値が第1の規定値
以上である場合(ステップS102;
NO)、マイコン10は、ステップS106の処理を進め、駆動部電流値が第1の規定値
未満である場合(ステップS102;
YES)、マイコン10は、ステップS103の処理を進める。
【0042】
また、例えば、ステップS102の処理を省略し、ステップS105の判定のみを行う場合、まず、マイコン10は、ステップS101の処理の後にステップS105の処理を進める。次に、ステップS105において、目標電流値が第2の規定値
未満である場合(ステップS105;
NO)、マイコン10は、ステップS103の処理を進め、目標電流値が第2の規定値
以上である場合(ステップS105;
YES)、マイコン10は、ステップS106の処理を進める。このように、反力出力装置1は、判定をより簡便にしてもよい。また、
図2に示すステップS102の処理において、マイコン10の判定部161は、目標電流値が第1の規定値未満であるか否かを判定してもよい。また、
図2に示すステップS105において、マイコン10の判定部161は、駆動部電流値が第2の規定値以上であるか否かを判定してもよい。
【0043】
なお、操作子は、例えば、ペダルに限らず、手で操作されるものであってもよい。また、操作子は、操縦桿のような棒状のものであってもよく、操縦輪のような環状のものであってもよい。
また、デューティ比の算出方法は3つ以上の複数あってもよい。例えば、反力出力装置1は、目標電流値または駆動部電流値の大きさに応じて、PI制御とPID(Proportional Integral Derivative)制御とを切り替えてもよい。また、例えば、目標電流値や駆動部電流値がゼロに近い小さな値である場合には、デューティ比をゼロとしてもよい。これにより、デューティ比の算出による処理を低減することができる。また、第1の算出方法で示した式(1)において、電源電圧値Vは、電源電圧値の逆数(1/V)に置き換えられ、式(1)が定められてもよい。
【0044】
なお、第1の規定値は、第2の規定値に比して小さくてもよく、同じ大きさであってもよい。
また、デューティ比の算出に利用される電源電圧値には、例えば、操作子が強い力で操作された場合に起こる駆動部12による発電を考慮した値が採用されてもよい。
【0045】
なお、上述した実施形態における反力出力装置1の一部、例えば、目標電流値算出部120、デューティ比制御部160、判定部161、選択部162、第1の算出部163、および第2の算出部164などをコンピュータで実現するようにしてもよい。その場合、この機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現してもよい。なお、ここでいう「コンピュータシステム」とは、反力出力装置1に内蔵されたコンピュータシステムであって、OSや周辺機器等のハードウェアを含むものとする。
【0046】
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM、CD−ROM等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時間プログラムを保持しているものも含んでもよい。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
【0047】
また、上述した実施形態におけるマイコン10の一部、または全部を、LSI(Large Scale Integration)等の集積回路として実現してもよい。マイコン10の各機能ブロックは個別にプロセッサ化してもよいし、一部、または全部を集積してプロセッサ化してもよい。また、集積回路化の手法はLSIに限らず専用回路、または汎用プロセッサで実現してもよい。また、半導体技術の進歩によりLSIに代替する集積回路化の技術が出現した場合、当該技術による集積回路を用いてもよい。
【0048】
以上、図面を参照してこの発明の一実施形態について詳しく説明してきたが、具体的な構成は上述のものに限られることはなく、この発明の要旨を逸脱しない範囲内において様々な設計変更等をすることが可能である。