JP3629947B2 - Programmable controller system, programmable controller support apparatus, programmable controller, and recording medium - Google Patents
Programmable controller system, programmable controller support apparatus, programmable controller, and recording medium Download PDFInfo
- Publication number
- JP3629947B2 JP3629947B2 JP10597398A JP10597398A JP3629947B2 JP 3629947 B2 JP3629947 B2 JP 3629947B2 JP 10597398 A JP10597398 A JP 10597398A JP 10597398 A JP10597398 A JP 10597398A JP 3629947 B2 JP3629947 B2 JP 3629947B2
- Authority
- JP
- Japan
- Prior art keywords
- initialization
- variable
- programmable controller
- file
- initialization pattern
- 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
Links
Images
Description
【0001】
【発明の属する技術分野】
本発明はプログラマブルコントローラシステム、プログラマブルコントローラ支援装置、プログラマブルコントローラ、および、記録媒体に関し、特に、プログラマブルコントローラ支援装置から入力されたアプリケーションプログラムのソースコードをコンパイルして実行可能ファイルを生成した後、プログラマブルコントローラに供給して実行するプログラマブルコントローラシステム、プログラマブルコントローラシステムを構成するプログラマブルコントローラ支援装置とプログラマブルコントローラ、および、コンピュータをプログラマブルコントローラ支援装置として機能させるプログラムを記録した記録媒体に関する。
【0002】
【従来の技術】
制御仕様が簡単に変更できることを特徴とするプログラマブルコントローラ(PC:Proglamable Controller)が、その低価格化と高性能化に牽引されて、数多の現場で使用されるようになってきた。
【0003】
一般的に、プログラマブルコントローラは、パーソナルコンピュータと同様に、CPU、ROM、RAM、および、インターフェースなどによって構成されており、プログラマブルコントローラ支援装置から供給されたアプリケーションプログラムに応じて、制御対象であるモジュール群を制御する。
【0004】
ところで、プログラマブルコントローラで実行するアプリケーションプログラムは、プログラマブルコントローラ支援装置において、例えば、高級言語や図形言語などを用いて記述する。そして、このアプリケーションプログラムを実行する場合には、プログラムをコンパイルして実行可能ファイルを生成した後、その実行可能ファイルをプログラマブルコントローラに送信して実行させる。
【0005】
なお、アプリケーションプログラムをコンパイルする際は、アプリケーションプログラムで使用されている各種変数の初期値を格納した初期化パターンファイルが生成され、実行可能ファイルとともに、プログラマブルコントローラに送信される。
【0006】
図12は、従来のプログラマブルコントローラによって生成される初期化パターンファイルの一例を示す図である。
この図において、アプリケーションプログラムP1は、ソースコードであり、この例では、IEC(International Electrotechnical Commission )1131−3規格に準拠した高級言語で記述されている。
【0007】
ところで、このIEC1131−3規格に準拠した高級言語で使用可能な変数は、次の4種類である。なお、これらの変数は、ユーザが指定した初期値を有するか否かと、後述するウォーム起動とコールド起動における初期化の取り扱いの相違と、によって分類される。
(1)通常変数:起動方法に拘わらず値0に初期化される
(2)初期化変数:起動方法に拘わらず所定の初期値を有する
(3)リテイン変数:コールド起動では値0に初期化され、ウォーム起動では前回実行時の値が保持される
(4)初期化リテイン変数:コールド起動では所定の値に初期化され、ウォーム起動では前回実行時の値が保持される
ここで、ウォーム起動とは、前回実行時におけるリテイン変数(初期化リテイン変数も含む)の値を保持した状態で再起動することであり、また、コールド起動とは、リテイン変数を初期化した状態で起動することである。
【0008】
このアプリケーションプログラムP1がプログラマブルコントローラ支援装置によってコンパイルされると、実行可能ファイル(プログラム)が生成されるとともに、初期化パターンファイルi1と属性情報a1とが生成される。
【0009】
ここで、初期化パターンファイルi1は、アプリケーションプログラムに含まれている変数を初期化する際の初期値を格納している。また、属性情報a1は、初期化パターンファイルi1に格納されている初期値に対応する変数がリテイン変数であるか否かをそのビットの状態によって示す。
【0010】
この例では、アプリケーションプログラムP1の「VAR」および「END_VAR」によって囲繞されている領域内に変数の宣言がなされている。例えば、第3行目には、正数(Integer )型の変数「AAA」が宣言されており、その初期値は定義されていない。その下の行には、整数型の変数「BBB」が宣言されており、その初期値は16進数の“444”である。なお、「VAR」および「END_VAR」によって囲繞されている領域内に変数のうち、初期値が代入されていない変数が通常変数であり、初期値が代入されている変数が初期化変数である。
【0011】
また、「VAR RETAIN」および「END_VAR」によって囲繞されている領域内で宣言されている変数は、リテイン変数である。例えば、第8行目には、整数型のリテイン変数「DDD」が宣言されており、その初期値は16進数の“456”である。「VAR RETAIN」および「END_VAR」によって囲繞されている領域内で宣言されている変数のうち、初期値が代入されていない変数がリテイン変数であり、初期値が代入されている変数が初期化リテイン変数である。
【0012】
従って、アプリケーションプログラムP1の第3行目に宣言されている整数型の通常変数AAAは、その初期値が0であるので、初期化パターンファイルの第1行目には“0”が格納されており、また、メモリ属性情報の第1行目には、リテイン変数ではないこと示す“0”が格納されている。
【0013】
このようにして生成された、初期化パターンファイルi1と属性情報a1とは、プログラマブルコントローラに送信され、そこで格納される。
そして、例えば、コールド起動がかけられた場合には、図13に示すように、初期化パターンファイルの全てがユーザメモリ(プログラム実行中に各変数の値を格納するメモリ)m1に転送される。
【0014】
また、ウォーム起動がかけられた場合には、図14に示すように、属性情報の値が“0”であるものだけ(リテイン変数以外の変数)が、ユーザメモリm1に転送される。
【0015】
そして、アプリケーションプログラムが実行され、制御対象に対する制御が開始されることになる。
以上のような構成によれば、例えば、アプリケーションプログラムのデバッグ時にはウォーム起動を行って、適宜プログラムを停止させながら動作を確認するといったように、目的に応じた形態でプログラムを実行させることができる。
【0016】
【発明が解決しようとする課題】
しかしながら、このような従来の方法では、全ての変数の初期値を格納した初期化パターンファイルを作成するとともに、それに対応した属性情報を作成しなければならず、これら2つのファイル容量が大きくなる。その結果、プログラマブルコントローラ支援装置からプログラマブルコントローラに対してアプリケーションプログラムを転送するのに時間を要するという問題点があった。
【0017】
本発明はこのような点に鑑みてなされたものであり、初期化パターンファイルおよびそれに対応した属性情報のファイル容量を縮小化することを可能とするプログラマブルコントローラシステム、プログラマブルコントローラ支援装置、プログラマブルコントローラ、および、コンピュータに前述のような処理を実行させるプログラムを記録した記録媒体を提供することを目的とする。
【0018】
【課題を解決するための手段】
本発明では上記課題を解決するために、プログラマブルコントローラ支援装置から入力されたアプリケーションプログラムのソースコードをコンパイルして実行可能ファイルを生成した後、プログラマブルコントローラに供給して実行するプログラマブルコントローラシステムにおいて、前記プログラマブルコントローラ支援装置は、前記アプリケーションプログラムのソースコードの入力を受けるアプリケーションプログラム入力手段と、前記アプリケーションプログラムのソースコードをコンパイルして、実行可能ファイルを生成するコンパイル手段と、前記アプリケーションプログラムのソースコードに含まれている変数のうち、予め設定された初期値によって初期化される初期化変数と、値0によって初期化されるその他の変数とを弁別し、初期化変数とその初期値のみを抽出する初期化変数抽出手段と、前記初期化変数抽出手段によって抽出された初期化変数の初期値から初期化パターンファイルを生成する初期化パターンファイル生成手段と、前記コンパイル手段によって生成された実行可能ファイルと、前記初期化パターンファイル生成手段によって生成された初期化パターンファイルとを前記プログラマブルコントローラに送信する送信手段と、前記送信手段によって送信された実行可能ファイルを起動する起動手段とを有し、前記プログラマブルコントローラは、前記プログラマブルコントローラ支援装置から送信された前記実行可能ファイルと、前記初期化パターンファイルとを受信する受信手段と、前記受信手段によって受信された前記実行可能ファイルを格納する実行可能ファイル格納手段と、前記受信手段によって受信された前記初期化パターンファイルを格納する初期化パターンファイル格納手段と、前記実行可能ファイルが起動された場合に、各種変数の値が格納される変数値格納手段と、前記起動手段によって前記実行可能ファイルが起動された場合には、前記初期化パターンファイルを前記変数値格納手段の所定の領域にマッピングするマッピング手段と、前記初期化パターンファイルにより予め定められた初期値によって初期化される前記初期化変数以外の変数に対応する前記変数値格納手段の所定の領域を値0によって初期化する初期化手段と、を有することを特徴とするプログラマブルコントローラシステムが提供される。
【0019】
ここで、プログラマブルコントローラ支援装置において、アプリケーションプログラム入力手段は、アプリケーションプログラムのソースコードの入力を受ける。コンパイル手段は、アプリケーションプログラムのソースコードをコンパイルして、実行可能ファイルを生成する。初期化変数抽出手段は、アプリケーションプログラムのソースコードに含まれている変数のうち、予め設定された初期値によって初期化される初期化変数と、値0によって初期化されるその他の変数とを弁別し、初期化変数とその初期値のみを抽出する。初期化パターンファイル生成手段は、初期化変数抽出手段によって抽出された初期化変数の初期値から初期化パターンファイルを生成する。送信手段は、コンパイル手段によって生成された実行可能ファイルと、初期化パターンファイル生成手段によって生成された初期化パターンファイルとをプログラマブルコントローラに送信する。起動手段は、送信手段によって送信された実行可能ファイルを起動する。プログラマブルコントローラにおいて、受信手段は、プログラマブルコントローラ支援装置から送信された実行可能ファイルと、初期化パターンファイルとを受信する。実行可能ファイル格納手段は、受信手段によって受信された実行可能ファイルを格納する。初期化パターンファイル格納手段は、受信手段によって受信された初期化パターンファイルを格納する。変数値格納手段は、実行可能ファイルが起動された場合に、各種変数の値が格納される。マッピング手段は、起動手段によって実行可能ファイルが起動された場合には、初期化パターンファイルを変数値格納手段の所定の領域にマッピングする。初期化手段は、初期化パターンファイルにより予め定められた初期値によって初期化される初期化変数以外の変数に対応する変数値格納手段の所定の領域を値0によって初期化する。
【0020】
また、入力されたアプリケーションプログラムのソースコードをコンパイルして実行可能ファイルを生成した後、プログラマブルコントローラに供給して実行させるプログラマブルコントローラ支援装置おいて、前記アプリケーションプログラムのソースコードの入力を受けるアプリケーションプログラム入力手段と、前記アプリケーションプログラムのソースコードをコンパイルして、実行可能ファイルを生成するコンパイル手段と、前記アプリケーションプログラムのソースコードに含まれている変数のうち、予め設定された初期値によって初期化される初期化変数と、値0によって初期化されるその他の変数とを弁別し、初期化変数とその初期値のみを抽出する初期化変数抽出手段と、前記初期化変数抽出手段によって抽出された初期化変数の初期値から初期化パターンファイルを生成する初期化パターンファイル生成手段と、前記コンパイル手段によって生成された実行可能ファイルと、前記初期化パターンファイル生成手段によって生成された初期化パターンファイルとを前記プログラマブルコントローラに送信する送信手段と、前記送信手段によって送信された実行可能ファイルを起動する起動手段と、を有することを特徴とするプログラマブルコントローラ支援装置が提供される。
【0021】
ここで、アプリケーションプログラム入力手段は、アプリケーションプログラムのソースコードの入力を受ける。コンパイル手段は、アプリケーションプログラムのソースコードをコンパイルして、実行可能ファイルを生成する。初期化変数抽出手段は、アプリケーションプログラムのソースコードに含まれている変数のうち、予め設定された初期値によって初期化される初期化変数と、値0によって初期化されるその他の変数とを弁別し、初期化変数とその初期値のみを抽出する。初期化パターンファイル生成手段は、初期化変数抽出手段によって抽出された初期化変数の初期値から初期化パターンファイルを生成する。送信手段は、コンパイル手段によって生成された実行可能ファイルと、初期化パターンファイル生成手段によって生成された初期化パターンファイルとをプログラマブルコントローラに送信する。起動手段は、送信手段によって送信された実行可能ファイルを起動する。
【0022】
更に、プログラマブルコントローラ支援装置がアプリケーションプログラムのソースコードをコンパイルして生成した実行可能ファイルを入力して実行するプログラマブルコントローラにおいて、前記プログラマブルコントローラ支援装置から送信された前記実行可能ファイルと、前記初期化パターンファイルとを受信する受信手段と、前記受信手段によって受信された前記実行可能ファイルを格納する実行可能ファイル格納手段と、前記受信手段によって受信された前記初期化パターンファイルを格納する初期化パターンファイル格納手段と、前記実行可能ファイルが起動された場合に、各種変数の値が格納される変数値格納手段と、前記起動手段によって前記実行可能ファイルが起動された場合には、前記初期化パターンファイルを前記変数値格納手段の所定の領域にマッピングするマッピング手段と、前記初期化パターンファイルにより予め定められた初期値によって初期化される前記初期化変数以外の変数に対応する前記変数値格納手段の所定の領域を値0によって初期化する初期化手段と、を有することを特徴とするプログラマブルコントローラが提供される。
【0023】
ここで、受信手段は、プログラマブルコントローラ支援装置から送信された実行可能ファイルと、初期化パターンファイルとを受信する。実行可能ファイル格納手段は、受信手段によって受信された実行可能ファイルを格納する。初期化パターンファイル格納手段は、受信手段によって受信された初期化パターンファイルを格納する。変数値格納手段は、実行可能ファイルが起動された場合に、各種変数の値が格納される。マッピング手段は、起動手段によって実行可能ファイルが起動された場合には、初期化パターンファイルを変数値格納手段の所定の領域にマッピングする。初期化手段は、初期化パターンファイルにより予め定められた初期値によって初期化される初期化変数以外の変数に対応する変数値格納手段の所定の領域を値0によって初期化する。
【0024】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照して説明する。
図1において、プログラマブルコントローラ支援装置1は、アプリケーションプログラムをコンパイルするとともに、初期化パターンファイルを生成し、バス2を介してプログラマブルコントローラ3に供給する。
【0025】
プログラマブルコントローラ3は、アプリケーションプログラムが起動されると、プログラマブルコントローラ支援装置1から供給された初期化パターンファイルによって、アプリケーションプログラムに記述されている変数の初期値を設定した後、プログラムを実行する。
【0026】
プログラマブルコントローラ3は、アプリケーションプログラムに応じて、制御対象となるモジュール5−1〜5−nを制御する。
ここで、プログラマブルコントローラ支援装置1は、アプリケーションプログラム入力手段1a、コンパイル手段1b、初期化変数抽出手段1c、初期化パターンファイル生成手段1d、共通初期化パターンファイル生成手段1e、マッピング情報生成手段1f、送信手段1g、および、起動手段1hによって構成されている。
【0027】
アプリケーションプログラム入力手段1aは、アプリケーションプログラムの入力を受ける。コンパイル手段1bは、アプリケーションプログラム入力手段1aから入力されたプログラムをコンパイルし、実行可能ファイルを生成する。
【0028】
初期化変数抽出手段1cは、アプリケーションプログラムのソースコードに含まれている変数のうち、初期化変数と初期化リテイン変数とを抽出するとともに、それらの初期値を抽出する。
【0029】
初期化パターンファイル生成手段1dは、初期化変数抽出手段1cによって抽出された初期化変数と初期化リテイン変数の初期値から初期化パターンファイルを生成する。
【0030】
共通初期化パターンファイル生成手段1eは、アプリケーションプログラムのソースコードに、共通の初期化パターンを有する宣言文が繰り返し出現する場合には、その共通初期化パターンを抽出して共通初期化パターンファイルを生成する。
【0031】
マッピング情報生成手段1fは、共通初期化パターンファイルが後述するマッピング手段3dによってマッピングされる際に参照されるマッピング情報を生成する。
【0032】
送信手段1gは、コンパイル手段1bによって生成された実行可能ファイル、初期化パターンファイル生成手段1dによって生成された初期化パターンファイル、共通初期化パターンファイル生成手段1eによって生成された共通初期化パターンファイル、および、マッピング情報生成手段1fによって生成されたマッピング情報をプログラマブルコントローラ3に送信する。
【0033】
起動手段1hは、プログラマブルコントローラ3に所定の制御信号を送り、アプリケーションプログラムを起動させる。
また、プログラマブルコントローラ3は、受信手段3a、実行可能ファイル格納手段3b、初期化パターンファイル格納手段3c、マッピング手段3d、変数値格納手段3e、および、初期化手段3fによって構成されている。
【0034】
受信手段3aは、プログラマブルコントローラ支援装置1から送信された実行可能ファイル、初期化パターンファイル、共通初期化パターンファイル、および、マッピング情報を受信する。
【0035】
実行可能ファイル格納手段3bは、受信手段3aによって受信された実行可能ファイルを格納する。
初期化パターンファイル格納手段3cは、受信手段3aによって受信された初期化パターンファイル、共通初期化パターンファイル、および、マッピング情報とを格納する。
【0036】
マッピング手段3dは、起動手段1hによって実行可能ファイルが起動された場合には、初期化パターンファイルを変数値格納手段3eの特定の領域にマッピングするとともに、マッピング情報を参照して共通初期化パターンファイルを変数値格納手段3eの特定の領域(初期化パターンファイルがマッピングされる領域とは異なる領域)にマッピングする。
【0037】
変数値格納手段3eは、実行可能ファイル格納手段3bに格納されているアプリケーションプログラムが起動された場合に、各種変数の値を格納する。
初期化手段3fは、通常変数およびリテイン変数を値0によって初期化する。
【0038】
次に、以上の原理図の動作について説明する。
いま、アプリケーションプログラム入力手段1aからアプリケーションプログラムが入力され、コンパイル手段1bによってコンパイルが開始されたとすると、初期化変数抽出手段1cは、コンパイル手段1bのコンパイル結果を参照して、アプリケーションプログラムから初期化変数(および初期化リテイン変数)を抽出する。
【0039】
初期化変数抽出手段1cによって抽出された初期化変数は、初期化パターンファイル生成手段1dに供給され、そこで、初期化パターンファイルに変換される。即ち、初期化パターンファイル生成手段1dは、初期化変数および初期化リテイン変数の初期値のみからなる初期化パターンファイルを生成する。
【0040】
また、共通初期化パターンファイル生成手段1eは、アプリケーションプログラムに繰り返し出現する共通な初期化パターンを抽出して共通初期化パターンファイルを生成する。なお、共通初期化パターンは、例えば、初期値のみが異なる関数やサブルーチンがアプリケーションプログラム中で繰り返し使用されている場合に出現する。
【0041】
マッピング情報生成手段1fは、共通初期化パターンファイルをマッピング手段3dがマッピングする場合に必要な情報(マッピングするアドレス、マッピングの繰り返し回数等に関する情報)を生成して出力する。
【0042】
送信手段1gは、コンパイル手段1bによって生成されたアプリケーションプログラムの実行可能ファイル、初期化パターンファイル生成手段1dによって生成された初期化パターンファイル、共通初期化パターンファイル生成手段1eによって生成された共通初期化パターンファイル、および、マッピング情報生成手段1fによって生成されたマッピング情報をプログラマブルコントローラ3に送信する。
【0043】
プログラマブルコントローラ3の受信手段3aは、プログラマブルコントローラ支援装置1から送信された以上の情報を受信する。
実行可能ファイル格納手段3bは、受信手段3aが受信した情報から実行可能ファイルを抽出して格納する。
【0044】
初期化パターンファイル格納手段3cは、受信手段3aが受信した情報から初期化パターンファイル、共通初期化パターンファイル、および、マッピング情報を抽出して格納する。
【0045】
このような状態において、プログラマブルコントローラ支援装置1の起動手段1hがアプリケーションプログラムを起動する制御信号を送信した場合には、実行可能ファイル格納手段3bに格納されているアプリケーションプログラムが起動されることになる。
【0046】
そのとき、マッピング手段3dは、初期化パターンファイル格納手段3cに格納されている初期化パターンファイルを、変数値格納手段3eの特定の領域にマッピングするとともに、マッピング情報を参照して共通初期化パターンファイルを変数値格納手段3eの初期化パターンファイルがマッピングされる領域とは異なる特定の領域にマッピングする。
【0047】
例えば、マッピング情報に共通初期化パターンファイルを5回繰り返してマッピングすることが指示されている場合には、マッピング手段3dは、共通初期化パターンファイルを特定のアドレスから5回連続してマッピングする。
【0048】
初期化手段3fは、変数値格納手段3eの通常変数とリテイン変数が格納される領域に“0”を書き込み、これらの変数を値0に初期設定する。
そして、実行可能ファイル格納手段3bに格納されているアプリケーションプログラムが実際に動作を開始すると、変数値格納手段3eに格納されている変数値が適宜参照されながら、バス4を介して制御対象であるモジュール5−1〜5−nが制御されることになる。
【0049】
以上に示した本発明によれば、初期化変数をアプリケーションプログラムから抽出して、それらを初期化する際に必要な初期化パターンファイルを生成し、変数値格納手段3eの特定の領域にマッピングするようにしたので、全ての初期値を送信する必要がなくなり、その結果、プログラマブルコントローラ支援装置1からプログラマブルコントローラ3に送信されるファイルの容量を縮小化することが可能となる。
【0050】
また、アプリケーションプログラムから共通初期化パターンを抽出し、そのマッピング情報とともにプログラマブルコントローラ3に送信し、プログラマブルコントローラ3側では、マッピング情報を参照して共通初期化パターンを変数値格納手段3eにマッピングするようにしたので、アプリケーションプログラム中に同一の初期化パターンが繰り返し出現する場合には、共通パターンを1つだけ送信するようにすることができるので、前述の場合と同様にプログラマブルコントローラ支援装置1からプログラマブルコントローラ3に送信されるファイルの容量を縮小化することが可能となる。
【0051】
次に、図2を参照して本発明の実施の形態について説明する。
この図に示すように、プログラマブルコントローラ支援装置20は、CPU20a、ROM20b、RAM20c、インターフェース20d,20eにより構成されており、入力装置10より入力されたアプリケーションプログラムをコンパイルするとともに、アプリケーションプログラムに含まれている変数の初期化パターンファイルを生成してしてプログラマブルコントローラ30に送信する。また、必要に応じて、プログラマブルコントローラ30を制御し、アプリケーションプログラムを起動する。
【0052】
プログラマブルコントローラ30は、CPU30a、ROM30b、RAM30c、インターフェース30d,30eにより構成されており、プログラマブルコントローラ支援装置20より送信されたアプリケーションプログラムに応じて、モジュール5−1〜5−nを制御する。
【0053】
ここで、入力装置10は、例えば、キーボードやHDD装置などであり、アプリケーションプログラムをプログラマブルコントローラ支援装置20に対して供給する。
【0054】
プログラマブルコントローラ支援装置20のCPU20aは、装置の各部を制御するとともに、所定の演算処理を行う。ROM20bは、CPU20aにおいて実行される基本的なプログラム等を格納している。RAM20cは、CPU20aが所定の処理を実行する場合に、演算途中のデータや実行途中のプログラム等を一時的に格納する。
【0055】
インターフェース20dは、例えば、USB(Universal Serial Bus)やSCSI(Small Computer System Interface )などであり、入力装置10からアプリケーションプログラムを入力する。インターフェース20dは、RS(Recommended Standard)232Cなどのシリアルバスであり、プログラマブルコントローラ支援装置20において作成されたアプリケーションプログラムや初期化パターンファイルをプログラマブルコントローラ30に伝送したり、プログラマブルコントローラ30の動作状況をプログラマブルコントローラ支援装置20に伝送する。
【0056】
バス4は、プログラマブルコントローラ30とモジュール5−1〜5−nを相互に接続し、これらの間でデータの授受を可能とする。
モジュール5−1〜5−nは、制御対象を直接制御する機器であり、例えば、ディジタル入力・出力、アナログ入力・出力、および、通信デバイスなどによって構成されている。
【0057】
次に、図3を参照して以上の実施の形態の動作を説明する。
図3は、図2に示すプログラマブルコントローラ支援装置20において実行される処理の一例を説明するフローチャートである。このフローチャートが開始されると、以下の処理が実行されることになる。
[S1]CPU20aは、入力装置10からアプリケーションプログラムを入力し、RAM20cの所定の領域に格納する。
[S2]CPU20aは、入力装置10から所定のコマンドが入力され、コンパイルの実行が指示されたか否かを判定し、コンパイルの実行が指示された場合にはステップS3に進み、それ以外の場合にはステップS2に戻る。
[S3]CPU20aは、コンパイル処理を実行する。
【0058】
なお、このコンパイル処理は、例えば、RAM20cに格納されているコンパイラプログラムに従って実行される。
[S4]CPU20aは、アプリケーションプログラムに含まれている初期化変数を抽出する。
【0059】
初期化変数を抽出する様子を図4に示す。この図に示すユーザプログラム40は、図5に示すユーザプログラムとともに、アプリケーションプログラムの一部であり、プログラムが起動された場合には一度しか実行されない部分である。
【0060】
この図において、「VAR」および「END_VAR」によって囲繞された部分のうち、初期値が代入されているもの(変数「BBB」および変数「CCC」)がステップS4において抽出される初期化変数である。
[S5]CPU20aは、ステップS4において抽出した初期化変数に対応する初期化パターンファイルを生成する。
【0061】
図4の例では、初期化パターンファイル41が生成される。
[S6]CPU20aは、アプリケーションプログラムに含まれている初期化リテイン変数を抽出する。
【0062】
この図において、「VAR RETAIN」および「END_VAR」によって囲繞された部分のうち、初期値が代入されている変数(変数「DDD」、変数「EEE」、および、変数「FFF」)がステップS6において抽出される初期化リテイン変数である。
【0063】
ここで、「F_1: funcA」は、インスタンス(初期化領域)名が「F_1」であるファンクションブロック(詳細は後述する)を宣言している文である。
[S7]CPU20aは、ステップS6において抽出した初期化リテイン変数に対応する初期化パターンファイルを生成する。
【0064】
図4の例では、初期化パターンファイル42が生成される。
[S8]CPU20aは、ファンクションブロックから共通初期化パターンを抽出し、共通初期化パターンファイルを生成する。
【0065】
ここで、ファンクションブロックとは、所定の入力が与えられた場合に、その入力に応じた所定の処理を実行し、得られた結果を出力する機能ブロックを意味している。これは、例えば、サブルーチンや関数と同等である。
【0066】
この例では、図4に示すように、ユーザプログラム40のメインブロックに、インスタンス名が「F_1」〜「F_3」である3つのファンクションブロック「funcA」が宣言されており、それらのファンクションブロックは、第16行目以降に示すように、入力パラメータが代入される変数AAAに対して初期値“123”が代入されて呼び出されている(例えば、F_1(AAA:=123))。
【0067】
なお、例えば、文「DDD:=F_1.FFF」は、インスタンス名F_1のファンクションブロック「funcA」の出力パラメータ「FFF」の値を変数DDDに入力する処理である。
【0068】
ところで、ファンクションブロック「funcA」において使用されている変数は、インスタンス名に拘わらず共通であるので、アプリケーションプログラムが実行される場合には、これらのファンクションブロックに対応するユーザメモリ領域には共通の初期化パターンが3回マッピングされることになる。
【0069】
このように、インスタンス名が異なる同一のファンクションブロックが存在する場合には、ステップS8の処理において、この共通初期化パターンが抽出されて共通初期化パターンファイル51(図5参照)が生成される。
[S9]CPU20aは、マッピング情報を生成する。
【0070】
図5の例では、ファンクションブロック「funcA」の共通初期化パターンは、アドレス「00001200」番地から、3回連続してマッピングされることが示されている。
[S10]CPU20aは、属性情報を生成する。
【0071】
ここで、属性情報とは共通初期化パターンファイルに格納されている変数(ワード単位で格納されている)がリテイン変数であるか否かをビットの状態で示した情報である。ビットが“1”である場合には、対応する情報がリテイン変数の初期値であることを示している。
【0072】
図5の例では、第5〜第6行目が“1”となっており、共通初期化パターンファイルの“0456”および“0567”がリテイン変数の初期値であることが分かる。なお、これらの変数は、ユーザプログラム50の第10〜第11行目に記述された変数DDDおよび変数EEEに対応している。
[S11]CPU20aは、生成された実行可能ファイル、初期化パターンファイル、共通初期化パターンファイル、マッピング情報、および、属性情報をプログラマブルコントローラ30に送信する。
【0073】
以上の処理により、アプリケーションプログラムを実行する際に必要な実行可能ファイル、初期化パターンファイル、共通初期化パターンファイル、マッピング情報、および、属性情報が生成され、プログラマブルコントローラ30に供給される。
【0074】
次に、図6〜図8を参照して、プログラマブルコントローラ30において実行される処理の一例について説明する。
図6は、プログラマブルコントローラ支援装置20から送信されたアプリケーションプログラムを実行する場合にプログラマブルコントローラ30において実行される処理の一例を説明するフローチャートである。このフローチャートが開始されると、以下の処理が実行される。
[S21]CPU30aは、プログラマブルコントローラ支援装置20から、アプリケーションプログラムの起動が要請されたか否かを判定し、起動が要請された場合にはステップS22に進み、その他の場合にはステップS21に戻る。
[S22]CPU30aは、ウォーム起動が要請されたか否かを判定し、ウォーム起動が要請された場合にはステップS23に進み、それ以外の場合(コールド起動が要請された場合)にはステップS24に進む。
[S23]CPU30aは、ウォーム起動処理を実行する。
【0075】
なお、この処理の詳細については図7を参照して後述する。
[S24]CPU30aは、コールド起動処理を実行する。
なお、この処理の詳細については図8を参照して後述する。
【0076】
図7は、図6に示すウォーム起動処理の詳細を説明するフローチャートである。このフローチャートが開始されると、以下の処理が実行される。
[S31]CPU30aは、通常メモリ領域を値0によって初期化する。
【0077】
なお、通常メモリ領域とは通常変数が格納されるRAM30c上の領域である。
即ち、RAM30cのユーザメモリ領域(変数の値が格納される領域)は、図9に示すように、通常変数の値が格納される通常メモリ領域61、初期化変数の値が格納される初期化メモリ領域62、リテイン変数の値が格納されるリテインメモリ領域63、初期化リテイン変数の値が格納される初期化リテインメモリ領域64、および、ファンクションブロックの変数の値が格納されるフリーメモリ領域65に分割されている。
[S32]CPU30aは、初期化パターンファイル41を初期化メモリ領域62にマッピングする。
【0078】
この様子を図10に示す。この例に示すように、初期化変数の初期化パターンファイル41は、ユーザメモリ領域の初期化メモリ領域(初期化変数の値が格納される領域)62にマッピングされる。
[S33]CPU30aは、マッピング情報52と属性情報53とを参照して、共通初期化パターンファイル51をフリーメモリ領域65にマッピングする。
【0079】
即ち、図10に示すように、CPU30aは、マッピング情報52を参照して、属性情報が“0”とされている変数(通常変数および初期化変数)に対応する領域に対して、共通初期化パターンファイルの初期値を書き込み、初期化を行う。
[S34]CPU30aは、RAM30cに格納されているアプリケーションプログラムを実行し、図6の処理に復帰(リターン)する。
【0080】
以上の処理により、リテイン変数および初期化リテイン変数の前回値(前回起動されたときの変数の最終値)を保存した状態で、アプリケーションプログラムを再起動させることができる。
【0081】
次に、図8を参照して、図6に示すコールド起動処理の詳細な処理について説明する。図8に示すフローチャートが開始されると、以下の処理が実行される。
[S41]CPU30aは、通常メモリ領域61およびリテインメモリ領域63を値0によって初期化する。
[S42]CPU30aは、初期化パターンファイル41を初期化メモリ領域62にマッピングする。
【0082】
即ち、図11に示すように、CPU30aは、初期化変数の初期化パターンファイル41を、ユーザメモリ領域の初期化メモリ領域62にマッピングする。
[S43]CPU30aは、初期化パターンファイル42を初期化リテインメモリ領域64にマッピングする。
【0083】
即ち、図11に示すように、CPU30aは、初期化リテイン変数の初期化パターンファイル42を、ユーザメモリ領域の初期化メモリ領域64にマッピングする。
[S44]CPU30aは、マッピング情報52を参照して、共通初期化パターンファイル51を、フリーメモリ領域65にマッピングする。
【0084】
即ち、図11に示すように、CPU30aは、ファンクションブロックの全ての変数の初期値が格納された共通初期化パターンファイル51を、マッピング情報52を参照して、ユーザメモリ領域のフリーメモリ領域65にマッピングする。
[S45]CPU30aは、RAM30cに格納されているアプリケーションプログラムを実行し、図6の処理に復帰(リターン)する。
【0085】
以上の処理により、全ての変数を初期化した状態で、アプリケーションプログラムを起動させることができる。
以上の実施の形態によれば、プログラマブルコントローラ支援装置20においてアプリケーションプログラムをコンパイルする際に、初期化変数および初期化リテイン変数の初期化パターンファイルを生成し、プログラマブルコントローラ30ではこれらの初期化パターンファイルによって変数を初期化するとともに、その他の変数は、一括して、値0に初期化するようにしたので、プログラマブルコントローラ支援装置20からプログラマブルコントローラ30に送信される初期化パターンファイルおよび属性情報の容量を削減することが可能となる。
【0086】
また、本実施の形態によれば、アプリケーションプログラム中に、異なるインスタンス名を有するファンクションブロックが複数存在している場合には、共通初期化パターンファイル51を生成するとともに、マッピング情報52を生成し、プログラマブルコントローラ30では、マッピング情報52を参照して、共通初期化パターンファイル51をフリーメモリ領域65に展開するようにしたので、プログラマブルコントローラ支援装置20からプログラマブルコントローラ30に送信される初期化パターンファイルおよび属性情報の容量を削減することが可能となる。
【0087】
更に、本実施の形態によれば、ウォーム起動が実行された場合には、リテイン変数および初期化リテイン変数を初期化しないようにしたので、目的に応じて、アプリケーションプログラムの起動形態を変更することができる。
【0088】
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、プログラマブルコントローラ支援装置が有すべき機能の処理内容は、コンピュータで読み取り可能な記録媒体に記録されたプログラムに記述されており、このプログラムをコンピュータで実行することにより、上記処理がコンピュータで実現される。コンピュータで読み取り可能な記録媒体としては、磁気記録装置や半導体メモリ等がある。
【0089】
市場に流通させる場合には、CD−ROM(Compact Disk Read Only Memory) やフロッピーディスク等の可搬型記録媒体にプログラムを格納して流通させたり、ネットワークを介して接続されたコンピュータの記憶装置に格納しておき、ネットワークを通じて他のコンピュータに転送することもできる。コンピュータで実行する際には、コンピュータ内のハードディスク装置等にプログラムを格納しておき、メインメモリにロードして実行するようにすればよい。
【0090】
【発明の効果】
以上説明したように本発明では、プログラマブルコントローラ支援装置においてアプリケーションプログラムをコンパイルする際に、予め設定された初期値によって初期化される変数の初期化パターンファイルを生成し、プログラマブルコントローラではこれらの初期化パターンファイルによって変数を初期化するとともに、その他の変数は、一括して、値0に初期化するようにしたので、プログラマブルコントローラ支援装置からプログラマブルコントローラに送信される初期化パターンファイルおよび属性情報の容量を削減することが可能となる。
【0091】
また、本実施の形態によれば、アプリケーションプログラム中に、共通の初期化パターンを有する宣言文が繰り返し出現する場合には、共通初期化パターンファイルを生成するとともに、マッピング情報を生成し、プログラマブルコントローラでは、マッピング情報を参照して、共通初期化パターンファイルをマッピングするようにしたので、プログラマブルコントローラ支援装置からプログラマブルコントローラに送信される初期化パターンファイルおよび属性情報の容量を削減することが可能となる。
【0092】
更に、本実施の形態によれば、ウォーム起動が実行された場合には、リテイン変数を初期化しないようにしたので、目的に応じて、アプリケーションプログラムの起動形態を変更することができる。
【図面の簡単な説明】
【図1】本発明の原理を説明する原理図である。
【図2】本発明の実施の形態の構成例を示すブロック図である。
【図3】図2に示すプログラマブルコントローラ支援装置において実行される処理の一例を説明するフローチャートである。
【図4】図3の処理により生成される初期化変数の初期化パターンファイルと、初期化リテイン変数の初期化パターンファイルの一例を示す図である。
【図5】図3の処理により生成される共通初期化パターンファイル、マッピング情報、および、属性情報の一例を示す図である。
【図6】図2に示すプログラマブルコントローラにおいて実行される処理の一例を説明するフローチャートである。
【図7】図6に示すウォーム起動処理の詳細を説明するフローチャートである。
【図8】図6に示すコールド起動処理の詳細を説明するフローチャートである。
【図9】図2に示すRAM上のユーザメモリ領域の分割の態様を示す図である。
【図10】図7に示す処理が実行された場合における、ユーザメモリ領域の初期化の一例を示す図である。
【図11】図8に示す処理が実行された場合における、ユーザメモリ領域の初期化の一例を示す図である。
【図12】従来における初期化パターンファイルと属性情報の生成方法の一例を示す図である。
【図13】従来におけるコールド起動の際に、初期化パターンファイルがユーザメモリにマッピングされる様子を示す図である。
【図14】従来におけるウォーム起動の際に、初期化パターンファイルがユーザメモリにマッピングされる様子を示す図である。
【符号の説明】
1 プログラマブルコントローラ支援装置
1a アプリケーションプログラム入力手段
1b コンパイル手段
1c 初期化変数抽出手段
1d 初期化パターンファイル生成手段
1e 共通初期化パターンファイル生成手段
1f マッピング情報生成手段
1g 送信手段
1h 起動手段
2 バス
3 プログラマブルコントローラ
3a 受信手段
3b 実行可能ファイル格納手段
3c 初期化パターンファイル格納手段
3d マッピング手段
3e 変数値格納手段
3f 初期化手段
4 バス
5−1〜5−n モジュール[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a programmable controller system, a programmable controller support device, a programmable controller, and a recording medium, and more particularly, after generating an executable file by compiling a source code of an application program input from the programmable controller support device, the programmable controller The present invention relates to a programmable controller system that is supplied to and executed by a programmable controller, a programmable controller support device and a programmable controller that constitute the programmable controller system, and a recording medium that records a program that causes a computer to function as the programmable controller support device.
[0002]
[Prior art]
A programmable controller (PC) characterized in that the control specifications can be easily changed has been used in many fields, driven by its low price and high performance.
[0003]
In general, a programmable controller is configured by a CPU, a ROM, a RAM, an interface, and the like, similar to a personal computer, and is a group of modules to be controlled according to an application program supplied from a programmable controller support device. To control.
[0004]
By the way, the application program executed by the programmable controller is described in the programmable controller support apparatus using, for example, a high-level language or a graphic language. When executing the application program, the executable program is generated by compiling the program, and the executable file is transmitted to the programmable controller for execution.
[0005]
When compiling the application program, an initialization pattern file storing initial values of various variables used in the application program is generated and transmitted to the programmable controller together with the executable file.
[0006]
FIG. 12 is a diagram illustrating an example of an initialization pattern file generated by a conventional programmable controller.
In this figure, an application program P1 is a source code, and in this example, it is described in a high-level language that conforms to the IEC (International Electrotechnical Commission) 1131-3 standard.
[0007]
By the way, there are the following four types of variables that can be used in a high-level language conforming to the IEC1131-3 standard. These variables are classified according to whether or not they have an initial value specified by the user and differences in handling of initialization in warm activation and cold activation described later.
(1) Normal variable: Initialized to 0 regardless of the startup method
(2) Initialization variable: has a predetermined initial value regardless of the startup method
(3) Retain variable: Initialized to 0 for cold start, and retains the previous value for warm start
(4) Initialization retain variable: Initialized to a predetermined value at cold start, and the value at the previous execution is held at warm start
Here, the warm start is restarting while retaining the values of the retain variables (including initialization retain variables) at the previous execution, and the cold start is the state where the retain variables are initialized. Is to start with.
[0008]
When the application program P1 is compiled by the programmable controller support device, an executable file (program) is generated, and an initialization pattern file i1 and attribute information a1 are generated.
[0009]
Here, the initialization pattern file i1 stores initial values for initializing variables included in the application program. The attribute information a1 indicates whether or not the variable corresponding to the initial value stored in the initialization pattern file i1 is a retain variable by the state of the bit.
[0010]
In this example, variables are declared in an area surrounded by “VAR” and “END_VAR” of the application program P1. For example, in the third line, an integer type variable “AAA” is declared and its initial value is not defined. An integer type variable “BBB” is declared in the lower line, and its initial value is “444” in hexadecimal. Of the variables surrounded by “VAR” and “END_VAR”, variables that are not assigned initial values are normal variables, and variables that are assigned initial values are initialization variables.
[0011]
A variable declared in an area surrounded by “VAR RETAIN” and “END_VAR” is a retain variable. For example, in the eighth line, an integer type retain variable “DDD” is declared, and its initial value is “456” in hexadecimal. Of the variables declared in the area enclosed by “VAR RETAIN” and “END_VAR”, the variables to which the initial values are not assigned are the retain variables, and the variables to which the initial values are assigned are the initialization retains. Is a variable.
[0012]
Therefore, since the initial value of the integer type normal variable AAA declared in the third line of the application program P1 is 0, “0” is stored in the first line of the initialization pattern file. In the first row of the memory attribute information, “0” indicating that it is not a retain variable is stored.
[0013]
The initialization pattern file i1 and the attribute information a1 generated in this way are transmitted to the programmable controller and stored therein.
For example, when a cold start is applied, as shown in FIG. 13, all of the initialization pattern file is transferred to the user memory (a memory for storing the value of each variable during program execution) m1.
[0014]
When warm activation is performed, as shown in FIG. 14, only the attribute information value “0” (variable other than the retain variable) is transferred to the user memory m1.
[0015]
Then, the application program is executed, and control on the controlled object is started.
According to the configuration as described above, for example, when the application program is debugged, the program can be executed in a form according to the purpose, such as performing warm activation and checking the operation while appropriately stopping the program.
[0016]
[Problems to be solved by the invention]
However, in such a conventional method, it is necessary to create an initialization pattern file storing the initial values of all variables and to create attribute information corresponding to the initialization pattern file, and the capacity of these two files increases. As a result, there is a problem that it takes time to transfer the application program from the programmable controller support device to the programmable controller.
[0017]
The present invention has been made in view of such points, and a programmable controller system, a programmable controller support device, a programmable controller, which can reduce the file capacity of the initialization pattern file and the attribute information corresponding to the initialization pattern file, Another object of the present invention is to provide a recording medium that records a program that causes a computer to execute the above-described processing.
[0018]
[Means for Solving the Problems]
In the present invention, in order to solve the above-described problem, in the programmable controller system for executing the source code of the application program input from the programmable controller support device by compiling the source code of the application program and generating the executable file, the program is supplied to the programmable controller. The programmable controller support device includes an application program input unit that receives input of a source code of the application program, a compile unit that compiles the source code of the application program to generate an executable file, and a source code of the application program. Among the included variables, an initialization variable that is initialized with a preset initial value and other variables that are initialized with a value of 0 Separately, an initialization variable extraction unit that extracts only an initialization variable and its initial value, and an initialization pattern file generation that generates an initialization pattern file from the initial value of the initialization variable extracted by the initialization variable extraction unit Means, an executable file generated by the compiling means, a transmission means for transmitting the initialization pattern file generated by the initialization pattern file generation means to the programmable controller, and an execution transmitted by the transmission means And an activation unit that activates the executable file, and the programmable controller receives the executable file transmitted from the programmable controller support device and the initialization pattern file, and the reception unit receives the executable file. The executable file The executable file storage means for storing, the initialization pattern file storage means for storing the initialization pattern file received by the receiving means, and the values of various variables are stored when the executable file is activated. Variable value storage means, mapping means for mapping the initialization pattern file to a predetermined area of the variable value storage means when the executable file is activated by the activation means, and the initialization pattern file Initialization means for initializing a predetermined area of the variable value storage means corresponding to a variable other than the initialization variable initialized with a predetermined initial value by a value of 0. A programmable controller system is provided.
[0019]
Here, in the programmable controller support device, the application program input means receives the input of the source code of the application program. The compiling means compiles the source code of the application program to generate an executable file. The initialization variable extraction means discriminates among the variables included in the source code of the application program from the initialization variable initialized by a preset initial value and other variables initialized by the
[0020]
An application program input that receives the input of the source code of the application program in a programmable controller support apparatus that compiles the source code of the input application program to generate an executable file and then supplies the executable program to the programmable controller for execution. Means for compiling the source code of the application program to generate an executable file, and initialization is performed with a preset initial value among variables included in the source code of the application program. An initializing variable extracted from the initializing variable by the initializing variable extracting means for discriminating the initializing variable from other variables initialized by the
[0021]
Here, the application program input means receives the input of the source code of the application program. The compiling means compiles the source code of the application program to generate an executable file. The initialization variable extraction means discriminates among the variables included in the source code of the application program from the initialization variable initialized by a preset initial value and other variables initialized by the
[0022]
Furthermore, in the programmable controller that the programmable controller support device inputs and executes the executable file generated by compiling the source code of the application program, the executable file transmitted from the programmable controller support device and the initialization pattern Receiving means for receiving a file, executable file storage means for storing the executable file received by the receiving means, and initialization pattern file storage for storing the initialization pattern file received by the receiving means Means, variable value storage means for storing values of various variables when the executable file is activated, and the initialization pattern file when the executable file is activated by the activation means. Above Mapping means for mapping to a predetermined area of the numerical value storage means, and a predetermined area of the variable value storage means corresponding to a variable other than the initialization variable initialized with an initial value predetermined by the initialization pattern file There is provided a programmable controller characterized by having initialization means for initializing the value with a value of 0.
[0023]
Here, the receiving unit receives the executable file and the initialization pattern file transmitted from the programmable controller support device. The executable file storage means stores the executable file received by the receiving means. The initialization pattern file storage means stores the initialization pattern file received by the receiving means. The variable value storage means stores values of various variables when the executable file is activated. The mapping means maps the initialization pattern file to a predetermined area of the variable value storage means when the executable file is activated by the activation means. The initialization means initializes a predetermined area of the variable value storage means corresponding to a variable other than the initialization variable initialized with an initial value predetermined by the initialization pattern file with a value of zero.
[0024]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
In FIG. 1, the programmable
[0025]
When the application program is activated, the
[0026]
The
Here, the programmable
[0027]
The application program input means 1a receives an application program input. The compiling unit 1b compiles the program input from the application
[0028]
The initialization
[0029]
The initialization pattern file generation means 1d generates an initialization pattern file from the initialization variables extracted by the initialization variable extraction means 1c and the initial values of the initialization retain variables.
[0030]
The common initialization pattern file generation means 1e generates a common initialization pattern file by extracting the common initialization pattern when a declaration statement having a common initialization pattern repeatedly appears in the source code of the application program To do.
[0031]
The mapping information generating unit 1f generates mapping information that is referred to when the common initialization pattern file is mapped by the
[0032]
The
[0033]
The activation unit 1h sends a predetermined control signal to the
The
[0034]
The receiving
[0035]
The executable file storage means 3b stores the executable file received by the receiving means 3a.
The initialization pattern file storage unit 3c stores the initialization pattern file, the common initialization pattern file, and the mapping information received by the
[0036]
When the executable file is activated by the activation unit 1h, the
[0037]
The variable value storage means 3e stores the values of various variables when the application program stored in the executable file storage means 3b is started.
The
[0038]
Next, the operation of the above principle diagram will be described.
Now, assuming that the application program is input from the application
[0039]
The initialization variable extracted by the initialization
[0040]
The common initialization pattern file generation unit 1e extracts a common initialization pattern that repeatedly appears in the application program and generates a common initialization pattern file. Note that the common initialization pattern appears, for example, when a function or subroutine having only different initial values is repeatedly used in the application program.
[0041]
The mapping information generating unit 1f generates and outputs information necessary for mapping the common initialization pattern file by the
[0042]
The
[0043]
The receiving means 3a of the
The executable
[0044]
The initialization pattern file storage unit 3c extracts and stores the initialization pattern file, the common initialization pattern file, and the mapping information from the information received by the
[0045]
In such a state, when the activation means 1h of the programmable
[0046]
At that time, the
[0047]
For example, when the mapping information indicates that the common initialization pattern file is repeatedly mapped five times, the
[0048]
The
Then, when the application program stored in the executable
[0049]
According to the present invention described above, initialization variables are extracted from an application program, an initialization pattern file necessary for initializing them is generated, and mapped to a specific area of the variable value storage means 3e. Since it did in this way, it becomes unnecessary to transmit all the initial values, As a result, it becomes possible to reduce the capacity | capacitance of the file transmitted to the
[0050]
Further, a common initialization pattern is extracted from the application program and transmitted to the
[0051]
Next, an embodiment of the present invention will be described with reference to FIG.
As shown in this figure, the programmable
[0052]
The
[0053]
Here, the
[0054]
The
[0055]
The interface 20 d is, for example, a USB (Universal Serial Bus) or a SCSI (Small Computer System Interface), and inputs an application program from the
[0056]
The
The modules 5-1 to 5-n are devices that directly control a control target, and are configured by, for example, digital input / output, analog input / output, and a communication device.
[0057]
Next, the operation of the above embodiment will be described with reference to FIG.
FIG. 3 is a flowchart for explaining an example of processing executed in the programmable
[S1] The
[S2] The
[S3] The
[0058]
Note that this compile processing is executed according to a compiler program stored in the
[S4] The
[0059]
FIG. 4 shows how the initialization variable is extracted. The
[0060]
In this figure, among the parts surrounded by “VAR” and “END_VAR”, the ones to which the initial values are substituted (variable “BBB” and variable “CCC”) are the initialization variables extracted in step S4. .
[S5] The
[0061]
In the example of FIG. 4, an
[S6] The
[0062]
In this figure, among the parts surrounded by “VAR RETAIN” and “END_VAR”, variables (variable “DDD”, variable “EEE”, and variable “FFF”) to which initial values are substituted are determined in step S6. The initialization retain variable to be extracted.
[0063]
Here, “F_1: funcA” is a statement declaring a function block (details will be described later) whose instance (initialization area) name is “F_1”.
[S7] The
[0064]
In the example of FIG. 4, an
[S8] The
[0065]
Here, the function block means a function block that, when given input is given, executes prescribed processing according to the input and outputs the obtained result. This is equivalent to, for example, a subroutine or a function.
[0066]
In this example, as shown in FIG. 4, three function blocks “funcA” having instance names “F_1” to “F_3” are declared in the main block of the
[0067]
For example, the sentence “DDD: = F_1.FFF” is a process of inputting the value of the output parameter “FFF” of the function block “funcA” of the instance name F_1 into the variable DDD.
[0068]
By the way, since the variables used in the function block “funcA” are common regardless of the instance name, when the application program is executed, the user memory area corresponding to these function blocks has a common initial value. The mapping pattern is mapped three times.
[0069]
As described above, when there are identical function blocks having different instance names, the common initialization pattern file 51 (see FIG. 5) is generated by extracting the common initialization pattern in the process of step S8.
[S9] The
[0070]
In the example of FIG. 5, the common initialization pattern of the function block “funcA” is mapped three times continuously from the address “0000200”.
[S10] The
[0071]
Here, the attribute information is information indicating in a bit state whether or not a variable (stored in units of words) stored in the common initialization pattern file is a retain variable. When the bit is “1”, it indicates that the corresponding information is the initial value of the retain variable.
[0072]
In the example of FIG. 5, the fifth to sixth lines are “1”, and it can be seen that “0456” and “0567” of the common initialization pattern file are the initial values of the retain variables. These variables correspond to the variable DDD and the variable EEE described in the 10th to 11th lines of the
[S11] The
[0073]
Through the above processing, an executable file, an initialization pattern file, a common initialization pattern file, mapping information, and attribute information necessary for executing the application program are generated and supplied to the
[0074]
Next, an example of processing executed in the
FIG. 6 is a flowchart for explaining an example of processing executed in the
[S21] The
[S22] The
[S23] The
[0075]
Details of this process will be described later with reference to FIG.
[S24] The
Details of this process will be described later with reference to FIG.
[0076]
FIG. 7 is a flowchart for explaining the details of the warm activation process shown in FIG. When this flowchart is started, the following processing is executed.
[S31] The
[0077]
The normal memory area is an area on the
That is, as shown in FIG. 9, the user memory area of
[S32] The
[0078]
This is shown in FIG. As shown in this example, the
[S33] The
[0079]
That is, as shown in FIG. 10, the
[S34] The
[0080]
Through the above processing, the application program can be restarted in a state where the previous values of the retain variable and the initialization retain variable (the final value of the variable when started last time) are saved.
[0081]
Next, detailed processing of the cold start processing shown in FIG. 6 will be described with reference to FIG. When the flowchart shown in FIG. 8 is started, the following processing is executed.
[S41] The
[S42] The
[0082]
That is, as shown in FIG. 11, the
[S43] The
[0083]
That is, as shown in FIG. 11, the
[S44] The
[0084]
That is, as shown in FIG. 11, the
[S45] The
[0085]
With the above processing, the application program can be started with all variables initialized.
According to the above embodiment, when the application program is compiled in the programmable
[0086]
Further, according to the present embodiment, when there are a plurality of function blocks having different instance names in the application program, the common
[0087]
Furthermore, according to the present embodiment, when warm activation is executed, the retain variable and the initialization retain variable are not initialized, so that the application program activation mode can be changed according to the purpose. Can do.
[0088]
The above processing functions can be realized by a computer. In this case, the processing contents of the functions that the programmable controller support apparatus should have are described in a program recorded on a computer-readable recording medium. By executing this program on the computer, the above processing is performed by the computer. Realized. Examples of the computer-readable recording medium include a magnetic recording device and a semiconductor memory.
[0089]
When distributing to the market, store the program in a portable recording medium such as a CD-ROM (Compact Disk Read Only Memory) or floppy disk, or store it in a computer storage device connected via a network In addition, it can be transferred to another computer through the network. When executed by a computer, the program may be stored in a hard disk device or the like in the computer, loaded into the main memory, and executed.
[0090]
【The invention's effect】
As described above, in the present invention, when compiling an application program in the programmable controller support device, an initialization pattern file of variables initialized by preset initial values is generated, and the programmable controller initializes these initialization programs. Since the variables are initialized by the pattern file and other variables are initialized to the
[0091]
Further, according to the present embodiment, when a declaration statement having a common initialization pattern repeatedly appears in an application program, a common initialization pattern file is generated, mapping information is generated, and a programmable controller Since the common initialization pattern file is mapped with reference to the mapping information, it is possible to reduce the capacity of the initialization pattern file and attribute information transmitted from the programmable controller support apparatus to the programmable controller. .
[0092]
Furthermore, according to the present embodiment, when the warm activation is executed, the retain variable is not initialized, so that the activation form of the application program can be changed according to the purpose.
[Brief description of the drawings]
FIG. 1 is a principle diagram illustrating the principle of the present invention.
FIG. 2 is a block diagram showing a configuration example of an embodiment of the present invention.
FIG. 3 is a flowchart for explaining an example of processing executed in the programmable controller support device shown in FIG. 2;
4 is a diagram showing an example of an initialization pattern file of initialization variables generated by the processing of FIG. 3 and an initialization pattern file of initialization retain variables. FIG.
5 is a diagram showing an example of a common initialization pattern file, mapping information, and attribute information generated by the processing of FIG.
6 is a flowchart for explaining an example of processing executed in the programmable controller shown in FIG. 2;
FIG. 7 is a flowchart illustrating details of a warm start process shown in FIG. 6;
FIG. 8 is a flowchart for explaining the details of the cold start process shown in FIG. 6;
FIG. 9 is a diagram showing a manner of dividing a user memory area on the RAM shown in FIG. 2;
10 is a diagram showing an example of initialization of a user memory area when the process shown in FIG. 7 is executed. FIG.
11 is a diagram showing an example of initialization of a user memory area when the process shown in FIG. 8 is executed. FIG.
FIG. 12 is a diagram illustrating an example of a conventional initialization pattern file and attribute information generation method.
FIG. 13 is a diagram illustrating a state in which an initialization pattern file is mapped to a user memory at a conventional cold start.
FIG. 14 is a diagram illustrating a state in which an initialization pattern file is mapped to a user memory during a conventional warm start.
[Explanation of symbols]
1 Programmable controller support device
1a Application program input means
1b Compile means
1c Initialization variable extraction means
1d Initialization pattern file generation means
1e Common initialization pattern file generation means
1f Mapping information generation means
1g Transmission means
1h Starting means
2 buses
3 Programmable controller
3a Receiving means
3b Executable file storage means
3c Initialization pattern file storage means
3d mapping means
3e Variable value storage means
3f Initialization means
4 Bus
5-1 to 5-n modules
Claims (7)
前記プログラマブルコントローラ支援装置は、
前記アプリケーションプログラムのソースコードの入力を受けるアプリケーションプログラム入力手段と、
前記アプリケーションプログラムのソースコードをコンパイルして、実行可能ファイルを生成するコンパイル手段と、
前記アプリケーションプログラムのソースコードに含まれている変数のうち、予め設定された初期値によって初期化される初期化変数と、値0によって初期化されるその他の変数とを弁別し、初期化変数とその初期値のみを抽出する初期化変数抽出手段と、
前記初期化変数抽出手段によって抽出された初期化変数の初期値から初期化パターンファイルを生成する初期化パターンファイル生成手段と、
前記コンパイル手段によって生成された実行可能ファイルと、前記初期化パターンファイル生成手段によって生成された初期化パターンファイルとを前記プログラマブルコントローラに送信する送信手段と、
前記送信手段によって送信された実行可能ファイルを起動する起動手段とを有し、
前記プログラマブルコントローラは、
前記プログラマブルコントローラ支援装置から送信された前記実行可能ファイルと、前記初期化パターンファイルとを受信する受信手段と、
前記受信手段によって受信された前記実行可能ファイルを格納する実行可能ファイル格納手段と、
前記受信手段によって受信された前記初期化パターンファイルを格納する初期化パターンファイル格納手段と、
前記実行可能ファイルが起動された場合に、各種変数の値が格納される変数値格納手段と、
前記起動手段によって前記実行可能ファイルが起動された場合には、前記初期化パターンファイルを前記変数値格納手段の所定の領域にマッピングするマッピング手段と、
前記初期化パターンファイルにより予め定められた初期値によって初期化される前記初期化変数以外の変数に対応する前記変数値格納手段の所定の領域を値0によって初期化する初期化手段と、
を有することを特徴とするプログラマブルコントローラシステム。In a programmable controller system that compiles a source code of an application program input from a programmable controller support device and generates an executable file, then supplies the programmable controller to the programmable controller and executes it,
The programmable controller support device is
Application program input means for receiving the source code of the application program;
Compiling means for compiling source code of the application program to generate an executable file;
Among the variables included in the source code of the application program, an initialization variable that is initialized with a preset initial value is distinguished from other variables that are initialized with a value of 0, An initialization variable extraction means for extracting only the initial value;
An initialization pattern file generation means for generating an initialization pattern file from an initial value of the initialization variable extracted by the initialization variable extraction means;
Transmitting means for transmitting the executable file generated by the compiling means and the initialization pattern file generated by the initialization pattern file generating means to the programmable controller;
Starting means for starting the executable file transmitted by the transmission means,
The programmable controller is
Receiving means for receiving the executable file transmitted from the programmable controller support device and the initialization pattern file;
Executable file storage means for storing the executable file received by the receiving means;
Initialization pattern file storage means for storing the initialization pattern file received by the receiving means;
Variable value storage means for storing values of various variables when the executable file is activated;
Mapping means for mapping the initialization pattern file to a predetermined area of the variable value storage means when the executable file is activated by the activation means;
Initialization means for initializing a predetermined area of the variable value storage means corresponding to a variable other than the initialization variable initialized with an initial value predetermined by the initialization pattern file with a value of 0;
A programmable controller system comprising:
前記変数値格納手段に格納されている各種変数値のうち、リテイン変数の変数値を保存した状態で前記実行可能ファイルを再起動するウォーム起動と、
前記変数値格納手段に格納されている全ての変数の値を初期化した状態で前記実行可能ファイルを起動するコールド起動の何れか一方により前記実行可能ファイルを起動し、
前記マッピング手段は、
前記ウォーム起動が実行された場合には、前記リテイン変数以外の変数値をマッピングし、
前記コールド起動が実行された場合には、前記初期化パターンファイルを全てマッピングすることを特徴とする請求項1記載のプログラマブルコントローラシステム。The activation means includes
Among various variable values stored in the variable value storage means, warm activation that restarts the executable file in a state in which the variable value of the retain variable is saved;
Activating the executable file by any one of the cold activations that activate the executable file in a state in which the values of all the variables stored in the variable value storage means are initialized,
The mapping means includes
When the warm start is executed, variable values other than the retain variable are mapped,
2. The programmable controller system according to claim 1, wherein when the cold activation is executed, all of the initialization pattern files are mapped.
前記共通初期化パターンファイルが前記マッピング手段によってマッピングされる際に参照されるマッピング情報を生成するマッピング情報生成手段とを更に有し、
前記プログラマブルコントローラの前記マッピング手段は、前記マッピング情報を参照して、前記共通初期化パターンファイルをマッピングすることを特徴とする請求項1記載のプログラマブルコントローラシステム。When a declaration statement having a common initialization pattern repeatedly appears in the source code of the application program, the programmable controller support device extracts the common initialization pattern and generates a common initialization pattern file A common initialization pattern file generation means;
Mapping information generating means for generating mapping information to be referred to when the common initialization pattern file is mapped by the mapping means;
The programmable controller system according to claim 1, wherein the mapping means of the programmable controller maps the common initialization pattern file with reference to the mapping information.
前記起動手段は、
前記変数値格納手段に格納されている各種変数値のうち、リテイン変数の変数値を保存した状態で前記実行可能ファイルを再起動するウォーム起動と、
前記変数値格納手段に格納されている全ての変数の値を初期化した状態で前記実行可能ファイルを起動するコールド起動の何れか一方により前記実行可能ファイルを起動し、
前記プログラマブルコントローラの前記マッピング手段は、
前記ウォーム起動が実行された場合には、前記属性情報を参照して前記リテイン変数以外の変数値を前記共通初期化パターンファイルから抽出してマッピングし、
前記コールド起動が実行された場合には、前記属性情報を参照して前記共通初期化パターンファイルを全てマッピングすることを特徴とする請求項3記載のプログラマブルコントローラシステム。The programmable controller support device further includes attribute information generation means for generating attribute information indicating whether each of the variable groups having the initialization pattern generated by the common initialization pattern file generation means is a retain variable. And
The activation means includes
Among various variable values stored in the variable value storage means, warm activation that restarts the executable file in a state in which the variable value of the retain variable is saved;
Activating the executable file by any one of the cold activations that activate the executable file in a state in which the values of all the variables stored in the variable value storage means are initialized,
The mapping means of the programmable controller is
When the warm start is executed, a variable value other than the retain variable is extracted and mapped from the common initialization pattern file with reference to the attribute information,
4. The programmable controller system according to claim 3, wherein when the cold activation is executed, all the common initialization pattern files are mapped with reference to the attribute information.
前記アプリケーションプログラムのソースコードの入力を受けるアプリケーションプログラム入力手段と、
前記アプリケーションプログラムのソースコードをコンパイルして、実行可能ファイルを生成するコンパイル手段と、
前記アプリケーションプログラムのソースコードに含まれている変数のうち、予め設定された初期値によって初期化される初期化変数と、値0によって初期化されるその他の変数とを弁別し、初期化変数とその初期値のみを抽出する初期化変数抽出手段と、
前記初期化変数抽出手段によって抽出された初期化変数の初期値から初期化パターンファイルを生成する初期化パターンファイル生成手段と、
前記コンパイル手段によって生成された実行可能ファイルと、前記初期化パターンファイル生成手段によって生成された初期化パターンファイルとを前記プログラマブルコントローラに送信する送信手段と、
前記送信手段によって送信された実行可能ファイルを起動する起動手段と、
を有することを特徴とするプログラマブルコントローラ支援装置。In the programmable controller support device that compiles the source code of the input application program and generates an executable file, and then supplies it to the programmable controller for execution,
Application program input means for receiving the source code of the application program;
Compiling means for compiling source code of the application program to generate an executable file;
Among the variables included in the source code of the application program, an initialization variable that is initialized with a preset initial value is distinguished from other variables that are initialized with a value of 0, An initialization variable extraction means for extracting only the initial value;
An initialization pattern file generation means for generating an initialization pattern file from an initial value of the initialization variable extracted by the initialization variable extraction means;
Transmitting means for transmitting the executable file generated by the compiling means and the initialization pattern file generated by the initialization pattern file generating means to the programmable controller;
Starting means for starting the executable file transmitted by the transmitting means;
A programmable controller support device comprising:
前記コンピュータを、
前記アプリケーションプログラムのソースコードの入力を受けるアプリケーションプログラム入力手段、
前記アプリケーションプログラムのソースコードをコンパイルして、実行可能ファイルを生成するコンパイル手段、
前記アプリケーションプログラムのソースコードに含まれている変数のうち、予め設定された初期値によって初期化される初期化変数と、値0によって初期化されるその他の変数とを弁別し、初期化変数とその初期値のみを抽出する初期化変数抽出手段、
前記初期化変数抽出手段によって抽出された初期化変数の初期値から初期化パターンファイルを生成する初期化パターンファイル生成手段、
前記コンパイル手段によって生成された実行可能ファイルと、前記初期化パターンファイル生成手段によって生成された初期化パターンファイルとを前記プログラマブルコントローラに送信する送信手段、
前記送信手段によって送信された実行可能ファイルを起動する起動手段、
として機能させるプログラムを記録したコンピュータ読み取り可能な記録媒体。In a computer-readable recording medium recording a program for causing a computer to execute a process of supplying an executable file to a programmable controller after compiling an input application program source code to generate an executable file,
The computer,
Application program input means for receiving the source code of the application program;
Compiling means for compiling source code of the application program to generate an executable file,
Among the variables included in the source code of the application program, an initialization variable that is initialized with a preset initial value is distinguished from other variables that are initialized with a value of 0, Initialization variable extraction means for extracting only the initial value,
An initialization pattern file generation means for generating an initialization pattern file from an initial value of the initialization variable extracted by the initialization variable extraction means;
Transmitting means for transmitting the executable file generated by the compiling means and the initialization pattern file generated by the initialization pattern file generating means to the programmable controller;
Starting means for starting the executable file transmitted by the transmitting means;
A computer-readable recording medium storing a program that functions as a computer.
前記プログラマブルコントローラ支援装置から送信された前記実行可能ファイルと、前記初期化パターンファイルとを受信する受信手段と、
前記受信手段によって受信された前記実行可能ファイルを格納する実行可能ファイル格納手段と、
前記受信手段によって受信された前記初期化パターンファイルを格納する初期化パターンファイル格納手段と、
前記実行可能ファイルが起動された場合に、各種変数の値が格納される変数値格納手段と、
前記起動手段によって前記実行可能ファイルが起動された場合には、前記初期化パターンファイルを前記変数値格納手段の所定の領域にマッピングするマッピング手段と、
前記初期化パターンファイルにより予め定められた初期値によって初期化される前記初期化変数以外の変数に対応する前記変数値格納手段の所定の領域を値0によって初期化する初期化手段と、
を有することを特徴とするプログラマブルコントローラ。In the programmable controller that the programmable controller support device inputs and executes the executable file generated by compiling the source code of the application program,
Receiving means for receiving the executable file transmitted from the programmable controller support device and the initialization pattern file;
Executable file storage means for storing the executable file received by the receiving means;
Initialization pattern file storage means for storing the initialization pattern file received by the receiving means;
Variable value storage means for storing values of various variables when the executable file is activated;
Mapping means for mapping the initialization pattern file to a predetermined area of the variable value storage means when the executable file is activated by the activation means;
Initialization means for initializing a predetermined area of the variable value storage means corresponding to a variable other than the initialization variable initialized with an initial value predetermined by the initialization pattern file with a value of 0;
A programmable controller comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10597398A JP3629947B2 (en) | 1998-04-16 | 1998-04-16 | Programmable controller system, programmable controller support apparatus, programmable controller, and recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10597398A JP3629947B2 (en) | 1998-04-16 | 1998-04-16 | Programmable controller system, programmable controller support apparatus, programmable controller, and recording medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH11305809A JPH11305809A (en) | 1999-11-05 |
JP3629947B2 true JP3629947B2 (en) | 2005-03-16 |
Family
ID=14421723
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10597398A Expired - Lifetime JP3629947B2 (en) | 1998-04-16 | 1998-04-16 | Programmable controller system, programmable controller support apparatus, programmable controller, and recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3629947B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106843124A (en) * | 2016-12-26 | 2017-06-13 | 北京起重运输机械设计研究院 | A kind of Automatic Warehouse three-dimensional real-time monitoring method and system |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4525681B2 (en) * | 2004-07-28 | 2010-08-18 | 三菱電機株式会社 | Program generating device for programmable controller, program generating method for programmable controller, and recording medium recording program of the method |
WO2011036768A1 (en) * | 2009-09-25 | 2011-03-31 | 株式会社 東芝 | Simulation device |
EP3118696B1 (en) | 2015-04-06 | 2020-07-22 | Mitsubishi Electric Corporation | Programmable controller system |
-
1998
- 1998-04-16 JP JP10597398A patent/JP3629947B2/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106843124A (en) * | 2016-12-26 | 2017-06-13 | 北京起重运输机械设计研究院 | A kind of Automatic Warehouse three-dimensional real-time monitoring method and system |
Also Published As
Publication number | Publication date |
---|---|
JPH11305809A (en) | 1999-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20040010734A1 (en) | Deployment and execution of a program on an embedded device | |
JPH03240127A (en) | Program control system | |
JP3629947B2 (en) | Programmable controller system, programmable controller support apparatus, programmable controller, and recording medium | |
CN100524316C (en) | Method and program for file information write processing | |
CN100414514C (en) | Memory access instruction vectorization | |
CN110471675B (en) | Program burning method, system, device and computer readable storage medium | |
JPS6122817B2 (en) | ||
CN109426511A (en) | Soft core update method and system | |
JPS58149528A (en) | Program loading system | |
JP2004021867A (en) | Information processing system | |
JP2002099498A (en) | Program performance device and program development support device | |
CN211878599U (en) | Simulation verification system applied to field editable gate array FPGA | |
CN108334453A (en) | A kind of file adjustment method, device, terminal device and storage medium | |
JP5079166B1 (en) | Symbol table generation method, communication method with peripheral device, and programmable logic controller | |
Rosen | Hardware design reflecting software requirements | |
EP1804166A2 (en) | Memory device and information processing apparatus | |
JP2002091762A (en) | Program generator | |
JPS59112325A (en) | Electronic computer system | |
WO2022269793A1 (en) | Control device and address management method | |
JP2978008B2 (en) | Memory management method | |
JPH11259308A (en) | Programmable controller | |
JPH0250787A (en) | Ic card and its program rewriting system | |
KR970011897B1 (en) | Words interpretating device | |
JPH0391004A (en) | Development backup device for programmable controller | |
JP2961781B2 (en) | Data processing device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20040205 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20040209 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20041108 |
|
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: 20041124 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20041207 |
|
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: 20071224 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081224 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20081224 Year of fee payment: 4 |
|
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: 20081224 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: 20081224 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20091224 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101224 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101224 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111224 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111224 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: 20111224 Year of fee payment: 7 |
|
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: 20121224 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121224 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131224 Year of fee payment: 9 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |