Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP4440172B2 - プログラマブルコントローラ - Google Patents
[go: Go Back, main page]

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

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

Info

Publication number
JP4440172B2
JP4440172B2 JP2005167126A JP2005167126A JP4440172B2 JP 4440172 B2 JP4440172 B2 JP 4440172B2 JP 2005167126 A JP2005167126 A JP 2005167126A JP 2005167126 A JP2005167126 A JP 2005167126A JP 4440172 B2 JP4440172 B2 JP 4440172B2
Authority
JP
Japan
Prior art keywords
program
memory
expansion
cpu
execution
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
Application number
JP2005167126A
Other languages
English (en)
Other versions
JP2006343845A (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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2005167126A priority Critical patent/JP4440172B2/ja
Publication of JP2006343845A publication Critical patent/JP2006343845A/ja
Application granted granted Critical
Publication of JP4440172B2 publication Critical patent/JP4440172B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Programmable Controllers (AREA)

Description

本発明は、圧縮されたプログラムを展開して実行する機能を有するプログラマブルコントローラに関するものである。
プログラマブルコントローラ(以下、PLCともいう)は、演算処理装置(CPU)、メモリ、通信手段などを備え、プログラミングツール等により通信手段を通してプログラムをメモリに予め記憶させておき、演算実行時にはCPUがプログラムをメモリから読み出しながら演算処理する。PLCとは元来、ハードウェアのリレー回路をソフトウェアプログラム化して実行するものであって、例えばセンサスイッチの入力に対する停止信号出力のように安全装置のような使用をされることもあり、ハードウェアリレー回路に近づけるような高速なプログラム処理が要求される。
またPLCは、様々な機器の制御、複雑な制御に使用されるようになっており、さらにファンクションブロックダイヤグラム等の視覚的なプログラミングを行うツールによってプログラムが自動的に変換・生成されることもあることから、PLCの演算処理するプログラムは肥大化してきている。ただし、このような複雑で大容量のプログラムは、機能ごとに幾つかのプログラムに分割されることが多い。
このように、PLCにおいては、大容量のプログラムを、高速にプログラム処理することが求められているが、その反面、メモリ容量の増大による製造コスト高は避けなければならない。そこで、大容量のプログラムを圧縮してPLCに搭載することが考えられるが、CPUが直接アクセスするメモリに、プログラムを圧縮状態で記憶すると、展開処理に要する時間を考慮しなくてはならず、CPUのプログラム処理速度を向上させることはできない。
そこで、特許文献1においては、マイクロコンピュータにおいて、CPUからプログラムのロード命令が発行されると、ROMから圧縮された実行プログラムが必要量だけ加工部へ送られ、加工部にて伸張、加工されて実行プログラムとなってRAMへ格納され、CPUはRAMへ格納されたプログラムに従って処理を行い、実行中のプログラムの続きがまだRAMへ格納されていない処理へ続く場合には、CPUは再びROMに格納されている圧縮された実行プログラムをRAMへロードする命令をROMと加工部へ発行するようにしている。
特開平10−133880号公報(第3−4頁、第1図)
しかしながら、特許文献1に示された従来の技術では、CPUはプログラムの展開済み部分の演算処理が完了した後、加工部へプログラムを展開する命令を発行し、加工部によるプログラムの展開完了を待ってから演算処理を再開することとなる。このため、特許文献1では、本来のプログラム演算処理時間以外に、プログラムを展開している間の待ち時間が掛かり、全体としてのプログラム実行にかかる時間が長くなるという問題点があった。
本発明は、上記に鑑みてなされたものであって、全体としての演算処理時間を延ばすことなく圧縮されたプログラムを演算処理することができるプログラマブルコントローラを得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明のプログラマブルコントローラは、圧縮された複数のプログラムを展開する展開手段と、前記展開手段で展開された複数のプログラムを順次実行するCPUとを備え、前記展開手段は、前記CPUでのプログラム実行に並行して、次に実行するプログラムを展開するようにしたことを特徴とする。
この発明によれば、展開手段がプログラムを展開する処理とCPUがプログラムを実行する処理とが並列して処理されるので、CPU側では展開による待ち時間がなくなり、これにより全体としてのプログラム演算処理時間を短くすることができるという効果を奏する。
以下に、本発明にかかるプログラマブルコントローラの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
図1は、この発明の実施の形態に係るプログラマブルコントローラ(PLC)を示すものである。PLCは、プログラムを演算処理するCPU1と、プログラム,データなどの圧縮処理を実行する圧縮手段2と、プログラム,データなどの展開処理を実行する展開手段3と、プログラミングツール(図示せず)等との通信を行うための通信手段4と、プログラムを記憶するメモリ(一次メモリ5および二次メモリ6)を備えている。
プログラムやデータを記憶するメモリは、一次メモリ5と二次メモリ6によって構成されている。二次メモリ6は拡張や交換の可能な外部メモリを含んでいてよい。プログラミングツール等から通信手段4を介して受信したプログラムは、二次メモリ6に記憶される。一次メモリ5にはCPU1によって演算処理可能なプログラムが記憶される。
展開手段3および圧縮手段2は、CPU1と独立して動作できることを特徴としている。これにより、CPU1の演算処理時間に影響を与えることなく、同時並行的にプログラムの展開および圧縮を実行でき、かつCPU1を介することなくメモリに記憶されたプログラムを読み出し、またプログラムをメモリへ書き込むことができる。
プログラミングツール等からPLCに送信されるプログラムやデータには、データの名前がつけられており、名前によってデータの種類を区別できる。よって、プログラムやユーザが作成したテキスト情報等のデータサイズが大きくなると予想されるデータについては、予めPLCにそのデータの種類が登録され、PLCがそのデータの種類によって、あまりサイズの大きくならないデータと区別可能である。このときのデータの種類は、ユーザがプログラム作成時に任意に設定するパラメータ等で登録できるものとし、例えば、プログラムとともに二次メモリ6に書き込まれる。
通信手段4はプログラミングツールやその他の装置とプログラムやデータを送受信するとき、相手側装置が展開手段3または圧縮手段2と等価な展開または圧縮の機能を有しているか識別する。これによって、通信の相手側の装置が展開機能を有している場合には、圧縮したままのプログラムやデータを送信し、通信の相手側の装置が圧縮機能をを有している場合には、圧縮したままのプログラムやデータを送信するよう相手側の装置に要求する。
尚、メモリ(一次メモリ5および二次メモリ6)には複数のプログラムやデータを記憶することが可能である。プログラムが複数の場合、それらの実行順序はパラメータに設定される。パラメータとは、PLCの動作に必要な設定情報であり、プログラミングツール等によってプログラムと共に送信され、他のプログラムやデータと同様にPLCのメモリ(一次メモリ5および/または二次メモリ6)に記憶される。
このように構成されたPLCにおいて、まず、PLCがプログラミングツール等とプログラムやデータを送受信するときの動作を説明する。
PLCは、プログラミングツールやその他の機器からのデータを通信手段4を介して受信すると、パラメータによりデータの名前を識別することによりプログラムや圧縮するべき種類のデータであるかどうかを判定する。プログラムまたは圧縮すべきデータならば圧縮手段2により圧縮してから二次メモリ6に記憶する。圧縮すべき種類でないデータは、そのまま二次メモリ6に記憶する。また、圧縮手段2と等価なデータ圧縮機能を有するプログラミングツールやその他の機器により、既に圧縮されているプログラムやデータを受信した場合は、そのまま二次メモリ6に記憶する。
一方、PLCからプログラミングツールやその他の機器へプログラムまたはデータを送信するときは、圧縮して記憶されたプログラムやデータは展開手段3により展開され、圧縮前の状態に戻してから送信される。なお、送信する相手のプログラミングツールその他の機器が展開手段3と等価な圧縮データの展開機能を有する場合は、圧縮したままのデータを送信する。
つぎに、圧縮されて二次メモリ6に記憶されたプログラムを展開して実行するときの動作を説明する。この場合、一次メモリ5は、2つのプログラムを記憶する容量を備えているものとして説明する。
展開手段3は、二次メモリ6に記憶されたパラメータを参照してプログラムの実行順序を確認し、圧縮されて二次メモリ6に記憶された複数のプログラムのうち、最初に実行するプログラム(第1のプログラム)を読み出して展開して一次メモリ5に記憶する。展開が完了すると、展開手段3は、第1のプログラムが展開完了した旨を示す展開完了通知をCPU1に送信するとともに、2番目のプログラム(第2のプログラム)をCPU1からの実行完了通知の受信に関係なく最初のプログラム(第1のプログラム)に続いて連続して展開処理して一次メモリ5に記憶する。2番目のプログラムの展開処理が終了すると、展開手段3は、第2のプログラムが展開完了した旨を示す展開完了通知をCPU1に送信する。
CPU1は、展開完了通知を受信すると、一次メモリ5に展開された第1のプログラムの演算処理を実行する。CPU1は、第1のプログラムの演算処理の実行が完了すると、第1のプログラムの実行が完了した旨を示す実行完了通知を展開手段3に送信する。さらに、CPU1は、展開手段3から第2のプログラムが展開完了した旨を示す展開完了通知が送られてきている場合は、一次メモリ5に展開された第2のプログラムの演算処理を続いて実行する。
展開手段3は、第1のプログラムの実行完了通知を受信すると、二次メモリ6に記憶された次のプログラム(第3のプログラム)を展開して、一次メモリ5上の第1のプログラムに上書きする。展開が完了すると、展開手段3は、第3のプログラムの展開が完了した旨を示す展開完了通知をCPU1に送信する。
CPU1は、第2のプログラムの実行が完了すると、第2のプログラムの実行が完了した旨を示す実行完了通知を展開手段3に送信する。展開手段3は、第2のプログラムの実行完了通知を受けると、次に実行するプログラム(第4のプログラム)を展開して、一次メモリ5上の第2のプログラムに上書きし、さらに第4のプログラムの展開が完了した旨を示す展開完了通知をCPU1に通知する。
CPU1は、第2のプログラムの実行完了通知した後、展開手段3から展開完了の通知を受けると、第3のプログラムの演算処理を実行し、完了したらその旨を示す実行完了通知を展開手段3に通知する。続いて、第4のプログラムについての展開完了の通知を受信している場合は、第4のプログラムについて演算処理を実行する。以降、この手順を繰り返すことにより、限られた一次メモリ5の容量の中で複数のプログラムを入れ替えながら順次演算処理を実行する。
なお、一般に、PLCでは、一連のプログラムを最後まで実行すると、また最初から同じ一連のプログラムを繰り返し実行することが多い。このような場合は、CPU1が最後のプログラムの実行中に、展開手段3が最初の第1のプログラムを展開するようにする。このような場合、2巡目以降においては、展開手段3は、2番目のプログラム(第2のプログラム)を展開する際、CPU1から最後のプログラムの実行完了通知した後、展開処理を実行する。
このように、本実施の形態によれば、展開手段3は、CPU1でのプログラム実行に並行して、次に実行するプログラムを展開するようにしたので、CPU1側では展開による待ち時間がなくなり、これにより全体としてのプログラム演算処理時間を短くすることができ、高速のプログラム処理が可能となる。
なお、PLCが使用される分野では、ユーザが、プログラムを実行させてから調整のためプログラムの一部を変更することが多いが、本PLCは、一連のプログラムの実行中にその一部を変更する場合は、二次メモリ6に記憶されているプログラムのみを書き換えればよい。従って、プログラムが書き換えられた後、該プログラムを展開手段3が展開して一次メモリ5に記憶することによって、CPU3が実行する一次メモリ5上のプログラムは自動的に、変更後のプログラムに置き換えられる。
以上のように、本発明にかかるプログラマブルコントローラは、圧縮されたプログラムを展開して実行する機能を有するプログラマブルコントローラとして有用である。
本発明にかかるプログラマブルコントローラの一例を示す機能ブロック図である。 プログラム実行の際のCPUと展開手段との動作タイミングを説明するためのシーケンス図である。
符号の説明
1 CPU
2 圧縮手段
3 展開手段
4 通信手段
5 一次メモリ
6 二次メモリ

Claims (2)

  1. 圧縮された複数のプログラムが記憶される第1のメモリと、
    展開後のプログラムがN(N≧2)個記憶可能な第2のメモリと、
    前記第1のメモリに記憶された圧縮されたプログラムを順次展開し、展開後のプログラムを第2のメモリに記憶する、CPUと独立して動作可能な展開手段と、
    前記第2のメモリに記憶されたプログラムを順次実行するCPUと、
    を備え、
    前記展開手段は、前記第1のメモリから第2のメモリへのプログラムの展開記憶が完了する毎に展開完了をCPUに通知し、
    前記CPUは、展開手段から展開完了の通知を受けると、前のプログラムの実行終了後、前記第2のメモリに記憶されているプログラムを実行すると共に、プログラムの実行が完了すると実行完了を前記展開手段に通知し、
    前記展開手段は、最初のプログラムからN番目のプログラムまでについては前記CPUからの実行完了の受信に関係なく連続してプログラムを前記第1のメモリから第2のメモリに展開し、N+1番目以降のプログラムについては、第2のメモリに記憶されているプログラムのうち、CPUの実行完了を受信したプログラムの記憶領域への上書きによる展開処理を実行することを特徴とするプログラマブルコントローラ。
  2. 前記展開手段は、最後のプログラムについての前記第1のメモリから第2のメモリへの展開記憶が終了すると、最初のプログラムを再度展開して第2のメモリへ上書き記憶することを特徴とする請求項1に記載のプログラマブルコントローラ。
JP2005167126A 2005-06-07 2005-06-07 プログラマブルコントローラ Expired - Fee Related JP4440172B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005167126A JP4440172B2 (ja) 2005-06-07 2005-06-07 プログラマブルコントローラ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005167126A JP4440172B2 (ja) 2005-06-07 2005-06-07 プログラマブルコントローラ

Publications (2)

Publication Number Publication Date
JP2006343845A JP2006343845A (ja) 2006-12-21
JP4440172B2 true JP4440172B2 (ja) 2010-03-24

Family

ID=37640795

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005167126A Expired - Fee Related JP4440172B2 (ja) 2005-06-07 2005-06-07 プログラマブルコントローラ

Country Status (1)

Country Link
JP (1) JP4440172B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7063222B2 (ja) * 2018-10-02 2022-05-09 オムロン株式会社 制御システム、サポート装置およびプログラム

Also Published As

Publication number Publication date
JP2006343845A (ja) 2006-12-21

Similar Documents

Publication Publication Date Title
JP6739498B2 (ja) 車載制御装置及びプログラム書き込み装置
CN107924168B (zh) 中转装置、中转装置的控制方法以及可读取记录媒体
JP4440172B2 (ja) プログラマブルコントローラ
JP4593095B2 (ja) プログラム書込装置,プログラム書込システム,送信装置およびプログラム
JP3412342B2 (ja) イメージ描画装置及びデータ伸長方法
JP2006268377A (ja) プログラム起動制御装置及びプログラム起動制御方法
TW201945993A (zh) 資料處理裝置、任務控制方法及程式
JP2004341824A (ja) プログラマブルコントローラのプログラミング装置
JP4813823B2 (ja) テストシステム及びテスト方法
JP2010134830A (ja) プログラマブルコントローラ、cpuユニット、アナログ入力ユニットおよびアナログ出力ユニット
JP5951041B2 (ja) プログラマブル表示器
JPH0628150A (ja) プログラム容量圧縮方法
JP5287630B2 (ja) 制御システム、制御システムの交信方法、通信ユニット、および通信ユニットの交信方法
US10372644B2 (en) Programmable controller
JP6901430B2 (ja) 制御装置及び編集装置
JPH0575840U (ja) コントローラ
JP4084937B2 (ja) データ出力デバイス、データ入力デバイス、データ出力方法、データ入力方法、データ出力プログラムを記録した媒体、データ入力プログラムを記録した媒体およびデータ入出力システム
WO2023021848A1 (ja) 制御装置、制御装置の制御方法
JP4251551B2 (ja) 検査romシステム
JP2005339257A (ja) 画像処理装置および画像処理システム
JPH1185518A (ja) 制御装置
JPH0462080A (ja) 画像処理装置
CN110554661A (zh) 梯形显示装置
JP2006217007A (ja) 圧縮伸長モジュールのインターフェース装置
JPH02287682A (ja) ビットマップ画像データ保存装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071217

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090917

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090929

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091130

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100106

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

Free format text: PAYMENT UNTIL: 20130115

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130115

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees