JPS63214806A - プログラマブル・コントロ−ラ - Google Patents

プログラマブル・コントロ−ラ

Info

Publication number
JPS63214806A
JPS63214806A JP4906587A JP4906587A JPS63214806A JP S63214806 A JPS63214806 A JP S63214806A JP 4906587 A JP4906587 A JP 4906587A JP 4906587 A JP4906587 A JP 4906587A JP S63214806 A JPS63214806 A JP S63214806A
Authority
JP
Japan
Prior art keywords
program
user program
memory
user
instruction
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.)
Pending
Application number
JP4906587A
Other languages
English (en)
Inventor
Shinji Fukui
信二 福井
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.)
Omron Corp
Original Assignee
Omron Tateisi Electronics Co
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 Omron Tateisi Electronics Co filed Critical Omron Tateisi Electronics Co
Priority to JP4906587A priority Critical patent/JPS63214806A/ja
Publication of JPS63214806A publication Critical patent/JPS63214806A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Programmable Controllers (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 (発明の分野) 本発明は、プログラマブル・コントローラに係り、特に
ユーザプログラムの書替が可能なプログラマブル・コン
トローラに関する。
(発明の概要) 本発明では、ユーザプログラムを記憶するユーザプログ
ラムメモリの他に別のユーザプログラムを格納するプロ
グラム格納メモリが設けられ、ユーザプログラムメモリ
におけるユーザプログラムの実行中にプログラム書替命
令が実行されると、プログラム格納メモリのユーザプロ
グラムがユーザプログラムメモリへ転送されてユーザプ
ログラムの一部または全部が書替えられる。
(発明の背景) 一般のプログラマブル・コントローラではユーザプログ
ラムメモリに一種類のユーザプログラムが格納され、そ
のプログラムの実行でシーケンス制御が行なわれる。
そして運転条件が切替わる毎にユーザプログラムの実行
が停止されており、そのときのプログラムが新たなユー
ザプログラムに書替えられている。
その運転中断を回避するために、ユーザプログラムメモ
リへ複数のユーザプログラムを予め書込んで実行すべき
ユーザプログラムを運転条件に応じて選択する提案が行
なわれており、この提案によれば、運転条件の切替をス
ムーズに行なうことが可能となる。
しかしながらユーザプログラムの記憶エリアが限られて
いるので、この提案にあっては、各ユーザプログラムが
量的に制約されるという問題があった。
また同一のエリアに複数のユーザプログラムが記憶され
るので、ユーザプログラムが複雑化してその理解が困難
となるという問題もあった。
ざらに、処理中のユーザプログラムに加えて他のユーザ
プログラムもユーザプログラムエリアに格納されている
ので、その実行速度が低下するという問題もあった。
(発明の目的) 本発明は上記課題に鑑みてなされたものであり、その目
的は、運転条件の切替時にプログラムの処理停止を招く
ことなく長いユーザプログラムを高速で継続処理でき、
その理解も容易化できるプログラマブル・コントローラ
を提供することにある。
(発明の構成と効果) 上記目的を達成するために、本発明は、ユーザプログラ
ム、を記憶す把ユーザプログラムメモリと、 ユーザプログラムメモリに記憶されたユーザプログラム
の各命令を逐次実行するプログラム実行手段と、 別のユーザプログラムを格納するプログラム格納メモリ
と、 プログラム書替命令が実行されたときに、ブOグラム保
存メモリのユーザプログラムをユーザプログラムメモリ
へ転送するプログラム転送手段と、を有する、ことを特
徴とする。
本発明によれば、ユーザプログラムの処理中に特定の命
令が読み出されると、プログラム格納メモリからユーザ
プログラムメモリへそれまでとは別のユーザプログラム
が転送されてユーザプログラムの書替が行なわれるので
、新たなユーザプログラムが格納されるエリアをユーザ
プログラムメモリに予め確保することが不要となる。
従って、各ユーザプログラムが量的に制限されることは
なく、またその理解が容易化され、そしてプログラム処
理速度が高められる。
(実施例の説明) 以下、図面に基づいて本考案に係るプログラマブル・コ
ントローラの好適な実施例を説明する。
第1図には実施例のハードウェア構成が示されており、
そのシステムバスにはマイクロプロセッサ1.システム
プログラムメモリ(ROM>2゜ワーキングメモリ(R
AM>3.I10メモリ(RAM>4.ユーザプログラ
ムメモリ(RAM>5、ファイルメモリ(プログラム格
納メモリのRAM>6.入出力装@7.キーボード81
表示装置9が接続されている。
それらのうちユーザプログラムメモリ5には現在処理す
べきユーザプログラムが記憶されており、またファイル
メモリ6に(よ他のユーザプログラムが複数格納されて
いる。         ′なお、ユーザプログラムメ
モリ5には記憶容量が少ないが高速なアクセスが可能な
ものが使用されており、ファイルメ宅り6には低速でし
かアクセスできないが記憶容量の大きなものが使用され
ている。
また、キーボード8からはラダー図方式の言8Rとされ
たユーザプログラムが入力されている。
第2図にはこのプログラマブル・コントローラのメモリ
マツプが示されており、同図においてO番地からM番地
までがマイクロプロセッサ1のアドレス空間とされてい
る。
そのアドレス空間はO番地からM番地へ向かってI10
メモリエリア10.ワーキングメモリエリア11.ユー
ザプログラムメモリエリア12゜入出力装置エリア13
.ファイルメモリエリア14、コントロールボートエリ
ア15.およびシステムプログラムメモリエリア16に
分割されており、ファイルメモリエリア14は専有する
アドレス空間を少なくするためにバンクO−Nに分けて
配置されている。
ざらにI10メモリエリア10.ワーキングメモリエリ
ア11.ユーザプログラムメモリエリア12.入出力装
置エリア13.コントロールポートエリア15.システ
ムプログラムメモリエリア16がバンクOに配置されて
おり、これによりマイクロプロセッサ1がそれらへ高速
アクセスすることが可能とされている。
第3図にはシステムプログラムの実行手順を説明するゼ
ネラルフローチャートか示されており、電源が投入され
ると、各種のフラグやレジスタの初期設定されるイニシ
ャル処理が行なわれる(ステップ100)。
そしてキーボード8の入力データが読取られると(ステ
ップ101)、プログラム受付処理等の含まれるシステ
ムサービス処理が行なわれるベステップ102)。
ざらに入力更新処理(ステップ103)では入出力装置
7から入力データが取込まれ、それらの入力データがI
10メモリ3の入カニリアに書込まれる。
次いでRUNキーの操作による実行モードの選択が行な
われたか否かが判断され(ステップ104)、実行モー
ドが選択されていない場合にはすべての出力の強制リセ
ットが行なわれる(ステップ105)。
その後、実行モードが選択されるとくステップ104で
YES) 、まずプログラムカウンタがリセットされる
(ステップ106)。
次いでそのプログラムカウンタの値で示されるアドレス
の命令が読取られ(ステップ107)、END命令でな
い場合(ステップ108でNO>にはその命令が実行さ
れる(ステップ109)。
ざらにプログラムカウンタのインクリメントが行なわれ
(ステップ110)、END命令が読出ざ゛れない間に
おいては命令の読取り(ステップ107)、命令の実行
くステップ109)およびプロクラムカウンタのインク
リメント処理(ステップ110)が繰り返される。
その後、END命令が読取られると(ステップ108で
YES) 、各命令の実行による書替の完了したI10
メモリ4の出力データが入出力装置7へ一括して送出さ
れる出力更lFr51!L理が行なわれる(ステップ1
11)。
このようにしてシステムプログラムに従い処理されるユ
ーザプログラムは以下のようにしてシステムサービス処
理(ステップ102)で入力されている。
第4図にはその手順が説明されており、まずユーザプロ
グラムがユーザによりユーザプログラムエリア12へ書
込まれる(ステップ112)。
そしてその完成が確認されるとユーザプログラムメモリ
エリア12の完成プログラムがファイルメモリ6へ転送
される(ステップ114)。
その転送手順が第5図に示されており、この処理ではま
ず転送キーの操作が確認される(ステップ115)。
そして転送キーの操作が確認されない場合にはその他の
処理が行なわれるが(ステップ116)、このキー操作
が確認された場合には転送条件入力処理(ステップ11
7)および転送実行処理(ステップ118)が行なわれ
る。
それらのうち転送条件入力処理(ステップ117)では
キー人力で与えられた転送元のプログラム開始アドレス
および転送先のプログラム開始アドレスが取込まれ、ま
た転送実行処理(ステップ118)では開始アドレスか
らEND命令の終了アドレスまでがユーザプログラムメ
モリエリア12から7?イルメモリ6へ転送される。
このようにEND命令までを単位とする1つのユーザプ
ログラムが入力されるとともに転送元および転送先のプ
ログラム開始アドレスが指定されると、そのユーザプロ
グラムがファイルメモリ6へ転送される。
従って、この例では転送すべきユーザプログラム数の入
力が不要とされており、その省略により取扱いの容易化
が図られている。
これは第3図のゼネラルフローチャートからも理解され
るように、プログラマブル・コントローラではユーザプ
ログラムのEND命令までが実行され、それ以後のユー
ザプログラムは動作に何等関与しないことを考慮してい
る。
第6図には転送実行処理(ステップ118)の詳細な内
容がフローチャートで示されており、この処理(ステッ
プ108)ではまずユーザプログラムエリア12のプロ
グラム転送開始アドレスと71イルメモリエリア14に
おけるプログラム転送開始アドレスとがカウンタPCI
、PC2に各々格納される(ステップ119)。
次いでマイクロプロセッサ1内のレジスタAにカウンタ
PC1が示すアドレスのユーザプログラムデータが格納
され(ステップ120> 、レジスタ八に格納されたプ
ログラムデータがカウンタPC2で示される)1イルメ
モリ6内のアドレスに格納される(ステップ121)。
そしてそのプログラムデータがEND命令であるか否か
が判断され(ステップ122) 、END命令でないと
き(ステップ122t’NO)にはカウンタPC1,P
C2が各々カウントアツプされ(ステップ123) 、
またEND命令のとき(ステップ122でYES)には
転送実行処理(ステップ118)が終了される。
以上のように、END命令までを単位として必要最低限
のユーザプログラムが71イルメモリ6に転送されてお
り、その転送数はバンクNまで任意に選択できる。  
    − そしてプログラマブル・コントローラのユーザプログラ
ム処理中にそのユーザプログラムの書替を行なうために
、ユーザプログラムにはプログラム転送命令1”1le
pが書込まれている。
この実施例では、ユーザプログラムがラダー図の言語で
記述されているので、命令Filepは第7図のように
ユーザプログラム中に書込まれる。
その第7図から理解されるようにFilepには1つの
オペランドが用意されており、このオペランドにはファ
イルメモリ6からユーザプログラムメモリ5へ転送すべ
きユーザプログラムを特定するデータが書込まれている
例えば第8図(A>のようにユーザプログラムメモリ5
のユーザプログラムA、Bが実行されている際に接点1
000がONすると、Filel)命令が読出され、そ
のオペランドのデータ(#:10)で第8図(B)に示
されたファイルメモリ6におけるユーザプログラムCの
先頭アドレス(10)が指定され、このファイルメモリ
6におけるユーザプログラムCが第9図のように命令1
”1lep以降のエリアに転送され、ユーザプログラム
Aに引続いてユーザプログラムCの処理が直ちに開始さ
れる。
以上のユーザプログラム処理中における転送によるユー
ザプログラム切替は前述した第3図の命令実行処理(ス
テップ109)で第10図の処理が実行されることによ
り行なわれている。
この第10図の処理ではプログラムカウンタの値(PC
)で示されるアドレスから続出された命令が命令1”1
lipであるか否かがまず判断され(ステップ124>
、読出された命令が命令1”1lipでないとき(ステ
ップ124でNo>には他の命令が実行される(ステッ
プ125)。
また読出された命令が命令Filipであるとき(ステ
ップ124でYES)には、プログラムカウンタの現在
値をインクリメントした値が前記カウンタPC1へ格納
されるとともに、命令Filipのオペランド値が前記
カウンタPCへ格納されるイニシャライズ処理が行なわ
れる(ステップ126)。
なお、命令Fjlil)のオペランドでプログラマブル
・コントローラのユーザ用ワークメモリとされたデータ
メモリが指定されているときには、その内容がカウンタ
PC2に格納される。
次にこのカウンタPC2の内容を示す内容がレジスタ八
に書込まれ、レジスタへの内容はカウンタPC1の示す
アドレスへ書込まれる(ステップ127.128>。
これによりファイルメモリ6からユーザプログラムメモ
リ5へ転送すべきユーザプログラムの先頭アドレスに格
納された1行分のプログラムデータがユーザプログラム
メモリ5において命令Filipの次の行に書込まれる
そしてレジスタAに格納された命令がEND命令でない
ことが確認されるとくステップ129でNO)、カウン
タPC1,PC2がともにインクリメン]〜され(ステ
ップ130)、ステップ127.128および129の
処理が繰り返される。
このためファイルメモリ6におけるいずれかのユーザプ
ログラムの先頭アドレスからそのEND命令のアドレス
へ向かってユーザプログラムメモリ5における命令Fi
lip以下のエリアへ各行のプログラムデータが逐次転
送される。
その後、最後に転送された行の命令がEND命令である
ことが確認されると(ステップ129でYES) 、第
10図の処理が終了する。
その結果、ファイルメモリ6から転送された新たなユー
ザプログラムへそれまでのユーザプログラムの一部が自
動的に切替わり、新たなユーザプログラムの先頭アドレ
スから命令が続けて実行される。
このように、ユーザプログラムメモリ5へ命令Fili
pを予め書込んでそのオペランドで転送すべきユーザプ
ログラムが指定され、ユーザプログラムの実行中にその
命令Filipが読み出されることにより、ファイルメ
モリ6からユーザプログラムメモリへその新たなユーザ
プログラムが自動転送され、このユーザプログラムの実
行が開始される。
このため、運転条件の切替がユーザプログラムの処理停
止をta<ことなく連袂して行なわれる。
以上説明したように本実施例によれば、現在の運転に使
用されないユーザプログラムがファイルメモリ6に格納
され、ユーザプログラムメモリ5には実行すべきユーザ
プログラムのみが格納されるので、ユーザプログラムメ
モリ5に格納すべきユーザプログラムメモリの数を削減
でき、このため各ユーザプログラムの量的な制約を解消
でき、また各ユーザプログラムの理解を容易化でき、ざ
らにその実行速度を向上できる。
【図面の簡単な説明】
第1図は本発明に係るプログラマブル・コントローラの
好適な実施例を示すブロック図、第2図は実施例のメモ
リマツプ、第3図は実施例の全体動作を説明するゼネラ
ルフローチャート、第4図は実施例におけるユーザプロ
グラムの書込手順を説明するフローチャート、第5図は
実施例におけるプログラム転送処理を示すフローチャー
ト、第6図は第5図における転送実行処理の処理手順を
示すフローチャート、第7図は実施例におけるプログラ
ム転送命令を説明するラダー図、第8図および第9図は
実施例におけるプログラム転送作用を説明するメモリ内
容説明図、第10図は実施例におけるプログラム転送作
用を説明するフローチャートである。 1・・・マイクロプロセッサ 2・・・システムプログラムメモリ 5・・・ユーザプログラムメモリ 6・・・ファイルメモリ 第211A 第3図 第4図 第5図 第6図 第7図 第8図 (A)                      
 (B)第9FjA 第1OvA

Claims (1)

    【特許請求の範囲】
  1. (1)ユーザプログラムを記憶するユーザプログラムメ
    モリと、 ユーザプログラムメモリに記憶されたユーザプログラム
    の各命令を逐次実行するプログラム実行手段と、 別のユーザプログラムを格納するプログラム格納メモリ
    と、 プログラム書替命令が実行されたときに、プログラム保
    存メモリのユーザプログラムをユーザプログラムメモリ
    へ転送するプログラム転送手段と、を有する、ことを特
    徴とするプログラマブル・コントローラ。
JP4906587A 1987-03-04 1987-03-04 プログラマブル・コントロ−ラ Pending JPS63214806A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4906587A JPS63214806A (ja) 1987-03-04 1987-03-04 プログラマブル・コントロ−ラ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4906587A JPS63214806A (ja) 1987-03-04 1987-03-04 プログラマブル・コントロ−ラ

Publications (1)

Publication Number Publication Date
JPS63214806A true JPS63214806A (ja) 1988-09-07

Family

ID=12820679

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4906587A Pending JPS63214806A (ja) 1987-03-04 1987-03-04 プログラマブル・コントロ−ラ

Country Status (1)

Country Link
JP (1) JPS63214806A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06346489A (ja) * 1993-06-10 1994-12-20 Sumitomo Constr Mach Co Ltd 建設機械のアクチュエータ用コントローラの差別化装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06346489A (ja) * 1993-06-10 1994-12-20 Sumitomo Constr Mach Co Ltd 建設機械のアクチュエータ用コントローラの差別化装置

Similar Documents

Publication Publication Date Title
EP0716378A1 (en) Method for multi-dimensionally transferrring data in a data processing system
US4949242A (en) Microcomputer capable of accessing continuous addresses for a short time
JPS63214806A (ja) プログラマブル・コントロ−ラ
US4816992A (en) Method of operating a data processing system in response to an interrupt
US5893928A (en) Data movement apparatus and method
JPH0756633B2 (ja) タスク切換え方式
JPH0158522B2 (ja)
JPH03288906A (ja) Pcの命令実行方式
JP3358113B2 (ja) プログラマブルコントローラ用プログラムの作成装置
JPH06214939A (ja) Dmaコントローラ
JP2506591B2 (ja) 補助処理装置
JP2883489B2 (ja) 命令処理装置
JPH01233628A (ja) メモリアドレス変換制御回路
JP2002544619A (ja) 専用ポインタメモリを使用するオブジェクト指向処理
JPS58151656A (ja) デ−タ処理装置
JPS60173633A (ja) 演算処理装置
JPH03158943A (ja) バッファ記憶・転送方式
JPH02127743A (ja) メモリ制御方式
JPS5938827A (ja) マイクロプロセツサipl方式
JPH02165358A (ja) 学習機能付きプログラムロード方式
JPH04289980A (ja) メモリ装置
JPS6113617B2 (ja)
JPH0546581B2 (ja)
JPH02136949A (ja) 入出力制御装置
JPS60214040A (ja) デ−タ処理装置