(57)【特許請求の範囲】
【請求項１】
複数の下位接続機器からデータを取得する取得部と、
前記取得部が取得した複数の前記下位接続機器からのデータをまとめて送信データとして上位接続機器に送信する時間間隔である送信周期を、複数の前記下位接続機器の通信周期のうち最も長い通信周期以上に設定する送信設定部と、
前記送信データを、前記送信設定部が設定した前記送信周期で前記上位接続機器に送信する送信部とを備え、
前記送信設定部は、前記送信データに含む前記下位接続機器ごとのデータの数であるデータセット数を、前記送信周期と前記下位接続機器の通信周期とに基づいて設定し、
前記送信設定部は、前記下位接続機器の前記データセット数を、前記送信周期を前記下位接続機器の通信周期で割った商の整数部分の値として設定する
ことを特徴とする通信装置。
【請求項２】
前記送信設定部は、
前記下位接続機器の通信周期と、前記上位接続機器の通信周期とを用いて前記送信周期を算出する送信周期算出部
を備えることを特徴とする請求項１に記載の通信装置。
【請求項３】
前記取得部が取得したデータを保持するメモリ部を更に備え、
前記送信設定部は更に、
前記送信周期算出部が算出した前記送信周期を用い、前記下位接続機器ごとに前記メモリ部に保持されるデータのサイズである保持データサイズを算出する保持データサイズ算出部と、
前記保持データサイズ算出部が算出した前記保持データサイズが前記メモリ部が保持できるデータサイズ以下であるか否かを診断するメモリ診断部と、
を備えることを特徴とする請求項２に記載の通信装置。
【請求項４】
前記送信設定部は更に、
前記送信周期算出部が算出した前記送信周期を用い、前記上位接続機器へ送信される前記送信データのデータサイズである送信データサイズを算出する送信データサイズ算出部を備え、
前記メモリ診断部は更に、前記送信データサイズ算出部が算出した前記送信データサイズが、前記上位接続機器が受信可能な前記送信データのデータサイズ以下であるか否かを診断する
ことを特徴とする請求項３に記載の通信装置。
【請求項５】
前記送信周期算出部は、前記送信周期を、複数の前記下位接続機器の通信周期の最小公倍数として算出する
ことを特徴とする請求項２から４のいずれか１項に記載の通信装置。
【請求項６】
前記送信設定部は、
前記下位接続機器の接続または脱離を検知する下位接続機器検知部を備え、
前記下位接続機器検知部が、前記下位接続機器の変更を検知すると、前記送信設定部が再度前記送信周期を設定する
ことを特徴とする請求項１から５のいずれか１項に記載の通信装置。
【請求項７】
請求項１から６のいずれか１項に記載の前記通信装置と、
データを前記通信装置に出力する複数の前記下位接続機器と、
前記通信装置からの前記送信データを取得する前記上位接続機器と、
を備えるデータ収集システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本願は、通信装置およびデータ収集システムに関する。
【背景技術】
【０００２】
対象物についてのデータを検出して出力する下位接続機器と、下位接続機器からデータを取得して上位接続機器に送信する通信装置と、通信装置からデータを受信する上位接続機器とで構成されるデータ収集システムが知られている。【０００３】
例えば、対象物がモータの場合、下位接続機器はこのモータに関するデータを検出するセンサである。センサはモータの振動を検出する振動センサや、加速度を検出する加速度センサ等である。また、通信装置はそれらのセンサからのデータを取得する装置である。上位接続機器は、通信装置から受信したセンサのデータから、モータの故障確率を算出し、モータが故障している可能性が高い場合、アラームに通知させる装置とする。このような構成とすれば、データ収集システムは、モータの故障を事前に検知して通知することができる。【０００４】
従来、通信装置は上位接続機器に一定の時間間隔である送信周期でデータを送信する。ここで、通信装置に接続された下位接続機器の通信周期が、送信周期よりも長いとき、通信装置は下位接続機器からの同一のデータを繰り返し上位接続機器に送信してしまう場合がある。このような同一のデータの送信を削減し、上位接続機器と通信装置間の通信効率を向上させる技術が、特許文献１に開示されている。【０００５】
特許文献１では、上位接続機器が、通信装置から受信したデータが、前回受信したデータから変更されたか否かを判断し、データの変更の有無により各通信装置の送信周期を変更する。具体的には、データが変更されていなかった通信装置の送信周期はそれまでより長くし、データが変更されていた通信装置の送信周期はそれまでより短くする。従って、通信装置が同一のデータを上位接続機器に送信する頻度を減少させることができる。通信装置のデータの更新周期に基づいて、上位接続機器が通信装置の送信周期を最適化するので、上位接続機器と通信装置間の通信効率を向上させることができる。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開平９−２１９７１５
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１では、上位接続機器が通信装置からのデータの更新の有無を判断する。従って、上位接続機器が取得する通信装置のデータの更新周期は、データの更新周期が最も短い下位接続機器のデータの更新周期となる。ここで、下位接続機器のデータが、下位接続機器の通信周期で更新される場合、下位接続機器の通信周期が下位接続機器のデータの更新周期となる。従って、通信装置に複数の下位接続機器が接続されている場合、通信周期が最も短い下位接続機器に合わせて、通信周期が長い下位接続機器の同一のデータも、上位接続機器へ送信してしまう。その結果、通信装置から上位接続機器への単位時間当たりのデータの送信回数が多くなり、上位接続機器と通信装置間の通信効率が悪化するという課題があった。更に、通信装置が不要な同一のデータを繰り返し上位接続機器に送信してしまうので、上位接続機器と通信装置間の通信効率が不要なデータの送信により悪化するという課題があった。【０００８】
本願は上記のような課題を解決するためのもので、通信装置に複数の下位接続機器が接続されている場合に、通信装置と上位接続機器との間の通信効率を向上させる通信装置およびデータ収集システムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本願の通信装置は、複数の下位接続機器からデータを取得する取得部と、取得部が取得した複数の下位接続機器からのデータをまとめて送信データとして上位接続機器に送信する時間間隔である送信周期を複数の下位接続機器の通信周期のうち最も長い通信周期以上に設定する送信設定部と、送信データを、送信設定部が設定した送信周期で上位接続機器に送信する送信部と、を備える。送信設定部は、送信データに含む下位接続機器ごとのデータの数であるデータセット数を、送信周期と下位接続機器の通信周期とに基づいて設定する。送信設定部は、下位接続機器のデータセット数を、送信周期を下位接続機器の通信周期で割った商の整数部分の値として設定する。
【発明の効果】
【００１０】
本願の通信装置およびデータ収集システムは、通信装置が上位接続機器へ、下位接続機器から取得したデータをまとめて送信する送信周期を、複数の下位接続機器のうち最も長い通信周期以上に設定する。これにより、通信装置から上位接続機器への単位時間当たりのデータの送信回数を減らすことができ、上位接続機器と通信装置との間の通信効率を向上させることができる。更に、通信装置が不要な同一のデータを繰り返し上位接続機器に送信することがないので、上位接続機器と通信装置との間の通信効率を向上させることができる。
【図面の簡単な説明】
【００１１】
【図１】実施の形態１のデータ収集システムの構成
【図２】実施の形態１の通信装置の機能ブロック図
【図３】実施の形態１の通信装置の機器情報保持部に保持される機器情報を示す図
【図４】実施の形態１の保持データサイズ算出部が算出した下位接続機器の保持データサイズを示す図
【図５】実施の形態１の送信データサイズ算出部が算出した下位接続機器の送信データサイズを示す図
【図６】実施の形態１の通信装置の動作を示すフローチャート
【図７】実施の形態１の送信データのフレームのイメージ図
【図８】実施の形態１の通信装置のハードウェア構成図
【発明を実施するための形態】
【００１２】
実施の形態１．
以下、本願の実施の形態１の構成について、説明する。なお、図面の説明においては、同一部分または相当部分には同一符号を付し、重複する説明を省略する。
【００１３】
まず、本願の実施の形態１のデータ収集システムの構成について図１を用いて説明する。図１は実施の形態１のデータ収集システムの構成図である。データ収集システムは、ネットワークで接続された複数の下位接続機器１００と、通信装置２００と、上位接続機器３００とで構成される。図１では上位接続機器３００に、通信装置２００Ａ、２００Ｂが接続されている。また通信装置２００Ａには下位接続機器１００ａ〜１００ｃ、通信装置２００Ｂには下位接続機器１００ｄ〜１００ｆが接続されているとする。通信装置２００Ａは下位接続機器１００ａ〜１００ｃからのデータを取得する。通信装置２００Ｂは下位接続機器１００ｄ〜１００ｆからのデータを取得する。
【００１４】
このようなデータ収集システムの例として、ＦＡ（Ｆａｃｔｏｒｙ  Ａｕｔｏｍａｔｉｏｎ）システムがある。ＦＡシステムでは、例えば下位接続機器を対象物のデータを検出して出力するセンサ、通信装置をスレーブ装置、上位接続機器をマスタ装置で構成する。
【００１５】
データ収集システムに用いる通信プロトコルは、下位接続機器１００と通信装置２００との間と、通信装置２００と上位接続機器３００との間で異なっていてもよい。
【００１６】
続いて、データ収集システムを構成する装置について説明する。
【００１７】
下位接続機器１００は通信装置２００が取得するデータを出力する。このデータには、対象物について検出したデータである出力データと、下位接続機器１００の機器情報とを含むこととする。
【００１８】
出力データは、数値でも文字列でもよく、一定の通信周期で通信装置２００に送信される。なお、この通信周期は下位接続機器１００それぞれで異なっていてもよい。機器情報については後述する。
【００１９】
続いて、通信装置２００について説明する。通信装置２００は、複数の下位接続機器１００からデータを取得し、複数の下位接続機器１００からのデータをまとめて上位接続機器３００に送信データとして送信する。また、上位接続機器３００から、上位接続機器３００の機器情報を取得する。その他、上位接続機器３００から制御信号を受信してもよい。通信装置２００と送信データについての詳細は後述する。
【００２０】
上位接続機器３００は通信装置２００と通信し、上位接続機器３００の機器情報を通信装置に送信し、通信装置２００からの送信データを取得する。上位接続機器３００はその他、送信データを保存、分析等を行ったり、通信装置２００に対して制御信号を送信したりしてもよい。実施の形態１では、上位接続機器３００は通信装置２００と一定の通信周期で通信する。
【００２１】
次に図２を用いて本願の実施の形態１の通信装置２００の詳細な構成を説明する。図２は本願の実施の形態１の通信装置２００の機能ブロック図である。図２は図１に示したデータ収集システムの構成の一部を示す。
【００２２】
通信装置２００は、取得部２１０と、メモリ部２２０と、送信設定部２３０と、送信部２４０と、通知部２５０とを備える。以下、各機能の詳細を説明する。
【００２３】
取得部２１０は下位接続機器１００からのデータを取得する。取得部２１０は下位接続部２１１と、下位通信プロトコル変換機能部２１２と、下位接続機器情報取得部２１３とを備える。
【００２４】
下位接続部２１１には、複数の下位接続機器１００が接続され、下位接続機器１００と通信する。具体的にはＬＡＮポートまたはＵＳＢポート等である。
【００２５】
下位通信プロトコル変換機能部２１２は、下位接続部２１１が取得した下位接続機器１００のデータの通信プロトコルを変換する。なお、下位通信プロトコル変換機能部２１２は通信プロトコルの変換が不要であれば設けなくてもよい。
【００２６】
下位接続機器情報取得部２１３は、下位接続機器１００の機器情報を取得する。この機器情報とは、各下位接続機器１００の通信周期と、出力データのデータサイズである。
【００２７】
通信周期は、下位接続機器１００から通信周期情報として取得するか、下位接続機器１００からの通信間隔を測定することにより取得してもよい。または、上位接続機器３００か通信装置２００が下位接続機器１００の通信周期を事前に設定した場合、設定した通信周期を上位接続機器３００か通信装置２００から取得してもよい。
【００２８】
出力データのデータサイズは、通信周期毎に下位接続機器１００から送信される出力データの容量であり、バイトなどの単位で示される。データサイズは、下位接続機器１００からデータサイズ情報として取得するか、下位接続機器１００からの出力データのデータサイズを測定することにより取得してもよい。または、上位接続機器３００か通信装置２００が下位接続機器１００のデータサイズを事前に設定した場合、設定したデータサイズを取得してもよい。
【００２９】
なお、送信設定部２３０が送信周期を設定するために、下位接続機器１００の通信周期を用いることができれば、取得部２１０は、下位通信プロトコル変換機能部２１２と下位接続機器情報取得部２１３を、設けなくてもよい。
【００３０】
送信部２４０は上位接続機器３００との通信を行い、下位接続機器１００から取得したデータを送信データとしてまとめて送信する。便宜的に送信部２４０と呼ぶが、上位接続機器３００からの情報を受信してもよい。送信部２４０は上位接続部２４１と、上位通信プロトコル変換機能部２４２と、上位接続機器情報取得部２４３とを備える。
【００３１】
上位接続部２４１は、上位接続機器３００が接続され、上位接続機器３００と通信する。
【００３２】
上位通信プロトコル変換機能部２４２は、上位接続部２４１が取得した上位接続機器３００からのデータと、上位接続機器３００への送信データの通信プロトコルを変換する。なお、上位通信プロトコル変換機能部２４２は通信プロトコルの変換が不要であれば設けなくてもよい。また、下位通信プロトコル変換機能部２１２と上位通信プロトコル変換機能部２４２をまとめて１つの構成としてもよい。
【００３３】
上位接続機器情報取得部２４３は、上位接続機器３００の機器情報を取得する。この機器情報とは、上位接続機器３００の通信周期と、上位接続機器３００が受信可能な送信データのデータサイズである。
【００３４】
通信周期は、上位接続機器３００から通信周期情報として取得するか、上位接続機器３００との通信間隔を測定することにより取得してもよい。例えば特定のフレームが毎周期上位接続機器３００から送信される場合、そのフレームを受信した時間間隔から算出可能である。または、上位接続機器３００か通信装置２００が、上位接続機器３００の通信周期を事前に設定した場合、設定した通信周期を取得してもよい。
【００３５】
上位接続機器３００が受信可能な送信データのデータサイズは、送信周期毎に上位接続機器３００へ送信することができる送信データの容量であり、バイトなどの単位で示される。データサイズは、上位接続機器３００からデータサイズ情報として取得する。または、上位接続機器３００か通信装置２００が上位接続機器３００の受信可能な送信データのデータサイズを事前に設定した場合、設定したデータサイズを取得してもよい。
【００３６】
なお、送信設定部２３０が送信周期を設定する際に、上位接続機器３００の機器情報を用いない場合は上位接続機器情報取得部２４３を、設けなくてもよい。
【００３７】
メモリ部２２０は下位接続機器１００と上位接続機器３００から取得したデータを保持する。メモリ部２２０は、データを一時的に保持することができる揮発性メモリ等である。メモリ部は機器情報保持部２２１と、出力データ保持部２２２とを備える。
【００３８】
機器情報保持部２２１は、下位接続機器情報取得部２１３と、上位接続機器情報取得部２４３で取得した機器情報を保持する。
【００３９】
機器情報保持部２２１は、保持する機器情報が、どの下位接続機器１００または上位接続機器３００の情報であるか識別できるよう保持する。例えば、機器を識別するための識別情報を、機器情報と対応付けて保持する。識別情報は下位接続機器１００または上位接続機器３００から取得した機器のＭＡＣアドレス、または、予め通信装置２００にて設定した機器の名称等である。なお、通信装置２００が識別情報以外で機器情報を判別することができる場合、識別情報を用いなくてもよい。例えば通信装置２００が、データを取得するポートと、取得したデータを対応付けて取得することができる場合には識別情報は不要である。
【００４０】
ここで、機器情報保持部２２１に保持される機器情報の例を図３に示す。図３は通信装置２００Ａの機器情報保持部２２１に保持される機器情報を示す図である。機器情報保持部２２１には、下位接続機器１００ａ〜１００ｃの識別情報と、通信周期［ｍｓ］と、出力データのデータサイズ［ｂｙｔｅ］が対応付けて記憶されている。また、上位接続機器３００の識別情報と、通信周期［ｍｓ］と、上位接続機器３００が受信可能な送信データのデータサイズ［ｂｙｔｅ］が対応付けて記憶されている。
【００４１】
出力データ保持部２２２は、下位接続機器１００から取得した出力データを少なくとも上位接続機器３００に送信するまでの時間、保持する。
【００４２】
なお、メモリ部２２０が、下位接続機器１００の機器情報、上位接続機器３００の機器情報、および出力データを保持できれば、機器情報保持部２２１と、出力データ保持部２２２とをそれぞれの構成として設けなくてもよい。
【００４３】
送信設定部２３０は機器情報保持部２２１が保持する機器情報に基づき、上位接続機器３００へのデータの送信に関する設定を行う。送信設定部２３０は取得部２１０が取得したデータをまとめて送信データとして上位接続機器３００に送信する時間間隔である送信周期を下位接続機器の通信周期を用いて設定する。また、送信データに含む下位接続機器１００の出力データについて設定してもよい。送信設定部２３０は、下位接続機器検知部２３１と、送信周期算出部２３２と、保持データサイズ算出部２３３と、送信データサイズ算出部２３４と、メモリ診断部２３５とを備える。
【００４４】
下位接続機器検知部２３１は、機器情報保持部２２１が保持する下位接続機器１００の機器情報を参照し、通信装置２００に接続された下位接続機器１００を検知する。また、データ収集の開始後も、機器情報保持部２２１が保持する下位接続機器１００の機器情報に変更があるか否か検知する。なお、この方法は下位接続機器１００と通信装置２００がネットワーク接続する場合に用いることができる。通信装置２００は、各下位接続機器１００が接続されているか、定期的に応答を要求し、応答の有無で脱離を検知してもよい。
【００４５】
通信装置２００が、下位接続機器１００とＰｏｉｎｔ  Ｔｏ  Ｐｏｉｎｔ接続する場合には、下位接続部２１１を介して、通信装置２００が備える全てのポートに下位接続機器１００が接続されているかを、下位接続機器１００が認知できるコマンドを投げて、応答の有無で判断する。あるポートについて、下位接続機器１００の接続を検知した後は定期的に応答を要求し、応答の有無で脱離を検知してもよい。なお、最初から未接続なポートに対し、定期的に応答を要求するコマンドを送信すれば、応答の有無により新たな下位接続機器１００の接続を検知することができる。
【００４６】
送信周期算出部２３２は、通信装置２００が上位接続機器３００へ取得したデータをまとめて送信データとして送信する送信周期を算出する。送信設定部２３０は、送信周期算出部２３２が算出した送信周期を、送信周期として設定する。
【００４７】
ここで送信周期の算出方法を説明する。
【００４８】
全ての下位接続機器１００の通信周期が、上位接続機器３００の通信周期未満のときは、送信周期を上位接続機器３００の通信周期とする。送信周期は、上位接続機器３００の通信周期より短くすることができないからである。
【００４９】
一方、下位接続機器１００の通信周期が、上位接続機器３００の通信周期以上のときは、接続されている下位接続機器１００の中で、最も長い下位接続機器１００の通信周期を送信周期とする。これにより、送信周期の間に、その下位接続機器１００からの１通信周期分の出力データを取得して送信データとして送信することができる。もし、送信周期を下位接続機器１００の通信周期のうち最も長い通信周期より短くした場合、その下位接続機器１００のデータを、上位接続機器３００に繰り返し送信してしまうからである。
【００５０】
ここで、全ての下位接続機器１００の通信周期が、上位接続機器３００の通信周期未満のときは、送信周期を上位接続機器３００の通信周期とするが、この場合でも、送信周期は最も長い下位接続機器１００の通信周期以上であるといえる。従って、通信装置２００は送信周期を最も長い下位接続機器１００の通信周期以上とするので、下位接続機器１００からの不要な同一なデータを上位接続機器３００に繰り返し送信しない。従って、上位接続機器３００と通信装置２００間の通信効率を向上させることができる。
【００５１】
なお、送信周期を上位接続機器３００の通信周期以上としても、メモリ診断部２３５にて問題がないと診断され、送信データを上位接続機器３００へすぐ送信する必要がない場合には、送信周期をより長い時間としてもよい。送信周期をより長くすることにより、通信装置２００からの上位接続機器３００へのデータの送信頻度が減るので、上位接続機器３００と通信装置２００との間の通信効率を更に向上させることができる。
【００５２】
送信周期は更に、接続される全ての下位接続機器１００の通信周期の最小公倍数であることが望ましい。以下でその理由を説明する。
【００５３】
まず、送信データに含まれる、各下位接続機器１００の出力データの数を以下、データセット数と呼ぶ。送信周期がある下位接続機器１００の通信周期の倍数ではない場合、送信周期をある下位接続機器の通信周期で割った値が整数にならない。
【００５４】
各下位接続機器１００のデータセット数を予め、送信周期をある下位接続機器の通信周期で割った商の整数部分の値として送信設定部２３０で設定することで、送信データの各下位接続機器１００のデータセット数を一定とすることができる。ただし、この場合、出力データ保持部２２２に保持すべき出力データのデータサイズが増加してしまう。
【００５５】
送信データの各下位接続機器１００のデータセット数を送信設定部２３０で設定せず、送信データの各下位接続機器１００のデータセット数を一定としない場合は、その下位接続機器１００のデータセット数は送信周期ごとに変動する。従って、送信データのデータサイズも変動する。送信データのデータサイズが変動する場合、想定されるデータサイズが最大の送信データを送信できるよう、送信データのフレームのサイズと、出力データ保持部２２２のサイズを確保する必要がある。確保できていないと、データセット数が多い送信データを送信しきれない、もしくは保持すべき出力データを全て保持できずに取得できない状況が発生する。従って、一時的にしか使用しなくとも、確保すべき送信データのフレームのサイズと、出力データ保持部２２２のサイズが増加してしまう。
【００５６】
出力データ保持部２２２に保持すべき出力データのデータサイズが増加するか、確保すべき送信データのフレームのサイズと、出力データ保持部２２２のサイズが増加することで、後述するメモリ診断部２３５にて問題があると診断されやすくなる。メモリ診断部２３５にて問題があると診断されると、データ収集システムによる通信を開始することができない。この場合、システムの構成やデータサイズ等を変更する必要がある。または、確保すべき送信データのフレームのサイズと、出力データ保持部２２２のサイズを大きくするために、より高性能な上位接続機器３００と通信装置２００を用意する必要があり、システムにかかるコストが高くなる。
【００５７】
送信周期を全ての下位接続機器１００の通信周期の最小公倍数とすれば、送信周期が全ての下位接続機器１００の通信周期の倍数となり、送信周期をある下位接続機器の通信周期で割った値が整数となる。従って、下位接続機器１００のデータセット数は送信周期ごとに変動しないので、送信データのデータサイズを一定とすることができる。従って、メモリ診断部２３５にて問題があると診断され、通信を開始できない可能性を減らすことができる。または、確保すべき送信データのフレームのサイズと、出力データ保持部２２２のサイズを大きくするために、より高性能な上位接続機器３００と通信装置２００を用意する必要がなくなるので、システムを低コストで構成することができる。
【００５８】
送信周期は更に、上位接続機器３００の通信周期の倍数とする。これは、通信装置２００が上位接続機器３００に送信データを送信することができるのは、上位接続機器３００の通信周期のうち、通信装置２００がデータの送信ができるタイミングのみであるからである。データの送信ができるタイミングとは、通信周期の時間のうち、通信装置２００が上位接続機器３００へデータを送信することが許容されている時間である。
【００５９】
図３に示す機器情報のデータ収集システムの場合、下位接続機器１００ｃの通信周期が、上位接続機器３００の通信周期以上である。従って、送信周期算出部２３２は、送信周期を下位接続機器１００ｃの通信周期４００ｍｓとする。
【００６０】
以上のようにして、送信周期算出部２３２は、送信周期を下位接続機器１００と上位接続機器３００の通信周期を用いて算出する。
【００６１】
保持データサイズ算出部２３３は、出力データ保持部２２２が保持すべきデータのデータサイズを算出する。ここで、保持すべきデータのデータサイズの算出方法を説明する。
【００６２】
ここで保持データサイズをＤｍ、送信周期をＴｓ、下位接続機器１００の通信周期をＴｒ、出力データサイズをＤｒとすると、各下位接続機器１００の保持データサイズは下記数式１で算出される。
【００６３】
【数１】
0006732147.tif 000002
【００６４】
数式１に示すように、保持データサイズ算出部２３３は、下位接続機器１００ごとの保持データサイズを、送信周期を下位接続機器１００の通信周期で割った商に下位接続機器１００の出力データのデータサイズの積として算出する
ここで、各機器の通信周期が図３に示す値であり、送信周期は４００ｍｓとしたとき、保持データサイズ算出部２３３が各下位接続機器１００について算出した保持データサイズの結果を図４に示す。図４は各下位接続機器１００について算出した保持データサイズを示す図である。保持すべきデータのデータサイズは、各下位接続機器１００について算出した保持データサイズの和である。従って、各下位接続機器１００についての保持データサイズが図４で示す値の場合、保持すべきデータのデータサイズは４０ｂｙｔｅである。
【００６５】
送信データサイズ算出部２３４は、送信部２４０から上位接続機器３００へ送信されるデータのデータサイズを算出する。ここで、送信部２４０から上位接続機器３００へ送信されるデータのデータサイズの算出方法を説明する。
【００６６】
送信データには、各下位接続機器１００についての出力データだけでなく、データオフセット量、機器データサイズ、データセット数等の付加情報も含まれる。
【００６７】
従って、送信データサイズは保持データサイズよりも、付加情報のデータサイズ分、容量が大きくなる。送信データサイズをＤｓ、付加情報のデータサイズをＤｅとすると、各下位接続機器１００の、送信データサイズは下記数式２で算出される。
【００６８】
【数２】
0006732147.tif 000003
【００６９】
データオフセット量とは、各下位接続機器１００の出力データが送信データのフレームのどの位置に含まれるか示す。機器データサイズは、各下位接続機器１００の出力データのデータサイズの値を示す。データセット数は、通信装置２００が１周期の間に上位接続機器３００に送信する送信データに含まれる、各下位接続機器１００のデータの数である。なお、データセット数は送信周期を通信周期で割った商であり、整数とする。送信データサイズ算出部が算出したデータセット数は、送信設定部２３０による送信データの設定にも用いる。
【００７０】
ここで、保持データサイズが図４で示す値であり、付加情報のデータサイズが、各下位接続機器１００について、常に２ｂｙｔｅであるとき、送信データサイズ算出部２３４が各下位接続機器１００について算出した送信データサイズの結果を図５に示す。図５は各下位接続機器１００について算出した送信データサイズを示す図である。送信データのデータサイズは、各下位接続機器１００について算出した送信データサイズの和である。従って、各下位接続機器１００についての送信データサイズが図５で示す値の場合、送信データのデータサイズは４６ｂｙｔｅである。
【００７１】
メモリ診断部２３５は、保持データサイズ算出部２３３と送信データサイズ算出部２３４が算出したデータサイズに問題がないか診断する。ここで、メモリ診断部２３５による診断方法について説明する。
【００７２】
保持データサイズについては、各下位接続機器１００についての保持データサイズの和が、出力データ保持部２２２が保持可能なデータサイズを超えないかを診断する。送信データサイズについては、各下位接続機器１００についての送信データサイズの和が、上位接続機器３００が受信可能な送信データのデータサイズを超えないかを診断する。例えば、各下位接続機器の保持データサイズが、図３に示すデータサイズであるとき、保持データサイズの和は４０ｂｙｔｅである。このとき、出力データ保持部２２２が保持可能なデータサイズが４０ｂｙｔｅ以上であれば、問題がないと判断される。送信データサイズについても同様に、各下位接続機器の送信データサイズが、図４に示すデータサイズであるとき、送信データサイズの和は４６ｂｙｔｅである。このとき、上位接続機器３００が受信可能な送信データのデータサイズが４６ｂｙｔｅ以上であれば、問題がないと判断される。図３に示すように、上位接続機器３００が受信可能なデータサイズが５０ｂｙｔｅであれば、送信データサイズの和が４６ｂｙｔｅであっても問題がない。
【００７３】
メモリ診断部２３５により、送信周期算出部２３２が算出した送信周期が問題ないと診断されたら、その値を送信周期として設定する。保持データサイズまたは送信データサイズが、許容データサイズを超えない限り、送信周期はより長い時間間隔として設定してもよい。
【００７４】
なお、保持データサイズ算出部２３３、送信データサイズ算出部２３４、およびメモリ診断部２３５は、保持データサイズまたは送信データサイズが、許容データサイズを超えないか診断する必要がない場合は、設けなくてもよい。
【００７５】
通知部２５０はメモリ診断部２３５にて、保持データサイズ算出部２３３と送信データサイズ算出部２３４が算出したデータサイズに問題があると診断され、送信周期をいかなる値としても設定できない場合、通知を行う。この通知は、ディスプレイまたは豆電球等により視覚的に通知しても、ブザーまたは「エラーです」という音声によって聴覚的に通知してもよい。なお、通知部２５０は、上位接続部２４１を介して、エラーを上位接続機器３００に通知することにより、ユーザに対してシステム設定もしくはシステム構成の変更を促してもよい。なお、通知が不要であれば通知部２５０は設けなくてもよい。
【００７６】
実施の形態１では通信装置２００の機能ブロック図を図２にて示したが、複数の下位接続機器１００からデータを取得する取得部２１０と、複数の下位接続機器１００の通信周期のうち最も長い通信周期以上に送信周期を設定する送信設定部２３０と、送信設定部２３０が設定した送信周期で上位接続機器３００に送信データを送信する送信部２４０とを備えれば、上位接続機器３００と通信装置２００との間の通信効率を向上させることができる。
【００７７】
また、実施の形態１では、上位接続機器３００を通信装置２００に接続される装置として示したが、通信装置２００からの送信データを受信することができれば、ネットワーク上のサーバとしてもよい。また、下位接続機器１００も通信装置２００のポート等に接続される装置として示したが、無線によるネットワーク通信ができる構成としてもよい。また、図１では下位接続機器１００は１台の通信装置２００に接続される構成として示したが、複数台の通信装置２００に接続されてもよい。
【００７８】
以下、次に図６を用いて本願の実施の形態１の通信装置２００の動作について説明する。図６は本願の実施の形態１の通信装置２００の動作を示すフローチャートである。
【００７９】
通信装置２００が起動すると、図６のフローが開始される。まず、ステップＳ１００にて、上位接続機器情報取得部２４３が上位接続機器３００から通信開始指示を受信したかを判断する。通信開始指示を受信するまで、ステップＳ１００を繰り返す。
【００８０】
通信開始指示を受信すると、ステップＳ１０１に進み、上位接続機器情報取得部２４３が上位接続機器３００の情報を取得する。上位接続機器３００の情報とは、上位接続機器３００の通信周期と、上位接続機器３００が受信可能な送信データのデータサイズである。取得した上位接続機器３００の情報は機器情報保持部２２１に保持する。
【００８１】
ステップＳ１０１の後、ステップＳ１０２に進み、下位接続機器情報取得部２１３が、下位接続機器１００の情報を取得する。下位接続機器１００の情報とは、下位接続機器１００の通信周期と、下位接続機器１００の出力データのデータサイズである。取得した下位接続機器１００の情報は機器情報保持部２２１に保持する。
【００８２】
ステップＳ１０２のあとステップＳ１０３に進み、送信設定部２３０が、送信データの送信周期と、送信データを設定する。
【００８３】
ステップＳ１０３ではまず、送信周期を設定するために、下位接続機器検知部２３１が、下位接続機器１００の接続または脱離を検知する。続いて、送信周期算出部２３２が、送信周期を算出する。まず、上位接続機器３００の通信周期と、接続された下位接続機器１００の通信周期を取得する。続いて、送信周期算出部２３２が、送信周期を算出する。
【００８４】
送信データの設定では、送信データに含む各下位接続機器１００のデータセット数と、送信データのフレーム内での各下位接続機器１００のデータの順番等が設定される。図７に送信データのフレームのイメージ図を示す。図７に示すように、送信データにはデータオフセット量と、機器データサイズと、データセット数の情報と、下位接続機器１００の出力データが含まれる。なお、送信データのフレームは、上位接続機器３００にフレームの内容を識別できるよう設定しておけば、下位接続機器１００ごとに図７に示す付加情報と出力データを生成して繋げる形式としても、付加情報ごとにすべての下位接続機器１００についての情報を含ませる形式としてもよい。
【００８５】
その後、保持データサイズ算出部２３３が、出力データ保持部２２２が保持すべきデータのデータサイズを算出する。次に、送信データサイズ算出部２３４が、送信部２４０から上位接続機器３００へ送信されるデータのデータサイズを算出する。
【００８６】
ステップＳ１０３にて送信周期と送信データを設定した後、ステップＳ１０４に進み、メモリ診断部２３５にて保持データサイズ算出部２３３と送信データサイズ算出部２３４が算出したデータサイズに問題がないか診断する。診断については送信周期を算出した際と同様にして、保持データサイズと送信データサイズとについて診断する。ここで、保持データサイズまたは送信データサイズのいずれかまたは両方が許容のデータサイズを超える場合、ステップＳ１０５に進む。ステップＳ１０５では、ステップＳ１００の通信開始指示を受信してから、送信データを送信したか否かを判断する。一度も送信データを送信していない場合は、ステップＳ１０６に進み通知部２５０からエラー通知を行う。
【００８７】
１度でも送信データを送信したことがある場合は、ステップＳ１０５からステップＳ１０７に進む。ステップＳ１０７に進む場合とは、通信を開始してから、通信装置２００に接続されている下位接続機器１００が変更された場合、すなわち、通信装置２００に接続されている下位接続機器１００が異なる下位接続機器１００に変更された場合、下位接続機器１００が新しく接続された場合、又は下位接続機器１００が脱離した場合等である。ステップＳ１０７では、通知部２５０からエラー通知を行う。
【００８８】
ステップＳ１０７の後、ステップＳ１０８に進み、下位接続機器１００を変更する前の送信周期と、送信データの設定に戻し、それまで正常にデータの取得を行うことができた下位接続機器１００についてはデータ取得と、上位接続機器３００への送信を継続する。ステップＳ１０８により、下位接続機器１００の着脱によるエラーが発生しても、それまでのデータ収集による通信は継続することができる。
【００８９】
ステップＳ１０８の後、またはステップＳ１０４にてメモリ診断部２３５による診断で問題がなかった場合、ステップＳ１０９に進み下位接続機器からのデータ保持を開始する。ステップＳ１０９では、出力データ保持部２２２が下位接続機器１００からの出力データを保持する。
【００９０】
ステップＳ１０９の後、ステップＳ１１０に進み、下位接続機器１００に変更があるか否かを下位接続機器検知部２３１が判断する。なお、ステップＳ１１０の判断は、ステップＳ１０９の後ではなく、所定の時間間隔で行ってもよい。
【００９１】
ステップＳ１１０にて、下位接続機器検知部２３１が、下位接続機器に変更があったと検知した場合、ステップＳ１０３に戻り、送信設定部２３０が再度送信周期と送信データとを設定する。
【００９２】
特許文献１のデータ収集システムでは上位接続機器３００が送信周期を設定していたが、本願は通信装置２００が送信周期を設定するので、ステップＳ１１０により下位接続機器１００の着脱を検知することができる。
【００９３】
ステップＳ１１０にて下位接続機器に変更があると判断されなかった場合、ステップＳ１１１に進む。ステップＳ１１１では、送信タイミングとなったか否かを判断する。送信タイミングとは、下位接続機器１００の出力データの保持を開始してから、送信周期の時間が経過した、送信データを送信する時点である。送信タイミングではない場合、ステップＳ１０９に戻り、下位接続機器１００からのデータ保持を継続する。
【００９４】
ステップＳ１１１にて送信タイミングとなったと判断されたとき、ステップＳ１１２に進み、送信部２４０から送信データを送信する。
【００９５】
ステップＳ１１２の後、ステップＳ１１３に進み、出力データ保持部２２２で保持していた、送信済みの保持していた出力データを、出力データ保持部２２２から削除する。
【００９６】
ステップＳ１１３のあとステップＳ１１４に進み、上位接続機器３００から通信終了指示を受信したか否かを判断する。通信終了指示を受信した場合は、図６のフローを終了し、通信を停止する。通信終了指示を受信していない場合はステップＳ１０９に戻り、下位接続機器１００からのデータの保持を続ける。なお、ステップＳ１１４の判断は、ステップＳ１１３の後ではなく、所定の時間間隔で行ってもよい。
【００９７】
以上のような、通信装置２００の動作により、通信装置２００がデータをまとめて送信データとして上位接続機器３００に送信する時間間隔である送信周期を複数の下位接続機器１００のうち最も長い通信周期以上に設定する。これにより、通信装置２００から上位接続機器３００への単位時間当たりのデータの送信回数を減らすことができ、上位接続機器３００と通信装置２００ との間の通信効率を向上させることができる。
【００９８】
なお、実施の形態１では、通信装置２００の動作を示すフローチャートを図６にて示したが、送信データを、複数の下位接続機器１００の通信周期のうち最も長い通信周期以上の送信周期で上位接続機器３００に送信すれば、本願の上位接続機器３００と通信装置２００との間の通信効率を向上させる効果を発揮させることができる。従って、通信装置２００は、少なくともステップＳ１０２、ステップＳ１０３、ステップＳ１０９、ステップＳ１１１、ステップＳ１１２の動作を行えばよく、その他のステップの動作については必ずしも行わなくてもよい。
【００９９】
以下、図８を用いて実施の形態１に係る通信装置２００のハードウェア構成について説明する。図８は、実施の形態１の通信装置２００のハードウェア構成図である。通信装置２００は入力装置９０１、出力装置９０２、記憶装置９０３、および処理装置９０４を備える。
【０１００】
入力装置９０１は、通信装置２００の取得部２１０と送信部２４０が備える、情報が入力されるインターフェースである。このネットワークはＬＡＮケーブルまたは同軸ケーブル等の有線通信ネットワークでも、無線通信技術を用いた無線通信ネットワークでもよい。
【０１０１】
出力装置９０２は、通信装置２００の送信部２４０が備える。出力装置９０２は制御の信号またはインターフェースである。このネットワークはＬＡＮケーブルまたは同軸ケーブル等の有線通信ネットワークでも、無線通信技術を用いた無線通信ネットワークでもよい。
【０１０２】
記憶装置９０３は、通信装置２００のメモリ部２２０が備える。ワーキングメモリなどに該当する装置である。例えば、ＲＡＭ、ＲＯＭ、フラッシュメモリー等の不揮発性または揮発性の半導体メモリや、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク等が該当する。
【０１０３】
処理装置９０４は、通信装置２００の送信設定部２３０が備える。処理装置９０４は専用のハードウェアであっても、記憶装置９０３に記録されるプログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）であってもよい。
【０１０４】
処理装置９０４が専用のハードウェアである場合、処理装置９０４は、例えば、単一回路、複合回路、プログラム化したプロセッサー、並列プログラム化したプロセッサー、ＡＳＩＣ、ＦＰＧＡ、またはこれらを組み合わせたものが該当する。
【０１０５】
処理装置９０４がＣＰＵの場合、送信設定部２３０の機能は、ソフトウェア、ファームウェア、またはソフトウェアとファームウェアの組み合わせにより実現される。ソフトウェアやファームウェアはプログラムとして記述され、記憶装置９０３に記録される。処理装置９０４は記憶装置９０３に記憶されたプログラムを読み出して実行することにより、各部の機能を実現する。
【０１０６】
なお、送信設定部２３０の各機能は、一部をハードウェアで実現し、一部をソフトウェアまたはファームウェアで実現するようにしてもよい。
【０１０７】
このように、処理装置９０４はハードウェア、ソフトウェア、ファームウェア、またはこれらの組み合わせによって、上述の各機能を実現することができる。
【０１０８】
以上のようにして、本願の通信装置およびデータ収集システムによれば、通信装置が上位接続機器へ、下位接続機器から取得したデータをまとめて送信する送信周期を、複数の下位接続機器のうち最も長い通信周期以上に設定する。これにより、通信装置から上位接続機器への単位時間当たりのデータの送信回数を減らすことができるとともに、通信装置が不要な同一のデータを繰り返し上位接続機器に送信することがないので、上位接続機器と通信装置との間の通信効率を向上させることができる。
【符号の説明】
【０１０９】
１００  下位接続機器
２００  通信装置
２１０  取得部
２１１  下位接続部
２１２  下位通信プロトコル変換機能部
２１３  下位接続機器情報取得部
２２０  メモリ部
２２１  機器情報保持部
２２２  出力データ保持部
２３０  送信設定部
２３１  下位接続機器検知部
２３２  送信周期算出部
２３３  保持データサイズ算出部
２３４  送信データサイズ算出部
２３５  メモリ診断部
２４０  送信部
２４１  上位接続部
２４２  上位通信プロトコル変換機能部
２４３  上位接続機器情報取得部
２５０  通知部
３００  上位接続機器
９０１  入力装置
９０２  出力装置
９０３  記憶装置
９０４  処理装置
【要約】
本願の通信装置およびデータ収集システムは、通信装置に複数の下位接続機器が接続されている場合に、通信装置と上位接続機器との間の通信効率を向上させる通信装置およびデータ収集システムを提供することを目的とする。複数の下位接続機器からデータを取得する取得部と、取得部が取得した複数の下位接続機器からのデータをまとめて送信データとして上位接続機器に送信する時間間隔である送信周期を、複数の下位接続機器の通信周期のうち最も長い通信周期以上に設定する送信設定部と、送信データを、送信設定部が設定した送信周期で上位接続機器に送信する送信部と、を備える。【図１】
0006732147.tif 000004
【図２】
0006732147.tif 000005
【図３】
0006732147.tif 000006
【図４】
0006732147.tif 000007
【図５】
0006732147.tif 000008
【図６】
0006732147.tif 000009
【図７】
0006732147.tif 000010
【図８】
0006732147.tif 000011