JP3663680B2 - プログラマブルコントローラ - Google Patents
プログラマブルコントローラ Download PDFInfo
- Publication number
- JP3663680B2 JP3663680B2 JP19079095A JP19079095A JP3663680B2 JP 3663680 B2 JP3663680 B2 JP 3663680B2 JP 19079095 A JP19079095 A JP 19079095A JP 19079095 A JP19079095 A JP 19079095A JP 3663680 B2 JP3663680 B2 JP 3663680B2
- Authority
- JP
- Japan
- Prior art keywords
- timer
- timer instruction
- execution
- executed
- completion flag
- 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
Images
Landscapes
- Programmable Controllers (AREA)
Description
【発明の属する技術分野】
本発明は、プログラマブルコントローラに関するものである。
【0002】
【従来の技術】
サイクリックスキャン演算を行うプログラマブルコントローラにはタイマ命令を実行して、時間の遅れ制御等を行うものが従来からある。
【0003】
【発明が解決しようとする課題】
しかしながら、タイマ命令を実行する場合に、例えば1スキャンサイクルの中で、前方へジャンプすることにより、タイマ命令が複数回演算されるようなプログラムを構成すると、演算のたびに、経過値の減算が行われ、実際よりも早くタイムアップしてしまうという問題があった。
【0004】
本発明は上記問題点に鑑みて為されたもので、その目的とするところは、同一スキャン内においてタイマ命令が再度実行されても演算をパスして実際よりも早くタイムアップするのを防いだプログラマブルコントローラを提供するにある。
【0005】
【課題を解決するための手段】
上記目的を達成するために請求項1の発明では、サイクリックスキャン演算を行うプログラマブルコントローラにおいて、タイマ命令に対応してステータス記憶用メモリと、タイマ命令の限時時間の経過値を書き込む経過値エリアを持つメモリとを備え、実行条件の立ち上がり時に限時時間の設定値を経過値エリアに書き込み、実行条件が前スキャンより継続している場合には経過値エリアの値から経過時間を減算し、その減算結果が0になった時点でタイマ出力をオンする演算機能と、1スキャンサイクル内で最初のタイマ命令が実行されたときに実行完了フラグを上記ステータス記憶用メモリに記憶させ、実行完了フラグが記憶されている状態でタイマ命令が実行される場合には演算機能による演算処理をパスする複数実行回避機能とを持つタイマ演算手段と、1スキャンサイクルの終了時に、ステータス記憶用メモリに記憶されている実行完了フラグをクリアするクリア手段とを備えたことを特徴とし、1スキャンサイクル内で複数回タイマ命令の実行が為されるような場合においても、最初のタイマ命令の実行の演算だけが行われるため、実際よりも早くタイムアップしてしまうということがない。
【0006】
また、タイマ命令が1スキャンサイクル内で1度だけ実行されるアプリケーションか、繰り返して実行されるアプリケーションかを識別するタイマ命令動作モードフラグをアプリケーションに対応して書き込むメモリを備え、該メモリに書き込まれたタイマ命令動作モードフラグが、タイマ命令が1スキャンサイクル内で1度だけ実行されるアプリケーションを示す場合には、タイマ演算手段は複数実行回避機能の処理を行わず演算機能のみの処理を行い、クリア手段は実行完了フラグのクリアをパスすることを特徴とし、1スキャンサイクル内で複数回タイマ命令の実行が為されるようなアプリケーションでは、最初のタイマ命令の実行の演算だけが行われるため、実際よりも早くタイムアップしてしまうということがなく、しかもタイマ命令が1スキャンサイクル内で1度だけ実行されるアプリケーションの場合には、実行完了フラグの判定処理やクリア処理をパスすることにより、1スキャンサイクルを早めることができ、アプリケーションに適した処理が行える。
【0007】
【発明の実施の形態】
以下、本発明の基本形態及び実施形態を図面を参照して説明する。
(基本形態)
図2はプログラマブルコントローラの基本的な構成を示しており、図示するようにプログラマブルコントローラは、プログラマブルコントローラの演算、制御処理を行うためのシステムプログラムが書き込まれたROM1と、ユーザプログラムのロードや演算処理のワークエリア、データの一時的格納等を行うためのRAM2と、ROM1に書き込まれたシステムプログラムに基づいてユーザープログラムを実行して演算、制御処理を行うCPU3と、CPU3の制御により外部装置との間で入/出力データの授受を行うためのI/Oインターフェース4とを基本的な構成として備え、図3に示すように電源がオンされるとCPU3はシステムプログラムに基づいて初期化処理を経た後、スイッチ等により設定されるモードがユーザープログラム作成のモード(PROG)なのか、ユーザープログラムを実行する実行モード(RUN)なのかを判定し、この判定結果がプログラム作成のモードであれば、周辺サービス過程によりプログラム設定器等によるプグラム作成処理を行った後、モード判定の過程へ戻る。また実行モードであればI/Oインターフェース4のリフレッシュ処理を行った後、ユーザープログラムに基づく演算処理を実行し、この演算処理後周辺サービス過程を経て再びモード判定の過程へ戻る。つまりモード判定の過程から、次のモード判定へ戻るまでが1スキャンとなり、このスキャンを繰り返すことにより、サイクリックスキャン演算方式のプログラマブルコントローラと称せられる。
【0008】
ところでのようなプログラマブルコントローラにおけるタイマ命令の処理過程に本基本形態は次のような特徴を持つ。
つまり本基本形態では図1に示すように、タイマ命令(0)〜(n)に対応して、CPU3がユーザープログラムに記述されたタイマ命令の実行の際に、限時時間の経過値を書き込むための経過値エリアA1(0)〜A1(n)と、タイマ命令の実行に用いる限時時間の目標値たる設定値を予め書き込む設定値エリアA2(0)〜A2(n)と、タイマ命令のステータス記憶用メモリA3(0)〜A3(n)とを設けてある。これらエリアA1,A2及びメモリA3はRAM2の一部を利用或いは別に専用RAMを設けることにより構成される。またステータス記憶用メモリA3(0)〜A3(n)には実行条件記憶エリアAaと、実行完了フラグ記憶エリアAbを持たせてある。
【0009】
而してCPU3はタイマ命令を実行する際、スキャン毎に図4、図5に示すフローチャートに基づいて動作する。図4はタイマ命令の1回の実行時のフローチャートを示しており、タイマ命令を実行する場合、CPU3はステップ[1] で前回のスキャンから実行条件が継続してオン(ON)であるか否かを判定し、継続してオンのとき、ステータス記憶用メモリA3 に書き込まれている前回の実行条件をステップ[2] で読み出し、更に実行完了フラグ記憶エリアAbに実行完了フラグがセットされているか否かをステップ[3] で判定し、実行完了フラグがセットされていない場合には、今回の実行条件とステップ[2] で読み出した前回値とをステップ[4] で比較して立ち上がりの判定を行い、立ち上がりと判定されると、ステップ[5] で経過値エリアA1 に設定値エリアA2 に書き込まれている設定値を転送してプリセットするとともに、I/Oインターフェース4のタイマ接点をオフさせる。
【0010】
一方実行条件の立ち上がりでなれば経過値エリアA1 に書き込まれている値から前スキャンでの経過時間を減算して経過値エリアA1 の値を更新する(スッテプ[6] )。この時その値が0であれば内蔵タイマ接点をオンさせる。
ところでステップ[5] 或いは[6] の処理を終了するとステップ[7] で今回の実行条件をステータス記憶用メモリA3 に記憶し、更にステップ[8] で実行完了フラグをセットしてタイマ命令の実行を終了する。
【0011】
ところで上記ステップ[1] で実行条件が継続されていない場合にはステップ[9] でタイマリセット処理を行った後、ステップ[7] [8] の処理を行い、またステップ[3] で実行完了フラグがセットされていると判断されている場合には、タイマ演算処理をパスする。
そしてCPU3は図5に示すように1スキャンサイクルが終了時に実行完了フラグ記憶エリアAbにセットされている実行完了フラグをクリアして終了する。つまりまず変数nに0をステップ[20]でセットし、タイマ命令(0)のステータス記憶用メモリA3(0)の記憶内容を読み出し(ステップ[21])、実行完了フラグ記憶エリア3bにセットされている実行完了フラグをクリアする(ステップ[22])。そしてタイマ命令(0)のステータスの再書き込みをステップ[23]で行う。次にステップ[24]で現在の変数の値に1を加えて新たな変数nの値とする。このようにして変数nの値がnを越えるとステップ[25]で判断されるまで、ステップ[21]からステップ[25]の処理を繰り返して行い、変数nの値がnを越えると、つまりタイマ命令(0)から(n)までのスタータス記憶メモリA3(0)〜A3(n)に対応する実行完了フラグ記憶エリア3b内の実行完了フラグのクリアが終了すると、1スキャンサイクルを終了する。
【0012】
CPU3は、図4の動作フローチャートに示す処理過程ではタイマ命令実行時にステータス記憶用メモリA3 の実行完了フラグ記憶エリアAbに実行完了フラグをセットする手段と、タイマ命令実行時に実行完了フラグがセットされているか否かを判断して、実行されている場合には演算をパスする機能を持つタイマ命令演算手段を構成し、図5の動作フローチャートで示す処理過程では、1スキャンサイクルの終了の度に上記セットされた実行完了フラグをクリアするクリア手段を構成する。
【0013】
このようにして本基本形態では、実行完了フラグがセットされているか否かにより、演算の1スキャンサイクル内で前方ジャンプや繰り返し制御により、タイマ命令が複数回実行された場合でも、最初の実行の1回のみを有効とし、実際の設定値よりも早くタイムアップするのを防止することができるのである。
ところで上記基本形態では、タイマ命令が1スキャンサイクルにおいて繰り返し実行される場合の不都合に対応して、同じスキャンサイクル中において最初のタイマ命令の実行があった時に実行完了フラグをセットし、同じスキャンサイクルにおいてタイマ命令が再度実行されるような場合、それを実行完了フラグがセットされていることで判定し、その際に演算をパスするようにしている。
【0014】
しかし、ユーザープログラム(アプリケーション)によってはタイマ命令を1スキャンサイクルで繰り返して実行しないものもあり、この場合上記の基本形態のようにスキャン終了時の実行完了フラグのクリアを行う分、1スキャンサイクルの時間が増加することになる。
そこでタイマ命令が1スキャンサイクル内で繰り返して実行されない場合には、上記のような処理を行わず、従来通りの処理ができるようにしたのが次に示す実施形態1である。
【0015】
(実施形態1)
まず本実施形態も、基本的なハードウェアとしては基本形態と同様に図2に示す構成と同じ構成を持つが、ユーザープログラム(アプリケーション)のタイマ命令動作モードに応じてフラグを書き込むタイマ命令動作モードフラグ記憶エリアA4を図6に示すように追加し、ユーザープログラム(アプリケーション)がタイマ命令を同じスキャンサイクルで複数回実行されるものであれば図4、図5の処理を実行するタイマ命令動作モードを選択して、タイマ命令動作モードフラグ記憶エリアA4に1をセットし、ユーザープログラム(アプリケーション)がタイマ命令を同じスキャンサイクルで1回のみ実行されるものであれば従来と同様な処理を実行するタイマ命令動作モードを選択して、タイマ命令動作モードフラグ記憶エリアA4に0をセットする。
【0016】
図7は本実施形態のタイマ命令の実行動作のフローチャートを示しており、このフローチャートから明らかなように、図4の場合と異なるのは基本形態の図4のステップ[2] とステップ[3] との間に、タイマ命令動作モードのフラグの判定を行うステップ[10]を設けた点である。つまり実行条件のステータス記憶用メモリA3 から前回の実行条件を読み出した後、タイマ命令動作モードフラグが1であるのか、0であるのかを判定し、1であれば実行完了フラグの判定処理を行い、0であれば実行完了フラグの判定のステップ[3] をパスしてステップ[4] に飛ぶのである。
【0017】
またスキャンタイムが終了する場合、終了直前において、ステータス記憶用メモリA3の実行完了フラグ記憶エリアAbにセットされている実行完了フラグのクリア処理を行うか否かの判断を行うステップ[30]を図8に示すように追加している。つまり図8に示すようにタイマ命令の動作モードのフラグの判定を行い、実行完了フラグがセットされていなけば実行完了フラグのクリア処理のためのステップ[20]〜[25]をパスして終了する。また実行完了フラグがセットされている場合には上記基本形態と同様にステップ[20]〜[25]を経て終了する。
【0018】
【発明の効果】
請求項1の発明は、サイクリックスキャン演算を行うプログラマブルコントローラにおいて、タイマ命令に対応してステータス記憶用メモリと、タイマ命令の限時時間の経過値を書き込む経過値エリアを持つメモリとを備え、実行条件の立ち上がり時に限時時間の設定値を経過値エリアに書き込み、実行条件が前スキャンより継続している場合には経過値エリアの値から経過時間を減算し、その減算結果が0になった時点でタイマ出力をオンする演算機能と、1スキャンサイクル内で最初のタイマ命令が実行されたときに実行完了フラグを上記ステータス記憶用メモリに記憶させ、実行完了フラグが記憶されている状態でタイマ命令が実行される場合には演算機能による演算処理をパスする複数実行回避機能とを持つタイマ演算手段と、1スキャンサイクルの終了時に、ステータス記憶用メモリに記憶されている実行完了フラグをクリアするクリア手段とを備えたので、1スキャンサイクル内で前方へジャンプすることにより複数回タイマ命令の実行が為されるような場合においても、最初のタイマ命令の実行の演算だけが行われるため、実際よりも早くタイムアップしてしまうということがないという効果がある。
【0019】
また、タイマ命令が1スキャンサイクル内で1度だけ実行されるアプリケーションか、繰り返して実行されるアプリケーションかを識別するタイマ命令動作モードフラグをアプリケーションに対応して書き込むメモリを備え、該メモリに書き込まれたタイマ命令動作モードフラグが、タイマ命令が1スキャンサイクル内で1度だけ実行されるアプリケーションを示す場合には、タイマ演算手段は複数実行回避機能の処理を行わず演算機能のみの処理を行い、クリア手段は実行完了フラグのクリアをパスするので、1スキャンサイクル内で複数回タイマ命令の実行が為されるようなアプリケーションでは、最初のタイマ命令の実行の演算だけが行われるため、実際よりも早くタイムアップしてしまうということがなく、しかもタイマ命令が1スキャンサイクル内で1度だけ実行されるアプリケーションの場合には、実行完了フラグの判定処理やクリア処理をパスすることにより、1スキャンサイクルを早めることができ、アプリケーションに適した処理が行えるという効果がある。
【図面の簡単な説明】
【図1】 基本形態のメモリ構成図である。
【図2】 同上の全体構成図である。
【図3】 同上の全体の動作フローチャートである。
【図4】 同上のタイマ命令の動作フローチャートである。
【図5】 同上の1スキャンサイクル終了時の実行完了フラグのクリア処理を示す動作フローチャートである。
【図6】 実施形態1のメモリ構成図である。
【図7】 同上のタイマ命令の動作フローチャートである。
【図8】 同上の1スキャンサイクル終了時の実行完了フラグのクリア処理を示す動作フローチャートである。
【符号の説明】
A1(0)… 経過値エリア
A3(0)… 設定値エリア
A3(0)… ステータス記憶用メモリ
Aa 実行条件記憶エリア
Ab 実行完了フラグエリア
Claims (1)
- サイクリックスキャン演算を行うプログラマブルコントローラにおいて、タイマ命令に対応してステータス記憶用メモリと、タイマ命令の限時時間の経過値を書き込む経過値エリアを持つメモリとを備え、実行条件の立ち上がり時に限時時間の設定値を経過値エリアに書き込み、実行条件が前スキャンより継続している場合には経過値エリアの値から経過時間を減算し、その減算結果が0になった時点でタイマ出力をオンする演算機能と、1スキャンサイクル内で最初のタイマ命令が実行されたときに実行完了フラグを上記ステータス記憶用メモリに記憶させ、実行完了フラグが記憶されている状態でタイマ命令が実行される場合には演算機能による演算処理をパスする複数実行回避機能とを持つタイマ演算手段と、1スキャンサイクルの終了時に、ステータス記憶用メモリに記憶されている実行完了フラグをクリアするクリア手段とを備えたプログラマブルコントローラであって、タイマ命令が1スキャンサイクル内で1度だけ実行されるアプリケーションか、繰り返して実行されるアプリケーションかを識別するタイマ命令動作モードフラグをアプリケーションに対応して書き込むメモリを備え、該メモリに書き込まれたタイマ命令動作モードフラグが、タイマ命令が1スキャンサイクル内で1度だけ実行されるアプリケーションを示す場合には、タイマ演算手段は複数実行回避機能の処理を行わず演算機能のみの処理を行い、クリア手段は実行完了フラグのクリアをパスすることを特徴とするプログラマブルコントローラ。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP19079095A JP3663680B2 (ja) | 1995-07-26 | 1995-07-26 | プログラマブルコントローラ |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP19079095A JP3663680B2 (ja) | 1995-07-26 | 1995-07-26 | プログラマブルコントローラ |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH0944211A JPH0944211A (ja) | 1997-02-14 |
| JP3663680B2 true JP3663680B2 (ja) | 2005-06-22 |
Family
ID=16263788
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP19079095A Expired - Fee Related JP3663680B2 (ja) | 1995-07-26 | 1995-07-26 | プログラマブルコントローラ |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3663680B2 (ja) |
-
1995
- 1995-07-26 JP JP19079095A patent/JP3663680B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0944211A (ja) | 1997-02-14 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JPH10211360A5 (ja) | ||
| US6880029B2 (en) | Programmable controller | |
| JP2875842B2 (ja) | プログラマブルコントローラ | |
| JP3663680B2 (ja) | プログラマブルコントローラ | |
| JPS62236006A (ja) | Nc装置の処理方法 | |
| JPS616704A (ja) | プログラマブル・コントロ−ラ | |
| JPH0218644A (ja) | キャッシュメモリ制御方式 | |
| JPS5946002B2 (ja) | シ−ケンス制御装置における停電時および復電時の処理方式 | |
| JPS6323563B2 (ja) | ||
| JP2875841B2 (ja) | プログラマブルコントローラ | |
| JPH06259115A (ja) | プログラマブルコントローラ | |
| JP2508690B2 (ja) | プログラマブル・コントロ−ラ | |
| JP2793809B2 (ja) | プログラマブルコントローラの応用命令処理方式 | |
| JPH08106307A (ja) | プログラマブルコントローラ | |
| JPH1185223A (ja) | プログラマブルコントローラ | |
| JPH03102436A (ja) | マイクロコンピュータ等の暴走検出装置 | |
| JPH0751610Y2 (ja) | オーバーライド機能を備えたプログラマブルコントローラ | |
| JPH047739A (ja) | 命令実行時間制御方式 | |
| JPH01243124A (ja) | シミュレーション方式 | |
| JPS624729B2 (ja) | ||
| JPH05224711A (ja) | プログラマブルコントローラの制御方法 | |
| JPS595931B2 (ja) | 演算処理システムのアドレス停止方式 | |
| JPS63170703A (ja) | ロ−ダコマンド処理装置 | |
| JPH02129745A (ja) | コンピュータ | |
| JPS6144328B2 (ja) |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20041028 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20041130 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050131 |
|
| 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: 20050308 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050321 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080408 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090408 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090408 Year of fee payment: 4 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090408 Year of fee payment: 4 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100408 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100408 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110408 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120408 Year of fee payment: 7 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120408 Year of fee payment: 7 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| LAPS | Cancellation because of no payment of annual fees |