JP6465787B2 - データ処理装置、デバイス、データ処理方法及びデータ処理プログラム - Google Patents

データ処理装置、デバイス、データ処理方法及びデータ処理プログラム Download PDF

Info

Publication number
JP6465787B2
JP6465787B2 JP2015234943A JP2015234943A JP6465787B2 JP 6465787 B2 JP6465787 B2 JP 6465787B2 JP 2015234943 A JP2015234943 A JP 2015234943A JP 2015234943 A JP2015234943 A JP 2015234943A JP 6465787 B2 JP6465787 B2 JP 6465787B2
Authority
JP
Japan
Prior art keywords
counter
data
time
value
acquisition
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.)
Expired - Fee Related
Application number
JP2015234943A
Other languages
English (en)
Other versions
JP2017102658A (ja
Inventor
良太 辻尾
良太 辻尾
魚住 光成
光成 魚住
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2015234943A priority Critical patent/JP6465787B2/ja
Publication of JP2017102658A publication Critical patent/JP2017102658A/ja
Application granted granted Critical
Publication of JP6465787B2 publication Critical patent/JP6465787B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Electric Clocks (AREA)
  • Arrangements For Transmission Of Measured Signals (AREA)

Description

本発明は、デバイスでデータが取得された時刻を算出する技術に関する。
デバイス(センサ)で採取した計測データを監視・制御センタに集約し、発生した事象の解釈を行うセンサー・フュージョンシステムがある。このようなシステムでは、計測データの取得時刻を正確に計測データに紐付ける必要がある。
デバイスは、低コスト化や設置される環境によりRTC(real−time clock)などのGPS(Global Positioning System)やNTP(Network Time Protocol)などの時刻同期機能を有さないものを想定する必要がある。
車両の監視や自動制御を行うシステムでは、加速度、位置などの車両自身のデータや、信号機の状態や地面の状態などの周囲環境のデータを収集する。
また、複数の計測データを取得した時刻で紐付する必要があるが、発生した事象を正しく認識するためには、計測データの時刻同士の誤差精度は10[ms]程度とする必要がある。
計測データの取得時刻に誤差が発生する契機として、デバイス−センタ間の通信による誤差、デバイスの発振器の周囲の温度や個体差による周波数のずれ(ドリフト誤差と呼ぶ)、デバイスの起動タイミングによる計測データ取得タイミングのずれ(オフセット誤差と呼ぶ)が考えられる。
計測データの取得時刻を一元管理する方法として、特許文献1に、計測データをデバイスからセンタに送信する際にセンタから送信されたビーコン信号の受信時刻を付与して送信することで、センタ側にて計測データを取得した時刻を補正する技術が開示されている。
また、特許文献2に、計測データの送信側(デバイス)がセンタ側に時刻情報を要求し、センタから時刻情報を受け取るまでの時刻とデータに含まれている時刻情報から、伝送遅延を推定し、デバイス側で時刻を補正する技術が開示されている。
さらに、特許文献3に、センタは、デバイスに対して時刻同期情報を発行せず、デバイスより受信したデータへのACKに時刻情報を含めることで、デバイスの時刻を同期する技術が開示されている。
特開2010−102549号公報 特開2009−65443号公報 特開2011−135498号公報
特許文献1、特許文献2、特許文献3の方法では、デバイスにRTCなどの時刻情報を管理する機能を実装する必要があるという課題がある。
本発明は、このような課題を解決することを主な目的としており、時刻情報を管理する機能がデバイスに実装されていなくても、デバイスでデータが取得された時刻を算出できるようにすることを主な目的とする。
本発明に係るデータ処理装置は、
カウンタを有するデバイスから、前記デバイスで取得されたデータを受信する受信部と、
前記デバイスに制御情報を送信する送信部と、
前記デバイスで前記制御情報が受信された際の前記カウンタの値である受信カウンタ値と、前記デバイスでデータが取得された際の前記カウンタの値である取得カウンタ値と、前記デバイスから前記データが送信された際の前記カウンタの値である送信カウンタ値と、前記カウンタの周波数値と、前記受信部により前記データが受信された時刻とに基づき、前記デバイスで前記データが取得された時刻を算出する時刻算出部とを有する。
本発明では、受信カウンタ値と取得カウンタ値と送信カウンタ値とカウンタの周波数値とデータが受信された時刻とに基づき、デバイスでデータが取得された時刻を算出できる。このため、時刻情報を管理する機能がデバイスに実装されていなくても、デバイスでデータが取得された時刻を算出することができる。
実施の形態1に係るデータ収集システムのシステム構成例とハードウェア構成例を示す図。 実施の形態1に係るデバイスの機能構成例を示す図。 実施の形態1に係るデータ処理装置の機能構成例を示す図。 実施の形態1に係るデバイスとデータ処理装置との間の通信シーケンス例を示す図。 実施の形態1に係るドリフト誤差の発生例を示す図。 実施の形態1に係るドリフト誤差の抑制方法の例を示す図。 実施の形態1に係るドリフト誤差の検出方法及び補正方法の例を示す図。 実施の形態1に係るオフセット誤差の発生例を示す図。 実施の形態1に係るオフセット誤差の抑制方法の例を示す図。 実施の形態1に係るオフセット誤差の検出方法及び補正方法の例を示す図。 実施の形態1に係るデバイスのメイン処理の例を示すフローチャート図。 実施の形態1に係るデバイスの割込み処理の例を示すフローチャート図。 実施の形態1に係るデータ処理装置のコア処理1の例を示すフローチャート図。 実施の形態1に係るデータ処理装置のコア処理2の例を示すフローチャート図。 実施の形態1に係るデータ処理装置のコア処理3の例を示すフローチャート図。 実施の形態2に係るデバイスの機能構成例を示す図。 実施の形態2に係るデバイスとデータ処理装置との間の通信シーケンス例を示す図。 実施の形態2に係るデバイスのメイン処理の例を示すフローチャート図。 実施の形態2に係るデータ処理装置のコア処理1の例を示すフローチャート図。 実施の形態2に係るデータ処理装置のコア処理2の例を示すフローチャート図。 実施の形態2に係るデータ処理装置のコア処理3の例を示すフローチャート図。
実施の形態1.
***構成の説明***
図1は、本実施の形態に係るデータ収集システムのシステム構成例とハードウェア構成例を示す。
本実施の形態に係るデータ収集システムは、複数のデバイス200とセンタ10で構成される。
センタ10には、データ処理装置100とデータ分析装置500とストレージ600が配置されている。
各デバイス200にはセンサが接続されており、各デバイス200はセンサからセンサで計測された計測データを取得し、取得した計測データをセンタ10に対して送信する。
センタ10内のデータ処理装置100は各デバイス200から送信された計測データを受信し、受信した計測データをストレージ600に格納する。
また、データ処理装置100は各デバイス200で計測データが取得された時刻を算出する。
また、データ処理装置100はドリフト誤差及びオフセット誤差の検出及び補正を行う。
データ分析装置500は、ストレージ600に格納されている計測データを用いた分析を行う。
ストレージ600は、HDD(Hard Disk Drive)、SSD(Solid State Drive)である。
デバイス200、データ処理装置100、データ分析装置500はそれぞれコンピュータである。
以下では、主にデバイス200とデータ処理装置100について説明する。
デバイス200は、ハードウェアとして、CPU(Central Processing Unit)2100、RAM(Random Access Memory)2200、ROM(Read Only Memory)2300、通信I/F(Interface)2400、センサI/F2500を備える。
CPU2100は、後述するプログラムを実行する。
RAM2200には、CPU2100が実行するプログラムがロードされる。また、RAM2200には、センサからの計測データが格納される。
ROM2300には、CPU2100が実行するプログラムが記憶されている。
通信I/F2400は、データ処理装置100と通信するための通信ネットワークとのインタフェースである。通信ネットワークは有線ネットワーク、無線ネットワークのいずれでもよい。
通信I/F2400は、通信チップ又はNIC(Network Interface Card)である。
センサI/F2500は、センサとのインタフェースである。
データ処理装置100は、ハードウェアとして、CPU1110、RAM1120、ストレージI/F1130、通信I/F(LAN)1140、通信I/F(デバイス)1150、ROM1160を備える。
CPU1110は、後述するプログラムを実行する。
RAM1120には、CPU1110が実行するプログラムがロードされる。
ROM1160には、CPU1110が実行するプログラムが記憶されている。
ストレージI/F1130は、ストレージ600とのインタフェースである。
通信I/F(LAN)1140は、センタ10内のLAN(Local Area Network)とのインタフェースである。
通信I/F(デバイス)1150は、デバイス200と通信するための通信ネットワークとのインタフェースである。前述したように、通信ネットワークは有線ネットワーク、無線ネットワークのいずれでもよい。
通信I/F(LAN)1140及び通信I/F(デバイス)1150は、通信チップ又はNICである。
図2はデバイス200の機能構成例を示し、図3はデータ処理装置100の機能構成例を示す。
前述したように、デバイス200は、センサで取得された計測データをデータ処理装置100に送信する。計測データに、計測データの取得時刻を付与する必要があるが、デバイス200は、安価なデバイスとするため、RTCなどの時刻を保持する機能はない。
このため、デバイス200は、計測データにカウンタ250の値を付与する。
また、計測データの取得周期は、取得周期管理部240で管理しており、外部からの変更が可能である。
データ処理装置100は、デバイス200がセンサから取得する計測データを周期的に取得し、計測時刻を補正してストレージ600に格納する。
データ処理装置100は、計測データに付与するべき時刻(計測データの取得時刻)を算出するために計測データ時刻算出部150を備えている。
また、データ処理装置100は、デバイス200の収集周期を補正するためのデバイス側取得タイミング補正部140も備えている。
図2において、受信部210は、通信I/F2400を介して、データ処理装置100からの電文を受信する。
受信部210で行われる処理は受信ステップに相当する。
送信部280は、通信I/F2400を介して、データ処理装置100に電文を送信する。
送信部280で行われる処理は送信ステップに相当する。
電文処理部220は、データ処理装置100に送信する電文の生成とデータ処理装置100から受信した電文の解釈を行う。
ID管理部230は、データ処理装置100との一連の送受信動作に用いられるID(Identifier)を管理する。
取得周期管理部240は、計測データの取得周期を管理している。
また、取得周期管理部240は、計測データの取得タイミングとしてカウンタ値上限値を保持しており、カウンタ250でカウントするカウンタ値がカウンタ値上限値となった場合に計測データ取得部270に計測データ取得指示を与える。
その後、カウンタ250は初期値から再度カウントを行う。
また、取得周期管理部240は、後述するように、受信部210がデータ処理装置100から補正量を受信した場合に、補正量をカウンタ250に適用する。
取得周期管理部240は、補正適用部の例に相当する。
カウンタ250は、デバイス200のシステムクロックなどであり、一定間隔で値をカウントしている。
計測データ記憶部260は、計測データ取得部270で取得した計測データを計測データ取得部270より受取り、保持する。
計測データ取得部270は、センサI/F2500を介して、センサから計測データを取得する。
計測データの取得は、取得周期管理部240より計測データ取得指示を受けたタイミングで実施する。
計測データ取得部270は、計測データ取得指示を受けた際に、センサI/F2500を介して、計測データ取得要求をセンサに出力し、センサから計測データを取得する。
計測データ取得部270はデータ取得部の例に相当する。
また、計測データ取得部270で行われる処理はデータ取得ステップに相当する。
図2に示す、受信部210、電文処理部220、ID管理部230、取得周期管理部240、カウンタ250、計測データ取得部270はプログラムにより実現される。
つまり、CPU2100が、これら受信部210、電文処理部220、ID管理部230、取得周期管理部240、カウンタ250、計測データ取得部270の機能を実現するプログラムを実行して、後述する受信部210、電文処理部220、ID管理部230、取得周期管理部240、カウンタ250、計測データ取得部270の動作を行う。
また、計測データ記憶部260は、RAM2200により実現される。
図3において、受信部110は、複数のデバイス200からの電文を受信する。
受信部110で行われる処理は受信ステップに相当する。
送信部170は、複数のデバイス200に電文を送信する。
送信部170で行われる処理は送信ステップに相当する。
電文処理部120は、デバイス200に送信する電文の生成とデバイス200から受信した電文の解釈を行う。
また、電文処理部120は、後述のデバイス側取得タイミング補正部140で算出された補正量をカウンタ250に適用するようデバイス200に指示する。
電文処理部120は、補正指示部の例に相当する。
なお、電文処理部120で行われる処理は補正指示ステップに相当する。
ID管理部130は、デバイス200との一連の送受信動作に用いられるIDを管理する。
デバイス側取得タイミング補正部140は、デバイス200から収集される計測データから、計測データの取得周期のドリフト誤差とオフセット誤差を検出する。
また、デバイス側取得タイミング補正部140は、デバイス200の取得周期管理部240で管理している計測データの取得周期の補正量を算出する。
デバイス側取得タイミング補正部140は、補正量算出部の例に相当する。
なお、デバイス側取得タイミング補正部140で行われる処理は補正量算出ステップに相当する。
計測データ時刻算出部150は、デバイス200から受信した計測データのデバイス200における取得時刻を算出する。
計測データ時刻算出部150は、時刻算出部の例に相当する。
なお、計測データ時刻算出部150で行われる処理は時刻算出ステップに相当する。
データ格納部160は、デバイス200から受信した計測データを、計測データ時刻算出部150により算出された取得時刻とともにストレージ600に格納する。
図3に示す、受信部110、電文処理部120、ID管理部130、デバイス側取得タイミング補正部140、計測データ時刻算出部150、送信部170はプログラムにより実現される。
つまり、CPU1110が、これら受信部110、電文処理部120、ID管理部130、デバイス側取得タイミング補正部140、計測データ時刻算出部150、送信部170の機能を実現するプログラムを実行して、後述する受信部110、電文処理部120、ID管理部130、デバイス側取得タイミング補正部140、計測データ時刻算出部150、送信部170の動作を行う。
***動作の説明***
(通信シーケンスについて)
図4は、本実施の形態に係るデバイス200とデータ処理装置100との間で行われる通信シーケンスの例を示す。
図4を参照して、デバイス200とデータ処理装置100の動作例を説明する。
なお、図4において、「C」はデバイス200のカウンタ250のカウンタ値を表す。
「T」は、データ処理装置100で得られるタイムスタンプ(時刻)を表す。
「R」は、デバイス200とデータ処理装置100との間の通信路の片道の伝送遅延を表す。
なお、「R」の値は、上り方向(デバイス200からデータ処理装置100の方向)の通信でも下り方向(データ処理装置100からデバイス200の方向)の通信でも同じであるものとする。
「f」は、デバイス200のカウンタ250の周波数を表す。
「Data」は、デバイス200がセンサから取得する計測データである。
「Tx」は、デバイス200が計測データを取得した時点のデータ処理装置100での時刻を表す。
図4では、デバイス200は、自律的にセンサからDataを取得し、Dataをデータ処理装置100に送信する。
データ処理装置100は、Dataを受信するとともに、デバイス200がDataを取得した時点でのデータ処理装置100での時刻Txを求める。
動作を以下に説明する。
(1)デバイス200はDataをセンサから取得するとともに、同時にカウンタ値Cも取得する。
(2)次に、デバイス200は、データ処理装置100にDataを送信する際にカウンタ値Cを取得し、Data、C及びCを同時にデータ処理装置100に送信する。
(3)次に、データ処理装置100は、デバイス200より送信されたData、C及びCを受信する。また、データ処理装置100は、Data、C及びCの受信時にタイムスタンプTを取得する。更に、データ処理装置100は、IDを生成し、デバイス200にカウンタ値の再取得要求を送信する。なお、カウンタ値の再取得要求にはIDが含まれる。IDは制御情報である。
(4)デバイス200は、カウンタ値の再取得要求を受信する。また、デバイス200は、カウンタ値の再取得要求とともにカウンタ値Cを取得する。そして、デバイス200は、カウンタ値の再取得要求に含まれるIDと、デバイス200のカウンタ周波数f(公称)と、カウンタ値Cを、IDの送信元であるデータ処理装置100に送信する。
(5)データ処理装置100は、IDとカウンタ値Cとデバイス200のカウンタ周波数fを受信し、受信した時刻のタイムスタンプTを取得する。
データ処理装置100は、これらの情報を用いて、デバイス200がセンサから計測データDataを取得した時刻Txを算出する。また、データ処理装置100は、計測データDataを時刻Txとともにストレージ600に格納する。
時刻Txの算出方法を説明する。
データ処理装置100は、伝送遅延(片道分)Rとデバイス側でDataを取得してからデータの送信開始までに要した時間(C−C)の合計をカウンタ周波数fで除算し、時刻Tから除算値を減算する。
このため、データ処理装置100は、Txを、
Tx=T−((R+(C−C))/f)
(R=(C−C)/2)で近似する)
で求める。
(ドリフト誤差について)
本実施の形態では、上記の通り、デバイス200のカウンタ値をデータ処理装置100の時刻に置き換えるが、デバイス200のクロック周波数は、個体や温度によって誤差が発生する。このような誤差をドリフト誤差と呼ぶこととする。
図5にドリフト誤差の発生例を示す。
図5は、デバイス1及びデバイス2の取得周期管理部240が持つカウンタの値を示しており、カウンタ値が「9999」になった際に計測データ取得指示が発生するものとしている。
デバイス2のクロックは、ドリフト誤差により、1カウントあたり0.0001[μs]の遅れが生じているものとすると、10[s]ごとに1msの誤差が生じることとなる。
(ドリフト誤差の抑制方法について)
このようなドリフト誤差を抑制する方法を図6に示す。
データ処理装置100は、デバイス200の取得周期管理部240が持つカウンタの上限値を変更することにより、ドリフト誤差を低減させる。
(ドリフト誤差の検出方法及び補正方法について)
図7にドリフト誤差の検出方法及び補正方法を示す。
以下で説明するドリフト誤差の検出及び補正は、デバイス側取得タイミング補正部140により行われる。
デバイス側取得タイミング補正部140は、図7に示すように、「一元管理時刻」と「計測時刻」と「誤差」と「前回誤差との差分」を管理している。
「一元管理時刻」は、デバイス200がセンサから計測データを取得すべき時刻である。
つまり、「一元管理時刻」は、計測データの取得周期により定義されるデータ取得時刻であり、定義データ取得時刻に相当する。
「計測時刻」は、図3のシーケンスによりデバイス200のカウンタ値から算出した、デバイス200がセンサから計測データを取得した時刻である。
つまり、「計測時刻」は、デバイス200で計測データが取得される度にカウンタ250で計数された計測データ取得の際のカウンタ値を用いて算出された時刻であり、算出データ取得時刻に相当する。
「誤差」は、「一元管理時刻」と「計測時刻」との差である。
「前回誤差の差分」は、前回の誤差と今回の誤差との差分である。
ドリフト誤差の検出については、デバイス200においてドリフト誤差が発生している場合は、「前回誤差との差分」が周期的に変化するため、デバイス側取得タイミング補正部140は、「前回誤差との差分」をフーリエ変換することでドリフト誤差を検出することができる。
ここでフーリエ変換を実施する時間範囲は、任意である。時間範囲を広くとれば低周波数(ドリフト誤差が小さい)の誤差が検出可能であるが、デバイス側取得タイミング補正部140の処理量が増加する。一方、時間範囲を狭くとれば、高周波(ドリフト誤差が大きい)の誤差が検出可能である。
ドリフト誤差の補正については、デバイス側取得タイミング補正部140は、ドリフト誤差の検出時に取得した周期性から補正量を判断する。フーリエ変換を実施して得られたスペクトルが最も大きい周波数の周期とデバイスのカウンタ値の上限を用いて補正を行う。
センタ側で管理しているデータ取得周期をT_get、ドリフト誤差の周期をT_derr、デバイス200の取得周期管理部240のカウンタ値の補正前の上限をC_oldとすると、取得周期管理部240のカウンタ値の補正後の上限をC_newは以下の通りとなる。
C_new=C_old*T_get/(T_get+T_derr)
このように、デバイス側取得タイミング補正部140は、複数の「一元管理時刻」と複数の「計測時刻」とを時系列に比較し、誤差を解析した結果、「計測時刻」の「一元管理時刻」に対する誤差が周期的に発生していることが判明した場合に、カウンタに継続して適用する補正量(ドリフト誤差の補正量)を算出する。
そして、電文処理部120が、デバイス側取得タイミング補正部140により算出されたドリフト誤差の補正量をカウンタ250に継続して適用するようデバイス200に指示する電文を生成し、送信部170が当該電文をデバイス200に送信する。
(オフセット誤差について)
本実施の形態では、上記の通り、デバイス200のカウンタ値をデータ処理装置100の時刻に置き換えるが、デバイス200のクロックの周波数が低い場合、デバイス200の起動タイミングにより、データ処理装置100で管理する一元管理時刻の許容誤差を超える。このような誤差をオフセット誤差と呼ぶこととする。
図8にドリフト誤差の発生例を示す。
図8は、デバイス1及びデバイス2の取得周期管理部240が持つカウンタの値を示しており、カウンタ値が「9999」になった際に計測データ取得指示が発生するものとしている。
デバイス2のクロックは、オフセット誤差により、計測データ取得指示の発生が、毎回一定のカウント分の誤差が生じることが確認できる。
デバイス200のカウンタ250の周波数が低い場合は、誤差は大きくなり、データ処理装置100が管理する一元管理時刻の許容誤差を超えることがわかる。
(オフセット誤差の抑制方法について)
このようなオフセット誤差を抑制する方法を図9に示す。
データ処理装置100は、デバイス200の取得周期管理部240が持つカウンタの上限値を1度だけ変更することにより、オフセット誤差を低減させる。
(オフセット誤差の検出方法及び補正方法について)
図10にオフセット誤差の検出方法及び補正方法を示す。
以下で説明するオフセット誤差の検出及び補正は、デバイス側取得タイミング補正部140により行われる。
図10は、図7と同様に、デバイス側取得タイミング補正部140が「一元管理時刻」と「計測時刻」と「誤差」と「前回誤差との差分」を管理していることを示している。
図10の「一元管理時刻」、「計測時刻」、「誤差」、「前回誤差との差分」の意味は、図7で説明した通りである。
オフセット誤差の検出について、オフセット誤差が発生している場合は、「誤差」が常に一定量発生しているとともに「前回誤差との差分」の変化が発生しない。
このため、デバイス側取得タイミング補正部140は、「前回誤差との差分」をフーリエ変換し、周期性が確認できないにも関わらず、「誤差」が発生している場合は、オフセット誤差であると検出することができる。
オフセット誤差の補正については、デバイス側取得タイミング補正部140は、オフセット誤差の誤差量から補正量を判断する。
オフセット誤差の量をT_oerr、デバイス200のカウンタ250の周期をT、デバイス200の取得周期管理部240のカウンタ値の補正前の上限をC_oldとすると、取得周期管理部240のカウンタ値の補正後の上限を1度だけ変更する値C_onceは以下の通りとなる。なお、T_oerrに関しては、進みを+、遅れを−として表現する。
C_once=C_old+(T/T_err)
このように、デバイス側取得タイミング補正部140は、複数の「一元管理時刻」と複数の「計測時刻」とを時系列に比較し、誤差を解析した結果、複数の「計測時刻」のうちの初期段階の「計測時刻」で誤差が発生した後は誤差が発生していないことが判明した場合に、期間を限定してカウンタ250に適用する補正量(オフセット誤差の補正量)を算出する。
そして、電文処理部120が、デバイス側取得タイミング補正部140により算出されたオフセット誤差の補正量を期間を限定してカウンタに適用するようデバイス200に指示する電文を生成し、送信部170が当該電文をデバイス200に送信する。
(デバイスの処理について)
図11及び図12は、デバイス200の処理シーケンスを示している。
デバイス200の処理には、計測データを収集するメインの処理と、データ処理装置100からの電文受信時の割込み処理の2種類がある。
なお、図11及び図12に示される動作手順は、デバイス200でのデータ処理方法及びデータ処理プログラムの例に相当する。
(1)メイン処理
まず、取得周期管理部240が、計測データ取得タイミングであるかを確認する(DM1)。
カウンタ250のカウンタ値がカウンタ値上限値であれば、計測データ取得部270は、計測データ取得タイミングであると判断する。
計測データの取得タイミングであれば(DM1でYES)、取得周期管理部240は、計測データ取得部270に計測データ取得指示を発行する。
次に、計測データ取得部270が、計測データData及びCの取得を行う(DM2)。
計測データ取得部270は、センサI/F2500を介してセンサに計測データ取得要求を発行する。また、計測データ取得部270はその直後にカウンタ250よりカウンタ値Cを取得する。
センサは計測データ取得要求に応答して、計測データ取得部270に計測データDataを送信する。
計測データ取得部270は計測データDataを受信し、受信した計測データDataとカウンタ値Cを計測データ記憶部260を介して電文処理部220に送信する。
なお、カウンタ値Cは、計測データ取得部270により計測データが取得された際のカウンタ250の値であり、取得カウンタ値に相当する。
次に、電文処理部220が、Cの取得を行う(DM3)。
電文処理部220は、カウンタ値Cと計測データDataを取得すると、カウンタ250よりカウンタ値Cを取得する。
その後、電文処理部220は、送信部280を用いて、計測データDataとカウンタ値C及びCの送信を行う(DM4)。
電文処理部220は、計測データDataとカウンタ値C及びCを含む電文を生成し、送信部280と通信I/F2400を介して電文をデータ処理装置100に送信する。
なお、カウンタ値Cは、計測データを送信する際のカウンタ250の値であり、送信カウンタ値に相当する。
最後に、オフセット誤差の対応のためにデータ取得周期を変更していた場合(DM5でYES)は、取得周期管理部240が、データ取得周期を元の周期に戻す(DM6)。
つまり、取得周期管理部240は、DM4の電文の送信後、データ取得周期のオフセットフラグを確認し、1であれば、オフセットフラグ値を0とし、カウンタ値上限値を前回の値に戻す。
(2)割込み処理
割込み処理は、データ処理装置100から電文を受信した場合に発生する。
まず、電文処理部220が、データ処理装置100から受信した電文の内容を確認する(DI1,DI2)。
受信部210が受信した電文は、受信部210を介して電文処理部220に渡される。
電文処理部220は、データ処理装置100に送信した計測データに対する応答であるか、計測データの取得周期を補正する命令であるかを判断する。
データ処理装置100に送信した計測データに対する応答であれば(DI2で応答)、電文処理部220は、データ処理装置100から受信した電文からIDを抽出し(DI3)、ID管理部230に送付する。
その直後に、電文処理部220は、カウンタ250よりカウンタ値Cを取得する。
また、電文処理部220は、ID管理部230より、IDを受け取る。
そして、電文処理部220は、IDと、カウンタ値C3と、デバイス200に予め設定されているカウンタ250の周波数fを含む電文を生成し、送信部280と通信I/F2400を介して電文をデータ処理装置100に送信する。
なお、カウンタ値Cは、受信部210が制御情報であるIDを受信した際のカウンタ250の値であり、受信カウンタ値に相当する。
一方、データ処理装置100から受信した電文が計測データの取得周期を補正する命令であった場合(DI2で命令)は、電文処理部220は、オフセット誤差の補正命令であるか、ドリフト誤差の補正命令であるかを確認する(DI6)。
オフセット誤差の補正命令であった場合(DI6でYES)は、電文処理部220は、オフセット対応処理を行う(DI7)。
具体的には、電文処理部220は、電文に記載されている補正量を、取得周期管理部240が保持しているデータ取得周期のカウンタ値上限値に設定する。また、オフセットフラグを1に設定し、前回のカウンタ値上限値を保管しておく。
ドリフト誤差の補正であった場合(DI6でNO)は、電文処理部220は、ドリフト対応処理を行う(DI8)。
具体的には、電文処理部220は、電文に記載されている補正量を、取得周期管理部240が保持しているデータ取得周期のカウンタ値上限値に設定する。
(データ処理装置の処理)
図13、図14及び図15は、データ処理装置100の処理シーケンスを示している。
データ処理装置100は、3つの処理を並列で実施している。
1つ目の処理(コア処理1)は、計測データを受信し、IDを返送する処理であり、図13に示されている。
2つ目の処理(コア処理2)は、IDに対する応答を受信した後の処理であり、計測時刻を算出する処理であり、図14に示されている。
3つ目の処理(コア処理3)は、デバイス200の計測データ収集周期を補正するための処理であり、図15に示されている。
なお、図13〜図15に示される動作手順は、データ処理装置100でのデータ処理方法及びデータ処理プログラムの例に相当する。
(1)コア処理1(計測データの受信とIDの返送)
受信部110が、デバイス200から送信された計測データDataとカウンタ値C及びCを受信した場合(Cp1でYES)は、電文処理部120がセンタ側の時刻Tを取得する(Cp2)。
時刻Tは、受信部110が計測データDataとカウンタ値C及びCを受信した時刻である。
次に、電文処理部120は、ID管理部130よりIDを取得し、IDを含む電文を生成し、送信部170が通信I/F(デバイス)1150を介して、電文をデバイス200に送信する(Cp3)。
IDの送信後は、データ格納部160が、計測データData、カウンタ値C及びC、時刻T、IDをストレージ600に保存する(Cp4)。
(2)コア処理2(IDに対する応答の受信後の処理)
受信部110が、デバイス200から送信されたカウンタ周波数f、カウンタ値C、IDを受信した場合(Cp5でYES)は、電文処理部120がセンタ側の時刻Tを取得する(Cp6)。
時刻Tは、受信部110がカウンタ周波数f、カウンタ値C、IDを受信した時刻である。
そして、電文処理部120は、計測データ時刻算出部150に通知を行う。
計測データ時刻算出部150は、ストレージ600より計測データData、カウント値C及びC、時刻T1、IDを読み出す(Cp7)。
また、計測データ時刻算出部150は、時刻の補正の実施、すなわち、デバイス200で計測データを取得した時点でのセンタ側の時刻Txを算出する(Cp8)。
時刻Txの算出方法は前述した通りである。
最後に、データ格納部160が、計測データData、カウンタ値C、C及びC、カウンタ周波数f、時刻T及びT、ID、時刻Txを、IDをキーとしてストレージ600に格納する(Cp9)。
(3)コア処理3(デバイス200の計測データ収集周期を補正するための処理)
デバイス側取得タイミング補正部140は、一定周期で各デバイス200の計測データ取得タイミングの補正が必要であるかを確認する(Cp10)。
ドリフト誤差又はオフセット誤差を補正する必要があれば(Cp10で要)、デバイス側取得タイミング補正部140が補正量を算出し、電文処理部120がデバイス側取得タイミング補正部140が算出した補正量を通知する電文を生成し、送信部170が通信I/F(デバイス)1150を介して電文をデバイス200に送信する(Cp11)。
なお、Cp10の補正の要否の確認方法及びCp11の補正量の算出方法は、前述の(ドリフト誤差の検出方法及び補正方法について)及び(オフセット誤差の検出方法及び補正方法について)に記載した通りである。
***実施の形態の効果の説明***
本実施の形態によれば、取得カウンタ値(c)と送信カウンタ値(c)と受信カウンタ値(c)とカウンタ周波数値(f)とデータ受信された時刻(T)とに基づき、デバイスでデータが取得された時刻(Tx)を算出できる。このため、時刻情報を管理する機能がデバイスに実装されていなくても、デバイスでデータが取得された時刻(Tx)を算出することができる。
つまり、本実施の形態では、NTP、RTCなどの時刻機能が実装されていないデバイスのデータ取得時刻をセンタ側で補正して正確に得ることができる。
また、本実施の形態では、デバイスでデータが取得される度にカウンタで計数されたデータ取得の際のカウンタ値を用いて算出された時刻である「計測時刻」(算出データ取得時刻)と、データ取得周期で定義されるデータ取得時刻である「一元管理時刻」(定義データ取得時刻)とを比較し、「計測時刻」の「一元管理時刻」に対する誤差を解析し、誤差を補正するためのカウンタに対する補正量を算出する。更に、算出された補正量をカウンタに適用するようデバイスに指示する。
このため、本実施の形態によれば、NTP、RTCなどの時刻機能が実装されていないデバイスで発生する計測タイミングのずれ(オフセット誤差及びドリフト誤差)を補正することができる。
実施の形態2.
実施の形態1ではデバイスが自律的に計測データをデータ処理装置に送信する仕組みであったが、本実施の形態では、データ処理装置がデバイスに計測データの送信を指示する例を説明する。
なお、以下では、実施の形態1との差異を中心に説明を行う。
以下で説明していない事項は、実施の形態1と同じである。
***構成の説明***
本実施の形態でも、データ収集システムのシステム構成例及びハードウェア構成例は図1に示す通りである。
また、データ処理装置100の機能構成も図3に示す通りである。
図16は、本実施の形態に係るデバイス200の機能構成を示す。
図16において、図2との違いは、取得周期管理部240が削除されている点である。
図16に示す各要素は、図2に示したものと同様であるため、説明を省略する。
***動作の説明***
(通信シーケンスについて)
図17は、本実施の形態に係るデバイス200とデータ処理装置100との間で行われる通信シーケンスの例を示す。
図17を参照して、本実施の形態に係るデバイス200とデータ処理装置100の動作例を説明する。
(1)データ処理装置100は、デバイス200より計測データを取得したい場合は、センサ側の時刻Tを取得すると同時に制御情報であるIDを生成し、IDが含まれる電文を計測データ取得命令として送信する。
(2)デバイス200は、計測データ取得命令を受信すると、即座にカウンタ値Cを取得し、Dataを取得する。
(3)また、デバイス200は、Dataを取得する際にカウンタ値Cを同時に取得しておく。
(4)更に、デバイス200は、Dataをデータ処理装置100に送信する際にもカウンタ値Cを取得し、受信したIDと併せてカウンタ周波数f、Data、カウンタ値C、C及びCをIDの送信元であるデータ処理装置100に送信(応答)する。
(5)データ処理装置100は、Data等を受信した時刻のタイムスタンプTを取得する。
データ処理装置100は、これらの情報を用いて、デバイス200がセンサから計測データDataを取得した時刻Txを算出する。
本実施の形態に係る時刻Txの算出方法を説明する。
データ処理装置100は、伝送遅延(片道分)Rとデバイス側でDataを取得してからデータの送信開始までに要した時間(C−C)の合計をカウンタ周波数fで除算し、時刻Tから除算値を減算する。
このため、データ処理装置100は、Txを、
Tx=T−((R+(C−C))/f)
(R=((T−T)−(C−C))/2)で近似する)
で求める。
(デバイスの処理について)
図18は、デバイス200の処理シーケンスを示している。
本実施の形態では、デバイス200の処理は、センタからの要求に応じて計測データを収集するメイン処理の1種類である。
なお、図18に示される動作手順は、デバイス200でのデータ処理方法及びデータ処理プログラムの例に相当する。
(1)メイン処理
まず、受信部210でデータ処理装置100から受信した電文を電文処理部220で解釈し、計測データ取得の命令であるか否かを確認する(DR1)。
計測データ取得の命令であれば(DR1でYES)、電文処理部220は、カウンタ250よりカウンタ値Cを取得する(DR2)。また、同時に、電文処理部220は、計測データ取得部270に計測データ取得指示を発行し、受信した電文に含まれるIDをID管理部230に送信する。
なお、本実施の形態では、カウンタ値Cは受信カウンタ値に相当する。
次に、計測データ取得部270は、センサI/F2500を介してセンサに計測データ取得要求を発行する。また、計測データ取得部270はその直後にカウンタ250よりカウンタ値Cを取得する。
センサは計測データ取得要求に応答して、計測データ取得部270に計測データDataを送信する。
計測データ取得部270は計測データDataを受信し、受信した計測データDataとカウンタ値Cを計測データ記憶部260を介して電文処理部220に送信する(DR3)。
なお、本実施の形態では、カウンタ値Cは取得カウンタ値に相当する。
電文処理部220は、カウンタ値Cと計測データDataを取得すると、あらかじめ決められているカウンタ周波数fとID管理部230よりIDを取得し、カウンタ250よりカウンタ値Cを取得する(DR4)。
なお、本実施の形態では、カウンタ値Cは送信カウンタ値に相当する。
その後、電文処理部220は、計測データData、カウンタ値C1、C2及びC3、カウンタ周波数f、IDを含む電文を生成し、送信部280と通信I/F2400を介して電文をデータ処理装置100に送信する(DR5)。
(データ処理装置の処理)
図19、図20及び図21は、データ処理装置100の処理シーケンスを示している。
データ処理装置100は、3つの処理を並列で実施している。
1つ目の処理(コア処理1)は、計測データ取得命令をデバイス200に発行する処理であり、図19に示されている。
2つ目の処理(コア処理2)は、IDに対する応答を受信した後の処理であり、計測時刻を算出する処理であり、図20に示されている。
3つ目の処理(コア処理3)は、計測データ取得命令の発行周期を補正するための処理であり、図21に示されている。
なお、図19〜図21に示される動作手順は、データ処理装置100でのデータ処理方法及びデータ処理プログラムの例に相当する。
(1)コア処理1(計測データ取得命令の発行)
計測データ取得命令の発行タイミングであれば(Cr1でYES)、電文処理部120は、時刻Tを取得する(Cr2)。
そして、電文処理部120は、ID管理部130からIDを取得し、IDを含む電文を生成し、送信部170が通信I/F(デバイス)1150を介して、電文を計測データ取得命令としてデバイス200に送信する(Cr3)
その後、データ格納部160が、時刻T、IDをストレージ600に保管する。
時刻Tは、送信部170が制御情報たるIDを送信した時刻である。
(2)コア処理2(IDに対する応答を受信後の処理)
受信部110が、デバイス200から送信された計測データData、カウンタ値C、C及びC、カウンタ周波数f、IDを受信した場合(Cr5でYES)は、電文処理部120がセンタ側の時刻Tを取得する(Cr6)。
時刻Tは、受信部110が計測データData、カウンタ値C、C及びC、カウンタ周波数f、IDを受信した時刻である。
その後、電文処理部120は、計測データData、カウンタ値C、C及びC、カウンタ周波数f、IDを計測データ時刻算出部150に送信する。
計測データ時刻算出部150は、ストレージ600よりIDをキーに時刻Tを読み出し(Cr7)、時刻の補正の実施、すなわち、デバイス200で計測データを取得した時点でのセンタ側の時刻Txを算出する(Cr8)。
時刻Txの算出方法は前述した通りである。
最後に、データ格納部160が、計測データData、カウンタ値C1、C2及びC3、カウンタ周波数f、時刻T1及びT2、ID、時刻Txを、IDをキーとしてストレージ600に格納する(Cr9)。
(3)処理コア3(計測データ取得命令の発行周期を補正するための処理)
デバイス側取得タイミング補正部140は、一定周期で各デバイス200への計測データ取得命令の発行タイミングの補正が必要であるかを確認する(Cr10)。
デバイス側取得タイミング補正部140は、オフセット誤差を補正する必要があれば(Cr10でYES)、計測データ取得命令の発行タイミングの補正を行う(Cr11)。
なお、Cr10の補正の要否の確認方法及びCr11の補正量の算出方法は、前述の(ドリフト誤差の検出方法及び補正方法について)及び(オフセット誤差の検出方法及び補正方法について)に記載した通りである。
***実施の形態の効果の説明***
本実施の形態によれば、データ処理装置が計測データの収集を要求する場合でも、取得カウンタ値(c)と送信カウンタ値(c)と受信カウンタ値(c)とカウンタ周波数値(f)と制御情報(ID)が送信された時刻(T)とデータが受信された時刻(T)とに基づき、デバイスでデータが取得された時刻(Tx)を算出できる。このため、時刻情報を管理する機能がデバイスに実装されていなくても、デバイスでデータが取得された時刻(Tx)を算出することができる。
つまり、本実施の形態では、NTP、RTCなどの時刻機能が実装されていないデバイスのデータ取得時刻をセンタ側で補正して正確に得ることができる。
***ハードウェア構成の説明***
最後に、データ処理装置100及びデバイス200のハードウェア構成の補足説明を行う。
図1に示すCPU1110及びCPU2100は、プロセッシングを行うIC(Integrated Circuit)である。
CPU1110及びCPU2100は、DSP(Digital Signal Processor)等のプロセッサであってもよい。
また、ROM1160及びROM2300には、OS(Operating System)も記憶されている。
そして、OSの少なくとも一部がCPU1110及びCPU2100により実行される。
CPU1110はOSの少なくとも一部を実行しながら、受信部110、電文処理部120、ID管理部130、デバイス側取得タイミング補正部140、計測データ時刻算出部150、データ格納部160、送信部170の機能を実現するプログラムを実行する。
また、CPU2100は、OSの少なくとも一部を実行しながら、受信部210、電文処理部220、ID管理部230、取得周期管理部240、カウンタ250、計測データ取得部270、送信部280の機能を実現するプログラムを実行する。
図1では、データ処理装置100及びデバイス200ともに、1つのCPUが図示されているが、複数のCPUが配置されていてもよい。
また、データ処理装置100では、受信部110、電文処理部120、ID管理部130、デバイス側取得タイミング補正部140、計測データ時刻算出部150、データ格納部160、送信部170の処理の結果を示す情報やデータや信号値や変数値が、RAM1120、又は、CPU1110内のレジスタ又はキャッシュメモリに記憶される。
また、デバイス200では、受信部210、電文処理部220、ID管理部230、取得周期管理部240、カウンタ250、計測データ取得部270、送信部280の処理の結果を示す情報やデータや信号値や変数値が、RAM2200、又は、CPU2100内のレジスタ又はキャッシュメモリに記憶される。
また、データ処理装置100の上記の要素及びデバイス200の上記の要素の機能を実現するプログラムは、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ブルーレイ(登録商標)ディスク、DVD等の可搬記憶媒体に記憶されてもよい。
また、データ処理装置100の上記の要素及びデバイス200の上記の要素を、「回路」又は「工程」又は「手順」又は「処理」に読み替えてもよい。
また、データ処理装置100及びデバイス200は、ロジックIC(Integrated Circuit)、GA(Gate Array)、ASIC(Application Specific Integrated Circuit)、FPGA(Field−Programmable Gate Array)といった電子回路により実現されてもよい。
この場合は、データ処理装置100の上記の要素及びデバイス200の上記の要素は、それぞれ電子回路の一部として実現される。
なお、プロセッサ及び上記の電子回路を総称してプロセッシングサーキットリーともいう。
***付記***
なお、実施の形態1及び実施の形態2では、センサで計測された計測データを取得、収集する例を説明したが、対象とするデータは計測データに限定されない。
また、実施の形態1及び実施の形態2では、データ処理装置が、デバイスが計測データを取得した時刻を算出するが、センサからデータを取得するのではなくデバイス自身がデータを生成する場合は、データ処理装置は、デバイスがデータを生成した時刻を算出する。
すなわち、実施の形態1及び実施の形態2で説明したデータの「取得」には、データの「生成」も含まれる。
10 センタ、100 データ処理装置、110 受信部、120 電文処理部、130 ID管理部、140 デバイス側取得タイミング補正部、150 計測データ時刻算出部、160 データ格納部、170 送信部、200 デバイス、210 受信部、220 電文処理部、230 ID管理部、240 取得周期管理部、250 カウンタ、260 計測データ記憶部、270 計測データ取得部、280 送信部、500 データ分析装置、600 ストレージ、1110 CPU、1120 RAM、1130 ストレージI/F、1140 通信I/F(LAN)、1150 通信I/F(デバイス)、1160 ROM、2100 CPU、2200 RAM、2300 ROM、2400 通信I/F、2500 センサI/F。

