JP2001022412A - プログラミング装置及びプログラマブルコントローラ並びにプログラムを記録したコンピュータ読み取り可能な記録媒体 - Google Patents
プログラミング装置及びプログラマブルコントローラ並びにプログラムを記録したコンピュータ読み取り可能な記録媒体Info
- Publication number
- JP2001022412A JP2001022412A JP11196456A JP19645699A JP2001022412A JP 2001022412 A JP2001022412 A JP 2001022412A JP 11196456 A JP11196456 A JP 11196456A JP 19645699 A JP19645699 A JP 19645699A JP 2001022412 A JP2001022412 A JP 2001022412A
- Authority
- JP
- Japan
- Prior art keywords
- program
- language
- control
- programming
- programming device
- 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.)
- Granted
Links
Abstract
向上させる。 【解決手段】制御手段で実行させる制御プログラムの作
成を支援するプログラミング装置において、複数種類の
制御プログラミング言語の混在表記を可能としたプログ
ラミング装置を提供する。
Description
紙プラント、上下水道などの公共システム、自動車産業
などの生産工程、化学・石油プラントなどの制御を行う
プログラムの開発を支援するプログラミング装置及びプ
ログラマブルコントローラ並びにプログラムを記録した
コンピュータ読み取り可能な記録媒体に関する。
グラミング装置によって作成され、この作成されたシー
ケンスプログラムは機械語に変換されてプログラマブル
コントローラ(以下、「コントローラ」という)で実行
可能な状態となる。そして、機械語に変換されたシーケ
ンスプログラムは、コントローラに送られ、コントロー
ラ側で機械語プログラムとして保存され、実行される。
制御プログラミング言語には、様々な言語が存在する
が、主なものにラダーダイヤグラム(LD言語)、ファ
ンクションブロックダイヤグラム(FBD言語)、シー
ケンスフローチャート(SFC言語)などがある。この
LD言語、FBD言語、SFC言語はIEC61131-3規格の
グラフィカル3言語である。
語の特徴を示すテーブルである。
算を利用する制御のプログラミングに向いている。ま
た、論理演算はシーケンス制御に利用される傾向があ
る。したがって、LD言語はシーケンスコントローラで
実行させるプログラムの作成に利用される傾向がある。
御のプログラミングに向いている。また、数値演算はル
ープ制御に利用される傾向がある。したがって、FBC
言語はループコントローラで実行させるプログラムの作
成に利用される傾向がある。
制御のプログラミングに向いているが、論理演算や、数
値演算、文字処理は不可能である。
C言語はぞれにおいて特徴が異なるため、ユーザ(例え
ばプログラマ)が制御対象や制御の内容、自己の理解度
を判断し、いずれかの言語を任意に選択し、プログラミ
ングに利用している。
作成したシーケンスプログラムから機械語プログラムへ
の変換を行うのは、もっぱらプログラミング装置の役目
であり、コントローラがこの機械語変換を行うことはな
い。
おいては、ユーザがシーケンスプログラムの作成前に選
択するいずれかの制御プログラミング言語によってプロ
グラミングが行われている。
理の内容が複雑化しており、複数種類の制御プログラミ
ング言語を利用して一連の制御に関するプログラムを作
成する機会が多くなっている。例えば演算処理と数値処
理を組み合わせてシーケンスプログラムを作成する等の
必要性が向上している。
連の制御内容を分割し、各分割した内容毎に、適した制
御プログラミング言語を利用してプログラミングを行っ
ている。
ミング言語を利用したとしても、ユーザは、分割作成す
るプログラムの全体の状態を把握しにくいという問題が
ある。
いて異種の制御プログラミング言語を利用して作成した
プログラムの表示例を示す画面図である。
る計算機によってシーケンスプログラムのある部分をL
D言語で記述し、他のある部分をSFC言語で記述した
とする。
機の画面100に表示させる場合には、LD言語で記述
された部分がウィンドウ200a上に表示されるが、さ
らにSFC言語で記述された部分が別のウィンドウ20
0b上に表示される。このような画面100では、ユー
ザは異なるウィンドウ200a、200b間でプログラ
ム間の呼び合いを辿る等しながらプログラムの内容(処
理の流れ等)を確認しなければならなず、容易に内容を
理解できない。
変換された後のシーケンスプログラムがコントローラに
保存され、実行されている。なお、この実行中のシーケ
ンスプログラムの処理状態をプログラミング装置でモニ
タする場合には、機械語変換される前の元のシーケンス
プログラムが必要である。
成・変換を行ったプログラミング装置とは異なるプログ
ラミング装置で、この実行中のシーケンスプログラムを
モニタしたい場合が生じる。
ラムの作成を行ったプログラミング装置とモニタを行う
プログラミング装置とが異なる場合の例を示すブロック
図である。
元のプログラム400aは、変換されて機械語のプログ
ラム500aとなり、コントローラ600に保存、実行
され、制御対象700の一部分が制御される。
成された元のプログラム400bは、変換されて機械語
のプログラム500bとなり、コントローラ600に保
存、実行され、制御対象700の他の部分が制御され
る。
たため、プログラミング装置300bで新規のプログラ
ムを作成する際に、他のプログラミング装置300aで
作成した元のプログラム400aをモニタしたい場合が
る。
置300bには、モニタしたい元のプログラム300a
が保持されていないため、モニタすることが困難であ
る。なお、単に、コントローラ600に保持されている
機械語のプログラム500aを逆変換して、モニタを行
うプログラミング装置300bが元のプログラム400
aを得るのは、プログラムの作成を行ったプログラミン
グ装置300aとモニタを行うプログラミング装置30
0bとの間で利用する制御プログラミング言語が異なる
場合に困難である。
ラミング言語を利用可能なプログラミング装置がある。
なプログラミング装置であっても、ある制御プログラミ
ング言語で作成されたプログラムを、他の制御プログラ
ミング言語で作成されたプログラムに変換して表示させ
るというユーザの要請に対処可能なプログラミング装置
は存在しない。
の制御プログラミング言語で記述されたプログラムの混
在表記ができず、また混在表記したプログラムの編集、
コンパイル、制御実行、オンラインモニタができない。
プログラミング言語でシーケンスプログラムを作成する
と、統一的に取り扱うことが困難である。
で、異種の制御プログラミングをまとめて取扱い可能と
することにより、ユーザによるプログラム記述性、理解
度を向上させ、ユーザの作業効率を向上させるプログラ
ミング装置及びプログラマブルコントローラ並びにプロ
グラムを記録したコンピュータ読み取り可能な記録媒体
を提供することを目的とする。
類の制御プログラミング言語を自由に利用可能とする点
にある。
じた具体的手段について説明する。
プログラムの作成を支援するプログラミング装置におい
て、複数種類の制御プログラミング言語の混在表記を可
能とした。
容を容易に理解することができる。なお、制御手段の例
としてはプログラマブルコントローラがあり、制御プロ
グラムの例としてはシーケンスプログラムがある。
グ装置に、混在表記された制御プログラムをコンパイル
するコンパイラを具備するとした。
ラミング装置において、コンパイラは、混在表記された
制御プログラムを有向グラフとして扱い、有向グラフに
おける各ノードに対して右下から左に向かい上段にあが
って再び右から左に向かう順序でノード番号を付し、こ
のノード番号の付された有向グラフに対する深さ優先探
索アルゴリズムによりノードの実行順序を決定するとし
た。
ムをそのままコンパイルすることができるため、各種言
語の利点を活用したプログラムを作成し、このプログラ
ムを制御手段に実行させることができる。
グラミング装置において、コンパイラは混在表記された
制御プログラムの内容とモニタデータとを関係付けて保
存するとし、コンパイラによるコンパイル時の関係付け
に基づいて、モニタデータを混在表記された制御プログ
ラム上に配置するモニタデータ重ね表示手段を付加する
とした。
容とモニタデータとの関係を利用することで、混在表記
された制御プログラム上にモニタデータを配置すること
ができ、これによりユーザがプログラムの問題点を容易
に認識できる。
プログラムの作成を支援するプログラミング装置におい
て、制御プログラミング言語によって記述された制御プ
ログラムを機械語による記述及び制御プログラミング言
語による記述のいずれにも変換可能な中間言語によって
記述された中間言語プログラムに変換する中間変換手段
を具備するとした。
言語で記述された制御プログラムを、制御手段で直接実
行可能な機械語プログラムに変換可能で、かつ元の制御
プログラムにも逆変換可能な形式の中間言語に変換でき
る。
グラムを例えばテキスト形式の中間言語に変換して保管
しておき、必要に応じて制御手段が実行可能な機械語プ
ログラムに変換したり、プログラミング装置での実行モ
ニタに使用するためのソースプログラムに変換したりす
ることが可能となる。
グ装置において、中間言語プログラムがそのまま制御手
段で実行可能とした。
プログラムをそのまま実行可能であるため、機械語プロ
グラムを求める処理をなくし、機械語プログラムを記憶
するメモリ容量を節約することができる。
グ装置に、中間言語プログラムを機械語によって記述さ
れた機械語プログラムに変換する機械語変換手段を付加
している。
が制御手段によって直接実行可能な機械語プログラムに
変換される。
た中間言語プログラムから、制御手段が直接実行可能な
機械語プログラムを得ることができる。
グ装置において、機械語変換手段は中間言語プログラム
を複数の制御手段毎の機械語プログラムに変換するとし
た。
た中間言語プログラムを2種類以上の各制御手段が直接
実行可能な機械語プログラムに変換できる。
力して中間言語プログラムに変換しておけば、対象とな
る制御手段が複数種類あったとしても、対応する制御手
段に合わせて機械語プログラムを作成できるので、プロ
グラミング装置の共用が可能となる。
グラミング装置に、中間言語プログラムを制御プログラ
ミング言語によって記述された制御プログラムに変換す
る逆変換手段を付加している。
中間言語プログラムに一旦変換した後でも、さらに中間
言語プログラムから制御プログラムに変換することがで
きる。
形式の中間言語プログラムとして保存しておき、この共
通な形式から再び制御プログラムに変換することでプロ
グラミングの自由性を向上させることができ、プログラ
ムを共有することができる。
ング装置に、逆変換手段によって変換された内容を表示
する表示手段を付加している。これにより、ユーザは変
換結果を確認できる。
プログラミング装置において、中間言語は変換前の制御
プログラミング言語が異なっていても共通の形式で中間
プログラムを記述するとした。
グ言語で記述された制御プログラムであっても、この制
御プログラムを共通な形式の中間言語プログラムとして
保存し、共通に扱うことができる。
プログラミング装置に、中間言語プログラムを複数の制
御プログラミング言語のいずれかで記述された制御プロ
グラムに任意変換可能な任意逆変換手段を付加してい
る。
の中間言語プログラムに変換された後には、返還前の言
語に依存することなく、指定したプログラミング言語に
逆変換が可能なのでプログラミングの自由性を向上させ
ることができる。
装置に、任意逆変換手段によって変換された内容を表示
する表示手段を付加している。
れた制御プログラムを中間言語プログラムに変換し、そ
の後ユーザの求める言語に逆変換した制御プログラムを
得ることができ、さらに表示させて確認することができ
る。
関わりなく、プログラミング言語を自由に指定して制御
プログラムを表示することが可能となる。
プログラミング装置において、中間言語は固定長の機械
語コードにより成るプログラムで記述されるとした。
機械語コードを使用して中間言語プログラムを構成し、
また、固定長コードの中間言語プログラムとすること
で、制御手段によって中間言語プログラムをそのまま直
接実行することができる。
ラミング装置に、自己と制御手段との間での負荷レベル
の調査結果に基づいて負荷を分散する分散手段を付加し
ている。
リ容量に余裕がない場合には制御プログラム、中間言語
プログラム、機械語プログラム等を制御手段側に保持さ
せることにより、負荷を分散させる。また、CPU負荷
が高い場合には各種の変換手段の動作を制御手段側で実
行させてもよい。
のメモリ容量やCPU能力に合わせて、制御プログラ
ム、中間言語プログラム、機械語プログラムの格納場所
や変換場所を選択できるので、プログラミング装置かあ
るいは制御手段のどちらかの能力が低い場合でも組み合
わせて使用することが可能となる。
プログラミング装置において、中間変換手段は、制御プ
ログラミング言語によって記述された制御プログラムの
含む処理に関与しない部分を、処理に関与しない部分で
ある旨を示すコードに変換するとした。
ラムを中間言語プログラムに変換する際に、制御プログ
ラム内のコメント文やラベルなどの直接処理として実行
に関与しない部分に対して、機械語プログラムへの変換
時にそれらを分離しやすいように特別の中間言語コード
を与えるように構成している。
プログラムを実行する際に不要となる制御プログラム中
のコメント文やプログラム区切りのために、特別なコー
ドを付与して中間言語プログラム中に格納する。
を機械語プログラムに変換する場合に容易に分離が可能
であり、コンパイル作業を簡単化することができる。
ードで記述し、コメント文やラベルなどの直接実行に関
与しない部分に対する特別な中間言語コードを、制御手
段上における非実行命令のコードに対応するように構成
したとする。すると、中間言語プログラムによるシーケ
ンス実行に無関係な部分には、プログラマブルコントロ
ーラの実行上、非実行となる機械語コードを付与してい
ることになる。
語プログラムをそのまま実行させても実行結果に影響が
出ないようにすることが可能であり、機械語プログラム
への変換を省略し、機械語プログラムと中間言語プログ
ラムを共用することが可能となる。
によって記述された制御プログラムを受信する通信手段
と、通信手段によって受信した制御プログラムを、機械
語による記述及び制御プログラミング言語による記述の
いずれにも変換可能な中間言語によって記述された中間
言語プログラムに変換する中間変換手段とを具備したプ
ログラマブルコントローラである。
ラムから中間言語プログラムを得ることができる。
マブルコントローラにおいて、中間言語プログラムをそ
のまま実行可能としている。
理や、機械語プログラムの保存に必要となるメモリ容量
を削除することができる。
マブルコントローラに、中間言語プログラムを機械語に
よって記述された機械語プログラムに変換する機械語変
換手段を付加している。
本体において、中間言語プログラムを、直接実行可能な
形式の機械語プログラムに変換できるので、受信した制
御プログラミング言語によらずに実行可能なプログラマ
ブルコントローラを得ることができる。
のプログラマブルコントローラに、中間言語プログラム
を制御プログラミング言語によって記述された制御プロ
グラムに変換する逆変換手段を付加している。
言語プログラムを元の制御プログラムに逆変換すること
ができる。
内部に保管している中間言語プログラムを制御プログラ
ムに逆変換してプログラミング装置に送ることが可能な
ので、機能の低いプログラミング装置でも制御プログラ
ムの表示やモニタが可能となる。
のプログラマブルコントローラに、中間言語プログラム
を複数の制御プログラミング言語のいずれかで記述され
た制御プログラムに任意変換可能な任意逆変換手段を付
加している。
ミング言語で記述された制御プログラムから変換された
中間言語プログラムを、他の種類のプログラミング言語
で記述された制御プログラムに逆変換することができ
る。
内部に保管している中間言語プログラムを自由な制御プ
ログラムに逆変換してプログラミング装置に送ることが
可能なので、機能の低いプログラミング装置や単一のプ
ログラミング言語しか使用できないプログラミング装置
においても制御プログラムの表示やモニタが可能とな
る。
類の制御プログラミング言語を混在表記させる機能を実
現させるプログラムを記録したコンピュータ読み取り可
能な記録媒体である。
類の制御プログラミング言語で混在表記された制御プロ
グラムをコンパイルさせるコンパイラを記録したコンピ
ュータ読み取り可能な記録媒体である。
類の制御プログラミング言語を混在表記させる混在表記
機能と、複数種類の制御プログラミング言語で混在表記
された制御プログラムをコンパイルさせ、また混在表記
された制御プログラムの内容とモニタデータとを関係付
けて保存させるコンパイラと、コンパイラによるコンパ
イル時の関係付けに基づいて混在表記機能によって混在
表記されている制御プログラム上にモニタデータを配置
させるモニタデータ重ね表示機能とを実現させるプログ
ラムを記録したコンピュータ読み取り可能な記録媒体で
ある。
ログラミング言語によって記述された制御プログラムを
機械語による記述及び制御プログラミング言語による記
述のいずれにも変換可能な中間言語によって記述された
中間言語プログラムに変換させる中間変換機能を実現さ
せるプログラムを記録したコンピュータ読み取り可能な
記録媒体である。
ムを記録したコンピュータ読み取り可能な記録媒体であ
って、中間言語プログラムを機械語によって記述された
機械語プログラムに変換させる機械語変換機能を付加し
たプログラムを記録したコンピュータ読み取り可能な記
録媒体である。
のプログラムを記録したコンピュータ読み取り可能な記
録媒体であって、中間言語プログラムを制御プログラミ
ング言語によって記述された制御プログラムに変換させ
る逆変換機能を付加したプログラムを記録したコンピュ
ータ読み取り可能な記録媒体である。
説明したプログラミング装置及びプログラマブルコント
ローラの機能をコンピュータにより実現するためのプロ
グラムを記憶したコンピュータ読み取り可能な記憶媒体
である。
を用いることによって、上述した機能を有していないプ
ログラミング装置、プログラマブルコントローラ、計算
機、計算機システムに対しても、簡単に上述した機能を
付加することができる。
の実施の形態について説明する。
ては、複数の制御プログラミング言語を混在表記(同一
表記)可能としたプログラミング装置について説明す
る。
語により混在表記されたプログラムをコンパイルして実
行可能なプログラムを得るプログラミング装置について
説明する。
語、FBD言語、SFC言語の3種の制御プログラミン
グ言語を利用する場合について説明するが、他の言語の
場合も同様である。
グ装置の構成を示すブロック図である。
示にしたがった制御プログラミング言語でプログラムを
表示するが、さらに3種類の言語を混在させた状態でも
プログラムを表示する。また、ユーザの指示に従って3
種類の制御プログラミング言語を混在させて作成された
プログラムを変換し、プログラマブルコントローラ2に
送信する。
装置3、表示装置4、伝送装置5を備え、プログラム編
集6、プログラム表示7、プログラムコンパイル8、フ
ァイル送信9、モニタデータ取得10、モニタ重ね表示
11等の各種処理を実行する。
部分は。プログラムコンパイル8の処理内容と、このプ
ログラムコンパイル8やプログラム編集6等の処理で扱
われるプログラムファイル12と、モニタデータ重ね表
示11で扱われるモニタデータ13にある。
おいては、通常のプログラミング装置と同様の構成装置
を備え同様の処理を実行可能であるが、説明を簡略にす
るために他の構成装置及び処理の記載を省略している。
は、対人的な指示インターフェイスであり、この入力装
置3からプログラム編集6、プログラム表示7、プログ
ラムコンパイル8、モニタ重ね表示11の各処理への指
示が出力される。一般的には、キーボード、マウスが利
用される。
タを表示可能な装置であり、CRTや液晶ディスプレイ
が利用される。
とコントローラ2の間を伝送接続する装置であり、一般
にはRS232CやEthernet等の伝送ボードやケーブルを指
す。
示にしたがい、3種類の制御プログラミング言語による
回路グラフィックを入力、切り取り、貼り付け、コピ
ー、削除する処理である。すなわち、このプログラム編
集6の処理により、3種類の制御プログラミング言語が
混在したプログラムの作成がなされ、作成されたプログ
ラムをプログラムファイル12の一要素として保存す
る。
ラムの表示及び実行に関連するファイル群の総称であ
る。例えば、上記のようなプログラム編集6から得られ
る3種類の制御プログラミング言語により記述されたコ
ンパイル前のプログラムや、プログラムコンパイル8に
よるコンパイル後のプログラムを含む。
12に基づいて、プログラム編集6等で扱われる回路グ
ラフィック等を表示する処理である。
ラム表示7とにより、ユーザは3種の言語の記述要素を
利用してグラフィカルなプログラムの作成が可能とな
る。
される要素(LD言語における接点、コイル、FBD言
語におけるファンクション、ファンクションブロック、
SFC言語におけるステップ、トランジション、その他
処理の流れを示す線等)をマウスでドラッグし、移動さ
せてリリースするなどにより、3種の言語が混在した回
路グラフィックを表示させつつ、プログラムの編集が可
能となる。
が混在している環境に適用される特別のコンパイル理論
により、3種の言語が混在している回路グラフィックを
コンパイルし、コントローラ2が実時間に実行できる命
令語(コントローラが処理する順序に並べられた命令
語)にコンパイル可能な形式を生成し、プログラムファ
イルの一部として保存する処理である。なお、コントロ
ーラ2が実時間に実行できる命令語にコンパイル可能な
形式とは、グラフィカルに記述されたプログラムから実
際にコントローラ2によって処理する順序を定めた形式
をいう。
順序の命令語にコンパイル可能な形式をさらに機械語の
プログラムにコンパイルし、プログラムファイル12の
一部として保存する。なお、グラフィカルに記述された
プログラムが例えばコントローラ2におけるマクロ命令
等のように、そのままコントローラ2上で実行可能であ
れば、この機械語への変換は必要ない。
プログラムファイル12のうち少なくとも機械語による
プログラムをコントローラ2の指定箇所へ送信する処理
である。
用してモニタデータ13をコントローラから取得する処
理である。
の演算結果や変数の現在値を示すデータである。このモ
ニタデータは、3種類の言語が混在している環境におい
て、回路グラフィック上に重ねて描画可能とするための
特別なデータ構造を持ち、回路グラフィック上に重ねて
描写することでモニタリングが可能となる。
を回路グラフィックに重ねてモニタ表示する処理であ
る。
から受信した機械語のプログラムに基づいて図示しない
制御対象を制御する。また、この制御対象の状態やプロ
グラムの実行結果から得られるモニタデータ13をプロ
グラミング装置1に送信する。
4とI/O装置15とを備え、ファイル受信16、プロ
グラム実行17、モニタデータ出力18、モニタデータ
返信19等の各種処理を実行する。なお、図1に示すコ
ントローラ2においては、説明を簡略にするために他の
構成装置及び処理の記載を省略しているが、通常のコン
トローラと同様の構成装置を備え、同様の処理を実行可
能である。
に、プログラミング装置1とコントローラ2の間を伝送
接続する装置である。
図示しない制御対象のプロセスからのI/O信号を入出
力するための装置であり、一般的にはI/OカードやI
/Oバスなどが利用される。
してプログラムファイル12のうちの少なくとも機械語
によるプログラムをプログラミング装置1から受信し、
指定箇所に配置する処理である。
の処理によって受信されたプログラムファイル16の内
容を解釈し、I/O信号を入出力しながら機械語(命令
語)を実行する。
グラムの演算結果や変数の値からモニタデータ18を生
成する処理である。
力18によって生成されたモニタデータ13を、伝送装
置14を利用してプログラミング装置1に送信する処理
である。
置1におけるプログラムコンパイル8で採用されたコン
パイル理論について以下に説明する。このコンパイル理
論により、3種混在した制御プログラミング言語のコン
パイルが実現される。
ワークの集合体からコントローラ2の理解する最終的な
命令語を、IEC61131-3規格にしたがった解釈で並べるこ
とをいう。したがって、命令語への変換と実行順決定が
ここで説明しているコンパイル論理の骨子である。
グ装置1で採用されたコンパイル理論を説明するための
フロー図である。
ノード及び矢印の要素に分解する処理が実行される(s
1)。
グ装置によって混在表記されているプログラムの例を示
す図である。
語、FBD言語、SFC言語が混在して記述されてい
る。
イル22等のグラフィックシンボルが記述されている。
FBD言語による記述部分にはファンクション(ファン
クションブロック)23等のグラフィックシンボルが記
述されている。SFC言語による記述部分にはステップ
24、トランジション25等のグラフィックシンボルが
記述されている。
ックシンボルを「ノード」として扱う。またノードを接
続する線を「矢印」として扱う。
左から右へパワーが流れるように解釈すると約束されて
いる(Power flow)。
ナルが流れるように解釈すると約束されている(Signal
Flow)。
遷移するように解釈すると約束されている(Activity f
low)。
述されているノードを「○」とし、SFC言語で記述さ
れているノードを「△」とし、矢印の方向をパワー、シ
グナル、状態遷移の方向で表せば、ノード及び矢印で3
種混在したプログラムを書き換えることができる。
た場合の状態図である。この図4では先の図3に示すプ
ログラム20を書き換えた状態26を示している。
対するネットワーク単位のグルーピング処理が実行され
る(s2)。
においては、ノードと矢印が接触されている集合体の単
位が1つのネットワークとされる。図4の状態26にお
いては、グルーピングの結果、3つのネットワークNetw
ork1、Network2、Network3が取得される。
対するサブネットワーク単位のグルーピング処理が実行
される(s3)。
処理においては、先のネットワーク単位のグルーピング
処理において取得されたネットワークがSFCのノード
を含む場合に、SFC言語のトランジションに接続され
たLD言語あるいはFBD言語のネットワーク部分がサ
ブネットワークとされる。また、SFCのステップ・ト
ランジションのみで構成されたネットワーク部分がサブ
ネットワークとされる。さらに、SFC言語のステップ
に接続されたLD言語あるいはFBD言語のネットワー
ク部分がサブネットワークとされる。
理により、図4の状態26においては、ネットワークNe
twork2がSFC言語のノードを含むため、まずネットワ
ークNetwork2のうちのLD言語を含む部分がサブネット
ワークAction1とされる。また、ネットワークNetwork2
のうちSFC言語のステップ・トランジションのみで構
成された部分がサブネットワークState1とされる。さら
に、ネットワークNetwork2のうちのFBD言語を含む部
分がサブネットワークCondition1とされる。
ーク単位、及びサブネットワーク単位は、ノードとそれ
を接続する矢印から構成されるため、このネットワーク
単位及びサブネットワーク単位をグラフ理論における
「有向グラフ」とみなして実行順序が決定される(s
4)。
が決められたグラフをいい、この有向グラフで結ばれて
いるノードを整列させる一般的な手法としてトポロジカ
ル・ソートがある。しかしながら、例えばIEC1131-3規
格にしたがうとすると、ネットワーク単位又はサブネッ
トワーク単位による有向グラフが必ずしもトポロジカル
・ソートで順序を比較できない半順序関係を形成する場
合がある。有向グラフがこのような半順序関係を含む場
合には、トポロジカル・ソートの解が一つとならない。
コンパイル8のコンパイル理論においては、以下のよう
な手順にしたがって、ネットワーク単位及びサブネット
ワーク単位による有向グラフの実行順序を決定する。
の順序決定手法を示す概念図である。
図5(a)のような有向グラフで示されるとする。
動し、上段にあがって再び右から左へ移動する動作を繰
り返す順序)に、各ノードが番号付けされる。
図5(b)である。
ークによる有向グラフに対して、深さ優先探索(depth
first search)のアルゴリズムを適用して各ノードの拾
い上げが行われ、図5(c)の結果が得られる。
まず視点を出発し、番号の若い順に進む位置を調べ、行
けるところ(辺で連結されていてまだ訪問していない)
まで進む。行き場所がなくなったら、行き場所があると
ころまで戻り、再び行けることろまで進む。そして、行
き場所がすべてなくなったら終わる(来た道を戻る)と
いうアルゴリズムである。
「6、3、5、8、4、2、1、7」というノードの実
行順序が得られる。
ネットワークにおける実行順序を考慮して、コントロー
ラ2の理解する命令語を取得するためのコンパイラまと
め処理が実行される(s5)。
ネットワーク単位内でのノードの実行順序が取得され
る。
表記上「命令シンボル」であり、これがコントローラ1
上の「マクロ命令」(命令語シンボルを実行するための
CPUの理解する命令の集合)と考えれば、ノードの実
行順序はコントローラ2上の命令語実行順序に等しい。
最後の処理としてサブネットワーク単位間及びネットワ
ーク単位間での実行順序を求める。
FC言語がステートマシンとして動作する基本の順序を
守るように決定される。
n1〜N、State、Action1〜Lの順で実行すればよく、先の
図4に示すネットワークNetwork2の場合も同様にサブネ
ットワークCondition1、State、Action1の順で実行すれ
ばよい。
トワーク単位の接続は独立であるため、例えばIEC61131
-3規格の自然な流れにしたがって、左から右、上から下
の順序を守るように決定される。
プログラムのコンパイルが実行されるが、実際には編集
画面を横書き文章の順(左上から右へ移動し、下段にさ
がって再び左から右へ移動する動作を繰り返す順序)
に、ネットワークが取得され、この取得されたネットワ
ーク内でもっとも若い順序となるノードをそのネットワ
ークの代表と考え、そのノード間で最も若い順にネット
ワークを実行してゆけばよい。
れるコンパイル結果を示す概念図である。
クNerwork1〜5、ネットワークNetwork3内に含まれるサ
ブネットワークCondition1,2、Action1,2、ネットワー
クあるいはサブネットワーク内に含まれるノードNode1
〜6が実行順に記述されている。
ミング装置1において扱われるモニタデータ13の構造
について説明する。このモニタデータ13の構造によ
り、3種類の言語の混在表記上に入力値及び出力値等を
表示させ、制御動作のモニタが実現される。
がコントローラ2で実行された場合に、このコントロー
ラ2上で実行されている命令シンボル(命令語)の入力
値、出力値を実時間でユーザが確認可能とすることをい
う。実際には、表示装置4におけるグラフィック表記上
の対応位置にこの入力値、出力値を重ね合わせて表示す
ることで、モニタが実現させる。
グ装置1によって扱われるモニタデータ13の構造、コ
ンパイル結果の構造、及びモニタデータ構造テンプレー
トを示す関係図である。
結果から知り得るのは、命令語とその命令語の位置(ア
ドレス)であり、コンパイル結果の構造28として各ノ
ードNode1〜8に対してアドレスAddress1〜8を割り当て
た構造が得られる。
出力の数とデータ型とがあるため、命令語に対して一意
のモニタデータ構造があるといえる。
構造テンプレート29を作成しておくことで、コントロ
ーラ2の演算時に外部出力するモニタデータについて、
その構造30を予め作成しておくことができる。
は、各モニタデータData1〜8に対してアドレスMaddress
1〜8を割り当てた構造としている。
では、各ノードNode1〜8のアドレスAddress1〜8と、各
モニタデータのアドレスMaddress1〜8と、各データの型
DataType1〜8とが関係付けられている。
対応するモニタデータを取得可能となり、3種の言語を
混在表記させたグラフィック上に配置可能となる。
プログラムを混在表記し、このグラフィック表記上にモ
ニタデータを重ねて表示した場合の一例を示す画面図で
ある。
を混在表記し、このグラフィック表記上にモニタデータ
を重ねて表示した場合の他の例を示す画面図である。
プログラミング装置1においては、複数の制御プログラ
ミング言語を混在させて表示可能とした。
表記できるため、呼び合いを辿る等の必要がなくユーザ
が全体をまとめて認識することができる。
ることができるため、仕様可読性を向上させることがで
きる。
するプログラムの内容を容易に理解することができる。
ことができ、またユーザの作業効率を向上させることが
できる。
装置1においては、各種言語の記述要素をノードとして
扱い、各種言語の流れを矢印として扱い、グラフ理論に
おける深さ探索優先アルゴリズムにより処理順序を決定
してコンパイルを行う。
語を自然に混在させて補完しつつ、編集したプログラム
をそのままコンパイルし、コントローラ2にダウンロー
ドして制御を実行させることができる。これにより、各
種言語の利点を活かしつつプログラムを作成することが
でき、仕様記述性を向上させることができる。
装置1においては、コンパイル時に、各種言語の記述要
素とモニタデータとを関連付けておくことで、各種の言
語によるグラフィック表記上にモニタデータを重ねて表
記できるため、ユーザが容易に問題点を発見することが
できる。ゆえに、ユーザは品質の高い制御用のプログラ
ムを作成することができる。
ては、制御プログラムの共用性を向上させるプログラミ
ング装置について説明する。
ング装置のハードウェア構成を示すブロック図である。
のシーケンスプログラム実行状態を監視したり、シーケ
ンスプログラムの作成・修正に使用される。また、CR
T他の表示装置とキーボード他の入力装置をもつ。
2、OS・プログラムメモリ33、ワークメモリ34、
入出力インターフェイス35、表示インターフェイス3
6、通信インターフェイス37がマイコンパス41で相
互に送受信可能に接続されて構成されている。また、入
出力インターフェイス35に入力装置38が接続されて
おり、さらに表示インターフェイス36に表示器39が
接続されている。
信インターフェイス37を介してプログラマブルコント
ローラ40と通信可能となっている。
U32は、プログラミング装置31の中枢部分であり、
プログラミング装置31全体の実行制御を行う。
行するプログラムが格納されているメモリであり、OS
や制御プログラムが格納される。
御を実行するときに作業領域として使用する。
他の入力機器を接続するためのインタフェース回路であ
る。
などで構成され、シーケンスプログラムを入力するのに
使用される。
接続するためのインタフェース回路であり、表示データ
用メモリなどを含む。
御プログラムの一種)やデータの表示に使用されるCR
Tや液晶表示器などの表示器である。
装置31とプログラマブルコントローラ40などを通信
媒体を介して接続するためのインタフェース回路であ
る。
1内の要素をCPU32と接続するためのバスであり、
アドレスバス、データバス、制御バスの総体である。
を持つプログラミング装置31における処理内容を示す
ブロック図である。
利用して、例えばLD言語で記述されたシーケンスプロ
グラム42をソース・プログラムとして作成したとす
る。なお、このシーケンスプログラム42は、入力装置
38から入力され、表示器39に表示されて編集され、
図や変数と共にワークメモリ34内に格納される。
グラムを中間言語による記述に変換するための中間コン
パイラ43を搭載しており、この中間コンパイラ43に
より、シーケンスプログラム42が中間言語プログラム
44に書き換えられる。
であり、またソース・プログラムを記述した言語にも変
換可能な状態でプログラムを記述する言語である。
st)言語のように命令コードとオペランドの組み合わせ
で表現され、テキスト形式で格納される言語が中間言語
として適用できる。
プログラム44は、ワークメモリ34に格納される。
ケンスプログラムを中間言語によって記述された中間言
語プログラムに変換する変換ルールの一部を示すテーブ
ルである。
LD言語のような図式プログラムをテキスト形式の中間
プログラムに変換することが可能となる。命令文の区切
りはスペース又は改行コードで示される。
言語で記述された中間言語プログラムを機械語のプログ
ラムによる記述に変換するための機械語コンパイラ45
を搭載しており、この機械語コンパイラ45により、中
間言語プログラム44がコントローラ40で実行可能な
機械語プログラム46に書き換えられる。
言語プログラムを機械語によって記述された機械語プロ
グラムに変換する変換ルールの一部を示すテーブルであ
る。
中間言語プログラム44を機械語プログラム46に変換
することが可能となる。
換によって得られる機械語プログラムに含まれる機械語
コードは、命令コード部分及びオペランドアドレス部分
とからなるが、この命令コード部分及びオペランドアド
レス部分は固定長とされる。
コントローラ40で実行される際の演算処理が容易とな
る。
言語で記述された中間言語プログラムをLD言語で記述
されたソース・プログラムによる記述に変換するための
逆コンパイラ47を搭載している。
ールは、先の表2を逆に適用する手法が採用される。
ログラム44がシーケンスプログラム42に書き換えら
れる。
プログラミング装置31においては、ソースの図式プロ
グラムがテキスト形式の中間言語に変換されて格納され
る。
易になる。また、この中間言語により記述された中間プ
ログラムを表示させた場合であっても人間が内容を確認
しやすい。
成する命令語コードとオペランドアドレスとを固定長と
したため、機械語プログラムをコントローラ40で処理
しやすくなる。
プログラムがLD言語によって記述された場合を例とし
て説明しているが、これに限定されるものではなく、F
BC言語、SFC言語、ST言語、ニーモニック言語等
の各種制御プログラムに対して同様に適用できる。
装置31においては、中間言語から機械語へ変換する機
械語コンパイラ45を搭載しているが、例えば中間言語
自体がコントローラ40で実行可能な言語であればこの
機械語コンパイラ45を省略させることができる。
ては、上記第2の実施の形態に係るプログラミング装置
31の変形例であり、制御プログラムを実行させるコン
トローラ毎に機械語コンパイラを切り換えるプログラミ
ング装置について説明する。
ング装置における処理内容を示すブロック図である。
8において、中間言語プログラムを得るまでに関係する
構成、処理は、上記第2の実施の形態に係るプログラミ
ング装置31と同様であるため、説明を省略する。
種の異なる複数のコントローラ40a〜40cのそれぞ
れに対応した機械語に変換する機械語コントローラ45
a〜45cを搭載している。
45cによる変換により、ある中間言語プログラム44
から各コントローラ40a〜40cに対応した複数種類
の機械語プログラム46a〜46cが得られる。
プログラミング装置48においては、対象となるコント
ローラの種類に応じて複数のコンパイラを用意してお
り、同一の中間言語プログラムから複数の種類の機械語
プログラムを作成することが可能である。
ローラにおいて、メモリ容量が異なる機種用に機械語プ
ログラムを作成するために、アドレス範囲の変更やアド
レス割付の変更を容易に実現でき、容易に機械語プログ
ラムを作成することができる。ゆえに、機種毎に図式プ
ログラムを再入力する労力を削減することができる。
ては、上記第2又は第3の実施の形態に係るプログラミ
ング装置31、48の変形例であり、各種ソース・プロ
グラムを中間言語による記述に変換するために複数の中
間コンパイラを備えたプログラミング装置について説明
する。
ング装置における処理内容を示すブロック図である。こ
の図13において、図11と同一の部分については同一
の符号を付してその説明を省略し、ここでは異なる部分
についてのみ詳しく説明する。
9において、中間言語プログラムを得た後に関係する構
成、処理は、上記第2の実施の形態または第3の実施の
形態に係るプログラミング装置31、48と同様である
ため、説明を省略する。
式に作成されたプログラム42を中間言語プログラム4
4に変換する中間コンパイラ43に加え、ST(ストラ
クチャードテキスト)言語、ニーモニック言語で記述さ
れたシーケンスプログラム42a、42bを、同一の中
間言語プログラム44に変換する中間コンパイラ43
a、43bを搭載している。
の一部は、先で説明した表2と同様であり、中間コンパ
イラ43で採用されている。
換ルールの一部を示すテーブルである。この表4の変換
ルールは、中間コンパイラ43aで採用されている。
換する変換ルールの一部を示すテーブルである。この表
5の変換ルールは、中間コンパイラ43bで採用されて
いる。
プログラミング装置49においては、3種別々の言語に
て作成されたシーケンスプログラムであっても同一の形
式の中間言語プログラムに変換することが可能である。
すなわち、複数のシーケンスプログラムに対してもその
表現している論理が同一であれば、同一の中間言語プロ
グラムに変換が可能となる。
統一した形式の中間言語プログラムとして管理すること
ができる。
れたシーケンスプログラムに対する中間言語プログラム
が同一の形式であることを利用し、中間コンパイラ4
3、43a、43bと逆の変換を行う逆コンパイラを加
えることで、あるプログラミング言語で作成されたシー
ケンスプログラムを他のプログラミング言語にて自由に
表示したり、編集したりすることも可能になる。
いる言語がどの言語であっても、中間言語に変換されて
いれば同様に機械語コンパイラにより機械語の記述に変
換することができる。ゆえに、複数の種類のシーケンス
プログラムから作成された中間言語プログラムであって
も同様に機械語プログラムに変換することが可能であ
る。
語、ST言語、ニーモニック言語を中間言語に変換、あ
るいは、逆変換可能としているが、これに限定されるも
のではなく、他の各種の制御プログラミング言語を同様
に利用することができる。
ては、上記第2から第4の実施の形態に係るプログラミ
ング装置で利用されているテキスト形式の中間言語では
なく、固定長の機械語の命令コードと固定長のアドレス
とからなる形式の中間言語を利用するプログラミング装
置について説明する。
ング装置で採用される中間言語の記述形式を示す概念図
である。
における中間言語で採用されたテキスト形式に代えて、
命令語と変数の表現とを、コントローラの命令語コード
50aと変数アドレスコード50bからなるバイナリ形
式50で表す。
50aと変数アドレスコード50bとを固定長とする。
内のメモリの物理アドレスまたは論理アドレスに変換さ
れてしまう。
ミング装置は、ソース・プログラムへの逆変換を可能と
するために、命令語と命令コードの対応テーブルを中間
言語プログラムと同時に保存する。
可能とするための命令語と命令コードの対応テーブルで
ある。
装置は、同様の理由により、変数名とアドレスコードの
対応テーブルを中間言語プログラムと同時に保存する。
可能とするための変数名とアドレスコードの対応テーブ
ルである。
プログラミング装置においては、中間言語によって記述
される中間プログラムがコントローラの命令語コードと
変数アドレスとにより記述される。
で実行可能な言語であるので機械語コンパイラを省略さ
せることができ、中間プログラムをそのままコントロー
ラで実行させることができる。
とすることにより、機械語プログラムが必要ないため、
メモリを節約することができる。
ては、プログラミング装置との間でメモリ容量やCPU
能力等に基づく負荷レベルが比較され、プログラミング
装置よりも自己の方が負荷レベルが低い場合に、中間コ
ンパイラ、機械語コンパイラ、逆コンパイラを動作させ
るプログラマブルコントローラについて説明する。
ブルコントローラのハードウェア構成を示すブロック図
である。
CPU52、プログラムメモリ53、ワークメモリ5
4、シーケンス演算装置55、シーケンスプログラムメ
モリ、データメモリ、通信インターフェイス、I/O装
置がマイコンバス65で相互に送受信可能に接続されて
構成されている。
通信インターフェイス58を介して分散部61を搭載し
たプログラミング装置60と通信可能となっている。
えるCPU52は、このプログラマブルコントローラ5
1の中枢部分であり、コントローラ全体の実行制御を行
う。
行するプログラムが格納されているメモリであり、OS
や制御プログラムが格納される。
御を実行するときに作業領域として使用する。
セッサ)55は、シーケンスプログラムを実行するプロ
セッサである。
ザが作成したシーケンスプログラムを格納するメモリで
ある。
などのデータを格納するメモリである。
ブルコントローラ51とプログラミング装置60などを
通信媒体を介して接続するためのインタフェース回路で
ある。
ントローラ51と外部の制御対象を接続するための入出
力装置である。
トローラ51内の要素をCPU52やシーケンス演算装
置55と接続するためのバスであり、アドレスバス、デ
ータバス、制御バスの総体である。
は、先の第2から第5の実施の形態において説明した各
種のコンパイラ(例えば中間コンパイラ43、43a、
43b、機械語コンパイラ45、逆コンパイラ47)を
搭載している。
ラ51のプログラムメモリ53には、上記と同様の変換
を行う中間コンパイラ、機械語コンパイラ、逆コンパイ
ラが所持されている。
1と通信可能なプログラミング装置60は、上記第2か
ら第5の実施の形態に係るプログラミング装置31、4
8、49と同様の構成を持ち、同様に動作可能である
が、さらに分散部61を備えている。
ラ51とプログラミング装置60との間におけるCPU
処理能力やメモリ容量を調査する。そして、この調査結
果に基づいて、各種プログラムの保存やコンパイル処理
の実行をプログラマブルコントローラ51とプログラミ
ング装置60のいずれで行うかを決定し、指示する。
るプログラマブルコントローラ51を利用することで、
ソース・プログラムから中間言語プログラムへの変換処
理、中間言語プログラムから機械語プログラムへの変換
処理、中間言語プログラムからソース・プログラムへの
逆変換処理が、プログラマブルコントローラ51とプロ
グラミング装置60のいずれでも実行可能となる。
散部61が、プログラマブルコントローラ51とプログ
ラミング装置60との処理能力やメモリ容量にしたがっ
て、ソース・プログラムや中間言語プログラムへの処
理、及び配置を自由に選択する。
ムの配置関係の第1の例を示すブロック図である。
る場合には、ソース・プログラム611、中間言語プロ
グラム62をプログラミング装置60に配置して変換を
行い、メモリ容量の少ないプログラマブルコントローラ
51には機械語プログラム63を格納する。
ムの配置関係の第2の例を示すブロック図である。
マブルコントローラ51にメモリ容量の余裕がある場合
には、プログラミング装置60にソース・プログラム6
11を格納し、中間言語プログラム62及び機プログラ
ム63をプログラマブルコントローラ51に格納する。
ムの配置関係の第3の例を示すブロック図である。
がなく、プログラマブルコントローラ51のメモリ容量
に余裕がある場合には、プログラミング装置60にソー
ス・プログラム611を格納し、プログラマブルコント
ローラ51にソース・プログラム611を転送し、この
転送後、プログラマブルコントローラ51で中間言語プ
ログラム62及び機械語プログラム63に変換し、保存
する。
プログラマブルコントローラ51を適用することによ
り、プログラマブルコントローラ51やプログラミング
装置60のメモリ容量やCPU能力にあわせて、シーケ
ンスプログラムや、中間言語プログラム、機械語プログ
ラムの格納場所や変換場所が選択される。
やプログラミング装置60のどちらかの能力が低い場合
でも、中間言語を利用することができる。
ミング装置60側に分散部61を備えたが、これに限定
されるものではなく、プログラマブルコントローラ51
側にこの分散部61を備えてもよい。
のコンパイラを利用することで同様の効果を得ることが
できる。
ては、第6の実施の形態に係るプログラミング装置60
の変形例について説明する。
ラマブルコントローラ51とプログラミング装置60の
いずれでもプログラムを変換、配置することができると
している。しかしながら、ソース・プログラムを除く他
のプログラム(中間プログラム及び機械語プログラム)
をプログラマブルコントローラ51に固定的に配置する
とし、変換処理もこのプログラマブルコントローラ51
で実行すると定めてもよい。
1は、プログラミング装置60からソース・プログラム
611のみを受信して格納し、このプログラマブルコン
トローラ51で中間言語、機械語への変換がなされる。
理装置と通信インターフェイスだけを持つプログラミン
グ装置60を利用しても中間言語を利用したプログラミ
ングが可能となる。
のコンパイラを利用することで、上記と同様の効果を得
ることができる。
ては、上記第2から第7の実施の形態の変形例であり、
ソース・プログラムには含まれているが中間言語に変換
した際に不要となる記述の取扱いについて説明する。
変数宣言、ラベル、コメントなどのような、コンパイル
後には不要となる部分も含まれている場合がある。
がコンパイル後に不要になる部分を特別の中間言語コー
ドに変換し、中間言語プログラムに付加させる。
言語表記のコードに変換する変換ルールの一部を示すテ
ーブルである。
グラムの記述形式を示す図であり、変換後の中間言語コ
ード64aが中間プログラム64に付加されている状態
を示している。
ては、コンパイル後に不要となる記述をソース・プログ
ラムが含んでいる場合には、この不要となる記述をコー
ド化して中間言語プログラムに含めておく。
ンパイラを先で述べたプログラミング装置やプログラマ
ブルコントローラに搭載することで、変数名やコメント
文も含む元のシーケンスプログラムへ容易に逆変換可能
となる。
ない中間言語形式にもなっているので、ユーザが選択し
たプログラミング言語に逆変換して表示や編集をするこ
とが可能となる。
ログラムへのコンパイル時にこの不要部分のコードのみ
を容易に分離できるため、機械語への変換を行うコンパ
イル作業が簡単化できる。
ては、上記第8の実施の形態の変形例であり、中間言語
プログラムが機械語コードで記述される場合について説
明する。
形態においては中間言語プログラムをプログラマブルコ
ントローラの機械語コードを使用して、かつ固定長のコ
ードで表現できるように構成する。
ント文等のプログラムの実行に直接関与しない部分(コ
ンパイル後に不要となる部分)の中間言語プログラムに
はプログラマブルコントローラが演算処理において非実
行命令であると解釈可能な命令コードを付与する。
ンパイル後に不要となる部分のコードを記述する。
ナリ形式の中間言語表記のコードに変換する変換ルール
の一部を示すテーブルである。
る変換処理を先で述べたプログラミング装置やプログラ
マブルコントローラに搭載されている中間コンパイラに
適用すると、プログラマブルコントローラが機械語コー
ドを使用して固定長化された中間言語プログラムを直接
実行することが可能となる。
も含んでいるので容易に元のシーケンスプログラムへ逆
変換可能であるし、プログラミング言語の種類に関係し
ない中間言語形式にもなっているので、ユーザが選択し
たプログラミング言語に逆変換して表示や編集をするこ
とが可能である。
マブルコントローラ内に1種類の中間言語プログラムを
もたせるだけで、直接実行も可能であり、元のシーケン
スプログラムへの逆変換も可能にできる。
いては、上記各実施の形態の変形例について説明する。
グ装置においては、3種混在したプログラムをコンパイ
ル後、複数のコントローラに自動分散させて処理を実行
させるとしてもよい。例えば、混在表記されたプログラ
ムのうち所定の言語で記述された部分は所定のコントロ
ーラで実現させ、他の言語で記述された部分は他のコン
トローラで実現させる等の手法で自動的に処理を分散、
実行させることができる。また、これにより、各処理に
対する適切なコントローラを自動的に選択し、処理を実
行させることができる。
ラミング装置やプログラマブルコントローラは、クライ
アント・サーバ型でも、スタンドアローン型でも利用可
能とすることができる。サーバが存在する場合には、自
装置に備えられていないサーバの機能を流用することが
でき、例えば自装置が持っていないファンクションやフ
ァンクションブロック、プログラムをサーバから読み出
して利用することができる。
て、トップダウン方式のプログラミングを可能としても
よい。このように、トップダウン方式によりプログラミ
ングを行うことで、システム構成設計のブロックから順
次、関連する下位のブロックを開いていき、機能、設計
レベル、I/O設計レベル、モジュール設計レベル、取
扱い説明書の参照などが可能となる。
を可能とすることで、プログラミング装置上で作成した
設計仕様書などのドキュメントと、このドキュメントに
関連するプログラムを有機的にリンクさせ、ドキュメン
トとプログラムの相関関係を規定することができる。機
能ブロック図などでは、そのブロックからプログラム編
集、モニタを実行することができ、ライブラリを活用す
ることにより、システムエンジニアリングからプログラ
ミング、メンテナンスまでをシームレスに実行すること
ができる。
て、ボトムダウン方式のプログラミングを可能としても
よい。このように、ボトムダウン方式によりプログラミ
ングを行うことで、I/O設計、モジュール設計を並行
に進行させた後に機能モジュールとして統合し、システ
ムとしてもプログラムを作成することができる。
のプログラマブルコントローラで使用されていたレジス
タと同一名称の変数を自動的に定義し、あたかもレジス
タを使用してプログラムを作成しているように利用でき
るとしてもよい。
て、作成するプログラム間の参照関係図を表示するとし
てもよい。これにより、一方のプログラムを変更した場
合に、他方のプログラムの変更が必要か否かど、プログ
ラム変更時の影響をユーザが容易に認識することができ
る。
ラミング装置やプログラマブルコントローラは、例えば
LD言語によって記述された接点やコイル命令をフォー
スする際に、プログラム全体をコンパイルし直すことな
くプログラム中の対象になる命令のコードだけを変更す
ることにより、フォース機能を実現することができる。
ング装置及びプログラマブルコントローラの各機能、各
要素(例えば異なる言語の混在表示機能、混在プログラ
ムをコンパイルするコンパイラ、中間コンパイラ、機械
語コンパイラ、逆コンパイラ等)は、コンピュータに実
行させることのできるプログラムとして、例えば磁気デ
ィスク(フロッピーディスク、ハードディスク等)、光
ディスク(CD−ROM、DVD等)、半導体メモリな
どの記録媒体に書き込んで適用したり、通信媒体により
伝送して計算機あるいは計算機システム、プログラマブ
ルコントローラに適用することも可能である。上記各機
能を実現するコンピュータは、記録媒体に記録されたプ
ログラムを読み込み、プログラムによって動作が制御さ
れることにより、上述した処理を実行する。
複数種類の制御プログラミング言語を混在表記できるた
め、ユーザが制御プログラムの内容を容易に理解するこ
とができる。
いたプログラムをそのままコンパイルすることができる
ため、各種言語の利点を活用したプログラムを作成し、
実行させることができる。
混在表記させたプログラム上に表示させるため、ユーザ
が容易に問題点を発見することができる。
をプログラミング言語の種類によらない共通の形式の中
間言語プログラムに変換するので、プログラムの形式が
統一され、管理が簡単になる。なお、中間言語をテキス
ト形式で表現した場合には、人間が論理を検証する際に
図式言語に比較して検証しやすく、また1種類の共通形
式で記述されたプログラムを検証するだけですむ。ゆえ
に、複数の種類のプログラミング言語で記述された制御
プログラムの検証労力を軽減させることができる。
ラムを制御プログラムに逆変換する際に、あるプログラ
ミング言語を選択して逆変換可能なので、あるプログラ
ミング言語のプログラムを他のプログラミング言語のプ
ログラムに変換することも可能になる。
意のプログラミング言語で表示・編集することが可能と
なる。
ラムをテキスト形式だけでなく、プログラマブルコント
ローラが直接実行可能な機械語コードを利用して構成す
ることにより、プログラマブルコントローラで直接実行
可能で、かつ元のシーケンスプログラムに逆変換するこ
とも可能な中間言語プログラムを得ることが可能となっ
ている。
プログラムの情報が失われていないということであり、
従来のプログラマブルコントローラやプログラミング装
置がソースプログラムと機械語プログラムを2重に保存
しておかなければならなかったことに比べてメモリの節
約が可能になる。
グ装置の構成を示すブロック図。
されたコンパイル理論を説明するためのフロー図。
て混在表記されているプログラムの例を示す画面図。
状態図。
法を示す概念図。
り得られるコンパイル結果を示す概念図。
て扱われるモニタデータの構造と、コンパイル結果の構
造、及びモニタデータ構造テンプレートを示す関係図。
混在表記し、モニタデータを重ねて表示した場合の一例
を示す画面図。
混在表記し、モニタデータを重ねて表示した場合の他の
例を示す画面図。
ング装置のハードウェア構成を示すブロック図。
ける処理内容を示すブロック図。
ング装置における処理内容を示すブロック図
ング装置における処理内容を示すブロック図
ング装置で採用される中間言語の記述形式を示す概念
図。
ブルコントローラのハードウェア構成を示すブロック
図。
の第1の例を示すブロック図。
の第2の例を示すブロック図。
の第3の例を示すブロック図。
グラムの記述形式を示す図。
御プログラミング言語を利用して作成したプログラムを
表示した例を示す画面図。
ング装置とモニタを行うプログラミング装置が異なる場
合の例を示すブロック図。
トローラ 6…プログラム編集 7…プログラム表示 8…プログラムコンパイル 10…モニタデータ 11…モニタ重ね表示 12…プログラムファイル 13…モニタデータ 17…プログラム実行 18…モニタデータ出力 19…モニタデータ返信 32、52…CPU 33…OS・プログラムメモリ 34、54…ワークメモリ 42、42a、42b…シーケンスプログラム 43、43a、43b…中間コンパイラ 44、62…中間言語プログラム 45、45a〜45c…機械語コンパイラ 46、46a〜46c、63…機械語プログラム 47…逆コンパイラ 50…バイナリ形式中間言語 53…プログラムメモリ 55…シーケンス演算装置 56…シーケンスプログラムメモリ 57…データメモリ 61…処理分散部 611…ソース・プログラム
Claims (27)
- 【請求項1】 制御手段で実行させる制御プログラムの
作成を支援するプログラミング装置において、 複数種類の制御プログラミング言語の混在表記を可能と
したことを特徴とするプログラミング装置。 - 【請求項2】 請求項1記載のプログラミング装置にお
いて、 混在表記された制御プログラムをコンパイルするコンパ
イラを具備したことを特徴とするプログラミング装置。 - 【請求項3】 請求項2記載のプログラミング装置にお
いて、 前記コンパイラは、混在表記された制御プログラムを有
向グラフとして扱い、有向グラフにおける各ノードに対
して右下から左に向かい上段にあがって再び右から左に
向かう順序でノード番号を付し、このノード番号の付さ
れた有向グラフに対する深さ優先探索アルゴリズムによ
りノードの実行順序を決定することを特徴とするプログ
ラミング装置。 - 【請求項4】 請求項2又は請求項3記載のプログラミ
ング装置において、 前記コンパイラは、混在表記された制御プログラムの内
容とモニタデータとを関係付けて保存するとし、 前記コンパイラによるコンパイル時の関係付けに基づい
て、モニタデータを混在表記された制御プログラム上に
配置するモニタデータ重ね表示手段を付加したことを特
徴とするプログラミング装置。 - 【請求項5】 制御手段で実行させる制御プログラムの
作成を支援するプログラミング装置において、 制御プログラミング言語によって記述された制御プログ
ラムを、機械語による記述及び制御プログラミング言語
による記述のいずれにも変換可能な中間言語によって記
述された中間言語プログラムに変換する中間変換手段を
具備したことを特徴とするプログラミング装置。 - 【請求項6】 請求項5記載のプログラミング装置にお
いて、 前記中間言語プログラムがそのまま前記制御手段で実行
可能なことを特徴とするプログラミング装置。 - 【請求項7】 請求項5記載のプログラミング装置にお
いて、 前記中間言語プログラムを機械語によって記述された機
械語プログラムに変換する機械語変換手段を付加したこ
とを特徴とするプログラミング装置。 - 【請求項8】 請求項7記載のプログラミング装置にお
いて、 前記機械語変換手段は、前記中間言語プログラムを、複
数の制御手段毎の機械語プログラムに変換することを特
徴とするプログラミング装置。 - 【請求項9】 請求項5乃至請求項8のいずれか1項に
記載したプログラミング装置において、 前記中間言語プログラムを制御プログラミング言語によ
って記述された制御プログラムに変換する逆変換手段を
付加したことを特徴とするプログラミング装置。 - 【請求項10】 請求項9記載のプログラミング装置に
おいて、 前記逆変換手段によって変換された内容を表示する表示
手段を付加したことを特徴とするプログラミング装置。 - 【請求項11】 請求項5乃至請求項10のいずれか1
項に記載したプログラミング装置において、 前記中間言語は、変換前の制御プログラミング言語が異
なっていても共通の形式で中間プログラムを記述するこ
とを特徴とするプログラミング装置。 - 【請求項12】 請求項5乃至請求項11のいずれか1
項に記載したプログラミング装置において、 前記中間言語プログラムを、複数の制御プログラミング
言語のいずれかで記述された制御プログラムに任意変換
可能な任意逆変換手段を付加したことを特徴とするプロ
グラミング装置。 - 【請求項13】 請求項12記載のプログラミング装置
において、 前記任意逆変換手段によって変換された内容を表示する
表示手段を付加したことを特徴とするプログラミング装
置。 - 【請求項14】 請求項5乃至請求項13のいずれか1
項に記載したプログラミング装置において、 前記中間言語は、固定長の機械語コードにより成るプロ
グラムで記述されることを特徴とするプログラミング装
置。 - 【請求項15】 請求項5乃至請求項14のいずれか1
項に記載したプログラミング装置において、 自己と前記制御手段との間での負荷レベルの調査結果に
基づいて、負荷を分散する分散手段を付加したことを特
徴とするプログラミング装置。 - 【請求項16】 請求項5乃至請求項15のいずれか1
項に記載したプログラミング装置において、 前記中間変換手段は、制御プログラミング言語によって
記述された制御プログラムの含む処理に関与しない部分
を、処理に関与しない部分である旨を示すコードに変換
することを特徴とするプログラミング装置。 - 【請求項17】 制御プログラミング言語によって記述
された制御プログラムを受信する通信手段と、 前記通信手段によって受信した制御プログラムを、機械
語による記述及び制御プログラミング言語による記述の
いずれにも変換可能な中間言語によって記述された中間
言語プログラムに変換する中間変換手段とを具備したこ
とを特徴とするプログラマブルコントローラ。 - 【請求項18】 請求項17記載のプログラマブルコン
トローラにおいて、 前記中間言語プログラムをそのまま実行可能なことを特
徴とするプログラマブルコントローラ。 - 【請求項19】 請求項17記載のプログラマブルコン
トローラにおいて、 前記中間言語プログラムを機械語によって記述された機
械語プログラムに変換する機械語変換手段を付加したこ
とを特徴とするプログラマブルコントローラ。 - 【請求項20】 請求項17乃至請求項19のいずれか
1項に記載したプログラマブルコントローラにおいて、 前記中間言語プログラムを制御プログラミング言語によ
って記述された制御プログラムに変換する逆変換手段を
付加したことを特徴とするプログラマブルコントロー
ラ。 - 【請求項21】 請求項17乃至請求項19のいずれか
1項に記載したプログラマブルコントローラにおいて、 前記中間言語プログラムを、複数の制御プログラミング
言語のいずれかで記述された制御プログラムに任意変換
可能な任意逆変換手段を付加したことを特徴とするプロ
グラマブルコントローラ。 - 【請求項22】 コンピュータに、 複数種類の制御プログラミング言語を混在表記させる機
能を実現させるためのプログラムを記録したコンピュー
タ読み取り可能な記録媒体。 - 【請求項23】 コンピュータに、 複数種類の制御プログラミング言語で混在表記された制
御プログラムをコンパイルさせるコンパイラを記録した
コンピュータ読み取り可能な記録媒体。 - 【請求項24】 コンピュータに、 複数種類の制御プログラミング言語を混在表記させる混
在表記機能と、 複数種類の制御プログラミング言語で混在表記された制
御プログラムをコンパイルさせ、また混在表記された制
御プログラムの内容とモニタデータとを関係付けて保存
させるコンパイラと、 前記コンパイラによるコンパイル時の関係付けに基づい
て、前記混在表記機能によって混在表記されている制御
プログラム上にモニタデータを配置させるモニタデータ
重ね表示機能とを実現させるためのプログラムを記録し
たコンピュータ読み取り可能な記録媒体。 - 【請求項25】 コンピュータに、 制御プログラミング言語によって記述された制御プログ
ラムを、機械語による記述及び制御プログラミング言語
による記述のいずれにも変換可能な中間言語によって記
述された中間言語プログラムに変換させる中間変換機能
を実現させるためのプログラムを記録したコンピュータ
読み取り可能な記録媒体。 - 【請求項26】 請求項25記載のプログラムを記録し
たコンピュータ読み取り可能な記録媒体であって、 前記中間言語プログラムを機械語によって記述された機
械語プログラムに変換させる機械語変換機能を付加した
プログラムを記録したコンピュータ読み取り可能な記録
媒体。 - 【請求項27】 請求項25又は請求項26記載のプロ
グラムを記録したコンピュータ読み取り可能な記録媒体
であって、 前記中間言語プログラムを制御プログラミング言語によ
って記述された制御プログラムに変換させる逆変換機能
を付加したプログラムを記録したコンピュータ読み取り
可能な記録媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP19645699A JP3819639B2 (ja) | 1999-07-09 | 1999-07-09 | プログラミング装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP19645699A JP3819639B2 (ja) | 1999-07-09 | 1999-07-09 | プログラミング装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001022412A true JP2001022412A (ja) | 2001-01-26 |
JP3819639B2 JP3819639B2 (ja) | 2006-09-13 |
Family
ID=16358121
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP19645699A Expired - Fee Related JP3819639B2 (ja) | 1999-07-09 | 1999-07-09 | プログラミング装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3819639B2 (ja) |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002351504A (ja) * | 2001-05-30 | 2002-12-06 | Yokogawa Electric Corp | 制御データ保護装置 |
JP2005135383A (ja) * | 2003-09-05 | 2005-05-26 | Fisher Rosemount Syst Inc | ユーザによる修正可能な出力コンフィギュレーションデータベースを備えた状態マシン機能ブロック |
JP2007128378A (ja) * | 2005-11-07 | 2007-05-24 | Fuji Electric Fa Components & Systems Co Ltd | プログラマブルコントローラのプログラミング装置 |
JP2007280377A (ja) * | 2006-03-15 | 2007-10-25 | Omron Corp | Plcシステム |
JP2007299132A (ja) * | 2006-04-28 | 2007-11-15 | Yokogawa Electric Corp | プラント運転支援装置 |
JP2008059594A (ja) * | 2006-09-01 | 2008-03-13 | Fisher Rosemount Syst Inc | グラフィック・プログラミング言語オブジェクトを編集及び報告する方法及び編集・報告システム |
JP2009151791A (ja) * | 2007-12-22 | 2009-07-09 | Robert Bosch Gmbh | メモリにプログラム可能な制御のプログラミング方法および/または診断方法 |
JP2010003073A (ja) * | 2008-06-19 | 2010-01-07 | Hitachi Ltd | エンジニアリングツール |
US8600524B2 (en) | 2003-09-05 | 2013-12-03 | Fisher-Rosemount Systems, Inc. | State machine function block with a user modifiable state transition configuration database |
CN104977892A (zh) * | 2014-04-10 | 2015-10-14 | 株式会社捷太格特 | 可编程逻辑控制器用程序的创建支持装置 |
JP2016539444A (ja) * | 2013-11-05 | 2016-12-15 | シュネーデル、エレクトリック、インダストリーズ、エスアーエスSchneider Electric Industries Sas | 自動化システムを構成するための処理装置および方法 |
KR20180004825A (ko) | 2015-06-01 | 2018-01-12 | 미쓰비시덴키 가부시키가이샤 | 디버그 장치, 디버그 방법 및 디버그 프로그램 |
JP2018206362A (ja) * | 2017-06-02 | 2018-12-27 | オムロン株式会社 | 工程解析装置、工程解析方法、及び工程解析プログラム |
KR101974069B1 (ko) * | 2018-04-30 | 2019-04-30 | 한국과학기술원 | 바이너리 구조 도식화 장치 및 방법 |
CN111026382A (zh) * | 2019-12-13 | 2020-04-17 | 深圳市杰美康机电有限公司 | 混合编程方法、终端设备及计算机可读存储介质 |
CN115335782A (zh) * | 2020-03-26 | 2022-11-11 | 三菱电机株式会社 | 编程辅助程序、编程辅助装置及编程辅助方法 |
JP7208441B1 (ja) * | 2021-12-22 | 2023-01-18 | 三菱電機株式会社 | Fa制御テスト支援プログラム、fa制御テスト支援装置、fa制御テスト支援方法及びfa制御テスト支援システム |
US11768482B2 (en) | 2020-07-30 | 2023-09-26 | Canon Kabushiki Kaisha | Information processing apparatus, ladder-program generation apparatus, information processing method, ladder-program generation method, method of manufacturing product, and recording medium |
-
1999
- 1999-07-09 JP JP19645699A patent/JP3819639B2/ja not_active Expired - Fee Related
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002351504A (ja) * | 2001-05-30 | 2002-12-06 | Yokogawa Electric Corp | 制御データ保護装置 |
US8600524B2 (en) | 2003-09-05 | 2013-12-03 | Fisher-Rosemount Systems, Inc. | State machine function block with a user modifiable state transition configuration database |
JP2005135383A (ja) * | 2003-09-05 | 2005-05-26 | Fisher Rosemount Syst Inc | ユーザによる修正可能な出力コンフィギュレーションデータベースを備えた状態マシン機能ブロック |
JP2007128378A (ja) * | 2005-11-07 | 2007-05-24 | Fuji Electric Fa Components & Systems Co Ltd | プログラマブルコントローラのプログラミング装置 |
JP4737441B2 (ja) * | 2006-03-15 | 2011-08-03 | オムロン株式会社 | Plcシステム |
JP2007280377A (ja) * | 2006-03-15 | 2007-10-25 | Omron Corp | Plcシステム |
JP4730606B2 (ja) * | 2006-04-28 | 2011-07-20 | 横河電機株式会社 | プラント運転支援装置 |
JP2007299132A (ja) * | 2006-04-28 | 2007-11-15 | Yokogawa Electric Corp | プラント運転支援装置 |
JP2008059594A (ja) * | 2006-09-01 | 2008-03-13 | Fisher Rosemount Syst Inc | グラフィック・プログラミング言語オブジェクトを編集及び報告する方法及び編集・報告システム |
JP2017142839A (ja) * | 2006-09-01 | 2017-08-17 | フィッシャー−ローズマウント システムズ,インコーポレイテッド | グラフィック・プログラミング言語オブジェクトを編集及び報告する方法及び編集・報告システム |
JP2014041624A (ja) * | 2006-09-01 | 2014-03-06 | Fisher Rosemount Systems Inc | グラフィック・プログラミング言語オブジェクトを編集及び報告する方法及び編集・報告システム |
JP2009151791A (ja) * | 2007-12-22 | 2009-07-09 | Robert Bosch Gmbh | メモリにプログラム可能な制御のプログラミング方法および/または診断方法 |
JP2010003073A (ja) * | 2008-06-19 | 2010-01-07 | Hitachi Ltd | エンジニアリングツール |
US10228674B2 (en) | 2013-11-05 | 2019-03-12 | Schneider Electric Industries Sas | Processing device and method for configuring an automation system |
JP2016539444A (ja) * | 2013-11-05 | 2016-12-15 | シュネーデル、エレクトリック、インダストリーズ、エスアーエスSchneider Electric Industries Sas | 自動化システムを構成するための処理装置および方法 |
JP2015201132A (ja) * | 2014-04-10 | 2015-11-12 | 株式会社ジェイテクト | プログラマブルロジックコントローラ用プログラムの作成支援装置及びプログラマブルロジックコントローラ用プログラムの作成支援方法 |
CN104977892A (zh) * | 2014-04-10 | 2015-10-14 | 株式会社捷太格特 | 可编程逻辑控制器用程序的创建支持装置 |
CN104977892B (zh) * | 2014-04-10 | 2019-03-26 | 株式会社捷太格特 | 可编程逻辑控制器用程序的创建支持装置和创建支持方法 |
KR20180004825A (ko) | 2015-06-01 | 2018-01-12 | 미쓰비시덴키 가부시키가이샤 | 디버그 장치, 디버그 방법 및 디버그 프로그램 |
JP2018206362A (ja) * | 2017-06-02 | 2018-12-27 | オムロン株式会社 | 工程解析装置、工程解析方法、及び工程解析プログラム |
KR101974069B1 (ko) * | 2018-04-30 | 2019-04-30 | 한국과학기술원 | 바이너리 구조 도식화 장치 및 방법 |
CN111026382A (zh) * | 2019-12-13 | 2020-04-17 | 深圳市杰美康机电有限公司 | 混合编程方法、终端设备及计算机可读存储介质 |
CN111026382B (zh) * | 2019-12-13 | 2024-01-16 | 深圳市杰美康机电有限公司 | 混合编程方法、终端设备及计算机可读存储介质 |
CN115335782A (zh) * | 2020-03-26 | 2022-11-11 | 三菱电机株式会社 | 编程辅助程序、编程辅助装置及编程辅助方法 |
US11768482B2 (en) | 2020-07-30 | 2023-09-26 | Canon Kabushiki Kaisha | Information processing apparatus, ladder-program generation apparatus, information processing method, ladder-program generation method, method of manufacturing product, and recording medium |
JP7208441B1 (ja) * | 2021-12-22 | 2023-01-18 | 三菱電機株式会社 | Fa制御テスト支援プログラム、fa制御テスト支援装置、fa制御テスト支援方法及びfa制御テスト支援システム |
Also Published As
Publication number | Publication date |
---|---|
JP3819639B2 (ja) | 2006-09-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2001022412A (ja) | プログラミング装置及びプログラマブルコントローラ並びにプログラムを記録したコンピュータ読み取り可能な記録媒体 | |
US9235381B2 (en) | Method and device for the programming and configuration of a programmable logic controller | |
Perchat et al. | Component based framework to create mobile cross-platform applications | |
US20200019147A1 (en) | Abstraction layers for automation applications | |
JPH0561683A (ja) | オブジエクトに基づく情報処理システム及びソフトウエア保守システム | |
AU2002365594A1 (en) | Method and apparatus for creating software objects | |
KR20000069716A (ko) | 계층 상태 차트를 구현하는 장치 및 그것의 사용 방법 및 장치 | |
García-Sánchez et al. | Service oriented evolutionary algorithms | |
CN110673844A (zh) | 一种图像处理软件开发方法及系统 | |
US20010037362A1 (en) | Automation system for solving a technical-process task and corresponding method | |
CN115840421A (zh) | 开发工业控制编程的系统、对工业系统编程的方法和介质 | |
Freire et al. | Opla-tool v2. 0: a tool for product line architecture design optimization | |
Jamro et al. | An approach to SysML modeling of IEC 61131-3 control software | |
CN106933568B (zh) | 一种组态软件系统及一种工业控制方法 | |
JP6135247B2 (ja) | 情報処理装置および情報処理プログラム | |
GB2373349A (en) | Data definition language | |
Rzońca et al. | Developing a multiplatform control environment | |
CN115658140A (zh) | 一种sdk的打包方法、装置、终端以及存储介质 | |
JP2007122187A (ja) | プログラム・コード生成装置 | |
Stec | SFC graphic editor for CPDev environment | |
Muhlhauser | Software engineering for distributed applications: The design project | |
Barker et al. | The making of eXCes-a software engineering perspective | |
Neelamkavil et al. | Separating graphics from application in the design of user interfaces | |
CN116126366B (zh) | 芯片输入输出接口配置方法,装置,介质及电子设备 | |
KR100423742B1 (ko) | 순차기능챠트에 의한 전용 제어 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050531 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050607 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050808 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20051004 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051205 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20060307 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060426 |
|
A911 | Transfer of reconsideration by examiner before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20060517 |
|
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: 20060613 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060615 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 3819639 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090623 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100623 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100623 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110623 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120623 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120623 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130623 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |