JP6834239B2 - Logic generator and logic generation method - Google Patents

Logic generator and logic generation method Download PDF

Info

Publication number
JP6834239B2
JP6834239B2 JP2016158663A JP2016158663A JP6834239B2 JP 6834239 B2 JP6834239 B2 JP 6834239B2 JP 2016158663 A JP2016158663 A JP 2016158663A JP 2016158663 A JP2016158663 A JP 2016158663A JP 6834239 B2 JP6834239 B2 JP 6834239B2
Authority
JP
Japan
Prior art keywords
logic
control logic
signal
information
definition information
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
JP2016158663A
Other languages
Japanese (ja)
Other versions
JP2018026043A (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.)
IHI Corp
Original Assignee
IHI 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 IHI Corp filed Critical IHI Corp
Priority to JP2016158663A priority Critical patent/JP6834239B2/en
Publication of JP2018026043A publication Critical patent/JP2018026043A/en
Application granted granted Critical
Publication of JP6834239B2 publication Critical patent/JP6834239B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、ロジック生成装置及びロジック生成方法に関する。 The present invention relates to a logic generator and a logic generator.

従来から、制御対象からデータを収集しながら制御対象を監視すると共に、収集したデータ等に基づいて制御対象を制御する制御装置を備える制御システムがプラント等で用いられている。制御システムに含まれる制御装置は、予め作成された制御ロジックを用いて各種の制御を行う。この制御ロジックは、FBD(ファンクション・ブロック・ダイアグラム)言語等の図形言語を用いて作成される場合がある(例えば、特許文献1参照)。 Conventionally, a control system including a control device that monitors a control target while collecting data from the control target and controls the control target based on the collected data or the like has been used in a plant or the like. The control device included in the control system performs various controls using the control logic created in advance. This control logic may be created using a graphic language such as an FBD (function block diagram) language (see, for example, Patent Document 1).

特開2004−213277号公報Japanese Unexamined Patent Publication No. 2004-213277

FBD言語を用いてロジックを作成する場合、1つの信号は1本の線で記述される。そのため、信号の流れが視覚的に理解しやすいという利点がある。一方で、信号数が増えると、それに対応した線を個別に記述する必要があることから、ロジック作成の労力が大きくなる可能性があった。また、一度記述した信号線の修正を行う際にも信号線を個別に修正する必要があるため、精度の点からも改善の余地があった。 When creating logic using the FBD language, one signal is described by one line. Therefore, there is an advantage that the signal flow is easy to understand visually. On the other hand, as the number of signals increases, it is necessary to individually describe the corresponding lines, which may increase the labor for creating logic. In addition, since it is necessary to individually correct the signal line when the signal line described once is corrected, there is room for improvement in terms of accuracy.

本発明は上記を鑑みてなされたものであり、より簡便に高い精度の制御ロジックを生成可能なロジック生成装置及びロジック生成方法を提供することを目的とする。 The present invention has been made in view of the above, and an object of the present invention is to provide a logic generation device and a logic generation method capable of more easily generating highly accurate control logic.

上記目的を達成するため、本発明の一形態に係るロジック生成装置は、制御対象を制御する制御装置において解釈及び実行され、FBD言語による制御ロジックを生成するロジック生成装置であって、前記制御ロジックに含まれる複数の信号線に係る情報を個別に保持した状態で、当該複数の信号線を一つに取りまとめる構造体信号線を定義する構造体定義情報と、当該構造体定義情報を用いて記述された制御ロジックに係るロジック情報と、を取得する取得部と、前記取得部において取得された情報を用いて、前記構造体定義情報を利用した制御ロジックを生成する生成部と、を有する。 In order to achieve the above object, the logic generation device according to one embodiment of the present invention is a logic generation device that is interpreted and executed in a control device that controls a controlled object to generate control logic in the FBD language, and is the control logic. A structure definition information that defines a structure signal line that integrates the plurality of signal lines while individually holding information related to the plurality of signal lines included in the above, and a description using the structure definition information. It has an acquisition unit for acquiring logic information related to the control logic, and a generation unit for generating control logic using the structure definition information by using the information acquired in the acquisition unit.

上記のロジック生成装置では、構造体定義情報を利用した制御ロジックが生成される。このように、構造体定義情報により定義された構造体信号線を利用して制御ロジックが生成されることで、FBD言語で記述された制御ロジックを視覚的に理解しやすくすることができると共に、制御ロジックに記述すべき信号線の本数を減らすことができるので、制御ロジックの生成に必要なユーザによる作業を減らすことができ、精度の高い制御ロジックの生成が可能となる。また、制御ロジックに含まれる複数の信号線に係る情報を個別に保持した状態の構造体信号線を用いることで、複数の信号線を個別に取り扱うことも可能となり、構造体信号線の活用範囲を広げることができる。 In the above logic generator, control logic using the structure definition information is generated. In this way, by generating the control logic using the structure signal line defined by the structure definition information, it is possible to make the control logic written in the FBD language easier to understand visually. Since the number of signal lines to be described in the control logic can be reduced, the work required for the user to generate the control logic can be reduced, and the control logic can be generated with high accuracy. Further, by using the structure signal line in which the information related to the plurality of signal lines included in the control logic is individually held, it is possible to handle the plurality of signal lines individually, and the utilization range of the structure signal line. Can be expanded.

ここで、前記構造体定義情報は、前記構造体信号線として取りまとめられた前記複数の信号線を個別に識別し、前記制御ロジックにおいて使用することで前記複数の信号線に含まれる特定の信号線のみを記述することが可能な識別子情報を含む態様とすることができる。 Here, the structure definition information individually identifies the plurality of signal lines collected as the structure signal lines and is used in the control logic to specify specific signal lines included in the plurality of signal lines. The mode may include identifier information that can only describe.

上記のように、構造体定義情報において、構造体信号線に含まれる信号線に対して個別に識別子情報が付与されている。そのため、構造体信号線として記述されている信号線のうち特定の信号線のみを容易に取り出して制御ロジックに記述をすることが可能となっていて、ユーザによる制御ロジックの作成の省力化が実現される。 As described above, in the structure definition information, identifier information is individually added to the signal lines included in the structure signal lines. Therefore, it is possible to easily take out only a specific signal line from the signal lines described as the structure signal line and describe it in the control logic, which saves labor for the user to create the control logic. Will be done.

また、前記生成部において生成された前記構造体定義情報を利用した制御ロジックを、前記構造体定義情報を利用しない記述に変更する展開部と、前記展開部において前記構造体定義情報を利用しない記述に変更された前記制御ロジックを出力する出力部と、をさらに有する態様とすることができる。 Further, an expansion unit that changes the control logic that uses the structure definition information generated in the generation unit to a description that does not use the structure definition information, and a description that does not use the structure definition information in the expansion unit. It is possible to further have an output unit that outputs the control logic changed to.

上記のように、展開部において、構造体定義情報を利用して生成された制御ロジックについて、構造体定義情報を利用しない記述に変更し、出力部から出力する構成とすることが可能となっていると、構造体定義情報自体を保持していない装置に対して、構造体を使用しない記述に変更して送信することが可能となるため、構造体定義情報を利用した制御ロジックの生成を導入する際に他の装置との互換性等を確保する必要がなく、より簡単に構造体定義情報を利用した制御ロジックの生成を導入することができる。 As described above, in the expansion unit, the control logic generated by using the structure definition information can be changed to a description that does not use the structure definition information, and can be configured to be output from the output unit. If so, it is possible to change the description to one that does not use the structure and send it to the device that does not hold the structure definition information itself, so we introduced the generation of control logic using the structure definition information. It is not necessary to ensure compatibility with other devices, and it is possible to more easily introduce the generation of control logic using the structure definition information.

本発明の一形態に係るロジック生成方法は、制御対象を制御する制御装置において解釈及び実行され、FBD言語による制御ロジックを、1又は複数の装置によって構成されるロジック生成装置を用いて生成するロジック生成方法であって、制御ロジックに含まれる複数の信号線に係る情報を個別に保持した状態で、当該複数の信号線を一つに取りまとめる構造体信号線を定義する構造体定義情報と、当該構造体定義情報を用いて記述された制御ロジックに係るロジック情報と、を取得する取得ステップと、取得ステップにおいて取得された情報を用いて、構造体定義情報を利用した制御ロジックを生成する生成ステップと、を含む。 The logic generation method according to one embodiment of the present invention is interpreted and executed in a control device that controls a controlled object, and a logic that generates control logic in the FBD language using a logic generating device composed of one or more devices. A structure definition information that defines a structure signal line that combines the plurality of signal lines into one while individually holding information related to a plurality of signal lines included in the control logic, which is a generation method, and the relevant An acquisition step for acquiring logic information related to the control logic described using the structure definition information, and a generation step for generating a control logic using the structure definition information using the information acquired in the acquisition step. And, including.

本発明の一形態に係るロジック生成方法によれば、上述したロジック生成装置と同様に、FBD言語で記述された制御ロジックを視覚的に理解しやすくすることができると共に、制御ロジックに記述すべき信号線の本数を減らすことができるので、制御ロジックの生成に必要なユーザによる作業を減らすことができ、精度の高い制御ロジックの生成が可能となる。また、制御ロジックに含まれる複数の信号線に係る情報を個別に保持した状態の構造体信号線を用いることで、複数の信号線を個別に取り扱うことも可能となり、構造体信号線の活用範囲を広げることができる。 According to the logic generation method according to one embodiment of the present invention, the control logic described in the FBD language can be visually easily understood and should be described in the control logic as in the logic generation device described above. Since the number of signal lines can be reduced, the work required by the user to generate the control logic can be reduced, and the control logic can be generated with high accuracy. Further, by using the structure signal line in which the information related to the plurality of signal lines included in the control logic is individually held, it is possible to handle the plurality of signal lines individually, and the utilization range of the structure signal line. Can be expanded.

本発明によれば、より簡便に高い精度の制御ロジックを生成可能なロジック生成装置及びロジック生成方法が提供される。 According to the present invention, there is provided a logic generator and a logic generation method capable of more easily generating highly accurate control logic.

本発明の一実施形態に係るロジック生成装置を含む制御システムの概略構成図である。It is a schematic block diagram of the control system including the logic generation apparatus which concerns on one Embodiment of this invention. 構造体定義情報を説明する図である。It is a figure explaining the structure definition information. 構造体定義情報を利用した構造体信号線について説明する図である。It is a figure explaining the structure signal line which used the structure definition information. 構造体定義情報を利用して記述したブロックシートの例を示す図である。It is a figure which shows the example of the block sheet described by using the structure definition information. 本発明の一実施形態に係るロジック生成方法を示すフローチャートである。It is a flowchart which shows the logic generation method which concerns on one Embodiment of this invention. 制御ロジックの展開について説明する図である。It is a figure explaining the development of the control logic. 制御ロジックの展開について説明する図である。It is a figure explaining the development of the control logic.

以下、添付図面を参照して、本発明を実施するための形態を詳細に説明する。なお、図面の説明においては同一要素には同一符号を付し、重複する説明を省略する。 Hereinafter, embodiments for carrying out the present invention will be described in detail with reference to the accompanying drawings. In the description of the drawings, the same elements are designated by the same reference numerals, and duplicate description will be omitted.

図1は、本発明の一実施形態に係る制御システムの概略構成図である。制御システム1は例えばプラント等において適用されるシステムであり、制御対象となる装置の状態を示すデータ等を収集し、当該データ及びその他の情報に基づいて制御対象となる装置の制御を行うシステムである。 FIG. 1 is a schematic configuration diagram of a control system according to an embodiment of the present invention. The control system 1 is, for example, a system applied in a plant or the like, and is a system that collects data indicating the state of the device to be controlled and controls the device to be controlled based on the data and other information. is there.

制御システム1は、ロジック生成装置10、制御装置20及び制御対象装置30を含んで構成される。 The control system 1 includes a logic generation device 10, a control device 20, and a control target device 30.

ロジック生成装置10は、制御対象装置30の制御を制御装置20が行うための制御ロジックを生成する装置である。制御ロジックとはファンクション・ブロック・ダイアグラム(FBD)言語で作成されたロジックプログラムである。制御ロジックは、制御対象装置30に係る情報に基づいた演算を実行するための複数のロジックにより構成される。 The logic generation device 10 is a device that generates control logic for the control device 20 to control the control target device 30. Control logic is a logic program written in the function block diagram (FBD) language. The control logic is composed of a plurality of logics for executing an operation based on the information related to the controlled device 30.

ロジック生成装置10は、制御ロジックに対応するメモリマップについても生成する。メモリマップは、制御ロジックで使用される各信号に対するアドレス(メモリアドレス)の割り当てを示す割り当て情報であり、制御ロジックごとに生成されるものである。メモリマップは、制御ロジックで使用される各信号と、各信号が記憶されるアドレスとの対応関係を規定する。ロジック生成装置10により生成された制御ロジック及びメモリマップは、制御装置20へ送られる。 The logic generation device 10 also generates a memory map corresponding to the control logic. The memory map is allocation information indicating the allocation of addresses (memory addresses) for each signal used in the control logic, and is generated for each control logic. The memory map defines the correspondence between each signal used in the control logic and the address where each signal is stored. The control logic and memory map generated by the logic generation device 10 are sent to the control device 20.

ロジック生成装置10は、CPU(Central Processing Unit)、主記憶装置であるRAM(Random Access Memory)及びROM(Read Only Memory)、制御装置20等の他の機器との間の通信を行う通信モジュール、並びにハードディスク等の補助記憶装置等のハードウェアを備えるコンピュータとして構成される。そして、これらの構成要素が動作することにより、後述のロジック生成装置10としての機能が発揮される。ロジック生成装置10の各機能部については後述する。 The logic generation device 10 is a communication module that communicates with other devices such as a CPU (Central Processing Unit), a RAM (Random Access Memory) and a ROM (Read Only Memory) that are main storage devices, and a control device 20. It is also configured as a computer equipped with hardware such as an auxiliary storage device such as a hard disk. Then, by operating these components, the function as the logic generation device 10 described later is exhibited. Each functional part of the logic generator 10 will be described later.

制御装置20は、制御対象装置30を制御する装置である。制御装置20は、制御対象装置30からのデータを取得すると共に、制御ロジックを実行することで制御対象装置30の制御に係る動作を行う。制御装置20は、実行エンジン21と、入出力部22と、メモリ23とを備える。 The control device 20 is a device that controls the control target device 30. The control device 20 acquires data from the control target device 30 and executes a control logic to perform an operation related to the control of the control target device 30. The control device 20 includes an execution engine 21, an input / output unit 22, and a memory 23.

実行エンジン21は、制御ロジックを解釈して実行する機能を有する。入出力部22は、制御対象装置30からのデータ等を受信すると共に、実行エンジン21により制御ロジックを実行した結果に基づいて、制御対象装置30に対して処理の実行等を指示する機能を有する。メモリ23は、実行中の制御ロジックで使用されている各信号を記憶する機能を有する。上述のように、各信号に対するアドレスの割り当ては、割り当て情報であるメモリマップにより規定される。メモリ23は、制御ロジックに対応するメモリマップに従って、各信号を割り当てられたアドレスに記憶する。 The execution engine 21 has a function of interpreting and executing the control logic. The input / output unit 22 has a function of receiving data or the like from the controlled target device 30 and instructing the controlled target device 30 to execute a process or the like based on the result of executing the control logic by the execution engine 21. .. The memory 23 has a function of storing each signal used in the control logic being executed. As described above, the address assignment for each signal is defined by the memory map which is the allocation information. The memory 23 stores each signal at an assigned address according to a memory map corresponding to the control logic.

制御対象装置30は、制御システム1において制御装置20による制御の対象となる装置である。制御対象装置30として、例えば、プラントにおける運転装置等が挙げられる。制御対象装置30は、制御装置20からの指示を受信すると、これに基づいて運転制御等を行う。また、制御対象装置30は、制御装置20からの指示に基づいて、自装置で取得された運転データ等を制御装置20に対して送信する。このように、制御対象装置30では、自装置の状態を示す情報を制御装置20に送信し、自装置の状態に対応した指示を制御装置20から受信することで、運転の制御が行われる。 The control target device 30 is a device to be controlled by the control device 20 in the control system 1. Examples of the controlled device 30 include an operating device in a plant. Upon receiving the instruction from the control device 20, the control target device 30 performs operation control and the like based on the instruction. Further, the control target device 30 transmits the operation data or the like acquired by the own device to the control device 20 based on the instruction from the control device 20. In this way, the control target device 30 controls the operation by transmitting information indicating the state of the own device to the control device 20 and receiving an instruction corresponding to the state of the own device from the control device 20.

なお、図1では制御システム1を構成する制御装置20及び制御対象装置30がそれぞれ1台である場合を示しているが、制御装置20及び制御対象装置30は制御システム1にそれぞれ複数含まれていてもよい。この場合、制御装置20が複数の制御対象装置30を制御する構成とすることもできる。 Note that FIG. 1 shows a case where the control device 20 and the control target device 30 constituting the control system 1 are each one, but the control device 20 and the control target device 30 are each included in the control system 1. You may. In this case, the control device 20 may be configured to control a plurality of control target devices 30.

ロジック生成装置10の各機能部について説明する。ロジック生成装置10は、記憶部11と、ユーザインタフェース12に含まれるロジック情報取得部13(取得部)と、ユーザインタフェース12に含まれる構造体定義部14(取得部)と、生成部15と、展開部16と、出力部17と、を含んで構成される。 Each functional part of the logic generator 10 will be described. The logic generation device 10 includes a storage unit 11, a logic information acquisition unit 13 (acquisition unit) included in the user interface 12, a structure definition unit 14 (acquisition unit) included in the user interface 12, and a generation unit 15. A development unit 16 and an output unit 17 are included.

記憶部11は、後述の構造体定義部14において定義された構造体に係る情報である構造体定義情報を保持する。記憶部11において保持される情報は、制御ロジックの生成時及び展開時に利用される。また、記憶部11は、生成部15により生成された制御ロジックについても併せて保持する。ロジック生成装置10における制御ロジックの生成のタイミングと、他の装置等への制御ロジックの出力のタイミングとが異なる場合には、生成された制御ロジックを記憶部11に記憶しておき、必要なタイミングで出力処理を行うことが好ましい。 The storage unit 11 holds the structure definition information which is the information related to the structure defined in the structure definition unit 14 described later. The information held in the storage unit 11 is used when the control logic is generated and expanded. In addition, the storage unit 11 also holds the control logic generated by the generation unit 15. When the timing of generating the control logic in the logic generation device 10 and the timing of outputting the control logic to another device or the like are different, the generated control logic is stored in the storage unit 11 and the necessary timing is stored. It is preferable to perform the output processing in.

ユーザインタフェース12は、ユーザによるロジック生成装置10に対する入力及びユーザからの入力に対するロジック生成装置10による処理の結果の出力を行う部分である。ユーザインタフェース12には、ロジック情報取得部13と、構造体定義部14と、が含まれる。 The user interface 12 is a part that outputs the input to the logic generation device 10 by the user and the result of the processing by the logic generation device 10 in response to the input from the user. The user interface 12 includes a logic information acquisition unit 13 and a structure definition unit 14.

ロジック情報取得部13は、制御ロジックの生成に必要なロジック情報を取得する機能を有する。ロジック情報とは、例えば、制御ロジックには含まれる信号を特定する情報や、信号の処理を指定する情報等である。ロジック情報は、ユーザインタフェース12をユーザが操作することによって作成される。ロジック情報取得部13により取得された制御ロジックの生成に係るロジック情報は、生成部15へ送られる。 The logic information acquisition unit 13 has a function of acquiring logic information necessary for generating control logic. The logic information is, for example, information for specifying a signal included in the control logic, information for specifying signal processing, and the like. The logic information is created by the user operating the user interface 12. The logic information related to the generation of the control logic acquired by the logic information acquisition unit 13 is sent to the generation unit 15.

構造体定義部14は、制御ロジックの作成に必要なロジック情報をユーザが作成する際に用いられる「構造体信号」を定義する構造体定義情報を取得する機能を有する。構造体については後述する。構造体定義情報についても、ユーザインタフェース12をユーザが操作することによって作成される。構造体定義部14により取得された構造体定義情報は記憶部11へ送られ、記憶部11において記憶される。 The structure definition unit 14 has a function of acquiring structure definition information that defines a “structure signal” used when a user creates logic information necessary for creating a control logic. The structure will be described later. The structure definition information is also created by the user operating the user interface 12. The structure definition information acquired by the structure definition unit 14 is sent to the storage unit 11 and stored in the storage unit 11.

生成部15は、ロジック情報と構造体定義情報とに基づいて、制御ロジック及びメモリマップを生成する機能を有する。生成部15は、ロジック情報取得部13から送られたロジック情報と、構造体定義部14により取得され記憶部11に記憶された構造体定義情報と、に基づいて、制御ロジックを生成する。生成部15の機能は、例えば、CPUにより実現される。 The generation unit 15 has a function of generating a control logic and a memory map based on the logic information and the structure definition information. The generation unit 15 generates control logic based on the logic information sent from the logic information acquisition unit 13 and the structure definition information acquired by the structure definition unit 14 and stored in the storage unit 11. The function of the generation unit 15 is realized by, for example, a CPU.

生成部15では、ロジック情報と構造体定義情報とに基づいて、制御ロジックを生成する。生成部15では、ユーザにより作成されてロジック情報取得部13で取得されたロジック情報に含まれる各信号線に対して、実際に処理を行う際に必要な信号線を特定するための線番を割り当てる等の処理を行うことで、制御ロジックを生成する。また、生成部15において生成されるメモリマップは、制御ロジックに含まれる各信号に対して割り当てるメモリ領域を特定する情報である。制御ロジックにおいては信号線によって特定される信号には、制御装置20の外部入出力に使用される信号(以下、外部入出力用の信号とも言う)と、制御装置20の内部で行われる演算に使用される信号(以下、内部演算用の信号とも言う)とがある。メモリマップでは、これらの信号をそれぞれ割り当てるアドレスを指定する。 The generation unit 15 generates control logic based on the logic information and the structure definition information. In the generation unit 15, for each signal line created by the user and included in the logic information acquired by the logic information acquisition unit 13, a wire number for specifying a signal line necessary for actually performing processing is assigned. Control logic is generated by performing processing such as allocation. The memory map generated by the generation unit 15 is information for specifying a memory area to be allocated to each signal included in the control logic. In the control logic, the signals specified by the signal lines include signals used for external input / output of the control device 20 (hereinafter, also referred to as signals for external input / output) and calculations performed inside the control device 20. There is a signal used (hereinafter, also referred to as a signal for internal calculation). In the memory map, the address to which each of these signals is assigned is specified.

生成部15により生成された制御ロジック及びメモリマップは、記憶部11に記憶されると共に、出力部17に送られる。 The control logic and the memory map generated by the generation unit 15 are stored in the storage unit 11 and sent to the output unit 17.

展開部16は、制御装置20に対して制御ロジック及びメモリマップを送信する際に、記憶部11に記憶される制御ロジックに含まれる「構造体信号」を用いた記述を、構造体信号を含まない記述に変更する機能を有する。展開部16の機能は、例えば、CPUにより実現される。詳細については後述するが、制御装置20に対して送信する制御ロジックは、構造体信号に係る記述が含まれないように変換される。展開部16はこの構造体信号に係る記述が含まれないように制御ロジックを変更する処理を担う機能部である。展開部16は、ユーザ又は制御装置20等から、制御装置20に対して制御ロジック及びメモリマップの送信を指示された場合に上記の処理を実施する。展開部16により生成された制御ロジック及びメモリマップは、出力部17に送られる。 The expansion unit 16 includes a description using the “structure signal” included in the control logic stored in the storage unit 11 when transmitting the control logic and the memory map to the control device 20. It has a function to change to no description. The function of the expansion unit 16 is realized by, for example, a CPU. Although the details will be described later, the control logic transmitted to the control device 20 is converted so as not to include the description related to the structure signal. The expansion unit 16 is a functional unit that is responsible for changing the control logic so that the description related to the structure signal is not included. The expansion unit 16 performs the above processing when the user or the control device 20 or the like instructs the control device 20 to transmit the control logic and the memory map. The control logic and memory map generated by the expansion unit 16 are sent to the output unit 17.

出力部17は、生成部15において生成された制御ロジック及びメモリマップをモニタやプリンタ等に出力する機能を有する。出力部17の機能は、例えば、通信モジュールにより実現される。また、出力部17は、展開部16により記述が変更された制御ロジック及びメモリマップを制御装置20に送信する機能も有する。構造体信号を用いた記述がなされた制御ロジックと、構造体信号を用いた記述がなされていない制御ロジックと、のいずれを出力するかは、ユーザにより指定されてもよいし、出力先に応じて予め指定されていてもよい。 The output unit 17 has a function of outputting the control logic and the memory map generated by the generation unit 15 to a monitor, a printer, or the like. The function of the output unit 17 is realized by, for example, a communication module. The output unit 17 also has a function of transmitting the control logic and the memory map whose description has been changed by the expansion unit 16 to the control device 20. Whether to output the control logic described using the structure signal or the control logic not described using the structure signal may be specified by the user, depending on the output destination. May be specified in advance.

出力部17から制御装置20に対して制御ロジック及びメモリマップが出力されると、制御装置20では、ロジック生成装置10の出力部17から送信された制御ロジックが実行される。制御装置20では、これに併せて、出力部17から送信されたメモリマップに従って、アドレスの割り当てが行われる。 When the control logic and the memory map are output from the output unit 17 to the control device 20, the control device 20 executes the control logic transmitted from the output unit 17 of the logic generation device 10. At the same time, the control device 20 assigns an address according to the memory map transmitted from the output unit 17.

ここで、ロジック生成装置10において用いられる「構造体信号」について説明する。構造体信号は、本実施形態に係るロジック生成装置10において新たに用いられる概念である。上述の通り、ロジック生成装置10は、ユーザの操作に基づいて制御ロジックを生成する装置である。ユーザの利便性を高めながら制御ロジックの精度を高めるために、ロジック生成装置10内では「構造体信号」を定義すると共に、ファンクションブロックとして「置換ブロック」を用いて「構造体信号」を使用した制御ロジックを記述する。 Here, the "structure signal" used in the logic generator 10 will be described. The structure signal is a concept newly used in the logic generator 10 according to the present embodiment. As described above, the logic generation device 10 is a device that generates control logic based on a user operation. In order to improve the accuracy of the control logic while improving the convenience of the user, the "structure signal" is defined in the logic generator 10, and the "structure signal" is used by using the "replacement block" as the function block. Write control logic.

ロジック生成装置10において定義される「構造体信号」とは、複数の信号線を各信号線に係る情報は個別に保持された状態で、一つの信号線に取りまとめた信号である。ただし、どのような種類の信号(例えば、アナログ/デジタル)に係る信号線を、何本取りまとめて「構造体信号」として取り扱うかは前段及び後段のロジックによって異なる。したがって、「構造体信号」に含まれる信号線の種類及び本数が互いに異なる場合にはそれぞれ「構造体信号」を定義する必要がある。したがって、「構造体信号」の定義は、信号線の種類及び本数が互いに異なる場合、すなわち、構造体信号の「型」毎に個別に準備される。 The "structure signal" defined in the logic generator 10 is a signal in which a plurality of signal lines are combined into one signal line in a state where information related to each signal line is individually held. However, how many signal lines related to what kind of signal (for example, analog / digital) are collected and treated as a "structure signal" depends on the logic of the first stage and the second stage. Therefore, when the types and numbers of signal lines included in the "structure signal" are different from each other, it is necessary to define the "structure signal" respectively. Therefore, the definition of "structure signal" is prepared individually when the types and number of signal lines are different from each other, that is, for each "type" of the structure signal.

制御ロジック内では、複数の信号線を「構造体信号」に取りまとめる処理、及び、「構造体信号」に含まれる複数の信号をから個別の信号線を取り出す処理が発生する場合がある。そこで、制御ロジック内では、「置換ブロック」が用いられる。「置換ブロック」とは、複数の信号線を「構造体信号」として一つの信号線に取りまとめること、及び、「構造体信号」としての一つの信号線を定義に基づいて複数の信号線に振り分けることを行うファンクションブロックである。さらに、制御ロジック内で一つの信号線で示される「構造体信号」の一部の信号線のみを出力する際には、「構造体信号」に含まれる個別の信号を指定するための「個別信号取り出しブロック」が用いられる。 In the control logic, a process of collecting a plurality of signal lines into a "structure signal" and a process of extracting individual signal lines from a plurality of signals included in the "structure signal" may occur. Therefore, a "replacement block" is used in the control logic. The "replacement block" is to combine a plurality of signal lines into one signal line as a "structure signal" and to divide one signal line as a "structure signal" into a plurality of signal lines based on the definition. It is a function block that does things. Further, when outputting only a part of the signal lines of the "structure signal" represented by one signal line in the control logic, "individual" for designating the individual signals included in the "structure signal". A "signal extraction block" is used.

図2は、「構造体信号」の定義の例を示す図である。図3は、「置換ブロック」を説明する図である。また、図4は、図2で定義された「構造体信号」を使用して図3に示す「置換ブロック」を用いて記述された制御ロジックの一例を示す図である。 FIG. 2 is a diagram showing an example of the definition of “structure signal”. FIG. 3 is a diagram illustrating a “replacement block”. Further, FIG. 4 is a diagram showing an example of control logic described using the “structure signal” defined in FIG. 2 and the “replacement block” shown in FIG.

上述したように「構造体信号」は複数の信号線を取りまとめる信号であるが、どのような種類の信号線を何本取りまとめるかは状況によって異なる。すなわち、「構造体信号」の「型」が異なる。したがって、「構造体信号」に含まれる信号の種類及び本数が互いに異なる場合にはそれぞれ「構造体信号」を定義する必要がある。 As described above, the "structure signal" is a signal that aggregates a plurality of signal lines, but what kind of signal line and how many signal lines are aggregated differs depending on the situation. That is, the "type" of the "structure signal" is different. Therefore, when the types and numbers of signals included in the "structure signal" are different from each other, it is necessary to define the "structure signal" respectively.

図2(A)と図2(B)とは、互いに異なる「型」の構造体信号を定義した構造体定義情報を示している。この構造体定義情報は記憶部11に記憶される情報である。図2(A)では、型名を「ST1」とした構造体信号を定義した構造体定義情報を示している。また、図2(B)では、型名を「ST2」とした構造体信号を定義した構造体定義情報を示している。構造体定義情報では、構造体に含まれる複数の信号線毎に、信号種情報(信号種)及び識別子情報(識別子)を対応付けている。信号種情報とは、信号線の種類を特定する情報であり、識別子情報とは、各信号線を特定する情報である。 2 (A) and 2 (B) show structure definition information that defines structure signals of different “types”. This structure definition information is information stored in the storage unit 11. FIG. 2A shows the structure definition information in which the structure signal having the model name “ST1” is defined. Further, FIG. 2B shows the structure definition information in which the structure signal having the model name “ST2” is defined. In the structure definition information, signal type information (signal type) and identifier information (identifier) are associated with each of a plurality of signal lines included in the structure. The signal type information is information for specifying the type of signal line, and the identifier information is information for specifying each signal line.

図2(A)のST1型に係る構造体定義情報では、3本の信号線が構造体信号としてまとめられることを示しているが、そのうちの1本はアナログ(ANALOG)であり、残り2本はデジタル(DIGITAL)であることを示している。また、1本のアナログ信号線は識別子「val」であり、2本のデジタル信号線はそれぞれ識別子「cond1」、「cond2」であることを示している。 The structure definition information related to ST1 type in FIG. 2 (A) shows that three signal lines are grouped as a structure signal, one of which is analog (ANALOG) and the remaining two. Indicates that it is digital (DIGITAL). Further, it is shown that one analog signal line has an identifier "val" and the two digital signal lines have identifiers "cond1" and "cond2", respectively.

図2(B)のST2型に係る構造体定義情報では、3本の信号線が構造体信号としてまとめられることを示しているが、そのうちの2本はデジタル(DIGITAL)であることを示していて、もう1本は、信号種が「STRUCT ST1」と示されていて、「ST1」で示す構造体信号が対応付けられていることが示されている。このように、構造体信号を組み合わせた構造体信号を定義することもできる。また、図2(B)に示すST2型に係る構造体定義情報では、2本のデジタル信号線はそれぞれ識別子「button1」、「button2」であることを示している。一方、「ST1」と示されている構造体信号は、実際には、図2(A)で示されるように3本の信号線が取りまとめられたものである。したがって、図2(B)に示すように、識別子は、実際にはST1型の構造体定義情報を参照した3つの識別子「val」、「cond1」、「cond2」が対応付けられる。 The structure definition information related to ST2 type in FIG. 2 (B) shows that three signal lines are grouped as a structure signal, but two of them are digital (DIGITAL). The other signal type is indicated by "STRUCT ST1", and the structure signal indicated by "ST1" is associated with the signal type. In this way, it is also possible to define a structure signal in which the structure signals are combined. Further, in the structure definition information related to the ST2 type shown in FIG. 2B, it is shown that the two digital signal lines have the identifiers “button1” and “button2”, respectively. On the other hand, the structure signal shown as "ST1" is actually a combination of three signal lines as shown in FIG. 2 (A). Therefore, as shown in FIG. 2B, the identifiers are actually associated with the three identifiers “val”, “cond1”, and “cond2” that refer to the ST1 type structure definition information.

図3は、図2(A)で示したST1型の構造体信号を制御ロジックで用いる際の「置換ブロック」について示している。図3(A)では、複数の信号線をST1型の構造体定義情報に基づいて1つの構造体信号にまとめる「PACK」ブロックを示している。「PACK」ブロックにはパラメータとして「P1=ST1」が対応付けられていて、「PACK」ブロックがST1型の構造体信号に係る置換ブロックであることを示している。「PACK」ブロックを用いることで、アナログ信号の「AI0001」と、デジタル信号の「DI0001」及び「DI0002」と、の3つの信号線を1つの構造体信号線に取りまとめることができる。3つの信号線を1つにまとめた後の構造体信号線には、「$VV0001」という線番が割り当てられている。この線番は、制御ロジック内でこの構造信号線を特定するために用いられる。 FIG. 3 shows a “replacement block” when the ST1 type structure signal shown in FIG. 2 (A) is used in the control logic. FIG. 3A shows a “PACK” block that combines a plurality of signal lines into one structure signal based on ST1 type structure definition information. "P1 = ST1" is associated with the "PACK" block as a parameter, indicating that the "PACK" block is a replacement block related to the ST1 type structure signal. By using the "PACK" block, the three signal lines of the analog signal "AI0001" and the digital signals "DI0001" and "DI0002" can be combined into one structure signal line. A wire number of "$ VV0001" is assigned to the structure signal line after combining the three signal lines into one. This wire number is used to identify this structural signal line in the control logic.

ただし、上述したように、構造体信号では、複数の信号線を各信号線に係る情報は個別に保持された状態で保持される。したがって、「$VV0001」としてまとめられた3つの信号線は、個別に線番が割り当てられる。また、上記の構造体信号線を特定する情報と構造体の定義とを利用して、個別の信号を指定することもできる。 However, as described above, in the structure signal, a plurality of signal lines are held in a state where the information related to each signal line is individually held. Therefore, the three signal lines grouped as "$ VV0001" are individually assigned line numbers. In addition, individual signals can be specified by using the information for specifying the structure signal line and the definition of the structure.

図2(A)では、図3(A)に示す構造体信号線「$VV0001」に含まれる個別の信号について構造体信号線を特定する情報と構造体の定義とを用いて記述した例と、各信号について実際に割り当てられる線番(実線番)とを示している。図2(A)に示すように、構造体信号線「$VV0001」に含まれる3つの信号線は、構造体定義情報の識別子を利用して、「$VV0001.val」、「$VV0001.cond1」、「$VV0001.cond2」と区別することができる。制御ロジック中では、ユーザは、この個別信号の指定方法を利用して、信号を個別に取り扱うことができる。また、「$VV0001.val」、「$VV0001.cond1」、「$VV0001.cond2」と示された各信号には、実際にはそれぞれ「$EE7001」、「$LL7001」、「$LL7002」という線番が割り当てられる。構造体信号に含まれる各信号に係る実線番は、メモリマップにおいて使用される。メモリマップでは、実線番に対応付けて、当該信号を割り当てるメモリアドレスが設定される。このように、実線番は、主に内部処理において用いられる信号を特定するになるため、実線番の番号はユーザには示されない。したがって、ユーザは、割り当てられる線番に係る情報を認識することなく、識別子を利用して各信号を取り扱うことができる。 In FIG. 2A, there is an example in which the individual signals included in the structure signal line “$ VV0001” shown in FIG. 3A are described using the information for specifying the structure signal line and the definition of the structure. , The wire number (solid wire number) actually assigned to each signal is shown. As shown in FIG. 2A, the three signal lines included in the structure signal line “$ VV0001” are “$ VV0001.val” and “$ VV0001.cond1” by using the identifier of the structure definition information. , "$ VV0001.cond2" can be distinguished. In the control logic, the user can handle the signals individually by using this method of specifying the individual signals. Further, each signal indicated as "$ VV0001.val", "$ VV0001.cond1", and "$ VV0001.cond2" is actually referred to as "$ EE7001", "$ LL7001", and "$ LL7002", respectively. A wire number is assigned. The solid wire number of each signal included in the structure signal is used in the memory map. In the memory map, the memory address to which the signal is assigned is set in association with the solid wire number. As described above, since the solid wire number mainly specifies the signal used in the internal processing, the solid wire number is not shown to the user. Therefore, the user can handle each signal by using the identifier without recognizing the information related to the assigned wire number.

図2(B)では、ST2型を用いて定義された構造体信号線「$VV0003」に含まれる個別の信号について構造体信号線を特定する情報と構造体の定義とを用いて記述した例と、各信号に割り当てられる実線番とを示している。図2(B)に示すように、構造体ST2には、構造体ST1が組み込まれている。したがって、構造体ST2における構造体信号線には、実際にはST2型の構造体定義情報で定義される2本の信号線と、ST1の構造体定義情報で定義された3本の信号線と、が取りまとめられている。このとき、図2(B)に示すように、構造体信号線「$VV0003」に含まれる信号線のうち、ST2の構造体定義情報で定義される2本の信号線は、構造体定義情報の識別子を利用して、「$VV0003.button1」、「$VV0003.button2」と区別することができる。一方、構造体ST2に組み込まれた構造体ST1に含まれる3本の信号線については、ST1型の構造体定義情報での定義を利用して、「$VV0003.ST1.val」、「$VV0003.ST1.cond1」、「$VV0003.ST1.cond2」と示すことができる。したがって、特定の構造体に対して他の構造体が組み込まれている場合であっても、上記の手法を利用して、個別の信号を指定することができる。なお、図2(B)に示す場合にも、「$VV0003.button1」、「$VV0003.button2」、「$VV0003.ST1.val」、「$VV0003.ST1.cond1」、「$VV0003.ST1.cond2」と示された5本の各信号には、実際にはそれぞれ「$LL9000」、「$LL9001」、「$EE9001」「$EE9010」、「$EE9011」という線番が割り当てられる。この点は、図2(A)に示す例と共通である。 In FIG. 2B, an example in which individual signals included in the structure signal line “$ VV0003” defined using the ST2 type are described using information for specifying the structure signal line and the definition of the structure. And the solid wire number assigned to each signal. As shown in FIG. 2B, the structure ST1 is incorporated in the structure ST2. Therefore, the structure signal lines in the structure ST2 are actually two signal lines defined by the structure definition information of ST2 type and three signal lines defined by the structure definition information of ST1. , Are summarized. At this time, as shown in FIG. 2B, among the signal lines included in the structure signal line “$ VV0003”, the two signal lines defined in the structure definition information of ST2 are the structure definition information. It is possible to distinguish between "$ VV0003.button1" and "$ VV0003.button2" by using the identifier of. On the other hand, for the three signal lines included in the structure ST1 incorporated in the structure ST2, "$ VV0003.ST1.val" and "$ VV0003" are used by using the definition in the structure definition information of ST1 type. It can be expressed as ".ST1.cond1" and "$ VV0003.ST1.cond2". Therefore, even when another structure is incorporated in a specific structure, individual signals can be specified by using the above method. Also in the case shown in FIG. 2B, "$ VV0003.button1", "$ VV0003.button2", "$ VV0003.ST1.val", "$ VV0003.ST1.cond1", "$ VV0003.ST1" Each of the five signals labeled ".cond2" is actually assigned the wire numbers "$ LL9000", "$ LL9001", "$ EE9001", "$ EE9010", and "$ EE9011", respectively. This point is common to the example shown in FIG. 2 (A).

図3に戻り、図3(B)では、ST1型の構造体定義情報に基づいて1つの構造体信号を3つの信号線に分ける「UNPACK」ブロックを示している。「UNPACK」ブロックにはパラメータとして「P1=ST1」が対応付けられていて、「UNPACK」ブロックがST1型の構造体信号に係る置換ブロックであることを示している。「UNPACK」ブロックを用いることで、1つの構造体信号線を、ST1型の構造体定義情報に基づいて、1つのアナログ信号の「AO001」と、2つのデジタル信号の「DO0001」及び「DO0002」と、の3つの信号線に分けることができる。 Returning to FIG. 3, FIG. 3B shows an “UNPACK” block that divides one structure signal into three signal lines based on the ST1 type structure definition information. "P1 = ST1" is associated with the "UNPACK" block as a parameter, indicating that the "UNPACK" block is a replacement block related to the ST1 type structure signal. By using the "UNPACK" block, one structure signal line is divided into one analog signal "AO001" and two digital signals "DO0001" and "DO0002" based on the ST1 type structure definition information. It can be divided into three signal lines.

制御ロジックでは、上記のように、構造体定義情報に対応付けられた置換ブロックを用いて、構造体信号線へのとりまとめ及び構造体信号線からの分解が行われる。構造体定義情報は、制御ロジックに対して紐付けられるが、制御ロジックとは別の情報として取り扱われる。したがって、構造体定義情報は、異なる信号線に対して適用することができる。また、制御ロジック中では、構造体の「型」を指定した置換ブロックを利用して記述される。 In the control logic, as described above, the substitution block associated with the structure definition information is used to combine the structure signal lines and decompose the structure signal lines. The structure definition information is associated with the control logic, but is treated as information different from the control logic. Therefore, the structure definition information can be applied to different signal lines. Further, in the control logic, it is described using a replacement block in which the "type" of the structure is specified.

図4は、図2で定義した2つの構造体定義情報を利用して、置換ブロックを利用して制御ロジックを記述したシートであるブロックシートの例を示している。図4に示すブロックシートは制御ロジックの生成のためにユーザが作成する情報であり、ユーザから提供されるロジック情報に相当する情報である。すなわち、ロジック生成装置10の生成部15において割り振られる実線番に係る情報等は含まれていない情報である。 FIG. 4 shows an example of a block sheet which is a sheet in which control logic is described by using a replacement block by using the two structure definition information defined in FIG. The block sheet shown in FIG. 4 is information created by the user for generating control logic, and is information corresponding to logic information provided by the user. That is, the information and the like related to the solid wire number assigned by the generation unit 15 of the logic generation device 10 are not included.

図4では、ST1型の構造体定義情報を用いることが示された「PACK」ブロックB1により、3つの信号が取りまとめられ、線番「$VV0001」で示す構造体信号線が作成されている。また、線番「$VV0001」で示す構造体信号線は、分岐されて、一方は「MACRO」ブロックB2において用いられている。構造体信号線を用いない場合には、この「MACRO」ブロックB2に対して、構造体信号線を含む3本の信号線に代えて5本の信号線が入力されることになるが、構造体信号線を用いることで、「MACRO」ブロックB2に入力される信号線を減らした状態で記述することができる。なお、「MACRO」ブロックB2では出力についても構造体信号線が利用されている。具体的には、線番「$VV0002」で示される信号線は構造体信号線に相当する。 In FIG. 4, three signals are put together by the “PACK” block B1 shown to use the ST1 type structure definition information, and the structure signal line indicated by the wire number “$ VV0001” is created. Further, the structure signal line represented by the wire number "$ VV0001" is branched, and one of them is used in the "MACRO" block B2. When the structure signal line is not used, five signal lines are input to the "MACRO" block B2 instead of the three signal lines including the structure signal line. By using the body signal line, it is possible to describe in a state where the signal line input to the "MACRO" block B2 is reduced. In the "MACRO" block B2, the structure signal line is also used for the output. Specifically, the signal line represented by the wire number "$ VV0002" corresponds to the structure signal line.

また、分岐された線番「$VV0001」で示す構造体信号線の他方は、ST2型の構造体定義情報を用いることが示された「PACK」ブロックB3に入力されている。ST2型の構造体は、図2(B)で示すように、3つめの信号がST1型の構造体信号線であることが定義されている。したがって、「PACK」ブロックB3には、図2(B)に示す情報に基づいて、2つの信号線と1つの構造体信号線とが入力されている。そして、ST2型の構造体信号線が線番「$VV0003」として出力されている。 Further, the other side of the structure signal line indicated by the branched line number "$ VV0001" is input to the "PACK" block B3 shown to use the ST2 type structure definition information. In the ST2 type structure, as shown in FIG. 2B, it is defined that the third signal is the ST1 type structure signal line. Therefore, two signal lines and one structure signal line are input to the "PACK" block B3 based on the information shown in FIG. 2 (B). Then, the ST2 type structure signal line is output as the line number "$ VV0003".

線番「$VV0001」で示す構造体信号線は、分岐されて、一方は、「SCF2」ブロックに入力されると共に、他方は、ST2型の構造体定義情報を用いることが示された「UNPACK」ブロックB4に入力される。その結果、ST2型の構造体定義情報に基づいて、2つの信号線と、「$VV0004」として示されたST1型の構造体信号線とが出力されている。 The structure signal line indicated by the wire number "$ VV0001" is branched, and one is input to the "SCF2" block and the other is shown to use ST2 type structure definition information "UNPACK". Is input to block B4. As a result, two signal lines and an ST1 type structure signal line indicated as "$ VV0004" are output based on the ST2 type structure definition information.

また、図4では、構造体信号の個別の信号を取り出して使用する例が示されている。図4の下側には、「個別信号取り出しブロック」を用いた2つのブロックB5,B6として記述された信号が「AND」ブロックB7に入力している例が示されている。ブロックB5,B6には、それぞれ「$VV0002.on」、「$VV0003.on」という識別子を用いた信号名が記述されていて、それぞれ「$VV0002」、「$VV0003」で特定される構造体信号線において、識別子「on」により識別される信号であることが示されている。 Further, FIG. 4 shows an example in which individual signals of the structure signal are taken out and used. The lower side of FIG. 4 shows an example in which signals described as two blocks B5 and B6 using the "individual signal extraction block" are input to the "AND" block B7. In blocks B5 and B6, signal names using identifiers of "$ VV0002.on" and "$ VV0003.on" are described, respectively, and structures specified by "$ VV0002" and "$ VV0003", respectively. In the signal line, it is shown that the signal is identified by the identifier "on".

なお、図4に示すように、構造体信号は、他の個別の信号とは区別して記述されることが好ましい。これにより、構造体信号と他の信号とを容易に区別することができるため、修正等を容易に行うことができる。同様に、構造体信号に含まれる個別の信号を取り出すことを示す「個別信号取り出しブロック」についても、他の個別の信号とは区別して記述されていることが好ましい。 As shown in FIG. 4, it is preferable that the structure signal is described separately from other individual signals. As a result, the structure signal and other signals can be easily distinguished, so that modifications and the like can be easily performed. Similarly, it is preferable that the "individual signal extraction block" indicating that individual signals included in the structure signal are extracted is also described separately from other individual signals.

このように、制御ロジック中では、構造体信号情報により定義された構造体信号線を利用して記述を行うことで、FBD言語で記述された制御ロジックを視覚的に理解しやすくすることができると共に、制御ロジックに記述すべき信号線の本数を減らすことができるので、制御ロジックの生成に必要なユーザによる作業を減らすことができる。 In this way, in the control logic, the control logic written in the FBD language can be easily visually understood by describing using the structure signal line defined by the structure signal information. At the same time, since the number of signal lines to be described in the control logic can be reduced, the work required by the user to generate the control logic can be reduced.

ここで、図5を参照しながら、ロジック生成装置10におけるロジック生成方法について説明する。図5は、本発明の一実施形態に係るロジック生成方法を示すフローチャートである。 Here, a logic generation method in the logic generation device 10 will be described with reference to FIG. FIG. 5 is a flowchart showing a logic generation method according to an embodiment of the present invention.

まず、ユーザがユーザインタフェース12を利用して、ロジック情報及び構造体定義情報を作成する。つまり、ユーザインタフェース12が、ロジック情報及び構造体定義情報を取得する(取得ステップ)。これにより、生成部15では、構造体定義情報を利用した制御ロジックが生成される(S01:生成ステップ)。なお、生成部15では、制御ロジックに対応したメモリマップも生成される。生成部15において生成された制御ロジック及びメモリマップは、必要に応じて出力部17から出力される。また、制御ロジック及びメモリマップと、構造体定義情報とは、記憶部11に記憶される(S02)。上記の2つの工程は、ロジック生成装置10においてユーザの指示に基づいて制御ロジックを生成する際に行われる工程である。 First, the user creates logic information and structure definition information using the user interface 12. That is, the user interface 12 acquires the logic information and the structure definition information (acquisition step). As a result, the generation unit 15 generates the control logic using the structure definition information (S01: generation step). The generation unit 15 also generates a memory map corresponding to the control logic. The control logic and memory map generated in the generation unit 15 are output from the output unit 17 as needed. Further, the control logic, the memory map, and the structure definition information are stored in the storage unit 11 (S02). The above two steps are steps performed when the logic generation device 10 generates control logic based on a user's instruction.

次に、制御装置20への制御ロジック及びメモリマップの送信が必要になった際には、ユーザの指示等に基づいて、展開部16において、制御ロジックに含まれる構造体の展開に係る処理が行われる(S03)。そして、展開をした後の制御ロジックが、出力部17から制御装置20に対して出力される(S04)。上記のように、ロジック生成装置10では、構造体定義情報を用いて構造体を利用した制御ロジックが生成される。一方、制御装置20に対して制御ロジックを送信する場合には、構造体を用いない記述に制御ロジックを変更する。この処理を「展開」という。 Next, when it becomes necessary to transmit the control logic and the memory map to the control device 20, the expansion unit 16 performs a process related to the expansion of the structure included in the control logic based on the user's instruction or the like. It is done (S03). Then, the control logic after expansion is output from the output unit 17 to the control device 20 (S04). As described above, in the logic generation device 10, the control logic using the structure is generated by using the structure definition information. On the other hand, when the control logic is transmitted to the control device 20, the control logic is changed to a description that does not use a structure. This process is called "expansion".

図6及び図7では、制御ロジックにおける構造体に係る記述の展開を行う方法を示している。図6(A)では、図2(A)で示したST1型の構造体定義情報を利用して記述された制御ロジックを示していて、図3(A)と同様の記述となっている。図6(A)では構造体信号線の線番は「$VV0001」となっていて、構造体信号に含まれる3つの信号の実線番が「$EE8001」、「$LL8001」、「$LL8002」であることを示している。この図6(A)に示す制御ロジックを、「PACK」ブロックを利用せずに実線番に変換して記述するのが本実施形態における「展開」である。具体的には、図6(B)に示すように、入力側の3つの信号と、構造体信号に含まれる各信号に対応する実線番と、を「AEQ」ブロック又は「LEQ」ブロックという等価を示すブロックでつなげる処理を行う。この結果、3つの入力側の信号と、構造体信号に含まれていた3つの信号の実線番とを個別に接続することができる。なお、「UNPACK」ブロックについても、「PACK」ブロックと同様に等価を示すブロックを利用して置換を行うことで、構造体信号に含まれる各信号に対応する実線番と、出力側の信号とを個別に接続することができる。 6 and 7 show a method of expanding the description related to the structure in the control logic. FIG. 6 (A) shows the control logic described by using the ST1 type structure definition information shown in FIG. 2 (A), and has the same description as in FIG. 3 (A). In FIG. 6A, the line number of the structure signal line is "$ VV0001", and the solid line numbers of the three signals included in the structure signal are "$ EE8001", "$ LL8001", and "$ LL8002". It shows that. The "expansion" in the present embodiment is to convert the control logic shown in FIG. 6 (A) into a solid wire number without using the "PACK" block. Specifically, as shown in FIG. 6 (B), the three signals on the input side and the solid wire number corresponding to each signal included in the structure signal are equivalent to the "AEQ" block or "LEQ" block. Perform the process of connecting with the blocks indicating. As a result, the signals on the three input sides and the solid wire numbers of the three signals included in the structure signal can be individually connected. As for the "UNPACK" block, the solid wire number corresponding to each signal included in the structure signal and the signal on the output side can be obtained by substituting using the block showing equivalent as in the "PACK" block. Can be connected individually.

図7では、構造体信号に係る「個別信号取り出しブロック」を展開する方法について説明している。図7(A)では、ST3型として2つの信号線を取りまとめた構造体を定義した構造体定義情報を利用している。そして、図7(A)では、ST3型の構造体定義情報を利用した2つの構造体信号線「$VV0001」、「$VV0002」からそれぞれ識別子「on」で特定される信号を個別に取り出して、「AND」ブロックに入力する制御ロジックが示されている。ここで、構造体信号線「$VV0001」に含まれる2つの信号線には、それぞれ実線番「$EE8001」、「$LL8001」が割り振られているとする。また、「$VV0002」に含まれる2つの信号線には、それぞれ実線番「$EE8002」、「$LL8002」が割り振られているとする。この場合、「個別信号取り出しブロック」において「$VV0001.on」、「$VV0002.on」と記述された信号線の実線番は、「$LL8001」、「$LL8002」となる。したがって、図7(B)に示すように、「個別信号取り出しブロック」により記述された信号線を実線番のブロックに変換する。この結果、制御ロジックを、「個別信号取り出しブロック」を用いない記述、すなわち、構造体定義情報により定義される構造体を用いない記述に変更することができる。 FIG. 7 describes a method of developing an “individual signal extraction block” related to a structure signal. In FIG. 7A, the structure definition information that defines the structure in which the two signal lines are combined as the ST3 type is used. Then, in FIG. 7A, the signals specified by the identifiers “on” are individually extracted from the two structure signal lines “$ VV0001” and “$ VV0002” using the ST3 type structure definition information. , The control logic to enter in the "AND" block is shown. Here, it is assumed that the solid line numbers "$ EE8001" and "$ LL8001" are assigned to the two signal lines included in the structure signal line "$ VV0001", respectively. Further, it is assumed that the solid line numbers "$ EE8002" and "$ LL8002" are assigned to the two signal lines included in "$ VV0002", respectively. In this case, the solid line numbers of the signal lines described as "$ VV0001.on" and "$ VV0002.on" in the "individual signal extraction block" are "$ LL8001" and "$ LL8002". Therefore, as shown in FIG. 7B, the signal line described by the “individual signal extraction block” is converted into a block with a solid line number. As a result, the control logic can be changed to a description that does not use the "individual signal extraction block", that is, a description that does not use the structure defined by the structure definition information.

このように、構造体に係る概念はロジック生成装置10において定義されて使用されているため、制御装置20のように他の装置に対して制御ロジックを送信する際には構造体に係る記述を使用しないように変換することができる。 As described above, since the concept related to the structure is defined and used in the logic generation device 10, when the control logic is transmitted to another device such as the control device 20, the description related to the structure is described. It can be converted so that it is not used.

以上のように、本実施形態に係るロジック生成装置10及びロジック生成方法では、構造体定義情報を利用して、制御ロジックに含まれる複数の信号線を一つの構造体信号線によって代替して記述することができる。したがって、ユーザによる制御ロジックの作成の省力化を実現することができる。また、構造体信号線を利用した記述になると、制御ロジックに含まれる信号線の本数を削減することができるため、特に信号線の本数が増えて複雑になった場合に生じる可能性があるミス等を減らすことができる。そのため、より簡便に高い精度の制御ロジックを生成可能となる。 As described above, in the logic generation device 10 and the logic generation method according to the present embodiment, a plurality of signal lines included in the control logic are described by substituting one structure signal line by using the structure definition information. can do. Therefore, it is possible to save labor in creating the control logic by the user. In addition, when the description uses the structure signal line, the number of signal lines included in the control logic can be reduced, so that a mistake may occur especially when the number of signal lines increases and becomes complicated. Etc. can be reduced. Therefore, it is possible to more easily generate highly accurate control logic.

また、構造体定義情報によれば、制御ロジックに含まれる複数の信号線に係る情報を個別に保持した状態で、当該複数の信号線が構造体信号線として一つに取りまとめられる。したがって、構造体信号線として一つに取りまとめられた後も、複数の信号線は個別に取り扱うことができるため、制御ロジックにおいて信号線の記述を構造体信号線柔軟に変更することができる。また、マクロ等の数値計算を行うブロックに対して構造体信号線を入力させた場合でも、個別の数値計算等を好適に行うことができる。 Further, according to the structure definition information, the plurality of signal lines are combined into one as a structure signal line in a state where the information related to the plurality of signal lines included in the control logic is individually held. Therefore, since a plurality of signal lines can be handled individually even after they are combined into one as a structure signal line, the description of the signal line can be flexibly changed in the control logic. Further, even when a structure signal line is input to a block for performing numerical calculation such as a macro, individual numerical calculation or the like can be preferably performed.

さらに、制御ロジックに含まれる複数の信号線に係る情報を個別に保持している状態であると、制御ロジックに含まれる各信号に対して割り当てるメモリ領域を特定する情報であるメモリマップにおいて、複数の信号線に含まれる各信号に対してメモリ領域を割り当てる際にも、例えば、連続したメモリ領域を割り当てる必要がなくなり、柔軟な対応が可能となる。したがって、メモリマップの作成においても有用となる。 Further, when the information related to the plurality of signal lines included in the control logic is individually held, a plurality of information in the memory map which is the information specifying the memory area to be allocated to each signal included in the control logic. When allocating a memory area for each signal included in the signal line of, for example, it is not necessary to allocate a continuous memory area, and a flexible response becomes possible. Therefore, it is also useful in creating a memory map.

また、上記のロジック生成装置10では、構造体信号線に含まれる特定の信号線を取り出して記述可能となるように、構造体定義情報において、構造体信号線に含まれる信号線に対して個別に識別子情報が付与されている。したがって、構造体信号線として記述されている信号線のうち特定の信号線のみを容易に取り出して記述をすることが可能となっていて、ユーザによる制御ロジックの作成の省力化が実現されている。 Further, in the above-mentioned logic generator 10, the structure definition information is individually set for the signal line included in the structure signal line so that the specific signal line included in the structure signal line can be taken out and described. The identifier information is given to. Therefore, it is possible to easily extract and describe only a specific signal line from the signal lines described as the structure signal line, and the labor saving for the user to create the control logic is realized. ..

さらに、ロジック生成装置10では、構造体定義情報を利用して生成された制御ロジックについて、展開部16において構造体定義情報を利用しない状態に展開して出力部17から出力することが可能となっている。したがって、制御装置20のように、構造体定義情報自体を保持していない装置に対して、構造体を使用しない記述に変更して送信することが可能となるため、構造体定義情報を利用した制御ロジックの生成を導入する際に他の装置との互換性等を確保する必要がなく、より簡単に構造体定義情報を利用した制御ロジックの生成を導入することができる。 Further, in the logic generation device 10, the control logic generated by using the structure definition information can be expanded in the expansion unit 16 in a state where the structure definition information is not used and output from the output unit 17. ing. Therefore, the structure definition information is used because it is possible to change the description to one that does not use the structure and transmit it to a device that does not hold the structure definition information itself, such as the control device 20. When introducing the generation of control logic, it is not necessary to ensure compatibility with other devices, and it is possible to more easily introduce the generation of control logic using the structure definition information.

以上で説明した実施形態は本発明の一例を示すものである。本発明に係るロジック生成装置及びロジック生成方法は、上記実施形態に限られるものではなく、各請求項に記載した要旨を変更しない範囲で変形し、又は他のものに適用したものであってもよい。 The embodiments described above show an example of the present invention. The logic generation device and the logic generation method according to the present invention are not limited to the above-described embodiment, and may be modified or applied to other objects without changing the gist described in each claim. Good.

例えば、ロジック生成装置10は、上記実施形態で説明したように1つの装置によって構成されていてもよいし、複数の装置の組み合わせによって構成されていてもよい。また、制御システム1を構成する制御装置20及び制御対象装置30の数はそれぞれ複数であってもよい。この場合、例えば、制御装置20が複数の制御対象装置30を制御する構成とすることもできる。 For example, the logic generation device 10 may be configured by one device as described in the above embodiment, or may be configured by a combination of a plurality of devices. Further, the number of the control device 20 and the control target device 30 constituting the control system 1 may be plural. In this case, for example, the control device 20 may be configured to control a plurality of control target devices 30.

また、上記のロジック生成装置10では、制御装置20に対して制御ロジックを出力する際には展開部16において構造体定義情報を利用しない記述に制御ロジックを変更(展開)した後に出力することを前提としていた。しかし、例えば制御装置20においても構造体定義情報を保持している場合等のように、構造体定義情報を用いて記述された制御ロジックを出力しても解釈及び実行に影響を与えない場合には、展開部16における展開を省略して制御装置20等の他の装置に対して出力する構成としてもよい。 Further, in the above-mentioned logic generation device 10, when the control logic is output to the control device 20, the expansion unit 16 changes (expands) the control logic to a description that does not use the structure definition information, and then outputs the control logic. It was a premise. However, for example, when the control device 20 also holds the structure definition information, the output of the control logic described using the structure definition information does not affect the interpretation and execution. May be configured to omit the deployment in the deployment unit 16 and output to another device such as the control device 20.

1 制御システム
10 ロジック生成装置
11 記憶部
12 ユーザインタフェース
13 ロジック情報取得部
14 構造体定義部
15 生成部
16 展開部
17 出力部
20 制御装置
21 実行エンジン
22 入出力部
23 メモリ
30 制御対象装置
1 Control system 10 Logic generator 11 Storage unit 12 User interface 13 Logic information acquisition unit 14 Structure definition unit 15 Generation unit 16 Deployment unit 17 Output unit 20 Control device 21 Execution engine 22 Input / output unit 23 Memory 30 Control target device

Claims (4)

制御対象を制御する制御装置において解釈及び実行される制御ロジックであって、FBD言語で記述された当該制御ロジックを生成するロジック生成装置であって、
前記制御ロジックに含まれる複数の信号線に係る情報を個別に保持した状態で、当該複数の信号線を一つに取りまとめる構造体信号線を定義する構造体定義情報と、当該構造体定義情報を用いて記述された制御ロジックに係るロジック情報と、を取得する取得部と、
前記取得部において取得された情報を用いて、前記構造体定義情報を利用した制御ロジックを生成する生成部と、
を有するロジック生成装置。
A interpret and control logic that will be executed in the control apparatus for controlling a controlled object, a logic generator for generating the control logic written in FBD language,
A structure definition information that defines a structure signal line that integrates the plurality of signal lines into one while individually holding information related to the plurality of signal lines included in the control logic, and the structure definition information. The acquisition unit that acquires the logic information related to the control logic described using
A generation unit that generates control logic using the structure definition information using the information acquired in the acquisition unit, and a generation unit.
Logic generator with.
前記構造体定義情報は、前記構造体信号線として取りまとめられた前記複数の信号線を個別に識別し、前記制御ロジックにおいて使用することで前記複数の信号線に含まれる特定の信号線のみを記述することが可能な識別子情報を含む請求項1に記載のロジック生成装置。 The structure definition information individually identifies the plurality of signal lines collected as the structure signal lines and is used in the control logic to describe only specific signal lines included in the plurality of signal lines. The logic generator according to claim 1, which includes identifier information that can be used. 前記生成部において生成された前記構造体定義情報を利用した制御ロジックを、前記構造体定義情報を利用しない記述に変更する展開部と、
前記展開部において前記構造体定義情報を利用しない記述に変更された前記制御ロジックを出力する出力部と、
をさらに有する請求項1又は2に記載のロジック生成装置。
An expansion unit that changes the control logic that uses the structure definition information generated in the generation unit to a description that does not use the structure definition information.
An output unit that outputs the control logic changed to a description that does not use the structure definition information in the expansion unit,
The logic generator according to claim 1 or 2, further comprising.
制御対象を制御する制御装置において解釈及び実行される制御ロジックであって、FBD言語で記述された当該制御ロジックを、1又は複数の装置によって構成されるロジック生成装置を用いて生成するロジック生成方法であって、
前記制御ロジックに含まれる複数の信号線に係る情報を個別に保持した状態で、当該複数の信号線を一つに取りまとめる構造体信号線を定義する構造体定義情報と、当該構造体定義情報を用いて記述された制御ロジックに係るロジック情報と、を取得する取得ステップと、
前記取得ステップにおいて取得された情報を用いて、前記構造体定義情報を利用した制御ロジックを生成する生成ステップと、
を含むロジック生成方法。
A interpret and control logic that will be executed in the control apparatus for controlling a control object, the control logic written in FBD language, logic generating method for generating with a configured logic generating device by one or more devices And
A structure definition information that defines a structure signal line that integrates the plurality of signal lines into one while individually holding information related to the plurality of signal lines included in the control logic, and the structure definition information. The acquisition step to acquire the logic information related to the control logic described using
A generation step that generates control logic using the structure definition information using the information acquired in the acquisition step, and a generation step.
Logic generation method including.
JP2016158663A 2016-08-12 2016-08-12 Logic generator and logic generation method Active JP6834239B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016158663A JP6834239B2 (en) 2016-08-12 2016-08-12 Logic generator and logic generation method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016158663A JP6834239B2 (en) 2016-08-12 2016-08-12 Logic generator and logic generation method

Publications (2)

Publication Number Publication Date
JP2018026043A JP2018026043A (en) 2018-02-15
JP6834239B2 true JP6834239B2 (en) 2021-02-24

Family

ID=61194584

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016158663A Active JP6834239B2 (en) 2016-08-12 2016-08-12 Logic generator and logic generation method

Country Status (1)

Country Link
JP (1) JP6834239B2 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0588709A (en) * 1991-09-27 1993-04-09 Mitsubishi Heavy Ind Ltd Design back-up device for control software of machanical device
JP6346450B2 (en) * 2014-02-03 2018-06-20 アズビル株式会社 Engineering apparatus and control logic verification method

Also Published As

Publication number Publication date
JP2018026043A (en) 2018-02-15

Similar Documents

Publication Publication Date Title
JP6821497B2 (en) Data sharing method in the program development system of the industrial controller and the program development system of the industrial controller
US9811361B2 (en) Flexible allocation of I/O channels of a hardware component
JP2007287213A (en) Testing apparatus, program, and testing method
JP2010086410A (en) Memory protection method, information processing apparatus, memory protection program and recording medium with memory protection program recorded thereon
CN115617009A (en) Virtual development environment apparatus, method and recording medium
JP5841457B2 (en) Test equipment and test modules
JP6834239B2 (en) Logic generator and logic generation method
JP5841458B2 (en) Test equipment and test modules
JP2007102632A (en) Simulation device
JP4670719B2 (en) Numerical control device and simulation device for performing simulation using data from this numerical control device
JP4319082B2 (en) Programming system
US11907735B2 (en) Control device and method for deployment of software
EP2336883B1 (en) Programming system in multi-core environment, and method and program of the same
JP2003271209A (en) Control device, expansion device and programming tool
JP2012113502A (en) Verification device for semiconductor integrated circuit
JPH09330243A (en) Computer system
JP2008204341A (en) Interface composite device
JP6855886B2 (en) Logic generator
JP6790541B2 (en) Logic update device and logic update method
JP2001043251A (en) Device and method for high-order synthesis and recording medium used for the same
KR100503429B1 (en) Real-time debugging method
JP4604648B2 (en) Access system
JP6078954B2 (en) Image processing device
JP2020144812A (en) Engineering tool
JP4508245B2 (en) Data processing device

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190627

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200527

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200609

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20200811

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200907

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210118

R151 Written notification of patent or utility model registration

Ref document number: 6834239

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151