(57)【要約】【課題】シリアル伝送路でデータを送信する場合、通信のやり直しのための時間が余分にかかるという問題を解消できる通信制御方法を提供する。【解決手段】マスタ（通信装置）２からのデータをスレーブ（通信装置）１に送信し、スレーブ１は、読取コマンドの受信に基づいて、マスタ２から送信されてきたデータをメモリ９に入力し格納する。この場合、マスタ２は、先ず読取コマンドを出さないまま、データをスレーブ１に送信し、スレーブ１では、読取コマンドがないときにも、マスタ２から送信されてきたデータをマスタ２に戻すエコーバックを行う。マスタ２は、先に送信したデータとエコーバックされたデータとをエコーバック比較部１１で照合して一致を確認してから、初めて読取コマンドをスレーブ１に送信する。これにより、読取られたデータを破棄して初めから通信をやり直すことがなくなる。【選択図】図１
2012085222.tif 000002
【特許請求の範囲】
【請求項１】
シリアル伝送路を介してマスタ通信装置から送信されてくるデータをスレーブ通信装置により受信して該データを前記スレーブ通信装置にて格納する通信制御方法において、
前記マスタ通信装置により、データの読取を指令する読取コマンドを含まないデータを前記スレーブ通信装置に送信するデータ送信ステップと、
前記スレーブ通信装置により、前記読取コマンドを含まないデータを受信したときに、該データをマスタ通信装置に戻すエコーバック送信を行うエコーバックステップと、
前記マスタ通信装置により、エコーバック送信されたデータを受信したときに、該受信したデータと先に送信したデータとを照合し、それら両データの前記照合が一致した場合に、前記読取コマンドを含むデータを前記スレーブ通信装置に送信する読取コマンド送信ステップと、
前記スレーブ通信装置により、前記読取コマンドを含むデータを受信したときに、先のエコーバックステップで受信したデータを格納する格納ステップとを含むことを特徴とする通信制御方法。
【請求項２】
前記マスタ通信装置から前記スレーブ通信装置に前記シリアル伝送路を介して送信されるデータは、ビット列の複数の集合からなり、
前記照合ステップにおいて、前記マスタ通信装置により、前記両データの全てのビット列の照合が一致したときに、前記読取コマンドを含むデータを前記スレーブ通信装置に送信することを特徴とする請求項１に記載の通信制御方法。
【請求項３】
前記スレーブ通信装置により、前記格納ステップによるデータの格納を完了した後に、読み取りが完了したことを表す読取完了出力を含むデータを前記マスタ通信装置に送信する読取完了出力送信ステップを含み、
前記マスタ通信装置により、前記読取完了出力を含むデータを受信したときに、前記データ送信ステップを再度実行することを特徴とする請求項１または２に記載の通信制御方法。
【請求項４】
マスタ通信装置により、前記照合ステップによる前記照合が一致しない場合は、前記データ送信ステップを繰り返すことを特徴とする請求項１ないし３のいずれか一項に記載の通信制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、受信側の通信装置（スレーブ通信装置と呼ぶ）から送信側の通信装置（マスタ通信装置と呼ぶ）へのエコーバックを使用して、シリアル伝送路による通信ミスを防ぐ通信制御方法に関するものである。
【背景技術】
【０００２】
パラレル通信ではデータ量の増加に伴い通信線が増加し、通信要求仕様に対して、対応できなくなってきているため、少なくとも一部にシリアル通信を利用する通信制御方法が使用されている。
【０００３】
このシリアル通信では、データを確実に受け取ったかどうかを確認する必要がある。この種のシリアル通信として、エコーバックを利用した特許文献１に記載の通信制御方法が知られている。
【０００４】
エコーバックとは、一旦送信したデータを送り返して、送ったデータと送り返されたデータとが一致しているかを照合するものである。上記特許文献１においては、スレーブ通信装置において、マスタ通信装置から送られてきたデータのフレームを受信して、受信バッファに取り込む。そして、単に受信バッファのみに取り込むのみでなく、受信バッファに書き込みされている出力データをデータバッファに転送している。
【０００５】
また、エコーバック用のフレームを生成するため、受信バッファに書き込まれている出力データを送信バッファに転送し、エコーバック送信している。このエコーバックされたデータを送信元であるマスタ通信装置で照合している。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００７−６７７６１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記特許文献１は、データを単に受信バッファに取り込みエコーバック送信するだけでなく、受信バッファに書き込まれている出力データをデータバッファに転送している。また、照合後の具体的処理が明確でない。
【０００８】
そこで、上記特許文献１に基づいて、本発明の開発過程において構築された通信制御システム（非公知）を比較例として説明する。図４は、上記比較例としての通信制御方法を説明する通信制御工程図である。
【０００９】
図４において、（１）読取コマンドとは、データとともに送信され、受信されたデータを読み取るように指示するコマンドデータのことである。このシリアル通信では、複数のデータと一つの読取コマンドとを時分割して送信する。
【００１０】
（２）１からｎ個のビット列のデータを１フレームとして時分割で送信すると、送信が終了したと思われる充分なタイマー手段で管理された遅延時間だけ待ってから、１からｎ個までのデータを上述の読取コマンドに基づいて読み取っている。
【００１１】
つまり、読取コマンドが着たからといってもすぐにデータを読み取ってしまうと、まだ送信されていないデータが残っている可能性があるため、遅延時間を設定して、意図的に遅れたタイミングで１からｎ（ｎは正の整数）個までの所定量のデータが読取コマンドに基づいて読み取られる。
【００１２】
スレーブ通信装置のメモリには、送信されてきたデータを保管して格納するメモリがあり、上記タイミングで蓄積されたデータが一挙にメモリ（データバッファ等）に読み取られる。しかし、このままでは確実にマスタ通信装置からスレーブ通信装置にデータが伝送されたかどうか判明しないため、（３）受信したデータはすぐに返信のために受信バッファからエコーバック出力部に送られる。
【００１３】
つまり、（４）スレーブ通信装置からマスタ通信装置にエコーバック送信によってデータを戻している。また、読み取りが完了したことを示す読取完了出力もスレーブ通信装置からマスタ通信装置に送信される。（５）マスタ通信装置では、エコーバックされてきたデータと読取完了出力とを受信する。（６）受信されたデータが正しいかどうかを確認するために、先に送信したデータとエコーバックされてきたデータとを照合する。
【００１４】
この種のシリアル通信では、マスタ通信装置からスレーブ通信装置に送信される過程で、誤ってデータの内容が変化することがあるため、ｎ回分の通信が完了した時点においても、まだｎ−１回分のデータしか送信されていないことが発生し得る。
【００１５】
従って、上述の遅延時間を設定して、意図的に遅れたタイミングで所定量のデータが読取コマンドに基づいて読み取られる。従来では、このようにエコーバックと照合と遅延時間後の読取により通信の確実性が確保されていた。
【００１６】
図５は、図４の比較例としての通信制御方法のフローチャートである。この図５において、制御がスタートすると、ステップＳ００１において、マスタ通信装置からデータを時系列で送信する。
【００１７】
次に、ステップＳ００１１において、マスタ通信装置のＣＰＵ（中央演算処理装置）は、読取コマンドをスレーブ通信装置に送信する。ステップＳ００２ではスレーブ通信装置においてデータを入力する。この入力されたデータをステップＳ００２１においてスレーブ通信装置の受信バッファ内に保管し、次に所定のデータベースＤＢを記憶するメモリ内に格納する。
【００１８】
ステップＳ００２１において保管された入力データは、ステップＳ００３４において順次機械的にエコーバックのための返信用データとしてエコーバック出力部に送られ、マスタ通信装置に出力されてエコーバック送信される。このエコーバックのための送信が完了すると、ステップＳ００４において、スレーブ通信装置からマスタ通信装置に読取完了出力が送信される。
【００１９】
次に、マスタ通信装置においては、ステップＳ００５６において、エコーバックされてきたデータと読取完了出力とを受信し、エコーバックされてきたデータが送信したデータと一致しているかどうかの照合を行う。一致が確認された時は、通信が正常に行われたとして、終了する。
【００２０】
ステップＳ００５６で不一致の時は、ステップＳ００６１に進み、データ破棄コマンドを出力する。ステップＳ００７において、データ破棄コマンドを受け取ったスレーブ通信装置でメモリ内に格納していたデータの破棄処理を実行する。
【００２１】
ステップＳ００８において破棄処理が完了した後に破棄完了出力をマスタ通信装置に送信する。この破棄完了出力を受信したマスタ通信装置において、再びステップＳ００１のデータ出力をやり直す。
【００２２】
なお、スレーブ通信装置では、ステップＳ００３４のエコーバック処理の後、格納されたデータを用いて、図示しない次の後続データ処理に勝手に移行している。照合が一致しない場合は、先ほど送信したデータを破棄してキャンセルせよというデータ破棄コマンドがステップＳ００６１においてマスタ通信装置からスレーブ通信装置に送られる。この場合、スレーブ通信装置は上記後続データ処理を中断し、処理されたデータ、及びメモリ９に格納されたデータを破棄する必要がある。
【００２３】
以上のように、この開発過程における通信制御方法においては、送信したデータとエコーバックされたデータ（エコーバックデータとも言う）とが一致していないと、スレーブ通信装置内のＣＰＵ（中央演算処理装置）等に取り込んだデータを破棄し、最初からやり直しになってしまう。このため通信時間が多くかかる。
【００２４】
更に、送信されたデータとエコーバックされたデータが一致していないときに、やり直すための取り決め（既に受け取ってしまったデータをキャンセルすることや再送信の方法等）をマスタ通信装置とスレーブ通信装置で決めておく必要がある。
【００２５】
本発明は、このような従来技術に基づく問題点に着目して成されたものであり、その目的は、シリアル伝送路でデータを送信する場合、通信のやり直しのための時間が余分にかかるという問題を解消できる通信制御方法を提供することにある。
【００２６】
従来技術として列挙された特許文献の記載内容は、この明細書に記載された技術的要素の説明として、参照によって導入ないし援用することができる。
【課題を解決するための手段】
【００２７】
本発明は上記目的を達成するために、下記の技術的手段を採用する。すなわち、請求項１に記載の発明では、シリアル伝送路を介してマスタ通信装置から送信されてくるデータをスレーブ通信装置により受信して該データをスレーブ通信装置にて格納する通信制御方法において、マスタ通信装置により、データの読取を指令する読取コマンドを含まないデータをスレーブ通信装置に送信するデータ送信ステップと、スレーブ通信装置により、読取コマンドを含まないデータを受信したときに、該データをマスタ通信装置に戻すエコーバック送信を行うエコーバックステップと、マスタ通信装置により、エコーバック送信されたデータを受信したときに、該受信したデータと先に送信したデータとを照合し、それら両データの照合が一致した場合に、読取コマンドを含むデータをスレーブ通信装置に送信する読取コマンド送信ステップと、スレーブ通信装置により、読取コマンドを含むデータを受信したときに、先のエコーバックステップで受信したデータを格納する格納ステップとを含むことを特徴としている。
【００２８】
この発明によれば、エコーバック送信されたデータを受信したときに、該受信したデータと先に送信したデータとを照合し、照合が一致した場合に、読取コマンドを含むデータをスレーブ通信装置に送信し、スレーブ通信装置により、照合が一致して信頼性が確認された先のエコーバックされたデータを格納するから、従来のように、読取が完了したデータを破棄して初めから通信をやり直すことがなくなる。よって、通信に必要な時間を短くすることができる。
【００２９】
請求項２に記載の発明では、マスタ通信装置からスレーブ通信装置にシリアル伝送路を介して送信されるデータは、ビット列の複数の集合からなり、照合ステップにおいて、マスタ通信装置により、両データの全てのビット列の照合が一致したときに、読取コマンドを含むデータをスレーブ通信装置に送信することを特徴としている。
【００３０】
この発明によれば、ビット列の複数の集合が、照合ステップにおいて、全て一致するとされたたときに、マスタ通信装置からスレーブ通信装置にシリアル伝送路を介して送信されたデータが格納されるから、ビット列の複数の集合をひとつの単位として確実に通信していくことができる。
【００３１】
請求項３に記載の発明では、スレーブ通信装置により、格納ステップによるデータの格納を完了した後に、読み取りが完了したことを表す読取完了出力を含むデータをマスタ通信装置に送信する読取完了出力送信ステップを含み、マスタ通信装置により、読取完了出力を含むデータを受信したときに、データ送信ステップを再度実行することを特徴としている。
【００３２】
この発明によれば、マスタ通信装置により、読取完了出力を含むデータを受信したときに、データ送信ステップを再度実行するから、マスタ通信装置において、再度のデータ送信ステップにおけるデータの送信を遅滞なく実行することができる。
【００３３】
請求項４に記載の発明では、マスタ通信装置により、照合ステップによる照合が一致しない場合は、データ送信ステップを繰り返すことを特徴としている。
【００３４】
この発明によれば、照合して一致を確認できないときは、マスタ通信装置によるデータ送信ステップを繰り返すから、自動的にエコーバック送信も行われ、この繰り返しのうちに照合が一致して、読取コマンドを含むデータをスレーブ通信装置に送信することができる。
【図面の簡単な説明】
【００３５】
【図１】本発明の一実施形態における通信制御方法に使用する通信システムの模式構成図である。
【図２】上記一実施形態における通信制御方法を説明する模式通信制御工程図である。
【図３】図１の上記一実施形態における通信制御方法のフローチャートである。
【図４】従来技術に基づいて確立された比較例としての通信制御方法を説明する通信制御工程図である。
【図５】図４の比較例としての通信制御方法のフローチャートである。
【発明を実施するための形態】
【００３６】
（第１実施形態）
以下、本発明の第１実施形態について図１ないし図３を用いて詳細に説明する。図１は、本発明の一実施形態の通信制御方法に使用する通信システムの模式構成図である。図２は、上記一実施形態における通信制御方法を説明する模式通信制御工程図である。図３は、上記一実施形態における通信制御方法のフローチャートである。
【００３７】
本発明の一実施形態では、マスタ通信装置は、読取コマンドを含むデータ送信後にエコーバックデータの一致を確認するのでなく、マスタ通信装置が、読取コマンドを含むデータ送信前にエコーバックデータの一致を確認することにして、マスタ通信装置とスレーブ通信装置間でのデータ不一致は発生しないようにして、通信やり直しの取り決めなどが不要になる通信制御方法を提供している。
【００３８】
先ず、その概要を説明する。まず、スレーブ通信装置は、読取コマンドがないときにも、送信データのエコーバックを実施するように取り決めておく。マスタ通信装置は、読取コマンドを含まないまま、送信データを送信する。なお、どちらがマスタ通信装置になるかスレーブ通信装置になるかは、切り替えが可能となっている。
【００３９】
スレーブ通信装置は、読取コマンドが出ていないが、常時エコーバックを機械的に実施している。マスタ通信装置は、先に、送信したデータとエコーバックデータの一致を確認してから、読取要求信号となる読取コマンドを送信する。従って、そもそもデータ不一致は発生せず、やり直しの取り決め等が不要になるものである。
【００４０】
以下具体的に、本発明の一実施形態について説明する。図１において、この通信システムは、工場の検査装置等設備側のスレーブ通信装置１とこの設備を制御する管理センター側のマスタ通信装置２との間において構築されている。検査設備は、製品の種類ごとに異なる検査仕様で検査を実行する必要があり、複雑な製品の種類ごとに検査方法を変える必要がある。
【００４１】
従って、検査を行う前に、製品を特定するためのＩＤ情報、及びそれに対応する検査仕様のデータを、マスタ通信装置２のコンピュータに入力データ３として入力して、該入力データ３をマスタ通信装置２のデータ入力部４とシリアル通信部５とが、シリアル伝送路６を介して、スレーブ通信装置１をなす設備側に転送する。
【００４２】
転送されたデータは、スレーブ通信装置１のシリアル通信部７を介して取り込まれ、データ保存部８が保管して制御用のデータベースを記憶するメモリ９に格納される。また、エコーバック出力部１０がマスタ通信装置２からスレーブ通信装置１に転送されてきたデータを、照合のために、シリアル伝送路６を介してマスタ通信装置２側にエコーバック送信する。このエコーバック送信されたデータは、マスタ通信装置２内のエコーバック比較部１１で、先に転送されたデータと照合され、通信が正常に行われたか否かが判断される。
【００４３】
図２は、時系列的にデータが送信受信される状態をイメージ的に表している。図２において読取コマンドとは、受信されたデータを読み取るように指示するコマンドのことである。シリアル通信では、複数のデータと一つの読取コマンドとを時分割して送信する。
【００４４】
従来は読取コマンドとデータとを続けて送信したが、この一実施形態においては、（１）読取コマンドを含まないデータ出力のみを行ない、マスタ通信装置からスレーブ通信装置にシリアル通信で送信する。（２）送信されたデータは、スレーブ通信装置において、データコピーされる。（３）このデータコピーされたデータはそのままエコーバックのための返信用データとなる。（４）返信用データは、自動的にエコーバック送信される。
【００４５】
（５）エコーバックされたデータ（エコーバックデータ）は、マスタ通信装置において受信される。（６）マスタ通信装置で受信されたエコーバックデータは、先に送信されたデータと照合される。照合の結果、一致している場合に初めて（７）マスタ通信装置からスレーブ通信装置に読取コマンドが出力される。
【００４６】
なお、あらかじめ一つのビット列のビット数が決められ、ビット列ｎ個分ごとに読取コマンドが一つ出力される。（８）この読取コマンドは、スレーブ通信装置に読み取られる。次に、（９）読取完了出力をスレーブ通信装置からマスタ通信装置に送信する。（１０）送信された読取完了出力は、マスタ通信装置に受信され、（１）次の読取コマンドを含まないデータが送信される。
【００４７】
このように、最初にエコーバックされたｎ個のデータを照合して正常であることを確認してから、確認されたｎ個のデータに対する読取コマンドを送信するため、従来のようにキャンセル（データ破棄処理）を行って通信をやり直す必要性がない。
【００４８】
また、照合が成功（一致）しないときは、マスタ通信装置から読取コマンドを送信しない。なお、ある程度時間をかけても照合しないときは、何らかの不具合が発生したとして、エラー処理を行ってもよい。このようにすれば、少なくとも、誤ったデータでスレーブ通信装置が処理を実行してしまうことを避けることができるとともに、データ破棄処理の必要がない。
【００４９】
なお、スレーブ通信装置からマスタ通信装置にエコーバック出力部１０（図１）によってデータを戻している。マスタ通信装置ではエコーバックされてきたデータが正しいかどうかを送信したデータとエコーバックされてきたデータとをエコーバック比較部１１（図１）で照合する。
【００５０】
この種のシリアル通信では、マスタ通信装置からスレーブ通信装置に送信される過程でデータの内容が変化することがあるため、ｎ回分の通信が完了したと判断しても、まだｎ−１回分のデータしか送信されていないことが発生し得る。しかし、この一実施形態では、このようなエコーバックされ照合されたデータのみに、読取コマンドを出力するため通信の確実性が確保される。
【００５１】
一例では、送信すべきデータが１００ワード、一個分で送信されるデータは３２ワードのシリアルバスの長さを持つビット列になる。よって１００ワード送信するためにはｎ＝４個のビット列の送信を行う必要がある。最後の４個目のビット列は、３２ワードのうち８ワード分しかデータとして利用されない。エコーバックも同様に３２ワードごとに行われる。
【００５２】
なお、シリアル伝送路６としては、ＦＡ向けの制御用ネットワークとして知られ、仕様が公開され、多くのユーザ、メーカが共通に利用することのできる任意のオープンフィールドネットワークを採用することができる。
【００５３】
図３は、上記一実施形態の通信制御方法におけるフローチャートである。この図３において、制御がスタートすると、ステップＳ０１において、マスタ通信装置において、時系列で読取コマンドを含まないデータを出力して送信する。
【００５４】
次に、ステップＳ０２３４では、スレーブ通信装置において、送信されてきたデータを、自動的に、かつシリアルに、エコーバック出力部１０（図１）に送り込む。そして、マスタ通信装置にエコーバック送信する。
【００５５】
ステップＳ０５６において、エコーバック送信されてきたデータは、マスタ通信装置に受信され、順次、先に送信したデータと一致しているかどうかの照合を行う。一致する時は、通信が正常に行われたとして、ステップＳ０７において、読取コマンドをマスタ通信装置からスレーブ通信装置に送信する。これにより、マスタ通信装置は、スレーブ通信装置にエコーバックデータの読取を指示する。この指示を受けて、スレーブ通信装置ではステップＳ０８において、データ入力を行う。
【００５６】
次に、ステップＳ０８１において、入力されたデータをデータバッファ等に保管し図１のメモリ９内のデータベースに格納する。次に、ステップＳ０９において、読取完了出力をスレーブ通信装置からマスタ通信装置に送信する。これにより１からｎ個の一回分のデータの送信受信を終了する。
【００５７】
ステップＳ５６において、エコーバック送信されてきたデータが先に送信したデータと一致しないときは、データ送信とエコーバック送信とを継続し、一致するまで待ってから、ステップＳ０７の読取コマンドを送信する。よって、従来のように、不一致時のデータ破棄コマンドを出力することはない。
【００５８】
以上のように、この一実施形態においては、マスタ通信装置とスレーブ通信装置のいずれにも読取コマンドが出力されていなくても、常時、マスタ通信装置からスレーブ通信装置へのデータの送信と、スレーブ通信装置からマスタ通信装置へのデータのエコーバック送信とを行っている。そしてエコーバックされたデータの照合結果が一致したことを確認してから、スレーブ通信装置において、データの取り込みであるデータ保管及び格納を行っている。従って、通信のやり直しがなく、時間を短縮できる。
【００５９】
（その他の実施形態）
本発明は上述した実施形態にのみ限定されるものではなく、次のように変形または拡張することができる。例えば、上述の第１実施形態では、検査設備に関わる通信について述べたが、それ以外にも、工程管理用のデータの送受信、工場内の製造設備相互間の通信等にも活用できることは勿論である。
【００６０】
また、シリアル伝送路は、既存の工場内ＬＡＮを利用してもよいし、シリアルであれば無線または光伝送路を利用してもよい。なお、上記一実施形態では、センター側の送信部の通信装置をマスタ通信装置にし、設備側の受信部の通信装置をスレーブ通信装置としたが、これは自由に切り替えることができる。
【００６１】
また、照合が一致した場合に、読取コマンドをスレーブ通信装置に送信するが、この読取コマンドは他のデータと共に送信してもよいし、読取コマンドのみの単独で送信してもよい。
【００６２】
また、照合の一致は、データ内の時分割されたフレーム（１からｎ個のビット列を含む）のすべてのビット（０または１の信号）が一致するかどうかを確認する必要は無く、特定の複数の照合用ビットが一致しているかどうかを確認して、照合するか否かを判断してもよい。
【符号の説明】
【００６３】
１  スレーブ通信装置
２  マスタ通信装置
３  入力データ
４  データ入力部
５  マスタ通信装置のシリアル通信部
６  シリアル伝送路
７  スレーブ通信装置のシリアル通信部
８  データ保存部
９  制御用のデータベースを格納するメモリ
１０  エコーバック出力部
１１  エコーバック比較部
【図１】
2012085222.tif 000003
【図２】
2012085222.tif 000004
【図３】
2012085222.tif 000005
【図４】
2012085222.tif 000006
【図５】
2012085222.tif 000007