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

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

Info

Publication number
JP2875842B2
JP2875842B2 JP2066792A JP6679290A JP2875842B2 JP 2875842 B2 JP2875842 B2 JP 2875842B2 JP 2066792 A JP2066792 A JP 2066792A JP 6679290 A JP6679290 A JP 6679290A JP 2875842 B2 JP2875842 B2 JP 2875842B2
Authority
JP
Japan
Prior art keywords
memory
user program
processor
microcomputer
management
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 - Lifetime
Application number
JP2066792A
Other languages
English (en)
Other versions
JPH03268005A (ja
Inventor
厚 伊東
勉 須永
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP2066792A priority Critical patent/JP2875842B2/ja
Priority to EP90125864A priority patent/EP0447685B1/en
Priority to DE69033031T priority patent/DE69033031T2/de
Priority to ES90125864T priority patent/ES2133268T3/es
Publication of JPH03268005A publication Critical patent/JPH03268005A/ja
Priority to US08/231,642 priority patent/US5600807A/en
Application granted granted Critical
Publication of JP2875842B2 publication Critical patent/JP2875842B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • G06F8/656Updates while running
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13153Modification, change of program in real time

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Programmable Controllers (AREA)

Description

【発明の詳細な説明】 [産業上の利用分野] 本発明はプログラマブルコントローラに係り、特に、
RUN中にユーザプログラムの内容を変更するのに好適な
プログラマブルコントローラに関する。
[従来の技術] ユーザプログラム実行中にこのユーザプログラムの内
容を変更する機能を搭載したプログラマブルコントロー
ラが一般的になってきている。例えば特開昭63−214806
号公報記載の従来技術では、シーケンスプロセッサが実
行するユーザプログラムAを格納した第1メモリの他
に、別のユーザプログラムBを格納した第2のメモリを
設け、書替命令によりこの第2メモリの内容を第1メモ
リに転送し、シーケンスプロセッサが実行するユーザプ
ログラムをAからBに変更している。
[発明が解決しようとする課題] シーケンスプロセッサが実行するユーザプログラムを
上記従来技術により変更する場合、第2メモリから第1
メモリへ新たなユーザプログラムを転送するのに時間が
かかり、この転送時間中はシーケンス処理が中断してし
まうという問題がある。特に、大型のユーザプログラム
を用いる場合、この問題の影響は大きい。
これに対し、シーケンスプロセッサがアクセスする第
1メモリ中のユーザプログラム自体の一部を直後書き替
える機能を設けることで、上記転送の問題を回避するこ
とができる。しかし、間違って書き替えた場合、例えば
ジャンプ命令を追加しそのジャンプ先に何も無いような
場合、その書替えは不正となるが、シーケンスプロセッ
サはその第1メモリ内のユーザプログラムを順次実行中
のため、同時に検証用プログラムを起動してチェックす
るのは難しく、書替えミスが生じたときは対処のしよう
が無いという問題がある。
本発明の目的は、ユーザプログラムの書替えを容易且
つ迅速にできるプログラマブルコントローラを提供する
ことにある。
[課題を解決するための手段] 上記目的は、ユーザプログラムを実行するシーケンス
プロセッサと、ユーザプログラムのコピーを行う管理用
プロセッサと、同一アドレスでアクセスされユーザプロ
グラムを格納する2つのメモリと、前記管理用プロセッ
サからの指示に基づいて前記2つのメモリのうち前記シ
ーケンスプロセッサがアクセスするメモリを選択し該メ
モリに格納されているユーザプログラムを前記シーケン
スプロセッサに実行させると共に前記管理用プロセッサ
がアクセスするメモリを選択するメモリ選択手段とを備
え、該メモリ選択手段は、前記管理用プロセッサから第
1指示を受けた場合には、前記シーケンスプロセッサが
実行中のユーザプログラムを格納したメモリに対し前記
管理用プロセッサにアクセスさせ、前記管理用プロセッ
サから第2指示を受けた場合には、前記シーケンスプロ
セッサが実行中のユーザプログラムを格納したメモリと
は別の他方のメモリに対し前記管理用プロセッサにアク
セスさせるものとすることで、達成される。
〔作用〕 管理用プロセッサがメモリ選択手段に出力する第1指
示,第2指示により、管理用プロセッサがアクセス可能
とするメモリを、シーケンスプロセッサのアクセスする
メモリとするか、他方のメモリとするかを切り替えるこ
とができるので、シーケンスプロセッサが実行中のユー
ザプログラムでも当該ユーザプログラムを他方のメモリ
や外部記憶装置にコピーして修正・検証を行うことがで
きる。
[実施例] 以下、本発明の一実施例を図面を参照して説明する。
第1図は、本発明の一実施例に係るプログラマブルコ
ントローラの構成図である。プログラマブルコントロー
ラのCPUモジュール15と、入力モジュール12a,12b,…、
出力モジュール13a,13b,…とはPI/Oバス14にて接続され
ている。
CPUモジュール15は、シーケンスプロセッサであるプ
ログラム実行マイコン3と、前記PI/Oバス14が接続され
るPI/Oバスコントローラ7と、マイコン3から同一アド
レスにてアクセスされる2つのユーザプログラムメモリ
5a,5bと、これらを相互に接続するシーケンサバス9と
を備える。また、ユーザプログラムの検証や管理を行う
プログラム管理用マイコン1と、プログラム管理用マイ
コンシステムプログラム格納メモリ2と、両者を相互に
接続するマイコンバス8とを備え、前記シーケンサバス
9とこのマイコンバス8とは、バスインタフェース4に
て接続されている。
本実施例のCPUモジュール15は更に、メモリ選択レジ
スタ6を備え、ユーザプログラムメモリ5a,5bの一方を
選択信号11a,11bにて選択しシーケンサバス9に接続す
るようになっている。このメモリ選択レジスタ6は、管
理用マイコン1のメモリアクセス信号10aと実行マイコ
ン3のメモリアクセス信号10b及び管理マイコン1から
の設定値信号を入力とし、選択信号11a,11bを出力す
る。尚、メモリ5a内に格納されたユーザプログラムを#
1とし、メモリ5b内に格納されたユーザプログラムを#
2として以下説明する。
設定値信号として本実施例では第2図に示す様に4種
類が用意され、設定値「1」がレジスタ6に設定される
と両マイコン1,3からのアクセス信号10a,10bがあるとき
選択信号11aにてメモリ5aが選択される。設定値「2」
がレジスタ6に設定されると、両マイコン1,3からのア
クセス信号10a,10bがあるとき選択信号11bにてメモリ5b
が選択される。設定値「3」がレジスタ6に設定される
と、実行用マイコン3からのアクセス信号10bがあると
き選択信号11aを出力してメモリ5aを選択し、管理用マ
イコン1からのアクセス信号10aがあるとき選択信号11b
を出力してメモリ5bが選択される。設定値「4」がレジ
スタ6に設定されると、実行用マイコン3からのアクセ
ス信号10bがあるとき選択信号11bを出力してメモリ5bを
選択し、管理用マイコン1からのアクセス信号10aがあ
るとき選択信号11aを出力してメモリ5aが選択される。
第3図は、実行用マイコン3の命令実行サイクル説明
図である。マイコン3の1命令サイクルは、命令フェッ
チaと、デコードbと、アドレス計算cと、I/Oアクセ
スdと、実行eとからなるが、このうち、命令フェッチ
aとI/Oアクセスdのときにシーケンサバス9を占有す
る。従って、マイコン3がデコードb,アドレス計算c,実
行dを行っているときは、シーケンサバス9は空いてい
るので、このときに管理用マイコン1がこのシーケンサ
バス9を使用することが可能となる。
次に、上述した構成のプログラマブルコントローラの
動作について説明する。
管理用マイコン1がレジスタ6に「1」を設定したと
き、実行用マイコン3がアクセス信号10bをレジスタ6
に出力すると共にメモリからユーザプログラムの命令を
読むためにアドレス信号をシーケンサバス9に出力する
と、レジスタ6によってメモリ5aが選択されているの
で、前記アドレス信号にてメモリ5aのユーザプログラム
#1がアクセスされ、実行用マイコン3は命令を取り込
み、命令を実行する。ここで、管理用マイコン1が実行
中のユーザプログラム#1を読み出して例えば外部記憶
装置にコピーを取る場合、実行用マイコン3がシーケン
サバス9を使用していないサイクルにおいて、アクセス
信号10aをレジスタ6に出力すると共に、アドレス信号
をマイコンバス8に出力する。レジスタ6の選択信号11
aにてメモリ5aが選択されているので、このアドレス信
号がバスインタフェース4を介してシーケンサバス9に
入力されると、メモリ5aからユーザプログラム#1が読
み出される。実行中のユーザプログラムがメモリ5bに格
納されている場合には、レジスタ6に「2」を設定し、
以下同様とする。
今仮りに、メモリ5aに格納されている実行中のユーザ
プログラム#1に変更を加えたい場合には、レジスタ6
に「3」を設定する。これにより、実行用マイコン3は
継続してメモリ5aのユーザプログラム#1を読み出して
実行するが、管理用マイコン1はメモリ5bにアクセス可
能となる。従って、前述した様にして外部記憶装置に取
り出したユーザプログラム#1に修正を加え、修正後の
ユーザプログラム#2を管理用マイコン1によりメモリ
5bに格納することが可能となる。この修正を外部のプロ
グラミング装置で行い、修正にミスがあるか無いかを検
証してもよく、また、メモリ5bに格納した後に管理用マ
イコン1にて検証してもよい。また、外部のプログラミ
ング装置を使用せずに、ユーザプログラム#1をメモリ
5bにコピーした後、管理用マイコン1にてメモリ5b内の
ユーザプログラムに修正を加えるようにしてもよい。
尚、実行中のユーザプログラムが#2で、これに修正を
加える場合には、レジスタ6に「4」を設定して、以下
同様とする。
次に、ユーザプログラム#1を実行中に実行対象ユー
ザプログラムを#2に変更する手順を説明する。前述し
た様に、レジスタ6の設定値を「3」として実行マイコ
ン3がユーザプログラム#1を実行し管理用マイコン1
がメモリ5bにアクセス可能状態にする。そして、管理用
マイコン1によってメモリ5bにユーザプログラム#2を
格納する。そして、実行マイコン3によるユーザプログ
ラム#1のスキャンエンドを待機する。スキャンエンド
になったとき、実行マイコン3は管理用マイコン1に割
込みをかけ、この割込みを受け付けた管理用マイコン1
はメモリ選択レジスタ6に例えば「4」を設定する。こ
れにより、実行マイコン3が出力するアドレス信号にて
メモリ5bのユーザプログラム#2がアクセスされること
になる。この様に、実行対象のユーザプログラムを#1
から#2に変更する場合、実行マイコンがアクセスする
メモリを切り替えることで行うので、実行マイコン3は
変更を意識すること無く、また、シーケンス処理を中断
すること無く、切り替えができる。
[発明の効果] 本発明によれば、シーケンス処理を中断することなく
ユーザプログラムの変更ができ、また、この変更後のユ
ーザプログラムの実行前の検証も可能となる。
【図面の簡単な説明】
第1図は本発明の一実施例におけるプログラマブルコン
トローラの構成図、第2図はレジスタによる2つのメモ
リの選択状態を説明する図、第3図はシーケンスプロセ
ッサの1命令サイクル説明図、第4図はユーザプログラ
ム変更手順を示すフローチャートである。 1……管理用マイコン(管理用プロセッサ)、3……実
行用マイコン(シーケンスプロセッサ)、5a……ユーザ
プログラム#1用メモリ、5b……ユーザプログラム#2
用メモリ、6……メモリ選択レジスタ、9……シーケン
サバス。

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】ユーザプログラムを実行するシーケンスプ
    ロセッサと、ユーザプログラムのコピーを行う管理用プ
    ロセッサと、同一アドレスでアクセスされユーザプログ
    ラムを格納する2つのメモリと、前記管理用プロセッサ
    からの指示に基づいて前記2つのメモリのうち前記シー
    ケンスプロセッサがアクセスするメモリを選択し該メモ
    リに格納されているユーザプログラムを前記シーケンス
    プロセッサに実行させると共に前記管理用プロセッサが
    アクセスするメモリを選択するメモリ選択手段とを備
    え、該メモリ選択手段は、前記管理用プロセッサから第
    1指示を受けた場合には、前記シーケンスプロセッサが
    実行中のユーザプログラムを格納したメモリに対し前記
    管理用プロセッサにアクセスさせ、前記管理用プロセッ
    サから第2指示を受けた場合には、前記シーケンスプロ
    セッサが実行中のユーザプログラムを格納したメモリと
    は別の他方のメモリに対し前記管理用プロセッサにアク
    セスさせるものであることを特徴とするプログラマブル
    コントローラ。
  2. 【請求項2】請求項1において、前記管理用プロセッサ
    はアクセスしたメモリに格納されているユーザプログラ
    ムを該メモリの外部にコピーする処理の他、前記シーケ
    ンスプロセッサが実行中のユーザプログラムを格納した
    メモリとは別の他方のメモリに格納されたユーザプログ
    ラムの修正または検証の処理を行うことを特徴とするプ
    ログラマブルコントローラ。
JP2066792A 1990-03-19 1990-03-19 プログラマブルコントローラ Expired - Lifetime JP2875842B2 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP2066792A JP2875842B2 (ja) 1990-03-19 1990-03-19 プログラマブルコントローラ
EP90125864A EP0447685B1 (en) 1990-03-19 1990-12-31 Programmable controller
DE69033031T DE69033031T2 (de) 1990-03-19 1990-12-31 Programmierbares Steuergerät
ES90125864T ES2133268T3 (es) 1990-03-19 1990-12-31 Controlador programable.
US08/231,642 US5600807A (en) 1990-03-19 1994-04-22 Programmable controller capable of updating a user program during operation by switching between user program memories

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2066792A JP2875842B2 (ja) 1990-03-19 1990-03-19 プログラマブルコントローラ

Publications (2)

Publication Number Publication Date
JPH03268005A JPH03268005A (ja) 1991-11-28
JP2875842B2 true JP2875842B2 (ja) 1999-03-31

Family

ID=13326072

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2066792A Expired - Lifetime JP2875842B2 (ja) 1990-03-19 1990-03-19 プログラマブルコントローラ

Country Status (5)

Country Link
US (1) US5600807A (ja)
EP (1) EP0447685B1 (ja)
JP (1) JP2875842B2 (ja)
DE (1) DE69033031T2 (ja)
ES (1) ES2133268T3 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2997005B2 (ja) * 1990-04-12 2000-01-11 キヤノン株式会社 出力装置
US5831852A (en) * 1992-12-14 1998-11-03 Carrier Corporation Method and apparatus for loading a control program into a refrigeration system
JP2000339008A (ja) * 1999-05-27 2000-12-08 Hitachi Ltd プログラマブルコントローラ
US6678274B1 (en) * 1999-07-30 2004-01-13 Riverstone Networks, Inc. Method and system for managing forwarding tables
US7228538B1 (en) * 2000-05-02 2007-06-05 International Business Machines Corporation Method, system, and program for updating firmware to a storage system comprised of multiple controllers
JP3594035B2 (ja) * 2003-03-13 2004-11-24 オムロン株式会社 制御装置、cpuユニット、プログラマブルコントローラのユーザプログラム編集方法、及びオンラインエディットされる際のプログラマブルコントローラの処理方法
JP2008077265A (ja) * 2006-09-20 2008-04-03 Fuji Electric Fa Components & Systems Co Ltd プログラマブルコントローラのプログラム更新方法
US8286156B2 (en) * 2006-11-07 2012-10-09 Sandisk Technologies Inc. Methods and apparatus for performing resilient firmware upgrades to a functioning memory
US20080109647A1 (en) * 2006-11-07 2008-05-08 Lee Merrill Gavens Memory controllers for performing resilient firmware upgrades to a functioning memory
WO2008058101A2 (en) * 2006-11-07 2008-05-15 Sandisk Corporation Memory controllers for performing resilient firmware upgrades to a functioning memory
US7836347B2 (en) * 2007-10-17 2010-11-16 GE Intelligent Platforms Inc. Service and diagnostic logic scan apparatus and method
US8973124B2 (en) * 2012-04-30 2015-03-03 General Electric Company Systems and methods for secure operation of an industrial controller
JP5906972B2 (ja) * 2012-07-05 2016-04-20 富士ゼロックス株式会社 画像形成装置および画像読取装置
US9116774B2 (en) 2013-05-14 2015-08-25 Sandisk Technologies Inc. Firmware updates for multiple product configurations
JP5937637B2 (ja) * 2014-04-30 2016-06-22 ファナック株式会社 シーケンスプログラムの切り替え時に、切り替え予告信号を出力する制御装置

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4257095A (en) * 1978-06-30 1981-03-17 Intel Corporation System bus arbitration, circuitry and methodology
US4257097A (en) * 1978-12-11 1981-03-17 Bell Telephone Laboratories, Incorporated Multiprocessor system with demand assignable program paging stores
DE3610155A1 (de) * 1986-03-26 1987-10-08 Joachim Bauer Mehrprozessorsystem fuer paralleles schreiben und lesen von informationen
US5012408A (en) * 1990-03-15 1991-04-30 Digital Equipment Corporation Memory array addressing system for computer systems with multiple memory arrays
US5144242A (en) * 1990-08-23 1992-09-01 The Regents Of The University Of California Continually loadable microcode store for MRI control sequencers

Also Published As

Publication number Publication date
EP0447685A2 (en) 1991-09-25
EP0447685B1 (en) 1999-03-31
ES2133268T3 (es) 1999-09-16
EP0447685A3 (en) 1992-11-19
DE69033031D1 (de) 1999-05-06
JPH03268005A (ja) 1991-11-28
US5600807A (en) 1997-02-04
DE69033031T2 (de) 1999-12-16

Similar Documents

Publication Publication Date Title
JP2875842B2 (ja) プログラマブルコントローラ
JPH02267634A (ja) 割込み処理装置
JP3563768B2 (ja) Romプログラム変更装置
JP2004046453A (ja) シングルチップマイクロコンピュータおよびそのブート領域切り替え方法
JPH0237600A (ja) 読取り専用記憶装置の試験方法とその方法を実行するデバイス
JP2001256044A (ja) データ処理装置
JP2004126658A (ja) プロセッサシステム
JPS6410854B2 (ja)
JPS59218569A (ja) マイクロ・コンピユ−タ
WO2001020453A1 (en) Method and apparatus for modifying microinstructions in a static memory device
JPH03103924A (ja) データ処理装置
JPH03160524A (ja) 情報処理装置
JPH1040094A (ja) ファームウエアのプログラム制御装置
JPH0630056B2 (ja) 信号処理装置
JP5194360B2 (ja) 情報処理装置およびその制御方法
JP3828040B2 (ja) マイクロコンピュータの制御方法
JPS60126731A (ja) プログラム制御方法
JPH1027153A (ja) バス転送装置
JPH02183330A (ja) データ処理装置
JPH06139215A (ja) 二重化eepromを持つ制御装置
JPH01279330A (ja) エラー処理方式
JPH05189227A (ja) ワンタイムプログラマブルrom内蔵マイクロコンピュータ
JPH0226252B2 (ja)
JPH04242437A (ja) 制御メモリ誤り訂正装置
JPH05241853A (ja) プログラマブルコントローラ

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080114

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20090114

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20090114

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20100114

Year of fee payment: 11

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

Free format text: PAYMENT UNTIL: 20110114

Year of fee payment: 12

EXPY Cancellation because of completion of term
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110114

Year of fee payment: 12