JPH0648478B2 - マスタ−レスシリアルバス占有制御方法 - Google Patents
マスタ−レスシリアルバス占有制御方法Info
- Publication number
- JPH0648478B2 JPH0648478B2 JP61003434A JP343486A JPH0648478B2 JP H0648478 B2 JPH0648478 B2 JP H0648478B2 JP 61003434 A JP61003434 A JP 61003434A JP 343486 A JP343486 A JP 343486A JP H0648478 B2 JPH0648478 B2 JP H0648478B2
- Authority
- JP
- Japan
- Prior art keywords
- transmission
- data
- serial bus
- time
- processing device
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Bus Control (AREA)
- Information Transfer Systems (AREA)
- Programmable Controllers (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、複数台の処理装置が通信用バスを共用する場
合のバス占有制御方式に係り、特に制御用プログラマブ
ル・コントローラ(以下PCと略す)に適用するに最適
なバス占有制御方法に関する。
合のバス占有制御方式に係り、特に制御用プログラマブ
ル・コントローラ(以下PCと略す)に適用するに最適
なバス占有制御方法に関する。
PCは、プラントのスイツチ,接点,発振器の状態など
を入力し、コイルやモータのON/OFF、バルブの開
閉などを、プログラムにより演算し制御を行つている。
このプログラムは、高速かつサイクリツクに実行される
という特徴を有している。このPCを複数台接続したシ
ステムにおいては、PC間相互のデータ転送は、上述サ
イクルに同期し、高速に発生する。
を入力し、コイルやモータのON/OFF、バルブの開
閉などを、プログラムにより演算し制御を行つている。
このプログラムは、高速かつサイクリツクに実行される
という特徴を有している。このPCを複数台接続したシ
ステムにおいては、PC間相互のデータ転送は、上述サ
イクルに同期し、高速に発生する。
さらに、PCに要求されることはコンパクトさである。
そのためには、データ転送装置はパラレルバスよりもシ
リアルバスが望ましい。
リアルバスが望ましい。
またシリアルバスの制御方法としても1台のプロセツサ
でPCの演算制御とデータ転送制御の両方を行える方式
がコンパクトさの点で有利である。上記PCに於て、プ
ログラムは信号入力、演算、演算結果出力という流れで
実行されるが、PC間の協調のとれた制御を行うために
は、この一連のプログラムの中で必ず最低1回はデータ
転送を行い、演算結果を他PC及び外部へ連絡する必要
がある。この1回のデータ転送が確保されない場合PC
相互間の協調が遅れたりすることによりシステム全体と
しての制御性,応答性の低下をもたらすことになる。
でPCの演算制御とデータ転送制御の両方を行える方式
がコンパクトさの点で有利である。上記PCに於て、プ
ログラムは信号入力、演算、演算結果出力という流れで
実行されるが、PC間の協調のとれた制御を行うために
は、この一連のプログラムの中で必ず最低1回はデータ
転送を行い、演算結果を他PC及び外部へ連絡する必要
がある。この1回のデータ転送が確保されない場合PC
相互間の協調が遅れたりすることによりシステム全体と
しての制御性,応答性の低下をもたらすことになる。
このことを解決するためにデータ転送を高速化し1プロ
グラム周期の中で、2度,3度のデータ転送を行い確実
を期す方法が考えられるが、上記に示す様に1台のプロ
セツサでPCの演算制御とデータ転送の両方の制御を行
いコンパクトさを狙いとしたPCではプロセツサがデー
タ転送処理に占有され演算制御の時間を確保することが
困難となつてくる。従つて演算周期とデータ転送の同期
をとり1プログラム周期で確実に1回のデータ転送を保
証しかつ演算制御時間を確保することが重要となる。
グラム周期の中で、2度,3度のデータ転送を行い確実
を期す方法が考えられるが、上記に示す様に1台のプロ
セツサでPCの演算制御とデータ転送の両方の制御を行
いコンパクトさを狙いとしたPCではプロセツサがデー
タ転送処理に占有され演算制御の時間を確保することが
困難となつてくる。従つて演算周期とデータ転送の同期
をとり1プログラム周期で確実に1回のデータ転送を保
証しかつ演算制御時間を確保することが重要となる。
従来シリアルバス占有制御方法としては、マスターとな
る装置があり、シリアルバスに接続される各スレーブ装
置のバス占有権の制御を行う方式や、マスターはなくバ
ス占有要求が発生した時に一方的にバス上にデータを送
出し、バス上でデータの衝突が発生した場合、一定時間
を隔てて、再度リトライを実施する衝突検出方法が知ら
れている。
る装置があり、シリアルバスに接続される各スレーブ装
置のバス占有権の制御を行う方式や、マスターはなくバ
ス占有要求が発生した時に一方的にバス上にデータを送
出し、バス上でデータの衝突が発生した場合、一定時間
を隔てて、再度リトライを実施する衝突検出方法が知ら
れている。
しかしながら前者の方法はマスターが停止した場合デー
タ転送が停止してしまうという問題がある。後者の方法
はバス上のデータ衝突に伴うリトライ等の処理が複雑と
なり演算制御周期とデータ転送周期の同期をとるのが困
難となる。
タ転送が停止してしまうという問題がある。後者の方法
はバス上のデータ衝突に伴うリトライ等の処理が複雑と
なり演算制御周期とデータ転送周期の同期をとるのが困
難となる。
簡単な方法によりマスターレスバス占有制御を行う例と
しては、特開昭58-161061号公報に記載されたものであ
る。
しては、特開昭58-161061号公報に記載されたものであ
る。
前記従来例(特開昭58-161061号公報)に記載された方
式では、送信待時間タイマの設定として前回受信終了時
点から次の送信に要する最低限の時間を設定することに
より、高速データ転送を行うことを主眼としているが、
送信データ量、不在PCの影響により伝送周期が変化す
るという問題があつた。
式では、送信待時間タイマの設定として前回受信終了時
点から次の送信に要する最低限の時間を設定することに
より、高速データ転送を行うことを主眼としているが、
送信データ量、不在PCの影響により伝送周期が変化す
るという問題があつた。
本発明の目的は、特別な優先制御装置を設けることな
く、簡単な構成でバス上のデータ衝突を回避し、かつ各
PCの演算制御時間とデータ送受信時間との合計が同期
した一定伝送周期にてサイクリツクデータ転送を行うこ
とを可能とするマスターレスシリアルバス占有制御方法
および制御装置を提供することにある。
く、簡単な構成でバス上のデータ衝突を回避し、かつ各
PCの演算制御時間とデータ送受信時間との合計が同期
した一定伝送周期にてサイクリツクデータ転送を行うこ
とを可能とするマスターレスシリアルバス占有制御方法
および制御装置を提供することにある。
本発明は、複数台の処理装置が共通バスに接続されたシ
ステムにおいて、システム立上げ時に決定された各処理
装置のシリアル番号に対応した送信時間間隔及び前回送
信を行つた処理装置の番号により決定される送信待時間
を各処理装置中の設定した計時装置を用いることによ
り、達成される。特に、本発明のマスターレスシリアル
バス占有制御方法は、複数台の処理装置を共通バスに接
続し、前記複数台の処理装置からサイクリツクにデータ
を共通バスに送信するものであって、処理装置のそれぞ
れに番号を割り付ける段階と、処理装置の数に対応した
送信間隔時間を決定する段階と、自己の処理装置の番号
と自己の処理装置が前回データを受信した処理装置の番
号との差に、送信間隔時間を乗じ、この積から前回デー
タがシリアスバス上に送出されている時間を減じること
によつて送信待時間を決定する段階と、送信待時間経過
後、自己の処理装置が、共通バスにデータを送信する段
階と、を有し、全処理装置が行うデータのサイクリツク
の送信を一定の伝送周期内で行うことを特徴とするもの
である。また、本発明のマスターレスシリアルバス占有
制御装置は共通バスに接続された複数台の処理装置を有
し、前記複数台の処理装置がサイクリツクにデータを前
記共通バスに送信するものであって、処理装置は、処理
プログラム及びデータを格納するメモリと、メモリに格
納されている処理プログラムを読み出して実行するマイ
クロプロセツシングユニツト(MPU)と、MPUの実
行結果を被プロセス手段に伝えると共に、被プロセス手
段からの情報をMPUに受けるプロセス入出力制御回路
と、共通バスに接続され、他の処理装置からの受信デー
タをMPUへ伝えると共に、MPUからの送信データを
共通バスへ伝えるシリアルバス入出力回路と、MPUに
自己の処理装置の番号及び各処理装置間の送信間隔時間
を与える計時装置と、自己の処理装置の番号と自己の処
理装置が前回データを受信した処理装置の番号との差
に、前記送信間隔時間を乗じ、該積からの前回データが
シリアスバス上に送出されている時間を減じることによ
つて送信待時間を決定する設定装置と、を有することを
特徴とする。
ステムにおいて、システム立上げ時に決定された各処理
装置のシリアル番号に対応した送信時間間隔及び前回送
信を行つた処理装置の番号により決定される送信待時間
を各処理装置中の設定した計時装置を用いることによ
り、達成される。特に、本発明のマスターレスシリアル
バス占有制御方法は、複数台の処理装置を共通バスに接
続し、前記複数台の処理装置からサイクリツクにデータ
を共通バスに送信するものであって、処理装置のそれぞ
れに番号を割り付ける段階と、処理装置の数に対応した
送信間隔時間を決定する段階と、自己の処理装置の番号
と自己の処理装置が前回データを受信した処理装置の番
号との差に、送信間隔時間を乗じ、この積から前回デー
タがシリアスバス上に送出されている時間を減じること
によつて送信待時間を決定する段階と、送信待時間経過
後、自己の処理装置が、共通バスにデータを送信する段
階と、を有し、全処理装置が行うデータのサイクリツク
の送信を一定の伝送周期内で行うことを特徴とするもの
である。また、本発明のマスターレスシリアルバス占有
制御装置は共通バスに接続された複数台の処理装置を有
し、前記複数台の処理装置がサイクリツクにデータを前
記共通バスに送信するものであって、処理装置は、処理
プログラム及びデータを格納するメモリと、メモリに格
納されている処理プログラムを読み出して実行するマイ
クロプロセツシングユニツト(MPU)と、MPUの実
行結果を被プロセス手段に伝えると共に、被プロセス手
段からの情報をMPUに受けるプロセス入出力制御回路
と、共通バスに接続され、他の処理装置からの受信デー
タをMPUへ伝えると共に、MPUからの送信データを
共通バスへ伝えるシリアルバス入出力回路と、MPUに
自己の処理装置の番号及び各処理装置間の送信間隔時間
を与える計時装置と、自己の処理装置の番号と自己の処
理装置が前回データを受信した処理装置の番号との差
に、前記送信間隔時間を乗じ、該積からの前回データが
シリアスバス上に送出されている時間を減じることによ
つて送信待時間を決定する設定装置と、を有することを
特徴とする。
同期した送信時間間隔でデータ送受信を行なうだけでな
く、所定の演算制御を各PCが高速かつサイクリツクに
行う必要性から、マスターレスでしかも全てが同一優先
順位を持ち、シリアルバス上のデータ衝突を回避し、一
定の送信時間間隔にてデータ転送を行う手段として、前
回転送した処理装置の番号と自処理装置の番号に対応し
た時間を計時装置に設定し、これを最適送信待時間とし
て送信を行うことにより、一定送信時間間隔にて伝送を
行うための転送データ量による補正が加えられることと
なり、上記目的が達成されることとなる。
く、所定の演算制御を各PCが高速かつサイクリツクに
行う必要性から、マスターレスでしかも全てが同一優先
順位を持ち、シリアルバス上のデータ衝突を回避し、一
定の送信時間間隔にてデータ転送を行う手段として、前
回転送した処理装置の番号と自処理装置の番号に対応し
た時間を計時装置に設定し、これを最適送信待時間とし
て送信を行うことにより、一定送信時間間隔にて伝送を
行うための転送データ量による補正が加えられることと
なり、上記目的が達成されることとなる。
以下、本発明の一実施例を図面により説明する。
第1図は本発明を適用したPCの構成を、第2図は該P
Cを使用した制御システム例を示す。
Cを使用した制御システム例を示す。
先ず、第2図により全体構成を説明する。PC1は、主
としてプログラムを実行する中央処理装置(以下CPU
と略す。)2とプロセスとのインターフエイスを司どる
プロセス入出力装置(以下PIOと略す)3により構成
される。CPU2は、第2図のリミツトスイツチ5,発
振器8などのプロセスデータを、周期的にPIO3より
入力し、このプロセスデータとCPU2内にあらかじめ
格納されるプログラムにより演算実行し、再びPIOを
通し、第2図のモーター4,電磁弁6のON/OFF制
御、調整弁7の開閉制御を行つている。また第2図に示
すようにPC1は、シリアルバス9により他の各PCと
接続されており、各PCの演算制御に必要なデータ及び
演算結果を周期的に送出してPC相互の制御協調をとり
ながら演算制御を行う。
としてプログラムを実行する中央処理装置(以下CPU
と略す。)2とプロセスとのインターフエイスを司どる
プロセス入出力装置(以下PIOと略す)3により構成
される。CPU2は、第2図のリミツトスイツチ5,発
振器8などのプロセスデータを、周期的にPIO3より
入力し、このプロセスデータとCPU2内にあらかじめ
格納されるプログラムにより演算実行し、再びPIOを
通し、第2図のモーター4,電磁弁6のON/OFF制
御、調整弁7の開閉制御を行つている。また第2図に示
すようにPC1は、シリアルバス9により他の各PCと
接続されており、各PCの演算制御に必要なデータ及び
演算結果を周期的に送出してPC相互の制御協調をとり
ながら演算制御を行う。
次に第1図によりCPU2の構成を説明する。プログラ
ム,データ及び途中演算結果を格納するメモリ26,メ
モリ26に格納されているプログラムを実行するマイク
ロプロセツシングユニツト(以下MPUと略す)24,
プログラムを実行した結果を、プロセスに対し伝えるた
めのPIO3とのインターフエイスを司どるPIO入出
力制御回路28,PIO3から入力したデータ、及びM
PU24により演算実行された結果をシリアルバス9に
対し送出するシリアルバス出力回路22,シリアルバス
9上に送出された、他PCのデータ、演算結果を受信す
るシリアルバス入力回路21、及び、これらシリアルバ
ス入出力回路の制御を行うシリアルバス入出力制御回路
23、PC1のPC番号、シリアルバスへの送信データ
の送信間隔を設定する設定装置27,設定装置27によ
り決定されるPC番号、伝送周期と送信PC番号より得
られる送信時間を設定し、MPU24に対し送信タイミ
ングを与える計時装置25から成つている。
ム,データ及び途中演算結果を格納するメモリ26,メ
モリ26に格納されているプログラムを実行するマイク
ロプロセツシングユニツト(以下MPUと略す)24,
プログラムを実行した結果を、プロセスに対し伝えるた
めのPIO3とのインターフエイスを司どるPIO入出
力制御回路28,PIO3から入力したデータ、及びM
PU24により演算実行された結果をシリアルバス9に
対し送出するシリアルバス出力回路22,シリアルバス
9上に送出された、他PCのデータ、演算結果を受信す
るシリアルバス入力回路21、及び、これらシリアルバ
ス入出力回路の制御を行うシリアルバス入出力制御回路
23、PC1のPC番号、シリアルバスへの送信データ
の送信間隔を設定する設定装置27,設定装置27によ
り決定されるPC番号、伝送周期と送信PC番号より得
られる送信時間を設定し、MPU24に対し送信タイミ
ングを与える計時装置25から成つている。
次に第1図に示すCPU2のデータ転送制御動作を説明
する。MPU24は、通常時メモリ26に格納されるプ
ログラムを実行しプロセス入出力制御回路28に接続さ
れたプロセス機器の制御を行つている。この演算制御
中、一定伝送周期でデータ送信を行うように計時装置2
5から送信タイミングがMPU24に対し与えられる。
MPU24は送信タイミングを受けとるとそれまでの演
算制御を中断しデータ転送制御を開始する。まずMPU
24は、メモリ26に格納された出力データをシリアル
バス入出力制御回路23内レジスタにセツトすることに
よりシリアルバス出力回路22を介しシリアルバス9に
データが送出される。MPU24は、自CPUの転送が
終了すると再び演算制御を始める。他PCがシリアルバ
ス9に対し送出した場合、送出データは、無条件にシリ
アルバス入力回路21を介し、シリアルバス入出力制御
回路23内レジスタにデータがセツトされる。データが
セツトされるとシリアルバス入出力制御回路23はMP
U24に対し、受信データが存在することを伝える。こ
れによりMPU24は、それまでの演算制御を中断し、
データ受信を開始する。MPU24は、シリアルバス入
出力制御回路23内レジスタにセツトされたデータをメ
モリ26に転送し、以下受信が終了するまでを繰り返
す。その後再びMPU24は、演算制御を始める。
する。MPU24は、通常時メモリ26に格納されるプ
ログラムを実行しプロセス入出力制御回路28に接続さ
れたプロセス機器の制御を行つている。この演算制御
中、一定伝送周期でデータ送信を行うように計時装置2
5から送信タイミングがMPU24に対し与えられる。
MPU24は送信タイミングを受けとるとそれまでの演
算制御を中断しデータ転送制御を開始する。まずMPU
24は、メモリ26に格納された出力データをシリアル
バス入出力制御回路23内レジスタにセツトすることに
よりシリアルバス出力回路22を介しシリアルバス9に
データが送出される。MPU24は、自CPUの転送が
終了すると再び演算制御を始める。他PCがシリアルバ
ス9に対し送出した場合、送出データは、無条件にシリ
アルバス入力回路21を介し、シリアルバス入出力制御
回路23内レジスタにデータがセツトされる。データが
セツトされるとシリアルバス入出力制御回路23はMP
U24に対し、受信データが存在することを伝える。こ
れによりMPU24は、それまでの演算制御を中断し、
データ受信を開始する。MPU24は、シリアルバス入
出力制御回路23内レジスタにセツトされたデータをメ
モリ26に転送し、以下受信が終了するまでを繰り返
す。その後再びMPU24は、演算制御を始める。
第3図にシリアルバスに送出されるデータのフオーマツ
ト例を示す。送出データは、まず送信PCの番号(S
A)続いて送信データ量(DL)そして送信データ(D
ATA)により構成される。
ト例を示す。送出データは、まず送信PCの番号(S
A)続いて送信データ量(DL)そして送信データ(D
ATA)により構成される。
第4および5図にMPU24のデータ転送処理フローチ
ヤートを示す。CPU2内MPU24は、リセツトスタ
ート後、装置のイニシヤライズを行う。伝送制御のイニ
シヤライズ処理をリセツトスタート後行われる。第1に
MPU24は、設定装置27に、あらかじめ設定されて
いた自PC番号、送信時間間隔t、及び総PC数を読み
出しメモリ26に格納する。その後MPU24は、シリ
アルバス上に既にデータ転送を行つているPCが他にあ
ることを確認するため計時装置25に他のPCの送信時
間および制御処理時間を考慮した最大待時間を設定しバ
スモニタ状態となる。これは第4図のフローチヤートの
ステツプF5,F10およびF15に対応する。もし、
最大待時間内にシリアルバス上に既にデータ転送を行う
PCが存在しない場合、計時装置25からMPUに対し
最大待時間後送信タイミングが与えられデータ送信が開
始される。MPUは送信を行い送信終了後再び最大待時
間を計時装置24に設定し、演算制御を実行する。以下
これを繰り返す(第4図ステツプF15〜F30参
照)。
ヤートを示す。CPU2内MPU24は、リセツトスタ
ート後、装置のイニシヤライズを行う。伝送制御のイニ
シヤライズ処理をリセツトスタート後行われる。第1に
MPU24は、設定装置27に、あらかじめ設定されて
いた自PC番号、送信時間間隔t、及び総PC数を読み
出しメモリ26に格納する。その後MPU24は、シリ
アルバス上に既にデータ転送を行つているPCが他にあ
ることを確認するため計時装置25に他のPCの送信時
間および制御処理時間を考慮した最大待時間を設定しバ
スモニタ状態となる。これは第4図のフローチヤートの
ステツプF5,F10およびF15に対応する。もし、
最大待時間内にシリアルバス上に既にデータ転送を行う
PCが存在しない場合、計時装置25からMPUに対し
最大待時間後送信タイミングが与えられデータ送信が開
始される。MPUは送信を行い送信終了後再び最大待時
間を計時装置24に設定し、演算制御を実行する。以下
これを繰り返す(第4図ステツプF15〜F30参
照)。
シリアルバス上に既にデータ転送を開始しているPCが
存在する場合、計時装置25により送信タイミングが与
えられる以前に、MPU24に対しデータ受信したこと
が、第1図信号線100によりシリアルバス入出力制御
回路23からMPUに出力され、MPUは受信処理を開
始する。受信が正常に完了したかどうかの判定は、デー
タの最終受信をもつて判定される。これは通常データの
最終部にCRC等のエラーチエツクコードが含まれてい
るからである。受信データ異常時、誤つたデータにより
送信待時間を設定した場合、データの衝突発生の可能性
が大であるため、計時装置25への送信待時間の設定
は、前々回のデータの正常受信確認後に算出した送信待
時間を用いる。受信データ異常時は、前々回の正常デー
タ受信のときに算出した送信待時間によつて決定され
る。
存在する場合、計時装置25により送信タイミングが与
えられる以前に、MPU24に対しデータ受信したこと
が、第1図信号線100によりシリアルバス入出力制御
回路23からMPUに出力され、MPUは受信処理を開
始する。受信が正常に完了したかどうかの判定は、デー
タの最終受信をもつて判定される。これは通常データの
最終部にCRC等のエラーチエツクコードが含まれてい
るからである。受信データ異常時、誤つたデータにより
送信待時間を設定した場合、データの衝突発生の可能性
が大であるため、計時装置25への送信待時間の設定
は、前々回のデータの正常受信確認後に算出した送信待
時間を用いる。受信データ異常時は、前々回の正常デー
タ受信のときに算出した送信待時間によつて決定され
る。
計時装置25への送信待時間設定を受信終了時点で行う
ためもし、従来のように一定待時間をデータ受信後に付
加したとするとデータ量の変化に伴い伝送周期も変化し
てしまう。これを一定の伝送周期とするため送信待時間
に他のPCから前回受信したデータ量による補正を行
う。第6図に送信待時間Tの設定例を示す。送信待時間
Tは、第1図の設定回路27により設定される自PC番
号、総PC数、送信時間間隔t及び、受信データから得
られる送信PC番号、データ量により決定される。自P
C番号が前回データ送信したPCの番号より大である場
合、送信待時間TはT=(自PC番号−前回送信PC番
号)×t−τiにて得られる。ここでτiはシリアルバ
ス上に前回のデータが送出されている時間であり、デー
タ転送を一定伝送周期Ttにて行うための補正時間であ
る。またtはいずれかのPCが送信を開始する送信時間
間隔である。τiは、τi=(送信データ量)÷(伝送
速度)にて得られる。尚、簡略化しτiの平均をτと
し、一律にτにより送信待時間の補正を行うことも可能
である。しかしこの場合は伝送周期Ttはわずかながら
変化する可能性がある。
ためもし、従来のように一定待時間をデータ受信後に付
加したとするとデータ量の変化に伴い伝送周期も変化し
てしまう。これを一定の伝送周期とするため送信待時間
に他のPCから前回受信したデータ量による補正を行
う。第6図に送信待時間Tの設定例を示す。送信待時間
Tは、第1図の設定回路27により設定される自PC番
号、総PC数、送信時間間隔t及び、受信データから得
られる送信PC番号、データ量により決定される。自P
C番号が前回データ送信したPCの番号より大である場
合、送信待時間TはT=(自PC番号−前回送信PC番
号)×t−τiにて得られる。ここでτiはシリアルバ
ス上に前回のデータが送出されている時間であり、デー
タ転送を一定伝送周期Ttにて行うための補正時間であ
る。またtはいずれかのPCが送信を開始する送信時間
間隔である。τiは、τi=(送信データ量)÷(伝送
速度)にて得られる。尚、簡略化しτiの平均をτと
し、一律にτにより送信待時間の補正を行うことも可能
である。しかしこの場合は伝送周期Ttはわずかながら
変化する可能性がある。
次に自PC番号が受信PC番号より小さい場合、送信待
時間Tは、T=(総PC数+自PC番号−受信PC番
号)×t−τiにより得られる。これにより送信待時間
Tは常に正数となる。自PC送信後の送信待時間Tは補
正後の最大待時間であるT=総PC数×t−τiにより
設定される。
時間Tは、T=(総PC数+自PC番号−受信PC番
号)×t−τiにより得られる。これにより送信待時間
Tは常に正数となる。自PC送信後の送信待時間Tは補
正後の最大待時間であるT=総PC数×t−τiにより
設定される。
以上手順にて得られた送信待時間を第1図計時装置25
に設定後第5図ステツプF61〜F63に示すPC抜け
チエツクを行う。
に設定後第5図ステツプF61〜F63に示すPC抜け
チエツクを行う。
各PCは前回受信PC番号を記憶しており今回受信PC
番号との比較を行う。前回受信と今回受信のPC番号の
差が1以外であつた場合、前回受信と今回受信の間にP
Cの抜けが生じたことを示す。これは今まで使っていた
PCがダウンして急に送信しなくなつた場合が考えられ
る。抜けPC番号は、今回受信PC番号と前回受信PC
番号及びその差により逆算し、その番号を得ることがで
きる。この抜けPCの番号を知ることにより、プロセス
制御を止めたり、その抜けPCに対応する送信時間間隔
の間自己のPCのプロセス制御に専念できる。
番号との比較を行う。前回受信と今回受信のPC番号の
差が1以外であつた場合、前回受信と今回受信の間にP
Cの抜けが生じたことを示す。これは今まで使っていた
PCがダウンして急に送信しなくなつた場合が考えられ
る。抜けPC番号は、今回受信PC番号と前回受信PC
番号及びその差により逆算し、その番号を得ることがで
きる。この抜けPCの番号を知ることにより、プロセス
制御を止めたり、その抜けPCに対応する送信時間間隔
の間自己のPCのプロセス制御に専念できる。
次に受信データを第1図メモリ26上のワークエリアに
格納す。以上にて受信処理を受了し、送信待状態に入
り、中断されていた演算制御を再開する(第4図のステ
ツプF40〜F65)。以上PC内処理フローチヤート
を説明したが、次に第7図により全体の制御方式を以下
に説明する。前提条件としてPC♯2は停電により停止
しているものとする。
格納す。以上にて受信処理を受了し、送信待状態に入
り、中断されていた演算制御を再開する(第4図のステ
ツプF40〜F65)。以上PC内処理フローチヤート
を説明したが、次に第7図により全体の制御方式を以下
に説明する。前提条件としてPC♯2は停電により停止
しているものとする。
PC♯3に着目するとPC♯は演算制御実行中PC♯0
からデータを受信後データ受信処理を開始し正常受信判
定の後計時装置25に(3−0)×t−τ0=3t−τ
0を設定し送信待状態に入り演算制御を再開する。次に
t−τ0時間経過後PC♯1が送信を開始しPC♯3は
再びデータ受信処理を開始する。データ正常受信後計時
装置25に送信待時間TをT=(3−1)×t−τI=
2t−τ1と更新し送信待状態となり演算制御を再開す
る。ここでPC♯2は停電により停止しているため2t
−τ1時間経過後PC♯3は、計時装置25からの送信
タイミングを受けとり送信処理を開始する。送信終了後
計時装置25には最大待時間が設定される。
からデータを受信後データ受信処理を開始し正常受信判
定の後計時装置25に(3−0)×t−τ0=3t−τ
0を設定し送信待状態に入り演算制御を再開する。次に
t−τ0時間経過後PC♯1が送信を開始しPC♯3は
再びデータ受信処理を開始する。データ正常受信後計時
装置25に送信待時間TをT=(3−1)×t−τI=
2t−τ1と更新し送信待状態となり演算制御を再開す
る。ここでPC♯2は停電により停止しているため2t
−τ1時間経過後PC♯3は、計時装置25からの送信
タイミングを受けとり送信処理を開始する。送信終了後
計時装置25には最大待時間が設定される。
以上示す様に、送信待時間に他のPC送信時間τの補正
を加えることにより、伝送周期が一定となる。伝送周期
は、総PC数と送信間隔tにより決定され、伝送周期T
tはTt=総PC数×tと一定となる。総PC数及び送
信時間間隔tは、設定装置27により柔軟に設定可能で
あり、これによりいかなるシステムに応じられる伝送系
を構成することができる。1例として次の様なシステム
構成を挙げておく。伝送系は、5台のPCから成り、
0.2秒伝送周期Ttで伝送及び制御を行わせたい場
合、総PC数を5、送信時間間隔tを0.04秒とする
ことにより容易に0.2秒の伝送周期Ttを設定するこ
とができる。尚、制御は、伝送のあいまいに行い1伝送
周期で1回の制御を行う様に構成する。また、将来この
システムに3台のPCが追加される可能性があるという
場合には初めから余裕をもつて総PC数を10、送信間
隔tを、0.02秒にしておく。これにより総PC数が
10台になるまでが追加となつた場合にも、他のPCの
設定を変えることなくかつ伝送周期を一定としたままで
のPCの追加が可能となる。
を加えることにより、伝送周期が一定となる。伝送周期
は、総PC数と送信間隔tにより決定され、伝送周期T
tはTt=総PC数×tと一定となる。総PC数及び送
信時間間隔tは、設定装置27により柔軟に設定可能で
あり、これによりいかなるシステムに応じられる伝送系
を構成することができる。1例として次の様なシステム
構成を挙げておく。伝送系は、5台のPCから成り、
0.2秒伝送周期Ttで伝送及び制御を行わせたい場
合、総PC数を5、送信時間間隔tを0.04秒とする
ことにより容易に0.2秒の伝送周期Ttを設定するこ
とができる。尚、制御は、伝送のあいまいに行い1伝送
周期で1回の制御を行う様に構成する。また、将来この
システムに3台のPCが追加される可能性があるという
場合には初めから余裕をもつて総PC数を10、送信間
隔tを、0.02秒にしておく。これにより総PC数が
10台になるまでが追加となつた場合にも、他のPCの
設定を変えることなくかつ伝送周期を一定としたままで
のPCの追加が可能となる。
本発明によれば、送出データフオーマツト内の送信PC
番号、設定装置により設定される送信時間間隔、及び、
送出データフオーマツト内の送信データ量により最適送
信待時間を求め、各PCの計時装置に設定することによ
り、システムに対応した一定の伝送周期にてバス上デー
タの衝突のないシリアルバス占有制御を実現する効果が
ある。
番号、設定装置により設定される送信時間間隔、及び、
送出データフオーマツト内の送信データ量により最適送
信待時間を求め、各PCの計時装置に設定することによ
り、システムに対応した一定の伝送周期にてバス上デー
タの衝突のないシリアルバス占有制御を実現する効果が
ある。
第1図はCPUの内部構成図、第2図は、本発明のPC
によるシステム構成例、第3図はシリアルバス上データ
フオーマツト、第4図および第5図は制御装置内伝送処
理フロー、第6図は、送信待時間の決定法、第7図はシ
リアルバス上及び各PCの処理タイムチヤートを示す。 1…PC、2…CPU、9…シリアルバス、24…MP
U、25…時計装置。
によるシステム構成例、第3図はシリアルバス上データ
フオーマツト、第4図および第5図は制御装置内伝送処
理フロー、第6図は、送信待時間の決定法、第7図はシ
リアルバス上及び各PCの処理タイムチヤートを示す。 1…PC、2…CPU、9…シリアルバス、24…MP
U、25…時計装置。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 斉藤 純寿 茨城県日立市大みか町5丁目2番1号 株 式会社日立製作所大みか工場内 (72)発明者 天日 康博 茨城県日立市大みか町5丁目2番1号 株 式会社日立製作所大みか工場内 (72)発明者 下山 和彦 茨城県日立市大みか町5丁目2番1号 株 式会社日立製作所大みか工場内 (56)参考文献 特開 昭56−54145(JP,A) 特開 昭59−167729(JP,A)
Claims (1)
- 【請求項1】複数台の処理装置を共通バスに接続し、一
つの処理装置からサイクリツクにデータを共通バスに送
信し、その他の処理装置で受信するマスターレスシリア
ルバス占有制御方法において、 前記処理装置のそれぞれに番号を割り付ける段階と、 前記処理装置の数に対応した送信間隔時間を決定する段
階と、 自己の処理装置の番号と自己の処理装置が前回データを
受信した処理装置の番号との差に、前記送信間隔時間を
乗じ、該積から前記送信間隔時間より小さい前回データ
がシリアルバス上に送出されている時間を減じることに
よつて送信待時間を決定する段階と、 前記送信待時間経過後、自己の処理装置が共通バスにデ
ータを送信する段階と、を有し、 全処理装置が行うデータのサイクリツクの送信を一定の
伝送周期内で行うことを特徴とするマスターレスシリア
ルバス占有制御方法。
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP61003434A JPH0648478B2 (ja) | 1986-01-13 | 1986-01-13 | マスタ−レスシリアルバス占有制御方法 |
| IN5/CAL/87A IN165881B (ja) | 1986-01-13 | 1987-01-01 | |
| CN 87100279 CN1008019B (zh) | 1986-01-13 | 1987-01-13 | 可编程控制器的无主控串行总线占有控制的方法和设备 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP61003434A JPH0648478B2 (ja) | 1986-01-13 | 1986-01-13 | マスタ−レスシリアルバス占有制御方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPS62162159A JPS62162159A (ja) | 1987-07-18 |
| JPH0648478B2 true JPH0648478B2 (ja) | 1994-06-22 |
Family
ID=11557255
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP61003434A Expired - Fee Related JPH0648478B2 (ja) | 1986-01-13 | 1986-01-13 | マスタ−レスシリアルバス占有制御方法 |
Country Status (3)
| Country | Link |
|---|---|
| JP (1) | JPH0648478B2 (ja) |
| CN (1) | CN1008019B (ja) |
| IN (1) | IN165881B (ja) |
Families Citing this family (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2566267B2 (ja) * | 1988-01-31 | 1996-12-25 | 松下電工株式会社 | 電話回線を使用した出退表示システム |
| CN104243189B (zh) * | 2013-06-09 | 2018-07-20 | 海尔集团公司 | 一种基于同一信道的多设备通信方法及其通信系统 |
| DE102019214721A1 (de) * | 2019-09-26 | 2021-04-01 | Robert Bosch Gmbh | Konfliktdetektor für eine Teilnehmerstation eines seriellen Bussystems und Verfahren zur Kommunikation in einem seriellen Bussystem |
Family Cites Families (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS5654145A (en) * | 1979-10-11 | 1981-05-14 | Nec Corp | Data transmission system between processors |
| JPS59167729A (ja) * | 1983-03-11 | 1984-09-21 | Fuji Xerox Co Ltd | マルチcpu通信装置 |
-
1986
- 1986-01-13 JP JP61003434A patent/JPH0648478B2/ja not_active Expired - Fee Related
-
1987
- 1987-01-01 IN IN5/CAL/87A patent/IN165881B/en unknown
- 1987-01-13 CN CN 87100279 patent/CN1008019B/zh not_active Expired
Also Published As
| Publication number | Publication date |
|---|---|
| CN1008019B (zh) | 1990-05-16 |
| IN165881B (ja) | 1990-02-03 |
| JPS62162159A (ja) | 1987-07-18 |
| CN87100279A (zh) | 1987-08-12 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4432054A (en) | Loop data transmission control method and system | |
| JPS6324346A (ja) | 情報伝達方式 | |
| US6981063B1 (en) | Method for time synchronization of a computer network, and computer network with time synchronization | |
| JP3108393B2 (ja) | Plcを用いた制御システム | |
| JPS6066538A (ja) | クロツク同期方法 | |
| US20160291556A1 (en) | Controller | |
| JPH06101732B2 (ja) | 通信制御方式 | |
| JPH0648478B2 (ja) | マスタ−レスシリアルバス占有制御方法 | |
| JP2968733B2 (ja) | シリアルバスコントローラ | |
| JP2007181207A (ja) | サブフレームによる同期多重化 | |
| CA2411788C (en) | Device and method for synchronising a system of coupled data processing facilities | |
| JP2004234098A (ja) | 時刻同期システム | |
| JPH0654445B2 (ja) | 分散形コントロ−ラのデ−タ伝送制御方法 | |
| US20240219882A1 (en) | Exchanging of a programmable logic controller | |
| JPH09219714A (ja) | 伝送制御システム | |
| JP2004133496A (ja) | コンピュータシステム | |
| Ferreira et al. | Enforcing consistency of communication requirements updates in FTT-CAN | |
| JP2821091B2 (ja) | 遠方監視制御装置および時刻同期装置 | |
| US20250330298A1 (en) | Control and monitoring signal transmission system | |
| JP3381463B2 (ja) | プログラマブルコントローラ | |
| JPH116628A (ja) | 暖房給湯機の制御装置 | |
| JP2000172658A (ja) | マスターレスシリアルバス占有制御方法および分散制御システム | |
| JP2002041492A (ja) | マルチプロセッサ装置 | |
| JPS63172301A (ja) | 多重系コントロ−ラ | |
| FI83467B (fi) | Processorsystem. |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| LAPS | Cancellation because of no payment of annual fees |