JPH09128017A - Method for determining address of controller and device therefor - Google Patents

Method for determining address of controller and device therefor

Info

Publication number
JPH09128017A
JPH09128017A JP28012795A JP28012795A JPH09128017A JP H09128017 A JPH09128017 A JP H09128017A JP 28012795 A JP28012795 A JP 28012795A JP 28012795 A JP28012795 A JP 28012795A JP H09128017 A JPH09128017 A JP H09128017A
Authority
JP
Japan
Prior art keywords
control
controller
address
function
block
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP28012795A
Other languages
Japanese (ja)
Inventor
Tsuneo Murate
恒夫 村手
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.)
Azbil Corp
Original Assignee
Azbil 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 Azbil Corp filed Critical Azbil Corp
Priority to JP28012795A priority Critical patent/JPH09128017A/en
Publication of JPH09128017A publication Critical patent/JPH09128017A/en
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)
  • Programmable Controllers (AREA)

Abstract

PROBLEM TO BE SOLVED: To remarkably improve the work of the determination for the slot address of a controller although much labor and time is conventionally required for the work and to automatically determine the arithmetic order of the control block composing a control logic diagram by generating the address corresponding to each function of the controller from the determined arithmetic order. SOLUTION: A control block editing part 13 edits the plural control blocks 1 corresponding to each function of a controller 10 and a link 2 defining the input/output relation between these control blocks 1 on a display screen and prepares a control logic diagram. An arithmetic order determination part 14 determines the arithmetic order of the control blocks 1 in the prepared control logic diagram. An address determination part 15 generates the address corresponding to each function of the controller 10 from the determined arithmetic order and transmits the address to the controller 10. Therefore, an operator is required to only prepare the control logic diagram on a screen by using the control blocks 1 and the handling time for setting the slot address in which the controller 10 actually operates can be remarkably reduced.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、プロセス制御等に用い
られるコントローラに用意された各種機能を実行するた
めのアドレス決定方法及び装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an address determining method and apparatus for executing various functions prepared in a controller used for process control or the like.

【0002】[0002]

【従来の技術】プロセス制御においては、専用のコント
ローラに制御動作を実行させるため、各種機能ないし演
算の種類毎に用意した制御ブロック(例えば、調節制
御、I/O制御等の機能を実現する電子回路のようなハ
ードウェア、或いはそれらの機能を実行するプログラム
等のソフトウェア)を、制御の流れに応じた制御ブロッ
クの順序付けを行う制御ロジック図に描き、その順序を
コントローラに割付ける、すなわち各制御ブロックに対
応するスロットのアドレスを決定することにより、必要
な制御動作を達成するようにしている。このとき、制御
ブロック間の信号の流れに従って各制御ブロックでの演
算の順序を正確に決定しないと、制御ブロックの間で演
算周期にずれが生じて演算結果に悪影響を及ぼすことが
あるので、演算の順序を正しく決定することが重要であ
る。
2. Description of the Related Art In process control, a control block prepared for each type of function or operation (for example, electronic control for realizing functions such as adjustment control, I / O control, etc.) in order to have a dedicated controller execute a control operation. Hardware such as circuits, or software such as programs that execute those functions) is drawn on a control logic diagram that orders the control blocks according to the flow of control, and that order is assigned to the controller, that is, each control By determining the address of the slot corresponding to the block, the required control operation is achieved. At this time, unless the order of calculation in each control block is accurately determined according to the flow of signals between the control blocks, the calculation cycle may be deviated between the control blocks, which may adversely affect the calculation result. It is important to correctly determine the order of.

【0003】このようなコントローラのスロットのアド
レスを決定する方法としては、オペレータが制御ロジッ
ク図を手書き、或いはパーソナルコンピュータ(以下
「パソコン」という)で動作するCADツール(ソフト
ウェア)等を用いて記述し、図示された制御ブロックの
間の信号の流れを見ながら、制御ブロックが割付けされ
るコントローラのスロットのアドレスを決めるという方
法が用いられている。
As a method of determining the address of the slot of such a controller, an operator writes a control logic diagram by hand or describes it by using a CAD tool (software) operating on a personal computer (hereinafter referred to as "personal computer"). The method of deciding the address of the slot of the controller to which the control block is assigned is used while observing the flow of signals between the control blocks shown in the figure.

【0004】例えば、図8に示すように、複数の制御ブ
ロック1が、それぞれアナログ入力(AI)、調節制御
(PID)及びアナログ出力(AO)の各機能を有し、
これらの制御ブロック1の間をリンク2で結んで構成さ
れる制御ロジック図の場合、アナログ入力ブロック(A
I)の出力Oは、調節制御ブロック(PID)の入力P
Vに接続されているので、後者の制御ブロック(PI
D)が演算される前に、前者の制御ブロック(AI)の
演算が終了していなければならない。また、調節制御ブ
ロック(PID)の出力OPは、アナログ出力ブロック
(AO)の入力Rに接続されているので、後者の制御ブ
ロック(AO)よりも前に前者の制御ブロック(PI
D)の演算が終了することが必要である。従って、各制
御ブロックの演算の順序はAI→PID→AOの順であ
ることが要求される。
For example, as shown in FIG. 8, a plurality of control blocks 1 have respective functions of analog input (AI), adjustment control (PID) and analog output (AO),
In the case of the control logic diagram configured by connecting the control blocks 1 with the link 2, the analog input block (A
The output O of I) is the input P of the regulation control block (PID).
Since it is connected to V, the latter control block (PI
The calculation of the former control block (AI) must be completed before D) is calculated. Further, since the output OP of the adjustment control block (PID) is connected to the input R of the analog output block (AO), the former control block (PI) is connected before the latter control block (AO).
It is necessary to complete the operation of D). Therefore, the order of operations of the control blocks is required to be AI → PID → AO.

【0005】このような制御ブロックの順序をコントロ
ーラに割付けするとき、制御ブロックの演算順序をコン
トローラのスロットアドレスに反映するために、オペレ
ータは上記の制御ロジック図を見ながら、これに対応す
るコントローラのスロットアドレスを決めなければなら
ず、大変な労力と時間を必要としていた。
When assigning the order of such control blocks to the controller, in order to reflect the operation order of the control block in the slot address of the controller, the operator looks at the above control logic diagram and looks at the controller corresponding thereto. The slot address had to be decided, which required a lot of labor and time.

【0006】また、一度コントローラのスロットアドレ
スを決定した後、制御ロジック図に制御ブロックの追加
や削除を行った場合には、再度スロットアドレスを設定
し直すことが必要になり、作業を繰り返さなければなら
なかった。
Further, if the control block is added or deleted from the control logic diagram after the slot address of the controller is once determined, it is necessary to set the slot address again, and the work must be repeated. did not become.

【0007】故に、本発明の目的は、従来多くの労力と
時間を要していたコントローラのスロットアドレス決定
の作業を大きく改善し、制御ロジック図を構成する制御
ブロックの演算順序を自動的に決定する方法及び装置を
提供することにある。
Therefore, the object of the present invention is to greatly improve the work of determining the slot address of the controller, which conventionally requires a lot of labor and time, and to automatically determine the operation order of the control blocks constituting the control logic diagram. It is to provide a method and a device for doing so.

【0008】[0008]

【課題を解決するための手段】本発明の方法は、プロセ
ス等の制御対象を制御する機能及び入出力機能を有する
コントローラの各機能に対応した複数の制御ブロックと
該制御ブロックの間を接続するリンクとを画面上で編集
して制御ロジック図を作成するステップと、前記制御ロ
ジック図で編集された制御ブロックの演算順序を決定す
るステップと、決定された演算順序から前記コントロー
ラの各機能に対応したアドレスを発生するステップとを
含むことを特徴とする。
According to the method of the present invention, a plurality of control blocks corresponding to respective functions of a controller having a function of controlling a controlled object such as a process and an input / output function are connected to each other. Corresponding to each function of the controller from the step of editing the link on the screen to create a control logic diagram, the step of determining the operation sequence of the control block edited in the control logic diagram, and the determined operation sequence Generating a generated address.

【0009】本発明の装置は、プロセス等の制御対象を
制御する機能及び入出力機能を有するコントローラの各
機能に対応した複数の制御ブロックと該制御ブロックの
間を接続するリンクとを画面上で編集して制御ロジック
図を作成する制御ブロック編集手段と、前記制御ロジッ
ク図で編集された制御ブロックの演算順序を決定する演
算順序決定手段と、決定された演算順序から前記コント
ローラの各機能に対応したアドレスを発生するアドレス
決定手段とを備えたことを特徴とする。
The apparatus of the present invention has, on the screen, a plurality of control blocks corresponding to respective functions of a controller having a function of controlling a control object such as a process and an input / output function, and links connecting the control blocks. Control block editing means for editing to create a control logic diagram, operation order determining means for determining the operation order of the control blocks edited in the control logic diagram, and corresponding function of the controller from the determined operation order And an address determining means for generating the generated address.

【0010】本発明の方法をパソコンで実施する場合、
パソコンは、プロセス等の制御対象を制御する機能及び
入出力機能を有するコントローラに対し、その制御ポイ
ントや入出力ポートと一対一対応する複数の制御ブロッ
クを用いて、オペレータが表示画面上で制御ロジック図
を編集できるように構成された制御ブロック編集部と、
前記制御ブロック編集部で編集された制御ロジック図を
構成する制御ブロック及びそれらの間の入出力関係を定
義したリンクから、すべての制御ブロックの演算順序を
決定する演算順序決定部と、該演算順序決定部からの出
力を用いて前記コントローラのスロットアドレスを決定
するアドレス決定部とを備え、これらの機能を実現する
ようにプログラムされる。
When the method of the present invention is carried out on a personal computer,
A personal computer uses a plurality of control blocks that correspond to control points and input / output ports to a controller that has a function to control a controlled object such as a process and an input / output function, and an operator uses a control logic on a display screen. A control block editing unit configured to edit the diagram,
An operation order determination unit that determines the operation order of all control blocks from a link that defines the control blocks that compose the control logic diagram edited by the control block editing unit and the input / output relationships between them, and the operation order. And an address determiner that determines the slot address of the controller using the output from the determiner and is programmed to implement these functions.

【0011】[0011]

【作用及び効果】オペレータは、例えばPID演算、開
閉演算等の機能を表現する制御ブロックを用いて、これ
ら制御ブロック間の結合関係及び制御実行の順序を表わ
す制御ロジック図を表示画面上で編集する。本発明にお
いては、制御ロジック図に表わされた制御ブロックの演
算順序を求め、求められた演算順序に対応したコントロ
ーラの機能実行手段のアドレスを自動的に決定する。こ
こでいうアドレスとは、ハードウエアとソフトウエアの
両方を対象とする。すなわち、「機能カード」と称され
る回路基盤のようなハードウエアとしてコントローラに
格納されている場合はそのハードウエアのアドレス、プ
ログラミングされてコントローラのメモリにある機能に
ついてはソフトウエア上のアドレスを意味する。
[Operation and effect] The operator edits the control logic diagram showing the connection relation between these control blocks and the order of control execution on the display screen by using the control blocks expressing the functions such as PID calculation and opening / closing calculation. . In the present invention, the operation sequence of the control blocks shown in the control logic diagram is obtained, and the address of the function executing means of the controller corresponding to the obtained operation sequence is automatically determined. The address here refers to both hardware and software. That is, when it is stored in the controller as hardware such as a circuit board called "function card", it means the address of the hardware, and for the function programmed in the memory of the controller, it means the address in software. To do.

【0012】なお、本発明によって決定されたアドレス
は、コントローラのメモリに書き込むことによってコン
トローラに設定されるが、本発明を実施するソフトウェ
アが制御システムに組み込まれており、或いはパソコン
がコントローラに接続されている場合は、アドレスの書
き込みを自動的に行うことができる。
The address determined by the present invention is set in the controller by writing it in the memory of the controller. However, software for implementing the present invention is incorporated in the control system, or a personal computer is connected to the controller. Address, the address can be written automatically.

【0013】本発明によれば、オペレータは、制御ブロ
ックを用いて制御ロジック図を画面上で作成するだけで
よく、コントローラの実際に動作するスロットアドレス
を設定する手間を大幅に削減できる。
According to the present invention, the operator only has to create the control logic diagram on the screen by using the control block, and the time and effort for setting the actually operating slot address of the controller can be greatly reduced.

【0014】また、一度作成した制御ロジック図を変更
しても、スロットアドレス決定ロジックを再度実行する
ことによって、制御ロジック図で示された通りの演算順
序を実現できる。
Further, even if the control logic diagram once created is changed, the operation order as shown in the control logic diagram can be realized by executing the slot address determination logic again.

【0015】更に、制御ブロックに対応するコントロー
ラが複数存在する場合でも、各コントローラに対してス
ロットアドレス決定のプログラムを複数用意するだけで
簡単に対応できる。
Furthermore, even if there are a plurality of controllers corresponding to the control blocks, this can be easily handled by preparing a plurality of slot address determination programs for each controller.

【0016】[0016]

【発明の実施の形態】図1は、本発明のアドレス決定装
置の構成を示す。これは、プロセス等の制御対象を制御
する機能及び入出力機能を有するコントローラ10に対
するアドレス決定のために用いられるものであり、ハー
ドウエアとしてパソコン本体11と、これに接続した表
示装置(CRT)12及びキーボードやマウス等の入力
操作手段(図示省略)とを有する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT FIG. 1 shows the configuration of an address determination device of the present invention. This is used for determining an address for the controller 10 having a function of controlling a control target such as a process and an input / output function, and is a personal computer main body 11 as a hardware and a display device (CRT) 12 connected thereto. And input operation means (not shown) such as a keyboard and a mouse.

【0017】パソコン本体11は、本発明の方法を実行
する機能実現手段として、制御ブロック編集部13、演
算順序決定部14及びアドレス決定部15を備え、これ
らの機能をパソコンの記憶部に格納されたプログラムに
従って実行する。
The personal computer main body 11 is provided with a control block editing unit 13, a calculation order determining unit 14, and an address determining unit 15 as function realizing means for executing the method of the present invention, and these functions are stored in the storage unit of the personal computer. Execute according to the program.

【0018】制御ブロック編集部13は、コントローラ
10の各機能に対応した複数の制御ブロック1とこれら
制御ブロック1の間の入出力関係を定義したリンク2と
を表示画面上で編集して制御ロジック図を作成する機能
(図1の画面では、前述のAI,PID及びAOの各制
御ブロック1とこれらを結ぶリンク2が表示されてい
る)を有する。
The control block editing unit 13 edits a plurality of control blocks 1 corresponding to each function of the controller 10 and a link 2 defining an input / output relationship between these control blocks 1 on a display screen to control logic. It has a function of creating a drawing (in the screen of FIG. 1, the above-mentioned control blocks 1 of AI, PID, and AO and a link 2 connecting them are displayed).

【0019】詳細には、制御ロジック図を作成すると
き、編集画面内の所定位置(例えば、画面下部)に、複
数種類の制御ブロックを各々のシンボルで表示した制御
ブロックメニュー20が表示されるので、オペレータ
は、マウス等の操作により、このメニュー20から所望
の制御ブロック(シンボル)を選択して編集画面内の任
意の位置に設定する。そして、各制御ブロックの間をリ
ンクで結ぶ操作を行うことにより、制御ロジック図を作
成することができる。
More specifically, when a control logic diagram is created, a control block menu 20 in which a plurality of types of control blocks are displayed with respective symbols is displayed at a predetermined position (for example, the lower part of the screen) in the edit screen. The operator selects a desired control block (symbol) from the menu 20 by operating the mouse or the like and sets it at an arbitrary position in the edit screen. Then, a control logic diagram can be created by performing an operation of connecting each control block with a link.

【0020】演算順序決定部14は、上記のようにして
作成された制御ロジック図における制御ブロックの演算
順序を、下記のように決定する機能を有する。
The operation order determining unit 14 has a function of determining the operation order of the control blocks in the control logic diagram created as described above, as follows.

【0021】アドレス決定部15は、決定された演算順
序からコントローラの各機能に対応したアドレスを発生
し、コントローラ10に送信する機能を有する。
The address determining unit 15 has a function of generating an address corresponding to each function of the controller from the determined calculation order and transmitting it to the controller 10.

【0022】以下、図1の装置を用いて制御ブロックの
演算順序を決定する方法について説明する。図2は、そ
の方法の具体的な手順を示すフローチャートである。
A method of determining the operation order of control blocks using the apparatus shown in FIG. 1 will be described below. FIG. 2 is a flowchart showing a specific procedure of the method.

【0023】初めに、制御ブロックの結合関係を調べ、
制御ブロックの「島リスト」を作成する(ステップST
1)。
First, the connection relationship between control blocks is investigated,
Create "island list" of control block (step ST
1).

【0024】「島リスト」とは、リンクで接続された制
御ブロックの固まり(島)を示すリストであり、制御ブ
ロックのリンク関係を管理するための概念として導入さ
れる。通常、島は複数存在するので、島リスト自身もリ
スト構造で管理される。初期状態では、リストメンバー
がない空の「島リストのリスト」が一つ存在する。
The "island list" is a list showing a group (islands) of control blocks connected by links, and is introduced as a concept for managing the link relationship of control blocks. Normally, since there are multiple islands, the island list itself is managed in a list structure. In the initial state, there is one empty "island list" with no list members.

【0025】図3は、島リストの構成例を示す。ここ
で、1つの制御ブロックAと、2つの制御ブロックB及
びCとは、それぞれ別の島を形成する。従って、「島リ
スト」は、次のように作成される。
FIG. 3 shows an example of the structure of the island list. Here, one control block A and two control blocks B and C respectively form another island. Therefore, the "island list" is created as follows.

【0026】 島リスト1={A} 島リスト2={B,C} 島リストのリスト={島リスト1,島リスト2} 最初のステップST1では、パソコンは、前述のように
編集された制御ロジック図を構成する制御ブロックを走
査し、各制御ブロックに対して以下の処理を繰り返し、
ステップST2で最後の制御ブロックか否かを判定する
ことにより、全ての制御ブロックに対する処理を達成す
る。
Island list 1 = {A} Island list 2 = {B, C} Island list list = {Island list 1, Island list 2} In the first step ST1, the personal computer controls the edited as described above. Scan the control blocks that make up the logic diagram, repeat the following process for each control block,
By determining whether or not it is the last control block in step ST2, the processing for all control blocks is achieved.

【0027】その処理は、制御ブロックがリンクを一つ
も持たない場合には、この制御ブロックは一つの島を形
成するものとみなし、「島リスト」を新たに作ってその
メンバーとする。この新たな島リストを「島リストのリ
スト」の最後に追加する。
In the processing, if the control block has no link, this control block is regarded as forming one island, and an "island list" is newly created and made a member thereof. Add this new island list to the end of the Island List list.

【0028】例えば、図3において制御ブロックAは、
他の制御ブロックとの間でリンクを持たないので、単独
で島を形成する。
For example, the control block A in FIG.
Since it has no link with other control blocks, it forms an island by itself.

【0029】また、制御ブロックが、自分のポートから
相手の制御ブロックのポートに向かうリンク(これを
「出力リンク」と称する)を持っている場合には、この
制御ブロックとその出力リンクで結ばれた制御ブロック
との「ブロック対」を考える。或る制御ブロックを基準
とするブロック対の全部について、島リストに同一の制
御ブロックが存在するか否かをチェックする。そして、
出力リンクで結ばれた制御ブロックの対がいずれの島リ
ストにも存在しないときは、新規の島として島リストを
作成し、当該制御ブロックの対を、この島リストの要素
とする。
If the control block has a link from its own port to the port of the other control block (referred to as "output link"), this control block is connected to the output link. Consider a "block pair" with a controlled block. For all the block pairs with a certain control block as a reference, it is checked whether or not the same control block exists in the island list. And
When a pair of control blocks connected by an output link does not exist in any island list, an island list is created as a new island, and the pair of control blocks is used as an element of this island list.

【0030】例えば、図3において制御ブロックBとC
は、出力リンクで結ばれたブロック対である。制御ブロ
ックがA→B→Cの順でチェックされるとき、制御ブロ
ックBをチェックした時点では、島リストは{A}のみ
しかできていない。従って、制御ブロックBとCは、別
の島を形成する。
For example, in FIG. 3, control blocks B and C
Is a pair of blocks connected by an output link. When the control blocks are checked in the order of A → B → C, at the time of checking the control block B, the island list has only {A}. Therefore, control blocks B and C form another island.

【0031】出力リンクで結ばれた制御ブロックの対の
いずれか一方が、単一の島リストに同一の制御ブロック
を含んでいるときは、含まれていない側の制御ブロック
を、この島リストに追加する。また、出力リンクで結ば
れた制御ブロックの対が、2つの島リストに同一の制御
ブロックを含んでいる場合には、これら2つの島は同一
の島であると判断し、2つの島リストを1つの島リスト
に作り直す。
When either one of the pairs of control blocks connected by the output link includes the same control block in a single island list, the control block on the non-included side is added to this island list. . Also, when the pair of control blocks connected by the output link includes the same control block in the two island lists, it is determined that these two islands are the same island, and the two island lists are set. Recreate one island list.

【0032】出力リンクで結ばれた制御ブロック対が単
一の島リストに同一の制御ブロックを含んでいるとき、
この出力リンクは「自己回帰リンク」とみなされる。こ
の「自己回帰リンク」で結ばれた制御ブロック対におい
ては、出力先の制御ブロックのポートに「固定トーク
ン」を設定する(後述の「トークン」を固定的に置
く)。更に、リンク元の制御ブロックが他に出力接続を
持たないときは、その制御ブロックを「終点ブロック」
とし、リンク先の制御ブロックが他に入力接続を持たな
いときは、その制御ブロックを「始点ブロック」とし
て、それぞれ設定する。
When a pair of control blocks connected by an output link includes the same control block in a single island list,
This output link is considered the "autoregressive link". In the control block pair connected by this "autoregressive link", a "fixed token" is set to the port of the control block of the output destination (the "token" described later is fixedly placed). Furthermore, when the control block of the link source has no other output connection, the control block is set as the "end point block".
When the control block of the link destination has no other input connection, the control block is set as the "start point block".

【0033】例えば、図4においては、制御ブロック
A,C,Fが「始点ブロック」、制御ブロックBが「終
点ブロック」である。制御ブロックDとFは「自己回帰
リンク」で結ばれた制御ブロック対であり、DからFへ
向かうリンクの出力先の制御ブロックFのポートに「固
定トークン」(○で示す)が設定される。ここで、制御
ブロックDは、「自己回帰リンク」の他に制御ブロック
Bへの出力リンクを持っているので、「終点ブロック」
とならない。制御ブロックFは、制御ブロックDからの
「自己回帰リンク」の他に入力リンクを持っていないの
で、「始点ブロック」となる。
For example, in FIG. 4, the control blocks A, C and F are "start point blocks" and the control block B is "end point block". The control blocks D and F are a pair of control blocks connected by an "autoregressive link", and a "fixed token" (indicated by a circle) is set to the port of the control block F that is the output destination of the link from D to F. . Here, since the control block D has an output link to the control block B in addition to the "autoregressive link", it is an "end point block".
Does not. Since the control block F has no input link other than the "autoregressive link" from the control block D, it becomes a "start point block".

【0034】上記のようにして全ての制御ブロックの走
査が終了した時、複数の島リストが残っていた場合、つ
まり「複数の小島」が存在している場合には、個々の島
リストのメンバーに関して演算順序を決定するアルゴリ
ズムを適用する。また、島ごとの演算順序は、島の登録
された順序(「島リストのリスト」の順序)を適用す
る。
When the scanning of all the control blocks is completed as described above and a plurality of island lists remain, that is, when "a plurality of small islands" are present, the members of the individual island lists are included. Apply an algorithm that determines the order of operations with respect to. Further, as the calculation order for each island, the order in which the islands are registered (the order of the “list of island lists”) is applied.

【0035】例えば、図5において、制御ブロックはA
→B→C→D→Eの順で画面に登録されているものとす
る。この場合、A,B,C,Dの順に走査した時点で、
島リストは、リスト1{A,E,C}とリスト2{B,
D}の2つができている。もし、DがEの出力リンクで
結ばれていれば、Eを走査した時点で、島リストはリス
ト1{A,E,C,B,D}となり、一つの島ができあ
がる。しかし、この例では、Eは出力リンクを持たない
ので、最終的に2つの島リスト1,2ができあがり、2
つの制御ブロックの島が存在することがわかる。島単位
での演算順序はこの時点で決定され、リスト1→2の順
序が決まる。
For example, in FIG. 5, the control block is A
It is assumed that the screens are registered in the order of → B → C → D → E. In this case, when scanning in the order of A, B, C, D,
The island list is list 1 {A, E, C} and list 2 {B,
D} is made. If D is connected by the output link of E, when E is scanned, the island list becomes list 1 {A, E, C, B, D}, and one island is completed. However, in this example, E does not have an output link, so two island lists 1 and 2 are finally created, and 2
It can be seen that there are two control block islands. The calculation order in island units is determined at this point, and the order of lists 1 → 2 is determined.

【0036】次に、図2のフローチャートにおいて、島
リストごとに「始点ブロック」リスト及び「終点ブロッ
ク」リストを作成する(ステップST3)。
Next, in the flowchart of FIG. 2, a "start point block" list and a "end point block" list are created for each island list (step ST3).

【0037】ここでは、初めに「始点ブロック」リスト
と「終点ブロック」リストを初期化(空のリストに)す
る。そして、島リストの先頭から制御ブロックを走査
し、制御ブロックの全てに対して次の処理を繰り返す。
すなわち、制御ブロックが入力リンクを持たなければ、
その制御ブロックを始点ブロックリストに追加する。ま
た、制御ブロックが出力リンクを持たなければ、その制
御ブロックを終点ブロックリストに追加する。
First, the "start point block" list and the "end point block" list are initialized (to an empty list). Then, the control block is scanned from the head of the island list, and the following processing is repeated for all the control blocks.
That is, if the control block has no input link,
Add the control block to the starting block list. If the control block has no output link, the control block is added to the end point block list.

【0038】次に、始点ブロックからトークンを開始
し、リンク関係から全ての制御ブロックに「トークン」
を移動し、終点ブロックに到達するまで実行する(ステ
ップST4)。
Next, the token is started from the starting point block, and all control blocks are "token" because of the link relation.
Is executed until the end block is reached (step ST4).

【0039】ここで、「トークン」とは、複数の処理の
同期状態や事象の状態遷移のように状態が時系列で変化
する場合、これらの状態の遷移を視覚的に表現するもの
であり、本発明では、制御ブロックを状態に対応させ、
複数の制御ブロック間のリンクを、ある状態から別の状
態への遷移を指示する指標に対応させることにより、状
態間を移動する「トークン (token)」という指標で、制
御ブロックの演算順序を決定することを特徴とする。
Here, the "token" is a visual representation of the transition of these states when the states change in time series, such as the synchronous state of a plurality of processes or the state transition of an event, In the present invention, the control block is made to correspond to the state,
Corresponding links between multiple control blocks to indicators that indicate the transition from one state to another, determining the order in which control blocks are calculated using the "token" indicator that moves between states. It is characterized by doing.

【0040】例えば図4において、トークンTは制御ブ
ロックの入出力ポートの位置に○印で示される。本発明
では、開始を示す「発火点」(始点ブロック)からトー
クンTを順番に移動させることにより、事象の遷移に対
応する制御ブロックの演算順序を決定できる。制御ブロ
ックにあるトークンTは、その制御ブロックへの入力が
全て満たされた時に、リンクで指示された制御ブロック
に移動できる。
For example, in FIG. 4, the token T is indicated by a circle at the position of the input / output port of the control block. In the present invention, by moving the token T in order from the "fire point" (start point block) indicating the start, the calculation order of the control blocks corresponding to the transition of the event can be determined. The token T in a control block can move to the control block pointed to by the link when all the inputs to that control block have been filled.

【0041】図2のステップST4では、初めに演算順
序のインデックスを、初期値として設定された値に初期
化する。この値は、島リストごとに決定される値であ
り、島ごとに制御ブロックの数を加算した値に相当す
る。例えば、「島リスト1」の制御ブロックの数が3で
あるならば、次の「島リスト2」の初期値は4となる。
In step ST4 of FIG. 2, the index of the calculation order is first initialized to the value set as the initial value. This value is a value determined for each island list and corresponds to a value obtained by adding the number of control blocks for each island. For example, if the number of control blocks in the “island list 1” is 3, the initial value of the next “island list 2” is 4.

【0042】次に、始点ブロックリストを「トークンブ
ロックリスト」の初期状態として設定する。「トークン
ブロックリスト」とは、どの制御ブロックが「トーク
ン」を持っているかを示すリストである。そして、始点
ブロックリストの全ての制御ブロックの出力ポートにト
ークンを置く。
Next, the starting point block list is set as the initial state of the "token block list". The “token block list” is a list indicating which control block has a “token”. Then, tokens are placed at the output ports of all the control blocks in the starting point block list.

【0043】更に、以下の処理をトークンブロックリス
トの制御ブロックが終点ブロックになるまで繰り返す。
すなわち、トークンブロックリストのメンバー(トーク
ンのある制御ブロック)が存在しなくなった時、終了す
る。
Further, the following processing is repeated until the control block in the token block list becomes the end block.
That is, the process ends when a member of the token block list (control block having a token) no longer exists.

【0044】その処理は、トークンブロックリストの制
御ブロックに対して全ての入力ポートがトークンを持っ
ているか(発火可能か)どうかを調べる。制御ブロック
には演算順序が付番され、付番が1加算(+1)され
る。
The process checks whether or not all the input ports have a token (can be fired) for the control block of the token block list. The control blocks are numbered according to the operation sequence, and the numbering is incremented by 1 (+1).

【0045】全ての入力ポートがトークンを持っている
制御ブロックは、発火可能である。発火した制御ブロッ
クは、トークンを出力リンクに接続された全ての制御ブ
ロックに移動し、トークンブロックリストの最後に、こ
れらの制御ブロックを追加する。更に、当該制御ブロッ
ク自身は、トークンブロックリストから削除する。制御
ブロックが終点ブロックの場合には、トークンの移動や
トークンブロックリストへの追加は行わない。
A control block in which all input ports have tokens can fire. The firing control block moves the token to all control blocks connected to the output link and adds these control blocks to the end of the token block list. Further, the control block itself is deleted from the token block list. When the control block is the end block, the token is not moved or added to the token block list.

【0046】全ての入力リンクがトークンを持っていな
い制御ブロックは、発火できない。その制御ブロック
は、トークンブロックリストに残しておき、トークンも
移動させない。
Control blocks where all input links do not have tokens cannot fire. The control block remains in the token block list and the token is not moved.

【0047】例えば、図6に示すように、制御ブロック
A〜Fがアルファベット順に制御ブロックリストに登録
されており、リンクは、図示のように設定されている場
合を考える。トークンは最初、始点ブロックリスト
{A,E}に存在している。始点ブロックA,Eはすぐ
発火可能であるので、トークンは、出力接続された次の
制御ブロック{D,B}に移動する。制御ブロックD
は、制御ブロックBが発火しないと発火できないので、
Bの発火待ちになる。Bの発火により、制御ブロックD
が発火すると、トークンブロックリストは{C,G}に
変化する。ここで、制御ブロックCは終点ブロックであ
るので、トークンは移動しない。制御ブロックGが発火
すると、トークンは制御ブロックFに移動するが、制御
ブロックFは終点ブロックであるので、トークンブロッ
クリストには、トークンのある制御ブロックは存在しな
くなり、走査が終了する。結果として、A→E→B→D
→C→G→Fの演算順序が決定する。
For example, as shown in FIG. 6, consider a case where control blocks A to F are registered in the control block list in alphabetical order and the links are set as shown. The token is initially present in the starting block list {A, E}. Since the starting point blocks A and E can be fired immediately, the token moves to the next control block {D, B} to which the output is connected. Control block D
Cannot fire unless control block B fires,
Waiting for B to fire. Control block D due to ignition of B
When is fired, the token block list changes to {C, G}. Here, since the control block C is the end point block, the token does not move. When the control block G fires, the token moves to the control block F, but since the control block F is the end block, there is no control block with a token in the token block list, and the scanning ends. As a result, A → E → B → D
The calculation order of C → G → F is determined.

【0048】以上のステップST3及び4の処理を島ご
とに繰り返し、ステップST5で島リストの最後か否か
を判定することにより、全ての島リストに対する処理を
達成する。
By repeating the processes of steps ST3 and ST4 for each island and determining whether or not it is the end of the island list in step ST5, the processes for all island lists are achieved.

【0049】最後に、上記のように制御ブロックに設定
された実行順序に基づき、制御ポイントの種類ごとに演
算順序の早いものからコントローラのアドレスの割付け
を行う(ステップST6)。
Finally, based on the execution order set in the control block as described above, controller addresses are assigned in descending order of operation for each control point type (step ST6).

【0050】例えば、図7に示すように複数種類(この
例では、A〜Dの4種類)の制御ブロック(数は7個)
がリンクで接続されている場合、それらの演算順序が数
字で示す順番で決定されたものとする。この場合、英文
字(A〜D)で示す制御ブロックの種別は、コントロー
ラの制御ポイントの種類の違いを示しているものとす
る。
For example, as shown in FIG. 7, a plurality of types (four types A to D in this example) of control blocks (the number is seven).
, Are connected by a link, it is assumed that their operation order is determined in the order shown by the numbers. In this case, it is assumed that the types of control blocks indicated by English characters (A to D) indicate the differences in the types of control points of the controller.

【0051】パソコンは、各制御ポイントごとにアドレ
スを順番に割付けすることにより、制御ブロック図で指
定された演算順序でコントローラのアドレスを設定する
ことができる。図7では、制御ポイントのタイプAの1
番目と2番目のスロットが、1番と2番の演算順序に割
付けられ、タイプBの1番目と2番目のスロットが3番
と6番の演算順序に割付けられ、タイプCのスロットが
4番の演算順序に割付けられ、タイプDの1番目と2番
目のスロットが5番と7番の演算順序に割付けられる。
The personal computer can set the address of the controller in the calculation order designated by the control block diagram by sequentially allocating the address for each control point. In FIG. 7, type 1 of control point A
The 2nd and 2nd slots are assigned to the operation order of 1 and 2, the 1st and 2nd slots of type B are assigned to the operation order of 3 and 6, and the slot of type C is 4th. And the first and second slots of type D are allocated to the operation order of No. 5 and No. 7.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明のアドレス決定装置の構成を示す図。FIG. 1 is a diagram showing a configuration of an address determination device of the present invention.

【図2】図1の装置を用いて制御ブロックの演算順序を
決定する方法の具体的な手順を示すフローチャート。
FIG. 2 is a flowchart showing a specific procedure of a method of determining a calculation order of control blocks using the apparatus of FIG.

【図3】制御ブロックで構成される「島」の例を示す
図。
FIG. 3 is a diagram showing an example of an “island” composed of control blocks.

【図4】1つの「島」における始点ブロック及び終点ブ
ロックの決定と自己回帰リンクの説明図。
FIG. 4 is an explanatory diagram of determination of a start point block and an end point block on one “island” and an autoregressive link.

【図5】複数の「島」がある場合の説明図。FIG. 5 is an explanatory diagram when there are a plurality of “islands”.

【図6】1つの「島」を構成している制御ブロックの演
算順序の決定を示す図。
FIG. 6 is a diagram showing the determination of the operation order of the control blocks forming one “island”.

【図7】制御ブロックの演算順序と対応するコントロー
ラのスロット割付けを示す図。
FIG. 7 is a diagram showing controller slot allocation corresponding to the operation order of control blocks.

【図8】制御ブロックの種類とそれらを結ぶリンクの例
を示す図。
FIG. 8 is a diagram showing an example of types of control blocks and links connecting them.

【符号の説明】[Explanation of symbols]

1…制御ブロック、2…リンク、11…パソコン本体、
12…表示装置、13…制御ブロック編集部、14…演
算順序決定部、15…アドレス決定部、10…コントロ
ーラ、20…制御ブロックメニュー。
1 ... Control block, 2 ... Link, 11 ... PC main body,
12 ... Display device, 13 ... Control block editing unit, 14 ... Calculation order determining unit, 15 ... Address determining unit, 10 ... Controller, 20 ... Control block menu.

Claims (3)

【特許請求の範囲】[Claims] 【請求項1】プロセス等の制御対象を制御する機能及び
入出力機能を有するコントローラの各機能に対応した複
数の制御ブロックと、該制御ブロックの間を接続するリ
ンクとを、表示画面上で編集して制御ロジック図を作成
するステップと、 前記制御ロジック図で編集された制御ブロックの演算順
序を決定するステップと、 決定された演算順序から前記コントローラの各機能に対
応したアドレスを発生するステップとを含むことを特徴
とする、コントローラのアドレス決定方法。
1. A plurality of control blocks corresponding to each function of a controller having a function of controlling a control object such as a process and an input / output function, and a link connecting the control blocks are edited on a display screen. Creating a control logic diagram, determining the operation sequence of the control blocks edited in the control logic diagram, and generating an address corresponding to each function of the controller from the determined operation sequence. A method for determining an address of a controller, comprising:
【請求項2】プロセス等の制御対象を制御する機能及び
入出力機能を有するコントローラの各機能に対応した複
数の制御ブロックと、該制御ブロックの間を接続するリ
ンクとを、表示画面上で編集して制御ロジック図を作成
する制御ブロック編集手段と、 前記制御ロジック図で編集された制御ブロックの演算順
序を決定する演算順序決定手段と、 決定された演算順序から前記コントローラの各機能に対
応したアドレスを発生するアドレス決定手段とを備えた
ことを特徴とする、コントローラのアドレス決定装置。
2. A plurality of control blocks corresponding to each function of a controller having a function of controlling a controlled object such as a process and an input / output function, and a link connecting the control blocks are edited on a display screen. And a control block editing means for creating a control logic diagram, an operation order determining means for determining the operation order of the control blocks edited in the control logic diagram, and a function corresponding to each function of the controller from the determined operation order. An address determining device for a controller, comprising: an address determining means for generating an address.
【請求項3】プロセス等の制御対象を制御する機能及び
入出力機能を有するコントローラに対し、その制御ポイ
ントや入出力ポートと一対一対応する複数の制御ブロッ
クを用いて、オペレータが表示画面上で制御ロジック図
を編集できるように構成された制御ブロック編集部と、 前記制御ブロック編集部で編集された制御ロジック図を
構成する制御ブロック及びそれらの間の入出力関係を定
義したリンクから、すべての制御ブロックの演算順序を
決定する演算順序決定部と、 該演算順序決定部からの出力を用いて前記コントローラ
のスロットアドレスを決定するアドレス決定部とを備え
たことを特徴とする、コントローラのアドレス決定装
置。
3. An operator on a display screen using a plurality of control blocks corresponding to control points and input / output ports of a controller having a function of controlling a controlled object such as a process and an input / output function. From the control block editing unit configured to edit the control logic diagram, the control block configuring the control logic diagram edited by the control block editing unit, and the link defining the input / output relationship between them, An address order determination unit for determining the operation order of the control block, and an address determination unit for determining the slot address of the controller by using the output from the operation order determination unit. apparatus.
JP28012795A 1995-10-27 1995-10-27 Method for determining address of controller and device therefor Pending JPH09128017A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP28012795A JPH09128017A (en) 1995-10-27 1995-10-27 Method for determining address of controller and device therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP28012795A JPH09128017A (en) 1995-10-27 1995-10-27 Method for determining address of controller and device therefor

Publications (1)

Publication Number Publication Date
JPH09128017A true JPH09128017A (en) 1997-05-16

Family

ID=17620718

Family Applications (1)

Application Number Title Priority Date Filing Date
JP28012795A Pending JPH09128017A (en) 1995-10-27 1995-10-27 Method for determining address of controller and device therefor

Country Status (1)

Country Link
JP (1) JPH09128017A (en)

Similar Documents

Publication Publication Date Title
US6173208B1 (en) Method for generating control codes for use in a process control system
US4545767A (en) Training operation system and simulator for training in electric power system
US5101362A (en) Modular blackboard based expert system
EP0477760A1 (en) Programming method and apparatus for programmable controller
JPH09128017A (en) Method for determining address of controller and device therefor
JPH025102A (en) Input system for pc rudder graphic
EP0551098B1 (en) Displaying method in programming system for programmable controller
JPS58178408A (en) Programmable controller having simulating function
JPH0944208A (en) Simulation method
JPH08328793A (en) Machine controller
JP2579996B2 (en) Core state prediction device
JP2533373B2 (en) Control program creation method
JP2740525B2 (en) Ladder software creation device for sequence controller
JP2533372B2 (en) Control program creation method
JPH11212608A (en) Automatic setting device for system configuration provided with communication parameter
JP2003223204A (en) Programming method of programmable controller, system thereof and recording medium thereof
JPH07200027A (en) Controller for automatic assembling device
JPH06176003A (en) Simulation device based upon petri net
JP2542784B2 (en) Automatic parts recognition device
JPH06332150A (en) Automatic processing system for mask data
JP3277715B2 (en) Display unit data creation method
JPH04151772A (en) Interactive automatic wiring system
JPH0764614A (en) Program control device and method and program producing device
JPS61131124A (en) Conversation input processing system
JPH07253806A (en) Scheduler definition generation device