JP2003029809A - Cpuユニット並びにプログラマブルコントローラ - Google Patents
Cpuユニット並びにプログラマブルコントローラInfo
- Publication number
- JP2003029809A JP2003029809A JP2001220707A JP2001220707A JP2003029809A JP 2003029809 A JP2003029809 A JP 2003029809A JP 2001220707 A JP2001220707 A JP 2001220707A JP 2001220707 A JP2001220707 A JP 2001220707A JP 2003029809 A JP2003029809 A JP 2003029809A
- Authority
- JP
- Japan
- Prior art keywords
- unit
- remote
- data
- instruction
- slave
- 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.)
- Granted
Links
Landscapes
- Information Transfer Systems (AREA)
- Programmable Controllers (AREA)
Abstract
少なくし、高速にリフレッシュ処理をすることのできる
プログラマブルコントローラを提供すること 【解決手段】 PLC命令実行部12が、データメモリ
13をアクセスしながら命令実行をする。一方、リモー
トI/Oマスタ部14を設け、このリモートI/Oマス
タ部とリモートI/Oスレーブ23間でマスタ−スレー
ブ間通信を行い、データの送受を可能とする。また、リ
モートI/Oマスタ部は、マスタ−スレーブ間通信で得
られるI/Oデータは、データメモリに格納する。つま
り、データメモリは、PLC命令実行部とリモートI/
Oマスタ部の共有メモリとすることにより、I/Oデー
タ転送回数が削減される。
Description
並びにプログラマブルコントローラ(PLC)に関する
ものである。
で用いられるプログラマブルコントローラ(PLC)
は、入力機器(スイッチやセンサなど)のON/OFF
情報を入力し、ラダー言語などで書かれたシーケンスプ
ログラム(ユーザプログラム)に沿って論理演算(命
令)を実行して、その演算結果により、出力機器(リレ
ーやバルブ、アクチュエータなど)にON/OFF情報
の信号を出力することで制御を行う。
通信相手の機器の一つとして、リモートI/Oがある。
このリモートI/Oとの間で通信を行うためのネットワ
ーク構成の一例として、従来、図1に示すシステムによ
り実現している。
モートマスタユニット2が、I/Oバス3に接続されて
おり、I/Oバス3にリモートI/Oスレーブ4が接続
された構成をとる。CPUユニット1がリモートI/O
スレーブ4との間でデータの送受を行う場合、リモート
マスタユニット2を介して行うようになっている。
モートI/Oマスタ部2aと、リモートI/Oスレーブ
4との間でマスタ−スレーブ通信を行い、リモートI/
Oスレーブ4からの入力データをI/Oバスインタフェ
ース部2bを介して共有メモリ2cに一時格納する。
C命令実行部1aがデータメモリ1bをアクセスしなが
ら、命令を演算実行(命令実行)する。そして、リモー
トI/Oの入力データを取得するためには、I/Oバス
インタフェース部1c,I/Oバス3,I/Oバスイン
タフェース部2bを介してリモートマスタユニット2内
の共有メモリ2cに格納されたデータを読み出し取得す
る。
入力データをCPUユニット1のデータメモリ1bに格
納するためには、以下の手順に従って実行される。ま
ず、スイッチなどの接点の入力を受けたリモートI/O
スレーブ4が、その接点情報を内部のレジスタ(図示省
略)に記憶保持する。そして、リモートI/Oマスタ部
2aが各スレーブとシリアル通信をして、各リモートI
/Oスレーブ4の内部レジスタの入力データを取り込む
とともに、当該マスタ内のレジスタ(図示省略)に記憶
する。次いで、リモートI/Oマスタ部2aは、レジス
タ内の入力データをI/Oバスインタフェース部2bを
介して共有メモリ2cの所定データ領域に格納する(転
送する)。このリモートI/Oスレーブ4から入力デー
タを取得(受信)して共有メモリ2cに格納するまで
は、リモートI/Oマスタ部2aが主体となって行う。
データをCPUユニット1のデータメモリ1bに格納す
る処理は、まず、PLC命令実行部1aがI/Oリフレ
ッシュ処理を実行する際に共有メモリ2c内の入力デー
タをI/Oバス3経由で読み出してラッチし、所定のタ
イミングでそのラッチした入力データをデータメモリ1
bの所定のデータ領域に格納する。このように、入力デ
ータが、リモートI/Oスレーブ4のレジスタに格納さ
れてから実際にCPUユニット1のデータメモリ1bに
格納されるまでには、多数のデータ転送が行われる。
3に接続されたローカルI/Oユニット7からの入力デ
ータも格納される。そして、係る入力データの格納は、
まず、スイッチなどの接点の入力を受けたローカルI/
Oユニット7が、その接点情報を内部のレジスタ(図示
省略)に記憶保持しておく。そして、PLC命令実行部
1aがI/Oリフレッシュ処理を実行する際にローカル
I/Oユニット7のレジスタ内の入力データをI/Oバ
ス3経由で読み出してラッチし、所定のタイミングでそ
のラッチした入力データをデータメモリ1bの所定のデ
ータ領域に格納する。
入力データと、リモートI/Oスレーブ4の入力データ
は、共にPLCの各ユニットを接続するI/Oバス3を
経由してCPUユニット1に取り込まれる(同一系統を
使用する)ため、データの取り込みについて同時処理は
できず、連続処理(順次処理)により一方からの入力デ
ータを順番に取得することになる。
て得られた演算結果は、データメモリ1bの所定データ
領域に格納される。そして、その格納された演算結果
(出力データ)は、次のI/Oリフレッシュその他の周
辺処理の際に、PLC命令実行部1aがデータメモリ1
bから読み出し、I/Oバス3を介してリモートI/O
マスタ部ユニット2内の共有メモリ2c或いはローカル
I/Oユニット7のレジスタに格納する。この際も、入
力データの取得のときと同様に同一系統のI/Oバス3
を用いるので、順次処理していく。
データは、リモートI/Oマスタ部2aが読み出して
(転送して)レジスタに記憶し、所定のタイミングでそ
のレジスタに格納したデータをマスタ−スレーブ通信に
より、所望のリモートI/Oスレーブ4に送るようにな
る。このように、出力データの転送回数も多くなる。
のリモートI/Oに対するリフレッシュは、リモートI
/Oスレーブ4の入力データがPLC命令実行部1aで
使用できるまで、並びにPLC命令実行部1aの演算結
果が、リモートI/Oスレーブ4に反映されるまでに、
複数のデータ転送が発生し、効率が悪い。
送は、PLC命令実行部1aを使用して、実行されるた
め、本来の演算処理のための命令実行サイクルに影響を
与えるという問題がある。
トマスタユニット内の共有メモリ2cに、図示のタイミ
ングで入力データ(INデータ)が格納された場合、P
LC命令実行部1aにおける次の命令実行スキャンの後
のI/Oリフレッシュ等周辺処理のタイミングで通信ユ
ニット内処理を実行するとともにCPUユニット1内の
データメモリ1bに取り込まれる。そして、次の命令実
行スキャンで上記取り込まれた入力データに基づき、演
算処理を実行し、得られた結果(出力データ:OUTデ
ータ)は、共有メモリ2cに与えられる。このように、
リモートI/Oスレーブ4から入力データが送られてき
てから、その入力データが反映された出力データがリモ
ートI/Oスレーブ4に送信されるまでに要するI/O
応答時間の最大は、 命令実行スキャン×2+通信ユニット内処理×2 となる。
/O通信サイクル分は定常的に大きくなる。そのため、
I/Oバス3上に存在するローカルI/Oユニット7に
対するI/O応答性能も遅くなるという問題がある。す
なわち、上記したようにリモートマスタユニット2の共
有メモリ2cとの間のデータ通信と、ローカルI/Oユ
ニット7のレジスタとの間のデータ通信は、共に同一系
統であるI/Oバス3を用いてるので、同時に通信をす
ることはできないためである。
モートI/Oスレーブ4のリフレッシュ)と、命令実行
サイクルを非同期に実行する場合、I/O応答サイクル
(INデータ変化→演算処理→OUTデータ出力)の最
大値が大きくなる。そして、通信サイクルよりも命令実
行スキャンが大きい(長い)場合のI/O応答時間の最
大値は、図3に示すように、命令実行スキャン開始と同
時に入力データがリモートマスタユニット2(共有メモ
リ2c)に取り込まれた場合、その命令実行スキャン終
了に伴い実行されるI/Oリフレッシュ処理(REF)
の際に通信ユニット内処理が行われ、更にその次のリフ
レッシュ処理の際に実際に入力データがCPUユニット
1内のデータメモリ1bに取り込まれる。そして、次の
命令実行スキャンでは、取り込まれた入力データに基づ
いて演算処理が実行され、求められた出力データは、順
でデータが転送され最終的にリモートマスタユニット2
からリモートI/Oスレーブ4に向けて出力される。こ
のようにリモートI/Oスレーブ4から入力データが送
られてきてから、その入力データが反映された出力デー
タがリモートI/Oスレーブ4に送信されるまでに要す
るI/O応答時間の最大は、 通信サイクル×3+命令実行スキャン×2+通信ユニッ
ト内処理×2 となる。
ャンよりも長い場合には、図4に示す手順にしたがって
データの転送が行われるため、やはり、 通信サイクル×3+命令実行スキャン×2+通信ユニッ
ト内処理×2 となる。
ータ転送回数を少なくし、高速にリフレッシュ処理をす
ることのできるCPUユニット並びにプログラマブルコ
ントローラ(PLC)を提供することを目的としてい
る。
マブルコントローラは、命令を解読し、命令実行する命
令実行部と、その命令実行部に接続され、前記命令実行
する際に使用されるデータメモリとを備えたコントロー
ラであって、リモートI/Oスレーブとリモートアクセ
ス可能なリモートI/Oマスタ部を設け、そのリモート
I/Oマスタ部と前記命令実行部は、前記データメモリ
を共有メモリとしてアクセスするように構成した。
部は、外部のリモートI/Oスレーブとの間でデータ通
信(リモートI/Oの通信サイクル:リモートI/Oス
レーブリフレッシュ)を行い、リモートI/Oスレーブ
からの入力データをデータメモリに書き込む。命令実行
部は、命令実行する際にデータメモリをアクセスし、前
記入力データを読み出したり、命令実行して得られた出
力データをデータメモリに書き込む。この書き込まれた
出力データは、次のサイクルで、リモートI/Oマスタ
部が読み出し(転送し)、リモートI/Oスレーブのリ
フレッシュに反映される。
し、リモートI/Oマスタ部と命令実行部がそれぞれア
クセスし、I/Oデータの読み書きをするので、I/O
データの転送回数が削減され、転送にかかる時間を短縮
でき、高速にリフレッシュ処理ができる。さらに、命令
実行部がアクセスするデータメモリに入力データを格納
する処理は、リモートI/Oマスタ部が行うので、命令
実行部の負荷が軽減される。
数のユニットが、I/Oバスを介して接続されて構成さ
れるとともに、リモートI/Oスレーブに対してデータ
をリモートアクセスするプログラマブルコントローラで
あって、前記CPUユニットは、ユーザプログラムの命
令を解読して命令実行する命令実行部と、その命令実行
部が前記命令実行する際に使用する入力データと実行結
果として出力する出力データを記憶するデータメモリ
と、リモートI/Oスレーブに対してデータのシリアル
通信をすることで前記リモートアクセスを行うリモート
I/Oマスタ部と、前記データメモリに対するアクセス
を制御するアービタを備え、前記リモートI/Oマスタ
部と前記命令実行部とは、前記アービタにより調停され
て前記データメモリにアクセスするように構成すること
もできる。
一方が接続可能でCPUユニットに対してI/Oバスを
介してバス通信を行うI/Oユニットと、前記CPUユ
ニットとを含んで構成され、入力機器と出力機器の少な
くとも一方が接続可能なリモートI/Oスレーブとは、
シリアル通信を得るプログラマブルコントローラであっ
て、前記CPUユニットは、ユーザプログラムの命令を
解読して命令実行する命令実行部と、その命令実行部が
前記命令実行する際に使用する入力データと実行結果と
して出力する出力データを記憶するデータメモリと、リ
モートI/Oスレーブに対してデータのシリアル通信を
することで前記リモートアクセスを行うリモートI/O
マスタ部と、前記データメモリに対するアクセスを制御
するアービタを備え、前記CPUユニットにおける前記
I/Oユニットとの間のデータの送受と、前記リモート
I/Oスレーブとの間のデータの送受とは、別系統によ
る独立した通信処理で実行するように構成することもで
きる。
リにアクセスするようにしたため、アクセス競合制御さ
れ、チャネル単位や複数チャネル単位での同時性が保証
される。
と、I/Oリフレッシュ処理等の周辺処理をサイクリッ
クに実行するものであり、命令実行処理の終了時に終了
通知を発する機能を持ち、前記リモートI/Oマスタ部
は、前記終了通知をトリガとしてI/Oリフレッシュ動
作を行い、前記データメモリに対するデータ転送を行う
ようにすることができる。
部と命令実行部の動作の同期が採れるので、1回の命令
実行サイクル中における同一のデータ領域におけるデー
タの同時性が保証される。なお、終了通知は、実施の形
態ではEND命令に対応する。I/Oリフレッシュ動作
は、実施の形態に示すEND通信起動方式とEND通信
停止方式のいずれも採れる。
シュ命令を出力する機能を持ち、前記リモートI/Oマ
スタ部は、前記リフレッシュ命令をトリガとしてI/O
リフレッシュ動作を行い、前記データメモリに対するデ
ータ転送を行うようにすることもできる。このようにす
ると、任意のタイミングでリモートI/O上の入出力デ
ータをリフレッシュすることができる。
Oマスタ部は非同期に動作するようにしてもよい。この
ようにすると、同期をとる必要がないので、命令実行部
の負荷が更に削減する。そして、アービタを設けている
ので、少なくともチャネル単位でのデータの同時性は保
証されるので、問題はない。
処理と、I/Oリフレッシュ処理等の周辺処理をサイク
リックに実行するものであり、前記リモートI/Oマス
タ部は、前記命令実行処理とI/Oリフレッシュ処理等
の周辺処理を実行するのに要する時間を測定し、前記命
令実行処理の終了タイミングで、リモートI/Oスレー
ブとの通信サイクルが終了するように制御するように構
成するとよい。
行サイクル)が終了すると、遅滞なくリフレッシュ処理
が実行できるので、無駄が無く効率よく命令実行サイク
ルとリモートI/O通信サイクルを同期させて動作させ
ることができる。I/O応答性能も高速化できる。
記したプログラマブルコントローラを構成するCPUユ
ニットとすることができる。入力データを取り込んでユ
ーザプログラムに沿って演算実行し、その演算結果を出
力データとするプログラマブルコントローラに用いら
れ、I/OユニットをI/Oバスを介して接続可能にす
るとともに、リモートI/Oスレーブとリモートアクセ
ス可能に構成されるプログラマブルコントローラのCP
Uユニットである。そして、I/Oバスインタフェース
部を設け、前記I/Oユニットとは、前記I/Oバスを
介して前記入力データの受信と前記出力データの送信の
少なくとも一方を行い、リモートI/Oマスタ部を設
け、前記リモートI/Oスレーブとは、前記I/Oバス
を介すことなく前記リモートI/Oマスタ部を用いたシ
リアル通信により、前記入力データの受信と前記出力デ
ータの送信の少なくとも一方を行うように構成する。
て接続可能で、リモートI/Oスレーブとリモートアク
セス可能なプログラマブルコントローラのCPUユニッ
トであって、ユーザプログラムの命令を解読して命令実
行する命令実行部と、前記命令実行部が命令実行する際
に使用するデータまたは実行結果としてのデータを記憶
するデータメモリと、I/Oユニットに対してデータの
バス通信を行うI/Oバスインタフェース部と、リモー
トI/Oスレーブに対してデータのシリアル通信を行う
リモートI/Oマスタ部と、前記データメモリに対する
アクセスを制御するアービタを備え、前記リモートI/
Oマスタ部と前記命令実行部は、前記アービタにより調
停されて前記データメモリにアクセスするように構成す
ることができる。
を介して接続可能で、リモートI/Oスレーブとリモー
トアクセス可能なプログラマブルコントローラのCPU
ユニットであって、ユーザプログラムの命令を解読して
命令実行する命令実行部と、前記命令実行部が命令実行
する際に使用するデータまたは実行結果としてのデータ
を記憶するデータメモリと、I/Oユニットに対してデ
ータのバス通信を行うI/Oバスインタフェース部と、
リモートI/Oスレーブに対してデータのシリアル通信
を行うリモートI/Oマスタ部と、前記データメモリに
対するアクセスを制御するアービタを備え、前記I/O
バスを経由して送信と受信の少なくとも一方が行われる
データと、前記リモートI/Oマスタ部を経由して送信
と受信の少なくとも一方が行われるデータとが、前記ア
ービタにより調停されて前記データメモリに読み書きさ
れるように構成することができる。
形態を示している。良く知られているように、CPUユ
ニット,電源ユニット,CPUユニット,ローカルI/
Oユニットなどの各機能毎に構成される複数のユニット
をバスで接続することにより一体化し、PLCを形成す
るタイプのものがある。このバスが、I/Oデータを通
信するためのI/Oバスであり、また、電源もこのバス
を介して各ユニットに供給される。
Uユニット10は、従来と同様にI/Oバスインタフェ
ース部11を介してI/Oバス20に接続されており、
ローカルI/Oユニット21と通信可能となっている。
なお、本発明との関係で言えば、このI/Oバス20を
介して接続されるPLCは必須の構成ではない。
グラムで規定される命令を演算実行(命令実行)するP
LC命令実行部12を有し、データメモリ13からデー
タをアクセスしながら演算処理をする。つまり、データ
メモリ13に格納されたデータを読み出したり、命令実
行結果をデータメモリ13に書き込む処理をする。
に、リモートI/Oマスタ部14を設け、このリモート
I/Oマスタ部14とリモートI/Oスレーブ23とを
接続するようにしている。リモートI/Oマスタ部14
とリモートI/Oスレーブ23の間では、マスタ−スレ
ーブ間通信により、データの送受を可能としている。
間で送受するデータは、データメモリ13に格納するよ
うにしている。つまり、データメモリ13を、PLC命
令実行部12とリモートI/Oマスタ部14が扱う(ア
クセスする)共有メモリとした。
I/Oマスタ部14は、アービタ15を介してアクセス
をし、所定のデータ領域に対してデータの読み書きを行
うようにしている。このアービタ15によりアクセス競
合制御がなされ、同一のデータ領域に対してPLC命令
実行部12とリモートI/Oマスタ部14が同時に読み
書きをすることを抑止する。これにより、チャネル単位
或いは複数チャネル単位でのデータの同時性が保証され
る。
リとして使用し、リモートI/OのI/Oデータの転送
回数が削減される。更に、リモートI/Oスレーブ23
からの入力データをCPUユニット10内のデータメモ
リ13に格納する処理や、係るデータメモリ13に格納
された演算結果(リモートI/Oスレーブ23への出力
データ)の出力処理はリモートI/Oマスタ部14が実
行する。従って、係る処理を従来行っていたPLC命令
実行部12のI/Oデータリフレッシュ負荷が軽減され
る。更にまた、リモートI/Oマスタ部14から直接デ
ータメモリ13に転送されるので、PLC命令実行部1
2のI/O転送に係る時間を短縮することができ、I/
O応答性能も高速化する。
Oユニット21のI/Oデータは、従来と同様にPLC
命令実行部12のI/Oリフレッシュその他の周辺処理
の際に、I/Oバス20を経由して、データの送受が行
われる。つまり、入力データは、PLC命令実行部12
がラッチし、データメモリ13の所定のデータ領域に書
き込む。また、データメモリ13に格納された出力デー
タは、PLC命令実行部12により読み出され、I/O
バス20を介してローカルI/Oユニット21に書き込
まれる。
とのI/Oデータの送受はI/Oバス20を介して行わ
れ、リモートI/Oスレーブ23とのI/Oデータの送
受はI/Oバス20を介することなくリモートI/Oマ
スタ部14を経由した別系統で独立して行われる。従っ
て、それぞれを同時並行に処理することができ、全体の
処理時間が短縮される。
で通信されるI/Oデータも、データメモリ13に格納
されるので、ローカルI/Oユニット21のI/Oデー
タと、リモートI/Oスレーブ23のI/Oデータメモ
リ13へのアクセスの調停もアービタ15により行わ
れ、同時にアクセスされないようにしている。なお、調
停が行われるのは実際のデータメモリ13へのアクセス
であるので、例えば、リモートI/Oマスタ部14がリ
モートI/Oスレーブ23からの入力データを受信し、
内部レジスタに格納する処理と、PLC命令実行部12
が楼閣I/Oユニット21から入力データを取得する処
理は、上記したように同時並列に処理可能である。
I/Oマスタ部14は、相互に制御信号を送受し、効率
よくI/Oリフレッシュ処理を実行するようにしてい
る。具体的には、図6に示すように、PLC命令実行部
12は、ユーザプログラムで規定される命令を順次命令
実行し、命令実行の際にデータメモリ13をアクセス
し、入力データを取得したり、演算結果の出力データを
格納する。そして、命令実行が終了した際に、END命
令実行を出力する。
記したEND命令が出力されるのをモニタリングしてお
り、END命令実行をトリガとして、所定のI/Oリフ
レッシュ動作を実行し、処理が完了すると、制御信号と
して転送完了命令を出力する。PLC命令実行部12
は、この転送終了命令をモニタリングし、その命令が出
力されると、今回のI/Oリフレッシュ処理が終了した
と判断し、次のサイクルに移行する。つまり、PLC命
令実行部12は、I/Oリフレッシュ+周辺処理フェー
ズでリモートI/Oマスタ部14からの転送終了通知の
みチェックしているだけで、リモート上のデータが全て
同期したタイミングでデータメモリ13にリフレッシュ
される。この点でも、PLC命令実行部12の負荷が軽
減される。
了通知に基づいて動作するPLC命令実行部12とリモ
ートI/Oマスタ部14の機能は、以下の通りである。
すなわち、まず図6(a)に示すEND通信起動方式の
場合、リモートI/Oマスタ部14は、PLC命令実行
部12からのEND命令をトリガとして、データメモリ
13に格納されている出力データを読み出す(OUT転
送)。次いで、リモートI/Oの通信を起動(1回)す
る。これに伴い、読み出した出力データを送信すべきリ
モートI/Oスレーブ23(出力機器)に対して送信し
(OUT送信)、リモートI/Oスレーブ23からの入
力データを受信する(IN受信)。その後、受信した入
力データを、データメモリ13の所定領域に格納する
(IN転送)。そして、係る転送処理が終了すると、P
LC命令実行部12に向けて転送終了通知を発行する。
(b)に示すようにEND通信停止方式をとることもで
きる。この方式は、上記したEND通信起動方式とは逆
に、リモートI/Oの通信は定常的に起動させておき、
リモートI/Oマスタ部14とリモートI/Oスレーブ
23の間で出力データの送信(OUT送信)と入力デー
タの受信(IN受信)を繰り返し実行する。
D命令を受信すると、リモートI/Oマスタ部14は、
リモートI/Oの通信を停止する。つまり、END命令
を受けたときに実行しているリモートI/O通信が終了
(IN受信処理終了)するのを待って、停止する。
モートI/Oスレーブ23からの入力データをデータメ
モリ13の所定のデータ領域に書き込む(IN転送)。
次いで、データメモリ13に格納された出力データを読
み出す(OUT転送)。その後、転送終了通知を発行す
るとともに、リモートI/O通信を再開し、読み出した
出力データを所定のリモートI/Oスレーブ23に向け
て送信する(OUT送信)。
令実行部12の終了に伴い出力されるEND命令をトリ
ガとしてリモートI/Oマスタ部14はデータの転送を
行い、リモートI/O上の入出力データをリフレッシュ
するようにしたが、本発明はこれに限ることはなく、例
えば、PLC命令実行部12からリモートI/O通信起
動指令や、停止指令を出力するようにすることもでき
る。係る構成(都度リフレッシュ方式)をとることによ
り、任意のタイミングでリモートI/Oのリフレッシュ
を行うことができる。
例は、PLC命令実行部12とリモートI/Oマスタ部
14の同期をとるようにしたが、本発明は必ずしも同期
をとる必要はなく、それぞれ非同期に実行し、共有メモ
リであるデータメモリ13に対するアクセスも非同期に
転送するように構成することもできる。この場合でも、
アービタ15により、1チャネル(通常16点)或いは
複数チャネル単位での同時性は保証される。
ートI/Oマスタ部14は、互いに影響されることなく
実行され、タイミングをとる必要がないので、より高速
に実行することができる。なお、1サイクルの命令実行
中において、同一のデータ領域に格納されているデータ
値が変更されることはもちろんあるが、少なくとも1つ
の命令を実行中でのデータの同時性は保証される。この
場合の入出力データ(INデータ/OUTデータ)の転
送タイミングは、例えば、図7に示すようになり、最大
I/O応答時間は、 通信サイクル×3+命令実行スキャン×2−I/Oリフ
レッシュ周辺処理 となる。従って、図3,図4に示した従来の非同期リフ
レッシュ方式に比べて、通信ユニット内の転送処理×2
+(I/Oバス転送時間−データメモリ転送時間)×2
+I/Oリフレッシュ/周辺処理分だけ高速化される。
4の機能として、上記した実施の形態を基本とし、さら
に、命令実行スキャンタイム(命令実行時間十I/Oリ
フレッシュ/周辺サービス時間)を測定し、命令実行フ
ェーズ終了(END命令の出力)時にリモート通信サイ
クルが終了するように通信を起動する機能を設けると良
い。
には、入力データを受信(IN受信)しているので、す
ぐにデータメモリ13への転送が行える。よって、さら
なる高速処理が可能となる。
と、図8のようになる。すなわち、前回測定した命令実
行スキャンタイムがC1測定時間に基づき、入出力デー
タの通信サイクルが、次の命令実行スキャンタイムの終
了時点A1で終了するようにB1のときに通信を起動す
る。これにより、入力データは、命令実行が終了した時
点A1で、スムーズに無駄なく入力データのデータメモ
リ13への転送が実行できる。
点で通信サイクルが終了するようにB2時点で通信を起
動する。従って、命令実行により求められ、データメモ
リ13に格納された出力データ(OUTデータ)は、R
EFフェーズで遅滞なくリモートI/O通信によりリモ
ートI/Oマスタ部14に転送され、その後、OUTデ
ータリフレッシュのために通信サイクルを起動し、所望
のリモートI/Oスレーブ23に送信される。
I/O通信サイクルをロスなく同期させることができ、
図示した例(入力データが矢印のタイミングで入力さ
れた場合)におけるI/O応答時間は、 通信サイクル×1+命令実行スキャン×2+出力データ
転送時間 となる。また、入力データが矢印のタイミングで入力
された場合には、命令実行スキャンタイムが1回分短く
なるので、 通信サイクル×1+命令実行スキャン×1+出力データ
転送時間 となる。つまり、入力データの入力タイミングで上記し
た範囲内となり、矢印のタイミングの場合が最大I/
O応答時間となる。なお、図中一点鎖線の矢印は、デー
タ入力から演算ひいてはデータ出力までのデータの流れ
(I/O応答)を示している。
I/Oマスタ部を設け、リモートI/Oマスタ部と、命
令を実行する命令実行部が、データメモリを共有メモリ
として互いにアクセスするようにしたため、一方が書き
込んだデータを他方が読み出すことができる。よって、
I/Oリフレッシュに伴うデータ転送回数が少なくな
り、高速にリフレッシュ処理をすることができる。
ある。(b)は、END通信停止方式を説明する図であ
る。
Claims (11)
- 【請求項1】 入力データを取り込んでユーザプログラ
ムに沿って演算実行し、その演算結果を出力データとす
るプログラマブルコントローラに用いられ、I/Oユニ
ットをI/Oバスを介して接続可能にするとともに、リ
モートI/Oスレーブとリモートアクセス可能に構成さ
れるプログラマブルコントローラのCPUユニットであ
って、 I/Oバスインタフェース部を設け、前記I/Oユニッ
トとは、前記I/Oバスを介して前記入力データの受信
と前記出力データの送信の少なくとも一方を行い、 リモートI/Oマスタ部を設け、前記リモートI/Oス
レーブとは、前記I/Oバスを介すことなく前記リモー
トI/Oマスタ部を用いたシリアル通信により、前記入
力データの受信と前記出力データの送信の少なくとも一
方を行うようにしたことを特徴とするCPUユニット。 - 【請求項2】 CPUユニットを含む複数のユニット
が、I/Oバスを介して接続されて構成されるととも
に、リモートI/Oスレーブに対してデータをリモート
アクセスするプログラマブルコントローラであって、 前記CPUユニットは、ユーザプログラムの命令を解読
して命令実行する命令実行部と、その命令実行部が前記
命令実行する際に使用する入力データと実行結果として
出力する出力データを記憶するデータメモリと、リモー
トI/Oスレーブに対してデータのシリアル通信をする
ことで前記リモートアクセスを行うリモートI/Oマス
タ部と、前記データメモリに対するアクセスを制御する
アービタを備え、前記リモートI/Oマスタ部と前記命
令実行部とは、前記アービタにより調停されて前記デー
タメモリにアクセスするように構成したことを特徴とす
るプログラマブルコントローラ。 - 【請求項3】 入力機器と出力機器の少なくとも一方が
接続可能でCPUユニットに対してI/Oバスを介して
バス通信を行うI/Oユニットと、前記CPUユニット
とを含んで構成され、入力機器と出力機器の少なくとも
一方が接続可能なリモートI/Oスレーブに対してシリ
アル通信をするプログラマブルコントローラであって、 前記CPUユニットは、ユーザプログラムの命令を解読
して命令実行する命令実行部と、その命令実行部が前記
命令実行する際に使用する入力データと実行結果として
出力する出力データを記憶するデータメモリと、リモー
トI/Oスレーブに対してデータのシリアル通信をする
ことで前記リモートアクセスを行うリモートI/Oマス
タ部と、前記データメモリに対するアクセスを制御する
アービタを備え、 前記I/Oバスを経由して送信と受信の少なくとも一方
が行われるデータと、前記リモートI/Oマスタ部を経
由して送信と受信の少なくとも一方が行われるデータと
が、前記アービタにより調停されて前記データメモリに
読み書きされるように構成したことを特徴とするプログ
ラマブルコントローラ。 - 【請求項4】 入力機器と出力機器の少なくとも一方が
接続可能でCPUユニットに対してI/Oバスを介して
バス通信を行うI/Oユニットと、前記CPUユニット
とを含んで構成され、入力機器と出力機器の少なくとも
一方が接続可能なリモートI/Oスレーブとは、シリア
ル通信を得るプログラマブルコントローラであって、 前記CPUユニットは、ユーザプログラムの命令を解読
して命令実行する命令実行部と、その命令実行部が前記
命令実行する際に使用する入力データと実行結果として
出力する出力データを記憶するデータメモリと、リモー
トI/Oスレーブに対してデータのシリアル通信をする
ことで前記リモートアクセスを行うリモートI/Oマス
タ部と、前記データメモリに対するアクセスを制御する
アービタを備え、 前記CPUユニットにおける前記I/Oユニットとの間
のデータの送受と、前記リモートI/Oスレーブとの間
のデータの送受とは、別系統による独立した通信処理で
実行するように構成したことを特徴とするプログラマブ
ルコントローラ。 - 【請求項5】 I/OユニットをI/Oバスを介して接
続可能で、リモートI/Oスレーブとリモートアクセス
可能なプログラマブルコントローラのCPUユニットで
あって、 ユーザプログラムの命令を解読して命令実行する命令実
行部と、 前記命令実行部が命令実行する際に使用するデータまた
は実行結果としてのデータを記憶するデータメモリと、 I/Oユニットに対してデータのバス通信を行うI/O
バスインタフェース部と、 リモートI/Oスレーブに対してデータのシリアル通信
を行うリモートI/Oマスタ部と、 前記データメモリに対するアクセスを制御するアービタ
を備え、 前記リモートI/Oマスタ部と前記命令実行部は、前記
アービタにより調停されて前記データメモリにアクセス
するように構成したことを特徴とするCPUユニット。 - 【請求項6】 I/OユニットをI/Oバスを介して接
続可能で、リモートI/Oスレーブとリモートアクセス
可能なプログラマブルコントローラのCPUユニットで
あって、 ユーザプログラムの命令を解読して命令実行する命令実
行部と、 前記命令実行部が命令実行する際に使用するデータまた
は実行結果としてのデータを記憶するデータメモリと、 I/Oユニットに対してデータのバス通信を行うI/O
バスインタフェース部と、 リモートI/Oスレーブに対してデータのシリアル通信
を行うリモートI/Oマスタ部と、 前記データメモリに対するアクセスを制御するアービタ
を備え、 前記I/Oバスを経由して送信と受信の少なくとも一方
が行われるデータと、前記リモートI/Oマスタ部を経
由して送信と受信の少なくとも一方が行われるデータと
が、前記アービタにより調停されて前記データメモリに
読み書きされるように構成したことを特徴とするCPU
ユニット。 - 【請求項7】 前記命令実行部は、命令実行処理と、I
/Oリフレッシュ処理等の周辺処理をサイクリックに実
行するものであり、命令実行処理の終了時に終了通知を
発する機能を持ち、 前記リモートI/Oマスタ部は、前記終了通知をトリガ
としてI/Oリフレッシュ動作を行い、前記データメモ
リに対するデータ転送を行うことを特徴とする請求項2
から4のいずれか1項に記載のプログラマブルコントロ
ーラ。 - 【請求項8】 前記命令実行部は、I/Oリフレッシュ
命令を出力する機能を持ち、 前記リモートI/Oマスタ部は、前記リフレッシュ命令
をトリガとしてI/Oリフレッシュ動作を行い、前記デ
ータメモリに対するデータ転送を行うことを特徴とする
請求項2から4のいずれか1項に記載のプログラマブル
コントローラ。 - 【請求項9】 前記命令実行部と前記リモートI/Oマ
スタ部は非同期に動作することを特徴とする請求項2か
ら4のいずれか1項に記載のプログラマブルコントロー
ラ。 - 【請求項10】 前記命令実行部は、命令実行処理と、
I/Oリフレッシュ処理等の周辺処理をサイクリックに
実行するものであり、 前記リモートI/Oマスタ部は、前記命令実行処理とI
/Oリフレッシュ処理等の周辺処理を実行するのに要す
る時間を測定し、前記命令実行処理の終了タイミング
で、リモートI/Oスレーブとの通信サイクルが終了す
るように制御するように構成したことを特徴とする請求
項2から4,6,7のいずれか1項に記載のプログラマ
ブルコントローラ。 - 【請求項11】 命令を解読し、命令実行する命令実行
部と、 その命令実行部に接続され、前記命令実行する際に使用
されるデータメモリとを備えたコントローラであって、 リモートI/Oスレーブとリモートアクセス可能なリモ
ートI/Oマスタ部を設け、 そのリモートI/Oマスタ部と前記命令実行部は、前記
データメモリを共有メモリとしてアクセスする機能を備
えたことを特徴とするプログラマブルコントローラ。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001220707A JP3669302B2 (ja) | 2001-07-19 | 2001-07-19 | プログラマブルコントローラ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001220707A JP3669302B2 (ja) | 2001-07-19 | 2001-07-19 | プログラマブルコントローラ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2003029809A true JP2003029809A (ja) | 2003-01-31 |
JP3669302B2 JP3669302B2 (ja) | 2005-07-06 |
Family
ID=19054489
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001220707A Expired - Lifetime JP3669302B2 (ja) | 2001-07-19 | 2001-07-19 | プログラマブルコントローラ |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3669302B2 (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7640371B2 (en) | 2003-08-04 | 2009-12-29 | Nec Corporation | Integrated circuit and information processing apparatus |
US7643888B2 (en) | 2004-09-29 | 2010-01-05 | Kabushiki Kaisha Toshiba | Control apparatus |
WO2012124137A1 (ja) | 2011-03-15 | 2012-09-20 | オムロン株式会社 | Plcのcpuユニット、plc用のシステムプログラムおよびplc用のシステムプログラムを格納した記録媒体 |
JP2016110458A (ja) * | 2014-12-08 | 2016-06-20 | 株式会社キーエンス | プログラマブル・ロジック・コントローラ、基本ユニット、制御方法およびプログラム |
CN113661451A (zh) * | 2019-04-16 | 2021-11-16 | 三菱电机株式会社 | 程序创建辅助装置、程序创建辅助方法及程序 |
JP7034399B1 (ja) * | 2021-06-25 | 2022-03-11 | 三菱電機株式会社 | 入力ユニット、制御システム、通信方法及びプログラム |
-
2001
- 2001-07-19 JP JP2001220707A patent/JP3669302B2/ja not_active Expired - Lifetime
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7640371B2 (en) | 2003-08-04 | 2009-12-29 | Nec Corporation | Integrated circuit and information processing apparatus |
CN1581127B (zh) * | 2003-08-04 | 2010-10-06 | 日本电气株式会社 | 集成电路和信息处理装置 |
US7643888B2 (en) | 2004-09-29 | 2010-01-05 | Kabushiki Kaisha Toshiba | Control apparatus |
WO2012124137A1 (ja) | 2011-03-15 | 2012-09-20 | オムロン株式会社 | Plcのcpuユニット、plc用のシステムプログラムおよびplc用のシステムプログラムを格納した記録媒体 |
US9568905B2 (en) | 2011-03-15 | 2017-02-14 | Omron Corporation | CPU of PLC, system program for PLC, and recording medium storing system program for PLC |
JP2016110458A (ja) * | 2014-12-08 | 2016-06-20 | 株式会社キーエンス | プログラマブル・ロジック・コントローラ、基本ユニット、制御方法およびプログラム |
CN113661451A (zh) * | 2019-04-16 | 2021-11-16 | 三菱电机株式会社 | 程序创建辅助装置、程序创建辅助方法及程序 |
JP7034399B1 (ja) * | 2021-06-25 | 2022-03-11 | 三菱電機株式会社 | 入力ユニット、制御システム、通信方法及びプログラム |
WO2022269889A1 (ja) * | 2021-06-25 | 2022-12-29 | 三菱電機株式会社 | 入力ユニット、制御システム、通信方法及びプログラム |
CN116710857A (zh) * | 2021-06-25 | 2023-09-05 | 三菱电机株式会社 | 输入单元、控制系统、通信方法及程序 |
Also Published As
Publication number | Publication date |
---|---|
JP3669302B2 (ja) | 2005-07-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10409749B2 (en) | Semiconductor device and system provided with a communication interface | |
JPH06231074A (ja) | システムバスの多重アクセス方式 | |
JP2003029809A (ja) | Cpuユニット並びにプログラマブルコントローラ | |
US7080175B2 (en) | Network system | |
CN110169017B (zh) | 控制装置以及通信装置 | |
JP2003036101A (ja) | 冗長化コントローラ | |
US6845418B2 (en) | Bus system for master-slave device accesses, has multiple pseudo-delayer connected to controllers which delay and output access commands to slave devices for having longer latency periods | |
US7302508B2 (en) | Apparatus and method for high speed data transfer | |
CN110178344B (zh) | 控制装置以及通信装置 | |
JP3402332B2 (ja) | プログラマブル・コントローラのリモートi/oシステム | |
JP2522412B2 (ja) | プログラマブルコントロ―ラと入出力装置の間の通信方法 | |
JPH05257852A (ja) | プロセスデータ処理システムおよび処理方法 | |
JPS6232483B2 (ja) | ||
JPH0272411A (ja) | プログラマブルコントローラシステム | |
JP2754681B2 (ja) | 分散型コントローラ | |
JP2002297209A (ja) | シーケンス制御装置におけるシーケンスプログラム格納方法 | |
JP2985276B2 (ja) | 通信システム | |
JPH0792900A (ja) | プログラマブルコントローラ | |
JP2850354B2 (ja) | 分散型コントローラ | |
JP2730189B2 (ja) | 分散型コントローラ | |
JPH0695718A (ja) | プログラマブル・コントローラのリモートi/oシステム | |
JPH0526201B2 (ja) | ||
JP2002232440A (ja) | 通信端末の内部通信方法 | |
JPS6220006A (ja) | プログラマブルコントロ−ラのリモ−トi/oリンク方式 | |
JPH07230304A (ja) | Pcシステムのデュアル制御方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20041111 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041117 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050114 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050322 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050404 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 3669302 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090422 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100422 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110422 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130422 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130422 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140422 Year of fee payment: 9 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |