1台の親局と、複数台の子局とを、フィールドバスを介して結び、親局と各子局との間で、データの送受信を行うようにした機器制御用の通信システムは、従来より知られている(例えば、特許文献1参照)。
このような機器制御用の通信システムの基本構成図が図10に示されている。同図に示されるように、この通信システムは、1台の親局1と、複数台の子局2−1〜2−5(#1〜#5は子局を特定するための番号である)等々を、フィールドバス3を介して結び、親局1と各子局2−1〜2−5との間で、データの送受信を行うように構成されている。
なお、親局1としては、それ自体に機器制御のための処理が組み込まれていて、機器の制御と通信との双方を担う場合と、機器制御のための処理については別の上位装置に組み込まれており、主として通信処理のみを担う場合とが含まれている。同様にして、子局2としても、それ自体に機器制御のための処理が組み込まれていて、機器の制御と通信との双方を担う場合と、機器制御のための処理については別の下位装置に組み込まれており、主として通信処理のみを担う場合とが含まれている。
親局1の内部メモリには、第1の領域と第2の領域とが設けられている。第1の領域には、現在どの子局が通信対象子局とされているかを示す通信対象子局リスト14aが記憶されており、第2の領域には現在各子局が「通信中」、「通信停止」のいずれの状態にあるかを示す子局通信状態リスト14bが記憶されている。
通信システムの起動にあたって、親局1は、予め決められた起動時処理を実行する。すなわち、この起動時処理においては、親局1は、予め内部に記憶されている通信対象子局リスト14aにしたがい、登録されている子局のそれぞれ2−1〜2−5に対して所定の手順を経て通信を開始させ、併せて、親局1に記憶されている子局通信状態リスト14bの該当する子局の内容を、「通信中」と書き替える。
通信システムの起動後にあっては、親局1は、予め決められた通常時処理を実行する。この通常時処理においては、親局1は、子局2−1〜2−5を特定する情報(子局のID番号等)を含んだ通信フレーム(コマンド)を子局に対して発行する。このとき、通信対象子局が複数存在する場合には、それらの子局の全てに対して通信フレームを順次に発行する。一方、子局2−1〜2−5の側では、親局1から送られてくる通信フレーム(コマンド)のうち、自局宛のものを選別して取得する。各子局は、自局を特定する情報を含めたレスポンスを親局1に返し、親局1は、その局を特定する情報に基づいて、通信対象の各子局からのレスポンスを取得する。
通信システムの起動後にあっては、親局は、通信中の各子局の状態(正常、異常)を監視する。すなわち、親局1は、各子局に対する送信に対して、各子局からのレスポンスが返ってきていること(各子局を特定する情報が含まれている受信データが取得できていること)を監視する。そして、通信対象となる子局からレスポンスが返ってくる限りは、その子局は正常なものと認識する。このとき、子局通信状態リスト14bの該当する子局の内容は、「通信中」に維持される。
これに対して、子局の電源遮断や故障等により、この子局からのレスポンスが(例えば、ある一定期間)途絶えた状態が発生すると、親局1は、通信からその子局が離脱した状態であると認識して、規定の処理(例えば、異常時処理等)へと移行し、併せて、親局1に記憶されている子局通信状態リスト14bの該当する子局の内容を、「通信中」から「通信停止」へと書き替える。
このように、通常時処理においては、親局1は、内部メモリに記憶された通信対象子局リスト14aを参照することにより、通信対象として設定された子局のそれぞれに対して、コマンドの送信とレスポンスの受信とを繰り返し実行しつつ、その間に、レスポンスが途絶えたときには、内部メモリに記憶された子局通信状態リスト14bの該当する子局の内容を「通信中」から「通信停止」へと書き替える。
なお、子局を新規加入する場合には、例えば、所定のツールを使用することで、通信対象子局リストへの対象子局としての追加を行ったのち、通信システム全体の起動処理をやり直すこととなる。
特開平6−124104号公報
ところで、電源遮断や故障等により通信から離脱された子局を通信再加入させるについては、従来より幾つかの方式が知られているが、いずれも、一長一短があり、十分な満足が得られていないのが現状である。
第1従来例における子局復帰動作を示す説明図が図11に示されている。この第1従来例にあっては、通信から離脱された子局を通信に再加入させるため専用の仕組みは特に用意されてはいない。したがって、通信から離脱された子局を通信に再加入させるためには、通信システム全体を起動し直す必要がある。
この第1従来例によれば、通信から離脱された子局を通信に再加入させるため専用の仕組みを有しないことから、その分だけ開発コストを低減させることができる反面、通信から離脱された子局を通信に再加入させるためには、通信システム全体を起動し直す必要から、通信中の子局を一旦全て通信停止させねばならず、システム全体に与える影響が大きく、使い勝手が悪いと言う問題がある。
第2従来例における子局復帰動作を示す説明図が図12に示されている。この第2従来例にあっては、通信から離脱された子局を通信に再加入させるために専用の仕組みが用意されている。すなわち、この第2従来例にあっては、通信から離脱された子局に対しては、その後も定期的に、所定のコマンド送信が試みられ、その子局からのレスポンスの有無か監視される。そして、離脱子局に対する定期的な監視により、レスポンスが再び返ってくる状態が検出されれば、自動的にその子局は通信に再加入される。
この第2従来例によれば、通信から離脱された子局は、電源投入や故障復旧により通信可能状態となれば、自動的に通信に再加入されるため、利用者からみれば手間がかからず、使い勝手が良好である反面、通信から離脱された子局に対しては、その後も定期的に、所定のコマンド送信を試みつつ、その子局からのレスポンスの有無を監視せねばならないことから、親局側の処理負荷が大きく又開発コストも大きいという問題がある。
第3従来例における子局復帰動作を示す説明図が図13に示されている。この第3従来例にあっても、通信から離脱された子局を通信に再加入させるために専用の仕組みが用意されている。すなわち、この第3従来例にあっては、各子局のそれぞれ毎に、通信の再加入又は離脱を可能とする手段(子局#1〜#n通信加入手段)が用意されており、それらの手段の1つを外部から選択することで、任意の離脱状態にある子局の通信を個別に再開させることが可能とされている。
この第3従来例によれば、任意の離脱状態にある子局の通信を個別に再開させることができる点で使い勝手が良好である反面、各子局のそれぞれ毎に、通信の再加入又は離脱を可能とする手段(子局#1〜#n通信加入手段)を用意せねばならないことから、子局の数が8台、16台、・・・64台と言ったように増加すると、開発コストが増大すると言う問題がある。
この発明は、上述した従来の問題点に着目してなされたものであり、その目的とするところは、何らかの原因で通信を離脱した1又は2以上の子局が復旧して通信可能な状態となった場合には、復旧した子局の台数に拘わらず、それらの子局を簡単な指令操作で通信に再加入させることができ、しかもそのような再加入機能を低コストに実現することが可能な機器制御用の通信システムを提供することにある。
この発明のさらに他の目的並びに作用効果については、明細書の以下の記述を参照することにより、当業者であれば容易に理解されるであろう。
上述の課題は、つぎのような構成を有する機器制御用の通信システムにより解決することができる。
この機器制御用の通信システムは、1台の親局と、複数台の子局とを、フィールドバスを介して結び、親局と各子局との間で、データの送受信を行うように構成されている。
親局には、現在どの子局が通信対象子局とされているかを示す通信対象子局リストを記憶する第1の記憶手段と、現在各子局が「通信中」、「通信停止」のいずれの状態にあるかを示す子局通信状態リストを記憶する第2の記憶手段と、第1の記憶手段に記憶された通信対象子局リストを参照することにより、通信対象として設定された子局のそれぞれに対して、コマンドの送信とレスポンスの受信とを繰り返し実行しつつ、その間に、レスポンスが途絶えたときには、以後、その子局に対するコマンド送信を停止し、併せて、第2の記憶手段に記憶された子局通信状態リストの該当する子局の内容を「通信中」から「通信停止」へと書き替える通常時処理手段と、が含まれている。
一方、子局のそれぞれには、親局から送られてくるコマンドのうちで、自局宛のコマンドを受信解読して指示された処理を実行し、併せて、対応するレスポンスを親局へと送信するコマンド処理手段が含まれている。
親局には、さらに、所定の再加入指令が与えられるのに応答して、第1の記憶手段に記憶された通信対象子局リストと第2の記憶手段に記憶された子局通信状態リストとを照合することにより、通信対象とされてはいるものの、「通信停止」状態とされている子局を特定し、それら特定された子局のそれぞれに対して、所定の手順を経て通信を再開させ、併せて、第2の記憶手段に記憶された子局通信状態リストの該当する子局の内容を「通信停止」から「通信中」へと書き替える再加入時処理手段が含まれている。
このような構成によれば、第1の記憶手段に記憶された通信対象子局リストには、現在どの子局が通信対象子局とされているかが示されると共に、第2の記憶手段に記憶された子局通信状態リストは、いずれかの子局が通信離脱すれば、その子局に対応して自動的に「通信中」から「通信停止」へと書き替えられる。
したがって、何らかの原因で通信を離脱した1又は2以上の子局が復旧して通信可能な状態となったときに、親局に対して所定の再加入指令が与えられると、第1の記憶手段に記憶された通信対象子局リストと第2の記憶手段に記憶された子局通信状態リストとを照合することにより、通信対象とされてはいるものの、「通信停止」状態とされている子局が自動的に特定されて、それら特定された子局のそれぞれに対して、所定の手順を経て通信が再開される。
その結果、復旧した子局の台数に拘わらず、それら復旧した子局の全てを1つの指令操作で一括して通信に再加入させることができるから、使用者の使い勝手が向上する。
上記の通信システムにおいては、親局をビルディング・ブロック型PLCの通信親局ユニットとすると共に、かつ各子局のそれぞれを、リモートI/Oユニットやリモート特殊機能ユニット等の各種子局ユニットとしてもよい。
このような構成によれば、何らかの原因で通信を離脱した1又は2以上の子局ユニットが復旧して通信可能な状態となったときに、通信親局ユニットに対して所定の再加入指令が与えられると、第1の記憶手段に記憶された通信対象子局リストと第2の記憶手段に記憶された子局通信状態リストとを照合することにより、通信対象とされてはいるものの、「通信停止」状態とされている子局ユニットが自動的に特定されて、それら特定された子局ユニットのそれぞれに対して、所定の手順を経て通信が再開される。その結果、復旧した子局の台数に拘わらず、それら復旧した子局ユニットの全てを1つの指令操作で一括して通信に再加入させることができるから、使用者の使い勝手が向上する。
上記の通信システムにおいては、親局をビルディング・ブロック型PLCを構成するユニットの一つとすると共に、さらに、前記再加入指令を、ビルディング・ブロック型PLCを構成するCPUユニットが予めCPUユニット内に格納されているユーザプログラムを実行することにより親局に与えるようにしてもよい。
このような構成によれば、再加入指令を与えるための条件をユーザプログラムを介して様々に設定することができる。これを利用すれば、例えば、所定の押しボタンスイッチが操作されたとき、各種のセンサ等を介して一定の条件成立が判定されたとき等々に、PLCを構成するユニットの1つである親局に対して、再加入指令を与えることができる。
本発明を、多軸制御を行なう装置のコントローラとしてのビルディング・ブロック型のプログラマブル・コントローラ(以下、PLCと言う)に適用すると、親局は多軸制御のための機能を備えたモーション・コントロールユニットとして、又子局は、モータドライバとして構成することができる。なお、モーション・コントロールユニットとモータドライバは、フィールドバスを介して接続されている。また、モータドライバは、多軸制御の対象軸毎に設置されているモータを駆動するもので、モータ毎に設置されている。モーション・コントロールユニットは、フィールドバスを介して複数のモータドライバに指令を出し、モータの動作を制御することにより多軸制御を行なうものである。このとき、その装置のメンテナンスや故障修理等の状況下にあっては、子局である複数台のモータドライバは、全て電源が切られて通信離脱状態となっているのが通例である。
このような状態において、その装置のメンテナンスや故障修理が完了して、各モータドライバに電源が投入され、その状態において、モーション・コントロールユニットに対して、その上位装置であるCPUユニットから所定の再加入指令が与えられると、今まで通信離脱状態にあった一連のモータドライバは全て同時に通信再加入されるから、その装置の制御に供されているモータドライバが、同時に動作可能な状態となり、好都合である。
また、この機器制御用の通信システムにあっては、通信離脱された子局に関する通信再加入は、親局に対する再加入指令を待って行うものであって、自動的に再加入するものではないから、離脱中の子局の状態を監視する必要もない。したがって、この通信システムにあっては、前述の第2従来例のように、離脱中の子局の監視のために、処理負荷が増大することもない。
さらに、この機器制御用の通信ユニットにあっては、複数の子局を一括して通信再開させつつも、再加入されるべき子局の指定は、第1の記憶手段に記憶された通信対象子局リストと第2の記憶手段に記憶された子局通信状態リストとを照合することにより、自動的に行われるから、通信再開指令そのものについては通信再加入される子局の数に拘わらず1つで済むこととなり、前述の第3従来例のように、子局の台数に応じて開発コストが増加することもない。
この発明によれば、何らかの原因で通信を離脱した1又は2以上の子局が復旧して通信可能な状態となった場合には、復旧した子局の台数に拘わらず、それらの子局を簡単な指令操作で通信に再加入させることができ、しかもそのような再加入機能を低コストに実現することが可能な機器制御用の通信システムを提供することができる。
以下に、この発明に係る機器制御用の通信システムの好適な実施の一形態を添付図面を参照しつつ詳細に説明する。
本発明システムを構成する親局、子局の機能構成図が図1に示されている。同図に示されるように、この通信システムは、1台の親局1と、複数台の子局2−1,2−2,・・・とを、フィールドバス3を介して結び、親局1と各子局2−1,2−2,・・・との間で、データの送受信を行うものである。
具体的な通信手順の一例としては、図3に示されるように、親局が各子局とのコマンド・レスポンスを順に行う例を挙げることができる。
親局1は、マイクロプロセッサを主体して構成される通信処理演算部11と、上位装置との間で情報のやり取りを行うためのインタフェース部12と、フィールドバス3を介して各子局との間で情報のやり取りを行うための通信インタフェース13と、記憶装置14とを含んでいる。記憶装置14は第1の記憶領域と第2の記憶領域とを有する。第1の記憶領域には、現在どの子局が通信対象子局とされているかを示す通信対象子局リスト14aが記憶されている。第2の記憶領域には、現在各子局が「通信中」、「通信未加入」、「通信停止」のいずれの状態にあるかを示す子局通信状態リストが記憶されている。図示の親局1は、機器制御機能の組み込まれた上位装置からの指令を受けて、主として、子局2との間の通信機能を担うように構成されている。ここで、「通信未加入」の状態とは、通信対象子局とされていない子局の状態を表わしている。なお、「通信未加入」の状態を「通信停止」の状態に含めることにより、子局の状態を「通信中」と「通信停止」の二つの状態にしても良い。
一方、各子局2−1,2−2,・・・の側には、マイクロプロセッサを主体として構成される子局側処理・演算部21と、その子局に固有なID番号等の子局識別情報を設定するための子局識別設定手段22と、フィールドバス3を介して親局1との間で情報のやり取りを行うための通信インタフェース23とが含まれている。図示の子局2−1,2−2,・・・は、親局1との間の通信機能に加えて、機器制御機能をも担うように構成されている。
すなわち、各子局2−1,2−2,・・・は、それぞれ自局に割り当てられた機器制御機能を果たすと共に、それらの子局は、同時に、親局を介して、上位装置により統括制御されているのである。
この通信システムの起動にあたって、親局1は、予め決められた起動時処理を実行する。すなわち、この起動時処理においては、親局1は、予め内部に記憶されている通信対象子局リスト14aにしたがい、登録されている子局のそれぞれ2−1,2−2,・・・に対して所定の手順を経て通信を開始させ、併せて、親局1に記憶されている子局通信状態リスト14bの該当する子局の内容を、「通信中」に書き替える。
通信システムの起動後にあっては、親局1は、予め決められた通常時処理を実行する。この通常時処理においては、親局1は、子局2−1,2−2,・・・を特定する情報(子局のID番号等)を含んだ通信フレーム(コマンド)を子局に対して発行する。このとき、通信対象子局が複数存在する場合には、それらの子局の全てに対して通信フレームを順次に発行する。一方、子局2−1〜2−5の側では、親局1から送られてくる通信フレーム(コマンド)のうち、自局宛のものを選別して取得する。各子局は、自局を特定する情報を含めたレスポンスを親局1に返し、親局1は、その局を特定する情報に基づいて、通信対象の各子局からのレスポンスを取得する。
通信システムの起動後にあっては、親局は、通信中の各子局の状態(正常、異常)を監視する。すなわち、親局1は、各子局に対する送信に対して、各子局からのレスポンスが返ってきていること(各子局を特定する情報が含まれている受信データが取得できていること)を監視する。そして、通信対象となる子局からレスポンスが返ってくる限りは、その子局は正常なものと認識する。このとき、子局通信状態リスト14bの該当する子局の内容は、「通信中」に維持される。
これに対して、子局の電源遮断や故障等により、この子局からのレスポンスが(例えば、ある一定期間)途絶えた状態が発生すると、親局1は、通信からその子局が離脱した状態であると認識して、規定の処理(例えば、異常時処理等)へと移行し、それ以降、その子局に対する送信処理を中断し、併せて、親局1に記憶されている子局通信状態リスト14bの該当する子局の内容を、「通信中」から「通信停止」へと書き替える。
このように、通常時処理においては、親局1は、内部メモリに記憶された通信対象子局リスト14aを参照することにより、通信対象として設定された子局のそれぞれに対して、コマンドの送信とレスポンスの受信とを繰り返し実行しつつ、その間に、レスポンスが途絶えたときには、内部メモリに記憶された子局通信状態リスト14bの該当する子局の内容を「通信中」から「通信停止」へと書き替える。
なお、子局を新規加入する場合には、例えば、所定のツールを使用することで、通信対象子局リストへの対象子局としての追加を行ったのち、通信システム全体の起動処理をやり直すこととなる。
次に、本発明の要部であるところの子局復帰時の処理について説明する。本発明における子局復帰動作(子局再加入動作)を示す説明図が、図2に示されている。
同図に示されるように、親局1には、上位装置から所定の再加入指令が与えられるのに応答して、記憶装置14の第1記憶領域(第1の記憶手段)に記憶された通信対象子局リスト14aと第2記憶領域(第2の記憶手段)に記憶された子局通信状態リスト14bとを照合することにより、通信対象とされてはいるものの、「通信停止」状態とされている子局(#5)を特定し、それら特定された子局(#5)のそれぞれに対して、所定の手順を経て通信を再開させ、併せて、第2記憶領域に記憶された子局通信状態リスト14bの該当する子局の内容(#5)を「通信停止」から「通信中」へと書き替える再加入時処理手段が含まれている。
このような再加入時処理手段を実現するための処理を含む親局側の処理を示すフローチャートが図4に示されている。先ず、処理の全体を概略的に説明すると、親局1は上位装置からコマンド発行要求が到来するのを待機し(ステップ408)、コマンド発行要求が到来しない場合には(ステップ408NO)、不動作コマンド(No Operationコマンド)を生成する一方(ステップ410)、コマンド発行要求が到来した場合には(ステップ408YES)、指令解析・コマンド生成処理(ステップ409)を実行する。
こうして生成されたコマンドは、コマンド発行タイミングの到来を待って(ステップ403YES)、該当する子局へと送信される(ステップ404)。子局からのレスポンスが到来した場合には(ステップ401YES)、そのレスポンスが取得され(ステップ402)、その後、取得されたレスポンスに関する処理(ステップ405)が実行される。
以上の処理の流れの中で、所定時間以上に亘りレスポンスが到来しないこと等により通信異常ありとの判定が行われると(ステップ406YES)、該当子局に関する規定の異常処理の実行、並びに、通信離脱処理が実行され(ステップ407)、該当子局に関する子局通信状態リストの内容は、「通信中」から「通信停止」へと書き替えられ、以後、その子局に対する送信処理は中断される。
一方、子局側の処理を示すフローチャートが図6に示されている。子局2は、親局1から何らかのコマンドが到来するのを待って(ステップ601NO)、そのコマンドを取得する(ステップ602)。次に、ステップ602で取得したコマンドの処理が可能かどうか、つまり、現在、処理中のコマンドが有るかどうかを判定する(ステップ603)。処理中のコマンドがない場合(ステップ603NO)、つまり、ステップ602で取得したコマンドの処理が可能な場合は、ステップ607へ進み取得したコマンドを解析する。そのコマンドが実行可能であれば(ステップ608YES)、そのコマンドを処理すると共に(ステップ604)、処理が完了するのを待って(ステップ605YES)、完了レスポンスを生成し(ステップ606)、生成したレスポンスを親局へ送信する(ステップ610)。これに対して、解析されたコマンドが実行不可(ステップ608NO)、又はコマンド実行未了(ステップ605NO)の場合には、処理中レスポンスを生成し(ステップ609)、生成したレスポンスを親局へ送信する(ステップ610)。
次に、図4に戻って、本発明の要部である再加入時処理手段を実現するための処理について説明する。指令解析・コマンド生成処理(ステップ409)において、上位装置から再加入要求の到来が判定されると(ステップ4091YES)、続いて離脱子局に関する通信再加入コマンドの生成処理(ステップ4092)が実行される。
離脱子局の通信の通信再加入コマンドの生成処理の詳細フローチャートが図5に示されている。同図に示されるように、この通信再加入コマンドの生成処理においては、先ず、通信対象子局リスト(図2の14a)の先頭より通信対象である子局の識別番号(ID)を取得する(ステップ501)、取得したIDに該当する子局の通信状態を子局通信状態リスト(図2の14b)より取得する(ステップ502)。取得した通信状態が「通信停止」の場合(ステップ503YES)は、該当する子局に対する通信再加入コマンドを生成し、所定のメモリに格納する(ステップ504)。次に、通信対象子局リスト中において他に通信対象である子局があるかどうか確認し(ステップ505)、なければ終了する。他に通信対象である子局がある場合(ステップ505YES)は、通信対象子局リスト中の次の通信対象である子局のIDを取得し(ステップ506)、ステップ502へ戻る。また、ステップ503において、取得した通信状態が「通信停止」でない場合はステップ505へ進む。これにより、通信対象であるが、「通信停止」である全子局について、通信再加入コマンドが生成されることとなる。そして、こうして生成された通信再加入コマンドは、図4に戻って、コマンド発行タイミングの到来を待って(ステップ403YES)、該当する子局に宛てて送信される(ステップ404)。
前述の第2従来例における親局側の処理を示すフローチャートが図7に示されている。図4と図7との比較から明らかなように、第2従来例の場合には、離脱した子局の自動再加入のために、波線で囲まれている部分の処理(ステップ701〜704)により、離脱した子局に対しても、その後、所定の再加入確認タイミングが到来する毎に(ステップ701YES)、離脱子局のレスポンスチェック処理(ステップ702)を実行すると共に、レスポンスが検出される場合には(ステップ703YES)、離脱子局の通信再加入処理(ステップ704)を実行せねばならず、本発明の場合に比べて、マイクロプロセッサの処理負荷が大きく、また開発コストもその分だけ大きいことが理解されるであろう。
最後に、本発明が適用されたPLCシステムの構成図が図8に示されている。このPLCシステムは、ビルディング・ブロック型のPLC5と複数台の子局ユニット6−1〜6−Nとを含んで構成される。
PLC5は、周知のように、バックプレーン上に敷設されたI/Oバスに対して、それぞれコネクタを介して、CPUユニット51、通信親局ユニット52、及びその他のユニット53(入出力ユニット等々)を装着して一体化することで構成されている。
通信親局ユニット52と複数台の子局ユニット6−1〜6−Nとの間は、フィールドバス7を介してディジーチェイン接続されており、通信手順としては、図3に示されるように、親局が各子局とコマンド/レスポンスを順に行なう例が採用されている。
CPUユニット51内には、図中ラダー図で示されるように、再加入トリガに相当する入力接点と再加入ビットに相当するコイル出力との直列接続として表記されるユーザプログラムが組み込まれている。
このユーザプログラムが実行された際に、再加入トリガに相当する入力接点がOFFからONに変化すると、再加入ビットに相当するコイル出力もOFFからONに変化する(図中[1]参照)。この再加入ビットに相当するコイル出力は、CPUユニット51の入出力リフレッシュ処理により、入出力メモリから読み出されて、共有メモリ8の所定領域に書き込まれる。こうして共有メモリ8の所定領域に書き込まれたコイル出力は、適当なタイミングで通信親局ユニット52から読み出される。これにより、CPUユニット51から通信親局ユニット52へと再加入要求が伝えられる(図中[2]参照)。
親局として機能する通信親局ユニット内には、各子局のIDに対応する番号欄とそのID別に当該子局が通信対象の子局であるかどうかを登録する登録欄を有する通信対象子局リストと、各子局のIDに対応する番号欄とそのID別に当該子局の通信状態を格納する通信状態欄を有する子局通信状態リストが格納されている。この例では、通信対象子局リストと子局通信状態リストを異なるリスト(テーブル)として構成する場合を示した。しかし、これに限らず、通信対象子局リストと子局通信状態リストを合体させたテーブルとして構成しても良い。
例えば、各子局のIDに対応する番号欄と、登録欄と、通信状態欄を備えたテーブルとして構成しても良い。
通信親局ユニット52は、再加入要求が与えられるのに応答して、通信対象子局リストと子局通信状態リストとを照合することにより、通信対象とされてはいるものの、「通信停止」状態とされている子局を特定し(図中[3]参照)、それら特定された子局のそれぞれに対して、所定の手順を経て通信を再開させ(図中[4]参照)、併せて、子局通信状態リストの該当する子局の内容を「通信停止」を示す「NG」から「通信中」を示す「OK」へと書き替える。これにより、その時点で、通信対象とされてはいるものの、通信停止状態にあった子局の全てが、一括して、通信再加入されることとなる。以上の一連の流れをラダープログラムから見たシーケンス例を示すタイムチャートが図9に示されている。同図に示されるように、再加入トリガのOFFからONへの変化、再加入ビットのOFFからONへの変化、親局ユニットビジーフラグのOFFからONへの変化と続き、最後に、子局ユニット#2の通信が再開されることとなる。
このPLCシステムにおいて、例えばメンテナンス等の場合には、一連の子局ユニットは全て電源を断たれた状態にある。この状態からその装置の運転を開始すべく、各子局ユニットの電源が投入されたのち、CPUユニット51から通信親局ユニット52へと再加入要求が発せられると、一連の子局ユニットは一括して同時に通信再加入されることとなる。つまり、再加入要求が与えられれば、対象となる複数の子局ユニットを特定せずとも、それらの子局ユニットは一括して通信再開される。しかも、複数の子局ユニットの起動のために必要な共有メモリ上の領域は1ビットあれば済むから、子局ユニットが64台存在するような場合にも、共有メモリ8上に大きな容量を確保する必要もない。
以上の実施形態の説明でも明らかなように、本発明によれば、第1の記憶手段に記憶された「通信対象子局リスト」には、現在どの子局が通信対象子局とされているかが示されると共に、第2の記憶手段に記憶された「各子局通信状態」は、いずれかの子局が通信離脱すれば、その子局に対応して自動的に「通信中」から「通信停止」へと書き替えられる。
したがって、何らかの原因で通信を離脱した1又は2以上の子局が復旧して通信可能な状態となったときに、親局に対して所定の再加入指令が与えられると、第1の記憶手段に記憶された通信対象子局リストと第2の記憶手段に記憶された各子局通信状態とを照合することにより、通信対象とされてはいるものの、「通信停止」状態とされている子局が自動的に特定されて、それら特定された子局のそれぞれに対して、所定の手順を経て通信が再開される。
その結果、復旧した子局の台数に拘わらず、それら復旧した子局の全てを1つの指令操作で一括して通信に再加入させることができるから、使用者の使い勝手が向上する。また、本発明を多軸制御を行なう装置のコントローラしてビルディング・ブロック型のプログラマブル・コントローラ(以下、PLCと言う)に適用すると、親局は多軸制御のための機能を備えたモーション・コントロールユニットとして、又子局は、モータドライバとして構成することができる。このとき、その装置のメンテナンスや故障修理等の状況下にあっては、子局である複数台のモータドライバは、全て電源が切られて通信離脱状態となっているのが通例である。
このような状態において、その装置のメンテナンスや故障修理が完了して、各モータドライバに電源が投入され、その状態において、モーション・コントロールユニットに対して、その上位装置であるCPUユニットから所定の再加入指令が与えられると、今まで通信離脱状態にあった一連のモータドライバは全て同時に通信再加入されるから、その装置の制御に供されているモータドライバの全てが、同時に動作可能な状態となり、好都合である。
また、この機器制御用の通信システムにあっては、通信離脱された子局に関する通信再加入は、親局に対する再加入指令を待って行うものであって、自動的に再加入するものではないから、離脱中の子局の状態を監視する必要もない。したがって、この通信システムにあっては、前述の第2従来例のように、離脱中の子局の監視のために、処理負荷が増大することもない。
さらに、この機器制御用の通信ユニットにあっては、複数の子局を一括して通信再開させつつも、再加入されるべき子局の指定は、第1の記憶手段に記憶された通信対象子局リストと第2の記憶手段に記憶された各子局通信状態とを照合することにより、自動的に行われるから、通信再開指令そのものについては通信再加入される子局の数に拘わらず1つで済むこととなり、前述の第3従来例のように、子局の台数に応じて開発コストが増加することもない。