JP4302146B2 - プログラム作成支援装置 - Google Patents
プログラム作成支援装置 Download PDFInfo
- Publication number
- JP4302146B2 JP4302146B2 JP2007040550A JP2007040550A JP4302146B2 JP 4302146 B2 JP4302146 B2 JP 4302146B2 JP 2007040550 A JP2007040550 A JP 2007040550A JP 2007040550 A JP2007040550 A JP 2007040550A JP 4302146 B2 JP4302146 B2 JP 4302146B2
- Authority
- JP
- Japan
- Prior art keywords
- user
- parameter
- parameter setting
- dialog
- setting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2291—User-Defined Types; Storage management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/30156—Special purpose encoding of instructions, e.g. Gray coding
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Stored Programmes (AREA)
- Programmable Controllers (AREA)
Description
図43において、ファンクションブロック(FB)をマウスでダブルクリックすると、ダイアログが表示されるので、ダイアログ上でパラメータの値を設定して「OK」ボタンを押圧操作すれば、設定入力したパラメータの値で処理が行われる。
従って、比較的簡単なファンクションやファンクションブロックの場合には、図42のように、パラメータ入力端子(PARAM)を設けた方式の方が、プログラム作成の作業効率の面でも作成したプログラムの可読性の面でも好ましい。
従って、複雑なFBの場合には、図43に示すように、パラメータをダイアログボックスで設定し、パラメータ入力端子を設けない方式の方が、プログラム作成の作業効率の面でも作成したプログラムの可読性の面でも好ましくなる。
また、処理内容がカプセル化されたユーザ定義FBは、プログラム記述のエラーがない実行可能な状態にあるので、ユーザ定義FBを使用する際(ステップS33)には、その処理内容の記述にエラーがあるか否かを心配する必要がないので、FBDプログラムの作成時間は短縮される。
なお、従来のファンクションブロックダイアグラムを用いたプログラミング方法およびその装置ならびに記憶媒体においては、ユーザ定義FBの編集内容に対するアクセスレベルをユーザによって制限する機能なども実行されている。
さらに、ユーザ定義FBの内部処理の記述に用いているファンクションやファンクションブロックの内部処理で使用するパラメータを、すべてユーザ定義FBの入力端子として設けようとすると、ユーザ定義FBが一層巨大化するので好ましくない。
従って、ユーザ定義FBを異なるパラメータの値で使用したい場合には、異なるパラメータを設定した数だけユーザ定義FBを作成登録する必要があり、ユーザ定義FB機能を実現した際の本来の目的であるFBDプログラムの作成時間短縮を実現することはできない。
以下、図面を参照しながら、この発明の実施の形態1について説明する。
なお、ここでは、ユーザ定義FBの内部処理の記述に使用されているFBのパラメータ設定ダイアログを、ユーザ定義FBから直接使用することを可能にした技術について説明する。
この発明によるプログラム作成支援装置は、予め定義されているプログラム命令を組み合わせて、新たなファンクションまたはファンクションブロックを定義するためのユーザ定義FB作成手段と、ユーザ定義FBを用いて記述されたプログラムをプログラム実行装置で実行するためのコード化においてユーザ定義FB部分のコード化を行うユーザ定義FB処理実行コード生成手段と、を有する。なお、予め定義されているプログラム命令の一例として、予め定義されているファンクションおよびファンクションブロック(FB)が含まれる。また、既に定義したユーザ定義FBも、新しく作成する定義するユーザ定義FBに組み入れることができる。
プログラム作成支援装置(パソコン)100によって作成されたプログラムは、プログラム実行装置として機能するコントローラ200に転送されて、コントローラ(プログラム実行装置)200で実行される。
図2において、プログラム作成支援装置300は、ユーザ定義FB作成手段303と、ユーザ定義FBパラメータ設定手段301と、FBパラメータ設定手段304と、ユーザ定義FBパラメータ設定値保持手段302と、ユーザ定義FB処理実行コード生成手段305とを備えている。プログラム作成支援装置300でコード化されたプログラムを転送する際には、ユーザ定義FB処理実行コード生成手段305にプログラム実行装置400が接続される。
ユーザ定義FBパラメータ設定手段301は、FBパラメータ設定手段304を起動して表示し、FBパラメータ設定手段304にて設定されたパラメータの値を、FBパラメータ設定手段304から取得する。このパラメータの値は、ユーザ定義FBパラメータ設定値保持手段302に送られて保持される。ユーザ定義処理実行コード生成手段305でコードを生成する際には、ユーザ定義FBパラメータ設定値保持手段302の保持されているパラメータの値が用いられる。
図3はこの発明の実施の形態1に係るプログラム作成支援装置およびプログラム実行装置を実現するためのプログラム作成装置1を図式的に示すブロック図である。
図3において、プログラム作成装置1は、マンマシンインタフェースを有するマイクロコンピュータによって実現されており(図1参照)、ツリービュー2と、FB領域3と、ユーザ定義FB領域4と、FBDプログラム編集領域5と、ユーザ定義FB編集領域6とを有する。
図3において、たとえば、ユーザがツリービュー2内のプログラムαをマウスでダブルクリックすると、プログラム編集領域5が表示され、プログラムαの内容を編集可能な状態になる。
図3において、たとえば、ユーザがツリービュー2内のユーザFBαをマウスでダブルクリックすると、ユーザ定義FB編集領域6が表示され、ユーザFBαの内容を編集可能な状態になる。
プログラムの編集の際には、FB領域3から所望のFB(予め用意されているFB)をマウス選択してプログラム編集領域5へマウスで移動させるドラッグ&ドロップによってプログラム上にFBを追加するのと同様に、ユーザ定義FB領域4から所望のユーザ定義FBをマウス選択してプログラム編集領域5へマウスで移動させるドラッグ&ドロップによってプログラム上にユーザ定義FBを追加する。
なお、ここでは、ステップS1、S2(ユーザFB作成時)において、図5内のユーザ定義FB領域4に示すようなユーザFBβを作成したことにする。また、ユーザFBβには、FBφが記述されており、パラメータ値PARAMφ(ユーザ定義FBパラメータ設定値)を有しているものとする。
続くユーザFB利用時において、図6に示すように、まず、ユーザFBβをプログラムに配置する(ステップS3)。
最後に、PARAMφの値に基づいてユーザ定義FBのコード化が実行され(ステップS5)、図4の操作手順を終了する。
ステップ4では、ユーザ定義FBパラメータ設定値保持手段302も機能し、ステップS4で設定されたパラメータPARAMφの値は、ユーザFBβのパラメータとして保持される。
まず、ユーザFBβ(図5、図6参照)のパラメータ値を設定しなかった場合は、従来のユーザ定義FBと同様のコード生成が実行される。すなわち、FBDプログラム編集領域5で記述されたプログラムがコード化され、また、ユーザ定義FB編集領域6で記述されたプログラムであるユーザFBβの内部処理もコード化される。
この場合、FBDプログラム編集領域5で記述されたプログラムをコード化する際に、ユーザFBβのコード化に関しては、ユーザ定義FBパラメータ設定値保持手段302に保持されているパラメータによってコード化するようにする。
ユーザ定義FB処理実行コード生成手段305は、ユーザ定義FBパラメータ設定値保持手段302に保持されているパラメータによってユーザ定義FBをコード化し、ユーザ定義FBパラメータ設定手段301は、ユーザ定義FBの内部処理の記述に使用されているFBのFBパラメータ設定手段304を表示し、ユーザ定義FBパラメータ設定値保持手段302は、FBパラメータ設定手段により設定されたパラメータ設定値を保持する。
なお、FBDプログラム編集領域5で記述されたプログラムをコード化する際に、ユーザFBβのコード化に関しては、ユーザ定義FBパラメータ設定値保持手段302に保持されているパラメータによってコード化するようにする。
なお、上記実施の形態1(図5、図6)では、FBφが記述されたユーザFBβを作成し、パラメータ値PARAMφを設定した場合について説明したが、図7および図8に示すように、FBξが記述されたユーザFBδを作成し、パラメータの値を定数としてもよい。
この発明の実施の形態2の構成は、図1〜図3に示した通りである。また、この発明の実施の形態2によるパラメータ設定手順は、図4に示した通りであり、この結果、図8内のFBDプログラム編集領域5に示すような状態となる。ここでは、前述と同様のステップS1、S2において、図7内のユーザ定義FB領域4に示すように、ユーザFBδが作成された場合を示している。
また、前述の実施の形態1と同様の操作手順により、図8に示すように、ユーザ定義FBのパラメータ設定ダイアログとして、内部処理の記述に使用されている定数FBの定数を設定するダイアログが表示される。
なお、上記実施の形態1、2では、ユーザ定義FBの内部処理の記述に使用されているFBのパラメータ設定ダイアログが1つであった場合について、ユーザ定義FBから直接使用することを可能にしたが、ユーザ定義FBの内部処理の記述に使用されているFBのパラメータ設定ダイアログが2つ以上であった場合について、ユーザ定義FBから直接使用することを可能にしてもよい。
図9はこの発明の実施の形態3の機能構成を示すブロック図であり、前述(図2参照)と同様のものについては、前述と同一符号を付して詳述を省略する。この場合、ユーザ定義FBパラメータ設定手段301は、FBパラメータ設定手段選択手段306を含み、FBパラメータ設定手段304は、FBパラメータ設定手段選択手段306と関連している。FBパラメータ設定手段選択手段306は、ユーザ定義FBの内部処理の記述に使用されているFBのFBパラメータ設定手段304が複数存在する場合に、複数のFBパラメータ設定手段304のうちから、ユーザ定義FBパラメータ設定手段301として用いるFBパラメータ設定手段を選択する。
図10はこの発明の実施の形態3によるパラメータ設定手順を示すフローチャートであり、ユーザ定義FBの内部処理の記述に使用されているFBのパラメータ設定ダイアログが2つ以上の場合に、ユーザ定義FBから直接使用することによってユーザ定義FBをプログラムで使用する際のパラメータ設定手順を示している。
図11および図12はこの発明の実施の形態3による操作手順を図3に関連させて示す説明図であり、それぞれ、前述の図5および図6に対応している。
この場合、ユーザFB作成時のステップS1、S2において、図11内のユーザ定義FB領域4に示すようなユーザFBγを作成したものとする。また、ユーザFBγには、FBφおよびFBψが記述されており、FBφ、FBψは、それぞれ、パラメータ値PARAMφ、PARAMψを有しているものとする。
続いて、図12に示すように、プログラムに配置したユーザ定義FBをマウスでマウス右クリックして表示されるポップアップメニューから、または、ダブルクリックして表示されるダイアログなどから、ステップS1、S2で作成したユーザFBγの内部処理の記述に使用されているFB(FBφまたはFBψ)のパラメータ設定ダイアログのいずれかを選択する(ステップS4A)。
図11においては、FBφ、FBψの内部処理のパラメータ値PARAMφ、PARAMψを設定する状態が示されている。また、図12においては、ユーザFBγの内部処理のパラメータ値を設定するダイアログを選択し、FBφ、FBψの内部処理のパラメータ値PARAMφ、PARAMψを設定する状態が示されている。
なお、上記実施の形態1〜3では、ユーザ定義FBの内部処理の記述で用いているFBの有するすべてのパラメータをユーザ定義FBから設定するために、ユーザ定義FBの内部処理の記述に使用されているFBのパラメータ設定ダイアログとして、ユーザ定義FBから直接使用してユーザ定義FBのダイアログを提供した。
なお、この発明の実施の形態4に係るプログラム作成支援装置の構成は、図1に示した通りである。
図14はこの発明の実施の形態4を図式的に示すブロック図であり、ユーザ定義FBの内部処理の記述に使用されているFBのパラメータ設定ダイアログをユーザ定義FBから直接使用して、ユーザ定義FBのダイアログを提供するとともに、上記目的を達成する場合の構成を示している。
図14において、プログラム作成装置1は、前述(図3参照)の構成に加えて、FBパラメータ設定手段指定手段307に対応したFBパラメータ設定手段指定手段99を備えている。
図16はユーザ定義FBから直接使用できるように指定するための状態を示す説明図である。また、図17は図15内のステップS4Aによる操作後の状態を示す説明図であり、前述の図12に対応している。
続いて、ステップS4Aにおいては、プログラムに配置したユーザ定義FBを、マウス右クリックで表示されるポップアップメニューから、または、マウスのダブルクリックで表示されるダイアログから、ステップS1、S2で作成したユーザFBγの内部処理の記述に使用されているFBφまたはFBψのパラメータ設定ダイアログのうちの、ステップS3で指定したダイアログの一覧を表示し、そのいずれかを選択する。
図17においては、ユーザFBγの内部処理のパラメータ値を設定するダイアログを選択し、FBφの内部処理のパラメータ値PARAMφを設定する状態が示されている。
なお、上記実施の形態1〜4では、ユーザ定義FBの内部処理の記述で用いているFBの有するパラメータをすべてユーザ定義FBから設定するために、ユーザ定義FBの内部処理を記述する際にFBのパラメータ設定ダイアログで設定を行い、また、ユーザ定義FBを使用する際には常に固定的な値としたいパラメータがある場合には、該当するパラメータのFBのパラメータ設定ダイアログを、ユーザ定義FBから直接使用するか否かを指定するために、ユーザ定義FBの内部処理の記述に使用されているFBのパラメータ設定ダイアログをユーザ定義FBから直接使用することにより、ユーザ定義FBのダイアログを提供した。
たとえば、1つのFBのパラメータ設定ダイアログにおいて2つ以上のパラメータを設定するような場合で、そのうち一部のパラメータを固定的とし、他のパラメータをユーザ定義FBのダイアログから設定できるようにしたい場合に、前述の実施の形態1〜4では、これを実現することができない。
よって、FBのパラメータ設定ダイアログのそれぞれを使用するか否かの指定(上記実施の形態4参照)ではなく、個々のパラメータのそれぞれを可変とするか否かを指定することが望ましい。
なお、この発明の実施の形態5に係るプログラム作成支援装置の構成は、図1に示した通りである。
ユーザ定義FBパラメータ設定手段作成手段308は、パラメータ取得手段309と、パラメータ関連付け設定手段310とを有し、パラメータ取得手段309は、ユーザ定義FBの処理内容(内部処理の記述に使用されているFBの処理)に関連するパラメータを取得する。また、パラメータ関連付け設定手段310は、作成されたユーザ定義FBパラメータ設定手段301の各パラメータ設定要素とパラメータ取得手段309により取得したパラメータとを関連付ける。
図19はこの発明の実施の形態5を図式的に示すブロック図であり、前述(図3、図14参照)と同様のものについては、前述と同一符号が付されている。
図19において、プログラム作成装置1は、ユーザ定義FBダイアログ編集領域7と、ユーザ定義FBダイアログ編集用のGUI(グラフィカルユーザインタフェース:Graphical User Interface)部品を表示するユーザ定義FBダイアログ編集用GUI部品領域8とを備えている。
図21においては、GUI部品に関連付けるパラメータの値を一覧から選択する状態が示されている。
なお、ステップS7でユーザFBγ用のダイアログを作成したので(図22参照)、ステップS4においては、図23に示すような状態となる。
最後に、ステップS5においては、設定されたパラメータ値に基づいてユーザFBγのコード化処理が実行される。
なお、上記実施の形態5では、ユーザ定義FBの内部処理の記述に用いるファンクションやFB(ファンクションブロック)がパラメータ設定ダイアログを有する場合(たとえば、図43参照)について説明したが、図24および図25に示すように、パラメータ設定ダイアログを有さずにパラメータ端子PARAMを有している場合(たとえば、図42参照)に適用してもよい。
また、この発明の実施の形態6による操作手順は、図20に示した通りであるが、ステップS1、S2でユーザFBδ(たとえば、図7参照)を作成した場合について説明する。
図24はこの発明の実施の形態6によるユーザFBδのダイアログ作成操作を示す説明図であり、図25はユーザFB利用時の状態を示す説明図である。
すなわち、ユーザ定義FBの内部処理の記述に用いているファンクションやファンクションブロックの内部処理で使用するパラメータが図42の形態であった場合でも、図45に示すような記述にはせず、そのパラメータをユーザ定義FBの入力端子とはせずに、図7に示すように、そのパラメータの値を定数FBで供給するように記述する。
なお、上記実施の形態5、6では、ユーザによりユーザ定義FBのダイアログを作成することにより、ユーザ定義FBを使用する際に可変としたいパラメータのみをユーザ定義FBのダイアログから設定可能とし、その他のパラメータはユーザ定義FBの内部処理を記述する際にFBのパラメータ設定ダイアログで設定を行い、ユーザ定義FBを使用する際には常に固定的な値とし、特定の処理をファンクションブロックという形態でカプセル化するというユーザ定義FBの性質を損なうことなく目的効果を達成した。
図26はこの発明の実施の形態7の機能構成を示すブロック図であり、前述(図18参照)と同様のものについては、前述と同一符号を付して詳述を省略する。この場合、ユーザ定義FB作成手段303内のユーザ定義FBパラメータ設定手段作成手段308は、パラメータ取得手段309およびパラメータ関連付け設定手段310に代えて、パラメータ情報取得手段311を備えている。また、パラメータを有するFBにおいては、そのパラメータに関する詳細情報を保持している。
ここでは、FBφの有するパラメータφに関する情報として、データ型=BOOL、パラメータの名称=PARAMφ、GUI部品の属性=Edit Box、を有していることとする。また、定数FBの有するパラメータである定数値に関する情報として、データ型=BYTE、パラメータの名称=定数値、GUI部品の属性=Edit Box、を有していることとする。
また、図31はパラメータに関する詳細情報の他の例を示す説明図であり、図32は他の情報例の場合のダイアログ表示状態を示す説明図である。
ここでは、ステップS1、S2において、図28に示すようなユーザFBεを作成した場合について説明する。また、ユーザFBεの内部処理の記述には、図27に示すFBφおよび定数FBと、前述(図7参照)のFBξとが用いられているものとする。
具体的には、まず、ステップS11(パラメータ情報取得手段311)において、以下の操作を行う。
すなわち、図27のように、FBφの有するパラメータφに関する情報として、データ型=BOOL、パラメータの名称=PARAMφ、GUI部品の属性=Edit Box、を取得し、定数FBの有するパラメータである定数値に関する情報として、データ型=BYTE、パラメータの名称=定数値、GUI部品の属性=Edit Box、を取得する。
まず、ステップS11で取得したパラメータφに関する表示を行う。このとき、パラメータの名称がPARAMφであるので、ダイアログに「PARAMφ」という文字列を表示する。また、その横に、パラメータφのGUI部品の属性が「Edit Box」であるので、ダイアログに「Edit Box」を表示する。
さらに、その下に、次のパラメータである「定数値」を表示する。ここで、パラメータの名称が定数値であるので、ダイアログに「定数値」という文字列を表示し、その横に、定数値のGUI部品の属性が「Edit Box」であるので、ダイアログに「Edit Box」を表示する。
まず、パラメータφに関する判定を行う。すなわち、ステップS12で表示したダイアログ上でユーザが入力した値に対して、ステップS11で取得したパラメータ値に関する情報に基づき、設定されたパラメータ値が正しいか否かを判定する。このとき、パラメータのデータ型がBOOLであるので、「Edit Box」にBOOL型のデータが入力された場合に正しいと判定する。
また、もう1つのパラメータである定数値を表示する。ここで、パラメータのデータ型がBYTEであるので、「Edit Box」にBYTE型のデータが入力された場合に正しいと判定する。
すなわち、ステップS13で正しいと判定された値を、ユーザFBεのユーザ定義FBパラメータ設定値保持手段302が保持する。まず、パラメータφの「Edit Box」に入力された値を保持し、また、もう1つのパラメータである定数値の「Edit Box」に入力された値を保持する。
図30においては、ユーザ定義FB領域4からFBDプログラム編集領域5へのユーザFBεのドラッグ&ドロップ状態と、FBDプログラム編集領域5内のユーザFBεパラメータ設定ダイアログ12上で、ユーザFBεの内部処理のパラメータ値PARAMφを設定する状態とが示されている。
すなわち、図29内のステップS11、S12は、前述のステップS7に相当する部分を実行し、ステップS11、S14は、前述のステップS8に相当する部分を実行することになる。
この場合、図31内のPARAMτに対しては、ステップS13において、「Edit Box」にINT型のデータが入力された場合で、かつ、その値が0〜999の範囲内であれば、正しいと判定する。
図32においては、ユーザFBεパラメータ設定ダイアログ12上で、ユーザFBの内部処理のパラメータ値PARAMκを設定する状態が示されている。
パラメータ情報取得手段311は、ユーザ定義FBの処理内容に関連するパラメータを、パラメータ値情報およびGUI情報の形式で取得し、ユーザ定義FBパラメータ設定手段301は、パラメータ情報取得手段311が取得したGUI情報に基づいて設定ダイアログを表示する(ステップS12)とともに、パラメータ情報取得手段311が取得したパラメータ値情報に基づいて設定されたパラメータ値が正しいか否かを判定する(ステップS13)。
また、パラメータ値情報は、パラメータのデータ型と、パラメータの上限値と、パラメータの下限値と、パラメータのうちの選択可能な値の一覧と、のうちの少なくとも1つを有する。
また、GUI情報は、パラメータの名称と、ユーザ定義FBのダイアログ上で表示する際のGUI部品の属性とを有する。
すなわち、前述の実施の形態6では、ユーザ定義FBの内部処理で使用するパラメータの所在(存在)のみを自動で取得し、ユーザ定義FBダイアログを手動で作成する必要があるうえ、ユーザ定義FBダイアログ上のGUI部品とパラメータとを手動で関連付ける必要があったが、この発明の実施の形態7では、ユーザ定義FBの内部処理で使用するパラメータを、その詳細情報と共に取得するようにしたので、ユーザ定義FBのダイアログを自動生成することができるうえ、手動で関連付ける必要もないという効果を奏する。
なお、上記実施の形態7では、ユーザ定義FBのダイアログを作成する手間を省くために、ユーザ定義FBの内部処理で使用するパラメータを設定するダイアログを自動的に提供したが、図33〜図37に示すように、ユーザ定義FBを使用する際に可変としたいパラメータのみをユーザ定義FBのダイアログから設定して、その他のパラメータはユーザ定義FBの内部処理を記述する際にFBのパラメータ設定ダイアログで設定し、ユーザ定義FBを使用する際には常に固定的な値としてもよい。
図33〜図37は、それぞれ、前述の図26のブロック図、図27の説明図、図28のブロック図、図29のフローチャート、図30の説明図に対応している。
図33において、ユーザ定義FBパラメータ設定手段作成手段308は、パラメータ情報取得手段311と関連したパラメータ情報使用設定指定手段312をさらに有する。
パラメータ情報使用設定指定手段312は、パラメータ情報取得手段311が取得した各パラメータに対して、ユーザ定義FBの内部処理の記述に使用されているFBの保持するパラメータを、ユーザ定義FBパラメータ設定手段301で設定するか否かのフラグを有する。
また、図36において、図29との相違点は、ステップS11とステップS12とに間にステップS11A(パラメータ情報使用設定指定手段312が、各パラメータに対して、設定フラグを有するようにするとともに、その設定フラグに「0」または「1」を設定する処理)が追加されていることのみである。
この場合、図35および図37に示すように、ステップS1、S2で前述と同様のユーザFBε(図28参照)を作成した場合について説明する。
まず、ステップS11(パラメータ情報取得手段311)において、以下の操作が実行される。
図34のように、FBφの有するパラメータφに関する情報として、データ型=BOOL、パラメータの名称=PARAMφ、GUI部品の属性=Edit Box、設定値=空欄、を取得し、定数FBの有するパラメータである定数値に関する情報として、データ型=BYTE、パラメータの名称=定数値、GUI部品の属性=Edit Box、設定値=123、を取得する。
以上の操作手順(ステップS11〜S14)により、図37に示すような結果となり、ユーザFBεのパラメータとして設定させたいパラメータのみを有するダイアログに関する処理を自動的に行うようにすることができる。
ユーザ定義FBパラメータ設定手段作成手段は、パラメータ情報使用設定指定手段をさらに有し、
また、パラメータ情報使用設定指定手段312は、パラメータ情報取得手段311が取得した各パラメータに対して、ユーザ定義FBの内部処理の記述に使用されているFBの保持するパラメータを、ユーザ定義FBパラメータ設定手段301で設定するか否かの設定フラグを有する。
なお、上記実施の形態8では、特定の処理をファンクションブロックという形態でカプセル化するというユーザ定義FBの性質を損なわずに、ユーザ定義FBのダイアログを作成する手間を省くために、ユーザ定義FBの内部処理で使用するパラメータのうちの、設定させるパラメータについてのみをダイアログで自動的に提供したが、カプセル化を実現するためには、ユーザ定義FBのパラメータのうちの、可変とさせないパラメータについては、ユーザ定義FBの内部処理を記述する際にFBのパラメータ設定ダイアログで設定を行う必要がある。
以下、図1、図20、図33および図36とともに、図38〜図40の説明図を参照しながら、この発明の実施の形態9について説明する。図38〜図40は、それぞれ、前述の図34、図22、図37に対応している。
この場合、パラメータ情報使用設定指定手段312(図33参照)は、パラメータ情報取得手段311が取得した各パラメータに対して、ユーザ定義FBの内部処理の記述に使用されているFBのFBパラメータ設定手段で設定した値を、ユーザ定義FBパラメータ設定手段301で設定するパラメータのデフォルト値として使用するか否かのデフォルト値フラグ(図38参照)をさらに有する。
図39は、ユーザ定義FBダイアログ編集領域7において、パラメータPARAMφ(または、PARAMψ)の値をユーザ定義FBのダイアログで設定するか否か、また設定するとした場合には、FBのダイアログで設定した値をデフォルト値として使用するか否か、を設定するためのパラメータ属性設定ダイアログ19を表示する状態を示している。
ただし、ユーザFBεの内部処理の記述に用いるFBφのパラメータPARAMφのみをユーザFBεパラメータ設定ダイアログ12で設定し、かつ、ユーザ定義FBのダイアログでデフォルト値を表示させたいので、図39(図40)に示すように、ユーザ定義FBダイアログ編集領域7(FBεパラメータ設定ダイアログ12)上のPARAMφでは、値「456」を設定する。また、定数FBのパラメータ定数値は固定的としたいので、定数FBのパラメータ設定ダイアログでは、値「123」を設定する。
さらに、パラメータを有するFBにおいても、前述の実施の形態7と同様に、そのパラメータに関する詳細情報(図27参照)を保持するようにしておく。
また、PARAMψはユーザ定義FBのダイアログで設定するものとし、パラメータ属性設定ダイアログ19においては、図39内の上段に示すように、チェックボックスにチェックを入れる。ここで、チェックを入れた場合には、図39内の上段に示すように、さらに、FBのダイアログで設定した値をデフォルト値として使用するか否か、を設定するためのチェックボックスが表示されるので、これにもチェックを入れる。
以下、図20内のステップS3〜S5を実行することにより、図40に示すような状態となる。
また、パラメータ情報使用設定指定手段312は、パラメータ情報取得手段311が取得した各パラメータに対して、ユーザ定義FBの内部処理の記述に使用されているFBのFBパラメータ設定手段で設定した値を、ユーザ定義FBパラメータ設定手段301で設定するパラメータのデフォルト値として使用するか否かのデフォルト値フラグをさらに有する。
これにより、前述と同様に、ユーザ定義FBの内部処理で使用するパラメータを設定するダイアログを自動的に提供可能となる。
Claims (12)
- ファンクションまたはファンクションブロック(以下、FBという)が有するパラメータを、ダイアログボックスからなる設定手段に記述することにより設定するプログラム支援装置であって、
予め定義されたFBを組み合わせて新たなFBを定義したユーザ定義FBを作成するユーザ定義FB作成手段と、
前記予め定義されたFBが有するパラメータを設定するFBパラメータ設定手段と、
前記ユーザ定義FBを構成している予め定義されたFBが有するパラメータを設定する前記FBパラメータ設定手段を利用して、前記ユーザ定義FBが有するパラメータを設定するユーザ定義FBパラメータ設定手段と、
前記ユーザ定義FBパラメータ設定手段により設定されたユーザ定義FBパラメータを保持するユーザ定義FBパラメータ設定値保持手段と、
前記ユーザ定義FBパラメータに基づいて、前記ユーザ定義FBを用いて記述されたプログラムを実行するために、前記ユーザ定義FBのコード化を行うユーザ定義FB処理実行コード生成手段と
を備えたことを特徴とするプログラム作成支援装置。 - 前記ユーザ定義FBパラメータ設定手段は、前記ユーザ定義FBを構成している予め定義されたFBが有するパラメータを設定するFBパラメータ設定手段を表示し、この表示されたFBパラメータ設定手段に記述したパラメータを、ユーザ定義パラメータとして設定することを特徴とする請求項1に記載のプログラム作成支援装置。
- 前記ユーザ定義FBパラメータ設定手段は、FBパラメータ設定手段選択手段を備え、
前記FBパラメータ設定手段選択手段は、前記ユーザ定義FBを構成している予め定義されたFBが有するパラメータを設定するFBパラメータ設定手段が複数存在する場合に、複数のFBパラメータ設定手段のうちからいずれかを選択して、前記ユーザ定義FBパラメータ設定手段として用いることを特徴とする請求項2に記載のプログラム作成支援装置。 - 前記ユーザ定義FB作成手段は、FBパラメータ設定手段指定手段を備え、
前記FBパラメータ設定手段指定手段は、前記ユーザ定義FBを構成している予め定義されたFBが有するパラメータを設定するFBパラメータ設定手段が複数存在する場合に、複数のFBパラメータ設定手段のうちから、前記ユーザ定義FBパラメータ設定手段として用いるFBパラメータ設定手段を指定し、
前記FBパラメータ設定手段選択手段は、複数のFBパラメータ設定手段のうちの、前記FBパラメータ設定手段指定手段により指定されたFBパラメータ設定手段のみを表示することを特徴とする請求項3に記載のプログラム作成支援装置。 - 前記ユーザ定義FB作成手段は、前記ユーザ定義FBパラメータ設定手段を作成するためのユーザ定義FBパラメータ設定手段作成手段を備え、
前記ユーザ定義FBパラメータ設定手段作成手段は、
前記ユーザ定義FBの処理内容に関連するパラメータを取得するパラメータ取得手段と、
前記ユーザ定義FBパラメータ設定手段作成手段によって作成された前記ユーザ定義FBパラメータ設定手段の各パラメータ設定要素と前記パラメータ取得手段により取得したパラメータとを関連付けるパラメータ関連付け設定手段とを有することを特徴とする請求項1に記載のプログラム作成支援装置。 - 前記パラメータ取得手段は、前記ユーザ定義FBを構成している予め定義されたFBのうち、パラメータを保持するFBから該パラメータを取得することを特徴とする請求項5に記載のプログラム作成支援装置。
- 前記ユーザ定義FB作成手段は、前記ユーザ定義FBパラメータ設定手段を作成するためのユーザ定義FBパラメータ設定手段作成手段を備え、
前記ユーザ定義FBパラメータ設定手段作成手段は、ユーザ定義FBの処理内容に関連するパラメータを取得するパラメータ情報取得手段を有し、
前記ユーザ定義FBの処理内容に関連するパラメータは、該パラメータの値に関するパラメータ値情報と、該パラメータを設定するためのGUI情報とを有し、
前記パラメータ情報取得手段は、前記ユーザ定義FBの処理内容に関連するパラメータを、前記パラメータ値情報および前記GUI情報の形式で取得し、
前記ユーザ定義FBパラメータ設定手段は、
前記パラメータ情報取得手段が取得した前記GUI情報に基づいて設定ダイアログを表示するとともに、
前記パラメータ情報取得手段が取得した前記パラメータ値情報に基づいて設定されたパラメータ値が正しいか否かを判定することを特徴とする請求項1に記載のプログラム作成支援装置。 - 前記ユーザ定義FBを構成している予め定義されたFBのうち、パラメータを保持するFBは、該パラメータに関して、該パラメータの値に関するパラメータ値情報と、該パラメータを設定するためのGUI情報とを有することを特徴とする請求項7に記載のプログラム作成支援装置。
- 前記パラメータ値情報は、
該パラメータのデータ型と、
該パラメータの上限値と、
該パラメータの下限値と、
該パラメータのうちの選択可能な値の一覧と、
のうちの少なくとも1つを有することを特徴とする請求項7または請求項8に記載のプログラム作成支援装置。 - 前記GUI情報は、少なくとも、
該パラメータの名称と、
前記ユーザ定義FBのダイアログ上で表示する際のGUI部品の属性と、
を有することを特徴とする請求項7から請求項9までのいずれか1項に記載のプログラム作成支援装置。 - 前記ユーザ定義FBパラメータ設定手段作成手段は、パラメータ情報使用設定指定手段をさらに有し、
前記パラメータ情報使用設定指定手段は、前記パラメータ情報取得手段が取得した各パラメータに対して、前記ユーザ定義FBを構成している予め定義されたFBの保持するパラメータを、前記ユーザ定義FBパラメータ設定手段で設定するか否かのフラグを有することを特徴とする請求項7から請求項10までのいずれか1項に記載のプログラム作成支援装置。 - 前記パラメータ情報使用設定指定手段は、前記パラメータ情報取得手段が取得した各パラメータに対して、前記ユーザ定義FBを構成している予め定義されたFBのFBパラメータ設定手段で設定した値を、前記ユーザ定義FBパラメータ設定手段で設定するパラメータのデフォルト値として使用するか否かのフラグをさらに有することを特徴とする請求項11に記載のプログラム作成支援装置。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007040550A JP4302146B2 (ja) | 2007-02-21 | 2007-02-21 | プログラム作成支援装置 |
KR1020070036905A KR100918350B1 (ko) | 2007-02-21 | 2007-04-16 | 프로그램 작성 지원 장치 및 프로그램 실행 장치 |
TW096113292A TWI339811B (en) | 2007-02-21 | 2007-04-16 | Program creation supporting device and program executing device |
CN2007101040699A CN101251751B (zh) | 2007-02-21 | 2007-05-21 | 程序编制支援装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007040550A JP4302146B2 (ja) | 2007-02-21 | 2007-02-21 | プログラム作成支援装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008204237A JP2008204237A (ja) | 2008-09-04 |
JP4302146B2 true JP4302146B2 (ja) | 2009-07-22 |
Family
ID=39781668
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007040550A Expired - Fee Related JP4302146B2 (ja) | 2007-02-21 | 2007-02-21 | プログラム作成支援装置 |
Country Status (4)
Country | Link |
---|---|
JP (1) | JP4302146B2 (ja) |
KR (1) | KR100918350B1 (ja) |
CN (1) | CN101251751B (ja) |
TW (1) | TWI339811B (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8843885B2 (en) | 2009-12-28 | 2014-09-23 | Mitsubishi Electric Corporation | Program creation support device |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012104959A1 (ja) * | 2011-01-31 | 2012-08-09 | 三菱電機株式会社 | モーションsfcプログラム部品作成装置 |
JP5025833B1 (ja) * | 2011-09-16 | 2012-09-12 | 三菱電機株式会社 | シーケンスプログラム作成装置 |
JP6017294B2 (ja) * | 2012-12-13 | 2016-10-26 | アズビル株式会社 | プログラミング方法および装置 |
JP6121706B2 (ja) * | 2012-12-13 | 2017-04-26 | アズビル株式会社 | プログラミング方法および装置 |
JP5769900B2 (ja) | 2013-03-29 | 2015-08-26 | 三菱電機株式会社 | シーケンスプログラム部品作成プログラムおよびシーケンスプログラム部品作成装置 |
KR102072759B1 (ko) * | 2018-03-28 | 2020-02-03 | 미쓰비시덴키 가부시키가이샤 | 프로그래밍 지원 장치, 프로그래밍 지원 방법 및 프로그램 |
JP7024679B2 (ja) * | 2018-10-05 | 2022-02-24 | オムロン株式会社 | 開発支援プログラム、開発支援装置、および開発支援方法 |
US11921619B2 (en) | 2018-11-28 | 2024-03-05 | Trust Technology Co., Ltd. | Programming devices and programs for creating and editing programs used for image processing |
CN117561483A (zh) * | 2021-06-23 | 2024-02-13 | 三菱电机株式会社 | 程序创建辅助装置、程序创建辅助方法、程序创建辅助程序以及可编程逻辑控制器 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10301763A (ja) * | 1997-04-25 | 1998-11-13 | Mitsubishi Electric Corp | ディジタル制御装置のプログラム作成支援装置 |
JP2002196804A (ja) | 2000-12-25 | 2002-07-12 | Yaskawa Electric Corp | コントローラプログラム管理方法およびそのプログラム編集装置 |
JP2003223204A (ja) | 2002-01-29 | 2003-08-08 | Mitsubishi Electric Corp | プログラマブルコントローラのプログラミング方法およびその装置並びに記憶媒体 |
US7392165B2 (en) * | 2002-10-21 | 2008-06-24 | Fisher-Rosemount Systems, Inc. | Simulation system for multi-node process control systems |
JP4424198B2 (ja) | 2004-12-27 | 2010-03-03 | 三菱電機株式会社 | ファンクションブロックダイアグラムのプログラム装置 |
US8046739B2 (en) * | 2006-08-04 | 2011-10-25 | National Instruments Corporation | System and method for enabling a graphical program to propagate attributes of inputs and outputs of blocks |
-
2007
- 2007-02-21 JP JP2007040550A patent/JP4302146B2/ja not_active Expired - Fee Related
- 2007-04-16 TW TW096113292A patent/TWI339811B/zh not_active IP Right Cessation
- 2007-04-16 KR KR1020070036905A patent/KR100918350B1/ko active IP Right Grant
- 2007-05-21 CN CN2007101040699A patent/CN101251751B/zh not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8843885B2 (en) | 2009-12-28 | 2014-09-23 | Mitsubishi Electric Corporation | Program creation support device |
Also Published As
Publication number | Publication date |
---|---|
JP2008204237A (ja) | 2008-09-04 |
CN101251751B (zh) | 2011-06-15 |
KR100918350B1 (ko) | 2009-09-22 |
TW200836100A (en) | 2008-09-01 |
TWI339811B (en) | 2011-04-01 |
KR20080077887A (ko) | 2008-08-26 |
CN101251751A (zh) | 2008-08-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4302146B2 (ja) | プログラム作成支援装置 | |
US8181157B2 (en) | Custom language support for project documentation and editing | |
JP5084314B2 (ja) | 情報処理装置、情報処理方法、情報処理プログラム、及び情報処理プログラムを記録する記録媒体 | |
US8407661B2 (en) | Method and system for creating HMI applications for an automation process | |
JP3441309B2 (ja) | 図的プログラミングにおける機能オブジェクトの表示方法 | |
CN102880462A (zh) | 基于图模一体化生成组态监控对象的方法及装置 | |
CN113886362A (zh) | 基于工作流引擎及低代码平台的数据存储系统及存储方法 | |
JP5619328B1 (ja) | シーケンスプログラム作成支援装置 | |
US11914975B2 (en) | Customized software application template-based generator | |
JP5921765B2 (ja) | プログラムグラフ表示装置、プログラムグラフ表示方法およびプログラムグラフ表示プログラム | |
KR101350798B1 (ko) | 오프로스 플랫폼에 기반하여 제어되는 로봇 시스템 및 그 로봇 제어방법 | |
JP5026925B2 (ja) | 制御プログラム作成装置および制御プログラム作成方法 | |
JP5508078B2 (ja) | プログラム作成支援装置および方法ならびにプログラム | |
CN115495069A (zh) | 基于模型驱动的煤炭工业软件流程实现方法、装置及设备 | |
CN115422621A (zh) | 一种批量修改数模零件颜色的方法、系统、装置及存储介质 | |
JP6600953B2 (ja) | 情報処理装置、情報処理装置の制御方法、情報処理システム、およびプログラム | |
JP3835589B2 (ja) | 作画装置および作画プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
JP6794668B2 (ja) | プログラミング装置 | |
JP2010033500A (ja) | Guiデータ変換システムおよびguiデータ変換方法 | |
JP3326713B2 (ja) | 図的プログラミング方法 | |
JP2015148925A (ja) | プログラム生成装置および方法 | |
JP5510502B2 (ja) | 情報処理装置、情報処理方法、情報処理プログラム、及び情報処理プログラムを記録する記録媒体 | |
US9830053B2 (en) | Screen definition device for operating panel | |
JP2003223204A (ja) | プログラマブルコントローラのプログラミング方法およびその装置並びに記憶媒体 | |
JP6121706B2 (ja) | プログラミング方法および装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20081014 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081128 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20090127 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090312 |
|
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: 20090421 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090421 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120501 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4302146 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120501 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130501 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140501 Year of fee payment: 5 |
|
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 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |