(57)【特許請求の範囲】
【請求項１】
他の通信装置と通信媒体を介してデータを送受信する通信装置であって、
送信すべき送信データの送信先と、前記送信データに対する応答の要否とを表すデータ種別情報を含む送信要求データを作成する送信要求データ作成手段と、
前記通信媒体の種別を表す通信媒体種別情報を記憶する通信媒体種別情報記憶手段と、
前記送信要求データごとに送信状態を対応付けて記憶する通信データテーブルと、
前記送信要求データ作成手段によって作成された前記送信要求データに含まれる前記データ種別情報と、前記種別情報記憶手段に記憶されている前記通信媒体種別情報と、前記通信データテーブルに記憶されている前記送信状態とに基づいて前記送信データを送信するタイミングを調停する通信調停処理手段と、
前記通信調停処理手段によって調停されるタイミングに応じて前記送信データを送信するデータ送信手段とを備えることを特徴とする通信装置。
【請求項２】
前記送信要求データは、送信すべき送信データが、特定の送信先を個別に指定し、送信データの送信先による応答を要求する個別・応答要データ、特定の送信先を個別に指定し、送信データの送信先による応答を要求しない個別・応答不要データ、送信先を特定せずに同報で送信データを送信し、送信データの送信先による応答を要求する同報・応答要データ、又は送信先を特定せずに同報で送信データを送信し、送信データの送信先による応答を要求しない同報・応答不要データであることを示すデータ種別情報を含み、
前記通信調停処理手段は、前記送信要求データ作成手段によって作成された前記送信要求データに含まれる前記データ種別情報と、前記通信媒体種別情報記憶手段に記憶されている前記通信媒体種別情報と、前記通信データテーブルに記憶されている前記送信状態とに基づいて前記送信データを送信するタイミングを調停することを特徴とする請求項１記載の通信装置。
【請求項３】
前記通信調停処理手段は、前記送信要求データが入力されると、前記通信データテーブルに当該送信要求データに含まれるデータ種別情報を記憶すると共に、送信状態を送信待ち状態に設定し、記憶されたデータ種別情報が個別・応答要データである場合、前記通信データテーブルが記憶する他の前記送信要求データの送信状態を確認し、全ての他の前記送信要求データの送信状態が応答待ち状態でない場合、当該送信要求データを前記データ送信手段へ出力し、前記通信データテーブルに記憶されている当該送信要求データの送信状態を応答待ち状態へ変更することを特徴とする請求項１記載の通信装置。
【請求項４】
前記データ送信手段は、送信データを送信する前に前記通信媒体の通信経路上に他のデータが存在しないことを確認し、通信経路上に他のデータが存在しない場合、所定時間後に再度通信経路上に他のデータが存在しないことを確認した後、送信データを送信する機能を有しており、
前記通信調停処理手段は、前記送信要求データが入力されると、前記通信データテーブルに当該送信要求データに含まれるデータ種別情報を記憶すると共に、送信状態を送信待ち状態に設定し、記憶されたデータ種別情報が個別・応答要データである場合、前記通信データテーブルが記憶する他の前記送信要求データの送信状態を確認し、全ての他の前記送信要求データの送信状態が応答待ち状態でない場合、又は他の前記送信要求データの送信状態が応答待ち状態のものはあるが、前記応答待ち状態である送信要求データの送信先が、当該送信要求データの送信先と全て異なっている場合、当該送信要求データを前記データ送信手段へ出力し、前記通信データテーブルに記憶されている当該個送信要求データの送信状態を応答待ち状態へ変更することを特徴とする請求項１記載の通信装置。
【請求項５】
前記通信調停処理手段は、前記送信要求データが入力されると、前記通信データテーブルに当該送信要求データに含まれるデータ種別情報を記憶すると共に、送信状態を送信待ち状態に設定し、記憶されたデータ種別情報が個別・応答不要データである場合、前記通信データテーブルが記憶する他の前記送信要求データの送信状態を確認し、全ての他の前記送信要求データの送信状態が応答待ち状態でない場合、当該送信要求データを前記データ送信手段へ出力し、前記通信データテーブルに記憶されている当該送信要求データの送信状態を送信済み状態へ変更することを特徴とする請求項１記載の通信装置。
【請求項６】
前記データ送信手段は、送信データを送信する前に前記通信媒体の通信経路上に他のデータが存在しないことを確認し、通信経路上に他のデータが存在しない場合、所定時間後に再度通信経路上に他のデータが存在しないことを確認した後、送信データを送信する機能を有しており、
前記通信調停処理手段は、前記送信要求データが入力されると、前記通信データテーブルに当該送信要求データに含まれるデータ種別情報を記憶すると共に、送信状態を送信待ち状態に設定し、記憶されたデータ種別情報が個別・応答不要データである場合、前記通信データテーブルが記憶する他の前記送信要求データの送信状態を確認し、全ての他の前記送信要求データの送信状態が応答待ち状態でない場合、又は他の前記送信要求データの送信状態が応答待ち状態のものはあるが、前記応答待ち状態である送信要求データの送信先が、当該送信要求データの送信先と全て異なっている場合、当該送信要求データを前記データ送信手段へ出力し、前記通信データテーブルに記憶されている当該送信要求データの送信状態を送信済み状態へ変更することを特徴とする請求項１記載の通信装置。
【請求項７】
前記通信調停処理手段は、前記送信要求データが入力されると、前記通信データテーブルに当該送信要求データに含まれるデータ種別情報を記憶すると共に、送信状態を送信待ち状態に設定し、記憶されたデータ種別情報が同報・応答要データである場合、前記通信データテーブルが記憶する他の前記送信要求データの送信状態を確認し、全ての他の前記送信要求データの送信状態が応答待ち状態でない場合、当該送信要求データを前記データ送信手段へ出力し、前記通信データテーブルに記憶されている当該送信要求データの送信状態を応答待ち状態へ変更することを特徴とする請求項１記載の通信装置。
【請求項８】
前記データ送信手段は、送信データを送信する前に前記通信媒体の通信経路上に他のデータが存在しないことを確認し、通信経路上に他のデータが存在しない場合、所定時間後に再度通信経路上に他のデータが存在しないことを確認した後、送信データを送信する機能を有しており、
前記通信調停処理手段は、前記送信要求データが入力されると、前記通信データテーブルに当該送信要求データに含まれるデータ種別情報を記憶すると共に、送信状態を送信待ち状態に設定し、記憶されたデータ種別情報が同報・応答要データである場合、前記通信データテーブルが記憶する他の前記送信要求データの送信状態を確認し、全ての他の前記送信要求データの送信状態が応答待ち状態でない場合、又は他の前記送信要求データの送信状態が応答待ち状態のものはあるが、前記応答待ち状態である送信要求データの種類が全て同報である場合、当該送信要求データを前記データ送信手段へ出力し、前記通信データテーブルに記憶されている当該送信要求データの送信状態を応答待ち状態へ変更することを特徴とする請求項１記載の通信装置。
【請求項９】
前記通信調停処理手段は、前記送信要求データが入力されると、前記通信データテーブルに当該送信要求データに含まれるデータ種別情報を記憶すると共に、送信状態を送信待ち状態に設定し、記憶されたデータ種別情報が同報・応答不要データである場合、前記通信データテーブルが記憶する他の前記送信要求データの送信状態を確認し、全ての他の前記送信要求データの送信状態が応答待ち状態でない場合、当該送信要求データを前記データ送信手段へ出力し、前記通信データテーブルに記憶されている当該送信要求データの送信状態を送信済み状態へ変更することを特徴とする請求項１記載の通信装置。
【請求項１０】
前記データ送信手段は、送信データを送信する前に前記通信媒体の通信経路上に他のデータが存在しないことを確認し、通信経路上に他のデータが存在しない場合、所定時間後に再度通信経路上に他のデータが存在しないことを確認した後、送信データを送信する機能を有しており、
前記通信調停処理手段は、前記送信要求データが入力されると、前記通信データテーブルに当該送信要求データに含まれるデータ種別情報を記憶すると共に、送信状態を送信待ち状態に設定し、記憶されたデータ種別情報が同報・応答不要データである場合、前記通信データテーブルが記憶する他の前記送信要求データの送信状態を確認し、全ての他の前記送信要求データの送信状態が応答待ち状態でない場合、又は他の前記送信要求データの送信状態が応答待ち状態のものはあるが、前記応答待ち状態である送信要求データの種類が全て同報である場合、当該送信要求データを前記データ送信手段へ出力し、前記通信データテーブルに記憶されている当該送信要求データの送信状態を送信済み状態へ変更することを特徴とする請求項１記載の通信装置。
【請求項１１】
前記通信調停処理手段は、前記送信要求データが入力されると、前記通信データテーブルに当該送信要求データに含まれるデータ種別情報を記憶すると共に、送信状態を送信待ち状態に設定し、記憶されたデータ種別情報が個別・応答要データ又は同報・応答要データである場合、前記データ送信手段によって前記送信要求データが送信された後、送信された送信要求データに対応する送信状態を応答待ち状態に変更し、送信状態が応答待ち状態に変更されてから所定時間経過しても応答がない場合、送信状態をタイムアウト状態に変更することを特徴とする請求項１記載の通信装置。
【請求項１２】
前記通信調停処理手段は、送信状態が応答待ち状態からタイムアウト状態に遷移するまでの所定時間を、前記通信媒体種別情報記憶手段に記憶されている通信媒体種別情報に応じて設定することを特徴とする請求項１１記載の通信装置。
【請求項１３】
前記通信調停処理手段は、送信状態が応答待ち状態からタイムアウト状態に遷移するまでの所定時間を、前記送信要求データのデータ長に応じて設定することを特徴とする請求項１１記載の通信装置。
【請求項１４】
前記通信調停処理手段は、送信状態が応答待ち状態からタイムアウト状態に遷移するまでの所定時間を、前記送信データに対する応答データのデータ長に応じて設定することを特徴とする請求項１１記載の通信装置。
【請求項１５】
前記送信要求データは、それぞれ規格の異なる複数の前記通信媒体の中から、使用する通信媒体を特定するための通信媒体特定情報を含み、
前記通信調停処理手段は、前記送信要求データに含まれる前記通信媒体特定情報に基づいて送信データを送信する通信媒体を特定し、
前記データ送信手段は、前記通信調停処理手段によって特定された通信媒体を使用して前記送信データを送信することを特徴とする請求項１記載の通信装置。
【請求項１６】
他の通信装置と通信媒体を介してデータを送受信するための通信方法であって、
送信すべき送信データの送信先と、前記送信データに対する応答の要否とを表すデータ種別情報を含む送信要求データを作成する送信要求データ作成ステップと、
前記通信媒体の種別を表す通信媒体種別情報を記憶する通信媒体種別情報記憶ステップと、
記送信要求データごとに送信状態を対応付けて通信データテーブルに記憶する通信データテーブル記憶ステップと、
前記送信要求データ作成ステップにおいて作成された前記送信要求データに含まれる前記データ種別情報と、前記通信媒体種別情報記憶ステップにおいて記憶された前記通信媒体種別情報と、前記通信データテーブルに記憶されている前記送信状態とに基づいて前記送信データを送信するタイミングを調停する通信調停処理ステップと、
前記通信調停処理ステップにおいて調停されるタイミングに応じて前記送信データを送信するデータ送信処理ステップとを含むことを特徴とする通信方法。
【請求項１７】
他の通信装置と通信媒体を介してデータを送受信するための通信プログラムであって、
送信すべき送信データの送信先と、前記送信データに対する応答の要否とを表すデータ種別情報を含む送信要求データを作成する送信要求データ作成手段と、
前記通信媒体の種別を表す通信媒体種別情報を記憶する通信媒体種別情報記憶手段と、
前記送信要求データごとに送信状態を対応付けて記憶する通信データテーブルと、
前記送信要求データ作成手段によって作成された前記送信要求データに含まれる前記データ種別情報と、前記通信媒体種別情報記憶手段に記憶されている前記通信媒体種別情報と、前記通信データテーブルに記憶されている前記送信状態とに基づいて前記送信データを送信するタイミングを調停する通信調停処理手段と、
前記通信調停処理手段によって調停されるタイミングに応じて前記送信データを送信するデータ送信手段としてコンピュータを機能させることを特徴とする通信プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信機能を持つ通信装置が有線もしくは無線の通信回線に接続しており、同様に通信回線に接続しているその他の通信装置と通信を行う際、シーケンス管理を行うことによって１：１の通信を確立する通信装置、通信方法及び通信プログラムに関するものである。
【背景技術】
【０００２】
従来、負荷レベルに応じて物理回線上へのデータ送信間隔を調節し、交信処理を円滑に継続できるようにする通信管理装置が知られている（例えば、特許文献１参照）。この通信管理装置では、送信の一斉停止あるいは一斉再開のような急激な制御を行うことなく、負荷に応じた滑らかな制御を行うことによりシステムおよび回線バッフアに対する負荷を軽減している。
【特許文献１】特開平０６−６２０８１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
ここで、通信速度が低速であり、かつ、通信信頼性が低い通信媒体を使用した場合であっても、リアルタイム性を保障するとともに、システムとして通信信頼性を確保する必要がある。しかしながら、上述の通信管理装置がネットワークを構築するために接続される通信媒体の通信信頼性が、必ずしも確保できていない場合があった。
【０００４】
本発明は、上記の問題を解決するためになされたもので、通信の信頼性を向上させることができる通信装置、通信方法及び通信プログラムを提供することを目的とするものである。
【課題を解決するための手段】
【０００５】
本発明に係る通信装置は、他の通信装置と通信媒体を介してデータを送受信する通信装置であって、送信すべき送信データの送信先と、前記送信データに対する応答の要否とを表すデータ種別情報を含む送信要求データを作成する送信要求データ作成手段と、前記通信媒体の種別を表す通信媒体種別情報を記憶する通信媒体種別情報記憶手段と、前記送信要求データ作成手段によって作成された前記送信要求データに含まれる前記データ種別情報と、前記種別情報記憶手段に記憶されている前記通信媒体種別情報とに基づいて前記送信データを送信するタイミングを調停する通信調停処理手段と、前記通信調停処理手段によって調停されるタイミングに応じて前記送信データを送信するデータ送信手段とを備える。
【０００６】
この構成によれば、送信すべき送信データの送信先と、送信データに対する応答の要否とを表すデータ種別情報を含む送信要求データが作成される。そして、送信要求データに含まれるデータ種別情報と、種別情報記憶手段に記憶されている通信媒体の種別を表す通信媒体種別情報とに基づいて送信データを送信するタイミングが調停され、調停されるタイミングに応じて送信データが送信される。
【０００７】
したがって、送信データの送信先と、送信データに対する応答の要否と、通信媒体の種別とに基づいて送信データを送信するタイミングが調停されるので、ネットワークに接続される複数の通信装置の通信を仮想的に１：１にし、通信媒体上の他のデータに衝突することによって送信データが消失することが少なくなり、通信の信頼性を向上させることができる。
【０００８】
また、上記の通信装置において、前記送信要求データは、送信すべき送信データが、特定の送信先を個別に指定し、送信データの送信先による応答を要求する個別・応答要データ、特定の送信先を個別に指定し、送信データの送信先による応答を要求しない個別・応答不要データ、送信先を特定せずに同報で送信データを送信し、送信データの送信先による応答を要求する同報・応答要データ、又は送信先を特定せずに同報で送信データを送信し、送信データの送信先による応答を要求しない同報・応答不要データであることを示すデータ種別情報を含み、前記通信調停処理手段は、前記送信要求データ作成手段によって作成された前記送信要求データに含まれる前記データ種別情報と、前記通信媒体種別情報記憶手段に記憶されている前記通信媒体種別情報とに基づいて前記送信データを送信するタイミングを調停することが好ましい。
【０００９】
この構成によれば、送信要求データには、送信すべき送信データが、特定の送信先を個別に指定し、送信データの送信先による応答を要求する個別・応答要データ、特定の送信先を個別に指定し、送信データの送信先による応答を要求しない個別・応答不要データ、送信先を特定せずに同報で送信データを送信し、送信データの送信先による応答を要求する同報・応答要データ、又は送信先を特定せずに同報で送信データを送信し、送信データの送信先による応答を要求しない同報・応答不要データであることを示すデータ種別情報が含まれる。そして、送信要求データに含まれるデータ種別情報と、通信媒体種別情報記憶手段に記憶されている通信媒体種別情報とに基づいて送信データを送信するタイミングが調停される。
【００１０】
したがって、データ種別情報が、個別・応答要データ、個別・応答不要データ、同報・応答要データ及び同報・応答不要データのうちのいずれであるかを確認することで、容易にデータの送信先及び応答の要否を特定することができる。
【００１１】
また、上記の通信装置において、前記送信要求データを管理するための通信データテーブルをさらに備え、前記通信データテーブルは、前記送信要求データごとに送信状態を対応付けて記憶しており、前記通信調停処理手段は、前記送信要求データ作成手段によって作成された前記送信要求データに含まれる前記データ種別情報と、前記通信媒体種別情報記憶手段に記憶されている前記通信媒体種別情報と、前記通信データテーブルに記憶されている前記送信状態とに基づいて前記送信データを送信するタイミングを調停することが好ましい。
【００１２】
この構成によれば、送信要求データを管理するための通信データテーブルは、送信要求データごとに送信状態を対応付けて記憶している。そして、送信要求データに含まれるデータ種別情報と、通信媒体種別情報記憶手段に記憶されている通信媒体種別情報と、通信データテーブルに記憶されている送信状態とに基づいて送信データを送信するタイミングが調停される。
【００１３】
したがって、データ種別情報及び通信媒体種別情報だけでなく、送信要求データの送信状態も考慮して送信データを送信するタイミングが調停されるので、さらに通信の信頼性を向上させることができる。
【００１４】
また、上記の通信装置において、前記通信調停処理手段は、前記送信要求データが入力されると、前記通信データテーブルに当該送信要求データに含まれるデータ種別情報を記憶すると共に、送信状態を送信待ち状態に設定し、記憶されたデータ種別情報が個別・応答要データである場合、前記通信データテーブルが記憶する他の前記送信要求データの送信状態を確認し、全ての他の前記送信要求データの送信状態が応答待ち状態でない場合、当該送信要求データを前記データ送信手段へ出力し、前記通信データテーブルに記憶されている当該送信要求データの送信状態を応答待ち状態へ変更することが好ましい。
【００１５】
この構成によれば、送信要求データが入力されると、通信データテーブルに当該送信要求データに含まれるデータ種別情報が記憶されると共に、送信状態が送信待ち状態に設定される。そして、記憶されたデータ種別情報が個別・応答要データである場合、通信データテーブルが記憶する他の送信要求データの送信状態が確認される。ここで、全ての他の送信要求データの送信状態が応答待ち状態でない場合、当該送信要求データがデータ送信手段へ出力され、通信データテーブルに記憶されている当該送信要求データの送信状態が応答待ち状態へ変更される。
【００１６】
したがって、データ種別情報が個別・応答要データである場合、全ての他の送信要求データの送信状態が応答待ち状態でないとき、当該送信要求データが送信されることとなるので、通信媒体上に他の送信データに対する応答データが存在しないことを確認することができ、データの衝突を防止することができる。
【００１７】
また、上記の通信装置において、前記データ送信手段は、送信データを送信する前に前記通信媒体の通信経路上に他のデータが存在しないことを確認し、通信経路上に他のデータが存在しない場合、所定時間後に再度通信経路上に他のデータが存在しないことを確認した後、送信データを送信する機能を有しており、前記通信調停処理手段は、前記送信要求データが入力されると、前記通信データテーブルに当該送信要求データに含まれるデータ種別情報を記憶すると共に、送信状態を送信待ち状態に設定し、記憶されたデータ種別情報が個別・応答要データである場合、前記通信データテーブルが記憶する他の前記送信要求データの送信状態を確認し、全ての他の前記送信要求データの送信状態が応答待ち状態でない場合、又は他の前記送信要求データの送信状態が応答待ち状態のものはあるが、前記応答待ち状態である送信要求データの送信先が、当該送信要求データの送信先と全て異なっている場合、当該送信要求データを前記データ送信手段へ出力し、前記通信データテーブルに記憶されている当該個送信要求データの送信状態を応答待ち状態へ変更することが好ましい。
【００１８】
この構成によれば、データ送信手段は、送信データを送信する前に通信媒体の通信経路上に他のデータが存在しないことを確認し、通信経路上に他のデータが存在しない場合、所定時間後に再度通信経路上に他のデータが存在しないことを確認した後、送信データを送信する機能を有している。この場合、送信要求データが入力されると、通信データテーブルに当該送信要求データに含まれるデータ種別情報が記憶されると共に、送信状態が送信待ち状態に設定される。そして、記憶されたデータ種別情報が個別・応答要データである場合、全ての他の送信要求データの送信状態が応答待ち状態でないとき、又は他の送信要求データの送信状態が応答待ち状態のものはあるが、応答待ち状態である送信要求データの送信先が、当該送信要求データの送信先と全て異なっているとき、当該送信要求データがデータ送信手段へ出力され、通信データテーブルに記憶されている当該個送信要求データの送信状態が応答待ち状態へ変更される。
【００１９】
したがって、データ送信手段がデータの衝突を回避する機能を有しており、データ種別情報が個別・応答要データである場合、送信データの送信先と応答データの送信元とが異なっているときにデータが送信されるので、データの衝突を防止することができる。
【００２０】
また、上記の通信装置において、前記通信調停処理手段は、前記送信要求データが入力されると、前記通信データテーブルに当該送信要求データに含まれるデータ種別情報を記憶すると共に、送信状態を送信待ち状態に設定し、記憶されたデータ種別情報が個別・応答不要データである場合、前記通信データテーブルが記憶する他の前記送信要求データの送信状態を確認し、全ての他の前記送信要求データの送信状態が応答待ち状態でない場合、当該送信要求データを前記データ送信手段へ出力し、前記通信データテーブルに記憶されている当該送信要求データの送信状態を送信済み状態へ変更することが好ましい。
【００２１】
この構成によれば、送信要求データが入力されると、通信データテーブルに当該送信要求データに含まれるデータ種別情報が記憶されると共に、送信状態が送信待ち状態に設定される。そして、記憶されたデータ種別情報が個別・応答不要データである場合、全ての他の送信要求データの送信状態が応答待ち状態でないとき、当該送信要求データがデータ送信手段へ出力され、通信データテーブルに記憶されている当該送信要求データの送信状態が送信済み状態へ変更される。
【００２２】
したがって、データ種別情報が個別・応答不要データである場合、全ての他の送信要求データの送信状態が応答待ち状態でないとき、当該送信要求データが送信されることとなるので、通信媒体上に他の送信データに対する応答データが存在しないことを確認することができ、データの衝突を防止することができる。
【００２３】
また、上記の通信装置において、前記データ送信手段は、送信データを送信する前に前記通信媒体の通信経路上に他のデータが存在しないことを確認し、通信経路上に他のデータが存在しない場合、所定時間後に再度通信経路上に他のデータが存在しないことを確認した後、送信データを送信する機能を有しており、前記通信調停処理手段は、前記送信要求データが入力されると、前記通信データテーブルに当該送信要求データに含まれるデータ種別情報を記憶すると共に、送信状態を送信待ち状態に設定し、記憶されたデータ種別情報が個別・応答不要データである場合、前記通信データテーブルが記憶する他の前記送信要求データの送信状態を確認し、全ての他の前記送信要求データの送信状態が応答待ち状態でない場合、又は他の前記送信要求データの送信状態が応答待ち状態のものはあるが、前記応答待ち状態である送信要求データの送信先が、当該送信要求データの送信先と全て異なっている場合、当該送信要求データを前記データ送信手段へ出力し、前記通信データテーブルに記憶されている当該送信要求データの送信状態を送信済み状態へ変更することが好ましい。
【００２４】
この構成によれば、データ送信手段は、送信データを送信する前に通信媒体の通信経路上に他のデータが存在しないことを確認し、通信経路上に他のデータが存在しない場合、所定時間後に再度通信経路上に他のデータが存在しないことを確認した後、送信データを送信する機能を有している。この場合、送信要求データが入力されると、通信データテーブルに当該送信要求データに含まれるデータ種別情報が記憶されると共に、送信状態が送信待ち状態に設定される。そして、記憶されたデータ種別情報が個別・応答不要データである場合、全ての他の送信要求データの送信状態が応答待ち状態でないとき、又は他の送信要求データの送信状態が応答待ち状態のものはあるが、応答待ち状態である送信要求データの送信先が、当該送信要求データの送信先と全て異なっているとき、当該送信要求データがデータ送信手段へ出力され、通信データテーブルに記憶されている当該送信要求データの送信状態が送信済み状態へ変更される。
【００２５】
したがって、データ送信手段がデータの衝突を回避する機能を有しており、データ種別情報が個別・応答不要データである場合、送信データの送信先と応答データの送信元とが異なるときにデータが送信され、データの衝突を防止することができる。
【００２６】
また、上記の通信装置において、前記通信調停処理手段は、前記送信要求データが入力されると、前記通信データテーブルに当該送信要求データに含まれるデータ種別情報を記憶すると共に、送信状態を送信待ち状態に設定し、記憶されたデータ種別情報が同報・応答要データである場合、前記通信データテーブルが記憶する他の前記送信要求データの送信状態を確認し、全ての他の前記送信要求データの送信状態が応答待ち状態でない場合、当該送信要求データを前記データ送信手段へ出力し、前記通信データテーブルに記憶されている当該送信要求データの送信状態を応答待ち状態へ変更することが好ましい。
【００２７】
この構成によれば、送信要求データが入力されると、通信データテーブルに当該送信要求データに含まれるデータ種別情報が記憶されると共に、送信状態が送信待ち状態に設定される。そして、記憶されたデータ種別情報が同報・応答要データである場合、全ての他の送信要求データの送信状態が応答待ち状態でない場合、当該送信要求データがデータ送信手段へ出力され、通信データテーブルに記憶されている当該送信要求データの送信状態が応答待ち状態へ変更される。
【００２８】
したがって、データ種別情報が同報・応答要データである場合、全ての他の送信要求データの送信状態が応答待ち状態でないとき、当該送信要求データが送信されることとなるので、通信媒体上に他の送信データに対する応答データが存在しないことを確認することができ、データの衝突を防止することができる。
【００２９】
また、上記の通信装置において、前記データ送信手段は、送信データを送信する前に前記通信媒体の通信経路上に他のデータが存在しないことを確認し、通信経路上に他のデータが存在しない場合、所定時間後に再度通信経路上に他のデータが存在しないことを確認した後、送信データを送信する機能を有しており、前記通信調停処理手段は、前記送信要求データが入力されると、前記通信データテーブルに当該送信要求データに含まれるデータ種別情報を記憶すると共に、送信状態を送信待ち状態に設定し、記憶されたデータ種別情報が同報・応答要データである場合、前記通信データテーブルが記憶する他の前記送信要求データの送信状態を確認し、全ての他の前記送信要求データの送信状態が応答待ち状態でない場合、又は他の前記送信要求データの送信状態が応答待ち状態のものはあるが、前記応答待ち状態である送信要求データの種類が全て同報である場合、当該送信要求データを前記データ送信手段へ出力し、前記通信データテーブルに記憶されている当該送信要求データの送信状態を応答待ち状態へ変更することが好ましい。
【００３０】
この構成によれば、データ送信手段は、送信データを送信する前に通信媒体の通信経路上に他のデータが存在しないことを確認し、通信経路上に他のデータが存在しない場合、所定時間後に再度通信経路上に他のデータが存在しないことを確認した後、送信データを送信する機能を有している。この場合、送信要求データが入力されると、通信データテーブルに当該送信要求データに含まれるデータ種別情報が記憶されると共に、送信状態が送信待ち状態に設定される。そして、記憶されたデータ種別情報が同報・応答要データである場合、通信データテーブルが記憶する他の送信要求データの送信状態が確認される。ここで、全ての他の送信要求データの送信状態が応答待ち状態でない場合、又は他の送信要求データの送信状態が応答待ち状態のものはあるが、応答待ち状態である送信要求データの種類が全て同報である場合、当該送信要求データがデータ送信手段へ出力され、通信データテーブルに記憶されている当該送信要求データの送信状態が応答待ち状態へ変更される。
【００３１】
同報送信の場合、不特定の他の通信装置へ送信データを送信しているため、必ずしも応答データが返信されるとは限らず、既に全ての他の通信装置から応答データが返信されている可能性がある。そのため、同報送信の場合、応答データの受信を待たずに送信データを送信したとしても、送信データと応答データとが衝突する可能性は低い。したがって、データ送信手段がデータの衝突を回避する機能を有しており、データ種別情報が同報・応答要データである場合、応答待ち状態である送信要求データの種類が、全て同報であるときにデータが送信され、データの衝突を防止することができる。
【００３２】
また、上記の通信装置において、前記通信調停処理手段は、前記送信要求データが入力されると、前記通信データテーブルに当該送信要求データに含まれるデータ種別情報を記憶すると共に、送信状態を送信待ち状態に設定し、記憶されたデータ種別情報が同報・応答不要データである場合、前記通信データテーブルが記憶する他の前記送信要求データの送信状態を確認し、全ての他の前記送信要求データの送信状態が応答待ち状態でない場合、当該送信要求データを前記データ送信手段へ出力し、前記通信データテーブルに記憶されている当該送信要求データの送信状態を送信済み状態へ変更することが好ましい。
【００３３】
この構成によれば、送信要求データが入力されると、通信データテーブルに当該送信要求データに含まれるデータ種別情報が記憶されると共に、送信状態が送信待ち状態に設定される。そして、記憶されたデータ種別情報が同報・応答不要データである場合、全ての他の送信要求データの送信状態が応答待ち状態でない場合、当該送信要求データがデータ送信手段へ出力され、通信データテーブルに記憶されている当該送信要求データの送信状態が送信済み状態へ変更される。
【００３４】
したがって、データ種別情報が同報・応答不要データである場合、全ての他の送信要求データの送信状態が応答待ち状態でないとき、当該送信要求データが送信されることとなるので、通信媒体上に他の送信データに対する応答データが存在しないことを確認することができ、データの衝突を防止することができる。
【００３５】
また、上記の通信装置において、前記データ送信手段は、送信データを送信する前に前記通信媒体の通信経路上に他のデータが存在しないことを確認し、通信経路上に他のデータが存在しない場合、所定時間後に再度通信経路上に他のデータが存在しないことを確認した後、送信データを送信する機能を有しており、前記通信調停処理手段は、前記送信要求データが入力されると、前記通信データテーブルに当該送信要求データに含まれるデータ種別情報を記憶すると共に、送信状態を送信待ち状態に設定し、記憶されたデータ種別情報が同報・応答不要データである場合、前記通信データテーブルが記憶する他の前記送信要求データの送信状態を確認し、全ての他の前記送信要求データの送信状態が応答待ち状態でない場合、又は他の前記送信要求データの送信状態が応答待ち状態のものはあるが、前記応答待ち状態である送信要求データの種類が全て同報である場合、当該送信要求データを前記データ送信手段へ出力し、前記通信データテーブルに記憶されている当該送信要求データの送信状態を送信済み状態へ変更することが好ましい。
【００３６】
この構成によれば、データ送信手段は、送信データを送信する前に通信媒体の通信経路上に他のデータが存在しないことを確認し、通信経路上に他のデータが存在しない場合、所定時間後に再度通信経路上に他のデータが存在しないことを確認した後、送信データを送信する機能を有している。この場合、送信要求データが入力されると、通信データテーブルに当該送信要求データに含まれるデータ種別情報が記憶されると共に、送信状態が送信待ち状態に設定される。そして、記憶されたデータ種別情報が同報・応答不要データである場合、全ての他の送信要求データの送信状態が応答待ち状態でない場合、又は他の送信要求データの送信状態が応答待ち状態のものはあるが、応答待ち状態である送信要求データの種類が全て同報である場合、当該送信要求データがデータ送信手段へ出力され、通信データテーブルに記憶されている当該送信要求データの送信状態が送信済み状態へ変更される。
【００３７】
同報送信の場合、不特定の他の通信装置へ送信データを送信しているため、必ずしも応答データが返信されるとは限らず、既に全ての他の通信装置から応答データが返信されている可能性がある。そのため、同報送信の場合、応答データの受信を待たずに送信データを送信したとしても、送信データと応答データとが衝突する可能性は低い。したがって、データ送信手段がデータの衝突を回避する機能を有しており、データ種別情報が同報・応答不要データである場合、応答待ち状態である送信要求データの種類が全て同報であるときにデータが送信され、データの衝突を防止することができる。
【００３８】
また、上記の通信装置において、前記通信調停処理手段は、前記送信要求データが入力されると、前記通信データテーブルに当該送信要求データに含まれるデータ種別情報を記憶すると共に、送信状態を送信待ち状態に設定し、記憶されたデータ種別情報が個別・応答要データ又は同報・応答要データである場合、前記データ送信手段によって前記送信要求データが送信された後、送信された送信要求データに対応する送信状態を応答待ち状態に変更し、送信状態が応答待ち状態に変更されてから所定時間経過しても応答がない場合、送信状態をタイムアウト状態に変更することが好ましい。
【００３９】
この構成によれば、送信要求データが入力されると、通信データテーブルに当該送信要求データに含まれるデータ種別情報が記憶されると共に、送信状態が送信待ち状態に設定される。そして、記憶されたデータ種別情報が個別・応答要データ又は同報・応答要データである場合、送信要求データが送信された後、送信された送信要求データに対応する送信状態が応答待ち状態に変更される。送信状態が応答待ち状態に変更されてから所定時間経過しても応答がない場合、送信状態がタイムアウト状態に変更される。
【００４０】
したがって、応答待ち状態に遷移してから所定時間経過しても応答がない場合、応答を待ち続けるのではなく、タイムアウト状態に遷移するので、応答がない場合でも処理を止めることなく続けることができる。
【００４１】
また、上記の通信装置において、前記通信調停処理手段は、送信状態が応答待ち状態からタイムアウト状態に遷移するまでの所定時間を、前記通信媒体種別情報記憶手段に記憶されている通信媒体種別情報に応じて設定することが好ましい。
【００４２】
この構成によれば、送信状態が応答待ち状態からタイムアウト状態に遷移するまでの所定時間が、通信媒体種別情報記憶手段に記憶されている通信媒体種別情報に応じて設定されるので、通信媒体がデータを送信する速度に応じて、応答待ち状態からタイムアウト状態に遷移するまでの所定時間を設定することができる。すなわち、通信媒体の送信速度が速い場合、所定時間を短く設定することで、通信処理速度を向上させることができ、通信媒体の送信速度が遅い場合、所定時間を長く設定することで、通信の信頼性を向上させることができる。
【００４３】
また、上記の通信装置において、前記通信調停処理手段は、送信状態が応答待ち状態からタイムアウト状態に遷移するまでの所定時間を、前記送信要求データのデータ長に応じて設定することが好ましい。
【００４４】
この構成によれば、送信状態が応答待ち状態からタイムアウト状態に遷移するまでの所定時間が、送信要求データのデータ長に応じて設定されるので、通信媒体がデータを送信するのに要する時間に応じて、応答待ち状態からタイムアウト状態に遷移するまでの所定時間を設定することができる。すなわち、送信要求データのデータ長が短い場合、送信に要する時間は短くなるので、所定時間を短く設定することで、通信処理速度を向上させることができ、送信要求データのデータ長が長い場合、送信に要する時間は長くなるので、所定時間を長く設定することで、通信の信頼性を向上させることができる。
【００４５】
また、上記の通信装置において、前記通信調停処理手段は、送信状態が応答待ち状態からタイムアウト状態に遷移するまでの所定時間を、前記送信データに対する応答データのデータ長に応じて設定することが好ましい。
【００４６】
この構成によれば、送信状態が応答待ち状態からタイムアウト状態に遷移するまでの所定時間が、送信データに対する応答データのデータ長に応じて設定されるので、通信媒体が応答データを送信するのに要する時間に応じて、応答待ち状態からタイムアウト状態に遷移するまでの所定時間を設定することができる。すなわち、応答データのデータ長が短い場合、送信に要する時間は短くなるので、所定時間を短く設定することで、通信処理速度を向上させることができ、応答データのデータ長が長い場合、送信に要する時間は長くなるので、所定時間を長く設定することで、通信の信頼性を向上させることができる。
【００４７】
また、上記の通信装置において、前記送信要求データは、それぞれ規格の異なる複数の前記通信媒体の中から、使用する通信媒体を特定するための通信媒体特定情報を含み、前記通信調停処理手段は、前記送信要求データに含まれる前記通信媒体特定情報に基づいて送信データを送信する通信媒体を特定し、前記データ送信手段は、前記通信調停処理手段によって特定された通信媒体を使用して前記送信データを送信することが好ましい。
【００４８】
この構成によれば、送信要求データには、それぞれ規格の異なる複数の通信媒体の中から、使用する通信媒体を特定するための通信媒体特定情報が含まれ、送信要求データに含まれる通信媒体特定情報に基づいて送信データを送信する通信媒体が特定され、特定された通信媒体を使用して送信データが送信される。このように、データを送信する通信媒体を切り替えて使用することにより、それぞれ規格の異なる複数の通信媒体を用いて送信データを送信することができる。
【００４９】
本発明に係る通信方法は、他の通信装置と通信媒体を介してデータを送受信するための通信方法であって、送信すべき送信データの送信先と、前記送信データに対する応答の要否とを表すデータ種別情報を含む送信要求データを作成する送信要求データ作成ステップと、前記通信媒体の種別を表す通信媒体種別情報を記憶する通信媒体種別情報記憶ステップと、前記送信要求データ作成ステップにおいて作成された前記送信要求データに含まれる前記データ種別情報と、前記通信媒体種別情報記憶ステップにおいて記憶された前記通信媒体種別情報とに基づいて前記送信データを送信するタイミングを調停する通信調停処理ステップと、前記通信調停処理ステップにおいて調停されるタイミングに応じて前記送信データを送信するデータ送信処理ステップとを含む。
【００５０】
この構成によれば、送信すべき送信データの送信先と、送信データに対する応答の要否とを表すデータ種別情報を含む送信要求データが作成される。そして、送信要求データに含まれるデータ種別情報と、種別情報記憶手段に記憶されている通信媒体の種別を表す通信媒体種別情報とに基づいて送信データを送信するタイミングが調停され、調停されるタイミングに応じて送信データが送信される。
【００５１】
したがって、送信データの送信先と、送信データに対する応答の要否と、通信媒体の種別とに基づいて送信データを送信するタイミングが調停されるので、ネットワークに接続される複数の通信装置の通信を仮想的に１：１にし、通信媒体上の他のデータに衝突することによって送信データが消失することが少なくなり、通信の信頼性を向上させることができる。
【００５２】
本発明に係る通信プログラムは、他の通信装置と通信媒体を介してデータを送受信するための通信プログラムであって、送信すべき送信データの送信先と、前記送信データに対する応答の要否とを表すデータ種別情報を含む送信要求データを作成する送信要求データ作成手段と、前記通信媒体の種別を表す通信媒体種別情報を記憶する通信媒体種別情報記憶手段と、前記送信要求データ作成手段によって作成された前記送信要求データに含まれる前記データ種別情報と、前記通信媒体種別情報記憶手段に記憶されている前記通信媒体種別情報とに基づいて前記送信データを送信するタイミングを調停する通信調停処理手段と、前記通信調停処理手段によって調停されるタイミングに応じて前記送信データを送信するデータ送信手段としてコンピュータを機能させる。
【００５３】
この構成によれば、送信すべき送信データの送信先と、送信データに対する応答の要否とを表すデータ種別情報を含む送信要求データが作成される。そして、送信要求データに含まれるデータ種別情報と、種別情報記憶手段に記憶されている通信媒体の種別を表す通信媒体種別情報とに基づいて送信データを送信するタイミングが調停され、調停されるタイミングに応じて送信データが送信される。
【００５４】
したがって、送信データの送信先と、送信データに対する応答の要否と、通信媒体の種別とに基づいて送信データを送信するタイミングが調停されるので、ネットワークに接続される複数の通信装置の通信を仮想的に１：１にし、通信媒体上の他のデータに衝突することによって送信データが消失することが少なくなり、通信の信頼性を向上させることができる。
【００５５】
このように、通信装置の内部に通信を調停する機能を持たせ、システム内のトラフィックをコントロールすることによって、システム内での通信をｍ：ｎから仮想的に１：１の通信にするような通信方式を用いて、通信の信頼性を確保する。そして、送信要求のあったデータの種類、送信要求のあったデータの状態を通信装置は管理し、データを送信しようとするたびに、送信可能であることを確認する。
【発明の効果】
【００５６】
本発明によれば、送信データの送信先と、送信データに対する応答の要否と、通信媒体の種別とに基づいて送信データを送信するタイミングが調停されるので、ネットワークに接続される複数の通信装置の通信を仮想的に１：１にし、通信媒体上の他のデータに衝突することによって送信データが消失することが少なくなり、通信の信頼性を向上させることができる。
【発明を実施するための最良の形態】
【００５７】
以下、本発明の一実施の形態による通信装置ついて図面を参照しながら説明する。
【００５８】
図１は、本発明の一実施の形態における通信装置の構成を示すブロック図である。通信装置１１は、通信媒体１７を介して他の通信装置と通信可能に接続され、通信媒体１７に接続するための１つもしくは複数のアプリケーションを記憶している。通信媒体１７は、有線又は無線であり、例えば、電灯線、特定小電力無線及びブルートゥース等で構成される。図１に示す通信装置１１は、通信調停処理部１２、データ受信処理部１３、データ送信処理部１４、アプリケーション処理部１５及び通信媒体処理部１６を備えて構成される。
【００５９】
通信媒体処理部１６は、通信媒体１７へ送信データを送信し、受信データを通信媒体１７から受信する。また、通信媒体処理部１６は、通信媒体１７の種別を表す通信媒体種別情報と、通信媒体処理部１６のバージョンを表すバージョン情報とを記憶する種別・バージョン情報記憶部１６１を備えている。通信媒体処理部１６は、後述する通信調停処理部１２から通信媒体１７の種別と通信媒体処理部１６のバージョンの取得を要求する種別・バージョン情報取得要求を受け取ると、通信媒体種別情報及びバージョン情報を通信調停処理部１２へ応答する。
【００６０】
アプリケーション処理部１５は、送信すべき送信データの送信先と、送信データに対する応答の要否とを表すデータ種別情報を含む送信要求データを作成する。アプリケーション処理部１５は、作成した送信要求データを特定のタイミングで後述する通信調停処理部１２へ出力する。送信要求データには、特定の送信先を個別に指定し、データの送信先に対して応答を要求する「個別・応答要データ」、特定の送信先を個別に指定し、データの送信先に対して応答を要求しない「個別・応答不要データ」、送信先を特定せず同報でデータを送信し、データの送信先に対して応答を要求する「同報・応答要データ」、又は、送信先を特定せず同報でデータを送信し、データの送信先に対して応答を要求しない「同報・応答不要データ」であることを示すデータ種別情報が含まれる。
【００６１】
データ送信処理部１４は、後述する通信調停処理部１２から送信要求データが入力され、通信プロトコルに準拠した送信データを組み立てて、通信媒体処理部１６へ出力する。データ受信処理部１３は、通信媒体処理部１６から受信データを受信すると、後述する通信調停処理部１２へデータを出力する。
【００６２】
通信調停処理部１２は、通信媒体処理部１６に対し、通信装置１１が接続する通信媒体１７の通信媒体種別情報と通信媒体処理部１６のバージョン情報とを要求する。通信調停処理部１２は、通信媒体処理部１６から通信媒体種別情報とバージョン情報とを受け取り、通信媒体１７の種別及び通信媒体処理部１６のバージョンに適した後述する通信調停方式を選択し、通信の信頼性を確保するために送信要求データをデータ送信処理部１４へ出力するタイミングを調停する。する。また、通信調停処理部１２は、アプリケーション処理部１５から受け取った送信要求データを通信データテーブル１０１へ展開して記憶している。
【００６３】
なお、本実施形態におけるアプリケーション処理部１５が送信要求データ作成手段の一例に相当し、データ送信処理部１４及び通信媒体処理部１６がデータ送信手段の一例に相当し、通信調停処理部１２が通信調停処理手段の一例に相当し、種別・バージョン情報記憶部１６１が通信媒体種別情報記憶手段の一例に相当する。
【００６４】
図１０は、通信データテーブルの一例を示す図である。通信データテーブル１０１は、番号１０１ａ、送信順序１０１ｂ、送信状態１０１ｃ及び送信要求データ１０１ｄで構成される。番号１０１ａは、通信調停処理部１２に入力された順番を表している。送信順序１０１ｂは、送信する順番を表している。送信状態１０１ｃは、送信要求データの現在の送信状態を表している。送信要求データ１０１ｄは、アプリケーション処理部１５から入力された送信要求データであり、送信先及びデータ種別情報等を含んでいる。
【００６５】
また、通信装置１１によって送信される送信データには、特定の送信先を個別に指定し、データの送信先に対して応答を要求する「個別・応答要データ」、特定の送信先を個別に指定し、データの送信先に対して応答を要求しない「個別・応答不要データ」、送信先を特定せず同報でデータを送信し、データの送信先に対して応答を要求する「同報・応答要データ」、及び送信先を特定せず同報でデータを送信し、データの送信先に対して応答を要求しない「同報・応答不要データ」の４種類がある。送信要求データには、これらのデータを区別するためのデータ種別情報が含まれる。すなわち、データ種別情報は、送信データが「個別・応答要データ」、「個別・応答不要データ」、「同報・応答要データ」及び「同報・応答不要データ」のうちの何れであるかを特定するための情報である。
【００６６】
また、通信調停処理部１２は、記憶している送信要求データに「送信待ち状態」、「応答待ち状態」、「タイムアウト状態」、「応答受信済み状態」、及び「送信済み状態」の５つの状態を送信状態として設定する。「送信待ち状態」とは、通信調停処理部１２の通信データテーブル１０１に送信要求データが記憶され、データ送信処理部１４に出力するのを待っている状態である。「応答待ち状態」とは、データ送信処理部１４に送信要求データを出力し、データ受信処理部１３によって受信される応答データが入力されるのを待っている状態である。「タイムアウト状態」とは、データ送信処理部１４に送信要求データを出力した後、所定時間経過しても応答データが入力されない状態である。「応答受信済み状態」とは、データ受信処理部１３から応答データが入力された状態である。「送信済み状態」とは、送信先からの応答が不要である場合に、データ送信処理部１４に送信要求データを出力した状態である。
【００６７】
このように、送信要求データが入力されると、通信データテーブル１０１に当該送信要求データに含まれるデータ種別情報が記憶されると共に、送信状態が送信待ち状態に設定される。そして、記憶されたデータ種別情報が個別・応答要データ又は同報・応答要データである場合、送信要求データが送信された後、送信された送信要求データに対応する送信状態が応答待ち状態に変更される。送信状態が応答待ち状態に変更されてから所定時間経過しても応答がない場合、送信状態がタイムアウト状態に変更される。
【００６８】
したがって、応答待ち状態に遷移してから所定時間経過しても応答がない場合、応答を待ち続けるのではなく、タイムアウト状態に遷移するので、応答がない場合でも処理を止めることなく続けることができる。
【００６９】
なお、本実施の形態において、送信状態が応答待ち状態からタイムアウト状態に遷移するまでの所定時間は予め決められた時間に設定されているが、本発明は特にこれに限定されず、種別・バージョン情報記憶部１６１に記憶されている通信媒体１７の通信媒体種別情報に応じて設定してもよい。
【００７０】
このように、送信状態が応答待ち状態からタイムアウト状態に遷移するまでの所定時間が、種別・バージョン情報記憶部１６１に記憶されている通信媒体種別情報に応じて設定されるので、通信媒体１７がデータを送信する速度に応じて、応答待ち状態からタイムアウト状態に遷移するまでの所定時間を設定することができる。すなわち、通信媒体１７の送信速度が速い場合、所定時間を短く設定することで、通信処理速度を向上させることができ、通信媒体１７の送信速度が遅い場合、所定時間を長く設定することで、通信の信頼性を向上させることができる。
【００７１】
また、送信要求データのデータ長に応じて設定してもよい。この場合、送信状態が応答待ち状態からタイムアウト状態に遷移するまでの所定時間が、送信要求データのデータ長に応じて設定されるので、通信媒体１７がデータを送信するのに要する時間に応じて、応答待ち状態からタイムアウト状態に遷移するまでの所定時間を設定することができる。すなわち、送信要求データのデータ長が短い場合、送信に要する時間は短くなるので、所定時間を短く設定することで、通信処理速度を向上させることができ、送信要求データのデータ長が長い場合、送信に要する時間は長くなるので、所定時間を長く設定することで、通信の信頼性を向上させることができる。
【００７２】
さらに、送信データに対する応答データのデータ長を予測し、予測した応答データのデータ長に応じて設定してもよい。この場合、送信状態が応答待ち状態からタイムアウト状態に遷移するまでの所定時間が、送信データに対する応答データのデータ長に応じて設定されるので、通信媒体が応答データを送信するのに要する時間に応じて、応答待ち状態からタイムアウト状態に遷移するまでの所定時間を設定することができる。すなわち、応答データのデータ長が短い場合、送信に要する時間は短くなるので、所定時間を短く設定することで、通信処理速度を向上させることができ、応答データのデータ長が長い場合、送信に要する時間は長くなるので、所定時間を長く設定することで、通信の信頼性を向上させることができる。
【００７３】
次に、通信調停方式について説明する。本実施の形態では、通信媒体処理部１６が、通信媒体１７上でのデータの衝突検知及び衝突回避を行う機能を有している場合、第１の通信調停方式が選択され、このような機能を有していない場合、第２の通信調停方式が選択される。例えば、第１の通信調停方式における通信媒体処理部１６は、データを送信する前に通信媒体１７の通信経路上に他のデータが存在しないことを確認し、通信経路上に他のデータが存在しない場合、ランダム時間又は機器固有の一定時間経過後に再度通信経路上に他のデータが存在しないことを確認した後、データを送信する。通信媒体処理部１６がこのような機能を有している場合、データが衝突することなく送信先へ送信されるので、通信信頼性が高いといえる。一方、第２の通信方式における通信媒体処理部１６は、上述のような衝突検知及び衝突回避を行う機能を有していないため、データが衝突する可能性があり、通信信頼性が低いといえる。
【００７４】
なお、通信経路上にデータが存在しないことを確認した後、データを送信してもよいが、通信経路上にデータが存在している場合、複数の通信装置がデータの送信待ち状態になっている可能性がある。データが通信経路上から消滅した瞬間にデータを送信した場合、複数の通信装置が同時にデータを送信してしまい、データが衝突して壊れる虞がある。そこで、本実施の形態では、データを送信する前に通信媒体１７の通信経路上に他のデータが存在しないことを確認し、通信経路上に他のデータが存在しない場合、ランダム時間又は機器固有の一定時間経過後に再度通信経路上に他のデータが存在しないことを確認した後、データを送信する。これにより、複数の通信装置が同時にデータを送信することを防止することができ、データの破壊を防止することができる。
【００７５】
通信調停処理部１２は、通信媒体種別情報及びバージョン情報と通信調停方式とを対応付けて予め記憶している。すなわち、通信媒体１７の種別と通信媒体処理部１６のバージョンとを知ることができれば、当該通信媒体１７及び通信媒体処理部１６が上述の衝突検知及び衝突回避機能を有しているか否かがわかる。通信調停処理部１２は、通信媒体処理部１６から取得した通信媒体１７の種別と通信媒体処理部１６のバージョン情報とに対応する通信調停方式を切り替える。すなわち、通信媒体１７上でデータの衝突検知や衝突回避を行う機能を有しており、通信の信頼性が高い通信媒体処理部１６及び通信媒体１７である場合、通信調停処理部１２は、後述する図３、図５、図７、図９に示す通信調停処理を実行する。また、通信媒体１７上で、データの衝突検知もしくは衝突回避をすることができないような通信の信頼性が低い通信媒体処理部１６及び通信媒体１７である場合、通信調停処理部１２は、後述する図２、図４、図６、図８に示す通信調停処理を実行する。
【００７６】
図２は、通信信頼性が低い通信媒体１７及び通信媒体処理部１６を使用しており、送信予定の送信データのデータ種別が「個別・応答要データ」である場合の通信調停処理部１２で実行する通信調停処理の一例を示すフローチャートである。
【００７７】
まず、通信調停処理部１２は、通信媒体処理部１６に通信媒体種別情報とバージョン情報とを取得するための種別・バージョン情報要求を出力する（ステップＳ２０１）。通信媒体処理部１６は、種別・バージョン情報要求が入力されると、種別・バージョン情報記憶部１６１に記憶されている通信媒体種別情報及びバージョン情報を読み出し、通信調停処理部１２へ出力する。次に、通信調停処理部１２は、通信媒体処理部１６から出力された通信媒体種別情報とバージョン情報とを取得する（ステップＳ２０２）。
【００７８】
次に、通信調停処理部１２は、通信媒体処理部１６から取得した通信媒体種別情報及びバージョン情報に基づいて通信調停方式を特定する（ステップＳ２０３）。すなわち、通信調停処理部１２は、通信媒体種別情報及びバージョン情報に対応する通信調停方式を選択する。なお、図２では、通信媒体処理部１６がデータの衝突検知及び衝突回避を行う機能を有しておらず、通信信頼性が低い第２の通信調停方式が選択されたとして説明する。
【００７９】
また、図２におけるステップＳ２０１〜Ｓ２０３までの処理は、通信装置１１の起動時に行えばよい。そして、起動時にステップＳ２０１〜Ｓ２０３までの処理が１回だけ行われ、その後、送信要求データが受信される度にステップＳ２０４以降の処理が行われる。
【００８０】
次に、通信調停処理部１２は、アプリケーション処理部１５によって作成された送信要求データを受信する（ステップＳ２０４）。次に、通信調停処理部１２は、アプリケーション処理部１５から受信した送信要求データを通信データテーブル１０１に記憶する（ステップＳ２０５）。次に、通信調停処理部１２は、通信データテーブル１０１に記憶した送信要求データに対応する送信状態を「送信待ち状態」に設定する（ステップＳ２０６）。
【００８１】
次に、通信調停処理部１２は、通信データテーブル１０１に記憶した送信要求データに含まれるデータ種別情報から送信データの種別を判定する（ステップＳ２０７）。なお、図２に示すステップＳ２０７では、通信調停処理部１２によって、送信データのデータ種別が「個別・応答要データ」であると判定されたとする。
【００８２】
次に、通信調停処理部１２は、通信データテーブル１０１に記憶している他の送信要求データの送信状態をチェックする（Ｓ２０８）。その時、他の送信要求データの送信状態が全て「応答待ち」以外の状態である場合、通信調停処理部１２は、送信要求データをデータ送信処理部１４へ出力する（ステップＳ２０９）。次に、通信調停処理部１２は、通信データテーブル１０１に記憶されている送信要求データの送信状態を「応答待ち」の状態へ変更する（Ｓ２１０）。
【００８３】
一方、他の送信要求データの送信状態のうち一つでも「応答待ち」の状態がある場合、通信調停処理部１２は、所定時間経過したか否かを判断する（ステップＳ２１１）。ここで、所定時間経過したと判断された場合（ステップＳ２１１でＹＥＳ）、通信調停処理を終了し、所定時間経過していないと判断された場合（ステップＳ２１１でＮＯ）、ステップＳ２０８の処理に戻り、再度他の送信要求データの送信状態をチェックする。
【００８４】
このように、送信すべき送信データの送信先と、送信データに対する応答の要否とを表すデータ種別情報を含む送信要求データが作成される。そして、送信要求データに含まれるデータ種別情報と、種別・バージョン情報記憶部１６１に記憶されている通信媒体１７の種別を表す通信媒体種別情報とに基づいて送信データを送信するタイミングが調停され、調停されるタイミングに応じて送信データが送信される。
【００８５】
したがって、送信データの送信先と、送信データに対する応答の要否と、通信媒体１７の種別とに基づいて送信データを送信するタイミングが調停されるので、ネットワークに接続される複数の通信装置１１の通信を仮想的に１：１にし、通信媒体１７上の他のデータに衝突することによって送信データが消失することが少なくなり、通信の信頼性を向上させることができる。
【００８６】
また、データ種別情報が、個別・応答要データ、個別・応答不要データ、同報・応答要データ及び同報・応答不要データのうちのいずれであるかを確認することで、容易にデータの送信先及び応答の要否を特定することができる。
【００８７】
また、送信要求データを管理するための通信データテーブル１０１は、送信要求データごとに送信状態を対応付けて記憶している。そして、送信要求データに含まれるデータ種別情報と、種別・バージョン情報記憶部１６１に記憶されている通信媒体種別情報と、通信データテーブル１０１に記憶されている送信状態とに基づいて送信データを送信するタイミングが調停される。したがって、データ種別情報及び通信媒体種別情報だけでなく、送信要求データの送信状態も考慮して送信データを送信するタイミングが調停されるので、さらに通信の信頼性を向上させることができる。
【００８８】
さらに、送信要求データが入力されると、通信データテーブル１０１に当該送信要求データに含まれるデータ種別情報が記憶されると共に、送信状態が送信待ち状態に設定される。そして、記憶されたデータ種別情報が個別・応答要データである場合、通信データテーブル１０１が記憶する他の送信要求データの送信状態が確認される。ここで、全ての他の送信要求データの送信状態が応答待ち状態でない場合、当該送信要求データがデータ送信処理部１４へ出力され、通信データテーブル１０１に記憶されている当該送信要求データの送信状態が応答待ち状態へ変更される。
【００８９】
したがって、データ種別情報が個別・応答要データである場合、全ての他の送信要求データの送信状態が応答待ち状態でないとき、当該送信要求データが送信されることとなるので、通信媒体１７上に他の送信データに対する応答データが存在しないことを確認することができ、データの衝突を防止することができる。
【００９０】
図３は、通信信頼性が高い通信媒体１７及び通信媒体処理部１６を使用しており、送信予定の送信データのデータ種別が「個別・応答要データ」である場合の通信調停処理部１２で実行する通信調停処理の一例を示すフローチャートである。なお、ステップＳ３０１〜Ｓ３０６までの処理は、図２のステップＳ２０１〜Ｓ２０６までの処理と同じであるので説明を省略する。また、図３のステップＳ３０３では、通信媒体処理部１６がデータの衝突検知及び衝突回避を行う機能を有しており、通信信頼性が高い第１の通信調停方式が選択されたとして説明する。さらに、図３におけるステップＳ３０１〜Ｓ３０３までの処理は、通信装置１１の起動時に行えばよい。そして、起動時にステップＳ３０１〜Ｓ３０３までの処理が１回だけ行われ、その後、送信要求データが受信される度にステップＳ３０４以降の処理が行われる。
【００９１】
通信調停処理部１２は、通信データテーブル１０１に記憶した送信要求データに含まれるデータ種別情報から送信データの種別を判定する（ステップＳ３０７）。なお、図３に示すステップＳ３０７では、通信調停処理部１２によって、送信データのデータ種別が「個別・応答要データ」であると判定されたとする。
【００９２】
次に、通信調停処理部１２は、通信データテーブル１０１に記憶している他の送信要求データの送信状態をチェックする（Ｓ３０８）。その時、他の送信要求データの送信状態が全て「応答待ち」以外の状態である場合、通信調停処理部１２は、送信要求データをデータ送信処理部１４へ出力する（ステップＳ３０９）。次に、通信調停処理部１２は、通信データテーブル１０１に記憶されている送信要求データの送信状態を「応答待ち」の状態へ変更する（Ｓ３１０）。
【００９３】
一方、他の送信要求データの送信状態のうち一つでも「応答待ち」の状態がある場合、通信調停処理部１２は、「応答待ち」状態の送信要求データの送信先を確認する（ステップＳ３１１）。その時、送信予定の送信要求データの送信先と、「応答待ち」状態である全ての送信要求データの送信先とが異なる場合、ステップＳ３０９の処理に移行する。そして、通信調停処理部１２は、送信要求データをデータ送信処理部１４へ出力し、通信データテーブル１０１に記憶されている送信要求データの送信状態を「応答待ち」の状態へ変更する。
【００９４】
一方、「応答待ち」状態である全ての送信要求データの送信先のうち、送信予定の送信要求データの送信先と一つでも同じものがある場合、通信調停処理部１２は、所定時間経過したか否かを判断する（ステップＳ３１２）。ここで、所定時間経過したと判断された場合（ステップＳ３１２でＹＥＳ）、通信調停処理を終了し、所定時間経過していないと判断された場合（ステップＳ３１２でＮＯ）、ステップＳ３０８の処理に戻り、再度他の送信要求データの送信状態をチェックする。
【００９５】
このように、通信信頼性に応じて、図２、図３の処理を自動的に切り替えているため、システム全体において通信信頼性を確保できる範囲で最も速く通信処理を行うことができるという効果がある。
【００９６】
また、通信媒体処理部１６は、送信データを送信する前に通信媒体１７の通信経路上に他のデータが存在しないことを確認し、通信経路上に他のデータが存在しない場合、所定時間後に再度通信経路上に他のデータが存在しないことを確認した後、送信データを送信する機能を有している。この場合、送信要求データが入力されると、通信データテーブル１０１に当該送信要求データに含まれるデータ種別情報が記憶されると共に、送信状態が送信待ち状態に設定される。そして、記憶されたデータ種別情報が個別・応答要データである場合、全ての他の送信要求データの送信状態が応答待ち状態でないとき、又は他の送信要求データの送信状態が応答待ち状態のものはあるが、応答待ち状態である送信要求データの送信先が、当該送信要求データの送信先と全て異なっているとき、当該送信要求データがデータ送信処理部１４へ出力され、通信データテーブル１０１に記憶されている当該個送信要求データの送信状態が応答待ち状態へ変更される。
【００９７】
したがって、通信媒体１７がデータの衝突を回避する機能を有しており、データ種別情報が個別・応答要データである場合、送信データの送信先と応答データの送信元とが異なっているときにデータが送信されるので、データの衝突を防止することができる。
【００９８】
図４は、通信信頼性が低い通信媒体１７及び通信媒体処理部１６を使用しており、送信予定の送信データのデータ種別が「個別・応答不要データ」である場合の通信調停処理部１２で実行する通信調停処理の一例を示すフローチャートである。なお、ステップＳ４０１〜Ｓ４０６までの処理は、図２のステップＳ２０１〜Ｓ２０６までの処理と同じであるので説明を省略する。また、図４のステップＳ４０３では、通信媒体処理部１６がデータの衝突検知及び衝突回避を行う機能を有しておらず、通信信頼性が低い第２の通信調停方式が選択されたとして説明する。さらに、図４におけるステップＳ４０１〜Ｓ４０３までの処理は、通信装置１１の起動時に行えばよい。そして、起動時にステップＳ４０１〜Ｓ４０３までの処理が１回だけ行われ、その後、送信要求データが受信される度にステップＳ４０４以降の処理が行われる。
【００９９】
通信調停処理部１２は、通信データテーブル１０１に記憶した送信要求データに含まれるデータ種別情報から送信データの種別を判定する（ステップＳ４０７）。なお、図４に示すステップＳ４０７では、通信調停処理部１２によって、送信データのデータ種別が「個別・応答不要データ」であると判定されたとする。
【０１００】
次に、通信調停処理部１２は、通信データテーブル１０１に記憶している他の送信要求データの送信状態をチェックする（Ｓ４０８）。その時、他の送信要求データの送信状態が全て「応答待ち」以外の状態である場合、通信調停処理部１２は、送信要求データをデータ送信処理部１４へ出力する（ステップＳ４０９）。次に、通信調停処理部１２は、通信データテーブル１０１に記憶されている送信要求データの送信状態を「送信済み」の状態へ変更する（Ｓ４１０）。
【０１０１】
一方、他の送信要求データの送信状態のうち一つでも「応答待ち」の状態がある場合、通信調停処理部１２は、所定時間経過したか否かを判断する（ステップＳ４１１）。ここで、所定時間経過したと判断された場合（ステップＳ４１１でＹＥＳ）、通信調停処理を終了し、所定時間経過していないと判断された場合（ステップＳ４１１でＮＯ）、ステップＳ４０８の処理に戻り、再度他の送信要求データの送信状態をチェックする。
【０１０２】
このように、送信要求データが入力されると、通信データテーブル１０１に当該送信要求データに含まれるデータ種別情報が記憶されると共に、送信状態が送信待ち状態に設定される。そして、記憶されたデータ種別情報が個別・応答不要データである場合、全ての他の送信要求データの送信状態が応答待ち状態でないとき、当該送信要求データがデータ送信処理部１４へ出力され、通信データテーブル１０１に記憶されている当該送信要求データの送信状態が送信済み状態へ変更される。
【０１０３】
したがって、データ種別情報が個別・応答不要データである場合、全ての他の送信要求データの送信状態が応答待ち状態でないとき、当該送信要求データが送信されることとなるので、通信媒体１７上に他の送信データに対する応答データが存在しないことを確認することができ、データの衝突を防止することができる。
【０１０４】
図５は、通信信頼性が高い通信媒体１７及び通信媒体処理部１６を使用しており、送信予定の送信データのデータ種別が「個別・応答不要データ」である場合の通信調停処理部１２で実行する通信調停処理の一例を示すフローチャートである。なお、ステップＳ５０１〜Ｓ５０６までの処理は、図２のステップＳ２０１〜Ｓ２０６までの処理と同じであるので説明を省略する。また、図５のステップＳ５０３では、通信媒体処理部１６がデータの衝突検知及び衝突回避を行う機能を有しており、通信信頼性が高い第１の通信調停方式が選択されたとして説明する。さらに、図５におけるステップＳ５０１〜Ｓ５０３までの処理は、通信装置１１の起動時に行えばよい。そして、起動時にステップＳ５０１〜Ｓ５０３までの処理が１回だけ行われ、その後、送信要求データが受信される度にステップＳ５０４以降の処理が行われる。
【０１０５】
通信調停処理部１２は、通信データテーブル１０１に記憶した送信要求データに含まれるデータ種別情報から送信データの種別を判定する（ステップＳ５０７）。なお、図５に示すステップＳ５０７では、通信調停処理部１２によって、送信データのデータ種別が「個別・応答不要データ」であると判定されたとする。
【０１０６】
次に、通信調停処理部１２は、通信データテーブル１０１に記憶している他の送信要求データの送信状態をチェックする（Ｓ５０８）。その時、他の送信要求データの送信状態が全て「応答待ち」以外の状態である場合、通信調停処理部１２は、送信要求データをデータ送信処理部１４へ出力する（ステップＳ５０９）。次に、通信調停処理部１２は、通信データテーブル１０１に記憶されている送信要求データの送信状態を「送信済み」の状態へ変更する（Ｓ５１０）。
【０１０７】
一方、他の送信要求データの送信状態のうち一つでも「応答待ち」の状態がある場合、通信調停処理部１２は、「応答待ち」状態の送信要求データの送信先を確認する（ステップＳ５１１）。その時、送信予定の送信要求データの送信先と、「応答待ち」状態である全ての送信要求データの送信先とが異なる場合、ステップＳ５０９の処理に移行する。そして、通信調停処理部１２は、送信要求データをデータ送信処理部１４へ出力し、通信データテーブル１０１に記憶されている送信要求データの送信状態を「送信済み」の状態へ変更する。
【０１０８】
一方、「応答待ち」状態である全ての送信要求データの送信先のうち、送信予定の送信要求データの送信先と一つでも同じものがある場合、通信調停処理部１２は、所定時間経過したか否かを判断する（ステップＳ５１２）。ここで、所定時間経過したと判断された場合（ステップＳ５１２でＹＥＳ）、通信調停処理を終了し、所定時間経過していないと判断された場合（ステップＳ５１２でＮＯ）、ステップＳ５０８の処理に戻り、再度他の送信要求データの送信状態をチェックする。
【０１０９】
このように、通信信頼性に応じて、図４、図５の処理を自動的に切り替えているため、システム全体において通信信頼性を確保できる範囲で最も速く通信処理を行うことができるという効果がある。
【０１１０】
また、通信媒体処理部１６は、送信データを送信する前に通信媒体１７の通信経路上に他のデータが存在しないことを確認し、通信経路上に他のデータが存在しない場合、所定時間後に再度通信経路上に他のデータが存在しないことを確認した後、送信データを送信する機能を有している。この場合、送信要求データが入力されると、通信データテーブル１０１に当該送信要求データに含まれるデータ種別情報が記憶されると共に、送信状態が送信待ち状態に設定される。そして、記憶されたデータ種別情報が個別・応答不要データである場合、全ての他の送信要求データの送信状態が応答待ち状態でないとき、又は他の送信要求データの送信状態が応答待ち状態のものはあるが、応答待ち状態である送信要求データの送信先が、当該送信要求データの送信先と全て異なっているとき、当該送信要求データがデータ送信処理部１４へ出力され、通信データテーブル１０１に記憶されている当該送信要求データの送信状態が送信済み状態へ変更される。
【０１１１】
したがって、通信媒体がデータの衝突を回避する機能を有しており、データ種別情報が個別・応答不要データである場合、送信データの送信先と応答データの送信元とが異なるときにデータが送信され、データの衝突を防止することができる。
【０１１２】
図６は、通信信頼性が低い通信媒体１７及び通信媒体処理部１６を使用しており、送信予定の送信データのデータ種別が「同報・応答要データ」である場合の通信調停処理部１２で実行する通信調停処理の一例を示すフローチャートである。なお、ステップＳ６０１〜Ｓ６０６までの処理は、図２のステップＳ２０１〜Ｓ２０６までの処理と同じであるので説明を省略する。また、図６のステップＳ６０３では、通信媒体処理部１６がデータの衝突検知及び衝突回避を行う機能を有しておらず、通信信頼性が低い第２の通信調停方式が選択されたとして説明する。さらに、図６におけるステップＳ６０１〜Ｓ６０３までの処理は、通信装置１１の起動時に行えばよい。そして、起動時にステップＳ６０１〜Ｓ６０３までの処理が１回だけ行われ、その後、送信要求データが受信される度にステップＳ６０４以降の処理が行われる。
【０１１３】
通信調停処理部１２は、通信データテーブル１０１に記憶した送信要求データに含まれるデータ種別情報から送信データの種別を判定する（ステップＳ６０７）。なお、図６に示すステップＳ６０７では、通信調停処理部１２によって、送信データのデータ種別が「同報・応答要データ」であると判定されたとする。
【０１１４】
次に、通信調停処理部１２は、通信データテーブル１０１に記憶している他の送信要求データの送信状態をチェックする（Ｓ６０８）。その時、他の送信要求データの送信状態が全て「応答待ち」以外の状態である場合、通信調停処理部１２は、送信要求データをデータ送信処理部１４へ出力する（ステップＳ６０９）。次に、通信調停処理部１２は、通信データテーブル１０１に記憶されている送信要求データの送信状態を「応答待ち」の状態へ変更する（Ｓ６１０）。
【０１１５】
一方、他の送信要求データの送信状態のうち一つでも「応答待ち」の状態がある場合、通信調停処理部１２は、所定時間経過したか否かを判断する（ステップＳ６１１）。ここで、所定時間経過したと判断された場合（ステップＳ６１１でＹＥＳ）、通信調停処理を終了し、所定時間経過していないと判断された場合（ステップＳ６１１でＮＯ）、ステップＳ６０８の処理に戻り、再度他の送信要求データの送信状態をチェックする。
【０１１６】
このように、送信要求データが入力されると、通信データテーブル１０１に当該送信要求データに含まれるデータ種別情報が記憶されると共に、送信状態が送信待ち状態に設定される。そして、記憶されたデータ種別情報が同報・応答要データである場合、全ての他の送信要求データの送信状態が応答待ち状態でない場合、当該送信要求データがデータ送信処理部１４へ出力され、通信データテーブル１０１に記憶されている当該送信要求データの送信状態が応答待ち状態へ変更される。
【０１１７】
したがって、データ種別情報が同報・応答要データである場合、全ての他の送信要求データの送信状態が応答待ち状態でないとき、当該送信要求データが送信されることとなるので、通信媒体上に他の送信データに対する応答データが存在しないことを確認することができ、データの衝突を防止することができる。
【０１１８】
図７は、通信信頼性が高い通信媒体１７及び通信媒体処理部１６を使用しており、送信予定の送信データのデータ種別が「同報・応答要データ」である場合の通信調停処理部１２で実行する通信調停処理の一例を示すフローチャートである。なお、ステップＳ７０１〜Ｓ７０６までの処理は、図２のステップＳ２０１〜Ｓ２０６までの処理と同じであるので説明を省略する。また、図７のステップＳ７０３では、通信媒体処理部１６がデータの衝突検知及び衝突回避を行う機能を有しており、通信信頼性が高い第１の通信調停方式が選択されたとして説明する。さらに、図７におけるステップＳ７０１〜Ｓ７０３までの処理は、通信装置１１の起動時に行えばよい。そして、起動時にステップＳ７０１〜Ｓ７０３までの処理が１回だけ行われ、その後、送信要求データが受信される度にステップＳ７０４以降の処理が行われる。
【０１１９】
通信調停処理部１２は、通信データテーブル１０１に記憶した送信要求データに含まれるデータ種別情報から送信データの種別を判定する（ステップＳ７０７）。なお、図７に示すステップＳ７０７では、通信調停処理部１２によって、送信データのデータ種別が「同報・応答要データ」であると判定されたとする。
【０１２０】
次に、通信調停処理部１２は、通信データテーブル１０１に記憶している他の送信要求データの送信状態をチェックする（Ｓ７０８）。その時、他の送信要求データの送信状態が全て「応答待ち」以外の状態である場合、通信調停処理部１２は、送信要求データをデータ送信処理部１４へ出力する（ステップＳ７０９）。次に、通信調停処理部１２は、通信データテーブル１０１に記憶されている送信要求データの送信状態を「応答待ち」の状態へ変更する（Ｓ７１０）。
【０１２１】
一方、他の送信要求データの送信状態のうち一つでも「応答待ち」の状態がある場合、通信調停処理部１２は、「応答待ち」状態の送信要求データのデータ種別を確認する（ステップＳ７１１）。その時、「応答待ち」状態である全ての送信要求データのデータ種別が同報データ（同報・応答要データ）である場合、ステップＳ７０９の処理に移行する。そして、通信調停処理部１２は、送信要求データをデータ送信処理部１４へ出力し、通信データテーブル１０１に記憶されている送信要求データの送信状態を「応答待ち」の状態へ変更する。
【０１２２】
一方、「応答待ち」状態である送信要求データのデータ種別のうち、一つでも個別データ（個別・応答要データ）がある場合、通信調停処理部１２は、所定時間経過したか否かを判断する（ステップＳ７１２）。ここで、所定時間経過したと判断された場合（ステップＳ７１２でＹＥＳ）、通信調停処理を終了し、所定時間経過していないと判断された場合（ステップＳ７１２でＮＯ）、ステップＳ７０８の処理に戻り、再度他の送信要求データの送信状態をチェックする。
【０１２３】
このように、通信媒体処理部１６は、送信データを送信する前に通信媒体１７の通信経路上に他のデータが存在しないことを確認し、通信経路上に他のデータが存在しない場合、所定時間後に再度通信経路上に他のデータが存在しないことを確認した後、送信データを送信する機能を有している。この場合、送信要求データが入力されると、通信データテーブル１０１に当該送信要求データに含まれるデータ種別情報が記憶されると共に、送信状態が送信待ち状態に設定される。そして、記憶されたデータ種別情報が同報・応答要データである場合、通信データテーブルが記憶する他の送信要求データの送信状態が確認される。ここで、全ての他の送信要求データの送信状態が応答待ち状態でない場合、又は他の送信要求データの送信状態が応答待ち状態のものはあるが、応答待ち状態である送信要求データの種類が全て同報である場合、当該送信要求データがデータ送信処理部１４へ出力され、通信データテーブル１０１に記憶されている当該送信要求データの送信状態が応答待ち状態へ変更される。
【０１２４】
同報送信の場合、不特定の他の通信装置へ送信データを送信しているため、必ずしも応答データが返信されるとは限らず、既に全ての他の通信装置から応答データが返信されている可能性がある。そのため、同報送信の場合、応答データの受信を待たずに送信データを送信したとしても、送信データと応答データとが衝突する可能性は低い。したがって、通信媒体１７がデータの衝突を回避する機能を有しており、データ種別情報が同報・応答要データである場合、応答待ち状態である送信要求データの種類が全て同報であるときにデータが送信され、データの衝突を防止することができる。
【０１２５】
図８は、通信信頼性が低い通信媒体１７及び通信媒体処理部１６を使用しており、送信予定の送信データのデータ種別が「同報・応答不要データ」である場合の通信調停処理部１２で実行する通信調停処理の一例を示すフローチャートである。なお、ステップＳ８０１〜Ｓ８０６までの処理は、図２のステップＳ２０１〜Ｓ２０６までの処理と同じであるので説明を省略する。また、図８のステップＳ８０３では、通信媒体処理部１６がデータの衝突検知及び衝突回避を行う機能を有しておらず、通信信頼性が低い第２の通信調停方式が選択されたとして説明する。さらに、図８におけるステップＳ８０１〜Ｓ８０３までの処理は、通信装置１１の起動時に行えばよい。そして、起動時にステップＳ８０１〜Ｓ８０３までの処理が１回だけ行われ、その後、送信要求データが受信される度にステップＳ８０４以降の処理が行われる。
【０１２６】
通信調停処理部１２は、通信データテーブル１０１に記憶した送信要求データに含まれるデータ種別情報から送信データの種別を判定する（ステップＳ８０７）。なお、図８に示すステップＳ８０７では、通信調停処理部１２によって、送信データのデータ種別が「同報・応答不要データ」であると判定されたとする。
【０１２７】
次に、通信調停処理部１２は、通信データテーブル１０１に記憶している他の送信要求データの送信状態をチェックする（Ｓ８０８）。その時、他の送信要求データの送信状態が全て「応答待ち」以外の状態である場合、通信調停処理部１２は、送信要求データをデータ送信処理部１４へ出力する（ステップＳ８０９）。次に、通信調停処理部１２は、通信データテーブル１０１に記憶されている送信要求データの送信状態を「送信済み」の状態へ変更する（Ｓ８１０）。
【０１２８】
一方、他の送信要求データの送信状態のうち一つでも「応答待ち」の状態がある場合、通信調停処理部１２は、所定時間経過したか否かを判断する（ステップＳ８１１）。ここで、所定時間経過したと判断された場合（ステップＳ８１１でＹＥＳ）、通信調停処理を終了し、所定時間経過していないと判断された場合（ステップＳ８１１でＮＯ）、ステップＳ８０８の処理に戻り、再度他の送信要求データの送信状態をチェックする。
【０１２９】
このように、送信要求データが入力されると、通信データテーブル１０１に当該送信要求データに含まれるデータ種別情報が記憶されると共に、送信状態が送信待ち状態に設定される。そして、記憶されたデータ種別情報が同報・応答不要データである場合、全ての他の送信要求データの送信状態が応答待ち状態でない場合、当該送信要求データがデータ送信処理部１４へ出力され、通信データテーブル１０１に記憶されている当該送信要求データの送信状態が送信済み状態へ変更される。
【０１３０】
したがって、データ種別情報が同報・応答不要データである場合、全ての他の送信要求データの送信状態が応答待ち状態でないとき、当該送信要求データが送信されることとなるので、通信媒体上に他の送信データに対する応答データが存在しないことを確認することができ、データの衝突を防止することができる。
【０１３１】
図９は、通信信頼性が高い通信媒体１７及び通信媒体処理部１６を使用しており、送信予定の送信データのデータ種別が「同報・応答不要データ」である場合の通信調停処理部１２で実行する通信調停処理の一例を示すフローチャートである。なお、ステップＳ９０１〜Ｓ９０６までの処理は、図２のステップＳ２０１〜Ｓ２０６までの処理と同じであるので説明を省略する。また、図９のステップＳ９０３では、通信媒体処理部１６がデータの衝突検知及び衝突回避を行う機能を有しており、通信信頼性が高い第１の通信調停方式が選択されたとして説明する。さらに、図９におけるステップＳ９０１〜Ｓ９０３までの処理は、通信装置１１の起動時に行えばよい。そして、起動時にステップＳ９０１〜Ｓ９０３までの処理が１回だけ行われ、その後、送信要求データが受信される度にステップＳ９０４以降の処理が行われる。
【０１３２】
通信調停処理部１２は、通信データテーブル１０１に記憶した送信要求データに含まれるデータ種別情報から送信データの種別を判定する（ステップＳ９０７）。なお、図９に示すステップＳ９０７では、通信調停処理部１２によって、送信データのデータ種別が「同報・応答不要データ」であると判定されたとする。
【０１３３】
次に、通信調停処理部１２は、通信データテーブル１０１に記憶している他の送信要求データの送信状態をチェックする（Ｓ９０８）。その時、他の送信要求データの送信状態が全て「応答待ち」以外の状態である場合、通信調停処理部１２は、送信要求データをデータ送信処理部１４へ出力する（ステップＳ９０９）。次に、通信調停処理部１２は、通信データテーブル１０１に記憶されている送信要求データの送信状態を「送信済み」の状態へ変更する（Ｓ９１０）。
【０１３４】
一方、他の送信要求データの送信状態のうち一つでも「応答待ち」の状態がある場合、通信調停処理部１２は、「応答待ち」状態の送信要求データのデータ種別を確認する（ステップＳ９１１）。その時、「応答待ち」状態である全ての送信要求データのデータ種別が同報データ（同報・応答要データ）である場合、ステップＳ９０９の処理に移行する。そして、通信調停処理部１２は、送信要求データをデータ送信処理部１４へ出力し、通信データテーブル１０１に記憶されている送信要求データの送信状態を「送信済み」の状態へ変更する。
【０１３５】
一方、「応答待ち」状態である送信要求データのデータ種別のうち、一つでも個別データ（個別・応答要データ）がある場合、通信調停処理部１２は、所定時間経過したか否かを判断する（ステップＳ９１２）。ここで、所定時間経過したと判断された場合（ステップＳ９１２でＹＥＳ）、通信調停処理を終了し、所定時間経過していないと判断された場合（ステップＳ９１２でＮＯ）、ステップＳ９０８の処理に戻り、再度他の送信要求データの送信状態をチェックする。
【０１３６】
このように、通信媒体処理部１６は、送信データを送信する前に通信媒体１７の通信経路上に他のデータが存在しないことを確認し、通信経路上に他のデータが存在しない場合、所定時間後に再度通信経路上に他のデータが存在しないことを確認した後、送信データを送信する機能を有している。この場合、送信要求データが入力されると、通信データテーブル１０１に当該送信要求データに含まれるデータ種別情報が記憶されると共に、送信状態が送信待ち状態に設定される。そして、記憶されたデータ種別情報が同報・応答不要データである場合、全ての他の送信要求データの送信状態が応答待ち状態でない場合、又は他の送信要求データの送信状態が応答待ち状態のものはあるが、応答待ち状態である送信要求データの種類が全て同報である場合、当該送信要求データがデータ送信処理部１４へ出力され、通信データテーブル１０１に記憶されている当該送信要求データの送信状態が送信済み状態へ変更される。
【０１３７】
同報送信の場合、不特定の他の通信装置へ送信データを送信しているため、必ずしも応答データが返信されるとは限らず、既に全ての他の通信装置から応答データが返信されている可能性がある。そのため、同報送信の場合、応答データの受信を待たずに送信データを送信したとしても、送信データと応答データとが衝突する可能性は低い。したがって、通信媒体１７がデータの衝突を回避する機能を有しており、データ種別情報が同報・応答不要データである場合、応答待ち状態である送信要求データの種類が全て同報であるときにデータが送信され、データの衝突を防止することができる。
【０１３８】
なお、本実施の形態における通信装置１１は、１の通信媒体１７と接続されているが、本発明は特にこれに限定されず、それぞれ規格の異なる複数の通信媒体と接続してもよい。図１１は、通信装置と複数の通信媒体とを接続する場合における通信装置の構成を示すブロック図である。
【０１３９】
図１１に示す通信装置１１は、通信調停処理部１２、データ受信処理部１３、データ送信処理部１４、アプリケーション処理部１５及び複数の通信媒体処理部１６ａ，１６ｂを備えて構成される。通信装置１１は、それぞれ規格の異なる複数の通信媒体１７ａ，１７ｂを介して他の通信装置と通信可能に接続されている。図１１において、図１と同じ構成については説明を省略する。通信装置１１は、接続する通信媒体の数に応じて通信媒体処理部を備える。図１１では、２つの通信媒体１７ａ，１７ｂに接続するため、それぞれの通信媒体１７ａ，１７ｂに応じた２つの通信媒体処理部１６ａ，１６ｂを備える。通信媒体処理部１６ａ，１６ｂは、図１に示す通信媒体処理部１６と同じ構成であるので説明を省略する。
【０１４０】
通信調停処理部１２は、送信するデータを伝送する通信媒体に応じて通信媒体処理部１６ａ，１６ｂを切り替える。例えば、アプリケーション処理部１５は、それぞれ規格の異なる複数の通信媒体の中から、使用する通信媒体を特定するための通信媒体特定情報を含む送信要求データを作成し、作成した送信要求データを通信調停処理部１２へ出力する。通信調停処理部１２は、送信要求データに含まれる通信媒体特定情報に基づいて、使用する通信媒体処理部を特定する。データ送信処理部１４は、通信調停処理部１２によって特定された通信媒体処理部に送信データを出力する。このように、データを送信する通信媒体を切り替えて使用することにより、規格の異なる複数の通信媒体を用いてデータを送信することができる。
【０１４１】
なお、本実施形態では、アプリケーション処理部１５がそれぞれ規格の異なる複数の通信媒体の中から、使用する通信媒体を特定するための通信媒体特定情報を含む送信要求データを作成するとしているが、本発明は特にこれに限定されない。例えば、アプリケーション処理部１５は送信データの送信先とデータ種別情報とを含む送信要求データを作成し、データ送信処理部１４がそれぞれ規格の異なる複数の通信媒体の中から、使用する通信媒体を特定してもよい。
【０１４２】
また、本発明にかかる通信調停処理は、通信装置１１が備えるＲＯＭ（リードオンリメモリ）に記憶された通信調停処理プログラムをＣＰＵ（中央演算処理装置）が実行することによって実現され、通信調停処理プログラムをコンピュータ読み取り可能な記録媒体に記録して移送することにより、独立した他のコンピュータシステムで実施することが出来る。
【産業上の利用可能性】
【０１４３】
本発明にかかる通信装置、通信方法及び通信プログラムは、特に低速であり、物理層での通信信頼性が低い通信媒体を用いてシステムを構築する際、通信の信頼性を確保することに有用である。この通信装置をミドルウェア以下に組込むことによって、各アプリケーションは通信状態を意識せずに容易に開発・設計できる。この通信装置は特にコントローラなど制御系の機器などに組込むことで効果は大きくなる。
【図面の簡単な説明】
【０１４４】
【図１】本発明の一実施の形態における通信装置の構成を示すブロック図である。
【図２】通信信頼性が低い通信媒体及び通信媒体処理部を使用して個別・応答要データを送信する場合に通信調停処理部で実行する通信調停処理の一例を示すフローチャートである。
【図３】通信信頼性が高い通信媒体及び通信媒体処理部を使用して個別・応答要データを送信する場合に通信調停処理部で実行する通信調停処理の一例を示すフローチャートである。
【図４】通信信頼性が低い通信媒体及び通信媒体処理部を使用して個別・応答不要データを送信する場合に通信調停処理部で実行する通信調停処理の一例を示すフローチャートである。
【図５】通信信頼性が高い通信媒体及び通信媒体処理部を使用して個別・応答不要データを送信する場合に通信調停処理部で実行する通信調停処理の一例を示すフローチャートである。
【図６】通信信頼性が低い通信媒体及び通信媒体処理部を使用して同報・応答要データを送信する場合に通信調停処理部で実行する通信調停処理の一例を示すフローチャートである。
【図７】通信信頼性が高い通信媒体及び通信媒体処理部を使用して同報・応答要データを送信する場合に通信調停処理部で実行する通信調停処理の一例を示すフローチャートである。
【図８】通信信頼性が低い通信媒体及び通信媒体処理部を使用して同報・応答不要データを送信する場合に通信調停処理部で実行する通信調停処理の一例を示すフローチャートである。
【図９】通信信頼性が高い通信媒体及び通信媒体処理部を使用して同報・応答不要データを送信する場合に通信調停処理部で実行する通信調停処理の一例を示すフローチャートである。
【図１０】通信調停処理部が備える通信データテーブルのデータ構成の一例を示す図である。
【図１１】通信装置と複数の通信媒体とを接続する場合における通信装置の構成を示すブロック図である。
【符号の説明】
【０１４５】
１１    通信装置
１２    通信調停処理部
１３    データ受信処理部
１４    データ送信処理部
１５    アプリケーション処理部
１６    通信媒体処理部
１７    通信媒体
１０１    通信データテーブル
１６１    種別・バージョン情報記憶部
【図１】
0004654056.tif 000002
【図２】
0004654056.tif 000003
【図３】
0004654056.tif 000004
【図４】
0004654056.tif 000005
【図５】
0004654056.tif 000006
【図６】
0004654056.tif 000007
【図７】
0004654056.tif 000008
【図８】
0004654056.tif 000009
【図９】
0004654056.tif 000010
【図１０】
0004654056.tif 000011
【図１１】
0004654056.tif 000012