JP2014228990A - Control program creation apparatus and control program creation method - Google Patents

Control program creation apparatus and control program creation method Download PDF

Info

Publication number
JP2014228990A
JP2014228990A JP2013106897A JP2013106897A JP2014228990A JP 2014228990 A JP2014228990 A JP 2014228990A JP 2013106897 A JP2013106897 A JP 2013106897A JP 2013106897 A JP2013106897 A JP 2013106897A JP 2014228990 A JP2014228990 A JP 2014228990A
Authority
JP
Japan
Prior art keywords
control program
language
file
program
routine
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.)
Pending
Application number
JP2013106897A
Other languages
Japanese (ja)
Inventor
将英 小野
Masahide Ono
将英 小野
淳一 川本
Junichi Kawamoto
淳一 川本
春美 寶蔵寺
Harumi Hozoji
春美 寶蔵寺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2013106897A priority Critical patent/JP2014228990A/en
Publication of JP2014228990A publication Critical patent/JP2014228990A/en
Pending legal-status Critical Current

Links

Images

Abstract

PROBLEM TO BE SOLVED: To optimize the configuration of a control program created in each of languages of a plurality of language types.SOLUTION: According to an embodiment, a control program creation apparatus comprises: a control program management unit that includes a compiler compiling a source file of a control program to convert the source file to an object file, and communication means transmitting the object file to a controller; and a database storing the source file and the object file and managing the source file and the object file according to key information set per control program. The database manages an object file constituting one program configuration unit by mixing the object file obtained by converting the source file created for a main routine in a first type language and the object file obtained by converting the source file for a sub routine in a second type language different from the first type language.

Description

本発明の実施形態は、制御プログラム作成装置および制御プログラム作成方法に関する。   Embodiments described herein relate generally to a control program creation device and a control program creation method.

システムプログラマ(ユーザ)は、プラントを自動運転するためのプログラムを、プラント制御装置のアプリケーションプログラム(以降、「制御プログラム」と呼ぶ)として、作成、試験、調整後、プラント運転者へ提供する。システムプログラマは、プラントを安全に制御するために、制御プログラムの調整時に制御プログラムのデバッグを行う。   A system programmer (user) provides a program for automatically operating a plant as an application program (hereinafter referred to as “control program”) of a plant control apparatus to a plant operator after creation, testing, and adjustment. The system programmer debugs the control program when adjusting the control program in order to control the plant safely.

制御プログラムは、例えばIEC61131-3で規定されているLD(ラダー)、FBD(ファンクションブロックダイアグラム)、SFC(シーケンシャルファンクションチャート)、およびST(ストラクチャードテキスト)などの言語を用いて記述される。制御プログラムのデバッグ時は、オンライン状態で、制御プログラム単位の置き換え、または接点(A接点やB接点など)や変数の値を強制変更することにより、制御プログラムの動作確認を行う。この動作確認のとき、システムプログラマに対して、誤操作を招かないように、制御プログラム作成装置がわかりやすく提示することが求められる。   The control program is described using languages such as LD (ladder), FBD (function block diagram), SFC (sequential function chart), and ST (structured text) defined in IEC61131-3, for example. When debugging the control program, the operation of the control program is checked by replacing the control program unit or forcibly changing the contact (A contact, B contact, etc.) or variable value in the online state. At the time of this operation check, it is required that the control program creation device be presented in an easy-to-understand manner to the system programmer so as not to cause erroneous operations.

特開2011−227823号公報JP 2011-227823 A

制御プログラム作成装置では、制御プログラムは、メインで実行する「PROGRAM」と、この「PROGRAM」からコールされて実行する少なくとも1つの「FUNCTION/FUNCTION BLOCK」とに分けられる。「PROGRAM」、および「FUNCTION/FUNCTION BLOCK」は、それぞれが1つのプログラム構成単位をなしてプラント制御装置にロードされて実行される。
「PROGRAM」や「FUNCTION/FUNCTION BLOCK」は、LD/FBD/SFCなどのグラフィック言語、またはSTなどのテキスト言語を用いて作成することができる。
In the control program creation device, the control program is divided into “PROGRAM” that is executed mainly and at least one “FUNCTION / FUNCTION BLOCK” that is called and executed from this “PROGRAM”. Each of “PROGRAM” and “FUNCTION / FUNCTION BLOCK” is loaded into the plant controller and executed as one program constituent unit.
“PROGRAM” and “FUNCTION / FUNCTION BLOCK” can be created using a graphic language such as LD / FBD / SFC or a text language such as ST.

現状では、グラフィック言語のプログラムとテキスト言語のプログラムとは別個のプログラム構成単位をなすプログラムとしている。このため、LD/FBD/SFCなどのグラフィック言語で作成されたプログラム(「PROGRAM」)からSTなどのテキスト言語で作成されたプログラムをコールする場合、テキスト言語のプログラムを「FUNCTION/FUNCTION BLOCK」とし、コール元とコール先のプログラムとを異なるプログラム構成単位として作成する必要がある。   At present, the graphic language program and the text language program are separate program constituent units. For this reason, when a program created in a text language such as ST is called from a program created in a graphic language such as LD / FBD / SFC (“PROGRAM”), the text language program is called “FUNCTION / FUNCTION BLOCK”. Therefore, it is necessary to create the call source program and the call destination program as different program structural units.

また、1つのプログラム構成単位内でルーチンをメインルーチンとサブルーチンに分けて、メインルーチンからサブルーチンをコールして実行するプログラムを作成する場合、メインルーチンとサブルーチンとは、同じグラフィック言語、または同じテキスト言語で作成する必要がある。   In addition, when a routine is divided into a main routine and a subroutine in one program configuration unit and a program is executed by calling the subroutine from the main routine, the main routine and the subroutine have the same graphic language or the same text language. It is necessary to create in.

そのため、例えば、メインで実行する「PROGRAM」の制御プログラムを視認性の高いグラフィック言語で作成し、プログラム内の各所で演算等を行う「FUNCTION/FUNCTION BLOCK」の制御プログラムをテキスト言語で作成すると、「FUNCTION/FUNCTION BLOCK」のプログラムの数が増えるにつれば、プログラム構成単位の数が増大してしまう。この場合、プログラム構成単位の数がプラント制御装置のプログラム構成単位の許容数をオーバーしてしまうので、プラント制御装置に適用できない。また、メインの「PROGRAM」の制御プログラムからコールされる「FUNCTION/FUNCTION BLOCK」の制御プログラムが大量に存在する場合、メインの「PROGRAM」の制御プログラムとの一元管理が困難になる。   Therefore, for example, if you create a control program for "PROGRAM" to be executed in the main in a highly visible graphic language, and create a control program for "FUNCTION / FUNCTION BLOCK" in a text language that performs operations etc. in various places in the program, As the number of “FUNCTION / FUNCTION BLOCK” programs increases, the number of program constituent units increases. In this case, since the number of program structural units exceeds the allowable number of program structural units of the plant control device, it cannot be applied to the plant control device. Further, when there are a large number of “FUNCTION / FUNCTION BLOCK” control programs called from the main “PROGRAM” control program, it becomes difficult to perform unified management with the main “PROGRAM” control program.

本発明は上記事情を鑑みて成されたものであって、複数種別のそれぞれの言語で作成された制御プログラムの構成を適正化することが可能な制御プログラム作成装置および制御プログラム作成方法を提供することを目的とする。   The present invention has been made in view of the above circumstances, and provides a control program creation device and a control program creation method capable of optimizing the configuration of a control program created in each of a plurality of types of languages. For the purpose.

実施形態に係る制御プログラム作成装置は、ネットワークを経由して、コントローラに制御プログラムのオブジェクトファイルを書き込む制御プログラム作成装置であって、制御プログラムのソースファイルをコンパイル処理してオブジェクトファイルに変換するコンパイラと、オブジェクトファイルをコントローラに送付する通信手段とを有する制御プログラム管理部と、ソースファイルとオブジェクトファイルとを格納し、ソースファイルとオブジェクトファイルとを制御プログラム毎に設定されたキー情報により管理するデータベースとを備える。データベースは、第1の種別の言語でメインルーチン用に作成したソースファイルを変換したオブジェクトファイルと、第1の種別と異なる第2の種別の言語でサブルーチン用に作成したソースファイルを変換したオブジェクトファイルとを混在させて1つのプログラム構成単位をなすオブジェクトファイルとして管理する。   A control program creation device according to an embodiment is a control program creation device that writes an object file of a control program to a controller via a network, and includes a compiler that compiles a control program source file and converts it into an object file A control program management unit having a communication means for sending the object file to the controller, a database for storing the source file and the object file, and managing the source file and the object file by key information set for each control program; Is provided. The database includes an object file obtained by converting a source file created for a main routine in a first type language, and an object file obtained by converting a source file created for a subroutine in a second type language different from the first type. Are mixed and managed as an object file forming one program configuration unit.

実施形態に係る制御プログラム作成装置の一構成例を概略的に示す図。The figure which shows schematically the example of 1 structure of the control program creation apparatus concerning embodiment. JISB3503(またはIEC61131-3)で規定されたグラフィック言語を使って作成した制御プログラムの一例を示す図。The figure which shows an example of the control program created using the graphic language prescribed | regulated by JISB3503 (or IEC61131-3). JISB3503(またはIEC61131-3)で規定されたテキスト言語を使って作成した制御プログラムの一例を示す図。The figure which shows an example of the control program created using the text language prescribed | regulated by JISB3503 (or IEC61131-3). 実施形態におけるプログラム構成単位のオブジェクトファイルの構成例を示す図。The figure which shows the structural example of the object file of the program structure unit in embodiment. 実施形態に係る制御プログラム作成装置のデータベースの一構成例を概略的に示す図。The figure which shows roughly the example of 1 structure of the database of the control program creation apparatus which concerns on embodiment. 実施形態における制御プログラムの異なる言語のルーチンを編集するための動作の一例を示すフローチャート。The flowchart which shows an example of the operation | movement for editing the routine of a different language of the control program in embodiment. 実施形態における制御プログラムの異なる言語のルーチンをコンパイルするための動作の一例を示すフローチャート。The flowchart which shows an example of the operation | movement for compiling the routine of the language from which the control program differs in embodiment. 実施形態における制御プログラムのインポート/エクスポートファイルの構成例を示す図。The figure which shows the structural example of the import / export file of the control program in embodiment. 実施形態における異なる言語のルーチンをもつ制御プログラムをエクスポートするための動作の一例を示すフローチャート。The flowchart which shows an example of the operation | movement for exporting the control program which has a routine of a different language in embodiment. 実施形態における異なる言語のルーチンをもつ制御プログラムをインポートするための動作の一例を示すフローチャート。The flowchart which shows an example of the operation | movement for importing the control program which has a routine of a different language in embodiment. 実施形態における異なる言語のルーチンをもつ制御プログラムを印刷するための動作の一例を示すフローチャート。6 is a flowchart illustrating an example of an operation for printing a control program having a routine of a different language in the embodiment. 従来のプログラム構成単位のオブジェクトファイルの構成例を示す図。The figure which shows the structural example of the object file of the conventional program structure unit.

以下、実施形態における制御プログラム作成装置について図面を参照して説明する。図1は、実施形態における制御プログラム作成装置の構成例を概略的に示す図である。
本実施形態における制御プログラム作成装置は、制御プログラム管理部110と、データベース150と、インポート/エクスポート部160と、制御プログラム印刷部170とを備えたコンピュータ100を備えている。また、制御プログラム作成装置は、コンピュータ100の入力装置としてのマウス12およびキーボード14と、コンピュータ100の出力装置としての表示装置16とを備えている。コンピュータ100とプラント制御装置のコントローラ200とはネットワーク300に接続されている。
Hereinafter, a control program creation device according to an embodiment will be described with reference to the drawings. FIG. 1 is a diagram schematically illustrating a configuration example of a control program creation device according to an embodiment.
The control program creation apparatus according to the present embodiment includes a computer 100 including a control program management unit 110, a database 150, an import / export unit 160, and a control program printing unit 170. In addition, the control program creation device includes a mouse 12 and a keyboard 14 as input devices of the computer 100 and a display device 16 as an output device of the computer 100. The computer 100 and the controller 200 of the plant control apparatus are connected to a network 300.

プラント制御装置のコントローラ200は、制御プログラムのオブジェクトファイルを格納するためのオブジェクトメモリ210と、これらの書き込み、読み出し、実行を行う標準処理部220を有している。さらに、オブジェクトメモリ210は、データメモリ212とコードメモリ214とを有している。   The controller 200 of the plant control apparatus has an object memory 210 for storing an object file of a control program, and a standard processing unit 220 for writing, reading, and executing these objects. Further, the object memory 210 has a data memory 212 and a code memory 214.

標準処理部220は、プログラムロードサーバ部222と、オブジェクトメモリ210に記録された制御プログラムを実行するためのプログラム実行処理部224と、制御対象であるプラントからのプロセス信号を制御プログラムに与えるためのプロセス入出力処理部226とを備える。   The standard processing unit 220 is a program load server unit 222, a program execution processing unit 224 for executing a control program recorded in the object memory 210, and a process signal for giving a process signal from a plant to be controlled to the control program. And a process input / output processing unit 226.

プログラムロードサーバ部222は、ネットワーク300を経由してコンピュータ100から送付された制御プログラムのオブジェクトファイルを、オブジェクトメモリ210のデータメモリ212およびコードメモリ214に配置する。   The program load server unit 222 arranges the object file of the control program sent from the computer 100 via the network 300 in the data memory 212 and the code memory 214 of the object memory 210.

コンピュータ100は、システムプログラマが制御プログラムを作成するための制御プログラム管理部110と、制御プログラムを格納するデータベース150とを備える。
制御プログラム管理部110は、グラフィック言語編集画面111と、テキスト言語編集画面112と、プログラムコンパイラ113と、プログラムロードクライアント部114とを備えている。
The computer 100 includes a control program management unit 110 for a system programmer to create a control program, and a database 150 for storing the control program.
The control program management unit 110 includes a graphic language editing screen 111, a text language editing screen 112, a program compiler 113, and a program load client unit 114.

グラフィック言語編集画面111は、グラフィック言語の制御プログラムを編集するための画面である。テキスト言語編集画面112は、テキスト言語の制御プログラムを編集するための画面である。プログラムコンパイラ113は、制御プログラムのソースファイルをオブジェクトファイルに変換するためのコンパイル処理を行う。プログラムロードクライアント部114は、プログラムコンパイラ113によってソースファイルから変換されたオブジェクトファイルをコントローラ200へ送付する通信手段である。   The graphic language editing screen 111 is a screen for editing a graphic language control program. The text language editing screen 112 is a screen for editing a text language control program. The program compiler 113 performs a compile process for converting a control program source file into an object file. The program load client unit 114 is a communication unit that sends the object file converted from the source file by the program compiler 113 to the controller 200.

インポート/エクスポート部160は、制御プログラムを他のプラント制御装置の間でインポートまたはエクスポートする。制御プログラム印刷部170は、制御プログラムの印刷処理を行う。   The import / export unit 160 imports or exports a control program between other plant control apparatuses. The control program printing unit 170 performs control program printing processing.

プログラムコンパイラ113は、グラフィック言語で作成された制御プログラムのソースファイルをオブジェクトファイルに変換するためのグラフィック言語コンパイラ113aと、テキスト言語で作成された制御プログラムのソースファイルをオブジェクトファイルに変換するためのテキスト言語コンパイラ113bとを備えている。   The program compiler 113 is a graphic language compiler 113a for converting a control program source file created in a graphic language into an object file, and a text for converting a control program source file created in a text language into an object file. A language compiler 113b.

データベース150は、制御プログラムのソースファイルを格納するためのソースファイル部152と、制御プログラムのオブジェクトファイルを格納するためのオブジェクトファイル部154とを備えている。   The database 150 includes a source file unit 152 for storing a control program source file and an object file unit 154 for storing a control program object file.

図2に、JISB3503(またはIEC61131-3)で規定されたグラフィック言語を使って作成した制御プログラムの一例を示す。図2に示した制御プログラムは、表示装置16の画面上で、プログラム言語に対応する図を組み合わせることによってその構造を組み立てることができる。例えば、図2に示したC1〜C7のそれぞれは、JISB3503(またはIEC61131-3)で規定されたグラフィック言語で記述された命令語に対応している。
図3に、JISB3503(またはIEC61131-3)で規定されたST言語(テキスト言語)を使って作成した制御プログラムの一例を示す。
FIG. 2 shows an example of a control program created using a graphic language defined by JISB3503 (or IEC61131-3). The control program shown in FIG. 2 can be assembled on the screen of the display device 16 by combining diagrams corresponding to the program language. For example, each of C1 to C7 shown in FIG. 2 corresponds to an instruction word described in a graphic language defined by JISB3503 (or IEC61131-3).
FIG. 3 shows an example of a control program created using the ST language (text language) defined by JISB3503 (or IEC61131-3).

このように、システムプログラマは、グラフィック言語に対応する図を組み立てる、もしくはテキスト入力により制御プログラムのソースファイルを作成する。システムプログラマは、ソースファイルをプログラムコンパイラ113によってコンパイルして、オブジェクトファイルを作成する。   Thus, the system programmer assembles a diagram corresponding to the graphic language, or creates a control program source file by text input. The system programmer compiles the source file with the program compiler 113 to create an object file.

次に、制御プログラムの各ルーチンを異なる言語を用いて作成する機能について説明する。
図12は、従来のプログラム構成単位のオブジェクトファイルの構成例を示す図である。図12に示すように、1つのプログラム構成単位をなす「PROGRAM」のオブジェクトファイルは、メインルーチンのオブジェクトとサブルーチンのオブジェクトとで構成するが、従来では、メインルーチンでのオブジェクトの作成に用いた言語と、少なくとも1つのサブルーチンのオブジェクトの作成に用いた言語とは共通している。このような「PROGRAM」の構成において、テキスト言語で作成したプログラムを用いる場合には、図12に示すように、この「PROGRAM」とは異なるプログラム構成単位をなす「FUNCTION/FUNCTION BLOCK」のプログラムのメインルーチンとしている。
Next, a function for creating each routine of the control program using a different language will be described.
FIG. 12 is a diagram showing a configuration example of an object file in a conventional program configuration unit. As shown in FIG. 12, an object file of “PROGRAM” that constitutes one program unit is composed of a main routine object and a subroutine object. Conventionally, a language used for creating an object in the main routine is used. And the language used to create the object of at least one subroutine. In the case of using a program created in a text language in such a “PROGRAM” configuration, as shown in FIG. 12, a “FUNCTION / FUNCTION BLOCK” program having a different program configuration unit from this “PROGRAM” The main routine.

図4は、実施形態におけるプログラム構成単位のオブジェクトファイルの構成例を示す図である。
図4に示した例では、ある制御プログラムのメインルーチン用にグラフィック言語で作成したソースファイルを変換したオブジェクト、サブルーチンA,B用にグラフィック言語で作成したソースファイルを変換したオブジェクト、および、サブルーチンY用にテキスト言語で作成したソースファイルを変換したオブジェクトを混在させて1つのプログラム構成単位をなすオブジェクトファイルとして結合して構成する。
FIG. 4 is a diagram illustrating a configuration example of an object file in a program configuration unit in the embodiment.
In the example shown in FIG. 4, an object obtained by converting a source file created in a graphic language for a main routine of a control program, an object obtained by converting a source file created in a graphic language for subroutines A and B, and a subroutine Y For this purpose, objects obtained by converting source files created in a text language are mixed and combined as an object file forming one program configuration unit.

このような構成とすることで、1つのプログラム構成単位をなすメインルーチンとサブルーチンとを異なる言語を用いて構成することができる。図4に示した例では、「PROGRAM」の構成において、メインルーチンをグラフィック言語で作成している場合で、テキスト言語で作成したプログラムを用いる場合には、同じ「PROGRAM」内にテキスト言語によるサブルーチンとして用いればよい。つまり、図12に示した例と比較して、異なるプログラム構成単位をなす「FUNCTION/FUNCTION BLOCK」のプログラムの数を減らすことができる。つまり、言語の違いに起因してプログラム構成単位の数を増加させる必要がなくなるので、制御プログラムの数をプラント制御装置のプログラム構成単位の許容数の範囲内に抑えることができる。   With such a configuration, a main routine and a subroutine constituting one program configuration unit can be configured using different languages. In the example shown in FIG. 4, when the main routine is created in the graphic language and the program created in the text language is used in the “PROGRAM” configuration, the subroutine in the text language is included in the same “PROGRAM”. May be used. That is, compared with the example shown in FIG. 12, the number of “FUNCTION / FUNCTION BLOCK” programs forming different program structural units can be reduced. That is, since it is not necessary to increase the number of program constituent units due to the difference in language, the number of control programs can be suppressed within the allowable number of program constituent units of the plant control apparatus.

次に、異なる言語で作成された制御プログラムのルーチンをコール(指定)する機能について説明する。
メインルーチンは、制御プログラムの新規作成時にグラフィック言語、またはテキスト言語の何れかが指定されて作成される。
メインルーチンからサブルーチンへのコールは、サブコール命令にて行う。メインルーチンでは、任意のプログラム位置にて、グラフィック言語専用のサブコール命令、またはテキスト言語専用のサブコール命令を配置する。
Next, a function for calling (specifying) a routine of a control program created in a different language will be described.
The main routine is created by designating either a graphic language or a text language when a new control program is created.
A call from the main routine to the subroutine is performed by a subcall instruction. In the main routine, a subcall instruction dedicated to the graphic language or a subcall instruction dedicated to the text language is arranged at an arbitrary program position.

本実施形態では、グラフィック言語で作成されたソースファイルを変換したオブジェクトファイルが対応するサブルーチンへのコールは、グラフィック言語のサブルーチン専用のサブコール命令を使用する。また、テキスト言語で作成されたソースファイルを変換したオブジェクトファイルが対応するサブルーチンへのコールは、テキスト言語のサブルーチン専用のサブコール命令を使用する。   In the present embodiment, a call to a subroutine corresponding to an object file obtained by converting a source file created in a graphic language uses a subcall instruction dedicated to the graphic language subroutine. In addition, a call to a subroutine corresponding to an object file obtained by converting a source file created in a text language uses a subcall instruction dedicated to the text language subroutine.

例えば、図4に示したメインルーチンからサブルーチンA,Bへのコールには、グラフィック言語サブルーチン専用のサブコールA,Bを使用する。また、図4に示したメインルーチンからサブルーチンYへのコールには、テキスト言語サブルーチン専用のサブコールYを使用する。   For example, the sub-calls A and B dedicated to the graphic language subroutine are used for the call from the main routine shown in FIG. 4 to the subroutines A and B. For the call from the main routine shown in FIG. 4 to the subroutine Y, the subcall Y dedicated to the text language subroutine is used.

図5に、データベース150の一構成例を示す。データベース150のソースファイル部152には、制御プログラムのソースファイルが記録されている。ソースファイル部152は、制御プログラム情報152Aと、ルーチン情報152Bと、グラフィック言語のプログラムソース152Cと、テキスト言語のプログラムソース152Dとで構成される。   FIG. 5 shows a configuration example of the database 150. A source file of the control program is recorded in the source file portion 152 of the database 150. The source file unit 152 includes control program information 152A, routine information 152B, a graphic language program source 152C, and a text language program source 152D.

図6に示した例では、1つの制御プログラム情報152Aに対するルーチン情報152Bとグラフィック言語のプログラムソース152Cと、テキスト言語のプログラムソース152Dとは複数のデータで構成される。ルーチン情報152Bは図4に示したような1つのプログラム構成単位内のルーチン毎に設けられる。ルーチン情報152Bとグラフィック言語のプログラムソース152Cと、テキスト言語のプログラムソース152Dとを階層構造で管理している。最上位階層を制御プログラム情報152Aとし、1つの制御プログラムに対して、固有の1つのキー情報を割り当てる。制御プログラム情報152Aには、固有のキー情報と、プログラム名と、プログラム種別とが含まれる。キー情報は、例えば、数字や文字を組み合わせた情報である。プログラム種別とは、例えば図4に示した「PROGRAM」や「FUNCTION/FUNCTION BLOCK」である。   In the example shown in FIG. 6, the routine information 152B for one control program information 152A, the graphic language program source 152C, and the text language program source 152D are composed of a plurality of data. The routine information 152B is provided for each routine in one program configuration unit as shown in FIG. The routine information 152B, graphic language program source 152C, and text language program source 152D are managed in a hierarchical structure. The highest hierarchy is the control program information 152A, and one unique key information is assigned to one control program. The control program information 152A includes unique key information, a program name, and a program type. The key information is information combining numbers and characters, for example. The program type is, for example, “PROGRAM” or “FUNCTION / FUNCTION BLOCK” shown in FIG.

制御プログラム情報152Aより1階層下のルーチン情報152Bは、このキー情報で制御プログラム情報152Aと関連付けられる。
ルーチン情報152Bは、メインルーチンおよびサブルーチンの情報を管理し、サブキー情報と、ルーチン名と、言語種別(グラフィック言語またはテキスト言語)と、制御プログラム情報152Aのキー情報を参照するための参照キー情報とが含まれる。ルーチン情報152Bのサブキー情報は、例えば制御プログラムのルーチン情報152Bごとに付与された固有の情報である。
Routine information 152B that is one layer below control program information 152A is associated with control program information 152A by this key information.
The routine information 152B manages information on the main routine and the subroutine, and includes sub key information, routine name, language type (graphic language or text language), and reference key information for referring to key information of the control program information 152A. included. The sub key information of the routine information 152B is unique information given to each routine information 152B of the control program, for example.

また、ルーチン情報152Bよりさらに1階層下のグラフィック言語のプログラムソース152Cと、テキスト言語のプログラムソース152Dとは、サブキー情報でルーチン情報152Bと関連付けられる。プログラムソース152Cのサブキー情報は、例えば制御プログラムの命令語ごとに付与された固有の情報である。   The graphic language program source 152C and the text language program source 152D, which are one level lower than the routine information 152B, are associated with the routine information 152B by subkey information. The subkey information of the program source 152C is unique information given to each instruction word of the control program, for example.

グラフィック言語のプログラムソース152Cは、グラフィック言語の各命令語を管理し、サブキー情報と、グラフィック言語の命令語位置情報と、グラフィック言語の命令語コードと、ルーチン情報152Bのサブキー情報を参照するための参照キー情報とを含む。
テキスト言語のプログラムソース152Dは、各プログラムテキストを管理し、サブキー情報と、プログラムテキストと、ルーチン情報152Bのサブキーを参照するための参照キー情報とを含む。プログラムソース152Dのサブキー情報は、例えば制御プログラムのプログラムテキストごとに付与された固有の情報である。
The graphic language program source 152C manages each instruction word in the graphic language and refers to the sub key information, the instruction word position information in the graphic language, the instruction word code in the graphic language, and the sub key information in the routine information 152B. Reference key information.
The text language program source 152D manages each program text, and includes subkey information, program text, and reference key information for referring to a subkey of the routine information 152B. The subkey information of the program source 152D is unique information given for each program text of the control program, for example.

本実施形態では、制御プログラム情報Aとルーチン情報152Bは、上位階層のキー情報と同じ情報をもつ下位階層の参照キー情報を関連付けることで管理する。
本実施形態では、ルーチン情報152Bと、グラフィック言語のプログラムソース152Cと、テキスト言語のプログラムソース152Dは、上位階層のサブキー情報と同じ情報をもつ下位階層の参照キー情報を関連付けることで管理する。これにより各ルーチンのプログラムソースを言語の種別に関わらず一元管理できる。
In the present embodiment, the control program information A and routine information 152B are managed by associating lower layer reference key information having the same information as the upper layer key information.
In this embodiment, the routine information 152B, the graphic language program source 152C, and the text language program source 152D are managed by associating lower layer reference key information having the same information as the upper layer sub key information. As a result, the program source of each routine can be centrally managed regardless of the language type.

オブジェクトファイル部154に格納された制御プログラム情報154Aは、各オブジェクトを管理し、キー情報と、プログラム名と、オブジェクトとを含む。このオブジェクトファイル部154に格納された制御プログラム情報154Aと、ソースファイル部152に格納された制御プログラム情報152Aとは、同じキー情報同士を関連付けることで管理される。   The control program information 154A stored in the object file unit 154 manages each object and includes key information, a program name, and an object. The control program information 154A stored in the object file unit 154 and the control program information 152A stored in the source file unit 152 are managed by associating the same key information.

このような階層構造を用いてソースファイルやオブジェクトファイルを管理する事で、異なる言語で生成されたソースファイルおよびこのソースファイルを変換したオブジェクトファイルを一元管理する事ができる。   By managing source files and object files using such a hierarchical structure, it is possible to centrally manage source files generated in different languages and object files converted from the source files.

上記コンピュータ100およびコントローラ200の動作について以下に説明する。システムプログラマは、表示装置16に表示されるグラフィック言語編集画面111またはテキスト言語編集画面112を使用して、制御プログラムを作成する。システムプログラマが制御プログラムを保存した時、その制御プログラムは、データベース150のソースファイル部152に格納され、かつ、そのソースファイルをプログラムコンパイラ113のグラフィック言語コンパイラ113aやテキスト言語コンパイラ113bでコンパイルしたオブジェクトファイルをデータベース150のオブジェクトファイル部154へ保存する。   The operations of the computer 100 and the controller 200 will be described below. The system programmer creates a control program using the graphic language editing screen 111 or the text language editing screen 112 displayed on the display device 16. When the system programmer saves the control program, the control program is stored in the source file section 152 of the database 150, and the source file is compiled by the graphic language compiler 113a or the text language compiler 113b of the program compiler 113. Are stored in the object file portion 154 of the database 150.

システムプログラマは、上記のように制御プログラムを作成、保存、コンパイルを実施した後に、ネットワーク300を経由してコントローラ200にオブジェクトファイルを書き込み、制御プログラムを実行させる。   After creating, storing, and compiling the control program as described above, the system programmer writes the object file to the controller 200 via the network 300 and causes the control program to be executed.

オブジェクトファイルをコントローラ200に書き込むとき、コンピュータ100およびコントローラ200は、プログラムロードクライアント部114がデータベース150のオブジェクトファイル部154からオブジェクトファイルを読み出して、ネットワーク300を経由して、コントローラ200のプログラムロードサーバ部222に送付する。プログラムロードサーバ部222は、オブジェクトファイルを受信して、オブジェクトメモリ210のデータメモリ212上およびコードメモリ214上に配置し、さらにプログラム実行処理部224がこれを実行して、制御プログラムが実行される。
本実施形態にかかる制御プログラム作成装置では、コントローラ200へ制御プログラムを書き込み、動作確認、および、デバックの動作を行う。
When the object file is written to the controller 200, the computer 100 and the controller 200 read the object file from the object file unit 154 of the database 150 by the program load client unit 114, and the program load server unit of the controller 200 via the network 300. To 222. The program load server unit 222 receives the object file, arranges it on the data memory 212 and the code memory 214 of the object memory 210, and the program execution processing unit 224 executes this to execute the control program. .
In the control program creation device according to the present embodiment, the control program is written into the controller 200, and the operation check and the debug operation are performed.

次に、制御プログラムにおける異なる言語のサブルーチンを編集することについて説明する。図6は、実施形態における制御プログラムの異なる言語のサブルーチンを編集するための動作の一例を示すフローチャートである。
各サブルーチンのプログラムの編集は、メインルーチンとは別の編集画面にて行う。図1に示したコンピュータ100の制御プログラム管理部110は、編集対象のサブルーチンに対応するソースファイルの作成に用いた言語種別を判別するために、編集対象のサブルーチンに対応するサブコール命令の言語種別を判別する(S1)。制御プログラム管理部110は、編集対象のサブルーチンに対応するルーチン情報の言語種別をソースファイル部152から読み出すことで、編集対象のサブルーチンに対応するソースファイルの作成に用いた言語種別を判別してもよい。
Next, editing a subroutine in a different language in the control program will be described. FIG. 6 is a flowchart illustrating an example of an operation for editing a subroutine of a different language of the control program in the embodiment.
The program of each subroutine is edited on an editing screen different from the main routine. The control program management unit 110 of the computer 100 shown in FIG. 1 determines the language type of the subcall instruction corresponding to the subroutine to be edited in order to determine the language type used to create the source file corresponding to the subroutine to be edited. Determine (S1). The control program management unit 110 reads out the language type of the routine information corresponding to the subroutine to be edited from the source file unit 152, so that the language type used to create the source file corresponding to the subroutine to be edited is discriminated. Good.

制御プログラム管理部110は、このサブコール命令がグラフィック言語専用のサブコール命令、例えば図4に示したサブコールA,Bである場合には(S2のYES)、グラフィック言語編集画面111を起動する(S3)。また、制御プログラム管理部110は、サブコール命令がテキスト言語専用のサブコール命令、例えば図4に示したサブコールYである場合には(S2のNO)、テキスト言語編集画面112を起動する(S4)。   When the subcall instruction is a subcall instruction dedicated to the graphic language, for example, subcalls A and B shown in FIG. 4 (YES in S2), the control program management unit 110 activates the graphic language editing screen 111 (S3). . Further, when the subcall instruction is a subcall instruction dedicated to the text language, for example, subcall Y shown in FIG. 4 (NO in S2), the control program management unit 110 activates the text language editing screen 112 (S4).

各編集画面は、サブルーチンの呼び出し元のメインルーチン情報(プログラム名、ルーチン名、言語種別)、サブコール命令のコール位置の情報、および自身のサブルーチン情報(ルーチン名、言語種別)を管理する。   Each editing screen manages main routine information (program name, routine name, language type) of a subroutine call source, call position information of a subcall instruction, and own subroutine information (routine name, language type).

次に、異なる言語を用いて作成したプログラムソースをコンパイルして1つのプログラム構成単位としてのオブジェクトファイルを生成する機能について説明する。図7は、実施形態における制御プログラムの異なる言語のルーチンをコンパイルするための動作の一例を示すフローチャートである。
図1に示したコンピュータ100の制御プログラム管理部110は、メインルーチン、またはサブルーチンのグラフィック言語編集画面111、またはテキスト言語編集画面112からプログラムのコンパイルを依頼された場合(S11)、プログラムコンパイラ113にコンパイル処理を移管する(S12)。プログラムコンパイラ113は、メインルーチンおよび各サブルーチンのうちコンパイル対象のルーチンを選択し(S13)、このルーチンに対応する制御プログラムの言語種別を判別する(S14)。
Next, a function of compiling program sources created using different languages and generating an object file as one program structural unit will be described. FIG. 7 is a flowchart illustrating an example of an operation for compiling a routine of a different language of the control program in the embodiment.
When the control program management unit 110 of the computer 100 shown in FIG. 1 is requested to compile the program from the graphic language editing screen 111 or the text language editing screen 112 of the main routine or subroutine (S11), the program compiler 113 The compilation process is transferred (S12). The program compiler 113 selects a routine to be compiled from the main routine and each subroutine (S13), and determines the language type of the control program corresponding to this routine (S14).

グラフィック言語のルーチンのプログラムであれば(S15のYES)、プログラムコンパイラ113は、グラフィック言語コンパイラ113aを呼び出す(S16)。また、テキスト言語のルーチンのプログラムであれば(S15のNO)、プログラムコンパイラ113は、テキスト言語コンパイラ113bを呼び出す(S17)。   If the program is a graphic language routine (YES in S15), the program compiler 113 calls the graphic language compiler 113a (S16). If the program is a text language routine (NO in S15), the program compiler 113 calls the text language compiler 113b (S17).

S16またはS17の後は、プログラムコンパイラ113は、言語種別を判別していない他のルーチンがあれば(S18のYES)、S13に戻る。また、言語種別を判別していない他のルーチンなければ(S18のNO),プログラムコンパイラ113は、全てのルーチンのコンパイル処理を一括して実行し、このコンパイル処理によって生成された各ルーチンのオブジェクトを、図4に示すように1つのプログラム構成単位をなすオブジェクトファイルとして結合する(S19)。   After S16 or S17, the program compiler 113 returns to S13 if there is another routine whose language type is not determined (YES in S18). If there is no other routine whose language type has not been determined (NO in S18), the program compiler 113 executes the compilation processing of all routines at once, and the object of each routine generated by this compilation processing is executed. As shown in FIG. 4, they are combined as an object file constituting one program structural unit (S19).

次に、異なる言語のルーチンをもつ制御プログラムを1つのプログラム構成単位として他のプラント制御装置用のコンピュータとの間でインポート/エクスポートする機能について説明する。
図8は、実施形態における制御プログラムのインポート/エクスポートファイルの構成例を示す図である。インポートファイルまたはエクスポートファイルは、プログラム構成単位ごとに1つのファイルとする。インポートファイルまたはエクスポートファイルは、制御プログラムのプログラム情報(プログラム名、プログラム種別)と、ルーチン情報(ルーチン数、ルーチン名、ルーチンの言語種別)と、プログラムソース情報(プログラムソースのサイズ、プログラムソース)とで構成する。
図8に示したように、グラフィック言語のプログラムソースは、グラフィック言語の命令語位置情報と命令語コードで構成する。また、テキスト言語のプログラムソースは、テキスト言語のプログラムテキストで構成する。
Next, a function of importing / exporting a control program having a routine in a different language as a program structural unit with another computer for a plant control apparatus will be described.
FIG. 8 is a diagram illustrating a configuration example of an import / export file of a control program in the embodiment. One import file or one export file is assumed for each program configuration unit. The import file or export file consists of control program program information (program name, program type), routine information (number of routines, routine name, routine language type), and program source information (program source size, program source). Configure.
As shown in FIG. 8, the graphic language program source includes graphic language instruction word position information and instruction word codes. The text language program source is composed of a text language program text.

図9は、実施形態における異なる言語のルーチンをもつ制御プログラムをエクスポートするための動作の一例を示すフローチャートである。
図1に示したコンピュータ100のインポート/エクスポート部160は、エクスポート時、データベース150のソースファイル部152から制御プログラム情報と、関連するルーチン情報と、プログラムソース情報とを取得する(S21)。
FIG. 9 is a flowchart illustrating an example of an operation for exporting a control program having routines of different languages in the embodiment.
The import / export unit 160 of the computer 100 shown in FIG. 1 acquires control program information, related routine information, and program source information from the source file unit 152 of the database 150 at the time of export (S21).

インポート/エクスポート部160は、取得した制御プログラムのプログラム名、プログラム種別を判別する(S22)。インポート/エクスポート部160は、取得した制御プログラムのルーチン数を判別する(S23)。インポート/エクスポート部160は、各ルーチンのルーチン名、言語種別を判別する(S24)。   The import / export unit 160 determines the program name and program type of the acquired control program (S22). The import / export unit 160 determines the number of routines of the acquired control program (S23). The import / export unit 160 determines the routine name and language type of each routine (S24).

インポート/エクスポート部160は、各プログラムソースのサイズを判別する(S25)。インポート/エクスポート部160は、各プログラムソースのソース情報を取得する(S26)。   The import / export unit 160 determines the size of each program source (S25). The import / export unit 160 acquires source information of each program source (S26).

インポート/エクスポート部160は、S22からS26までの判別又は取得結果に基づいて、図8に示すように制御プログラム情報と、ルーチン情報と、プログラムソース情報とを配列したエクスポートファイルを生成する(S27)。
インポート/エクスポート部160は、この生成したエクスポートファイルを他のプラント制御装置用のコンピュータに出力する(S28)。
The import / export unit 160 generates an export file in which control program information, routine information, and program source information are arranged as shown in FIG. 8 based on the discrimination or acquisition result from S22 to S26 (S27). .
The import / export unit 160 outputs the generated export file to a computer for another plant control device (S28).

図10は、実施形態における異なる言語のルーチンをもつ制御プログラムをインポートするための動作の一例を示すフローチャートである。
インポート/エクスポート部160は、他のプラント制御装置用のコンピュータからインポートファイルを入力する(S31)。
FIG. 10 is a flowchart illustrating an example of an operation for importing a control program having routines of different languages in the embodiment.
The import / export unit 160 inputs an import file from a computer for another plant control device (S31).

インポート/エクスポート部160は、入力したインポートファイルの制御プログラム情報、ルーチン情報、およびプログラムソース情報を分解する(S32)。具体的には、インポート/エクスポート部160は、制御プログラム情報のプログラム名、プログラム種別、ルーチン数を判別する。また、インポート/エクスポート部160は、ルーチン情報のルーチン名、言語種別を判別する。また、インポート/エクスポート部160は、入力したプログラムソース情報の命令語位置情報、命令語コード、プログラムテキストを判別する。   The import / export unit 160 decomposes the control program information, routine information, and program source information of the input import file (S32). Specifically, the import / export unit 160 determines the program name, program type, and routine number of the control program information. Further, the import / export unit 160 determines the routine name and language type of the routine information. Further, the import / export unit 160 determines the instruction word position information, the instruction word code, and the program text of the input program source information.

インポート/エクスポート部160は、この分解した結果キー情報、サブキー情報、参照キー情報を付与してデータベース150のソースファイル部152に格納する(S33)。   The import / export unit 160 adds the result key information, subkey information, and reference key information obtained by the decomposition, and stores them in the source file unit 152 of the database 150 (S33).

以上の結果から明らかなように、本実施形態では、異なる言語種別のルーチンをもつ制御プログラムのプログラム情報、ルーチン情報およびプログラムソース情報を1つのファイルとしてシステムプログラマとの間でインポートまたはエクスポートすることができる。これにより、メインルーチンと複数のサブルーチンからなる制御プログラムのインポートファイルまたはエクスポートファイルを一元管理することができる。   As is clear from the above results, in this embodiment, program information, routine information, and program source information of a control program having routines of different language types can be imported or exported as one file with the system programmer. it can. Thereby, it is possible to centrally manage the import file or the export file of the control program comprising the main routine and a plurality of subroutines.

次に、異なる言語のルーチンをもつ制御プログラムを1つのプログラム構成単位として印刷する機能について説明する。
図11は、実施形態における異なる言語のルーチンをもつ制御プログラムを印刷するための動作の一例を示すフローチャートである。
図1に示したコンピュータ100の制御プログラム印刷部170は、制御プログラムの印刷の操作を受け付け、データベース150のソースファイル部152から印刷対象の制御プログラムの制御プログラム情報と、関連するルーチン情報、およびプログラムソース情報を取得する(S41)。
Next, a function for printing a control program having a routine in a different language as one program constituent unit will be described.
FIG. 11 is a flowchart illustrating an example of an operation for printing a control program having a routine of a different language in the embodiment.
The control program printing unit 170 of the computer 100 shown in FIG. 1 receives a control program printing operation, and from the source file unit 152 of the database 150, the control program information of the control program to be printed, related routine information, and the program Source information is acquired (S41).

制御プログラム印刷部170は、取得した制御プログラムのルーチンのいずれかを印刷対象のルーチンとして選択して(S42)、このルーチンの言語種別を判別する(S43)。
制御プログラム印刷部170は、ルーチンの言語種別がグラフィック言語であれば(S44のYES)、グラフィック言語のプログラムの印刷を実行する(S45)。
制御プログラム印刷部170は、ルーチンの言語種別がテキスト言語であれば(S44のNO)、グラフィック言語のプログラムの印刷を実行する(S46)。
The control program printing unit 170 selects one of the acquired control program routines as a routine to be printed (S42), and determines the language type of this routine (S43).
If the routine language type is graphic language (YES in S44), the control program printing unit 170 prints the graphic language program (S45).
If the language type of the routine is a text language (NO in S44), the control program printing unit 170 prints the graphic language program (S46).

制御プログラム印刷部170は、全ルーチンの印刷が終了していなければ(S47のNO)、S42に戻る。制御プログラム印刷部170は、全ルーチンの印刷が終了していれば(S47のYES)、一連の処理を終了する。
プログラムの印刷結果には、ヘッダ情報(プログラム名、ルーチン名、印刷日時、等)、およびフッタ情報(ページ番号、等)が印字される。
If the printing of all routines has not been completed (NO in S47), the control program printing unit 170 returns to S42. If the printing of all routines has been completed (YES in S47), the control program printing unit 170 ends the series of processes.
Header information (program name, routine name, printing date, etc.) and footer information (page number, etc.) are printed on the print result of the program.

以上の結果から明らかなように、本実施形態では、異なる言語種別のルーチンをもつ制御プログラムを1回の操作で印刷することができる。これにより、メインルーチンと複数のサブルーチンとの言語種別が異なっていても、これらのルーチンからなる制御プログラムの印刷結果を一元管理することができる。   As is clear from the above results, in this embodiment, a control program having a routine of a different language type can be printed by a single operation. As a result, even if the language types of the main routine and the plurality of subroutines are different, it is possible to centrally manage the printing results of the control program comprising these routines.

実施形態によれば、複数種別のそれぞれの言語で作成された制御プログラムの構成を適正化する制御プログラム作成装置および制御プログラム作成方法を提供することができる。   According to the embodiment, it is possible to provide a control program creation device and a control program creation method that optimize the configuration of a control program created in each of a plurality of types of languages.

なお、上記の各実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスクなど)、光ディスク(CD−ROM、DVDなど)、光磁気ディスク(MO)、半導体メモリなどの記憶媒体に格納して頒布することもできる。
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であっても良い。
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているOS(オペレーティングシステム)や、データベース管理ソフト、ネットワークソフト等のMW(ミドルウェア)等が上記実施形態を実現するための各処理の一部を実行しても良い。
さらに、各実施形態における記憶媒体は、コンピュータと独立した媒体に限らず、LANやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
また、記憶媒体は1つに限らず、複数の媒体から上記の各実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。なお、各実施形態におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、上記の各実施形態における各処理を実行するものであって、パソコン等の1つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。
また、各実施形態におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
Note that the methods described in the above embodiments are, as programs that can be executed by a computer, magnetic disks (floppy (registered trademark) disks, hard disks, etc.), optical disks (CD-ROMs, DVDs, etc.), magneto-optical disks. (MO), stored in a storage medium such as a semiconductor memory, and distributed.
In addition, as long as the storage medium can store a program and can be read by a computer, the storage format may be any form.
In addition, an OS (operating system) running on a computer based on an instruction of a program installed in the computer from a storage medium, MW (middleware) such as database management software, network software, and the like realize the above-described embodiment. A part of each process may be executed.
Furthermore, the storage medium in each embodiment is not limited to a medium independent of a computer, but also includes a storage medium that downloads and stores or temporarily stores a program transmitted via a LAN, the Internet, or the like.
Further, the number of storage media is not limited to one, and the case where the processing in each of the above embodiments is executed from a plurality of media is also included in the storage media in the present invention, and the media configuration may be any configuration. The computer in each embodiment executes each process in each of the above embodiments based on a program stored in a storage medium, and a single device such as a personal computer or a plurality of devices are connected to a network. Any configuration of the system or the like may be used.
In addition, the computer in each embodiment is not limited to a personal computer, and includes an arithmetic processing device, a microcomputer, and the like included in an information processing device, and is a generic term for devices and devices that can realize the functions of the present invention by a program. Yes.
Although several embodiments of the invention have been described, these embodiments are presented by way of example and are not intended to limit the scope of the invention. These novel embodiments can be implemented in various other forms, and various omissions, replacements, and changes can be made without departing from the scope of the invention. These embodiments and modifications thereof are included in the scope and gist of the invention, and are included in the invention described in the claims and the equivalents thereof.

12…マウス、14…キーボード、16…表示装置、100…コンピュータ、110…制御プログラム編集部、111…グラフィック言語編集画面、112…テキスト言語編集画面、113…プログラムコンパイラ、113a…グラフィック言語コンパイラ、113b…テキスト言語コンパイラ、114…プログラムロードクライアント部(通信部)、150…データベース、152…ソースファイル部、154…オブジェクトファイル部、160…インポート/エクスポート部、170…制御プログラム印刷部、200…コントローラ、210…オブジェクトメモリ、212…データメモリ、214…コードメモリ、220…標準処理部、222…プログラムロードサーバ部、224…プログラム実行処理部、226…プロセス入出力処理部、300…ネットワーク。   DESCRIPTION OF SYMBOLS 12 ... Mouse, 14 ... Keyboard, 16 ... Display apparatus, 100 ... Computer, 110 ... Control program edit part, 111 ... Graphic language edit screen, 112 ... Text language edit screen, 113 ... Program compiler, 113a ... Graphic language compiler, 113b ... text language compiler, 114 ... program load client part (communication part), 150 ... database, 152 ... source file part, 154 ... object file part, 160 ... import / export part, 170 ... control program printing part, 200 ... controller, 210 ... Object memory, 212 ... Data memory, 214 ... Code memory, 220 ... Standard processing unit, 222 ... Program load server unit, 224 ... Program execution processing unit, 226 ... Process input / output processing , 300 ... network.

Claims (8)

ネットワークを経由して、コントローラに制御プログラムのオブジェクトファイルを書き込む制御プログラム作成装置であって、
前記制御プログラムのソースファイルをコンパイル処理してオブジェクトファイルに変換するコンパイラと、前記オブジェクトファイルを前記コントローラに送付する通信手段とを有する制御プログラム管理部と、
前記ソースファイルと前記オブジェクトファイルとを格納し、前記ソースファイルと前記オブジェクトファイルとを前記制御プログラム毎に設定されたキー情報により管理するデータベースとを備え、
前記データベースは、
第1の種別の言語でメインルーチン用に作成したソースファイルを変換したオブジェクトファイルと、前記第1の種別と異なる第2の種別の言語でサブルーチン用に作成したソースファイルを変換したオブジェクトファイルとを混在させて1つのプログラム構成単位をなすオブジェクトファイルとして管理する
ことを特徴とする制御プログラム作成装置。
A control program creation device for writing an object file of a control program to a controller via a network,
A control program management unit having a compiler that compiles and converts the source file of the control program into an object file, and a communication unit that sends the object file to the controller;
A database for storing the source file and the object file, and managing the source file and the object file by key information set for each control program;
The database is
An object file obtained by converting a source file created for a main routine in a first type language, and an object file obtained by converting a source file created for a subroutine in a second type language different from the first type. A control program creation device characterized by being managed as an object file that is mixed and forms one program structural unit.
前記制御プログラム管理部は、
前記第1の種別の言語で作成したソースファイルを変換したオブジェクトファイルが対応するサブルーチンへの前記メインルーチンからのコールを前記第1の種別の言語用のサブコール命令を使用して行い、前記第2の種別の言語で作成したソースファイルを変換したオブジェクトファイルが対応するサブルーチンへの前記メインルーチンからのコールを前記第2の種別の言語用のサブコール命令を使用して行う
ことを特徴とする請求項1に記載の制御プログラム作成装置。
The control program management unit
A call from the main routine to a subroutine corresponding to an object file converted from a source file created in the first type language is performed using a subcall instruction for the first type language, and the second type The call from the main routine to the subroutine corresponding to the object file obtained by converting the source file created in the language of the type is performed using the subcall instruction for the language of the second type. The control program creation device according to 1.
前記データベースは、
前記制御プログラムの制御プログラム情報、ルーチン情報、前記第1または第2の種別で作成されたソースファイルを、前記制御プログラム情報を最も上位として前記ソースファイルを最も下位とした階層構造で管理し、
前記制御プログラム情報は、プログラム名と、プログラム種別の情報とを含み、
前記ルーチン情報は、ルーチン名と、前記ソースファイルの作成に用いた言語の種別の情報とを含み、
前記制御プログラム情報とルーチン情報とを前記キー情報で関連付け、
前記ルーチン情報と前記ソースファイルをルーチン毎に設定されたサブキー情報で関連付ける
ことを特徴とする請求項1に記載の制御プログラム作成装置。
The database is
Managing the control program information of the control program, routine information, the source file created in the first or second type in a hierarchical structure with the control program information as the highest and the source file as the lowest,
The control program information includes a program name and program type information,
The routine information includes a routine name and language type information used to create the source file,
The control program information and routine information are associated with the key information,
The control program creation device according to claim 1, wherein the routine information and the source file are associated with each other by subkey information set for each routine.
編集対象のサブルーチンに対応するソースファイルが前記第1の種別の言語で作成された場合は、この第1の種別の言語に対応した編集画面を起動し、前記編集対象のサブルーチンに対応するソースファイルが前記第2の種別の言語で作成された場合は、この第2の種別の言語に対応した編集画面を起動する
ことを特徴とする請求項1に記載の制御プログラム作成装置。
When the source file corresponding to the subroutine to be edited is created in the language of the first type, the editing screen corresponding to the language of the first type is activated, and the source file corresponding to the subroutine to be edited 2. The control program creation device according to claim 1, wherein an editing screen corresponding to the language of the second type is activated when the language is created in the language of the second type.
前記プログラム管理部のコンパイラは、
前記制御プログラムのルーチン毎に言語種別を判別し、この判別した言語に応じて前記制御プログラムのソースファイルをコンパイル処理してオブジェクトファイルに変換し、
前記コンパイラによってルーチン毎に変換されたオブジェクトファイルを1つのプログラム構成単位をなすオブジェクトファイルとして結合する
ことを特徴とする請求項1に記載の制御プログラム作成装置。
The compiler of the program management unit is:
Determine the language type for each routine of the control program, compile the source file of the control program according to the determined language and convert it into an object file,
2. The control program creation device according to claim 1, wherein the object file converted for each routine by the compiler is combined as an object file forming one program structural unit.
前記データベースが管理する制御プログラム情報、ルーチン情報、およびソースファイルを1つのファイルとして外部との間でインポートまたはエクスポートする手段をさらに備えた
ことを特徴とする請求項3に制御プログラム作成装置。
4. The control program creation device according to claim 3, further comprising means for importing or exporting control program information, routine information, and source files managed by the database as a single file.
前記制御プログラムのルーチン毎に言語種別を判別し、この判別した言語に応じて制御プログラムを印刷する手段をさらに備えた
ことを特徴とする請求項1に記載の制御プログラム作成装置。
2. The control program creation device according to claim 1, further comprising means for determining a language type for each routine of the control program and printing the control program according to the determined language.
ネットワークを経由して、コントローラに制御プログラムのオブジェクトファイルを書き込む制御プログラム作成装置に適用される制御プログラム作成方法であって、
制御プログラム管理部が前記制御プログラムのソースファイルをコンパイル処理してオブジェクトファイルに変換し、
前記制御プログラム管理部が前記オブジェクトファイルを前記コントローラに送付し、
データベースが前記ソースファイルと前記オブジェクトファイルとを格納し、前記ソースファイルと前記オブジェクトファイルとを前記制御プログラム毎に設定されたキー情報により管理し、
前記データベースが第1の種別の言語でメインルーチン用に作成したソースファイルを変換したオブジェクトファイルと、前記第1の種別と異なる第2の種別の言語でサブルーチン用に作成したソースファイルを変換したオブジェクトファイルとを混在させて1つのプログラム構成単位をなすオブジェクトファイルとして管理する
ことを特徴とする制御プログラム作成方法。
A control program creation method applied to a control program creation device for writing an object file of a control program to a controller via a network,
The control program management unit compiles and converts the control program source file into an object file,
The control program management unit sends the object file to the controller;
The database stores the source file and the object file, and manages the source file and the object file by key information set for each control program,
An object file obtained by converting a source file created for the main routine in the first type language by the database and a source file created for the subroutine in a second type language different from the first type A control program creation method characterized by managing files as object files that form a single program component unit.
JP2013106897A 2013-05-21 2013-05-21 Control program creation apparatus and control program creation method Pending JP2014228990A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013106897A JP2014228990A (en) 2013-05-21 2013-05-21 Control program creation apparatus and control program creation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013106897A JP2014228990A (en) 2013-05-21 2013-05-21 Control program creation apparatus and control program creation method

Publications (1)

Publication Number Publication Date
JP2014228990A true JP2014228990A (en) 2014-12-08

Family

ID=52128803

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013106897A Pending JP2014228990A (en) 2013-05-21 2013-05-21 Control program creation apparatus and control program creation method

Country Status (1)

Country Link
JP (1) JP2014228990A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018063594A (en) * 2016-10-13 2018-04-19 株式会社東芝 Client device, management device, and control system
CN113341864A (en) * 2021-06-07 2021-09-03 重庆高新技术产业研究院有限责任公司 PLC-based control similarity reversible logic system and analysis method thereof
CN115167325A (en) * 2022-08-23 2022-10-11 郑州华泰联合工业自动化有限公司 Intelligent processing control method, system, equipment and storage medium for cable

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2018063594A (en) * 2016-10-13 2018-04-19 株式会社東芝 Client device, management device, and control system
CN113341864A (en) * 2021-06-07 2021-09-03 重庆高新技术产业研究院有限责任公司 PLC-based control similarity reversible logic system and analysis method thereof
CN115167325A (en) * 2022-08-23 2022-10-11 郑州华泰联合工业自动化有限公司 Intelligent processing control method, system, equipment and storage medium for cable
CN115167325B (en) * 2022-08-23 2023-12-19 郑州华泰联合工业自动化有限公司 Intelligent processing control method, system, equipment and storage medium for cable

Similar Documents

Publication Publication Date Title
US20220222170A1 (en) Software development framework for a cloud computing platform
KR100661393B1 (en) Web site management system and method applying web programming environment
US20050065953A1 (en) System and method for changing defined elements in a previously compiled program using a description file
KR20090120481A (en) A consistent method system and computer program for developing software asset based solutions
JP2004295398A (en) Compiler, method for compiling and program developing tool
CN110059456B (en) Code protection method, code protection device, storage medium and electronic equipment
JP2011521352A (en) Dynamic declarative application description
Naujokat et al. Domain-specific code generator modeling: a case study for multi-faceted concurrent systems
KR101791536B1 (en) System for authoring and executing rule-based business application
JP2014228990A (en) Control program creation apparatus and control program creation method
JP3562435B2 (en) Automatic component generator
JP2009059351A (en) System, method, and computer program product for recording operation performed to computer source code
CN102289367A (en) Command line shell command generation based on schema
KR20180131009A (en) System and method for converting large scale application
Simonsen PetriCode: a tool for template-based code generation from CPN models
CN115390846A (en) Compiling construction method and device, electronic equipment and storage medium
KR100417655B1 (en) Regulating information generator and program development system composed of regulator
Soude et al. A model driven approach for unifying user interfaces development
CN113342399A (en) Application structure configuration method and device and readable storage medium
JP6981124B2 (en) System construction support device, system construction support method, and program
Poore Codebraid: Live Code in Pandoc Markdown.
KR100846203B1 (en) Method for generating mobile application and record media recorded program for realizing the same
JP2003303100A (en) Information processing system, method for constructing information processing system, and program therefor
WO2008015110A2 (en) Methods, apparatus and computer programs for modelling computer programs
CN112181398A (en) Configuration file processing device, method and storage medium