(57)【特許請求の範囲】
【請求項１】
データを含む信号を送受信するための処理を行うインタフェース手段と、
該インタフェース手段による送受信に係る信号に含むデータをフレームとして、１または複数の前記フレームを一時的に格納する送受信バッファと、
該送受信バッファに格納された受信に係るフレームを処理し、また、送信に係るフレームを作成処理する送受信データ処理手段と、
前記送信に係るフレームまたは前記受信に係るフレームのどちらを前記送受信バッファに格納するかを判断し、また、前記受信に係るフレームに設定した複数の格納最大数と前記送信に係るフレームに設定した格納最大数とに基づいて前記送受信バッファへのフレームの格納に係る制御を行うバッファ制御手段とを備え、
前記バッファ制御手段は、
前記送受信データ処理手段が前記送信に係るフレームを前記送受信バッファに格納させることを許可し、前記インタフェース手段が前記受信に係るフレームを前記送受信バッファに格納させることを禁止する送信モードと、前記受信に係るフレームを格納させることを許可して前記送信に係るフレームを格納させることを禁止する受信モードとを切り替え設定する送受信モード切替手段と、
前記送受信バッファのフレーム数が前記格納最大数であるかどうかを判断するため、前記送受信バッファに格納されたフレーム数をカウントするカウンタと、
前記送受信バッファに格納された各フレームの格納位置を記憶するデータ境界記憶手段と
を有することを特徴とする通信制御装置。
【請求項２】
前記受信に係るフレームの最大数を２とし、前記送信に係るフレームの最大数を１とすることを特徴とする請求項１に記載の通信制御装置。
【請求項３】
前記送受信バッファ内または前記送受信バッファとは別のバッファに、確認応答に係るデータを格納するための格納領域を独立して設けることを特徴とする請求項１または請求項２に記載の通信制御装置。
【請求項４】
前記データ境界記憶手段は、格納されるフレームのデータ量に基づいて、動的に変化したフレームの格納位置を記憶することを特徴とする請求項１乃至請求項３のいずれかに記載の通信制御装置。
【請求項５】
送受信データ処理手段は、ＳＭＴＰの通信プロトコルに基づき電子メールによる送信処理を行うＳＭＴＰクライアント処理部を備えることを特徴とする請求項１乃至請求項４のいずれかに記載の通信制御装置。
【請求項６】
送受信データ処理手段は、ＰＯＰ３の通信プロトコルに基づき電子メールによる受信処理を行うＰＯＰ３クライアント処理部を備えることを特徴とする請求項１乃至請求項４のいずれかに記載の通信制御装置。
【請求項７】
前記インタフェース手段は、イーサネット（登録商標）に基づく前記信号の処理を行うことを特徴とする請求項１乃至請求項６のいずれかに記載の通信制御装置。
【請求項８】
前記インタフェース手段は、ＵＳＢの規格に基づく前記信号の処理を行うことを特徴とする請求項１乃至請求項６のいずれかに記載の通信制御装置。
【請求項９】
前記バッファ制御手段は、前記送受信データ処理手段が処理するフレームの種別を指定する受信対象フレーム指定手段を有し、
また、前記インタフェース手段は、前記受信したフレームの種別を判定するフレーム種別判定手段を有し、
前記インタフェース手段は、前記フレーム種別判定手段により、前記受信対象フレーム指定手段が指定した種類の前記受信に係るフレームだけを前記送受信バッファに格納することを特徴とする請求項１乃至請求項８のいずれかに記載の通信制御装置。
【請求項１０】
異なるプロトコルに基づく信号の送受信の処理を行う複数の前記インタフェース手段を有し、
他の少なくとも１の前記インタフェース手段は広域ネットワークとの間で信号を送受信するための通信線と接続し、他の前記インタフェース手段は通信機能を有する機器との間で信号を送受信するための通信線と接続して、前記機器と前記広域ネットワークとの間の信号の中継を行うことを特徴とする請求項１乃至請求項９のいずれかに記載の通信制御装置。
【請求項１１】
前記送受信データ処理手段は、前記広域ネットワークからの前記受信に係るフレームに基づいて、前記機器に送信するためのデータを作成するシリアルインタフェースデータ作成手段を有することを特徴とする請求項１０に記載の通信制御装置。
【請求項１２】
前記シリアルインタフェースデータ作成手段は、テキスト形式のデータを、前記機器が処理することができるバイナリ形式のデータに変換するデコード手段を有することを特徴とする請求項１１に記載の通信制御装置。
【請求項１３】
前記送受信データ処理手段は、前記機器からの前記受信に係るフレームに基づいて、前記広域ネットワークに送信するためのデータを作成するネットワークインタフェースデータ作成手段を有することを特徴とする請求項１０に記載の通信制御装置。
【請求項１４】
前記ネットワークインタフェースデータ作成手段は、前記機器からの信号に含まれるバイナリ形式のデータを、テキスト形式のデータに変換するエンコード手段を有することを特徴とする請求項１３に記載の通信制御装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、例えば、機器と広域ネットワークとの間など、異なるプロトコルでの通信が行われる電気通信回線などの間で、信号の中継を行う通信制御装置に関するものである。特に送受信に係る信号に含まれるデータを一時的に格納（記憶）するためのバッファの制御に関するものである。
【背景技術】
【０００２】
例えば、異なるプロトコルでの通信が行われる通信回線（ネットワーク）などの間で信号の中継を行う通信制御装置においては、処理するために、信号送受信に係るデータを一時的に格納しておくためのバッファが従来から設けられている。ここで、コスト削減などの理由から、効率的な通信を行える範囲においてバッファの記憶容量はできる限り少ない方がよい。そこで、バッファの記憶容量を削減するために、バッファの記憶領域を、送信用データの記憶領域と受信用データの記憶領域とに分け、送信データサイズ（記憶量）と受信データサイズを動的に管理する方法（例えば特許文献１参照）が提案されている。また、送信用バッファと受信用バッファをまとめて兼用バッファにする方法（例えば特許文献２参照）も提案されている。
【特許文献１】特開平１１−１９６０９７号公報
【特許文献２】特開２００１−１２７７９２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、従来の通信制御装置において、特許文献１のような装置では、受信領域と送信領域とをそれぞれ別に用意する必要があるため、バッファの記憶容量を、送信可能なデータサイズ、受信可能なデータサイズより大きくする必要があるという問題点があった。
【０００４】
また、特許文献２のようにバッファを送受信兼用にすると、送信元から複数の信号が連続して信号が送信された場合、各信号に含まれるデータ（以下、１つの信号に含まれるデータの群をフレームという）を格納（記憶）しきれず、信号（データ）を取りこぼしてしまう可能性が多くなる。取りこぼしをした場合には送信元が信号を再送しなければならない。そのため、取りこぼしが多くなると、信号の通信路におけるトラフィックが増加し、パフォーマンスが低下するという問題点があった。
【０００５】
この発明は、上記のような問題点を解決するためになされたもので、送受信兼用のバッファを有する通信制御装置において、最適な受信フレーム数と送信フレーム数とを処理し、必要なデータの取りこぼしおよび再送によるトラフィックの増加を防ぐことができる通信制御装置を得ることを目的とする。
【課題を解決するための手段】
【０００６】
この発明に係る通信制御装置は、通信線との接続により、データを含む信号を送受信するための処理を行うインタフェース手段と、インタフェース手段による送受信に係る信号に含むデータをフレームとして、１または複数のフレームを一時的に格納する送受信バッファと、送受信バッファに格納された受信に係るフレームを処理し、また、送信に係るフレームを作成処理する送受信データ処理手段と、送信に係るフレームまたは受信に係るフレームのどちらを送受信バッファに格納するかを判断し、また、受信に係るフレームに設定した複数の格納最大数と送信に係るフレームに設定した格納最大数とに基づいて送受信バッファへのフレームの格納に係る制御を行うバッファ制御手段とを備え、バッファ制御手段は、送受信データ処理手段が送信に係るフレームを送受信バッファに格納させることを許可し、インタフェース手段が受信に係るフレームを送受信バッファに格納させることを禁止する送信モードと、受信に係るフレームを格納させることを許可して送信に係るフレームを格納させることを禁止する受信モードとを切り替え設定する送受信モード切替手段と、送受信バッファのフレーム数が格納最大数であるかどうかを判断するため、送受信バッファに格納されたフレーム数をカウントするカウンタと、送受信バッファに格納された各フレームの格納位置を記憶するデータ境界記憶手段とを有する。
【０００７】
また、この発明に係る通信制御装置は、バッファ制御手段は、送受信データ処理手段が処理するフレームの種別を指定する受信対象フレーム指定手段を有し、また、インタフェース手段は、受信したフレームの種別を判定するフレーム種別判定手段を有し、インタフェース手段は、フレーム種別判定手段により、受信対象フレーム指定手段が指定した種類の受信に係るフレームだけを送受信バッファに格納する。
【発明の効果】
【０００８】
この発明は、送信に係るフレーム（データ）と受信に係るフレームとを一時的に格納（記憶）する送受信バッファについて、送受信モード切替手段によって送信モードと受信モードとを切り替えられるようにしたので、送受信バッファの記憶容量を少なくしても、限られた記憶領域を有効に利用することができ、コスト削減などを図ることができる。そして、このとき、送受信バッファに格納することができる受信フレームの数と送信フレームの数とをそれぞれ設定できるようにしたので、例えば連続して送信された信号について受信の取りこぼしを抑えることができ、受信の取りこぼしを抑え、信号を再送する必要がなくなるため、通信相手装置の負荷が減り、また通信線などにおけるトラフィックの増加を防ぐことができる。
【０００９】
また、この発明は、受信対象フレーム指定手段により、送受信バッファに格納するフレームの種類をインタフェース手段のフレーム種別判別手段に指定しておき、判定に基づいて、処理に必要なフレームだけを送受信バッファに格納し、受信を期待していないフレームは、送受信バッファに格納しないようにしたので、処理に必要のないフレームを格納せずにすみ、必要なフレームの取りこぼしを少なくすることができる。
【発明を実施するための最良の形態】
【００１０】
実施の形態１．
図１は、この発明の実施の形態１による通信制御装置を中心とする通信システムの構成を示すブロック図である。本実施の形態において、通信制御装置１０１は、空気調和システム、照明システムなど、またはそれらの機器を制御するためのリモートコントローラ（以降、設備機器１３０と記す）と公衆電気通信回線網である広域ネットワーク１２０との間の通信を可能にするアダプタとして機能する。そして、広域ネットワーク１２０上に備えられた遠隔監視サーバ１２４から、設備機器１３０を制御、監視などをするために利用するものとする。
【００１１】
ここで、本実施の形態では、通信制御装置１０１と設備機器１３０との間の接続インタフェースとして、例えば、一般的に用いられているシリアル転送方式（例えばＲＳ−２３２Ｃなど）を利用して通信を行う接続線を用いているものとして説明を行う。また、広域ネットワーク１２０との接続インタフェースとして、一般的に用いられているイーサネット（登録商標）などのプロトコルを利用して通信を行う接続線（例えば１０ＢＡＳＥ−Ｔなど）、端子を用いているものとして説明を行う。ただし、プロトコルなどについては、これらに限定するものではない。また、特に限定するものではないが、広域ネットワーク１２０と通信制御装置１０１との間に、さらに別の中継機器が設けられ、信号の中継を行っている場合もある。
【００１２】
また、通信制御装置１０１と遠隔監視サーバ１２４との間におけるデータの送受は、後述するように通信手段として最も汎用的な電子メールを利用して行う。そのため、広域ネットワーク１２０上には、メールサーバ１２１が設けられている。メールサーバ１２１には、通信制御装置１０１がデータを電子メールとして送るためのＳＭＴＰ（Simple Mail Transfer Protocol ）のプロトコルに基づいて処理を行うＳＭＴＰサーバ１２２が備えられている。また、データを電子メールとして受け取るためのＰＯＰ３（Post Office Protocol ver.3）サーバ１２３も備えられている。
【００１３】
通信制御装置１０１は、広域ネットワーク１２０側の通信に係るデジタル信号と通信制御装置１０１内の処理に係る電気信号との間の変換を行い、その電気信号に基づく処理動作を行うハードウェアであるイーサネット（登録商標）コントローラ１０２と、イーサネット（登録商標）コントローラ１０２の動作を制御するための、例えばソフトウェア、そのソフトウェアなどのデータを記憶する記憶手段などからなるイーサネット（登録商標）ドライバ１０４とを備える。これらは広域ネットワーク１２０側のインタフェース手段となり、上述した接続線を接続できる端子など（図示せず）を有している。また、設備機器１３０側の通信に係るデジタル信号と通信制御装置１０１内の処理に係る電気信号との変換を行い、その電気信号に基づく処理動作を行うハードウェアであるシリアルコントローラ１０５と、シリアルコントローラ１０５の動作を制御するための例えばソフトウェア、そのソフトウェアなどのデータを記憶する記憶手段などからなるシリアルドライバ１０６とを備える。これらは設備機器１３０側のインタフェース手段となり、上述した接続線を接続できる端子など（図示せず）を有している。ここで、通信制御装置１０１に設けるインタフェース手段の数は２に限定するものではない。
【００１４】
そして、広域ネットワーク１２０、設備機器１３０との送受信に係るデータを、それぞれ、一時的に格納する送受信バッファ１０７Ａ、１０７Ｂを備える（特に限定しないときは送受信バッファ１０７という）。ここで、通信制御装置１０１の各手段は、フレーム単位でのデータ処理を行うものとする。そのため、送受信バッファ１０７については、フレーム単位でのデータの格納を行うものとする（信号に含まれるデータのうち、イーサネット（登録商標）コントローラ１０２などの処理により除去などされているデータを格納などする場合もあるが、このようなデータもフレームとして扱うことにする）。また、後述するように送受信データ処理手段１０８による処理を行わなければ、広域ネットワーク１２０、設備機器１３０との送受信に係るデータを、送受信バッファ１０７Ａに格納すれば足りる。そのため、送受信バッファ１０７Ｂは設備機器１３０との信号の送受信に係る少ないデータ量を記憶できればよく、送受信バッファ１０７Ａより記憶容量が少なくてよい。そのため、送受信バッファ１０７全体の記憶容量を減らすことができる。
【００１５】
また、送受信バッファ１０７のデータ格納状態を制御するバッファ制御手段１１５とを備える。以下、バッファ制御手段１１５の処理については、送受信バッファ１０７Ａに対するものについて説明する。さらに、広域ネットワーク１２０に備えられたメールサーバ１２１や、設備機器１３０との間の通信手順制御などの処理を行い、また、遠隔監視サーバ１２４と設備機器１３０とがそれぞれ処理できる形式へのデータ変換などの処理を行う送受信データ処理手段１０８を備える。
【００１６】
上述したイーサネット（登録商標）コントローラ１０２については、広域ネットワーク１２０を介して受信した信号に含まれるフレームについて、通信先を特定しないブロードキャストフレームであるか、特定の通信制御装置１０１宛てのユニキャストフレームであるか、あるいはＴＣＰフレームであるかＵＤＰフレームであるかなど、フレームの種別を判定するフレーム種別判定手段１０３をさらに備える。
【００１７】
ここで、データを含む信号を送受信するための通信プロトコルとしては、例えば、ＨＴＴＰ（Hyper Text Transfer Protocol）、ＦＴＰ（File Transfer Protocol）、Ｔｅｌｎｅｔ、電子メールに係る通信プロトコルなどがある。本実施の形態では、遠隔監視サーバ１２４との通信に関し、送受信データ処理手段１０８において、電子メールに係る通信プロトコルを使用して処理するものとする。そして、電子メールを利用することでメールサーバ１２１を介して遠隔監視サーバ１２４との通信を行うものとする。
【００１８】
このため、送受信データ処理手段１０８は、電子メールを送るためのプロトコルであるＳＭＴＰに基づく処理を行うＳＭＴＰクライアント処理部１０９と、電子メールを受け取るためのプロトコルであるＰＯＰ３に基づく処理を行うＰＯＰ３クライアント処理部１１０を特に備えている。ここで、これらの下位層に規定される通信プロトコルとして、ＴＣＰ／ＩＰ（Transmission Control Protocol/Internet Protocol ）を使用するものとする。このＳＭＴＰクライアント処理部１０９およびＰＯＰ３クライアント処理部１１０は、主動作である信号などの中継のための通信に係る処理を行うものであるため、図１において図示している。ただ、場合によっては、他のサーバとの間で別の通信に係る処理を行う必要があり、図１では図示していないが、そのための処理部などが設けられていることもある。このような別の通信に係る処理は、一括して送受信データ処理手段１０８が行うものとする。
【００１９】
また、送受信データ処理手段１０８は、広域ネットワーク１２０からの受信に係る信号に含まれるフレーム（以下、受信フレームという）から、設備機器１３０に向けたデータ（情報）を抽出処理するシリアルデータインタフェースデータ作成手段１１１を備える。さらに、設備機器１３０からの受信フレームに基づいて、電子メールとしてメールサーバ１２１に送信するためのデータ（以下、メールデータという）を作成処理する広域ネットワークインタフェースデータ作成手段１１３を備える。
【００２０】
ここで、シリアルインタフェースデータ作成手段１１１はＢａｓｅ６４デコード手段１１２を備えている。Ｂａｓｅ６４デコード手段１１２は、遠隔監視サーバ１２４から設備機器１３０への指示などのデータについて、本来、設備機器１３０が処理できるデータ形式がバイナリ形式のデータである場合、Ｂａｓｅ６４方式によりテキスト形式（ＡＳＣＩＩコードの文字列）にエンコード（変換）処理されたデータを、バイナリ形式のデータにデコード（逆変換）処理するものである。一方、広域ネットワークインタフェースデータ作成手段１１３は、設備機器１３０から遠隔監視サーバ１２４に向けたデータがバイナリ形式のデータである場合に、Ｂａｓｅ６４方式でテキスト形式のデータにエンコード処理するＢａｓｅ６４エンコード手段１１４を備えている。バイナリ形式のデータを含む信号のままでは広域ネットワーク１２０を介して通信を行うことができないからである。なお、本実施の形態などでは、バイナリ形式のデータを電子メールで扱うためのデータ変換方式をＢａｓｅ６４方式とし、その処理を行う手段を設けるようにした。しかし、バイナリ形式をテキスト形式にエンコード処理またはデコード処理することが可能であれば、ｕｕｅｎｃｏｄｅ（ｕｕｄｅｃｏｄｅ）、ＢｉｎＨｅｘなど、他の方式により変換する手段を用いてもよい。
【００２１】
また、バッファ制御手段１１５は、処理対象とするフレーム種別をフレーム種別判定手段１０３に指定する受信対象フレーム指定手段１１６を備えている。また、イーサネット（登録商標）コントローラ１０２が受信フレームを送受信バッファ１０７Ａに格納することを許可し、送受信データ処理手段１０８の処理に係る送信フレームを送受信バッファ１０７Ａに格納することを禁止する受信モードか、逆に送信フレームの格納を許可し、受信フレームの格納を禁止する送信モードかを切り替える処理を行う送受信モード切替手段１１７を備えている。
【００２２】
そして、送受信バッファ１０７Ａに複数のフレームを格納するため、例えば、送受信バッファ１０７Ａの記憶領域における各フレームの先頭（開始）および／または末尾（終了）のデータの位置（アドレス）を記憶するデータ境界記憶手段１１８を備えている。データ境界記憶手段１１８に記憶されたデータは、例えば送受信データ処理手段１０８が処理を行う際、フレーム読み込みを行うために用いられる。あらかじめ固定した記憶領域に各フレームを格納していくのではなく、記憶領域内に自由に格納できるようにした上で、データ境界記憶手段１１８により、格納位置を記憶しておくことで、特に可変長のフレームでも記憶領域を効率的に利用することができ、領域の削減を図ることができる。
【００２３】
また、送受信バッファ１０７Ａが格納している受信フレームの数をカウントする受信カウンタ１１９とを備える。ここで、本実施の形態においては、送受信バッファ１０７Ａが格納できる受信フレームの最大数を２つとし、送信に係るフレーム（以下、送信フレームという）の最大数を１つとする。これは、特にＴＣＰ／ＩＰを用いる通信において、サーバ側からは２つの信号が連続して送信される（受信する）パターンが多いからである。また、送信フレーム数が少ない方が、信号の取りこぼし、記憶容量の削減を図る上で都合がよい。また、ここでは送受信バッファ１０７Ａが格納できる送信フレームの最大数を１としているために設けていないが、２以上の場合には、送信用のカウンタを設けるようにしてもよい。イーサネット（登録商標）コントローラ１０２は、受信カウンタ１１９のカウント数により、受信フレームを格納することができるかどうかを判断する。
【００２４】
図２は、通信制御装置１０１の送受信データ処理手段１０８の動作を示すフローチャートを表す図である。次に通信制御装置１０１の主動作である制御、監視などに係るデータの変換、通信処理について説明する。通信制御装置１０１は、まず、ステップＳＴ２０１でＳＭＴＰサーバ１２２との間でデータを含む信号の送受信を行えるように通信接続処理を行う。
【００２５】
図３は、ステップＳＴ２０１における通信制御装置１０１（送受信データ処理手段１０８）が行うＳＭＴＰサーバ１２２との通信処理の手順を示したシーケンス図である。図３に示す通信処理は主としてＳＭＴＰクライアント処理部１０９が行い、イーサネット（登録商標）コントローラ１０２を介した通信を行う。このＳＭＴＰサーバ１２２との通信処理は、ＲＦＣ（Request for Comments）２８２１に示されている手順に従う。
【００２６】
まず、ＳＱ３０１のように、通信制御装置１０１（ＳＭＴＰクライアント処理部１０９）側から信号を送信し、ＳＭＴＰサーバ１２２との間でコネクション（通信路）を確立させる。そして、ＳＱ３０２のように、ＳＭＴＰサーバ１２２において処理が成功すると、ＳＭＴＰサーバ１２２から、ドメインに関するデータを付した接続完了を示すコード「２２０」を含む信号が広域ネットワーク１２０を介して通信制御装置１０１側に返される。
【００２７】
次に、ＳＱ３０３のように、接続元（通信制御装置１０１となる）に関するデータを付した、接続元を確認するための「ＨＥＬＯ」コマンドを含む信号を広域ネットワーク１２０を介してＳＭＴＰサーバ１２２に送信する。ＳＭＴＰサーバ１２２において処理が成功すると、ＳＱ３０４のように、コマンドの処理を正常終了したことを示すコード「２５０」を含む信号が通信制御装置１０１側に返される。
【００２８】
次に、ＳＱ３０５のように、電子メールの送信元（通信制御装置１０１）に関するデータを付した、送信元を指定するコマンド「ＭＡＩＬ  ＦＲＯＭ」を含む信号を広域ネットワーク１２０を介してＳＭＴＰサーバ１２２に送信する。そして、ＳＭＴＰサーバ１２２において処理が成功すると、ＳＱ３０６のように、コード「２５０」を含む信号が通信制御装置１０１側に返される。
【００２９】
さらに、ＳＱ３０７のように、電子メールの送信先（遠隔監視サーバ１２４）に関するデータを付した、送信先を指定するコマンド「ＲＣＰＴ  ＴＯ」を含む信号を広域ネットワーク１２０を介してＳＭＴＰサーバ１２２に送信する。ＳＭＴＰサーバ１２２において処理が成功すると、ＳＱ３０８のように、コード「２５０」を含む信号が通信制御装置１０１側に返される。
【００３０】
次に、ＳＱ３０９のように、「ＤＡＴＡ」コマンドを含む信号を広域ネットワーク１２０を介してＳＭＴＰサーバ１２２に送信する。ＳＭＴＰサーバ１２２において処理が成功すると、ＳＱ３１０のように、メッセージの入力の開始を了承するコード「３５４」を含む信号が通信制御装置１０１側に返される。そして、ＳＱ３１１のように、メールデータのうち、ヘッダ部分のデータを含む信号を広域ネットワーク１２０を介してＳＭＴＰサーバ１２２に送信する。例えば、メールデータ本文部分の作成処理前にあらかじめヘッダ部分のデータを含む信号の送信を行っておくことで、メールデータ本文部分の作成、送信時の送受信バッファ１０７Ａの負担を減らすことができる。
【００３１】
図４は本実施の形態で扱う電子メールとして送信されるメールデータの内容例を示す図である。ＳＱ３１１において送信するメールヘッダ部分は、メールデータの先頭から、２つ連続した改行コードが現れる部分までであり、図４ではＡ部となる。
【００３２】
次に、図２に示すステップＳＴ２０２において、設備機器１３０から遠隔監視サーバ１２４に向けたデータがあるか否かを確認する。設備機器１３０からのデータ有無の確認は、シリアルコントローラ１０５において、ＲＴＳ（Request to Send ）をＯＮにする処理を行い、一定時間以内に設備機器１３０から受信した信号に係るデータが送受信バッファ１０７に記憶されている場合は、データありと判断し、それ以外はデータなしと判断する。ここで、設備機器１３０からの受信に係るデータは後述するＢａｓｅ６４方式での変換の要否に従い、広域ネットワーク１２０への送信に係るデータとして送受信バッファ１０７Ａに格納する。Ｂａｓｅ６４エンコード手段１１４によるＢａｓｅ６４方式でのエンコード処理が不要である場合は、１バイト分の信号を受信する毎に、その信号に含まれる１バイト分のデータを送受信バッファ１０７Ａに格納する。一方、Ｂａｓｅ６４方式でのエンコード処理が必要な場合は、３バイト分のデータを含む信号を受信する毎に、Ｂａｓｅ６４エンコード手段１１４がエンコード処理し、そのデータを送受信バッファ１０７Ａに格納する。そして、設備機器１３０からの信号を受信しなくなり一定時間が経過すると、設備機器１３０からのデータが終了したものと判断する。ここで、設備機器１３０から遠隔監視サーバ１２４に向けたデータとは、例えば、機器の状態に関するデータ、異常が発生したときのログデータなどである。
【００３３】
ステップＳＴ２０２でデータありと判断した場合、ステップＳＴ２０３において、受信した信号に係るデータ（設備機器１３０から遠隔監視サーバ１２４に向けたデータ）に基づいて、広域ネットワークインタフェースデータ作成手段１１３がメール本文部分についてメールデータの作成処理を行う。作成処理については、設備機器１３０からの受信に係るデータに、ＴＣＰヘッダ、ＩＰヘッダおよびＥｔｈｅｒｎｅｔ（登録商標）ヘッダに係るデータを付与することによって行う。ここで、例えば、設備機器１３０からの受信に係るデータが大きく、送受信バッファ１０７Ａに格納しきれない場合は、ＲＴＳをＯＦＦにして設備機器１３０からの信号の受信を一度停止し、送受信バッファ１０７Ａに記憶したデータに基づく信号を広域ネットワーク１２０に送信した後、再びＲＴＳをＯＮにして設備機器１３０から続きの信号を受信するようにしてもよい。
【００３４】
ここで、受信に係るデータが、バイナリ形式のデータであるときは、Ｂａｓｅ６４エンコード手段１１４が、Ｂａｓｅ６４方式に基づいてテキスト形式のデータにエンコード処理する。図４のＢ部にメール本文部分の例を示す。図４のＢ部は、例えば１６進数で表したときに「F0 01 20 15 09 10 00 00 F2 01 12 34 56 78 90 23 00 00」となる設備機器１３０からの信号に係るデータを、電子メールで送信するためにＢａｓｅ６４形式に基づいてエンコードしたデータを表すものである。
【００３５】
次に、ステップＳＴ２０４で、広域ネットワーク１２０を介して、メールサーバ１２１のＳＭＴＰサーバ１２２にメールデータのメール本文部分を含む信号を送信する。このとき末尾にデータの終了を意味する「改行、ピリオド、改行」を付与してメールサーバ１２１に送信する。そして、コード「２５０」を含む信号が通信制御装置１０１側に返される。さらに「ＱＵＩＴ」コマンドを含む信号を広域ネットワーク１２０を介してＳＭＴＰサーバ１２２に送信し、ＳＭＴＰサーバ１２２とのコネクションを切断する。
【００３６】
一方、上述したステップＳＴ２０２でデータなしと判断した場合には一定時間後にＲＴＳをＯＦＦにする。そして、メールデータを含む信号を送信することなく、ステップＳＴ２０５でＳＭＴＰサーバ１２２とのコネクションを切断する。このとき、ステップＳＴ２０１における処理により送信した信号に含まれるヘッダ部分のデータについては、コマンド「ＲＳＥＴ」を含む信号を送信し、ＳＭＴＰサーバ１２２に破棄させるようにする。
【００３７】
次に、ステップＳＴ２０６でＰＯＰ３サーバ１２３との間でデータを含む信号の送受信を行えるように通信処理を行う。ＰＯＰ３サーバ１２３との間の通信処理は主としてＰＯＰ３クライアント処理部１１０が行い、イーサネット（登録商標）コントローラ１０２を介した通信を行う。ＰＯＰ３サーバ１２３との通信処理は、ＲＦＣ１９３９に示されている手順に従う。まず、通信制御装置１０１（ＰＯＰ３クライアント処理部１１０）はＰＯＰ３サーバ１２３との間でコネクションを確立する。ＰＯＰ３サーバ１２３において処理が成功すると、ＰＯＰ３サーバ１２３からその旨のデータを含む信号が広域ネットワーク１２０を介して通信制御装置１０１側に返される。
【００３８】
次に、ユーザ名（通信制御装置１０１に割り当てられたユーザアカウント）に関するデータを付し、ユーザを指定する「ＵＳＥＲ」コマンドを含む信号を広域ネットワーク１２０を介してＰＯＰ３サーバ１２３に送信する。ＰＯＰ３サーバ１２３において処理が成功すると、ＰＯＰ３サーバ１２３からその旨のデータを含む信号が広域ネットワーク１２０を介して通信制御装置１０１側に返される。次に、パスワードに関するデータを付し、パスワードを指定するための「ＰＡＳＳ」コマンドを含む信号を広域ネットワーク１２０を介してＰＯＰ３サーバ１２３に送信する。ＰＯＰ３サーバ１２３において処理が成功すると、ＰＯＰ３サーバ１２３からその旨のデータを含む信号が広域ネットワーク１２０を介して通信制御装置１０１側に返される。
【００３９】
次に、ステップＳＴ２０７で、遠隔監視サーバ１２４から設備機器１３０に向けた電子メールがＰＯＰ３サーバ１２３に到着しているか否かを確認する。コマンド「ＳＴＡＴ」を含む信号を広域ネットワーク１２０を介してＰＯＰ３サーバ１２３に送信する。ＰＯＰ３サーバ１２３から到着メール数のデータを含む信号が広域ネットワーク１２０を介して通信制御装置１０１側に返される。
【００４０】
到着メール数のデータに基づいて電子メールがＰＯＰ３サーバ１２３が管理するメールボックス内にあるものと判断すると、コマンド「ＲＥＴＲ」を含む信号を広域ネットワーク１２０を介してＰＯＰ３サーバ１２３に送信する。ＰＯＰ３サーバ１２３からメールデータを含む信号が送信される。ここで、２件以上の電子メールが到着しているときは、コマンド「ＲＥＴＲ」と共に先に到着した電子メールに係るメール番号を指定して送信を要求する。
【００４１】
次に、ステップＳＴ２０８で、シリアルインタフェースデータ作成手段１１１は、取得したメールデータに基づいて設備機器１３０へのデータを抽出処理する。メール本文部分のデータが設備機器１３０へのデータとなる。そこで、受信したフレームデータについてＥｔｈｅｒｎｅｔ（登録商標）ヘッダ、ＩＰヘッダ、ＴＣＰヘッダおよびメールデータのメールヘッダ部分のデータを除き、メール本文部分のデータを抽出する。ここで、メール本文部分のデータがＢａｓｅ６４方式に基づくテキスト形式のデータである場合には、Ｂａｓｅ６４デコード手段１１２がデコード処理し、バイナリ形式のデータに変換する。遠隔監視サーバ１２４から設備機器１３０に送信するデータは、機器を操作するコマンドなどである。そして、ステップＳＴ２０９で、シリアルインタフェースデータ作成手段１１１が抽出したデータを含む信号を設備機器１３０に送信する。
【００４２】
次に、ステップＳＴ２１０で、ＰＯＰ３クライアント処理部１１０は、処理したメールデータをメールボックスから削除させるため、「ＤＥＬＥ」コマンドを含む信号を広域ネットワーク１２０を介してＰＯＰ３サーバ１２３に送信する。ＰＯＰ３サーバ１２３において処理が成功すると、ＰＯＰ３サーバ１２３からその旨のデータを含む信号が広域ネットワーク１２０を介して通信制御装置１０１側に返される。そして、さらにステップＳＴ２１１で、ＰＯＰ３サーバ１２３とのコネクション（通信接続）を切断を行うため、「ＱＵＩＴ」コマンドを含む信号を広域ネットワーク１２０を介してＰＯＰ３サーバ１２３に送信する。ＰＯＰ３サーバ１２３からその旨のデータを含む信号が広域ネットワーク１２０を介して通信制御装置１０１側に返される。
【００４３】
一方、ステップＳＴ２０７において、到着メール数のデータに基づいてメールデータがメールボックス内にないと判断すると、通信制御装置１０１においては、上述したステップＳＴ２０８、ステップＳＴ２０９およびステップＳＴ２１０の処理を実行しない。そして、ステップＳＴ２１１において、ＰＯＰ３サーバ１２３とのコネクションを切断する。
【００４４】
図５はバッファ制御手段１１５の動作を示すフローチャートを表す図である。次に実施の形態１におけるバッファ制御手段１１５による送受信バッファ１０７Ａの制御動作について説明する。
【００４５】
図６は図５の動作を説明するための通信シーケンス例を表す図である。図６は、図２のステップＳＴ２０６において、コネクションを確立した後、通信制御装置１０１側からユーザおよびパスワードを指定するときに、通信制御装置１０１とＰＯＰ３サーバ１２３との間の通信をＴＣＰレベルの通信シーケンスとして表している。ここで、本例における通信制御装置１０１の処理については、前述したように、主として送受信データ処理手段１０８のＰＯＰ３クライアント処理部１１０が行っている。まず、図６の通信シーケンスについて説明する。
【００４６】
ＳＱ６０１のように、通信制御装置１０１は、ユーザ名に関するデータを付し、ユーザを指定する「ＵＳＥＲ」コマンドを含む信号を広域ネットワーク１２０を介してＰＯＰ３サーバ１２３に送信する。
【００４７】
一方、ＳＱ６０２のように、ＰＯＰ３サーバ１２３は、受信した信号に対する確認応答（ＡＣＫ）を示すデータを含む信号（以下、ＡＣＫ信号という）を広域ネットワーク１２０を介して通信制御装置１０１側に返す。そして、ＳＱ６０３のように、ＰＯＰ３サーバ１２３は、さらに「＋ＯＫ」を示すデータを含む信号（以下、＋ＯＫ信号という）を通信制御装置１０１側に返す。
【００４８】
ＳＱ６０４のように、通信制御装置１０１は、受信した＋ＯＫ信号に対するＡＣＫ信号を、広域ネットワーク１２０を介してＰＯＰ３サーバ１２３に送信する。そして、ＳＱ６０５のように、通信制御装置１０１は、パスワードに関するデータを付し、パスワードを指定するための「ＰＡＳＳ」コマンドを含む信号をさらに広域ネットワーク１２０を介してＰＯＰ３サーバ１２３に送信する。
【００４９】
まず、図５のステップＳＴ５０１において、例えばＰＯＰ３クライアント処理部１１０は、送信に係るフレームがあるか否かを確認（判定）する。本例においては、ＳＱ６０１において「ＵＳＥＲ」コマンドを含むフレームを信号に含んで送信するので、判定は「Ｙ」となる。そして、ステップＳＴ５０２においては、ＰＯＰ３クライアント処理部１１０からの指示に基づいて、送受信モード切替手段１１７は送信モードに切り替える。送信モードの場合には、イーサネット（登録商標）コントローラ１０２が、広域ネットワーク１２０から受信した信号に基づくフレームを送受信バッファ１０７Ａに書き込む（格納する）ことを禁止する。なお、ここではステップＳＴ５０１、ＳＴ５０２における確認、指示をＰＯＰ３クライアント処理部１１０が行うようにしているが、例えば送受信モード切替手段１１７が行うなど、主体を限定するものではない。
【００５０】
図７は送受信バッファ１０７Ａに格納したフレーム（データ）の状態を概念的に示した図である。次に、ステップＳＴ５０３では、ＰＯＰ３クライアント処理部１１０が作成したフレームを送受信バッファ１０７Ａに格納する。例えば図７（１）のように、送受信バッファ１０７Ａには、ＳＱ６０１において送信する「ＵＳＥＲ」コマンドに係るフレーム７０１が格納される。次に、ステップＳＴ５０４において、イーサネット（登録商標）コントローラ１０２は、送受信バッファ１０７Ａに格納されたフレーム（ここでは「ＵＳＥＲ」コマンドに係るフレーム７０１）に基づいて、広域ネットワーク１２０を介してＰＯＰ３サーバ１２３に信号を送信する。一方、ステップＳＴ５０１において、送信に係るフレームがないときは、ステップＳＴ５０２〜ステップＳＴ５０４の処理を行わずにステップＳＴ５０５に進む。
【００５１】
信号送信のための処理が行われた後、ステップＳＴ５０５において、送受信モード切替手段１１７は、受信モードに切り替え、イーサネット（登録商標）コントローラ１０２による書き込み（格納）を許可する（送信に係るフレームがなかったときは受信モードのままとなる）。次にステップＳＴ５０６において、ＰＯＰ３サーバ１２３からの信号の受信の有無を確認する。（一定時間内に）受信があれば、イーサネット（登録商標）コントローラ１０２は受信に係るフレームを送受信バッファ１０７Ａに格納してステップＳＴ５０７に進む。受信がないときは、ステップＳＴ５０１に戻る。
【００５２】
図６の通信シーケンス例では、イーサネット（登録商標）コントローラ１０２はＳＱ６０２におけるＡＣＫ信号を受信し、送受信バッファ１０７Ａにフレームを格納する。このとき、送受信バッファ１０７Ａは図７（２）のような状態でＡＣＫ信号に係るフレーム７０２を格納している。また、受信カウンタ１１９はカウント値を１とする。
【００５３】
次に、ステップＳＴ５０７において、ＰＯＰ３クライアント処理部１１０は、送受信バッファ１０７Ａに格納した１フレーム目のフレーム（以下、第１受信フレームという）に基づいて、応答が必要であるか否かを確認する。ＡＣＫ信号に対しては応答する必要がないので、判定は「Ｎ」となる。そして、ステップＳＴ５０８に進み、そのフレーム（ＡＣＫ信号に係るフレーム７０２）に対して処理を実行する。
【００５４】
また、本例においては、ＰＯＰ３サーバ１２３は、ＳＱ６０２におけるＡＣＫに係るデータを含む信号に続いて、ＳＱ６０３における「＋ＯＫ」のデータを含む信号を通信制御装置１０１側に返す。ここでは、ステップＳＴ５０８の実行中に、＋ＯＫ信号を受信したものとして説明する。イーサネット（登録商標）コントローラ１０２は＋ＯＫ信号に係るフレームを送受信バッファ１０７Ａに格納する。このときの送受信バッファ１０７Ａは、図７（３）のように、ＡＣＫ信号に係るフレーム７０２と、＋ＯＫ信号に係るフレーム７０３の２つのフレームを格納している状態である。そして、この２つのフレーム境界（開始位置など）をデータ境界記憶手段１１８に記憶しておく。ここで、データ境界記憶手段１１８におけるフレーム境界の記憶方法については特に限定するものではない。例えば、本例においては受信できるフレーム数は２であるため、先の信号（ＡＣＫ信号）に係るフレーム７０２は、記憶領域の最初の部分に記憶されるものとし、＋ＯＫ信号に係るフレーム７０３のデータ記憶開始位置を記憶しておけば、格納したフレームを区別することができる。また、受信カウンタ１１９はカウント値を２とする。
【００５５】
次に、ステップＳＴ５０９において、ＰＯＰ３クライアント処理部１１０は、送受信バッファ１０７Ａ中に２フレーム目のフレーム（以下、第２受信フレームという）があるか否かを確認する。ここでは図７（３）のように＋ＯＫ信号に係るフレーム７０３が格納されているので、判定は「Ｙ」となる。そして、ステップＳＴ５１０において、ＰＯＰ３クライアント処理部１１０は、第２受信フレーム（＋ＯＫ信号に係るフレーム７０３）に対する処理を実行する。ここでは、ＰＯＰ３クライアント処理部１１０が、ＰＯＰサーバ１２３が「ＵＳＥＲ」コマンドを受理したことを認識すると共に、＋ＯＫ信号を受信したことに対するＡＣＫ信号を送信するための処理を実行する。そのため、ＰＯＰ３クライアント処理部１１０からの指示に基づいて、送受信モード切替手段１１７は送信モードに切り替える。そして、ＰＯＰ３クライアント処理部１１０が作成したフレームを送受信バッファ１０７Ａに格納する。例えば図７（４）のように、送受信バッファ１０７Ａは、ＳＱ６０４において送信するＡＣＫ信号に係るフレーム７０４を格納している。イーサネット（登録商標）コントローラ１０２は広域ネットワーク１２０を介してＰＯＰ３サーバ１２３にＡＣＫ信号を送信する。次に、ステップＳＴ５１４において、受信カウンタ１１９のカウントをクリアし、０にする。なお、本例では、ステップＳＴ５１０でＡＣＫ信号を送信する処理の実行および送信モードへの切り替えを行うため、その時点で受信カウンタ１１９をクリアするようにしてもよい。
【００５６】
受信カウンタ１１９のカウントをクリアすると、ステップＳＴ５０１に戻り、ＰＯＰ３クライアント処理部１１０は、送信に係るフレームがあるか否かを確認（判定）する。本例においては、ＳＱ６０５における「ＰＡＳＳ」コマンドを含むフレームを有しているので、判定は「Ｙ」となる。以降、ステップＳＴ５０２、ステップＳＴ５０３およびステップＳＴ５０４における処理手順は、「ＵＳＥＲ」コマンドの場合と同様である。図７（５）は、送受信バッファ１０７Ａにおける、ＳＱ６０５において送信する「ＰＡＳＳ」コマンドに係るフレーム７０５の状態を表している。
【００５７】
一方、本例では応答する必要がなかったが、例えば、ステップＳＴ５０７において、ＰＯＰ３クライアント処理部１１０が、第１受信フレームに対して確認応答が必要である（「Ｙ」）と判定すると、指示を送信する。ステップＳＴ５１１において、送受信モード切替手段１１７は指示に基づいて送信モードに切り替える。このとき、すでに第２受信フレームに係る信号を受信し、送受信バッファ１０７Ａにそのフレームが格納されていても、送信フレームを格納するために第２受信フレームは破棄する。破棄された受信フレームについては、ＰＯＰサーバ１２３からのそのフレームに係る信号が再送されるのを待つことになる。そして、ステップＳＴ５１２において、そのフレームに対する処理を実行する。その際、応答に係るフレームを作成して送受信バッファ１０７Ａに格納する。
【００５８】
そして、ステップＳＴ５１３において、イーサネット（登録商標）コントローラ１０２は広域ネットワーク１２０を介してＰＯＰ３サーバ１２３に確認に係るフレームを含む信号を送信する。次に、ステップＳＴ５１４において、受信カウンタ１１９のカウントをクリアし、０にする。
【００５９】
以上のように、実施の形態１の通信制御装置１０１においては、送信フレームと受信フレームとを一時的に格納する送受信バッファ１０７について、送受信モード切替手段１１７による送信モードと受信モードとの切り替えるようにしたので、記憶容量を少なくした送受信バッファ１０７についても、その限られた記憶領域を有効に利用することができる。そして、このとき、送受信バッファ１０７に格納することができる受信フレームの数と送信フレームの数とをそれぞれ設定できるようにしたので、例えば連続して送信された信号について受信の取りこぼしを抑えることができ、受信の取りこぼしを抑え、信号を再送する必要がなくなるため、メールサーバ１２１の負荷が減り、また広域ネットワーク１２０におけるトラフィックの増加を防ぐことができる。
【００６０】
また、特に送受信モード切替手段１１７Ａについて、格納できる受信フレームの最大数を２つとし、送信フレームの最大数を１つとするようにしたので、広域ネットワーク１２０において用いられている通信プロトコルであるＴＣＰ／ＩＰにおいて、サーバ側からの最も多い信号の連続パターンである、ＡＣＫ信号と他のデータを含む信号の連続する２つの信号を受信し、それらの信号に係るフレームを送受信バッファ１０７に格納することができる。そのため、受信に係る信号の取りこぼしを抑えることができる。また、送信フレームの数を１つと限定したことにより、受信側の記憶容量を考慮するだけで、送受信バッファ１０７の記憶領域を有効利用した制御を行うことができる。
【００６１】
また、データ境界記憶手段１１８を備え、送受信バッファ１０７に複数格納する受信フレームについて、例えば格納開始位置などを記憶しておくようにしたので、各受信フレームの記憶領域を固定する必要がなく、送受信バッファ１０７に隙間なく格納することができるため、送受信バッファ１０７の記憶領域を有効に利用することができる。
【００６２】
また、ＳＭＴＰクライアント処理部１０９を備え、設備機器１３０から遠隔監視サーバ１２４に向けたデータを電子メール本文部分に含め、電子メールとして送るようにしたので、簡易な通信手順で、かつ処理手順に係るプログラムのソフトウェアサイズを小さくした上で実現できる。そして、通信において最も汎用的な通信手段であるため、通信システムに組み入れやすく、通信制御装置１０１の導入を容易にすることができる。
【００６３】
また、ＰＯＰ３クライアント処理部１１０を備え、遠隔監視サーバ１２４から設備機器１３０に向けたデータを、そのデータが本文部分に含まれる電子メールとして受け取ることができるため、簡易な通信手順で、かつ処理手順に係るプログラムのソフトウェアサイズを小さくした上で実現できる。そして、通信において最も汎用的な通信手段であるため、通信システムに組み入れやすく、通信制御装置１０１の導入を容易にすることができる。
【００６４】
また、広域ネットワーク１２０側のインタフェース手段を、イーサネット（登録商標）を利用した通信を行うことができるイーサネット（登録商標）コントローラ１０２、イーサネット（登録商標）ドライバ１０４とするようにしたので、広く普及した環境で広域ネットワーク１２０との通信接続を行うことができる。
【００６５】
また、シリアルコントローラ１０５、シリアルドライバ１０６によるインタフェース手段を用いて、設備機器１３０とも通信接続を行うようにすることで、遠隔監視サーバ１２４などの広域ネットワーク１２０に接続された他の通信手段から、設備機器１３０に対して、指示、監視などのデータを含む信号の通信を行うことができる。
【００６６】
また、通信制御装置１０１は、シリアルインタフェースデータ作成手段１１１を備え、遠隔監視サーバ１２４による電子メールの本文部分に基づいて、設備機器１３０に向けたデータを作成するようにしたので、設備機器１３０に向けた制御コマンドを含む信号を送信することができ、例えば地理的に遠隔にある地域からの設備機器１３０の制御を電子メールにより行うことができる。
【００６７】
また、通信制御装置１０１において、シリアルインタフェースデータ作成手段１１１はＢａｓｅ６４デコード手段１１２を備え、テキスト形式のデータをバイナリ形式のデータにデコードするようにしたので、例えば、設備機器１３０が処理できるデータ形式がバイナリ形式のデータであったとしても、電子メールを利用した設備機器１３０の制御を行うことができる。
【００６８】
また、一方で、設備機器１３０が送信した信号に含まれるデータに基づいて、広域ネットワークインタフェースデータ作成手段１１３が遠隔監視サーバ１２４に送信するメールデータを作成するようにしたので、例えば、設備機器１３０の状態データや異常が発生したときのログデータを電子メールにより送信するなど、地理的に遠隔にある装置に対して、状況などを通知することができ、遠隔制御を可能にする。
【００６９】
また、通信制御装置１０１において、広域ネットワークインタフェースデータ作成手段１１３はＢａｓｅ６４エンコード手段１１４を備え、バイナリ形式のデータをテキスト形式のデータにエンコードするようにしたので、例えば、設備機器１３０が処理できるデータ形式がバイナリ形式のデータであったとしても、エンコードして電子メールを利用し、遠隔監視サーバ１２４との通信を行うことができる。これにより、設備機器１３０の制御を行うことができる。
【００７０】
実施の形態２．
図８は実施の形態２に係るバッファ制御手段１１５の動作を示すフローチャートを表す図である。次に実施の形態２におけるバッファ制御手段１１５による送受信バッファ１０７Ａの制御動作について説明する。ここで、本実施の形態においては、送受信バッファ１０７Ａには、送信するＡＣＫ信号に係るフレームを格納するためのＡＣＫ記憶領域を確保しておく。ＡＣＫ信号に係るフレームのデータ量は一定である（可変長ではない）ため、そのデータ量に応じた記憶領域を確保しておけばよい。ＡＣＫフレーム記憶領域を確保については、特に限定するものではないが、送受信バッファ１０７Ａとは物理的に別の記憶手段に記憶領域を確保するようにしてもよい。本実施の形態では送受信バッファ１０７Ａに確保するものとする。
【００７１】
図９は図８の動作を説明するための通信シーケンス例を表す図である。図９は、図２のステップＳＴ２０７、ＳＴ２０８における、通信制御装置１０１とＰＯＰ３サーバ１２３との間でのメールデータを含む信号などの通信をＴＣＰレベルの通信シーケンスとして表している。ここでも、本例における通信制御装置１０１の処理については、前述したように、主として送受信データ処理手段１０８のＰＯＰ３クライアント処理部１１０が行っている。
【００７２】
ＳＱ９０１のように、通信制御装置１０１は、「ＲＥＴＲ」コマンドを含む信号を広域ネットワーク１２０を介してＰＯＰ３サーバ１２３に送信する。
【００７３】
一方、ＳＱ９０２のように、ＰＯＰ３サーバ１２３は、受信した信号に対するＡＣＫ信号を広域ネットワーク１２０を介して通信制御装置１０１側に返す。そして、ＳＱ９０３のように、ＰＯＰ３サーバ１２３は、さらに＋ＯＫ信号を通信制御装置１０１側に返す。
【００７４】
そして、ＳＱ９０４のように、通信制御装置１０１は、受信した＋ＯＫ信号に対するＡＣＫ信号を、広域ネットワーク１２０を介してＰＯＰ３サーバ１２３に送信する。ＳＱ９０５のように、ＰＯＰ３サーバ１２３は、メールデータを含む信号を送信する。
【００７５】
一方、上述した図２のステップＳＴ２０８、ＳＴ２０９に示すように、シリアルインタフェースデータ作成手段１１１は、取得したメールデータに基づいて設備機器１３０へのデータを抽出処理する。このとき、メール本文部分のデータをＢａｓｅ６４デコード手段１１２がデコード処理してバイナリ形式のデータにする。また、シリアルコントローラ１０５は、シリアルインタフェースデータ作成手段１１１が抽出したデータを含む信号を設備機器１３０に送信する。
【００７６】
ＳＱ９０６のように、通信制御装置１０１は、受信したメールデータを含む信号に対するＡＣＫ信号を、広域ネットワーク１２０を介してＰＯＰ３サーバ１２３に送信する。ＳＱ９０７のように、ＰＯＰ３サーバ１２３は、受信したＡＣＫ信号に基づいて、さらに続きのメールデータ（以下、メールデータ（続き）と記す）を含む信号を送信する。通信制御装置１０１においては、メールデータ（続き）についても抽出処理などを行い、処理に基づく信号を設備機器１３０に送信する。
【００７７】
ＳＱ９０８のように、通信制御装置１０１は、受信したメールデータを含む信号に対するＡＣＫ信号を、広域ネットワーク１２０を介してＰＯＰ３サーバ１２３に送信する。
さらに、ＳＱ９０９のように、処理したメールデータをメールボックスから削除させるため、「ＤＥＬＥ」コマンドを含む信号を広域ネットワーク１２０を介してＰＯＰ３サーバ１２３に送信する。
【００７８】
まず、図９のＳＱ９０１からＳＱ９０４において送信される信号と図６のＳＱ６０１からＳＱ６０４において送信される信号とは、ＳＱ９０１、ＳＱ６０１のコマンドが異なるだけである。そのため、図８におけるステップＳＴ８０１からステップＳＴ８０５の処理は、基本的には図５におけるステップＳＴ５０１からステップＳＴ５０５の処理と同じとなるので説明を省略する。
【００７９】
ＳＱ９０４におけるＡＣＫ信号を送信した後、ステップＳＴ８０６において、ＰＯＰ３サーバ１２３からの信号の受信の有無を確認する。本例においては、ＰＯＰ３サーバ１２３からのメールデータを含む信号の受信を確認する。受信を確認すると、イーサネット（登録商標）コントローラ１０２は受信に係るフレームを送受信バッファ１０７Ａに格納してステップＳＴ８０７に進む。受信がないときはステップＳＴ８０１に戻る。このとき、受信カウンタ１１９はカウント値を１とする。
【００８０】
次に、ステップＳＴ８０７において、ＰＯＰ３クライアント処理部１１０は、送受信バッファ１０７Ａに格納した第１受信フレームに基づいて、応答が必要であるか否かを確認する。本例においては、ＳＱ９０５におけるメールデータを含む信号には応答する必要があるため、判定は「Ｙ」となる。
【００８１】
さらに、ステップＳＴ８１１において、応答に際して送信する信号がＡＣＫ信号であるかどうかを確認する。本例においては、メールデータを含む信号にはＡＣＫ信号による確認応答をする必要があるため、判定は「Ｙ」となる。ＰＯＰ３クライアント処理部１１０は、メールデータを含む信号を受信したことに対するＡＣＫ信号を送信するための処理を実行する。ここで、ＰＯＰ３クライアント処理部１１０が作成したＡＣＫ信号に係るフレームは、上述したように送受信バッファ１０７ＡのＡＣＫ記憶領域に格納する。
【００８２】
図１０は送受信バッファ１０７Ａに格納したフレームの状態を概念的に示した図である。例えば図１０（１）のように、ＳＱ９０２におけるメールデータに係るフレーム１００１と共に、ＡＣＫ記憶領域は、ＳＱ９０６において送信するＡＣＫ信号に係るフレーム１００２を格納する。イーサネット（登録商標）コントローラ１０２は広域ネットワーク１２０を介してＰＯＰ３サーバ１２３にＡＣＫ信号を送信する。
【００８３】
次に、ステップＳＴ８１３において、第１受信フレームに対する処理を実行する。本例では、上述したように、シリアルインタフェースデータ作成手段１１１などの処理により、取得したメールデータに基づく信号を設備機器１３０に送信する。
【００８４】
また、本例においては、ＳＱ９０７においてメールデータ（続き）を含む信号が送信される。ここでは、ステップＳＴ８１３の実行中にこの信号を受信したものとして説明する。イーサネット（登録商標）コントローラ１０２はメールデータ（続き）に係るフレームを送受信バッファ１０７Ａに格納する。このとき送受信バッファ１０７Ａでは、図１０（２）のように、メールデータに係るフレーム１００１およびメールデータ（続き）に係るフレーム１００３の２つの受信に係るフレームを格納している状態である。
【００８５】
次に、ステップＳＴ８０９において、ＰＯＰ３クライアント処理部１１０は、送受信バッファ１０７Ａ中に第２受信フレームがあるか否かを確認する。ここでは図１０（２）のようにメールデータ（続き）に係るフレーム１００３を格納しているので、判定は「Ｙ」となる。そして、ステップＳＴ８１０において、第２受信フレームに対する処理を実行する。ここでは、上述したステップＳＴ８１２と同様に、ＰＯＰ３クライアント処理部１１０がＡＣＫ信号を送信するための処理を実行すると共に、シリアルインタフェースデータ作成手段１１１などの処理により、取得したメールデータに基づく信号を設備機器１３０に送信する。このとき、ＡＣＫ記憶領域は、ＳＱ９０８において送信するＡＣＫ信号に係るフレーム１００４を格納する。イーサネット（登録商標）コントローラ１０２は広域ネットワーク１２０を介してＰＯＰ３サーバ１２３にＡＣＫ信号を送信する。次にステップＳＴ８１７において、受信カウンタ１１９のカウントをクリアし、０にする。
【００８６】
受信カウンタ１１９のカウントをクリアすると、ステップＳＴ８０１に戻り、ＰＯＰ３クライアント処理部１１０は、送信に係るフレームがあるか否かを確認（判定）する。本例においては、ＳＱ９０９における「ＤＥＬＥ」コマンドを含むフレームを有しているので、判定は「Ｙ」となる。以降のステップＳＴ８０２、ステップＳＴ８０３およびステップＳＴ５０４の処理手順は、「ＲＥＴＲ」コマンドの場合と同様である。図１０（３）は、送受信バッファ１０７Ａにおける、ＳＱ９０９において送信する「ＤＥＬＥ」コマンドに係るフレーム１００５の状態を表している。
【００８７】
一方、ステップＳＴ８１１において、応答に際して送信する信号がＡＣＫ信号であるかどうかを確認し、その判定が「Ｎ」であった場合、ステップＳＴ８１４に進む。ステップＳＴ８１４、ステップＳＴ８１５およびステップＳＴ８１６の処理動作は、それぞれ図５のステップＳＴ５１１、ステップＳＴ５１２およびステップＳＴ５１３の処理動作と同じであるため説明を省略する。
【００８８】
以上のように、実施の形態２の通信処理装置１０１によれば、送受信バッファ１０７Ａに、ＡＣＫ信号を送信するための専用のＡＣＫ記憶領域を設けるようにしたので、第１受信フレームに係る信号に対してＡＣＫ信号による確認応答をする必要がある場合でも、第２受信フレームを破棄することなく処理することができる。そのため、例えば第２受信フレームを含む信号を再送する必要がなくなり、メールサーバ１２１の負荷が減り、また広域ネットワーク１２０におけるトラフィックの増加を防ぐことができる。
【００８９】
実施の形態３．
図１１は本発明の実施の形態３に係る通信制御装置１０１に係る処理動作を示すフローチャートを表す図である。本実施の形態では、主として受信対象フレーム指定手段１１６およびフレーム種別判定手段１０３による送受信バッファ１０７Ａに格納するフレームの判断処理について説明する。ここでは、通信制御装置１０１がＤＨＣＰ（Dynamic Host Configuration Protocol）サーバ（図示せず）からＩＰアドレスを取得する際の手順を例に説明する。ＤＨＣＰサーバは、コンピュータなど（ここでは通信制御装置１０１）が広域ネットワーク１２０に接続して通信を行うために必要となるＩＰアドレスなどのデータを自動的に割り当てる処理を行うコンピュータである。そして、本実施の形態においては、ＤＨＣＰサーバとの間の通信に係る処理は送受信データ処理手段１０８が行うものとして説明する。
【００９０】
通常、様々な種類のフレーム（データ）を含む信号が広域ネットワーク１２０上を伝送している。例えば、通信先を問わないブロードキャストフレームに係る信号を受信した場合には、そのフレームバッファに一時的に格納する。しかし、電子メールを用いた通信を行う通信制御装置１０１においては、ブロードキャストフレームに基づいて遠隔監視に係る処理を行うことはない。そのため、ブロードキャストフレームのような必要のないフレームを送受信バッファ１０７Ａに格納することにより、他のフレームの取りこぼし、再送などを多くする可能性がある。そこで、本実施の形態においては、受信対象フレーム指定手段１１６により、受信を期待していないフレーム種別をフレーム種別判定手段１０３に指定しておく。そして、イーサネット（登録商標）コントローラ１０２において受信した信号のフレーム種別の判定をフレーム種別判定手段１０３が行い、受信を期待していない（通信制御装置１０１における処理に必要がない）フレームを送受信バッファ１０７Ａに格納しないようにしたものである。
【００９１】
図１１のステップＳＴ１１０１において、送受信データ処理手段１０８からの指示に基づいて、送受信モード切替手段１１７は送信モードに切り替える。次に、ステップＳＴ１１０２において、送受信データ処理手段１０８は、ＤＣＨＰサーバを探索するための「ＤＣＨＰＤＩＳＣＯＶＥＲ」コマンドを含むフレームを作成し、送受信バッファ１０７Ａに格納する。また、イーサネット（登録商標）コントローラ１０２は、送受信バッファ１０７Ａに格納しているフレームに基づいて信号を送信する。そして、イーサネット（登録商標）コントローラ１０２による信号送信が終了すると、ステップＳＴ１１０３において、送受信モード切替手段１１７は受信モードに切り替える。
【００９２】
また、ステップＳＴ１１０４において、受信対象フレーム指定手段１１６は、フレーム種別判定手段１０３に対してブロードキャストフレームについて受信許可を指定する。イーサネット（登録商標）コントローラ１０２内のフレーム種別判別手段１０３は、広域ネットワーク１２０を伝送する信号に含まれるフレーム（データ）が、ブロードキャストフレームであるものと判定しても送受信バッファ１０７Ａに格納する。
【００９３】
一方、ＤＨＣＰサーバは、候補となるＩＰアドレスのデータを付した「ＤＨＣＰＯＦＦＥＲ」コマンドを含む信号を送信する。ステップＳＴ１１０５において、イーサネット（登録商標）コントローラ１０２は、「ＤＨＣＰＯＦＦＥＲ」コマンドを含む信号を受信し、そのコマンドに係るフレームを送受信バッファ１０７Ａに格納する。送受信データ処理手段１０８は、送受信バッファ１０７Ａに格納したフレームに基づいて処理を実行する。ここでは、候補となるＩＰアドレスの取得を要求する「ＤＨＣＰＲＥＱＵＥＳＴ」コマンドを含むフレームを作成し、送受信バッファ１０７Ａに格納する。ステップＳＴ１１０６において、送受信データ処理手段１０８からの指示に基づいて、送受信モード切替手段１１７は送信モードに切り替える。そして、ステップＳＴ１１０７において、イーサネット（登録商標）コントローラ１０２は、「ＤＨＣＰＲＥＱＵＥＳＴ」コマンドを含む信号を広域ネットワーク１２０を介して送信する。その後、ステップＳＴ１１０８において、送受信モード切替手段１１７は受信モードに切り替える。
【００９４】
ＤＨＣＰサーバは、「ＤＨＣＰＲＥＱＵＥＳＴ」コマンドに対して正常応答を確認するＤＨＣＰＡＣＫを含む信号を送信する。ステップＳＴ１１０９において、ＤＨＣＰＡＣＫを含む信号を受信したイーサネット（登録商標）コントローラ１０２は、その信号に係るフレームを送受信バッファ１０７Ａに格納する。そして、ステップＳＴ１１１０において、受信対象フレーム指定手段１１６は、フレーム種別判定手段１０３に対してブロードキャストフレームについて受信禁止を指定する。
【００９５】
受信対象フレーム指定手段１１６がブロードキャスト受信禁止を指定すると、フレーム種別判別手段１０３は広域ネットワーク１２０から受信した信号に含まれるフレームを判定し、ブロードキャストフレームであった場合には、送受信バッファ１０７Ａに格納せず、例えば破棄する。
【００９６】
以上のように、実施の形態３の通信処理装置１０１において、受信対象フレーム指定手段１１６により、送受信バッファ１０７Ａに格納するフレーム種別をイーサネット（登録商標）コントローラ１０２が有するフレーム種別判別手段１０３に指定しておき、受信に係る信号に基づいて、フレーム種別判別手段１０３が、送受信バッファ１０７Ａに格納するかどうかを判定するようにしたので、通信処理装置１０１の処理に必要なフレームだけを送受信バッファ１０７Ａに格納し、受信を期待していないフレームは送受信バッファ１０７に格納しないようにすることができる。そのため、通信処理装置１０１の処理に必要のないフレームを格納せずにすみ、必要なフレームの取りこぼしを少なくすることができる。
【００９７】
例えば、ＤＨＣＰサーバからＩＰアドレスを取得するときは、ブロードキャストフレームに係る信号を受信し、処理を行う必要があるが、通信処理装置１０１の通常の処理においてＳＭＴＰサーバ１２２、ＰＯＰ３サーバ１２３と通信するときは、ブロードキャストフレームについて処理を行うことはない。そのため、ブロードキャストフレームを送受信バッファ１０７Ａに格納しないようにしておくことで、他の装置に対するブロードキャストフレームを格納することにより、通信制御装置１０１の処理を妨げてしまうことはない。
【００９８】
実施の形態４．
図１２はこの発明の実施の形態４による通信制御装置１０１Ａを中心とするシステムの構成を示すブロック図である。図１２に示す本発明の実施の形態４における通信制御装置１０１Ａと図１に示す本発明の実施の形態１における通信制御装置１０１とは基本的な構成は同様であるが、広域ネットワーク１２０側の接続インタフェース部分が異なる。図１２において、図１と同じ番号を付している手段などについては、上述した実施の形態１で説明したことと同様の動作などを行うため、ここでは説明を省略する。
【００９９】
図１２の通信制御装置１０１Ａにおいては、広域ネットワーク１２０側との接続インタフェースはＵＳＢ（Universal Serial Interface）規格によるものとする。図１２の通信制御装置１２０１は、広域ネットワーク１２０側において、接続したＵＳＢ機器１２０４との通信に係るデジタル信号と、通信制御装置１０１内の処理に係る電気信号との間の変換を行い、その電気信号に基づく処理動作を行うハードウェアであるＵＳＢホストコントローラ１２０２と、ＵＳＢホストコントローラ１２０２を制御するための例えばソフトウェア、そのソフトウェアなどのデータを記憶する記憶手段などからなるＵＳＢホストドライバ１２０３を備える。これらは広域ネットワーク１２０側のインタフェース手段となり、上述した接続線を接続できる端子など（図示せず）を有している。ここで、ＵＳＢホストドライバ１２０２には、接続されるＵＳＢ機器１２０４を制御するためのＵＳＢ機器用ドライバソフトウェアを含む。そのため、ＵＳＢホストドライバ１２０２には、ドライバソフトウェアを記憶するためのＲＡＭ、ＲＯＭなどの記憶手段を含めて構成されている。
【０１００】
ＵＳＢ機器１２０４は、通信制御装置１２０１の広域ネットワーク１２０側に接続される機器である。例えば、データ通信機能あるいはパケット通信機能付き携帯電話、無線ＬＡＮアダプタ、Ｂｌｕｅｔｏｏｔｈアダプタ、Ｚｉｇｂｅｅアダプタ、ＩｒＤＡ（Infrared Data Association）アダプタなどがＵＳＢ機器１２０４となる。基地局１２０５は、ＵＳＢ機器１２０４と広域ネットワーク１２０との間の通信接続を行うための装置である。他に無線ＬＡＮアクセスポイント、変換サーバ、変換機なども基地局となる。
【０１０１】
ここで、ＵＳＢホストドライバ１２０３は、ＵＳＢホストコントローラ１２０２に接続されるＵＳＢ機器１２０４に合わせたドライバソフトウェアに基づいて、ＵＳＢホストコントローラ１２０２に処理動作を行わせる必要がある。ＵＳＢ機器１２０４により必要とされるドライバソフトウェアが異なるが、想定される機器全てのドライバソフトウェアを記憶手段に記憶させておくのは、記憶手段の記憶容量を増やすことになる。そのため、ＵＳＢホストドライバ１２０３においては、接続するＵＳＢ機器１２０４に対応したドライバソフトウェアのみを記憶手段に記憶させておくものとする。
【０１０２】
図１２の通信制御装置１２０１については、図１の通信制御装置１０１と構成のみ異なる。そのため、設備機器１３０、メールサーバ１２１との間の通信に係る処理、データの変換処理などの動作については、上述した実施の形態で説明したことと同様の処理動作を行うため、説明を省略する。
【０１０３】
以上のように、実施の形態４の通信処理装置１２０１においては、広域ネットワーク１２０側のインタフェースＵＳＢとし、そのため、ＵＳＢホストコントローラ１２０２とＵＳＢホストドライバ１２０３とをインタフェース手段として設けるようにしたので、例えば、イーサネット（登録商標）による通信線が設けられていない環境の場所であっても、広域ネットワーク１２０に通信接続可能なＵＳＢ機器１２０４に接続することにより、通信制御装置１０１と広域ネットワーク１２０との間で通信を行うことができる。また、広域ネットワーク１２０側との接続インタフェースをＵＳＢとすることにより、実使用環境に応じた通信手段の選択が可能になり、通信制御装置１２０１の設置の自由度を向上させることができる。そして、通信制御装置１２０１のＵＳＢホストドライバ１２０３に記憶するドライバソフトウェアをＵＳＢ機器１２０４に対応するもののみにすることで、ＲＯＭ 、ＲＡＭなどの記憶手段の記憶容量の削減を図ることができる。
【産業上の利用可能性】
【０１０４】
本発明による通信制御装置の適用例として、ビル用設備機器の遠隔監視制御を実現するための通信アダプタや家電機器を遠隔監視制御するための通信アダプタが挙げられる。
【図面の簡単な説明】
【０１０５】
【図１】実施の形態１による通信制御装置１０１を中心とするシステム構成図である。
【図２】送受信データ処理手段１０８の動作を示すフローチャートを表す図である。
【図３】通信制御装置１０１とＳＭＴＰサーバ１２２との手順のシーケンス図である。
【図４】メールデータの内容例を示す図である。
【図５】バッファ制御手段１１５の動作を示すフローチャートを表す図である。
【図６】図５の動作を説明するための通信シーケンス例を表す図である。
【図７】送受信バッファ１０７Ａに格納されたフレーム状態を示した図である。
【図８】実施の形態２のバッファ制御手段１１５の動作フローチャートを表す図である。
【図９】図８の動作を説明するための通信シーケンス例を表す図である。
【図１０】送受信バッファ１０７Ａに格納されたフレーム状態を示した図である。
【図１１】実施の形態３に係る通信制御装置１０１のフローチャートを表す図である。
【図１２】実施の形態２による通信制御装置１０１を中心とするシステム構成図である。
【符号の説明】
【０１０６】
１０１  通信制御装置、１０２  イーサネット（登録商標）コントローラ、１０３  フレーム種別判定手段、１０４  イーサネット（登録商標）ドライバ、１０５  シリアルコントローラ、１０６  シリアルドライバ、１０７Ａ，１０７Ｂ  送受信バッファ、１０８  送受信データ処理手段、１０９  ＳＭＴＰクライアント処理部、１１０  ＰＯＰ３クライアント処理部、１１１  シリアルインタフェースデータ作成手段、１１２  Ｂａｓｅ６４デコード手段、１１３  広域ネットワークインタフェースデータ作成手段、１１４  Ｂａｓｅ６４エンコード手段、１１５  バッファ制御手段、１１６  受信対象フレーム指定手段、１１７  送受信モード切替手段、１１８  データ境界記憶手段、１１９  受信カウンタ、１２０  広域ネットワーク、１２１  メールサーバ、１２２  ＳＭＴＰサーバ、１２３  ＰＯＰ３サーバ、１２４  遠隔監視サーバ、１３０  設備機器、１２０１  通信制御装置、１２０２  ＵＳＢホストコントローラ、１２０３  ＵＳＢホストドライバ、１２０４  ＵＳＢ機器、１２０５  基地局。
【図１】
0004804425.tif 000002
【図２】
0004804425.tif 000003
【図３】
0004804425.tif 000004
【図４】
0004804425.tif 000005
【図５】
0004804425.tif 000006
【図６】
0004804425.tif 000007
【図７】
0004804425.tif 000008
【図８】
0004804425.tif 000009
【図９】
0004804425.tif 000010
【図１０】
0004804425.tif 000011
【図１１】
0004804425.tif 000012
【図１２】
0004804425.tif 000013