(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-28
(45)【発行日】2024-01-12
(54)【発明の名称】ユーザ選択軌跡の追従および車両動き推定による自動後退
(51)【国際特許分類】
B60W 30/10 20060101AFI20240104BHJP
B60W 50/10 20120101ALI20240104BHJP
B60W 60/00 20200101ALI20240104BHJP
B62D 13/06 20060101ALI20240104BHJP
【FI】
B60W30/10
B60W50/10
B60W60/00
B62D13/06
(21)【出願番号】P 2021505931
(86)(22)【出願日】2019-08-05
(86)【国際出願番号】 US2019045075
(87)【国際公開番号】W WO2020028893
(87)【国際公開日】2020-02-06
【審査請求日】2021-03-31
(32)【優先日】2018-08-03
(33)【優先権主張国・地域又は機関】US
(32)【優先日】2019-08-02
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】313005662
【氏名又は名称】コンチネンタル オートモーティブ システムズ インコーポレイテッド
【氏名又は名称原語表記】CONTINENTAL AUTOMOTIVE SYSTEMS, INC.
【住所又は居所原語表記】1 Continental Drive, Auburn Hills, Michigan 48326-1581, USA
(74)【代理人】
【識別番号】100114890
【氏名又は名称】アインゼル・フェリックス=ラインハルト
(74)【代理人】
【識別番号】100098501
【氏名又は名称】森田 拓
(74)【代理人】
【識別番号】100116403
【氏名又は名称】前川 純一
(74)【代理人】
【識別番号】100134315
【氏名又は名称】永島 秀郎
(74)【代理人】
【識別番号】100135633
【氏名又は名称】二宮 浩康
(74)【代理人】
【識別番号】100162880
【氏名又は名称】上島 類
(72)【発明者】
【氏名】マシュー ドナルド バークマイアー
(72)【発明者】
【氏名】シン ユー
(72)【発明者】
【氏名】ダニー バイナム
(72)【発明者】
【氏名】ジュリアン イプ
(72)【発明者】
【氏名】カイル ピー. カーペンター
(72)【発明者】
【氏名】エドゥアルド リャノス
(72)【発明者】
【氏名】ディレン ヴァーマ
【審査官】藤村 泰智
(56)【参考文献】
【文献】特開2004-291866(JP,A)
【文献】特開2005-014775(JP,A)
【文献】特開2016-203972(JP,A)
【文献】特開2015-205691(JP,A)
【文献】特開2005-313710(JP,A)
【文献】独国特許出願公開第102012001380(DE,A1)
【文献】米国特許出願公開第2018/0194344(US,A1)
【文献】国際公開第2018/160960(WO,A1)
(58)【調査した分野】(Int.Cl.,DB名)
B60W 30/00 ~ 60/00
B62D 13/06
(57)【特許請求の範囲】
【請求項1】
POIに向かって車両を後方向に自動運転する方法であって、
前記車両の後部に位置付けられかつデータ処理ハードウェアと通信するカメラから、1つ以上の画像を前記データ処理ハードウェアにおいて受信するステップと、
前記データ処理ハードウェアと通信するユーザインタフェースから、複数の中間地点を有する運転者計画経路を前記データ処理ハードウェアにおいて受信するステップと、
前記運転者計画経路に沿って前記車両を自律操縦させる1つ以上のコマンドを、前記データ処理ハードウェアから、前記データ処理ハードウェアと通信する運転システムに送信するステップと、
前記データ処理ハードウェアにおいて現車両位置を特定するステップと、
前記データ処理ハードウェアにおいて、前記運転者計画経路に基づき、推定後続車両位置を特定するステップであって、前記推定後続車両位置は、前記現車両位置から前記運転者計画経路に沿った後続中間地点にある、ステップと、
前記データ処理ハードウェアにおいて、前記推定後続車両位置および前記現車両位置に基づいて誤差を特定するステップと、
前記データ処理ハードウェアにおいて、前記誤差に基づいて、前記現車両位置から前記推定後続車両位置への経路調整を特定するステップと、
前記経路調整に基づき、前記推定後続車両位置に向かって前記車両を自律操縦させる命令を、前記データ処理ハードウェアから前記運転システムに送信するステップと、
を含み、
前記方法はさらに、
1つ以上の前記画像に経路を重ね合わせるステップと、
前記データ処理ハードウェアと通信する前記ユーザインタフェースによって、前記経路を前記運転者計画経路として調整する命令を含むコマンドを受信するステップと、
を含み、
前記経路の調整中に、前記経路が表示さ
れ、
前記ユーザインタフェースは、回転ノブを有し、
重ね合わされた前記経路は、前記回転ノブの手動操作により調整される、
方法。
【請求項2】
前記コマンドには、前記経路の距離を調整する命令が含まれる、請求項1記載の方法。
【請求項3】
前記コマンドには、前記経路の角度を調整する命令が含まれる、請求項1または2記載の方法。
【請求項4】
前記コマンドには、前記経路の終端部の角度を調整する命令が含まれる、請求項1から3までのいずれか1項記載の方法。
【請求項5】
前記現車両位置の特定するステップが、
1つ以上のホイールに関連付けられたホイールエンコーダセンサデータを受信するステップと、
ステアリング角度センサデータを受信するステップと、
を含み、
前記現車両位置は、前記ホイールエンコーダセンサデータおよび前記ステアリング角度センサデータに基づく、
請求項1から4までのいずれか1項記載の方法。
【請求項6】
POIに向かって車両を後方向に自動運転するシステムであって、前記システムには、
通信を行うデータ処理ハードウェアと、
前記データ処理ハードウェアと通信するメモリハードウェアと、
を有し、
前記メモリハードウェアには、前記データ処理ハードウェア上で実行される場合に前記データ処理ハードウェアに動作を実行させる命令が格納されており、前記動作は、
前記車両の後部に位置付けられかつ前記データ処理ハードウェアと通信するカメラから、1つ以上の画像を受信し、
前記データ処理ハードウェアと通信するユーザインタフェースから、複数の中間地点を有する運転者計画経路を受信し、
前記運転者計画経路に沿って前記車両を自律操縦させる1つ以上のコマンドを、前記データ処理ハードウェアと通信する運転システムに送信し、
現車両位置を特定し、
前記運転者計画経路に基づき、推定後続車両位置を特定し、ここで前記推定後続車両位置は、前記現車両位置から前記運転者計画経路に沿った後続中間地点にあり、
前記推定後続車両位置および前記現車両位置に基づいて誤差を特定するステップと、
前記誤差に基づいて、前記現車両位置から前記推定後続車両位置への経路調整を特定し、
前記経路調整に基づき、前記推定後続車両位置に向かって前記車両を自律操縦させる命令を前記運転システムに送信する、
ことを含み、
前記動作はさらに、
1つ以上の前記画像に経路を重ね合わせ、
前記データ処理ハードウェアと通信する前記ユーザインタフェースによって、前記経路を前記運転者計画経路として調整する命令を含むコマンドを受信する、
ことを含み、
前記経路の調整中に、前記経路が表示さ
れ、
前記ユーザインタフェースは、回転ノブを有し、
重ね合わされた前記経路は、前記回転ノブの手動操作により調整される、
システム。
【請求項7】
前記コマンドには、前記経路の距離を調整する命令が含まれる、請求項6記載のシステム。
【請求項8】
前記コマンドには、前記経路の角度を調整する命令が含まれる、請求項6または7記載のシステム。
【請求項9】
前記コマンドには、前記経路の終端部の角度を調整する命令が含まれる、請求項6から8までのいずれか1項記載のシステム。
【請求項10】
前記現車両位置の特定は、
1つ以上のホイールに関連付けられたホイールエンコーダセンサデータを受信し、
ステアリング角度センサデータを受信する、
ことを含み、
前記現車両位置は、前記ホイールエンコーダセンサデータおよび前記ステアリング角度センサデータに基づく、
請求項6から9までのいずれか1項記載のシステム。
【請求項11】
POIに向かって車両を後方向に自動運転する方法であって、前記方法は、
前記車両の後部に位置付けられかつデータ処理ハードウェアと通信する1つ以上のカメラから、1つ以上の画像を前記データ処理ハードウェアにおいて受信するステップと、
前記データ処理ハードウェアと通信するユーザインタフェースから運転者計画経路を前記データ処理ハードウェアにおいて受信するステップと、
前記運転者計画経路に沿って前記車両を自律操縦させる1つ以上のコマンドを、前記データ処理ハードウェアから、前記データ処理ハードウェアと通信する運転システムに送信するステップと、
前記データ処理ハードウェアにおいて、前記運転者計画経路に基づいて推定車両位置を特定するステップと、
前記データ処理ハードウェアにおいて現車両位置を特定するステップと、
前記データ処理ハードウェアにおいて、前記推定車両位置および前記現車両位置に基づいて誤差を特定するステップと、
前記データ処理ハードウェアにおいて、前記現車両位置から前記推定車両位置へと車両を自律操縦させかつ前記誤差がないようにする1つ以上の経路調整コマンドを特定するステップと、
前記データ処理ハードウェアから前記運転システムに1つ以上の前記経路調整コマンドを送信するするステップと、
を含み、
前記方法はさらに、
1つ以上の前記画像に経路を重ね合わせるステップと、
前記データ処理ハードウェアと通信する前記ユーザインタフェースによって、前記経路を前記運転者計画経路として調整する命令を含むコマンドを受信するステップと、
を含み、
前記経路の調整中に、前記経路が表示さ
れ、
前記ユーザインタフェースは、回転ノブを有し、
重ね合わされた前記経路は、前記回転ノブの手動操作により調整される、
方法。
【請求項12】
前記コマンドには、前記経路の距離を調整する命令が含まれる、請求項11記載の方法。
【請求項13】
前記コマンドには、前記経路の角度を調整する命令が含まれる、請求項11または12記載の方法。
【請求項14】
前記コマンドには、前記経路の終端部の角度を調整する命令が含まれる、請求項11から13までのいずれか1項記載の方法。
【請求項15】
前記現車両位置の特定するステップは、
1つ以上のホイールに関連付けられたホイールエンコーダセンサデータを受信するステップと、
ステアリング角度センサデータを受信するステップと、
を含み、
前記現車両位置は、前記ホイールエンコーダセンサデータおよび前記ステアリング角度センサデータに基づく、
請求項11から14までのいずれか1項記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ユーザ選択軌跡の追従および車両動き推定による自動後退のための方法および装置に関する。
【0002】
背景技術
トレーラは、一般に、動力を有する牽引車両によって牽引される、動力を有しない車両である。トレーラは、ユーティリティトレーラ、ポップアップ式キャンパ、トラベルトレーラ、家畜トレーラ、平台型トレーラ、閉鎖型カーキャリアおよびボートトレーラなどであってよい。牽引車両は、自動車、クロスオーバ、トラック、バン、SUV(sports-utility-vehicle)、RV(recreational vehicle)またはトレーラに連結されてトレーラを牽引するように構成された別の任意の車両であってよい。トレーラは、トレーラヒッチを使用して、動力を有する車両に連結可能である。受け手側のヒッチは、牽引車両に取り付けられ、連結を形成するためにトレーラヒッチに連結される。トレーラヒッチは、ボールおよびソケット、第五輪およびがん首、またはトレーラジャックであってよい。別の連結機構も使用可能である。いくつかの実施例では、トレーラと、動力を有する車両との間の機械的連結に加え、トレーラは、牽引車両に電気的に接続されている。したがってこの電気的な接続により、トレーラは、動力を有する車両の後方ライト回路から給電されることが可能であり、これにより、トレーラは、動力を有する車両のライトと同期するテールランプ、方向指示器およびブレーキライトを有することができる。
【0003】
コンピューティングおよびセンサ技術における最近の進歩は、車両自動運転の改良に結び付いている。したがって、牽引車両からトレーラへの経路を計画することができ、これによりトレーラに向かって車両を自律操縦できるように自動車両後退システムを提供することは望ましい。
【0004】
概要
本開示の一態様により、POI(point of interest)に向かって車両を後方向に自動運転する方法が提供される。この方法では、車両の後部に位置付けられたかつデータ処理ハードウェアと通信するカメラから1つ以上の画像をデータ処理ハードウェアにおいて受信する。この方法ではまた、データ処理ハードウェアと通信するユーザインタフェースから運転者計画経路をデータ処理ハードウェアにおいて受信する。運転者計画経路には、複数の中間地点が含まれる。この方法では、運転者計画経路に沿って車両を自律操縦させる1つ以上のコマンドを、データ処理ハードウェアから、データ処理ハードウェアと通信する運転システムに送信する。この方法では、データ処理ハードウェアにおいて現車両位置を特定する。さらに、この方法では、データ処理ハードウェアにおいて、運転者計画経路に基づき、推定後続車両位置を特定する。推定後続車両位置は、現車両位置から運転者計画経路に沿った後続の中間地点にある。この方法ではまた、データ処理ハードウェアにおいて、現車両位置から推定後続車両位置への経路調整を特定する。この方法ではさらに、経路調整に基づき、推定後続車両位置に向かって車両を自律操縦させる命令を、データ処理ハードウェアから運転システムに送信する。
【0005】
本開示の別の一態様により、POIに向かって後方向に車両を自動運転する方法が提供される。この方法では、車両の後部に位置付けられたかつデータ処理ハードウェアと通信する1つ以上のカメラから、1つ以上の画像をデータ処理ハードウェアにおいて受信する。この方法では、データ処理ハードウェアと通信するユーザインタフェースから運転者計画経路をデータ処理ハードウェアにおいて受信する。この方法ではまた、運転者計画経路に沿って車両を自律操縦させる1つ以上のコマンドを、データ処理ハードウェアから、データ処理ハードウェアと通信する運転システムに送信する。さらに、この方法では、データ処理ハードウェアにおいて、運転者計画経路に基づいて推定車両位置を特定する。この方法ではまた、データ処理ハードウェアにおいて現車両位置を特定し、データ処理ハードウェアにおいて推定車両位置および現車両位置に基づき、誤差を特定する。この方法ではまた、データ処理ハードウェアにおいて、現車両位置から推定車両位置へと車両を自律操縦させかつ誤差がないようにする1つ以上の経路調整コマンドを特定する。この方法では、データ処理ハードウェアから運転システムに1つ以上の経路調整コマンドを送信する。
【0006】
本開示の別の一態様により、POIに向かって後方向に車両を自律操縦するシステムが提供される。このシステムには、データ処理ハードウェアと、このデータ処理ハードウェアと通信するメモリハードウェアとが含まれている。このメモリハードウェアには、データ処理ハードウェア上で実行される場合にこのデータ処理ハードウェアに上述の方法を含む動作を実行させる命令が格納されている。
【0007】
本開示の複数の態様の複数の実装形態には、1つ以上の以下の選択的な特徴が含まれていてよい。いくつかの実装形態において、この方法では、1つ以上の画像に経路を重ね合わせ、データ処理ハードウェアと通信するユーザインタフェースによってコマンドを受信する。このコマンドには、経路を運転者計画経路として調整する命令が含まれる。コマンドには、経路の距離を調整する命令が含まれていてよい。いくつかの実施例において、このコマンドには、経路の角度を調整する命令が含まれている。このコマンドには、経路の終端部の角度を調整する命令が含まれていてよい。
【0008】
いくつかの実施例において、現車両位置の特定では、1つ以上のホイールに関連付けられたホイールエンコーダセンサデータを受信し、ステアリング角度センサデータを受信する。現車両位置は、ホイールエンコーダセンサデータおよびステアリング角度センサデータに基づく。
【0009】
本開示の1つ以上の実装形態の詳細は、添付の図面および以下の説明に記載されている。他の態様、特徴および利点は、説明および図面ならびに特許請求の範囲から明らかになろう。
【図面の簡単な説明】
【0010】
【
図1】トレーラから特定の距離にある例示的な牽引車両の概略平面図である。
【
図2A】例示的な牽引車両システムの概略図である。
【
図2B】別の例示的な牽引車両システムの概略図である。
【
図3A】システムの例示的なステートチャートの概略図である。
【
図3B】別のシステムの例示的なステートチャートの概略図である。
【
図5B】別の例示的な距離モードの別の概略図である。
【
図6A】例示的なbi-arcモードの概略図である。
【
図6B】別の例示的なbi-arcモードの概略図である。
【
図7】Aは、軌跡生成計算の概略図であり、Bは、別の軌跡生成計算の概略図である。
【
図9】POIに向かって後方向に車両を自動運転する例示的な方法の概略図である。
【
図10】POIに向かって後方向に車両を自動運転する別の例示的な方法の概略図である。
【0011】
種々異なる図において同様の参照符号は、同様の要素を示す。
【0012】
詳細な説明
自動車、クロスオーバ、トラック、バン、SUV(sports-utility-vehicle)およびRV(recreational vehicle)のような、しかしこれらに限定されない牽引車両は、トレーラを牽引するように構成されていてよい。牽引車両は、トレーラヒッチによってトレーラに連結される。トレーラまでの手動による後退には、運転者の大きな努力が必要になることがある。運転者は、絶えず後方の車両カメラを監視して、車両の牽引ボールがトレーラのカプラの下に来るように車両を操舵しなければならない。したがって、車両の後方環境の画像から識別されかつユーザディスプレイのようなユーザインタフェースに表示される、運転者によって指定された位置、例えばトレーラに向かって自律的に後退することができる牽引車両を有することが望ましい。
【0013】
図1~
図8Bを参照すると、いくつかの実装形態において、牽引車両100の運転者が望むのは、牽引車両100と、牽引車両100の後ろに位置付けられたトレーラ200とを連結することである。いくつかの実装形態において、運転者が望むのは、牽引車両の後ろの位置またはトレーラ200を指定し、これにより、牽引車両100が、この位置またはトレーラ200に向かって自律操縦できるようにすることである。牽引車両100とトレーラ200とが位置合わせされると、牽引車両100は、(例えば運転者によって、または自律的に)トレーラ200にヒッチング可能である。いくつかの実施例において、牽引車両100には、牽引ボール122を有する牽引車両ヒッチ120が含まれる。トレーラ200には、トレーラカプラ212および牽引バー214を含むトレーラヒッチ210が含まれていてよい。したがって、牽引車両100とトレーラ200とがヒッチングされる場合、牽引ボール122は、トレーラカプラ212に連結される。
【0014】
牽引車両100は、例えば、x、yおよびz成分を有する運転コマンドに基づき、道路表面にわたって牽引車両100を操縦する運転システム110を含んでいてよい。図示したように運転システム110には、右前輪112、112a、左前輪112、112b、右後輪112、112cおよび左後輪112、112dが含まれる。運転システム110には、別の車輪構成も含まれていてよい。運転システム110には、それぞれの車輪112、112a~dに関連付けられたブレーキを含むブレーキシステム114と、牽引車両100の速度および方向を調整するように構成されている加速システム116とが含まれていてもよい。さらに、運転システム110には、それぞれの車輪112、112a~dに関連付けられたタイヤと、タイヤ空気と、ばねと、ショックアブソーバと、牽引車両100をその車輪112、112a~dに連結しかつ牽引車両100と車輪112、112a~dとの間の相対的な運動を可能にする連結機構と含むサスペンションシステム118が含まれていてよい。サスペンションシステム118は、牽引車両100の高さを調整するように構成されていてよく、これにより、牽引車両ヒッチ120(例えば牽引車両ヒッチボール122)と、トレーラヒッチ210(例えばトレーラヒッチカプラ212)とを位置合わせでき、これにより、牽引車両100とトレーラ200と間の自律的な接続が可能になる。
【0015】
牽引車両100は、牽引車両100によって定められる互いに垂直な3つの軸、すなわち横方向軸X、前後方向軸Yおよび中央の垂直方向軸Zに対して相対的な運動のさまざまな組み合わせによって道路表面にわたって移動可能である。横方向軸Xは、牽引車両100の右側と左側との間に延在している。前後方向軸Yに沿った前方への運転方向は、Fで示されており、前進運動とも称される。さらに、前後方向軸Yに沿った後尾または後方への運転方向はRで示されており、後方運動とも称される。サスペンションシステム118により、牽引車両100のサスペンションが調整される場合、牽引車両100は、X軸および/またはY軸の周りに傾斜可能であるか、または中央の垂直方向軸Zに沿って移動可能である。
【0016】
牽引車両100は、ユーザインタフェース130を含んでいてよい。ユーザインタフェース130は、ディスプレイ132、入力メカニズムとして使用されるノブ134およびボタン136を含んでいてよい。いくつかの実施例において、ディスプレイ132にはノブ134およびボタン136が表示されてよい。これに対し、別の複数の実施例では、ノブ134およびボタン136は、ノブとボタンとの組み合わせである。いくつかの実施例において、ユーザインタフェース130は、1つ以上の入力メカニズムまたはタッチスクリーンディスプレイ132を介して、運転者から1つ以上の運転者コマンドを受け取り、かつ/または1つ以上の通知を運転者に表示する。ユーザインタフェース130は、車両コントローラ150と通信し、この車両コントローラ150それ自体は、センサシステム140と通信する。いくつかの実施例では、ディスプレイ132により、牽引車両100の周囲環境の画像143が表示され、これにより、1つ以上の動作の実行を開始する1つ以上のコマンドが(運転者から)ユーザインタフェース130によって受け取られることになる。いくつかの実施例では、ユーザディスプレイ132により、車両100の後方環境の画像143が表示される。この場合、運転者は、画像143内の位置であって、運転者が車両をそこに向かって自律操縦させたい位置を選択可能である。いくつかの実施例では、ユーザディスプレイ132により、牽引車両100の後ろに位置付けられたトレーラ200の1つ以上の表現が表示される。この場合、運転者は、トレーラ200の1つの表現を選択して、車両100がこの表現に向かって自律操縦するようにするか、または運転者は、経路162を選択し、これにより、選択されたトレーラ200に向かって牽引車両100を自律操縦させる。
【0017】
牽引車両100は、確実かつロバストな運転を提供するためにセンサシステム140を含んでいてよい。センサシステム140は、牽引車両100の周囲環境の認識を作成するために、個別にまたは互いに使用され得る異なるタイプの複数のセンサを含んでいてよく、この周囲環境の認識は、センサシステム140によって検出される対象体および障害物に基づいて、牽引車両100が、運転するために、またインテリジェントな決定を行うに際して運転者を補助するために使用される。センサシステム140は、1つ以上のカメラ142を含んでいてよい。センサシステム140は、牽引車両100に対する後方の運転経路のビューを提供するために、車両100に取り付けられたリアカメラ142を含んでいてよい。リアカメラ142は、広角パノラマまたは半球画像を作成するために、大きな視覚的な歪みを形成する超広角レンズを含む魚眼レンズを含んでいてよい。魚眼カメラにより、極めて広い画角を有する画像が取り込まれる。さらに、魚眼カメラによって取り込まれる画像は、特徴的な凸状の非直線的な外観を有する。また車両100の後方の画像を取り込むために別の複数のタイプのカメラも使用可能である。
【0018】
センサシステム140は、慣性計測装置(IMU:inertial measuring unit)、レーダ、ソナー、LIDAR(Light Detection and Ranging、これは離れたターゲットの範囲および/または別の情報を見つけるために散乱光の特性を測定する光学式リモートセンシングを必要とし得る)、LADAR(Laser Detection and Ranging)、超音波センサなどの別のセンサを含んでいてよいが、これらのセンサには限定されない。
【0019】
車両コントローラ150には、コンピューティングデバイス(またはプロセッサ)152(例えば1つ以上のコンピューティングプロセッサを有する中央処理ユニット)が含まれており、これは、コンピューティングプロセッサ152上で実行可能な命令を格納可能な非一時的なメモリ154(例えばハードディスク、フラッシュメモリ、ランダムアクセスメモリ、メモリハードウェア)と通信する。
【0020】
図2Aおよび
図2Bを参照すると、トレーラ200に向かって牽引車両100を自動運転するための経路162を運転者が選択するのを補助するヒッチ支援システム160が、車両コントローラ150によって実行される。運転者は、ユーザインタフェース130により、例えば、ディスプレイ13上で選択を行うことにより、ヒッチ支援システム160の実行を開始することができる。開始されると、ヒッチ支援システム160は、車両100の経路162を表示するようにディスプレイ132に命令し、この経路162は、車両100の後方環境のカメラ画像143にスーパーインポーズされる。運転者は、ユーザインタフェース130を使用して、計画経路162を変更可能である。例えば、仮想ステアリングホイールをシミュレートするノブ134を回すことができる。運転者がノブ134を回すのに伴い、ディスプレイ132に示される計画経路162が更新される。運転者は、ディスプレイ132に表示される更新された計画経路162が、トレーラ表現138と交わるまで、または別の対象体であって、運転者が車両100をそこに向かって運転したい別の対象体と交わるまで、表示された経路162を調整する。表示された計画経路162に運転者が満足すると、運転者は、経路162の最終決定を指示する行動を実行し、これにより、車両100は、計画経路を自律追従することができる。
【0021】
いくつかの実装形態では、ヒッチ支援システム160には、軌跡生成器170と、動き推定器180と、経路追跡器182とが含まれている。軌跡生成器170は、運転者選択経路162に基づいて、車両100の推定位置を特定する。動き推定器180は、車両100の実際位置を特定し、経路追跡器182は、推定位置Peと実際位置Paとに基づいて誤差184を特定し、車両100の計画経路162を調整して、実際位置Paと推定位置Peとの間に誤差184がないようにする。
【0022】
いくつかの実装形態では、軌跡生成器170は、カメラ142から画像143を受信し、受信された画像143に車両経路162をスーパーインポーズする。運転者は、1つ以上の経路モード172に基づいて経路162選択を調整可能である。いくつかの実施例において、経路モード172には、角度サブモード174および距離サブモード176を有する弧モード172が含まれる。いくつかの実施例において、経路モード172には、bi-arcモード178が含まれていてよい。したがって運転者は、トレーラ200または対象体への経路162を特定して調整するために、角度サブモード174、距離サブモード、および/またはbi-arcモード178の間で選択可能である。
【0023】
図3Aおよび
図3Bを参照すると、いくつかの実施例では、角度サブモード174および距離サブモード176は、弧モード172の一部であり(
図3A)、したがって運転者は、最初にモード172、178を選択し、次に選択されたモード172、178内でサブモードを選択する。したがって、例えば、ディスプレイ132には、弧モードボタン136およびbi-arcモードボタン136が表示可能であり、運転者は、これらのボタンから選択可能である。
図3Bには、それぞれサブモード/モード174、176、178が独立している一実施例が示されている。したがって、ボタン136を押圧または押下することにより、3つのモード174、176、178間で交代する。
【0024】
角度サブモード174は、
図4Aおよび
図4Bに示したように経路162の湾曲の角度を調整するように構成されている。したがって運転者は、
図4Aに示したように、表示される経路162が右に向かう湾曲を有するようにノブ134を右に回すことができる。さらに、運転者は、
図4Bに示したように、表示される経路162が左に向かう湾曲を有するようにノブ134を左に回すことができる。距離サブモード176は、
図5Aおよび
図5Bに示したように、予想される経路162の長さを調整するように構成されている。例えば、
図5Aを参照すると、運転者は、画像143のトレーラ表現138に隣接して経路162の到達地点を位置付けるためにノブ134を回転可能である。
図5Bを参照すると、画像143には、
図5Aに示した経路よりも長さの短い経路162が示されている。したがって、この場合、運転者が望み得るのは、後方向Rに数メートルだけ牽引車両100を自律的に移動することである。bi-arcモード178は、
図6Aおよび
図6Bに示したように、経路162の終端部において、トレーラ200(または他の対象体)に対して、車両100をどのように配向するかを指示するアプローチ角度を調整するように構成されている。例えば、bi-arcモード178は、運転者が牽引車両100とトレーラ200とを位置合わせするのを補助して、車両100の前後方向軸Yと、トレーラ200の前後方向軸Yとが位置合わせされるようにし、これにより、牽引車両100とトレーラ200との間のヒッチング過程中に運転者が補助される。
図7Aおよび
図7Bを参照すると、弧モード172およびbi-arcモード178は共に同じ終端点を有するが、bi-arcモード178では、トレーラ200に向かうアプローチ角度の調整が可能になる。いくつかの実施例において、運転者がbi-arcモード178に切り換えると、軌跡生成器170により、開始位置および終了位置が同じに維持される。bi-arcモード178では、運転者は、トレーラ200へのアプローチ角度だけを調整可能である。bi-arcモード178では運転者は、距離を調整しない。いくつかの実施例において、運転者選択経路162の半径および長さにより、車両100の最終位置が決定される。車両コントローラ150は、経路162を決定するために、最適な計算であるDubins経路を使用する。
【0025】
bi-arcモード178が選択的であるいくつかの実装形態において、弧モード172選択に基づく経路162に運転者が満足する場合、運転者は、ボタン136を押圧することによって経路162を最終決定可能である。そうでなければ、運転者は、bi-arcまたは別の適切な経路162の形状を変化させるために、ノブ134の3度目の調整を行う。これにより、トレーラ200または別の対象体への最終アプローチ角度が調整可能である。運転者がアプローチ角度の選択に満足すると、運転者は、経路選択を最終決定するためにボタン136を押圧する。
【0026】
いくつかの実装形態では、運転者は、トレーラ200または別の対象体またはPOIが、車両100のリアカメラ142の視野内にある位置に牽引車両100を駐車する。牽引車両100のエンジンはアイドリング状態であってよく、トランスミッションは、駐車位置にあってよい。運転者は、ボタン136を押圧する、かつ/またはディスプレイ132において選択を行うことにより、軌跡生成器170を起動可能である。いくつかの実施例において、ディスプレイ132には、運転者が弧モード172を開始できるようにする選択可能な選択肢またはボタン136が表示される。軌跡生成器170は、
図3Aおよび
図3Bに示したように、弧モード172の角度サブモード174を実行することによって開始される。運転者は、経路162の距離を調整するために、例えばボタン136を押圧することによって距離サブモード176に切り換える。いくつかの実施例では、角度サブモード174と距離サブモード176との間で切り換え、ディスプレイに所望の経路162が示されるまで経路162を調整することによって経路162を調整可能である。運転者は、経路162の外側の境界線164がトレーラ200(すなわち画像143内のトレーラ表現138)または別のPOIに交わるように経路162を調整する。
【0027】
いくつかの実装形態では、トレーラ200またはPOIへの最終アプローチ角度は、例えば、車両前後方向軸Yとトレーラ前後方向軸Yとを位置合わせするのに重要である。この場合、運転者は、(ディスプレイ132に表示される)「弧/Bi-Arcモード」ボタンを選択するかまたは押圧して、bi-arcモード178に切換可能である。bi-arcモード178では、以前に設定した経路162の終端点は変わらないままであり、運転者は、ノブ134で最終アプローチ角度を調整する。運転者が最終アプローチ角度および全軌跡または経路162に満足すると、運転者は、動作を実行することにより、選択された経路162を確認可能である。いくつかの実施例において、運転者は、トランスミッションを後退に切り換えるが、このことは、表示された経路162に運転者が満足したことを示す。いくつかの実施例において、運転者は、ブレーキを踏んだままでトランスミッションを後退に切り換え、次にブレーキを離すと、車両100は、選択された経路162を追従する。いくつかの実施例において、経路162に沿って後方向Rに車両が自律操縦する間に、運転者は、例えばブレーキを押圧することによって牽引車両100を停止可能である。これにより、車両コントローラ150は、ヒッチ支援システム160から出る。
【0028】
いくつかの実装形態では、軌跡生成器170により、デフォルトで経路距離が設定され、これにより、運転者は、経路がトレーラ200または他のPOIに交わるまで、ステアリング角度だけを調整することが可能になる。
【0029】
いくつかの実装形態では、最終アプローチ角度は調整されない。その代わりに最終アプローチ角度は、つねに初期車両出発角度と同じである。したがって最終車両前後方向軸Yは、初期車両前後方向軸Yと平行である。この場合、トレーラと交わるように経路162の最終位置を運転者が調整する。
【0030】
いくつかの実施例では、牽引車両100が、経路162に沿って後方向Rに操縦している間に、ディスプレイ132は、経路162に沿った車両100の経過を表示可能である。例えば、ディスプレイ132は、オリジナルの軌跡を地面に投影して表示可能であるが、この軌跡は、車両の位置の変化によって更新される。ディスプレイ132には、車両がこの軌跡をどの程度良好に追従しているかの表示を示すこともできる。
【0031】
いくつかの実装形態では、軌跡生成器170は、経路162を生成するために他の車両システムからデータを受信する。いくつかの実施例において、軌跡生成器170は、(x,y,θ)に定められる車両姿勢データを受信し、ここでxは、X-Y平面における、横軸Xに沿った牽引車両100の中心の位置であり、yは、X-Y平面における、前後方向軸Yに沿った牽引車両の中心の位置であり、またθは、牽引車両100の向きである。さらに、軌跡生成器170は、ノブ134の位置、例えばノブ134からノブ角度を受信可能である。軌跡生成器170はまた、モードボタン状態(すなわち弧モード172またはbi-arcモード178)と、サブモードボタン状態(すなわち角度サブモード174または距離サブモード176)を受信可能である。受信されたデータに基づき、軌跡生成器170は、経路162を調整し、経路162を表示するようにディスプレイ132に指示する。いくつかの実施例において、経路162には、外側の境界線164と、牽引ボール122の推定経路である牽引ボール経路166とが含まれる。軌跡生成器170はまた、経路162を調整するために運転者が選択したモード/またはサブモードを示す現在モードまたはサブモード状態を表示するようにディスプレイ132に指示可能である。
【0032】
図2Aおよび
図2Bに戻ると、ユーザインタフェース130を介して運転者が、その経路選択が完了したことを示すと、車両コントローラ150は、計画経路162を追従するために運転者支援システム190を実行する。運転者支援システム190には、経路追従動作192が含まれている。経路追従動作330は、選択された経路162を受信し、1つ以上の動作192a~cを実行し、これらの動作により、運転システム110にコマンド194が送信されて、計画経路162に沿って車両100を自動運転させる。計画経路162に沿って車両100が自律操縦するのに伴い、ヒッチ支援システム160は、以下で説明するように、動き推定器180および経路追跡器に基づいて経路162を連続的に更新する。
【0033】
図2Aおよび
図2Bに戻ると、車両100が、経路162に沿って後方向Rに自律操縦するのに伴い、動き推定器180により、車両100の現在位置Paが特定される。前に説明したように、軌跡生成器170により、計画経路162に基づいて車両100がどこにあるはずであるかが、すなわち推定位置Peが特定されるのに対し、動き推定器により、車両100の実際の位置Paが特定される。いくつかの実施例において、動き推定器には、相対的な車両位置および速度を出力する動き推定アルゴリズムが含まれている。例えば、動き推定アルゴリズムには、拡張カルマンフィルタ(EKF:Extended Kalman Filter)が含まれていてよい。EKFは、4つのホイールエンコーダのから測定値(例えば1回転当たり96個のティック)およびステアリング角度などを使用するが、これらに限定されない。動き推定器180は、これらの測定値を融合して、車両100の実際位置を特定する。動き推定器180は、牽引車両100が後方向に自律的に移動するのに伴い、牽引車両100の遅い速度に起因して自転車モデルを使用可能である。自転車モデルでは、2つの前輪を表すために前側の単一のステアリングホイールが使用され、2つの後輪を表すために後側の単一の非ステアリングホイールが使用される。これらのホイールは、単一の剛性リンクによって結合されている。動きは、2次元の水平な地表面に限定される。自転車モデルの入力は、速度およびステアリング角度であるのに対し、その状態は、位置および向きである。動き推定器180は、線速度および回転速度ならびに位置(例えば車両の配向)を推定する。いくつかの実施例では、動き推定器180により、任意のドリフトを改善するために、センサシステム140、例えばカメラ、レーダからのセンサデータ、GPS測定値が考慮される。
【0034】
いくつかの実装形態では、動き推定器180により、拡張カルマンフィルタ(EKF:Extended Kalman Filter)が使用される。EKF式は、以下で数式(3)~(7)としても規定される。
状態ベクトルは、式1に示された9つの成分を有する。すなわち、
μ=[x y θ v ω dlr drr dlf drf]T (1)
である。最初の3つは、車両の「姿勢」、(x,y,θ)である。次の2つは、線速度および角速度、(v,ω)である。最後の4つは、左後、右後、左前、右前の4つのタイヤがそれぞれ進んだ距離(dlr,drr,dlf,drf)である。
【0035】
完全な測定ベクトルは、式2に示された5つの成分を有する。
z=[dlr drr dlf drf φ]T (2)
最初の4つは、ここでも、4つのタイヤが進んだ距離(dlr,drr,dlf,drf)である。最後の成分φは、平均前輪角度(ステアリングホイール角度ではなく、長手方向軸に対するフロントタイヤの平均角度)である。動き推定器180により、車両速度推定値が供給される。距離の変化を時間の変化で除算(Δd/Δt)することによっておおよその速度を計算することが一般的であるが、これは、ホイールエンコーダ計数が比較的少なく、かつ車両が比較的緩慢に移動するここでの状況に対し、これは極めて雑音を含み得る。したがって、時間の変化による距離の変化の除算(Δd/Δt)を伴う直接の計算を回避するために、動き推定器180は、測定されたホイール累積距離に基づき、EKFを使用することにより、車両線速度vを推定し、除算を伴う明示的な速度計算を行わない。
【0036】
拡張カルマンフィルタは、2つの予測方程式および3つの計測方程式として記述可能である。予測方程式は
【数1】
である。式(3)により、状態μに対する更新が得られる。式(4)により、共分散Σに対する更新が得られる。共分散により、状態の現在の不確かさの推定が得られる。行例Rは、状態μについての雑音共分散である。
【0037】
計測更新方程式は、
【数2】
である。式(5)は、最適カルマンゲインKの値を設定する。式(6)により、状態μに対する更新が得られる。式(7)により、共分散Σに対する更新が得られる。行例Qは、測定zについての雑音共分散である。
【0038】
予測のためには非線形ベクトル関数gを定める必要がある。行列Gは、このベクトル関数の派生物である。便宜のために、これも同様に規定する。ベクトル関数gは
【数3】
によって与えられる。ここでwは、車両の「トラック幅」である。より具体的にいうと、これは、左側タイヤの中心から右側のタイヤの中心までの横方向距離である。ここではタイヤ間の前後の距離は同じであると仮定する。ホイールベースはlで表される。最後の2つの成分において、マイナスの符号があり、これらの式は、d
lfおよびd
rfから減算されることに注意されたい。このマイナスの符号により、後方向の運動が仮定される。したがってこの予想方程式は、前方向の運動には使用できない。しかしながら、車両の方向(前方向または後方向)についてのいくつかの測定値があれば、この方程式を前方向および後方向の両方について有効とするように最後の2つの成分の符号を変更する(前方向についてはプラス、後方向についてはマイナス)ことは容易なことであろう。
【0039】
行列Gは、9個の行および9個の列を有する。
【数4】
とする。Iは9×9の単位行列である。このとき
【数5】
である。他のすべての成分はゼロである。
【0040】
完全な更新において仮定されるのは、複数のホイールティックおよびホイール角度の測定値がすべて同時に利用可能であることである。ホイールティックだけが利用可能な場合、これらは別々に組み込み可能であり、ホイール角度だけが利用可能な場合、これは別々に組み込み可能である。完全な更新のために、ベクトルhを定義する。行列Hは、このベクトル関数の微分である。便宜のために、これも同様に規定する。
ベクトル関数hは、
【数6】
によって与えられる。H行列はhの微分であり、5×9である。ゼロでない成分は
H
11=H
22=H
33=H
44=1
H
54=-lω/(v
2+l
2ω
2),H
55=lv/(v
2+l
2ω
2),v
2+l
2ω
2≠0
である。特定の量h
5、H
54、H
55には、容易にゼロになり得る除数が含まれることに注意されたい。したがって実装形態では、除算を行う前にこれらの除数がゼロでないことをテストする必要がある。
【0041】
ステアリングホイール角度だけから成る測定が考慮できるのと同様に、ホイールティックだけから成る測定も考慮可能である。しかしながらこれらの変化形態は含まれない。というのは情報が得られたとすると、これらの変化形態は、簡単明瞭であるからである。
【0042】
計画経路162に沿って後方向Rに車両が自律操縦する間、軌跡生成器170により、計画経路162に基づいて車両100がどこにあるはずであるかが、すなわち推定位置Peが特定されるのに対し、動き推定器180により、車両100の実際位置Paが特定され、したがって経路追跡器182により、推定位置Peおよび実際位置Paに基づいて誤差184が特定される。経路追跡器182により、誤差184に基づいて車両の現在位置Paが調整され、これによって車両100により、計画経路162の追従が継続される。
【0043】
図8Aおよび
図8Bを参照すると、いくつかの実装形態では、経路追跡器182により、計画経路162に車両100を維持するために純粋な追跡アプローチが実行される。運転者選択経路162は、あらかじめ定められた時間間隔、例えば1分毎にサンプリングされ、これにより、計画経路162の牽引ボール経路166に沿って位置付けられる複数の中間地点168が生成される。経路追跡器182(例えばアルゴリズム)により、動き推定器180から受信される現牽引ボール位置および向きPaと、次の中間地点位置Pbとが比較される。車両ヒッチ支援システム160は、現中間地点Pb、すなわち車両がそれに向かって運転している中間地点に向かって車両ステアリングをつねに調整する。経路追跡器182により、車両牽引ボール122は、それぞれの中間地点168を追跡可能である。言い換えると、経路追跡器182により、牽引ボール122は、牽引ボール経路166に沿ってそれぞれの中間地点に行くことができる。いくつかの実施例において、中間地点168は、ワールド座標から車両座標に変換される。例えば、経路追跡器182により、牽引ボール位置Paおよび中間地点Pbに基づいて、最小回転半径円の中心Ccが計算される。次に経路追跡器182により、最小回転半径円の中心に基づいて車両回転半径Rrが計算される。最後に、経路追跡器182により、アッカーマン角度が使用され、最小回転半径円の中心に基づいて、ステアリング角度が計算される。言い換えると、経路追跡器182により、推定位置Peと、現在位置Paとが比較され、これによって車両が、経路を追従しており、次の中間地点Pbを特定し、現車両位置および向きから、次または後続の中間地点Pbへの経路を特定するかまたは調整することが保証される。したがって経路追跡器182によって維持されるのは、車両100が、計画経路から外れた場合に、牽引車両100が、計画経路に沿って自律操縦し、車両の動作または運転を調整することである。
【0044】
いくつかの実施例において、コントローラには、計画経路162に沿って1つ以上の対象体を識別する対象体検出システム(図示せず)が含まれている。この場合、ヒッチ支援システム160により、検出された1つ以上の対象体を避けるために経路162が調整される。いくつかの実施例では、ヒッチ支援システム160により、衝突の確率が特定され、この衝突の確率が、あらかじめ設定された閾値を上回る場合、ヒッチ支援システム160により、経路162が調整され、これが運転者支援システム190に送信される。
【0045】
選択された経路162に進入したことが運転者によって示されると、車両コントローラ150により、運転支援システム190が実行される。運転支援システム190それ自体には経路追従動作192が含まれる。経路追従動作192により、選択された経路162が受信され、1つ以上の動作192a~cが実行され、動作192a~cにより、運転システム110にコマンド194が送信され、これにより、計画経路に沿って後方向Rに車両100を自律運転させる。
【0046】
経路追従動作192a~cは、ブレーキング動作192a、加減速動作192bおよびステアリング動作192cのような1つ以上の動作を含んでいてよいが、これらには限定されない。それぞれの動作192a~cは、後方への運転、特定の角度での方向転換、ブレーキング、加速、減速などのような行動を車両100に取らせる。車両コントローラ150は、運転システム110を制御することにより、より具体的には運転システム110にコマンド194を出すことにより、道路表面にわたって任意の方向に車両100を操縦可能である。
【0047】
ブレーキング動作192aは、計画経路に基づき、車両100を停止させるかまたは車両100を減速することによって実行可能である。ブレーキング動作192aは、車両100を停止するかまたは車両100の速度を遅くするために、運転システム110、例えばブレーキシステム(図示せず)に信号またはコマンド194を送信する。
【0048】
加減速動作192bは、計画経路162に基づいて加速または減速することによって車両100の速度を変更するために実行可能である。加減速動作192bは、減速のためにブレーキシステム114に、または加速のために加速システム116に信号またはコマンド194を送信する。
【0049】
ステアリング動作192cは、計画経路162に基づいて車両100の方向を変更するために実行可能である。したがってステアリング動作192cにより、運転システム110に方向を変更させるステアリングの角度を示す信号またはコマンド194が加速システム130に送信される。
【0050】
図9には、
図1~
図8Bに説明したシステムを使用して、トレーラ200のようなPOIに向かって後方向Rに車両100(例えば牽引車両)を自律操縦する方法900の動作の例示的な構成が示されている。方法900では、ブロック902において、牽引車両100の後部に位置付けられかつデータ処理ハードウェア152と通信するカメラ142から、1つ以上の画像143をデータ処理ハードウェア152において受信する。方法900では、ブロック904において、データ処理ハードウェア152と通信するユーザインタフェース130から、運転者計画経路162をデータ処理ハードウェア152において受信する。運転者計画経路162には、複数の中間地点168が含まれる。方法900では、ブロック906において、運転者計画経路162に沿って車両100を自律操縦させる1つ以上のコマンド161、194を、データ処理ハードウェア152から、データ処理ハードウェア152と通信する運転システム110に送信する。方法900では、ブロック908において、現車両位置Paをデータ処理ハードウェア152において特定する。方法900では、ブロック910において、運転者計画経路に基づき、推定後続車両位置をデータ処理ハードウェア152において特定する。ここでこの推定後続車両位置は、現車両位置Paから、運転者計画経路162に沿った後続中間地点Pbにある。方法900では、ブロック912において、現車両位置Paから推定後続車両位置Pbへの経路調整をデータ処理ハードウェア152において特定する。方法900では、ブロック914において、経路調整に基づき、推定後続車両位置Pbに向かって車両100を自律操縦させる命令を、データ処理ハードウェア152から運転システム110に送信する。
【0051】
図10には、
図1~
図8Bに説明したシステムを使用して、トレーラ200のようなPOIに向かって後方向Rに車両100(例えば牽引車両)を自律操縦する別の方法1000の動作の例示的な構成が示されている。方法1000では、ブロック1002において、牽引車両100の後部に位置付けられかつデータ処理ハードウェア152と通信するカメラ142から、1つ以上の画像143をデータ処理ハードウェア152において受信する。方法1000では、ブロック1004において、データ処理ハードウェア152と通信するユーザインタフェース130から、運転者計画経路162をデータ処理ハードウェア152において受信する。方法1000では、ブロック1006において、運転者計画経路162に沿って車両100を自律操縦させる1つ以上のコマンドを、データ処理ハードウェア152から、データ処理ハードウェア152と通信する運転システム110に送信する。方法1000では、ブロック1008において、運転者計画経路162に基づき、推定車両位置Peをデータ処理ハードウェア152において特定する。方法1000では、ブロック1010において、現車両位置Paをデータ処理ハードウェア152において特定する。方法1000では、ブロック1012において、推定車両位置Peおよび現車両位置Paに基づき、データ処理ハードウェア152において誤差184を特定する。方法1000では、ブロック1014において、現車両位置Paから推定車両位置Peへと車両100を自律操縦させかつ誤差184がないようにする1つ以上の経路調整コマンドをデータ処理ハードウェア152において特定する。 方法1000では、ブロック1016において、データ処理ハードウェア152から運転システム110に1つ以上の経路調整コマンドを送信する。
【0052】
いくつかの実施例において、方法900、1000では、1つ以上の画像143に経路を重ね合わせ、データ処理ハードウェア152と通信するユーザインタフェース130によってコマンドを受信する。このコマンドには、経路を調整する命令が運転者計画経路162として含まれる。いくつかの実施例において、このコマンドには、経路の距離を調整する命令が含まれている。このコマンドには、経路の角度を調整する命令および/または経路の終端部の角度を調整する命令が含まれていてよい。
【0053】
いくつかの実装形態において、現車両位置の特定では、1つ以上のホイール112に関連付けられたホイールエンコーダセンサデータ145を受信し、ステアリング角度センサデータ145を受信する。現車両位置Paは、ホイールエンコーダセンサデータ145およびステアリング角度センサデータ145に基づく。
【0054】
上述のように、提案されたアルゴリズムは、GPU、グラフィックアクセラレータ、トレーニングまたはFPGAを具備した、またはこれらを具備しない標準のCPUでリアルタイムに動作するように設計されている。さらに、提案されたアプローチにより、運転者からの初期入力だけしか必要としない自動化された方法が提供される。さらに説明されたシステムにより、運転者に対するガイドラインの提供と、後方へのすべての機能の自動化との間の歩み寄りが提供される。
【0055】
ここで説明したシステムおよび技術のさまざまな実装形態は、デジタル電子回路、集積回路、特別に設計されたASIC(application specific integrated circuit)、コンピュータハードウェア、ファームウェア、ソフトウェアおよび/またはこれらの組み合わせで実現可能である。これらのさまざまな実装形態は、少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行可能および/またはインタープリト可能な1つ以上のコンピュータプログラムにおける実装形態を含むことができ、このプログラマブルプロセッサは、記憶システムおよび少なくとも1つの入力デバイスからデータおよび命令を受信し、また記憶システムおよび少なくとも1つの出力デバイスにデータおよび命令を送信するために接続される特殊用途または汎用のものであってよい。
【0056】
(プログラム、ソフトウェア、ソフトウェアアプリケーションまたはコードとしても知られている)これらのコンピュータプログラムには、プログラマブルプロセッサ用の機械命令が含まれ、高レベル手続および/またはオブジェクト指向プログラミング言語および/またはアセンブリ言語/機械語で実現可能である。ここで使用される「機械読み出し可能媒体」および「コンピュータ読み出し可能媒体」という用語は、機械読み出し可能信号として機械命令を受信する機械読み出し可能媒体を含む、プログラマブルプロセッサに機械命令および/またはデータを供給するために使用される任意のコンピュータプログラム製品、装置および/またはデバイス(例えば磁気ディスク、光ディスク、メモリ、PLD(Programmable Logic Device))のことである。「機械読み出し可能信号」という用語は、プログラマブルプロセッサに機械命令および/またはデータを供給するために使用される任意の信号のことである。
【0057】
本明細書で説明した対象事項および機能的な動作の実装形態は、本明細書で開示した複数の構造およびこれらの構造の等価物、またはこれらの1つ以上の組み合わせを含め、デジタル電子回路、またはコンピュータソフトウェア、ファームウェアまたはハードウェアで実現可能である。さらに本明細書で説明した対象事項は、1つ以上のコンピュータプログラム製品、すなわち、データ処理装置による実行のために、またはその動作を制御するためにコンピュータ読み出し可能媒体に符号化されるコンピュータプログラム命令の1つ以上のモジュールとして実装可能である。コンピュータ読み出し可能媒体は、機械読み出し可能記憶装置、機械読み出し可能記憶基体、メモリデバイス、機械読み出し可能伝播信号に影響を及ぼす組成物、またはこれらの1つ以上の組み合わせであってよい。「データ処理装置」、「コンピューティングデバイス」および「コンピューティングプロセッサ」という用語には、例としてプログラマブルプロセッサ、コンピュータまたはマルチプロセッサまたはマルチコンピュータを含む、データを処理するすべての装置、デバイスおよび機械が包含される。装置は、ハードウェアに加えて、対象となるコンピュータプログラムに対する実行環境を作成するコード、例えばプロセッサファームウェア、プロトコルスタック、データベース管理システム、オペレーティングシステムまたはこれらの1つ以上の組み合わせを構成するコードを含んでいてよい。伝播信号は、人工的に生成される信号、例えば、適切な受信装置への送信用に情報を符号化するために生成される、機械で生成される電気信号、光信号または電磁信号である。
【0058】
同様に、動作は、図面において特定の順序で描画されているが、このことは、このような動作が、ここで示した特定の順序または順番に実行されるか、または所望の結果を達成するために、説明されたすべての動作が実行されることを要求していると理解すべきではない。特定の状況では、マルチタスキングおよび並列処理が有利になることがある。さらに、上述の複数の実施形態においてさまざまなシステムコンポーネントが分離されていることは、すべての実施形態においてこのように分離されることを要求していると理解すべきではなく、上述のプログラムコンポーネントおよびシステムは、一般に、単一のソフトウェア製品に一体で統合可能であるか、または複数のソフトウェア製品にパッケージング可能であると理解すべきである。
【0059】
ここまで多くの実装形態を説明した。それにもかかわらず、本開示の精神および範囲を逸脱することなく、さまざまな変更を行い得ることを理解されたい。したがって別の実装形態も以下の特許請求の範囲内にある。