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

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

▶ 阿波▲羅▼智▲聯▼(北京)科技有限公司の特許一覧

特許7331178シャーシシミュレーション方法、装置、サーバ、記憶媒体及びプログラム
<>
  • 特許-シャーシシミュレーション方法、装置、サーバ、記憶媒体及びプログラム 図1
  • 特許-シャーシシミュレーション方法、装置、サーバ、記憶媒体及びプログラム 図2
  • 特許-シャーシシミュレーション方法、装置、サーバ、記憶媒体及びプログラム 図3
  • 特許-シャーシシミュレーション方法、装置、サーバ、記憶媒体及びプログラム 図4
  • 特許-シャーシシミュレーション方法、装置、サーバ、記憶媒体及びプログラム 図5
  • 特許-シャーシシミュレーション方法、装置、サーバ、記憶媒体及びプログラム 図6
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-08-14
(45)【発行日】2023-08-22
(54)【発明の名称】シャーシシミュレーション方法、装置、サーバ、記憶媒体及びプログラム
(51)【国際特許分類】
   G06F 11/34 20060101AFI20230815BHJP
   G06F 11/26 20060101ALI20230815BHJP
   G06F 11/36 20060101ALI20230815BHJP
   G01M 17/007 20060101ALI20230815BHJP
【FI】
G06F11/34 157
G06F11/26 610
G06F11/36 196
G01M17/007 D
【請求項の数】 11
(21)【出願番号】P 2022023349
(22)【出願日】2022-02-18
(65)【公開番号】P2022065121
(43)【公開日】2022-04-26
【審査請求日】2022-02-18
(31)【優先権主張番号】202110480902.X
(32)【優先日】2021-04-30
(33)【優先権主張国・地域又は機関】CN
(73)【特許権者】
【識別番号】521208273
【氏名又は名称】阿波▲羅▼智▲聯▼(北京)科技有限公司
【氏名又は名称原語表記】APOLLO INTELLIGENT CONNECTIVITY(BEIJING)TECHNOLOGY CO.,LTD.
【住所又は居所原語表記】101, 1st Floor, Building 1, Yard 7, Ruihe West 2nd Road, Beijing Economic and Technological Development Zone, Beijing 100176, China
(74)【代理人】
【識別番号】100106297
【弁理士】
【氏名又は名称】伊藤 克博
(72)【発明者】
【氏名】マ、 ジ
【審査官】山本 俊介
(56)【参考文献】
【文献】特開2015-123748(JP,A)
【文献】特開2018-081400(JP,A)
【文献】特開2019-174874(JP,A)
【文献】特開2008-084121(JP,A)
【文献】中国特許出願公開第112684423(CN,A)
【文献】馬路 徹,第3回 Deep Learningの自動運転への応用,シミュレーション,日本,一般社団法人日本シミュレーション学会,2018年12月15日,第37巻 第4号,pp.48-54
(58)【調査した分野】(Int.Cl.,DB名)
G06F 11/34
G06F 11/26
G06F 11/36
G01M 17/007
(57)【特許請求の範囲】
【請求項1】
ハードウェアインタフェースを介して自動運転ユニットに接続されたサーバに適用されるシャーシシミュレーション方法であって、
前記自動運転ユニットが送信したシャーシ制御メッセージを取得し、かつ故障注入情報を取得するステップと、
前記シャーシ制御メッセージ及び前記故障注入情報に基づいて前記シャーシ制御メッセージに対応するシャーシ状態のシミュレーション情報を生成するステップと、
前記シャーシ状態のシミュレーション情報を前記自動運転ユニットに送信するステップと、を含
前記シャーシ制御メッセージ及び前記故障注入情報に基づいて前記シャーシ制御メッセージに対応するシャーシ状態のシミュレーション情報を生成するステップは、
前記故障注入情報に基づいて、前記シャーシ制御メッセージ及び/又は前記シャーシ制御メッセージに対応するシャーシシミュレーション結果に対して故障注入を行い、前記シャーシ状態シミュレーション情報を得るステップであって、前記シャーシシミュレーション結果は前記シャーシ制御メッセージ及び車両動力学モデルに基づいて決定されるステップを含み、
前記シャーシ制御メッセージ及び/又は前記シャーシ制御メッセージに対応するシャーシシミュレーション結果に対して故障注入を行うステップは、
前記シャーシ制御メッセージの第1ターゲットフィールド及び/又は前記シャーシ制御メッセージに対応するシャーシシミュレーション結果の第2ターゲットフィールドの内容を修正するステップ、及び/又は、
前記シャーシ制御メッセージ及び/又は前記シャーシ制御メッセージに対応するシャーシシミュレーション結果の伝送タイムフレームを修正するステップ、
を含む、
シャーシシミュレーション方法。
【請求項2】
記シャーシ制御メッセージに対して故障注入を行い、前記シャーシ状態シミュレーション情報を得るステップは、
前記シャーシ制御メッセージを復号するステップをさらに含み
前記シャーシ制御メッセージの第1ターゲットフィールドの内容を修正するステップは、復号された前記シャーシ制御メッセージの第1ターゲットフィールドの内容を修正し、第1制御情報を得るステップを含み
前記シャーシ制御メッセージの伝送タイムフレームを修正するステップは、復号された前記シャーシ制御メッセージの伝送タイムフレームを修正し、第1制御情報を得るステップを含み、
前記シャーシ制御メッセージに対して故障注入を行うステップは、
前記第1制御情報を車両動力学モデルに入力し、シャーシシミュレーション結果を得るステップと、
前記シャーシシミュレーション結果を符号化して前記シャーシ状態シミュレーション情報を得るステップと、をさらに含む、
請求項に記載の方法。
【請求項3】
前記シャーシ制御メッセージに対応するシャーシシミュレーション結果に対して故障注入を行い、前記シャーシ状態シミュレーション情報を得るステップは、
前記シャーシ制御メッセージを復号し、第2制御情報を得るステップと、
前記第2制御情報を車両動力学モデルに入力し、シャーシシミュレーション結果を得るステップをさらに含み
前記シャーシ制御メッセージに対応するシャーシシミュレーション結果の第2ターゲットフィールドの内容を修正するステップは、前記第2制御情報に対応するシャーシシミュレーション結果の第2ターゲットフィールドの内容を修正するステップを含み、
前記シャーシ制御メッセージに対応するシャーシシミュレーション結果の伝送タイムフレームを修正するステップは、前記第2制御情報に対応するシャーシシミュレーション結果の伝送タイムフレームを修正するステップを含み、
前記シャーシ制御メッセージに対応するシャーシシミュレーション結果に対して故障注入を行い、前記シャーシ状態シミュレーション情報を得るステップは、
修正された後の前記シャーシシミュレーション結果を符号化して前記シャーシ状態のシミュレーション情報を得るステップと、をさらに含む、
請求項に記載の方法。
【請求項4】
前記シャーシ制御メッセージに対応するシャーシシミュレーション結果に対して故障注入を行い、前記シャーシ状態シミュレーション情報を得るステップは、
前記シャーシ制御メッセージを復号し、第3制御情報を得るステップと、
前記第3制御情報を車両動力学モデルに入力し、シャーシシミュレーション結果を得るステップと、
前記シャーシシミュレーション結果を符号化し、符号化された前記シャーシシミュレーション結果を得るステップをさらに含み
前記シャーシ制御メッセージに対応するシャーシシミュレーション結果の第2ターゲットフィールドの内容を修正するステップは、符号化された前記シャーシシミュレーション結果の第2ターゲットフィールドの内容を修正し、前記シャーシ状態のシミュレーション情報を得るステップを含み、
前記シャーシ制御メッセージに対応するシャーシシミュレーション結果の伝送タイムフレームを修正するステップは、符号化された前記シャーシシミュレーション結果の伝送タイムフレームを修正し、前記シャーシ状態のシミュレーション情報を得るステッを含む、
請求項に記載の方法。
【請求項5】
ハードウェアインタフェースを介して自動運転ユニットに接続されたサーバに適用されるシャーシシミュレーション装置であって、
前記自動運転ユニットが送信したシャーシ制御メッセージを取得し、かつ故障注入情報を取得するための取得モジュールと、
前記シャーシ制御メッセージ及び前記故障注入情報に基づいて前記シャーシ制御メッセージに対応するシャーシ状態のシミュレーション情報を生成するためのシミュレーションモジュールと、
前記シャーシ状態のシミュレーション情報を前記自動運転ユニットに送信するための送信モジュールと、を含
前記シミュレーションモジュールは、
前記故障注入情報に基づいて、前記シャーシ制御メッセージ及び/又は前記シャーシ制御メッセージに対応するシャーシシミュレーション結果に対して故障注入を行い、前記シャーシ状態シミュレーション情報を得るためのシミュレーションユニットであって、前記シャーシシミュレーション結果は前記シャーシ制御メッセージ及び車両動力学モデルに基づいて決定されるシミュレーションユニットを含み、
前記シミュレーションユニットは、
前記シャーシ制御メッセージの第1ターゲットフィールド及び/又は前記シャーシ制御メッセージに対応するシャーシシミュレーション結果の第2ターゲットフィールドの内容を修正するための第1修正ユニットを含み、及び/又は、
前記シャーシ制御メッセージ及び/又は前記シャーシ制御メッセージに対応するシャーシシミュレーション結果の伝送タイムフレームを修正するための第2修正ユニットを含む、
シャーシシミュレーション装置。
【請求項6】
前記シミュレーションユニットは、
前記シャーシ制御メッセージを復号するための第1復号ユニットをさらに含み
前記第1修正ユニットは、復号された前記シャーシ制御メッセージの第1ターゲットフィールドの内容を修正し、第1制御情報を得るために用いられ
前記第2修正ユニットは、復号された前記シャーシ制御メッセージの伝送タイムフレームを修正し、第1制御情報を得るために用いられ、
前記シミュレーションユニットは、
前記第1制御情報を車両動力学モデルに入力し、シャーシシミュレーション結果を得るための第1シミュレーションユニットと、
前記シャーシシミュレーション結果を符号化して前記シャーシ状態シミュレーション情報を得るための第1符号化ユニットと、をさらに含む、
請求項に記載の装置。
【請求項7】
前記シミュレーションユニットは、
前記シャーシ制御メッセージを復号し、第2制御情報を得るための第2復号ユニットと、
前記第2制御情報を車両動力学モデルに入力し、シャーシシミュレーション結果を得るための第2シミュレーションユニットをさらに含み
前記第1修正ユニットは、前記第2制御情報に対応するシャーシシミュレーション結果の第2ターゲットフィールドの内容を修正するために用いられ、
前記第2修正ユニットは、前記第2制御情報に対応するシャーシシミュレーション結果の伝送タイムフレームを修正するために用いられ、
前記シミュレーションユニットは、
修正された後の前記シャーシシミュレーション結果を符号化して前記シャーシ状態のシミュレーション情報を得るための第2符号化ユニットと、をさらに含む、
請求項に記載の装置。
【請求項8】
前記シミュレーションユニットは、
前記シャーシ制御メッセージを復号し、第3制御情報を得るための第3復号ユニットと、
前記第3制御情報を車両動力学モデルに入力し、シャーシシミュレーション結果を得るための第3シミュレーションユニットと、
前記シャーシシミュレーション結果を符号化し、符号化された前記シャーシシミュレーション結果を得るための第3符号化ユニットをさらに含み
前記第1修正ユニットは、符号化された前記シャーシシミュレーション結果の第2ターゲットフィールドの内容を修正し、前記シャーシ状態のシミュレーション情報を得るために用いられ、
前記第2修正ユニットは、符号化された前記シャーシシミュレーション結果の伝送タイムフレームを修正し、前記シャーシ状態のシミュレーション情報を得るために用いられる、
請求項に記載の装置。
【請求項9】
サーバであって、
少なくとも1つのプロセッサと、前記少なくとも1つのプロセッサに通信可能に接続されたメモリと、を含み、
前記メモリは、前記少なくとも1つのプロセッサによって実行可能な命令を記憶し、前記命令は、前記少なくとも1つのプロセッサが請求項1~のいずれか一項に記載の方法を実行できるように、前記少なくとも1つのプロセッサによって実行される、
サーバ。
【請求項10】
コンピュータに請求項1~のいずれか一項に記載の方法を実行させるためのコンピュータ命令を記憶した非一時的なコンピュータ読み取り可能な記憶媒体。
【請求項11】
プロセッサによって実行されるときに請求項1~のいずれか一項に記載の方法を実現するコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本開示の実施例は、人工知能技術に関し、特に、インテリジェント交通分野で有用なシャーシシミュレーション方法、装置、サーバ、記憶媒体及びプログラムに関する。
【背景技術】
【0002】
自動運転車両では、自動運転ユニットは、車両シャーシに制御命令を送信して、アクセル、ブレーキ、ステアリングなどの車両の様々な運転操作を制御し、また自動運転ユニットは、車両シャーシからフィードバックされたシャーシ状態情報を受信し、さらにシャーシ状態情報に基づいて後続の制御を行う。
【0003】
自動運転ユニットのテストを行う場合、テストシーンでは通常、実際の車両シャーシを用いてテストを行う条件がないため、通常は自動運転ユニットに1つのmock対象を配備して車両シャーシをシミュレーションし、自動運転ユニットが制御命令を送信し、mock対象が、車両シャーシが制御命令を100%実行した後のシャーシ状態情報を直接出力し、自動運転ユニットがシャーシ状態情報を受信した後に制御アルゴリズムを効果的に実行するようにトリガーでき、ソフトウェアレベルの閉ループテストを実現する。
【0004】
しかし、この技術案では実際に完全に理想的な状態にある車両シャーシをシミュレーションしているため、実際のシーンと違いがあり、その結果、テストは信頼性に欠ける。
【発明の概要】
【発明が解決しようとする課題】
【0005】
本開示は、テストの信頼性を向上させるためのシャーシシミュレーション方法、装置、サーバ、記憶媒体及びプログラムを提供する。
【課題を解決するための手段】
【0006】
本開示の一態様によれば、ハードウェアインタフェースを介して自動運転ユニットに接続されたサーバに適用されるシャーシシミュレーション方法を提供し、前記方法は、
前記自動運転ユニットが送信したシャーシ制御メッセージを取得し、かつ故障注入情報を取得するステップと、
前記シャーシ制御メッセージ及び前記故障注入情報に基づいて前記シャーシ制御メッセージに対応するシャーシ状態のシミュレーション情報を生成するステップと、
前記シャーシ状態のシミュレーション情報を前記自動運転ユニットに送信するステップと、を含む。
【0007】
本開示の別の態様によれば、シャーシシミュレーション装置を提供し、前記装置は、
前記自動運転ユニットが送信したシャーシ制御メッセージを取得し、かつ故障注入情報を取得するための取得モジュールと、
前記シャーシ制御メッセージ及び前記故障注入情報に基づいて前記シャーシ制御メッセージに対応するシャーシ状態のシミュレーション情報を生成するためのシミュレーションモジュールと、
前記シャーシ状態のシミュレーション情報を前記自動運転ユニットに送信するための送信モジュールと、を含む。
【0008】
本開示のさらに別の態様によれば、サーバを提供し、前記サーバは、
少なくとも1つのプロセッサと、前記少なくとも1つのプロセッサに通信可能に接続されたメモリと、を含み、ここで、前記メモリは、前記少なくとも1つのプロセッサによって実行可能な命令を記憶し、前記命令は、前記少なくとも1つのプロセッサが上記第1の態様に記載の方法を実行できるように、前記少なくとも1つのプロセッサによって実行される。
【0009】
本開示のさらに別の態様によれば、コンピュータに上記第1の態様に記載の方法を実行させるためのコンピュータ命令を記憶した非一時的なコンピュータ読み取り可能な記憶媒体を提供する。
【0010】
本開示のさらに別の態様によれば、読み取り可能な記憶媒体に記憶されたコンピュータプログラムを提供し、電子機器の少なくとも1つのプロセッサは前記読み取り可能な記憶媒体から前記コンピュータプログラムを読み取ることができ、前記少なくとも1つのプロセッサは電子機器が第1態様に記載の方法を実行するように、前記コンピュータプログラムを実行する。
【発明の効果】
【0011】
本開示の技術案によれば、ハードウェアインザループに基づくシャーシシミュレーション方式を実現し、テストの信頼性を向上させる。
【0012】
このセクションに記載された内容は、本開示の実施例の主要な特徴又は重要な特徴を特定することを意図しておらず、本開示の範囲を限定するものでもないことを理解されたい。本開示の他の特徴は、以下の明細書によって容易に理解されるであろう。
【図面の簡単な説明】
【0013】
図面は、本技術案をよりよく理解するためのものであり、本開示を限定するものではない。
図1】本願の実施例によるシャーシシミュレーション方法のフローチャートである。
図2】本開示の実施例による仮想シャーシ及び自動運転ユニットの機能モジュールの概略図である。
図3】本開示の実施例によるデータフローチャートである。
図4】本開示の実施例によるスレッド概略図である。
図5】本開示の実施例によるシャーシシミュレーション装置の概略構成図である。
図6】本開示の実施例のシャーシシミュレーション方法を実現するための電子機器の概略ブロック図である。
【発明を実施するための形態】
【0014】
以下、添付の図面を組み合わせ、本開示の例示的な実施例を説明し、理解を容易にするために本開示の実施例の様々な詳細を含むが、それらは単に例示的なものとみなされるべきである。したがって、当業者は、本開示の範囲及び精神から逸脱することなく、本明細書に記載された実施例に対して様々な変更及び修正を行うことができることを認識するであろう。同様に、明確化及び簡潔化のために、以下の説明では、周知の機能及び構成についての記載は省略される。
【0015】
自動運転ユニットは、自動運転車両の意思決定制御システムであり、自動運転車両のコアモジュールであり、自動運転ユニットは、感知、測位、車両シャーシからフィードバックされたシャーシ状態情報を取得して車両に制御命令を出力することで、アクセル、ブレーキ、ステアリングなどの車両の様々な運転操作を制御し、車両シャーシは、制御命令に基づいて対応する操作を実行し、かつ自動運転ユニットにシャーシ状態情報、例えばアクセル実行フィードバック、ブレーキ実行フィードバック、ステアリング実行フィードバック、車両のホイールベース、トルク、姿勢などの情報をフィードバックすることで、自動運転ユニットはシャーシ状態情報に基づいて制御アルゴリズムをトリガーして対応する処理を行った後、後続の制御命令を出力する。
【0016】
自動運転ユニットのテストを行う場合、テストシーンでは通常、実際の車両シャーシを用いてテストを行う条件がないため、通常は自動運転ユニットに1つのmock対象を配備して車両シャーシをシミュレーションし、自動運転ユニットが制御命令を送信し、mock対象が、車両シャーシが制御命令を100%実行した後のシャーシ状態情報を直接出力する。例えば制御命令においてアクセル開閉パラメータが20%であることが指示されると、mock対象はアクセル実行フィードバック20%に戻る。自動運転ユニットがシャーシ状態情報を受信した後に制御アルゴリズムを効果的に実行するようにトリガーでき、ソフトウェアレベルの閉ループテストを実現する。
【0017】
この技術案は、複数の問題点を有するソフトウェアインザループテストを完璧に制御する技術案であり、一方では、mock対象が自動運転ユニット上に配備され、つまりmock対象が被テスト対象に介入し、それによってテストに干渉することになり、他方では、この技術案は、完全に理想的な状態にある車両シャーシをシミュレーションし、かつ自動運転ユニットとmock対象とが純粋なソフトウェアインタラクションであり、実際のシーンと違いがあり、その結果、テストの信頼性に欠ける。
【0018】
上記技術案と比較して、いくつかの改良された技術案では、mock対象の代わりに車両シャーシシミュレーションソフトウェアを採用し、即ち自動運転ユニットに車両シャーシシミュレーションソフトウェアを配備し、自動運転ユニットが制御命令を入力し、車両シャーシシミュレーションソフトウェアが計算によってシャーシ状態のシミュレーション情報を出力し、自動運転ユニットはシャーシ状態情報を受信した後に制御アルゴリズムを効果的に実行するようにトリガーでき、ソフトウェアレベルの閉ループテストを実現する。しかしながら、この技術案にも上記の問題の一部が残っており、一方では、車両シャーシシミュレーションソフトウェアが依然として自動運転ユニット上に配備され、つまり車両シャーシシミュレーションソフトウェアが被テスト対象に介入するため、依然としてテストに干渉することになり、他方では、この技術案では、車両シャーシシミュレーションソフトウェアはシミュレーション計算の方法を採用してシャーシ状態のシミュレーション情報を出力するが、自動運転ユニットと車両シャーシシミュレーションソフトウェアとは依然として純粋なソフトウェアインタラクションであり、実際のシーンとの違いが依然としてあり、ハードウェアインタフェースインタラクションがないため、テスト時に自動運転ユニットに対するロジック処理を全面的にカバーできず、テストも依然として信頼性に欠ける。
【0019】
よりリアルなテストを実現するために、自動運転ユニットに対してハードウェアインザループ(HIL)テストを採用する必要があり、HILテストは本物のコントローラを、ハードウェアインタフェースを介して偽の被制御対象に接続することで(偽の被制御対象はリアルタイムシミュレーションハードウェアでシミュレーションする)、コントローラに対する全面的でリアルなテストを実現する。自動運転車両に対するHILテストでは、被テスト対象は自動運転ユニットであり、リアルタイムシミュレーションハードウェアは車両シャーシ制御ユニットを含む必要があり、さらに必要な環境感知センサユニット及び測位感知センサユニットを含むこともできる。そこで、本開示の実施例は、まず、仮想シャーシと呼ばれる、ハードウェアインザループに基づく車両シャーシのリアルタイムシミュレーションハードウェアを提供し、自動運転ユニットはハードウェアインタフェースを介して仮想シャーシに接続され、当該ハードウェアインタフェースは実際の車両における自動運転ユニットとシャーシとのインタフェースと同じである。例示的には、当該仮想シャーシはサーバを介して実現されてもよい。自動運転ユニットは制御命令を出力し、当該メッセージはハードウェアインタフェースを介して仮想シャーシに伝送され、仮想シャーシは車両が制御命令を実行した後のシャーシ状態情報を計算し、さらにハードウェアインタフェースを介して自動運転ユニットにフィードバックすることで、閉ループを実現する。テストの信頼性を向上させるために、仮想シャーシのシミュレーションロジックに故障注入ロジックを追加し、即ち故障注入ロジックによってシャーシのソフトウェア及びハードウェア故障をシミュレーションでき、それによってテストが実際のシーンにより近いことを保証する。以下、当該仮想シャーシに基づくシャーシシミュレーション方法について説明する。
【0020】
図1は、本願の実施例によるシャーシシミュレーション方法のフローチャートである。当該方法は、ハードウェアインタフェースを介して自動運転ユニットに接続された前述の仮想シャーシであるサーバに適用される。当該方法は、S101~S103を含む。
【0021】
S101において、自動運転ユニットが送信したシャーシ制御メッセージを取得し、かつ故障注入情報を取得する。
【0022】
自動運転ユニットが送信したシャーシ制御メッセージは関連技術における自動運転ユニットの車両シャーシに対する任意の制御メッセージ、例えばアクセル制御メッセージ、ブレーキ制御メッセージ、ステアリング制御メッセージであってもよく、本開示の実施例はこれを限定しない。自動運転ユニットは仮想シャーシとの間のハードウェアインタフェースを介してシャーシ制御メッセージを仮想シャーシに送信する。
【0023】
故障注入情報は、仮想シャーシがシャーシ制御メッセージを取得した後、その後のシャーシ制御メッセージの処理中に、シミュレーションされた故障状況などを注入することを指示するために用いられる。例示的には、故障注入情報は、仮想シャーシに予め設定されている配置情報であってもよく、当該配置情報は、実際の状況に応じて設定されてもよく、例えばテストが必要な故障シーンなどに応じて設定されてもよい。
【0024】
S102において、シャーシ制御メッセージ及び故障注入情報に基づいてシャーシ制御メッセージに対応するシャーシ状態のシミュレーション情報を生成する。
【0025】
仮想シャーシは、シャーシ制御メッセージに基づいて対応するシャーシ状態のシミュレーション情報を生成し、例示的には、シャーシ制御メッセージにアクセル開閉パラメータが指示される場合、シャーシ状態のシミュレーション情報には対応するアクセル実行フィードバックが含まれる。本開示の実施例では、シャーシ制御メッセージに加えて、仮想シャーシは故障注入情報に合わせてシャーシ状態のシミュレーション情報を生成し、つまり仮想シャーシは生成されたシャーシ状態のシミュレーション情報の処理中に、生成されたシャーシ状態のシミュレーション情報が故障の注入されていない場合とは多少異なるように故障情報を注入することができる。
【0026】
なお、故障注入情報は、故障を注入しないこと、即ちシャーシ制御メッセージの処理中にシミュレーションされた故障状況を注入しないことを指示してもよく、それによってシャーシ制御メッセージを正常に処理し、故障がない場合のシャーシ状態のシミュレーション情報を出力する。
【0027】
S103において、シャーシ状態のシミュレーション情報を自動運転ユニットに送信する。
【0028】
仮想シャーシは、ハードウェアインタフェースを介してシャーシ状態のシミュレーション情報を自動運転ユニットに送信することで、自動運転ユニットはさらにシャーシ状態のシミュレーション情報に基づいて演算処理を行って後続の制御を行うことができる。
【0029】
本開示の実施例が提供するシャーシシミュレーション方法は、ハードウェアインザループに基づく仮想シャーシを採用し、自動運転ユニットと仮想シャーシとは実ハードウェアインタフェースを介してインタラクションし、かつ仮想シャーシなどはシャーシ制御メッセージ及び故障注入情報に基づいてシャーシ制御メッセージに対応するシャーシ状態のシミュレーション情報を生成することができ、それによって実ハードウェアインタフェースでのテストを実現し、かつ故障注入情報により、様々なソフトウェア及び/又はハードウェア故障シーンのテストを実現でき、自動運転ユニットの処理ロジックを全面的にカバーでき、テストの信頼性を向上させる。また、仮想シャーシと自動運転ユニットとが独立して設置されているため、即ちテスト対象と被テスト対象とを非結合にすることにより、テストの干渉を減らす。
【0030】
以下、仮想シャーシ及び自動運転ユニットの機能をさらに関連付けて説明する。仮想シャーシ及び自動運転ユニットの機能モジュールを図2に示し、仮想シャーシがサーバであり、即ち図に示すハードウェアインザループテストシミュレーションサーバであり、ハードウェアインザループテストシミュレーションサーバと自動運転ユニットとはコントローラエリアネットワーク(Controller Area Network、CAN)インタフェースを介して接続される。
【0031】
図2に例示されるように、ハードウェアインザループテストシミュレーションサーバ上の機能モジュールは、以下の3つの部分に分割されることができる。
【0032】
フィールドプログラマブルロジックゲートアレイ(Field Programmable Gate Array、FPGA)レジスタ:高速シリアルコンピュータ拡張バス規格(Peripheral Component Interconnect Express、PCIE)インタフェースを介してハードウェアインザループテストシミュレーションサーバに接続され、CANインタフェースを介して自動運転ユニットに接続され、自動運転ユニットが送信したCANメッセージを受信するために用いられ、また仮想シャーシアダプタユニット(Virtual Chassis Adapter)がフィードバックしたCANメッセージを受信して配置頻度に応じてそれをCANインタフェース信号に変換して自動運転ユニットに送信するために用いられる。
【0033】
Virtual Chassis Adapter:ソフトウェア形式で、ハードウェアインザループテストシミュレーションサーバ上で動作し、自動運転ユニットがCANインタフェースを介して送信したシャーシ制御メッセージを復号し、復号されたシャーシ制御メッセージを車両動力学モデルユニットに出力するために用いられ、また車両動力学モデルが出力したシャーシシミュレーション結果を取得するために用いられる。またVirtual Chassis Adapterはシャーシ制御メッセージ又はシャーシシミュレーション結果に対して故障注入制御を行い、シャーシシミュレーション結果をCANインタフェースプロトコルで符号化・カプセル化し、FPGAレジスタに送信するために用いられる。
【0034】
車両動力学モデルユニット:異なる車両動力学モデルプラグインを用いて、ソフトウェア形式で、ハードウェアインザループテストシミュレーションサーバ上で動作することができ、シャーシ制御メッセージ(アクセル、ブレーキ、ステアリング、シフトなど)に基づいて、内部モデルコードロジックにより計算した後、シャーシシミュレーション結果を出力するために用いられる。
【0035】
次に、図3に示す仮想シャーシと自動運転ユニットとの間の各ソフトウェアモジュールのデータフローチャートを参照して説明する。図3に示すように、自動運転ユニットには、
a、経路、速度などの意思決定計画の役割を担う計画サブモジュール(planning)と、
b、計画及び車両シャーシのフィードバックに合わせて、制御アルゴリズムを用いて制御命令を出力する役割を担う制御サブモジュール(control)と、
c、制御命令をCANバスフォーマットでカプセル化し、及び車両シャーシからフィードバックされたCANバスフォーマットメッセージを解析及び受信し、結果を制御及び計画サブモジュールにフィードバックする役割を担うCANバスプロキシ(CAN bus proxy)と、を含む。
仮想シャーシには、
d、CANインタフェースメッセージ受信及びプロトコル変換の役割を担い、各種CANメッセージタイプをサポートし、具体的には必要に応じて設定することができるFPGAと、
e、CANインタフェースメッセージを受信し、故障注入を解析及び受信して故障注入制御を行う役割を担う仮想シャーシ復号サブモジュール(Virtual Chassis Decode)と、
f、車両動力学モデルのシャーシシミュレーション結果を受信し、かつCANインタフェースメッセージにカプセル化し故障注入を受信して故障注入制御を行う役割を担う仮想シャーシ符号化サブモジュール(Virtual Chassis Encode)と、
g、配置に応じて故障注入をリアルタイムに行う役割を担う故障注入サブモジュール(fault injection)と、
h、シャーシ制御メッセージに基づいて内部モデルコードロジックにより計算した後、シャーシシミュレーション結果を出力する役割を担う車両動力学モデル(dynamic simulation)と、を含む。
上記のe、f、gの3つのサブモジュールは前述したVirtual Chassis Adapterを構成する。
【0036】
以下は仮想シャーシの内部メッセージ及び仮想シャーシと自動運転ユニットとの間のインタラクションメッセージの説明である。
1、CAN制御メッセージ(CAN control message):自動運転ユニットにより仮想シャーシに送信されるシャーシ制御メッセージであり、CANフォーマットである。
2、制御メッセージ(command info):仮想シャーシ内部メッセージであり、サブモジュールeによりFPGAレジスタから読み取られて取得される。
3、動力学モデル入力情報(dynamic input info):仮想シャーシ内部メッセージであり、サブモジュールeによりサブモジュールhに送信され、サブモジュールeが復号したシャーシ制御メッセージ又は故障注入を経た復号されたシャーシ制御メッセージを含む。
4、動力学モデル出力情報(dynamic output info):仮想シャーシ内部メッセージであり、サブモジュールhによりサブモジュールfに送信され、シャーシシミュレーション結果を含む。
5、フィードバック情報(feedback info):仮想シャーシ内部メッセージであり、サブモジュールfによりFPGAレジスタに書き込まれ、符号化されたシャーシシミュレーション結果又は故障注入を経た符号化されたシャーシシミュレーション結果を含む。
6、CANフィードバックメッセージ(CAN feedback message):仮想シャーシが自動運転ユニットに送信するフィードバックメッセージであり、CANフォーマットであり、シャーシ状態のシミュレーション情報を含む。
7、故障制御情報(fault control info):仮想シャーシ内部メッセージであり、解析段階で故障注入制御を行う。
8、故障制御メッセージ(fault control info):仮想シャーシ内部メッセージであり、カプセル化段階で故障注入情報を行う。
9、故障制御情報(fault control info):仮想シャーシ内部メッセージであり、送信段階で故障注入制御を行う。
【0037】
仮想シャーシの各サブモジュールの機能は図4に示すような6つのスレッドで実現することができ、各サブモジュールのソフトウェア実現は、c言語などを用いてもよく、本開示の実施例はこれを限定しない。この6つのスレッドはレジスタ読み取り、CANメッセージ解析、故障注入、車両動力学モデル、CANメッセージカプセル化、レジスタ書き込みを含む。ここで、
レジスタ読み取り:設定頻度に応じてFPGAレジスタで指定されたアドレス空間から異なるCANメッセージ内容を取得し、それをcmd bufferに記憶する役割を担い、ここで、FPGAレジスタはCANインタフェースからCANメッセージを受信した後に配置されたアドレス空間にキャッシュし、CANメッセージ周期は20ms、50ms、又は100msであり、異なるメッセージの収集頻度は異なる。
CANメッセージ解析:CANメッセージ内容解析を行い、シャーシ制御メッセージのキーフィールドの内容を取得して処理した後にキャッシュし、同時に故障注入ポリシー制御メッセージを受信し、異なる配置ポリシーに従って故障注入を行い、解析したメッセージをtotal bufferに記憶する。
故障注入:故障注入配置を解析し、かつ故障注入ポリシーメッセージ送信を行う。
車両動力学モデル:共通化モジュールであってもよく、シャーシ制御メッセージを入力し、シャーシ状態情報を出力し、dynamic bufferに記憶する。例示的には、dynamic simulaition MKZ動力学モデルを用いてもよい。
CANメッセージカプセル化:CANメッセージカプセル化を行い、dynamic bufferから情報を取得してメッセージカプセル化を行い、同時に故障注入ポリシー制御メッセージを受信し、異なる配置ポリシーに従って故障注入を行い、カプセル化したメッセージをreport bufferに記憶する。
レジスタ書き込み:total buffer及びreport bufferのデータをFPGAレジスタに書き込む役割を担い、異なるメッセージに対応するレジスタアドレスが異なる。
【0038】
上記の仮想シャーシの紹介から分かるように、仮想シャーシはシャーシ状態のシミュレーション情報を生成する際に故障注入を行うことができ、即ち前述した実施例S102におけるシャーシ制御メッセージ及び故障注入情報に基づいてシャーシ制御メッセージに対応するシャーシ状態のシミュレーション情報を生成することであり、故障注入のタイミングの違いに合わせて、具体的には、故障注入情報に基づいて、シャーシ制御メッセージ及び/又はシャーシ制御メッセージに対応するシャーシシミュレーション結果に対して故障注入を行い、シャーシ状態のシミュレーション情報を得て、シャーシシミュレーション結果はシャーシ制御メッセージ及び車両動力学モデルに基づいて決定される。即ち、仮想シャーシはシャーシ制御メッセージを処理する各段階で故障注入を行うことができ、各種故障シミュレーションの実現を容易にし、安全テストの操作空間が大きい。
【0039】
ここで、シャーシ制御メッセージ及び/又はシャーシ制御メッセージに対応するシャーシシミュレーション結果に対して故障注入を行うステップは、
シャーシ制御メッセージの第1ターゲットフィールド及び/又はシャーシ制御メッセージに対応するシャーシシミュレーション結果の第2ターゲットフィールドの内容を修正するステップ、又は、シャーシ制御メッセージ及び/又はシャーシ制御メッセージに対応するシャーシシミュレーション結果の伝送タイムフレームを修正するステップを含んでもよい。即ち、シャーシ制御メッセージ及び/又はシャーシ制御メッセージに対応するシャーシシミュレーション結果に対して内容の修正を行うことができ、それによってフィールド変更故障シーンのテストを実現し、伝送タイムフレームの修正を行うこともでき、それによって制御遅延などの故障シーンのテストを実現する。なお、シャーシ制御メッセージは復号されたシャーシ制御メッセージであってもよく、シャーシシミュレーション結果はカプセル化前又はカプセル化後のシャーシシミュレーション結果であってもよい。
【0040】
以下、異なる故障注入タイミングについてそれぞれ説明する。
【0041】
一実施例では、シャーシ制御メッセージの解析段階で故障注入制御を行い、即ち図3に示すように、故障注入サブモジュールgは故障注入情報をサブモジュールeに送信する。このシーンでは、仮想シャーシの処理過程は、
シャーシ制御メッセージを復号し、かつ故障注入情報に基づいて、復号されたシャーシ制御メッセージに対して故障注入を行い、第1制御情報を得て、第1制御情報を車両動力学モデルに入力し、シャーシシミュレーション結果を得て、シャーシシミュレーション結果を符号化してシャーシ状態シミュレーション情報を得る、ことである。
【0042】
図3を参照して説明すると、サブモジュールeはサブモジュールdからシャーシ制御メッセージを取得した後、シャーシ制御メッセージを復号するとともに、サブモジュールgが故障注入情報をサブモジュールeに送信するので、サブモジュールeは復号されたシャーシ制御メッセージに対して故障注入を行う必要があり、例示的には、復号されたシャーシ制御メッセージの第1ターゲットフィールドを修正し、例えばアクセル開閉度フィールドを20%から30%に修正し、例示的には、復号されたシャーシ制御メッセージの伝送タイムフレームを修正し、例えば復号されたシャーシ制御メッセージのサブモジュールhへの入力を遅延させ、自動運転ユニットの制御を遅延させる。サブモジュールeは復号されたシャーシ制御メッセージに対して故障注入を行った後に第1制御情報(3、動力学モデル入力情報)を得て、それをサブモジュールhに入力し、シャーシシミュレーション結果(4、動力学モデル出力情報)を得て、さらにサブモジュールfによりそれをカプセル化し(5、フィードバック情報)、サブモジュールdによりCANインタフェース変換を行ってシャーシ状態シミュレーション情報(6、CANフィードバックメッセージ)を形成する。したがって、メッセージ解析段階の故障注入を実現でき、当該シーンでの故障シミュレーションを行いやすく、テストシーンのカバー率を向上させる。
【0043】
別の実施例では、シャーシ制御メッセージのカプセル化段階で故障注入制御を行い、即ち図3に示すように、サブモジュールhはシャーシシミュレーション結果(4、動力学モデル出力情報)をサブモジュールfに送信し、サブモジュールfはカプセル化して故障注入を行う。このシーンでは、仮想シャーシの処理過程は、
シャーシ制御メッセージを復号し、第2制御情報を得て、第2制御情報を車両動力学モデルに入力し、シャーシシミュレーション結果を得て、故障注入情報に基づいてシャーシシミュレーション結果に対して故障注入を行い、かつ故障注入を行った後のシャーシシミュレーション結果を符号化してシャーシ状態のシミュレーション情報を得ることである。
【0044】
図3を参照して説明すると、サブモジュールeはサブモジュールdからシャーシ制御メッセージを取得した後、シャーシ制御メッセージを復号し、第2制御情報(3、動力学モデル入力情報)を得て、それをサブモジュールhに入力してシャーシシミュレーション結果(4、動力学モデル出力情報)を得て、サブモジュールhはシャーシシミュレーション結果をサブモジュールfに送信し、サブモジュールgが故障注入情報をサブモジュールfに送信するので、サブモジュールfはシャーシシミュレーション結果に対して故障注入を行ってカプセル化する必要があり、例示的には、シャーシシミュレーション結果の第2ターゲットフィールドを修正し、例えばアクセル実行フィードバックのフィールドを20%から22%に修正し、例示的には、シャーシシミュレーション結果の伝送タイムフレームを修正し、例えばカプセル化されたシャーシシミュレーション結果のサブモジュールdへの書き込みを遅延させ、自動運転ユニットの、仮想シャーシのフィードバックに対する受信を遅延させる。サブモジュールfは故障注入後のシャーシシミュレーション結果(5、フィードバック情報)をカプセル化し、サブモジュールdによりCANインタフェース変換を行ってシャーシ状態シミュレーション情報(6、CANフィードバックメッセージ)を形成する。従って、メッセージカプセル化段階の故障注入を実現でき、当該シーンでの故障シミュレーションを行いやすく、テストシーンのカバー率を向上させる。
【0045】
さらに別の実施例では、サブモジュールdがCANインタフェース変換を行う段階で故障注入制御を行い、即ち図3に示すように、サブモジュールfがカプセル化されたシャーシシミュレーション結果(5、フィードバック情報)をサブモジュールdに送信し、サブモジュールdがCANインタフェース変換カプセル化を行う際に故障注入を行う。このシーンでは、仮想シャーシの処理過程は、
シャーシ制御メッセージを復号し、第3制御情報を得て、第3制御情報を車両動力学モデルに入力し、シャーシシミュレーション結果を得て、シャーシシミュレーション結果を符号化し、符号化されたシャーシシミュレーション結果を得て、故障注入情報に基づいて符号化されたシャーシシミュレーション結果に対して故障注入を行い、シャーシ状態のシミュレーション情報を得ることである。
【0046】
図3を参照して説明すると、サブモジュールeはFPGAレジスタからシャーシ制御メッセージを取得した後、シャーシ制御メッセージを復号し、第3制御情報(3、動力学モデル入力情報)を得て、それをサブモジュールhに入力してシャーシシミュレーション結果(4、動力学モデル入力情報)を得て、サブモジュールhがシャーシシミュレーション結果をサブモジュールfに送信し、サブモジュールfがシャーシシミュレーション結果(5、フィードバック情報)をカプセル化した後にサブモジュールdに書き込み、サブモジュールgが故障注入情報をサブモジュールdに送信するので、サブモジュールdはカプセル化されたシャーシシミュレーション結果に対して故障注入を行ってCANインタフェース変換カプセル化を行う必要がある。故障注入方式は前述と同様であり、メッセージの内容を修正したり伝送タイムフレームを修正したりすることができる。したがって、CANインタフェース変換送信段階の故障注入を実現でき、当該シーンでの故障シミュレーションを行いやすく、テストシーンのカバー率を向上させる。
【0047】
図5は、本開示の実施例によるシャーシシミュレーション装置の概略構成図である。図5に示すように、シャーシシミュレーション装置500は、
自動運転ユニットが送信したシャーシ制御メッセージを取得し、かつ故障注入情報を取得するための取得モジュール501と、
シャーシ制御メッセージ及び故障注入情報に基づいてシャーシ制御メッセージに対応するシャーシ状態のシミュレーション情報を生成するためのシミュレーションモジュール502と、
シャーシ状態のシミュレーション情報を自動運転ユニットに送信するための送信モジュール503と、を含む。
【0048】
一実施形態では、シミュレーションモジュール502は、
故障注入情報に基づいて、シャーシ制御メッセージ及び/又はシャーシ制御メッセージに対応するシャーシシミュレーション結果に対して故障注入を行い、シャーシ状態シミュレーション情報を得るためのシミュレーションユニットであって、シャーシシミュレーション結果はシャーシ制御メッセージ及び車両動力学モデルに基づいて決定されるシミュレーションユニットを含む。
【0049】
一実施形態では、シミュレーションユニットは、
シャーシ制御メッセージを復号し、かつ故障注入情報に基づいて、復号されたシャーシ制御メッセージに対して故障注入を行い、第1制御情報を得るための第1復号ユニットと、
第1制御情報を車両動力学モデルに入力し、シャーシシミュレーション結果を得るための第1シミュレーションユニットと、
シャーシシミュレーション結果を符号化してシャーシ状態シミュレーション情報を得るための第1符号化ユニットと、を含む。
【0050】
一実施形態では、シミュレーションユニットは、
シャーシ制御メッセージを復号し、第2制御情報を得るための第2復号ユニットと、
第2制御情報を車両動力学モデルに入力し、シャーシシミュレーション結果を得るための第2シミュレーションユニットと、
故障注入情報に基づいてシャーシシミュレーション結果に対して故障注入を行い、かつ故障注入を行った後のシャーシシミュレーション結果を符号化してシャーシ状態のシミュレーション情報を得るための第2符号化ユニットと、を含む。
【0051】
一実施形態では、シミュレーションユニットは、
シャーシ制御メッセージを復号し、第3制御情報を得るための第3復号ユニットと、
第3制御情報を車両動力学モデルに入力し、シャーシシミュレーション結果を得るための第3シミュレーションユニットと、
シャーシシミュレーション結果を符号化し、符号化されたシャーシシミュレーション結果を得るための第3符号化ユニットと、
故障注入情報に基づいて符号化されたシャーシシミュレーション結果に対して故障注入を行い、シャーシ状態のシミュレーション情報を得るための故障注入ユニットと、を含む。
【0052】
一実施形態では、シミュレーションユニットは、
シャーシ制御メッセージの第1ターゲットフィールド及び/又はシャーシ制御メッセージに対応するシャーシシミュレーション結果の第2ターゲットフィールドの内容を修正するための第1修正ユニットを含む。
【0053】
一実施形態では、シミュレーションユニットは、
シャーシ制御メッセージ及び/又はシャーシ制御メッセージに対応するシャーシシミュレーション結果の伝送タイムフレームを修正するための第2修正ユニットを含む。
【0054】
本開示の実施例が提供するシャーシシミュレーション装置は、前述した方法の実施例におけるシャーシシミュレーション方法を実現するために用いられることができ、その実現原理及び技術的効果は同様であるので、ここでは説明を省略する。
【0055】
本開示の実施例によれば、本開示は、電子機器、及びコンピュータ命令を記憶した非一時的なコンピュータ読み取り可能な記憶媒体をさらに提供する。当該電子機器は前述したサーバであってもよい。
【0056】
本開示の実施例によれば、本開示は、読み取り可能な記憶媒体に記憶されたコンピュータプログラムをさらに提供し、電子機器の少なくとも1つのプロセッサは読み取り可能な記憶媒体からコンピュータプログラムを読み取ることができ、少なくとも1つのプロセッサは電子機器が上記いずれかの実施例に係る技術案を実行するようにコンピュータプログラムを実行する。
【0057】
図6は、本開示の実施例のシャーシシミュレーション方法を実現するための電子機器の概略ブロック図である。電子機器は、例えば、ラップトップコンピュータ、デスクトップコンピュータ、ワークステーション、パーソナルデジタルアシスタント、サーバ、ブレードサーバ、メインフレームコンピュータ、及び他の適切なコンピュータなどの様々な形態のデジタルコンピュータである。電子機器は、例えば、パーソナルデジタルアシスタント、携帯電話、スマートフォン、ウェアラブルデバイス、及び他の類似なコンピューティングデバイスなど、様々な形態のモバイルデバイスであってもよい。本明細書に示される部品、それらの接続及び関係、並びにそれらの機能は、単なる例示であり、本明細書に記載及び/又は請求される本開示の実施を限定しない。
【0058】
図6に示すように、電子機器600は、読み取り専用メモリ(ROM)602に記憶されたコンピュータプログラムや、記憶ユニット608からランダムアクセスメモリ(RAM)603にロードされたコンピュータプログラムに従って、各種の適切な動作及び処理を実行できる計算ユニット601を含む。RAM603には、電子機器600の操作に必要な各種プログラムやデータを記憶することもできる。計算ユニット601、ROM602及びRAM603は、バス604を介して互いに接続されている。入力/出力(I/O)インタフェース605もバス604に接続されている。
【0059】
キーボード、マウスなどの入力ユニット606、各種のディスプレイ、スピーカなどの出力ユニット607、磁気ディスク、光ディスクなどの記憶ユニット608、ネットワークカード、モデム、無線通信送受信機などの通信ユニット609を含む、電子機器600内の複数の部品はI/Oインタフェース605に接続されている。通信ユニット609は電子機器600がインターネットなどのコンピュータネットワーク及び/又は様々な電気通信ネットワークを介して他の機器と情報/データを交換することを可能にする。
【0060】
計算ユニット601は、処理及び計算能力を有する様々な汎用及び/又は専用の処理コンポーネントであってもよい。計算ユニット601のいくつかの例は、中央処理ユニット(CPU)、グラフィック処理ユニット(GPU)、各種専用人工知能(AI)計算チップ、機械学習モデルアルゴリズムを実行する各種の計算ユニット、デジタル信号プロセッサ(DSP)、及び任意の適切なプロセッサ、コントローラ、マイクロコントローラなどを含むが、これらに限定されない。計算ユニット601は、上述したシャーシシミュレーション方法などの各種方法及び処理を実行する。例えば、いくつかの実施例では、シャーシシミュレーション方法は、記憶ユニット608などの機械読み取り可能な媒体に有形に含まれるコンピュータソフトウェアプログラムとして実装されることができる。いくつかの実施例では、コンピュータプログラムの一部又は全部は、ROM602及び/又は通信ユニット609を介して電子機器600にロード及び/又はインストールされてもよい。コンピュータプログラムがRAM603にロードされ、計算ユニット601によって実行されるときに、上述したシャーシシミュレーション方法の1つ以上のステップが実行されてもよい。あるいは、他の実施例では、計算ユニット601は、他の任意の適切な方法(例えば、ファームウェア)によってシャーシシミュレーション方法を実行するように構成されてもよい。
【0061】
本明細書に記載のシステム及び技術の様々な実施形態は、デジタル電子回路システム、集積回路システム、フィールドプログラマブルゲートアレイ(FPGA)、特定用途向け集積回路(ASIC)、特定用途向け標準製品(ASSP)、システムオンチップ(SOC)、複雑なプログラマブルロジックデバイス(CPLD)、コンピュータハードウェア、ファームウェア、ソフトウェア、及び/又はそれらの組合せで実現されてもよい。これらの様々な実施形態は、1つ以上のコンピュータプログラム内で実施されることを含んでもよく、当該1つ以上のコンピュータプログラムは、少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステム上で実行及び/又は解釈されることができ、当該プログラマブルプロセッサは、専用又は汎用のプログラマブルプロセッサであってもよく、記憶システム、少なくとも1つの入力装置、及び少なくとも1つの出力装置からデータ及び命令を受信し、データ及び命令を当該記憶システム、当該少なくとも1つの入力装置、及び当該少なくとも1つの出力装置に伝送することができる。
【0062】
本開示の方法を実施するためのプログラムコードは、1つ以上のプログラミング言語の任意の組合せで書かれてもよい。これらのプログラムコードは、汎用コンピュータ、特定用途向けコンピュータ、又は他のプログラマブルデータ処理装置のプロセッサ又はコントローラに提供されてもよく、プログラムコードがプロセッサ又はコントローラによって実行されると、フローチャート及び/又はブロック図において特定された機能/操作が実施される。プログラムコードは、完全にマシン上で実行され、部分的にマシン上で実行され、個別パッケージとして部分的にマシン上で実行され、部分的にリモートマシン上で実行され、又はリモートマシン又はサーバ上で完全に実行されてもよい。
【0063】
本開示の文脈において、機械読み取り可能な媒体は有形媒体であってもよく、それは、命令実行システム、装置、又は機器による使用のための、又は命令実行システム、装置、又は機器と組み合わせて使用するためのプログラムを含むか、又は記憶することができる。機械読み取り可能な媒体は、機械読み取り可能な信号媒体又は機械読み取り可能な記憶媒体であってもよい。機械読み取り可能な媒体は、電子的、磁気的、光学的、電磁的、赤外線的、又は半導体システム、装置又は機器、又は上記の任意の適切な組合せを含んでもよいが、これらに限定されない。機械読み取り可能な記憶媒体のより具体的な例としては、1つ以上の配線に基づく電気的接続、ポータブルコンピュータディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み取り専用メモリ(ROM)、消去可能なプログラマブル読み取り専用メモリ(EPROM又はフラッシュメモリ)、光ファイバ、コンパクトディスク読み取り専用メモリ(CD-ROM)、光記憶装置、磁気記憶装置、又はこれらの任意の適切な組合せを含む。
【0064】
ユーザとのインタラクションを提供するために、コンピュータで本明細書に記載されるシステム及び技術を実施することができ、当該コンピュータは、ユーザに情報を表示するための表示装置(例えば、CRT(陰極線管)又はLCD(液晶ディスプレイ)モニタ)と、ユーザがコンピュータに入力を提供し得るキーボード及びポインティングデバイス(例えば、マウス又はトラックボール)とを有する。他の種類の装置は、ユーザとのインタラクションを提供するために使用されてもよい。例えば、ユーザに提供されるフィードバックは、任意の形態の感覚フィードバック(例えば、視覚フィードバック、聴覚フィードバック、又は触覚フィードバック)であってもよく、任意の形態(例えば、音声入力、発話入力又は触覚入力)でユーザからの入力を受信することができる。
【0065】
本明細書で説明されるシステム及び技術を、バックエンド部品を含むコンピューティングシステム(例えば、データサーバとして)、又はミドルウェア部品を含むコンピューティングシステム(例えば、アプリケーションサーバ)、又はフロントエンド部品を含むコンピューティングシステム(例えば、ユーザが本明細書で説明されるシステム及び技術の実施形態とインタラクションすることができるグラフィカルユーザインタフェース又はウェブブラウザを有するユーザコンピュータ)、又はそのようなバックエンド部品、ミドルウェア部品、もしくはフロントエンド部品の任意の組合せを含むコンピューティングシステムにおいて実施されてもよい。任意の形態又は媒体のデジタルデータ通信(例えば、通信ネットワーク)を介してシステムの部品を互いに接続することができる。通信ネットワークの例示は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)及びインターネットを含む。
【0066】
コンピュータシステムは、クライアント及びサーバを含んでもよい。クライアント及びサーバは、一般に、互いから離れており、通常、通信ネットワークを介してインタラクションしている。相応的なコンピュータで運行し、互いにクライアント-サーバ関係を有するコンピュータプログラムによって、クライアントとサーバの関係を生成する。サーバは、クラウドサーバであってもよく、クラウドコンピューティングサーバ又はクラウドホストとも称され、クラウドコンピューティングサービス体系におけるホスト製品の1つであり、従来の物理ホスト及びVPS(「Virtual Private Server」、又は「VPS」と略称)に存在する管理が困難でありサービス拡張性が弱いという欠点を解決する。サーバは、分散システムのサーバであってもよいし、ブロックチェーンを結合したサーバであってもよい。
【0067】
なお、上記に示された様々な形態のフローを用いて、ステップを並べ替え、追加、又は削除することができることを理解されたい。例えば、本願に記載された各ステップは、並列的に実行されてもよく、順番に実行されてもよく、異なる順番で実行されてもよく、本開示において開示された技術案の所望の結果を達成することができる限り、ここで制限されない。
【0068】
上記の具体的な実施形態は、本開示の保護範囲を限定するものではない。当業者であれば、設計の要求及び他の要因に応じて、各種の補正、組合、サブ組合及び切り替えを行うことができることは明らかであろう。本開示の思想及び原則における任意の補正、均等物及び改善などは、本開示の保護範囲に含まれるべきである。
図1
図2
図3
図4
図5
図6