以下、添付図面を参照しながら本発明の実施形態について説明する。
図1乃至図4に示すように、車両10は、主要な構成要素として、ディスプレイ15、カメラ17、赤外線投光器18、カメラ制御ECU20、GPS受信機22、GPS制御ECU23、シート25、加速度センサ28、シートベルト29、アクチュエータ32、サスペンション制御ECU33、及び学習制御ECU35を備えている。
図1に示すように、車両10の車体11にはフロントウィンド12が設けられている。車体11の車内空間の前面の一部は、フロントウィンド12の下方に位置するダッシュボード13により構成されている。ダッシュボード13の右側部分にはステアリングホイール14が回転可能に支持されている。
さらにダッシュボード13の一部はインスツルメントパネル13aにより構成されている。インスツルメントパネル13aの中央部には、液晶ディスプレイ15が設けられている。さらにインスツルメントパネル13aには図1及び図4に示す操作パネル16が設けられている。
図1及び図4に示すように車体11の車内側面には、フロントウィンド12の上方に位置するカメラ17及び赤外線投光器18が設けられている。カメラ17は近赤外線カメラであり、いずれも図示を省略したレンズ及び撮像素子を備えている。カメラ17は、後述するシート25及びシートベルト29(並びにシート25に着座した乗員)を撮像可能である。赤外線投光器18は例えば赤外線LEDによって構成可能であり、且つ、シート25及びシートベルト29(並びにシート25に着座した乗員)に赤外線を照射可能である。
図4に示すようにカメラ17及び赤外線投光器18はカメラ制御ECU20に接続されている。ECUは、エレクトリックコントロールユニットの略称であり、CPU、ROM、RAM及びインターフェース等を含むマイクロコンピュータを主要構成部品として有する電子制御回路である。CPUは、メモリ(ROM)に格納されたインストラクションを実行することにより後述する各種機能を実現する。
カメラ制御ECU20、GPS制御ECU23、サスペンション制御ECU33、及び学習制御ECU35は、図示を省略した通信・センサ系CAN(Controller Area Network)を介して、互いにデータ交換可能(通信可能)に接続されている。
赤外線投光器18はカメラ制御ECU20の指示に基づいて赤外線を連続的に照射する。カメラ17はカメラ制御ECU20の指示に基づいて所定時間が経過する毎に繰り返し撮像動作を実行し、且つ、撮像したデータをカメラ制御ECU20のメモリへ所定時間が経過する毎に繰り返し送信する。
図4に示すGPS受信機22は、例えば車体11の上面に固定される。周知のようにGPS受信機22は、GPS衛星から送信されたGPS信号を受信することにより、車両10が走行している位置に関する情報(以下、「位置情報」と呼ぶ)を所定時間が経過する毎に取得する。
ディスプレイ15及びGPS受信機22はGPS制御ECU23に接続されている。GPS受信機22は取得した位置情報をGPS制御ECU23へ送信し、GPS制御ECU23は受信した位置情報をそのRAMに時系列的に記録する。
さらに車両10は周知のカーナビゲーションシステムを搭載している。ディスプレイ15、GPS受信機22、及びGPS制御ECU23はカーナビゲーションシステムの構成要素である。
GPS制御ECU23のメモリ(ROM)には「地図画像データ」が記録されている。GPS制御ECU23は、メモリから地図画像データを読み込み、この地図画像データが表す地図画像をディスプレイ15に表示させる。この地図画像データは、日本の地図を表している。この地図画像データには、道路(高速道路及び一般道路を含む)、建物、川、及び山等の位置及び形状が含まれている。そのためディスプレイ15には、道路、建物、川、及び山等が表示される。さらにGPS制御ECU23は、GPS受信機22から受信した位置情報と関連付けながらディスプレイ15に地図画像を表示させる。即ち、ディスプレイ15には車両10の現在位置及びその周辺部の地図画像が表示される。そのため車両10がディスプレイ15に表示された道路上を移動すると、ディスプレイ15は地図画像をスクロールさせながら表示する。
図2及び図3に示すように、車内空間の底面には、ステアリングホイール14の直後に位置する運転者用のシート25が設けられている。シート25はシートクッション26及びシートバック27を備えている。さらに車内空間の底面(剛性が高いフロア)には図4に示す加速度センサ28が設けられている。なお、加速度センサ28を、フロア以外の剛性が高い部材(例えば、シート25の内部に設けられた金属製の骨格部材)に設けてもよい。例えば、ピエゾ抵抗型加速度センサ又は静電容量型加速度センサを加速度センサ28として利用可能である。この加速度センサ28は、シート25(及び車体11)の上下方向の加速度を検出する上下加速度センサ、シート25の前後方向の加速度を検出する前後加速度センサ、及びシート25の左右方向の加速度を検出する左右加速度センサを備えている。加速度センサ28(上下加速度センサ、前後加速度センサ、及び左右加速度センサ)の検出値は、後述する「車両振動値」として利用される。
可撓性を有するシートベルト29の一端は車内空間の底面に設けられた図示を省略したベルト固定部に接続されており、シートベルト29の他端は車体に設けられた図示を省略した巻取手段に接続されている。さらにシートベルト29の一部に設けられた図示を省略したロック用金具は、シート25と一体化した図示を省略したロック手段(バックル)と着脱可能である。さらにシートベルト29のほぼ全体には多数のマーカー30が付されている。各マーカー30は、シートベルト29の表面に赤外線反射塗料を塗布することによって形成される。なお、シートベルト29にはできるだけ数多くのマーカー30を付すのが好ましい。
シート25に着座した乗員がシートベルト29を装着したときに、シートベルト29の上部29a(ロック用金具より上方に位置する部位)が乗員の胸部(乗員の体の一部であり上部29aが接触している部位及びその周辺部)に密着し且つシートベルト29の下部29b(ロック用金具より下方に位置する部位)が乗員の腹部(乗員の体の一部であり下部29bが接触している部位及びその周辺部)に密着する。従って、上部29aに付された各マーカー30の三次元的な位置は、乗員の胸部の前面の複数の位置とほぼ一致する。同様に、下部29bに付された各マーカー30の三次元的な位置は、乗員の腹部の前面の複数の位置とほぼ一致する。
車両10は、図示を省略したサスペンションシステムを備えている。このサスペンションシステムは、作動油の油圧によって作動する減衰力可変式のショックアブソーバを備えている。ショックアブソーバは、シリンダと、シリンダに対してシリンダの軸線方向(上下方向)に進退可能なロッドと、ロッドに固定され且つ常にシリンダの内部に位置するピストンと、を備えている。さらにこのピストンには、径の大きさを調整可能な可変オリフィスが形成されている。さらにショックアブソーバには、可変オリフィスの径を調整するための図4に示す電動式のアクチュエータ32が設けられている。
図4に示すように、加速度センサ28及びアクチュエータ32はサスペンション制御ECU33に接続されている。加速度センサ28は検出値を所定時間が経過する毎に繰り返しサスペンション制御ECU33に送信する。さらにサスペンション制御ECU33は、後述するようにアクチュエータ32に信号を送ることによりアクチュエータ32を動作させて、ショックアブソーバの可変オリフィスの径を変更し、ショックアブソーバの減衰力を調整することが可能である。
学習制御ECU35には操作パネル16が接続されている。さらに学習制御ECU35のメモリ(ROM)には、乗員情報データベース及び「振動値閾値」が記録されている。
続いて、カメラ制御ECU20及びサスペンション制御ECU33が行う制御を図8乃至図11に基づいて説明する。なお、図2に示すように、乗員Aがシート25に着座し且つシートベルト29のロック用金具がロック手段(バックル)に装着されているものとする。
イグニッションキーの操作により、車両10のイグニッションSWがOFFからONに切り替わると、イグニッションSWが再びOFFになるまで、以下の各動作が実行される。
即ち、カメラ制御ECU20からの指令により、赤外線投光器18がシート25、シートベルト29、及び乗員Aに向けて赤外線を照射し続け、且つ、カメラ17がシート25、シートベルト29、及び乗員Aを撮像し続ける。
GPS制御ECU23がGPS衛星から取得した車両10の位置情報をRAMに時系列的に記録する。
サスペンション制御ECU33が加速度センサ28の検出値を繰り返し取得し、且つ、上下加速度センサ、前後加速度センサ、及び左右加速度センサのそれぞれの検出値の合成値(上下方向、前後方向、及び左右方向の合成方向の加速度)を、車両振動値(図6の上段のグラフを参照)として、所定時間が経過する毎に繰り返し演算する。
さらにカメラ制御ECU20、GPS制御ECU23、サスペンション制御ECU33、及び学習制御ECU35がセンサ系CANを介してデータ交換を実行する。
イグニッションSWがOFFからONに切り替わると、カメラ制御ECU20はイグニッションSWが再びOFFになるまで、所定時間が経過する毎に図8のフローチャートが示す処理を繰り返し実行する。
カメラ制御ECU20は最初にステップS801において、乗員Aが操作パネル16を利用してサスペンション学習制御モードを選択したか否かを判定する。ステップS801でYesと判定した場合、カメラ制御ECU20はステップS802に進む。一方、ステップS801でNoと判定した場合、カメラ制御ECU20はステップS810へ進み、測定位置決定フラグを「0」に設定する。なお、測定位置決定フラグの初期値は「0」である。そしてカメラ制御ECU20は本ルーチンの処理を一旦終了する。
ステップS802に進んだカメラ制御ECU20は、測定位置決定フラグの値が「0」か否かを判定する。ステップS802でYesと判定した場合、カメラ制御ECU20はステップS803に進む。一方、ステップS802でNoと判定した場合、カメラ制御ECU20は本ルーチンの処理を一旦終了する。
ステップS803に進んだカメラ制御ECU20は、下部29b上に位置し且つカメラ17によって撮像された全マーカー30の画像データに基づいて、乗員Aの腹部の形状を特定(演算)する。なお、赤外線及び赤外線反射塗料によって形成されたマーカー30を利用してカメラ17がマーカー30を撮像する技術は、例えば特開2007-55294号公報等に開示されているように周知である。カメラ制御ECU20は、周知の画像処理方法を用いて乗員Aの腹部形状を特定(演算)する。例えばカメラ制御ECU20は、カメラ17によって撮像された下部29b上に位置する全マーカー30の画像データに基づいて、各マーカー30を三角形(ポリゴン)の各頂点として利用する三次元ポリゴン化処理を行うことによって、乗員Aの腹部形状を特定する。
ステップS803の処理を終えたカメラ制御ECU20はステップS804へ進み、ステップS803で特定された乗員Aの腹部形状に関するデータが、学習制御ECU35の(ROM)に記録されている乗員情報データベースに記録されているか否かを判定する。より詳細には、カメラ制御ECU20は、ステップS803で特定された乗員Aの腹部形状に関するデータと実質的に一致する腹部形状に関するデータが、乗員情報データベースに記録されているか否かを周知の方法(例えば、パターンマッチング法、又は、特開2007-55294号公報に開示されたカメラにより撮影された人物の体格とメモリに記録済みの体格とを比較する方法)を用いて判定する。なお、乗員情報データベースには、複数の乗員(例えば、数十人)のシート25に着座したときの腹部形状に関するデータを、各乗員に対応するファイルとして記録可能である。
乗員情報データベースに記録されている1つの腹部形状に関するデータと乗員Aの腹部形状に関するデータとが実質的に一致すると判定した場合、カメラ制御ECU20は、乗員Aは乗員情報データベースに登録済みの乗員であると判定する。そしてカメラ制御ECU20は、ステップS804でYesと判定してステップS805へ進み、乗員登録フラグを「1」に設定する。なお、乗員登録フラグの初期値は「0」である。
一方、乗員Aの腹部形状に関するデータと実質的に一致する腹部形状に関するデータが乗員情報データベースに記録されていないと判定した場合、カメラ制御ECU20は、乗員Aは乗員情報データベースに登録されていないと判定する。そしてカメラ制御ECU20はステップS804でNoと判定してステップS806へ進み、乗員Aの腹部形状に関するデータを学習制御ECU35へ送信する。すると学習制御ECU35が乗員A用のファイルを乗員情報データベース上に新規に作成し且つ乗員Aの腹部形状に関するデータをこのファイルに新規に記録する。
ステップS806の処理を終えたカメラ制御ECU20はステップS807へ進み、乗員登録フラグを「0」に設定する。
ステップS805又はステップS807の処理を終えたカメラ制御ECU20はステップS808へ進み、乗員Aの「乗員振動値」の「測定位置」を、(乗員情報データベースの乗員A用のファイルに記録されているデータではなく)カメラ17から受信した乗員Aの腹部形状に関するデータに基づいて決定する。例えば、カメラ制御ECU20は、周知の画像処理方法を用いて、乗員Aの腹部形状を表す画像データの中心点を測定位置として特定する。なお本実施形態では「乗員振動値」とは、「測定位置」の上下方向、前後方向、及び左右方向の合成方向の加速度である(図6のグラフの下段の値を参照)。さらに本実施形態の「測定位置」を、乗員の特定の臓器に対応する位置に設定してもよい。
ステップS808の処理を終えたカメラ制御ECU20はステップS809へ進み、測定位置決定フラグを「1」に設定する。そしてカメラ制御ECU20は本ルーチンの処理を一旦終了する。
さらにイグニッションSWがOFFからONに切り替わると、カメラ制御ECU20はイグニッションSWが再びOFFになるまで、所定時間が経過する毎に図9のフローチャートが示す処理を繰り返し実行する。
カメラ制御ECU20は最初にステップS901において、測定位置決定フラグの値が「1」か否かを判定する。ステップS901でYesと判定した場合、カメラ制御ECU20はステップS902に進む。一方、ステップS901でNoと判定した場合、カメラ制御ECU20は本ルーチンの処理を一旦終了する。
ステップS902に進んだカメラ制御ECU20は、カメラ17が取得した連続する複数の撮像データ(各マーカー30の撮像データ)に基づいて乗員Aの現在時刻の「測定位置」の変化方向及び変化量を取得する。さらにカメラ制御ECU20は「測定位置」の変化方向及び変化量に基づいて、周知の方法(例えば、オプティカルフローを利用した方法、又は、特許第5151845号公報に記載された方法)により「測定位置」における現在時刻の乗員振動値を演算する。即ち、カメラ制御ECU20は、「測定位置」の上下方向、前後方向、及び左右方向の合成方向の加速度を乗員振動値として演算する。さらにカメラ制御ECU20は、演算した乗員振動値及び乗員情報(乗員が乗員Aであるというデータ)を互いに関連付けながらサスペンション制御ECU33へ送信する。
ステップS902の処理を終えたカメラ制御ECU20は本ルーチンの処理を一旦終了する。
イグニッションSWがOFFからONに切り替わると、サスペンション制御ECU33はイグニッションSWが再びOFFになるまで、所定時間が経過する毎に図10のフローチャートが示す処理を繰り返し実行する。
サスペンション制御ECU33は最初にステップS1001において、測定位置決定フラグの値が「1」か否かを判定する。ステップS1001でYesと判定した場合、サスペンション制御ECU33はステップS1002に進む。
ステップS1002に進んだサスペンション制御ECU33は、乗員が例えば図示を省略したカーナビゲーションシステム操作手段(例えば、ディスプレイ15上に表示されるタッチパネル)を用いてカーナビゲーションシステムに対して走行ルートを指定するための指示を行ったか否かを判定する。なお、乗員が所定の走行ルートを指定した場合、その走行ルート及び日時に関する情報が乗員情報データベースのその乗員用のファイルに記録される。ステップS1002でNoと判定した場合、サスペンション制御ECU33は本ルーチンの処理を一旦終了する。一方、ステップS1002でYesと判定した場合、サスペンション制御ECU33はステップS1003に進む。
ステップS1003に進んだサスペンション制御ECU33は、加速度センサ28から受信した検出値に基づく車両振動値、カメラ制御ECU20から受信した乗員Aの乗員振動値、及び乗員Aに関する乗員情報を、車両10が現在走行している道路の一部である「走行区間」と関連付けて学習制御ECU35へ送信する。すると、学習制御ECU35が乗員情報データベースの乗員A用のファイルに、車両振動値及び乗員振動値を走行区間並びに車両振動値及び乗員振動値のそれぞれの取得日時と関連付けて記録する。ここで「走行区間」とは、地図画像データに記録された道路の一部を一定の長さで区切ったときの道路の各領域のことであり、その長さ(車両10の進行方向の長さ)は任意(例えば、15m)に設定可能である。換言すると、地図画像データの道路は複数(多数)の「走行区間」によって構成されている。さらにこのとき学習制御ECU35は、GPS制御ECU23から受信している位置情報を車両10が現在走行している走行区間(地図画像データ)に関連付けて乗員A用のファイルに記録する。
ステップS1003の処理を終えたサスペンション制御ECU33はステップS1004に進み、指定された走行ルートを乗員Aが初めて走行するか否かを判定する。ステップS1004でNoと判定したとき、サスペンション制御ECU33は本ルーチンの処理を一旦終了する。一方、ステップS1004でYesと判定したとき、サスペンション制御ECU33はステップS1005へ進む。
ステップS1005へ進んだサスペンション制御ECU33は、車両10が現在位置する走行区間の終点を通過したか否かを判定する。Noと判定した場合は、サスペンション制御ECU33はステップS1005の処理を再度実行する。一方、Yesと判定した場合は、サスペンション制御ECU33はステップS1006へ進む。
ステップS1006へ進んだサスペンション制御ECU33は、周知の周波数スペクトル推定方法を用いて、車両10が直前に通過した走行区間を走行する間に取得した全ての車両振動値及び乗員振動値に対して振動周波数分析を行う。即ち、例えば、このときの車両振動値及び乗員振動値が図6のグラフが表す振動波形の場合に、サスペンション制御ECU33がこの振動波形を高速フーリエ変換して図7に示すデータ(グラフ)に変換し且つこのデータ(グラフ)を学習制御ECU35へ送信する。すると学習制御ECU35はこのデータを走行区間と関連付けて乗員Aに関するファイルに記録する。
ステップS1006の処理を終えたサスペンション制御ECU33はステップS1007に進んで、乗員振動値と学習制御ECU35のメモリに記録されている振動値閾値(図7参照)とを比較する。この振動値閾値とは、乗員の測定位置において、この値より大きい振動値(上記合成方向の加速度)が生じた場合に、この乗員が不快感を覚えるおそれが高いと考えられる振動値のことである。
乗員振動値が振動値閾値以下のとき、サスペンション制御ECU33はステップS1007でNoと判定して本ルーチンの処理を一旦終了する。一方、乗員振動値が振動値閾値より大きいとき、サスペンション制御ECU33はステップS1007でYesと判定してステップS1008へ進む。
サスペンション制御ECU33がステップS1008へ進んだ場合(ステップ1007でYesと判定された場合)は、ステップS1006で実行された振動周波数分析の対象となった走行区間の路面に凹凸があり且つこの凹凸を車両10の車輪が乗り越えたと考えられる。即ち、このとき車両10のシート25(車体11)が凹凸に起因してある程度以上の大きさで上下方向に振動し且つサスペンションシステムのショックアブソーバが伸縮することによりこの振動を減衰させた、と考えられる。しかしながら、このときのショックアブソーバの減衰力によっては、このときのシート25の振動値(加速度)を十分に抑制できていない。そのためサスペンション制御ECU33はステップS1008において、車両10の車輪がこの走行区間の凹凸を再度乗り越えたときに、乗員振動値(加速度)を振動値閾値以下の大きさにすることが可能なショックアブソーバの減衰力を演算する。換言すると、サスペンション制御ECU33は、乗員振動値を振動値閾値以下の大きさにすることが可能ショックアブソーバの可変オリフィスの径の大きさを演算する。
図7において乗員振動値が振動値閾値より上方に位置する(振動値閾値より大きい)場合に、車両10の乗員が不快感を覚える可能性が高いと考えられる。ここで、例えばある走行区間において振動値閾値より大きい乗員振動値Ov1が発生している場合を想定する。この例では、この乗員振動値Ov1に対して感度が高い車両の振動の周波数の帯域はfr1である。この帯域fr1のように、振動値閾値より高い乗員振動値に対する感度が高い(即ち、乗員振動値に及ぼす影響が大きい)車両の振動の周波数帯を「高感度周波数帯」と称することがある。さらに高感度周波数帯に対応する車両振動値を「高感度車両振動値」と称することがある。高感度周波数帯は、振動周波数分析においてサスペンション制御ECU33によって特定される。なお、加速度センサ28が車両の剛性が高い部材(フロア又はシート25の骨格部材など)に設けられる一方で乗員が柔らかいシートクッション26(及びシートバック27)に着座していることに起因して、図7に示すように、乗員振動値Ov1が発生するときの乗員の振動の周波数と帯域fr1とは完全には一致しない。そして、ショックアブソーバの減衰力を調整することにより帯域fr1に対応する車両振動値を図7に示された値(高感度車両振動値)より小さくすれば、乗員振動値が振動値閾値以下になる可能性が高い。
なお、例えば別の走行区間において振動値閾値より上方に位置する乗員振動値Ov2が発生している場合は、この乗員振動値Ov2に対して感度が高い車両の振動の周波数の帯域はfr2である。加速度センサ28が車両の剛性が高い部材に設けられる一方で乗員が柔らかいシートクッション26(及びシートバック27)に着座していることに起因して、乗員振動値Ov2が発生するときの乗員の振動の周波数と帯域fr2とは完全には一致しない。そして、ショックアブソーバの減衰力を調整することにより帯域fr2に対応する車両振動値を図7に示された値(高感度車両振動値)より小さくすれば、乗員振動値は振動値閾値以下になる可能性が高い。
そして、例えば、ショックアブソーバの可変オリフィスの径を第1所定値に変化させれば、帯域fr1に対応する車両振動値が図7に示された値より小さくなる。また、ショックアブソーバの可変オリフィスの径を第2所定値に変化させれば、帯域fr2に対応する車両振動値が図7に示された値より小さくなる。そして、可変オリフィスの径がこれらの所定値(第1所定値、第2所定値)に変化するように、サスペンション制御ECU33がアクチュエータ32を制御するときの「制御値」を、サスペンション制御ECU33がステップS1008で作成(演算)する。なお、これら各所定値の大きさは、例えば実験等により求めることが可能である。
さらにサスペンション制御ECU33はステップS1008において、作成した制御値を、乗員Aに関する乗員情報及び振動周波数分析が実行された走行区間(位置情報)と関連付けて学習制御ECU35へ送信する。すると学習制御ECU35が、この制御値を、乗員情報、走行区間(位置情報)、及び制御値が作成された日時と関連付けて乗員Aのファイルに記録する。なお、振動値閾値より大きい乗員振動値(例えば乗員振動値Ov1)が検出され且つその乗員情報が乗員情報データベースに登録された乗員を「特定乗員」と称する場合がある。さらに、制御値が作成(記録)された(即ち、振動値閾値より大きい乗員振動値が検出された)走行区間を「特定走行区間」と称する場合がある。
ステップS1008の処理を終えたサスペンション制御ECU33は本ルーチンの処理を一旦終了する。
さらにイグニッションSWがOFFからONに切り替わると、サスペンション制御ECU33はイグニッションSWが再びOFFになるまで、所定時間が経過する毎に図11のフローチャートが示す処理を繰り返し実行する。
サスペンション制御ECU33は最初にステップS1101において、測定位置決定フラグの値が「1」か否かを判定する。ステップS1101でYesと判定した場合、サスペンション制御ECU33はステップS1102に進む。一方、ステップS1101でNoと判定した場合、サスペンション制御ECU33は本ルーチンの処理を一旦終了する。
ステップS1102に進んだサスペンション制御ECU33は乗員登録フラグの値が「1」か否かを判定する。ステップS1102でYesと判定した場合、サスペンション制御ECU33はステップS1103に進む。一方、ステップS1102でNoと判定した場合、サスペンション制御ECU33は本ルーチンの処理を一旦終了する。
ステップS1103に進んだサスペンション制御ECU33は、乗員がカーナビゲーションシステムに対して走行ルートを指定するための指示を行ったか否かを判定する。ステップS1103でNoと判定した場合、サスペンション制御ECU33は本ルーチンの処理を一旦終了する。一方、ステップS1103でYesと判定した場合、サスペンション制御ECU33はステップS1104に進む。
ステップS1104に進んだサスペンション制御ECU33は、GPS制御ECU23から受信した位置情報に基づいて、車両10の現在位置が、指定された走行ルート上の特定走行区間であるか否かを判定する。例えば、図5のディスプレイ15に表示された道路40が走行ルートとして指定された場合を想定する。この道路40には、例えば複数の走行区間40A、40B、40C、40D、40Eが設定されている。さらに車両10は道路40上を矢印方向に走行するものとする。さらに、乗員Aが搭乗した車両10が道路40を初めて走行したときに(例えば、1年前)、走行区間40Aに位置する乗員Aの測定位置において乗員振動値Ov1が発生し且つ走行区間40Cに位置する乗員Aの測定位置において乗員振動値Ov2が発生し、さらにステップS1008の処理が実行されたものとする。即ち、走行区間40A及び走行区間40Cが特定走行区間であり、且つ、走行区間40B、走行区間40D、及び走行区間40Eは特定走行区間ではない。
例えば、車両10が走行区間40Aに位置するときに、ステップS1104でYesと判定すると、サスペンション制御ECU33はステップS1105に進んで、乗員情報データベースの乗員A用のファイルに記録された乗員A及び走行区間40Aに対応する制御値に基づいてアクチュエータ32を制御する。具体的には、車両10に搭載された図示を省略したバッテリの電力をアクチュエータ32に供給する。するとショックアブソーバの可変オリフィスの径が第1所定値に変更されるので、帯域fr1に対応する車両振動値が図7に示された値より小さくなる。
すると、このときの乗員振動値が振動値閾値以下になる。そのため、サスペンション制御ECU33はステップS1106に進んだときにYesと判定する。
この場合、サスペンション制御ECU33はステップS1107に進んで、この制御値の登録指示を学習制御ECU35へ送信する。すると学習制御ECU35が、この制御値を走行区間40A(位置情報)と関連付けて乗員A用のファイルに記録する。換言すると、学習制御ECU35は既に乗員A用のファイルに記録されている制御値に関するデータを保持する。ステップS1107の処理を終えたサスペンション制御ECU33は本ルーチンの処理を一旦終了する。
さらに車両10が走行区間40Bに到達したときに、サスペンション制御ECU33がステップS1101、S1102、S1103を経た後にステップS1104においてNoと判定する。この場合、サスペンション制御ECU33は本ルーチンの処理を一旦終了する。
さらに車両10が走行区間40Cに到達したときに、サスペンション制御ECU33がステップS1101、S1102、S1103を経た後にステップS1104においてYesと判定すると、サスペンション制御ECU33はステップS1105に進む。そしてサスペンション制御ECU33はステップS1105において、乗員A用のファイルに記録された走行区間40Cに対応する制御値に基づいてアクチュエータ32を制御する。するとショックアブソーバの可変オリフィスの径が第2所定値になるので、帯域fr2に対応する車両振動値が図7に示された値より小さくなる。
但し、このときの走行区間40Cの路面の凹凸状態が、乗員Aが搭乗した車両10が走行区間40Cを初めて走行したとき(例えば、1年前)から変化しているものとする。そのため、この場合は、サスペンション制御ECU33がステップS1105の処理を終えた後にステップS1106に進んだときに、乗員Aの乗員振動値が振動値閾値より大きくなる。そのため、サスペンション制御ECU33はステップS1106でNoと判定してステップS1108へ進む。
ステップS1108に進んだサスペンション制御ECU33は、ステップS1006乃至1008と実質的に同一の処理を実行する。即ち、サスペンション制御ECU33は、今回車両10が走行区間40Cの始点(走行区間40Bとの境界線)を超えてから走行区間40C上の現在位置に到達するまでに取得した車両振動値及び乗員振動値に対して振動周波数分析を行う。さらにサスペンション制御ECU33は、振動値閾値より高い乗員振動値に対する感度が高い車両の振動の周波数帯である高感度周波数帯を特定する。さらにサスペンション制御ECU33は、高感度周波数帯に対応する車両振動値を小さくすることが可能な可変オリフィスの径に対応する新たな制御値を作成(演算)する。
ステップS1108の処理を終えたサスペンション制御ECU33はステップS1109に進み、位置情報に基づいて、現在の車両10の位置がステップS1108で作成された新たな制御値に対応する走行区間か否かを判定する。ステップS1109でNoと判定するとサスペンション制御ECU33は本ルーチンの処理を一旦終了する。一方、ステップS1109でYesと判定するとサスペンション制御ECU33は再びステップS1105の処理を実行する。即ち、サスペンション制御ECU33は、ステップS1108で作成した新たな制御値に基づいてアクチュエータ32を制御する。すると可変オリフィスの径が所定の大きさに変化し、その結果、帯域fr2(高感度周波数帯)に対応する車両振動値が小さくなる。そのため、乗員Aの乗員振動値が振動値閾値以下になる可能性が高い。
ステップS1105の処理を終えたサスペンション制御ECU33がステップS1106に進んだときに、乗員Aの乗員振動値が振動値閾値以下になると、サスペンション制御ECU33はステップS1107に進む。そしてサスペンション制御ECU33はステップS1107において、この新たな制御値の登録指示を学習制御ECU35へ送信する。すると学習制御ECU35が、この制御値を走行区間40C(位置情報)と関連付けて乗員A用のファイルに記録する。換言すると、学習制御ECU35は既に乗員A用のファイルに記録されている走行区間40Cに対応する制御値に関するデータを新たな制御値に更新する。ステップS1107の処理を終えたサスペンション制御ECU33は本ルーチンの処理を一旦終了する。
一方、ステップS1105の処理を終えたサスペンション制御ECU33がステップS1106に進んだときに、乗員Aの乗員振動値が振動値閾値より大きい場合は、サスペンション制御ECU33は再びステップS1108に進む。即ち、サスペンション制御ECU33はステップS1106でYesと判定するまで、ステップS1108において可変オリフィスの径を新たな大きさに変化させるための新たな制御値を新規に作成(演算)し、且つ、ステップS1105において新たな制御値に基づいてアクチュエータ32を制御する。
さらに車両10が走行区間40D及び走行区間40Eにそれぞれ到達すると、サスペンション制御ECU33がステップS1101、S1102、S1103を経た後にステップS1104においてNoと判定する。この場合、サスペンション制御ECU33は本ルーチンの処理を一旦終了する。
このように以上説明した本実施形態によれば、特定乗員(乗員A)が搭乗している車両10が学習制御ECU35の乗員情報データベースに記録済みの特定走行区間を走行する場合は、ステップ1106でNoと判定する場合を除いて、カメラ17及びカメラ制御ECU20によって測定される乗員振動値とは無関係に、サスペンション制御ECU33が乗員情報データベースに記録済みの制御値に基づいてアクチュエータ32を制御する。従って、車両10が特定走行区間を走行するとき(即ち、特定乗員の体に振動値閾値より大きい振動が発生するおそれがあると考えられるとき)、ショックアブソーバの減衰力が迅速に変化(応答)する。
さらに、車両10が特定走行区間を走行しているときのみ(即ち、特定乗員の体に振動値閾値より大きい振動が発生するおそれがあると考えられるときのみ)サスペンション制御ECU33がアクチュエータ32を制御する。従って、ショックアブソーバの減衰力を変化させるためのエネルギー(バッテリの電力)の無駄を小さくできる。
なお、本発明は上記実施形態に限定されることはなく、本発明の範囲内において種々の変形例を利用することができる。
例えば、「乗員振動値」、「車両振動値」、及び「振動値閾値」として、加速度の代わりに「振動の速度」又は「振動の振幅」を用いてもよい。
「乗員振動値」、「車両振動値」、及び「振動値閾値」は1軸方向の値であってもよい。例えば、「乗員振動値」及び「車両振動値」を上下方向の加速度とし、且つ、振動値閾値」を上下方向の加速度に関する閾値としてもよい。
カメラ制御ECU20は、上部29a上に位置し且つカメラ17によって撮像された全マーカー30の画像データに基づいて乗員Aの胸部の形状を特定(演算)し、且つ、この胸部の「測定位置」の乗員振動値を演算してもよい。
さらに、胸部形状の「測定位置」に対する腹部形状の「測定位置」の相対的な振動値(例えば、加速度)、又は、腹部形状の「測定位置」に対する胸部形状の「測定位置」の相対的な振動値を「乗員振動値」として利用してもよい。
また、腹部形状(又は胸部形状)の「測定位置」として、上記中心点ではなく、下部29b(又は上部29a)の複数のマーカー30の間の特定位置に位置する仮想のマーカーを補間的に求めて、この仮想のマーカーの位置を腹部形状(又は胸部形状)の「測定位置」として利用してもよい。
また、腹部形状(又は胸部形状)の複数のマーカー30の「振動の振幅」どうしの差(即ち、ある一つのマーカー30の他のマーカー30に対する相対的な移動量)を求めて、この差(相対的な移動量)が所定の「振動値閾値(移動量)」より大きくなったときに、サスペンション制御ECU33がアクチュエータ32を制御するようにしてもよい。
さらにカメラ制御ECU20は、下部29b上に位置するマーカー30及び上部29a上に位置するマーカー30に基づいて、腹部と胸部との間に位置する中間部(図2参照)の形状を補間的に求め且つ中間部の一部を「測定位置」として利用してもよい。なお、この場合は、この中間部の位置を乗員の胃と対応する位置に設定してもよい。
さらにシートベルト29に設けた図示を省略した1つの加速度センサ(例えば、歪みゲージを利用した加速度センサ)によって「乗員振動値」を検出してもよい。なお、この場合は加速度センサが検出した「加速度」、「加速度を積分して得た速度」、又は「速度を積分して得た振幅」を「乗員振動値」として利用可能である。
さらに、この場合は、加速度センサをシートベルト29に対して着脱可能にするのが好ましい。このようにすれば、体格が異なる複数の乗員がシート25に着座する可能性がある場合に、いずれの乗員が着座したときにおいても、例えば、シートベルト29の「乗員の腹部の中心点と対応する部位」に加速度センサを設けることが可能になる。
生体認証手段(例えば、顔認証又は指紋認証)を用いて、いずれかのECUが、シート25に着座している乗員が乗員情報データベースに記録されている乗員であるか否かを判定してもよい。
例えばカメラを用いた乗員の顔認証に基づいて、カメラ制御ECU20がシート25に着座している乗員が乗員情報データベースに記録されているか乗員であるか否かを判定してもよい。
上記サスペンションシステムをアクティブサスペンションとして構成した上で、サスペンション制御ECU33がアクティブサスペンションのショックアブソーバに供給される作動油の油圧を制御してもよい。例えば、ショックアブソーバに接続された油圧回路に設けられた制御弁をサスペンション制御ECU33が「制御値」に基づいて開閉制御することにより、ショックアブソーバに供給される作動油の油圧を制御して、高感度周波数帯fr1、fr2に対応する車両振動値を小さくしてもよい。
カーナビゲーションシステムが、ダイナミックマップ(多数の点群データを含む高精度3次元地図データ)を利用したものであってもよい(例えば、特開2016-192028号公報参照)。この場合、車両10が取得する自身の位置情報は、上記実施形態よりも高い精度の位置情報となる可能性が高い。
さらに、本発明がクラウドコンピューティングを利用してもよい。例えば、ステップS1008の処理で取得された制御値、乗員情報、及び走行区間(位置情報)を、車両10がクラウドコンピューティングのサーバにインターネット回線を利用して無線送信し、制御値、乗員情報、及び走行区間(位置情報)をサーバに繰り返し記録させる。さらに車両10は特定走行空間を走行する直前にサーバから特定走行区間に関する制御値に関するデータを取得し、且つ、特定走行区間においてステップS1105の処理を実行してもよい。
カメラ17によって撮像される乗員は運転者でなくてもよく、例えば、助手席に着座した乗員であってもよい。