JP2004038555A - プログラマブルコントローラ - Google Patents

プログラマブルコントローラ Download PDF

Info

Publication number
JP2004038555A
JP2004038555A JP2002194665A JP2002194665A JP2004038555A JP 2004038555 A JP2004038555 A JP 2004038555A JP 2002194665 A JP2002194665 A JP 2002194665A JP 2002194665 A JP2002194665 A JP 2002194665A JP 2004038555 A JP2004038555 A JP 2004038555A
Authority
JP
Japan
Prior art keywords
execution
control
cycle
processor
storage means
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
Application number
JP2002194665A
Other languages
English (en)
Other versions
JP4024603B2 (ja
Inventor
Hiroyuki Kusakabe
日下部 宏之
Hitoshi Ohata
大畑 斉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2002194665A priority Critical patent/JP4024603B2/ja
Publication of JP2004038555A publication Critical patent/JP2004038555A/ja
Application granted granted Critical
Publication of JP4024603B2 publication Critical patent/JP4024603B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Programmable Controllers (AREA)

Abstract

【課題】高速なスキャン周期を実現可能とするプログラマブルコントローラを提供する。
【解決手段】プログラマブルコントローラ1は、管理プロセッサ11、プログラムメモリ(第1のメモリ)12、データメモリ(第2のメモリ)13、I/O装置14、専用プロセッサ15、ワークメモリ18、通信インタフェース19、バス16及び17、及びモニタ装置10を備えており、データメモリ13には、実行カウンタ131、完了カウンタ132及び制御周期133が設けられている。これにより、管理プロセッサ11と専用プロセッサ15の動作に同期がとられ、専用プロセッサ15は、I/O入出力、タイマ更新およびシーケンスプログラム実行を行うことができる。
【選択図】   図1

Description

【0001】
【発明の属する技術分野】
本発明は鉄鋼、製紙プラントや上下水道などの公共システム、自動車産業など産業用システムの制御に広く使用されているプログラマブルコントローラに関する。
【0002】
【従来の技術】
図16は管理プロセッサ及び制御用専用プロセッサ(以下、専用プロセッサと呼ぶ)を有する従来のプログラマブルコントローラの1スキャンの動作を示している図である。ここで、1スキャンとは、シーケンスプログラムの実行及びシーケンスプログラム実行に関連した一連の処理行程を意味し、具体的には、プログラマブルコントローラに接続されている入出力モジュールと入出力データのやりとりを行うI/O入出力、シーケンスプログラム中のタイマ演算において使われるタイマ値を更新するタイマ更新、及びシーケンスプログラム実行で構成されている。
【0003】
この図においては、管理プロセッサは、I/O入出力およびタイマ更新を行い、これらの処理が完了した後にシーケンスプログラム実行用の専用プロセッサへ起動要求を行い、起動要求を受け付けた専用プロセッサは、シーケンスプログラムを実行し、実行が完了すると管理プロセッサへ完了通知を発行する。一方、専用プロセッサがシーケンスプログラムを実行している間は、管理プロセッサは並列処理として、上位監視装置との伝送処理を行っている。そして、専用プロセッサからの完了通知を受け付けた管理プロセッサは、再びI/O入出力から始まる1スキャンの動作を繰り返す。
【0004】
【発明が解決しようとする課題】
ところで、このような管理プロセッサの動作においては、管理プロセッサがスキャン全体の管理を行っているため、I/O入出力、タイマ更新及び専用プロセッサのための起動によるオーバーヘッド時間が発生する。また、現在の制御システムにおいては、上位監視装置とプログラムコントローラとの接続は必須となってきているため、管理プロセッサの伝送処理による負荷は増大する傾向がある。
【0005】
このため、これらの要因から、より高速なスキャン周期の制御を必要とする分野においては、プログラマブルコントローラを適用できないという課題がある。即ち、低速なスキャン周期の場合には、上述した管理用プロセッサがI/O入出力およびタイマ更新を行い、これらの処理が完了した後にシーケンスプログラム実行用の制御用専用プロセッサがシーケンスプログラム実行を実施するという方式で問題はないが、より高速なスキャン周期の場合においては、管理プロセッサへの負荷が大きいため、現状方式のプログラマブルコントローラを適用することができないという課題がある。
【0006】
本発明は、上記の課題を解決するためになされたものであり、高速なスキャン周期を実現可能とするプログラマブルコントローラを提供することを目的とする。
【0007】
【課題を解決するための手段】
上記目的を達成するため、請求項1記載の本発明は、全体の制御を行う管理プロセッサと、シーケンスプログラム実行用の制御処理専用プロセッサとを備えて、入出力処理とタイマ更新処理とシーケンスプログラム実行処理からなるスキャン処理を一定周期で行うプログラマブルコントローラにおいて、前記シーケンスプログラムの実行回数を記憶する実行回数記憶手段と、前記シーケンスプログラムの実行完了回数を記憶する実行完了回数記憶手段と、前記一定周期を制御周期として記憶する制御周期記憶手段と、前記制御処理専用プロセッサが前記実行回数記憶手段、実行完了回数記憶手段及び制御周期記憶手段に記憶された値に基づいて前記スキャン処理を実行するように制御するスキャン制御手段と、を有することを要旨とする。
【0008】
請求項1記載の本発明にあっては、管理プロセッサと制御処理専用プロセッサを備えたプログラマブルコントローラにおいて、実行回数記憶手段、実行完了回数記憶手段、及び制御周期記憶手段を設けることにより、制御処理専用プロセッサが、入出力処理、タイマ更新処理、及びシーケンスプログラム実行処理からなる一定周期のスキャン処理を実行する。これにより、一定周期のスキャン処理において、従来、管理プロセッサが実行していた入出力処理及びタイマ更新処理を、制御処理専用プロセッサが実行するので、管理プロセッサの負荷が軽減され、高速なスキャン周期の制御が可能となる。
【0009】
請求項2記載の本発明は、請求項1記載の発明において、前記実行回数記憶手段は、前記管理プロセッサによって前記一定周期ごとに実行回数値が更新され、前記実行完了回数記憶手段は、前記制御処理専用プロセッサによってシーケンスプログラム実行完了後に実行完了回数値が更新され、前記スキャン制御手段は、前記実行回数値と前記実行完了回数値との差に基づき、前記制御処理専用プロセッサが前記入出力処理を開始し、前記制御周期記憶手段に記憶している制御周期を用いて前記タイマ更新処理を実行するように制御することを要旨とする。
【0010】
請求項2記載の本発明にあっては、管理プロセッサが一定周期で実行回数値を更新し、制御処理専用プロセッサがシーケンスプログラム実行完了後に実行完了回数値を更新する。そして、制御処理専用プロセッサが実行回数値と実行完了回数値との差に基づき入出力処理を開始し、制御周期を用いてタイマ更新処理を実行する。これにより、専用制御プロセッサは、実行回数値と実行完了回数値を監視していれば、制御周期を把握できるので、入出力処理から始まる一連のスキャン処理を開始することができる。また、制御周期記憶手段に記憶している制御周期を差分タイマ値としてタイマ更新処理をすることができる。
【0011】
請求項3記載の本発明は、請求項1記載の発明において、前記スキャン制御手段は、前記実行回数値と前記実行完了回数値に基づき、前記制御処理専用プロセッサが前記管理プロセッサに異常状態の旨を通知するように制御することを要旨とする。
【0012】
請求項3記載の本発明にあっては、実行回数値と実行完了回数値に基づいて、制御処理専用プロセッサが、スキャン動作の異常状態を検知し、その旨を管理プロセッサに通知する。これにより、管理プロセッサは、制御処理専用プロセッサのスキャン動作の異常状態を把握できるので、異常状態の場合はユーザに通知することができる。
【0013】
請求項4記載の本発明は、請求項1記載の発明において、前記実行回数記憶手段、実行完了回数記憶手段及び制御周期記憶手段は、制御周期を計測するカウンタ回路に設けられていることを要旨とする。
【0014】
請求項4記載の本発明にあっては、実行回数記憶手段、実行完了回数記憶手段、制御周期記憶手段を有するカウンタ回路を付加することにより、制御処理専用プロセッサが、カウンタ入出力処理、タイマ更新処理、及びシーケンスプログラム実行処理からなるスキャン処理を実行する。これにより、従来、管理プロセッサが実行していた入出力処理及びタイマ更新処理を、ハードウェアとしてのカウンタ回路を利用することで、制御処理専用プロセッサが実行するので、管理プロセッサの負荷が軽減され、高速なスキャン周期の制御が可能となる。
【0015】
請求項5記載の本発明は、請求項4記載の発明において、前記実行回数記憶手段は、前記カウンタ回路によって前記一定周期ごとに実行回数値が更新され、前記実行完了回数記憶手段は、前記制御処理専用プロセッサによってシーケンスプログラム実行完了後に実行完了回数値が更新され、前記スキャン制御手段は、前記実行回数値と前記実行完了回数値との差に基づき、前記制御処理専用プロセッサが前記入出力処理を開始し、前記制御周期記憶手段に記憶している制御周期を用いて前記タイマ更新処理を実行するように制御することを要旨とする。
【0016】
請求項5記載の本発明にあっては、カウンタ回路が一定周期で実行回数値を更新し、制御処理専用プロセッサがシーケンスプログラム実行完了後に実行完了回数値を更新する。そして、制御処理専用プロセッサが実行回数値と実行完了回数値との差に基づき入出力処理を開始し、制御周期を用いてタイマ更新処理を実行する。これにより、専用制御プロセッサは、実行回数値と実行完了回数値を監視していれば、制御周期を把握できるので、入出力処理から始まる一連のスキャン処理を開始することができる。また、制御周期記憶手段に記憶している制御周期を差分タイマ値としてタイマ更新処理をすることができる。
【0017】
請求項6記載の本発明は、全体の制御を行う管理プロセッサと、シーケンスプログラム実行用の制御処理専用プロセッサとを備えて、入出力処理とタイマ更新処理とシーケンスプログラム実行処理からなるスキャン処理をフローティング周期で行うプログラマブルコントローラにおいて、前記フローティング周期を制御周期として記憶する制御周期記憶手段と、前記制御処理専用プロセッサが前記制御周期記憶手段に記憶された値に基づいて前記スキャン処理を実行するように制御するスキャン制御手段と、を有することを要旨とする。
【0018】
ここで、フローティング周期とは、スキャン処理において、制御周期が一定周期でない場合を意味する。
【0019】
請求項6記載の本発明にあっては、管理プロセッサと制御処理専用プロセッサを備えたプログラマブルコントローラにおいて、フローティング周期の制御周期記憶手段を設けることにより、制御処理専用プロセッサが、入出力処理、タイマ更新処理、及びシーケンスプログラム実行処理からなるフローティング周期のスキャン処理を実行する。これにより、フローティング周期の場合においても、従来、管理プロセッサが実行していた入出力処理及びタイマ更新処理を、制御処理専用プロセッサが実行するので、管理プロセッサの負荷が軽減され、高速なスキャン周期の制御が可能となる。
【0020】
請求項7記載の本発明は、請求項6記載の発明において、前記制御周期記憶手段は、基準パルスを発生させ、この基準パルスの数を計測するタイマ回路の前スキャン及び現スキャン時の計測値に基づいて制御周期値が更新され、前記スキャン制御手段は、前記制御処理専用プロセッサが、前記制御周期値を用いて前記タイマ更新処理を実行するように制御することを要旨とする。
【0021】
請求項7記載の本発明にあっては、基準パルスを発生させ、この基準パルスの数を計測するタイマ回路を付加することにより、フローティング周期を計測して、この値を用いてタイマ更新処理を実行する。これにより、従来、管理プロセッサが実行していた入出力処理及びタイマ更新処理を、ハードウェアとしてのタイマ回路を利用することで、制御処理専用プロセッサがフローティング周期のスキャン処理を実行することができる。
【0022】
請求項8記載の本発明は、全体の制御を行う管理プロセッサと、シーケンスプログラム実行用の制御処理専用プロセッサとを備えて、入出力処理とタイマ更新処理とシーケンスプログラム実行処理からなるスキャン処理を一定周期又はフローティング周期で行うプログラマブルコントローラにおいて、前記シーケンスプログラムの実行回数を記憶する実行回数記憶手段と、前記シーケンスプログラムの実行完了回数を記憶する実行完了回数記憶手段と、前記一定周期を制御周期として記憶する第1の制御周期記憶手段と、前記フローティング周期を制御周期として記憶する第2の制御周期記憶手段と、前記制御処理専用プロセッサが、一定周期の場合には、前記実行開始回数記憶手段、実行完了回数記憶手段、及び第1の制御周期記憶手段に記憶された値に基づいて、フローティング周期の場合には、第2の制御周期記憶手段に記憶された値に基づいて、前記スキャン処理を実行するように制御するスキャン制御手段と、を有することを要旨とする。
【0023】
請求項8記載の本発明にあっては、管理プロセッサと制御処理専用プロセッサを備えたプログラマブルコントローラにおいて、実行回数記憶手段、実行完了回数記憶手段、一定周期を記憶する第1の制御周期記憶手段、フローティング周期を記憶する第2の制御周期記憶手段を設けることにより、一定周期の場合においても、フローティング周期の場合においても、制御処理専用プロセッサが、入出力処理、タイマ更新処理、及びシーケンスプログラム実行処理からなるスキャン処理を実行する。これにより、従来、管理プロセッサが実行していた入出力処理及びタイマ更新処理を、制御処理専用プロセッサが実行するので、管理プロセッサの負荷が軽減され、高速なスキャン周期の制御が可能となる。
【0024】
【発明の実施の形態】
以下、本発明の実施の形態を図面を用いて説明する。
【0025】
<第1の実施の形態>
図1は、本発明の第1の実施の形態に係るプログラマブルコントローラ1の構成を示している。このプログラマブルコントローラ1は、管理プロセッサ11、プログラムメモリ(第1のメモリ)12、データメモリ(第2のメモリ)13、I/O装置14、専用プロセッサ15、ワークメモリ18、通信インタフェース19、バス16及び17、及びモニタ装置10を備えている。
【0026】
管理プロセッサ11は、プログラマブルコントローラの中枢部分であり、プログラマブルコントローラ全体の管理を行うCPUである。専用プロセッサ15は、シーケンスプログラム実行用のプロセッサであるが、本発明においては、I/O入出力、タイマ更新およびシーケンスプログラム実行を行うCPUとなっている。
【0027】
プログラムメモリ(第1メモリ)12はユーザが作成したシーケンスプログラムを格納するメモリであり、データメモリ(第2メモリ)13はユーザが使用する変数や専用プロセッサが動作するためのデータを格納するメモリである。図2に示すように、データメモリ13には、実行カウンタ131、完了カウンタ132及び制御周期133が設けられており、これにより、後述するように管理プロセッサ11と専用プロセッサ15の動作に同期がとられるようになっている。
【0028】
実行カウンタ131は、シーケンスプログラムの実行回数を記憶する記憶域であり、管理プロセッサ11が、一定周期で実行カウンタ131をインクリメントするようになっている。完了カウンタ132は、シーケンスプログラムの実行完了回数を記憶する記憶域であり、専用プロセッサ15がシーケンスプログラム実行終了後に完了カウンタ132をインクリメントするようになっている。制御周期133は、1スキャンの周期を記憶する記憶域であり、一定周期を制御周期として記憶している。
【0029】
I/O装置14はプログラマブルコントローラ1と外部の制御対象機器を接続するための入出力装置であり、これを介して制御対象機器と入出力データのやりとりを行うようになっている装置である。バス16は管理プロセッサ11および専用プロセッサ15とがプログラマブルコントローラ1内の各要素を接続するバスであり、このバス16により、アドレス信号、データ信号、制御信号をやりとりする。バス17は管理プロセッサ11と管理プロセッサ11だけが管理する各要素を接続するバスであり、アドレス信号、データ信号、制御信号をやりとりする。
【0030】
ワークメモリ18は管理プロセッサ11の作業領域用のメモリである。モニタ装置10は、シーケンスプログラムの動作をモニタしたり、ユーザからプログラマブルコントローラ1へ制御指令を行う装置であり、通信インターフェース19はプログラマブルコントローラ1とモニタ装置10などを通信媒体を介して接続するためのインターフェース回路である。
【0031】
次に、本実施の形態のプログラマブルコントローラ1の動作を、図3及び図4を用いて説明する。図3は、実行カウンタ値、完了カウンタ値と専用プロセッサ15のスキャン動作を対比させたものであり、図4は、管理プロセッサ11及び専用プロセッサ15の動作をフローチャートとして表したものである。
【0032】
まず、プログラマブルコントローラ1の起動により、管理プロセッサ11は専用プロセッサ15を起動させる(ステップS11、S21)。
【0033】
管理プロセッサ11は、一定周期(制御周期)ごとに実行カウンタ131をインクリメントする(ステップS12、S13、図3(1))。
【0034】
一方、専用プロセッサ15は実行カウンタ131及び専用カウンタ132のカウンタ値を参照し、両値を比較して、実行カウンタ131が更新されていれば(実行カウンタ値=完了カウンタ値+1)、スキャン処理を開始してよいものと判断して、I/O入出力処理を行う(ステップS22〜S24)。次に、データメモリ13に記憶された制御周期133の値を差分タイマ値としてタイマ更新処理を行う(ステップS25)。そして、シーケンスプログラムを実行し、シーケンスプログラムの実行が終了すると、完了カウンタ132の値をインクリメントする(ステップS26、S27)。
【0035】
これにより、1スキャンの処理が終了するが、再び制御周期が経過すれば、管理プロセッサ11は、次スキャンを開始し、上述したスキャン処理を繰り返す(図3(2))。
【0036】
また、管理プロセッサ11は、I/O入出力からシーケンスプログラム実行までの一連のスキャン処理が正常に動作しているかどうかを判断するため、完了カウンタレジスタ132を監視している。これは、予め決められた時間、完了カウンタ132が更新されなければ、専用プロセッサ15の動作を異常と判断して、この事象をユーザに通知するものである。
【0037】
尚、異常事態の検知に関しては、専用プロセッサ15がスキャン開始時において、実行カウンタレジスタ131及び完了カウンタレジスタ132の値を比較して、実行カウンタと完了カウンタの値の差が1より大きい場合には、スキャン渋滞が発生したものと判断して、管理プロセッサ11に通知するようにしても良い(図3(3))。
【0038】
従って、本実施の形態のプログラマブルコントローラ1によれば、実行カウンタ131、完了カウンタ132及び制御周期133をデータメモリ13上を設けることにより、管理プロセッサ11は実行カウンタ131の更新という最小限の処理をするだけで、専用プロセッサ15が一定周期におけるI/O入出力、タイマ更新、シーケンスプログラムの実行を行うことが可能となるので、プログラマブルコントローラ1は高速なスキャン周期を実現することができる。
【0039】
また、スキャン動作の渋滞などの異常事態も検知して、この事態をユーザに通知することができる。
【0040】
<第2の実施の形態>
図5は、本発明の第2の実施の形態に係るプログラマブルコントローラ2の構成を示している。本実施の形態のプログラマブルコントローラ2は、第1の実施の形態で有していた実行カウンタ131、完了カウンタ132及び制御周期133をデータメモリ13上から独立させて、これらの機能をカウンタ回路26として加えたものである。従って、このプログラマブルコントローラ2は、管理プロセッサ21、プログラムメモリ(第1のメモリ)22、データメモリ(第2のメモリ)23、I/O装置14、専用プロセッサ25、カウンタ回路26、ワークメモリ18、通信インタフェース19、バス16及び17、モニタ装置10を備えている。尚、第1の実施の形態のプログラマブルコントローラ1の構成と同一部分には同一符号を付して説明を省略する。
【0041】
第1の実施の形態と同様に、管理プロセッサ21は、プログラマブルコントローラ2の中枢部分であり、プログラマブルコントローラ2全体の管理を行うCPUとなっている。専用プロセッサ25は、シーケンスプログラム実行用のプロセッサであるが、本発明においては、I/O入出力、タイマ更新およびシーケンスプログラム実行を行うCPUとなっている。また、プログラムメモリ(第1メモリ)22はユーザが作成したシーケンスプログラムを格納するメモリであり、データメモリ(第2メモリ)23はユーザが使用する変数や専用プロセッサが動作するためのデータを格納するメモリである。
【0042】
カウンタ回路26は、図6に示すような構成となっている。制御周期設定レジスタ261、基準パルス発生部262、基準パルス計数カウンタ263及び比較部264は、一定周期で実行カウンタレジスタ265をインクリメントするためのものである。制御周期設定レジスタ261は、第1の実施の形態における制御周期133に相当するものであり、管理プロセッサ21が起動時に一定周期である制御周期値(基準パルス数に換算)を設定する。そして、基準パルス発生部262は、基準パルスを発生させるものであり、基準パルス計数カウンタ263は、この基準パルスの数を計測するものである。そして、比較部264は、制御周期設定レジスタ261の値と基準パルス計数カウンタ263の値を比較するものであり、一致する場合には、制御周期が経過したものと判断して実行カウンタレジスタ265をインクリメントするようになっている。
【0043】
実行カウンタレジスタ265は、第1の実施の形態における実行カウンタ131に相当し、シーケンスプログラムの実行回数を記憶する記憶域であり、上述したように制御周期ごとにインクリメントされるようになっている。完了カウンタレジスタ266は、第1の実施の形態における完了カウンタ132に相当し、シーケンスプログラムの実行完了回数を記憶する記憶域であり、専用プロセッサ25がシーケンスプログラム実行終了後に完了カウンタレジスタ266をインクリメントするようになっている。また、監視部267は、実行カウンタレジスタ265及び完了カウンタレジスタ266のカウンタ値に基づき、専用プロセッサ25の異常事態を管理プロセッサ21に通知するものである。
【0044】
次に、本実施の形態のプログラマブルコントローラ2の動作を、図7及び図8を用いて説明する。図7は、専用プロセッサ25のスキャン動作を各カウンタ値及び各種信号と対比させたものであり、図8は、管理プロセッサ21、専用プロセッサ25及びカウンタ回路26の動作をフローチャートとして表したものである。
【0045】
まず、プログラマブルコントローラ2の起動により、まず管理プロセッサ21は専用プロセッサ25を起動させる(ステップS31、ステップS41)。
【0046】
次に、管理プロセッサ21は、カウンタ回路26の制御周期設定レジスタ261に制御周期(一定周期)を書き込む(ステップS32)。
【0047】
一方、制御周期が書き込まれたカウンタ回路26は、基準パルス計数カウンタ263により、基準パルス発生部262から発生された基準パルスの数を計測する(ステップS51)。そして、比較部264が、制御周期設定レジスタ261に設定された制御周期設定値と基準パルス計数カウンタ263のカウンタ値を比較し、等しい場合には、実行カウンタレジスタ265をインクリメントする(ステップS52〜S54、図7(1))。これにより、カウンタ回路26は、基準パルスを利用して制御周期を正確に把握することができる。尚、実行カウンタレジスタ265をインクリメントした後は、基準パルス計数カウンタ263の値はクリアーされる(ステップS55)。
【0048】
専用プロセッサ25は、実行カウンタレジスタ265及び専用カウンタレジスタ266の値を参照し、両値を比較して、実行カウンタレジスタ265が更新されていれば(実行カウンタ値=完了カウンタ値+1)、スキャン処理を開始してよいものと判断して、I/O入出力処理を行う(ステップS42〜S44)。次に、制御周期設定レジスタ261に記憶された制御周期の値を差分タイマ値としてタイマ更新処理を行う(ステップS45)。そして、シーケンスプログラムを実行し、シーケンスプログラムの実行が終了すると、完了カウンタレジスタ266のカウンタ値をインクリメントする(ステップS46、S47)。
【0049】
そして、専用プロセッサ26は、上述したスキャン処理を一定周期で繰り返す(図7(2))。
【0050】
また、監視部267は、実行カウンタレジスタ265及び完了カウンタレジスタ266を監視している。具体的には、実行カウンタレジスタ265の値が更新されてから、完了カウンタレジスタ266の値が更新されるまでの間に、再度実行カウンタレジスタ265の更新が発生したか否かを監視する。これは、完了カウンタ266の更新前に実行カウンタ265が再度更新されたならば、スキャン渋滞が発生していると判断して、スキャン渋滞が発生していることを割り込み信号として管理プロセッサ21に通知し、管理プロセッサ21は、この事象をユーザに通知するものである(図7(3))。
【0051】
従って、本実施の形態のプログラマブルコントローラ2によれば、カウンタ回路26を設けることにより、管理プロセッサ21はカウンタ回路26内の制御周期を設定するだけで、専用プロセッサ25が一定周期でのI/O入出力、タイマ更新、シーケンスプログラムの実行を行うことが可能となるので、プログラマブルコントローラ2は高速なスキャン周期を実現することができる。
【0052】
また、スキャン動作の渋滞などの異常事態も検知し、この事態をユーザに通知することができる。
【0053】
<第3の実施の形態>
図9は、本発明の第3の実施の形態に係るプログラマブルコントローラ3の構成を示している。本実施の形態のプログラマブルコントローラ3は、タイマ回路36を設けることにより、フローティング周期のスキャン処理を行うものである。従って、このプログラマブルコントローラ3は、管理プロセッサ31、プログラムメモリ(第1のメモリ)32、データメモリ(第2のメモリ)33、I/O装置14、専用プロセッサ35、タイマ回路36、ワークメモリ18、通信インタフェース19、バス17及び18、及びモニタ装置10を備えている。尚、第1の実施の形態のプログラマブルコントローラ1の構成と同一部分には同一符号を付して説明を省略する。
【0054】
第1の実施の形態と同様に、管理プロセッサ31は、プログラマブルコントローラ3の中枢部分であり、プログラマブルコントローラ全体の管理を行うCPUとなっている。専用プロセッサ35は、シーケンスプログラム実行用のプロセッサであるが、本発明においては、I/O入出力、タイマ更新およびシーケンスプログラム実行を行うCPUとなっている。また、プログラムメモリ(第1メモリ)32はユーザが作成したシーケンスプログラムを格納するメモリであり、データメモリ(第2メモリ)33はユーザが使用する変数や専用プロセッサが動作するためのデータを格納するメモリである。ここで、データメモリ(第2メモリ)33は図10に示すように、完了カウンタ331及び差分基準パルス計数カウンタ332が設けられており、これにより、フローティング周期でのスキャン処理及び異常時の検出が可能となっている。
【0055】
完了カウンタ331は、シーケンスプログラムの実行完了回数を記憶する記憶域であり、専用プロセッサ35がシーケンスプログラム実行終了後に完了カウンタ331をインクリメントするようになっている。差分基準パルス計数カウンタ332は、スキャン処理のI/O入出力後の基準パルス計数カウンタ361のカウンタ値を記憶する記憶域である。
【0056】
タイマ回路36は、基準パルスを発生させる基準パルス発生部361と、この基準パルスの数を計測する基準パルス計数カウンタ363で構成されており、このタイマ回路36により、後述するように専用プロセッサ35はフローティング周期を把握できるようになっている。
【0057】
次に、本実施の形態のプログラマブルコントローラ3の動作を、図12及び図13を用いて説明する。図12は、専用プロセッサ35のスキャン動作を各カウンタ値及び各種信号と対比させたものであり、図13は、管理プロセッサ31、専用プロセッサ35及びタイマ回路36の動作をフローチャートとして表したものである。
【0058】
まず、プログラマブルコントローラ3の起動により、まず管理プロセッサ31は専用プロセッサ35を起動させる(ステップS61、ステップS71)。また、プログラマブルコントローラ3の起動により、タイマ回路36の基準パルス計数カウンタ362は、基準パルスの数を計測する(ステップS81)。
【0059】
これにより、専用プロセッサ35は、I/O入出力から始まる一連のスキャン処理を開始する(ステップS72)。I/O入出力後、基準パルス計数カウンタ362のカウンタ値を参照して、このときのカウンタ値を差分基準パルス計数カウンタ332に書き込む(ステップS73、S74)。そして、更新前と更新後の差分基準パルス計数カウンタ332のカウンタ値の差を差分タイマ値として、タイマ更新処理を行う(ステップS75)。これにより、フローティング周期における制御周期が、シーケンスプログラムの実行に取り込むことができる。次に、シーケンスプログラムを実行し、シーケンスプログラムの実行が終了すると、完了カウンタ331の値をインクリメントする(ステップS76、S77)。
【0060】
以上で1スキャンの処理が終了するが、フローティング周期でのスキャン処理においては、スキャン処理の終了すると次スキャンが即座に開始される(図12(1)、(2))。
【0061】
また、管理プロセッサ31は、I/O入出力からシーケンスプログラム実行までの一連のスキャン処理が正常に動作しているかどうかを判断するため、完了カウンタ331を監視している。これは、予め定められた時間、完了カウンタ331が更新されなければ、専用プロセッサ35の動作を異常と判断して、この事象をユーザに通知するものである。
【0062】
従って、本実施の形態のプログラマブルコントローラ3によれば、タイマ回路36を設けることにより、管理プロセッサ31は専用プロセッサ35の起動をするのみで、専用プロセッサ35がフローティング周期でのI/O入出力、タイマ更新、シーケンスプログラムの実行を行うことが可能となるので、プログラマブルコントローラ3は高速なスキャン周期を実現することができる。
【0063】
また、スキャン動作の渋滞などの異常事態も検知し、この事態をユーザに通知することができる。
【0064】
<第4の実施の形態>
図14は、本発明の第4の実施の形態に係るプログラマブルコントローラ4の構成を示している。本実施の形態のプログラマブルコントローラ4は、カウンタ回路46とタイマ回路47を設けることにより、一定周期の場合もフローティング周期の場合もスキャン処理が可能なプログラマブルコントローラである。従って、このプログラマブルコントローラ4は、管理プロセッサ41、プログラムメモリ(第1のメモリ)42、データメモリ(第2のメモリ)43、I/O装置14、専用プロセッサ45、カウンタ回路46、タイマ回路47、ワークメモリ18、通信インタフェース19、バス17及び18、及びモニタ装置10を備えている。尚、第1の実施の形態のプログラマブルコントローラ1の構成と同一部分には同一符号を付して説明を省略する。また、カウンタ回路46、タイマ回路47についても、前述したカウンタ回路26、タイマ回路36と同様であるため、説明を省略する。
【0065】
第1の実施の形態と同様に、管理プロセッサ41は、プログラマブルコントローラ4の中枢部分であり、プログラマブルコントローラ4全体の管理を行うCPUとなっている。専用プロセッサ45は、シーケンスプログラム実行用のプロセッサであるが、本発明においては、I/O入出力、タイマ更新およびシーケンスプログラム実行を行うCPUとなっている。また、プログラムメモリ(第1メモリ)42はユーザが作成したシーケンスプログラムを格納するメモリであり、データメモリ(第2メモリ)43はユーザが使用する変数や専用プロセッサが動作するためのデータを格納するメモリである。ここで、データメモリ(第2メモリ)43は、完了カウンタ431及び差分基準パルス計数カウンタ432が設けられているが(図示せず)、これについては、第3の実施の形態の完了カウンタ331及び差分基準パルス計数カウンタ332と同様であるため、説明を省略する。
【0066】
次に、本実施の形態のプログラマブルコントローラ4の動作を、カウンタ回路46及びタイマ回路47と、管理プロセッサ41及び専用プロセッサ45との信号のやりとりを表す図15を用いて説明する。
【0067】
まず、プログラマブルコントローラ4の起動により、管理プロセッサ41は専用プロセッサ45を起動させるが、このときに管理プロセッサ41は制御条件(一定周期でスキャンを行うか、フローティング周期でスキャンを行うかを指定する)を専用プロセッサ45に与える。専用プロセッサ45は、この制御条件により、制御する動作モードを判定し、判定された動作モードにおけるスキャン処理を行う。ここで、本実施の形態における一定周期のスキャン処理は、第2の実施の形態におけるスキャン処理と同様であり、カウンタ回路46から制御周期設定値、実行カウンタを参照して、スキャン処理を行い、スキャン処理終了後、完了カウンタを更新する。また、フローティング周期のスキャン処理は、第3の実施の形態におけるスキャン処理と同様であり、タイマ回路47から基準パルス計数カウンタを参照して、スキャン処理を行う。
【0068】
また、異常動作の検知についても、第2の実施の形態(一定周期の場合)、及び第3の実施の形態(フローティング周期の場合)の検知方法と同じであるため、説明は省略する。但し、ゲート48は一定周期の動作を指定した場合にのみ有効となるので、この場合にのみ異常動作検知の割り込み信号は管理プロセッサ41に通知される。
【0069】
従って、本実施の形態のプログラマブルコントローラ4によれば、カウンタ回路46及びタイマ回路47を設け、制御条件を与えると、専用プロセッサ45が一定周期もしくはフローティング周期でのI/O入出力、タイマ更新、シーケンスプログラムの実行を行うことが可能となるので、プログラマブルコントローラ4は高速なスキャン周期を実現することができる。
【0070】
また、一定周期においてもフローティング周期においても、スキャン動作の渋滞などの異常事態も検知し、この事態をユーザに通知することができる。
【0071】
【発明の効果】
以上説明したように、本発明のプログラマブルコントローラによれば、一定周期の場合において、専用プロセッサがI/O入出力、タイマ更新及びシーケンスプログラム実行からなるスキャン処理を実行し、管理プロセッサの負荷を軽減できるので、高速なスキャン周期を実現とすることができる。
【0072】
また、フローティング周期の場合においても、専用プロセッサがI/O入出力、タイマ更新及びシーケンスプログラム実行からなるスキャン処理を実行し、管理プロセッサの負荷を軽減できるので、高速なスキャン周期を実現とすることができる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係るプログラマブルコントローラの概略構成図である。
【図2】本発明の第1の実施の形態に係るプログラマブルコントローラのデータメモリの概略構成図である。
【図3】本発明の第1の実施の形態に係るプログラマブルコントローラの動作を説明する図である。
【図4】本発明の第1の実施の形態に係るプログラマブルコントローラの管理プロセッサ及び専用プロセッサの動作を説明するフローチャートである。
【図5】本発明の第2の実施の形態に係るプログラマブルコントローラの概略構成図である。
【図6】本発明の第2の実施の形態に係るプログラマブルコントローラのカウンタ回路の概略構成図である。
【図7】本発明の第2の実施の形態に係るプログラマブルコントローラの動作を説明する図である。
【図8】本発明の第2の実施の形態に係るプログラマブルコントローラの管理プロセッサ、専用プロセッサ、及びカウンタ回路の動作を説明するフローチャートである。
【図9】本発明の第3の実施の形態に係るプログラマブルコントローラの概略構成図である。
【図10】本発明の第3の実施の形態に係るプログラマブルコントローラのデータメモリの概略構成図である。
【図11】本発明の第3の実施の形態に係るプログラマブルコントローラのタイマ回路の概略構成図である。
【図12】本発明の第3の実施の形態に係るプログラマブルコントローラの動作を説明する図である。
【図13】本発明の第3の実施の形態に係るプログラマブルコントローラの管理プロセッサ、専用プロセッサ、及びタイマ回路の動作を説明するフローチャートである。
【図14】本発明の第4の実施の形態に係るプログラマブルコントローラの概略構成図である。
【図15】本発明の第4の実施の形態に係るプログラマブルコントローラのカウンタ回路、タイマ回路を説明する図である。
【図16】従来のプログラマブルコントローラの1スキャンを説明する図である。
【符号の説明】
1,2,3,4 プログラマブルコントローラ
10 モニタ装置
11,21,31,41 管理プロセッサ
12,22,32,42 プログラムメモリ(第1メモリ)
13,23,33,43 データメモリ(第2メモリ)
14 I/O装置
15,25,35,45 専用プロセッサ
16,17 バス
18 ワークメモリ
19 通信インターフェース
26,46 カウンタ回路
36,47 タイマ回路
131 実行カウンタ
132,331 完了カウンタ
133 制御周期
261 制御周期設定レジスタ
262,361 基準パルス発生部
263,362 基準パルス計数カウンタ
264 比較部
265 実行カウンタレジスタ
266 完了カウンタレジスタ
267 監視部
332 差分基準パルス計数カウンタ
361 差分基準パルス計数カウンタ

Claims (8)

  1. 全体の制御を行う管理プロセッサと、シーケンスプログラム実行用の制御処理専用プロセッサとを備えて、入出力処理とタイマ更新処理とシーケンスプログラム実行処理からなるスキャン処理を一定周期で行うプログラマブルコントローラにおいて、
    前記シーケンスプログラムの実行回数を記憶する実行回数記憶手段と、
    前記シーケンスプログラムの実行完了回数を記憶する実行完了回数記憶手段と、
    前記一定周期を制御周期として記憶する制御周期記憶手段と、
    前記制御処理専用プロセッサが前記実行回数記憶手段、実行完了回数記憶手段及び制御周期記憶手段に記憶された値に基づいて前記スキャン処理を実行するように制御するスキャン制御手段と、
    を有することを特徴とするプログラマブルコントローラ。
  2. 前記実行回数記憶手段は、
    前記管理プロセッサによって前記一定周期ごとに実行回数値が更新され、
    前記実行完了回数記憶手段は、
    前記制御処理専用プロセッサによってシーケンスプログラム実行完了後に実行完了回数値が更新され、
    前記スキャン制御手段は、
    前記実行回数値と前記実行完了回数値との差に基づき、前記制御処理専用プロセッサが前記入出力処理を開始し、前記制御周期記憶手段に記憶している制御周期を用いて前記タイマ更新処理を実行するように制御することを特徴とする請求項1記載のプログラマブルコントローラ。
  3. 前記スキャン制御手段は、
    前記実行回数値と前記実行完了回数値に基づき、前記制御処理専用プロセッサが前記管理プロセッサに異常状態の旨を通知するように制御することを特徴とする請求項2記載のプログラマブルコントローラ。
  4. 前記実行回数記憶手段、実行完了回数記憶手段及び制御周期記憶手段は、制御周期を計測するカウンタ回路に設けられていることを特徴とする請求項1記載のプログラマブルコントローラ。
  5. 前記実行回数記憶手段は、
    前記カウンタ回路によって前記一定周期ごとに実行回数値が更新され、
    前記実行完了回数記憶手段は、
    前記制御処理専用プロセッサによってシーケンスプログラム実行完了後に実行完了回数値が更新され、
    前記スキャン制御手段は、
    前記実行回数値と前記実行完了回数値との差に基づき、前記制御処理専用プロセッサが前記入出力処理を開始し、前記制御周期記憶手段に記憶している制御周期を用いて前記タイマ更新処理を実行するように制御することを特徴とする請求項4記載のプログラマブルコントローラ。
  6. 全体の制御を行う管理プロセッサと、シーケンスプログラム実行用の制御処理専用プロセッサとを備えて、入出力処理とタイマ更新処理とシーケンスプログラム実行処理からなるスキャン処理をフローティング周期で行うプログラマブルコントローラにおいて、
    前記フローティング周期を制御周期として記憶する制御周期記憶手段と、
    前記制御処理専用プロセッサが前記制御周期記憶手段に記憶された値に基づいて前記スキャン処理を実行するように制御するスキャン制御手段と、
    を有することを特徴とするプログラマブルコントローラ。
  7. 前記制御周期記憶手段は、
    基準パルスを発生させ、この基準パルスの数を計測するタイマ回路の前スキャン及び現スキャン時の計測値に基づいて制御周期値が更新され、
    前記スキャン制御手段は、
    前記制御処理専用プロセッサが、前記制御周期値を用いて前記タイマ更新処理を実行するように制御することを特徴とする請求項6記載のプログラマブルコントローラ。
  8. 全体の制御を行う管理プロセッサと、シーケンスプログラム実行用の制御処理専用プロセッサとを備えて、入出力処理とタイマ更新処理とシーケンスプログラム実行処理からなるスキャン処理を一定周期又はフローティング周期で行うプログラマブルコントローラにおいて、
    前記シーケンスプログラムの実行回数を記憶する実行回数記憶手段と、
    前記シーケンスプログラムの実行完了回数を記憶する実行完了回数記憶手段と、
    前記一定周期を制御周期として記憶する第1の制御周期記憶手段と、
    前記フローティング周期を制御周期として記憶する第2の制御周期記憶手段と、
    前記制御処理専用プロセッサが、一定周期の場合には、前記実行開始回数記憶手段、実行完了回数記憶手段、及び第1の制御周期記憶手段に記憶された値に基づいて、フローティング周期の場合には、第2の制御周期記憶手段に記憶された値に基づいて、前記スキャン処理を実行するように制御するスキャン制御手段と、
    を有することを特徴とするプログラマブルコントローラ。
JP2002194665A 2002-07-03 2002-07-03 プログラマブルコントローラ Expired - Lifetime JP4024603B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2002194665A JP4024603B2 (ja) 2002-07-03 2002-07-03 プログラマブルコントローラ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2002194665A JP4024603B2 (ja) 2002-07-03 2002-07-03 プログラマブルコントローラ

Publications (2)

Publication Number Publication Date
JP2004038555A true JP2004038555A (ja) 2004-02-05
JP4024603B2 JP4024603B2 (ja) 2007-12-19

Family

ID=31703301

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002194665A Expired - Lifetime JP4024603B2 (ja) 2002-07-03 2002-07-03 プログラマブルコントローラ

Country Status (1)

Country Link
JP (1) JP4024603B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006171841A (ja) * 2004-12-13 2006-06-29 Kansai Electric Power Co Inc:The プラント操作制御システムおよびその中央制御装置
JP4894961B1 (ja) * 2011-03-15 2012-03-14 オムロン株式会社 Plcのcpuユニット、plc用システムプログラムおよびplc用システムプログラムを格納した記録媒体
CN111052012A (zh) * 2018-03-09 2020-04-21 欧姆龙株式会社 控制装置以及控制系统

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006171841A (ja) * 2004-12-13 2006-06-29 Kansai Electric Power Co Inc:The プラント操作制御システムおよびその中央制御装置
JP4521722B2 (ja) * 2004-12-13 2010-08-11 関西電力株式会社 プラント操作制御システム
JP4894961B1 (ja) * 2011-03-15 2012-03-14 オムロン株式会社 Plcのcpuユニット、plc用システムプログラムおよびplc用システムプログラムを格納した記録媒体
WO2012124133A1 (ja) * 2011-03-15 2012-09-20 オムロン株式会社 Plcのcpuユニット、plc用システムプログラムおよびplc用システムプログラムを格納した記録媒体
CN103403633A (zh) * 2011-03-15 2013-11-20 欧姆龙株式会社 可编程控制器的中央处理器单元、可编程控制器用系统程序以及存储了可编程控制器用系统程序的记录介质
CN103403633B (zh) * 2011-03-15 2016-08-10 欧姆龙株式会社 可编程控制器的中央处理器单元
US9618922B2 (en) 2011-03-15 2017-04-11 Omron Corporation CPU of PLC, system program for PLC, and recording medium storing system program for PLC
CN111052012A (zh) * 2018-03-09 2020-04-21 欧姆龙株式会社 控制装置以及控制系统
CN111052012B (zh) * 2018-03-09 2023-09-08 欧姆龙株式会社 控制装置以及控制系统

Also Published As

Publication number Publication date
JP4024603B2 (ja) 2007-12-19

Similar Documents

Publication Publication Date Title
JPH11184554A (ja) クロック制御タイプ情報処理装置
JPWO2017104437A1 (ja) 通信装置、通信方法、プログラム、および通信システム
JP2004038555A (ja) プログラマブルコントローラ
JP2003296133A (ja) コントローラ
JP2008225807A (ja) 制御装置およびそのプログラム暴走監視方法
JP2003333119A (ja) 所定プロトコルに応じたイベントの発生に関する指示を行う方法
US20030200327A1 (en) Network that transmits data in equidistant cycles
CN114968681A (zh) 监测i2c总线通信异常的方法及装置、i2c主设备
CN108897248A (zh) 一种多cpu控制器和移动机器人
CN109857029B (zh) 双处理器控制系统工作方法、磁悬浮轴承监控系统及其工作方法、压缩机及空调
JP2009265739A (ja) データ送受信回路
JP2005107757A (ja) プログラムの暴走検出方法およびプログラムの暴走検出装置
US20170125126A1 (en) Transmission apparatus, diagnosis method, computer-readable recording medium
JPH1139032A (ja) マルチcpu型集中監視装置
JP3256522B2 (ja) インサーキット・エミュレータ及びインサーキット・エミュレータの制御方法
JP2005267294A (ja) ネットワーク割り込み制御方法、情報処理装置及び画像形成装置
JP2000181746A (ja) デバッグサポート付プロセッサ、及びデバッグ機能実行制御方法
JP5768434B2 (ja) 相互監視システム
CN115794693A (zh) 一种gpio接口控制方法、系统、存储介质以及设备
JP4083954B2 (ja) 異常監視装置及び異常監視方法
JP2006163730A (ja) 割り込み制御方法およびそれを用いたコントローラ
JP5338356B2 (ja) 通信装置、通信システム、並びに電力制御方法及びプログラム
JP2001092692A (ja) 時間測定回路及び時間測定方法
JP2002287856A (ja) プロセッサ搭載装置および遅延リセット信号生成方法
JPS63123138A (ja) マイコン暴走検知回路

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050223

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070112

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070213

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070411

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070605

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070719

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: 20070925

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071003

R151 Written notification of patent or utility model registration

Ref document number: 4024603

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101012

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111012

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111012

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121012

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131012

Year of fee payment: 6

EXPY Cancellation because of completion of term