JP2019164791A - 車両アプリケーションによるリソース競合を判定する方法 - Google Patents

車両アプリケーションによるリソース競合を判定する方法 Download PDF

Info

Publication number
JP2019164791A
JP2019164791A JP2019048594A JP2019048594A JP2019164791A JP 2019164791 A JP2019164791 A JP 2019164791A JP 2019048594 A JP2019048594 A JP 2019048594A JP 2019048594 A JP2019048594 A JP 2019048594A JP 2019164791 A JP2019164791 A JP 2019164791A
Authority
JP
Japan
Prior art keywords
vehicle
application
vehicle application
computer
contention
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
JP2019048594A
Other languages
English (en)
Other versions
JP6809551B2 (ja
Inventor
信幸 東松
Nobuyuki Tomatsu
信幸 東松
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.)
Toyota Motor Corp
Original Assignee
Toyota Motor Corp
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 Toyota Motor Corp filed Critical Toyota Motor Corp
Publication of JP2019164791A publication Critical patent/JP2019164791A/ja
Application granted granted Critical
Publication of JP6809551B2 publication Critical patent/JP6809551B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • G06F9/4413Plug-and-play [PnP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44552Conflict resolution, i.e. enabling coexistence of conflicting executables

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Traffic Control Systems (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】複数の車両アプリケーションによるリソース競合に対処する。【解決手段】複数の車両リソースを有する車両に搭載され、車両アプリケーションを実行可能な車載コンピュータによって実行される方法であって、第一の車両アプリケーションが前記車載コンピュータにインストールされる際に、前記第一の車両アプリケーションに付帯している、前記第一の車両アプリケーションが利用する前記車両リソースに関する情報を含む競合テーブルを取得し記憶する導入ステップと、前記第一の車両アプリケーションに付帯している前記競合テーブルと、前記車載コンピュータに既にインストールされている第二の車両アプリケーションに付帯している前記競合テーブルと、に基づいて、前記車両リソースに対する競合が発生するか否かを判定する判定ステップと、を含む。【選択図】図1

Description

(関連出願への相互参照)
本出願は、「CONFLICT DETERMINATION AND MITIGATION FOR VEHICULAR APPLICATIONS」と題し、2018年3月19日に出願された米国特許出願第15/925,202号の優先権を主張する。これらの特許出願は、その全体が参照によって本願明細書に援用される。
本明細書は、車両アプリケーションによって発生する競合の判定および緩和の提供に関する。
車両制御システムは、ますます普及してきている。車両制御システムの一例に、先進運転支援システム(ADASシステム)がある。
ADASシステムは、これらのADASシステムを含む車両に1つ以上の自律特性を提供する。たとえば、ADASシステムは、車両が走行している車線に対する車両の位置を監視してもよく、車両がその車線の外にずれ始めた場合、車両が車線内に留まるように車両を再位置決めするか、または運転者がこの状況を是正するための措置を講じる必要があることに気付くように車両の運転者に通知を提供することによって、是正措置を取る。
いくつかの車両は、自律走行車両と見なされるのに十分な数および質の自律特性を含む。
特表2016−660328号公報
車両用プラグアンドプレイエコシステムは、自動車製造業者にとって望ましい。たとえば、車両製造業者は彼らの車両に、ソフトウェア開発者が彼らの車両向けのソフトウェアアプリケーション(すなわち、「車両アプリケーション」)を記述し、そして異なる仕様およびモデルの車両でもこれらの車両アプリケーションを同じように、または実質的に同じように動作させることを可能にする基礎構造を有することを望む。現時点で既存の解決策を使用してもこれは不可能である。たとえば、ADASシステム用のソフトウェア(本明細書では、車両アプリケーションの一例である「ADASソフトウェア」)は、車両Xおよび車両Yが同じ製造業者であったとしても、車両Xおよび車両Yが異なるメーカーおよびモデルを有する場合には、「車両X」においては「車両Y」とは異なる動作をする。車両用プラグアンドプレイエコシステムは、たとえば、ADASソフトウェアがインストールされた車両のメーカーおよびモデルに関係なくADASソフトウェアが類似の方法で動作できるようにすることによって、この問題を解決する。
車両用プラグアンドプレイエコシステムとは、このように、車種やメーカーの違いを吸収し、同一のソフトウェアによる同一のふるまいを可能にするためのシステムである。当該システムにより、サードパーティーが、車両を制御するための様々なソフトウェアを提供することが可能になる。
車両用プラグアンドプレイエコシステムを提供することに対する1つの障害は、車両に、多くの異なるタイプの車両アプリケーションがインストールされうるという点である。
たとえば、1台の車両が多数のADASシステムを含む場合がある。複数の車両アプリケーションが、同時に同じ車両アクチュエータまたは車両リソースを使用しようとすると、競合が発生する。このような競合は、致命的な事故を引き起こす可能性がある。
現在、車両にインストールされた車両アプリケーションは車両製造業者によって厳しく管理されており、車両アプリケーション開発者ら自身が各々開発している車両アプリケーションについて互いに連絡を取る必要があるので、このような競合は回避されている。これらの連絡は、車両製造業者の車両にインストールされた車両アプリケーションが、競合が回避されるように記述されるという状況を作り出している。しかしながら、将来的には、この種の開発者間の連絡が行われないプラグアンドプレイエコシステムに移行することが望ましい。
プラグアンドプレイソフトウェアエコシステムでは、車両アプリケーション開発は車両製造業者によって厳しく管理されることは不可能であり、車両アプリケーション開発者らは互いに連絡することはなくなる。現在利用可能な解決策に基づいて、車両にインストールされた車両アプリケーションの間の競合を制御する方法はないので、これにより問題を引き起こす。本明細書に記載される競合システムは、実行中に、車両アプリケーション開発者または車両製造業者による直接的な監督がなくても車両アプリケーションがインストール可能な、車両のプラグアンドプレイエコシステムのコンポーネントとして、この問題を解決する。
競合は、車両に搭載された車両コンピュータシステムにおいて発生しうる。いくつかの実施形態では、車両は自律走行車両である。米国運輸省道路交通安全局(NHTSA)は、たとえばレベル0、レベル1、レベル2、レベル3、レベル4、およびレベル5など、自律走行車両の異なる「レベル」を定義している。ある車両が他の車両よりも上位のレベルを有する場合(たとえば、レベル2または1よりもレベル3の方が上位レベルである)、上位レベルを有する車両は、下位レベルを有する車両よりも大きな組み合わせおよび数の自律特性を提供する。自律走行車両の異なるレベルについて、以下に簡単に説明する。
レベル0:車両にインストールされたADASシステムのセットは車両制御を有していないが、車両の運転者に警告を発することができる。
レベル1:運転者はいかなる時も車両の制御を取る準備ができていなければならない。車両にインストールされたADASシステムのセットは、以下のうちの1つ以上のような自律特性を提供することができる:アダプティブクルーズコントロール(ACC);および自動操舵を用いる駐車支援および車線維持支援(LKA)タイプII、ただしいずれの組み合わせでもよい。
レベル2:運転者は、道路環境における物体および事象を検出して、車両にインストールされたADASシステムのセットが適切に応答しなかった場合に(運転者の主観的判断に基づいて)、応答しなければならない。車両にインストールされたADASシステムのセットは、加速、制動、および操舵を実行する。車両にインストールされたADASシステムのセットは、運転者によって引き継がれるとただちに停止することができる。
レベル3:既知の限られた環境(高速道路など)の中で、運転者は運転タスクから安全に注意をそらすことができるが、必要なときには依然として車両を制御する準備ができていなければならない。
レベル4:車両にインストールされたADASシステムのセットは、悪天候などのわずかな環境を除く全ての環境において、車両を制御することができる。運転者は、そうするのが安全なときにのみ、(車両にインストールされたADASシステムのセットで構成さ
れた)自動システムを有効化することができる。自動システムが有効化されると、車両が安全に承認基準に準拠して動作するために、運転者の注意が払われる必要はない。
レベル5:目的地の設定およびシステムの起動以外に、人間の介入は必要とされない。自動システムは、運転することが合法な場所であればどこにでも運転でき、独自の判断を下すことができる(車両が位置する司法管轄区域によって異なる)。
いくつかの実施形態では、車両は高度自律走行車両(HAV)である。HAVは、上述の、または2016年9月に公開された「Federal Automated Vehicles Policy: Accelerating the Next Revolution in Roadway Safety」と題される政策文書の9ページでNHTSAが定義した、レベル3以上で動作するADASシステムのセットを含む車両(たとえば、DSRC有効化車両)である。
1つ以上のコンピュータのシステムは、動作中にシステムに作用を行わせるシステムにインストールされたソフトウェア、ファームウェア、ハードウェア、またはこれらの組み合わせを有することで、特定の動作または作用を行うように構成されることが可能である。1つ以上のコンピュータプログラムは、データ処理装置によって実行されたときに装置に作用を行わせる命令を含むことで、特定の動作または作用を行うように構成されることが可能である。
1つの一般的な態様は、
車載コンピュータによって車両アプリケーションが使用可能なときの車両コンテキストと、車両コンテキストが適用される第1セットの時間の間の車両アプリケーションの第1リソース使用状態と、車両コンテキストが適用されない第2セットの時間の間の車両アプリケーションの第2リソース使用状態と、を記述するデジタルデータを含む車両アプリケーションを記憶する非一時的メモリを含むシステムを含む。
この態様の別の実施形態は、各々が方法の作用を実行するように構成された、対応するコンピュータシステム、装置、および1つ以上のコンピュータ記憶装置に記録されたコンピュータプログラムを含む。
1つの一般的な態様は、
車載コンピュータに車両アプリケーションをインストールする要求を受信するステップと、車両アプリケーションがデジタルデータを含まないという判断に応えて要求を拒否するステップであって、デジタルデータが、車載コンピュータによって車両アプリケーションが使用可能なときの車両コンテキストと、車両コンテキストが適用される第1セットの時間の間の車両アプリケーションの第1リソース使用状態と、車両コンテキストが適用されない第2セットの時間の間の車両アプリケーションの第2リソース使用状態と、を記述するステップと、を含む方法を含む。
この態様の別の実施形態は、各々が方法の作用を実行するように構成された、対応するコンピュータシステム、装置、および1つ以上のコンピュータ記憶装置に記録されたコンピュータプログラムを含む。
1つの一般的な態様は、
車載コンピュータに車両アプリケーションをインストールする要求を受け付けるステップと、車両アプリケーションから第1競合テーブルを取得するステップと、車載コンピュータにインストールされた他の車両アプリケーションのための1つ以上の第2競合テーブルを含むテーブルセットと第1競合テーブルをマージするステップと、車両アプリケーションを実行させることで、車両アプリケーションと他の車両アプリケーションのうちの少なくとも1つとの間に競合を引き起こすか否かを識別するためにテーブルセットを分析す
るステップと、競合が識別されないことに基づいて車両アプリケーションを実行させると決定するステップと、を含む方法を含む。
この態様の別の実施形態は、各々が方法の作用を実行するように構成された、対応するコンピュータシステム、装置、および1つ以上のコンピュータ記憶装置に記録されたコンピュータプログラムを含む。
実施例は、以下の特性のうちの1つ以上を含みうる。
第1競合テーブルが、車載コンピュータによって車両アプリケーションが使用可能なときの車両コンテキスト、車両コンテキストが適用される第1セットの時間の間の車両アプリケーションの第1リソース使用状態、および車両コンテキストが適用されない第2セットの時間の間の車両アプリケーションの第2リソース使用状態を記述するデジタルデータを含む、方法。
車両が自律走行車両である方法。
車両が高度自律走行車両である方法。
車両アプリケーションが先進運転支援システムである方法。
車載コンピュータが電子制御ユニットである方法。
記載される技術の実施例は、ハードウェア、方法またはプロセス、またはコンピュータアクセス可能媒体上のコンピュータソフトウェアを含みうる。
1つの一般的な態様は、車載コンピュータによって実行された場合に、
車載コンピュータに車両アプリケーションをインストールする要求を受け付けるステップと、車両アプリケーションから第1競合テーブルを取得するステップと、車載コンピュータにインストールされた他の車両アプリケーションのための1つ以上の第2競合テーブルを含むテーブルセットと第1競合テーブルをマージするステップと、車両アプリケーションを実行させることで、車両アプリケーションと他の車両アプリケーションのうちの少なくとも1つとの間に競合を引き起こすか否かを識別するためにテーブルセットを分析するステップと、競合が識別されないことに基づいて車両アプリケーションを実行させると決定するステップと、を含むステップを車載コンピュータに実行させるようになっているコンピュータコードを記憶する車両の非一時的メモリを含むコンピュータプログラム製品を含む。
この態様の別の実施形態は、各々が方法の作用を実行するように構成された、対応するコンピュータシステム、装置、および1つ以上のコンピュータ記憶装置に記録されたコンピュータプログラムを含む。
実施例は、以下の特性のうちの1つ以上を含みうる。
第1競合テーブルが、車載コンピュータによって車両アプリケーションが使用可能なときの車両コンテキスト、車両コンテキストが適用される第1セットの時間の間の車両アプリケーションの第1リソース使用状態、および車両コンテキストが適用されない第2セットの時間の間の車両アプリケーションの第2リソース使用状態を記述するデジタルデータを含む、コンピュータプログラム製品。
車両が自律走行車両であるコンピュータプログラム製品。
車両が高度自律走行車両であるコンピュータプログラム製品。
車両アプリケーションが先進運転支援システムであるコンピュータプログラム製品。
車載コンピュータが電子制御ユニットであるコンピュータプログラム製品。
記載される技術の実施例は、ハードウェア、方法またはプロセス、またはコンピュータアクセス可能媒体上のコンピュータソフトウェアを含みうる。
1つの一般的な態様は、プロセッサによって実行された場合に、
車載コンピュータに車両アプリケーションをインストールする要求を受け付けるステップと、車両アプリケーションから第1競合テーブルを取得するステップと、車載コンピュ
ータにインストールされた他の車両アプリケーションのための1つ以上の第2競合テーブルを含むテーブルセットと第1競合テーブルをマージするステップと、車両アプリケーションを実行させることで、車両アプリケーションと他の車両アプリケーションのうちの少なくとも1つとの間に競合を引き起こすか否かを識別するためにテーブルセットを分析するステップと、競合が識別されないことに基づいて車両アプリケーションを実行させると決定するステップと、を含むステップをプロセッサに実行させるようになっているコンピュータ実行可能コードを記憶する非一時的メモリと通信可能に結合されたプロセッサを含む車両のシステムを含む。
この態様の別の実施形態は、各々が方法の作用を実行するように構成された、対応するコンピュータシステム、装置、および1つ以上のコンピュータ記憶装置に記録されたコンピュータプログラムを含む。
実施例は、以下の特性のうちの1つ以上を含みうる。
第1競合テーブルが、車載コンピュータによって車両アプリケーションが使用可能なときの車両コンテキスト、車両コンテキストが適用される第1セットの時間の間の車両アプリケーションの第1リソース使用状態、および車両コンテキストが適用されない第2セットの時間の間の車両アプリケーションの第2リソース使用状態を記述するデジタルデータを含む、システム。
車両が自律走行車両であるシステム。
車両が高度自律走行車両であるシステム。
車両アプリケーションが先進運転支援システムであるシステム。
車載コンピュータが電子制御ユニットであるシステム。
記載される技術の実施例は、ハードウェア、方法またはプロセス、またはコンピュータアクセス可能媒体上のコンピュータソフトウェアを含みうる。
本発明の一態様にかかる方法は、
複数の車両リソースを有する車両に搭載され、車両アプリケーションを実行可能な車載コンピュータによって実行される方法であって、第一の車両アプリケーションが前記車載コンピュータにインストールされる際に、前記第一の車両アプリケーションに付帯している、前記第一の車両アプリケーションが利用する前記車両リソースに関する情報を含む競合テーブルを取得し記憶する導入ステップと、前記第一の車両アプリケーションに付帯している前記競合テーブルと、前記車載コンピュータに既にインストールされている第二の車両アプリケーションに付帯している競合テーブルと、に基づいて、前記車両リソースに対する競合が発生するか否かを判定する判定ステップと、を含む。
また、本発明の別態様にかかる方法は、
複数の車両リソースを有する車両に搭載され、車両アプリケーションを実行可能な車載コンピュータによって実行される方法であって、前記車載コンピュータへのインストールが要求された第一の車両アプリケーションに、前記第一の車両アプリケーションが利用する前記車両リソースに関する情報を含む競合テーブルが付帯しているか否かを判定するステップと、前記第一の車両アプリケーションに前記競合テーブルが付帯している場合に前記第一の車両アプリケーションのインストールを許可し、前記第一の車両アプリケーションに前記競合テーブルが付帯していない場合に前記第一の車両アプリケーションのインストールを拒否するステップと、を含む。
また、本発明にかかるデータ構造は、
車載コンピュータにインストール可能であり、車両が有する複数の車両リソースを利用する車両アプリケーションに付帯する付帯データのデータ構造であって、前記車両アプリケーションが前記車両リソースを使用する必要条件を表す第一のデータと、前記第一のデータが示す条件下において、前記車両アプリケーションが使用する前記車両リソースを識
別する第二のデータと、を含み、前記第二のデータは、前記車載コンピュータによって、前記第一のデータが示す条件下において、複数の前記車両アプリケーションが同時に同一の車両リソースを使用しうるか否かを判定する処理に用いられることを特徴とする。
また、本発明の一態様にかかる車両システムは、
複数の車両リソースを有する車両に搭載され、車両アプリケーションを実行可能な車載コンピュータを含む車両システムであって、第一の車両アプリケーションが前記車載コンピュータにインストールされる際に、前記第一の車両アプリケーションに付帯している、前記第一の車両アプリケーションが利用する前記車両リソースに関する情報を含む競合テーブルを取得し記憶する導入手段と、前記第一の車両アプリケーションに付帯している前記競合テーブルと、前記車載コンピュータに既にインストールされている第二の車両アプリケーションに付帯している競合テーブルと、に基づいて、前記車両リソースに対する競合が発生するか否かを判定する判定手段と、を有する。
また、本発明の別態様にかかる車両システムは、
複数の車両リソースを有する車両に搭載され、車両アプリケーションを実行可能な車載コンピュータを含む車両システムであって、前記車載コンピュータへのインストールが要求された第一の車両アプリケーションに、前記第一の車両アプリケーションが利用する前記車両リソースに関する情報を含む競合テーブルが付帯しているか否かを判定する手段と、前記第一の車両アプリケーションに前記競合テーブルが付帯している場合に前記第一の車両アプリケーションのインストールを許可し、前記第一の車両アプリケーションに前記競合テーブルが付帯していない場合に前記第一の車両アプリケーションのインストールを拒否する手段と、を有する。
本開示は、添付図面の図において、限定ではなく例示によって示されており、これらの図面では、類似の要素を指すために類似の参照番号が使用されている。
一実施形態による、競合システムおよび競合テーブルを含む第1車両アプリケーションのための動作環境を示すブロック図である。 一実施形態による競合システムを含む例示的なコンピュータシステムを示すブロック図である。 一実施形態による競合テーブルの例を示すブロック図である。 一実施形態による競合テーブルの例を示すブロック図である。 一実施形態による競合テーブルの例を示すブロック図である。 一実施形態による競合テーブルの例を示すブロック図である。 一実施形態によるリソースセットの例を示すブロック図である。 一実施形態によるコンテキストセットの例を示すブロック図である。 一実施形態によるテーブルセットの例を示すブロック図である。 一実施形態によるテーブルセットの例を示すブロック図である。 一実施形態によるテーブルセットの例を示すブロック図である。 一実施形態による、テーブルセットに基づいて2つ以上の車両アプリケーションの間の競合を判断するための例示的な方法を示すブロック図である。 一実施形態による、車両アプリケーションを実行すべきか否かを判断するためのプロセスフローの一例を示すブロック図である。
本明細書で説明されるのは、プラグアンドプレイエコシステムを有する車両の車両アプリケーション間の競合を有益に排除する、競合システムおよび競合プロトコルの実施形態である。
いくつかの実施形態では、「競合プロトコル」とは、どの車両アプリケーション(たとえば、ADASシステム)が車両にインストールされるか、または、別途プラグアンドプレイエコシステムにおいて利用可能となることを許可されるかを記述する、規則のセットである。たとえば、競合プロトコルは、全ての車両アプリケーションがそれらの基礎となるコンピュータコードに競合テーブルを含むことを要求する。競合プロトコルは、競合システムが、車両アプリケーションが競合テーブルを含むか否かを評価できるように、各車両アプリケーションが基礎となるコンピュータコードの中の1つ以上の箇所に競合テーブルを含むことを指定する。
すなわち、本明細書で提唱する競合テーブルを含んでいる車両アプリケーションは、競合プロトコルに準拠していると言える。
いくつかの実施形態では、競合プロトコルは、競合テーブルに対する一連の要件を指定する。たとえば、各車両アプリケーション向けの競合テーブルは、異なるコンテキスト(たとえば、1つ以上の車両速度)の間の競合テーブルを含む特定の車両アプリケーションのリソース使用状態、ならびに全てのコンテキスト(たとえば、ソフトウェアが実行しているときはいつでも)での車両アプリケーションのリソース使用状態を記述することが要求される。リソースの例は、いくつかの実施形態による図7に示されている。競合テーブルの例は、いくつかの実施形態による図3から図6に示されている。
本明細書では、コンテキストないし車両コンテキストとは、車両の状態を指す。
競合システムは、車載コンピュータにインストールされたコードおよびルーチンを含む。いくつかの実施形態では、競合システムのコードおよびルーチンは、車載コンピュータによって実行された場合に、車載コンピュータに以下のステップのうちの1つ以上を実行させるようになっている。
(ステップ1)車両アプリケーションが競合テーブルを含むか否かを判断する(すなわち、車両アプリケーションが競合プロトコルに準拠しているか否かを判断する)ために、車両アプリケーションがインストールされる前にこれらを分析する。
(ステップ2)競合テーブルを含まない任意の車両アプリケーションのインストールを防止する。
(ステップ3)車両アプリケーションが車両にインストールされた際に、各車両アプリケーションの競合テーブルを統合する。
(ステップ4)実行時に、キューに入れられた車両アプリケーションと1つ以上のアクティブな車両アプリケーションとの間に競合があるか否かを判断するために、1つ以上のアクティブな車両アプリケーションおよび動作がアクティブになるためにキューに入れられた車両アプリケーションの競合テーブル(たとえば、車載コンピュータは車両アプリケーションを実行しようとするので)を分析する。ステップ4において競合がない場合には、競合システムはステップ5を実行する。ステップ4において競合がある場合には、競合システムはステップ6を実行する。
ステップ5において、競合システムは、キューに入れられた車両アプリケーションが実行または起動できるようにする。
ステップ6において、競合システムは、キューに入れられた車両アプリケーションを実行することによって発生したはずの競合が回避されるように、キューに入れられた車両アプリケーションが実行するのを防止するように車両のソフトウェアプラットフォームのハードウェアコントローラの動作を制御することによって、競合を緩和する。
これらのステップを実行することで、競合システムは、プラグアンドプレイエコシステムが、リソース競合が発生する前に車両アプリケーションの間のリソース競合を識別してこれらの競合が発生しないように競合を緩和するための対策を講じることができるようにすることによって、車両の性能を有益に向上させる。競合システムはまた、このような競合が車両またはその乗客にとって致命的な問題を引き起こさないことを、有益に保証する
図1を参照すると、いくつかの実施形態による、競合システム199および競合テーブル198を含む第1車両アプリケーション181のための動作環境100を示すブロック図が示されている。図示されるように、動作環境100は、以下の要素、すなわち第1車両アプリケーション181、および車両123を含む。
いくつかの実施形態では、動作環境100は、第2車両アプリケーション182を含む。競合システム199は、プロセッサ125によって実行された場合に、競合プロトコルを実施するようになっているコードおよびルーチンを含む。競合プロトコルは、競合システム199に記憶され、どの車両アプリケーションが車両123にインストールされているか(たとえば、車両123の電子制御ユニット122にインストールされているか)を管理する、規則のセットである。競合プロトコルは、車両123にインストールされたいずれか特定の車両アプリケーションが、コンピュータコードの一部として、そのコンピュータコードが競合テーブルを含む特定の車両アプリケーションに固有の競合テーブル(競合テーブル198など)を含まなければならないことを、要求する。
図1に示されるように、第1車両アプリケーション181は、そのコンピュータコードが競合テーブル198を含む。すなわち、競合プロトコルに準拠している。したがって、第1車両アプリケーション181は、車両123のメモリ127に記憶されているものとして図1に示されている。第2車両アプリケーション182は競合テーブルを記憶していないので、第2車両アプリケーション182は競合プロトコルに準拠していない。したがって、競合システム199は第2車両アプリケーション182を車両123にインストールさせないので、第2車両アプリケーション182はメモリ127にインストールされていない。この例示的な方法では、たとえば、競合テーブルがなければ、車両アプリケーションを実行することで、これらの車両アプリケーションが同時に実行されたときに車両にインストールされた他の車両アプリケーションとの競合が生じるか否かを知りえないので、競合システム199は、競合プロトコルに準拠していない車両アプリケーションが車両123にインストールされていないプラグアンドプレイエコシステムを有効化することによって車両123の性能を向上させる。この説明の残りの部分では、第1車両アプリケーション181は「車両アプリケーション181」と称される。
車両123は、車道ベースの乗り物である。たとえば、車両123は、自動車、トラック、スポーツ用多目的車両、バス、セミトラック、ドローン、またはその他の車道ベースの乗り物のうちの1つである。
いくつかの実施形態では、車両123は自律走行車両である。たとえば、車両123は、レベル1自律走行車両、レベル2自律走行車両、レベル3自律走行車両、レベル4自律走行車両、レベル5自律走行車両のうちの1つである。いくつかの実施形態では、車両123はHAVである。HAVは、そのADASシステムのセットがレベル3以上で動作するのに十分な自律機能を提供する、自律走行車両である。いくつかの実施形態による、車両123用の車載コンピュータの一例が、図2に示されている。
図1に示されるように、車両123は、電子制御ユニット(ECU122)を含む。ECU122は車載コンピュータシステムである。いくつかの実施形態では、図2に示されるコンピュータシステム200は、ECU122の一例である。
図1に示されるように、車両123は、プロセッサ125、通信ユニット145、リソースセット170、ハードウェアコントローラ189、メモリ127を含む。
プロセッサ125は、計算を実行し、ECU122(または図2に示されるコンピュータシステム200)の機能を提供するのに必要な電子信号を供給する、算術論理装置、マイクロプロセッサ、汎用コントローラ、またはその他何らかのプロセッサアレイを含む。プロセッサ125は、データ信号を処理し、復号命令セットコンピュータ(CISC)アーキテクチャ、縮小命令セットコンピュータ(RISC)アーキテクチャ、または命令セットの組み合わせを実現するアーキテクチャを含む様々な計算アーキテクチャを含みうる。ECU122(またはコンピュータシステム200)は、1つ以上のプロセッサ125を含みうる。他のプロセッサ、オペレーティングシステム、センサ、ディスプレイ、および物理的構成もまた可能である。いくつかの実施形態では、1つ以上のプロセッサ125は、ECU122(またはコンピュータシステム200)の車載コンピュータまたは電子制御ユニットの一要素である。
通信ユニット145は、電子メッセージを送受信するようになっている電子通信インターフェースである。いくつかの実施形態では、通信ユニット145は、ECU122との直接的な物理接続のためのポートを含む。たとえば、通信ユニット145は、ECU122との有線通信のための、ユニバーサルシリアルバス(USB)、セキュアデジタル(SD)、CAT−5、または類似のポートを含む。
いくつかの実施形態では、通信ユニット145は、以下のうちの1つ以上を含む、1つ以上の無線通信方法を使用して、ECU122およびその他の通信可能装置とデータを交換するための無線トランシーバを含む。IEEE802.11;IEEE802.16,BLUETOOTH(登録商標);EN ISO14906:2004自動料金収受−アプリケーションインターフェースEN11253:2004専用狭域通信−5.8GHzのマイクロ波を用いる物理層(レビュー);EN12795:2002専用狭域通信(DSRC)−DSRCデータリンク層:媒体アクセスおよび論理リンク制御(レビュー);EN12834:2002専用狭域通信−アプリケーション層(レビュー);EN13372:2004専用狭域通信(DSRC)−RTTTアプリケーション用DSRCプロファイル(レビュー);2014年8月28日出願の「Full−Duplex Coordination System」と題された米国特許出願第14/471,387号明細書に記載される通信方法;およびその他の適切な無線通信方法。
いくつかの実施形態では、通信ユニット145は、米国特許出願第14/471,387号明細書に記載されるような全二重連携システムを含む。
いくつかの実施形態では、通信ユニット145は、ショートメッセージングサービス(SMS)、マルチメディアメッセージングサービス(MMS)、ハイパーテキスト転送プロトコル(HTTP)、直接データ接続、WAP、電子メール、または他の適切なタイプの電子通信を含むセルラー通信ネットワークを通じてデータを送受信するための、セルラー通信トランシーバを含む。いくつかの実施形態では、通信ユニット145は、有線ポートおよび無線トランシーバを含む。通信ユニット145はまた、TCP/IP、HTTP、HTTPS、およびSMTP、ミリ波、DSRCを含む標準的なネットワークプロトコルを使用するファイルまたはメディアオブジェクトの配信のために、1つ以上の無線ネットワーク(たとえば、車内無線ネットワーク)への他の従来の接続を提供する。
いくつかの実施形態では、通信ユニット145は、図12を参照して以下に記載される要求のうちの1つ以上を受信する。いくつかの実施形態では、1つ以上の車両アプリケーションが、通信ユニット145を介して車両123にインストールされる。たとえば、車両アプリケーション181を記述するデジタルデータが通信ユニット145を介して受信され、車両アプリケーション181が競合プロトコルに準拠していれば、競合システム199によってメモリ127にインストールされる。
信号線140は、車両アプリケーション181が競合テーブル198を含み、したがって競合プロトコルに準拠していると競合システム199が判断した場合に、車両アプリケーション181をインストールするために、通信ユニット145によって使用される。
信号線141は、第2車両アプリケーション182が競合プロトコルに準拠しておらず、したがって車両123にインストールされえないと判断するのに十分なデジタルデータを競合システム199に提供するために、通信ユニット145によって使用される。
リソースセット170は、車両機能を提供する1つ以上のリソースのセットである。リソースは、車両123のコンポーネントに有用性を提供する車両用装置である。たとえば、リソースは、車両アプリケーション181に有用性を提供する車両装置である。リソースセット170に含まれる1つ以上のリソースの例は、図7に示されている。リソースセット170に含まれる1つ以上のリソースは、信号線143を介してハードウェアコントローラ189と通信可能に結合されている。
ハードウェアコントローラ189は、どの車両アプリケーション(たとえば、メモリ127に記憶される車両アプリケーション181や他の車両アプリケーション)がリソースセット170に含まれるリソースにアクセスできるかを制御するようになっている、コントローラである。
いくつかの実施形態では、ハードウェアコントローラ189は、ハードウェアコントローラ189の許可を除いて車両123のいずれの車両アプリケーションによってもアクセス可能なリソースセット170のリソースがないように、車両アプリケーションとリソースセット170に含まれる1つ以上のリソースとの間にアーキテクチャ的に位置している。たとえば、車両アプリケーション181は、リソースセット170に含まれるセンサからのセンサデータを必要とするADASシステムであると仮定する。この例では、ADASシステムは、リソースセット170のこの特定のセンサにアクセスするためにハードウェアコントローラ189からの許可を受信しなければ、センサを作動させることもセンサデータを受信することもできない。
いくつかの実施形態では、競合システム199は、リソースの同時使用、または車両123もしくは特定のリソースの仕様を超える特定のリソースの使用によって競合が発生しないように、テーブルセット197に基づいて、ハードウェアコントローラ189の動作を制御する。
メモリ127は、ECU122(またはコンピュータシステム200)などの車両123の車載コンピュータによってアクセスおよび実行されうる命令またはデータを記憶する、非一時的記憶媒体である。命令またはデータは、本明細書に記載される技術を実行するためのコードを含む。メモリ127は、ダイナミックランダムアクセスメモリ(DRAM)装置、スタティックランダムアクセスメモリ(SRAM)装置、フラッシュメモリ、またはその他何らかのメモリ装置である。いくつかの実施形態では、メモリ127はまた、より恒久的に情報を記憶するための、ハードディスクドライブ、フロッピーディスクドライブ、CD−ROM装置、DVD ROM装置、DVD−RAM装置、DVD−RW装置、フラッシュメモリ装置、またはその他何らかの大容量記憶装置を含む不揮発性メモリまたは類似の永久記憶装置および媒体を含む。メモリ127の一部は、バッファまたは仮想ランダムアクセスメモリ(仮想RAM)として使用するために確保される。
図示されるように、メモリ127は、競合システム199、テーブルセット197、キュー188、(各々が固有の競合テーブル198を含むので)競合プロトコルに準拠して
いる1つ以上の車両アプリケーション181を記憶する。
図1では1つの車両アプリケーション181のみがメモリ127に記憶されるものとして示されているが、実際にはメモリ127は、各々が互いに異なる機能を提供する複数の車両アプリケーション181を記憶しうる。たとえば、メモリ127は、各々が互いに異なる機能を提供する、複数の異なるADASシステムを記憶しうる。
競合テーブル198は、異なるコンテキスト(たとえば、1つ以上の車両速度)の間の競合テーブル198を含む特定の車両アプリケーション181のリソース使用状態、ならびに全てのコンテキスト(たとえば、ソフトウェアが実行しているときはいつでも)での車両アプリケーション181のリソース使用状態を記述するデータ構造である。競合テーブルの例は、いくつかの実施形態による図3から図6に示されている。
いくつかの実施形態では、競合テーブル198は、車両アプリケーション181が車両123の車載コンピュータ(たとえば、ECU122)によって使用可能なときの車両コンテキスト(たとえば、車両123の速度)、車両コンテキストが適用されるとき(たとえば、車両123が時速20マイル超の速度で走行しているとき)の第1セットの時間の間の車両アプリケーション181の第1リソース使用状態、車両コンテキストが適用されないとき(たとえば、車両の速度が時速20マイルを超えない時はいつも)の第2セットの時間の間の車両アプリケーション181の第2リソース使用状態、を記述するデータ構造である。
換言すると、競合テーブル198は、車両コンテキストごとに、どの車両アプリケーションがどの車両リソースにアクセスしうるかを記述したテーブルである。すなわち、車両リソースを使用する必要条件と、当該条件下において使用される車両リソースを関連付けたテーブルである。
競合テーブルは、アプリケーションごとに定義されたものであってもよいし、複数のアプリケーションが有する競合テーブルを統合したものであってもよい。
車両アプリケーション181は、プロセッサ125によって実行された場合に、プロセッサ125に車両機能を車両123に提供させるようになっている、コードおよびルーチンを含む。たとえば、車両アプリケーション181は、特定のADAS機能を車両123に提供するADASシステムである。
車両アプリケーション181の例は、以下のADASシステム、すなわち、アダプティブクルーズコントロール(ACC)システム、アダプティブハイビームシステム、アダプティブライトコントロールシステム、自動駐車システム、自動車用ナイトビジョンシステム、死角モニタ、衝突回避システム、横風安定化システム、運転者眠気検出システム、運転者監視システム、緊急時運転者支援システム、前方衝突警告システム、交差点支援システム、インテリジェント速度適応システム、車線逸脱警告システム、歩行者保護システム、道路標識認識システム、右左折支援、および逆走警告システムのうちの1つ以上である。これらの例示的なADASシステムの各々は、本明細書においてそれぞれ「ADAS特性」または「ADAS機能」と称されうる、自身の特性および機能を提供する。これらの例示的なADASシステム180によって提供される特性および機能はまた、本明細書においてそれぞれ「自律特性」または「自律機能」とも称される。
いくつかの実施形態では、車両アプリケーションによって提供される自律特性および自律機能は、レベル1自律走行車両、レベル2自律走行車両、レベル3自律走行車両、レベル4自律走行車両、およびレベル5自律走行車両のうちの1つ以上として車両123を分類するのに十分である。いくつかの実施形態では、車両123はHAVである。HAVは、その車両アプリケーションが、全体として見ると、レベル3以上で動作するのに十分な
自律機能を提供する、自律走行車両である。いくつかの実施形態による、車両123用の車載コンピュータの一例が、図2に示されている。いくつかの実施形態では、図2は車両123のECU122を示す。
ADASシステムはまた、その車両123を自律走行車両または半自律走行車両にする、車両に含まれる任意のソフトウェアまたはハードウェアも含みうる。
いくつかの実施形態では、車両アプリケーション181は、その機能を提供するために、リソースセットに含まれるリソースのうちの1つ以上を使用する。
テーブルセット197は、2つ以上の車両アプリケーション181のための2つ以上の競合テーブル198の組み合わせを記述するデジタルデータである。テーブルセット197の例は、いくつかの実施形態による図9から図11に示されている。
キュー188は、(1)実行されるのを待っている車両アプリケーション181のリスト、および、(2)現在アクティブな(たとえば、現在実行されている)車両アプリケーション181のリスト、を記憶する非一時的メモリの一部である。
競合システム199は、ECU122にインストールされたコードおよびルーチンを含む。いくつかの実施形態では、競合システム199のコードおよびルーチンは、プロセッサ125によって実行された場合に、プロセッサ125に以下のステップのうちの1つ以上を実行させるようになっている。
(ステップ1)競合テーブル198を含むか否かを判断する(すなわち、車両アプリケーション181および182が競合プロトコルに準拠しているか否かを判断する)ために車両アプリケーション181および182が車両123にインストールされる前にこれらを分析する。
(ステップ2)競合テーブル198を含まない任意の車両アプリケーションのインストールを防止する(たとえば、第2車両アプリケーション182は競合テーブル198を含まない)。
(ステップ3)車両アプリケーション181が車両123にインストールされた際に、各車両アプリケーション181の競合テーブル198を統合する。
(ステップ4)実行時に、キューに入れられた車両アプリケーションと1つ以上のアクティブな車両アプリケーションとの間に競合があるか否かを判断するために、1つ以上のアクティブな車両アプリケーションおよび動作がアクティブになるためにキューに入れられた車両アプリケーションの競合テーブル198(たとえば、プロセッサ125は車両アプリケーションを実行しようとするので)を分析する。
ステップ4において競合がない場合には、競合システム199はステップ5を実行する。
ステップ4において競合がある場合には、競合システム199はステップ6を実行する。
ステップ5において、競合システム199は、キューに入れられた車両アプリケーションが実行または起動できるようにする。
ステップ6において、競合システム199は、キューに入れられた車両アプリケーションを実行することによって発生したはずの競合が回避されるように、キューに入れられた車両アプリケーションが実行するのを防止するように車両123のハードウェアコントローラ189の動作を制御することによって、競合を緩和する。
これらのステップを実行することで、競合システム199は、プラグアンドプレイエコシステムが、リソース競合が発生する前に車両アプリケーション181の間のリソース競合を識別してこれらの競合が発生しないように競合を緩和するための対策を講じることができるようにすることによって、車両123の性能を有益に向上させる。競合システム1
99はまた、このような競合が車両123にとって致命的な問題を引き起こさないことを、有益に保証する。
いくつかの実施形態では、競合システム199は、図12に示される方法1200の1つ以上のステップを実行する。
いくつかの実施形態では、競合システム199は、フィールドプログラマブルゲートアレイ(FPGA)または特定用途向け集積回路(「ASIC」)を含むハードウェアを使用して実現される。いくつかの他の実施形態では、競合システム199は、ハードウェアおよびソフトウェアの組み合わせを使用して実現される。競合システム199は、装置の組み合わせ(たとえば、1つ以上のECU122)、または装置のうちの1つに記憶されうる。競合システム199の追加の要素は、いくつかの実施形態による図2に示されている。
ここで図2を参照すると、いくつかの実施形態による競合システムを含む例示的なコンピュータシステム200を示すブロック図が示されている。
いくつかの実施形態では、コンピュータシステム200は、図12を参照して以下に記載される方法1200の1つ以上のステップを実行するようにプログラムされた、専用コンピュータシステムである。
いくつかの実施形態では、コンピュータシステム200は、車両123の車載コンピュータである。たとえば、コンピュータシステム200はECU122である。
いくつかの実施形態では、コンピュータシステム200は、車両123の車載ユニット、ECU、ヘッドユニット、またはその他何らかのプロセッサベースの計算装置である。
コンピュータシステム200は、いくつかの例によれば、以下の要素、すなわち、競合システム199、プロセッサ125、メモリ127、通信ユニット145、およびハードウェアコントローラ189のうちの1つ以上を含む。コンピュータシステム200のこれらのコンポーネントは、バス220によって通信可能に結合されている。
図示される実施形態では、プロセッサ125は信号線238を介してバス220と通信可能に結合されている。メモリ127は、信号線244を介してバス220と通信可能に結合されている。通信ユニット145は、信号線246を介してバス220と通信可能に結合されている。ハードウェアコントローラ189は、信号線239を介してバス220と通信可能に結合されている。
図1を参照して上記で記載されたコンピュータシステム200のこれらの要素、およびその説明は、ここでは繰り返されない。すなわち、競合システム199、プロセッサ125、メモリ127、通信ユニット145、およびハードウェアコントローラ189である。
いくつかの実施形態では、メモリ127は、本明細書に記載されるデータ、情報、またはメッセージのいずれかを記憶する。メモリ127は、その機能を提供するためにコンピュータシステム200にとって必要な任意のデータを記憶しうる。
図2に示される実施形態では、競合システム199は、通信モジュール202および判断モジュール204を含む。
通信モジュール202は、競合システム199とコンピュータシステム200の他のコンポーネントとの間の通信を取り扱うためのルーチンを含むソフトウェアである。いくつかの実施形態では、通信モジュール202は、競合システム199とコンピュータシステム200の他のコンポーネントとの間の通信を取り扱うための以下に記載される機能を提供するためにプロセッサ125によって実行可能な命令セットである。
通信モジュール202は、通信ユニット145を介して、動作環境100の1つ以上の要素との間でデータを送受信する(たとえば、図1参照)。たとえば、通信モジュール202は、通信ユニット145を介して、メモリ127に記憶されるデータ、または本明細書に記載されるメッセージ(たとえば、要求)のいずれかを送受信する。通信モジュール202は、通信ユニット145を介して本明細書に記載されるデータまたはメッセージのいずれかを送受信する。
いくつかの実施形態では、通信モジュール202は、車両アプリケーション181および182が競合テーブルを含むか否かを記述するデジタルデータを含む1つ以上のメッセージを、通信ユニット145から受信する。
いくつかの実施形態では、通信モジュール202は、競合システム199のコンポーネント間の通信を取り扱いうる。
いくつかの実施形態では、通信モジュール202は、コンピュータシステム200のメモリ127に記憶されることが可能であり、プロセッサ125によってアクセスおよび実行可能である。通信モジュール202は、信号線222を介してプロセッサ125およびコンピュータシステム200の他のコンポーネントとの協働および通信に適合する。
判断モジュール204は、図12に示される方法1200の1つ以上のステップを実行するためのルーチンを含むソフトウェアでありうる。いくつかの実施形態では、判断モジュール204は、以下のステップのうちの1つ以上を実行するためのルーチンを含むソフトウェアである。
(ステップ1)競合テーブル198を含むか否かを判断する(すなわち、車両アプリケーション181および182が競合プロトコルに準拠しているか否かを判断する)ために車両アプリケーション181および182が車両123にインストールされる前にこれらを分析する。
(ステップ2)競合テーブル198を含まない任意の車両アプリケーションのインストールを防止する(たとえば、第2車両アプリケーション182は競合テーブル198を含まない)。
(ステップ3)車両アプリケーション181が車両123にインストールされた際に各車両アプリケーション181の競合テーブル198を統合する。
(ステップ4)実行時に、キューに入れられた車両アプリケーションと1つ以上のアクティブな車両アプリケーションとの間に競合があるか否かを判断するために、1つ以上のアクティブな車両アプリケーションおよび動作がアクティブになるためにキューに入れられた車両アプリケーションの競合テーブル198(たとえば、プロセッサ125は車両アプリケーションを実行しようとするので)を分析する。
ステップ4において競合がない場合には、競合システム199はステップ5を実行する。
ステップ4において競合がある場合には、競合システム199はステップ6を実行する。
ステップ5において、競合システム199は、キューに入れられた車両アプリケーションが実行または起動できるようにする。
ステップ6において、競合システム199は、キューに入れられた車両アプリケーショ
ンを実行することによって発生したはずの競合が回避されるように、キューに入れられた車両アプリケーションが実行するのを防止するように車両123のハードウェアコントローラ189の動作を制御することによって、競合を緩和する。
いくつかの実施形態では、判断モジュール204は、コンピュータシステム200のメモリ127に記憶されることが可能であり、プロセッサ125によってアクセスおよび実行可能である。判断モジュール204は、信号線224を介してプロセッサ125およびコンピュータシステム200の他のコンポーネントとの協働および通信に適合する。
図3から図6は、いくつかの実施形態による例示的な競合テーブル399,499,599,699を示すブロック図である。これらの競合テーブル399,499,599,699は、例示によって提供され、限定を意図するものではない。図3から図6に示される概念は、互いを基礎として構築され、図3から図6のこれらの競合テーブル399,499,599,699の組み合わせから形成されるいくつかの実施形態によるテーブルセットの例を実証するために、図9から図11において再び言及される。
ここで図3を参照すると、いくつかの実施形態による第1の例示的車両アプリケーション300に対応する例示的な競合テーブル399を示すブロック図が示されている。いくつかの実施形態では、第1の例示的車両アプリケーション300は、車線維持(LKA)システムの第1の例である。
図3に示される競合テーブル399の右側の列は、「コンテキスト列」と称される。図4から図6は、異なる車両アプリケーション400,500,600の異なる競合テーブル499,599,699を示す。その各々は、図3に示される第1の例示的車両アプリケーション300のものとはわずかに異なるコンテキスト列を有する。これは、異なる例示的車両アプリケーション300,400,500,600のリソース使用状態が、異なる車両コンテキストでは異なる関連の仕方をするからである。たとえば、ある車両アプリケーションのリソース使用状態は車両の速度に基づいてのみ関連し、その一方で異なる車両アプリケーションのリソース使用状態は、車両の速度および車両のウインカーの1つが使用中か否かに基づいて関連する。また、リソース使用状態が車両の速度によって影響を受ける車両アプリケーションのうち、第1車両アプリケーションは、そのリソース使用状態が第1の速度閾値(たとえば、時速20マイル以上)によって関連付けられ、その一方で異なる車両アプリケーションは、そのリソース使用状態が第2の速度閾値(たとえば、時速15マイル未満)によって関連付けられる。
図3では、1つの車両コンテキストのみ、すなわち車両の速度および速度が時速20マイルを超えるか否かが、第1の例示的車両アプリケーションの動作に関係する。
図示される実施形態では、競合テーブル399は、車両コンテキスト301を記述するセルを含む。ここで、車両コンテキスト301は、「車両の速度が時速20マイルを超えるか否か」である。
図示される実施形態では、競合テーブル399は、車両が時速20マイル超の速度で走行しているときに関連する第1リソース使用状態302のセットを記述する列を含む。具体的には、車両が時速20マイル超の速度で走行しているとき、第1の例示的車両アプリケーション300は、以下のリソース要件を有する。
・エンジンの使用(たとえば、エンジンの制御)が第1の例示的車両アプリケーション300によって必要とされない
・ステアリングハードウェアの使用が必要とされる
・車両の電子ディスプレイへの独占的なアクセスが必要とされない(たとえば、情報娯楽
システムなどの他の車両アプリケーションがディスプレイにアクセスすることが許容されるので、アクセスは「切り替え可能」である)
・通信ユニット145の送信機へのアクセスが必要とされない
・通信ユニット145の受信機へのアクセスが必要とされない
・30ミリ秒サイクルあたり10ミリ秒の頻度で車両のプロセッサへのアクセスが必要とされる
・1メガバイトのRAMへのアクセスが必要とされる。
競合テーブル399は、車両が時速20マイル以下の速度で走行しているときに常に適用される第2リソース使用状態303のセットを列挙する列を含む。具体的には、車両が時速20マイル以下の速度で走行しているとき、第1の例示的車両アプリケーション300は、以下のリソース要件を有する。
・エンジンの使用(たとえば、エンジンの制御)が第1の例示的車両アプリケーション300によって必要とされない
・ステアリングハードウェアの使用が必要とされない
・車両の電子ディスプレイの使用が必要とされない
・通信ユニット145の送信機へのアクセスが必要とされない
・通信ユニット145の受信機へのアクセスが必要とされない
・30ミリ秒サイクルあたり0.1ミリ秒の頻度で車両のプロセッサへのアクセスが必要とされる
・10キロバイトのRAMへのアクセスが必要とされる。
図3から図6および図9から図11は、異なる車両アプリケーション向けのコンテキストテーブルを示す。これらのコンテキストテーブルの各々は、左側に様々なリソースを列挙する列を含む。これらのコンテキストテーブルの各々のリソースのリストに含まれるのは、ディスプレイである。ディスプレイは、図3から図6および図9から図11に示されるコンテキストテーブルの各々に、自身の行を含む。この「ディスプレイ」行の用語および記号について、ここで説明する。「○」は、車両アプリケーションがその機能を提供するためにディスプレイの使用を必要とすることを意味する。「×」は、車両アプリケーションがその機能を提供するためにディスプレイの使用を必要としないことを意味する。「切り替え可能」は、車両アプリケーションがその機能を提供するためにディスプレイを使用するが、他の車両アプリケーション(たとえば、情報娯楽システム)もまたディスプレイを使用できることを意味する。「独占的」は、車両アプリケーションがその機能を提供するためにディスプレイの独占的な使用を必要とすることを意味する。
記号「○」および「×」は、ディスプレイのみならず、他のリソース(本明細書では「ハードウェア」と称されることもある)についての意味も有する。たとえば、「○」は、車両アプリケーションがその機能を提供するためにリソース/ハードウェアを必要とすることを意味し、「×」は、車両アプリケーションがその機能を提供するためにリソース/ハードウェアを必要としないことを意味する。
ここで図4を参照すると、いくつかの実施形態による第2の例示的車両アプリケーション400に対応する例示的な競合テーブル499を示すブロック図が示されている。いくつかの実施形態では、第2の例示的車両アプリケーション400はLKAシステムの第2の例であり、その一方で図3の第1の例示的車両アプリケーション300はLKAシステムの第1の例である。
図4は、複数の車両コンテキストが第2の例示的車両アプリケーション400の動作に関連することを示すことによって、図3の概念を基礎としている。
(1)車両の速度が時速20マイルを超えているか否か
(2)車両のウインカーがオンかオフか。
たとえば、第2の例示的車両アプリケーション400はLKAシステムの第2の例であり、ウインカーがオンである場合には、車両の運転者は2つの車線を分けるラインを横切ろうとしており、これはLKAシステムの動作に関連する。
図示される実施形態では、競合テーブル499は、車両コンテキスト401、すなわち車両の速度が時速20マイルを超えているか否かおよび車両のウインカーがオンかオフかを記述するセルを含む。
図示される実施形態では、競合テーブル499は、車両が時速20マイル超の速度で走行しておりウインカーがオフであるときに関連する、第1リソース使用状態402のセットを記述する列を含む。
具体的には、車両が時速20マイル超の速度で走行しておりウインカーがオフであるとき、第2の例示的車両アプリケーション400は、以下のリソース要件を有する。
・エンジンの使用(たとえば、エンジンの制御)が第2の例示的車両アプリケーション400によって必要とされない
・ステアリングハードウェアの使用が必要とされる
・車両の電子ディスプレイへの独占的なアクセスが必要とされない(たとえば、他の車両アプリケーションがディスプレイにアクセスすることが許容されるので、アクセスは「切り替え可能」である)
・通信ユニット145の送信機へのアクセスが必要とされない
・通信ユニット145の受信機へのアクセスが必要とされない
・30ミリ秒サイクルあたり10ミリ秒の頻度で車両のプロセッサへのアクセスが必要とされる
・1メガバイトのRAMへのアクセスが必要とされる。
競合テーブル499は、以下のうちのいずれかが真であるときに常に適用される第2リソース使用状態403のセットを列挙する列を含む。
・車両が時速20マイル以下で走行している
・車両のウインカーがオンである
具体的には、これらのうちのいずれかが真であるとき、第2の例示的車両アプリケーション400は、以下のリソース要件を有する。
・エンジンの使用(たとえば、エンジンの制御)が第2の例示的車両アプリケーション400によって必要とされない
・ステアリングハードウェアの使用が必要とされない
・車両の電子ディスプレイの使用が必要とされない
・通信ユニット145の送信機へのアクセスが必要とされない
・通信ユニット145の受信機へのアクセスが必要とされない
・30ミリ秒サイクルあたり0.1ミリ秒の頻度で車両のプロセッサへのアクセスが必要とされる
・10キロバイトのRAMへのアクセスが必要とされる。
ここで図5を参照すると、いくつかの実施形態による第3の例示的車両アプリケーション500に対応する例示的な競合テーブル599を示すブロック図が示されている。いくつかの実施形態では、第3の例示的車両アプリケーション500は駐車支援システムである。
図示される実施形態では、競合テーブル599は、車両コンテキスト501、すなわち車両の速度が時速15マイル未満であるか否かを記述するセルを含む。競合テーブル599は、車両が時速15マイル未満の速度で走行しているときに関連する第1リソース使用
状態502のセットを記述する列を含む。競合テーブル599はまた、車両が時速15マイル以上の速度で走行しているときに常に適用される第2リソース使用状態503のセットを列挙する列を含む。車両が時速15マイル以上で走行しているとき、第3の例示的車両アプリケーション500は、図5に示される中でもとりわけ、車両の電子ディスプレイへの独占的なアクセスを必要とする(たとえば、車両の運転手は、車両を駐車しているときに、車両の経路上の物体、ならびに第3の例示的車両アプリケーション500によって提供される視覚的通知を見る必要があるので、安全の理由のため)。
ここで図6を参照すると、いくつかの実施形態による第4の例示的車両アプリケーション600に対応する例示的な競合テーブル699を示すブロック図が示されている。いくつかの実施形態では、第4の例示的車両アプリケーション600は車線変更システムである。
図示される実施形態では、競合テーブル699は、車両コンテキスト601、すなわち車両の速度が時速20マイルを超えているか否かおよび車両のウインカーがオンかオフかを記述するセルを含む。
図示される実施形態では、競合テーブル699は、車両が時速20マイル超の速度で走行しておりウインカーがオンであるときに関連する、第1リソース使用状態602のセットを記述する列を含む。競合テーブル699はまた、以下のうちのいずれかが真であるときに常に適用される第2リソース使用状態603のセットを列挙する列を含む。
・車両が時速20マイル以下で走行している
・車両のウインカーがオフである
ここで図7を参照すると、いくつかの実施形態による例示的なリソース700のセットを示すブロック図が示されている。いくつかの実施形態では、リソース700のうちの1つ以上がリソースセット170に含まれている。
ここで図8を参照すると、いくつかの実施形態による例示的なコンテキスト800のセットを示すブロック図が示されている。いくつかの実施形態では、コンテキスト800のうちの1つ以上は、競合テーブル198のコンテキスト列によって考慮されるコンテキストでありうる。
図9を参照すると、第1の例示的車両アプリケーション300向けの競合テーブル399および第3の例示的車両アプリケーション500向けの競合テーブル599を含む、例示的なテーブルセット900を示すブロック図が示されている。テーブルセット900は、競合が発生しないので、第1の例示的車両アプリケーション300および第3の例示的車両アプリケーション500が同時に実行できることを示している。
図10を参照すると、第1の例示的車両アプリケーション300向けの競合テーブル399および第4の例示的車両アプリケーション600向けの競合テーブル699を含む、例示的なテーブルセット1000を示すブロック図が示されている。テーブルセット1000は、競合が発生するので、第1の例示的車両アプリケーション300および第4の例示的車両アプリケーション600が同時に実行すべきではないことを示している。具体的には、(1)車両が時速20マイル超の速度で走行しているとき、および、(2)ウインカーがオンであるときに、第1の例示的車両アプリケーション300および第4の例示的車両アプリケーション600の両方が、ステアリングハードウェアへのアクセス、またはこれの制御を必要とする。これは、第1の例示的車両アプリケーション300と第4の例示的車両アプリケーション600との間の競合の一例である。
図11を参照すると、第2の例示的車両アプリケーション400向けの競合テーブル499および第4の例示的車両アプリケーション600向けの競合テーブル699を含む、例示的なテーブルセット1100を示すブロック図が示されている。テーブルセット1100は、競合が発生しないので、第2の例示的車両アプリケーション400および第4の例示的車両アプリケーション600が同時に実行しうることを示している。
ここで図12を参照すると、いくつかの実施形態による、テーブルセットに基づいて2つ以上の車両アプリケーションの間の競合を判断するための例示的な方法1200の例示的なフロー図が示されている。
ステップ1201において、車両アプリケーションをインストールする要求を受信する。
ステップ1202において、競合プロトコルに準拠する競合テーブルが車両アプリケーション内に存在するか否かについて判断がなされる。競合テーブルが存在しない場合には、要求はステップ1204において拒否される。競合テーブルが存在する場合には、方法1200はステップ1203に進む。
ステップ1203において、車両アプリケーションのインストール要求が受け付けられる。
ステップ1205において、車両アプリケーション向けの競合テーブルが取得され、非一時的メモリに記憶される。
ステップ1207において、競合テーブルは、少なくとも1つのテーブルセットを形成するために、1つ以上の他の競合テーブルとマージされる。
ステップ1209において、車両アプリケーションを実行する要求が受信される。車両アプリケーションは、キューに入れられたアプリケーションである。
ステップ1211において、車両アプリケーションと、既にアクティブになっている1つ以上の他の車両アプリケーションとの間に競合が存在するか否かについて判断がなされる。競合が存在しない場合には、車両アプリケーションはステップ1213において実行され、その機能を提供するために必要とするリソースへのアクセスが許可される。競合が存在する場合には、方法1200をステップ1212に進めることによって競合が緩和される。
ステップ1212において、車両アプリケーションは実行されないか、または車両アプリケーションは実行するが、その機能を提供するために必要とするリソースへのアクセスは許可されない。
ここで図13を参照すると、いくつかの実施形態による第1の例示的車両アプリケーション300を実行すべきか否かを判断するためのプロセスフロー1300の一例を示すブロック図が示されている。第1の例示的車両アプリケーションは、まだ実行していないがその実行が要求されている車両アプリケーションを含む、キューに入れられたアプリケーションセット1301に追加される。競合システム199は、競合テーブル399,499,599,699を含むテーブルセットを生成し、このテーブルセットに基づいて、第1の例示的車両アプリケーションが実行したアプリケーションセット1302に追加されることになる第1の例示的車両アプリケーション300を実行させるか否かを判断する。
以上の説明では、本発明を十分に理解できるように、多くの詳細について説明した。しかしながら、各実施形態はこれらの具体的な詳細無しでも実施できることは当業者にとって明らかであろう。また、説明が不明瞭になることを避けるために、構造や装置をブロック図の形式で表すこともある。たとえば、一実施形態は、ユーザインタフェースおよび特定のハードウェアとともに説明される。しかし、本実施形態は、データおよびコマンドを受信する任意のタイプのコンピュータシステム、および、サービスを提供する任意の周辺機器について適用できる。
本明細書における「一実施形態」または「ある実施形態」等という用語は、その実施形態と関連づけて説明される特定の特徴・構造・性質が、少なくとも一つの実施形態に含まれることを意味する。「一実施形態における」等という用語は本明細書内で複数用いられるが、これらは必ずしも同一の実施形態を示すものとは限らない。
以上の詳細な説明の一部は、コンピュータ可読記憶媒体に記憶されたデータビットに対する動作のアルゴリズムおよび記号的表現として提供される。これらのアルゴリズム的な説明および表現は、データ処理技術分野の当業者によって、他の当業者に対して自らの成果の本質を最も効果的に説明するために用いられるものである。なお、本明細書において(また一般に)アルゴリズムとは、所望の結果を得るための論理的な手順を意味する。処理のステップは、物理量を物理的に操作するものである。必ずしも必須ではないが、通常は、これらの量は記憶・伝送・結合・比較およびその他の処理が可能な電気的または磁気的信号の形式を取る。通例にしたがって、これらの信号をビット・値・要素・エレメント・シンボル・キャラクタ・項・数値などとして称することが簡便である。
なお、これらの用語および類似する用語はいずれも、適切な物理量と関連付いているものであり、これら物理量に対する簡易的なラベルに過ぎないということに留意する必要がある。以下の説明から明らかなように、特に断らない限りは、本明細書において「処理」「計算」「コンピュータ計算(処理)」「判断」「表示」等の用語を用いた説明は、コンピュータシステムや類似の電子的計算装置の動作および処理であって、コンピュータシステムのレジスタやメモリ内の物理的(電子的)量を、他のメモリやレジスタまたは同様の情報ストレージや通信装置、表示装置内の物理量として表される他のデータへ操作および変形する動作および処理を意味する。
本発明は、本明細書で説明される動作を実行する装置にも関する。この装置は要求される目的のために特別に製造されるものであっても良いし、汎用コンピュータを用いて構成しコンピュータ内に格納されるプログラムによって選択的に実行されたり再構成されたりするものであっても良い。このようなコンピュータプログラムは、コンピュータのシステムバスに接続可能な、例えばフロッピー(登録商標)ディスク・光ディスク・CD−ROM・磁気ディスクなど任意のタイプのディスク、読み込み専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、EPROM、EEPROM、磁気または光学式カード、USBキーを含む不揮発性フラッシュメモリ、電子的命令を格納するために適した任意のタイプの媒体などの、非一時的なコンピュータ可読記憶媒体に記憶される。
発明の具体的な実施形態は、完全にハードウェアによって実現されるものでも良いし、完全にソフトウェアによって実現されるものでも良いし、ハードウェアとソフトウェアの両方によって実現されるものでも良い。好ましい実施形態は、ソフトウェアによって実現される。ここでソフトウェアとは、ファームウェア、常駐ソフトウェア、マイクロコードやその他のソフトウェアを含むものである。
さらに、ある実施形態は、コンピュータが利用あるいは読み込み可能な記憶媒体からアクセス可能なコンピュータプログラムプロダクトの形態を取る。この記憶媒体は、コンピ
ュータや任意の命令実行システムによってあるいはそれらと共に利用されるプログラムコードを提供する。コンピュータが利用あるいは読み込み可能な記憶媒体とは、命令実行システムや装置によってあるいはそれらと共に利用されるプログラムを、保持、格納、通信、伝搬および転送可能な任意の装置を指す。
プログラムコードを格納・実行するために適したデータ処理システムは、システムバスを介して記憶素子に直接または間接的に接続された少なくとも1つのプロセッサを有する。記憶素子は、プログラムコードの実際の実行に際して使われるローカルメモリや、大容量記憶装置や、実行中に大容量記憶装置からデータを取得する回数を減らすためにいくつかのプログラムコードを一時的に記憶するキャッシュメモリなどを含む。
入力/出力(I/O)装置は、例えばキーボード、ディスプレイ、ポインティング装置などであるが、これらはI/Oコントローラを介して直接あるいは間接的にシステムに接続される。
データ処理システムが、介在するプライベートネットワークおよび/またはパブリックネットワークを介して、他のデータ処理システム、ストレージデバイス、リモートプリンタなどに結合されるようになることを可能にするために、ネットワークアダプタもシステムに結合されうる。ワイヤレス(たとえば、Wi−Fi(登録商標))トランシーバ、イーサネット(登録商標)アダプタ、およびモデムは、ネットワークアダプタのほんの数例に過ぎない。
最後に、本明細書において提示されるアルゴリズムおよび表示は特定のコンピュータや他の装置と本来的に関連するものではない。本明細書における説明にしたがったプログラムを有する種々の汎用システムを用いることができるし、また要求された処理ステップを実行するための特定用途の装置を製作することが適した場合もある。これら種々のシステムに要求される構成は、以上の説明において明らかにされる。さらに、本発明は、特定のプログラミング言語と関連づけられるものではない。本明細書で説明される本発明の内容を実装するために種々のプログラミング言語を利用できることは明らかであろう。
実施形態の前述の説明は、例示と説明を目的として行われたものである。したがって、開示された実施形態が本発明の全てではないし、本発明を上記の実施形態に限定するものでもない。本発明は、上記の開示にしたがって、種々の変形が可能である。本発明の範囲は上述の実施形態に限定解釈されるべきではなく、特許請求の範囲にしたがって解釈されるべきである。本発明の技術に詳しい者であれば、本発明はその思想や本質的特徴から離れることなくその他の種々の形態で実現できることを理解できるであろう。同様に、モジュール・処理・特徴・属性・方法およびその他の本発明の態様に関する名前付けや分割方法は必須なものでものないし重要でもない。また、本発明やその特徴を実装する機構は異なる名前や分割方法や構成を備えていても構わない。
さらに、モジュール・処理・特徴・属性・方法およびその他の本発明の態様は、ソフトウェア、ハードウェア、ファームウェアもしくはこれらの組合せとして実装できる。また、本発明をソフトウェアとして実装する場合には、モジュールなどの各要素は、どのような様式で実装されても良い。例えば、スタンドアローンのプログラム、大きなプログラムの一部、異なる複数のプログラム、静的あるいは動的なリンクライブラリー、カーネルローダブルモジュール、デバイスドライバー、その他コンピュータプログラミングの当業者にとって既知な方式として実装することができる。さらに、本発明の実装は特定のプログラミング言語に限定されるものではないし、特定のオペレーティングシステムや環境に限定されるものでもない。以上のように、上記の本発明の説明は限定的なものではなく例示的なものであり、本発明の範囲は添付の特許請求の範囲にしたがって定められる。
100 動作環境
122 ECU
123 車両
125 プロセッサ
127 メモリ
145 通信ユニット
170 リソースセット
180 ADASシステム
181 第1車両アプリケーション
182 第2車両アプリケーション
188 キュー
189 ハードウェアコントローラ
197 テーブルセット
198 競合テーブル
199 競合システム

Claims (10)

  1. 複数の車両リソースを有する車両に搭載され、車両アプリケーションを実行可能な車載コンピュータによって実行される方法であって、
    第一の車両アプリケーションが前記車載コンピュータにインストールされる際に、前記第一の車両アプリケーションに付帯している、前記第一の車両アプリケーションが利用する前記車両リソースに関する情報を含む競合テーブルを取得し記憶する導入ステップと、
    前記第一の車両アプリケーションに付帯している前記競合テーブルと、前記車載コンピュータに既にインストールされている第二の車両アプリケーションに付帯している競合テーブルと、に基づいて、前記車両リソースに対する競合が発生するか否かを判定する判定ステップと、
    を含む、方法。
  2. 前記競合テーブルは、
    前記車両アプリケーションが前記車両リソースを使用する必要条件を表す第一のデータと、
    前記第一のデータが示す条件下において、前記車両アプリケーションが使用する前記車両リソースを識別する第二のデータと、を含む、
    請求項1に記載の方法。
  3. 前記判定ステップにおいて、
    前記車両が前記第一のデータによって示された特定の条件下にある場合に前記競合が発生すると判定した場合に、前記第一および第二の車両アプリケーションの実行を禁止し、
    いずれの条件下においても前記競合が発生しないと判定した場合に、前記第一および第二の車両アプリケーションの実行を許可する、
    請求項2に記載の方法。
  4. 前記判定ステップにおいて、前記車両が前記第一のデータによって示された特定の条件下にある場合に前記競合が発生すると判定した場合に、当該条件下において、前記第一および第二の車両アプリケーションによる前記車両リソースの利用を制限する、
    請求項2に記載の方法。
  5. 前記導入ステップでは、前記第一の車両アプリケーションに前記競合テーブルが付帯しているか否かを判定し、前記第一の車両アプリケーションに前記競合テーブルが付帯している場合に前記第一の車両アプリケーションのインストールを許可し、前記第一の車両アプリケーションに前記競合テーブルが付帯していない場合に前記第一の車両アプリケーションのインストールを拒否する、
    請求項1から4のいずれかに記載の方法。
  6. 複数の車両リソースを有する車両に搭載され、車両アプリケーションを実行可能な車載コンピュータによって実行される方法であって、
    前記車載コンピュータへのインストールが要求された第一の車両アプリケーションに、前記第一の車両アプリケーションが利用する前記車両リソースに関する情報を含む競合テーブルが付帯しているか否かを判定するステップと、
    前記第一の車両アプリケーションに前記競合テーブルが付帯している場合に前記第一の車両アプリケーションのインストールを許可し、前記第一の車両アプリケーションに前記競合テーブルが付帯していない場合に前記第一の車両アプリケーションのインストールを拒否するステップと、
    を含む、方法。
  7. 前記競合テーブルは、
    前記車両アプリケーションが前記車両リソースを使用する必要条件を表す第一のデータと、
    前記第一のデータが示す条件下において、前記車両アプリケーションが使用する前記車両リソースを識別する第二のデータと、を含む、
    請求項6に記載の方法。
  8. 車載コンピュータにインストール可能であり、車両が有する複数の車両リソースを利用する車両アプリケーションに付帯する付帯データのデータ構造であって、
    前記車両アプリケーションが前記車両リソースを使用する必要条件を表す第一のデータと、
    前記第一のデータが示す条件下において、前記車両アプリケーションが使用する前記車両リソースを識別する第二のデータと、
    を含み、
    前記第二のデータは、前記車載コンピュータによって、前記第一のデータが示す条件下において、複数の前記車両アプリケーションが同時に同一の車両リソースを使用しうるか否かを判定する処理に用いられる、
    データ構造。
  9. 複数の車両リソースを有する車両に搭載され、車両アプリケーションを実行可能な車載コンピュータを含む車両システムであって、
    第一の車両アプリケーションが前記車載コンピュータにインストールされる際に、前記第一の車両アプリケーションに付帯している、前記第一の車両アプリケーションが利用する前記車両リソースに関する情報を含む競合テーブルを取得し記憶する導入手段と、
    前記第一の車両アプリケーションに付帯している前記競合テーブルと、前記車載コンピュータに既にインストールされている第二の車両アプリケーションに付帯している競合テーブルと、に基づいて、前記車両リソースに対する競合が発生するか否かを判定する判定手段と、
    を有する、車両システム。
  10. 複数の車両リソースを有する車両に搭載され、車両アプリケーションを実行可能な車載コンピュータを含む車両システムであって、
    前記車載コンピュータへのインストールが要求された第一の車両アプリケーションに、前記第一の車両アプリケーションが利用する前記車両リソースに関する情報を含む競合テーブルが付帯しているか否かを判定する手段と、
    前記第一の車両アプリケーションに前記競合テーブルが付帯している場合に前記第一の車両アプリケーションのインストールを許可し、前記第一の車両アプリケーションに前記競合テーブルが付帯していない場合に前記第一の車両アプリケーションのインストールを拒否する手段と、
    を有する、車両システム。
JP2019048594A 2018-03-19 2019-03-15 車両アプリケーションによるリソース競合を判定する方法 Active JP6809551B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/925,202 2018-03-19
US15/925,202 US10705817B2 (en) 2018-03-19 2018-03-19 Conflict determination and mitigation for vehicular applications

Publications (2)

Publication Number Publication Date
JP2019164791A true JP2019164791A (ja) 2019-09-26
JP6809551B2 JP6809551B2 (ja) 2021-01-06

Family

ID=67774717

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019048594A Active JP6809551B2 (ja) 2018-03-19 2019-03-15 車両アプリケーションによるリソース競合を判定する方法

Country Status (3)

Country Link
US (1) US10705817B2 (ja)
JP (1) JP6809551B2 (ja)
DE (1) DE102019106795A1 (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005182784A (ja) * 2003-12-16 2005-07-07 Microsoft Corp インストールするのに有効な依存ソフトウェア更新の最大の群の判定
WO2006059786A1 (ja) * 2004-12-01 2006-06-08 Nec Corporation アプリケーション競合管理システム及びその方法並びにそれを用いた情報処理端末
WO2007020735A1 (ja) * 2005-08-18 2007-02-22 Matsushita Electric Industrial Co., Ltd. 競合解決装置
JP2013516814A (ja) * 2009-12-31 2013-05-13 上海博泰悦▲しん▼電子設備制造有限公司 オーディオアプリケーションの競合の管理方法及び管理器
JP2014038188A (ja) * 2012-08-15 2014-02-27 Denso Corp 車両用音声制御装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013048986A1 (en) * 2011-09-26 2013-04-04 Knoa Software, Inc. Method, system and program product for allocation and/or prioritization of electronic resources
US20140075517A1 (en) * 2012-09-12 2014-03-13 GM Global Technology Operations LLC Authorization scheme to enable special privilege mode in a secure electronic control unit
US9092642B2 (en) * 2012-09-27 2015-07-28 Intel Corporation Managing personal privacy settings
JP2016060328A (ja) 2014-09-17 2016-04-25 株式会社デンソー 車載システム
KR101736990B1 (ko) * 2015-10-26 2017-05-17 현대자동차주식회사 차량과 연동하는 휴대용 단말기의 제어 방법 및 장치
US11150918B2 (en) * 2017-09-20 2021-10-19 Ford Global Technologies, Llc Method and apparatus for user-designated application prioritization

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005182784A (ja) * 2003-12-16 2005-07-07 Microsoft Corp インストールするのに有効な依存ソフトウェア更新の最大の群の判定
WO2006059786A1 (ja) * 2004-12-01 2006-06-08 Nec Corporation アプリケーション競合管理システム及びその方法並びにそれを用いた情報処理端末
WO2007020735A1 (ja) * 2005-08-18 2007-02-22 Matsushita Electric Industrial Co., Ltd. 競合解決装置
JP2013516814A (ja) * 2009-12-31 2013-05-13 上海博泰悦▲しん▼電子設備制造有限公司 オーディオアプリケーションの競合の管理方法及び管理器
JP2014038188A (ja) * 2012-08-15 2014-02-27 Denso Corp 車両用音声制御装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
奥山 玄 他: "アプリケーション競合管理方式", 第67回(平成17年)全国大会講演論文集(1) アーキテクチャ ソフトウェア科学・工学, JPN6020002634, 2 March 2005 (2005-03-02), pages 1 - 35, ISSN: 0004203013 *

Also Published As

Publication number Publication date
JP6809551B2 (ja) 2021-01-06
US10705817B2 (en) 2020-07-07
DE102019106795A1 (de) 2019-09-19
US20190286457A1 (en) 2019-09-19

Similar Documents

Publication Publication Date Title
US10093223B2 (en) System and method for generating a parking alert
CN108216220B (zh) 基于边界的车辆碰撞控制的设备和方法
US8466807B2 (en) Fast collision detection technique for connected autonomous and manual vehicles
JP2019192225A (ja) 協働知覚のためのマルチレベルハイブリッドv2x通信
JP6984312B2 (ja) 車載装置、情報処理システム、及び情報処理方法
JP2020030806A (ja) 車両対モノ通信に基づく眠気を催している運転者の検出
US20190176831A1 (en) Apparatus and method for controlling lane change in vehicle
WO2022047617A1 (zh) 提高车辆安全性的方法和系统
JP7351164B2 (ja) V2xレシーバ向けのv2x全二重位置特定支援
US11981351B2 (en) Systems and methods for detecting misbehavior behavior based on fusion data at an autonomous driving system
CN115431967A (zh) 车辆四轮紧急避险方法、装置、存储介质和电子设备
JP2020077378A (ja) V2xレシーバによるv2x通信の理解を改善するコンテキストシステム
CN113771881A (zh) 车辆换道控制方法、装置、电子设备及存储介质
US20200410850A1 (en) Information Sharing System and Information Sharing Method for Vehicle
US9457661B2 (en) Systems and methods for information management
JP6809551B2 (ja) 車両アプリケーションによるリソース競合を判定する方法
JP2019119371A (ja) 煽り運転解消システム
US20200369268A1 (en) Vehicles and systems for predicting road agent behavior based on driving style
CN109808693B (zh) 无人车黄灯决策方法、装置及存储介质
US20180232156A1 (en) Vehicle with Improved I/O Latency of ADAS System Features Operating on an OS Hypervisor
CN114495511A (zh) 提醒车主注意同行车辆的方法、系统、介质及装置
CN113954877A (zh) 基于安全沙箱的智能汽车安全仲裁及控制方法及装置
CN110936955B (zh) 自动驾驶车辆车速控制方法、装置、车载设备及存储介质
CN114596727A (zh) 用于车辆的辅助方法、系统、相应的车辆和存储介质
Pathan et al. Survey of cooperative advance driver assistance systems

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190315

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200129

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200204

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200406

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20200707

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201005

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20201005

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20201014

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20201020

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: 20201110

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20201123

R151 Written notification of patent or utility model registration

Ref document number: 6809551

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151