(57)【要約】【課題】  本発明の目的は、ブレーキの制御性の向上した車両の制御装置を提供することにある。【解決手段】  車両の走行制御システムは、レーダセンサＲＳと、車両速度コントローラＳＣと、油圧ポンプ２１と、比例ソレノイド弁２２と、ブレーキコントローラＢＣを備えている。車両速度コントローラＳＣがレーダセンサＲＳの情報に基づきブレーキを掛ける状況と判断した場合に、ブレーキコントローラＢＣは車両速度コントローラＳＣの指令に基づき油圧ポンプ２１と比例ソレノイド弁２２を動作させ、車輪のブレーキトルクを制御する。【選択図】  図１
2006027613.tif 000002
【特許請求の範囲】
【請求項１】
レーダセンサと、車両速度コントローラと、少なくとも一つの油圧ポンプと、少なくとも一つの比例ソレノイド弁と、ブレーキコントローラを備え、
前記車両速度コントローラが前記レーダセンサの情報に基づきブレーキを掛ける状況と判断した場合に、前記ブレーキコントローラは前記車両速度コントローラの指令に基づき前記油圧ポンプと前記比例ソレノイド弁を動作させ、車輪のブレーキトルクを制御することを特徴とする車両の走行制御装置。
【請求項２】
レーダセンサと、車両速度コントローラと、油圧ポンプと、比例ソレノイド弁と、ブレーキコントローラを備え、
前記車両速度コントローラが前記レーダセンサの情報に基づきブレーキを掛ける状況と判断した場合に、前記ブレーキコントローラは前記車両速度コントローラの指令に基づき前記油圧ポンプと前記比例ソレノイド弁を動作させ、車輪のブレーキトルクを制御することを特徴とする車両の走行制御装置。
【請求項３】
少なくとも一つのレーダセンサと、少なくとも一つの油圧ポンプと、少なくとも一つの比例ソレノイド弁と、ブレーキペダルと、ブレーキコントローラを備え、
前記ブレーキコントローラは、前記レーダセンサの情報に基づき、前記油圧ポンプと前記比例ソレノイド弁を動作させ、車輪のブレーキトルクを制御することを特徴とする車両の走行制御装置。
【請求項４】
少なくとも一つのレーダセンサと、車両速度コントローラと、ブレーキコントローラを備え、
前記車両速度コントローラが前記レーダセンサの情報に基づきブレーキを掛ける状況と判断した場合に、前記ブレーキコントローラは前記車両速度コントローラの指令に基づき前記油圧ポンプと前記比例ソレノイド弁を動作させ、車輪のブレーキトルクを制御することを特徴とする車両の走行制御装置。
【請求項５】
レーダセンサと、車両速度コントローラと、ブレーキコントローラを備え、
前記車両速度コントローラが前記レーダセンサの情報に基づきブレーキを掛ける状況と判断した場合に、前記ブレーキコントローラは前記車両速度コントローラの指令に基づき前記油圧ポンプと前記比例ソレノイド弁を動作させ、車輪のブレーキトルクを制御することを特徴とする車両の走行制御装置。
【請求項６】
少なくとも一つのレーダセンサと、ブレーキペダルと、油圧ポンプと、比例ソレノイド弁と、ブレーキコントローラを備え、
前記ブレーキコントローラは、前記レーダセンサの情報に基づき、前記油圧ポンプと前記比例ソレノイド弁を動作させ、車輪のブレーキトルクを制御することを特徴とする車両の走行制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、車両の走行制御装置に係り、特に、車間距離や車速などを制御するに好適な車両の走行制御装置に関する。
【背景技術】
【０００２】
従来の車両の走行制御装置では、例えば、自車と前方車両の車間距離を計測し、自車の車速に応じて、車間距離が一定となるようにスロットルバルブの開度を制御したり、また、ブレーキを制御したりしている。また、自車の車速が一定となるように、スロットルバルブの開度を制御したり、また、ブレーキを制御したりしている。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、従来の車両の制御装置を用いて、実際の道路上で実走行を行ったところ、道路状況に応じて、制御性能が低下することがあることが判明した。例えば、道路がカーブしている場合や、坂道にさしかかった場合において、従来の車両の制御装置では、車速の変化等により、実際の道路状況の変化を検知してから車間距離の制御や車速の制御を開始するため、制御開始が遅れ、実際に適正な制御に至るまでのタイムラグが発生することになる。その結果、スムーズな車両の制御が行えないという問題があることが判明した。たとえば、登り坂の坂道では、坂道にかかると速度が低下し、その速度低下を検出してから速度を増加するように制御することになり、車速を一定に保つことができない場合がある。特に、登り勾配が急なほどレスポンスの遅れが目立つことになる。また、カーブでは、速度を低下する必要があるにも拘わらず、実際の速度低下までのタイムラグが発生する。
【０００４】
そこで、本発明者らは、カーナビゲーションに代表される位置情報表示装置が有している道路のカーブや坂道のデータを用いて、道路の状況の変化を事前に予測することにより、車両の制御装置の制御性を向上させる方式の検討を行った。そのために、位置情報表示装置と車両の制御装置を連携させ、それぞれの装置の情報を共有化する方式について検討した。これら異なる機能を持つ複数個の装置の情報を共有化する場合、複数個の装置間を接続する通信線を少なくするためには、シリアル通信で同時共用化を図る方式が検討された。
【０００５】
しかしながら、複数個の装置の情報を共有化するために、シリアル通信を使用すると、情報を共有化するためのタスクが必要になる。特に、高度な運転支援をねらったシステムにおいては、共有する必要がある情報が多くなり、シリアル通信を使う場合には、情報を共有化するための通信タスクが個々の装置本来の機能を実現するのに必要なタスクより長くなり、情報を共有した制御を行えないという問題があることが判明した。
【０００６】
また、従来の装置では、ブレーキの制御性について十分な検討がされていないという問題があった。
【０００７】
本発明の目的は、ブレーキの制御性の向上した車両の制御装置，制御方法及び制御システムを提供することにある。
【課題を解決するための手段】
【０００８】
（１）上記目的を達成するために、本発明は、レーダセンサと、車両速度コントローラと、少なくとも一つの油圧ポンプと、少なくとも一つの比例ソレノイド弁と、ブレーキコントローラを備え、前記車両速度コントローラが前記レーダセンサの情報に基づきブレーキを掛ける状況と判断した場合に、前記ブレーキコントローラは前記車両速度コントローラの指令に基づき前記油圧ポンプと前記比例ソレノイド弁を動作させ、車輪のブレーキトルクを制御するようにしたものである。  
かかる構成により、ブレーキの制御性を向上し得るものとなる。
【０００９】
（２）また、上記目的を達成するために、本発明は、レーダセンサと、車両速度コントローラと、油圧ポンプと、比例ソレノイド弁と、ブレーキコントローラを備え、前記車両速度コントローラが前記レーダセンサの情報に基づきブレーキを掛ける状況と判断した場合に、前記ブレーキコントローラは前記車両速度コントローラの指令に基づき前記油圧ポンプと前記比例ソレノイド弁を動作させ、車輪のブレーキトルクを制御するようにしたものである。  
かかる構成により、ブレーキの制御性を向上し得るものとなる。
【００１０】
（３）また、上記目的を達成するために、本発明は、少なくとも一つのレーダセンサと、少なくとも一つの油圧ポンプと、少なくとも一つの比例ソレノイド弁と、ブレーキペダルと、ブレーキコントローラを備え、前記ブレーキコントローラは、前記レーダセンサの情報に基づき、前記油圧ポンプと前記比例ソレノイド弁を動作させ、車輪のブレーキトルクを制御するようにしたものである。  
かかる構成により、ブレーキの制御性を向上し得るものとなる。
【００１１】
（４）また、上記目的を達成するために、本発明は、少なくとも一つのレーダセンサと、車両速度コントローラと、ブレーキコントローラを備え、前記車両速度コントローラが前記レーダセンサの情報に基づきブレーキを掛ける状況と判断した場合に、前記ブレーキコントローラは前記車両速度コントローラの指令に基づき前記油圧ポンプと前記比例ソレノイド弁を動作させ、車輪のブレーキトルクを制御するようにしたものである。  
かかる構成により、ブレーキの制御性を向上し得るものとなる。
【００１２】
（５）また、上記目的を達成するために、本発明は、レーダセンサと、車両速度コントローラと、ブレーキコントローラを備え、前記車両速度コントローラが前記レーダセンサの情報に基づきブレーキを掛ける状況と判断した場合に、前記ブレーキコントローラは前記車両速度コントローラの指令に基づき前記油圧ポンプと前記比例ソレノイド弁を動作させ、車輪のブレーキトルクを制御するようにしたものである。  
かかる構成により、ブレーキの制御性を向上し得るものとなる。
【００１３】
（６）また、上記目的を達成するために、本発明は、少なくとも一つのレーダセンサと、ブレーキペダルと、油圧ポンプと、少なくとも一つの比例ソレノイド弁と、ブレーキコントローラを備え、前記ブレーキコントローラは、前記レーダセンサの情報に基づき、前記油圧ポンプと前記比例ソレノイド弁を動作させ、車輪のブレーキトルクを制御するようにしたものである。  
かかる構成により、ブレーキの制御性を向上し得るものとなる。
【発明の効果】
【００１４】
本発明によれば、ブレーキの制御性が向上するものとなる。
【発明を実施するための最良の形態】
【００１５】
以下、図１〜図１１を用いて、本発明の一実施形態による車両の制御装置の構成について説明する。  
最初に、図１を用いて、本実施形態による車両の制御装置のシステム構成について説明する。  
図１は、本発明の一実施形態による車両の制御装置の構成を示すシステム構成図である。
【００１６】
車両速度コントローラＳＣ，レーダセンサＲＳ，エンジンコントローラＥＣ，ブレーキコントローラＢＣ，変速機コントローラＴＣは、互いに、ローカルエリアネットワークＬＡＮを介して接続されており、相互に、制御信号やデータを送受信する。
【００１７】
レーダセンサＲＳは、先行車と自車との車間距離と、先行車と自車との相対速度を検出する。レーダセンサＲＳは、検出した車間距離と相対速度をローカルエリアネットワークＬＡＮを介して車両速度コントローラＳＣに送信する。
車両速度コントローラＳＣは、図２を用いて後述するように、車輪速センサを備えており、自車速度を検出する。また、車両速度コントローラＳＣは、目標車間距離設定手段ＳＥＴを用いて、運転者の操作により設定された目標車間距離を取り込む。車両速度コントローラＳＣは、図２を用いて後述するように、カーナビゲーションのような位置情報表示手段を備えており、道路のカーブや坂道等の道路情報を位置情報表示手段と共有している。
【００１８】
車両速度コントローラＳＣは、レーダセンサＲＳから送信された車間距離，相対速度と、車輪速センサによって検出された自車速度と、設定手段ＳＥＴによって設定された目標車間距離と、位置情報表示手段と共有している道路情報に基づいて、目標速度を算出する。また、車両速度コントローラＳＣは、算出された目標速度と自車速度に基づいて、目標トルクを算出し、エンジンコントローラＥＣとブレーキコントローラＢＣにそれぞれ目標トルク指令を送信する。また、車両速度コントローラＳＣは、ギア比を変更する必要があれば、変速機コントローラＴＣにギア変更指令を送信する。
【００１９】
エンジンコントローラＥＣは、車両速度コントローラＳＣから送信された目標トルク指令に基づいて、目標トルクが正の時には、電子制御スロットル１２の開度や、燃料噴射弁１４から噴射される燃料量や、点火プラグ１６の点火タイミングを適宜操作し、エンジントルクを制御する。
【００２０】
ブレーキコントローラＢＣは、車両速度コントローラＳＣから送信された目標トルク指令に基づいて、目標トルクが負の時に、油圧ポンプ２１や比例ソレノイド弁２２を操作し、車輪のブレーキトルクを制御する。弁２３は、比例ソレノイド弁で調整される自動ブレーキ油圧と、運転者がブレーキペダル２４を操作することによりマスタシリンダ２５から加えられるフットブレーキ油圧とのいずれか大きい油圧を、ＡＢＳ２６を介して、ブレーキ機構２７に伝え、ブレーキ２８を制御する。ブレーキ油圧センサ２８は、ブレーキ機構２７にかかるブレーキ油圧を検出する。ブレーキコントローラＢＣは、ブレーキ油圧センサ１４によって検出されたブレーキ油圧の値を参照して、比例ソレノイド弁２２をフィードバック制御する。また、ブレーキコントローラＢＣは、車両速度コントローラＳＣによって検出され、ローカルエリアネットワークＬＡＮを介して送られた４つの車輪の車輪速データに基づいて、ブレーキのロック状態を検出すると、車輪ロックの解除指令をＡＢＳ２６に出力する。ＡＢＳ２６は、車輪ロックの解除指令に基づいて、４個のブレーキ機構２７を制御して、車輪ロックを解除する。  
変速機コントローラＴＣは、車両速度コントローラＳＣから送信されたギア変更指令に基づいて、自動変速機を制御する。
【００２１】
次に、図２を用いて、本実施形態による車両の制御装置に用いる車両速度コントローラＳＣのシステム構成について説明する。  
図２は、本発明の一実施形態による車両の制御装置に用いる車両速度コントローラＳＣの構成を示すシステム構成図である。
【００２２】
本実施形態による車両速度コントローラＳＣは、カーナビゲーションのような位置情報表示手段と、車間距離を制御する車速制御手段の少なくとも２つの機能を有しており、それぞれの機能に対応したオペレーティングシステム（ＯＳ）を搭載している。なお、車両速度コントローラＳＣは、２つのＯＳ以外にもＯＳを備えているが、少なくとも、位置情報表示手段のＯＳと、車速制御手段ＯＳは、道路情報などの位置情報を共有するものである。
【００２３】
車両速度コントローラＳＣは、演算処理部１００と、入出力制御部１１０を備えている。  
演算処理部１００は、位置を測定するための各種センサ（車輪速センサ１５０，方位センサ１５５，ジャイロ１６０，ＧＰＳ受信装置１６５）から出力されるセンサ情報から現在位置を検出する。そして、得られた現在位置情報を基に地図表示に必要な地図メッシュデータを地図データベース１２５から読み出し、地図データをグラフィックス展開する。この地図データに現在地を示すマークを重ね、ディスプレイ１２０へ表示する現在位置表示をディスプレイ１２０に表示する。また、演算処理部１００は、ユーザから指示された目的地と現在地を結ぶ最適な経路を探索し、その経路を地図に重ねてディスプレイ１２０に表示し、ユーザを目的地に誘導する経路誘導を実行する。さらに、演算処理部１００は、ユーザが必要とする動的情報を情報サービスセンターに問い合わせ、得られた動的情報をディスプレイ１２０へ表示する。以上のように、演算処理部１００は、カーナビゲーションのような位置情報表示手段としての機能を有しており、図４を用いて後述するように、この機能を達成するための第１のＯＳを備えている。
【００２４】
また、演算処理部１００は、レーダセンサＲＳから送信された車間距離，相対速度と、車輪速センサによって検出された自車速度と、設定手段ＳＥＴによって設定された目標車間距離と、位置情報表示手段と共有している道路情報に基づいて、目標速度を算出する。そして、車両速度コントローラＳＣは、算出された目標速度と自車速度に基づいて、目標トルクを算出し、エンジンコントローラＥＣとブレーキコントローラＢＣにそれぞれ目標トルク指令を送信する。また、車両速度コントローラＳＣは、ギア比を変更する必要があれば、変速機コントローラＴＣにギア変更指令を送信する。以上のように、演算処理部１００は、車速制御手段としての機能を有しており、図４を用いて後述するように、この機能を達成するための第２のＯＳを備えている。
【００２５】
入出力制御部１１０は、演算処理部１００と周辺デバイスを接続するユニットであり、周辺デバイスのインタフェースに応じたＩ／Ｏを備える。入出力制御部１１０の詳細については、図３を用いて後述する。入出力制御部１１０には、ディスプレイ１２０，地図データベース１２５，音声入出力装置１３０，入力装置１３５，ＬＡＮ装置１４０，通信装置１４５，車輪速センサ１５０，方位センサ１５５，ジャイロ１６０，ＧＰＳ受信装置１６５，放送受信装置１７０が接続されている。
【００２６】
ディスプレイ１２０は、入出力制御部１１０で生成されたグラフィックス情報を表示するユニットであり、ＣＲＴや液晶ディスプレイで構成される。また、演算処理部１００とディスプレイ１２０間の信号Ｓ１は、ＲＧＢ信号やＮＴＳＣ（National Television System Committee）信号でる。
【００２７】
通信装置１４５は、公衆回線網や専用回線網と接続し、双方向通信するための装置で、公衆回線網に接続するための機器として携帯電話やＰＨＳなどが、専用回線網としてＭＣＡ無線などがある。また、有料道路の料金や通行税を徴収するために設置が進んでいるＥＴＣ（自動料金徴収システム）といったＤＳＲＣ（短距離スポット通信）もここに含まれる。通信装置１４５を介して、車載用ナビゲーション手段からインターネットに接続することで、極めて豊富な最新コンテンツを車内に取り込むことができる。コンテンツの例として、自車両が位置する場所の半径２ｋｍ内の地図メッシュデータ、案内情報、検索情報、道路勾配、道路の曲率半径、交差点の位置を含む地図情報がある。
【００２８】
放送受信装置１７０は、地上に設置された放送局や衛星から送られる放送波を受信するための装置である。放送波は、大きくアナログ放送とデジタル放送に分離され、主にデジタル放送で受信した内容を受信機でデコードし、演算処理部１００でフィルタリング処理することで必要な情報を抽出する。
【００２９】
地図データベース１２５は、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭ、ＤＶＤ−ＲＡＭ、ＩＣカード、ハードディスクといった大容量記憶媒体から構成される。地図データベースは、地図表示で必要とする地図メッシュデータ，案内情報，検索情報等を格納している。また、通信装置１４５や放送受信装置１７０を介して、車両外部から地図メッシュデータ、案内情報、検索情報や、車両制御で必要とする道路勾配、道路の曲率半径、目標地点までの距離などを記録し、または随時更新して格納している。
【００３０】
音声入出力装置１３０は、経路誘導などにおいて演算処理部１００が生成したユーザへのメッセージ（例えば、誘導案内音声）を音声信号に変換する。また、音声入出力装置１３０は、ユーザが発した声を音声認識し、その認識結果を演算処理部１３０に転送する。なお、音声入出力装置１３０は、音声信号をデジタル信号に変換する機能のみ搭載し、音声認識は演算処理部１００で実行してもよいものである。
【００３１】
入力装置１３５は、ユーザからの指示を受け付けるユニットであり、スクロールキーや縮尺変更キーなどのハードスイッチ，ジョイスティック，及びディスプレイ上に設置されたタッチパネル，ステアリングに取り付けられたセット，リジューム，キャンセル，車間距離設定スイッチなどで構成する。また、赤外線で通信するリモコンであってもよいものである。
【００３２】
ＬＡＮ装置１４０は、車両内に設置された様々な機器と双方向通信するための装置である。ＬＡＮは、その用途毎に異なるＬＡＮに接続するのが一般的であり、情報系，制御系，電装系，診断系に分類できる。また各々の用途で要求される伝送スピードや品質が異なるため、複数の方式のＬＡＮを搭載してもよいものである。
【００３３】
車載ナビゲーション手段で位置を検出するために使用するセンサは、車輪の円周と計測される車輪の回転数の積から距離を測定し、さらに対となる車輪の回転数の差から移動体が曲がった角度を計測する車輪速センサ１５０や、地球が保持している磁場を検知し移動体が向いている方角を検出する方位センサ１５５や、光ファイバジャイロや振動ジャイロといった移動体が回転した角度を検出するジャイロ１６０や、ＧＰＳ衛星からの信号を受信し移動体とＧＰＳ衛星間の距離と距離の変化率を３個以上の衛星に対して測定することで移動体の現在位置，移動速度及び移動方位を測定するＧＰＳ受信装置１６５などから構成する。なお、位置検出には全てのセンサが必須ではなく、各々のセンサ単独ないし組み合わせであってもよいものである。
【００３４】
次に、図３を用いて、本実施形態による車両の制御装置に用いる車両速度コントローラＳＣの演算処理部１００及び入出力制御部１１０のハードウェア構成について説明する。  
図３は、本発明の一実施形態による車両の制御装置に用いる車両速度コントローラＳＣの演算処理部１００及び入出力制御部１１０のハードウェア構成図である。
【００３５】
入出力制御部１１０は、演算処理部１００と周辺デバイスを接続するユニットであり、周辺デバイスのインタフェースに応じたＩ／Ｏを備えている。Ｉ／Ｏには、Ａ／Ｄ変換器１１１，ＳＣＩ（Serial Communication Interface）１１２，ＰＩＯ（Parallel Input Output）１１３，カウンター１１４，描画コントローラ１１５などがある。Ａ／Ｄ変換器１１１は、入力されたアナログ信号をデジタル信号に変換する。ＳＣＩ１１２は、所定の通信速度で時系列的に通信するシリアル信号をパラレル信号に、パラレル信号をシリアル信号に変換する。ＰＩＯ１１３は、パラレル信号を所定のタイミングでサンプリングする。カウンター１１４は、パルス信号を積分することで所定時間単位に入力されたパルス数をカウントし手いる。描画コントローラ１１５は、描画データを画素情報に高速に変換し、所定のビットレートでディスプレイに表示信号を出力する。
【００３６】
入出力制御部１１０は、プロセッサバスＰＢを介して演算処理部１００に接続されている。また、周辺デバイスとの入出力動作完了などを通知するため、割込み信号線ＩＳがプロセッサ１１２に対して出力される。図３では説明のため割込み信号線ＩＳとプロセッサバスＰＢが信号線であるように記載しているが、実際には、割込み信号線ＩＳはプロセッサバスＰＢの一部である。
【００３７】
演算処理部１００は、数値演算及び各デバイスを制御するといった様々な処理を実行するプロセッサ１０２と、地図データ，検索データ，演算データといったデータ類及び処理プログラムを格納するメモリ１０４と、高速にメモリとメモリ間及びメモリと各デバイス間のデータ転送を実行するＤＭＡ（Direct  Memory  Access）１０６といったデバイスによって構成されている。本実施形態の特徴である共有オブジェクトは、メモリ１０４に格納される。
【００３８】
次に、図４を用いて、本実施形態による車両の制御装置に用いる車両速度コントローラＳＣのハードウェア構成とソフトウェア構成の関係について説明する。
図４は、本発明の一実施形態による車両の制御装置に用いる車両速度コントローラＳＣのハードウェア構成とソフトウェア構成を示すブロック図である。
【００３９】
プロセッサ１０２は、複数個のオペレーティングシステムを動作させるためのマイクロプロセッサである。メモリ１０４は、オペレーティングシステムプログラムＯＳ１，ＯＳ２と、各オペレーティングシステム上で動作するタスクプログラムＴＡ，ＴＢ，ＴＣ，ＴＤ，ＴＥ，ＴＦと、ＯＳ間制御機能プログラムＣＯＮＴとを保持している。
【００４０】
オペレーティングシステムプログラムＯＳ１，ＯＳ２は、リスケジューラプログラムＯＳ１−Ｒ，ＯＳ２−Ｒと、各オペレーティングシステムのための入出力ドライバプログラムＯＳ１−Ｄ，ＯＳ２−Ｄと、割込みハンドラプログラムＯＳ１−Ｉ，ＯＳ２−Ｉとを保持している。
【００４１】
ＯＳ間制御機能プログラムＣＯＮＴは、共有オブジェクトＣＯと、ＯＳコンテクスト切替ＯＳ−ＣＨとを保持している。共有オブジェクトＣＯは、ＯＳ間共有メモリＣＭと、ＯＳ間通信機能ＣｏＦと、ＯＳ間セマフォ機能ＣｅＦとを保持している。なお、これらのプログラムは、プロセッサ１０２によって読み出されて実行される。
【００４２】
プロセッサ１０２は、割込み信号線ＩＳによって通知される外部割込みなどからの内部割込みをマスクできる機能を備えている。割込みマスクとは、プログラムが割込みマスクを解除するまで、特定の割込みが入ることを遅延させる機能である。一般に、割込みマスク機能には、次の３種類が存在する。  
（１）全割込みマスク：全ての割込みをマスクする。  
（２）個別割込みマスク：個々の割込みをそれぞれマスクできるようにする。  
（３）割込みレベルマスク：各割込みにレベルを設定し、指定レベル以下の割込みをマスクする。
【００４３】
プロセッサ１０２の種類によって、上記（１）（２）の組合せ、または（１）（３）の組合せのいずれかを装備することが多いものである。後者の組合せを装備するプロセッサを採用する場合、対応する入出力装置の重要性や最小応答時間に応じ割込みレベルを割り当てることになる。
【００４４】
本実施形態による車両速度コントローラＳＣは、２つのオペレーティングシステムＯＳ１，ＯＳ２を並列に動作させる。オペレーティングシステムＯＳ１，ＯＳ２は、各自に割り当てられたメモリ、及びプロセッサ資源を用い、タスクＴＡ，…，ＴＦを実行する。なお、図中では、オペレーティングシステム数が２個、全タスク数が６個の例を示しているが、これらの数値よりも多い、または、少ないオペレーティングシステム，タスクを実装することも可能である。本実施形態では、オペレーティングシステム上のタスク数の動的な変更は想定しないが、各オペレーティングシステムが動的にタスク生成・削除を行うことは可能である。また、オペレーティングシステムＯＳ１，ＯＳ２の組み合わせはがいかなる種類であってもよく、例えば，一方を短起動周期のリアルタイムＯＳ（例：起動周期１０［ｍｓ］）、他方を長起動周期のリアルタイムＯＳ（例：起動周期１００［ｍｓ］）とする。また、説明の便宜上、第２のオペレーティングシステムＯＳ２の優先順位は、第１のオペレーティングシステムＯＳ２より優先順位が高いと仮定する。この仮定では、第２のオペレーティングシステムＯＳ２のいずれかのタスクが実行状態の場合は第２のオペレーティングシステムＯＳ２がプロセッサ資源を使用し、第２のオペレーティングシステムＯＳ２のすべてのタスクがアイドル状態またはウェイト状態の場合は第１のオペレーティングシステムＯＳ１にコンテクストが切り替えられ、プロセッサ資源が使用する。
【００４５】
オペレーティングシステムＯＳ１，ＯＳ２の入出力ドライバＯＳ１−Ｄ、ＯＳ２−Ｄは、入出力装置との間でデータ入出力を処理する。入出力ドライバＯＳ１−Ｄ，ＯＳ２−Ｄは、各タスクから入出力装置を制御するためのインタフェースを提供し、入出力装置を読み書きすることでデータ入出力したり、入出力装置を制御するといった機能を提供する。
【００４６】
割込みハンドラＯＳ１−Ｉ，ＯＳ２−Ｉは、入出力装置からの割込み要求を受ける。割込みハンドラＯＳ１−Ｉ，ＯＳ２−Ｉは、割込みの種別毎に呼び出され、ユーザが定義した割込み処理プログラムを実行する。
【００４７】
リスケジューラ２０８，２０９は、タスクの生成・削除・停止・再開や、外部割込み・内部割込みに伴ってタスク切替を行わなければならない場合に起動される。リスケジューラは直前に実行していたタスクの実行環境（プログラムカウンタ，ステータスレジスタ，汎用レジスタなど）をタスク管理テーブルに格納し、新たに実行すべきタスクを決定し、そのタスクの実行環境をタスク管理テーブルから取り出し各レジスタに設定することで、選択したタスクを実行する。
【００４８】
ＯＳ間制御機能ＣＯＮＴは、第１のオペレーティングシステムＯＳ１及び第２のオペレーティングシステムＯＳ２を一つのプロセッサ１０２上で連携しながら動作させるためのものである。ＯＳ間制御機能ＣＯＮＴは、共有オブジェクトＣＯと、ＯＳコンテクスト切替ＯＳＣＨとを備えている。共有オブジェクトＣＯは、複数のオペレーティングシステム上で動作する複数のタスクから、全てのタスクが共有すべき情報の排他管理や同期処理を実行する機能である。共有オブジェクトＣＯは、ＯＳ間共有メモリＣＭと、ＯＳ間通信機能ＣｏＦと、ＯＳ間セマフォ機能ＣｅＦとを備えている。ＯＳ間共有メモリＣＭは、第１のオペレーティングシステムＯＳ１と第２のオペレーティングシステムＯＳ２間の両者からアクセス可能なメモリである。ＯＳ間通信機能ＣｏＦは、第１のオペレーティングシステムＯＳ１と第２のオペレーティングシステムＯＳ２間でメッセージ転送を行うものである。ＯＳ間セマフォ機能ＣｅＦは、第１のオペレーティングシステムＯＳ１と第２のオペレーティングシステムＯＳ２間で、排他制御，及び同期を実現するものである。また、ＯＳコンテクスト切替２１８は、第１のオペレーティングシステムＯＳ１と第２のオペレーティングシステムＯＳ２の実行環境を切り替えるものである。
【００４９】
車両速度コントローラＳＣにおいて、共有オブジェクトＣＯが管理する情報は、例えば，自車両の現在位置や、目的地、経由地といったノード単位で管理すべき位置情報や、渋滞情報や所定地点までの経路情報といったリンク単位で管理すべき位置情報や、位置情報とそれに付加された静的情報・動的情報や、自車両の周囲の情報である車間距離や、相対速度や、自車速度等がある。静的情報とは、施設の名称やサービス内容といった時間によって変化しない情報である。動的情報とは、営業時間や駐車場の満空情報といった時間と共に変化する情報である。なお、共有オブジェクトに登録するする情報はこれらに限ったものではなく、様々な情報を登録・参照することが可能である。
【００５０】
ところで、複数のオペレーティングシステムからＯＳ間共有メモリを参照するとき、次のような問題が発生する。第１に、例えば，第１のオペレーティングシステムＯＳ１上で実行されるアプリケーションから情報登録をしている最中にＯＳコンテクスト切替が発生し、第２のオペレーティングシステムＯＳ２上で実行されるアプリケーションから同一情報を参照しようとするとする場合、情報の登録が中途半端であると誤った情報を参照する可能性がある。
【００５１】
第２に、第１のオペレーティングシステムＯＳ１上で実行されるアプリケーションから情報登録をしても、第２のオペレーティングシステムＯＳ２上で実行中のアプリケーションが情報更新を認識することができないことになる。第３に、各々のアプリケーションに上記機能を個別に実装すると、新たな情報を複数のオペレーティングシステム間で共有しようとしたとき、プログラムの修正が発生し、開発工数や期間が増加することになる。
【００５２】
そこで、本実施形態では、上述の問題を解決するため、アプリケーションから複数のオペレーティングシステムで共有すべき情報を管理する共有オブジェクトＣＯを分離・独立させ、複数のオペレーティングシステムから同時に共有オブジェクトＣＯへの登録・参照が発生しても情報を排他的にアクセスする機能や、共有オブジェクトに登録や参照といった作業をしたとき、他のアプリケーションに情報登録や更新がされた旨のメッセージを通知する機能を備えるようにしている。これら機能は、共有オブジェクトＣＯからＯＳ間共有メモリＣＭ，ＯＳ間通信機能ＣｏＦ，ＯＳ間セマフォ機能ＣｅＦを組み合わせて呼び出すことにより実現する。
【００５３】
共有オブジェクトＣＯにアクセスするためのインタフェースとして、それぞれのオペレーティングシステムのアプリケーションに対して、共有オブジェクトの作成，共有オブジェクトへの登録，共有オブジェクトの参照，共有オブジェクトの削除といったＡＰＩ（Application Programing Interface）を用いている。また、オブジェクト毎のアクセスを実現するため、共有すべきオブジェクト毎に異なるＡＰＩを設けるか、または、ＡＰＩに対する引数でオブジェクトを判別するようにしている。これら共通のＡＰＩを用い、各アプリケーションより共有オブジェクトにアクセスする。
【００５４】
共有オブジェクトＣＯのＯＳ間共有メモリＣＭは、オペレーティングシステム間で高速なデータ交換を実現することを目的とし、第１のオペレーティングシステムＯＳ１と第２のオペレーティングシステムＯＳ２の両者から読み書きが可能なものである。ＯＳ間通信機能ＣｏＦは、各オペレーティングシステムに対応するメッセージキューを準備し、各オペレーティングシステム間でメッセージを受け渡す。ＯＳ間セマフォ機能ＣｅＦは、バイナリセマフォで、オペレーティングシステム間での排他制御を実現するために使用する。ＯＳコンテクスト切替２１８は、割込み要求やＯＳ間制御機能の呼び出しによりオペレーティングシステムの切替が必要と判断されたときコンテクストを切り替える。
【００５５】
次に、図５を用いて、本実施形態による車両の制御装置に用いるプロセッサ１０２の内部構成について説明する。  
図５は、本発明の一実施形態による車両の制御装置に用いるプロセッサ１０２の内部構成を示すブロック図である。
【００５６】
プロセッサ１０２は、キャッシュメモリ１０２Ａと、ＣＰＵ１０２Ｂと、汎用レジスタ１０２Ｃと、プログラムカウンタ１０２Ｄと、ステータスレジスタ１０２Ｅと、割込みコントローラ１０２Ｆと、タイマ装置１０２Ｇとを備えている。キャッシュメモリ１０２Ａ，ＣＰＵ１０２Ｂ，汎用レジスタ１０２Ｃ，プログラムカウンタ１０２Ｄ，ステータスレジスタ１０２Ｅは、互いに、データ転送を行うデータバスＤａＢ及びアドレス指定を行うアドレスバスＡｄＢによって接続されている。
【００５７】
キャッシュメモリ１０２Ａは、メモリ１０４上のデータまたは命令を一時的に格納するバッファ記憶装置である。ＣＰＵ１０２Ｂは演算回路であり、メモリ１０４若しくはキャッシュメモリ１０２Ａ上に存在する命令を順次読み出して実行する。命令実行に際して、演算結果を一時的に保持するための汎用レジスタ１０２Ｃと、実行命令アドレスを保持するプログラムカウンタ１０２Ｄと、実行状態を保持するステータスレジスタ１０２Ｅが用いられる。
【００５８】
入出力制御部１１０からの割込み信号線ＩＳと、タイマ装置１０２Ｇは、割込みコントローラ１０２Ｆに接続される。割込みコントローラ１０２Ｆは、ＣＰＵ１０２Ｂに対して割込み状態信号ＩＳＳを生成する。割込み状態信号ＩＳＳは、ＣＰＵ１０２Ｂに対して現在如何なる種類の割込みが発生しているかを示す信号線である。通常、ステータスレジスタ１０２Ｅは現在の割込みマスクに関する情報を有しており、割込み状態信号ＩＳＳで指定される割込みを受け付けるか否かを決定する。割込みを受け付ける場合、割込みコントローラ１０２Ｆは、プログラムカウンタ１０２Ｄ、ステータスレジスタ１０２Ｅなどの値を書き換え、対応する割込み処理プログラムを実行させる。
【００５９】
次に、図６を用いて、共有オブジェクトの作成について説明し、図７を用いて、共有オブジェクトへの登録について説明し、図８を用いて、共有オブジェクトの参照について説明する。  
最初に、図６を用いて、共有オブジェクトの作成処理の内容について説明する。
図６は、本発明の一実施形態による車両の制御装置に用いる共有オブジェクトの作成処理の内容を示すフローチャートである。
【００６０】
ステップｓ１００において、第２オペレーティングシステムＯＳ２は、指定された共有オブジェクトの属性や、必要なメモリ量に基づいて、共有オブジェクトＣＯが使用するＯＳ間共有メモリＣＭを取得する。ＯＳ間共有メモリＣＭは、共有メモリとして割り当てられたメモリ空間より、未使用のメモリ空間を探し出し、そのメモリ区間を該共有オブジェクトＣＯに割り当てる。
【００６１】
ステップｓ１１０において、第２オペレーティングシステムＯＳ２は、ＯＳ間共有メモリＣＭが取得できたか否かを判断し、取得できた場合にはステップｓ１２０に進み、取得できなかった場合にはステップｓ１４０に進む。例えば、空きメモリ空間が不足し、ＯＳ間共有メモリが取得できないといったエラーが発生した場合はエラー処理ｓ１４０に処理を遷移する。
【００６２】
ＯＳ間共有メモリＣＭの取得が成功すると、ステップｓ１２０において、第２オペレーティングシステムＯＳ２は、共有オブジェクトＣＭを排他的に管理するためのＯＳ間セマフォＣｅＦを作成する。ここで使用するＯＳ間セマフォＣｅＦは、バイナリセマフォであり、複数のオペレーティングシステム上の一つのタスクのみセマフォを取得できる。
【００６３】
次に、ステップｓ１３０において、第２オペレーティングシステムＯＳ２は、は、ＯＳ間セマフォＣｅＦがセマフォを作成できたか否かを判断する。セマフォが作成できた場合はステップｓ１５０に進み、失敗した場合はエラー処理ｓ１４０に遷移する。
【００６４】
ステップｓ１１０の判断でＯＳ間共有メモリが取得できなった場合や、ステップｓ１３０の判断でＯＳ間セマフォＣｅＦが作成できなった場合には、ステップｓ１４０において、第２オペレーティングシステムＯＳ２は、エラー処理を実行する。エラー処理の内容としては、取得した資源を解放する。ここで解放する資源とは、ＯＳ間共有メモリやＯＳ間セマフォである。これら資源を解放することで、ＯＳ間共有メモリやＯＳ間セマフォで使用するメモリ資源がリークするこを防止する。
【００６５】
ステップｓ１３０の判断でＯＳ間セマフォＣｅＦが作成できた場合には、ステップｓ１５０において、第２オペレーティングシステムＯＳ２は、作成した共有オブジェクトＣＯに情報を登録ないし参照したとき、ＯＳ間メッセージ通信でメッセージを送信するか判定する。ここでの判定処理は、共有オブジェクト作成時の入力パラメータより判定し、メッセージ通信先が入力されている場合は通信要求有りと判断する。通信要求有りと判定された場合はステップ１００７に進み、無しと判定された場合は共有オブジェクトの作成処理を終了する。
【００６６】
通信要求有りと判定されると、ステップｓ１６０において、第２オペレーティングシステムＯＳ２は、共有オブジェクトＣＯに情報を登録ないし参照したとき、ＯＳ間メッセージ通信でメッセージ送信する相手先のタスクを登録する。ここで登録するタスクは、一つであってもよいし、複数であってもよいものである。
【００６７】
なお、上述の説明では、共有オブジェクト作成時に、共有オブジェクトに情報を登録ないし参照したとき、ＯＳ間メッセージ通信でメッセージ送信する相手先のタスクを登録するものとして説明したが、さらに共有オブジェクトに情報を登録ないし参照するアプリケーションから、メッセージを通知するアプリケーションを設定する構成でもよいものである。これにより、共有オブジェクト作成後も自由にメッセージ通知先を設定できるため、既存のアプリケーションの修正無しに位置情報を登録・参照するアプリケーションを新たに追加することができるようになる。
【００６８】
なお、上述の説明では、共有オブジェクトの作成を、第２オペレーティングシステムＯＳ２が行うものとしているが、第１オペレーティングシステムＯＳ１が行ってもよいものである。
【００６９】
また、上述の説明は、共有オブジェクトＣＯの作成処理についてであるが、共有オブジェクトの削除処理では、上述したエラー処理と同様に、共有オブジェクトが使用していたＯＳ間共有メモリ及びＯＳ間セマフォを解放する処理を実行する。
【００７０】
次に、図７を用いて、共有オブジェクトへの登録処理について説明する。  
図７は、本発明の一実施形態による車両の制御装置に用いる共有オブジェクトの登録処理の内容を示すフローチャートである。
【００７１】
ステップｓ２００において、登録処理を実行するオペレーティングシステム（例えば、第１オペレーティングシステム）は、登録するオブジェクト種別に応じ、対応するＯＳ間セマフォＣｅＦを取得する。セマフォを取得する方法には、セマフォが取得できないときは直ちにエラーリターンする方法、所定時間取得できないときはエラーリターンする方法、取得できるまで永遠に待つ方法などがある。ここでは、所定時間取得できないときはエラーリターンする方法を採用するようにしている。エラーリターンした場合は、共有オブジェクトへの登録処理を終了する。
【００７２】
次に、ステップｓ２１０において、登録処理を実行するオペレーティングシステムは、登録するオブジェクト種別に応じて、ＯＳ間共有メモリＣＭに与えられた情報を登録する。
【００７３】
次に、ステップｓ２２０において、登録処理を実行するオペレーティングシステムは、現在登録処理中の共有オブジェクトにおいて、情報登録されたときにメッセージ通信すべきタスクが登録されているかを判断する。登録されていない場合はステップｓ２４０に遷移し、登録されている場合はステップｓ２３０に進む。
【００７４】
メッセージ通信すべきタスクが登録されている場合には、ステップｓ２３０において、登録処理を実行するオペレーティングシステムは、登録されている１ないし複数のタスクに共有オブジェクトへの登録が実行されたことをメッセージ通信で通知する。ここで、登録したタスクと通知するタスクが同一オペレーティングシステム上で動作している場合は、そのオペレーティングシステムに備えられたメッセージ通信を、異なるオペレーティングシステム上で動作している場合は、ＯＳ間メッセージ通信を用いる。
【００７５】
次に、ステップｓ２４０において、登録処理を実行するオペレーティングシステムは、ステップｓ２００で取得したＯＳ間セマフォを解放し、共有オブジェクトへの登録処理を終了する。
【００７６】
以上の処理において、ステップｓ２１０〜ｓ２３０の処理が実行中は、ＯＳ間セマフォ機能ＣｅＦは、他のＯＳからのセマフォ取得を禁止するようにしている。従って、例えば，第１のオペレーティングシステムＯＳ１上で実行されるアプリケーションから情報登録をしている最中にＯＳコンテクスト切替が発生し、第２のオペレーティングシステムＯＳ２上で実行されるアプリケーションから同一情報を参照しようとするとする場合、情報の登録が中途半端であると誤った情報を参照するような事態を回避することができる。
【００７７】
また、第１のオペレーティングシステムＯＳ１上で実行されるアプリケーションから情報登録すると、ステップｓ２３０の処理により、他のタスクに登録メッセージを送信するようにしているので、第２のオペレーティングシステムＯＳ２上で実行中のアプリケーションが情報更新を認識することが可能となる。
【００７８】
さらに、共有オブジェクトは、各々のアプリケーションが共有しているので、新たな情報を複数のオペレーティングシステム間で共有しようとするときにも、プログラムの修正が不要となり、開発工数や期間を短縮することができる。
【００７９】
次に、図８を用いて、共有オブジェクトの参照処理について説明する。  
図８は、本発明の一実施形態による車両の制御装置に用いる共有オブジェクトの参照処理の内容を示すフローチャートである。
【００８０】
ステップｓ３００において、参照処理を実行するオペレーティングシステム（例えば、第１オペレーティングシステム）は、参照するオブジェクト種別に応じ、対応するＯＳ間セマフォＣｅＦを取得する。セマフォを取得する方法には、セマフォが取得できないときは直ちにエラーリターンする方法、所定時間取得できないときはエラーリターンする方法、取得できるまで永遠に待つ方法などがある。ここでは、所定時間取得できないときはエラーリターンする方法を採用するようにしている。エラーリターンした場合は、共有オブジェクトへの参照処理を終了する。
【００８１】
次に、ステップｓ３１０において、参照処理を実行するオペレーティングシステムは、参照するオブジェクト種別に応じて、ＯＳ間共有メモリＣＭに与えられた情報を参照する。
【００８２】
次に、ステップｓ３２０において、参照処理を実行するオペレーティングシステムは、現在参照処理中の共有オブジェクトにおいて、情報参照されたときにメッセージ通信すべきタスクが登録されているかを判断する。登録されていない場合はステップｓ３４０に遷移し、登録されている場合はステップｓ３３０に進む。
【００８３】
メッセージ通信すべきタスクが登録されている場合には、ステップｓ２３０において、参照処理を実行するオペレーティングシステムは、登録されている１ないし複数のタスクに共有オブジェクトへの参照が実行されたことをメッセージ通信で通知する。ここで、参照したタスクと通知するタスクが同一オペレーティングシステム上で動作している場合は、そのオペレーティングシステムに備えられたメッセージ通信を、異なるオペレーティングシステム上で動作している場合は、ＯＳ間メッセージ通信を用いる。
【００８４】
次に、ステップｓ３４０において、参照処理を実行するオペレーティングシステムは、ステップｓ３００で取得したＯＳ間セマフォを解放し、共有オブジェクトへの参照処理を終了する。
【００８５】
以上の処理において、ステップｓ３１０〜ｓ３３０の処理が実行中は、ＯＳ間セマフォ機能ＣｅＦは、他のＯＳからのセマフォ取得を禁止するようにしている。従って、例えば，第１のオペレーティングシステムＯＳ１上で実行されるアプリケーションから情報を参照をしている最中にＯＳコンテクスト切替が発生し、第２のオペレーティングシステムＯＳ２上で実行されるアプリケーションから同一情報を登録しようとするとすることにより、誤った情報を参照するような事態を回避することができる。
【００８６】
また、第１のオペレーティングシステムＯＳ１上で実行されるアプリケーションから情報を参照すると、ステップｓ３３０の処理により、他のタスクに登録メッセージを送信するようにしているので、第２のオペレーティングシステムＯＳ２上で実行中のアプリケーションが情報の参照を認識することが可能となる。
【００８７】
次に、図９〜図１１を用いて、本実施形態による車両の制御装置の具体例について説明する。  
最初に、図９を用いて、本実施形態による車両の制御装置に、車両速度制御アプリケーションとナビアプリケーションを実装した場合の本実施形態による車両速度コントローラＳＣのハードウェア構成とソフトウェア構成の関係について説明する。
図９は、本発明の一実施形態による車両の制御装置に用いる車両速度コントローラＳＣのハードウェア構成とソフトウェア構成を示すブロック図である。なお、図４と同一符号は、同一部分を示している。
【００８８】
本実施形態では、第１のオペレーティングシステムＯＳ１のアプリケーションとして、車両速度制御アプリケーションＳＣＡを実装している。また、第２のオペレーティングシステムＯＳ２のアプリケーションとして、ナビアプリケーションＮＡを実装している。第１のオペレーティングシステムＯＳ１は、走行制御を高速・高信頼に行うための単純な構成のリアルタイムオペレーティングシステムである。第２のオペレーティングシステムＯＳ２は、カーナビゲーションといった低速だが複雑なリアルタイム処理を要求するアプリケーションを実行するためリアルタイムオペレーティングシステムである。
【００８９】
ナビ基本機能ＳＣＡ−Ｐは、ナビゲーション装置で必要とする基本機能を備えたライブラリである。ナビ基本機能ＳＣＡ−Ｐには、地図表示機能，検索機能，自車位置測定機能，推奨経路探索機能，推奨経路誘導機能などを備えている。ナビアプリケーションＮＡは、位置情報やユーザ操作情報を解析し、ナビ基本機能ＳＣＡ−Ｐを呼び出すことで、ディスプレイや音声といった出力インタフェースを介しユーザにナビ情報を提供する。道路情報マネージャＮＡ−Ｒは、道路情報を共有オブジェクトＣＯに登録すると共に、共有オブジェクトＣＯから道路情報を参照する。ここで、共有オブジェクトＣＯに登録する情報は、車両位置の道路勾配や道路の曲率半径などの道路情報や、施設の位置情報やそれに付帯する静的／動的な情報や、道路渋滞情報や、推奨経路情報などの付帯情報である。ここで、道路渋滞情報や推奨経路情報の表現方法として、位置情報点列の羅列で表現する方法や、線状のリンクで表現する方法など様々な方法がある。
【００９０】
道路情報ハンドラＳＣＡ−Ｒは、道路情報マネージャＮＡ−Ｒが登録した道路情報を参照すると共に、共有オブジェクトＣＯに必要な情報を登録する。速度制御基本機能ＳＣＡ−Ｐは、車間距離，相対速度，自車速度から目標速度を設定するが、その際、道路情報ハンドラＳＣＡ−Ｐが共有オブジェクトＣＯから参照した道路情報に基づいても、目標速度を設定する。そして、速度制御基本機能ＳＣＡ−Ｐは、目標速度に基づいて、目標エンジントルクや目標制動トルクを計算する。
【００９１】
次に、図１０及び図１１を用いて、本実施形態による車両の制御装置に実装した車両速度制御アプリケーションの処理内容について説明する。
図１０及び図１１は、本発明の一実施形態による車両の制御装置に実装した車両速度制御アプリケーションの処理内容を示すフローチャートである。なお、図１１のステップｓ４３５は、図１０のステップｓ４３０から続く処理である。
【００９２】
ステップｓ４００において、車両速度制御アプリケーションＳＣＡの速度制御基本機能ＳＣＡ−Ｓは、図２に示した車輪速センサ１５０の出力により、自車速度Ｖ0を取得する。
【００９３】
次に、ステップｓ４０５において、速度制御基本機能ＳＣＡ−Ｓは、図１に示したレーダセンサＲＳの出力により、相対速度Ｖｒを取得する。
【００９４】
次に、ステップｓ４１０において、速度制御基本機能ＳＣＡ−Ｓは、目標車間距離Ｄｒを設定する。先行車速度は、自車速度Ｖ0と相対速度Ｖrの和から測定が可能である。先行車速度がゼロ以下のとき、目標車間距離Ｄｒは停止車間距離に設定する。先行車速度がゼロ以上のときは自車速度Ｖ0に応じて走行目標車間距離Ｄrを設定する。
【００９５】
次に、ステップｓ４１５において、速度制御基本機能ＳＣＡ−Ｓは、測定車間距離Ｄmを取得する。
【００９６】
次に、ステップｓ４２０において、速度制御基本機能ＳＣＡ−Ｓは、直線路の目標速度Ｖtmpを設定する。目標速度Ｖtmpの設定は、以下の式（１）により計算される。  
Ｖtmp＝Ｖ0＋ｋi・∫（Ｄr−Ｄm）dt＋ｋp・∫（Ｄr−Ｄm）dt＋ｋd・Ｖr  …（１）
ここで、ｋi，ｋp，ｋdは制御定数であり、所定の値に設定されている。
【００９７】
次に、ステップｓ４２５において、道路情報ハンドラＳＣＡ−Ｒは、共有オブジェクトＣＯｂのＯＳ間共有メモリＣＭから道路情報を取得する。そして、速度制御基本機能ＳＣＡ−Ｓは、取得した道路情報から、これから走行する道路の曲率半径ｒを計算する。道路情報は、道路の各ポイント（ノード）の座標（緯度経度の座標）であるため、これらのノードを連続的に結ぶことによって、道路の曲率を求めることができる。また、道路情報には、道路の各ポイント（ノード）の座標の他に、標高も含まれているため、これらのノードを連続的に結ぶことによって、道路の勾配を求めることもできる。
【００９８】
次に、ステップｓ４３０において、速度制御基本機能ＳＣＡ−Ｓは、曲率半径rから決定される補正速度Ｖcoastを用いて、以下の式（２）から目標速度Ｖcmdを決定する。補正速度Ｖcoastは、道路の曲率半径に応じて減速するための速度の補正分である。  
Ｖcmd＝Ｖtmp−Ｖcoast（ｒ）  …（２）
次に、図１１のステップｓ４３５において、速度制御基本機能ＳＣＡ−Ｓは、目標速度Ｖcmdと、自車速度Ｖ0から、目標トルクＴcmdを、以下の式（３）を用いて算出する。  
Ｔcmd＝Ｋj・∫（Ｖcmd−Ｖ0）dt＋ＫQ・Ｖ0  …（３）
ここで、ＫjとＫqはそれぞれ制御定数であり、所定の値に設定されている。
【００９９】
次に、ステップｓ４４０において、速度制御基本機能ＳＣＡ−Ｓは、所定のトルクＴthと目標トルクＴcmdを比較する。目標トルクが大きい場合にはステップｓ４５５以降の処理に進み、目標トルクが小さい場合はステップｓ４４５以降の処理に進む。
【０１００】
目標トルクが小さい場合は、ブレーキを掛ける必要がある場合であり、ステップｓ４４５において、目標エンジントルクを図１のエンジンコントローラＥＣに送信する。その送信内容は、エンジンの回転数をアイドル回転数に設定するような目標エンジントルクである。エンジンコントローラＥＣは、この目標エンジントルクに応じて、エンジンを制御する。
【０１０１】
次に、ステップｓ４４０において、速度制御基本機能ＳＣＡ−Ｓは、図１のブレーキコントローラＢＣに目標トルクを送信する。その送信内容は、所定のトルクＴthと目標トルクＴcmdが一致するようにするためのブレーキの掛かり具合を示すトルクである。ブレーキコントローラＢＣは、この目標トルクに応じて、ブレーキの掛かり具合を制御する。
【０１０２】
一方、目標トルクが大きい場合には、ステップｓ４５５において、速度制御基本機能ＳＣＡ−Ｓは、エンジン回転数と車輪回転数から、現在の変速比ｎを計算する。
【０１０３】
次に、ステップｓ４６０において、速度制御基本機能ＳＣＡ−Ｓは、算出した変速比ｎが、車両に搭載している変速機の所定の変速比と同じか否かで、変速中を判定する。変速中の場合にはステップｓ４８５に進み、変速中でない場合にはステップｓ４６５に進む。
【０１０４】
変速中でない場合には、ステップｓ４６５において、速度制御基本機能ＳＣＡ−Ｓは、車両に搭載している変速機のギア比を用い、それぞれのギアを使用した場合の目標エンジン回転数を計算する。
【０１０５】
次に、ステップｓ４７０において、速度制御基本機能ＳＣＡ−Ｓは、それぞれのギアを使用した場合の目標エンジントルクを計算する。
【０１０６】
次に、ステップｓ４７５において、速度制御基本機能ＳＣＡ−Ｓは、目標エンジン回転数と、目標エンジントルクと、エンジン熱効率のマップから、それぞれのギア比を使用した場合のエンジン熱効率を検索する。その中で、エンジン熱効率が最良のギア比と、目標エンジン回転数，目標エンジントルクを選択する。例えば、図１１のステップｓ４７５中に図示したマップの例では、１速のギア比のときエンジン熱効率は２０％、２速のギア比のときエンジン熱効率は３０％であるので、エンジン熱効率に応じたギア比を選択する。
【０１０７】
次に、ステップｓ４８０において、速度制御基本機能ＳＣＡ−Ｓは、変速機コントローラＴＣにギア比を指令値として送信する。
【０１０８】
次に、ステップｓ４８５において、速度制御基本機能ＳＣＡ−Ｓは、エンジンコントローラＥＣに目標エンジントルクを指令値として送信する。エンジンコントローラＥＣは、受信した目標エンジントルクに基づいて、エンジンを制御する。
なお、ステップｓ４６０で変速中と判定した場合、エンジンコントローラは変速機コントローラの指令に基づいて動作するので、車間距離コントローラからの指令は送信しないものである。そして、ステップｓ４８５が実行される。
【０１０９】
次に、ステップｓ４９０において、速度制御基本機能ＳＣＡ−Ｓは、ブレーキコントローラに目標トルク（この例では、自動ブレーキ解除）の指令を送信する。
【０１１０】
以上の説明では、道路情報の中の曲率半径の情報に基づいて、走行速度を制御するようにしているが、他の道路情報に基づいて、走行速度を制御するようにしてもよいものである。すなわち、前述したように、道路情報マネージャＮＡ−Ｒは、道路情報を共有オブジェクトＣＯに登録すると共に、共有オブジェクトＣＯから道路情報を参照する。ここで、共有オブジェクトＣＯに登録する情報は、車両位置の道路勾配や道路の曲率半径などの道路情報や、施設の位置情報やそれに付帯する静的／動的な情報や、道路渋滞情報や、推奨経路情報などの付帯情報である。車両速度制御アプリケーションＳＣＡは、共有オブジェクトＣＯに登録された道路情報の中の、たとえば、勾配を参照して、自車の走行速度を制御することもできる。
【０１１１】
さらに、ナビアプリケーションＮＡは、放送受信装置１７０やＧＰＳ受信装置１６０のような放送または通信によって受信した信号を解析し、道路情報を抽出すると共に、道路情報に付帯する情報を抽出して、共有オブジェクトＣＯに付帯情報を登録する。車両速度制御アプリケーションＳＣＡは、共有オブジェクトＣＯに登録された道路情報及び付帯情報に基づいて、自車の走行速度を制御することができる。また、共有オブジェクトＣＯにナビアプリケーションＮＡが登録した自車の周囲の走行環境情報を参照して、自車の走行速度を制御することもできる。
【０１１２】
また、以上の説明では、ＡＣＣ（車速制御）とカーナビゲーションとの組合せについて説明したが、本発明は、この２つ以外ににも適用可能である。例えば、１）エンジン制御（燃料制御，スロットル制御など、点火タイミング制御，ＥＧＲ制御など）、２）レーダ制御（周波数制御，ＦＦＴ，トラッキング処理など）、３）ＡＣＣ制御（車速制御）、４）ブレーキ制御（ブレーキ液圧力制御）、５）ＡＴ制御（ソレノイドON/OFF，ライン圧力，変速比など）、６）カーナビゲーション、７）ステアリング制御（電流，油圧，ステアリングトルクなど）、８）カメラ制御（焦点距離，絞り，光量，波長など）の少なくとも２つ以上の組合せに対しても適用可能なものである。
【０１１３】
以上説明したように、本実施形態では、複数個の装置の持つ機能を１つの装置で実現し、情報を共有化するための通信タスクを設定することなく、道路情報を基にした車両速度の設定が可能となり、運転者に対してより高度な運転支援を行う車両の走行制御装置を提供することができる。
【０１１４】
また、複数個のオペレーティングシステムが１つのプロセッサ上で動作する位置情報表示装置において、共有オブジェクトを用いることで、各々のオペレーティングシステムに実装されたアプリケーションから非同期で道路情報を登録，参照することができるので、異なるオペレーティングシステム間で道路情報を用い連携動作するアプリケーションを容易に開発することが可能になる。共有オブジェクトを導入することにより、これら機能が実現できるため、使い勝手の良いユーザインタフェースを提供できる。
【０１１５】
さらに、一方のオペレーティングシステムのアプリケーションから道路情報を共有オブジェクトに登録・変更している最中に、他方のオペレーティングシステムのアプリケーションから道路情報を共有オブジェクトに登録ないし参照を禁止するように動作するため、誤った位置情報を参照することを回避して、システムの信頼性を向上することができる。
【０１１６】
そして、一方のオペレーティングシステムのアプリケーションから道路情報を共有オブジェクトに登録・更新したとき、複数のオペレーティングシステムで動作しているアプリケーションに対して道路情報の登録，参照を通知するメッセージを送信するように動作するため、メッセージに同期して直ちに道路情報を参照できるというリアルタイム性が改善されると共に、最小限のプロセッサ負荷で上記処理を実行できる。
【図面の簡単な説明】
【０１１７】
【図１】図１は、本発明の一実施形態による車両の制御装置の構成を示すシステム構成図である。
【図２】図２は、本発明の一実施形態による車両の制御装置に用いる車両速度コントローラＳＣの構成を示すシステム構成図である。
【図３】図３は、本発明の一実施形態による車両の制御装置に用いる車両速度コントローラＳＣの演算処理部１００及び入出力制御部１１０のハードウェア構成図である。
【図４】図４は、本発明の一実施形態による車両の制御装置に用いる車両速度コントローラＳＣのハードウェア構成とソフトウェア構成を示すブロック図である。
【図５】図５は、本発明の一実施形態による車両の制御装置に用いるプロセッサ１０２の内部構成を示すブロック図である。
【図６】図６は、本発明の一実施形態による車両の制御装置に用いる共有オブジェクトの作成処理の内容を示すフローチャートである。
【図７】図７は、本発明の一実施形態による車両の制御装置に用いる共有オブジェクトの登録処理の内容を示すフローチャートである。
【図８】図８は、本発明の一実施形態による車両の制御装置に用いる共有オブジェクトの参照処理の内容を示すフローチャートである。
【図９】図９は、本発明の一実施形態による車両の制御装置に用いる車両速度コントローラＳＣのハードウェア構成とソフトウェア構成を示すブロック図である。
【図１０】図１０は、本発明の一実施形態による車両の制御装置に実装した車両速度制御アプリケーションの処理内容を示すフローチャートである。
【図１１】図１１は、本発明の一実施形態による車両の制御装置に実装した車両速度制御アプリケーションの処理内容を示すフローチャートである。
【符号の説明】
【０１１８】
ＣＯ…共有オブジェクト
ＮＡ…ナビアプリケーション
ＯＳ１…第１のＯＳ
ＯＳ２…第２のＯＳ
ＯＳ−ＣＨ…ＯＳ切替手段
ＳＣＡ…車両速度制御アプリケーション
２１…油圧ポンプ
２２…比例ソレノイド弁
ＢＣ…ブレーキコントローラ
ＲＳ…レーダセンサ
ＳＣ…車両速度コントローラ
【図１】
2006027613.tif 000003
【図２】
2006027613.tif 000004
【図３】
2006027613.tif 000005
【図４】
2006027613.tif 000006
【図５】
2006027613.tif 000007
【図６】
2006027613.tif 000008
【図７】
2006027613.tif 000009
【図８】
2006027613.tif 000010
【図９】
2006027613.tif 000011
【図１０】
2006027613.tif 000012
【図１１】
2006027613.tif 000013