JP2019509922A - 自動運転車両を自動運転モードに再進入させるように制御するための経度のカスケードコントローラプリセット - Google Patents

自動運転車両を自動運転モードに再進入させるように制御するための経度のカスケードコントローラプリセット Download PDF

Info

Publication number
JP2019509922A
JP2019509922A JP2018515297A JP2018515297A JP2019509922A JP 2019509922 A JP2019509922 A JP 2019509922A JP 2018515297 A JP2018515297 A JP 2018515297A JP 2018515297 A JP2018515297 A JP 2018515297A JP 2019509922 A JP2019509922 A JP 2019509922A
Authority
JP
Japan
Prior art keywords
speed
adv
current
speed reference
determining
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2018515297A
Other languages
English (en)
Other versions
JP6606603B2 (ja
Inventor
ルオ、チー
コン、チー
ヂュ、ファン
フ、セン
ユ、シャン
ヂュ、ジェングアン
パン、ユチャン
ヘ、ジャルイ
ファン、ハオヤン
ヤン、グアン
ワン、ジンガオ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Baidu USA LLC
Original Assignee
Baidu USA LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Baidu USA LLC filed Critical Baidu USA LLC
Publication of JP2019509922A publication Critical patent/JP2019509922A/ja
Application granted granted Critical
Publication of JP6606603B2 publication Critical patent/JP6606603B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W60/00Drive control systems specially adapted for autonomous road vehicles
    • B60W60/005Handover processes
    • B60W60/0051Handover processes from occupants to vehicle
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/08Interaction between the driver and the control system
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units, or advanced driver assistance systems for ensuring comfort, stability and safety or drive control systems for propelling or retarding the vehicle
    • B60W30/08Active safety systems predicting or avoiding probable or impending collision or attempting to minimise its consequences
    • B60W30/095Predicting travel path or likelihood of collision
    • B60W30/0956Predicting travel path or likelihood of collision the prediction being responsive to traffic or environmental parameters
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W30/00Purposes of road vehicle drive control systems not related to the control of a particular sub-unit, e.g. of systems using conjoint control of vehicle sub-units, or advanced driver assistance systems for ensuring comfort, stability and safety or drive control systems for propelling or retarding the vehicle
    • B60W30/14Adaptive cruise control
    • B60W30/143Speed control
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W40/00Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models
    • B60W40/10Estimation or calculation of non-directly measurable driving parameters for road vehicle drive control systems not related to the control of a particular sub unit, e.g. by using mathematical models related to vehicle motion
    • B60W40/105Speed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W50/08Interaction between the driver and the control system
    • B60W50/082Selecting or switching between different modes of propelling
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0257Control of position or course in two dimensions specially adapted to land vehicles using a radar
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0268Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
    • G05D1/027Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising intertial navigation means, e.g. azimuth detector
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course or altitude of land, water, air, or space vehicles, e.g. automatic pilot
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle
    • G05D1/0278Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle using satellite positioning signals, e.g. GPS
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0062Adapting control system settings
    • B60W2050/007Switching between manual and automatic parameter input, and vice versa
    • B60W2050/0074Driver shifts control to the controller, e.g. by pressing a button
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W50/00Details of control systems for road vehicle drive control not related to the control of a particular sub-unit, e.g. process diagnostic or vehicle driver interfaces
    • B60W2050/0062Adapting control system settings
    • B60W2050/0075Automatic parameter input, automatic initialising or calibrating means
    • B60W2050/0095Automatic control mode change
    • B60W2050/0096Control during transition between modes
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • B60W2420/40Photo or light sensitive means, e.g. infrared sensors
    • B60W2420/403Image sensing, e.g. optical camera
    • B60W2420/408
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2420/00Indexing codes relating to the type of sensors based on the principle of their operation
    • B60W2420/54Audio sensitive means, e.g. ultrasound
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2510/00Input parameters relating to a particular sub-units
    • B60W2510/06Combustion engines, Gas turbines
    • B60W2510/0657Engine torque
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2520/00Input parameters relating to overall vehicle dynamics
    • B60W2520/10Longitudinal speed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2520/00Input parameters relating to overall vehicle dynamics
    • B60W2520/10Longitudinal speed
    • B60W2520/105Longitudinal acceleration
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2540/00Input parameters relating to occupants
    • B60W2540/10Accelerator pedal position
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2540/00Input parameters relating to occupants
    • B60W2540/12Brake pedal position
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2540/00Input parameters relating to occupants
    • B60W2540/18Steering angle
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2552/00Input parameters relating to infrastructure
    • B60W2552/53Road markings, e.g. lane marker or crosswalk
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2554/00Input parameters relating to objects
    • B60W2554/20Static objects
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2554/00Input parameters relating to objects
    • B60W2554/40Dynamic objects, e.g. animals, windblown objects
    • B60W2554/402Type
    • B60W2554/4029Pedestrians
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2556/00Input parameters relating to data
    • B60W2556/45External transmission of data to or from the vehicle
    • B60W2556/50External transmission of data to or from the vehicle for navigation systems
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2720/00Output or target parameters relating to overall vehicle dynamics
    • B60W2720/10Longitudinal speed
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60WCONJOINT CONTROL OF VEHICLE SUB-UNITS OF DIFFERENT TYPE OR DIFFERENT FUNCTION; CONTROL SYSTEMS SPECIALLY ADAPTED FOR HYBRID VEHICLES; ROAD VEHICLE DRIVE CONTROL SYSTEMS FOR PURPOSES NOT RELATED TO THE CONTROL OF A PARTICULAR SUB-UNIT
    • B60W2720/00Output or target parameters relating to overall vehicle dynamics
    • B60W2720/10Longitudinal speed
    • B60W2720/106Longitudinal acceleration

Abstract

【解決手段】一つの実施形態によると、ADVが手動運転モードから自動運転モードに切り替えたときに、ADVの現在位置と現在の命令サイクルの目標速度に基づいて、第1の速度基準が決定される。ADVの現在位置は、前回の命令サイクルで発行された速度制御命令に応答して動的に測定される。現在の命令サイクルに対する現在の目標位置に基づいて、第2の速度基準が決定される。その後、第1の速度基準、第2の速度基準および現在の命令サイクルに対する目標速度に基づいて、ADVの速度制御に用いられる速度制御命令を生成して、ADVが手動運転モードから自動運転モードへの切り替え前後に近い加速率または減速率で運転するようにする。
【選択図】図8

Description

本発明の実施形態は、一般的には、自動運転車両を運転することに関するものである。より詳細には、本発明の実施形態は、手動運転モードから自動運転モードに再進入するとき、自動運転車両を制御することに関するものである。
車両が自動運転モード(例えば、無人運転)で走行している場合、乗員、特に運転手を運転に関連するいくつかの責任から解放することができる。自動運転モードで走行している場合、当該車両が車載センサを利用して様々な場所へ案内されることができ、それによりヒューマン・インタラクションの最も少ない場合、または乗客なしの場合に走行することを可能にする。
一般的に、自動運転車両(ADV)は、手動運転モードまたは自動運転モードで運転されることができる。手動運転モードでは、人間の運転者が車両を制御する。ADVが自動運転モードから外れるとともに車両が運転され、且つ自動運転モードに再進入する必要がある場合がある。車両が手動運転モードから自動運転モードに再進入するとき、乗客は、運転モードの切り替え中に急激な加速または減速を感じる場合がある。これは、運転モードの切り替え中に速度や加速/減速基準の急変(sudden jump)によるものである。最終的には、コントローラの出力が不連続になる原因となり、これによって、運転モードの切り替え中に急激な加速変化または減速変化を起こす。この再進入の段階において、急激な速度変化のようなバウンド(bump)が起こって、乗客を不快にさせる可能性がある。
本発明の実施形態は、自動運転車両を運転するためのコンピュータ実施方法、不発揮性の機械可読媒体およびデータ処理システムを提供する。
本発明の一つの実施形態によると、自動運転車両を運転するためのコンピュータ実施方法を提供し、この方法は、前記自動運転車両が手動運転モードから自動運転モードに切り替えたことを検出するステップと、前回の命令サイクルで発行された速度制御命令に応答して測定された前記自動運転車両の現在位置と、現在の命令サイクルの目標速度とに基づいて、第1の速度基準(reference)を決定するステップと、前記現在の命令サイクルに対する現在の目標位置に基づいて、第2の速度基準を決定するステップと、前記第1の速度基準、前記第2の速度基準および前記現在の命令サイクルに対する目標速度に基づいて、前記自動運転車両の速度制御に用いられる速度制御命令を生成して、前記自動運転車両が前記手動運転モードから前記自動運転モードへの切り替え前後に、近いの加速率(acceleration rate)または減速率(deceleration rate)で運転するようにするステップと、を含む。
本発明の他の実施形態によると、コマンドが記憶されており、前記コマンドがプロセッサにより実行されると、前記プロセッサに以下の操作を実行させる、不発揮性の機械可読媒体を提供し、前記操作は、前記命令は、プロセッサにより実行されるとき、前記プロセッサに操作を実行させ、前記操作は、自動運転車両が手動運転モードから自動運転モードに切り替えたことを検出するステップと、前回の命令サイクルで発行された速度制御命令に応答して測定された前記自動運転車両の現在位置と、現在の命令サイクルの目標速度とに基づいて、第1の速度基準を決定するステップと、前記現在の命令サイクルに対する現在の目標位置に基づいて、第2の速度基準を決定するステップと、前記第1の速度基準、前記第2の速度基準および前記現在の命令サイクルに対する目標速度に基づいて、前記自動運転車両の速度制御に用いられる速度制御命令を生成して、前記自動運転車両が前記手動運転モードから前記自動運転モードへの切り替え前後に、近い加速率または減速率で運転するようにするステップと、を含む。
本発明の他の実施形態によると、プロセッサと、前記プロセッサに連結されてコマンドを記憶するメモリと、を含み、前記メモリがプロセッサにより実行されると、前記プロセッサに以下の操作を実行させる、データ処理システムを提供し、前記操作は、自動運転車両が手動運転モードから自動運転モードに切り替えたことを検出するステップと、前回の命令サイクルで発行された速度制御命令に応答して測定された前記自動運転車両の現在位置と、現在の命令サイクルの目標速度とに基づいて、第1の速度基準を決定するステップと、前記現在の命令サイクルに対する現在の目標位置に基づいて、第2の速度基準を決定するステップと、前記第1の速度基準、前記第2の速度基準および前記現在の命令サイクルに対する目標速度に基づいて、前記自動運転車両の速度制御に用いられる速度制御命令を生成して、前記自動運転車両が前記手動運転モードから前記自動運転モードへの切り替え前後に近い加速率または減速率で運転するようにするステップと、を含む。
本発明の実施形態は図面の各図において限定的ではなく例示的な形態で示され、図面における同じ図面符号が類似した素子を示す。
本発明の一つの実施形態にかかるネットワークシステムを示すブロック図である。
本発明の一つの実施形態に係る自動運転車両の例を示すブロック図である。
本発明の一つの実施形態に係る自動運転車両とともに使用される感知および計画システムの例を示すブロック図である。
本発明の一つの実施形態に係る自動運転車両の運転モードの切り替えを示す図である。
本発明の一つの実施形態に係る制御モジュールの例を示すブロック図である。
本発明の一つの実施形態に係る速度制御モジュールの例を示すブロック図である。
本発明の一つの実施形態に係るステーション(station)制御モジュールの例を示すブロック図である。
本発明の一つの実施形態に係る速度制御モジュールのプロセスを示すプロセスの流れである。
本発明の一つの実施形態に係るステーション制御モジュールのプロセスを示すプロセスの流れである。
本発明の一つの実施形態に係る速度制御モジュールとステーション制御モジュールのプロセスを示すプロセスの流れである。
本発明の一つの実施形態に係る速度閉ループコントローラの例を示すブロック図である。
本発明の一つの実施形態に係る位置閉ループコントローラの例を示すブロック図である。
本発明の一つの実施形態に係る自動運転車両の操作手順を示すプロセスの流れである。
本発明の他の実施形態に係る自動運転車両の操作手順を示すプロセスの流れである。
本発明の他の実施形態に係る自動運転車両の操作手順を示すプロセスの流れである。
一つの実施形態に係るデータ処理システムを示すブロック図である。
以下、説明の詳細を参照しながら、本出願の様々な実施形態および方法を説明し、図面は、前記様々な実施形態を示す。以下の説明および図面は、本出願を説明するためのものであり、本出願を限定するものではない。本出願の様々な実施形態を完全に把握するために、多数の特定の詳細を説明する。なお、いくつかの例では、本出願の実施形態に対する簡単な説明を提供するために、周知または従来技術の詳細について説明していない。
本明細書では「一つの実施形態」または「実施形態」とは、当該実施形態について組み合わせて説明された特定特徴、構造または特性が、本出願の少なくとも一つの実施形態に含まれてもよい。語句「一つの実施形態では」は、本明細書全体において同一の実施形態を指すとは限らない。
いくつかの実施形態によると、ADVが手動運転モードから自動運転モードに切り替え始めるときの既存の速度を考慮して、コントローラプリセットシステムによりシリアルまたはカスケード(series or cascaded)モードで接続された複数のコントローラ(例えば、自動運転車両のステーションまたは位置コントローラおよび速さ(velocity)または速度コントローラ)を計算してプリセットすることで、コントローラの出力(例えば、ステーションコントローラからの速度制御命令および/または速度コントローラからのペダル割合)が徐々に変更することが保証される。その結果、運転モードの切り替え中の急激な速度変化を最小化することができる。
一つの実施形態によると、ADVが手動運転モードから自動運転モードに切り替えたときに、ADVの現在位置とADVの目標速度に基づいて、第1速度基準を決定する。ADVの現在位置は、ADVが手動運転モードで走行するときに、前回の命令サイクルで発行された速度制御命令に応答して、動的に測定される。目標速度は、現在の命令サイクルで発行された速度制御命令に応答したADVの希望速度を指す。第2の速度基準は、ADVが自動運転モードで運転されている間、現在の命令サイクルに対する現在の目標位置に基づいて決定される。目標位置は、現在の命令サイクルで発行された速度制御命令に応答したADVの希望位置または場所(例えば、経度、緯度の座標)を指す。その後、第1の速度基準、第2の速度基準および現在の命令サイクルに対するADVの目標速度に基づいて、自動運転モードでADVの速度を制御するための速度制御命令が生成される。
他の実施形態によると、ADVの現在位置は、全地球測位システム(GPS)データに基づいて測定される。ADVの前の位置を考慮して、ADVの現在位置は、予め設定されたアルゴリズムにより第1の速度基準に変換される。ADVの実際速度表示は、ADVから測定された第1の速度基準と第2の速度基準(例えば、ADVの実際速度)に基づいて決定される。第3の速度基準は、現在の命令サイクルに対するADVの目標位置に基づいて決定される。プリセット速度値は、実際速度表示、第3の速度基準および現在の命令サイクルの目標速度に基づいて計算される。プリセット速度値は、速度フィードバックとして使用される。
別の実施形態によると、第1のペダル値は目標速度基準に基づいて決定される。ペダル値は、スロットルペダルの最大スロットル値またはブレーキペダルの最大ブレーキ値のペダル割合を示す。第2のペダル値は、ADVの車両プラットフォームから測定されたトルクに基づいて決定される。第3のペダル値は、第1のペダル値と第2のペダル値とに基づいて計算される。最終的なペダル値は、第1のペダル値と第3のペダル値とに基づいて決定され、最終的なペダル値は、ADVの速度を制御するための速度制御命令を生成するのに使用される。
図1は本発明に係る一実施形態に係る自動運転車両のネットワーク配置を示すブロック図である。図1を参照して、ネットワーク配置100はネットワーク102によって1つ以上のサーバ103〜104に通信可能に接続することができる自動運転車両101を含む。1つの自動運転車両が示されているが、ネットワーク102によって複数の自動運転車両は互いに接続され、および/またはサーバ103〜104に接続されることができる。ネットワーク102は、任意のタイプのネットワーク、例えば有線または無線のローカルエリアネットワーク(LAN)、例えばインターネットのような広域ネットワーク(WAN)、セルラーネットワーク、衛星ネットワークまたはその組み合わせであってもよい。サーバ103〜104は任意のタイプのサーバまたはサーバクラスタ、例えばWebサーバまたはクラウドサーバ、アプリケーションサーバ、バックエンドサーバまたはその組み合わせであってもよい。サーバ103〜104は、データ分析サーバ、内容サーバ、交通情報サーバ、地図(マップ)および興味のあるポイント(MPOI)サーバまたは位置サーバ等であってもよい。
自動運転車両とは、運転手からの入力が非常に少ないまたはない場合に案内して環境を通過する自動運転モードに設置される車両である。このような自動運転車両は、車両が走行している環境にかかる情報を検出するように配置される1つまたは複数のセンサを含むセンサシステムを備える。車両およびその関連しているコントローラが、検出された情報で案内して環境を通過する。自動運転車両101が手動モード、完全自動運転モードまたは部分自動運転モードで運転されることができる。
一実施形態において、自動運転車両101は、感知および計画システム110と、車両制御システム111と、無線通信システム112と、ユーザインターフェースシステム113と、インフォテイメントシステム114と、センサシステム115とを含むが、これらに制限されない。自動運転車両101は、通常の車両に含まれるある一般的な構成要素(部材)、例えばエンジン、車輪、ハンドル、変速器等をさらに含んでもよく、前記構成要素は、車両制御システム111および/または感知および計画システム110により多種の通信信号および/またはコマンド(例えば加速信号またはコマンド、減速信号またはコマンド、ステアリング信号またはコマンド、ブレーキ信号またはコマンド等)を使用して制御されることができる。
構成要素110〜115は、インターコネクト、バス、ネットワークまたはそれらの組み合わせを介して互いに通信可能に接続することができる。例えば、構成要素110〜115は、コントローラローカルエリアネットワーク(CAN)バスを介して互いに通信可能に接続することができる。CANバスは、マイクロコントローラおよび装置がホストコンピューターのない応用において互いに通信することを許可するような車両バス標準として設計される。それは、最初に自動車内における多重(multiplex)電線のために設計されたメッセージに基づくプロトコルであるが、他のたくさんの環境(状況)にも用いられる。
ここで、図2を参照して、一実施形態において、センサシステム115は、1つ以上のカメラ211と、全地球測位システム(GPS)ユニット212と、慣性計測ユニット(IMU)213と、レーダーユニット214と、光検出および測距(LIDAR)ユニット215とを含むが、これらに制限されない。GPSシステム212は、送受信機を含んでもよく、前記送受信機は、自動運転車両の位置に関する情報を提供するように操作されることができる。IMUユニット213は、慣性加速度に基づいて自動運転車両の位置および方向の変化を感知することができる。レーダーユニット214は、無線信号を利用して自動運転車両のローカル環境内の対象を感知するシステムを示すことができる。いくつかの実施形態において、対象を感知する以外、レーダーユニット214は、さらに対象の速度および/または走行方向を感知することができる。LIDARユニット215はレーザを使用して自動運転車両の所在する環境における対象を感知することができる。その他のシステム構成要素以外、LIDARユニット215は1つ以上のレーザ光源、レーザースキャナおよび1つ以上の検出器をさらに含んでもよい。カメラ211は、自動運転車両の周辺環境の画像をキャプチャするための1つ以上の装置を含んでもよい。カメラ211は、スチルカメラおよび/またはビデオカメラであってもよい。カメラは、例えば回転および/または傾斜のプラットフォームに取り付けられる、機械的に移動可能なものであってもよい。
センサシステム115は、その他のセンサ、例えばソナーセンサ、赤外線センサ、ステアリングセンサ、スロットルセンサ、ブレーキセンサ、およびオーディオセンサ(例えばマイクロフォン)をさらに含んでもよい。オーディオセンサは、自動運転車両周辺の環境から音をキャプチャするように配置されてもよい。ステアリングセンサは、ハンドル、車両の車輪またはその組み合わせのステアリング角を感知するように配置されることができる。スロットルセンサおよびブレーキセンサは、それぞれ車両のスロットル位置およびブレーキ位置を感知する。いくつかの場合、スロットルセンサおよびブレーキセンサは、集積型スロットル/ブレーキセンサに一体化されてもよい。センサシステム115は、車両のペダル割合、トルクと速度を測定可能なセンサをさらに含むことができる。
一実施形態において、車両制御システム111は、ステアリングユニット201と、スロットルユニット202(加速ユニットとも呼ばれる)と、ブレーキユニット203とを含むが、これらに制限されない。ステアリングユニット201は、車両の方向または走行方向を調整することに用いられる。スロットルユニット202は、モーターまたはエンジンの速度を制御して、さらに車両の速度および加速度を制御することに用いられる。ブレーキユニット203は、摩擦を提供することによって車両の車輪またはタイヤをスローダウンして車両を減速させることに用いられる。注意すべきなのは、図2に示すような構成要素はハードウェア、ソフトウェアまたはその組み合わせで実現されることができる。
図1を再び参照して、無線通信システム112は、自動運転車両101と、例えば装置、センサ、その他の車両等の外部システムとの間に通信することを可能にする。例えば、無線通信システム112は、1つ以上の装置に直接にまたは通信ネットワークを介して無線通信し、例えばネットワーク102によってサーバ103〜104に通信することができる。無線通信システム112は、任意のセルラー通信ネットワークまたは無線ローカルエリアネットワーク(WLAN)(例えばWiFi(登録商標))を使用して他の構成要素やシステムに通信することができる。無線通信システム112は、例えば赤外線リンク、ブルートゥース(登録商標)等を使用して装置(例えば、乗客の移動装置、表示装置、車両101内のスピーカー)に直接に通信することができる。ユーザインターフェースシステム113は、車両101内で実行される周辺装置の一部であってもよく、例えばキーワード、タッチスクリーンディスプレイ装置、マイクロフォン、およびスピーカー等を含む。
自動運転車両101の一部または全ての機能は、特に自動運転モードで操作する場合、感知および計画システム110により制御されたり管理されたりすることができる。感知および計画システム110は、必要なハードウェア(例えば、プロセッサ、メモリ、記憶装置)、およびソフトウェア(例えば、オペレーティングシステム、計画およびルーティングプログラム)を含み、センサシステム115、制御システム111、無線通信システム112、および/またはユーザインターフェースシステム113から情報を受信し、受信された情報を処理し、出発地から目的地までのルートや経路を計画し、そして計画および制御情報に基づいて車両101を運転させる。あるいは、感知および計画システム110と車両制御システム111とは一体化されてもよい。
例えば、乗客とするユーザは、例えばユーザインターフェースによって旅程の出発位置および目的位置を指定することができる。感知および計画システム110は旅程関連データを取得する。例えば、感知および計画システム110は、MPOIサーバから位置およびルート情報を取得することができ、前記MPOIサーバはサーバ103〜104の一部であってもよい。位置サーバは、位置サービスを提供し、かつMPOIサーバはマップサービスおよびある位置のPOIを提供する。あるいは、このような位置およびMPOI情報は、感知および計画システム110の不揮発性記憶装置にローカルにキャッシュされることができる。
自動運転車両101がルートに沿って走行する期間に、感知および計画システム110は、さらに交通情報システムやサーバ(TIS)からリアルタイム交通情報を取得できる。注意すべきなのは、サーバ103〜104は、第三者エンティティにより動作されることができる。あるいは、サーバ103〜104の機能は、感知および計画システム110と一体化されてもよい。リアルタイム交通情報、MPOI情報、位置情報、およびセンサシステム115が検出または感知したリアルタイムなローカル環境データ(例えば、障害物、対象、付近車両)に基づいて、感知および計画システム110は、安全で効果的に指定した目的地に到達するように、最適なルートを計画し、かつ計画したルートにより例えば制御システム111を介して車両101を運転することができる。
サーバ103は、様々のクライアントにデータ分析サービスを提供するデータ分析システムであってもよい。一つの実施形態において、データ分析システム103は、データ収集部121と、機器学習エンジン122とを含む。データ収集部121は、様々の車両(自動運転車両または人間運転手が運転する一般車両)からの運転統計情報123を収集する。運転統計情報123は、発行された運転情報(例えば、スロットル、ブレーキおよび転向コマンド)、および、異なる時点で車両のセンサにより取得された車両のレスポンス(例えば、速度、加速度、減速度、方向)を表す情報を含む。運転統計情報123は、異なる時点での環境記述情報、例えば、ルート(出発地および目的地の位置)、MPOIs、道路条件、天気条件等を更に含む。
走行統計データ123に基づいて、マシンラーニングエンジン122は、様々な目的のために、1セットのルール、アルゴリズム、および/または予測モデル124を実行したり、訓練したりする。一つの実施形態では、ルール124は、位置開ループ(POL)コントローラによって使用可能な、目標位置に基づいて速度基準を決定するルールまたはアルゴリズムを含むことができる。ルール124は、特定の時点で測定された車両の実際位置に基づいて速度基準を決定するルールをさらに含むことができる。ルール124は、位置閉ループ(PCL)コントローラを設定するように、速度基準に基づいてプリセット値を計算するアルゴリズムをさらに含むことができる。
他の実施形態では、ルール124は、速度開ループ(VOL)コントローラによって使用可能な、目標速度に基づいてペダル値を決定するルールを含むことができる。ルール124は、車両プラットフォームから測定されたトルクに基づいてペダル値を決定するルールを含むことができる。アルゴリズム124は、速度閉ループ(VCL)コントローラを設定するように、ペダル値に基づいてプリセット値を計算するアルゴリズムを含むことができる。ルールとアルゴリズム12)は、次に自動運転車両にアップロードされて車両をリアルタイムで運転されることができる。特に、車両が手動運転モードから自動運転モードに切り替えたときに、規則またはアルゴリズム124を用いて、運転モード切替が可能な限りスムーズに行われることができるようにする。
図3は、本発明の一つの実施例にかかる自動車両とともに使用される感知および計画システムの例を示すブロック図である。システム300は、図1における自動運転車両101の一部として実現されることができるが、感知および計画システム110、制御システム111、およびセンサシステム115に限定されない。図3を参照し、感知および計画システム110は、位置決めモジュール301と、感知モジュール302と、決定モジュール303と、計画モジュール304と、制御モジュール305と、運転モード検出器306とを含むが、それらに限定されない。
モジュール301〜306の一部またはすべては、ソフトウェア、ハードウェア、またはそれらの組み合わせによって実現されてもよい。例えば、これらのモジュールが不揮発性の記憶装置352にインストールされ、メモリ351にロードされて1つまたは複数のプロセッサ(図示せず)によって実行されてもよい。一部またはすべてのモジュールは、図2に示す車両制御システム111における一部またはすべてのモジュールに通信可能に連結されたり、統合されたりしてもよい。また、モジュール301〜306の一部、1つの集積モジュールとして一体化されてもよい。
位置決めモジュール301は、自動運転車両300(例えば、GPSユニット212を利用する)の現在の位置を決定し、ユーザの旅程またはルートに関する何れのデータを管理する。位置決めモジュール301(地図およびルーティングモジュールとも言われる)は、ユーザの旅程またはルートに関連する任意のデータを管理する。ユーザは、例えばユーザインターフェースを介してログインするとともに旅程の出発位置および目的位置を指定してもい。位置決めモジュール301は、旅程に関連するデータを取得するように、自動運転車両300のその他の構成要素(例えば地図およびルート情報311)と通信する。例えば、位置決めモジュール301は、位置サーバと、地図およびPOI(MPOI)サーバから位置およびルート情報を取得することができる。位置サーバは、位置サービスを提供し、かつMPOIサーバは、地図サービスとある位置のPOIとを提供し、地図およびルート情報311の一部としてキャッシュされてもよい。自動運転車両300がルートに沿って走行する期間に、位置決めモジュール301は、さらに交通情報システムやサーバからリアルタイム交通情報を取得することができる。
センサシステム115により提供されたセンサデータ、および位置決めモジュール301により得られた位置決め情報に基づいて、感知モジュール302は周辺環境に対する感知を決定する。感知情報は、普通の運転者が自分で運転している車両周辺から感知したもの(状況)を示すことができる。感知は、例えば対象形式で現される車線配置(例えば、ストレートまたはカーブ)、トラフィック信号、他の車両の相対位置、歩行者、建築物、横断歩道またはその他の交通関連標識(例えば、停止標識、譲り標識)などを含んでもよい。
感知モジュール302は、コンピュータビジョンシステムまたはコンピュータビジョンシステムの機能を含んでもよく、自動運転車両環境における対象および/または特徴を認識するように、1つ以上のカメラによりキャプチャされた画像を処理および分析することに用いられる。前記対象は交通信号、車道の境界線、他の車両、歩行者および/または障害物等を含んでもよい。コンピュータビジョンシステムは、対象認識アルゴリズム、ビデオトラッキングおよびその他のコンピュータビジョン技術を使用することができる。いくつかの実施形態において、コンピュータビジョンシステムは、環境の地図を描き、対象を追跡し、かつ対象の速度を推定することなどができる。感知モジュール302は、その他のセンサ(例えばレーダーおよび/またはLIDAR)により提供されたその他のセンサデータに基づいて対象を検出することもできる。
それぞれの対象に対して、決定モジュール303は、如何に対象を処理するか決定をする。例えば、特定な対象(例えば、交差ルートにおける他の車両)および対象を記述するメタデータ(例えば、速度、方向、ステアリング角)に対して、決定モジュール303は、遇う対象に如何に対応する(例えば、追い越し、道譲り、停止、通過)ことを決定する。決定モジュール303は、不揮発性の記憶装置352に記憶されてもよい1セットのルール(例えば交通ルールまたは運転ルール312)に基づいてこのような決定をすることができる。
感知されたそれぞれの対象に対する決定に基づいて、計画モジュール304は、自動運転車両のためにルートまたは経路および運転パラメータ(例えば、距離、速度および/またはステアリング角)を計画する。すなわち、所定対象に対して、決定モジュール303は前記対象に対して如何に対応するかを決定し、計画モジュール304は如何に実行するかを決定する。例えば、所定対象に対して、決定モジュール303は、前記対象を追い越すことを決定することができ、計画モジュール304は、前記対象の左側に追い越すか、右側に追い越すかを決定することができる。計画モジュール304は、計画および制御データを生成し、車両300が次の移動周期(例えば、次のルート/経路セグメント)に如何に移動するかを記述する情報を含む。例えば、計画および制御データは車両300が30マイル/時間(mph)の速度で10メートル移動し、次に25mphの速度で右車線に変更するように指示することができる。
計画および制御データに基づいて、制御モジュール305は計画および制御データにより定義されたルートまたは経路に基づいて、車両制御システム111へ適切なコマンドまたは信号を送信することによって自動運転車両を制御および運転する。前記ルートまたは経路に沿って違う時点で適ときに適切な車両設置または運転パラメータ(例えば、スロットル、ブレーキおよびステアリングコマンド)を使用して車両を第1点から第2点まで運転するように、計画および制御データは十分な情報を含む。
注意すべきなのは、決定モジュール303および計画モジュール304は、集積モジュールに一体化されてもよい。決定モジュール303/計画モジュール304は、自動運転車両の運転経路を決定するために、ナビゲーションシステムまたはナビゲーションシステムの機能を含んでもよい。例えば、ナビゲーションシステムは、自動運転車両が以下の経路に沿って移動することを実現するための一連の速度および進行方向を決定することができ、前記経路は、最終目的地に至る道路に基づく経路に沿って自動運転車両を大体前進するとともに、感知された障害物を大体避けることができる。目的地はユーザインターフェースシステム113により実現されたユーザ入力に基づいて設定されることができる。ナビゲーションシステムは、自動運転車両が走行していると同ときに走行経路を動的に更新することができる。ナビゲーションシステムは、自動運転車両用の走行経路を決定するように、GPSシステムおよび1つ以上の地図からのデータを合併することができる。
決定モジュール303/計画モジュール304は、自動運転車両環境における潜在障害物を、認識・評価・回避またはその他の方式で迂回するために、衝突回避システムまたは衝突回避システムの機能をさらに含んでもよい。例えば、衝突回避システムは、以下の方式によって自動運転車両のナビゲーションにおける変更を実現することができ、制御システム111の中の1つ以上のサブシステムを動作してターン操縦、ステアリング操縦、ブレーキ操縦等を採る。衝突回避システムは、周辺の交通モード、道路状況等に基づいて障害物を回避可能な操縦を自動的に決定することができる。衝突回避システムは、その他のセンサシステムは、自動運転車両がターンして入ろうとする隣接領域における車両、建築障害物等が検出された際にターン操縦を採らないように配置されることができる。衝突回避システムは、使用可能でありかつ自動運転車両の乗員の安全性を最大化させる操縦を自動的に選択することができる。衝突回避システムは、自動運転車両の乗員室内で最小の加速度を出現させることが予測された回避操縦を選択することができる。
一つの実施形態では、制御モジュール305は、車両の位置や速度を制御するためのステーション制御モジュール308(位置制御モジュールとも呼ばれる)と速度制御モジュール310を含む。ステーション制御モジュール308は、計画された軌跡から、ステーション基準(station reference)間の差を得て、位置基準と車両の実際位置との差を補正しようとする。速度制御モジュール310は、現在の命令サイクルに対する目標速度または位置、および前回の命令サイクルからの速度や位置のフィードバックに基づいて、速度制御命令を生成するように構成されている。命令サイクルとは、制御命令が車両に発行される期間を指す。命令サイクルは、制御命令が発行される頻度を示す。例えば、0.1秒ごとに制御命令が発行されると、命令サイクルは0.1秒と呼ばれる。
上記したように、ADVは、手動運転モードまたは自動運転モードで運転されることができ、これは運転モード検出器306によって検出されたり感知されたりすることができる。通常、手動運転モードまたは自動運転モードをオンにしたり(turn on)オフにしたり(turn off)するために、人間の運転者が到達可能な範囲内にスイッチやボタンを配置することができる。このような切り替え動作は、運転モード検出器306によって検出されることができる。手動運転モードの間に、人間の運転者は、車両の加速、減速、方向転換およびバックアップ(backup)などの車両の制御を引き受けることができる。車両の速度は、人間の運転者がアクセルペダルまたはブレーキペダルをどの程度で押したり踏んだりするかによって制御され、これはペダルの距離やペダルの圧力で表わされることができる。自動運転モードの間に、車両の大部分の操作は、ユーザの大きな介入なしに、感知および計画システム110によって制御される。車両の速度は、速度制御モジュール310をステーション制御モジュール308と合わせて生成する速度制御命令によって制御される。
典型的には、自動運転モードの間に、速度制御モジュール310は、車両の現在速度と、計画モジュール304によって要求された現在の命令サイクルの目標速度とに基づいて、速度制御命令を決定する。車両の速度は、前回の命令サイクルで発行された速度制御命令に応答して、車両の車両プラットフォームから測定されフィードバックされることができる。目標速度は、事前の計画および制御データを考慮し、走行環境対する認識に基づいて、計画モジュール304によって計画され決定されることができる。ADVが手動運転モードで運転され手動運転モードから自動運転モードに切り替えるときに、計画モジュール304は、目標速度や目標位置を要求するが、この目標速度や目標位置は、車両が手動モードで運転されるから、前の走行統計データに基づいて決定されることができない。その結果、図4に示すように、車両が手動運転モードから自動運転モードに切り替えたときに、現在の命令サイクルの目標速度や位置と、前の命令サイクルに対応する実際速度や位置の間に著しい差がある。
ここで、図4を参照すると、車両が手動運転モードにおいて速度401で走行していると仮定し、当該速度401は、Vm(手動モード速度)とも呼ばれる。車両が手動運転モードから自動運転モードに切り替えたときに、計画モジュール304は、今度の命令サイクル(すなわち現在の命令サイクル)に対する車両の目標速度を計画し決定する。計画モジュール304が現在の命令サイクルに対する自律走行の目標速度(本明細書でVaと呼ばれる)を自律走行に用いる速度として決定すると仮定する。図4に示すように、手動運転モードと自動運転モードからの切り替えの間に、VmとVaの間には差がある。この差は、加速または減速の形で車両速度の急激な変化を引き起こす可能性がある。これらの急激な速度変化は、乗客を不快にさせる可能性がある。
計画モジュール304は、前の計画および制御データ、例えば、履歴走行データの一部としての一つまたは複数の前の命令サイクルにおける車両の目標速度および/または目標位置に基づいて、目標速度を決定することができる。車両が手動運転モードで運転されているので、このような過去の計画および制御データを使用することができなく、または不正確である(例えば、最新のものではない)。その結果、計画モジュール304によって生成された目標速度は、運転モードの切り替え時点での車両の実際速度と大きく異なる可能性がある。したがって、この例での切り替え時間(t1)において、目標速度402は、その時点での車両401の実際速度よりも著しく低い。計画された目標速度402に従って車両を設定する場合、車両は、自動運転モードに入るときに急激な減速を経験する。同様に、目標速度402が実際速度401よりも著しく高い場合には、車両は自動運転モードに入るときに急激な加速を経験する。これらの急激な減速や加速は、乗客を不快にすさせる可能性がある。したがって、本発明の実施形態は、リアルタイムで測定された実際のフィードバックに基づいて、コントローラを設定することにより、目標速度402を実際速度401により近くなるように調整する。目標とする実際速度は、この例では、速度403になる。その結果、急激な加速または急激な減速が減少することができる。
図5Aは、本発明の一つの実施形態に係る制御モジュールを示すブロック図である。図5Aを参照すると、制御モジュール305は、ステーション制御モジュール308と速度制御モジュール310とを含む。このような構成では、ステーション制御モジュール308は、シリアルまたはカスケードモードで速度制御モジュール310に接続される。運転時、計画モジュール304は、目標速度基準411を速度制御モジュール310に提供し、目標位置基準412をステーション制御モジュール308に提供する。ステーション制御モジュール308は、車両プラットフォーム510から直接測定された、ADVの実際位置と速度のフィードバック415をさらに受信する。ADVの実際位置と速度415は、ADVのCANバスから測定されることができる。ステーション制御モジュール308は、ADVの目標位置412と、実際位置および速度415とに基づいて、速度フィードバック基準413を生成する。
同様に、速度制御モジュール310は、車両プラットフォームまたはCANバス510から直接測定された、ADVの実際トルクおよび速度フィードバック414を受信する。速度制御モジュール310は、目標速度基準411、速度フィードバック基準413と測定されたトルクおよび速度414に基づいて、ペダルの割合を示すペダル値416を決定する。次に、ADVの速度を制御するために、ペダル値416に基づいて、速度制御命令が生成される。
トルクは、軸、支点(fulcrum)またはピボット(pivot)の周りに物体を回転させる力の傾向を示す。力は、例えば押し力または引張力であり、トルクは物体のねじれと考えることができる。大体に言えば、トルクは、ボルトまたはフライホイール(flywheel)のような物体の回転力の尺度である。トルクの大きさは、加えられる力、軸と力の加えるポイントを接続するレバーアームの長さ、および力ベクトルとレバーアームの間の角度という3つの量に依存する。
図5Bは、本発明の一つの実施形態に係る速度制御モジュールの例を示すブロック図である。図5Bを参照すると、速度制御モジュール310は、速度開ループ(VOL)コントローラ501、速度閉ループ(VCL)コントローラ502、速度レギュレータプリセット(VRP)モジュール503、およびトルク・ツー・ペダル(torque to pedal)(トルク/ペダル)変換器504を含む。構成要素501〜504は、ソフトウェア、ハードウェア、またはこれらの組み合わせにより実行されることができる。一つの実施形態では、VOLコントローラ501は、目標速度に基づいてペダル割合を示すペダル値を決定するように構成されている。VCLコントローラ502は、車両の目標速度(例えば、到達しようとする次の速度)と、実際速度(例えば、現在速度)との誤差または差に基づいて、ペダル値を決定するように構成されている。トルク/ペダル変換器504は、車両プラットフォームから測定されたトルクを、ペダル割合(つまり、測定されたトルクを生成するためのペダル割合)を示すペダル値に変換するように構成されている。VRPモジュール503は、トルク/ペダル変換器504からのペダル値とVOLコントローラ501からのペダル基準とに基づいて、プリセットペダル値を計算する。プリセットペダル値は、VCLコントローラ504を設定したりプリセットしたりするのに使用されることができる。
図5Cは、本発明の一つの実施形態に係るステーションの制御モジュールの例を示すブロック図である。図5Cを参照すると、ステーション制御モジュール308は、位置開ループ(POL)コントローラ511、位置閉ループ(PCL)コントローラ512、位置レギュレータプリセット(PRP)モジュール513、および位置・ツー・速度(position to velocity)(位置/速度)変換器514を含む。構成要素511〜514は、ソフトウェア、ハードウェア、またはこれらの組み合わせにより実行されることができる。一つの実施形態では、POLコントローラ511は、現在の命令サイクルの目標位置に基づいて速度基準を決定するように構成されている。PCLコントローラ512は、ADVの目標位置とADVの現在の実際位置との誤差または差に基づいて、速度フィードバック基準である速度基準を決定するように構成されている。位置/速度変換器514は、車両プラットフォームから測定された実際位置を、PCLコントローラ512を設定したりプリセットしたりするのに使用可能な速度や速度基準に変換するように構成されている。速度制御モジュール310は、POLコントローラ511とPCLコントローラ512によって提供される速度基準を、ADVの速度を制御するための最終的なペダル値を決定するのに使用される。
図6Aは、本発明の一つの実施形態に係る速度制御モジュールのプロセスを示すプロセスの流れである。図6Aを参照すると、計画モジュール304によって決定された目標速度601に応答して、VOLコントローラ501は、目標速度601と、ステーション制御モジュール308によって提供された一つまたは複数の速度基準610とに基づいて、ペダル値602を決定する。一つの実施形態では、VOLコントローラ501は、一定時間(例えば、Δ時間またはΔt)内の速度差に基づいて、ペダル値602を決定することができる。例えば、VOLコントローラ501は、異なる命令サイクルで計画された2つの目標速度間の差を決定する。この差に基づいて、ペダルの割合を示すペダル値が決定される。言いかえれば、VOLコントローラ501は、目標速度の変化を達成するために、アクセルペダルまたはブレーキペダルがどの程度で押されべきかを決定し、それは、加速または減速であってもよい。一つの実施形態では、VOLコントローラ501は、例えば、予め設定されたアルゴリズムまたは参照テーブル(lookup table)を使用して、速度差を目標速度の変化を達成することに必要とするトルクに変換する。トルクから、VOLコントローラ501は、例えば、予め設定されたアルゴリズムまたは参照テーブルを使用して、トルクをペダルの割合を示すペダル値に変換する。
また、VCLコントローラ502は、計画モジュール304から受信された目標速度601と車両プラットフォーム510から測定された現在の実際速度604との差に基づいて、ペダル割合を示すペダル値603を生成する。実際速度604は、前回の命令サイクルで発行された速度制御命令に応答した車両の実際速度を示す。ペダル値603は、フィードバックペダル値を示す。ペダル値602と603は、その後車両の速度を制御するのに使用される。一つの実施形態では、最終的なペダル値605は、ペダル値602とペダル値603とに基づいて計算され、この例では、ペダル値602と603の合計に基づいて計算される。一つの実施形態では、最終的なペダル値605は、ペダル値602とペダル値603の重み合計に基づいて決定される。ペダル値602とペダル値603のそれぞれは、前の走行統計データに基づいてデータ分析103のようなデータ分析システムによってオフラインで決定可能な特定の重み因子または重み係数と関連付けられる。
一つの実施形態では、VCLコントローラ502は、比例−積分−微分(PID)コントローラ(図示せず)を含む。PIDコントローラは、比例係数、積分係数、および微分係数を利用してモデリングすることができる。これらの係数は、最初に大量の走行統計データ(例えば、データ分析システムまたはサーバ103)に基づいて、データ分析システムによってオフラインで設定されることができ、以下のようになっており、
ここで、K、K、およびKは、PIDコントローラの比例係数、積分係数、および微分係数である。
PIDは、産業用制御システムで一般的に使用される制御ループフィードバックメカニズム(コントローラ)である。PIDコントローラは、所望の設定点と測定されたプロセス変数との差である誤差値を連続的に計算し、比例(K)項、積分(K)項と微分(K)項に基づいて補正を適用する。PIDコントローラは、所望の設定点と測定されたプロセス変数との差である誤差値を連続的に計算し、比例項、積分項と微分項に基づいて補正を適用する。コントローラは、制御変数を重み合計によって決定された新しい値に調整することにより、時間に伴う誤差を最小化しようとする。図6Aを再び参照し、PIDコントローラの入力である誤差e(t)は、計画モジュール304によって提供された目標速度601と、ステーション制御モジュール308によって提供された速度基準610と、車両プラットフォーム510から測定された実際速度604との間の差を示す。
車両が手動運転モードで運転されるとき、人間の運転者が車両を制御するため、VOLコントローラ501、VCLコントローラ502は、車両の速度を制御するのに使用されない。車両が手動運転モードから自動運転モードに切り替えるときに、計画モジュール304は、計画を開始して車両の目標速度を生成する(この例では、目標速度601である)。基準として利用可能な前の走行データがないので、計画された目標速度601は、不正確または目標から外れる可能性がある。同様に、ステーション制御モジュール308は、正確な速度基準を提供しない可能性があります。その結果、その時点での目標速度601と、速度基準610と、車両の実際速度604との間の差は、顕著に異なる可能性がある。VCLコントローラ502は、目標速度601と、速度基準610と、実際速度604との間の差に基づいて、ペダル値フィードバック603を生成するので、VCLコントローラ502の出力603は、計画モジュール304によって提供されたオフターゲット(off-target)速度601によって誤った可能性がある。
一つの実施形態では、VRPモジュール503は、VOLコントローラ501から生成されたペダル値602とトルク/ペダル変換器504によって生成されたペダル値607とに基づいて、VCLコントロール502に用いられるフィードバックペダル値606を生成するように構成されている。ペダル値607は、その時点での実際速度を維持するように、車両プラットフォーム510に適用された実際のペダル割合を示す。一つの実施形態では、トルク/ペダル変換器504は、例えば、車両のCANバスを介して車両プラットフォーム510から測定されたトルク608を、ペダル値607に変換する。一つの実施形態では、トルク/ペダル変換器504は、ペダル値607を導出するために、測定されたトルク608に基づいて、トルク/ペダルマッピングテーブルで検索操作を実行する。一つの実施形態では、トルク/ペダルマッピングテーブルは、複数のマッピングエントリを含む。各マッピングエントリは、特定のトルク値またはトルク値の範囲をペダル値にマッピングする。VRPモジュール503は、VOLコントローラ501によって提供されたペダル値602とトルク/ペダル変換器504によって提供されたペダル値607とに基づいて、フィードバックペダル値606を計算して、VCLコントローラ502の出力603を設定する。
説明の目的のために、現在の時間または命令サイクルが時間tと呼ばれる場合、前回の時間または前回の命令サイクルは、時間(t−Δt)と呼ばれる。時間tのペダル値はp(t)と呼ばれ、表示時間(t−Δt)のペダル値はp(t−Δt)と呼ばれる。p(t−Δt)に可能な限り近いp(t)605を生成して、車両プラットフォーム510に適用することを目標とする。トルク/ペダル変換器504は、車両プラットフォーム510から測定されたトルク608を、p(t−Δt)を示すペダル値607に変換する。VRPモジュール503は、VOLコントローラ501によって提供されたp(t)602とトルク/ペダル変換器504により提供されたp(t−Δt)607とに基づいて、プリセットペダル値606を計算する。
一つの実施形態では、ペダル値を示すフィードバックペダル値603またはプリセットペダル値606は、トルク/ペダル変換器504により提供されたp(t−Δt)607とVOLコントローラ501により提供されたp(t)602の差(例えば、約p(t−Δt)−p(t))に基づいて決定される。一つの実施形態では、プリセットペダル値606は、ペダル値603とペダル値607との重み差に基づいて決定されることができる。ペダル値603とペダル値607のそれぞれは、特定の重み因子または重み係数と関連付けられることができる。計算されたプリセットペダル値606は、ペダル値のフィードバックを示すVCLコントローラ502の出力603の、VCLコントローラ502の内部操作の一部または全部を迂回する重要なまたは実質的な部分として使用される。車両プラットフォーム510に適用される最終的なペダル値605は、例えば、ペダル値p(t)602とペダル値603(例えば、p(t−Δt)−p(t))の合計となり、ここで最終的なペダル値605は、p(t−Δt)に近接する。つまり、現在の時間(t)の間に、最終的なペダル値p(t)605は、前回の命令サイクルのp(t−Δt)に近接する。結果として、最終的なペダル値p(t)と前回の最終ペダル値p(t−Δt)との差に起因する急激な加速または減速は減少されることができる。その後、速度基準p(t)は、速度フィードバックp(t−Δt)から徐々に外れることができる。
図6Bは、本発明の一つの実施形態に係るステーション制御モジュールのプロセスを示すプロセスの流れである。図6Bを参照すると、計画モジュール304によって決定された目標位置611に応答して、POLコントローラ511は、目標位置611に基づいて速度基準610Aを決定する。一つの実施形態では、POLコントローラ511は、一定時間(例えば、Δ時間またはΔt)内の位置差に基づいて、速度基準610Aを決定することができる。例えば、POLコントローラ511は、異なる命令サイクルで計画された2つの目標位置の差を決定する。位置の差に基づいて、速度基準が決定される。つまり、POLコントローラ511は、前回の目標位置から目標位置に到達するために必要な速度を決定し、当該速度は、加速であってもよく、減速であってもよく、これはその時点の現在速度による。
また、PIDコントローラを含むことができるPCLコントローラ512は、計画モジュール304から受信された目標位置611と、車両プラットフォーム510から測定された現在の実際位置609との間の差に基づいて、速度基準610Bを生成する。測定された位置609は、前回の命令サイクルで発行された速度制御命令に応答した車両の実際位置を示す。速度基準610Bは、速度フィードバックを示す。速度制御モジュール310は、その後速度基準610A〜10Bと目標速度601(目標速度表示または目標速度基準と総称する)とを利用して、車両の速度を制御する。
一つの実施形態では、速度制御モジュール310に提供される最終的な速度基準614(例えば、目標速度基準)は、目標速度601と速度基準610A〜610B(共同で図6Aの速度基準610を示す)とに基づいて計算され、この例では、速度基準601と速度基準610A〜610Bの合計に基づいて計算される。一つの実施形態では、最終的な速度基準614は、目標速度601と速度基準610A〜610Bの重み合計とに基づいて決定される。目標速度601と速度基準610A〜610Bのそれぞれは、前の走行統計データに基づいてデータ分析103のようなデータ分析システムによってオフラインで決定されることができる、特定の重み係数または重み係数と関連付けられる。
車両が手動運転モードで運転されるとき、人間の運転者が車両を制御するため、POLコントローラ511、PCLコントローラ512は、車両の速度を制御するのに使用されない。車両が手動運転モードから自動運転モードに切り替えるときに、計画モジュール304は、計画を開始し、車両の目標位置と目標速度を生成する(この例では、目標速度601と目標位置611である)。上述したように、基準として利用可能な前の走行データがないので、計画された目標速度601と目標位置611は、不正確または目標から外れる可能性がある。その結果、車両のその時点の目標速度601と、速度基準610A〜610Bと、実際速度604との間の差は顕著に異なる可能性がある。PCLコントローラ512は、目標位置611と、実際位置609との差に基づいて速度基準610Bを生成するため、PCLコントローラ512の出力610Bは、計画モジュール304によって提供されたオフターゲットの位置611によって誤った可能性がある。
一つの実施形態では、PRPモジュール513は、車両プラットフォーム510から測定された実際速度604および位置/速度変換器514によって提供された速度基準612に基づいて、PCLコントローラ512に用いる速度基準613を生成するように構成されている。一つの実施形態では、位置/速度変換器514は、例えば、車両のCANバスを介して車両プラットフォーム510から測定された車両の現在位置609を、速度基準612に変換する。一つの実施形態では、位置/速度変換器514は、現在の命令サイクルで測定された現在位置609と、前回の命令サイクルで測定された前回位置との間の差に基づいて、速度基準612(例えば、速度基準=(位置(t)−位置(t−Δt))/Δt)を決定する。ハードディスクなどの不揮発性の記憶装置は、時間に応じて測定された前の位置を記憶し維持するのに使用されることができる。PRPモジュール513は、目標速度601と、車両プラットフォーム510から測定された現在速度604と、位置/速度変換器514によって提供された速度基準612と、POLコントローラ511によって提供された速度基準610Aとに基づいて、PCLコントローラ512の出力610Bを設定するためのプリセット速度値613を計算する。
説明の目的のために、現在の時間または命令サイクルが時間tと呼ばれる場合、前回の時間または前回の命令サイクルは、時間(t−Δt)と呼ばれる。時間tの速度はv(t)と呼ばれ、時間(t−Δt)の速度はv(t−Δt)と呼ばれる。v(t−Δt)に可能な限り近いv(t)614を生成して、速度制御モジュール310に提供することを目標とする。位置/速度変換器504は、車両プラットフォーム510から測定された実際位置609を速度基準612に変換する。PRPモジュール513は、測定された速度604(Vmeaduredと呼ばれる)と、現在位置609と基づいて変換された速度612とに基づいて決定されたv(t−Δt)に基づいて、測定された実際速度604と変換された速度612(規定(nominal)速度またはVnominalと呼ばれる)を示す実際速度表示を計算する。実際速度表示は、VmeaduredとVnominalの重み合計であってもよい。一つの実施形態では、実際速度表示は、次のようにVmeaduredとVnominalの平均として定義することができ、すなわち、
actual=(Vmeadured+Vnominal)/2
その後、PRPモジュール513は、目標速度601(Vtarget)、速度基準610A(開ループ速度またはVopenとも呼ばれる)と実際速度表示Vactualに基づいて、プリセット速度値613を計算する。プリセットは、Vactualと、Vopenと、Vtargetとの間の差を示すことができる。
一つの実施形態では、プリセット速度値613は、次のように定義することができ、すなわち、
プリセット=Vactual−(Vopen+Vtarget
プリセット速度値613は、PCLコントローラ512の速度フィードバックを示す出力610Bの、PCLコントローラ512の内部動作の一部または全部を迂回する重要または実質的な部分として使用される。速度制御モジュール310に提供される最終的な速度基準614は、例えば、目標速度601と速度基準610A〜610Bの合計であり、ここで最終的な速度基準614は、v(t−Δt)に近いものである。つまり、現在の時間(t)の間に、最終的な速度基準v(t)は、前回の命令サイクルのv(t−Δt)に近く、上述したのように、速度制御モジュール310は最終的な速度基準v(t)を利用してペダル値を決定することにより、速度制御命令を生成する。
したがって、本実施形態では、前回の命令サイクルで発行された速度制御命令に応答して測定された実際速度、実際位置、および実際トルクを考慮して、現在の命令サイクルの目標速度と目標位置に基づいて、現在の命令サイクルの速度制御命令が決定される。図6Cは、図6Aおよび図6Bに示された速度制御モジュールとステーション制御モジュールの組み合わせを示すブロック図である。
図7Aは、本発明の一つの実施形態に係る速度閉ループ制御の例を示すブロック図である。図7Aを参照すると、VCLコントローラ502は、PIDコントローラ701とセレクタロジック702を含む。セレクタ702は、PIDコントローラ701からの出力またはVRPモジュール503からの出力606のいずれかを選択するように構成されている。一つの実施形態では、VRPモジュール503および上述のような他の構成要素は、手動運転モードまたは自動運転モードで車両が運転されている間、プリセットペダル値606Aを絶えずまたは定期的に計算する。通常の自動運転モードの間、セレクタ702は、PIDコントローラ701の出力を選択して、VCLコントローラ502の出力になるようにする。
運転モード検出器306によって検出可能な、手動運転モードから自動運転モードに変化した運転モードの検出に応答して、トリガ信号606Bがセレクタ702に送信されて、VRPモジュール503の出力(すなわち、プリセットペダル値606A)を選択するようにセレクタ702を指示して、VCLコントローラ502の出力603となる。トリガ信号606Bは、ロジックローレベル、ロジックハイレベル、立ち上がりエッジまたは立ち下がりエッジのいずれかの選択信号である。ロジックレベルまたはロジックエッジの一つは、セレクタ702がPIDコントローラ701またはVRPモジュール503のいずれかの出力を選択するように指示するのに使用されることができる。他の実施形態では、VRPモジュール503はプリセットペダル値606Aだけを提供するのに対し、運転モード検出器306は、選択信号(例えば、信号606B)を提供するように、セレクタ702に直接接続することができる。一つの実施形態では、プリセット値606Aは、PIDコントローラ701の一つまたは複数の係数またはパラメータ(例えば、PIDコントローラ701のKi係数)を修正するのに使用されることができる。これは、実際にPIDコントローラ701の積分項(integral term)のような特定の項をプリセットする。
図7Bは、本発明の一つの実施形態に係る位置閉ループ制御の例を示すブロック図である。図7Bを参照すると、PCLコントローラ512は、PIDコントローラ711とセレクタロジック712を含む。セレクタ712は、PIDコントローラ711からの出力またはPRPモジュール513からの出力613のいずれかを選択するように構成されている。一つの実施形態では、PRPモジュール513および上述したような他の構成要素は、手動運転モードまたは自動運転モードで車両が運転されている間、プリセット速度値613Aを絶えずまたは定期的に計算する。通常の自動運転モードの間、セレクタ712は、PIDコントローラ711の出力を選択して、PCLコントローラ512の出力になるようにする。
運転モード検出器306によって検出可能な、手動運転モードから自動運転モードに変化する運転モードの検出に応答して、トリガ信号613Bがセレクタ712に送信されて、PRPモジュール513の出力(すなわち、プリセット速度値613A)を選択するようにセレクタ71を指示して、PCLコントローラ512の出力610Bとなる。トリガ信号613Bは、ロジックローレベル、ロジックハイレベル、立ち上がりエッジまたは立ち下がりエッジのいずれかの選択信号である。ロジックレベルまたはエッジの一つは、セレクタ712がPIDコントローラ711またはPRPモジュール513のいずれかの出力を選択するように指示するのに使用されることができる。他の実施形態では、運転モード検出器306は選択信号(例えば、信号613B)を提供するように、セレクタ712に直接接続することができる一方で、PRPモジュール503はプリセットペダル値606Aだけを提供する。一つの実施形態では、プリセット値613Aは、PIDコントローラ711の複数の係数またはパラメータ(例えば、PIDコントローラ711のKi係数)を修正するのに使用されることができる。これは、実際にPIDコントローラ711の積分項のような特定の項をプリセットする。
図8は、本発明の一つの実施形態に係る自動運転車両の運転プロセスを示すプロセスの流れである。プロセス800は、ソフトウェア、ハードウェア、またはこれらの組み合わせを含むことができる処理ロジックによって実行されてもよい。例えば、プロセス800は、図3の制御モジュール305によって実行されることができる。図8を参照すると、ステップ801において、処理ロジックは、ADVが手動運転モードから自動運転モードに切り替えたことを検出する。この検出に応答して、ステップ802において、処理ロジックは、前回の命令サイクルで発行された速度制御命令に応答して測定されたADVの位置(つまり、ADVの現在位置)に基づいて、第1の速度基準(例えば、速度基準613または610B)を決定する。ステップ803において、処理ロジックは、現在の命令サイクルに対するADVの目標位置に基づいて、第2の速度基準(例えば、速度基準610A)を決定する。ステップ804において、処理ロジックは、第1の速度基準、第2の速度基準と現在の命令サイクルの目標速度に基づいて、ペダル割合を示すペダル値を選択的に決定する。ステップ805において、処理ロジックは、ペダル値に基づいて、または代替的に、第1の速度基準、第2の速度基準と目標速度に基づいて、現在の命令サイクルに対する速度制御命令を生成する。その結果、ADVは、手動運転モードから自動運転モードへの切り替え前後に似ている加速度または減速度で運転される。
図9は、本発明の他の実施形態に係る自動運転車両の運転プロセスを示すプロセスの流れである。プロセス900は、図8のステップ802の一部として実行されることができる。図9を参照すると、ステップ901において、処理ロジックは、GPSデータ(例えば、位置609)に基づいて、ADVの現在位置を決定する。ステップ902において、処理ロジックは、ADVの現在速度(例えば、速度604)を測定し、ADVの速度を第1の速度基準(例えば、速度基準612)に変換する。ステップ903において、処理ロジックは、第1の速度およびADVから測定された第2の速度(例えば、速度604)に基づいて、ADVの実際速度表示を決定する。ステップ904において、処理ロジックは、現在の命令サイクルに対するADVの目標位置に基づいて、第3の速度(例えば、速度610A)を決定する。ステップ905において、現在の命令サイクルに対する実際速度表示、第3の速度と目標速度(例えば、速度601)に基づいて、プリセット速度値(例えば、プリセット613)が計算される。
図10は、本発明の他の実施形態に係る自動運転車両の運転プロセスを示すプロセスの流れである。プロセス1000は、図8のステップ804の一部として実行されることができる。図10を参照すると、ステップ1001において、処理ロジックは、目標速度基準(例えば、速度基準601と610)に基づいて、第1のペダル値(例えば、ペダル値602)を決定する。ステップ1002において、処理ロジックは、車両プラットフォームから測定されたトルクに基づいて、第2のペダル値(例えば、ペダル値607)を決定する。ステップ1003において、処理ロジックは、第1のペダル値と第2のペダル値に基づいて、第3のペダル値(例えば、ペダル値またはプリセット606またはペダル値603)を計算する。ステップ1004において、処理ロジックは、第1のペダル値と第3のペダル値に基づいて、最終的なペダル値(例えば、ペダル値605)を決定する。最終的なペダル値は、現在の命令サイクルに対する速度制御命令を生成するのに使用される。
注意すべきなのは、前記の示されたとともに記述された一部または全部の構成要素は、ソフトウェア、ハードウェアまたはその組み合わせで実現されることができる。例えば、このような構成要素は、永続記憶装置にインストールされるとともに記憶されたソフトウェアとして実現されてもよく、前記ソフトウェアは、本出願にわたって記載の手順または動作を実施するように、プロセッサ(図示せず)でメモリにロードして実行されてもよい。あるいは、このような構成要素は、集積回路(例えば特定用途向けICまたはASIC)、デジタル信号プロセッサ(DSP)、またはフィールドプログラマブルゲートアレイ(FPGA)にプログラミングされまたは嵌め込みされた専用ハードウェアにおける実行可能なコードとして実現されてもよく、前記実行可能なコードは、対応するドライバープログラムおよび/またはオペレーティングシステムによってアプリケーションからアクセスされてもよい。なお、このような構成要素は、プロセッサまたはプロセッサコアにおける特定のハードウェアロジックとして実現されてもよく、ソフトウェア構成要素が一つ以上の特定コマンドによってアクセス可能なコマンドセットの一部とする。
図11は、本発明の一つの実施形態と組み合わせて使用されるデータ処理システムを例示的に示すブロック図である。例えば、システム1500は、上記プロセスまたは方法のいずれかを実行する上記任意のデータ処理システム(例えば、図1の感知および計画システム110、およびサーバ103〜104のいずれか)を示してもよい。システム1500は、多数の異なる構成要素を含んでもよい。これらの構成要素は、集積回路(IC)、集積回路の一部、分散型電子装置または回路基板に適用された他のモジュール(例えばコンピュータシステムのマザーボードまたはアドインカード)、または他の方式でコンピュータシステムのシャシーに組み込まれた構成要素として実現されることできる。
さらに、システム1500は、コンピュータシステムの多数の構成要素の高レベルビューを示すことを目的とする。しかしながら、いくつかの実現形態では、付加的構成要素が存在する場合もあることを理解すべきである。また、他の実現形態において示される構成要素が異なる配置を有してもよい。システム1500は、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、サーバ、携帯電話、メディアプレーヤー、パーソナルディジタルアシスタント(PDA)、スマート腕時計、パーソナルコミュニケーター、ゲーム装置、ネットワークルータまたはハブ、無線アクセスポイント(AP)またはリピーター、セットトップボックス、またはそれらの組合せを示してもよい。また、単一の機器またはシステムのみを示したが、用語「機器」または「システム」は、さらに、独立または共同で一つ(または複数)のコマンドセットを実行することにより本明細書に説明される任意の1種または複数種の方法を実行する機器またはシステムの任意のセットを含むことを理解すべきである。
一つの実施形態において、システム1500は、バスまたは相互接続部材1510によって接続されたプロセッサ1501、メモリ1503および装置1505〜1508を備える。プロセッサ1501は、単一のプロセッサコアまたは複数のプロセッサコアを含む単一のプロセッサまたは複数のプロセッサを示してもよい。プロセッサ1501は、マイクロプロセッサ、中央処理装置(CPU)等のような一つまたは複数の汎用プロセッサであってもよい。より具体的には、プロセッサ1501は、複雑コマンドセット計算(CISC)マイクロプロセッサ、縮小コマンドセットコンピュータ(RISC)マイクロプロセッサ、超長コマンド語(VLIW)マイクロプロセッサ、または他のコマンドセットを実現するプロセッサ、またはコマンドセットの組合せを実現するプロセッサであってもよい。プロセッサ1501は、さらに、専用集積回路(ASIC)、セルラまたはベースバンドプロセッサ、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)、ネットワークプロセッサ、グラフィックプロセッサ、ネットワークプロセッサ、通信プロセッサ、暗号プロセッサ、コプロセッサ、組み込みプロセッサのような一つまたは複数の専用プロセッサ、あるいはコマンド処理可能な任意の他のタイプのロジックであってもよい。
プロセッサ1501(超低電圧プロセッサのような低電力マルチコアプロセッサソケットであってもよい)は、前記システムの各種構成要素と通信するための主処理ユニットおよび中央ハブとして用いられてもよい。このようなプロセッサは、システムオンチップ(SoC)として実現されることができる。プロセッサ1501は、コマンドを実行することにより本明細書に説明される動作およびステップを実行するためのコマンドを実行するように構成される。また、システム1500は、選択可能なグラフィックサブシステム1504と通信するグラフィックインターフェースをさらに含んでもよく、グラフィックサブシステム1504は、表示コントローラ、グラフィックプロセッサおよび/または表示装置をさらに備えてもよい。
プロセッサ1501は、メモリ1503と通信してもよく、メモリ1503は、一つの実施形態において複数のメモリによって所定量のシステムメモリを提供する。メモリ1503は、ランダムアクセスメモリ(RAM)、動的RAM(DRAM)、シンクロナスDRAM(SDRAM)、静的RAM(SRAM)または他のタイプの記憶装置のような一つまたは複数の揮発性記憶(またはメモリ)装置を備えてもよい。メモリ1503は、プロセッサ1501または任意の他の装置により実行されるコマンド列を含む情報を記憶することができる。例えば、複数種のオペレーティングシステム、装置ドライバー、ファームウェア(例えば、基本入出力システムまたはBIOS)および/またはアプリケーションの実行可能なコードおよび/またはデータはメモリ1503にロードされてもよく、プロセッサ1501により実行されてもよい。オペレーティングシステムは、ロボットオペレーティングシステム(ROS)、Microsoft(登録商標)会社からのWindows(登録商標)オペレーティングシステム、アップル会社からのMac OS(登録商標)/iOS(登録商標)、Google(登録商標)会社からのAndroid(登録商標)、Linux(登録商標)、Unix(登録商標)または他のリアルタイムまたは組み込みオペレーティングシステムのような任意のタイプのオペレーティングシステムであってもよい。
システム1500は、I/O装置、例えば装置1505〜1508をさらに備えてもよく、ネットワークインターフェース装置1505、選択可能な入力装置1506および他の選択可能なI/O装置1507を備える。ネットワークインターフェース装置1505は、無線送受信機および/またはネットワークインターフェースカード(NIC)を備えてもよい。前記無線送受信機は、WiFi送受信機、赤外送受信機、ブルートゥース送受信機、WiMax送受信機、無線セルラーホン送受信機、衛星送受信機(例えば、全地球測位システム(GPS)送受信機)または他の無線周波数(RF)送受信機またはそれらの組合せであってもよい。NICはイーサネット(登録商標)カードであってもよい。
入力装置1506は、マウス、タッチパッド、タッチスクリーン(それは表示装置1504と集積されてもよい)、ポインタデバイス(例えばスタイラス)および/またはキーボード(例えば、物理キーボードまたはタッチスクリーンの一部として表示された仮想キーボード)を備えてもよい。例えば、入力装置1506は、タッチスクリーンに接続されるタッチスクリーンコントローラを含んでもよい。タッチスクリーンおよびタッチスクリーンコントローラは、例えば複数種のタッチ感度技術(容量、抵抗、赤外および表面音波の技術を含むが、それらに限定されない)のいずれか、およびタッチスクリーンの一つまたは複数の接触点を決定するための他の近接センサアレイまたは他の素子を用いてそのタッチ点および移動または断続を検出することができる。
I/O装置1507は音声装置を備えてもよい。音声装置は、スピーカおよび/またはマイクロホンを含んでもよく、それにより音声認識、音声コピー、デジタル記録および/または電話機能のような音声サポートの機能を促進する。他のI/O装置1507は、汎用シリアルバス(USB)ポート、パラレルポート、シリアルポート、印刷機、ネットワークインターフェース、バスブリッジ(例えば、PCI−PCIブリッジ)、センサ(例えば、加速度計、ジャイロスコープ、磁力計、光センサ、コンパス、近接センサ等のような動きセンサ)またはそれらの組合せをさらに備えてもよい。装置1507は、結像処理サブシステム(例えば、カメラ)をさらに備えてもよく、前記結像処理サブシステムは、カメラ機能(例えば、写真およびビデオ断片の記録)を促進するための電荷カップリング装置(CCD)または相補型金属酸化物半導体(CMOS)光学センサのような光学センサを備えてもよい。あるセンサは、センサハブ(図示せず)によって相互接続部材1510に接続されてもよく、キーボードまたは熱センサのような他の装置は、組み込みコントローラ(図示せず)により制御されてもよく、これはシステム1500の特定配置または設計により決められる。
データ、アプリケーション、一つまたは複数のオペレーティングシステム等のような情報の永久記憶を提供するために、大容量記憶装置(図示せず)は、プロセッサ1501に接続されてもよい。様々な実施形態において、薄型化と軽量化のシステム設計を実現し且つシステムの応答能力を向上させるために、このような大容量記憶装置は、ソリッドステート装置(SSD)によって実現されることができる。なお、他の実施形態において、大容量記憶装置は、主にハードディスクドライブ(HDD)で実現されてもよく、容量が小さいSSD記憶装置は、SSDキャッシュとして停電イベント期間にコンテキスト状態および他のこのような情報の永久記憶を実現し、それによりシステム動作が再開するときに通電を速く実現することができる。さらに、フラッシュデバイスは、例えばシリアルペリフェラルインターフェース(SPI)によってプロセッサ1501に接続されてもよい。このようなフラッシュデバイスは、システムソフトウェアの不揮発性記憶に用いられてもよく、前記システムソフトウェアは、前記システムのBIOSおよび他のファームウェアを備える。
記憶装置1508は、任意の1種または複数種の本明細書に記載の方法または機能を体現する一つまたは複数のコマンドセットまたはソフトウェア(例えば、モジュール、ユニットおよび/またはロジック1528)が記憶されるコンピュータアクセス可能な記憶媒体1509(機械可読記憶媒体またはコンピュータ可読媒体とも呼ばれる)を備えてもよい。モジュール/ユニット/ロジック1528は、計画モジュール304および/または制御モジュール305のような上記構成要素のいずれかを示してもよい。モジュール/ユニット/ロジック1528は、さらにデータ処理システム1500により実行される期間にメモリ1503内および/またはプロセッサ1501内に完全または少なくとも部分的に存在してもよく、ここで、メモリ1503およびプロセッサ1501も、機器アクセス可能な記憶媒体を構成する。処理モジュール/ユニット/ロジック1528は、さらにネットワークによってネットワークインターフェース装置1505を経由して送受信されてもよい。
コンピュータ可読記憶媒体1509は、以上に説明されたいくつかのソフトウェア機能を永続的に記憶してもよい。コンピュータ可読記憶媒体1509は、例示的な実施形態において単一の媒体として示されたが、用語「コンピュータ可読記憶媒体」は、前記一つまたは複数のコマンドセットが記憶される単一の媒体または複数の媒体(例えば、集中型または分散型データベース、および/または関連するキャッシュおよびサーバ)を備えることを理解すべきである。用語「コンピュータ可読記憶媒体」は、さらにコマンドセットを記憶またはコーディング可能な任意の媒体を備えることを理解すべきであり、前記コマンドセットは、機器により実行され且つ前記機器に本出願の任意の1種または複数種の方法を実行させる。従って、用語「コンピュータ可読記憶媒体」は、ソリッドステートメモリおよび光学媒体と磁気媒体または任意の他の非一時的機械可読媒体を備えるが、それらに限定されないことを理解すべきである。
本明細書に記載のモジュール/ユニット/ロジック1528、構成要素および他の特徴は、ディスクリートハードウェア構成要素として実現されてもよく、またはハードウェア構成要素(例えばASICS、FPGA、DSPまたは類似装置)の機能に統合されてもよい。さらに、処理モジュール/ユニット/ロジック1528は、ハードウェア装置内のファームウェアまたは機能回路として実現されてもよい。また、処理モジュール/ユニット/ロジック1528は、ハードウェア装置およびソフトウェア構成要素の任意の組合せで実現されてもよい。
なお、システム1500は、データ処理システムの各種の構成要素を有するように示されているが、構成要素の相互接続のいかなる特定のアーキテクチャーまたは方式を示すものではないことに注意すべきであり、それは、このような詳細が本出願の実施形態に密接な関係がないためである。また、より少ない構成要素またはより多くの構成要素を有するネットワークコンピュータ、ハンドヘルドコンピュータ、携帯電話、サーバおよび/または他のデータ処理システムは、本出願の実施形態と共に使用されてもよい。
上記詳細な説明の一部は、コンピュータメモリにおけるデータビットに対する演算のアルゴリズムおよび記号表現で示される。これらのアルゴリズムの説明および表現は、データ処理分野における当業者によって使用される、それらの作業実質を所属分野の他の当業者に最も効果的に伝達する方法である。ここで、アルゴリズムは、通常、所望の結果につながる首尾一貫した動作列(sequence of operations)と考えられる。これらの動作とは、物理量に対して物理的動作を行う必要となるステップを指す。
ただし、これらの全ておよび類似の用語は、いずれも適切な物理量に関連付けられ、且つただこれらの量に適用される適切なラベルであることに注意すべきである。特に断らない限り、本出願の全体にわたって用語(例えば、添付している特許請求の範囲に説明された用語)による説明とは、コンピュータシステムまたは類似の電子計算装置の動作および処理であり、前記コンピュータシステムまたは電子計算装置は、コンピュータシステムのレジスタおよびメモリに物理(例えば、電子)量としてデータを示し、且つ前記データをコンピュータシステムメモリまたはレジスタまたは他のこのような情報記憶装置、伝送または表示装置内において類似に物理量として示される他のデータに変換する。
本出願の実施形態は、さらに本明細書における動作を実行するための装置に関する。このようなコンピュータプログラムは、不揮発性のコンピュータ可読媒体に記憶される。機器可読媒体は、機器(例えば、コンピュータ)可読な形態で情報を記憶する任意の機構を備える。例えば、機器可読(例えば、コンピュータ可読)媒体は、機器(例えば、コンピュータ)可読記憶媒体(例えば、読み出し専用メモリ(「ROM」)、ランダムアクセスメモリ(「RAM」)、磁気ディスク記憶媒体、光記憶媒体、フラッシュメモリメモリ)を備える。
上記図面に示される手順または方法は、ハードウェア(例えば、回路、専用ロジック等)、ソフトウェア(例えば、不揮発性のコンピュータ可読媒体に具現化される)、または両方の組合せを含む処理ロジックにより実行されてもよい。前記手順または方法は、本明細書において特定の順序に応じて説明されるが、説明された動作の一部は、異なる順序に応じて実行されてもよい。また、いくつかの動作は、順番ではなく並行に実行されてもよい。
本出願の実施形態は、いずれかの特定のプログラミング言語を参照して説明されていないが、複数種のプログラミング言語で本明細書に記載の本出願の実施形態の教示を実現できることを理解すべきである。
以上の明細書では、本出願の具体的な例示的な実施形態を参照してその実施形態を説明した。明らかなように、添付している特許請求の範囲に記載の本出願のより広い趣旨および範囲を逸脱しない限り、様々な変形が可能である。従って、限定的なものではなく例示的なものとして本明細書および図面を理解すべきである。
図1を再び参照して、無線通信システム112は、自動運転車両101と、例えば装置、センサ、その他の車両等の外部システムとの間に通信することを可能にする。例えば、無線通信システム112は、1つ以上の装置に直接にまたは通信ネットワークを介して無線通信し、例えばネットワーク102によってサーバ103〜104に通信することができる。無線通信システム112は、任意のセルラー通信ネットワークまたは無線ローカルエリアネットワーク(WLAN)(例えばWiFi(登録商標))を使用して他の構成要素やシステムに通信することができる。無線通信システム112は、例えば赤外線リンク、ブルートゥース(登録商標)等を使用して装置(例えば、乗客の移動装置、表示装置、車両101内のスピーカー)に直接に通信することができる。ユーザインターフェースシステム113は、車両101内で実行される周辺装置の一部であってもよく、例えばキーボード、タッチスクリーンディスプレイ装置、マイクロフォン、およびスピーカー等を含む。
自動運転車両101の一部または全ての機能は、特に自動運転モードで操作する場合、感知および計画システム110により制御されたり管理されたりすることができる。感知および計画システム110は、必要なハードウェア(例えば、プロセッサ、メモリ、記憶装置)、およびソフトウェア(例えば、オペレーティングシステム、計画およびルーティングプログラム)を含み、センサシステム115、車両制御システム111、無線通信システム112、および/またはユーザインターフェースシステム113から情報を受信し、受信された情報を処理し、出発地から目的地までのルートや経路を計画し、そして計画および制御情報に基づいて車両101を運転させる。あるいは、感知および計画システム110と車両制御システム111とは一体化されてもよい。
自動運転車両101がルートに沿って走行する期間に、感知および計画システム110は、さらに交通情報システムやサーバ(TIS)からリアルタイム交通情報を取得できる。注意すべきなのは、サーバ103〜104は、第三者エンティティにより動作されることができる。あるいは、サーバ103〜104の機能は、感知および計画システム110と一体化されてもよい。リアルタイム交通情報、MPOI情報、位置情報、およびセンサシステム115が検出または感知したリアルタイムなローカル環境データ(例えば、障害物、対象、付近車両)に基づいて、感知および計画システム110は、安全で効果的に指定した目的地に到達するように、最適なルートを計画し、かつ計画したルートにより例えば車両制御システム111を介して車両101を運転することができる。
図3は、本発明の一つの実施例にかかる自動車両とともに使用される感知および計画システムの例を示すブロック図である。システム300は、図1における自動運転車両101の一部として実現されることができるが、感知および計画システム110、車両制御システム111、およびセンサシステム115に限定されない。図3を参照し、感知および計画システム110は、位置決めモジュール301と、感知モジュール302と、決定モジュール303と、計画モジュール304と、制御モジュール305と、運転モード検出器306とを含むが、それらに限定されない。
位置決めモジュール301は、自動運転車両300(例えば、GPSユニット212を利用する)の現在の位置を決定し、ユーザの旅程またはルートに関する何れのデータを管理する。位置決めモジュール301(地図およびルーティングモジュールとも言われる)は、ユーザの旅程またはルートに関連する任意のデータを管理する。ユーザは、例えばユーザインターフェースを介してログインするとともに旅程の出発位置および目的位置を指定してもい。位置決めモジュール301は、旅程に関連するデータを取得するように、自動運転車両300(システム)のその他の構成要素(例えば地図およびルート情報311)と通信する。例えば、位置決めモジュール301は、位置サーバと、地図およびPOI(MPOI)サーバから位置およびルート情報を取得することができる。位置サーバは、位置サービスを提供し、かつMPOIサーバは、地図サービスとある位置のPOIとを提供し、地図およびルート情報311の一部としてキャッシュされてもよい。自動運転車両300がルートに沿って走行する期間に、位置決めモジュール301は、さらに交通情報システムやサーバからリアルタイム交通情報を取得することができる。
センサシステム115により提供されたセンサデータ、および位置決めモジュール301により得られた位置決め情報に基づいて、感知モジュール302は周辺環境に対する感知を決定する。感知情報は、普通の運転者が自分で運転している車両周辺から感知したもの(状況)を示すことができる。感知情報は、例えば対象形式で現される車線配置(例えば、ストレートまたはカーブ)、トラフィック信号、他の車両の相対位置、歩行者、建築物、横断歩道またはその他の交通関連標識(例えば、停止標識、譲り標識)などを含んでもよい。
図5Bは、本発明の一つの実施形態に係る速度制御モジュールの例を示すブロック図である。図5Bを参照すると、速度制御モジュール310は、速度開ループ(VOL)コントローラ501、速度閉ループ(VCL)コントローラ502、速度レギュレータプリセット(VRP)モジュール503、およびトルク・ツー・ペダル(torque to pedal)(トルク/ペダル)変換器504を含む。構成要素501〜504は、ソフトウェア、ハードウェア、またはこれらの組み合わせにより実行されることができる。一つの実施形態では、VOLコントローラ501は、目標速度に基づいてペダル割合を示すペダル値を決定するように構成されている。VCLコントローラ502は、車両の目標速度(例えば、到達しようとする次の速度)と、実際速度(例えば、現在速度)との誤差または差に基づいて、ペダル値を決定するように構成されている。トルク/ペダル変換器504は、車両プラットフォームから測定されたトルクを、ペダル割合(つまり、測定されたトルクを生成するためのペダル割合)を示すペダル値に変換するように構成されている。VRPモジュール503は、トルク/ペダル変換器504からのペダル値とVOLコントローラ501からのペダル基準とに基づいて、プリセットペダル値を計算する。プリセットペダル値は、VCLコントローラ50を設定したりプリセットしたりするのに使用されることができる。
車両が手動運転モードで運転されるとき、人間の運転者が車両を制御するため、VOLコントローラ501、VCLコントローラ502は、車両の速度を制御するのに使用されない。車両が手動運転モードから自動運転モードに切り替えるときに、計画モジュール304は、計画を開始して車両の目標速度を生成する(この例では、目標速度601である)。基準として利用可能な前の走行データがないので、計画された目標速度601は、不正確または目標から外れる可能性がある。同様に、ステーション制御モジュール308は、正確な速度基準を提供しない可能性があります。その結果、その時点での目標速度601と、速度基準610と、車両の実際速度604との間の差は、顕著に異なる可能性がある。VCLコントローラ502は、目標速度601と、速度基準610と、実際速度604との間の差に基づいて、速度・ツー・ペダル(速度/ペダル)変換テーブルにおいて検索操作を行うことによりペダル値フィードバック603を生成するので、VCLコントローラ502の出力603は、計画モジュール304によって提供されたオフターゲット(off-target)速度601によって誤った可能性がある。
説明の目的のために、現在の時間または命令サイクルが時間tと呼ばれる場合、前回の時間または前回の命令サイクルは、時間(t−Δt)と呼ばれる。時間tの速度はv(t)と呼ばれ、時間(t−Δt)の速度はv(t−Δt)と呼ばれる。v(t−Δt)に可能な限り近いv(t)614を生成して、速度制御モジュール310に提供することを目標とする。位置/速度変換器54は、車両プラットフォーム510から測定された実際位置609を速度基準612に変換する。PRPモジュール513は、測定された速度604(Vmeaduredと呼ばれる)と、現在位置609と基づいて変換された速度612とに基づいて決定されたv(t−Δt)に基づいて、測定された実際速度604と変換された速度612(規定(nominal)速度またはVnominalと呼ばれる)を示す実際速度表示を計算する。実際速度表示は、VmeaduredとVnominalの重み合計であってもよい。一つの実施形態では、実際速度表示は、次のようにVmeaduredとVnominalの平均として定義することができ、すなわち、
actual=(Vmeadured+Vnominal)/2
運転モード検出器306によって検出可能な、手動運転モードから自動運転モードに変化する運転モードの検出に応答して、トリガ信号613Bがセレクタ712に送信されて、PRPモジュール513の出力(すなわち、プリセット速度値613A)を選択するようにセレクタ71を指示して、PCLコントローラ512の出力610Bとなる。トリガ信号613Bは、ロジックローレベル、ロジックハイレベル、立ち上がりエッジまたは立ち下がりエッジのいずれかの選択信号である。ロジックレベルまたはエッジの一つは、セレクタ712がPIDコントローラ711またはPRPモジュール513のいずれかの出力を選択するように指示するのに使用されることができる。他の実施形態では、運転モード検出器306は選択信号(例えば、信号613B)を提供するように、セレクタ712に直接接続することができる一方で、PRPモジュール53はプリセットペダル値606Aだけを提供する。一つの実施形態では、プリセット値613Aは、PIDコントローラ711の複数の係数またはパラメータ(例えば、PIDコントローラ711のKi係数)を修正するのに使用されることができる。これは、実際にPIDコントローラ711の積分項のような特定の項をプリセットする。
図9は、本発明の他の実施形態に係る自動運転車両の運転プロセスを示すプロセスの流れである。プロセス900は、図8のステップ802の一部として実行されることができる。図9を参照すると、ステップ901において、処理ロジックは、GPSデータ(例えば、位置609)に基づいて、ADVの現在位置を決定する。ステップ902において、処理ロジックは、ADVの現在速度(例えば、速度604)を測定し、ADVの現在位置を第1の速度基準(例えば、速度基準612)に変換する。ステップ903において、処理ロジックは、第1の速度およびADVから測定された第2の速度(例えば、速度604)に基づいて、ADVの実際速度表示を決定する。ステップ904において、処理ロジックは、現在の命令サイクルに対するADVの目標位置に基づいて、第3の速度(例えば、速度610A)を決定する。ステップ905において、現在の命令サイクルに対する実際速度表示、第3の速度と目標速度(例えば、速度601)に基づいて、プリセット速度値(例えば、プリセット613)が計算される。
一つの実施形態において、システム1500は、バスまたは相互接続部材1510によって接続されたプロセッサ1501、メモリ1503および装置1505〜1508を備える。プロセッサ1501は、単一のプロセッサコアまたは複数のプロセッサコアを含む単一のプロセッサまたは複数のプロセッサを示してもよい。プロセッサ1501は、マイクロプロセッサ、中央処理装置(CPU)等のような一つまたは複数の汎用プロセッサであってもよい。より具体的には、プロセッサ1501は、複雑コマンドセット計算(CISC)マイクロプロセッサ、縮小コマンドセットコンピュータ(RISC)マイクロプロセッサ、超長コマンド語(VLIW)マイクロプロセッサ、または他のコマンドセットを実現するプロセッサ、またはコマンドセットの組合せを実現するプロセッサであってもよい。プロセッサ1501は、さらに、専用集積回路(ASIC)、セルラまたはベースバンドプロセッサ、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)、グラフィックプロセッサ、ネットワークプロセッサ、通信プロセッサ、暗号プロセッサ、コプロセッサ、組み込みプロセッサのような一つまたは複数の専用プロセッサ、あるいはコマンド処理可能な任意の他のタイプのロジックであってもよい。

Claims (22)

  1. 自動運転車両を運転するためのコンピュータ実施方法であって、
    前記自動運転車両(ADV)が手動運転モードから自動運転モードに切り替えたことを検出するステップと、
    前回の命令サイクルで発行された速度制御命令に応答して測定された前記ADVの現在位置と、現在の命令サイクルの目標速度とに基づいて、第1の速度基準を決定するステップと、
    前記現在の命令サイクルに対する現在の目標位置に基づいて、第2の速度基準を決定するステップと、
    前記第1の速度基準、前記第2の速度基準および前記現在の命令サイクルに対する目標速度に基づいて、前記ADVの速度制御に用いられる速度制御命令を生成して、前記ADVが前記手動運転モードから前記自動運転モードへの切り替え前後に、近いの加速率または減速率で運転するようにするステップと、を含む、
    ことを特徴とする方法。
  2. 第1の速度基準を決定するステップは、
    全地球測位システム(GPS)データに基づいて、前記ADVの現在位置を測定するステップと、
    予め設定されたアルゴリズムを使用して、前記ADVの現在位置を前記第1の速度基準に変換するステップと、を含む、
    ことを特徴とする請求項1に記載の方法。
  3. 予め設定されたアルゴリズムを使用して、前記ADVの現在位置を前記第1の速度基準に変換するステップは、
    前記予め設定されたアルゴリズムを使用して、測定された前記ADVの現在位置に基づいて、第3の速度基準を決定するステップと、
    前記第3の速度基準と前記前回の命令サイクルで発行された速度制御命令に応答して測定された前記ADVの現在速度とに基づいて、前記第1の速度基準を生成するステップと、を含む、
    ことを特徴とする請求項2に記載の方法。
  4. 前記ADVの前記現在位置に基づいて、第3の速度基準を決定するステップは、
    前記前回の命令サイクルで測定された前記ADVの前回位置を決定するステップと、
    前記ADVの現在位置と前回位置との差に基づいて、前記第3の速度基準を計算するステップと、
    を含むことを特徴とする請求項3に記載の方法。
  5. 現在の命令サイクルに対する現在の目標位置に基づいて、第2の速度基準を決定するステップは、
    前記前回の命令サイクルに対する前記ADVの前回の目標位置を決定するステップと、
    前記現在の目標位置と前記前回の目標位置との差に基づいて、前記第2の速度基準を計算するステップと、を含む、
    ことを特徴とする請求項1に記載の方法。
  6. 前記第1の速度基準、前記第2の速度基準および前記現在の命令サイクルに対する現在の目標速度に基づいて、第1のペダル値を決定するステップと、
    前記前回の命令サイクルで発行された速度制御命令に応答して測定された前記ADVの現在速度に基づいて、第2のペダル値を決定するステップであって、前記速度制御命令は、前記第1のペダル値と前記第2のペダル値とに基づいて生成されるステップと、を含む、
    ことを特徴とする請求項1に記載の方法。
  7. 第1のペダル値を決定するステップは、
    前記前回の命令サイクルで発行された前記速度制御命令に応答して、前記ADVからのセンサデータに基づいて、前記ADVのトルク表すトルク値を測定するステップと、
    予め設定されたアルゴリズムを使用して、前記トルク値を前記第1のペダル値に変換するステップと、を含む
    ことを特徴とする請求項6に記載の方法。
  8. 前記トルク値を前記第1のペダル値に変換するステップは、
    前記トルク値に基づいてトルク・ツー・ペダル(トルク/ペダル)マッピングテーブルにおいて検索するステップを含み、
    前記トルク・ツー・ペダルマッピングテーブルは、複数のマッピングエントリを含み、各マッピングエントリは、特定のトルク値をペダル値にマッピングする、
    ことを特徴とする請求項7に記載の方法。
  9. 前記ADVの現在速度に基づいて、第2のペダル値を決定するステップは、
    前記ADVの現在速度に基づいて、速度・ツー・ペダル(速度/ペダル)変換テーブルにおいて検索するステップを含む、
    ことを特徴とする請求項6に記載の方法。
  10. ペダル値は、前記ADVのアクセルペダルまたはブレーキペダルに押すことができる最大のペダル距離の割合を示す、
    ことを特徴とする請求項6に記載の方法。
  11. 命令が記憶された不発揮性の機械可読媒体であって、
    前記命令は、プロセッサにより実行されるとき、前記プロセッサに操作を実行させ、前記操作は、
    自動運転車両(ADV)が手動運転モードから自動運転モードに切り替えたことを検出するステップと、
    前回の命令サイクルで発行された速度制御命令に応答して測定された前記ADVの現在位置と、現在の命令サイクルの目標速度とに基づいて、第1の速度基準を決定するステップと、
    前記現在の命令サイクルに対する現在の目標位置に基づいて、第2の速度基準を決定するステップと、
    前記第1の速度基準、前記第2の速度基準および前記現在の命令サイクルに対する目標速度に基づいて、前記ADVの速度制御に用いられる速度制御命令を生成して、前記ADVが前記手動運転モードから前記自動運転モードへの切り替え前後に、近い加速率または減速率で運転するようにするステップと、
    を含む、
    ことを特徴とする機械可読媒体。
  12. 第1の速度基準を決定するステップは、
    全地球測位システム(GPS)データに基づいて、前記ADVの現在位置を測定するステップと、
    予め設定されたアルゴリズムを使用して、前記ADVの現在位置を前記第1の速度基準に変換するステップと、
    を含む、
    ことを特徴とする請求項11に記載の機械可読媒体。
  13. 予め設定されたアルゴリズムを使用して、前記ADVの現在位置を前記第1の速度基準に変換するステップは、
    前記予め設定されたアルゴリズムを使用して、測定された前記ADVの現在位置に基づいて、第3の速度基準を決定するステップと、
    前記第3の速度基準と前記前回の命令サイクルで発行された速度制御命令に応答して測定された前記ADVの現在速度とに基づいて、前記第1の速度基準を生成するステップと、を含む、
    ことを特徴とする請求項12に記載の機械可読媒体。
  14. 前記ADVの前記現在位置に基づいて、第3の速度基準を決定するステップは、
    前記前回の命令サイクルで測定された前記ADVの前回位置を決定するステップと、
    前記ADVの現在位置と前回位置との差に基づいて、前記第3の速度基準を計算するステップと、
    を含む、
    ことを特徴とする請求項13に記載の機械可読媒体。
  15. 現在の命令サイクルに対する現在の目標位置に基づいて、第2の速度基準を決定するステップは、
    前記前回の命令サイクルに対する前記ADVの前回の目標位置を決定するステップと、
    前記現在の目標位置と前記前回の目標位置との差に基づいて、前記第2の速度基準を計算するステップと、を含む、
    ことを特徴とする請求項11に記載の機械可読媒体。
  16. 前記操作は、
    前記第1の速度基準、前記第2の速度基準および前記現在の命令サイクルに対する現在の目標速度に基づいて、第1のペダル値を決定するステップと、
    前記前回の命令サイクルで発行された速度制御命令に応答して測定された前記ADVの現在速度に基づいて、第2のペダル値を決定するステップであってと、前記速度制御命令は、前記第1のペダル値と前記第2のペダル値とに基づいて生成されるステップと、を含む、
    ことを特徴とする請求項11に記載の機械可読媒体。
  17. プロセッサと、
    前記プロセッサに連結されてコマンドを記憶するメモリと、を含み、
    前記メモリがプロセッサにより実行されると、前記プロセッサに以下の操作を実行させる、データ処理システムであって、
    前記操作は、
    自動運転車両(ADV)が手動運転モードから自動運転モードに切り替えたことを検出するステップと、
    前回の命令サイクルで発行された速度制御命令に応答して測定された前記ADVの現在位置と、現在の命令サイクルの目標速度とに基づいて、第1の速度基準を決定するステップと、
    前記現在の命令サイクルに対する現在の目標位置に基づいて、第2の速度基準を決定するステップと、
    前記第1の速度基準、前記第2の速度基準および前記現在の命令サイクルに対する目標速度に基づいて、前記ADVの速度制御に用いられる速度制御命令を生成して、前記ADVが前記手動運転モードから前記自動運転モードへの切り替え前後に近い加速率または減速率で運転するようにするステップと、
    を含む、
    ことを特徴とするデータ処理システム。
  18. 第1の速度基準を決定することは、
    全地球測位システム(GPS)データに基づいて、前記ADVの前記現在位置を測定するステップと、
    予め設定されたアルゴリズムを使用して、前記ADVの前記現在位置を前記第1の速度基準に変換するステップと、を含む、
    ことを特徴とする請求項17に記載のデータ処理システム。
  19. 予め設定されたアルゴリズムを使用して、前記ADVの現在位置を前記第1の速度基準に変換するステップは、
    前記予め設定されたアルゴリズムを使用して、測定された前記ADVの現在位置に基づいて、第3の速度基準を決定するステップと、
    前記第3の速度基準と前記前回の命令サイクルで発行された速度制御命令に応答して測定された前記ADVの現在速度とに基づいて、前記第1の速度基準を生成するステップと、を含む、
    ことを特徴とする請求項18に記載のデータ処理システム。
  20. 前記ADVの前記現在位置に基づいて、第3の速度基準を決定するステップは、
    前記前回の命令サイクルで測定された前記ADVの前回位置を決定するステップと、
    前記ADVの現在位置と前回位置との差に基づいて、前記第3の速度基準を計算するステップと、を含む、
    ことを特徴とする請求項19に記載のデータ処理システム。
  21. 現在の命令サイクルに対する現在の目標位置に基づいて、第2の速度基準を決定するステップは、
    前記前回の命令サイクルに対する前記ADVの前回の目標位置を決定するステップと、
    前記現在の目標位置と前記前回の目標位置との差に基づいて、前記第2の速度基準を計算するステップと、を含む、
    ことを特徴とする請求項17に記載のデータ処理システム。
  22. 前記操作は、
    前記第1の速度基準、前記第2の速度基準および前記現在の命令サイクルに対する現在の目標速度に基づいて、第1のペダル値を決定するステップと、
    前記前回の命令サイクルで発行された速度制御命令に応答して測定された前記ADVの現在速度に基づいて、第2のペダル値を決定するステップであって、前記速度制御命令は、前記第1のペダル値と前記第2のペダル値に基づいて生成されるステップと、を含む
    ことを特徴とする請求項17に記載のデータ処理システム。
JP2018515297A 2017-03-03 2017-03-03 自動運転車両を自動運転モードに再進入させるように制御するための経度のカスケードコントローラプリセット Active JP6606603B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2017/075584 WO2018157386A1 (en) 2017-03-03 2017-03-03 Longitude cascaded controller preset for controlling autonomous driving vehicle reentering autonomous driving mode

Publications (2)

Publication Number Publication Date
JP2019509922A true JP2019509922A (ja) 2019-04-11
JP6606603B2 JP6606603B2 (ja) 2019-11-13

Family

ID=63357612

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018515297A Active JP6606603B2 (ja) 2017-03-03 2017-03-03 自動運転車両を自動運転モードに再進入させるように制御するための経度のカスケードコントローラプリセット

Country Status (6)

Country Link
US (1) US20180251135A1 (ja)
EP (1) EP3386827A1 (ja)
JP (1) JP6606603B2 (ja)
KR (1) KR102047945B1 (ja)
CN (1) CN108834425B (ja)
WO (1) WO2018157386A1 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6380489B2 (ja) * 2016-09-07 2018-08-29 トヨタ自動車株式会社 車両の走行制御装置
DE102017208762A1 (de) * 2017-05-23 2018-11-29 Bayerische Motoren Werke Aktiengesellschaft Fahrsystem zum automatisierten Fahren mit Mitteln zum Markieren von Bereichen am Lenkrad und entsprechendes Verfahren
US10438074B2 (en) * 2017-06-14 2019-10-08 Baidu Usa Llc Method and system for controlling door locks of autonomous driving vehicles based on lane information
US11460842B2 (en) 2017-08-28 2022-10-04 Motional Ad Llc Mixed-mode driving of a vehicle having autonomous driving capabilities
US11112793B2 (en) * 2017-08-28 2021-09-07 Motional Ad Llc Mixed-mode driving of a vehicle having autonomous driving capabilities
US10513273B1 (en) * 2017-09-28 2019-12-24 Waymo Llc Driver transition assistance for transitioning to manual control for vehicles with autonomous driving modes
US11042159B2 (en) * 2018-12-20 2021-06-22 Toyota Motor North America, Inc. Systems and methods for prioritizing data processing
CN109747652B (zh) * 2018-12-27 2021-02-19 东软睿驰汽车技术(沈阳)有限公司 一种车辆控制方法、装置及系统
CN109765888B (zh) * 2018-12-27 2021-12-31 东软睿驰汽车技术(沈阳)有限公司 一种车辆控制方法、装置及系统
CN109795506B (zh) * 2019-02-26 2021-04-02 百度在线网络技术(北京)有限公司 一种驾驶控制方法、装置及车辆
US11958183B2 (en) 2019-09-19 2024-04-16 The Research Foundation For The State University Of New York Negotiation-based human-robot collaboration via augmented reality
CN110745139B (zh) * 2019-10-17 2021-06-01 北京百度网讯科技有限公司 车辆速度确定方法、装置及存储介质
CN113044037A (zh) * 2019-12-28 2021-06-29 华为技术有限公司 智能汽车的控制方法、装置和控制系统
CN113911118A (zh) * 2020-07-09 2022-01-11 奥迪股份公司 驾驶辅助方法和系统、车辆及计算机可读存储介质

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR930007604B1 (ko) * 1987-12-25 1993-08-13 미쯔비시 지도샤 고교 가부시끼가이샤 차량용 엔진 제어 장치
DE19547716B4 (de) * 1995-12-20 2008-12-24 Robert Bosch Gmbh Verfahren und Vorrichtung zum Regeln bzw. Begrenzen der Geschwindigkeit eines Fahrzeugs
US6442472B1 (en) * 2001-02-28 2002-08-27 General Motors Corporation Modification of pedal progression with acceleration feedback using electronic throttle control
US7706976B1 (en) * 2006-07-26 2010-04-27 Trimble Navigation, Ltd. Position based velocity estimator
US8255103B2 (en) * 2007-03-27 2012-08-28 GM Global Technology Operations LLC Electronic brake system pedal release transition control apparatus and method
US8260482B1 (en) * 2010-04-28 2012-09-04 Google Inc. User interface for displaying internal state of autonomous driving system
JP5126320B2 (ja) * 2010-08-30 2013-01-23 トヨタ自動車株式会社 車両の制御装置
DE102012002318B4 (de) * 2012-02-06 2023-02-23 Audi Ag Verfahren zum Betreiben eines Kraftwagens und Kraftwagen mit einem Fahrerassistenzsystem
US8834317B2 (en) * 2012-07-02 2014-09-16 Ford Global Technologies, Llc Hybrid vehicle and associated control method
KR20140043536A (ko) * 2012-09-24 2014-04-10 현대자동차주식회사 자율주행 차량의 차량 제어권 전환 방법
FR2996513B1 (fr) * 2012-10-09 2014-11-28 Peugeot Citroen Automobiles Sa Procede et dispositif de controle de l’acceleration a imposer a un vehicule en cas de reactivation d’une fonction de regulation de vitesse
EP2902864B1 (en) * 2014-01-30 2017-05-31 Volvo Car Corporation Control arrangement for autonomously driven vehicle
EP2930081B1 (en) * 2014-04-08 2019-03-27 Volvo Car Corporation Method for transition between driving modes
JP6246336B2 (ja) * 2014-04-14 2017-12-13 三菱電機株式会社 運転支援装置および運転支援方法
KR20160076262A (ko) * 2014-12-22 2016-06-30 엘지전자 주식회사 차량의 주행 모드 전환 장치 및 그 방법
JP2017001597A (ja) * 2015-06-15 2017-01-05 トヨタ自動車株式会社 自動運転装置
WO2017002557A1 (ja) * 2015-06-30 2017-01-05 日立オートモティブシステムズ株式会社 加減速制御装置
JP6376059B2 (ja) * 2015-07-06 2018-08-22 トヨタ自動車株式会社 自動運転車両の制御装置
CN105955099A (zh) * 2016-04-26 2016-09-21 百度在线网络技术(北京)有限公司 无人驾驶车辆的驾驶模式切换方法和装置
CN106218639B (zh) * 2016-07-20 2019-01-11 百度在线网络技术(北京)有限公司 无人驾驶车辆、用于控制无人驾驶车辆的方法和装置

