(57)【特許請求の範囲】
【請求項１】
ネットワークを介して接続された複数のセンサと第１の周期で通信し、各前記センサから前記第１の周期以上の周期であるデータ取得周期ごとに各前記センサによって測定された測定データを取得して記憶部に記憶する通信装置であって、
前記データ取得周期に基づいて各前記センサを複数のグループに分類し、分類された前記グループに属する前記センサから前記測定データを取得すると、前記第１の周期当たりに前記ネットワークを介して受信することとなるデータのサイズの最大値が前記ネットワークの通信帯域に関する閾値を超えると判別した場合に、前記複数のセンサのうちの１つのセンサを異なるグループに分類し直すグルーピング部と、
前記データ取得周期と、分類した前記複数のグループと、に基づいて、前記記憶部に前記測定データを記憶するタイミング及びアドレスを計算するメモリマップ生成部と、を備える、
通信装置。
【請求項２】
前記グルーピング部は、前記データ取得周期ごとに各前記センサを前記複数のグループに分類する、
請求項１に記載の通信装置。
【請求項３】
前記グルーピング部は、最短の前記センサのデータ取得周期に対する各前記センサのデータ取得周期の比を計算し、計算された前記比の小数点以下を切り下げて整数比を計算し、計算された前記整数比が同じ前記センサを１つの前記グループに分類する、
請求項１又は２に記載の通信装置。
【請求項４】
前記グルーピング部は、分類された前記センサが最も少ない前記グループに属する前記センサのうちの前記データ取得周期が最も大きいセンサを、異なる前記グループに分類する、
請求項１から３のいずれか１項に記載の通信装置。
【請求項５】
前記ネットワークの通信帯域に関する閾値は、前記ネットワークの通信帯域のうちの前記測定データの取得に割り当てられた通信帯域である通信帯域閾値であり、
前記グルーピング部は、前記第１の周期当たりに前記通信装置によって前記ネットワークを介して受信することとなる前記測定データのサイズの最大値が前記通信帯域閾値を超えると判別した場合に、前記複数のセンサのうち前記通信装置が前記データ取得周期ごとに前記測定データを取得する必要性の程度を示す優先度の最も低い前記センサを、異なる前記グループに分類し直す、
請求項１から４のいずれか１項に記載の通信装置。
【請求項６】
ネットワークを介して接続された複数のセンサと第１の周期で通信し、各前記センサから前記第１の周期以上の周期であるデータ取得周期ごとに各前記センサによって測定された測定データを取得して記憶部に記憶する通信装置が行う通信方法であって、
前記通信装置のグルーピング部が、前記データ取得周期に基づいて各前記センサを複数のグループに分類し、分類された前記グループに属する前記センサから前記測定データを取得すると、前記第１の周期当たりに前記ネットワークを介して受信することとなるデータのサイズの最大値が前記ネットワークの通信帯域に関する閾値を超えると判別した場合に、前記複数のセンサのうちの１つのセンサを異なるグループに分類し直すグルーピングステップと、
前記通信装置のメモリマップ生成部が、前記データ取得周期と、分類した前記複数のグループと、に基づいて、前記記憶部に前記測定データを記憶するタイミング及びアドレスを計算するメモリマップ生成ステップと、を含む、
通信方法。
【請求項７】
前記グルーピングステップは、前記データ取得周期ごとに各前記センサを前記複数のグループに分類するステップを含む、
請求項６に記載の通信方法。
【請求項８】
前記グルーピングステップは、最短の前記センサのデータ取得周期に対する各前記センサのデータ取得周期の比を計算し、計算された前記比の小数点以下を切り下げて整数比を計算し、計算された前記整数比が同じ前記センサを１つの前記グループに分類するステップを含む、
請求項６又は７に記載の通信方法。
【請求項９】
前記グルーピングステップは、分類された前記センサが最も少ない前記グループに属する前記センサのうちの前記データ取得周期が最も大きいセンサを、異なる前記グループに分類するステップを含む、
請求項６から８のいずれか１項に記載の通信方法。
【請求項１０】
前記ネットワークの通信帯域に関する閾値は、前記ネットワークの通信帯域のうちの前記測定データの取得に割り当てられた通信帯域である通信帯域閾値であり、
前記グルーピングステップは、前記第１の周期当たりに前記ネットワークを介して受信することとなる前記測定データのサイズの最大値が前記通信帯域閾値を超えると判別した場合に、前記複数のセンサのうち前記データ取得周期ごとに前記測定データを取得する必要性の程度を示す優先度の最も低い前記センサを、異なる前記グループに分類し直すステップを含む、
請求項６から９のいずれか１項に記載の通信方法。
【請求項１１】
コンピュータに、
ネットワークを介して接続された複数のセンサと第１の周期で通信させ、各前記センサから前記第１の周期以上の周期であるデータ取得周期ごとに各前記センサによって測定された測定データを取得させて記憶部に記憶させる通信方法を実行させるプログラムであって、
前記コンピュータに、
前記データ取得周期に基づいて各前記センサを複数のグループに分類させ、分類された前記グループに属する前記センサから前記測定データを取得させると、前記第１の周期当たりに前記ネットワークを介して受信することとなるデータのサイズの最大値が前記ネットワークの通信帯域に関する閾値を超えると判別させた場合に、前記複数のセンサのうちの１つのセンサを異なるグループに分類し直させ、
前記データ取得周期と、分類した前記複数のグループと、に基づいて、前記記憶部に前記測定データを記憶するタイミング及びアドレスを計算させる、
プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、通信装置、通信方法及びプログラムに関する。
【背景技術】
【０００２】
従来、工場においては、ネットワークを介して各種装置に設置された複数のセンサから測定データを取得して、装置の制御に利用するシステムが使用されてきた。【０００３】
このようなシステムのネットワークにおいては、測定データを分析して装置を制御する装置であるコントローラとセンサとの間に、測定データをまとめて一時的に記憶する通信装置が接続される。ネットワークの帯域及び記憶領域の容量の制約から、この種の通信装置は、一定の時間ごとに異なる機器で記憶領域を共有する時分割方式の制御を行う。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０１４−１２０１８７号公報
【特許文献２】特開２０１７−１６３２５９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
通信装置に接続可能なセンサの数又はセンサから取得可能なデータの容量は、通信装置がセンサから測定データを取得するデータ取得周期、測定データのサイズ、ネットワークの通信帯域、通信装置の記憶領域の容量等によって制限される。【０００６】
あるセンサから測定データを頻繁に取得しようとすると、通信装置は、他のセンサからも測定データを同じ周期で取得することとなる。このため、通信装置は、測定データの内容が変化していないセンサからも頻繁に測定データを取得し、かつ、同じ測定データを記憶領域に記憶し続ける。
このような制御を行うと、重複する測定データを通信又は記憶する分、ネットワークの通信帯域、通信装置の記憶領域等を効率的に使用できないおそれがある。また、通信装置の記憶領域を効率的に使用できないため、ネットワークに接続するセンサの接続台数を増やそうとすると、通信装置の数を増やさなければならず、コストの増加につながるおそれがある。【０００７】
このような問題を解決するため、特許文献１、２に記載されたシステムが提案されている。特許文献１、２に記載されたシステムは、接続される装置が他の装置と通信する周期である通信周期に基づき、通信周期が等しい装置を同じグループに分類する。特許文献１、２に記載されたシステムは、このようにして、通信周期が異なる装置が接続された場合であっても、遅延を防止し、記憶領域又はネットワークを効率的に使用する。【０００８】
上述したように、特許文献１、２に記載されたシステムは、通信周期に基づいて装置をグループに分類する。このとき、装置の通信周期だけに基づいて装置をグループに分類すると、当然ながら、システムが装置からデータを取得する必要性の程度は考慮されない。
このため、必要性が低い装置であっても通信周期に基づいたグループに割り当てられる。これにより、記憶領域の一部にどの装置にも割り当てられない未使用の領域が発生する。
従って、特許文献１、２に記載したシステムでは、通信装置の記憶領域を全体として十分に使うことができないおそれがある。【０００９】
本開示は、上記に鑑みてなされたものであり、異なる周期で測定データを複数のセンサから取得する通信装置において、記憶領域を効率的に利用する通信装置、通信方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
上記目的を達成するため、本開示に係る通信装置は、
ネットワークを介して接続された複数のセンサと第１の周期で通信し、各前記センサから前記第１の周期以上の周期であるデータ取得周期ごとに各前記センサによって測定された測定データを取得して記憶部に記憶する通信装置であって、
前記データ取得周期に基づいて各前記センサを複数のグループに分類し、分類された前記グループに属する前記センサから前記測定データを取得すると、前記第１の周期当たりに前記ネットワークを介して受信することとなるデータのサイズの最大値が前記ネットワークの通信帯域に関する閾値を超えると判別した場合に、前記複数のセンサのうちの１つのセンサを異なるグループに分類し直すグルーピング部と、
前記データ取得周期と、分類した前記複数のグループと、に基づいて、前記記憶部に前記測定データを記憶するタイミング及びアドレスを計算するメモリマップ生成部と、を備える。
【発明の効果】
【００１１】
本開示によれば、異なる周期で測定データを複数のセンサから取得する通信装置において、記憶領域を効率的に利用する通信装置、通信方法及びプログラムが提供される。
【図面の簡単な説明】
【００１２】
【図１】第１の実施の形態に係る通信装置を含む通信システムの構成を示すブロック図
【図２】図１に示す通信装置の詳細を示すブロック図
【図３】図１に示す通信装置とセンサとの間でやり取りされるフレームの具体例を示す図
【図４】図１に示す通信装置によって生成されたメモリマップの具体例を示す図
【図５】図１に示す通信装置の記憶部に記憶された情報の具体例を示す図
【図６】図１に示す通信装置の記憶部に記憶された別の情報の具体例を示す図
【図７】図１に示す通信装置の記憶部に記憶された別の情報の具体例を示す図
【図８】図１に示す通信装置の記憶部に記憶された別の情報の具体例を示す図
【図９】図１に示す通信装置、コントローラ及びコンピュータのハードウェア構成図
【図１０】図１に示す通信装置によって生成されたメモリマップの生成の処理を示すフローチャート
【図１１】図１に示す通信装置の記憶部に記憶された情報の別の具体例を示す図
【図１２】図１に示す通信装置の記憶部に記憶された情報の別の具体例を示す図
【図１３】図１に示す通信装置によって生成されたメモリマップの別の具体例を示す図
【図１４】図１に示す通信装置によって生成されたメモリマップの別の具体例を示す図
【図１５】図１に示す通信装置の記憶部に記憶された情報の別の具体例を示す図
【図１６】図１に示す通信装置によって生成されたメモリマップの別の具体例を示す図
【図１７】第２の実施の形態に係る通信装置を含む通信システムの構成を示すブロック図
【図１８】図１７に示す通信装置の詳細を示すブロック図
【発明を実施するための形態】
【００１３】
以下、第１の実施の形態に係る通信装置１０を含む通信システム１について、図面を参照しながら説明する。
【００１４】
図１は、通信システム１の全体を示した概略図である。
通信システム１は、例えば、工場において、制御対象である装置の各部に取り付けられたセンサから測定データを取得し、取得したデータを解析して、装置を監視又は制御するシステムである。
【００１５】
通信システム１は、各種の測定データを取得するセンサＭ１、Ｍ２、…、Ｍ１３と、センサＭ１、Ｍ２等から測定データを取得し、取得した測定データを結合して他の装置と通信を行う通信装置１０と、通信装置１０を含む各種の装置を制御するコントローラ２０と、コントローラ２０の動作を管理又は設定するソフトウェアプログラムであるエンジニアリングツールＥＴをインストールしたコンピュータ３０と、を備える。
【００１６】
通信装置１０は、より詳細には、センサＭ１、Ｍ２、…、Ｍ１３から測定データを収集し、一時的に記憶し、コントローラ２０にとって扱いやすい形式に変換して他の装置と通信する装置である。
【００１７】
コントローラ２０は、通信装置１０から通信装置１０によって返還された測定データを収集し、収集したデータに基づいて、図示しない機器を監視又は制御する装置である。
【００１８】
コントローラ２０は、例えば、プログラマブルロジックコントローラ（Programmable Logic Controller、ＰＬＣ）を含み、コンピュータ３０は、例えば、パーソナルコンピュータ（Personal Computer、ＰＣ）を含み、通信装置１０は、センサＭ１、Ｍ２、…、Ｍ１３と通信装置１０との間に接続された組込コンピュータであるブリッジユニット（Bridge Unit）を含む。
【００１９】
センサＭ１、Ｍ２、…、Ｍ１３は、測定対象の温度、振動、圧力、変位、明るさ等を測定する装置である。センサＭ１、Ｍ２、…、Ｍ１３は、センサ側のネットワークであるセンサネットワークＳＮを介して、通信装置１０と接続されている。
【００２０】
それぞれのセンサＭ１、Ｍ２、…、Ｍ１３の備える記憶領域の容量は比較的小さいため、測定データは、逐次上書きされて更新される。このため、通信装置１０は、測定データが上書きされて失われる前に、センサＭ１、Ｍ２、…、Ｍ１３からデータを一定の時間ごとに取得する。この一定の時間を、センサのデータ取得周期という。データ取得周期は、センサＭ１、Ｍ２、…、Ｍ１３ごとに異なる。従って、センサＭ１、Ｍ２、…、Ｍ１３は、それぞれ固有のデータ取得周期ＴＡ１、ＴＡ２、…、ＴＡ１３を有する。
【００２１】
また、センサＭ１、Ｍ２、…、Ｍ１３の測定データのサイズは、必要とされるデータの精度、サンプリングの頻度等によって異なる。センサＭ１、Ｍ２、…、Ｍ１３を含む各装置には、入力データ又は出力データのサイズを数値で示した点数が定められている。例えば、入力可能な点数が５である装置には、出力点数が１である装置を５台まで接続することができる。点数はデータのサイズを表すため、後述する記憶部１２上に記憶される測定データのアドレスも、点数を用いて表現する。
【００２２】
通信装置１０とコントローラ２０とは、ブリッジユニット側のネットワークであるフィールドネットワークＦＮを介して接続されている。
コンピュータ３０は、ネットワークを介してコントローラ２０と接続されている。このネットワークは、フィールドネットワークＦＮであってもよいし、フィールドネットワークＦＮ以外のネットワークであってもよい。
【００２３】
続いて、通信装置１０の各部について、図２を参照して、説明する。
通信装置１０は、各種の演算を行う演算部１１と、各種のデータを記憶する記憶部１２と、コントローラ２０と情報をやり取りするインタフェースであるコントローラ通信インタフェース１３と、センサＭ１、Ｍ２、…、Ｍ１３と情報をやり取りするインタフェースであるセンサ通信インタフェース１４と、を備える。
【００２４】
通信装置１０は、センサＭ１、Ｍ２、…、Ｍ１３から取得した測定データを一時的に記憶する記憶領域であるバッファメモリ１２１を備える。
バッファメモリ１２１の容量が限られているため、通信装置１０は、バッファメモリ１２１にすべてのセンサＭ１、Ｍ２、…、Ｍ１３から取得した測定データを一度に記憶することができない。
【００２５】
そこで、通信装置１０は、バッファメモリ１２１について、一定の時間ＴＣごとに、どのセンサから取得した測定データを記憶するかを切り替える制御を行う。また、通信装置１０は、センサＭ１、Ｍ２、…、Ｍ１３から、センサ時間ＴＣごとに、測定データを予め設定された時分割数、例えば８で取得する。この一定の時間ＴＣは、例えば、コントローラ２０が通信装置１０からデータを取得する周期であるコントローラ周期ＴＣと同一である。前述したデータ取得周期ＴＡ１、ＴＡ２、…、ＴＡ１３の値は、コントローラ周期ＴＣの値以上の値である。
なお、コントローラ周期ＴＣは、請求項における、第１の周期の一例である。
【００２６】
通信装置１０は、センサネットワークＳＮを介して各センサＭ１、Ｍ２、…、Ｍ１３によって測定された測定データを取得する。
【００２７】
センサＭ１を例として、通信装置１０がセンサＭ１によって測定された測定データを取得するまでの流れを説明する。
センサＭ１は、通信装置１０によって生成された送信要求の信号を検知すると、測定データの前後にヘッダ、チェックサム、フレーム間ギャップ等のネットワークで交換するために必要な情報を付加して、通信の規約に従ってフレーム化する。
【００２８】
センサＭ１は、センサネットワークＳＮを介して通信装置１０のセンサ通信インタフェース１４にフレームを送信する。
図３に、通信装置１０とセンサＭ１、Ｍ２、…、Ｍ１３との間でやり取りされる、センサＭ１、Ｍ２、…、Ｍ１３から取得された測定データを含むフレームの例を示す。
１周期分のフレームは、フレームの先頭であることを示す特定のビット列であるヘッダと、データ本体と、データが破損しているか否かを検証するために付加されたチェックサムと、次の周期のフレームまでの空きを埋めるフレーム間ギャップ（ＧＡＰ）と、を含む。
この例においては、コントローラ周期ＴＣの時間内にセンサＭ１によって測定された測定データは、１周期分のフレームに収められている。
【００２９】
センサＭ２、Ｍ３、Ｍ１３がセンサＭ１と同じ時間間隔ＴＣの間に測定データを送信する場合には、図示しないネットワーク装置は、センサＭ１、Ｍ２、Ｍ１３によって送信される測定データを１つのフレームに結合して、通信装置１０に送信する。
以下では、理解を容易にするため、測定データの結合、フレームの分割等を考えず、付加情報を省略して説明する。
【００３０】
通信装置１０は、コントローラ周期ＴＣ、センサＭ１、Ｍ２、…、Ｍ１３のデータ取得周期ＴＡ１、ＴＡ２、…、ＴＡ１３、データのサイズ等の情報に基づいて、バッファメモリ１２１のどのアドレスに各センサＭ１、Ｍ２、…、Ｍ１３から取得した測定データを記憶するかを判別する。
【００３１】
バッファメモリ１２１の異なるアドレスには異なるセンサのデータが記憶され、同じアドレスでもタイミングによって異なるセンサのデータが記憶される。以下、センサＭ１、Ｍ２、…、Ｍ１３から取得した測定データを記憶するアドレス及びタイミングを含む情報を、バッファメモリ１２１のメモリマップと呼ぶ。
【００３２】
図４は、メモリマップを視覚的に表した一例を示す説明図である。
横軸はアドレスであり、バッファメモリ１２１の基準アドレスからのオフセットが点数として表現されている。
また、縦軸は時間の経過を表したものである。
縦軸の左に付された１回目、２回目等のラベルは、メモリマップが更新されるタイミングを表している。このタイミングは時間ＴＣずつ等間隔に離れている。
図４に示した例では、バッファメモリ１２１は、時分割数を８とする時分割方式で制御されているため、９回目の割当ては１回目と同一になる。このため、８回目の次は１回目としている。
【００３３】
長方形で示された部分が、バッファメモリ１２１の記憶領域うち、センサＭ１、Ｍ２、…、Ｍ１３に割り当てられた領域を表している。長方形が配置された横方向の位置は、割り当てられた領域のアドレスを表し、長方形の横幅は、割り当てられた領域のサイズを表す。
グレーの長方形は、どのセンサも割り当てられていない未使用の領域を表している。例えば、２回目のメモリマップを参照すると、アドレス３から１点、アドレス７から１点の箇所がグレーの長方形であり、これらの長方形に対応するアドレスは、どのセンサにも割り当てられていない未使用の領域である。
【００３４】
コントローラ２０は、一定の時間ＴＣごとに、通信装置１０にアクセスし、バッファメモリ１２１に記憶された情報を取得する。
【００３５】
通信装置１０は、コントローラ２０による送信を要求する信号を検知して、センサＭ１、Ｍ２、…、Ｍ１３から取得したデータの他、各センサＭ１、Ｍ２、…、Ｍ１３の取得周期、センサネットワークＳＮの通信帯域に関する情報等を送信してもよい。
【００３６】
なお、コントローラ通信インタフェース１３とセンサ通信インタフェース１４とは同一の通信インタフェースであってもよい。
【００３７】
通信装置１０の演算部１１の詳細について、再度図２を参照して説明する。
演算部１１は、後述する様々な演算を行う装置である。演算部１１は、後述するシステム情報を管理するシステム情報管理部１１１と、センサＭ１、Ｍ２、…、Ｍ１３を複数のグループに分類するグルーピング部１１２と、分類に従ってメモリマップを生成するメモリマップ生成部１１３と、メモリマップが制約条件を満たすか否かの判別を行う条件判定部１１４と、生成されたメモリマップに関する情報を管理するメモリマップ管理部１１５と、を備える。
【００３８】
再度図２を参照して、通信装置１０の記憶部１２の詳細を説明する。
記憶部１２は、センサＭ１、Ｍ２、…、Ｍ１３から取得したデータを一時的に記憶するバッファメモリ１２１と、後述するシステム情報を記憶するシステム情報記憶部１２２と、センサのデータ書き込み開始アドレス及びサイズに関する情報を記憶するメモリマップ記憶部１２３と、を備える。
【００３９】
システム情報は、システムとしての通信装置１０全体に関する情報であり、システム情報管理部１１１によって入力される情報である入力情報と、システム情報管理部１１１によって出力される情報である出力情報に分けられる。
入力情報は、大きく分けて、ネットワーク又は通信装置１０の性能又は仕様に起因する情報処理の制約条件を示す制約情報と、各センサの性能を示すセンサ情報とを含む。
図５にシステム情報記憶部１２２に記憶される制約情報の具体例を示す。
制約情報は、センサネットワークＳＮの通信帯域に関する情報を含む。
図６にシステム情報記憶部１２２に記憶されるセンサ情報の具体例を示す。
センサ情報は、センサの識別符号（ＩＤ、Identifier）と、データ取得周期の値と、点数とを含む。
【００４０】
出力情報は、通信装置１０から出力される情報であり、大きく分けて、コントローラ側の性能又は仕様に起因する情報処理の制約条件を示すコントローラ情報と、バッファメモリ１２１の各領域をどのセンサに割り当てるかを示すメモリマップ関連情報と、を含む。
図７にシステム情報記憶部１２２に記憶されるコントローラ情報の具体例を示す。
コントローラ情報は、コントローラ周期に関する情報と、時分割数に関する情報とを含む。
【００４１】
図８にシステム情報記憶部１２２に記憶されるメモリマップ関連情報の具体例を示す。
メモリマップ関連情報は、センサの識別符号（ＩＤ）と、各センサに割り当てられる回数、バッファメモリ１２１上の開始アドレスと、バッファメモリ１２１上で占める領域の点数とを含む。
【００４２】
図９は、通信装置１０、コントローラ２０及びコンピュータ３０を実現するハードウェア構成の一例を示す情報演算装置１００のハードウェアブロック図である。
情報演算装置１００は、後述する様々な演算処理を行うプロセッサ１０１と、入力装置１２０、出力装置１３０等の他の装置と通信するネットワークインタフェース（ＩＦ）１０２と、情報を一時的に記憶するＤＲＡＭ（Dynamic Random Access Memory）、ＳＲＡＭ（Static Random Access Memory）等の主記憶装置１０３と、情報を永続的に記憶するハードディスクドライブ（ＨＤＤ）、ソリッドステートドライブ（ＳＳＤ）等の補助記憶装置１０４と、プロセッサ１０１、ネットワークインタフェース１０２、主記憶装置１０３又は補助記憶装置１０４の間で交換される情報の経路であるバス１０５と、を備える。
【００４３】
プロセッサ１０１は図２に示した演算部１１を実現するハードウェアの一例であり、ネットワークインタフェース１０２は図２に示したコントローラ通信インタフェース１３及びセンサ通信インタフェース１４を実現するハードウェアの一例であり、主記憶装置１０３、補助記憶装置１０４は図２に示した記憶部１２を実現するハードウェアの一例である。
【００４４】
入力装置１２０は、外部からのデータの入力を受け付ける装置である。入力装置１２０は、例えば、マウス、キーボード、タッチパネル、マイク等のヒューマン・インタフェース・デバイスを含む。入力装置１２０は、例えば、ボタン、キー等の状態を検知して情報を入力する部分である入力部１２９を備える。
なお、入力装置１２０は、他装置が送信した信号を検知する装置である、パラレルバス、シリアルバス等の受信インタフェースであってもよい。
【００４５】
出力装置１３０は、ユーザに各種の情報を表示する情報を出力する装置であり、例えば、液晶ディスプレイ、ＣＲＴディスプレイ、有機ＥＬディスプレイ等を含む。出力装置１３０は、情報を文字、画像等の形式で印刷するプリンタ、プロッタ等も含む。出力装置１３０は、ディスプレイ、プリンタ等の情報を出力する部分である出力部１３９を備える。
【００４６】
以上説明した通信装置１０を用いてメモリマップを生成する処理を、図１０のフローチャートを参照して説明する。
【００４７】
システム情報管理部１１１は、センサＭ１、Ｍ２、…、Ｍ１３のデータ取得周期ＴＡ１、ＴＡ２、…、ＴＡ１３を取得する（ステップＳ１０１）。
例えば、センサＭ１のデータ取得周期ＴＡ１を取得するため、システム情報管理部１１１は、例えば、センサ通信インタフェース１４を介して、センサユニットとしてのセンサＭ１に命令を送信し、センサＭ１からデータ取得周期ＴＡ１を取得する。
なお、コンピュータ３０にセンサＭ１のデータ取得周期ＴＡ１が記憶されている場合には、システム情報管理部１１１は、コントローラ通信インタフェース１３を介して、コンピュータ３０からセンサＭ１のデータ取得周期ＴＡ１を取得してもよい。
【００４８】
図６に示したように、データ取得周期ＴＡ１、ＴＡ２、…、ＴＡ１３はセンサごとに異なり、例えば、２．５ｍｓから１００．０ｍｓまでばらついている。
【００４９】
再度図１０を参照すると、ステップＳ１０１で取得したデータ取得周期ＴＡ１、ＴＡ２、…、ＴＡ１３に基づいて、システム情報管理部１１１は、コントローラ２０のコントローラ周期ＴＣを決定する（ステップＳ１０２）。
【００５０】
例えば、システム情報管理部１１１は、最も頻繁に更新されるセンサ、すなわち、最もデータ取得周期の短いセンサのデータ取得周期を選択して、選択されたデータ取得周期をコントローラ周期ＴＣとして決定する。
【００５１】
図６に示した例では、センサＭ１、Ｍ２、…、Ｍ１３のデータ取得周期ＴＡ１、ＴＡ２、…、ＴＡ１３のうち、センサＭ１のデータ取得周期ＴＡ１の２．５ｍｓが最小であるため、システム情報管理部１１１は、２．５ｍｓをコントローラ周期ＴＣとして決定する。
【００５２】
図１０のフローチャートに戻って、グルーピング部１１２は、システム情報管理部１１１によって取得され又は決定された情報に基づいて、後続のグルーピングのための基準となる数値である、グルーピング周期を計算する（ステップＳ１０３）。
グルーピング周期ＴＧ１、ＴＧ２、…、ＴＧ１３は、基準となるコントローラ周期ＴＣに対するセンサＭ１、Ｍ２、…、Ｍ１３のデータ取得周期ＴＡ１、ＴＡ２、…、ＴＡ１３の整数比を求めたものである。
【００５３】
例えば、センサＭ３のグルーピング周期ＴＧ３は、次のように求められる。
センサＭ１、Ｍ２、…、Ｍ１３のデータ取得周期ＴＡ１、ＴＡ２、…、ＴＡ１３のうち、最短のものは、前述したように、センサＭ１のデータ取得周期ＴＡ１の２．５ｍｓである。
また、センサＭ３のデータ取得周期は、ＴＡ３の２６．０ｍｓである。
グルーピング部１１２は、データ取得周期ＴＡ１、ＴＡ３に基づき、２６．０／２．５（＝１０．４）を計算し、小数点以下を切り下げて、ＴＧ３を整数値１０として求める。
【００５４】
このようにして、グルーピング部１１２は、すべてのセンサＭ１、Ｍ２、…、Ｍ１３のグルーピング周期ＴＧ１、ＴＧ２、…、ＴＧ１３を求める。
求められたセンサＭ１、Ｍ２、…、Ｍ１３のグルーピング周期ＴＧ１、ＴＧ２、…、ＴＧ１３の具体例を図１１に示す。
【００５５】
次に、グルーピング部１１２は、ステップＳ１０３で計算されたグルーピング周期ＴＧ１、ＴＧ２、…、ＴＧ１３に基づいて、センサＭ１、Ｍ２、…、Ｍ１３を複数のグループＡグループ、Ｂグループ、Ｃグループ、Ｄグループに分類する（ステップＳ１０４）。
以下、センサを分類することをグルーピングという。
ステップＳ１０４は、請求項における、グルーピングステップの一例である。
【００５６】
まず、従来の一般的なグルーピングについて説明する。
図１１に示した例においては、グルーピング周期ＴＧ１、ＴＧ２、…、ＴＧ１３は、１、２、１０、４０の４つのいずれかである。
そこで、グルーピング部１１２は、まず、センサＭ１、Ｍ２、…、Ｍ１３を４つのグループに分類する。
【００５７】
次に、グルーピング部１１２は、グルーピング周期ＴＧ１、ＴＧ２、…、ＴＧ１３の昇順にセンサＭ１、Ｍ２、…、Ｍ１３を分類し、グルーピング周期ＴＧ１、ＴＧ２、…、ＴＧ１３の小さい順に、ＡグループからＤグループに割り当てる。例えば、グルーピング部１１２は、グルーピング周期が最小の１であるセンサＭ１、Ｍ２をＡグループ、グルーピング周期が２であるセンサＭ１０、Ｍ１１をＢグループ、グルーピング周期が１０であるセンサＭ３〜Ｍ９とＭ１２をＣグループ、グルーピング周期が最大の４０であるセンサＭ１３をＤグループとする。
このようにして、センサＭ１、Ｍ２、…、Ｍ１３は、グループＡからグループＤのいずれかに割り当てられる。
以上説明した従来の一般的なグルーピングに用いられる条件を、第１の条件とする。第１の条件に従って求められたグループとセンサの対応関係を図１２に示す。
【００５８】
メモリマップ生成部１１３は、分類されたグループに従って、メモリマップを生成する。そこで、再度図１０のフローチャートを参照して、メモリマップを生成する処理を説明する。
【００５９】
メモリマップ生成部１１３は、ステップＳ１０４でグルーピング部１１２によって分類されたグループに従い、メモリマップを生成する（ステップＳ１０５）。
ステップＳ１０５は、請求項における、メモリマップ生成ステップの一例である。
【００６０】
メモリマップ生成部１１３は、バッファメモリ１２１の容量と、各センサＭ１、Ｍ２、…、Ｍ１３の点数と、各センサＭ１、Ｍ２、…、Ｍ１３の属するグループと、に基づいて、メモリマップを生成する。
【００６１】
例えば、バッファメモリ１２１の容量の制約のため、１回に蓄積できるデータは８点以下であり、バッファメモリの時分割数は９以下であるとする。
【００６２】
メモリマップ生成部１１３は、各グループから少なくとも１つのセンサを割り当てる。また、メモリマップ生成部１１３は、１つのグループに複数のセンサが分類された場合には、それぞれのグループ内では、センサの識別情報の昇順でセンサを配置する。
【００６３】
このような基準で生成されたメモリマップの一例を図１３に示す。
【００６４】
図１３を参照すると、１回目の蓄積において、ＡグループからセンサＭ１、Ｍ２が、ＢグループからセンサＭ１０が、ＣグループからセンサＭ３が、ＤグループからセンサＭ１３が、それぞれ配置されている。
また、２回目の蓄積において、ＡグループからセンサＭ１、Ｍ２が、ＢグループからセンサＭ１１が、ＣグループからセンサＭ４が、それぞれ配置されている。センサＭ１１の点数はセンサＭ１０の点数より小さいので、Ｂグループの領域内で未使用の領域が生じている。また、センサＭ１３を更新する必要はなく、ＤグループにセンサＭ１３以外のセンサは所属していないので、Ｄグループからは、センサが配置されない。
【００６５】
続いて、図１０のフローチャートに戻って後続の処理を説明する。
メモリマップ生成部１１３によってメモリマップが生成された後、条件判定部１１４は、生成されたメモリマップがフィールドネットワークＦＮの通信帯域の条件を満たしているか否かを判定する（ステップＳ１０６）。条件判定部１１４が条件を満たしていないと判定した場合には（ステップＳ１０６；Ｎｏ）、ステップＳ１０５に戻って、メモリマップの生成を別の基準でやり直す。
この条件は、ステップＳ１０５で生成されたメモリマップ通りにコントローラ２０が通信装置１０と通信を行う場合に、センサネットワークＳＮの通信帯域に関する閾値を超えないかというものである。
【００６６】
センサネットワークＳＮの通信帯域に関する閾値は、例えば、センサネットワークＳＮの通信帯域のうち、測定データの取得の取得に割り当てられた通信帯域であり、以下のように計算される。
図５に例示したように、センサネットワークＳＮの通信帯域の値は、制約情報として、システム情報記憶部１２２に記憶されている。
センサネットワークＳＮの通信帯域に関する閾値は、システム情報記憶部１２２に記憶された通信帯域の値と、コントローラ周期ＴＣの値と、通信装置１０によって占められてもよい比率として予め設定された値と、から計算される。
例えば、センサネットワークＳＮの通信帯域の値が１Ｇビット毎秒であり、コントローラ周期ＴＣが２．５ミリ秒であり、通信装置１０による測定データの取得に割り当てられた通信帯域がセンサネットワークＳＮの通信帯域全体の０．１％であるものとする。
このとき、センサネットワークＳＮの通信帯域の値は、コントローラ周期ＴＣあたり２５００ビットとなる。
【００６７】
図１３に示したメモリマップでは、例えば、１回目の蓄積では、センサＭ１、Ｍ２、Ｍ１０、Ｍ３及びＭ１３の測定データの合計８点が、２回目の蓄積では、センサＭ１、Ｍ２、Ｍ１１及びＭ４の測定データの合計６点が、センサネットワークＳＮを介してやり取りされる。
すなわち、このメモリマップでは、周期ＴＣごとに、最大８点のデータがやり取りされる。条件判定部１１４は、ヘッダ、チェックサム等の付加データも考慮して、時間ＴＣあたりに受信する最大８点の測定データを含むデータのサイズがセンサネットワークＳＮの通信帯域に関する閾値を超えることとなる場合、そのメモリマップが条件を満たさないものと判定する。
【００６８】
例えば、測定データのサイズの最大値が２５６ビットであり、測定データ以外の付加データの値が２４ビットであるとすると、測定データを含んだフレームのサイズは、最大で２８０ビットである。
分割数が８の場合、コントローラ周期ＴＣあたり、８個のフレームが送受信されるので、コントローラ周期ＴＣあたり、センサネットワークＳＮには、２２４０ビットのデータがやり取りされる。
前述したように、センサネットワークＳＮの通信帯域に関する閾値は２５００ビットであるから、条件判定部１１４は、これらの値を比較し、測定データを含むデータのサイズが通信帯域に関する閾値を超えないものと判定する。
なお、センサネットワークＳＮの通信帯域に関する閾値は、請求項における、通信帯域閾値の一例である。
【００６９】
図１０に示したフローチャートにおいて、条件判定部１１４が条件を満たすと判定した場合（ステップＳ１０６；Ｙｅｓ）、メモリマップ管理部１１５は、コントローラ通信インタフェース１３を介して、コントローラ２０に、図８に例示したメモリマップ関連情報を通知する。
【００７０】
コントローラ２０は、通信装置１０のメモリマップ管理部１１５から通知されたメモリマップ関連情報に基づいて、通信装置１０から取得しているバッファメモリ１２１上のデータが、どのセンサの測定データであるのかを判別する。
【００７１】
このような通知の代わりに、例えば、メモリマップ管理部１１５は、コントローラ２０に、メモリマップ関連情報が更新された旨の通知だけを通知してもよい。また、通知を行わず、コントローラ２０が通信装置１０を監視してメモリマップが更新されたことを検出して、コントローラ２０によってメモリマップ関連情報が取得されてもよい。
【００７２】
条件判定部１１４が条件を満たさないものと判定した場合（ステップＳ１０６；Ｎｏ）、メモリマップの見直しの処理が行われる（ステップＳ１０５）。
【００７３】
第１の条件に従った方法では、ＡグループからＤグループまでのすべてのグループをメモリマップに配置した。しかし、あるグループに少数のセンサしか属しておらず、そのセンサの周期が長い場合には、そのグループに割り当てられる領域が未使用となり、使用されない分だけ効率が低下する。
未使用の領域を使用するため、別の条件でグルーピングをやり直すことも可能である。以下、この条件を第２の条件という。
【００７４】
具体的には、図１３に示したメモリマップでは、Ｄグループの領域がＣグループの領域の直後のアドレスに割り当てられているが、２回目以降、未使用の領域となっている。これは、Ｄグループに属するセンサがセンサＭ１３だけであり、かつ、センサＭ１３のデータ取得周期ＴＡ１３が他のグループに属するセンサのデータ取得周期と比べて長いためである。
【００７５】
そこで、グルーピング部１１２は、以下の基準に従ってメモリマップを再度生成する。
【００７６】
まず、グルーピング部１１２は、すべてのグループについて、そのグループに属しているセンサの数を計算する。
次に、グルーピング部１１２は、属しているセンサが最も少ないグループを選択する。
グルーピング部１１２は、属しているセンサが最も少ないグループ以外のグループのための領域のうち、未使用の領域をマークする。
グルーピング部１１２は、マークした未使用の領域に、属しているセンサが最も少ないグループのすべてのセンサを移動できるか否かを判別する。
【００７７】
図１２に示した例では、Ａグループに属するセンサの数は２、Ｂグループに属するセンサの数は２、Ｃグループに属するセンサの数は８、Ｄグループに属するセンサの数は１と計算される。そして、属しているセンサが最も少ないグループはＤグループである。
また、図１３に示したＡ、Ｂ、Ｃグループのための領域のうち、未使用である領域は、偶数回目のＢグループの１点分の領域である。
そこで、グルーピング部１１２は、これらの領域を未使用の領域としてマークする。
グルーピング部１１２は、グルーピング周期の大きいＤグループのセンサＭ１３を移動できるか否かを判別する。Ｄグループに属する唯一のセンサＭ１３の点数は１であり、マークしたいずれの領域も１点以上の十分な大きさを有する。
そこで、グルーピング部１１２は、センサＭ１３を、２回目のＢグループの領域に移動できるものと判別する。
【００７８】
そこで、図１４の矢印で示したように、グルーピング部１１２は、判別の結果に従い、１回目の開始アドレス７に割り当てられていたセンサＭ１３を、２回目の開始アドレス３に移動する。
メモリマップ生成部１１３は、グルーピング部１１２によって分類し直されたグループに従い、メモリマップを再生成する（ステップＳ１０５）。
【００７９】
上記のメモリマップの再生成の後、条件判定部１１４は、再度、通信帯域の制約条件を満たすか否かの判定を行う（ステップＳ１０６）。
【００８０】
第２の条件に従って再生成されたメモリマップによれば、１回の蓄積で転送されるデータは、最大で７点となる。このため、最大で８点を必要とする第１の条件に従って生成されたメモリマップに比べて、１回の蓄積で転送されるデータの最大値を削減することができる。
【００８１】
なお、第２の条件で、未使用の領域に移動するセンサを、予め選択されたグループに属するセンサのうちから選択してもよい。
【００８２】
上述した第２の条件に従ったグルーピングでも制約条件を満たさない場合に、グルーピング部１１２は、さらに別の条件に従い、グルーピングをやり直してもよい。
【００８３】
別の条件である第３の条件に従ったグルーピングの例を以下に示す。
第３の条件は、データ取得周期ごとに測定データを取得する必要性の程度を示す優先度に従い、一部のセンサのデータ取得周期を延ばすものである。
【００８４】
予め、センサＭ１、Ｍ２、…、Ｍ１３のそれぞれに優先度が割り当てられている。これらの優先度は、システム情報記憶部１２２に記憶されている。優先度は、システム情報管理部１１１によって設定され、システム情報記憶部１２２に保存される。
一例として、図１５に示すように、優先度は、例えば、１から１０の整数値であり、値が大きいほど優先度が高いものとする。
【００８５】
システム情報管理部１１１は、センサＭ１、Ｍ２、…、Ｍ１３の優先度をシステム情報記憶部１２２から取得する。
【００８６】
次に、グルーピング部１１２は、所定の閾値、例えば３と、システム情報管理部１１１によって取得されたセンサＭ１、Ｍ２、…、Ｍ１３の優先度とを比較し、優先度が閾値を下回っているセンサの優先度が低いものと判別する。
図１５に示した例では、グルーピング部１１２は、閾値３よりも小さい優先度１のセンサＭ１０と優先度２のセンサＭ１１を優先度が低いものと判別し、これらのセンサＭ１０、Ｍ１１のデータ取得周期ＴＡ１０、ＴＡ１１を延ばす。例えば、グルーピング部１１２は、ＴＡ１０、ＴＡ１１を２倍した値に更新する。
なお、所定の閾値で判別したときに、優先度が低いと判別されるセンサの数が２以上である場合には、グルーピング部１１２は、閾値を一定値だけ下げて、改めて判別を実行してもよい。また、所定の閾値で判別したときに、優先度が低いと判別されるセンサがない場合には、グルーピング部１１２は、閾値を一定値だけ上げて、改めて判別を実行してもよい。
【００８７】
優先度が低いと判別されたセンサＭ１０とセンサＭ１１の割当ては、バッファメモリ１２１の未使用の領域の有無、未使用の領域のサイズと、バッファメモリ１２１のリフレッシュ周期、コントローラ周期、延長可能なデータ取得周期等に基づいて、以下のように変更される。
【００８８】
まず、グルーピング部１１２は、優先度の低いセンサを未使用の領域に移動することが可能か判別する。
未使用の領域に移動することが可能と判別されなかった場合には、グルーピング部１１２は、時分割数を１だけ増やし、増やした時分割の最後の回数に優先度の低いセンサを移動する。その上で、優先度が低いと判断されなかったすべてのセンサについて、センサ取得周期の条件を満たしつつ配置することができるか否かを判別する。
以上の移動がすべて可能と判別したならば、グルーピング部１１２は、センサの割当てを変更する。
【００８９】
図１６を参照して、第２の条件に従った移動の流れを説明する。
センサＭ１０の点数は２であるが、未使用の領域の点数はすべて１であるため、グルーピング部１１２は、優先度の低いセンサを未使用の領域に移動することができないと判別する。
時分割数を維持することができないので、グルーピング部１１２は、時分割数を８から９に増やす。
そして、９回目のメモリマップで、グルーピング部１１２は、センサＭ１０、Ｍ１１を、グルーピング周期の長いグルーピングであるＣグループに割り当てられていた領域に移動する。センサＭ１０、Ｍ１１以外のセンサのうち、グルーピング周期ＴＧ１、ＴＧ２が１と小さく、９回目に割り当てられないとデータ取得周期の条件を満たせないセンサＭ１、Ｍ２があるため、グルーピング部１１２は、これらのセンサＭ１、Ｍ２を９回目に配置できるか否かを判別する。
９回目の開始アドレス０、５に合計点数３の未使用の領域があるため、グルーピング部１１２は、センサＭ１、Ｍ２をこれらの未使用の領域に配置することができると判別する。
【００９０】
この基準に従ったメモリマップにおいては、時分割数は図１４に示した８から図１６に示した９に増えているものの、１周分の蓄積における合計点数を図１４に示した５３から図１６に示した４６に減らすことができる。このため、データ取得周期を延ばしてもよいセンサがある場合には、効率を上げることができる。
【００９１】
なお、データ取得周期を延ばしてもよいセンサは、ユーザプログラムから選択されてもよく、ユーザによって設定されてもよい。
【００９２】
通信装置１０では、第１の条件に従ったグルーピングを行い、その結果得られたメモリマップが条件を満たさない場合に第２の条件に従ったグルーピングを行った。しかし、第１の条件に従ったメモリマップが条件を満たすか否かの判別を行わずに、又は条件を満たす場合でも、第２の条件に従ったグルーピングを行ってよい。さらに、第２の条件に従って生成されたメモリマップが条件を満たすか否かの判別を行わずに、又は条件を満たす場合でも、第３の条件に従ったグルーピングを行ってよい。第２の条件に従ったグルーピングを行わずに、第３の条件に従ったグルーピングを行ってもよい。第３の条件に従ったグルーピングを行い、その結果得られたメモリマップが条件を満たさない場合に、第２の条件に従ったグルーピングを行ってもよい。
【００９３】
以上説明した通信装置１０の情報演算装置１００の機能は、通信装置１０以外の装置によって実現されてもよい。
図１７を参照して、インストールしたソフトウェアによって情報演算装置１００の機能を実現する実施の形態２に係るコンピュータ２３０を含む通信システム２について説明する。
以下、実施の形態１と異なる部分についてのみ説明する。
【００９４】
図１８に示すように、コンピュータ２３０の演算部２１１は、通信装置１０と同様に、システム情報管理部１１１と、グルーピング部１１２と、メモリマップ生成部１１３と、条件判定部１１４と、メモリマップ管理部１１５と、を備える。
また、コンピュータ２３０の記憶部２１２は、通信装置１０と同様に、システム情報記憶部１２２及びメモリマップ記憶部１２３を備える。
【００９５】
コンピュータ２３０のシステム情報管理部１１１は、システム情報記憶部１２２に記憶されたシステム情報に基づいて、図１０に示したステップＳ１０１からＳ１０５を実行する。
また、システム情報管理部１１１は、システム情報記憶部１２２に必要なシステム情報が記憶されていない場合には、ユーザによって入力装置１２０から入力された情報に基づいて、図１０に示したステップＳ１０１からＳ１０５を実行してもよい。
【００９６】
通信装置１０又はコントローラ２０がネットワークを介して接続されている場合、コンピュータ２３０は、システム情報とメモリマップ情報をコントローラ２０又は通信装置１０へ通知してもよい。
コンピュータ２３０は、記憶部２１２に記憶された情報を、通信装置１０又はコントローラ２０が接続されたときに、これらの機器に送信してもよい。
【００９７】
通信装置１０は、コントローラ２０及びフィールドネットワークＦＮを介して、コンピュータ２３０からシステム情報及びメモリマップ情報を取得し、センサネットワークＳＮを介して、センサＭ１、Ｍ２、…、Ｍ１３に割り当てるバッファメモリ１２１を制御する。
【００９８】
コンピュータ２３０によれば、通信装置１０の構成を簡略化できる。また、通信装置１０を常にコントローラ２０に接続しておく必要はない。
従って、コンピュータ２３０によれば、コストを削減することができる。
【００９９】
以上説明したデータの構造は一例であり、他の構造であってもよく、説明したデータ以外のデータを含んでいてもよい。
また、演算部２１１及び記憶部２１２の機能は、コンピュータ２３０にインストールしたエンジニアリングツールＥＴを含むプログラムを実行することで実現されてもよい。
【０１００】
本開示の文脈において、コンピュータ読み取り可能な媒体は、命令実行システム、設備若しくは装置によって、又は、それらと関連して使用するために、プログラムを保持し、又は格納し得る、任意の有形的媒体であり得る。コンピュータ読み取り可能な媒体は、コンピュータ読み取り可能な信号媒体又はコンピュータ読み取り可能な記録媒体であり得る。コンピュータ読み取り可能な媒体は、電子的、磁気的、光学的、電磁的、赤外線又は半導体のシステム、設備若しくは装置、又は前述の任意の適切な組合せを含むが、これらに限定されない。コンピュータ読み取り可能な記録媒体のより具体的な例は、１つ以上のワイヤを有する電気的接続、ポータブルコンピュータディスケット、ハードディスク、ランダムアクセスメモリ（ＲＡＭ）、読み取り専用メモリ（ＲＯＭ）、消去可能なプログラム可能な読み取り専用メモリ（ＥＰＲＯＭ又はフラッシュメモリ）、光ファイバ、ポータブルコンパクトディスクリードオンリーメモリ（ＣＤ−ＲＯＭ）、光記憶装置、磁気記憶装置又は前述の任意の適切な組合せを含む。
【０１０１】
本開示は、本開示の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施の形態は、この開示を説明するためのものであり、本開示の範囲を限定するものではない。すなわち、本開示の範囲は、実施の形態ではなく、特許請求の範囲によって示される。そして、請求の範囲内及びそれと同等の開示の意義の範囲内で施される様々な変形が、本開示の範囲内とみなされる。
【符号の説明】
【０１０２】
１、２…通信システム、１０…通信装置、１１…演算部、１２…記憶部、１３…コントローラ通信インタフェース、１４…センサ通信インタフェース、２０…コントローラ、３０…コンピュータ、１００…情報演算装置、１０１…プロセッサ、１０２…ネットワークインタフェース、１０３…主記憶装置、１０４…補助記憶装置、１０５…バス、１１１…システム情報管理部、１１２…グルーピング部、１１３…メモリマップ生成部、１１４…条件判定部、１１５…メモリマップ管理部、１２０…入力装置、１２１…バッファメモリ、１２２…システム情報記憶部、１２３…メモリマップ記憶部、１２９…入力部、１３０…出力装置、１３９…出力部、２１１…演算部、２１２…記憶部、２１３…通信インタフェース、２３０…コンピュータ、ＦＮ…フィールドネットワーク、Ｍ１、Ｍ２、Ｍ３、Ｍ４、Ｍ５、Ｍ６、Ｍ７、Ｍ８、Ｍ９、Ｍ１０、Ｍ１１、Ｍ１２、Ｍ１３…センサ、ＳＮ…センサネットワーク、ＥＴ…エンジニアリングツール、ＴＣ…コントローラ周期。
【要約】
通信装置（１０）は、ネットワーク（ＳＮ）を介して接続された複数のセンサと第１の周期で通信し、各センサから第１の周期以上の周期であるデータ取得周期ごとに各センサによって測定された測定データを取得して記憶部（１２）に記憶する。通信装置（１０）は、データ取得周期に基づいて各センサを複数のグループに分類し、分類されたグループに属するセンサから測定データを取得すると、第１の周期当たりにネットワーク（ＳＮ）を介して受信することとなるデータのサイズの最大値がネットワーク（ＳＮ）の通信帯域に関する閾値を超えると判別した場合に、複数のセンサのうちの１つのセンサを異なるグループに分類し直すグルーピング部（１１２）と、データ取得周期と、分類した複数のグループと、に基づいて、記憶部（１２）に測定データを記憶するタイミング及びアドレスを計算するメモリマップ生成部（１１３）と、を備える。【図１】
0006833124.tif 000002
【図２】
0006833124.tif 000003
【図３】
0006833124.tif 000004
【図４】
0006833124.tif 000005
【図５】
0006833124.tif 000006
【図６】
0006833124.tif 000007
【図７】
0006833124.tif 000008
【図８】
0006833124.tif 000009
【図９】
0006833124.tif 000010
【図１０】
0006833124.tif 000011
【図１１】
0006833124.tif 000012
【図１２】
0006833124.tif 000013
【図１３】
0006833124.tif 000014
【図１４】
0006833124.tif 000015
【図１５】
0006833124.tif 000016
【図１６】
0006833124.tif 000017
【図１７】
0006833124.tif 000018
【図１８】
0006833124.tif 000019