IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ブラックベリー リミテッドの特許一覧

特表2024-534378車両データファイルプレイバックのための方法およびシステム
<>
  • 特表-車両データファイルプレイバックのための方法およびシステム 図1
  • 特表-車両データファイルプレイバックのための方法およびシステム 図2
  • 特表-車両データファイルプレイバックのための方法およびシステム 図3
  • 特表-車両データファイルプレイバックのための方法およびシステム 図4
  • 特表-車両データファイルプレイバックのための方法およびシステム 図5
  • 特表-車両データファイルプレイバックのための方法およびシステム 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-09-20
(54)【発明の名称】車両データファイルプレイバックのための方法およびシステム
(51)【国際特許分類】
   G06F 11/30 20060101AFI20240912BHJP
【FI】
G06F11/30 193
G06F11/30 140D
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2024516431
(86)(22)【出願日】2022-09-14
(85)【翻訳文提出日】2024-03-13
(86)【国際出願番号】 US2022043491
(87)【国際公開番号】W WO2023049005
(87)【国際公開日】2023-03-30
(31)【優先権主張番号】17/480,801
(32)【優先日】2021-09-21
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
(71)【出願人】
【識別番号】500043574
【氏名又は名称】ブラックベリー リミテッド
【氏名又は名称原語表記】BlackBerry Limited
【住所又は居所原語表記】2200 University Avenue East, Waterloo ON N2K 0A7, Canada
(74)【代理人】
【識別番号】100107489
【弁理士】
【氏名又は名称】大塩 竹志
(72)【発明者】
【氏名】ラディック, スー シウ イン
(72)【発明者】
【氏名】アリ オスマン, フファネ
【テーマコード(参考)】
5B042
【Fターム(参考)】
5B042GB08
5B042MA08
5B042MA11
5B042MC08
(57)【要約】
コンピューティングデバイスにおける方法であって、方法は、コンピューティングデバイスにおいて、センサデータをデータソースから受信することと、コンピューティングデバイス上のプレイバックツールにおいて、センサデータを変換されたデータに変換し、それによって、コンピューティングデバイスにおける抽象化層をバイパスすることと、変換されたデータをコンピューティングデバイス上の少なくとも1つの合成センサに提供することとを含み、少なくとも1つの合成センサの各々は、コンピューティングデバイスの動作に関する洞察を提供する、方法。
【特許請求の範囲】
【請求項1】
コンピューティングデバイスにおける方法であって、前記方法は、
前記コンピューティングデバイスにおいて、センサデータをデータソースから受信することと、
前記コンピューティングデバイス上のプレイバックツールにおいて、前記センサデータを変換されたデータに変換し、それによって、前記コンピューティングデバイスにおける抽象化層をバイパスすることと、
前記変換されたデータを前記コンピューティングデバイス上の少なくとも1つの合成センサに提供することと
を含み、
前記少なくとも1つの合成センサの各々は、前記コンピューティングデバイスの動作に関する洞察を提供する、方法。
【請求項2】
前記変換されたデータを提供することは、前記コンピューティングデバイスにおいて、前記少なくとも1つの合成センサのためのトリガモジュールおよびライフサイクルモジュールをバイパスすることを含む、請求項1に記載の方法。
【請求項3】
前記変換することは、前記受信されたセンサデータのために構成され、かつ前記少なくとも1つの合成センサのためにさらに構成されたモジュールを利用する、請求項1に記載の方法。
【請求項4】
前記モジュールは、前記変換することを動的に調整するための変数を含む、請求項3に記載の方法。
【請求項5】
前記モジュールは、データサンプリングレートを設定すること、前記センサデータのデータフォーマットを変換すること、前記センサデータのデータタイプを変換すること、および前記センサデータを正規化することのうちの少なくとも1つを実施する、請求項3に記載の方法。
【請求項6】
前記プレイバックツールにおいて一時停止ルーチン、停止ルーチン、および開始ルーチンのうちの少なくとも1つを呼び出すことによって、前記変換されたデータを提供することを一時停止、停止、または開始することをさらに含む、請求項1に記載の方法。
【請求項7】
前記センサデータを受信することに先立って、前記コンピューティングデバイスにおいて、初期化データを受信することと、
前記初期化データに基づいて、前記少なくとも1つの合成センサを初期化することと
をさらに含む、請求項1に記載の方法。
【請求項8】
前記コンピューティングデバイスに関連付けられたディスプレイを更新するために前記洞察を利用することをさらに含む、請求項1に記載の方法。
【請求項9】
前記センサデータは、1つ以上の車両センサからのデータを表し、前記コンピューティングデバイスは、車両コンピューティングシステムからの少なくとも1つのオペレーティングシステムを仮想化する、請求項1に記載の方法。
【請求項10】
コンピューティングデバイスであって、前記コンピューティングデバイスは、
プロセッサと、
通信サブシステムと
を備え、
前記コンピューティングデバイスは、
センサデータをデータソースから受信することと、
前記コンピューティングデバイス上のプレイバックツールにおいて、前記センサデータを変換されたデータに変換し、それによって、前記コンピューティングデバイスにおける抽象化層をバイパスすることと、
前記変換されたデータを前記コンピューティングデバイス上の少なくとも1つの合成センサに提供することと
を行うように構成され、
前記少なくとも1つの合成センサの各々は、前記コンピューティングデバイスの動作に関する洞察を提供する、コンピューティングデバイス。
【請求項11】
前記コンピューティングデバイスは、前記コンピューティングデバイスにおいて、前記少なくとも1つの合成センサのためのトリガモジュールおよびライフサイクルモジュールをバイパスすることによって、前記変換されたデータを提供するように構成されている、請求項10に記載のコンピューティングデバイス。
【請求項12】
前記コンピューティングデバイスは、前記受信されたセンサデータのために構成され、かつ前記少なくとも1つの合成センサのためにさらに構成されたモジュールを使用して変換するように構成されている、請求項10に記載のコンピューティングデバイス。
【請求項13】
前記モジュールは、前記変換することを動的に調整する変数を含む、請求項12に記載のコンピューティングデバイス。
【請求項14】
前記モジュールは、データサンプリングレートを設定すること、前記センサデータのデータフォーマットを変換すること、前記センサデータのデータタイプを変換すること、および前記センサデータを正規化することのうちの少なくとも1つを実施する、請求項12に記載のコンピューティングデバイス。
【請求項15】
前記コンピューティングデバイスは、前記プレイバックツールにおいて一時停止ルーチン、停止ルーチン、および開始ルーチンのうちの少なくとも1つを呼び出すことによって、前記変換されたデータを提供することを一時停止、停止、または開始するようにさらに構成されている、請求項10に記載のコンピューティングデバイス。
【請求項16】
前記コンピューティングデバイスは、
前記センサデータを受信することに先立って、前記コンピューティングデバイスにおいて、初期化データを受信することと、
前記初期化データに基づいて、前記少なくとも1つの合成センサを初期化することと
を行うようにさらに構成されている、請求項10に記載のコンピューティングデバイス。
【請求項17】
前記コンピューティングデバイスは、前記コンピューティングデバイスに関連付けられたディスプレイを更新するために前記洞察を利用するようにさらに構成されている、請求項10に記載のコンピューティングデバイス。
【請求項18】
前記センサデータは、1つ以上の車両センサからのデータを表し、前記コンピューティングデバイスは、車両コンピューティングシステムからの少なくとも1つのオペレーティングシステムを仮想化する、請求項10に記載のコンピューティングデバイス。
【請求項19】
命令コードを記憶するためのコンピュータ読み取り可能な媒体であって、前記命令コードは、コンピューティングデバイスのプロセッサによって実行されると、
センサデータをデータソースから受信することと、
前記コンピューティングデバイス上のプレイバックツールにおいて、前記センサデータを変換されたデータに変換し、それによって、前記コンピューティングデバイスにおける抽象化層をバイパスすることと、
前記変換されたデータを前記コンピューティングデバイス上の少なくとも1つの合成センサに提供することと
を前記コンピューティングデバイスに行わせ、
前記少なくとも1つの合成センサの各々は、前記コンピューティングデバイスの動作に関する洞察を提供する、コンピュータ読み取り可能な媒体。
【請求項20】
前記命令コードは、前記コンピューティングデバイスにおいて、前記少なくとも1つの合成センサのためのトリガモジュールおよびライフサイクルモジュールをバイパスすることによって、前記変換されたデータを前記コンピューティングデバイスに提供させるようにさらに構成されている、請求項19に記載のコンピュータ読み取り可能な媒体。
【発明の詳細な説明】
【技術分野】
【0001】
(関連出願の相互参照)
本願は、2021年9月21日に出願された米国出願整理番号第17/480,801号の利益を主張する。先の出願の開示は、本願の開示の一部と見なされる(かつ参照することによって、その中に組み込まれる)。
【0002】
(開示の分野)
本開示は、分散システムに関し、特に、分散システムのデータファイルプレイバックに関する。
【背景技術】
【0003】
現代の車両は、多くのセンサを有する。しかしながら、そのようなセンサは、車両上の種々のコンピューティングノード内に分散され得、各コンピューティングノードは、ゼロ、1つ、またはそれを上回るセンサドライバへのアクセスを有し得る。そのようなセンサノードは、異なる製造業者をさらに有し、異なるオペレーティングシステムを使用して動作し得る。同様に、他の分散システムは、ノードが互いに通信する必要がある複数のノードを有し得る。
【0004】
センサまたはセンサの群は、1つ以上のアプリケーションに有用であり得る情報を発生させるために使用され得る。そのような情報は、本明細書では洞察と称される。
【0005】
しかしながら、プロトタイピングおよび安全上の理由のために、開発は、実車両から切り離して生じる必要があり得る。
【発明の概要】
【課題を解決するための手段】
【0006】
本開示は、図面を参照してより深く理解されるであろう。
【図面の簡単な説明】
【0007】
図1図1は、コンピュータシステム内の例示的コンピューティングノードを示すブロック図である。
【0008】
図2図2は、第1の簡略化されたプレイバックアーキテクチャを示すブロック図である。
【0009】
図3図3は、第2の簡略化されたプレイバックアーキテクチャを示すブロック図である。
【0010】
図4図4は、第3の簡略化されたプレイバックアーキテクチャを示すブロック図である。
【0011】
図5図5は、コンピューティングデバイスにおけるプレイバックツールの使用を示す、プロセス図である。
【0012】
図6図6は、本開示の実施形態とともに使用されることが可能である簡略化されたコンピューティングデバイスのブロック図である。
【発明を実施するための形態】
【0013】
本開示は、コンピューティングデバイスにおける方法を提供し、方法は、コンピューティングデバイスにおいて、センサデータをデータソースから受信することと、コンピューティングデバイス上のプレイバックツールにおいて、センサデータを変換されたデータに変換し、それによって、コンピューティングデバイスにおける抽象化層をバイパスすることと、変換されたデータをコンピューティングデバイス上の少なくとも1つの合成センサに提供することとを含み、少なくとも1つの合成センサの各々は、コンピューティングデバイスの動作に関する洞察を提供する。
【0014】
本開示は、コンピューティングデバイスをさらに提供し、コンピューティングデバイスは、プロセッサと、通信サブシステムとを備え、コンピューティングデバイスは、センサデータをデータソースから受信し、コンピューティングデバイス上のプレイバックツールにおいて、センサデータを変換されたデータに変換し、それによって、コンピューティングデバイスにおける抽象化層をバイパスし、変換されたデータをコンピューティングデバイス上の少なくとも1つの合成センサに提供するように構成され、少なくとも1つの合成センサの各々は、コンピューティングデバイスの動作に関する洞察を提供する。
【0015】
本開示は、命令コードを記憶するためのコンピュータ読み取り可能な媒体をさらに提供し、命令コードは、コンピューティングデバイスのプロセッサによって実行されると、センサデータをデータソースから受信することと、コンピューティングデバイス上のプレイバックツールにおいて、センサデータを変換されたデータに変換し、それによって、コンピューティングデバイスにおける抽象化層をバイパスすることと、変換されたデータをコンピューティングデバイス上の少なくとも1つの合成センサに提供することとをコンピューティングデバイスに行わせ、少なくとも1つの合成センサの各々は、コンピューティングデバイスの動作に関する洞察を提供する。
【0016】
現代の車両では、1つ以上の物理的センサからの情報は、システムにおいて有益であり得る「洞察」を生成するように処理され得る。そのような1つ以上の物理的センサおよびそれらに関連付けられた処理は、論理的にマイクロサービスまたは合成センサ(SS)と称され得る。用語マイクロサービスと合成センサとは、本明細書では同義的に使用される。
【0017】
合成センサは、限定ではないが、とりわけ、医療アプリケーション、製造アプリケーション、モノのインターネットアプリケーションを含む、他のタイプのアプリケーションにおいて存在し得、本開示は、車両アプリケーションに限定されない。車両アプリケーションが、下記に例証のために提供される。
【0018】
洞察は、基本的センサデータの任意のコンピュータ生成解釈を説明するために本明細書において使用される用語である。洞察は、データ集合または相関と同程度に簡単であることも、人工知能および機械学習と同程度に複雑であることもある。例えば、通知のための高および低基準値を提供する温度センサは、「洞察」と見なされ得る。位置特定サービスに関して、ジオフェンシングは、洞察である。カメラに関して、占有者認識は、洞察であり得る。温度センサおよびカメラ等のセンサの組み合わせの使用は、自動車の座席が暑い車両内で占有されているかどうかを決定するために、人工知能モデルとともに使用され得、それは、洞察であり得る。洞察の多くの他の例が、可能である。
【0019】
一実施形態において、車両アプリケーションは、開発者コミュニティに熟知され、アクセス可能である方法において、車両データおよび知的洞察への一貫したアクセスを提供するシステムにおいて実装され得る。そのような環境は、クラウド開発者が、一般的なクラウド開発技術およびパラダイムを使用して、車両データに関する知的洞察を導出する合成センサの開発を通して、車両内のエッジへの開発者の及ぶ範囲を拡大することを可能にし得る。そのような環境は、車両データへの一貫したアクセスを提供し得、それによって、合成センサは、特注のカスタマイズを伴わずに、広い車両ベースに書き込まれ、展開されることができる。
【0020】
洞察は、第1の設備またはドメイン上で実行するプロセッサに基づいて発生され得るが、それらは、多くの場合、外部ドメイン内で実行する認可されたソフトウェアモジュールと共有される必要がある。第1のドメインは、その中のモジュールのインストールおよび通信を制御し、したがって、それらの識別および認可を決定することが可能である。しかしながら、第1のドメインは、他のドメインにおいてそのような制御を有していない。
【0021】
例えば、1つの外部ドメインは、洞察にアクセスし、情報を運転者に提供するアプリケーションを実行し得る自動車の車両内インフォテインメント(IVI)システムであり得る。
【0022】
しかしながら、実世界においてそのようなシステムを展開することに先立って、例えば、シミュレーションとして、システム内でデータファイルをプレイバックすることが望ましくあり得る。これは、安全上の理由、迅速なプロトタイピング、または潜在顧客、開発者、パートナ、または他者に対するシステムの実証を含む様々な因子のためであり得る。
【0023】
例えば、新しい合成センサを実世界環境の中に展開することは、センサをシステムの中に統合するための抽象化層の開発を要求し、システムが正しく実働していることを確実にするために、データがシステムから取得されることを要求し、可能性として、車両における誤差または安全ではない状態を引き起こし得る。
【0024】
さらに、合成センサまたは複数の合成センサの機能性を使用対象者に実証するために、これは、実車両において困難になる。
【0025】
(例示的車両システム)
【0026】
本開示は、ノードを伴う自動車システムに関して説明されるであろう。しかしながら、それは、単に、例証目的のために提供され、本明細書に説明される方法およびシステムは、任意の他のシステムと等しく使用され得る。
【0027】
例えば、ノード110を示す図1の参照が、ここで行われる。本明細書で使用されるように、ノードは、他の選択肢の中でもとりわけ、電子制御ユニット、中央処理ユニット、またはカーネル制御のうちの1つまたは群であり得、単一のコンピューティングユニットと見なされることができる。
【0028】
図1の例では、ノード110は、ノードが接続されるセンサのためのドライバと相互作用し得るサービスマネージャ120を含む。例えば、ノード110は、ブロック122において示されるように、全地球測位システム(GPS)チップセット等の位置特定センサに対するアクセスを有し得る。
【0029】
ノード110が、他のノード上のモジュールと相互作用することを可能にするために、かつコンピューティングシステムを機能的に具備するために、ハードウェア抽象化層(HAL)が、ノード110上に提供され得、それは、HALサービス130を備えている。各HALサービス130は、センサの統合に関与し、下層センサへの統合、センサデータの正規化を含む種々の機能を提供する;および/または、要求される場合、安全認証ソフトウェアと非認証ソフトウェアとの間の障壁を提供し得る。HALサービスに関する他の機能も、可能である。
【0030】
図1の例では、HALは、ブロック132内に示されるように、カメラ情報のために提供される。
【0031】
図1の例は、単一のサービスおよび単一のHALを伴うノード110を示すが、それは、単に、例証目的のために提供される。ノード110は、HALを伴わない単一のサービス、サービスを伴わない単一のHAL、HALを伴わない複数のサービス、サービスを伴わない複数のHAL、サービスを伴わない複数のHAL、および/またはサービスとHALとの組み合わせを有し得る。
【0032】
ノード110を使用し得るシステムの一例は、車両のためのアプリケーション開発環境であるであろう。そのようなアプリケーション開発環境は、快適性、ナビゲーション、インフォテインメントを含むユーザ体験のためのアプリケーション;とりわけ、安全性のためのアプリケーション、車隊管理のためのアプリケーション;性能監視のためのアプリケーション;または、車両環境のための他のそのようなアプリケーションを開発し得る。特に、車両は、複数のセンサを提供し、異なるメーカ、型式、またはブランドが、異なるデータフォーマットまたは値を伴う異なるセンサを使用し、そのようなセンサに応じて、断片化されたセンサ測定値を生成し得る。この断片化は、車両データを利用するアプリケーションエコシステムの推進を妨げる。加えて、低レベルセンサデータは、多くの場合、粒度が細かすぎるので、アプリケーションに対して容易に有用となることができない。
【0033】
この点で、ハードウェア抽象化層は、下層センサドライバとの相互作用をカプセル化し得るハードウェア独立型センサインターフェース/抽象化を提供するために使用されることができる。種々のコンピューティングノードにおけるハードウェア抽象化の使用は、拡張可能であるプラットフォームを生成し、モジュール間に障壁を提供し、例えば、他の選択肢の中でもとりわけ、安全認証システムが、他のシステムとは別個であることを強化することができる。
【0034】
アプリケーションは、センサデータにアクセスするために、センサハードウェアと直接相互作用しないが、代わりに、それらは、ハードウェア抽象化層を活用する。この分離は、HAL(センサの統合およびセンサデータを正規化すること)の関与と車両抽象化層(VAL)等の他の抽象化との間の明白な区別を提供し、車両データへのアクセスを管理し、付加価値のある洞察を提供するために使用される。
【0035】
具体的に、洞察は、車両抽象化および付加価値のある洞察を提供するために、複数のHALからのセンサデータを活用し得る。VALにおける車両洞察サービスは、正規化された形態の車両データへのアクセスを制御し、付加価値のある推論を提供し得る。洞察サービスの例は、とりわけ、一貫したフォーマットにおける座標位置特定データおよびジオフェンシング等の洞察を提供し得る位置特定サービス;ベルトステータス、重量、位置、チャイルドロックステータス等の無数の座席情報を提供し得る座席サービス;車内カメラのためのビデオストリームおよび可能性として、変換および/または切り取り等の機能を提供し得るカメラサービス;充電状態/消費量/予想される残りの時間/予想された走行距離等のバッテリに対する洞察およびアクセスを提供し得るバッテリサービス;車両ドアおよびドアステータスに関する抽象化を提供し得るドアサービスを含み得る。
【0036】
洞察サービスは、車両抽象化および付加価値のある洞察を提供するために、複数のHALからのセンサデータを活用し得る。データに関するより高いレベルの洞察は、アプリケーション開発者が、将来的な自動車体験を生成することを可能にする。洞察は、基本センサデータの任意の付加価値のある解釈を説明するために使用される用語である。洞察は、データ集合または相関と同程度に単純であることも、人工知能および機械学習と同程度に複雑であることもできる。例えば、温度センサに関して、通知のために高および低水位標を提供することは、「洞察」と見なされ得る。位置特定サービスに関して、ジオフェンシングは、洞察であり、カメラに関して、乗車者認識は、洞察と見なされ得る。
【0037】
図1において説明されるようなサービスおよびHALマネージャを伴うノードが、したがって、そのようなアプリケーション開発環境のために必要とされる。ノード110は、多くのシステムでは、他のECU、CPU、またはコンピューティングシステム等の他のノードと通信することが必要とされ、そのようなECU、CPU、またはコンピューティングシステムは、ノード110のそれとは異なるオペレーティングシステムを使用し得る。
【0038】
しかしながら、合成センサを開発する、そのような合成センサを試験する、またはそのような合成センサを実証するとき、実世界のセンサデータと合成センサとの間に抽象化層を生成することのオーバヘッドは、負担であり、開発に失速させ得る。この点で、プレイバック機構が、ハードウェアおよび車両抽象化層をバイパスするために使用され得、そのようなプレイバック機構は、合成センサのプロトタイピングまたは実証のために使用されることができる。
【0039】
(実証およびプロトタイピングツール)
【0040】
本開示の実施形態によると、車両動作に関するデータのプレイバック、特に、車両内の合成センサに関するデータのプレイバックが、情報をエッジノード内の種々の抽象化層プレイバックツールに提供するデータソースを利用して、遂行されることができる。これは、例えば、図2、3、および4に関して説明される。
【0041】
ここで図2の参照が行われ、それは、第1のプレイバックアーキテクチャに関する簡略化されたアーキテクチャ図を示す。図2の例では、データソース210は、いくつかの実施形態において、任意のコンピュータシステムまたはデータベースであり得る。例えば、データソースは、そのようなデータの中でもとりわけ、データベース内に記憶されるサンプルビデオクリップ、車両の内部のシミュレーションに関するサンプル温度測定値等の特定のセンサに関するデータを含み、走行されるサンプルルートと電気車両におけるバッテリレベルとの間の相関を有し得る。
【0042】
他の実施形態において、データソース210は、例えば、通信サブシステムを通して、合成センサを実行するコンピュータノードにフィードバックを提供する実センサであり得る。例えば、データソース210は、他の場合、プレイバックシステムにフィードバックを提供している実車両に接続されるカメラを含み得、温度センサ等のセンサが、例えば、USBまたは短距離通信ポートを通して、エッジノードを実行するコンピュータと接続され得る。データソース210に関する他の選択肢も、可能である。
【0043】
図2の例では、データソース210は、車両エネルギーデータセット(VED)データ212を含み、それは、Ann Arbor(Michigan)における383台の私用車から2016/2017年に収集されたデータに対して与えられる名前である。VEDデータ212は、合成センサのシミュレーションを実行するエッジノード220に提供される。特に、エッジノード220は、種々のハードウェア抽象化層と、車両抽象化層とを含むサービスソフトウェア開発キット(SDK)230を含む。
【0044】
図2の例では、全地球測位システム(GPS)HALサービス232が、サービスSDK230内で提供され得る。上で提供されるように、HALサービスは、センサの統合に関与し、下層データへの統合、センサデータの正規化を含む種々の機能を提供する;および/または、要求される場合、安全認証ソフトウェアと非認証ソフトウェアとの間に障壁を提供し得る。HALサービスに関する他の機能も、可能である。本開示は、任意の特定のHALサービスおよびGPS HALサービスの使用に限定されず、例証目的のためにのみ提供される。
【0045】
したがって、図2の実施形態において、GPS HALサービス232は、VEDデータを特定の合成センサのために好適なデータタイプ、フォーマット、レート等に変換し得る。そのようなデータは、次いで、位置特定VALサービス234に提供され、それは、車両データへのアクセスを管理し、付加価値のある洞察を提供するために使用される。
【0046】
具体的に、上で提供されるように、洞察は、車両抽象化および付加価値のある洞察を提供するために、複数のHALからのセンサデータを活用し得る。VAL内の車両洞察サービスは、正規化された形態の車両データへのアクセスを制御し、付加価値のある推論を提供し得る。
【0047】
しかしながら、他の実施形態において、ハードウェア抽象化層は、特定のセンサまたはセンサタイプに関して書き込まれないこともある。上で示されるように、それは、特定のフォーマットにおいて、分散システムに関するコード化ルールおよび要件に基づき、抽象化層を書き込むために、著しい開発遅延につながり得る。
【0048】
この点で、抽象化層が存在しない場合、プレイバックツール236が、抽象化層をバイパスするために使用され得る。本明細書で使用されるプレイバックツールは、それがデータを利用する特定のデータソース(センサ)および合成センサのためにプログラミングされ得る軽量かつ拡張可能なモジュールであり得る。このように、プレイバックツールは、新しいセンサおよび合成センサを容易にプラグインし、環境をプロトタイピングまたは実証するための機構を提供する。
【0049】
図2の例では、プレイバックツール236は、OpenXCフォーマットを利用するように例証されるセンサモジュール238を含む。しかしながら、OpenXCフォーマットは、例証目的のためにのみ提供され、データソースの任意のフォーマット化が、プレイバックのために利用され得る。センサモジュール238は、特定のデータソースから入力を取り込み、合成センサのために設計される特定のフォーマットにおいて出力を提供するように設計される。例えば、これは、他の因子の中でもとりわけ、サンプリングレート、データフォーマットタイプ、センサデータの正規化を含み得る。データファイルまたは既知のセンサからのデータタイプ、フォーマット化、走行距離、および他の情報が、プレイバックモジュール238に関する開発者に既知であるので、かつ合成センサによって要求されるデータフォーマット化、レート、正規化、および他の情報が、開発者に既知であるので、モジュール238は、容易に生成され得る。
【0050】
さらに、モジュール238は、変数、変換アルゴリズム、フィルタ、サンプリングレート、またはランタイムにおいて設定され得る他のパラメータを有し得る。これは、合成センサを迅速に試験するための合成センサ240の性能最適化のために行われ得る。当業者によって理解されるであろうように、そのようなパラメータは、最終的に、次いで、特定のセンサタイプに関するシステムのためのハードウェア抽象化層および車両抽象化層を生成するために使用され得、プレイバックのためのそのような能力を有することによって、これは、抽象化層を生成するタスクを改良および加速し得る。
【0051】
図2の実施形態において、合成センサ240は、運転者挙動合成センサである。これは、単に、例証目的のために提供され、他のタイプの合成センサも、本開示の実施形態とともに使用され得る。
【0052】
位置特定サービスクライアント242が、合成センサハーネス241内にある。位置特定サービスクライアント242は、位置特定データをクエリし、存在する場合、それを位置特定VALサービス234から取得し得る。この位置特定データは、次いで、運転者挙動モジュール244に提供され得る。
【0053】
代替として、プレイバックモジュール238が、使用される場合、データは、そのようなデータを必要とする合成センサ240内のモジュールの中に直接挿入され、それによって、ハードウェア抽象化要件をバイパスし得る。
【0054】
運転者挙動モジュール244は、運転者挙動に関する洞察を導出し、そのような洞察を運転者挙動モジュール244に返すように提供するように機械学習モジュール246を使用することができる。運転者挙動モジュール244がそのようなデータをコンパイルすることに基づいて、運転者挙動プロキシ248が、データを受信し得る。
【0055】
運転者挙動プロキシ248は、そのようなデータを洞察消費側250に提供し得る。例えば、洞察消費側250は、運転者挙動に関する視覚的表示を提供し得るダッシュボード運転者挙動ディスプレイ252であり得る。他の場合、洞察消費側250は、運転者挙動情報を取得するための運転者との契約を有する保険会社であり得る。洞察利用者250に関する他の選択肢も、可能である。
【0056】
あるシミュレーションの場合、洞察消費側250は、例えば、他の選択肢の中でもとりわけ、視覚的ディスプレイ、データストリームを通して、フィードバックをユーザまたは使用対象者に提供するために、エッジノード220に接続された別のプログラムであり得る。
【0057】
いくつかの実施形態において、種々の合成センサの開始および停止に対する制御が、望ましくあり得る。この場合、トリガサービスおよびライフサイクルサービスが、コンピューティングデバイス内に提供され得る。ここで図3の参照が、行われる。
【0058】
図3の実施形態において、データソース310が、コンピューティングデバイス320に提供され得る1つ以上のセンサについての情報を含むデータベースまたはコンピュータファイルであり得る。例えば、図3の実施形態において、データスクリプトファイル312が、位置特定データOpenXCファイル314を含み得る。当業者によって理解されるであろうように、OpenXCファイルは、種々のハードウェア要素間の通信のために提案されるオープン標準である、自動車に関するアプリケーションプログラムインターフェース(API)である。したがって、図3の簡略化された例は、位置特定に基づく挙動サービスを提供しており、位置特定データは、openXCファイル314を通して提供されている。
【0059】
OpenXCファイルからのデータ314は、コンピューティングデバイス320上のサービスSDK324に、より具体的に、GPS HALサービス325に提供され得る。サービスSDK324は、コンピューティングデバイス320上でシミュレートされている第1のオペレーティングシステム322内にある。例えば、いくつかの実施形態において、第1のオペレーティングシステムは、BlackBerry(登録商標) QNXオペレーティングシステムであり得る。しかしながら、他のオペレーティングシステムも、等しく使用され得る。
【0060】
全地球測位システム(GPS)HALサービス325が、サービスSDK324内に提供され得る。上で提供されるように、HALサービスは、センサの統合に関与し、下層センサへの統合、センサデータの正規化を含む種々の機能を提供する;および/または要求される場合、安全認証ソフトウェアと非認証ソフトウェアとの間の障壁を提供し得る。HALサービスに関する他の機能も、可能である。本開示は、任意の特定のHALサービスおよびGPS HALサービスの使用に限定されず、例証目的のためにのみ提供される。
【0061】
したがって、図3の実施形態において、GPS HALサービス325は、位置特定データOpenXC情報を特定の合成センサのために好適なデータタイプ、フォーマット、レート等に変換する。そのようなデータは、次いで、位置特定VALサービス326に提供され、そのようなデータは、車両データへのアクセスを管理し、付加価値のある洞察を提供するために使用される。
【0062】
抽象化層が存在しない場合、プレイバックツール328が、抽象化層をバイパスするために使用され得る。図2の実施形態におけるプレイバックツール238に類似したプレイバックツール328は、それがデータを利用する特定のデータソース(センサ)および合成センサのためにプログラミングされ得る軽量かつ拡張可能なモジュールであり得る。このように、プレイバックツールは、新しいセンサおよび合成センサを容易にプラグインし、環境をプロトタイピングまたは実証するための機構を提供する。
【0063】
図3の例では、プレイバックツール328は、OpenXCフォーマットを利用するために例証される、センサモジュール329を含む。しかしながら、OpenXCフォーマットは、例証目的のためにのみ提供され、データソースの任意のフォーマット化が、プレイバックのために利用され得る。センサモジュール329は、特定のデータソースから入力を取り込み、合成センサのために設計される特定のフォーマットにおいて出力を提供するように設計される。例えば、それは、他の因子の中でもとりわけ、サンプリングレート、データフォーマットタイプ、センサデータの正規化を含み得る。データファイルまたは既知のセンサからのデータタイプ、フォーマット化、走行距離、および他の情報がプレイバックツール328に関する開発者に既知であるので、かつ合成センサによって要求されるデータフォーマット化、レート、正規化、および他の情報が開発者に既知であるので、プレイバックツール328は、容易に生成され得る。
【0064】
さらに、プレイバックツール328は、変数、変換アルゴリズム、フィルタ、サンプリングレート、またはランタイムにおいて設定され得る他のパラメータを有し得る。これは、合成センサを迅速に試験するための合成センサ340の性能最適化のために行われ得る。当業者によって理解されるであろうように、そのようなパラメータは、最終的に、次いで、特定のセンサタイプに関するシステムのためのハードウェア抽象化層および車両抽象化層を生成するために使用され得、プレイバックのためのそのような能力を有することによって、これは、抽象化層を生成するタスクを改良および加速し得る。
【0065】
位置特定VALサービス326は、SDKサービス324内の抽象化層からの新しい情報を提供されるとき、合成センサおよび洞察ライブラリ330内のトリガサービス332をトリガし得る。そのようなトリガサービスは、次いで、ライフサイクルサービス334に、挙動特性合成センサ340上でランタイムを開始させ得る。特に、合成センサ340は、ライブラリ342を含み、ライフサイクルサービス334によって始動され得るランタイムライブラリ344を有し得る。
【0066】
ランタイム344は、サービスSDKから受信される位置特定情報を含み、タスク処理またはブロック346におけるある場所にそのような位置特定情報を提供し得る。位置特定タスクブロック346は、機械学習ブロック348と通信し得、機械学習ブロック348は、挙動特性を決定するために、静的データストア350からもデータを取得し得る。
【0067】
機械学習モジュール348は、機械学習モジュール348を制御するための機械学習サービスクライアント352とさらに通信し得る。
【0068】
特定のセンサに関するハードウェア抽象化層が存在しない場合、プレイバックツール328が、使用され得る。この場合、センサモジュール329からの出力は、合成センサ340の中に直接挿入され得る。これは、例えば、位置特定タスク346の中に直接入力されているデータとして示される。これは、新しいデータが利用可能であるときにトリガを提供し、ライフサイクルを開始させ、合成センサを実行するアーキテクチャを回避する。実践では、合成センサ340は、実証またはプロトタイピングのために絶えず実行するように設定され、それによって、それらのために書き込まれる抽象化層をまだ有しないセンサに関するトリガサービスおよびライフサイクルサービスに対する必要性を無効にし得る。
【0069】
位置特定タスク346は、洞察を洞察ブローカ360にさらにフィードし得る。洞察は、試験視点から、データの調整を有するために、閉じられたループとしてシミュレータの中にフィードされる。特に、洞察ブローカ360は、合成センサ340のトリガを制御するためのトリガサービス332に戻るようにループを提供し得る。洞察ブローカ360は、下記に説明されるように、洞察消費側とさらに通信し得る。
【0070】
機械学習マネージャ362は、合成センサおよび洞察ライブラリ330の一部であり、機械学習サービスクライアント352を制御し得る。
【0071】
図3の例では、第2のオペレーティングシステム370が、コンピューティングデバイス320上に存在し得る。例えば、コンピューティングデバイス320は、Android(登録商標)車載インフォテインメント(IVI)システムを複製するためのAndroid(登録商標)オペレーティングシステムをシミュレートし得る。しかしながら、他のオペレーティングシステムおよびアプリケーションも、等しくシミュレートされ得る。
【0072】
オペレーティングシステム370は、第1のオペレーティングシステムと第2のオペレーティングシステムとの間で通信するために使用され得るブリッジ374を含むアプリケーション開発ライブラリ372を含む。特に、洞察ブローカ360は、ブリッジ374と通信し得る。
【0073】
データが、オペレーティングシステム370上のブリッジ374を通して受信されると、データは、アプリケーション376に提供され得る。上で示されるように、アプリケーションの一例は、車両上のIVIアプリケーションであり得る。これは、第1のオペレーティングシステム内の合成センサから取得される洞察に基づいて情報を表示するために使用され得るユーザインターフェース378を含む。
【0074】
したがって、図3の実施形態は、データのシミュレーションを制御するために、車両上に通常見出されるモジュールを使用し、トリガサービス、ライフサイクルサービス、および洞察ブローカサービスを利用して、それらのモジュールの動作をシミュレートすることができる単純であり、オープンであり、適応性があり、拡張可能であるシミュレータを提供する。データは、OpenXCフォーマット等のオープンAPIを含む任意のフォーマットにおけるものであり得、それは、次いで、1つ以上の抽象化層を通して合成センサのために好適なデータに変換され得る。
【0075】
より詳細なアーキテクチャが、図4に関して示される。図4のアーキテクチャは、走行距離エキスパート出力をユーザインターフェースに提供する、電気車両(EV)シミュレーションの例を伴って提供される。しかしながら、それは、単なる例であり、アーキテクチャに関する他の選択肢も、可能である。
【0076】
図4の例では、データソース410は、複数のデータスクリプトファイル412を含み得る。これらは、初期データファイル414を含み得、それは、他の選択肢の中でもとりわけ、目的地の場所、USB状態またはWi-Fi状態、画面状態、およびHVACの状態等の種々の基準を含み得る。一実施形態において、初期データ414は、OpenXCプロトコルを利用し得る。
【0077】
データスクリプトファイル412内に存在し得る他のデータは、電気車両データ416を含み得る。例えば、それは、車両が、シミュレートされたルートに沿って進行しているときのバッテリ状態を含み得る。
【0078】
さらなるデータは、ビデオデータ418を含み得る。そのようなビデオデータは、下記に説明されるように、運転者識別検証等のタスクのために使用され得る。
【0079】
データソース410内のさらなるデータは、位置特定データ420を含み得、それは、いくつかの実施形態において、OpenXCファイルフォーマットにおけるものであり得る。しかしながら、他のファイルフォーマットも、可能である。
【0080】
図4の実施形態において、データソースは、コンピューティングデバイス430の一部であり得るか、または、それとは別個であり得る。コンピューティングデバイス430は、第1のオペレーティングシステム432を有し得、それは、そのような第1のオペレーティングシステムをシミュレートし得る。例えば、第1のオペレーティングシステムは、いくつかの実施形態において、BlackBerry(登録商標) QNXオペレーティングシステムであり得る。しかしながら、第1のオペレーティングシステム432に関する他の選択肢も、可能である。
【0081】
第1のオペレーティングシステム432内に、プレイバックツール433が、存在し得る。プレイバックツール433は、そのようなセンサのために書き込まれる抽象化層を有しないセンサからのデータを変換するために使用され得る。当業者によって理解されるであろうように、HALとVALとを含む抽象化層の書き込みは、時間のかかるものであり、したがって、プレイバックツール433は、プロトタイピング目的のためのそのような抽象化層生成をバイパスするために使用され得る。具体的に、プレイバックツール433は、そのような抽象化層を書き込むための必要性なしで異なるセンサ(実または仮想であるかどうかにかかわらず)がコンピューティングデバイス430の中にプラグインされることを可能にするための軽量かつ適応性があるツールを提供し、、したがって、合成センサをプロトタイピングおよび試験する、またはそのような合成センサを利用する使用対象者に対する実証を提供するためのスピードを増加させる。
【0082】
図4の実施形態において、プレイバックツール433は、EVデータソース416からEVデータを受信するために、EV OpenXCモジュール434を有する。
【0083】
シミュレータ433は、例えば、ビデオデータ418を変換するための変換器436をさらに有し得る。変換器436は、したがって、例えば、他の選択肢の中でもとりわけ、MP4からJPEG等、1つのファイルフォーマットを第2のファイルフォーマットに変換し得る。いくつかの実施形態において、特定のデータフォーマットへの変換ではなく、変換器436は、例えば、合成センサ内の機械学習または人工知能モジュールに直接入力するために、ファイルを数学的なマトリクスに変換し得る。
【0084】
変換器からの出力は、カメラOpenCVモジュール438に提供され得、モジュール438は、出力を提供するためにOpenCVプロトコルを使用し得る。
【0085】
さらに、いくつかの実施形態において、種々の抽象化層を伴うサービスSDK440も、コンピューティングデバイス430内に存在し得る。図4の実施形態において、サービスSDK440は、GPSハードウェア抽象化層サービス442および位置特定車両抽象化層サービス444を含む。
【0086】
図4の実施形態はさらに、トリガサービス452およびライフサイクルサービス454を含み得る合成センサおよび洞察ライブラリ450を含む。トリガサービス452は、合成センサの開始または停止をトリガするために使用され得る。それは、他の選択肢の中でもとりわけ、車両の開始のためのトリガとしてさらに使用され得るか、または、それは、洞察ブローカからの入力に基づいてトリガし得る。ライフサイクルサービス454は、プレイバックのライフサイクルを通して、センサを開始および停止するために使用され得る。
【0087】
図4の実施形態において、3つの合成センサが、提供されている。具体的に、挙動変更合成センサ460が、提供され、それは、例えば、電気車両が、走行を完了するために必要とされる走行距離の閾値近接内にあるとき、挙動変更勧告を提供するために使用され得る。
【0088】
さらに、運転者識別合成センサ470が、提供され、それは、運転者を識別し、したがって、運転者プロファイルに基づいて車両を構成するために使用され得る。
【0089】
特徴変更合成センサ480は、種々の特徴変更を運転者に勧告するために使用され得、種々の特徴変更は、例えば、ルート要件と比較される走行距離予測が閾値を下回るとき、バッテリ寿命を延長し得る。
【0090】
挙動変更合成センサ460は、それ自体のセンサと、洞察ライブラリ462とを有し得、洞察ライブラリ462は、合成センサランタイムモジュール464および機械学習サービスクライアント465を含み得る。
【0091】
さらに、挙動変更合成センサ460は、洞察を発生させるために使用され得る複数のブロックまたはプロセスを有し得る。例えば、挙動変更合成センサ460は、EVタスクを監視し得るEVタスクブロック466を有し得る。合成センサは、目的地と比較して、車両の場所を監視し得る位置特定タスク467も有し得る。挙動変更勧告エンジン機械学習モジュール468は、EVタスクブロック466からのEVタスクを位置特定タスクブロック467からの位置特定タスクと比較し得、予想される走行距離および目的地の距離に応じて、車両の運転に関する挙動勧告を提供し得る。
【0092】
運転者識別合成センサ470は、合成センサランタイム474および機械学習サービスクライアント475を含み得る挙動および洞察ライブラリ472を含む。
【0093】
この場合、合成センサは、カメラ入力を処理するために、カメラタスク476を含み得る。さらに、運転者識別機械学習モジュール477は、カメラタスクからの入力を使用し、運転者プロファイルデータベース478からの入力に基づいて運転者を識別し得る。運転者プロファイルデータベース478は、ある場合、複数の運転者に関する運転者プロファイル選好を含み得る。
【0094】
特徴変更合成センサ480は、特徴変更を勧告するために使用され得る。この場合、特徴変更合成センサ480は、センサと、合成センサランタイムモジュール484を有する洞察ライブラリ482とを含む。さらに、ライブラリは、機械学習サービスクライアント485を含み得る。
【0095】
合成センサは、車両の場所を監視するために、位置特定タスクモジュール486を有し得る。さらに、センサは、車両のバッテリを監視するために、EVタスクモジュール487を有し得る。
【0096】
さらに、タスクモジュール489は、車両によって使用されているタスクの一覧を提供するために使用され得る。
【0097】
特徴変更勧告エンジン機械学習モジュール488は、種々のタスクモジュールから入力を受信し、特徴変更勧告を提供し得る。
【0098】
機械学習マネージャ490は、種々の機械学習サービスクライアント465、475、および485を管理し得る。
【0099】
洞察ブローカ492は、データの調整を有するために、閉ループを提供し得、試験視点のために使用されることができる。
【0100】
図4の実施形態において、第2のオペレーティングシステムが、利用され得る。例えば、第2のオペレーティングシステムは、Android(登録商標)オペレーティングシステムおよび車載インフォテインメントシステムであり得る。しかしながら、オペレーティングシステムおよびアプリケーションの両方に関する他の選択肢も、可能である。特に、オペレーティングシステム494は、第1のオペレーティングシステムと第2のオペレーティングシステムとの間の相互作用を提供するために、ブリッジ496を伴うアプリケーション開発ライブラリ495を含む。
【0101】
電気車両走行距離アプリケーション497が、例示的アプリケーションとして示されており、視覚的、触覚的、または聴覚的であるかどうかにかかわらず、出力を車両ユーザに提供するためのユーザインターフェースコンポーネント498を含み得る。
【0102】
動作時、初期データ414は、合成センサ内の状態を設定するために、合成センサに直接提供され得る。したがって、位置特定データ、目的地データ、HVAC状態、画面状態、Wi-Fi状態は、特徴変更勧告エンジン機械学習モジュール488および挙動変更勧告エンジン468に提供され得る。
【0103】
続いて、プレイバックが、開始し得、EVデータが、EVデータソース416からEV OpenXCシミュレータモジュール434に提供され得る。その後、EVタスク466およびEVタスク487は、EV OpenXCモジュール434をクエリし、EV状態を見出し得る。理解されるであろうように、これは、トリガサービス452およびライフサイクルサービス454をバイパスし、したがって、迅速な開発、プロトタイピング、および実証を可能にする。
【0104】
ビデオデータ418は、変換器434を通して、カメラOpenCVモジュール438に提供され得る。その後、カメラタスクモジュール476は、シミュレータモジュールと相互作用し、カメラデータを取得し得る。再び、これは、トリガサービス452およびライフサイクルサービス454をバイパスする。
【0105】
同様に、位置特定データソース420からの位置特定データは、GPS HALサービス442および位置特定VALサービス444を通して提供され得、位置特定VALサービスからの出力は、トリガサービス452に提供され得る。これは、車両が移動していることをトリガし、トリガサービス452に、ライフサイクルサービス454を開始させることができる。
【0106】
ライフサイクルサービス454は、合成センサが動作を開始するべきであることを合成センサに示すための入力をランタイムモジュール464、474、および484に提供し得る。
【0107】
上で説明されるように、各合成センサ内では、種々のタスクモジュールが、洞察を提供するために、機械学習モジュールによって使用され得る。したがって、運転シナリオでは、挙動変更合成センサ460は、電気車両が目的地に到着するための走行距離を有しない場合、運転者挙動が、変更されるべきであること、または車両が、目的地に到着することに先立って再充電されるべきであることを示すために、勧告エンジン機械学習モジュール468からの洞察を提供し得る。同様に、運転者識別子機械学習モジュール477は、車両の運転者の画像を捕捉し、次いで、画像を処理し、運転者を識別するためにカメラデータを利用し、したがって、運転者プロファイルおよび選好を利用し得る。例えば、運転者プロファイルおよび選好は、運転者が、通常、どのように運転するかを示し得、これは、車両の走行距離に影響を及ぼし得る。
【0108】
特徴変更合成センサは、車両内でアクティブである特徴を用いて、他の選択肢の中でもとりわけ、HVACシステムがオンであるかどうか、座席保温器がオンであるかどうか、車両の窓が開放されているか、または閉鎖されているか等を精査し得、車両の走行距離を増加させるために、または改良するために、特徴を有効または無効にするための勧告を提供し得る。
【0109】
合成センサの各々からの洞察は、洞察ブローカ492に提供され得、それは、次いで、ブリッジ496を使用して、走行距離アプリケーション497、特に、ユーザインターフェース498と相互作用し得る。したがって、例えば、走行距離が所定の閾値内にある場合、UIは、いずれの勧告も表示しないこともある。しかしながら、目的地と比較される走行距離が、ある走行距離内にある場合、他の選択肢の中でもとりわけ、勧告された運転挙動、特徴の有効化または無効化、または車両を充電するための随意の停止等の種々の選択肢が、ユーザに提供され得る。
【0110】
洞察ブローカ492は、トリガサービス452に戻るように入力をさらに提供し、それによって、プレイバックのためのループを生成し得る。例えば、変更している運転者が検出される場合、これは、ライフサイクルサービスをトリガし、特徴変更合成センサおよび挙動変更合成センサがそのような合成センサからの洞察を再評価することを有効にし得る。
【0111】
図4の実施形態は、ユーザインターフェース上の走行距離アプリケーションおよびそのような走行距離アプリケーション上で勧告を提供するために使用される、複数の合成センサを示すが、これは、単に、例証目的のために提供される。他の実施形態において、他のタスクが、実世界のものであるか、シミュレートされたものであるかどうかにかかわらず、異なる合成センサおよび異なるセンサを使用する異なるデータ入力を使用することもできる。
【0112】
(プロトタイピング)
【0113】
上で示されるように、図2、3、または4の実施形態は、合成センサの迅速なプロトタイピングのために使用され得る。したがって、合成センサの開発者は、そのような合成センサをコンピューティングデバイス430等のコンピューティングデバイスの中に容易にプラグインし得る。データソースが、実世界センサから、またはシミュレートされたセンサから生成され得る。プレイバックツール433が、軽量かつ適応性がある様式において、合成センサに関するセンサデータの使用を可能にするために生成され得る。
【0114】
具体的に、開発者は、いくつかの実施形態において、抽象化層を生成することによって、または既存の抽象化層を使用することによってのいずれかで抽象化層を利用し得る。しかしながら、他の場合、プレイバックツール433等のプレイバックツールが、特定のセンサから合成センサが予期しているフォーマットへのデータ変換のために使用され得る。この場合、開発者は、単に、EV OpenXCモジュール434等のモジュールを生成することを必要とし、それは、特定のタイプのデータのために使用され、したがって、データを合成センサに迅速に提供するためのシミュレータ434に対する軽量なアドオンであり得る。
【0115】
合成センサを試験するための初期状態は、初期データ414を使用して設定され得る。初期状態は、車両設定を含み得るが、いくつかの実施形態において、車両環境も含むことができる。例えば、車両が、レーストラック対市道対高速道路上を走っていた場合、それは、性能に影響を及ぼし、初期データ414内で設定され得る。
【0116】
一実施形態において、プレイバックツールは、データフローを開始するために、開発者によって初期化またはトリガされ得、ライフサイクルサービスは、シミュレーションのライフサイクルを調整するために使用され得る。いくつかの実施形態において、一時停止状態が、プレイバックが一時停止されることを可能にするために、プレイバックツール内に存在し得る。これは、例えば、いくつかの状況では、デバッギングのために使用され得る。ある場合、停止状態は、全てのデータが実行される前にプレイバックツールにおいてプレイバックを完全に終了させ得る。
【0117】
なおもさらなる場合、開始状態は、プレイバックがデータストリーム内のある点において開始されることを可能にし得る。
【0118】
いくつかの実施形態において、プレイバックツール内のカムオーバーパラメータは、例えば、容易にアクセス可能な変数、ユーザインターフェース、または他のそのようなパラメータを変更する手段を使用することによって、カムオンに容易に調節され、それによって、プロトタイピングが生じている種々の合成センサの性能を最適化し得る。
【0119】
他の実施形態において、プロトタイピングは、合成センサではなく、または合成センサに加えて、車両上のアプリケーションまたはユーザインターフェースのためにあり得る。この場合、種々のセンサの使用が、再び、プレイバックツール433を利用して、データを種々の合成センサに提供するために迅速に適合され得る。この場合、出力またはユーザインターフェース498は、監視され得、シミュレーションが、プレイバックツール内の一時停止特徴を利用して、開始または停止され得る。
【0120】
(実証)
【0121】
さらなる場合、図2-4の実施形態は、使用対象者向けプレゼンテーションを提供するために利用され得る。具体的に、クライアント、利害関係者、開発者、または他者に車両システムの特徴を実証するために、実証が、そのようなシステムの使用に関して提供される必要があり得る。例えば、プレイバックが、車旅のために提供され得、車旅において、車両の中に乗り込む特定の運転者が、識別され、車両内で有効にされる特徴を考慮して、運転者挙動および過去の運転履歴に基づく走行距離値が、生成され得、走行距離アプリケーションユーザインターフェース498の出力が、使用対象者に示され得る。これは、運転者の識別と、出力されている走行距離にそれがどのように影響を及ぼすかとを示し得る。
【0122】
交通量、低温、または車両の走行距離に影響を及ぼし得る他の因子等の障害が、データスクリプトファイル内に導入され得、これは、次いで、挙動に関する変更および勧告、または特徴を有効または無効にするための勧告につながり得、それらは、提示のために、使用対象者にUI上で示され得る。
【0123】
一時停止または停止特徴は、提示者が、他の選択肢の中でもとりわけ、強調するために、質問に答えるために、プレイバックツール内のスクリプトの使用を通して、例えば、データフローを停止することによって、提示者が、一時停止または停止することを可能にし得る。
【0124】
図2-4の実施形態は、したがって、合成センサの開発および試験のためのコンピューティングシステム内でのセンサデータのプレイバックを提供する。安全上の理由のために、プレイバックは、車両自体上ではなく、コンピューティングデバイス上で行われる。プレイバックは、開始および停止されることができる。プレイバックは、データソースを通して、実世界データをさらに取り扱うことができる。
【0125】
他の選択肢の中でもとりわけ、OpenXCシミュレータ、OpenCVシミュレータ、直接データ等のプレイバックのための複数のフォーマットが、図2-4の実施形態において提供され得る。
【0126】
いくつかの実施形態において、プレイバックツールは、実世界車両上に存在し、特定のセンサに関する抽象化層がまだ書き込まれていない場合、データ変換器として使用されることができる。
【0127】
プレイバックツールは、いくつかの実施形態において、他の選択肢の中でもとりわけ、レーストラック対道路等、車両が置かれている環境を考慮に入れるように拡張され得る。
【0128】
コンピューティングデバイスに関する一例示的方法が、図5に関して示されている。特に、図5のプロセスは、ブロック510において開始し、ブロック520に進み、ブロック520において、コンピューティングデバイスは、随意に、種々の初期化パラメータを用いて、合成センサを初期化し得る。初期化パラメータは、例えば、コンピューティングデバイス上の種々の特徴に関する初期設定を定義し得る。
【0129】
ブロック520から、プロセスは、ブロック530に進み、ブロック530において、コンピューティングデバイスは、センサデータを受信し得る。特に、センサデータの受信は、他の選択肢の中でもとりわけ、コンピューティングデバイス上の通信サブシステムを通して異なるコンピュータから、コンピューティングデバイス自体内のデータベースから、コンピューティングデバイスに有線接続されるかまたは無線で接続されるセンサからであり得る。
【0130】
ブロック530から、プロセスは、ブロック540に進み、ブロック540において、プレイバックツールは、センサデータを変換し得る。例えば、変換は、データのサンプリングレートを合成センサのために予期されるサンプリングレートに調整するためであり得る。他の実施形態において、変換は、センサデータのデータフォーマットを合成センサによって予期されるデータフォーマットに変更することを含み得る。他の実施形態において、変換は、データタイプを変更することを含み得る。例えば、画像ファイルが、数学的マトリクスに変換され得る。他の実施形態において、センサデータの変換は、センサデータを合成センサによって予期されるレベルに正規化することを含み得る。他の実施形態において、変換は、上記のうちの1つ以上を含み得る。
【0131】
ブロック540から、センサデータが変換されたデータフォーマットに変換されると、変換されたデータは、次いで、ブロック550において、コンピューティングデバイス上の少なくとも1つの合成センサに提供される。
【0132】
本プロセスは、次いで、ブロック550からブロック530に戻って進み、プレイバックが終了されるまで、センサデータを受信することを続け得る。
【0133】
随意に、変換されたデータがユーザがデータフローを再開するまで合成センサに提供されない一時停止機能560が、存在し得る。さらに、ルートの中間点からプレイバックを再開する、またはプレイバックを開始するための開始機能等の他の機能が、存在し得る。ある場合、停止機能は、全てのデータがプレイバックされる前にプレイバックを停止するために使用されることができる。プレイバックツールを使用する機能に関する他の選択肢も、さらに可能である。
【0134】
随意の実施形態において、この合成センサが、変換されたデータを提供されると、それは、次いで、コンピューティングデバイスのディスプレイに出力を提供するために使用される出力を提供し得る。
【0135】
上記のコンピューティングデバイス、プラットフォーム、電子制御ユニット、ノード、または他のコンピューティングシステムは、任意のコンピューティングデバイスを使用して実装され得る。コンピューティングデバイスの1つの簡略化された略図が、図6に関して示される。図6のコンピューティングデバイスは、任意の固定またはモバイルコンピューティングデバイスであり得る。
【0136】
図6では、デバイス610は、プロセッサ620と、通信サブシステム630とを含み、プロセッサ620および通信サブシステム630は、上で説明される実施形態の方法を実施するように協働する。通信サブシステム630は、デバイス610が他のデバイスまたはネットワーク要素と通信することを可能にし、実施される通信のタイプに基づいて、変動し得る。さらに、通信サブシステム630は、任意の有線または無線通信技術を含む複数の通信技術を備え得る。
【0137】
プロセッサ620は、プログラマブル論理を実行するように構成され、プログラマブル論理は、デバイス610上にデータとともに記憶され、メモリ632として図6の例に示され得る。メモリ632は、プロセッサ620によって実行されると、デバイス610に、本開示の方法を実施させる命令コードを記憶する任意の有形非一過性コンピュータ読み取り可能な記憶媒体であり得る。コンピュータ読み取り可能な記憶媒体は、光学(例えば、CD、DVD等)、磁気(例えば、テープ)、フラッシュドライブ、ハードドライブ、または当技術分野で公知の他のメモリ等の有形または一過性/非一過性媒体であり得る。
【0138】
代替として、またはメモリ632に加えて、デバイス610は、例えば、通信サブシステム630を通して、外部記憶媒体からデータまたはプログラマブル論理にアクセスし得る。
【0139】
図6の例では、1つ以上のセンサ640が、コンピューティングデバイスに関連付けられ得る。しかしながら、これは、随意であり、ある場合、コンピューティングデバイス610は、センサに関連付けられていないであろう。
【0140】
デバイス610の種々の要素間の通信は、一実施形態において、内部バス660を通してであり得る。しかしながら、他の形態の通信も、可能である。
【0141】
本明細書に説明される実施形態は、本願の技法の要素に対応する要素を有する構造、システム、または方法の例である。記載される説明は、当業者が、本願の技法の要素に同様に対応する代替要素を有する実施形態を作製および使用することを可能にし得る。本願の技法の意図される範囲は、したがって、本明細書に説明されるような本願の技法と異ならない他の構造、システム、または方法を含み、さらに、本明細書に説明されるような本願の技法との非実質的な差異を伴う他の構造、システム、または方法を含む。
【0142】
動作が、特定の順序において図面に描写されるが、それは、望ましい結果を達成するために、そのような動作が示される特定の順序において、または順次的順序において実施されること、または全ての図示される動作が実施されることを要求するものとして理解されるべきではない。ある状況では、マルチタスクおよび並列処理が、採用され得る。さらに、上で説明される実装における種々のシステムコンポーネントの分離は、全ての実装においてそのような分離を要求するものとして理解されるべきではなく、説明されるプログラムコンポーネントおよびシステムが、概して、単一のソフトウェア製品内にともに統合され得ること、または複数のソフトウェア製品の中にパッケージ化され得ることを理解されたい。
【0143】
別々または別個のものとして種々の実装において説明および例証される技法、システム、サブシステム、および方法は、他のシステム、モジュール、技法、または方法と組み合わせられ、または統合され得る。互いに結合される、または直接結合される、または通信するものとして示される、または議論される他のアイテムは、電気的、機械的、またはその他にかかわらず、あるインターフェース、デバイス、または中間コンポーネントを通して間接的に結合される、または通信し得る。変更、代用、および改変の他の例が、当業者によって確認可能であり、行われ得る。
【0144】
上記の詳細な説明は、種々の実装に適用されるような本開示の基本的な新規の特徴を示し、説明し、指摘したが、例証されるシステムの形態および詳細における種々の省略、代用、および変更が、当業者によって行われ得ることが理解されるであろう。加えて、方法ステップの順序は、それらが請求書に現れる順序によって含意されない。
【0145】
メッセージが、電子デバイスに/から送信されるとき、そのような動作は、サーバの直近ではない、またはサーバから直接ではないこともある。それらは、本明細書に説明されるデバイス/方法/システムをサポートするサーバまたは他のコンピューティングシステムインフラストラクチャから、同期的または非同期的に配信され得る。前述のステップは、全体的または部分的に、デバイス/インフラストラクチャへの/からの同期/非同期通信を含み得る。また、電子デバイスからの通信は、ネットワーク上の1つ以上のエンドポイントへのものであり得る。これらのエンドポイントは、サーバ、分散コンピューティングシステム、ストリームプロセッサ等によって提供され得る。コンテンツ配信ネットワーク(CDN)も、通信を電子デバイスに提供し得る。例えば、典型的なサーバ応答ではなく、サーバはまた、電子デバイスの後続アクティビティ等、後での電子デバイスによるダウンロードを待機するために、コンテンツ配信ネットワーク(CDN)のためのデータをプロビジョニングする、または示し得る。したがって、データは、システムの一部として、またはそれとは別個に、サーバ、または分散インフラストラクチャ等の他のインフラストラクチャ、またはCDNから直接送信され得る。
【0146】
典型的に、記憶媒体は、以下のもの、すなわち、ダイナミックまたはスタティックランダムアクセスメモリ(DRAMまたはSRAM)、消去可能およびプログラマブル読み取り専用メモリ(EPROM)、電気的消去可能およびプログラマブル読み取り専用メモリ(EEPROM)、およびフラッシュメモリ等の半導体メモリデバイス、固定、フロッピー(登録商標)、およびリムーバブルディスク等の磁気ディスク、テープを含む別の磁気媒体、コンパクトディスク(CD)またはデジタルビデオディスク(DVD)等の光学媒体、または別のタイプの記憶デバイスのうちのいずれかまたはある組み合わせを含むことができる。上で議論される命令が、1つのコンピュータ読み取り可能なまたは機械読み取り可能な記憶媒体上で提供され得るか、または、代替として、可能性として複数のノードを有する大規模システム内に分散される複数のコンピュータ読み取り可能なまたは機械読み取り可能な記憶媒体上で提供され得ることに留意されたい。そのようなコンピュータ読み取り可能なまたは機械読み取り可能な記憶媒体または複数の媒体は、物品(または製造品)の一部であると見なされる。物品または製造品は、任意の製造される単一のコンポーネントまたは複数のコンポーネントを指し得る。記憶媒体または複数の媒体は、機械読み取り可能な命令を実行する機械内に位置するか、またはそれから機械読み取り可能な命令が実行のためにネットワークを経由してダウンロードされ得る遠隔地点に位置するかのいずれかであり得る。
【0147】
前述の説明では、多数の詳細が、本明細書に開示される主題の理解を提供するために記載される。しかしながら、実装は、これらの詳細のうちのいくつかを伴わずに実践され得る。他の実装は、上で議論される詳細からの修正および変形例を含み得る。添付される請求項は、そのような修正および変形例を網羅することを意図している。
図1
図2
図3
図4
図5
図6
【国際調査報告】