JP7461236B2 - タイムスタンプ同期データ取得システム、タイムスタンプ同期データ取得方法、および、プログラム - Google Patents
タイムスタンプ同期データ取得システム、タイムスタンプ同期データ取得方法、および、プログラム Download PDFInfo
- Publication number
- JP7461236B2 JP7461236B2 JP2020115316A JP2020115316A JP7461236B2 JP 7461236 B2 JP7461236 B2 JP 7461236B2 JP 2020115316 A JP2020115316 A JP 2020115316A JP 2020115316 A JP2020115316 A JP 2020115316A JP 7461236 B2 JP7461236 B2 JP 7461236B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- timestamp
- header
- offset value
- hdr
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 213
- 230000001360 synchronised effect Effects 0.000 title claims description 30
- 238000012545 processing Methods 0.000 claims description 236
- 238000001514 detection method Methods 0.000 claims description 141
- 238000004891 communication Methods 0.000 claims description 114
- 238000012937 correction Methods 0.000 claims description 53
- 238000007405 data analysis Methods 0.000 claims description 33
- 238000005070 sampling Methods 0.000 claims description 5
- 230000001174 ascending effect Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 51
- 230000006870 function Effects 0.000 description 41
- 230000015654 memory Effects 0.000 description 34
- 238000013079 data visualisation Methods 0.000 description 32
- 238000004364 calculation method Methods 0.000 description 26
- 230000005540 biological transmission Effects 0.000 description 20
- 238000012800 visualization Methods 0.000 description 15
- 238000006243 chemical reaction Methods 0.000 description 8
- 101150092978 Slc25a4 gene Proteins 0.000 description 6
- 239000000284 extract Substances 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 5
- 230000003111 delayed effect Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 102220213553 rs1026192345 Human genes 0.000 description 5
- 102220293834 rs1553603207 Human genes 0.000 description 5
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000005314 correlation function Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000012549 training Methods 0.000 description 2
- 125000004122 cyclic group Chemical group 0.000 description 1
- 230000006866 deterioration Effects 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
Images
Landscapes
- Mobile Radio Communication Systems (AREA)
Description
同期検出用データのサンプルデータのタイムスタンプをpi.ts(i:自然数、0≦i<n_fifo)とし、n_fifo個のタイムスタンプpi.tsの集合を{pi.ts}とし、
ヘッダデータのサンプルデータをsi(i:自然数、0≦i<n_fifo)、n_fifo個のサンプルデータsiの集合を{si}とし、サンプルデータsiのタイムスタンプをsi.ts(i:自然数、0≦i<n_fifo)とし、n_fifo個のタイムスタンプsi.tsの集合を{si.ts}とすると、
オフセット取得処理部は、以下の処理を行う。
集合{pi.ts}に含まれるタイムスタンプと、{ssj}に含まれるサンプルデータssjのタイムスタンプssj.tsとの差を求めることで取得したオフセット値eの集合Eを取得し、集合Eに含まれるオフセット値eをヘッダデータのタイムスタンプのサンプルデータに加算することでタイムスタンプ加算値ssj.ts+eの集合{ssj.ts+e}を取得し、集合{ssj.ts+e}と集合{pi.ts}との積集合の要素数を示す変数cが最大となるときのオフセット値eを最適オフセット値eoptとして取得する。
(1)集合{si}から、サンプルデータsiのタイムスタンプが最も新しい時刻を示すものから順にn_hdr個(n_hdr:自然数、n_hdr<n_fifo)のサンプルデータを選択する第1選択処理、
(2)集合{si}から、サンプルデータsiのタイムスタンプが最も新しい時刻を示すデータと最も古い時刻を示すデータの中間にあるn_hdr個(n_hdr:自然数、n_hdr<n_fifo)のサンプルデータを選択する第2選択処理、および、
(3)集合{si}から、サンプルデータsiのタイムスタンプが最も古い時刻を示すものから順にn_hdr個(n_hdr:自然数、n_hdr<n_fifo)のサンプルデータを選択する第3選択処理のいずれかを実行することで、サンプルデータを選択し、選択したサンプルデータをssj(j:整数、0≦j<n_hdr)とし、その集合を{ssj}として取得する。
(1)オフセット取得処理部は、集合{si}から、サンプルデータsiのタイムスタンプが最も新しい時刻を示すものから順にn_hdr個(n_hdr:自然数、n_hdr<n_fifo)のサンプルデータを選択する第1選択処理により選択したサンプルデータを用いて、最適オフセット値eoptを求める処理を実行し、求めた最適オフセット値eoptをD[1].e_optとして保持し、当該最適オフセット値eoptを取得したときの集合{ssj.ts+e}と集合{pi.ts}との積集合の要素数cをD[1].c_maxとして保持する。
(2)オフセット取得処理部は、集合{si}から、サンプルデータsiのタイムスタンプが最も新しい時刻を示すデータと最も古い時刻を示すデータの中間にあるn_hdr個(n_hdr:自然数、n_hdr<n_fifo)のサンプルデータを選択する第2選択処理により選択したサンプルデータを用いて、最適オフセット値eoptを求める処理を実行し、求めた最適オフセット値eoptをD[2].e_optとして保持し、当該最適オフセット値eoptを取得したときの集合{ssj.ts+e}と集合{pi.ts}との積集合の要素数cをD[2].c_maxとして保持する。
(3)オフセット取得処理部は、集合{si}から、サンプルデータsiのタイムスタンプが最も古い時刻を示すものから順にn_hdr個(n_hdr:自然数、n_hdr<n_fifo)のサンプルデータを選択する第3選択処理により選択したサンプルデータを用いて、最適オフセット値eoptを求める処理を実行し、求めた最適オフセット値eoptをD[3].e_optとして保持し、当該最適オフセット値eoptを取得したときの集合{ssj.ts+e}と集合{pi.ts}との積集合の要素数cをD[3].c_maxとして保持する。
第1実施形態について、図面を参照しながら、以下、説明する。
図1は、第1実施形態に係る無線品質データ可視化システム1000の概略構成図である。
センサ装置S_node1は、図2に示すように、アンテナAnt1と、RF処理部11と、同期用時刻管理部12と、IQデータ取得部13と、包絡線データ取得部14と、同期検出用データ生成部15と、第1通信インターフェース16とを備える。
無線通信機能付きパーソナルコンピュータPC1は、図2に示すように、アンテナAnt_pcと、RF処理部21と、BB処理部22と、ヘッダ取得部23と、第2通信インターフェース24とを備える。無線通信機能付きパーソナルコンピュータPC1は、例えば、無線通信インターフェースを備えた市販のパーソナルコンピュータ(無線通信インターフェースカードを搭載した市販のパーソナルコンピュータ)により実現される。なお、図2では、無線通信機能付きパーソナルコンピュータPC1において、無線信号のヘッダデータを取得するために必要な機能部のみを示してしている。
無線品質データ解析装置Ana_node1は、図2に示すように、第3通信インターフェース31と、TS同期処理部32と、可視化処理部33と、を備える。
以上のように構成された無線品質データ可視化システム1000の動作について、以下、図面を参照しながら説明する。
まず、センサ装置での処理について、説明する。
S=10×log10(I2+Q2)
として取得する。
まず、同期検出用データ生成処理(第1の処理)について、図5、図6を参照しながら説明する。
di.rss=10×log10{(di.I)2+(di.Q)2}
として取得する。
di-1.rss<rss_thであり、かつ
di.rss≧rss_th
である場合、同期検出用データ生成部15は、現時刻において取得されているデータD1_IQのサンプルデータdiのタイムスタンプdi.tsを取得し、取得したタイムスタンプdi.tsを同期検出用データD1_pのサンプルデータpjのタイムスタンプpj.tsとすることで、同期検出用データD1_pを生成する(図5を参照)。
ステップSA1において、同期検出用データ生成部15は、初期化処理を行う。具体的には、変数b=0、j=0とする。
ステップSA2において、ループ処理(ループ1)が開始される。当該ループ処理は、データD1_IQの各サンプルデータdiに対して、実行される。データD1_IQがサンプルデータd1~dNを含んでいる場合、i=1からi=N(N:自然数)まで、N回ループ処理(ループ1)が実行される。
ステップSA3において、同期検出用データ生成部15は、データD1_IQのサンプルデータdiの信号強度di.rssを取得し、サンプルデータdiの信号強度di.rssと閾値rss_thとを比較する。そして、同期検出用データ生成部15は、(1)di.rss≧rss_thである場合、処理をステップSA5に進め(ステップSA3で「Yes」)、(2)di.rss≧rss_thではない場合、処理をステップSA4に進める。
ステップSA4において、同期検出用データ生成部15は、変数bの値を「0」に設定し(b=0)、処理をステップSA9に進める。
ステップSA5において、同期検出用データ生成部15は、変数bの値が「0」であるか否かの判定を行う。判定の結果、b=0である場合、同期検出用データ生成部15は、処理をステップSA6に進め、b=0ではない場合、処理をステップSA8に進める。
ステップSA6において、同期検出用データ生成部15は、現時刻において取得されているデータD1_IQのサンプルデータdiのタイムスタンプdi.tsを取得し、取得したタイムスタンプdi.tsを同期検出用データD1_pのサンプルデータpjのタイムスタンプpj.tsとすることで、同期検出用データD1_pを生成する。つまり、同期検出用データ生成部15は、
pj.ts=di.ts
として、同期検出用データD1_p(サンプルデータpj)を生成し、生成した同期検出用データD1_p(サンプルデータpj)を第1通信インターフェース16に出力する。
ステップSA7において、同期検出用データ生成部15は、変数jを+1だけインクリメントする(j=j+1)。
ステップSA8において、同期検出用データ生成部15は、変数bの値を「1」に設定し、処理をステップSA9に進める。
ステップSA9において、同期検出用データ生成部15は、ループ処理(ループ1)が終了条件を満たしているか否かを判定し、終了条件を満たしていないと判定したときは、処理をステップSA2に戻し、終了条件を満たしていると判定した場合、処理(同期検出用データ生成処理)を終了させる。
次に、同期検出用データ生成処理(第2の処理)について、図7を参照しながら説明する。
次に、無線通信機能付きパーソナルコンピュータPC1での処理について、説明する。
(1)送信元MACアドレス
(2)受信先MACアドレス
(3)フレーム長(バイト数)
(4)フレームの種類(Beacon、Data、Ackなど)
(5)再送フラグ
(6)シーケンス番号
(7)データレート(6Mbps,54Mbpsなど)
したがって、無線通信機能付きパーソナルコンピュータPC1のヘッダ取得部23は、フレームのヘッダを解析する処理(例えば、tcpdump等を用いたヘッダ解析処理)を行い、例えば、フレームの開始時点、継続時間、送信元、送信先を含むデータを取得し、取得した当該データに対応する矩形データを取得する。このようにして取得される矩形データの一例を図8に示す。
ヘッダデータsi:
si.type:データのタイプ
si.s2d:送信元→送信先の情報
si.ts:タイムスタンプ(無線フレームの開始時刻)
si.dur:無線フレームの継続時間
si.hd:無線フレームのヘッダ部分から抽出した情報(送信元MACアドレス等)
なお、無線通信機能付きパーソナルコンピュータPC1は、時計部(不図示)を有しており、無線フレームの開始時刻の時間(時刻)を時計部により取得し、取得した当該時間(時刻)を当該無線フレーム(ヘッダデータsi)のタイムスタンプ(si.ts)に設定する。
次に、無線品質データ解析装置Ana_node1での処理について、説明する。
ステップS1において、オフセット取得処理部323は、第1FIFO321と第2FIFO322とにともにn_fifo個のデータが保持されているか否かを判定する。そして、第1FIFO321と第2FIFO322とにともにn_fifo個のデータが保持されていると判定された場合(ステップS1において「Yes」)、処理をステップS2に進め、第1FIFO321および第2FIFO322のいずれか、あるいは両方にn_fifo個のデータが保持されていないと判定された場合(ステップS1において「No」)、処理を終了させる(開始させない)。
ステップS2において、データ取得選択処理が実行される。データ取得選択処理は、ステップS201~S203の処理を含む。
ステップS201において、オフセット値保持部324は、第1FIFO321からn_fifo個のデータを、同期検出用データpi(i:整数、0≦i<n_fifo)として取得する。なお、取得したn_fifo個の同期検出用データpiは、タイムスタンプの値pi.tsの昇順で整列されているものとする。また、同期検出用データのサンプルデータpiの集合データを{pi}と表記する。
ステップS202において、オフセット値保持部324は、第2FIFO322からn_fifo個のデータを、ヘッダデータsi(i:整数、0≦i<n_fifo)として取得する。なお、取得したn_fifo個のヘッダデータsiは、タイムスタンプの値si.tsの昇順で整列されているものとする。また、ヘッダデータのサンプルデータsiの集合データを{si}と表記する。
ステップS203において、オフセット値保持部324は、ステップS202で取得したn_fifo個のヘッダデータsiからn_hdr個のデータを選択し、選択したn_hdr個のデータをssi(i:整数、0≦i<n_hdr)とする。なお、選択したヘッダデータのサンプルデータssiの集合データを{ssi}と表記する。
(1)第1の選択処理
オフセット値保持部324は、n_fifo-n_hdr≦j<n_fifoを満たすサンプルデータsjをサンプルデータssi(0≦i<n_hdr)として選択する。
ssi=sn_fifo-n_hdr+i
なお、図14の上図に、n_fifo=10、n_hdr=3の場合において、第1の選択処理で選択されるサンプルデータssi(ss0~ss2)を示している。
(2)第2の選択処理
オフセット値保持部324は、Int(n_fifo/2―n_hdr/2)≦j<Int(n_fifo/2+n_hdr/2)を満たすサンプルデータsjをサンプルデータssi(0≦i<n_hdr)として選択する。
ssi=sInt(n_fifo/2-n_hdr/2)+i
Int(x):x以下の最大の整数を返す関数
なお、図14の中図に、n_fifo=10、n_hdr=3の場合において、第2の選択処理で選択されるサンプルデータssi(ss0~ss2)を示している。
(3)第3の選択処理
オフセット値保持部324は、0≦j<n_hdrを満たすサンプルデータsiをサンプルデータssi(0≦i<n_hdr)として選択する。
ssi=sn_fifo-n_hdr+i
なお、図14の下図に、n_fifo=10、n_hdr=3の場合において、第3選択処理で選択されるサンプルデータssi(ss0~ss2)を示している。
ステップS3において、オフセット算出処理が実行される。オフセット算出処理は、ステップS301~S318の処理を含む。
ステップS301において、オフセット取得処理部323は、同期検出用データのサンプルデータpiのタイムスタンプpi.ts用の集合Pを初期化し(集合Pを空集合とし)、オフセット値e用の集合Eを初期化する(集合Eを空集合とする)。
ステップS302において、ループ処理(ループ1)が開始される。当該ループ処理は、i=0からi=n_fifo-1まで、iを+1ずつインクリメントしながら、n_fifo回繰り返し実行される。
ステップS303において、オフセット取得処理部323は、第1FIFO321から同期検出用データのサンプルデータpiのタイムスタンプpi.tsを読み出し、当該タイムスタンプpi.tsを集合Pに追加する。つまり、オフセット取得処理部323は、
P←P∪{pi.ts}
に相当する処理を実行する。
ステップS304において、ループ処理(ループ11)が開始される。当該ループ処理は、j=0からj=n_hdr-1まで、jを+1ずつインクリメントしながら、n_hdr回繰り返し実行される。
ステップS305において、オフセット取得処理部323は、
e=pi.ts-ssj.ts
pi.ts:同期検出用データのサンプルデータpiのタイムスタンプの値
ssj.ts:選択処理により選択されたヘッダデータのサンプルデータssiのタイムスタンプの値
に相当する処理を実行し、オフセット値e(オフセット値の候補)を算出する。
E←E∪{e}
に相当する処理を実行する(ステップS306)。
ステップS307において、オフセット取得処理部323は、ループ処理(ループ11)が終了条件を満たしているか否かを判定し、終了条件を満たしていないと判定したときは、処理をステップS304に戻し、終了条件を満たしていると判定した場合、処理をステップS308に進める。
ステップS308において、オフセット取得処理部323は、ループ処理(ループ1)が終了条件を満たしているか否かを判定し、終了条件を満たしていないと判定したときは、処理をステップS302に戻し、終了条件を満たしていると判定した場合、処理をステップS309に進める。
ステップS309において、オフセット取得処理部323は、変数cmaxおよび変数eoptの初期化処理を行う(cmax=0、eopt=0)。
ステップS310において、ループ処理(ループ2)が開始される。当該ループ処理は、集合Eに含まれる各eについて、実行される。
ステップS311において、オフセット取得処理部323は、変数cの初期化処理を行う(c=0)。
ステップS312において、ループ処理(ループ21)が開始される。当該ループ処理は、j=0からi=n_hdr-1まで、iを+1ずつインクリメントしながら、n_hdr回繰り返し実行される。
ステップS313において、オフセット取得処理部323は、ssj.ts+eの値を算出し、算出した値(ssj.ts+eの値)が、集合Pに含まれるか否かを判定する。ssj.ts+eの値が集合Pに含まれると判定された場合(ステップS313で「Yes」)、オフセット取得処理部323は、変数cの値を+1インクリメントし(ステップS314)、一方、ssj.ts+eの値が集合Pに含まれないと判定された場合(ステップS313で「No」)、オフセット取得処理部323は、処理をステップS315に進める。
ステップS315において、オフセット取得処理部323は、ループ処理(ループ21)が終了条件を満たしているか否かを判定し、終了条件を満たしていないと判定したときは、処理をステップS312に戻し、終了条件を満たしていると判定した場合、処理をステップS316に進める。
ステップS316において、オフセット取得処理部323は、値cmaxと値cとの比較処理を行う。(1)cmax<cである場合(ステップS316で「Yes」)、オフセット取得処理部323は、
cmax=c
eopt=e
とし、(2)cmax<cではない場合(ステップS316で「No」)、オフセット取得処理部323は、処理をステップS318に進める。
ステップS318において、オフセット取得処理部323は、ループ処理(ループ2)が終了条件を満たしているか否かを判定し、終了条件を満たしていないと判定したときは、処理をステップS310に戻し、終了条件を満たしていると判定した場合、処理をステップS4に進める。
ステップS4において、オフセット更新処理が実行される。オフセット更新処理は、ステップS401~S402の処理を含む。
ステップS401において、オフセット取得処理部323は、所定の閾値c_thと値cmaxとの比較処理を行う。c_th≦cmaxである場合(ステップS401で「Yes」)、オフセット取得処理部323は、処理をステップS402に進め、c_th≦cmaxではない場合(ステップS401で「No」)、オフセット取得処理部323は、オフセット取得処理を終了させる。
ステップS402において、オフセット取得処理部323は、オフセット値eoptをオフセット値保持部324に出力する。オフセット値保持部324は、オフセット取得処理部323からオフセット値eoptを入力すると、記憶保持している出力オフセット値eout(初期値は0)をオフセット値eoptとする(オフセット値eoptに更新する)。
si’.ts=si.ts+eout
に相当する処理を実行して、ヘッダデータD2_headのサンプルデータsiのタイムスタンプsi.tsに出力オフセット値eoutを加算した値をTS補正ヘッダデータD2’_headのサンプルデータsi’のタイムスタンプsi’.tsとする。
ここで、具体例を挙げて、上記処理(TS同期処理(オフセット取得処理、TS補正ヘッダ取得処理))について、説明する。
{pi.ts}={0,3,10,11,14,17,19}
{ssi.ts}={0,1,4,7}
である場合について、説明する。なお、タイムスタンプは、説明便宜上、整数値により表されているものとする。また、n_fifo=7、n_hdr=4とする。
j=0のとき、e=pi.ts-ssj.ts=0-0=0
j=1のとき、e=pi.ts-ssj.ts=0-1=-1
j=2のとき、e=pi.ts-ssj.ts=0-4=-4
j=3のとき、e=pi.ts-ssj.ts=0-7=-7
であり、i=0、j=n_hdr-1の時点で、
E={0,-1,-4,-7}
となる。なお、集合Eには、ループ11処理において、jがインクリメントされる度に、データeが集合Eに追加されるが、図16の左図では、ループ11処理で取得されるeを、説明便宜のために、集合{e}(={0,-1,-4,-7})として示している。
j=0のとき、e=pi.ts-ssj.ts=3-0=3
j=1のとき、e=pi.ts-ssj.ts=3-1=2
j=2のとき、e=pi.ts-ssj.ts=3-4=-1
j=3のとき、e=pi.ts-ssj.ts=3-7=-4
であり、i=1、j=n_hdr-1の時点で、
E={0,-1,-4,-7}∪{3,2,-1,-4}
={0,-1,-4,-7,3,2}
となる。なお、集合Eには、ループ11処理において、jがインクリメントされる度に、データeが集合Eに追加されるが、図16の左図では、ループ11処理で取得されるeを、説明便宜のために、集合{e}(={3,2,-1,-4})として示している。
j=0のとき、e=pi.ts-ssj.ts=19-0=19
j=1のとき、e=pi.ts-ssj.ts=19-1=18
j=2のとき、e=pi.ts-ssj.ts=19-4=15
j=3のとき、e=pi.ts-ssj.ts=19-7=12
であり、i=n_fifo-1、j=n_hdr-1の時点で、
E=E∪{19,18,15,12}
={0,-1,-4,-7,3,2,10,9,6,11,7,4,14,13,17,16,19,18,15,12}
となる。なお、集合Eには、ループ11処理において、jがインクリメントされる度に、データeが集合Eに追加されるが、図16の左図では、ループ11処理で取得されるeを、説明便宜のために、集合{e}(={19,18,15,12})として示している。
cmax=4
eopt=10
と算出される。つまり、図16の右図に示すように、オフセット値eを「10」(=eopt)としたときに、集合Pと集合{ssi.ts+e}との積集合の要素数(c=4)が最大となる。すなわち、図16の右図に示すように、オフセット値eを「10」(=eopt)としたとき、集合{ssi.ts+e}の4つのデータが、集合Pに含まれるデータと一致する(4つのデータが一致する)。
cmax=4
eopt=10
が取得される(図16の右図、図17の右図の状態)。
次に、第1実施形態の第1変形例について、説明する。
ステップS1において、第1実施形態のステップS1と同様の処理が実行され、ステップS1の判定結果が「No」である場合、オフセット取得処理を終了させ、ステップS1の判定結果が「Yes」である場合、処理をステップS2A、S2B、S2Cに進める。
ステップS2Aにおいて、TS同期処理部32は、第1の選択処理を選択して、第1実施形態のステップS2と同様の処理を実行する。
ステップS3Aにおいて、TS同期処理部32は、第1実施形態のステップS3と同様の処理(オフセット算出処理)を実行する。
ステップS31Aにおいて、TS同期処理部32は、ステップS3Aのオフセット算出処理で取得した値cmaxを値D[1].c_maxに代入し(D[1].c_max=cmax)、ステップS3Aのオフセット算出処理で取得した値eoptを値D[1].e_optに代入する(D[1].e_opt=eopt)。
ステップS2Bにおいて、TS同期処理部32は、第2の選択処理を選択して、第1実施形態のステップS2と同様の処理を実行する。
ステップS3Bにおいて、TS同期処理部32は、第1実施形態のステップS3と同様の処理(オフセット算出処理)を実行する。
ステップS31Bにおいて、TS同期処理部32は、ステップS3Bのオフセット算出処理で取得した値cmaxを値D[2].c_maxに代入し(D[2].c_max=cmax)、ステップS3Bのオフセット算出処理で取得した値eoptを値D[2].e_optに代入する(D[2].e_opt=eopt)。
ステップS2Cにおいて、TS同期処理部32は、第3の選択処理を選択して、第1実施形態のステップS2と同様の処理を実行する。
ステップS3Cにおいて、TS同期処理部32は、第1実施形態のステップS3と同様の処理(オフセット算出処理)を実行する。
ステップS31Cにおいて、TS同期処理部32は、ステップS3Cのオフセット算出処理で取得した値cmaxを値D[3].c_maxに代入し(D[3].c_max=cmax)、ステップS3Cのオフセット算出処理で取得した値eoptを値D[3].e_optに代入する(D[3].e_opt=eopt)。
ステップS32において、TS同期処理部32は、
cmax=max(D[1].c_max,D[2].c_max,D[3].c_max)
max();要素の中で最大値を取得する関数
に相当する処理を実行する。
eopt=D[k].e_opt
k=argmax(max(D[1].c_max,D[2].c_max,D[3].c_max))
に相当する処理を実行する。
ステップS4において、TS同期処理部32は、ステップS32で取得された値cmax、および、オフセット値eoptを用いて、第1実施形態のステップS4(オフセット更新処理)と同様の処理を実行する。
上記実施形態(変形例を含む)では、無線品質データ可視化システム1000が図1の構成の場合を例に説明したが、無線品質データ可視化システムの構成(ネットワークのトポロジー等を含む)は、上記(図1等)に限定されるものではなく、センサ装置の位置、数等は、無線通信機能付きパーソナルコンピュータの位置、数、無線品質データ解析装置Ana_node1の位置、数等は、上記以外のものであってもよい。また、上記では、センサ装置が、通信機器とは別個に存在している場合について説明したが、これに限定されることはなく、例えば、通信機器がセンサ装置を含む、あるいは、付加されたものであってもよい。また、上記実施形態(変形例を含む)の無線品質データ可視化システムの機能が正常に実現される場合、センサ装置、無線通信機能付きパーソナルコンピュータPC1、無線品質データ解析装置Ana_node1の一部の機能部を上記で示した装置以外の装置に含めて、無線品質データ可視化システムを実現するようにしてもよい。
S_node1 センサ装置
PC1 無線通信機能付きパーソナルコンピュータ
Ana_node1 無線品質データ解析装置
Ant1 アンテナ(第1アンテナ)
Ant_pc アンテナ(第2アンテナ)
14 包絡線データ取得部
15 同期検出用データ生成部
23 ヘッダ取得処理部
32 TS同期処理部
321 第1FIFO
322 第2FIFO
323 オフセット取得処理部
324 オフセット値保持部
325 TS補正ヘッダ取得部
Claims (10)
- 無線信号を受信可能な第1アンテナと、
前記第1アンテナにより受信した無線信号である第1無線信号の包絡線データを取得する包絡線データ取得部と、
前記第1無線信号の無線フレームの開始時刻を示すタイムスタンプを取得し、取得したタイムスタンプの時系列データを同期検出用データとして取得する同期検出用データ生成部と、
無線信号を受信可能な第2アンテナと、
前記第2アンテナにより受信した無線信号である第2無線信号から、当該第2無線信号に含まれる無線フレームのヘッダ部分を解析することにより、当該ヘッダ部分に含まれる情報をヘッダデータとして取得するヘッダ取得部と、
前記同期検出用データに基づいて、前記ヘッダデータのタイムスタンプデータを補正し、補正したタイムスタンプを付与したタイムスタンプ補正ヘッダデータを取得するタイムスタンプ同期処理部と、
を備えるタイムスタンプ同期データ取得システム。 - 前記同期検出用データ生成部は、現時刻tにおける前記第1無線信号のサンプリングデータの信号強度が所定の閾値以上であり、かつ、現時刻tの1つの前のサンプリング時刻t-1における前記第1無線信号のサンプリングデータの信号強度が所定の閾値よりも小さい場合に、現時刻tに相当するデータを前記第1無線信号のタイムスタンプとして取得する、
請求項1に記載のタイムスタンプ同期データ取得システム。 - 前記同期検出用データ生成部は、前記第1無線信号が無線フレームを構成し、当該無線フレームの先頭部分であるプレアンブルに所定のフィールドが設定されている場合、前記第1無線信号の信号値の相関を調査することで、前記プレアンブル部分を検出し、検出した前記プレアンブルの先頭の時刻の情報を前記タイムスタンプとして取得し、取得したタイムスタンプの時系列データを同期検出用データとして取得する、
請求項1に記載のタイムスタンプ同期データ取得システム。 - 前記タイムスタンプ同期処理部は、
前記同期検出用データのサンプルデータをn_fifo個(n_fifo:自然数)記憶保持する第1FIFO記憶部と、
前記ヘッダデータのタイムスタンプのサンプルデータをn_fifo個記憶保持する第2FIFO記憶部と、
前記第1FIFO記憶部に記憶保持されている前記同期検出用データのサンプルデータと、前記第2FIFO記憶部に記憶保持されている前記ヘッダデータのタイムスタンプのサンプルデータとに基づいて、最適オフセット値を取得するオフセット取得処理部と、
前記オフセット取得処理部により、前記最適オフセット値が取得された場合、出力オフセット値を前記最適オフセット値に設定し、前記最適オフセット値に設定した前記出力オフセット値を記憶保持するオフセット値保持部と、
前記オフセット値保持部により記憶保持されている前記出力オフセット値により、前記ヘッダデータのタイムスタンプデータを補正し、補正したタイムスタンプを付与したタイムスタンプ補正ヘッダデータを取得するタイムスタンプ補正ヘッダ取得部と、
を備える、
請求項1から3のいずれかに記載のタイムスタンプ同期データ取得システム。 - 前記同期検出用データのサンプルデータのタイムスタンプをpi.ts(i:自然数、0≦i<n_fifo)とし、n_fifo個のタイムスタンプpi.tsの集合を{pi.ts}とし、
前記ヘッダデータのサンプルデータをsi(i:自然数、0≦i<n_fifo)、n_fifo個のサンプルデータsiの集合を{si}とし、サンプルデータsiのタイムスタンプをsi.ts(i:自然数、0≦i<n_fifo)とし、n_fifo個のタイムスタンプsi.tsの集合を{si.ts}とすると、
前記オフセット取得処理部は、
集合{si}からn_hdr個(n_hdr:自然数、n_hdr<n_fifo)のサンプルデータを選択し、選択したサンプルデータをssj(j:整数、0≦j<n_hdr)とし、その集合を{ssj}として取得し、
集合{pi.ts}に含まれるタイムスタンプと、{ssj}に含まれるサンプルデータssjのタイムスタンプssj.tsとの差を求めることで取得したオフセット値eの集合Eを取得し、集合Eに含まれるオフセット値eを前記ヘッダデータのタイムスタンプのサンプルデータに加算することでタイムスタンプ加算値ssj.ts+eの集合{ssj.ts+e}を取得し、集合{ssj.ts+e}と集合{pi.ts}との積集合の要素数を示す変数cが最大となるときのオフセット値eを最適オフセット値eoptとして取得し、
前記オフセット値保持部は、前記最適オフセット値eoptを前記出力オフセット値とし、
前記タイムスタンプ補正ヘッダ取得部は、前記出力オフセット値により、前記ヘッダデータのタイムスタンプデータを補正し、補正したタイムスタンプを付与したタイムスタンプ補正ヘッダデータを取得する、
請求項4に記載のタイムスタンプ同期データ取得システム。 - 前記オフセット取得処理部は、
(1)集合{si}から、サンプルデータsiのタイムスタンプが最も新しい時刻を示すものから順にn_hdr個(n_hdr:自然数、n_hdr<n_fifo)のサンプルデータを選択する第1選択処理、
(2)集合{si}から、サンプルデータsiのタイムスタンプが最も新しい時刻を示すデータと最も古い時刻を示すデータの中間にあるn_hdr個(n_hdr:自然数、n_hdr<n_fifo)のサンプルデータを選択する第2選択処理、および、
(3)集合{si}から、サンプルデータsiのタイムスタンプが最も古い時刻を示すものから順にn_hdr個(n_hdr:自然数、n_hdr<n_fifo)のサンプルデータを選択する第3選択処理のいずれかを実行することで、サンプルデータを選択し、選択したサンプルデータをssj(j:整数、0≦j<n_hdr)とし、その集合を{ssj}として取得する、
請求項5に記載のタイムスタンプ同期データ取得システム。 - 前記オフセット取得処理部は、
(1)集合{si}から、サンプルデータsiのタイムスタンプが最も新しい時刻を示すものから順にn_hdr個(n_hdr:自然数、n_hdr<n_fifo)のサンプルデータを選択する第1選択処理により選択したサンプルデータを用いて、最適オフセット値eoptを求める処理を実行し、求めた最適オフセット値eoptをD[1].e_optとして保持し、当該最適オフセット値eoptを取得したときの集合{ssj.ts+e}と集合{pi.ts}との積集合の要素数cをD[1].c_maxとして保持し、
(2)集合{si}から、サンプルデータsiのタイムスタンプが最も新しい時刻を示すデータと最も古い時刻を示すデータの中間にあるn_hdr個(n_hdr:自然数、n_hdr<n_fifo)のサンプルデータを選択する第2選択処理により選択したサンプルデータを用いて、最適オフセット値eoptを求める処理を実行し、求めた最適オフセット値eoptをD[2].e_optとして保持し、当該最適オフセット値eoptを取得したときの集合{ssj.ts+e}と集合{pi.ts}との積集合の要素数cをD[2].c_maxとして保持し、
(3)集合{si}から、サンプルデータsiのタイムスタンプが最も古い時刻を示すものから順にn_hdr個(n_hdr:自然数、n_hdr<n_fifo)のサンプルデータを選択する第3選択処理により選択したサンプルデータを用いて、最適オフセット値eoptを求める処理を実行し、求めた最適オフセット値eoptをD[3].e_optとして保持し、当該最適オフセット値eoptを取得したときの集合{ssj.ts+e}と集合{pi.ts}との積集合の要素数cをD[3].c_maxとして保持し、
前記オフセット取得処理部は、
データD[1].c_max、D[2].c_max、および、D[3].c_maxのうち最大値となるデータの引数をk(k:整数、1≦k≦3)とすると、データD[k].e_optを最適オフセット値eoptに設定し、
前記オフセット値保持部は、前記最適オフセット値eopt(=D[k].e_opt)を前記出力オフセット値とし、
前記タイムスタンプ補正ヘッダ取得部は、前記出力オフセット値により、前記ヘッダデータのタイムスタンプデータを補正し、補正したタイムスタンプを付与したタイムスタンプ補正ヘッダデータを取得する、
請求項5に記載のタイムスタンプ同期データ取得システム。 - センサ装置と、
無線通信機能付きパーソナルコンピュータと、
前記センサ装置および前記パーソナルコンピュータとネットワークを介して通信可能に接続される無線品質データ解析装置と、
を備え、
前記センサ装置は、
前記第1アンテナと、
前記包絡線データ取得部と、
前記同期検出用データ生成部と、
を備え、
前記無線通信機能付きパーソナルコンピュータは、
前記第2アンテナと、
前記ヘッダ取得部と、
を備え、
前記無線品質データ解析装置は、
前記タイムスタンプ同期処理部
を備える、
請求項1から7のいずれかに記載のタイムスタンプ同期データ取得システム。 - 無線信号を受信可能な第1アンテナにより受信した無線信号である第1無線信号の包絡線データを取得する包絡線データ取得ステップと、
前記第1無線信号の無線フレームの開始時刻を示すタイムスタンプを取得し、取得したタイムスタンプの時系列データを同期検出用データとして取得する同期検出用データ生成ステップと、
無線信号を受信可能な第2アンテナにより受信した無線信号である第2無線信号から、当該第2無線信号に含まれる無線フレームのヘッダ部分を解析することにより、当該ヘッダ部分に含まれる情報をヘッダデータとして取得するヘッダ取得ステップと、
前記同期検出用データに基づいて、前記ヘッダデータのタイムスタンプデータを補正し、補正したタイムスタンプを付与したタイムスタンプ補正ヘッダデータを取得するタイムスタンプ同期処理ステップと、
を備えるタイムスタンプ同期データ取得方法。 - 請求項9に記載のタイムスタンプ同期データ取得方法をコンピューターに実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020115316A JP7461236B2 (ja) | 2020-07-03 | 2020-07-03 | タイムスタンプ同期データ取得システム、タイムスタンプ同期データ取得方法、および、プログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2020115316A JP7461236B2 (ja) | 2020-07-03 | 2020-07-03 | タイムスタンプ同期データ取得システム、タイムスタンプ同期データ取得方法、および、プログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2022013033A JP2022013033A (ja) | 2022-01-18 |
JP7461236B2 true JP7461236B2 (ja) | 2024-04-03 |
Family
ID=80169579
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020115316A Active JP7461236B2 (ja) | 2020-07-03 | 2020-07-03 | タイムスタンプ同期データ取得システム、タイムスタンプ同期データ取得方法、および、プログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7461236B2 (ja) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011176412A (ja) | 2010-02-23 | 2011-09-08 | Advanced Telecommunication Research Institute International | 無線装置およびそれにおいてコンピュータに実行させるためのプログラム |
JP2015019223A (ja) | 2013-07-10 | 2015-01-29 | 住友電気工業株式会社 | センサ情報処理装置、センサ情報処理方法およびセンサ情報処理プログラム |
JP2019161290A (ja) | 2018-03-08 | 2019-09-19 | 株式会社国際電気通信基礎技術研究所 | センサ装置、無線品質分析装置、無線品質監視システム、データ取得方法、および、プログラム |
US20190289448A1 (en) | 2018-03-13 | 2019-09-19 | Cypress Semiconductor Corporation | Time of arrival estimation for bluetooth systems and devices |
-
2020
- 2020-07-03 JP JP2020115316A patent/JP7461236B2/ja active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011176412A (ja) | 2010-02-23 | 2011-09-08 | Advanced Telecommunication Research Institute International | 無線装置およびそれにおいてコンピュータに実行させるためのプログラム |
JP2015019223A (ja) | 2013-07-10 | 2015-01-29 | 住友電気工業株式会社 | センサ情報処理装置、センサ情報処理方法およびセンサ情報処理プログラム |
JP2019161290A (ja) | 2018-03-08 | 2019-09-19 | 株式会社国際電気通信基礎技術研究所 | センサ装置、無線品質分析装置、無線品質監視システム、データ取得方法、および、プログラム |
US20190289448A1 (en) | 2018-03-13 | 2019-09-19 | Cypress Semiconductor Corporation | Time of arrival estimation for bluetooth systems and devices |
Also Published As
Publication number | Publication date |
---|---|
JP2022013033A (ja) | 2022-01-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103037498B (zh) | 用于多点协作传输中定时提前调整的方法和设备 | |
JPWO2011126025A1 (ja) | 基地局装置、移動局装置及び参照信号送信方法 | |
JP2019161290A (ja) | センサ装置、無線品質分析装置、無線品質監視システム、データ取得方法、および、プログラム | |
CN113491150A (zh) | 通信设备、其通信方法、信息处理设备、其控制方法及程序 | |
EP2670079B1 (en) | Communication interface device | |
JP7461236B2 (ja) | タイムスタンプ同期データ取得システム、タイムスタンプ同期データ取得方法、および、プログラム | |
US11558647B2 (en) | Detection and synchronization of audio transmissions using complex audio signals | |
EP2925068B1 (en) | Multicast transmission terminal, multicast reception terminal, multicast system, program, multicast transmission method, and multicast reception method | |
CN112422250A (zh) | 一种多参考信号联合测量时偏的方法及系统 | |
CN108667543B (zh) | 一种时钟处理方法、接入网设备和终端设备 | |
US9787508B2 (en) | Computing system with communication link mechanism and method of operation thereof | |
JP2009038422A (ja) | 同期回路、及び、データ受信方法 | |
JP4477486B2 (ja) | Tdma通信装置 | |
JP2019103001A (ja) | 通信装置、通信装置の制御方法、およびプログラム | |
JP2024126229A (ja) | 無線品質データ解析装置、無線品質データ解析システム、無線品質データ解析方法、および、プログラム | |
JP2023119772A (ja) | 解析装置、コンピュータに実行させるためのプログラムおよびプログラムを記録したコンピュータ読み取り可能な記録媒体 | |
Hofmann et al. | X-Sync: Cross-technology clock synchronization among off-the-shelf wireless IoT devices | |
JP4678046B2 (ja) | 通信装置、通信システム、遅延時間の測定時間設定方法、遅延時間算出方法およびプログラム | |
JP5539289B2 (ja) | 無線通信装置 | |
JP7026093B2 (ja) | 信号解析装置および信号解析方法 | |
US20220022153A1 (en) | Timing synchronization method, transmission and reception system, transmitter, receiver and program | |
JP7500180B2 (ja) | 通信装置、通信方法及びプログラム | |
JP7251189B2 (ja) | 測距装置及び測距システム | |
JP2022064098A (ja) | フレーム同期装置及びそれを備えた測定装置及び測定システム、並びにフレーム同期方法及び測定方法 | |
JP4032929B2 (ja) | フレーム同期方法および装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230627 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240308 |
|
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: 20240319 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240322 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7461236 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |