JP6071782B2 - PLANT CONTROL DEVICE, PLANT CONTROL METHOD, AND PLANT CONTROL PROGRAM - Google Patents

PLANT CONTROL DEVICE, PLANT CONTROL METHOD, AND PLANT CONTROL PROGRAM Download PDF

Info

Publication number
JP6071782B2
JP6071782B2 JP2013140883A JP2013140883A JP6071782B2 JP 6071782 B2 JP6071782 B2 JP 6071782B2 JP 2013140883 A JP2013140883 A JP 2013140883A JP 2013140883 A JP2013140883 A JP 2013140883A JP 6071782 B2 JP6071782 B2 JP 6071782B2
Authority
JP
Japan
Prior art keywords
pointer
address
value
arithmetic processing
wire
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.)
Active
Application number
JP2013140883A
Other languages
Japanese (ja)
Other versions
JP2015014883A (en
Inventor
大谷 和男
和男 大谷
敏夫 田川
敏夫 田川
優一 佐藤
優一 佐藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP2013140883A priority Critical patent/JP6071782B2/en
Publication of JP2015014883A publication Critical patent/JP2015014883A/en
Application granted granted Critical
Publication of JP6071782B2 publication Critical patent/JP6071782B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Programmable Controllers (AREA)

Description

本発明の実施形態は、プラント制御技術に関する。   Embodiments described herein relate generally to plant control technology.

火力プラント、原子力プラント等の様々な産業プラントでは、プラントを安定的に運転・動作させるためプラント制御装置が設けられている。この制御装置は、外部から複数のプロセス信号を入力し制御プログラムを用いて演算処理を実行する。そして、実行結果に基づいて制御信号を出力してプラント制御を実施している。   In various industrial plants such as a thermal power plant and a nuclear power plant, a plant control device is provided to stably operate and operate the plant. This control device inputs a plurality of process signals from the outside and executes arithmetic processing using a control program. And based on an execution result, a control signal is output and plant control is implemented.

一般的に、制御装置を入出力する複数の信号には、制御装置内のメモリ領域が割り当てられて各信号の値が格納される。そして、各信号のメモリ空間での配置情報(アドレス情報)はシステム構成データとして管理される。
一方、制御プログラムは、複数の命令コードから構成されるロジック演算情報とともに、システム構成データを参照して演算で使用する信号のアドレス情報を保持している。
そして、制御プログラムの実行処理は、保持しているアドレス情報を用いて信号の値が格納されているメモリ領域にアクセスを行いながら命令コードに従って行われる。
In general, a memory area in the control device is allocated to a plurality of signals that are input to and output from the control device, and the value of each signal is stored. The arrangement information (address information) of each signal in the memory space is managed as system configuration data.
On the other hand, the control program holds address information of signals used in the calculation by referring to the system configuration data together with the logic calculation information composed of a plurality of instruction codes.
The control program is executed according to the instruction code while accessing the memory area in which the signal value is stored using the stored address information.

また、制御装置では、制御動作のテストや制御プログラムの機能確認等を実施するため、模擬の設定値を用いてプラント制御のシミュレーションを実施する場合がある。   Further, in order to perform a control operation test, a function check of a control program, and the like, the control apparatus may perform a simulation of plant control using a simulated set value.

このシミュレーションは、制御プログラム内の命令コードを書き換えて、この命令コードによる演算結果を模擬対象となる線番に出力する動作を一時的に停止させる。その後、模擬対象となる線番に模擬値を設定して実施される。なお、線番とは、制御装置に実装された基板を介して入出力する信号を相互に識別するための識別子(信号名)を意味する。   In this simulation, the operation of rewriting the instruction code in the control program and outputting the calculation result of the instruction code to the simulation target wire number is temporarily stopped. Thereafter, a simulation value is set for the wire number to be simulated. The line number means an identifier (signal name) for mutually identifying signals input / output via a board mounted on the control device.

従来から、制御装置に実装される制御プログラムの作成、実行、書き換え、内容把握等、制御プログラムを効率的に実行・管理する様々な技術が開示されている。(例えば、特許文献1)。   Conventionally, various techniques for efficiently executing and managing a control program such as creation, execution, rewriting, and content grasping of a control program mounted on a control device have been disclosed. (For example, patent document 1).

特開2006−330932号公報JP 2006-330932 A

前述の制御装置では、制御プログラム内で変数情報となる信号のアドレス情報が、システム構成データで管理されている。つまり、システム構成データと制御プログラムとが直接紐付いた構成をとっている。
このため、例えば制御装置に実装される基板の追加、削除等が実施され、システム構成データが変更された際には、各信号のアドレス情報が変更されるため、制御プログラムを修正してアドレス情報を更新する必要が生じていた。
In the control device described above, address information of signals that are variable information in the control program is managed by system configuration data. That is, the system configuration data and the control program are directly linked.
For this reason, for example, when addition or deletion of a board mounted on the control device is performed and the system configuration data is changed, the address information of each signal is changed. Had to be updated.

これにより、ロジック情報自体には変更が無いにも関わらず、制御プログラムの修正を行わなければならず、制御プログラムの変更管理を複雑なものとしていた。   As a result, although the logic information itself has not changed, the control program must be corrected, and the change management of the control program is complicated.

また、シミュレーションを実施する際に、制御プログラムの命令コードを書き換えて実施する方法では、制御プログラムの変更管理(プログラムを元に戻す作業)が必要になる。
さらに、シミュレーション実施中に制御装置の停止、故障等が発生して再起動した場合、書き換え後の命令コードのままで動作してしまい、演算結果が正常に出力されないで制御動作を開始してしまう恐れがあった。
Further, when the simulation is performed, the method of rewriting and executing the instruction code of the control program requires control program change management (operation to restore the program).
Furthermore, if the control device stops or fails during a simulation and restarts, it will operate with the rewritten instruction code, and the control operation will start without the calculation result being output normally. There was a fear.

また、制御プログラムの命令コードを書き換えて、模擬対象となる線番への出力を一時的に停止する方法では、ユーザが定義・設定可能な線番でのみ模擬値の設定が可能であり、制御装置が固有で有する線番には模擬値を設定できないという課題があった。   In addition, by rewriting the instruction code of the control program and temporarily stopping output to the wire number to be simulated, it is possible to set the simulated value only for the wire number that can be defined and set by the user. There is a problem that a simulated value cannot be set for a wire number inherent to the apparatus.

本発明はこのような事情を考慮してなされたもので、制御プログラムの変更管理を容易にするプラント制御技術を提供することを目的とする。   The present invention has been made in view of such circumstances, and an object of the present invention is to provide a plant control technique that facilitates change management of a control program.

本実施形態のプラント制御装置は、基板を介して入出力する複数の信号のそれぞれに線番を設定する線番設定部と、前記線番のそれぞれをメモリ空間の第一アドレスに割り当てるアドレス割当部と、前記信号のそれぞれの値を格納するメモリ空間の第二アドレスのそれぞれに対応して設定されたポインタを管理するポインタ管理テーブルと、前記ポインタを前記線番のそれぞれに割り当てて、前記第一アドレスに格納するポインタ割当部と、前記線番を変数として作成された制御プログラムの前記線番に対応する部分を前記ポインタに書き換えるプログラム編集部と、書き換えられた前記制御プログラムを読み込んで、前記ポインタ管理テーブルを参照して前記ポインタに対応する前記第二アドレスに格納された前記信号の値に基づいて演算処理する演算処理部と、を備えることを特徴とするプラント制御装置。   The plant control apparatus of this embodiment includes a line number setting unit that sets a line number for each of a plurality of signals that are input and output via a substrate, and an address assignment unit that assigns each of the line numbers to a first address in a memory space A pointer management table for managing a pointer set corresponding to each second address of the memory space for storing each value of the signal, and assigning the pointer to each of the wire numbers, A pointer allocating section for storing the address; a program editing section for rewriting a portion corresponding to the line number of the control program created with the line number as a variable; and the pointer that reads the rewritten control program, Calculation based on the value of the signal stored in the second address corresponding to the pointer with reference to the management table Plant control apparatus characterized by and an arithmetic processing unit for management for.

本発明によれば、制御プログラムの変更管理を容易にするプラント制御技術が提供される。   According to the present invention, a plant control technique that facilitates change management of a control program is provided.

第一実施形態に係るプラント制御装置の構成図。The block diagram of the plant control apparatus which concerns on 1st embodiment. 第一実施形態に係るプラント制御装置に実装された基板構成を示した概略図。Schematic which showed the board | substrate structure mounted in the plant control apparatus which concerns on 1st embodiment. (A)線番設定データの構成図、(B)アドレス割当データの構成図。(A) Configuration diagram of line number setting data, (B) Configuration diagram of address assignment data. (A)ポインタ管理テーブルの構成図、(B)ポインタ割当データの構成図。(A) Configuration diagram of pointer management table, (B) Configuration diagram of pointer allocation data. 本実施形態に係るユーザメモリ内の配置を表した説明図。Explanatory drawing showing arrangement | positioning in the user memory which concerns on this embodiment. (A)制御ロジック図の一例を示したもの、(B)制御ロジック図をCASテキストイメージで表した図、(C)線番部分をポインタに書き換えたソースイメージを表した図。(A) An example of a control logic diagram, (B) a diagram representing the control logic diagram with a CAS text image, and (C) a diagram representing a source image with the line number portion rewritten as a pointer. (A)制御プログラムの線番部分をポインタに書き換えるまでの制御フローを示すフローチャート、(B)演算処理部による処理フローを示すフローチャート。(A) The flowchart which shows the control flow until it rewrites the wire number part of a control program to a pointer, (B) The flowchart which shows the processing flow by an arithmetic processing part. 第一実施形態に係るプラント制御装置の変形例を示した構成図。The block diagram which showed the modification of the plant control apparatus which concerns on 1st embodiment. (A)第二実施形態に適用されるポインタ管理テーブルの構成図、(B)ユーザメモリ内の配置を表した説明図。(A) The block diagram of the pointer management table applied to 2nd embodiment, (B) Explanatory drawing showing arrangement | positioning in a user memory. 第二実施形態に係る演算フローを示す説明図。Explanatory drawing which shows the calculation flow which concerns on 2nd embodiment. 第二実施形態に係る演算処理部による処理フローを示すフローチャート。The flowchart which shows the processing flow by the arithmetic processing part which concerns on 2nd embodiment. (A)第三実施形態に適用されるポインタ管理テーブルの構成図、(B)第三実施形態に係る演算処理部による処理フローを示すフローチャート。(A) The block diagram of the pointer management table applied to 3rd embodiment, (B) The flowchart which shows the processing flow by the arithmetic processing part which concerns on 3rd embodiment. (A)第四実施形態に適用されるポインタ管理テーブルの構成図、(B)第四実施形態に係る演算処理部による処理フローを示すフローチャート。(A) The block diagram of the pointer management table applied to 4th embodiment, (B) The flowchart which shows the processing flow by the arithmetic processing part which concerns on 4th embodiment.

(第一実施形態)
以下、本発明の実施形態を添付図面に基づいて説明する。
図1に示す第一実施形態に係るプラント制御装置10(以下、制御装置10とする)は、基板を介して入出力する複数の信号のそれぞれに線番を設定する線番設定部12と、線番のそれぞれをメモリ空間の第一アドレスに割り当てるアドレス割当部13と、信号のそれぞれの値を格納するメモリ空間の第二アドレスのそれぞれに対応して設定されたポインタを管理するポインタ管理テーブル14と、ポインタを線番のそれぞれに割り当てて、第一アドレスに格納するポインタ割当部15と、線番を変数として作成された制御プログラムの線番に対応する部分をポインタに書き換えるプログラム編集部18と、書き換えられた制御プログラムを読み込んで、ポインタ管理テーブル14を参照してポインタに対応する第二アドレスに格納された信号の値に基づいて演算処理する演算処理部16と、を備えることを特徴とする。
(First embodiment)
Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings.
The plant control apparatus 10 (hereinafter referred to as the control apparatus 10) according to the first embodiment shown in FIG. 1 includes a line number setting unit 12 that sets a line number for each of a plurality of signals that are input and output via a substrate, An address assignment unit 13 for assigning each wire number to a first address in the memory space, and a pointer management table 14 for managing pointers set corresponding to the second addresses in the memory space for storing the respective signal values. A pointer allocating unit 15 that allocates pointers to the respective line numbers and stores them at the first address, and a program editing unit 18 that rewrites a part corresponding to the line number of the control program created with the line number as a variable into a pointer. The rewritten control program is read and the pointer stored in the second address corresponding to the pointer with reference to the pointer management table 14 is read. An arithmetic processing unit 16 for processing on the basis of the value, characterized in that it comprises a.

また、制御装置10は、外部機器23から処理対象となるプロセス信号を入力して、演算処理部16において演算処理を実行する。そして、この実行結果に基づいて制御信号を外部機器23に出力してプラント制御を実施するものである。   In addition, the control device 10 inputs a process signal to be processed from the external device 23 and executes arithmetic processing in the arithmetic processing unit 16. And based on this execution result, a control signal is output to the external apparatus 23, and plant control is implemented.

制御装置10は、入出力部11、線番設定部12、アドレス割当部13、ポインタ管理テーブル14、ポインタ割当部15、演算処理部16、メモリ17、プログラム編集部18、線番更新部22、とを備える。
保守ツール24は、制御装置10の外部に設けられて、通信手段(図示省略)を介して制御装置10とのデータ通信を行う機能を有する。制御装置10に実装される制御プログラムは、保守ツール24から転送される。
The control device 10 includes an input / output unit 11, a line number setting unit 12, an address assignment unit 13, a pointer management table 14, a pointer assignment unit 15, an arithmetic processing unit 16, a memory 17, a program editing unit 18, a line number update unit 22, With.
The maintenance tool 24 is provided outside the control device 10 and has a function of performing data communication with the control device 10 via communication means (not shown). A control program installed in the control device 10 is transferred from the maintenance tool 24.

メモリ17は、演算処理部16を介して随時読み取り、書き込みされるデータが格納されるユーザメモリ17aと、制御プログラムを格納するプログラム格納メモリ17bと、から構成されるメモリ領域を有する。   The memory 17 has a memory area composed of a user memory 17a that stores data to be read and written as needed via the arithmetic processing unit 16, and a program storage memory 17b that stores a control program.

入出力部11は、制御装置10に実装された複数の入出力基板(以下、基板と省略する)を介して、外部機器23との間で入出力する信号、演算処理部16で用いられる信号等プラント制御に用いられる信号の入出力を行う。   The input / output unit 11 is a signal to be input / output to / from the external device 23 via a plurality of input / output boards (hereinafter abbreviated as a board) mounted on the control device 10 and a signal used by the arithmetic processing unit 16. Input and output signals used for plant control.

図2は、制御装置10に実装された基板構成を例示した図である。制御ユニット(ユニット:0)、デジタルIOユニット(ユニット:5)、アナログIOユニット(ユニット:6)から構成され、各ユニットに設けられたスロットに各種基板が挿入されている。   FIG. 2 is a diagram illustrating a board configuration mounted on the control device 10. It is composed of a control unit (unit: 0), a digital IO unit (unit: 5), and an analog IO unit (unit: 6), and various substrates are inserted into slots provided in each unit.

線番設定部12は、制御装置10に実装された基板を介して入出力する複数の信号を相互に識別するため、これら信号のそれぞれに対して線番を設定する。
具体的には、実装された基板構成に関する情報に基づき、信号の入出力点に係る属性(ユニット、スロット、基板名、データ種別、基板タイプ、IO点数等)に対応付けて線番を設定することにより、各信号に対して線番が設定される。この線番は、複数の信号を相互に識別する識別子(信号名)となるため、ユニークなものを設定する必要がある。
The line number setting unit 12 sets a line number for each of these signals in order to identify a plurality of signals input / output via the board mounted on the control device 10.
Specifically, a line number is set in association with attributes (unit, slot, board name, data type, board type, number of IO points, etc.) related to signal input / output points based on information on the mounted board configuration. Thus, a wire number is set for each signal. Since this wire number serves as an identifier (signal name) for mutually identifying a plurality of signals, it is necessary to set a unique one.

入出力点の属性に対応付けて設定された線番の設定情報は、線番設定データ19として記録・保存される。
図3(A)は、図2で示した基板構成に基づき線番が設定された場合の線番設定データ19のデータ構成を示している。各信号の入出力点に係る属性(基板が挿入されたユニット及びスロット、基板名、基板を入出力する信号のデータ種別、基板タイプ及びIO点数)に対応付けて線番が設定されている。ここでは、各基板で設定される線番のうち、先頭の線番のみを表示している。
The line number setting information set in association with the input / output point attributes is recorded / saved as line number setting data 19.
FIG. 3A shows a data configuration of the line number setting data 19 when a line number is set based on the board configuration shown in FIG. Line numbers are set in association with attributes related to input / output points of each signal (unit and slot into which the board is inserted, board name, data type of the board input / output signal, board type, and number of IO points). Here, only the first line number is displayed among the line numbers set for each board.

アドレス割当部13は、線番設定部12で設定された線番のそれぞれに対して、ユーザメモリ17aのメモリ領域を確保する。そして、確保されたメモリ領域の位置を示す第一アドレスを各線番に割り当てる。   The address allocation unit 13 secures a memory area of the user memory 17a for each of the line numbers set by the line number setting unit 12. Then, a first address indicating the position of the secured memory area is assigned to each wire number.

各線番に対する第一アドレスの割り当てにおける設定情報は、アドレス割当データ20として記録・保存される。
図3(B)は、図3(A)で設定された線番に対して第一アドレスが割り当てられたアドレス割当データ20のデータ構成を示している。
Setting information for assigning the first address to each wire number is recorded and stored as address assignment data 20.
FIG. 3B shows a data configuration of the address assignment data 20 in which the first address is assigned to the line number set in FIG.

ここで、ポインタ管理テーブル14について説明する。
各線番の値(信号の値)のそれぞれは、ユーザメモリ17aのメモリ領域を確保され格納される。なお、アドレス割当部13で第一アドレスを割り当てのために確保されたメモリ領域とは異なるメモリ領域が確保される。
Here, the pointer management table 14 will be described.
Each line number value (signal value) is reserved and stored in the memory area of the user memory 17a. Note that a memory area different from the memory area secured for the first address assignment by the address assignment unit 13 is secured.

そして、各線番の値が格納されたメモリ上の位置を示す第二アドレスのそれぞれに対応させてポインタが設定される。このポインタは、各線番の値が格納された第二アドレスを相互に識別する識別子となる。   Then, a pointer is set in correspondence with each second address indicating the position on the memory where the value of each wire number is stored. This pointer serves as an identifier for mutually identifying the second address in which the value of each wire number is stored.

ポインタ管理テーブル14は、第二アドレスと第二アドレスに割り当てられたポインタとの対応を管理する管理データである。このポインタ管理テーブル14は、書き換え可能なデータであり、保守ツール24(あるいは制御装置10)により管理される。   The pointer management table 14 is management data for managing the correspondence between the second address and the pointer assigned to the second address. The pointer management table 14 is rewritable data and is managed by the maintenance tool 24 (or the control device 10).

そして、各線番の値が格納された第二アドレスが変更された場合には、この変更に従ってポインタ管理テーブル14の書き換えが行われる。
例えば、入出力基板の構成が変更され、基板構成の変更に伴い第二アドレスが変更された際には、当該変更に合わせてポインタ管理テーブル14は書き換えられる。
When the second address storing the value of each wire number is changed, the pointer management table 14 is rewritten according to the change.
For example, when the configuration of the input / output board is changed and the second address is changed along with the change of the board configuration, the pointer management table 14 is rewritten in accordance with the change.

図4(A)は、ポインタ管理テーブル14のデータ構成を示している。各第二アドレスにポインタが割り当てられている。ここで示すように、第二アドレスに格納されるデータの種類ごとに管理テーブルを別々に分けても良い。   FIG. 4A shows the data structure of the pointer management table 14. A pointer is assigned to each second address. As shown here, the management table may be divided separately for each type of data stored in the second address.

ポインタ割当部15は、ポインタ管理テーブル14を参照し、各線番に対して、それぞれの線番値が格納された第二アドレスに対応するポインタを割り当てる。そして、割り当てられたポインタは、前述の第一アドレスに格納される。   The pointer allocation unit 15 refers to the pointer management table 14 and allocates a pointer corresponding to the second address in which each line number value is stored for each line number. The assigned pointer is stored at the first address.

各線番に対するポインタの割り当てについての設定情報は、ポインタ割当データ21として記録・保存される。このポインタ割当データ21には、各線番に対する第一アドレスの割り当てについての設定情報も併せて保存される。
図4(B)は、ポインタ割当データ21のデータ構成を示し、各線番に対してポインタが割り当てられている。
Setting information regarding pointer assignment to each wire number is recorded and stored as pointer assignment data 21. The pointer assignment data 21 also stores setting information regarding the assignment of the first address to each wire number.
FIG. 4B shows the data structure of the pointer assignment data 21, and a pointer is assigned to each line number.

図5は、ユーザメモリ17aの配置を具体的に表した説明図である。
線番A001〜A003について、第一アドレスが割り当てられ、この第一アドレスにはポインタが格納される。そして、ポインタに対応する第二アドレスには、線番A001〜A003の値が格納される。
FIG. 5 is an explanatory diagram specifically showing the arrangement of the user memory 17a.
A first address is assigned to the line numbers A001 to A003, and a pointer is stored in the first address. The values of the line numbers A001 to A003 are stored in the second address corresponding to the pointer.

プログラム編集部18は、線番を入出力変数として作成された制御プログラムを保守ツール24から入力する。
そして、ポインタ割当部15で各線番に割り当てたポインタに基づいて、制御プログラムの線番部分をポインタに書き換える。そして、この書き換えた制御プログラムをプログラム格納メモリ17bに格納する。
The program editing unit 18 inputs a control program created using wire numbers as input / output variables from the maintenance tool 24.
Then, based on the pointer assigned to each wire number by the pointer assigning unit 15, the wire number portion of the control program is rewritten to the pointer. The rewritten control program is stored in the program storage memory 17b.

したがって、プログラム格納メモリ17bに格納される制御プログラムは、命令コードから構成されるロジック演算情報とポインタ情報(変数情報)を保持することとなる。   Therefore, the control program stored in the program storage memory 17b holds logic operation information and pointer information (variable information) composed of instruction codes.

図6(A)は、保守ツール24で作成された制御ロジック図(制御プログラム)の一例を示したものである。
制御ロジック図は、結線により組み合わされた複数の命令コードから構成される。各命令コードは、信号の値を入力及び出力する端子を備え、これら端子には変数情報として線番が設定されている。
FIG. 6A shows an example of a control logic diagram (control program) created by the maintenance tool 24.
The control logic diagram is composed of a plurality of instruction codes combined by connection. Each instruction code has terminals for inputting and outputting signal values, and wire numbers are set as variable information for these terminals.

図6(B)は、図6(A)の制御ロジック図をCASテキストイメージで表したものである。
図6(C)は、プログラム編集部18によって、線番部分をポインタに書き換えられた制御プログラムのソースイメージを表している。この書き換えられた制御プログラムがプログラム格納メモリ17bに格納される。
FIG. 6B is a CAS text image representing the control logic diagram of FIG.
FIG. 6C shows a source image of a control program in which the line number portion is rewritten by the program editing unit 18 as a pointer. The rewritten control program is stored in the program storage memory 17b.

演算処理部16は、プログラム格納メモリ17bから制御プログラムを読み込む。そして、ポインタ管理テーブル14を参照して、制御プログラムのポインタを第二アドレスに変換する。   The arithmetic processing unit 16 reads the control program from the program storage memory 17b. Then, the pointer of the control program is converted into the second address with reference to the pointer management table 14.

そして、演算処理部16は、変換した第二アドレスに格納された線番の値を用いて命令コードに従って演算処理を実行していく。   Then, the arithmetic processing unit 16 executes arithmetic processing according to the instruction code using the wire number value stored in the converted second address.

このように、演算処理部16における制御プログラムの実行は、線番の値が格納されたメモリアドレス(第二アドレス)に直接アクセスして行うのでは無く、ポインタを介して間接的に行われる。   As described above, the execution of the control program in the arithmetic processing unit 16 is not performed by directly accessing the memory address (second address) in which the wire number value is stored, but indirectly through the pointer.

このため、実装された基板構成の変更等により、線番の値が格納されたアドレス情報(第二アドレス)が変更された場合であっても、ポインタと第二アドレスとの関係を管理するポインタ管理テーブル14のみを書き換えることにより、演算処理の実行が可能となる。   For this reason, even if the address information (second address) in which the wire number value is stored is changed due to a change in the mounted board configuration or the like, the pointer that manages the relationship between the pointer and the second address Rewriting only the management table 14 makes it possible to execute arithmetic processing.

したがって、実装された基板構成の変更等により、線番の値が格納されたアドレス情報が変更された場合であっても、制御プログラム自体を修正する必要がないため、制御プログラムの変更管理を容易なものにすることができる。   Therefore, even if the address information in which the wire number value is stored is changed due to changes in the mounted board configuration, etc., it is not necessary to modify the control program itself, so control program change management is easy Can be made.

線番更新部22は、線番設定部12で設定された線番のみを変更する際に、ポインタ割当データ21に記録されている線番のみを変更に応じて更新するものである。
また、線番更新部22は、線番設定データ19及びアドレス割当データ20に記録されている線番についても、同様に線番部分の更新を行う。
When changing only the line number set by the line number setting unit 12, the line number update unit 22 updates only the line number recorded in the pointer assignment data 21 according to the change.
The line number updating unit 22 also updates the line number portion in the same manner for the line numbers recorded in the line number setting data 19 and the address assignment data 20.

線番を変更する際に、制御装置10のシステム構成に係るデータであるポインタ割当データ21の線番部分を直接更新することにより、再度線番設定部12、アドレス割当部13、及びポインタ割当部15を介してポインタ割当データ21を作成する手間を省略することができる。   When the line number is changed, by directly updating the line number portion of the pointer allocation data 21 which is data relating to the system configuration of the control device 10, the line number setting unit 12, the address allocation unit 13, and the pointer allocation unit are again updated. The trouble of creating the pointer assignment data 21 via 15 can be omitted.

また、線番の更新後においても、線番とポインタとの対応関係は変わらないため、制御プログラムをプログラム編集部18で再度書き換えてプログラム格納メモリ17bに格納する必要は無い。   Further, since the correspondence between the line number and the pointer does not change even after the line number is updated, it is not necessary to rewrite the control program again by the program editing unit 18 and store it in the program storage memory 17b.

図7(A)は、制御プログラムの線番部分をポインタに書き換えるまでの制御フローを示すフローチャートである(適宜、図1参照)。
線番設定部12は、実装された基板を入出力する各信号に線番を設定する(S10)。
続けて、アドレス割当部13は、設定された線番のそれぞれにユーザメモリ17aのメモリ領域を確保して、第一アドレスの割り当てを行う(S11)。
FIG. 7A is a flowchart showing a control flow until the line number portion of the control program is rewritten with a pointer (see FIG. 1 as appropriate).
The line number setting unit 12 sets a line number for each signal that inputs and outputs the mounted substrate (S10).
Subsequently, the address assigning unit 13 secures a memory area of the user memory 17a for each of the set wire numbers and assigns a first address (S11).

次に、ポインタ割当部15は、各線番の値を格納されたメモリ上の位置を示す第二アドレスとポインタとの対応を管理するポインタ管理テーブル14を参照する(S12)。
そして、各線番に対して、その線番の値が格納された第二アドレスに対応するポインタの割り当てを行う(S13)。
Next, the pointer allocation unit 15 refers to the pointer management table 14 that manages the correspondence between the second address indicating the position on the memory in which the value of each wire number is stored and the pointer (S12).
Then, a pointer corresponding to the second address in which the value of the line number is stored is assigned to each line number (S13).

プログラム編集部18は、保守ツール24から入力した制御プログラムの線番部分をポインタに書き換える(S14)。そして、書き換えた制御プログラムをプログラム格納メモリ17bに格納する。   The program editing unit 18 rewrites the line number portion of the control program input from the maintenance tool 24 with a pointer (S14). Then, the rewritten control program is stored in the program storage memory 17b.

図7(B)は、演算処理部16による演算フローを示すフローチャートである。
演算処理部16は、プログラム格納メモリ17bから制御プログラムの読み込む(S15)。
FIG. 7B is a flowchart showing a calculation flow by the calculation processing unit 16.
The arithmetic processing unit 16 reads the control program from the program storage memory 17b (S15).

続けて、演算処理部16は、ポインタ管理テーブル14を参照して(S16)、制御プログラムのポインタ部分を第二アドレスに変換する(S17)。そして、変換された第二アドレスに格納された値に基づいて演算処理を実行する(S18)。   Subsequently, the arithmetic processing unit 16 refers to the pointer management table 14 (S16) and converts the pointer portion of the control program into the second address (S17). Then, arithmetic processing is executed based on the value stored in the converted second address (S18).

このように、制御プログラムの実行は、ポインタを介して間接的に行われる。つまり、基板構成の変更等により、線番の値が格納されたアドレス情報(第二アドレス)が変更された場合でも、ポインタと第二アドレスとの関係を管理するポインタ管理テーブル14のみを書き換えることにより、演算処理の実行が可能となる。このため、制御プログラム自体を修正する必要がないため、制御プログラムの変更管理を容易なものにすることができる。   As described above, the execution of the control program is indirectly performed through the pointer. That is, even when the address information (second address) in which the wire number value is stored is changed due to a change in the board configuration or the like, only the pointer management table 14 that manages the relationship between the pointer and the second address is rewritten. Thus, it is possible to execute the arithmetic processing. For this reason, since it is not necessary to modify the control program itself, change management of the control program can be facilitated.

図8は、本実施形態に係る制御装置10の変形例を示している。各構成の動作、作用は
図1で示したものと同様となるため、同一の符号を付して適宜説明を省略する。
FIG. 8 shows a modification of the control device 10 according to the present embodiment. Since the operation and action of each component are the same as those shown in FIG. 1, the same reference numerals are given and description thereof is omitted as appropriate.

保守ツール24は、線番設定部12と、アドレス割当部13と、ポインタ管理テーブル14と、ポインタ割当部15と、プログラム編集部18と、線番更新部22と、を備えている。   The maintenance tool 24 includes a line number setting unit 12, an address assignment unit 13, a pointer management table 14, a pointer assignment unit 15, a program editing unit 18, and a line number update unit 22.

保守ツール24は、制御装置10との通信手段を介して、制御装置10に実装された基板構成に関する情報を入力する。そして、線番設定部12は、制御装置10に実装された基板構成に関する情報に基づき、基板を入出力する信号に対して線番を設定する。   The maintenance tool 24 inputs information related to the board configuration mounted on the control device 10 via communication means with the control device 10. Then, the line number setting unit 12 sets a line number for a signal to be input / output on the board based on information on the board configuration mounted on the control device 10.

そして、アドレス割当部13は、設定された線番に対して、ユーザメモリ17aの第一アドレスを割り当てる。
ポインタ割当部15は、保守ツール24で作成したポインタ管理テーブル14を参照して、各線番にポインタを割り当てる。なお、ポインタ割当データ21は、制御装置10のシステム構成に係るデータとして制御装置10に出力され保存される。
The address assignment unit 13 assigns the first address of the user memory 17a to the set wire number.
The pointer allocation unit 15 refers to the pointer management table 14 created by the maintenance tool 24 and allocates a pointer to each wire number. The pointer assignment data 21 is output and stored in the control device 10 as data relating to the system configuration of the control device 10.

プログラム編集部18は、線番を変数として作成した制御プログラムの線番部分をポインタに書き換える。そして、書き換えた制御プログラムを制御装置10に出力する。
また、作成したポインタ管理テーブル14は、制御装置10に出力される。
The program editing unit 18 rewrites the line number portion of the control program created with the line number as a variable to a pointer. Then, the rewritten control program is output to the control device 10.
The created pointer management table 14 is output to the control device 10.

制御装置10は、書き換えられた制御プログラムを保守ツール24から入力して、プログラム格納メモリ17bに格納する。
そして、制御装置10の演算処理部16は、入力したポインタ管理テーブル14を参照して、演算処理を実行する。
The control device 10 inputs the rewritten control program from the maintenance tool 24 and stores it in the program storage memory 17b.
Then, the arithmetic processing unit 16 of the control device 10 performs arithmetic processing with reference to the input pointer management table 14.

このように、制御装置10が備えていた構成を保守ツール24が備えることにより、制御装置10を簡易な構成にしつつ、図1の構成と同一の効果を得ることができる。   Thus, by providing the maintenance tool 24 with the configuration that the control device 10 had, the same effect as the configuration of FIG. 1 can be obtained while making the control device 10 a simple configuration.

(第二実施形態)
図9(A)は、第二実施形態に適用されるポインタ管理テーブル14のデータ構成を例示したものである。なお、制御装置10の構成は、図1と同一となるため図示を省略し、第一実施形態と重複する動作については説明を省略する(適宜、図1を参照)。
(Second embodiment)
FIG. 9A illustrates the data configuration of the pointer management table 14 applied to the second embodiment. Since the configuration of the control device 10 is the same as that in FIG. 1, illustration is omitted, and description of operations that are the same as those in the first embodiment is omitted (see FIG. 1 as appropriate).

第一実施形態に適用されるポインタ管理テーブル14と異なる点について説明する(図4(A))。
ポインタのそれぞれには、シミュレーション(以下、模擬とする)実施時に用いる模擬用アドレスが設定される。模擬用アドレスは、模擬のために確保されたユーザメモリ17a領域のアドレス情報を示している。
さらに、ポインタのそれぞれは、任意の2つの設定値のいずれかに設定されるフラグ情報を有する。
A different point from the pointer management table 14 applied to 1st embodiment is demonstrated (FIG. 4 (A)).
Each pointer is set with a simulation address used when a simulation (hereinafter referred to as simulation) is performed. The simulation address indicates address information of the user memory 17a area reserved for simulation.
Furthermore, each of the pointers has flag information that is set to one of two arbitrary setting values.

ここでは、フラグ情報は、“No”または“Write”が設定されるものとし、第1設定値を“No”として、第2設定値を“Write”とする。   Here, “No” or “Write” is set as the flag information, the first setting value is “No”, and the second setting value is “Write”.

各ポインタに対応する第二アドレス、模擬用アドレス及びフラグ情報の設定は、ポインタ管理テーブル14で管理され、フラグ情報は保守ツール24(あるいは制御装置10)から変更することができる。   The setting of the second address, simulation address, and flag information corresponding to each pointer is managed by the pointer management table 14, and the flag information can be changed from the maintenance tool 24 (or the control device 10).

演算処理部16は、出力変数となるポインタのフラグ情報が、第1設定値のとき(“No”のとき)は、ポインタに対応する第二アドレスに出力値を書き込んで演算処理を実行していく。
一方、ポインタのフラグ情報が、第2設定値のとき(“Write”のとき)は、ポインタに対応する模擬用アドレスに出力値を書き込んで演算処理を実行していく。
When the flag information of the pointer serving as the output variable is the first set value (when “No”), the arithmetic processing unit 16 writes the output value to the second address corresponding to the pointer and executes the arithmetic processing. Go.
On the other hand, when the flag information of the pointer is the second set value (when “Write”), the output value is written to the simulation address corresponding to the pointer and the arithmetic processing is executed.

図9(B)は、模擬用アドレスを設定した場合における、ユーザメモリ17aの配置を示している。模擬用アドレスには、模擬を実施する際に用いられる各線番(ポインタ)の値が格納されている。   FIG. 9B shows the arrangement of the user memory 17a when a simulation address is set. The simulation address stores the value of each wire number (pointer) used when the simulation is performed.

図10は、模擬を実施する際の演算処理部16による具体的な処理フローを表している。
ここでは、ポインタ“0011”(線番:A002)の第二アドレスに模擬値を格納し、この模擬値を命令コード2の入力値として模擬を行う場合について検討する。
FIG. 10 shows a specific processing flow by the arithmetic processing unit 16 when performing the simulation.
Here, a case where a simulation value is stored at the second address of the pointer “0011” (line number: A002) and this simulation value is used as an input value of the instruction code 2 is considered.

まず、演算処理部16は、命令コード1の処理終了後、ポインタ管理テーブル14を参照して、ポインタ“0011”のフラグ情報を確認する。   First, after the processing of the instruction code 1 is completed, the arithmetic processing unit 16 refers to the pointer management table 14 and confirms the flag information of the pointer “0011”.

ポインタ“0011”のフラグ情報が“Write”に設定されているため、ポインタ管理テーブル14から模擬用アドレスを読み取る。
そして、演算処理部16は、命令コード1の出力値(演算結果)を模擬用アドレスに書き込む。
Since the flag information of the pointer “0011” is set to “Write”, the simulation address is read from the pointer management table 14.
Then, the arithmetic processing unit 16 writes the output value (calculation result) of the instruction code 1 in the simulation address.

そして、演算処理部16は、ポインタ“0011”の第二アドレスに格納されている模擬値を入力値として命令コード2の処理を実行する。   Then, the arithmetic processing unit 16 executes the processing of the instruction code 2 using the simulated value stored at the second address of the pointer “0011” as an input value.

このように、命令コード1の出力値を模擬用アドレスに書き込むことで、第二アドレスへの出力を回避できる。このため、第二アドレスに設定した模擬値が、命令コード1の出力値により書き換えられることは無く、模擬を実行することができる。   Thus, by writing the output value of the instruction code 1 to the simulation address, output to the second address can be avoided. For this reason, the simulation value set in the second address is not rewritten by the output value of the instruction code 1, and the simulation can be executed.

したがって、制御プログラムの命令コードを書き換えて出力ロックを行う必要がないため、制御プログラムを修正することなく模擬を実施することができる。   Therefore, since it is not necessary to rewrite the instruction code of the control program and perform output lock, simulation can be performed without correcting the control program.

また、模擬実施中に制御装置10の停止、故障等が発生し、再起動した場合であってっても、制御プログラムの命令コードを変更していないため、演算結果が正常に出力されない等の誤動作を防止することができる。   In addition, even if the control device 10 is stopped or failed during the simulation, and restarted, the control program instruction code is not changed, so that the calculation result is not output normally. Malfunctions can be prevented.

図11は、第二実施形態に係る演算処理部16による、命令コードの処理フローを示している。
まず、演算処理部16は、ポインタ管理テーブル14を参照して、命令コードの入力側ポインタに対応する第二アドレスを読み込む(S20)。
そして、読み込んだ第二アドレスから入力値を読み込んで(S21)、命令処理を実行する(S22)。
FIG. 11 shows a processing flow of an instruction code by the arithmetic processing unit 16 according to the second embodiment.
First, the arithmetic processing unit 16 refers to the pointer management table 14 and reads a second address corresponding to the instruction code input side pointer (S20).
Then, an input value is read from the read second address (S21), and command processing is executed (S22).

命令処理終了後、演算処理部16は、ポインタ管理テーブル14を参照して、フラグ情報を確認する(S23)。
そして、フラグ情報に“Write”が設定されている場合は(S23:YES)、出力側ポインタに対応する模擬用アドレスを読み込む(S25)。
一方、フラグ情報に“No”が設定されている場合は(S23:No)、出力側ポインタに対応する第二アドレスを読み込む(S24)。
After completion of the instruction processing, the arithmetic processing unit 16 refers to the pointer management table 14 and confirms flag information (S23).
If “Write” is set in the flag information (S23: YES), the simulation address corresponding to the output pointer is read (S25).
On the other hand, when “No” is set in the flag information (S23: No), the second address corresponding to the output side pointer is read (S24).

そして、演算処理部16は、読み込んだアドレスに出力値の書き込みを行い(S26)、命令コードを終了する。   Then, the arithmetic processing unit 16 writes the output value at the read address (S26), and ends the instruction code.

第二アドレスに模擬値を設定して模擬を行う際に、フラグ情報に“Write”を設定して、命令コードの出力値を模擬用アドレスに書き込む。これにより、第二アドレスに設定した模擬値が、命令コードの出力値により書き換えられることは無い。
したがって、制御プログラムの命令コードを書き換えて出力ロックを行わないで、つまり制御プログラムを修正しないで模擬を実施することができる。
When a simulation value is set for the second address and simulation is performed, “Write” is set for the flag information, and the output value of the instruction code is written to the simulation address. As a result, the simulated value set for the second address is not rewritten by the output value of the instruction code.
Therefore, the simulation can be performed without rewriting the instruction code of the control program and performing output locking, that is, without modifying the control program.

(第三実施形態)
図12(A)は、第三実施形態に適用されるポインタ管理テーブル14のデータ構成を示している。
(Third embodiment)
FIG. 12A shows the data structure of the pointer management table 14 applied to the third embodiment.

ポインタのそれぞれは、任意の2つの設定値のいずれかに設定されるフラグ情報を有している。
ここでは、フラグ情報は、“No”または“Read”が設定されるものとし、第1設定値を“No”として、第2設定値を“Read”とする。
Each of the pointers has flag information that is set to one of two arbitrary setting values.
Here, “No” or “Read” is set as the flag information, the first setting value is “No”, and the second setting value is “Read”.

演算処理部16は、入力変数となるポインタのフラグ情報が、第1設定値のとき(“No”のとき)は、ポインタに対応する第二アドレスに格納されている値を読み込んで演算処理を実行していく。
一方、ポインタのフラグ情報が、第2設定値のとき(“Read”のとき)は、ポインタに対応する模擬用アドレスに格納されている値を読み込んで演算処理を実行していく。
When the flag information of the pointer serving as the input variable is the first set value (“No”), the arithmetic processing unit 16 reads the value stored at the second address corresponding to the pointer and performs arithmetic processing. Run it.
On the other hand, when the flag information of the pointer is the second set value (when “Read”), the value stored in the simulation address corresponding to the pointer is read and the arithmetic processing is executed.

具体的な動作について図10を用いて説明する。
ここでは、ポインタ“0010”(線番:A001)の模擬用アドレスに模擬値を格納し、この模擬値を命令コード1の入力値として模擬を行う場合について検討する。なお、ポインタ“0010”のフラグ情報は、“Read”が設定されているとする。
A specific operation will be described with reference to FIG.
Here, a case where a simulation value is stored in the simulation address of the pointer “0010” (line number: A001) and this simulation value is used as an input value of the instruction code 1 is considered. It is assumed that “Read” is set in the flag information of the pointer “0010”.

まず、演算処理部16は、ポインタ管理テーブル14を参照して、ポインタ“0010”のフラグ情報を確認する。   First, the arithmetic processing unit 16 refers to the pointer management table 14 and checks the flag information of the pointer “0010”.

ポインタ“0010”のフラグ情報が“Read”に設定されているため、ポインタ管理テーブル14から模擬用アドレスを読み取る。
そして、演算処理部16は、模擬用アドレスに格納された模擬値を入力値として命令コード1を実行する。
Since the flag information of the pointer “0010” is set to “Read”, the simulation address is read from the pointer management table 14.
Then, the arithmetic processing unit 16 executes the instruction code 1 using the simulated value stored in the simulation address as an input value.

線番:A001が制御装置10でのみ設定される固有線番である場合、第二アドレスに模擬値を設定しても制御装置10によって書き込まれてしまい、模擬を実施することはできない。
このように、フラグ情報を設定して、模擬用アドレスに格納された模擬値を読み込むことにより、制御装置10でのみ設定される固有線番について模擬を実施することが可能となる。
When the line number: A001 is a unique line number set only in the control device 10, even if a simulated value is set in the second address, it is written by the control device 10 and cannot be simulated.
As described above, by setting the flag information and reading the simulation value stored in the simulation address, it is possible to perform the simulation for the unique line number set only in the control device 10.

図12(B)は、第三実施形態に係る演算処理部16による、命令コードの処理フローを示している。
まず、演算処理部16は、ポインタ管理テーブル14を参照して、フラグ情報を確認する(S30)。
FIG. 12B shows a processing flow of the instruction code by the arithmetic processing unit 16 according to the third embodiment.
First, the arithmetic processing unit 16 refers to the pointer management table 14 and confirms flag information (S30).

そして、フラグ情報に“Read”が設定されている場合は(S30:YES)、入力側ポインタに対応する模擬用アドレスを読み込む(S32)。
一方、フラグ情報に“No”が設定されている場合は(S30:No)、入力側ポインタに対応する第二アドレスを読み込む(S31)。
If “Read” is set in the flag information (S30: YES), the simulation address corresponding to the input side pointer is read (S32).
On the other hand, when “No” is set in the flag information (S30: No), the second address corresponding to the input side pointer is read (S31).

そして、演算処理部16は、読み込んだアドレスから入力値を読み込んで(S33)、命令処理を実行する(S34)。   Then, the arithmetic processing unit 16 reads an input value from the read address (S33) and executes command processing (S34).

演算処理部16は、ポインタ管理テーブル14を参照して、命令コードの出力側ポインタに対応する第二アドレスを読み込む(S35)。
そして、読み込んだアドレスに出力値の書き込みを行い(S36)、命令コードを終了する。
The arithmetic processing unit 16 refers to the pointer management table 14 and reads the second address corresponding to the output side pointer of the instruction code (S35).
Then, the output value is written to the read address (S36), and the instruction code is terminated.

フラグ情報を“Read”に設定して、模擬用アドレスに格納された模擬値を読み込むことにより、制御装置10でのみ設定される固有線番について模擬を実施することが可能となる。   By setting the flag information to “Read” and reading the simulation value stored in the simulation address, it is possible to perform simulation for the unique line number set only in the control device 10.

(第四実施形態)
図13(A)は、第四実施形態に適用されるポインタ管理テーブル14のデータ構成を示している。第二実施形態と同様な構成については、記載を省略して説明する(適宜、図1参照)。
(Fourth embodiment)
FIG. 13A shows the data structure of the pointer management table 14 applied to the fourth embodiment. About the structure similar to 2nd embodiment, description is abbreviate | omitted and demonstrated (refer FIG. 1 suitably).

ポインタのそれぞれは、任意の3つの設定値のいずれかに設定されるフラグ情報を有している。
ここでは、フラグ情報は、“No”、“Read”及び“Write”のいずれか一つが設定されるものとし、第1設定値を“No”として、第2設定値を“Read”とし、第3設定値を“Write”とする。
Each of the pointers has flag information that is set to one of arbitrary three set values.
Here, it is assumed that any one of “No”, “Read”, and “Write” is set as the flag information, the first setting value is “No”, the second setting value is “Read”, and the first 3. Set value is “Write”.

演算処理部16は、入出力変数となるポインタのフラグ情報が第1設定値のとき(“No”のとき)は、ポインタに対応する第二アドレスに格納された値を読み込みまたは第二アドレスに出力値を書き込んで演算処理を行う。   When the flag information of the pointer serving as the input / output variable is the first set value (when “No”), the arithmetic processing unit 16 reads or stores the value stored in the second address corresponding to the pointer. Write the output value and perform arithmetic processing.

一方、入力変数となるポインタのフラグ情報が第2設定値のとき(“Read”のとき)は、ポインタに対応する模擬用アドレスに格納された値を読み込んで演算処理を行う。   On the other hand, when the flag information of the pointer serving as the input variable is the second set value (when “Read”), the value stored in the simulation address corresponding to the pointer is read to perform arithmetic processing.

一方、出力変数となるポインタのフラグ情報が第3設定値のときは(“Write”のとき)、ポインタに対応する模擬用アドレスに出力値を書き込んで演算処理を行う。   On the other hand, when the flag information of the pointer serving as the output variable is the third set value (when “Write”), the output value is written in the simulation address corresponding to the pointer and the arithmetic processing is performed.

これにより、入力側及び出力側の変数となるポインタ全てについて模擬値を設定して、
模擬することが可能となる。
This sets simulated values for all pointers that are variables on the input and output sides,
It becomes possible to simulate.

図13(B)は、第四実施形態に係る演算処理部16による、命令コードの処理フローを示している。
まず、演算処理部16は、ポインタ管理テーブル14を参照して、フラグ情報を確認する(S40)。
FIG. 13B shows a processing flow of an instruction code by the arithmetic processing unit 16 according to the fourth embodiment.
First, the arithmetic processing unit 16 refers to the pointer management table 14 and confirms flag information (S40).

そして、フラグ情報に“Read”が設定されている場合は(S40:YES)、入力側ポインタに対応する模擬用アドレスを読み込む(S42)。
一方、フラグ情報に“No”が設定されている場合は(S40:No)、入力側ポインタに対応する第二アドレスを読み込む(S41)。
If “Read” is set in the flag information (S40: YES), the simulation address corresponding to the input side pointer is read (S42).
On the other hand, when “No” is set in the flag information (S40: No), the second address corresponding to the input side pointer is read (S41).

そして、演算処理部16は、読み込んだアドレスから入力値を読み込んで(S43)、命令処理を実行する(S44)。   Then, the arithmetic processing unit 16 reads an input value from the read address (S43) and executes command processing (S44).

命令処理終了後、演算処理部16は、ポインタ管理テーブル14を参照して、フラグ情報を確認する(S45)。   After completing the instruction processing, the arithmetic processing unit 16 refers to the pointer management table 14 and confirms the flag information (S45).

そして、フラグ情報に“Write”が設定されている場合は(S45:YES)、出力側ポインタに対応する模擬用アドレスを読み込む(S47)。
一方、フラグ情報に“No”が設定されている場合は(S45:No)、出力側ポインタに対応する第二アドレスを読み込む(S46)。
If “Write” is set in the flag information (S45: YES), the simulation address corresponding to the output side pointer is read (S47).
On the other hand, when “No” is set in the flag information (S45: No), the second address corresponding to the output side pointer is read (S46).

そして、演算処理部16は、読み込んだアドレスに出力値の書き込みを行い(S48)、命令コードを終了する。
フラグ情報を“Read”または“Write”を設定することにより、入力側及び出力側の変数となるポインタ全てについて模擬値を設定して、模擬することが可能となる。
Then, the arithmetic processing unit 16 writes the output value to the read address (S48), and ends the instruction code.
By setting “Read” or “Write” as the flag information, it is possible to set and simulate the pointer values that are the variables on the input side and the output side.

以上述べた各プラント制御装置(変形例を含む)によれば、各線番に対して、線番の値を格納したアドレスに対応するポインタを割り当て、制御プログラムの変数をポインタに変換し、ポインタ管理テーブルを参照して制御プログラムを実行することにより、線番の値が格納されたアドレス情報が変更された場合であっても、制御プログラム自体を修正する必要がないため、制御プログラムの変更管理を容易なものにすることができる。   According to each plant control device described above (including modifications), a pointer corresponding to the address storing the value of the wire number is assigned to each wire number, a variable in the control program is converted to a pointer, and pointer management is performed. By executing the control program with reference to the table, it is not necessary to modify the control program even if the address information in which the wire number value is stored is changed. It can be easy.

本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。   Although several embodiments of the present 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.

10 プラント制御装置
11 入出力部
12 線番設定部
13 アドレス割当部
14 ポインタ管理テーブル
15 ポインタ割当部
16 演算処理部
17 メモリ
17a ユーザメモリ
17b プログラム格納メモリ
18 プログラム編集部
19 線番設定データ
20 アドレス割当データ
21 ポインタ割当データ
22 線番更新部
23 外部機器
24 保守ツール
DESCRIPTION OF SYMBOLS 10 Plant control apparatus 11 Input / output part 12 Line number setting part 13 Address assignment part 14 Pointer management table 15 Pointer assignment part 16 Operation processing part 17 Memory 17a User memory 17b Program storage memory 18 Program edit part 19 Line number setting data 20 Address assignment Data 21 Pointer allocation data 22 Wire number update unit 23 External device 24 Maintenance tool

Claims (7)

基板を介して入出力する複数の信号のそれぞれに線番を設定する線番設定部と、
前記線番のそれぞれをメモリ空間の第一アドレスに割り当てるアドレス割当部と、
前記信号のそれぞれの値を格納するメモリ空間の第二アドレスのそれぞれに対応して設定されたポインタを管理するポインタ管理テーブルと、
前記ポインタを前記線番のそれぞれに割り当てて、前記第一アドレスに格納するポインタ割当部と、
前記線番を入出力変数として作成された制御プログラムの前記線番に対応する部分を前記ポインタに書き換えるプログラム編集部と、
書き換えられた前記制御プログラムを読み込んで、前記ポインタ管理テーブルを参照して前記ポインタに対応する前記第二アドレスに格納された前記信号の値に基づいて演算処理する演算処理部と、
を備えることを特徴とするプラント制御装置。
A wire number setting unit for setting a wire number for each of a plurality of signals input / output via the substrate;
An address assignment unit for assigning each of the wire numbers to a first address in a memory space;
A pointer management table for managing a pointer set corresponding to each of the second addresses of the memory space storing the respective values of the signals;
A pointer assigning unit for assigning the pointer to each of the wire numbers and storing the pointer at the first address;
A program editing unit for rewriting a part corresponding to the wire number of the control program created using the wire number as an input / output variable with the pointer;
An arithmetic processing unit that reads the rewritten control program and performs arithmetic processing based on the value of the signal stored in the second address corresponding to the pointer with reference to the pointer management table;
A plant control apparatus comprising:
前記線番のそれぞれに割り当てられた前記第一アドレス及び前記ポインタの設定情報を記録するポインタ割当データと、
前記線番の変更を行う際に、前記ポインタ割当データに記録されている前記線番のみを当該変更に応じて更新する線番更新部と、
をさらに備えることを特徴とする請求項1に記載のプラント制御装置。
Pointer assignment data for recording the setting information of the first address and the pointer assigned to each of the wire numbers;
When changing the line number, a line number update unit that updates only the line number recorded in the pointer assignment data according to the change;
The plant control apparatus according to claim 1, further comprising:
前記ポインタのそれぞれは、メモリ空間上の模擬用アドレスが設定され、2つの設定値のいずれかに設定されるフラグ情報を有し、
前記演算処理部は、出力変数となる前記ポインタの前記フラグ情報が第1設定値のときは前記ポインタに対応する前記第二アドレスに出力値を書き込こみ、第2設定値のときは前記ポインタに対応する前記模擬用アドレスに出力値を書き込んで演算処理することを特徴とする請求項1または請求項2に記載のプラント制御装置。
Each of the pointers has a flag address that is set to one of two setting values, and a simulation address on the memory space is set.
The arithmetic processing unit writes an output value to the second address corresponding to the pointer when the flag information of the pointer serving as an output variable is a first set value, and the pointer when the flag information is a second set value. The plant control device according to claim 1, wherein an arithmetic operation is performed by writing an output value in the simulation address corresponding to.
前記ポインタのそれぞれは、メモリ空間の模擬用アドレスが設定され、2つの設定値のいずれかに設定されるフラグ情報を有し、
前記演算処理部は、入力変数となる前記ポインタの前記フラグ情報が第1設定値のときは前記ポインタに対応する前記第二アドレスに格納された値を読み込み、前記フラグ情報が第2設定値のときは前記ポインタに対応する前記模擬用アドレスに格納された値を読み込んで演算処理することを特徴とする請求項1または請求項2に記載のプラント制御装置。
Each of the pointers is set with a memory space simulation address, and has flag information set to one of two set values.
The arithmetic processing unit reads a value stored in the second address corresponding to the pointer when the flag information of the pointer serving as an input variable is a first set value, and the flag information is a second set value. 3. The plant control apparatus according to claim 1, wherein when the value is stored in the simulation address corresponding to the pointer, the calculation processing is performed.
前記ポインタのそれぞれは、メモリ空間上の模擬用アドレスが設定され、3つの設定値のいずれかに設定されるフラグ情報を有し、
前記演算処理部は、入出力変数となる前記ポインタの前記フラグ情報が第1設定値のときは前記ポインタに対応する前記第二アドレスに格納された値を読み込みまたは前記第二アドレスに出力値を書き込み、入力変数となる前記ポインタの前記フラグ情報が第2設定値のときは前記ポインタに対応する前記模擬用アドレスに格納された値を読み込み、出力変数となる前記ポインタの前記フラグ情報が第3設定値のときは前記ポインタに対応する前記模擬用アドレスに出力値を書き込んで演算処理することを特徴とする請求項1または請求項2に記載のプラント制御装置。
Each of the pointers is set with a simulation address on the memory space, and has flag information set to one of three setting values.
The arithmetic processing unit reads a value stored in the second address corresponding to the pointer or outputs an output value to the second address when the flag information of the pointer serving as an input / output variable is a first set value. When the flag information of the pointer serving as an input variable is a second set value, the value stored in the simulation address corresponding to the pointer is read, and the flag information of the pointer serving as an output variable is third The plant control apparatus according to claim 1, wherein when the value is a set value, the output value is written in the simulation address corresponding to the pointer to perform arithmetic processing.
基板を介して入出力する複数の信号のそれぞれに線番を設定するステップと、
前記線番のそれぞれをメモリ空間の第一アドレスに割り当てるステップと、
前記信号のそれぞれの値を格納するメモリ空間の第二アドレスのそれぞれに対応して設定されたポインタをポインタ管理テーブルで管理するステップと、
前記ポインタを前記線番のそれぞれに割り当てて、前記第一アドレスに格納するステップと、
前記線番を変数として作成された制御プログラムの前記線番に対応する部分を前記ポインタに書き換えるステップと、
書き換えられた前記制御プログラムを読み込んで、前記ポインタ管理テーブルを参照して前記ポインタに対応する前記第二アドレスに格納された前記信号の値に基づいて演算処理するステップと、
を含むことを特徴とするプラント制御方法。
Setting a wire number for each of a plurality of signals input and output via the substrate;
Assigning each of the wire numbers to a first address in a memory space;
Managing a pointer set corresponding to each second address of the memory space storing each value of the signal in a pointer management table;
Assigning the pointer to each of the wire numbers and storing in the first address;
Rewriting a part corresponding to the wire number of the control program created using the wire number as a variable to the pointer;
Reading the rewritten control program, and referring to the pointer management table, and performing arithmetic processing based on the value of the signal stored in the second address corresponding to the pointer;
The plant control method characterized by including.
コンピュータに、
基板を介して入出力する複数の信号のそれぞれに線番を設定するステップと、
前記線番のそれぞれをメモリ空間の第一アドレスに割り当てるステップ、
前記信号のそれぞれの値を格納するメモリ空間の第二アドレスのそれぞれに対応して設定されたポインタをポインタ管理テーブルで管理するステップ、
前記ポインタを前記線番のそれぞれに割り当てて、前記第一アドレスに格納するステップ、
前記線番を変数として作成された制御プログラムの前記線番に対応する部分を前記ポインタに書き換えるステップ、
書き換えられた前記制御プログラムを読み込んで、前記ポインタ管理テーブルを参照して前記ポインタに対応する前記第二アドレスに格納された前記信号の値に基づいて演算処理するステップを、実行させることを特徴とするプラント制御プログラム。
On the computer,
Setting a wire number for each of a plurality of signals input and output via the substrate;
Assigning each of the wire numbers to a first address in a memory space;
Managing a pointer set corresponding to each second address of the memory space storing each value of the signal in a pointer management table;
Assigning the pointer to each of the wire numbers and storing in the first address;
Rewriting a part corresponding to the wire number of the control program created using the wire number as a variable to the pointer;
The step of reading the rewritten control program and performing an arithmetic processing based on the value of the signal stored in the second address corresponding to the pointer with reference to the pointer management table is performed. Plant control program.
JP2013140883A 2013-07-04 2013-07-04 PLANT CONTROL DEVICE, PLANT CONTROL METHOD, AND PLANT CONTROL PROGRAM Active JP6071782B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013140883A JP6071782B2 (en) 2013-07-04 2013-07-04 PLANT CONTROL DEVICE, PLANT CONTROL METHOD, AND PLANT CONTROL PROGRAM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013140883A JP6071782B2 (en) 2013-07-04 2013-07-04 PLANT CONTROL DEVICE, PLANT CONTROL METHOD, AND PLANT CONTROL PROGRAM

Publications (2)

Publication Number Publication Date
JP2015014883A JP2015014883A (en) 2015-01-22
JP6071782B2 true JP6071782B2 (en) 2017-02-01

Family

ID=52436583

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013140883A Active JP6071782B2 (en) 2013-07-04 2013-07-04 PLANT CONTROL DEVICE, PLANT CONTROL METHOD, AND PLANT CONTROL PROGRAM

Country Status (1)

Country Link
JP (1) JP6071782B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6620454B2 (en) * 2015-08-06 2019-12-18 富士電機株式会社 Control apparatus and control method
JP6790541B2 (en) * 2016-07-20 2020-11-25 株式会社Ihi Logic update device and logic update method

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003271209A (en) * 2002-03-15 2003-09-26 Omron Corp Control device, expansion device and programming tool
US6640163B1 (en) * 2002-09-30 2003-10-28 Husco International, Inc. Operating system for a programmable controller of a hydraulic system
JP2006330932A (en) * 2005-05-24 2006-12-07 Toshiba Mitsubishi-Electric Industrial System Corp Apparatus for displaying and editing plant control program
JP2009009611A (en) * 2008-10-07 2009-01-15 Toshiba Corp Control program generator
US8839199B2 (en) * 2010-01-20 2014-09-16 Mitsubishi Electric Corporation Programmable controller system and development system

Also Published As

Publication number Publication date
JP2015014883A (en) 2015-01-22

Similar Documents

Publication Publication Date Title
JP5039428B2 (en) Programmable controller and PLC system
JP5583305B2 (en) Programmable logic controller, programming tool, and program parameter editing system
JP5790128B2 (en) Programmable controller system and its support device
JP6071782B2 (en) PLANT CONTROL DEVICE, PLANT CONTROL METHOD, AND PLANT CONTROL PROGRAM
CN105408827B (en) Programable controller system, Programmable Logic Controller, sequence display system, the display methods of program
JP5757098B2 (en) Program creation support apparatus and program creation support method
JP5849592B2 (en) Programmable controller system, programming device thereof, programmable controller, program, and debugging method
CN104133706A (en) Firmware modifying method and device
JP4319082B2 (en) Programming system
JP6119452B2 (en) Programmable controller system, its support device, programmable controller, program
JP6205934B2 (en) Programmable controller system, its support device, program
JP4127307B2 (en) Data storage device, data processing system, data processing method, and data processing device
JP5205988B2 (en) PLC global variable definition method
JP6455096B2 (en) Control system, its support device, programmable control device
JP2015215865A (en) Programmable controller system, support device thereof and programmable controller
CN110637263B (en) Monitoring support device, monitoring support method, and recording medium
JP4479558B2 (en) Programmable controller and programming tool thereof
KR20170088966A (en) System design assistance tool
JP6020071B2 (en) Programmable controller system, its support device, programmable controller
JP7499966B2 (en) Control device and address management method
JP4362777B2 (en) Programming device, symbol automatic registration method, program, and recording medium
JP2018018248A (en) Programmable controller
JP2016151973A (en) Management control system, development support device therefor, and management device
JP2017016416A (en) Control software development program
JP2003108397A (en) Firmware rewriting method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160209

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161227

R151 Written notification of patent or utility model registration

Ref document number: 6071782

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151