Claims (9)

  1. カウンタを有するデバイスから、前記デバイスで取得されたデータを受信する受信部と、
    前記デバイスに制御情報を送信する送信部と、
    前記デバイスで前記データが取得された時刻を算出する時刻算出部とを有し、
    前記受信部は、
    前記デバイスから、前記データと、前記デバイスでデータが取得された際の前記カウンタの値である取得カウンタ値と、前記デバイスから前記データが送信された際の前記カウンタの値である送信カウンタ値とを受信し、
    前記送信部は、
    前記受信部により前記データと前記取得カウンタ値と前記送信カウンタ値とが受信された後に、前記制御情報を前記デバイスに送信し、
    前記受信部は、
    前記送信部により前記制御情報が送信された後に、前記デバイスから、前記デバイスで前記制御情報が受信された際の前記カウンタの値である受信カウンタ値と、前記カウンタの周波数値とを受信し、
    前記時刻算出部は、
    前記受信部により受信された前記受信カウンタ値と前記取得カウンタ値と前記送信カウンタ値と前記カウンタの周波数値と、前記受信部により前記データが受信された時刻とに基づき、前記デバイスで前記データが取得された時刻を算出するデータ処理装置。
  2. カウンタを有し既定の周期でデータを取得するデバイスでデータが取得される度に前記カウンタで計数されたデータ取得の際のカウンタ値を用いて算出された時刻である算出データ取得時刻と、前記周期で定義されるデータ取得時刻である定義データ取得時刻とを比較し、前記算出データ取得時刻の前記定義データ取得時刻に対する誤差を解析し、誤差を補正するための前記カウンタに対する補正量を算出する補正量算出部と、
    前記補正量算出部により算出された補正量を前記カウンタに適用するよう前記デバイスに指示する補正指示部とを有し、
    前記補正量算出部は、
    複数の算出データ取得時刻と複数の定義データ取得時刻とを時系列に比較し、誤差を解析した結果、前記算出データ取得時刻の前記定義データ取得時刻に対する誤差が周期的に発生していることが判明した場合に、前記カウンタに継続して適用する補正量を算出し、
    前記補正指示部は、
    前記補正量算出部により算出された補正量を前記カウンタに継続して適用するよう前記デバイスに指示するデータ処理装置。
  3. カウンタを有するデバイスであって、
    制御情報を受信する受信部と、
    データを取得するデータ取得部と、
    前記データと、前記データ取得部によりデータが取得された際の前記カウンタの値である取得カウンタ値と、前記データを送信する際の前記カウンタの値である送信カウンタ値とを前記制御情報の送信元に送信する送信部とを有し、
    前記受信部は、
    前記送信部により前記データと前記取得カウンタ値と前記送信カウンタ値とが送信された後に、前記制御情報を受信し、
    前記送信部は、
    前記受信部により前記制御情報が受信された後に、前記受信部により前記制御情報が受信された際の前記カウンタの値である受信カウンタ値と、前記カウンタの周波数値とを前記制御情報の送信元に送信するデバイス。
  4. コンピュータが、カウンタを有するデバイスから、前記デバイスで取得されたデータを受信ステップと、
    前記コンピュータが、前記デバイスに制御情報を送信する送信ステップと、
    前記コンピュータが、前記デバイスで前記データが取得された時刻を算出する時刻算出ステップとを有し、
    前記受信ステップにおいて、
    前記コンピュータが、
    前記デバイスから、前記データと、前記デバイスでデータが取得された際の前記カウンタの値である取得カウンタ値と、前記デバイスから前記データが送信された際の前記カウンタの値である送信カウンタ値とを受信し、
    前記送信ステップにおいて、
    前記コンピュータが、
    前記受信ステップにより前記データと前記取得カウンタ値と前記送信カウンタ値とが受信された後に、前記制御情報を前記デバイスに送信し、
    前記受信ステップにおいて、
    前記コンピュータが、
    前記送信ステップにより前記制御情報が送信された後に、前記デバイスから、前記デバイスで前記制御情報が受信された際の前記カウンタの値である受信カウンタ値と、前記カウンタの周波数値とを受信し、
    前記時刻算出ステップにおいて、
    前記コンピュータが、
    前記受信ステップにより受信された前記受信カウンタ値と前記取得カウンタ値と前記送信カウンタ値と前記カウンタの周波数値と、前記受信ステップにより前記データが受信された時刻とに基づき、前記デバイスで前記データが取得された時刻を算出するデータ処理方法。
  5. コンピュータが、カウンタを有し既定の周期でデータを取得するデバイスでデータが取得される度に前記カウンタで計数されたデータ取得の際のカウンタ値を用いて算出された時刻である算出データ取得時刻と、前記周期で定義されるデータ取得時刻である定義データ取得時刻とを比較し、前記算出データ取得時刻の前記定義データ取得時刻に対する誤差を解析し、誤差を補正するための前記カウンタに対する補正量を算出する補正量算出ステップと、
    前記コンピュータが、前記補正量算出ステップにより算出された補正量を前記カウンタに適用するよう前記デバイスに指示する補正指示ステップとを有し、
    前記補正量算出ステップにおいて、
    前記コンピュータが、
    複数の算出データ取得時刻と複数の定義データ取得時刻とを時系列に比較し、誤差を解析した結果、前記算出データ取得時刻の前記定義データ取得時刻に対する誤差が周期的に発生していることが判明した場合に、前記カウンタに継続して適用する補正量を算出し、
    前記補正指示ステップにおいて、
    前記コンピュータが、
    前記補正量算出ステップにより算出された補正量を前記カウンタに継続して適用するよう前記デバイスに指示するデータ処理方法。
  6. カウンタを有するコンピュータが、
    制御情報を受信する受信ステップと、
    データを取得するデータ取得ステップと、
    前記データと、前記データ取得ステップによりデータが取得された際の前記カウンタの値である取得カウンタ値と、前記データを送信する際の前記カウンタの値である送信カウンタ値とを前記制御情報の送信元に送信する送信ステップとを有し、
    前記受信ステップにおいて、
    前記コンピュータが、
    前記送信ステップにより前記データと前記取得カウンタ値と前記送信カウンタ値とが送信された後に、前記制御情報を受信し、
    前記送信ステップにおいて、
    前記コンピュータが、
    前記受信ステップにより前記制御情報が受信された後に、前記受信ステップにより前記制御情報が受信された際の前記カウンタの値である受信カウンタ値と、前記カウンタの周波数値とを前記制御情報の送信元に送信するデータ処理方法。
  7. カウンタを有するデバイスから、前記デバイスで取得されたデータを受信する受信ステップと、
    前記デバイスに制御情報を送信する送信ステップと、
    前記デバイスで前記データが取得された時刻を算出する時刻算出ステップとをコンピュータに実行させるデータ処理プログラムであって、
    前記受信ステップにおいて、
    前記コンピュータに、
    前記デバイスから、前記データと、前記デバイスでデータが取得された際の前記カウンタの値である取得カウンタ値と、前記デバイスから前記データが送信された際の前記カウンタの値である送信カウンタ値とを受信させ、
    前記送信ステップにおいて、
    前記コンピュータに、
    前記受信ステップにより前記データと前記取得カウンタ値と前記送信カウンタ値とが受信された後に、前記制御情報を前記デバイスに送信させ、
    前記受信ステップにおいて、
    前記コンピュータに、
    前記送信ステップにより前記制御情報が送信された後に、前記デバイスから、前記デバイスで前記制御情報が受信された際の前記カウンタの値である受信カウンタ値と、前記カウンタの周波数値とを受信させ、
    前記時刻算出ステップにおいて、
    前記コンピュータに、
    前記受信ステップにより受信された前記受信カウンタ値と前記取得カウンタ値と前記送信カウンタ値と前記カウンタの周波数値と、前記受信ステップにより前記データが受信された時刻とに基づき、前記デバイスで前記データが取得された時刻を算出させるデータ処理プログラム。
  8. カウンタを有し既定の周期でデータを取得するデバイスでデータが取得される度に前記カウンタで計数されたデータ取得の際のカウンタ値を用いて算出された時刻である算出データ取得時刻と、前記周期で定義されるデータ取得時刻である定義データ取得時刻とを比較し、前記算出データ取得時刻の前記定義データ取得時刻に対する誤差を解析し、誤差を補正するための前記カウンタに対する補正量を算出する補正量算出ステップと、
    前記補正量算出ステップにより算出された補正量を前記カウンタに適用するよう前記デバイスに指示する補正指示ステップとをコンピュータに実行させるデータ処理プログラムであって
    前記補正量算出ステップにおいて、
    前記コンピュータに、
    複数の算出データ取得時刻と複数の定義データ取得時刻とを時系列に比較させ、誤差を解析した結果、前記算出データ取得時刻の前記定義データ取得時刻に対する誤差が周期的に発生していることが判明した場合に、前記カウンタに継続して適用する補正量を算出させ、
    前記補正指示ステップにおいて、
    前記コンピュータに、
    前記補正量算出ステップにより算出された補正量を前記カウンタに継続して適用するよう前記デバイスに指示させるデータ処理プログラム。
  9. カウンタを有するコンピュータに、
    制御情報を受信する受信ステップと、
    データを取得するデータ取得ステップと、
    前記データと、前記データ取得ステップによりデータが取得された際の前記カウンタの値である取得カウンタ値と、前記データを送信する際の前記カウンタの値である送信カウンタ値とを前記制御情報の送信元に送信する送信ステップとを実行させるデータ処理プログラムであって、
    前記受信ステップにおいて、
    前記コンピュータに、
    前記送信ステップにより前記データと前記取得カウンタ値と前記送信カウンタ値とが送信された後に、前記制御情報を受信させ、
    前記送信ステップにおいて、
    前記コンピュータに、
    前記受信ステップにより前記制御情報が受信された後に、前記受信ステップにより前記制御情報が受信された際の前記カウンタの値である受信カウンタ値と、前記カウンタの周波数値とを前記制御情報の送信元に送信させるデータ処理プログラム。
JP2015234943A 2015-12-01 2015-12-01 データ処理装置、デバイス、データ処理方法及びデータ処理プログラム Expired - Fee Related JP6465787B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2015234943A JP6465787B2 (ja) 2015-12-01 2015-12-01 データ処理装置、デバイス、データ処理方法及びデータ処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2015234943A JP6465787B2 (ja) 2015-12-01 2015-12-01 データ処理装置、デバイス、データ処理方法及びデータ処理プログラム

Publications (2)

Publication Number Publication Date
JP2017102658A JP2017102658A (ja) 2017-06-08
JP6465787B2 true JP6465787B2 (ja) 2019-02-06

Family

ID=59015446

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015234943A Expired - Fee Related JP6465787B2 (ja) 2015-12-01 2015-12-01 データ処理装置、デバイス、データ処理方法及びデータ処理プログラム

Country Status (1)

Country Link
JP (1) JP6465787B2 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6915808B2 (ja) * 2018-03-23 2021-08-04 長崎県 多点同時計測システム
JP7146462B2 (ja) * 2018-06-07 2022-10-04 日置電機株式会社 測定装置および測定システム
JP7070290B2 (ja) * 2018-09-27 2022-05-18 沖電気工業株式会社 通信装置、集約装置、通信システムおよび制御プログラム
WO2020149103A1 (ja) * 2019-01-16 2020-07-23 日本電気株式会社 モニタリングシステム、および同期方法
JP7314314B2 (ja) * 2020-01-10 2023-07-25 日立Astemo株式会社 車載システム、および、センシングデータの受信方法、送信方法
JP7350665B2 (ja) * 2020-02-04 2023-09-26 株式会社東芝 無線装置、無線システムおよびデータ送信方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4051840B2 (ja) * 1999-05-28 2008-02-27 富士電機システムズ株式会社 分散されているシステム機器の同期装置
JP2013168850A (ja) * 2012-02-16 2013-08-29 Toshiba Corp 分散型制御システム

Also Published As

Publication number Publication date
JP2017102658A (ja) 2017-06-08

Similar Documents

Publication Publication Date Title
JP6465787B2 (ja) データ処理装置、デバイス、データ処理方法及びデータ処理プログラム
US9519306B2 (en) Distribution device, distribution system, and distribution method
KR101109897B1 (ko) 메시지 교환 방법, 시스템 및 컴퓨터 판독 가능한 기록 매체
US9608753B2 (en) Time synchronization system, management node, and time synchronization method
JP6025700B2 (ja) 時刻同期システム、スレーブ装置、及び時刻同期方法
JP2007218614A (ja) 位置推定方法及び位置推定システム
US20070274349A1 (en) Detector and method for detecting abnormality in time synchronization
US9544211B2 (en) Measuring apparatus and method
JP5783017B2 (ja) 発振器の周波数誤差補正装置、周波数誤差補正方法、周波数誤差補正プログラム及び周波数誤差補正システム
JP7119437B2 (ja) 車両用マスタ電子制御装置、車両用スレーブ電子制御装置、車両用ログ収集システム及び車両用ログ収集プログラム
CN112395231B (zh) 一种多处理器间的数据延迟时间计算方法及装置
JP2005157946A (ja) 同期方法、コンピュータシステム及びプログラム
JP5813489B2 (ja) 異常発生推定方法及び異常発生推定装置
US20130054839A1 (en) Synchronizing Time Across A Plurality Of Devices Connected To A Network
AU2019404523A1 (en) Detection device, detection method, and detection program
WO2008114214A3 (en) Techniques for improved error detection in a wireless communication system
TWI618432B (zh) 頻率校正裝置及方法
JP2015004649A (ja) スレーブ装置、マスタ・スレーブシステム、および時刻同期方法
CN109451521B (zh) 一种基站密集性分布式组网的gps同步方法
JP2017096651A (ja) 時刻同期方法、振動センサー、振動検知装置、プログラム及び記録媒体
JP5409165B2 (ja) クロック補正周期補正方法および無線基地局装置
EP2398173A1 (en) Remote I/O system and synchronization method in the same
JP2014500691A (ja) ワイヤレス基地局においてシステム・タイミングを導き出す方法および装置
KR101529444B1 (ko) 통신 장치
JP2012076482A (ja) 位置検知システムおよびその処理方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170822

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20180627

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20180703

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180724

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190108

R150 Certificate of patent or registration of utility model

Ref document number: 6465787

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees