(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-28
(45)【発行日】2024-09-05
(54)【発明の名称】分散システム、及びデータ転送方法
(51)【国際特許分類】
H04L 43/08 20220101AFI20240829BHJP
H04L 67/12 20220101ALI20240829BHJP
【FI】
H04L43/08
H04L67/12
(21)【出願番号】P 2021065653
(22)【出願日】2021-04-08
【審査請求日】2024-01-29
(73)【特許権者】
【識別番号】000005108
【氏名又は名称】株式会社日立製作所
(74)【代理人】
【識別番号】110000198
【氏名又は名称】弁理士法人湘洋特許事務所
(72)【発明者】
【氏名】植松 裕
(72)【発明者】
【氏名】鳥羽 忠信
(72)【発明者】
【氏名】新保 健一
(72)【発明者】
【氏名】上薗 巧
【審査官】宮島 郁美
(56)【参考文献】
【文献】特開2018-84854(JP,A)
【文献】特開2019-70967(JP,A)
【文献】特開2019-22205(JP,A)
【文献】特開2019-145076(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04L 43/00,67/00
(57)【特許請求の範囲】
【請求項1】
自動稼働可能な移動体又は設備であるエッジデバイスと、
診断データ計算機と、
を備える分散システムであって、
前記エッジデバイスは、
自動稼働を実現するための移動機構及び作動機構の少なくとも一方と、
前記移動機構及び前記作動機構の少なくとも一方に対応するコンポーネントと、
前記コンポーネントを制御するエッジ内コントローラと、を有し、
前記エッジ内コントローラは、
前記コンポーネントにおいて取得された状態データを読み出し、
読み出した前記状態データをコンポーネントレベル状態データに集約し、
所定のルールに従い、前記コンポーネントレベル状態データを転送先に転送する際の許容レイテンシを決定し、
前記許容レイテンシに基づき、前記コンポーネントレベル状態データを前記診断データ計算機に転送する
分散システム。
【請求項2】
請求項1に記載の分散システムであって、
前記エッジ内コントローラは、
読み出した前記状態データをデータ量が同等以下の前記コンポーネントレベル状態データに集約する
分散システム。
【請求項3】
請求項1に記載の分散システムであって、
前記診断データ計算機は、
前記エッジデバイスから転送された前記コンポーネントレベル状態データに分析処理を行い、前記分析処理の結果に基づいて、前記所定のルールを更新して前記エッジデバイスに送信する
分散システム。
【請求項4】
請求項3に記載の分散システムであって、
前記診断データ計算機は、
前記エッジデバイスに関連するサービスを特定し、
前記エッジデバイスから転送された前記コンポーネントレベル状態データに、特定した前記サービスに対応する前記分析処理を行い、特定した前記サービスを提供するサービス提供会社用計算機に対して前記分析処理の結果を送信する
分散システム。
【請求項5】
請求項1に記載の分散システムであって、
前記エッジ内コントローラは、
前記診断データ計算機から指定されたトリガポイントを起点とし、前記診断データ計算機から指定されたサンプリング周期で前記コンポーネントから前記状態データを読み出す
分散システム。
【請求項6】
請求項5に記載の分散システムであって、
前記診断データ計算機は、
前記エッジデバイスから転送された前記コンポーネントレベル状態データに分析処理を行い、前記分析処理の結果に基づいて、前記トリガポイントを指定する
分散システム。
【請求項7】
請求項1に記載の分散システムであって、
前記エッジ内コントローラは、
前記コンポーネントレベル状態データを保存する異種の記憶資源を有し、
前記コンポーネントレベル状態データに対して決定した前記許容レイテンシに基づき、前記コンポーネントレベル状態データの保存先を決定する
分散システム。
【請求項8】
請求項7に記載の分散システムであって、
前記エッジ内コントローラは、
前記コンポーネントレベル状態データに対して決定した前記許容レイテンシに基づき、前記コンポーネントレベル状態データの転送時刻を決定し、
前記記憶資源に保存されている前記コンポーネントレベル状態データのうち、前記転送時刻が過ぎた前記コンポーネントレベル状態データを消去する
分散システム。
【請求項9】
請求項1に記載の分散システムであって、
前記エッジデバイスは、
種類が異なる複数の前記コンポーネントを有し、
前記エッジ内コントローラは、
前記コンポーネントレベル状態データの元の前記状態データが取得された前記コンポーネントの種類に基づく前記所定のルールに従い、前記コンポーネントレベル状態データの前記許容レイテンシを決定する
分散システム。
【請求項10】
請求項9に記載の分散システムであって、
前記種類が異なる複数の前記コンポーネントは、物理的コンポーネント、及び前記物理的コンポーネントに基づいて提供される機能的コンポーネントを含む
分散システム。
【請求項11】
自動稼働可能な移動体又は設備であるエッジデバイスと、
診断データ計算機と、
を備える分散システムのデータ転送方法であって、
前記エッジデバイスは、
自動稼働を実現するための移動機構及び作動機構の少なくとも一方と、
前記移動機構及び前記作動機構の少なくとも一方に対応するコンポーネントと、
前記コンポーネントを制御するエッジ内コントローラと、を有し、
前記エッジ内コントローラによる、
前記コンポーネントにおいて取得された状態データを読み出し、
読み出した前記状態データをコンポーネントレベル状態データに集約し、
所定のルールに従い、前記コンポーネントレベル状態データを転送先に転送する際の許容レイテンシを決定し、
前記許容レイテンシに基づき、前記コンポーネントレベル状態データを前記診断データ計算機に転送するステップを含む
データ転送方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、分散システム、及びデータ転送方法に関する。
【背景技術】
【0002】
モータやエンジンに代表される移動機構や、アクチュエータに代表される作動機構を備えた車両やロボット等のエッジデバイスにおいては、エッジデバイスの自動稼働を実現するため、移動機構や作動機構等を制御するエッジデバイス内のコントローラの複雑化が想定される。この場合、エッジデバイス内のコントローラは、移動機構や作動機構の様々な種類の状態データを検出し、検出した状態データをエッジデバイスのメンテナンス時期の診断や事故要因の分析等を行う外部のサーバ装置に対して転送することになる。
【0003】
エッジデバイスから外部へのデータ転送に関し、例えば特許文献1には、車両に搭載された監視装置が、診断装置やECU、サーバ装置等と通信するためのインタフェースを備え、診断装置からの要求を受け付けると、車両状態に基づいて通信接続先を選択し、接続先から情報を取得して、前記診断装置に送信する構成が記載されている。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1に記載の技術では、監視装置がECU内の各部品の内部状態(特に異常状態)を監視し、各部品特有の物理的な状態データを収集して、エッジデバイスの外部に送信している。そのため、エッジデバイスに搭載される部品やハードウェア構成毎にデータの種類、形式が固有のものとなるとともに、物理的なデータをそのまま転送しているため転送するデータ量が大きくなってしまう。
【0006】
本発明は、このような現状に鑑みてなされたものであり、要因分析や診断等の目的に必要な情報量と情報取得の周期を確保しつつ、エッジシステムから外部に転送するデータ量を削減できるようにすることを目的とする。
【課題を解決するための手段】
【0007】
本願は、上記課題の少なくとも一部を解決する手段を複数含んでいるが、その例を挙げるならば、以下のとおりである。
【0008】
上記課題を解決するため、本発明の一態様に係る分散システムは、自動稼働可能な移動体又は設備であるエッジデバイスと、診断データ計算機と、を備える分散システムであって、前記エッジデバイスは、自動稼働を実現するための移動機構及び作動機構の少なくとも一方と、前記移動機構及び前記作動機構の少なくとも一方に対応するコンポーネントと、前記コンポーネントを制御するエッジ内コントローラと、を有し、前記エッジ内コントローラは、前記コンポーネントにおいて取得された状態データを読み出し、読み出した前記状態データをコンポーネントレベル状態データに集約し、所定のルールに従い、前記コンポーネントレベル状態データを転送先に転送する際の許容レイテンシを決定し、前記許容レイテンシに基づき、前記コンポーネントレベル状態データを前記診断データ計算機に転送する。
【発明の効果】
【0009】
本発明によれば、要因分析や診断等の目的に必要な情報量と情報取得の周期を確保しつつ、エッジシステムから外部に送信するデータ量を削減できる。
【0010】
上記した以外の課題、構成、及び効果は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【0011】
【
図1】
図1は、本発明の一実施形態に係る分散システムの構成例を示す図である。
【
図2】
図2は、コンポーネントレベル状態データの分類方法を示す図である。
【
図3】
図3は、コンポーネントレベル状態データのヘッダの一例を示す図である。
【
図4】
図4は、計算機のハードウェア構成の一例を示す図である。
【
図5】
図5は、データ転送処理の一例を説明するフローチャートである。
【
図6】
図6は、分散システムを適用した共生安全システムの構成例を示す図である。
【
図7】
図7は、分散システムを適用した情報連携システムの構成例を示す図である。
【発明を実施するための形態】
【0012】
以下の実施形態においては便宜上その必要があるときは、複数のセクションまたは実施の形態に分割して説明するが、特に明示した場合を除き、それらはお互いに無関係なものではなく、一方は他方の一部または全部の変形例、詳細、補足説明等の関係にある。
【0013】
また、以下の実施形態において、要素の数等(個数、数値、量、範囲等を含む)に言及する場合、特に明示した場合及び原理的に明らかに特定の数に限定される場合等を除き、その特定の数に限定されるものではなく、特定の数以上でも以下でもよい。
【0014】
さらに、以下の実施形態において、その構成要素(要素ステップ等も含む)は、特に明示した場合及び原理的に明らかに必須であると考えられる場合等を除き、必ずしも必須のものではないことは言うまでもない。
【0015】
同様に、以下の実施形態において、構成要素等の形状、位置関係等に言及するときは特に明示した場合及び原理的に明らかにそうではないと考えられる場合等を除き、実質的にその形状等に近似または類似するもの等を含むものとする。このことは、上記数値及び範囲についても同様である。
【0016】
また、実施形態を説明するための全図において、同一の部材には原則として同一の符号を付し、その繰り返しの説明は省略する。以下、本発明の各実施形態について図面を用いて説明する。
【0017】
<本発明の一実施形態に係る分散システム10の構成例>
図1は、本発明の一実施形態に係る分散システム10の構成例を示している。
【0018】
分散システム10は、エッジデバイス20、及び、診断データクラウドサーバ(CS)30を備える。エッジデバイス20は、ネットワーク1を介して診断データクラウドサーバ30に接続する。ネットワーク1は、例えば、携帯電話通信網、インターネット(Ethernetを含む)等に代表される双方向通信網である。
【0019】
エッジデバイス20は、例えば自動稼働可能な移動体(例えば車両、ドローン、ロボット)や、設備(例えばロボットアームや工作機械、数値制御旋盤等)が想定される。ここで、自動稼働とは、電子制御による稼働を指し、人の制御を不要とする完全自動稼働のみでなく、可動部の一部を自動で電子制御されるような部分的な自動稼働や、限定条件下での自動稼働も含むものとする。一例として、エッジデバイス20は、自動運転可能な車両を挙げることができる。
【0020】
エッジデバイス20は、複数のコンポーネント21、エッジ内コントローラ22、短期記憶部23、中期記憶部24、無線通信部25、有線通信部26、EDR(Event Data Recorder)27、OBD(On-Board Diagnosis)II28、及び自動稼働制御部29を備える。
【0021】
ここで、コンポーネント21は、エッジデバイス20が備える移動機構や作動機構等の各種の機構を実現するための機能的、論理的、または物理的な構成要素を指す。
【0022】
なお、複数のコンポーネント21の間には依存関係があり、例えば、第1のコンポーネントは物理的なコンポーネントであり、第2のコンポーネントは、第1のコンポーネントに基づいて提供される機能コンポーネントとすることができる。
【0023】
コンポーネント21は、データ取得部211、及び短期記憶部212を備える。
【0024】
データ取得部211は、各コンポーネントにおいて、診断データクラウドサーバ30のデータ分析部31によるテータ取得の定義(取得する詳細情報の種類及びセンシング周期)に従い、コンポーネント21内のレジスタやログデータ等からコンポーネント21の状態を表す状態データを取得する。
【0025】
短期記憶部212は、例えば、DRAM(Dynamic Random Access Memory),FRAM(Ferroelectric RAM),MRAM(Magnetoresistive RAM)等の揮発性メモリから成り、データ取得部211が取得した状態データを一時的に記憶し、記憶容量が一杯になった場合、古い状態データを新しい状態データによって上書きする。
【0026】
エッジ内コントローラ22は、例えば、ECU(Electronic Control Unit),CPU(Central Processing Unit),ASIC(Application Specific Integrated Circuit)等のコンピュータから成る。エッジ内コントローラ22は、コンポーネント21の短期記憶部212に格納されている状態データを読み出して、診断データクラウドサーバ30に送信するまでの一連の処理を実行する。エッジ内コントローラ22は、データ抽象度変換機能、データ分類機能、データ報告タイミング制御機能、データ保存管理機能、データ転送機能、及びトリガポイント設定機能を有する。
【0027】
データ抽象度変換機能は、トリガポイント設定機能により設定されたトリガタイミングを起点とし、診断データクラウドサーバ30のデータ管理部32によって指定されたサンプリング周期で、コンポーネント21の短期記憶部212に格納されている状態データを読み出し、診断データクラウドサーバ30側から指定されたルールに従い、読み出した状態データを集約する抽象度変換を行い、状態データよりもデータ量が小さいステータス情報、または、さらにデータ量が小さい安全アラーム情報に変換する。ただし、状態データをそのまま詳細情報とする、すなわち、変換しないこともある。
【0028】
例えば、状態データは、コンポーネント21の中のレジスタ値やログデータであり、100ビット以上のデータ量を有し、1m秒程度の間隔で診断データクラウドサーバ30に転送される。ステータス情報は、コンポーネント単位の正常または故障を表す数10ビット程度のデータ量を有し、0.1秒程度の間隔で診断データクラウドサーバ30に転送される。安全アラーム情報は、コンポーネント21により実現される各機構の安全または危険を表す数ビット程度のデータ量を有し、1秒程度の間隔で診断データクラウドサーバ30に転送される。なお、ここに記載した転送の時間間隔や転送先は一例であり、アプリケーションに応じて適切な間隔で所望の転送先へと転送されるものである。以下、状態データを抽象度変換した安全アラーム情報、ステータス情報、または詳細情報をコンポーネントレベル状態データと称する。
【0029】
抽象度変換のルールとしては、例えば、状態データの種類(を表す識別子)や状態データを取得したコンポーネント21の種類(を表す識別子)と、コンポーネントレベル状態データの種類(安全アラーム情報、ステータス情報、または詳細情報)との対応表等を用いてもよい。
【0030】
また、データ抽象度変換機能は、診断データクラウドサーバ30側から指定されたルールに従い、コンポーネントレベル状態データを診断データクラウドサーバ30等の転送先に転送するまでの時間的余裕を表す許容レイテンシを決定する。なお、許容レイテンシは、原則的には、コンポーネントレベル状態データの元の状態データがコンポーネント21において取得されたタイミングを起点とする時間であるが、エッジ内コントローラ22がコンポーネント21から状態データを読み出したタイミングを起点としてもよい。
【0031】
許容レイテンシ決定のルールとしては、状態データを取得したコンポーネント21の種類(を表す識別子)と、コンポーネントレベル状態データの種類と、許容レイテンシとの対応表等を用いてもよい。許容レイテンシ決定のルールの具体例としては、例えば、重要性が低く、状況次第で転送先に転送しなくてもよいコンポーネントレベル状態データに対して比較的長い許容レイテンシが決定されるようにしてもよい。
【0032】
また、例えば、コンポーネントレベル状態データの元の状態データを取得したコンポーネント21の種類(機能的コンポーネント、物理的コンポーネント等)に応じて許容レイテンシを決定するようにすれば、エッジデバイス20の機能的なコンポーネントに問題があった場合に、対応する物理的コンポーネントの許容レイテンシを短くするような運用が可能となる。
【0033】
データ分類機能は、コンポーネントレベル状態データを、安全アラーム情報、ステータス情報、または詳細情報のいずれであるかを表す抽象度と許容レイテンシとに基づいて分類する。また、データ分類機能は、診断データクラウドサーバ30側から指定されたルールに従い、コンポーネントレベル状態データを診断データクラウドサーバ30等の転送先に転送する際の優先度を算出する。
【0034】
優先度算出のルールとしては、コンポーネントレベル状態データの分類結果(抽象度と許容レイテンシとの組み合わせ)と、元の状態データを取得したコンポーネント21の種類とをパラメータとする所定の算出式を用いてもよい。
【0035】
図2は、コンポーネントレベル状態データの分類方法を説明するための図である。同図の場合、許容レイテンシは7種類に分類されている。よって、3種類の抽象度と7種類の許容レイテンシの組み合わせは21通りとなり、データ分類機能は、コンポーネントレベル状態データを21通りのいずれかに分類することになる。なお、許容レイテンシの種類は7種類に限らず、より少なくてもよいし、より多くてもよい。
【0036】
図1に戻る。データ報告タイミング制御機能は、診断データクラウドサーバ30側から指定に従って、コンポーネントレベル状態データの転送先を決定し、許容レイテンシ及び優先度に基づいて転送先への転送時刻を決定する。例えば、コンポーネントレベル状態データの転送時刻は許容レイテンシの範囲内でランダムに仮決定し、他のコンポーネントレベル状態データの転送時刻と重複する場合には優先度に応じて仮決定した転送時刻を調整すればよい。
【0037】
データ保存管理機能は、コンポーネントレベル状態データにヘッダ100(
図3)を付加する。また、データ保存管理機能は、コンポーネントレベル状態データの許容レイテンシ及び短期記憶部23の記憶限界に基づいて、コンポーネントレベル状態データの保存先(短期記憶部23または中期記憶部24)を決定し、ヘッダ100を付加したコンポーネントレベル状態データを決定した保存先に保存する。また、データ保存管理機能は、短期記憶部23及び中期記憶部24に保存されているコンポーネントレベル状態データのうち、転送時刻が過ぎたものを、実際に転送されたか否かに拘わらず消去する。
【0038】
図3は、コンポーネントレベル状態データに付加するヘッダ100のデータ構造の一例を示している。
【0039】
ヘッダ100には、分類結果、優先度、タイムスタンプ、サンプリング周期、サンプリング期間、データ転送先、及び転送時刻が記録される。
【0040】
分類結果には、データ分類機能による分類結果(
図2におけるSA1,SA2等)が記録される。優先度には、データ分類機能によって算出された優先度が記録される。タイムスタンプには、変換前の状態データがコンポーネント21において取得された時の絶対時刻が記録される。サンプリング周期及びサンプリング期間は、変換前の状態データがコンポーネント21の短期記憶部212からエッジ内コントローラ22にサンプリングされた時の周期及び期間が記録される。データ転送先には、データ報告タイミング制御機能により決定されたコンポーネントレベル状態データの転送先(自動稼働制御部29、診断データクラウドサーバ30等)が記録される。転送時刻には、データ報告タイミング制御機能により決定されたコンポーネントレベル状態データを転送先に転送する時刻が記録される。なお、転送時刻は絶対時刻を記録してもよいし、タイムスタンプを起点とする相対時刻を記録してもよい。
【0041】
図1に戻る。データ転送機能は、短期記憶部23及び中期記憶部24に一時保存されている各コンポーネントレベル状態データを、そのヘッダに記録されている転送時刻になったタイミングで、ヘッダに記録されている転送先に転送する。
【0042】
トリガポイント設定機能は、診断データクラウドサーバ30のデータ管理部32によるトリガポイントの定義に従い、コンポーネント21の短期記憶部212に格納されている状態データを読み出すときの起点となるトリガポイントを設定、変更する。トリガポイントは、例えば、事故や故障等のイベントが発生した時刻や、状態データが所定の閾値を超えたタイミング等で定義される。
【0043】
短期記憶部23は、例えば、DRAM,FRAM,MRAM等の揮発性メモリから成り、比較的に許容レイテンシが短いコンポーネントレベル状態データを一時的に保存する。なお、短期記憶部23の記憶容量が一杯になるような場合、コンポーネントレベル状態データの許容レイテンシを全体的に短くして、短期記憶部23に一時的に保存されているコンポーネントレベル状態データをより速やかに転送することが望ましい。ただし、短期記憶部23に記憶されている未転送の古いコンポーネントレベル状態データを消去するようにしてもよい。
【0044】
中期記憶部24は、例えば、SSD(Solid State Drive)、フラッシュメモリ等の不揮発性メモリから成り、許容レイテンシが比較的長いコンポーネントレベル状態データを一時的に保存する。短期記憶部23及び中期記憶部24は、本発明の異種の記憶資源に相当する。
【0045】
無線通信部25は、無線によりネットワーク1を介し、診断データクラウドサーバ30と接続して各種のデータを通信する。無線通信部25は、エッジデバイス20と診断データクラウドサーバ30との日常的な通信に使用される。有線通信部26は、ケーブルを介して所定の診断装置と接続して各種のデータを通信する。有線通信部26は、例えば、整備工場等においてエッジデバイス20の検査、整備、事故分析等の際に使用される。
【0046】
EDR27は、エッジデバイス20に発生した衝突等のイベント発生に応じ、その前後の時間におけるエッジデバイス20の移動速度等の状態データをコンポーネント21から取得して時系列に記録する。OBDII28は、エッジデバイス20に生じた故障を自律的に診断する。自動稼働制御部29は、エッジデバイス20の自動稼働(例えば、エッジデバイス20が車両である場合の自動運転等)を制御する。
【0047】
診断データクラウドサーバ30は、エッジデバイス20からコンポーネントレベル状態データを取得して分析処理を行うことにより、エッジデバイス20のメンテナンス時期の診断や故障の要因を特定する。そして、エッジデバイス20に関連したサービスを提供する保険会社や整備会社等が備えるサービス提供会社用計算機からのAPI(Application Programming Interface)を介する要求に応じ、エッジデバイス20のメンテナンス時期の診断結果や特定した故障要因を送信する。
【0048】
診断データクラウドサーバ30は、ネットワーク1上に存在する1台以上の計算機からなる。本実施形態においては、診断データクラウドサーバ30等のクラウドサーバに代えて、ローカルに存在する1台以上の計算機を採用してもよい。反対に、ローカルの計算機に代えてクラウドサーバを採用してもよい。診断データクラウドサーバ30は、本発明の診断データ計算機に相当する。
【0049】
診断データクラウドサーバ30は、データ分析部31、データ管理部32,及び長期記憶部33を備える。
【0050】
データ分析部31は、データ取得定義機能、及びデータ分析機能を有する。データ取得定義機能は、エッジデバイス20の各コンポーネント21において取得すべき状態データの種類、及びセンシング周期を定義する。具体的には、例えば、抽象度が高い(データ量が少ない)コンポーネントレベル状態データの変化に基づき、抽象度がより低い(データ量がより多い)コンポーネントレベル状態データを取得の対象とし、トリガタイミングやサンプリング周期、サンプリング期間を順次決定する。
【0051】
データ分析機能は、エッジデバイス20から転送されて長期記憶部33に保存されたコンポーネントレベル状態データに基づき、メンテナンス時期を診断したり、エッジデバイス20における異常の有無を診断したりする。そして、異常があった場合、異常の原因となった故障要因を分析し、故障発生部位を特定する。故障要因には、エッジデバイス20における各コンポーネント21のハードウェアの故障と、ソフトウェアによる動作における異常とが含まれる。故障要因の分析方法は、例えば、コンポーネントレベル状態データと故障要因との相関関係をデータベース化し、そのデータベースを基に故障要因を求める。このデータベースの実装方法は、条件と結果をリスト化しても良く、ニューラルネットワークを利用した機械学習を用いてもよい。つまり、コンポーネントレベル状態データとエッジデバイス20内の故障要因との相関を関係付ける形式と探索する方法であればよい。故障発生部位の特定方法は、コンポーネントレベル状態データと故障要因の相関関係を使用して部位を求めてもよい。
【0052】
データ管理部32は、データサンプリング管理機能、及びトリガポイント定義機能を有する。データサンプリング管理機能は、エッジデバイス20におけるエッジ内コントローラ22がコンポーネント21から状態データを取得するときのサンプリング周期を指定する。また、データサンプリング管理機能は、エッジデバイス20における各種のルール(抽象度変換のルール、許容レイテンシ決定のルール、優先度算出のルール等)を定義し、定義したルールをエッジデバイス20に送信する。これにより、例えば、エッジデバイス20に関連したサービス(保険等)に適した許容レイテンシを設定することができ、適切なタイミングで取得したデータを用いて分析処理を行うことができる。
【0053】
トリガポイント定義機能は、エッジデバイス20におけるエッジ内コントローラ22がコンポーネント21から状態データを取得するときの起点となるトリガポイントを指定する。
【0054】
長期記憶部33は、例えば、HDD(Hard Disk Drive)、磁気テープ等から成り、エッジデバイス20から転送されたコンポーネントレベル状態データを記憶する。このように、長期記憶部33と、エッジデバイス20における短期記憶部212,23、及び中期記憶部24とのハードウェアとしての種類を異なるものとしてデータ転送速度やストレージの寿命に差をつけることにより、単位データ量あたりのコストと、格納するデータ信頼性を最適化することができる。
【0055】
<診断データクラウドサーバ30を成す計算機200の構成例>
次に、
図4は、診断データクラウドサーバ30を成す計算機200のハードウェア構成の一例を示している。
【0056】
計算機200は、プロセッサ201、メモリ202、外部記憶装置203、音声出力装置204、音声入力装置205、入力装置206、出力装置207、及び通信装置208がデータバス209を介して接続されて構成される。
【0057】
プロセッサ201は、CPU、GPU、FPGA等からなり、計算機200の全体を制御する。メモリ202は、例えばRAM(Random Access Memory)等の主記憶装置である。外部記憶装置203は、デジタル情報を記憶可能なHDD、SSD、フラッシュメモリ等の不揮発性記憶装置である。
【0058】
音声出力装置204は、スピーカ等からなる。音声入力装置205は、マイクロフォン等からなる。入力装置206は、キーボード、マウス、タッチパネル等からなる。出力装置207は、ディスプレイ、プリンタ等からなる。
【0059】
通信装置208は、NIC(Network Interface Card)やTCU(Telematics Control Unit)等からなる。通信装置208は、有線通信及び無線通信の少なくとも一方により、同一のネットワークに接続された他の装置との通信を行う。その通信には、TCP/IP(Transmission Control Protocol/Internet Protocol)によるパケット通信を採用するが、これに限られるものではなく、UDP(User Datagram Protocol)等の他のプロトコルによる通信を採用してもよい。
【0060】
なお、計算機200のハードウェア構成は上述した例に限らず、上述した一部の構成要素を省いたり、他の構成要素を含んだりしてよい。また、計算機200は、サーバコンピュータ、パーソナルコンピュータ、ノート型コンピュータ、タブレット型コンピュータ、スマートフォン、テレビジョン装置等の各種の情報処理装置であってもよい。
【0061】
計算機200は、OS(Operating System)、ミドルウェア、アプリケーションプログラム等のプログラムを記憶したり、外部から読み込んだりすることができ、これらのプログラムをプロセッサ201が実行することにより、各種の処理を実行できる。
【0062】
<分散システム10によるデータ転送処理>
次に、
図5は、分散システム10によるデータ転送処理の一例を説明するフローチャートである。
【0063】
前提として、エッジデバイス20の各コンポーネント21においては、データ取得部211が、診断データクラウドサーバ30のデータ分析部31によるテータ取得の定義(取得する詳細情報の種類及びセンシング周期)に従い、コンポーネント21内のレジスタやログデータ等からコンポーネント21の状態を表す状態データを取得し、短期記憶部212に格納しているものとする。
【0064】
該データ転送処理は、例えば、診断データクラウドサーバ30からエッジデバイス20に対する開始指示に応じて開始される。
【0065】
はじめに、エッジデバイス20のエッジ内コントローラ22が、診断データクラウドサーバ30のデータ管理部32による定義に基づくトリガタイミングを起点とし、データ管理部32によって指定されたサンプリング周期で、データ分析部31によって指定されたコンポーネント21の短期記憶部212に格納されている状態データをエッジ内コントローラ22に読み出す(ステップS1)。
【0066】
次に、エッジ内コントローラ22が、診断データクラウドサーバ30側から指定されたルールに従い、転送された状態データに対して抽象度変換を行い、詳細情報、ステータス情報、または安全アラーム情報からなるコンポーネントレベル状態データに集約し、コンポーネントレベル状態データの転送先を決定し、コンポーネントレベル状態データの許容レイテンシを決定して、抽象度と許容レイテンシとの組み合わせに基づいてコンポーネントレベル状態データを分類する(ステップS2)。
【0067】
次に、エッジ内コントローラ22が、コンポーネントレベル状態データの分類結果(抽象度と許容レイテンシとの組み合わせ)とその種類(元の状態データの取得先であるコンポーネント21の種類等)とに基づいて、コンポーネントレベル状態データを転送先に転送する際の優先度を算出する。さらに、エッジ内コントローラ22が、コンポーネントレベル状態データの分類結果、優先度等を記録したヘッダ100を、コンポーネントレベル状態データに付加する(ステップS3)。
【0068】
次に、エッジ内コントローラ22が、コンポーネントレベル状態データの許容レイテンシが、短期記憶部23の記憶限界よりも大きいか否かに基づき、コンポーネントレベル状態データの保存先(短期記憶部23または中期記憶部24)を決定する(ステップS4)。
【0069】
具体的には、コンポーネントレベル状態データの許容レイテンシが大きいため、該コンポーネントレベル状態データを短期記憶部23に保存した場合に、該コンポーネントレベル状態データが短期記憶部23から転送される前に短期記憶部23が一杯になり得る場合、保存先を中期記憶部24に決定する。そして、次に、エッジ内コントローラ22が、許容レイテンシ及び優先度に基づき転送先への転送時刻を決定してヘッダ100に記録し、ヘッダ100が付加されているコンポーネントレベル状態データを中期記憶部24に一時保存する(ステップS5)。
【0070】
反対に、コンポーネントレベル状態データの許容レイテンシが小さいため、該コンポーネントレベル状態データを短期記憶部23に保存した場合に、該コンポーネントレベル状態データが短期記憶部23から転送される前に短期記憶部23が一杯になり得ない場合、保存先を短期記憶部23に決定する。そして、次に、エッジ内コントローラ22が、許容レイテンシ及び優先度に基づき転送先への転送時刻を決定してヘッダ100に記録し、ヘッダ100が付加されているコンポーネントレベル状態データを短期記憶部23に一時保存する(ステップS6)。
【0071】
その後、エッジ内コントローラ22が、短期記憶部23及び中期記憶部24に保存されている各コンポーネントレベル状態データを、そのヘッダ100に記録されている転送時刻になったタイミングで、ヘッダに記録されている転送先に転送する(ステップS7)。
【0072】
なお、短期記憶部23及び中期記憶部24に保存されているコンポーネントレベル状態データが転送される前にエッジデバイス20の電源がオフとされた場合、揮発性メモリから成る短期記憶部23のコンポーネントレベル状態データは消去されるが、不揮発性メモリから成る中期記憶部24のコンポーネントレベル状態データは消去されず保存されている。よって、エッジデバイス20の電源が再びオンとされた段階で中期記憶部24に残っているコンポーネントレベル状態データのうち、転送時刻を経過しているものは消去し、転送時刻を経過していないものについては転送時刻になったタイミングで転送先に転送するようにする。以上で、分散システム10によるデータ転送処理は終了される。
【0073】
上述したデータ転送処理によれば、状態データをコンポーネントレベル状態データに集約し、許容レイテンシを設けるので、保存、転送するコンポーネントレベル状態データのデータ量を適切に管理することができる。また、抽象度と許容レイテンシに基づいて優先度を算出するので、コンポーネントレベル状態データを適切なタイミングで転送先に転送することが可能となる。
【0074】
<分散システム10のユースケース>
次に、分散システム10のユースケースについて説明する。
【0075】
例えば、エッジデバイス20が起こした事故の要因を分析するような場合、データ取得を効率化するため、診断データクラウドサーバ30のデータ管理部32は、エッジデバイス20のエッジ内コントローラ22に対し、事故発生時刻をトリガタイミングに指定し、状態データを詳細情報及びステータス情報に集約させ、許容レイテンシを短くして中期記憶部24に保存させる。そして、ステータス情報とそれに基づいて厳選した詳細情報とを診断データクラウドサーバ30に転送させる。これにより、事故原因解明の1次調査及び詳細調査の両方を実現できる。
【0076】
また、例えば、エッジデバイス20のメンテナンスを行うため、前回のメンテナンスから今回のメンテナンスまでの長期の状態データが必要となる場合、荒いサンプリング周期で状態データを読み出してステータス情報に集約して診断データクラウドサーバ30に転送して長期記憶部33に保存する。そして、長期記憶部33のステータス情報に基づいてデータ分析部31により不具合等が検出された場合、より詳細な分析を行うために必要な状態データのみを取得するためのトリガポイントを指定し、特定時間帯の状態データをコンポーネント21から読み出し、詳細情報として診断データクラウドサーバ30に転送させる。これにより、エッジデバイス20から診断データクラウドサーバ30に転送するデータ量を最小化するとともに、長期記憶部33等のストレージに保存させるデータ量を削減できる。また、分析に必要な状態データだけを診断データクラウドサーバ30に転送させることができるので、メンテナンスの精度を維持することができる。
【0077】
また例えば、エッジデバイス20が自動運転機能を有する車両である場合、自動運転機能に関わるコンポーネント21から取得した状態データを安全アラーム情報に集約し、許容レイテンシを最小にし、転送先を自動稼働制御部29に設定する。これにより、コンポーネント21から取得した状態データを直ちに自動稼働制御部29にフィードバックできるので、自動運転機能を安全に制御することができる。
【0078】
さらに、例えばエッジデバイス20が自動運転機能を有する車両である場合、分散システム10は、複数の車両、信号、標識、エッジサーバ等が連携する共生安全システムに適用することができる。
【0079】
図6は、分散システム10を適用した共生安全システムの構成例を示している。
【0080】
該共生安全システムにおいては、エッジデバイス20-1としての車両の自動運転機能に不具合が発生して安全状態レベルが低下している場合、その情報をエッジデバイス20-1のエッジ内コントローラ22が、転送先指示に従って周囲に伝達する。該情報は、事故等を回避する安全担保のために即座に周囲に共有する必要があるため、通常と比べて許容レイテンシが短くなる。このため、安全アラーム情報を短い経路で関係する機器に伝送する。
【0081】
安全アラーム情報を伝達する方法としては、エッジサーバ40を経由して、周辺のエッジデバイス20-2やエッジデバイス20-3等3と通信する方法が考えられる。エッジサーバ40は、比較的狭い範囲に位置するエッジデバイス20と通信するために設置されるものであり、短いレイテンシでの処理や通信を可能とする。エッジサーバ40とエッジデバイス20との通信方式としては5Gや6G等を利用してもよい。
【0082】
エッジサーバ40は、自己の周辺に存在する適切なエッジデバイス20-2等に通信したり、エッジデバイス20-1から取得した安全アラーム情報や周囲情報等に対して所定の簡易処理を行い、その結果得られる特定の制御命令を周囲のエッジデバイス20-2等送信することが考えられる。
【0083】
安全アラーム情報を伝達する他の方法としては、例えば、インフラ機器50に伝達することで安全を担保する方法が考えられる。インフラ機器50としては、例えば信号機を挙げることができ、例えば、ある交差点に安全状態レベルが低下している車両が存在していると判明した場合、該交差点の信号機の灯火を赤に変更して、安全状態レベルが低下している車両に周囲に他の車両や人が近づかないようにコントロールすることが考えられる。
【0084】
さらに、より緊急性が高い場合における安全アラーム情報を伝達する他の方法としては、例えばV2V(Vehicle-to-Vehicle)を用い、エッジデバイス20-1とエッジデバイス20-5との間で直接情報を通信することが考えられる。
【0085】
次に、エッジデバイス20が自動運転機能を有する車両である場合におけるテレマティクス保険に対するユースケースについて説明する。
【0086】
分散システム10によれば、事故に至るケースにおけるエッジデバイス20の状態に関する情報が診断データクラウドサーバ30に蓄積される。このため、事故に繋がりやすいエッジデバイス20の状態を統計的に求めることができ、これに基づき、各エッジデバイス20のリアルタイムな状態取得データから、電子制御起因による事故を起こしやすい状況をスコア化することができる。そして、該スコアを用いて、保険料を算出することに活用することもできる。また、先に述べたような事故要因分析結果に基づき、事故発生時の説明責任を本システムが担うことにより、事故の責任を明確化し、事故時の費用負担を算出するロジックを提供することもできる。
【0087】
次に、エッジデバイス20から得られる情報とそれ以外の情報とを組み合わせることにより、不具合要因の分析をさらに高度化できる情報連携システムについて説明する。
【0088】
図7は、分散システム10を適用した情報連携システムの構成例を示している。
【0089】
エッジデバイス20の不具合発生要因には、例えば特定地域における電波環境の問題であったり、温度や湿度等の気候に関する問題であったり、製造時の特定ロット特有の問題であったり、特定部品の故障のしやすさの問題であったり、さらにはOTA(Over The Air)のようなソフト更新に起因した電子・電動部制御方法の変化の問題であったりする。
【0090】
このような2次要因が関係する場合、それら情報も含めた分析が、精度の高い分析には不可欠となる。そのため、
図7のように、地図情報、環境情報、製造情報、部品情報、OTA更新情報等と特定のデバイスと紐づけて分析することを可能とする。なお、この分析の際には、データ分析部31にて、エッジデバイス20から収集した診断データの時系列情報と、2次要因情報との相関を明らかにするため、異種データ間時刻調整機能を利用する。
【0091】
以上説明したように、分散システム10は、様々な分野に対して診断サービスを提供することが可能である。そのため、顧客単位で定義されたサービス内容に合わせて診断トリガポイントを定義する機能をデータ管理部32は有する。また、サービス終了時は不要な診断トリガポイントを削除することで、データ通信料を適切なものにすることができる。
【0092】
本発明に係る技術は、分散システム、及びデータ転送方法に限られず、計算機、コンピュータ読み取り可能なプログラム等の様々な態様で提供できる。
【0093】
本発明は、上述した実施形態に限定されるものではなく、様々な変形が可能である。例えば、上述した実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えたり、追加したりすることが可能である。例えば、レジスタからの値取得の代替として、コンポーネント21内で実行されるプログラムやスクリプトの変数やログ情報の値を取得してもよい。また、
図1、
図6、
図7で説明した実施形態は一部又はすべてを組み合わせてもよい。
【0094】
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。また、制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際には殆ど全ての構成が相互に接続されていると考えてもよい。
【符号の説明】
【0095】
1・・・ネットワーク、20・・・エッジデバイス、10・・・分散システム、20・・・エッジデバイス、21・・・コンポーネント、211・・・データ取得部、212・・・短期記憶部、22・・・エッジ内コントローラ、23・・・短期記憶部、24・・・中期記憶部、25・・・無線通信部、26・・・有線通信部、27・・・EDR,28・・・OBDII、29・・・自動稼働制御部、30・・・診断データクラウドサーバ、31・・・データ分析部、32・・・データ管理部、33・・・長期記憶部、40・・・エッジサーバ、50・・・インフラ機器、100・・・ヘッダ、200・・・計算機、201・・・プロセッサ、202・・・メモリ、203・・・外部記憶装置、204・・・音声出力装置、205・・・音声入力装置、206・・・入力装置、207・・・出力装置、208・・・通信装置、209・・・データバス