(57)【要約】【課題】  何らかの原因で通信を離脱した１又は２以上の子局が復旧して通信可能な状態となった場合には、復旧した子局の台数に拘わらず、それらの子局を簡単な指令操作で通信に再加入させることができ、しかもそのような再加入機能を低コストに実現することができる。【解決手段】  所定の再加入指令が与えられるのに応答して、第１の記憶手段に記憶された通信対象子局リストと第２の記憶手段に記憶された各子局通信状態とを照合することにより、通信対象とされてはいるものの、「通信停止」状態とされている子局を特定し、それら特定された子局のそれぞれに対して、所定の手順を経て通信を再開させる。【選択図】  図１
2008097274.tif 000002
【特許請求の範囲】
【請求項１】
１台の親局と、複数台の子局とを、フィールドバスを介して結び、親局と各子局との間で、データの送受信を行うようにした機器制御用の通信システムにおいて、
親局には、
現在どの子局が通信対象子局とされているかを示す通信対象子局リストを記憶する第１の記憶手段と、
現在各子局が「通信中」、「通信停止」のいずれの状態にあるかを示す子局通信状態リストを記憶する第２の記憶手段と、
第１の記憶手段に記憶された通信対象子局リストを参照することにより、通信対象として設定された子局のそれぞれに対して、コマンドの送信とレスポンスの受信とを繰り返し実行しつつ、その間に、レスポンスが途絶えたときには、以後、その子局に対するコマンド送信を停止し、併せて、第２の記憶手段に記憶された子局通信状態リストの該当する子局の内容を「通信中」から「通信停止」へと書き替える通常時処理手段と、が含まれており、
子局のそれぞれには、
親局から送られてくるコマンドのうちで、自局宛のコマンドを受信解読して指示された処理を実行し、併せて、対応するレスポンスを親局へと送信するコマンド処理手段が含まれており、さらに
親局には、
所定の再加入指令が与えられるのに応答して、第１の記憶手段に記憶された通信対象子局リストと第２の記憶手段に記憶された子局通信状態リストとを照合することにより、通信対象とされてはいるものの、「通信停止」状態とされている子局を特定し、それら特定された子局のそれぞれに対して、所定の手順を経て通信を再開させ、併せて、第２の記憶手段に記憶された子局通信状態リストの該当する子局の内容を「通信停止」から「通信中」へと書き替える再加入時処理手段が含まれている、
ことを特徴とする機器制御用の通信システム。
【請求項２】
親局がビルディング・ブロック型ＰＬＣの通信親局ユニットであり、かつ各子局のそれぞれが、リモートＩ／Ｏユニットやリモート特殊機能ユニット等の各種子局ユニットである、ことを特徴とする請求項１に記載の機器制御用の通信システム。
【請求項３】
親局がビルディング・ブロック型ＰＬＣを構成するユニットの一つであり、さらに、前記再加入指令は、ビルディング・ブロック型ＰＬＣを構成するＣＰＵユニットが予めＣＰＵユニット内に格納されているユーザプログラムを実行することにより親局に与えられることを特徴とする請求項１に記載の機器制御用の通信システム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、１台の親局と、複数台の子局とを、フィールドバスを介して結び、親局と各子局との間で、データの送受信を行うようにした機器制御用の通信システムに関する。
【背景技術】
【０００２】
１台の親局と、複数台の子局とを、フィールドバスを介して結び、親局と各子局との間で、データの送受信を行うようにした機器制御用の通信システムは、従来より知られている（例えば、特許文献１参照）。
【０００３】
このような機器制御用の通信システムの基本構成図が図１０に示されている。同図に示されるように、この通信システムは、１台の親局１と、複数台の子局２−１〜２−５（＃１〜＃５は子局を特定するための番号である）等々を、フィールドバス３を介して結び、親局１と各子局２−１〜２−５との間で、データの送受信を行うように構成されている。
【０００４】
なお、親局１としては、それ自体に機器制御のための処理が組み込まれていて、機器の制御と通信との双方を担う場合と、機器制御のための処理については別の上位装置に組み込まれており、主として通信処理のみを担う場合とが含まれている。同様にして、子局２としても、それ自体に機器制御のための処理が組み込まれていて、機器の制御と通信との双方を担う場合と、機器制御のための処理については別の下位装置に組み込まれており、主として通信処理のみを担う場合とが含まれている。
【０００５】
親局１の内部メモリには、第１の領域と第２の領域とが設けられている。第１の領域には、現在どの子局が通信対象子局とされているかを示す通信対象子局リスト１４ａが記憶されており、第２の領域には現在各子局が「通信中」、「通信停止」のいずれの状態にあるかを示す子局通信状態リスト１４ｂが記憶されている。
【０００６】
通信システムの起動にあたって、親局１は、予め決められた起動時処理を実行する。すなわち、この起動時処理においては、親局１は、予め内部に記憶されている通信対象子局リスト１４ａにしたがい、登録されている子局のそれぞれ２−１〜２−５に対して所定の手順を経て通信を開始させ、併せて、親局１に記憶されている子局通信状態リスト１４ｂの該当する子局の内容を、「通信中」と書き替える。
【０００７】
通信システムの起動後にあっては、親局１は、予め決められた通常時処理を実行する。この通常時処理においては、親局１は、子局２−１〜２−５を特定する情報（子局のＩＤ番号等）を含んだ通信フレーム（コマンド）を子局に対して発行する。このとき、通信対象子局が複数存在する場合には、それらの子局の全てに対して通信フレームを順次に発行する。一方、子局２−１〜２−５の側では、親局１から送られてくる通信フレーム（コマンド）のうち、自局宛のものを選別して取得する。各子局は、自局を特定する情報を含めたレスポンスを親局１に返し、親局１は、その局を特定する情報に基づいて、通信対象の各子局からのレスポンスを取得する。
【０００８】
通信システムの起動後にあっては、親局は、通信中の各子局の状態（正常、異常）を監視する。すなわち、親局１は、各子局に対する送信に対して、各子局からのレスポンスが返ってきていること（各子局を特定する情報が含まれている受信データが取得できていること）を監視する。そして、通信対象となる子局からレスポンスが返ってくる限りは、その子局は正常なものと認識する。このとき、子局通信状態リスト１４ｂの該当する子局の内容は、「通信中」に維持される。
【０００９】
これに対して、子局の電源遮断や故障等により、この子局からのレスポンスが（例えば、ある一定期間）途絶えた状態が発生すると、親局１は、通信からその子局が離脱した状態であると認識して、規定の処理（例えば、異常時処理等）へと移行し、併せて、親局１に記憶されている子局通信状態リスト１４ｂの該当する子局の内容を、「通信中」から「通信停止」へと書き替える。
【００１０】
このように、通常時処理においては、親局１は、内部メモリに記憶された通信対象子局リスト１４ａを参照することにより、通信対象として設定された子局のそれぞれに対して、コマンドの送信とレスポンスの受信とを繰り返し実行しつつ、その間に、レスポンスが途絶えたときには、内部メモリに記憶された子局通信状態リスト１４ｂの該当する子局の内容を「通信中」から「通信停止」へと書き替える。
【００１１】
なお、子局を新規加入する場合には、例えば、所定のツールを使用することで、通信対象子局リストへの対象子局としての追加を行ったのち、通信システム全体の起動処理をやり直すこととなる。
【特許文献１】特開平６−１２４１０４号公報
【発明の開示】
【発明が解決しようとする課題】
【００１２】
ところで、電源遮断や故障等により通信から離脱された子局を通信再加入させるについては、従来より幾つかの方式が知られているが、いずれも、一長一短があり、十分な満足が得られていないのが現状である。
【００１３】
第１従来例における子局復帰動作を示す説明図が図１１に示されている。この第１従来例にあっては、通信から離脱された子局を通信に再加入させるため専用の仕組みは特に用意されてはいない。したがって、通信から離脱された子局を通信に再加入させるためには、通信システム全体を起動し直す必要がある。
【００１４】
この第１従来例によれば、通信から離脱された子局を通信に再加入させるため専用の仕組みを有しないことから、その分だけ開発コストを低減させることができる反面、通信から離脱された子局を通信に再加入させるためには、通信システム全体を起動し直す必要から、通信中の子局を一旦全て通信停止させねばならず、システム全体に与える影響が大きく、使い勝手が悪いと言う問題がある。
【００１５】
第２従来例における子局復帰動作を示す説明図が図１２に示されている。この第２従来例にあっては、通信から離脱された子局を通信に再加入させるために専用の仕組みが用意されている。すなわち、この第２従来例にあっては、通信から離脱された子局に対しては、その後も定期的に、所定のコマンド送信が試みられ、その子局からのレスポンスの有無か監視される。そして、離脱子局に対する定期的な監視により、レスポンスが再び返ってくる状態が検出されれば、自動的にその子局は通信に再加入される。
【００１６】
この第２従来例によれば、通信から離脱された子局は、電源投入や故障復旧により通信可能状態となれば、自動的に通信に再加入されるため、利用者からみれば手間がかからず、使い勝手が良好である反面、通信から離脱された子局に対しては、その後も定期的に、所定のコマンド送信を試みつつ、その子局からのレスポンスの有無を監視せねばならないことから、親局側の処理負荷が大きく又開発コストも大きいという問題がある。
【００１７】
第３従来例における子局復帰動作を示す説明図が図１３に示されている。この第３従来例にあっても、通信から離脱された子局を通信に再加入させるために専用の仕組みが用意されている。すなわち、この第３従来例にあっては、各子局のそれぞれ毎に、通信の再加入又は離脱を可能とする手段（子局＃１〜＃ｎ通信加入手段）が用意されており、それらの手段の１つを外部から選択することで、任意の離脱状態にある子局の通信を個別に再開させることが可能とされている。
【００１８】
この第３従来例によれば、任意の離脱状態にある子局の通信を個別に再開させることができる点で使い勝手が良好である反面、各子局のそれぞれ毎に、通信の再加入又は離脱を可能とする手段（子局＃１〜＃ｎ通信加入手段）を用意せねばならないことから、子局の数が８台、１６台、・・・６４台と言ったように増加すると、開発コストが増大すると言う問題がある。
【００１９】
この発明は、上述した従来の問題点に着目してなされたものであり、その目的とするところは、何らかの原因で通信を離脱した１又は２以上の子局が復旧して通信可能な状態となった場合には、復旧した子局の台数に拘わらず、それらの子局を簡単な指令操作で通信に再加入させることができ、しかもそのような再加入機能を低コストに実現することが可能な機器制御用の通信システムを提供することにある。
【００２０】
この発明のさらに他の目的並びに作用効果については、明細書の以下の記述を参照することにより、当業者であれば容易に理解されるであろう。
【課題を解決するための手段】
【００２１】
上述の課題は、つぎのような構成を有する機器制御用の通信システムにより解決することができる。
【００２２】
この機器制御用の通信システムは、１台の親局と、複数台の子局とを、フィールドバスを介して結び、親局と各子局との間で、データの送受信を行うように構成されている。
【００２３】
親局には、現在どの子局が通信対象子局とされているかを示す通信対象子局リストを記憶する第１の記憶手段と、現在各子局が「通信中」、「通信停止」のいずれの状態にあるかを示す子局通信状態リストを記憶する第２の記憶手段と、第１の記憶手段に記憶された通信対象子局リストを参照することにより、通信対象として設定された子局のそれぞれに対して、コマンドの送信とレスポンスの受信とを繰り返し実行しつつ、その間に、レスポンスが途絶えたときには、以後、その子局に対するコマンド送信を停止し、併せて、第２の記憶手段に記憶された子局通信状態リストの該当する子局の内容を「通信中」から「通信停止」へと書き替える通常時処理手段と、が含まれている。
【００２４】
一方、子局のそれぞれには、親局から送られてくるコマンドのうちで、自局宛のコマンドを受信解読して指示された処理を実行し、併せて、対応するレスポンスを親局へと送信するコマンド処理手段が含まれている。
【００２５】
親局には、さらに、所定の再加入指令が与えられるのに応答して、第１の記憶手段に記憶された通信対象子局リストと第２の記憶手段に記憶された子局通信状態リストとを照合することにより、通信対象とされてはいるものの、「通信停止」状態とされている子局を特定し、それら特定された子局のそれぞれに対して、所定の手順を経て通信を再開させ、併せて、第２の記憶手段に記憶された子局通信状態リストの該当する子局の内容を「通信停止」から「通信中」へと書き替える再加入時処理手段が含まれている。
【００２６】
このような構成によれば、第１の記憶手段に記憶された通信対象子局リストには、現在どの子局が通信対象子局とされているかが示されると共に、第２の記憶手段に記憶された子局通信状態リストは、いずれかの子局が通信離脱すれば、その子局に対応して自動的に「通信中」から「通信停止」へと書き替えられる。
【００２７】
したがって、何らかの原因で通信を離脱した１又は２以上の子局が復旧して通信可能な状態となったときに、親局に対して所定の再加入指令が与えられると、第１の記憶手段に記憶された通信対象子局リストと第２の記憶手段に記憶された子局通信状態リストとを照合することにより、通信対象とされてはいるものの、「通信停止」状態とされている子局が自動的に特定されて、それら特定された子局のそれぞれに対して、所定の手順を経て通信が再開される。
【００２８】
その結果、復旧した子局の台数に拘わらず、それら復旧した子局の全てを１つの指令操作で一括して通信に再加入させることができるから、使用者の使い勝手が向上する。
【００２９】
上記の通信システムにおいては、親局をビルディング・ブロック型ＰＬＣの通信親局ユニットとすると共に、かつ各子局のそれぞれを、リモートＩ／Ｏユニットやリモート特殊機能ユニット等の各種子局ユニットとしてもよい。
【００３０】
このような構成によれば、何らかの原因で通信を離脱した１又は２以上の子局ユニットが復旧して通信可能な状態となったときに、通信親局ユニットに対して所定の再加入指令が与えられると、第１の記憶手段に記憶された通信対象子局リストと第２の記憶手段に記憶された子局通信状態リストとを照合することにより、通信対象とされてはいるものの、「通信停止」状態とされている子局ユニットが自動的に特定されて、それら特定された子局ユニットのそれぞれに対して、所定の手順を経て通信が再開される。その結果、復旧した子局の台数に拘わらず、それら復旧した子局ユニットの全てを１つの指令操作で一括して通信に再加入させることができるから、使用者の使い勝手が向上する。
【００３１】
上記の通信システムにおいては、親局をビルディング・ブロック型ＰＬＣを構成するユニットの一つとすると共に、さらに、前記再加入指令を、ビルディング・ブロック型ＰＬＣを構成するＣＰＵユニットが予めＣＰＵユニット内に格納されているユーザプログラムを実行することにより親局に与えるようにしてもよい。
【００３２】
このような構成によれば、再加入指令を与えるための条件をユーザプログラムを介して様々に設定することができる。これを利用すれば、例えば、所定の押しボタンスイッチが操作されたとき、各種のセンサ等を介して一定の条件成立が判定されたとき等々に、ＰＬＣを構成するユニットの１つである親局に対して、再加入指令を与えることができる。
【００３３】
本発明を、多軸制御を行なう装置のコントローラとしてのビルディング・ブロック型のプログラマブル・コントローラ（以下、ＰＬＣと言う）に適用すると、親局は多軸制御のための機能を備えたモーション・コントロールユニットとして、又子局は、モータドライバとして構成することができる。なお、モーション・コントロールユニットとモータドライバは、フィールドバスを介して接続されている。また、モータドライバは、多軸制御の対象軸毎に設置されているモータを駆動するもので、モータ毎に設置されている。モーション・コントロールユニットは、フィールドバスを介して複数のモータドライバに指令を出し、モータの動作を制御することにより多軸制御を行なうものである。このとき、その装置のメンテナンスや故障修理等の状況下にあっては、子局である複数台のモータドライバは、全て電源が切られて通信離脱状態となっているのが通例である。
【００３４】
このような状態において、その装置のメンテナンスや故障修理が完了して、各モータドライバに電源が投入され、その状態において、モーション・コントロールユニットに対して、その上位装置であるＣＰＵユニットから所定の再加入指令が与えられると、今まで通信離脱状態にあった一連のモータドライバは全て同時に通信再加入されるから、その装置の制御に供されているモータドライバが、同時に動作可能な状態となり、好都合である。
【００３５】
また、この機器制御用の通信システムにあっては、通信離脱された子局に関する通信再加入は、親局に対する再加入指令を待って行うものであって、自動的に再加入するものではないから、離脱中の子局の状態を監視する必要もない。したがって、この通信システムにあっては、前述の第２従来例のように、離脱中の子局の監視のために、処理負荷が増大することもない。
【００３６】
さらに、この機器制御用の通信ユニットにあっては、複数の子局を一括して通信再開させつつも、再加入されるべき子局の指定は、第１の記憶手段に記憶された通信対象子局リストと第２の記憶手段に記憶された子局通信状態リストとを照合することにより、自動的に行われるから、通信再開指令そのものについては通信再加入される子局の数に拘わらず１つで済むこととなり、前述の第３従来例のように、子局の台数に応じて開発コストが増加することもない。
【発明の効果】
【００３７】
この発明によれば、何らかの原因で通信を離脱した１又は２以上の子局が復旧して通信可能な状態となった場合には、復旧した子局の台数に拘わらず、それらの子局を簡単な指令操作で通信に再加入させることができ、しかもそのような再加入機能を低コストに実現することが可能な機器制御用の通信システムを提供することができる。
【発明を実施するための最良の形態】
【００３８】
以下に、この発明に係る機器制御用の通信システムの好適な実施の一形態を添付図面を参照しつつ詳細に説明する。
【００３９】
本発明システムを構成する親局、子局の機能構成図が図１に示されている。同図に示されるように、この通信システムは、１台の親局１と、複数台の子局２−１，２−２，・・・とを、フィールドバス３を介して結び、親局１と各子局２−１，２−２，・・・との間で、データの送受信を行うものである。
【００４０】
具体的な通信手順の一例としては、図３に示されるように、親局が各子局とのコマンド・レスポンスを順に行う例を挙げることができる。
【００４１】
親局１は、マイクロプロセッサを主体して構成される通信処理演算部１１と、上位装置との間で情報のやり取りを行うためのインタフェース部１２と、フィールドバス３を介して各子局との間で情報のやり取りを行うための通信インタフェース１３と、記憶装置１４とを含んでいる。記憶装置１４は第１の記憶領域と第２の記憶領域とを有する。第１の記憶領域には、現在どの子局が通信対象子局とされているかを示す通信対象子局リスト１４ａが記憶されている。第２の記憶領域には、現在各子局が「通信中」、「通信未加入」、「通信停止」のいずれの状態にあるかを示す子局通信状態リストが記憶されている。図示の親局１は、機器制御機能の組み込まれた上位装置からの指令を受けて、主として、子局２との間の通信機能を担うように構成されている。ここで、「通信未加入」の状態とは、通信対象子局とされていない子局の状態を表わしている。なお、「通信未加入」の状態を「通信停止」の状態に含めることにより、子局の状態を「通信中」と「通信停止」の二つの状態にしても良い。
【００４２】
一方、各子局２−１，２−２，・・・の側には、マイクロプロセッサを主体として構成される子局側処理・演算部２１と、その子局に固有なＩＤ番号等の子局識別情報を設定するための子局識別設定手段２２と、フィールドバス３を介して親局１との間で情報のやり取りを行うための通信インタフェース２３とが含まれている。図示の子局２−１，２−２，・・・は、親局１との間の通信機能に加えて、機器制御機能をも担うように構成されている。
【００４３】
すなわち、各子局２−１，２−２，・・・は、それぞれ自局に割り当てられた機器制御機能を果たすと共に、それらの子局は、同時に、親局を介して、上位装置により統括制御されているのである。
【００４４】
この通信システムの起動にあたって、親局１は、予め決められた起動時処理を実行する。すなわち、この起動時処理においては、親局１は、予め内部に記憶されている通信対象子局リスト１４ａにしたがい、登録されている子局のそれぞれ２−１，２−２，・・・に対して所定の手順を経て通信を開始させ、併せて、親局１に記憶されている子局通信状態リスト１４ｂの該当する子局の内容を、「通信中」に書き替える。
【００４５】
通信システムの起動後にあっては、親局１は、予め決められた通常時処理を実行する。この通常時処理においては、親局１は、子局２−１，２−２，・・・を特定する情報（子局のＩＤ番号等）を含んだ通信フレーム（コマンド）を子局に対して発行する。このとき、通信対象子局が複数存在する場合には、それらの子局の全てに対して通信フレームを順次に発行する。一方、子局２−１〜２−５の側では、親局１から送られてくる通信フレーム（コマンド）のうち、自局宛のものを選別して取得する。各子局は、自局を特定する情報を含めたレスポンスを親局１に返し、親局１は、その局を特定する情報に基づいて、通信対象の各子局からのレスポンスを取得する。
【００４６】
通信システムの起動後にあっては、親局は、通信中の各子局の状態（正常、異常）を監視する。すなわち、親局１は、各子局に対する送信に対して、各子局からのレスポンスが返ってきていること（各子局を特定する情報が含まれている受信データが取得できていること）を監視する。そして、通信対象となる子局からレスポンスが返ってくる限りは、その子局は正常なものと認識する。このとき、子局通信状態リスト１４ｂの該当する子局の内容は、「通信中」に維持される。
【００４７】
これに対して、子局の電源遮断や故障等により、この子局からのレスポンスが（例えば、ある一定期間）途絶えた状態が発生すると、親局１は、通信からその子局が離脱した状態であると認識して、規定の処理（例えば、異常時処理等）へと移行し、それ以降、その子局に対する送信処理を中断し、併せて、親局１に記憶されている子局通信状態リスト１４ｂの該当する子局の内容を、「通信中」から「通信停止」へと書き替える。
【００４８】
このように、通常時処理においては、親局１は、内部メモリに記憶された通信対象子局リスト１４ａを参照することにより、通信対象として設定された子局のそれぞれに対して、コマンドの送信とレスポンスの受信とを繰り返し実行しつつ、その間に、レスポンスが途絶えたときには、内部メモリに記憶された子局通信状態リスト１４ｂの該当する子局の内容を「通信中」から「通信停止」へと書き替える。
【００４９】
なお、子局を新規加入する場合には、例えば、所定のツールを使用することで、通信対象子局リストへの対象子局としての追加を行ったのち、通信システム全体の起動処理をやり直すこととなる。
【００５０】
次に、本発明の要部であるところの子局復帰時の処理について説明する。本発明における子局復帰動作（子局再加入動作）を示す説明図が、図２に示されている。
【００５１】
同図に示されるように、親局１には、上位装置から所定の再加入指令が与えられるのに応答して、記憶装置１４の第１記憶領域（第１の記憶手段）に記憶された通信対象子局リスト１４ａと第２記憶領域（第２の記憶手段）に記憶された子局通信状態リスト１４ｂとを照合することにより、通信対象とされてはいるものの、「通信停止」状態とされている子局（＃５）を特定し、それら特定された子局（＃５）のそれぞれに対して、所定の手順を経て通信を再開させ、併せて、第２記憶領域に記憶された子局通信状態リスト１４ｂの該当する子局の内容（＃５）を「通信停止」から「通信中」へと書き替える再加入時処理手段が含まれている。
【００５２】
このような再加入時処理手段を実現するための処理を含む親局側の処理を示すフローチャートが図４に示されている。先ず、処理の全体を概略的に説明すると、親局１は上位装置からコマンド発行要求が到来するのを待機し（ステップ４０８）、コマンド発行要求が到来しない場合には（ステップ４０８ＮＯ）、不動作コマンド（Ｎｏ  Ｏｐｅｒａｔｉｏｎコマンド）を生成する一方（ステップ４１０）、コマンド発行要求が到来した場合には（ステップ４０８ＹＥＳ）、指令解析・コマンド生成処理（ステップ４０９）を実行する。
【００５３】
こうして生成されたコマンドは、コマンド発行タイミングの到来を待って（ステップ４０３ＹＥＳ）、該当する子局へと送信される（ステップ４０４）。子局からのレスポンスが到来した場合には（ステップ４０１ＹＥＳ）、そのレスポンスが取得され（ステップ４０２）、その後、取得されたレスポンスに関する処理（ステップ４０５）が実行される。
【００５４】
以上の処理の流れの中で、所定時間以上に亘りレスポンスが到来しないこと等により通信異常ありとの判定が行われると（ステップ４０６ＹＥＳ）、該当子局に関する規定の異常処理の実行、並びに、通信離脱処理が実行され（ステップ４０７）、該当子局に関する子局通信状態リストの内容は、「通信中」から「通信停止」へと書き替えられ、以後、その子局に対する送信処理は中断される。
【００５５】
一方、子局側の処理を示すフローチャートが図６に示されている。子局２は、親局１から何らかのコマンドが到来するのを待って（ステップ６０１ＮＯ）、そのコマンドを取得する（ステップ６０２）。次に、ステップ６０２で取得したコマンドの処理が可能かどうか、つまり、現在、処理中のコマンドが有るかどうかを判定する（ステップ６０３）。処理中のコマンドがない場合（ステップ６０３ＮＯ）、つまり、ステップ６０２で取得したコマンドの処理が可能な場合は、ステップ６０７へ進み取得したコマンドを解析する。そのコマンドが実行可能であれば（ステップ６０８ＹＥＳ）、そのコマンドを処理すると共に（ステップ６０４）、処理が完了するのを待って（ステップ６０５ＹＥＳ）、完了レスポンスを生成し（ステップ６０６）、生成したレスポンスを親局へ送信する（ステップ６１０）。これに対して、解析されたコマンドが実行不可（ステップ６０８ＮＯ）、又はコマンド実行未了（ステップ６０５ＮＯ）の場合には、処理中レスポンスを生成し（ステップ６０９）、生成したレスポンスを親局へ送信する（ステップ６１０）。
【００５６】
次に、図４に戻って、本発明の要部である再加入時処理手段を実現するための処理について説明する。指令解析・コマンド生成処理（ステップ４０９）において、上位装置から再加入要求の到来が判定されると（ステップ４０９１ＹＥＳ）、続いて離脱子局に関する通信再加入コマンドの生成処理（ステップ４０９２）が実行される。
【００５７】
離脱子局の通信の通信再加入コマンドの生成処理の詳細フローチャートが図５に示されている。同図に示されるように、この通信再加入コマンドの生成処理においては、先ず、通信対象子局リスト（図２の１４ａ）の先頭より通信対象である子局の識別番号（ＩＤ）を取得する（ステップ５０１）、取得したＩＤに該当する子局の通信状態を子局通信状態リスト（図２の１４ｂ）より取得する（ステップ５０２）。取得した通信状態が「通信停止」の場合（ステップ５０３ＹＥＳ）は、該当する子局に対する通信再加入コマンドを生成し、所定のメモリに格納する（ステップ５０４）。次に、通信対象子局リスト中において他に通信対象である子局があるかどうか確認し（ステップ５０５）、なければ終了する。他に通信対象である子局がある場合（ステップ５０５ＹＥＳ）は、通信対象子局リスト中の次の通信対象である子局のＩＤを取得し（ステップ５０６）、ステップ５０２へ戻る。また、ステップ５０３において、取得した通信状態が「通信停止」でない場合はステップ５０５へ進む。これにより、通信対象であるが、「通信停止」である全子局について、通信再加入コマンドが生成されることとなる。そして、こうして生成された通信再加入コマンドは、図４に戻って、コマンド発行タイミングの到来を待って（ステップ４０３ＹＥＳ）、該当する子局に宛てて送信される（ステップ４０４）。
【００５８】
前述の第２従来例における親局側の処理を示すフローチャートが図７に示されている。図４と図７との比較から明らかなように、第２従来例の場合には、離脱した子局の自動再加入のために、波線で囲まれている部分の処理（ステップ７０１〜７０４）により、離脱した子局に対しても、その後、所定の再加入確認タイミングが到来する毎に（ステップ７０１ＹＥＳ）、離脱子局のレスポンスチェック処理（ステップ７０２）を実行すると共に、レスポンスが検出される場合には（ステップ７０３ＹＥＳ）、離脱子局の通信再加入処理（ステップ７０４）を実行せねばならず、本発明の場合に比べて、マイクロプロセッサの処理負荷が大きく、また開発コストもその分だけ大きいことが理解されるであろう。
【００５９】
最後に、本発明が適用されたＰＬＣシステムの構成図が図８に示されている。このＰＬＣシステムは、ビルディング・ブロック型のＰＬＣ５と複数台の子局ユニット６−１〜６−Ｎとを含んで構成される。
【００６０】
ＰＬＣ５は、周知のように、バックプレーン上に敷設されたＩ／Ｏバスに対して、それぞれコネクタを介して、ＣＰＵユニット５１、通信親局ユニット５２、及びその他のユニット５３（入出力ユニット等々）を装着して一体化することで構成されている。
【００６１】
通信親局ユニット５２と複数台の子局ユニット６−１〜６−Ｎとの間は、フィールドバス７を介してディジーチェイン接続されており、通信手順としては、図３に示されるように、親局が各子局とコマンド／レスポンスを順に行なう例が採用されている。
【００６２】
ＣＰＵユニット５１内には、図中ラダー図で示されるように、再加入トリガに相当する入力接点と再加入ビットに相当するコイル出力との直列接続として表記されるユーザプログラムが組み込まれている。
【００６３】
このユーザプログラムが実行された際に、再加入トリガに相当する入力接点がＯＦＦからＯＮに変化すると、再加入ビットに相当するコイル出力もＯＦＦからＯＮに変化する（図中［１］参照）。この再加入ビットに相当するコイル出力は、ＣＰＵユニット５１の入出力リフレッシュ処理により、入出力メモリから読み出されて、共有メモリ８の所定領域に書き込まれる。こうして共有メモリ８の所定領域に書き込まれたコイル出力は、適当なタイミングで通信親局ユニット５２から読み出される。これにより、ＣＰＵユニット５１から通信親局ユニット５２へと再加入要求が伝えられる（図中［２］参照）。
【００６４】
親局として機能する通信親局ユニット内には、各子局のＩＤに対応する番号欄とそのＩＤ別に当該子局が通信対象の子局であるかどうかを登録する登録欄を有する通信対象子局リストと、各子局のＩＤに対応する番号欄とそのＩＤ別に当該子局の通信状態を格納する通信状態欄を有する子局通信状態リストが格納されている。この例では、通信対象子局リストと子局通信状態リストを異なるリスト（テーブル）として構成する場合を示した。しかし、これに限らず、通信対象子局リストと子局通信状態リストを合体させたテーブルとして構成しても良い。
例えば、各子局のＩＤに対応する番号欄と、登録欄と、通信状態欄を備えたテーブルとして構成しても良い。
【００６５】
通信親局ユニット５２は、再加入要求が与えられるのに応答して、通信対象子局リストと子局通信状態リストとを照合することにより、通信対象とされてはいるものの、「通信停止」状態とされている子局を特定し（図中［３］参照）、それら特定された子局のそれぞれに対して、所定の手順を経て通信を再開させ（図中［４］参照）、併せて、子局通信状態リストの該当する子局の内容を「通信停止」を示す「ＮＧ」から「通信中」を示す「ＯＫ」へと書き替える。これにより、その時点で、通信対象とされてはいるものの、通信停止状態にあった子局の全てが、一括して、通信再加入されることとなる。以上の一連の流れをラダープログラムから見たシーケンス例を示すタイムチャートが図９に示されている。同図に示されるように、再加入トリガのＯＦＦからＯＮへの変化、再加入ビットのＯＦＦからＯＮへの変化、親局ユニットビジーフラグのＯＦＦからＯＮへの変化と続き、最後に、子局ユニット＃２の通信が再開されることとなる。
【００６６】
このＰＬＣシステムにおいて、例えばメンテナンス等の場合には、一連の子局ユニットは全て電源を断たれた状態にある。この状態からその装置の運転を開始すべく、各子局ユニットの電源が投入されたのち、ＣＰＵユニット５１から通信親局ユニット５２へと再加入要求が発せられると、一連の子局ユニットは一括して同時に通信再加入されることとなる。つまり、再加入要求が与えられれば、対象となる複数の子局ユニットを特定せずとも、それらの子局ユニットは一括して通信再開される。しかも、複数の子局ユニットの起動のために必要な共有メモリ上の領域は１ビットあれば済むから、子局ユニットが６４台存在するような場合にも、共有メモリ８上に大きな容量を確保する必要もない。
【００６７】
以上の実施形態の説明でも明らかなように、本発明によれば、第１の記憶手段に記憶された「通信対象子局リスト」には、現在どの子局が通信対象子局とされているかが示されると共に、第２の記憶手段に記憶された「各子局通信状態」は、いずれかの子局が通信離脱すれば、その子局に対応して自動的に「通信中」から「通信停止」へと書き替えられる。
【００６８】
したがって、何らかの原因で通信を離脱した１又は２以上の子局が復旧して通信可能な状態となったときに、親局に対して所定の再加入指令が与えられると、第１の記憶手段に記憶された通信対象子局リストと第２の記憶手段に記憶された各子局通信状態とを照合することにより、通信対象とされてはいるものの、「通信停止」状態とされている子局が自動的に特定されて、それら特定された子局のそれぞれに対して、所定の手順を経て通信が再開される。
【００６９】
その結果、復旧した子局の台数に拘わらず、それら復旧した子局の全てを１つの指令操作で一括して通信に再加入させることができるから、使用者の使い勝手が向上する。また、本発明を多軸制御を行なう装置のコントローラしてビルディング・ブロック型のプログラマブル・コントローラ（以下、ＰＬＣと言う）に適用すると、親局は多軸制御のための機能を備えたモーション・コントロールユニットとして、又子局は、モータドライバとして構成することができる。このとき、その装置のメンテナンスや故障修理等の状況下にあっては、子局である複数台のモータドライバは、全て電源が切られて通信離脱状態となっているのが通例である。
【００７０】
このような状態において、その装置のメンテナンスや故障修理が完了して、各モータドライバに電源が投入され、その状態において、モーション・コントロールユニットに対して、その上位装置であるＣＰＵユニットから所定の再加入指令が与えられると、今まで通信離脱状態にあった一連のモータドライバは全て同時に通信再加入されるから、その装置の制御に供されているモータドライバの全てが、同時に動作可能な状態となり、好都合である。
【００７１】
また、この機器制御用の通信システムにあっては、通信離脱された子局に関する通信再加入は、親局に対する再加入指令を待って行うものであって、自動的に再加入するものではないから、離脱中の子局の状態を監視する必要もない。したがって、この通信システムにあっては、前述の第２従来例のように、離脱中の子局の監視のために、処理負荷が増大することもない。
【００７２】
さらに、この機器制御用の通信ユニットにあっては、複数の子局を一括して通信再開させつつも、再加入されるべき子局の指定は、第１の記憶手段に記憶された通信対象子局リストと第２の記憶手段に記憶された各子局通信状態とを照合することにより、自動的に行われるから、通信再開指令そのものについては通信再加入される子局の数に拘わらず１つで済むこととなり、前述の第３従来例のように、子局の台数に応じて開発コストが増加することもない。
【産業上の利用可能性】
【００７３】
この発明によれば、何らかの原因で通信を離脱した１又は２以上の子局が復旧して通信可能な状態となった場合には、復旧した子局の台数に拘わらず、それらの子局を簡単な指令操作で通信に再加入させることができ、しかもそのような再加入機能を低コストに実現することが可能な機器制御用の通信システムを提供することができる。
【図面の簡単な説明】
【００７４】
【図１】本発明システムを構成する親局、子局の機能構成図である。
【図２】本発明における子局復帰動作を示す説明図である。
【図３】各子局とのコマンド・レスポンスを順に行う例を示す模式的説明図である。
【図４】本発明における親局側の処理を示すフローチャートである。
【図５】離脱子局の通信再加入コマンドの生成処理の詳細フローチャートである。
【図６】本発明における子局側の処理を示すフローチャートである。
【図７】第２従来例における親局側の処理を示すフローチャートである。
【図８】本発明が適用されたＰＬＣシステムの構成図である。
【図９】ラダープログラムから見たシーケンス例を示すタイムチャートである。
【図１０】本発明の前提となる１台の親局と複数台の子局で構成される通信システムの基本構成図である。
【図１１】第１従来例における子局復帰動作を示すフローチャートである。
【図１２】第２従来例における子局復帰動作を示すフローチャートである。
【図１３】第３従来例における子局復帰動作を示すフローチャートである。
【符号の説明】
【００７５】
１                  親局
２−１〜２−ｎ      子局
３                  フィールドバス
５                  プログラマブル・コントローラ（ＰＬＣ）
６−１〜６−Ｎ      子局ユニット
７                  フィールドバス
８                  共有メモリ
１１                通信処理演算部
１２                上位装置とのインタフェース（Ｉ／Ｆ）
１３                通信インタフェース（Ｉ／Ｆ）
１４                記憶装置
１４ａ              通信対象子局リスト
１４ｂ              子局通信状態リスト
２１                子局側処理・演算部
２２                子局識別設定手段
２３                通信インタフェース
５１                ＣＰＵユニット
５２                通信親局ユニット
５３                その他のユニット
【図１】
2008097274.tif 000003
【図２】
2008097274.tif 000004
【図３】
2008097274.tif 000005
【図４】
2008097274.tif 000006
【図５】
2008097274.tif 000007
【図６】
2008097274.tif 000008
【図７】
2008097274.tif 000009
【図８】
2008097274.tif 000010
【図９】
2008097274.tif 000011
【図１０】
2008097274.tif 000012
【図１１】
2008097274.tif 000013
【図１２】
2008097274.tif 000014
【図１３】
2008097274.tif 000015