Also Published As

Publication number Publication date
JP6606603B2 (ja) 2019-11-13
CN108834425B (zh) 2021-07-20
CN108834425A (zh) 2018-11-16
EP3386827A4 (en) 2018-10-17
KR20180111760A (ko) 2018-10-11
KR102047945B1 (ko) 2019-11-22
WO2018157386A1 (en) 2018-09-07
US20180251135A1 (en) 2018-09-06
EP3386827A1 (en) 2018-10-17

Similar Documents

Publication Publication Date Title
JP6606603B2 (ja) 自動運転車両を自動運転モードに再進入させるように制御するための経度のカスケードコントローラプリセット
JP6683805B2 (ja) 自律走行モードへ再進入する自律走行車の制御のための方法及びシステム
CN108604095B (zh) 确定操作自动驾驶车辆的转向率的方法、介质及处理系统
JP6494715B2 (ja) 自律走行車の速度制御率の動的調整方法
KR101975725B1 (ko) 학습 기반 모델 예측 제어를 이용한 자율 주행 차량의 노면 마찰 결정 방법 및 시스템
CN108891417B (zh) 用于操作自动驾驶车辆的方法及数据处理系统
JP2019182401A (ja) 自動運転車に用いられる学習に基づく速度計画装置
JP6786511B2 (ja) 自律走行車の速度を追従する方法及びシステム
JP2019503294A (ja) 自律走行車を制御するためのシステム遅延推定方法
JP2018535872A (ja) 自律走行車に用いられるシステム遅延補正の制御方法
KR20180088633A (ko) 자율 주행 차량의 완전 정지를 위한 속력 제어
JP6543373B2 (ja) 自動運転車両に用いられる制御型の計画と制御システム
JP2019505423A (ja) 比例、積分及び微分(pid)コントローラを用いた自律走行車のステアリング制御方法及びシステム
JP6908674B2 (ja) 自動運転車両を動作させるための所定のキャリブレーションテーブルに基づく車両制御システム
JP2020083307A (ja) L2自動運転用の所定のキャリブレーションテーブルに基づく車両アクセル/ブレーキアシストシステム
JP2020529348A (ja) 自動運転車両のためのスピード制御コマンド自動較正システム

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180326

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180326

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190312

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190612

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20191008

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20191018

R150 Certificate of patent or registration of utility model

Ref document number: 6606603

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250