JP2002278606A - Programming tool and controller - Google Patents

Programming tool and controller

Info

Publication number
JP2002278606A
JP2002278606A JP2001073626A JP2001073626A JP2002278606A JP 2002278606 A JP2002278606 A JP 2002278606A JP 2001073626 A JP2001073626 A JP 2001073626A JP 2001073626 A JP2001073626 A JP 2001073626A JP 2002278606 A JP2002278606 A JP 2002278606A
Authority
JP
Japan
Prior art keywords
data
variable
control device
name
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.)
Granted
Application number
JP2001073626A
Other languages
Japanese (ja)
Other versions
JP4207105B2 (en
Inventor
Koji Yoshida
耕士 吉田
Shigeru Hitomi
繁 人見
Hiroshi Yoshida
寛 吉田
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.)
Omron Corp
Original Assignee
Omron Corp
Omron Tateisi Electronics Co
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 Omron Corp, Omron Tateisi Electronics Co filed Critical Omron Corp
Priority to JP2001073626A priority Critical patent/JP4207105B2/en
Publication of JP2002278606A publication Critical patent/JP2002278606A/en
Application granted granted Critical
Publication of JP4207105B2 publication Critical patent/JP4207105B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Programmable Controllers (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a programming tool for efficiently generating a system environment in which it is possible to easily perform access to shared data without caring about any communication processing. SOLUTION: In a distributed control system, shared data are defined with a logical name, and relevant information obtained by relating the address of the data specified by the logical name with the logical name is stored by a controller 1, and when the data are called during the execution of a program, the relevant information is accessed based on the logical name so that the address can be obtained, and that data transfer can be performed. When performing name solution for generating the relevant information, the name solution is performed by a static name solving part 5 of a programming tool 3 as necessary so that any dynamic name solution quantity through actual communication at the controller side can be reduced. The name solution by the tool 3 can be performed in a short time by making it unnecessary to perform any communication processing.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】この発明は、プログラミング
ツール及び制御装置に関するものである。より具体的に
は、複数のノード,制御装置,プロセッサ間でデータの
共有を図るシステム(例えば、分散制御システム等)に
おける当該データの共有化の処理の改良に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a programming tool and a control device. More specifically, the present invention relates to an improvement in a process for sharing data in a system for sharing data among a plurality of nodes, control devices, and processors (for example, a distributed control system).

【0002】[0002]

【従来の技術】複数台のPLC等の制御装置をネットワ
ークに接続し、それら複数の制御装置がデータを共有し
ながら協調・同期制御等を実行することがある。データ
は、スイッチやセンサなどの制御機器の接点の状態とし
ての入力データや、制御装置が制御する被制御装置の状
態としての出力データが含まれている。その場合、各制
御装置がこのようなデータを共有するためには、それぞ
れのI/Oを物理的に繋ぐか、つまり、制御機器や被制
御装置を、制御装置側の入出力端子に電気的結線する
か、データを共有するためのユーザプログラムを別途作
成し、それを実行させる方式が知られている。
2. Description of the Related Art In some cases, a plurality of control devices such as PLCs are connected to a network, and the plurality of control devices execute cooperative / synchronous control while sharing data. The data includes input data as a state of a contact point of a control device such as a switch or a sensor, and output data as a state of a controlled device controlled by the control device. In such a case, in order for each control device to share such data, each I / O must be physically connected, that is, a control device or a controlled device is electrically connected to an input / output terminal of the control device. A method is known in which a user program for connecting or sharing data is separately created and executed.

【0003】また、各制御装置がデータを共有するため
の別の方式としては、データリンク方式と称されるもの
もある。このデータリンク方式は、複数の制御装置間
で、サイクリックにデータを交換(リンク)する方式で
ある。例えば、制御装置としての各ノードにそれぞれメ
モリテーブルを持たせ、互いにデータを交換することで
各テーブルの内容を同じにすることによりデータの共有
をする。このとき、データを交換するためのアクセス
は、互いにメモリアドレス(物理アドレス)を指定して
行うようにしている。さらに、そのテーブルは、制御装
置以外の別のツールにより一括して設定する。この方式
では、ユーザプログラム開発時に通信を意識しないで済
むというメリットが有る。
As another system for sharing data between control devices, there is a system called a data link system. The data link system is a system in which data is cyclically exchanged (linked) between a plurality of control devices. For example, each node as a control device has a memory table, and data is shared by exchanging data with each other to make the contents of each table the same. At this time, access for exchanging data is performed by designating a memory address (physical address) with each other. Further, the table is collectively set by another tool other than the control device. This method has an advantage that it is not necessary to consider communication when developing a user program.

【0004】なお、各ノードごとで互いに自ノードで必
要なデータだけを、そのデータを持つ相手のノード間で
データ交換することでデータ共有し、自ノードで不必要
なデータは共有しないようにした方式もある。
[0004] Each node shares data only by exchanging data necessary for its own node with a partner node having the data, so that unnecessary data is not shared by its own node. There is also a method.

【0005】[0005]

【発明が解決しようとする課題】しかしながら、上記し
た従来方式では、以下に示す問題が有る。すなわち、前
者のユーザプログラムを用いた方式では、制御装置(P
LC)を動作させるラダープログラム中に通信ロジック
を埋め込む必要が有り、ユーザプログラム開発が複雑と
なり、さらには、メンテナンスも困難となる。
However, the conventional method described above has the following problems. That is, in the former method using the user program, the control device (P
It is necessary to embed communication logic in a ladder program for operating LC), which complicates user program development and makes maintenance difficult.

【0006】また、後者のデータリンク方式の場合に
は、データをリンクする際のメモリエリアの割り付け設
定自体が面倒となる。一旦メモリエリアの割り付けを設
定した後に、そのメモリエリアの割り付けの変更が有る
と、割り付け設定のやり直しがいちいち必要となる。し
かも、新たな制御装置をネットワークに追加する場合に
は、メモリエリアの再割り付けの変更が、ネットワーク
に既に接続されている制御装置にまで及ぶこともあり、
システムの停止をしなければならないという問題があっ
た。
In the case of the latter data link system, the setting of the memory area allocation itself when linking data becomes troublesome. Once the allocation of the memory area is set, if there is a change in the allocation of the memory area, it is necessary to redo the allocation setting. Moreover, when a new control device is added to the network, the change of the reallocation of the memory area may extend to the control device already connected to the network.
There was a problem that the system had to be stopped.

【0007】この発明は、通信処理を意識することな
く、共有するデータへのアクセスが容易に行え、係るア
クセスするための開発並びにその後のシステム変更に応
じた修正も容易に行え、システム稼動中に停止すること
なく新たなノード・制御装置等をネットワークに接続す
ることができ、論理名・変数データの参照の照合を効率
よく解決することができるプログラミングツール及び制
御装置を提供することを目的としている。
According to the present invention, shared data can be easily accessed without being conscious of communication processing, development for such access and subsequent modification in accordance with a system change can be easily performed. It is an object of the present invention to provide a programming tool and a control device that can connect a new node / control device or the like to a network without stopping, and can efficiently resolve collation of references of logical name / variable data. .

【0008】[0008]

【課題を解決するための手段】この発明に係るプログラ
ミングツールは、ネットワークに接続される複数の制御
装置間でデータを共有する分散制御システムを実現する
前記制御装置のためのプログラミングツールである。そ
して、前記共有するデータは論理名で定義し、その論理
名と、その論理名に対応するデータを格納した相対記憶
位置情報を関連付けた相対関連情報を生成し、関連情報
記憶部に格納する静的名前解決手段と、前記相対関連情
報を前記制御装置にダウンロードする手段を備えて構成
した。
SUMMARY OF THE INVENTION A programming tool according to the present invention is a programming tool for a control device for realizing a distributed control system for sharing data among a plurality of control devices connected to a network. The shared data is defined by a logical name, and relative related information is generated by associating the logical name with relative storage location information storing data corresponding to the logical name, and stored in the related information storage unit. And a means for downloading the relative related information to the control device.

【0009】また、本発明に係る制御装置は、ネットワ
ークに接続された他の制御装置間との間でデータを共有
することのできる制御装置であって、ネットワークを介
して前記他の制御装置との間で、データ交換をする通信
部と、前記通信部で得た共有するデータを格納する記憶
部と、前記共有するデータは論理名で定義し、その論理
名と、その論理名に対応するデータを格納した前記記憶
部の記憶位置情報を関連付けた関連情報を格納する関連
情報記憶部と、前記論理名に基づいて前記関連情報記憶
部にアクセスし、その論理名に対応する前記位置情報を
取得するとともに対応するデータが記憶される前記記憶
部の記憶領域にアクセスする機能を有する制御実行部
と、前記記憶部内の記憶位置情報の変更に基づき、前記
関連情報記憶部の前記関連情報を更新する更新手段と、
前記他の制御装置との間で通信を行い、請求項1に記載
のプログラミングツールから与えられる相対関連情報の
うちの前記相対記憶位置情報を実際の記憶位置情報に更
新する機能を備え、前記関連情報の少なくとも一部は、
前記相対関連情報に基づいて生成されたものとなるよう
にした。
Further, a control device according to the present invention is a control device capable of sharing data with another control device connected to a network, wherein the control device communicates with the other control device via a network. A communication unit that exchanges data, a storage unit that stores shared data obtained by the communication unit, and the shared data is defined by a logical name, and the logical name corresponds to the logical name. A related information storage unit that stores related information that associates storage location information of the storage unit that stores data, and accesses the related information storage unit based on the logical name, and stores the location information corresponding to the logical name. A control execution unit having a function of accessing a storage area of the storage unit in which the acquired and corresponding data is stored; and a control execution unit in front of the related information storage unit based on a change in storage location information in the storage unit. And updating means for updating the relevant information,
And a function of communicating with the other control device and updating the relative storage position information of the relative relation information provided from the programming tool according to claim 1 to actual storage position information. At least some of the information
The information is generated based on the relative relation information.

【0010】ここで、共有するデータを格納する記憶部
は、実施の形態では「リンクメモリ15」に相当する。
記憶部の記憶位置情報は、実施の形態では「アドレス,
ポインタ」等に相当する。関連情報記憶部は、実施の形
態では「間接参照テーブル16と変数データベース1
7」により実現している。記憶部内の記憶位置情報の変
更は、追加・削除等を含む広い概念である。更新手段
は、実施の形態では「論理名調停部19」に相当する。
更新する機能は、実施の形態では「静的名前解決結果変
換部25」に相当する。相対記憶位置情報は、十の形態
では、「相対アドレス」に対応する。
Here, the storage unit for storing the shared data corresponds to the "link memory 15" in the embodiment.
In the embodiment, the storage location information of the storage unit is “address,
Pointer "and the like. In the embodiment, the related information storage unit stores the “indirect reference table 16 and the variable database 1”.
7 ". Changing the storage location information in the storage unit is a broad concept including addition and deletion. The updating unit corresponds to the “logical name arbitration unit 19” in the embodiment.
The function of updating corresponds to the “static name resolution result conversion unit 25” in the embodiment. The relative storage location information corresponds to a “relative address” in the tenth embodiment.

【0011】そして、好ましくは前記関連情報記憶部
は、記憶部に格納されたデータをアクセスするために用
いる記憶位置情報が格納された間接参照テーブルと、論
理名と、その論理名についての記憶位置情報が格納され
た前記間接参照テーブル内の記憶位置情報を対応付けた
対応テーブルとを備えて構成することである。もちろ
ん、係る構成は無くても良い。そして、記憶位置情報を
対応付けた対応テーブルは、実施の形態では、「変数デ
ータベース」に相当する。
Preferably, the related information storage unit includes an indirect reference table storing storage position information used to access data stored in the storage unit, a logical name, and a storage position for the logical name. And a correspondence table that associates storage location information in the indirect reference table in which information is stored. Of course, such a configuration may not be necessary. The correspondence table in which the storage location information is associated corresponds to a “variable database” in the embodiment.

【0012】本発明によれば、静的名前解決は、プログ
ラミングツール内で名前解決するので、制御装置間での
通信が不要となり処理時間は短くなる。そして、その解
決して得られた相対関連情報を制御装置にダウンロード
することにより、制御装置が持つ関連情報に組み込むこ
とができる。すると、プログラミングツールで相対位置
情報が生成されたデータ(変数)については、相対位置
情報を実際に存在する位置情報に変更する処理を行えば
よいので、制御装置間で実際に通信を行い、関連情報を
取得する処理対象のデータ(変数)が少なくなる。よっ
て、制御装置側でも、係る関連情報を生成する場合に、
その処理時間が短くなる。
According to the present invention, since the static name resolution is performed in the programming tool, the communication between the control devices is not required, and the processing time is shortened. Then, by downloading the relative related information obtained by the solution to the control device, the relative related information can be incorporated into the related information of the control device. Then, for the data (variable) for which the relative position information has been generated by the programming tool, the process of changing the relative position information to the actual existing position information may be performed. Data (variables) to be processed for acquiring information is reduced. Therefore, even when the control device generates such related information,
The processing time is shortened.

【0013】この発明の以上説明した構成要素は可能な
限り組み合わせることができる。この発明による制御装
置,プログラミングツールを構成する各手段,機能を専
用のハードウェア回路によって実現することができる
し、プログラムされたコンピュータによって実現するこ
ともできる。
The components described above of the present invention can be combined as much as possible. Each means and functions constituting the control device and the programming tool according to the present invention can be realized by a dedicated hardware circuit, or can be realized by a programmed computer.

【0014】[0014]

【発明の実施の形態】図1は、本発明の好適な一実施の
形態を示している。同図に示すように、PLC等の制御
装置1とプログラミングツール3とが接続され、プログ
ラミングツール3で作成されたユーザプログラムが、制
御装置1にダウンロードされる。
FIG. 1 shows a preferred embodiment of the present invention. As shown in the figure, a control device 1 such as a PLC is connected to a programming tool 3, and a user program created by the programming tool 3 is downloaded to the control device 1.

【0015】各部の詳細な説明をする前に、本発明の前
提,概要を説明する。上記した制御装置1は、複数個用
意され、それぞれがネットワークに接続される。そし
て、それら複数の制御装置1がすべてのデータまたは必
要なデータを共有しながら協調・同期制御等を実行する
分散制御システムに適用される。
Before giving a detailed description of each part, the premise and outline of the present invention will be described. A plurality of the control devices 1 described above are prepared, and each is connected to a network. Then, the present invention is applied to a distributed control system in which the plurality of control devices 1 execute cooperative / synchronous control while sharing all data or necessary data.

【0016】このようなデータをネットワークグローバ
ル変数(以下、ネット変数と略)を用いて共有する仕組
みを持つ制御装置をネットワークで接続し、そのネット
変数の参照解決を制御装置1同士が自動的に行うため、
個々の制御装置1毎に格納されている別々の制御プログ
ラムを組合わせて容易に分散制御システムとして統合で
きる。
A control device having a mechanism for sharing such data using a network global variable (hereinafter abbreviated as a net variable) is connected via a network, and the control devices 1 automatically resolve the reference of the net variable. To do
By combining different control programs stored for each control device 1, it is possible to easily integrate them as a distributed control system.

【0017】本形態における制御装置1は、制御装置1
同士で変数情報を自動的に交換し、データ転送前に一括
して変数をメモリ上に割り当てる仕組み(名前解決処
理)を持ち、かつ電源ON時やネットワーク加入時にこ
の名前解決処理を実施する。この名前解決処理は、実際
に制御装置1を動作させながら行うことから動的な前解
決処理と称する。なお、具体的な動的名前解決処理のア
ルゴリズムは、後述する。
The control device 1 in the present embodiment is
It has a mechanism (name resolution processing) for automatically exchanging variable information with each other and allocating variables collectively to memory before data transfer, and executes this name resolution processing at the time of power-on or when joining a network. This name resolution processing is called dynamic pre-resolution processing because it is performed while actually operating the control device 1. The specific algorithm of the dynamic name resolution process will be described later.

【0018】ところで、ネットワークに接続された各制
御装置が持つ論理名(ネットワークグローバル変数)で
定義されたすべてのデータについて動的に名前解決をす
るようにすると、通信を介して変数の情報を制御装置間
で交換するので、通信が遅いと名前解決に要する時間が
長くなる。同様のことは、処理対象となるネット変数の
数が増えた場合も同様の問題が生じる。
By the way, if name resolution is dynamically performed for all data defined by the logical name (network global variable) of each control device connected to the network, the variable information is controlled through communication. Since the devices are exchanged, if the communication is slow, the time required for name resolution becomes longer. A similar problem occurs when the number of net variables to be processed increases.

【0019】一方、プログラミングツール3は、制御装
置で実行されるプログラムを開発するための環境であ
り、ユーザがラダー言語などで作成したプログラムをコ
ンパイルしたり、ライブラリをリンクしたりして制御装
置で実行可能な形式に変換する機能を持つ。そして、プ
ログラミングツール3上では、複数の制御装置1のプロ
グラム,変数(データ)の情報を1つのプロジェクトと
して管理する。
On the other hand, the programming tool 3 is an environment for developing a program to be executed by the control device. The user compiles a program created in a ladder language or the like, or links a library to execute the program on the control device. It has a function to convert to an executable format. Then, on the programming tool 3, information on programs and variables (data) of the plurality of control devices 1 is managed as one project.

【0020】そこで、プログラミングツール3におい
て、プロジェクトに含まれる複数の制御装置1のプログ
ラムで使われている変数(データ)の情報が予めわかっ
ているときには、プログラミングツール3上で名前解決
を行う機能を持たせている。これを静的名前解決と称す
る。この静的名前解決は、動的名前解決と同様のアルゴ
リズムに従ってツール上で処理することもできるし、ツ
ールがすべての変数を知っているので、ツール側で一括
処理するようにしてもよい。そして、静的名前解決が行
われなかった残りの変数については必要に応じて動的名
前解決を行う。
Therefore, when the programming tool 3 knows in advance the information of the variables (data) used in the programs of the plurality of control devices 1 included in the project, a function for performing name resolution on the programming tool 3 is provided. I have it. This is called static name resolution. This static name resolution can be processed on the tool according to the same algorithm as the dynamic name resolution, or the tool can collectively process all variables since the tool knows all the variables. Then, dynamic name resolution is performed as needed for the remaining variables for which static name resolution has not been performed.

【0021】なお、静的名前解決を行った場合でも、実
際にネットワークに接続されていないため、各デバイス
等の絶対アドレスは不明であるので、相対アドレスによ
り定義することになる。そこで、実際にネットワークに
接続した際に、動的名前解決の実行に伴い、相対アドレ
スを絶対アドレスに変換する機能も設けた。
Even when static name resolution is performed, the absolute address of each device or the like is unknown because it is not actually connected to the network, so that it is defined by a relative address. Therefore, a function for converting a relative address to an absolute address with the execution of dynamic name resolution when actually connected to a network is provided.

【0022】次に、各部の説明を行う。まず、制御装置
1について説明する。制御装置1は、制御部11と通信
部12を備えている。制御部11は、ラダーシステムを
実行し、制御装置(PLCなど)1本来の制御を行う。
通信部12は、ネットワークに接続され、他の制御装置
と通信する機能を持つ。具体的には、ネットワーク接続
し、所定の通信プロトコルによりデータの送受(本発明
との関係で言えば、共通のデータ交換)を行う通信コン
トローラ12aと、その通信コントローラ12aで通信
制御する際のプロトコル変換をする際にデータを一時記
憶したり、プロトコル変換したり、送受信先を特定する
際の情報(データベース)を記憶保持するRAM12b
を有している。
Next, each part will be described. First, the control device 1 will be described. The control device 1 includes a control unit 11 and a communication unit 12. The control unit 11 executes a ladder system and performs the original control of the control device (such as a PLC) 1.
The communication unit 12 is connected to a network and has a function of communicating with another control device. Specifically, a communication controller 12a that connects to a network and performs data transmission / reception (common data exchange in the context of the present invention) according to a predetermined communication protocol, and a protocol for controlling communication by the communication controller 12a. RAM 12b for temporarily storing data when performing conversion, performing protocol conversion, and storing and holding information (database) for specifying transmission and reception destinations
have.

【0023】一方、制御部11は、接続された機器への
制御プログラムや、ネットワーク接続された別の制御装
置1と協調動作する際の制御プログラムなどを格納した
ROM11aと、そのROM11aに格納されたプログ
ラムを実行するMPU11b及びMPU11bにて各種
処理を実行する際に必要なデータ(管理データ)を記憶
するRAM11cを有している。このハードウェア構成
自体は基本的に従来と同様である。
On the other hand, the control unit 11 stores a control program for a connected device, a control program for cooperating with another control device 1 connected to the network, and the like, and a ROM 11a stored in the ROM 11a. It has an MPU 11b for executing a program and a RAM 11c for storing data (management data) necessary for executing various processes in the MPU 11b. This hardware configuration itself is basically the same as the conventional one.

【0024】ここで本発明では、図2に概念図で示すよ
うに、それぞれのデータを論理名(ネットワークグロー
バル変数)で定義し、各制御装置(PLC)1に組み込
まれたユーザプログラム(オブジェクトコード)は、論
理名を指定して共有するデータを取得するようにしてい
る。これにより、各制御装置1は対応するデータが記憶
された物理アドレスを意識することなく、データの共有
ができ、しかも物理アドレスを意識しないので、一旦登
録後、共有するデータを記憶する物理アドレスを自由に
変更することができる。
In the present invention, as shown in the conceptual diagram of FIG. 2, each data is defined by a logical name (network global variable) and a user program (object code) incorporated in each control device (PLC) 1 is defined. ) Specifies a logical name and acquires data to be shared. Thereby, each control device 1 can share data without being conscious of the physical address where the corresponding data is stored, and since it is not conscious of the physical address, once registered, the physical address for storing the shared data is changed. Can be changed freely.

【0025】この概念の一例を示すと、ある制御装置
(1)1で、Switchが定義(図示の場合、変数
名:値が「Switch1」として定義)されていると
する。すると、別の制御装置(3)1が、制御装置
(1)1のSwitch1のデータがほしい場合には、
制御装置(3)1のユーザプログラムは、変数名である
「Switch1」を指定するとともに、そのデータを
取得する命令を実行することにより、Switch1に
関連付けられた具体的なデータを取得することができ
る。換言すると、同一内容のデータは、同一の論理名で
定義され、ネットワーク上はその論理名が唯一存在する
ことになる。つまり、異なるデータに対しては別の論理
名が付される。
As an example of this concept, it is assumed that Switch is defined in a certain control device (1) 1 (in the case of the drawing, the variable name: the value is defined as "Switch1"). Then, when another control device (3) 1 wants the data of Switch 1 of the control device (1) 1,
The user program of the control device (3) 1 can acquire specific data associated with Switch 1 by specifying a variable name “Switch 1” and executing an instruction to acquire the data. . In other words, data having the same content is defined by the same logical name, and the logical name exists only on the network. That is, different logical names are assigned to different data.

【0026】そして、データ内容に変更があった場合に
は、所定の制御装置1がその内容を書き替えることで、
そのデータを共有する他の制御装置1に記憶された内容
も書き替えられることになる。
When there is a change in the data content, a predetermined control device 1 rewrites the content,
The content stored in another control device 1 that shares the data is also rewritten.

【0027】次に、上記した機能を実現するための具体
的な構成について説明する。図3に示すように、RAM
11cの内部にネットワークを介して論理的に共有する
データ(変数データ)を格納するためのリンクメモリ1
5と、このリンクメモリ15に格納された各変数データ
を参照するために用いる間接参照テーブル16と、論理
名とメモリアドレス(間接参照テーブル16のアドレ
ス)とを関連付けた変数データベース17を有してい
る。なお、各部の詳細な説明は後述する。
Next, a specific configuration for realizing the above functions will be described. As shown in FIG.
Link memory 1 for storing data (variable data) logically shared via a network inside 11c
5, an indirect reference table 16 used to refer to each variable data stored in the link memory 15, and a variable database 17 in which a logical name is associated with a memory address (the address of the indirect reference table 16). I have. The detailed description of each unit will be described later.

【0028】一方、MPU11bには、間接参照テーブ
ル16を介してリンクメモリ15にアクセスする機能を
備えたPLC1の制御動作を実行するための制御実行部
18と、変数データベース17を管理し、その変数デー
タベース17に格納された情報に基づき間接参照テーブ
ル16を変更する論理名調停部19を備えている。
On the other hand, the MPU 11b manages a control execution unit 18 for executing a control operation of the PLC 1 having a function of accessing the link memory 15 through the indirect reference table 16, and a variable database 17, and manages the variable A logical name arbitration unit 19 that changes the indirect reference table 16 based on the information stored in the database 17 is provided.

【0029】次に各部について説明する。まず、リンク
メモリ15は、上記したようにネットワークを介して論
理的に共有しているデータを格納するためのメモリであ
り、そのデータ構造は例えば図4に示すようになってい
る。すなわち、同一の論理名は、ネットワーク上で唯一
存在し、それを各制御装置(PLC)で共有するため、
ある論理名についてのデータに対する更新等の処理は、
ネットワーク上のある1つの制御装置が実行する権限を
有し、他の制御装置はその1つの制御装置から送られる
データを取得することになる。つまり、ある論理名につ
いてのデータについては、上記1つの制御装置がそのデ
ータに付いて更新等する機能と、それを他の制御装置に
与える機能を持つ。
Next, each part will be described. First, the link memory 15 is a memory for storing data that is logically shared via the network as described above, and has a data structure as shown in FIG. 4, for example. That is, since the same logical name exists only on the network and is shared by each control device (PLC),
Processing such as updating data for a certain logical name
One controller on the network has the authority to execute, and the other controller will get the data sent from that one controller. In other words, for the data of a certain logical name, the one control device has a function of updating the data and the like, and a function of giving the data to another control device.

【0030】従って、図示するように、上記の自分が更
新等の機能を持つ論理名(公開している論理名)につい
てのデータを格納する自ノードエリアと、他の制御装置
に元となるデータが格納された論理名についての、その
データのコピーを格納する他ノードエリアが有る。本形
態では、データの転送効率を向上させるためにリンクメ
モリ15をノードごとに分割したが、これに限る必要は
ない。
Therefore, as shown in the figure, the own node area for storing the data on the logical name (the public logical name) having the function of updating itself and the like, There is another node area for storing a copy of the data for the logical name in which is stored. In the present embodiment, the link memory 15 is divided for each node in order to improve the data transfer efficiency. However, the present invention is not limited to this.

【0031】さらに、共有する同一の論理名(変数名)
のデータ(変数データ)を記憶するエリア内のオフセッ
ト値は、各ノードで共通にしている。つまり、ある論理
名Xについての変数データxがノード(1)の自ノード
エリアのオフセット値Nから所定サイズ分だけ格納され
ている場合(後述する間接参照テーブルの該当するポイ
ンタはNとなっている)、別のノードにおいては他ノー
ドエリアの所定位置に格納されることになる。そして、
この格納位置はノード(1)用の他ノードエリアのオフ
セット値Nから所定サイズ分のエリアに格納されること
になる。つまり、自己が必要とする他ノードで公開され
た変数データを、自己の他ノードエリアに格納する場
合、その公開している他ノードにおける自ノードエリア
の先頭からのオフセット値と同一のオフセット値に格納
することになる。このように、各ノードエリアでのオフ
セット値を公開側と利用側で一致させることにより、デ
ータ共通化を維持するための各種処理を容易に行えるよ
うにしている。
Further, the same logical name (variable name) to be shared
The offset value in the area for storing the data (variable data) is common to each node. That is, when the variable data x for a certain logical name X is stored by a predetermined size from the offset value N of the own node area of the node (1) (the corresponding pointer in the indirect reference table described later is N). ), At another node, it is stored at a predetermined position in the other node area. And
This storage position is stored in an area of a predetermined size from the offset value N of the other node area for the node (1). In other words, when storing variable data published by another node that is required by itself in its own other node area, it is set to the same offset value as the offset value from the top of its own node area in the published other node. Will be stored. In this way, by making the offset values in each node area coincide between the public side and the use side, various processes for maintaining data commonality can be easily performed.

【0032】なお、実際のデータの送受に関しては、上
記の与える機能を持つ制御装置が出力しても良いし、他
の制御装置が元となるデータを持つ制御装置に対してデ
ータを読みに行き、取得しても良い。
Regarding the actual data transmission / reception, the control device having the above-described function may output the data, or another control device may read the data from the control device having the original data. , You may get.

【0033】また、変数データベース17のデータ構造
は、図5に示すように、「論理名」,「タイプ」,「サ
イズ」,「入出力属性」,「メモリアドレス」,「静的
な前解決済みフラグ」,「データリンクエリアオフセッ
ト」並びに「ビット位置」を関連付けたテーブルとなっ
ている。ここで「サイズ」はその論理名に関する情報の
データサイズであり、「入出力属性」は、論理名で特定
されるデータの送受方向を特定するものである。
As shown in FIG. 5, the data structure of the variable database 17 is "logical name", "type", "size", "input / output attribute", "memory address", "static pre-resolution". , A data link area offset, and a bit position. Here, “size” is the data size of the information related to the logical name, and “input / output attribute” specifies the transmission / reception direction of the data specified by the logical name.

【0034】つまり、入出力属性が「出力」のものは、
そのノード(PLC)に格納された論理名に関する情報
を他のノードに向けて出力することを意味する。そし
て、その入出力属性が出力となっている論理名について
のデータが、リンクメモリ15の自ノードエリアの所定
領域に格納される。
That is, when the input / output attribute is “output”,
This means that information about the logical name stored in the node (PLC) is output to another node. Then, data on the logical name whose input / output attribute is output is stored in a predetermined area of the own node area of the link memory 15.

【0035】また、入出力属性が「入力」のものは、そ
のノードで使用等する論理名に関する情報が、他のノー
ドから送られてきたものを取得することを意味する。そ
して、その入出力属性が入力となっている論理名につい
てのデータが、リンクメモリ15の他ノードエリアの所
定領域に格納される。
When the input / output attribute is "input", it means that information on a logical name used in the node is obtained from another node. Then, data on the logical name whose input / output attribute is input is stored in a predetermined area of the other node area of the link memory 15.

【0036】「メモリアドレス」は、その論理名につい
ての実際のデータが格納されているリンクメモリ15の
位置を特定するポインタが記憶される間接参照テーブル
内のアドレス情報を記憶するものである。そして、本形
態では、間接参照テーブルのオフセットを用いている。
従って、この変数データベース17に格納されたメモリ
アドレスを参照して間接参照テーブル16にアクセスす
るためには、その間接参照テーブル16のベースアドレ
スに上記オフセットを加えた値となる。
The "memory address" stores address information in the indirect reference table in which a pointer for specifying the position of the link memory 15 where the actual data for the logical name is stored is stored. In this embodiment, the offset of the indirect reference table is used.
Therefore, in order to access the indirect reference table 16 by referring to the memory address stored in the variable database 17, the value is obtained by adding the above offset to the base address of the indirect reference table 16.

【0037】また、本形態では、間接参照テーブル16
に格納されて特定させるリンクメモリ15のアドレス
(ポインタ)が4バイトで表現されることを想定してい
るので、この変数データベース17のメモリアドレスに
は、4の倍数の値が格納される。
In this embodiment, the indirect reference table 16
It is assumed that the address (pointer) of the link memory 15 to be specified and stored in the variable database 17 is represented by 4 bytes, and thus a multiple of 4 is stored in the memory address of the variable database 17.

【0038】「静的名前解決済みフラグ」は、その変数
についての名前解決が、後述するプログラミングツール
3によって既に行われているか否かを区別するためのフ
ラグであり、「FALSE」であれば未解決であるの
で、通常の動的名前解決を行う。また、「TRUE」で
あれば静的名前解決は行われているので、静的名前解決
時に設定された相対アドレスを、絶対アドレスに変更す
る処理をすることになる。また、「リンクリンクエリア
オフセット」は、静的名前解決を行った結果得られた変
数の相対アドレスを格納する領域である。
The "static name resolved flag" is a flag for distinguishing whether or not name resolution for the variable has already been performed by the programming tool 3 described later. Because it is a resolution, normal dynamic name resolution is performed. If "TRUE", since the static name resolution has been performed, the relative address set at the time of the static name resolution is changed to an absolute address. The “link link area offset” is an area for storing a relative address of a variable obtained as a result of performing static name resolution.

【0039】そして、図示の例では、論理名が「Swi
tch1」のメモリアドレスは「0000」となってい
るので、図6に示す間接参照テーブル16の先頭(1番
目)の記憶領域に格納されたポインタで示すリンクメモ
リ15内のデータが、その「Switch1」について
のデータとなる。同様に、論理名が「Motor1」の
メモリアドレスは「0004」となっているので、図6
に示す間接参照テーブル16の2番目の記憶領域に格納
されたポインタで示すリンクメモリ15内のデータが、
その「Motor1」についてのデータとなる。
In the example shown, the logical name is "Swi
Since the memory address of “tch1” is “0000”, the data in the link memory 15 indicated by the pointer stored in the head (first) storage area of the indirect reference table 16 shown in FIG. ". Similarly, since the memory address of the logical name “Motor1” is “0004”, FIG.
The data in the link memory 15 indicated by the pointer stored in the second storage area of the indirect reference table 16 shown in FIG.
The data for "Motor1" is obtained.

【0040】また、間接参照テーブル16のデータ構造
は、図6に示すように、各論理名についてのデータが格
納されたリンクメモリ15内のポインタを記憶してい
る。そして、本形態では、リンクメモリ15内の記憶エ
リアを特定するポインタは、4バイトで特定されてお
り、上位3バイトでワード位置を特定し、下位1バイト
でそのワード位置内で目的とするデータが記憶されてい
るビット位置を特定するようにしている。
As shown in FIG. 6, the data structure of the indirect reference table 16 stores a pointer in the link memory 15 in which data on each logical name is stored. In this embodiment, the pointer for specifying the storage area in the link memory 15 is specified by 4 bytes, the upper 3 bytes specify the word position, and the lower 1 byte specifies the target data in the word position. Specifies the bit position in which is stored.

【0041】そして、これら格納された各ポインタが、
どの論理名についてのポインタかは、上記したように変
数データベース17に格納された論理名とメモリアドレ
スの相関により特定されている。換言すると、間接参照
テーブル16の先頭からn番目のポインタは、予め所定
の論理名についてのポインタであることが登録されてお
り、それは変数データベース17の記憶内容(メモリア
ドレス)を変えない以上不変となる。
Then, each of these stored pointers is
The pointer to which logical name is specified by the correlation between the logical name stored in the variable database 17 and the memory address as described above. In other words, it is registered in advance that the n-th pointer from the top of the indirect reference table 16 is a pointer for a predetermined logical name, and it is invariable as long as the storage content (memory address) of the variable database 17 is not changed. Become.

【0042】つまり、仮にある論理名についてのデータ
の記憶エリアを変更した場合、対応する間接参照テーブ
ル16のその論理名についてのポインタを記憶したエリ
アに格納されたポインタを新しいものに更新することに
より対応する。この場合でも変数データベース17の記
憶内容は変更しないで済む。従って、制御装置が実際の
制御を行うプログラムは、データ共有する論理名に付い
て情報を知る必要ができた場合に、まず変数データベー
ス17に格納されたメモリアドレスにしたがって間接参
照テーブル16をアクセスしてポインタを取得する。次
いでそのポインタで指し示されたデータを取得すること
になる。これにより、具体的な記憶エリアの変動の有無
に関わらず、上記プログラムはデータを取得し、正しく
動作することができる。
That is, when the storage area of the data for a certain logical name is changed, the pointer stored in the area storing the pointer for the logical name in the corresponding indirect reference table 16 is updated to a new one. Corresponding. Even in this case, the storage contents of the variable database 17 need not be changed. Therefore, when the program which the control device actually controls needs to know the information on the logical name for data sharing, the program first accesses the indirect reference table 16 in accordance with the memory address stored in the variable database 17. To get a pointer. Next, the data pointed by the pointer is obtained. Thus, the program can acquire data and operate correctly regardless of whether there is a specific change in the storage area.

【0043】さらに本形態では、RAM11c内に、上
記した間接参照テーブル16の記憶内容や、実際の論理
名に対応したデータの送受を行い、データの共有化をス
ムーズかつ確実に行うため、Export変数リスト2
0,Import変数リスト21並びにRemote変
数リスト22を持たせるようにしている。これら各変数
リスト20〜22は、変数データベース17に格納され
た情報に基づいて作成されるもので、具体的には以下の
ようになっている。
Further, in the present embodiment, the data stored in the indirect reference table 16 and the data corresponding to the actual logical name are transmitted and received in the RAM 11c, and the Export variable is used to smoothly and surely share the data. Listing 2
0, an Import variable list 21 and a Remote variable list 22 are provided. Each of these variable lists 20 to 22 is created based on the information stored in the variable database 17, and is specifically as follows.

【0044】まず、Export変数リスト20は、自
ノードから出力するネットワークグローバル変数のリス
トである。そして、そのデータ構造は、図7に示すよう
に、変数名(論理名)、変数のタイプ及びサイズ(バイ
ト数)、並びにその変数のデータが格納されたリンクメ
モリ15内の自ノードエリア(図4参照)のオフセット
からなるテーブル(以下、「Export変換情報テー
ブル」と称する)からなっている。
First, the Export variable list 20 is a list of network global variables output from the own node. The data structure is, as shown in FIG. 7, a variable name (logical name), a variable type and size (the number of bytes), and its own node area (FIG. 4) (hereinafter referred to as “Export conversion information table”).

【0045】係るテーブルは、図5に示す変数データベ
ース5の入出力属性の欄が「出力」のものを抽出し、さ
らに、メモリアドレスの欄から間接参照テーブル(図
6)をアクセスして自ノードエリアのオフセット(自己
が管理する論理名についてのデータを格納する領域)を
取得することにより、図7に示すようなリストが作成で
きる。
The table in which the input / output attribute column of the variable database 5 shown in FIG. 5 is "output" is extracted, and the indirect reference table (FIG. 6) is accessed from the memory address column to access the own node. By acquiring the offset of the area (the area for storing the data on the logical name managed by itself), a list as shown in FIG. 7 can be created.

【0046】一方、Import変数リスト21は、他
ノードから入力するネットワークグローバル変数のリス
トであり、そのデータ構造は、図8に示すように、変数
名(論理名)、変数のタイプ及びサイズ(バイト数)、
その変数のデータが格納されたリンクメモリ15内の他
ノードエリア(図4参照)のオフセットに加え、さら
に、その変数が有効か無効かを示すフラグを備えたテー
ブル(以下、「Import変換情報テーブル」と称す
る)からなっている。
On the other hand, the Import variable list 21 is a list of network global variables input from other nodes, and has a data structure of variable names (logical names), variable types and sizes (bytes) as shown in FIG. number),
In addition to the offset of the other node area (see FIG. 4) in the link memory 15 in which the data of the variable is stored, a table having a flag indicating whether the variable is valid or invalid (hereinafter referred to as “Import conversion information table”) ").

【0047】係るテーブルは、図5に示す変数データベ
ース5の入出力属性の欄が「入力」のものを抽出し、さ
らに、メモリアドレスの欄から間接参照テーブル(図
6)をアクセスして、リンクメモリ15内の他ノードエ
リアのオフセット(他ノードから送られてきたデータを
格納する領域)を取得することにより、図8に示すよう
なリストが作成できる。
Such a table is extracted when the input / output attribute column of the variable database 5 shown in FIG. 5 is “input”, and the indirect reference table (FIG. 6) is accessed from the memory address column to link the table. By obtaining the offset of the other node area in the memory 15 (the area for storing data sent from the other node), a list as shown in FIG. 8 can be created.

【0048】さらに、Remote変数リスト22は、
受信した他ノード変数リストをノード別に分類して格納
するものである。そのデータ構造は、図9に示すよう
に、ノード番号とExport変数リストの先頭ポイン
タを格納したテーブル(以下、「Remote変換情報
テーブル」と称する)からなる。
Further, the Remote variable list 22 is expressed as follows:
The received other node variable list is classified and stored for each node. As shown in FIG. 9, the data structure includes a table storing a node number and a head pointer of an Export variable list (hereinafter, referred to as a “Remote conversion information table”).

【0049】上記した各テーブル情報は、プログラミン
グ装置(ツール)3を用いて行われる。すなわち、図1
0に示すように、各制御装置1がLAN2にネットワー
ク接続されて、すでにシステムが稼動しているとする。
係る場合に、新たに制御装置(X)1′をネットワーク
に追加するに先立ち、制御装置(X)1′にプログラミ
ング装置3を接続し、所定のデータ・情報をそのプログ
ラミングツール3から制御装置(X)1′にダウンロー
ドする。
Each of the above table information is performed using the programming device (tool) 3. That is, FIG.
Suppose that each control device 1 is network-connected to the LAN 2 as shown in FIG.
In such a case, before adding a new control device (X) 1 'to the network, a programming device 3 is connected to the control device (X) 1', and predetermined data and information are transmitted from the programming tool 3 to the control device ( X) Download to 1 '.

【0050】具体的には、図11に示すように、まずプ
ログラミングツール3を用い、ユーザがラダーや高級言
語などでソースプログラム3aを作成する。このとき、
複数の制御装置(1),(2),(3),…(X)で共
有するデータは、各制御装置間で同じ論理名として定義
するとともに、ネットワーク共有の属性をつけるように
する。
More specifically, as shown in FIG. 11, first, a user creates a source program 3a in a ladder or a high-level language using a programming tool 3. At this time,
Data shared by a plurality of control devices (1), (2), (3),... (X) is defined as the same logical name among the control devices, and an attribute of network sharing is added.

【0051】そして、プログラミングツール3のコンパ
イル機能3bを実行し、上記のようにして作成したソー
スプログラム3aをコンパイルし、制御装置が本来の制
御を実行するためのオブジェクトコード3cと、同一論
理名のデータ共有をするために必要な変数データベース
(図5参照)3dを生成する。
Then, the compiling function 3b of the programming tool 3 is executed to compile the source program 3a created as described above, and the object code 3c for the control device to execute the original control has the same logical name as the object code 3c. A variable database (see FIG. 5) 3d required for data sharing is generated.

【0052】次いで、プログラミングツール3は、生成
したオブジェクトコード3cと変数データベース3dを
制御装置(X)1′にダウンロードする。そして、この
ダウンロードされたオブジェクトコードと変数データベ
ースは、制御装置(X)1′の不揮発性メモリに格納さ
れる。
Next, the programming tool 3 downloads the generated object code 3c and the variable database 3d to the control device (X) 1 '. Then, the downloaded object code and variable database are stored in the nonvolatile memory of the control device (X) 1 '.

【0053】なお、上記したプログラミングツールは、
図示の例では制御装置(X)1′に接続し、それに対し
てダウンロードする例を示したが、すでにネットワーク
に接続された各制御装置(1),(2),……に対して
も、ネットワークに接続する前(際)に、プログラミン
グツールを接続し、所定のデータ・情報をダウンロード
することになる。
The programming tool described above is
In the illustrated example, an example is shown in which the control device (X) 1 'is connected to and downloaded to the control device (X) 1'. However, for each of the control devices (1), (2),. Before (at the time of) connection to a network, a programming tool is connected and predetermined data and information are downloaded.

【0054】次に、論理名調停部19について説明す
る。論理名調停部19は、上記のようにダウンロードさ
れた変数データベース17に格納された情報に基づき、
Export変数リスト20とImport変数リスト
21を生成する機能を有する。具体的な生成処理は、上
記したExport変数リスト20とImport変数
リスト21の説明で記載した通りである。
Next, the logical name arbitration unit 19 will be described. The logical name arbitration unit 19, based on the information stored in the variable database 17 downloaded as described above,
It has a function of generating an Export variable list 20 and an Import variable list 21. The specific generation processing is as described in the description of the Export variable list 20 and the Import variable list 21 described above.

【0055】すなわち、Export変数リスト20の
作成は、図12に示すフローチャートに示すように、オ
フセット値を0におき(ST1)、変数データベース1
7をアクセスして入出力属性が出力になっている出力変
数、つまり自ノードが他ノードに対して公開するネット
ワークグローバル変数を検索する(ST2)。
That is, the export variable list 20 is created by setting the offset value to 0 (ST1) and setting the variable database 1 as shown in the flowchart of FIG.
7 is searched for an output variable whose input / output attribute is output, that is, a network global variable that the own node discloses to other nodes (ST2).

【0056】そして、検索される都度、その変数につい
てのExport変換情報テーブルを格納するExpo
rt変換テーブルを確保する(ST3,ST4)。そし
て、その確保したテーブル内に、変換データベース17
内に格納されている変数名,タイプ,サイズ情報を複写
する(ST5)。
Each time a search is performed, an Expo that stores an Export conversion information table for the variable is stored.
An rt conversion table is secured (ST3, ST4). Then, the conversion database 17 is stored in the secured table.
The variable name, type, and size information stored in the file are copied (ST5).

【0057】次いで、その変数のデータ(変数データ)
を格納する自ノードエリアのオフセット情報を取得し、
ステップ5,ステップ6で得られた情報を、Expor
t変数リストに追加する(ST7)。よって、1番目
は、オフセットが0つまり自ノードエリアの先頭から登
録することになる。
Next, the data of the variable (variable data)
Get offset information of the own node area that stores
The information obtained in step 5 and step 6 is
It is added to the t variable list (ST7). Therefore, in the first case, the offset is registered from 0, that is, from the head of the own node area.

【0058】その後、現在のオフセット値に、変数サイ
ズを加算して新たなオフセット値を求め(ST8)、ス
テップ2に戻る。以後、全ての出力変数を検索するまで
上記処理を繰り返し実行する。これにより、自ノードエ
リアの先頭から各変数データを格納する領域が、空くこ
となく順番に確保される。
Thereafter, the variable size is added to the current offset value to obtain a new offset value (ST8), and the process returns to step 2. Thereafter, the above process is repeatedly executed until all output variables are searched. As a result, areas for storing the respective variable data from the head of the own node area are secured in order without being empty.

【0059】一方、Importリスト21の作成は、
図13に示すフローチャートを実行する。すなわち、変
数データベース17より、入出力属性が入力になってい
る入力変数、つまり、自ノードで利用する他ノードのネ
ットワークグローバル変数を検索する(ST11)。
On the other hand, the creation of the Import list 21 is as follows.
The flowchart shown in FIG. 13 is executed. That is, an input variable whose input / output attribute is input, that is, a network global variable of another node used by the own node is searched from the variable database 17 (ST11).

【0060】そして、検索される都度、その変数につい
てのImport変換情報テーブルを格納するImpo
rt変換テーブルを確保する(ST12,ST13)。
そして、その確保したテーブル内に、変換データベース
17内に格納されている変数名,タイプ,サイズ情報を
複写する(ST14)。さらに、無効フラグをセットし
(ST15)、ステップ14,ステップ15で得られた
情報を、Import変数リストに追加する(ST1
6)。その後、ステップ11に戻る。以後、全ての入力
変数を検索するまで上記処理を繰り返し実行する。
Each time a search is performed, an Impo that stores an Import conversion information table for the variable is stored.
An rt conversion table is secured (ST12, ST13).
Then, the variable name, type, and size information stored in the conversion database 17 are copied into the secured table (ST14). Further, an invalid flag is set (ST15), and the information obtained in steps 14 and 15 is added to the Import variable list (ST1).
6). Thereafter, the process returns to step 11. Thereafter, the above process is repeatedly executed until all input variables are searched.

【0061】さらに、論理名調停部19は、上記した両
変換テーブルの作成機能に加え、以下に示す変換テーブ
ルの更新その他の機能も有する。すなわち、制御装置1
を既存の稼動中のネットワークに接続した場合、論理名
調停部19は、自己が保有するExport変数リスト
20を、一斉同報し、他の制御装置との間でネットワー
クグローバル変数の情報を交換する。
Further, the logical name arbitration unit 19 has the following conversion table updating and other functions in addition to the above-described conversion table creation function. That is, the control device 1
Is connected to the existing operating network, the logical name arbitration unit 19 broadcasts its own Export variable list 20 and exchanges information of network global variables with other control devices. .

【0062】すなわち、Export変数リストを送信
する側の論理名調停部19は、図14に示すように、ま
ず、Export変数リストを一斉同報により送信する
(ST21)。後述するように、この一斉同報を受けた
受信側の他の制御装置(ノード)は応答信号を送信して
くるので、その応答信号があったか否かを判断する(S
T22)。そして、応答信号があった場合には、その応
答信号を発行した応答局を記録する(ST23)。
That is, as shown in FIG. 14, the logical name arbitration unit 19 on the side transmitting the export variable list first transmits the export variable list by broadcast (ST21). As will be described later, since the other control device (node) on the receiving side that has received the broadcast transmits a response signal, it is determined whether or not the response signal has been received (S
T22). If there is a response signal, the response station that issued the response signal is recorded (ST23).

【0063】タイムアウトするまで応答信号の受信の有
無をチェックし(ST24)、タイムアウトしたならば
テーブル更新を完了する(ST25)。これにより、E
xport変数リストを送信したノードは、誰がExp
ort変数リストを受け取り、誰が受け取っていないか
を判断できる。
It is checked whether or not a response signal has been received until a timeout occurs (ST24), and if a timeout occurs, the table update is completed (ST25). This gives E
Who sent the xport variable list is who
You can receive the ort variable list and determine who has not.

【0064】なお、このExport変数リストの送信
タイミングとしては、上記したように新たにネットワー
クに追加・接続する時の他に、ユーザプログラム修正や
コンパイル実行などによって変数データベース17の記
憶内容が変更された場合や、後述するオンラインエディ
ットによって実行中の制御装置の変数データベース17
の記憶内容が変更された場合などにも行われる。そし
て、変更される都度、バージョンを更新していき、Ex
port変数リストを送信(一斉同報)する場合には、
そのバージョン情報も併せて送るようにする。従って、
受信側のノードは、Export変数リストをはじめて
受信する場合と、すでに受信している場合がある。な
お、本発明では、このバージョン情報は必ずしも設けな
くても良い。また、バージョン情報を用いたテーブルの
同期方式については後述する。
As for the transmission timing of the Export variable list, the storage contents of the variable database 17 are changed due to a user program correction or compile execution, in addition to the above-described time of newly adding or connecting to the network. The variable database 17 of the control device being executed by the
This is also performed when the stored contents of the file are changed. And every time it is changed, the version is updated, and Ex
To send (broadcast) the port variable list,
The version information is also sent. Therefore,
The receiving node may receive the Export variable list for the first time or may have already received it. In the present invention, the version information does not always have to be provided. A table synchronization method using version information will be described later.

【0065】一方、上記Export変数リストを受信
した既存の他のノード(制御装置)側は、図15に示す
フローチャートを実施する機能を有する。すなわち、E
xport変数リストを受信したか否かを判断し(ST
31)、受信した場合には、Export変数リストの
バージョンが、以前に受信して記憶しているものと一致
するか否かを判断する(ST32)。
On the other hand, the other existing node (control device) that has received the Export variable list has a function of executing the flowchart shown in FIG. That is, E
It is determined whether or not the xport variable list has been received (ST
31) If it has been received, it is determined whether or not the version of the Export variable list matches the version previously received and stored (ST32).

【0066】そして、一致していない場合には、Exp
ort変数リストが更新されていると判断し、記憶して
いるテーブル(受信側のノードにとってのImport
変数リスト等)を更新する(ST33)。なお、初めて
Export変数リストを受信する場合も、バージョン
が不一致と判断し、テーブル更新をする。
If they do not match, Exp
It is determined that the ort variable list has been updated, and the stored table (Import for the receiving node)
The variable list is updated (ST33). When the Export variable list is received for the first time, it is determined that the versions do not match, and the table is updated.

【0067】そして、ステップ33のテーブル更新後、
並びにステップ32の分岐判断でバージョンが一致して
いる場合(更新不要)は、応答信号をExport変数
リストの送信元のノードに向けて送信し、処理を終了す
る(ST34)。
Then, after updating the table in step 33,
If the versions match in the branch determination in step 32 (update is unnecessary), a response signal is transmitted to the transmission source node of the Export variable list, and the process ends (ST34).

【0068】さらに論理名調停部19は、受信したEx
port変数リストに基づいて、Remote変数リス
トを作成する機能を有する。すなわち、図15に示す受
信側の処理において、他ノードから送信されてきたEx
port変数リストを受信したならば、それをRemo
te変数リストとしてノード別に管理する。つまり、受
信したノードが必要とする変数データであるか否かに関
係なく、全てのExport変数リストに関する情報を
一旦制御装置内に取り込み、記憶保持する。このリスト
は、不揮発性メモリに保持される。具体的には、図16
に示すように、ノード1から送られたきたExport
変数リストは、ノード1のテーブルエリアに格納され
る。
Further, the logical name arbitration unit 19 receives the received Ex
It has a function of creating a Remote variable list based on the port variable list. That is, in the processing on the receiving side shown in FIG.
When the port variable list is received, it is
Manage as a te variable list for each node. That is, regardless of whether the received node is required variable data, information on all Export variable lists is once fetched into the control device, and stored and retained. This list is held in the non-volatile memory. Specifically, FIG.
As shown in the figure, the Export sent from node 1
The variable list is stored in the table area of the node 1.

【0069】そして、論理名調停部19は、上記のよう
にして得られたRemote変数リスト22とImpo
rt変数リスト21に基づき、間接参照テーブル16を
作成・更新する。概念的に説明すると、Import変
数リスト21に格納された自ノードで使用する変数名
(論理名)をキーとして、Remote変数リスト22
を検索し、一致する変数名を取得し、その変数に関する
変数データが格納された自ノードのリンクメモリ15へ
のポインタを求め、それを該当する間接参照テーブル1
6のメモリエリアに格納する。
The logical name arbitration unit 19 compares the Remote variable list 22 obtained as described above with the Impo
The indirect reference table 16 is created and updated based on the rt variable list 21. To explain conceptually, the remote variable list 22 is used as a key with the variable name (logical name) used in the own node stored in the import variable list 21 as a key.
To obtain a matching variable name, obtain a pointer to the link memory 15 of the own node in which the variable data relating to the variable is stored,
6 in the memory area.

【0070】また、上記した制御装置(X)1´のよう
に、新たにネットワークに加入した場合には、Expo
rt変数リストを受信していないノードに対してExp
ort変数リスト要求を行う。これにより、受信したE
xport変数リストに基づき、上記したRemote
変数リスト22ひいては間接参照テーブル16の作成・
更新を行う。具体的には、図17に示すフローチャート
を実現する。
When a new network is joined as in the case of the control device (X) 1 ′, the Expo
Exp for nodes that have not received the rt variable list
Request an ort variable list. As a result, the received E
Remote based on the xport variable list
Creation of the variable list 22 and thus the indirect reference table 16
Perform an update. Specifically, the flowchart shown in FIG. 17 is realized.

【0071】まず、Import変数リスト21を順番
に検索し(ST41,ST42)、検索された変数名
(論理名)ごとに以下の処理を行う。つまり、取得した
変数名をキーにRemote変数リストを検索し、その
変数を公開している制御装置のノードアドレスと、そ
の装置内のリンクメモリ内の自ノードエリアオフセット
を取得する(ST43)。
First, the Import variable list 21 is searched in order (ST41, ST42), and the following processing is performed for each searched variable name (logical name). That is, the Remote variable list is searched using the obtained variable name as a key, and the node address of the control device that discloses the variable and the own node area offset in the link memory of the device are obtained (ST43).

【0072】次いで、リンクメモリのに該当する他ノ
ードエリア(その変数を公開しているノード用のエリ
ア)のベースアドレス(先頭アドレス)を算出する(S
T44)。そして、そのベースアドレスに、ステップ4
3で求めたオフセットを加算した値を求める(ST
45)。すなわち、対応するノードエリアでは、同一の
論理名(変数名)の変数データを格納する領域のオフセ
ット値を等しくしているので、上記求めた値が、その
変数データを記憶させるリンクエリアの先頭アドレスと
なる。
Next, the base address (head address) of the other node area corresponding to the link memory (the area for the node that discloses its variables) is calculated (S).
T44). Then, in the base address, step 4
The value obtained by adding the offset obtained in step 3 is obtained (ST
45). That is, in the corresponding node area, the offset values of the areas storing variable data of the same logical name (variable name) are made equal, so that the obtained value is the head address of the link area for storing the variable data. Becomes

【0073】次に、変数名に基づいて変数データベース
17を検索し、間接参照テーブル位置(その変数名のポ
インタを格納する箇所)を取得する(ST46)。つま
り、図5に示すメモリアドレスの欄に登録されたオフセ
ットアドレスを取得する。そして、その取得したオフセ
ットアドレスにしたがい、該当する間接参照テーブルの
格納領域に、ステップ45で算出した値(リンクメモ
リ15内の変数データを格納する領域の先頭位置を示す
ポインタ)を格納する。これにより、間接参照テーブル
の更新が行える。
Next, the variable database 17 is searched based on the variable name, and the position of the indirect reference table (the location where the pointer of the variable name is stored) is obtained (ST46). That is, the offset address registered in the memory address column shown in FIG. 5 is obtained. Then, in accordance with the obtained offset address, the value calculated in step 45 (a pointer indicating the head position of the area for storing the variable data in the link memory 15) is stored in the storage area of the corresponding indirect reference table. As a result, the indirect reference table can be updated.

【0074】これにより、図5に示す変数データベース
17とすると、図18に示すように、例えば論理名(変
数名)が「Switch1」についての変数データのリ
ンクメモリ15内の格納領域が図示のようになっている
場合、間接参照テーブル16のSwitch1の欄(オ
フセットアドレス0000:先頭)には、その格納領域
の先頭のアドレス(ポインタ)が格納されることにな
る。
As a result, if the variable database 17 shown in FIG. 5 is used, as shown in FIG. 18, for example, the storage area in the link memory 15 for the variable data whose logical name (variable name) is "Switch1" is as shown in FIG. In the case of, the first address (pointer) of the storage area is stored in the field of Switch 1 (offset address 0000: head) of the indirect reference table 16.

【0075】上記したように、論理名調停部19によ
り、各ノード(制御装置1)内の各リスト20〜22や
間接参照テーブル16の内容がその都度更新されること
により、リンクメモリ15内に格納された変数データの
内容や、変数データの格納領域が変更したとしても、あ
る変数名(論理名)についての間接参照テーブル16の
格納位置(オフセットアドレス)は不変(仮に変更した
場合でも、変数データベースのメモリアドレスの欄を見
ることにより知ることができる)であるので、制御実行
部18は、その間接参照テーブル16を介してリンクメ
モリ15にアクセスし、所望の変数データを取得し、正
規の制御システムを実行することができる。そして、係
る制御実行部18の機能は、図19に示すフローチャー
トのようになっている。
As described above, the contents of the lists 20 to 22 and the indirect reference table 16 in each node (control device 1) are updated by the logical name arbitration unit 19 each time, so that the links are stored in the link memory 15. Even if the content of the stored variable data or the storage area of the variable data changes, the storage position (offset address) of the indirect reference table 16 for a certain variable name (logical name) remains unchanged (even if it is changed, The control execution unit 18 accesses the link memory 15 via the indirect reference table 16 to obtain desired variable data, and A control system can be implemented. The function of the control execution unit 18 is as shown in a flowchart of FIG.

【0076】すなわち、まず初期化処理をした後(ST
51)、INリフレッシュをする(ST52)。つま
り、リンクメモリ15の他ノードエリアに格納されたエ
リアネットワークグローバル変数(変数データ)の読み
出しを行う。そして、ユーザプログラム(通常の制御)
を実行し(ST53)、OUTリフレッシュをする(S
T54)。つまり、リンクメモリ15の自ノードエリア
に、自己が公開するネットワークグローバル変数(変数
データ)の書き込みを行う。次いで、周辺I/F処理を
実行する(ST55)。このように、リンクメモリ15
に対するアクセス(変数データの読み書き)をしつつ、
ユーザプログラムを実行する処理を、システムが停止す
るまで繰り返し実行する(ST56,ST57)。な
お、上記したリンクメモリ15をアクセスしつつユーザ
プログラムを実行しているときの制御装置1,1′の概
念図を示すと図20のようになる(静的名前解決の部分
は後述する)。
That is, after the initialization process (ST
51), IN refresh is performed (ST52). That is, the area network global variable (variable data) stored in the other node area of the link memory 15 is read. And user program (normal control)
Is performed (ST53), and OUT refresh is performed (S53).
T54). That is, a network global variable (variable data) disclosed by itself is written in its own node area of the link memory 15. Next, peripheral I / F processing is executed (ST55). Thus, the link memory 15
While accessing (reading and writing variable data)
The processing for executing the user program is repeatedly executed until the system stops (ST56, ST57). FIG. 20 shows a conceptual diagram of the control devices 1 and 1 'when executing the user program while accessing the link memory 15 described above (the static name resolution part will be described later).

【0077】さらに、リンクメモリ15に格納する実際
の変数データの送受は、通信部12を介して制御装置1
(ノード)間で行われる。まず、概念的に説明すると、
リンクメモリ15内の自ノードエリアに割り付けられた
データ(変数データ)は、他ノードに一斉同報通信方式
などで送信し、他ノードエリアに割り付けられたデータ
(変数データ)は対応する他ノードから受信する。
Further, transmission and reception of the actual variable data stored in the link memory 15 are performed via the communication unit 12 by the control unit 1.
(Node). First, conceptually,
The data (variable data) allocated to the own node area in the link memory 15 is transmitted to another node by a broadcast communication method or the like, and the data (variable data) allocated to the other node area is transmitted from the corresponding other node. Receive.

【0078】つまり、図21に示すように、リンクメモ
リが格納された制御部11側のRAM11cと、通信部
12側のRAM12bとの間では、必要なデータを転送
するようになっている。
That is, as shown in FIG. 21, necessary data is transferred between the RAM 11c on the control unit 11 side where the link memory is stored and the RAM 12b on the communication unit 12 side.

【0079】そこで、図20に示すように、リンクメモ
リ15の自ノードエリアに割り付けられたデータは、一
旦通信部12の通信側RAM12bに複写転送され、各
制御装置間では、その通信側RAM12b同士(厳密に
は通信コントローラ12aを介して)で一斉同報に伴う
データ転送をすることにより、他のノード(制御装置)
側に送信する。また、これを受信した他ノード側では、
Export変数リスト,Import変数リストより
算出した転送データサイズを基に、自ノードで必要なデ
ータを通信部12(通信側RAM12b)から制御部1
1(制御側RAM11c)に転送する。なお、通信部1
2側では、その受け取ったデータに基づいて所定の処理
をするのは、上記した通りである。
Therefore, as shown in FIG. 20, the data allocated to the own node area of the link memory 15 is once copied and transferred to the communication side RAM 12b of the communication unit 12, and between the control units, the communication side RAMs 12b communicate with each other. (Strictly via the communication controller 12a) performs data transfer accompanying simultaneous broadcasting, thereby enabling other nodes (control devices)
Send to the side. On the other node side receiving this,
Based on the transfer data size calculated from the Export variable list and the Import variable list, data necessary for the own node is transmitted from the communication unit 12 (communication RAM 12b) to the control unit 1.
1 (control side RAM 11c). The communication unit 1
The two sides perform the predetermined processing based on the received data as described above.

【0080】また、制御装置内での通信部12と制御部
11間でのデータの転送処理機能は、以下の通りとなっ
ている。まず、本形態では、通信部12は、制御部11
からの要求によりサイクリック通信サービスを開始する
ようになっている。すなわち、通信部12は、制御部1
1から受け取ったImport変数リスト,Expor
t変数リストに基づいて通信パラメータを算出・設定
し、サイクリック通信サービスを起動もしくは加入す
る。
The data transfer processing function between the communication unit 12 and the control unit 11 in the control device is as follows. First, in the present embodiment, the communication unit 12 includes the control unit 11
A cyclic communication service is started in response to a request. That is, the communication unit 12 controls the control unit 1
Import variable list, Expor received from 1
The communication parameters are calculated and set based on the t variable list, and the cyclic communication service is started or subscribed.

【0081】また、サイクリックデータには、受信側が
利用してよいデータ(有効なデータ)か、利用できない
データなのかを示す有効/無効情報が含まれている。こ
の有効/無効情報は、送信側で設定する。そして、この
有効/無効情報が「有効」のときには、受信側の通信部
が受信したサイクリックデータを制御部側に転送しても
良いと判断できる。
The cyclic data contains valid / invalid information indicating whether the data can be used by the receiving side (valid data) or cannot be used. The valid / invalid information is set on the transmitting side. When the valid / invalid information is "valid", it can be determined that the cyclic data received by the communication unit on the receiving side may be transferred to the control unit.

【0082】さらに、通信側RAM12bには、通信部
12の通信コントローラ12a側からと、制御部11側
からの両方からアクセスできるようになっている。従っ
て、何ら制御を行わないと、両方から同時に通信側RA
M12bにアクセスすることが有るので、これを避ける
ため、本形態では制御部11側が主体的になってデータ
交換をするようにしている。つまり、制御部11が通信
部12に対してアクセス許可・禁止を通知する。そし
て、通信部12は、制御部11が通信側RAMへのアク
セスを許可している間のみアクセス可能となる。係る制
御の具体的には、図22(制御部),図23(通信部)
に示すフローチャートのようになる。
Further, the communication side RAM 12b can be accessed from both the communication controller 12a side of the communication unit 12 and the control unit 11 side. Therefore, if no control is performed, the communication RA
Since the M12b may be accessed, in order to avoid this, in the present embodiment, the control unit 11 is in charge of exchanging data. That is, the control unit 11 notifies the communication unit 12 of access permission / prohibition. The communication unit 12 can be accessed only while the control unit 11 permits access to the communication-side RAM. Specifically, FIG. 22 (control unit) and FIG. 23 (communication unit)
The flowchart shown in FIG.

【0083】まず、制御部11の機能としては、図22
に示すように、データのRead/Write、つま
り、通信側RAM12bへのアクセスを行う(ST6
1)。そして、そのアクセス処理が完了すると、通信側
にアクセス完了を通知する(ST62)。このアクセス
完了通知が、通信部12に対するアクセス許可通知とな
る。
First, the function of the control unit 11 is as shown in FIG.
As shown in (5), read / write of data, that is, access to the communication side RAM 12b is performed (ST6).
1). When the access process is completed, the communication side is notified of the completion of the access (ST62). This access completion notification is an access permission notification to the communication unit 12.

【0084】そして、通常のコントローラ処理(ユーザ
プログラムの実行)をする(ST63)。また、再び通
信側RAM12bにアクセスする必要が生じた場合に
は、アクセス要求通知を通信部12に対して通知する
(ST64)。後述するように、この通知を受けた通信
部12は、アクセス許可通知を返送するので、制御部1
1はその通信部12からのアクセス許可通知を受信した
か否かを判断し(ST65)、許可通知を受信したなら
ば、アクセスステータスクリアをし(ST66)、ステ
ップ61に戻り、制御部11が通信側RAM12bに対
してアクセスする。
Then, normal controller processing (execution of a user program) is performed (ST63). Further, when it is necessary to access the communication side RAM 12b again, an access request notification is sent to the communication unit 12 (ST64). As will be described later, the communication unit 12 that has received the notification returns an access permission notification.
1 judges whether or not an access permission notice has been received from the communication unit 12 (ST65), and upon receiving the permission notice, clears the access status (ST66) and returns to step 61, where the control unit 11 Access to the communication side RAM 12b.

【0085】一方、通信部12の機能は、図23に示す
ように、まず、制御部11からアクセス完了通知が送ら
れてきたか否かを判断する(ST71)。そして、係る
完了通知を受信したならば、通信側RAM12bに対す
るアクセス(データのRead/Write)をする
(ST72)。次いで、通信部12からアクセス要求通
知が送られてきたか否かを判断する(ST73)。そし
て、送られてこない場合には、依然として通信部12に
通信側RAM12bへのアクセス権が有るため、必要に
応じてアクセスする。
On the other hand, as shown in FIG. 23, the function of the communication section 12 first determines whether or not an access completion notice has been sent from the control section 11 (ST71). Then, when the completion notification is received, the communication side RAM 12b is accessed (Read / Write of data) (ST72). Next, it is determined whether an access request notification has been sent from the communication unit 12 (ST73). If no communication is received, the communication unit 12 still has an access right to the communication side RAM 12b, so that access is made as necessary.

【0086】一方、アクセス要求通知を受け取ったなら
ば、通信側RAM12bに対するアクセスを終了すると
ともに、アクセス許可通知を制御部11に返送する(S
T74)。このとき、通信部12では、受信データのノ
ード単位の同時性を保証するため、1ノード分の転送中
にアクセス要求通知を受信した場合には、その1ノード
分の転送が完了した後でアクセス許可通知を返送するこ
とになる。なお、ステップ74の通知により中断した
後、制御部11から再びアクセス完了通知を受け取った
ならば、上記中断したノードの次のノードの通信側RA
M12bへの転送を開始することになる。
On the other hand, when the access request notice is received, the access to the communication side RAM 12b is terminated and the access permission notice is returned to the control unit 11 (S
T74). At this time, if the communication unit 12 receives the access request notification during the transfer of one node, the access unit waits for the completion of the transfer of one node in order to guarantee the synchronization of the received data on a node basis. The permission notice will be returned. When the access completion notification is received again from the control unit 11 after the interruption by the notification in step 74, the communication side RA of the node next to the interrupted node is received.
The transfer to M12b is started.

【0087】次に、本発明の要部となる静的名前解決に
ついて説明する。この静的名前解決は、プログラミング
ツール3の静的名前解決部5(図1参照)により実行さ
れるもので、基本的なアルゴリズムは上記した動的名前
解決と同様である。まず、プログラミングツール3につ
いて説明する。良く知られているように、プログラミン
グツール3は、制御装置1で実行されるプログラムを開
発するための環境であり、ユーザがラダー言語などで作
成したプログラムをコンパイルしたり、ライブラリをリ
ンクして制御装置1で実行可能な形式に変換する機能を
持つ。
Next, the static name resolution which is a main part of the present invention will be described. This static name resolution is executed by the static name resolution unit 5 (see FIG. 1) of the programming tool 3, and the basic algorithm is the same as the above-mentioned dynamic name resolution. First, the programming tool 3 will be described. As is well known, the programming tool 3 is an environment for developing a program to be executed by the control device 1, and compiles a program created by a user in a ladder language or the like, and links a library to control It has a function of converting to a format executable by the device 1.

【0088】また、プログラミングツール3は、複数の
制御装置1のプログラムを一括して管理できる。つま
り、図24に示すように、プログラミングツール上で
は、複数の制御装置1のプログラム/変数の情報を一つ
のプロジェクトとして管理することができる。
The programming tool 3 can manage the programs of the plurality of control devices 1 collectively. That is, as shown in FIG. 24, on the programming tool, the program / variable information of the plurality of control devices 1 can be managed as one project.

【0089】換言すると、プログラミングツール3で
は、複数の制御装置1のプログラムを1つのプロジェク
トとして管理するので、どのプログラムがネット変数を
読み書きしているかを知ることができる。実際には、コ
ンパイル或いはリンク処理の際には、プロジェクトに含
まれる複数の制御装置のプログラムで使われているネッ
ト変数の情報がわかるので、係るコンパイルまたはリン
ク時に静的名前解決部5が、解析して名前解決を行う。
In other words, since the programming tool 3 manages the programs of the plurality of control devices 1 as one project, it is possible to know which program is reading and writing the net variables. Actually, at the time of compiling or linking, the information of the net variables used in the programs of a plurality of control devices included in the project is known, so the static name resolution unit 5 performs the analysis at the time of compiling or linking. To perform name resolution.

【0090】静的名前解決部5の機能は、図25に示す
フローチャートのようになっている。すなわち、まずプ
ロジェクトに含まれる制御装置の中の1つを選び処理対
象とする(ST81)。
The function of the static name resolution unit 5 is as shown in the flowchart of FIG. That is, first, one of the control devices included in the project is selected and processed (ST81).

【0091】そして、対象の制御装置についてのExp
ort変数リストを作成する(ST82)。このExp
ort変数リスト作成の具体的な処理手順は、動的名前
解決時に行ったものと同様であるので、その詳細な説明
を所略する。そして、処理対象の制御対象を順次切り替
えていき、Export変数リスト未作成の制御対象に
対し、当該リストを作成する(ST83,ST84)。
Then, Exp for the target control device
An ort variable list is created (ST82). This Exp
The specific processing procedure for creating the ort variable list is the same as that performed at the time of dynamic name resolution, and a detailed description thereof will be omitted. Then, the control target to be processed is sequentially switched, and the list is created for the control target for which the Export variable list has not been created (ST83, ST84).

【0092】このようにして全ての制御装置についてE
xpor変数リストを作成したならばステップ83の分
岐判断はYesとなるのでステップ85に進み、変数の
アドレス割り付けを行う。つまり、プロジェクトに含ま
れる制御機器を1つずつ順に処理対象に選択しステップ
82で作成したExport変数リストを参照し、ネッ
ト変数のアドレス割り付け、つまり名前解決を行う。そ
して、名前解決の結果(ネット変数に割り付けられたア
ドレス)をプログラミングツール3の変数データベース
6に格納する(ST85〜ST88)。
In this way, E for all control devices
If the xpor variable list has been created, the branch determination in step 83 becomes Yes, so the process proceeds to step 85, and variable address assignment is performed. That is, the control devices included in the project are sequentially selected one by one as processing targets, and the address assignment of the net variables, that is, name resolution is performed with reference to the Export variable list created in step 82. Then, the result of the name resolution (address assigned to the net variable) is stored in the variable database 6 of the programming tool 3 (ST85 to ST88).

【0093】この名前解決処理も、基本的には動的名前
解決と同様の手順に従って行える。但し、動的名前解決
の場合には、ネットワーク2を介して制御装置1間でネ
ットネット変数の情報を交換しあって名前解決を行うた
めに、絶対アドレスを求めることができるが、プログラ
ミングツール3では、実際にネットワークに接続されて
いないため、リンクエリアのどの部分がどの制御装置の
ための領域であるかはわからないので、リンクエリア内
での絶対アドレスを決定できない。そのため、静的名前
解決では、各制御装置のリンクエリアの先頭からの相対
アドレスでネット変数のアドレス割付けを行う。
This name resolution processing can also be performed basically according to the same procedure as for dynamic name resolution. However, in the case of dynamic name resolution, an absolute address can be obtained in order to perform name resolution by exchanging information of net net variables between the control devices 1 via the network 2. In this case, since it is not actually connected to the network, it is not known which part of the link area is an area for which control device, so that an absolute address in the link area cannot be determined. Therefore, in the static name resolution, the address of the net variable is assigned by the relative address from the head of the link area of each control device.

【0094】つまり、プログラミングツール3内の変数
データベースのデータ構造も、基本的に図5に示すもの
と同様になっており、動的名前解決と同様に名前解決し
た結果を各欄に格納する。そして、名前解決済みのネッ
ト変数については、変数データベース(図5)の「静的
名前解決済フラグ」をTRUEにするとともに、相対ア
ドレスを「データリンクオフセット」に格納する。
That is, the data structure of the variable database in the programming tool 3 is basically the same as that shown in FIG. 5, and the result of name resolution is stored in each column as in the case of dynamic name resolution. For the net variable whose name has been resolved, the “static name resolved flag” in the variable database (FIG. 5) is set to TRUE, and the relative address is stored in the “data link offset”.

【0095】また、プロジェクト内で名前解決できなか
ったネット変数については、変数データベース6の「静
的名前解決済フラグ」をFALSEにしておく。この場
合、「データリンクオフセット」はデフォルトの0のま
まとなる。
For the net variables whose names could not be resolved in the project, the “static name resolved flag” in the variable database 6 is set to FALSE. In this case, the “data link offset” remains at the default 0.

【0096】このようにして、静的名前解決された結果
(変数データベース6に格納されたデータ)は、ランタ
イムにダウンロードする。つまり、プログラミングツー
ル3から制御装置1に対し、制御プログラムなどととも
にダウンロードする。すると、制御装置1内の変数デー
タベース17には、変数データベース6内に格納された
データが登録される。
The result of the static name resolution (data stored in the variable database 6) is downloaded at runtime. That is, the program is downloaded from the programming tool 3 to the control device 1 together with the control program. Then, the data stored in the variable database 6 is registered in the variable database 17 in the control device 1.

【0097】そこで、動的名前解決時には、静的名前解
決済みフラグが「FALSE」のネット変数について、
上記した処理を実行する。また、静的名前解決済み(フ
ラグが「TRUE」)のネット変数については、相対ア
ドレスを絶対アドレスに変換する処理を行う。具体的に
は、図26に示すように、静的名前解決結果に各エリア
の先頭オフセットを加算することによりアドレスの変換
を行い、得られた絶対アドレスに基づき、所定のデータ
を間接参照テーブルに格納する。係るアドレスの変換
は、静的名前解決結果変換部25が行う。
Therefore, at the time of dynamic name resolution, for a net variable whose static name resolved flag is "FALSE",
Execute the above processing. For a net variable whose static name has been resolved (the flag is “TRUE”), a process of converting a relative address to an absolute address is performed. Specifically, as shown in FIG. 26, the address is converted by adding the head offset of each area to the result of the static name resolution, and predetermined data is stored in the indirect reference table based on the obtained absolute address. Store. Such address conversion is performed by the static name resolution result conversion unit 25.

【0098】上記した実施の形態では、プログラミング
ツール3で静的名前解決可能なものはすべて解決をする
ようにしたが、本発明はこれに限ることはなく、一部に
対してのみ静的名前解決を行うようにしても良い。
In the above-described embodiment, all the static names that can be resolved by the programming tool 3 are resolved. However, the present invention is not limited to this. The solution may be performed.

【0099】一例を示すと、デバッグ時などは、デバッ
グ完了した制御装置のネット変数は静的名前解決し、デ
バック途中のものは頻繁にプログラムが修正されるの
で、たとえ静的名前解決が可能であっても行わずに、動
的名前解決をするようにする。これにより、結果として
プログラムの修正結果を制御装置1に反映して確認する
までの時間を短縮できる。
For example, at the time of debugging, the net name of the control device for which debugging has been completed is subjected to static name resolution, and the program which is being debugged is frequently corrected. Even if it does not, do dynamic name resolution. As a result, it is possible to reduce the time required for reflecting the result of the program correction on the control device 1 and confirming the result.

【0100】また、別の例としては、「ある論理名(変
数)については、静的名前解決をしない」,「或る制御
装置については静的名前解決をしない」などがある。い
ずれの場合も、プログラミングツール3にて、それぞれ
の単位(変数,制御装置等)で静的名前解決をするか否
かの設定(例えば、フラグなどを用いて指定)を行うよ
うにする。そして、静的名前解決部5は、該当するもの
のみコンパイル或いはリンク字に名前解決を図るように
する。
Other examples include "do not perform static name resolution for a certain logical name (variable)" and "do not perform static name resolution for a certain control device". In either case, the programming tool 3 sets (eg, specifies using a flag or the like) whether or not to perform static name resolution in each unit (variable, control device, and the like). Then, the static name resolution unit 5 compiles or links only the relevant one to resolve the name.

【0101】さらに、上記した実施の形態では、動的名
前解決を制御装置の起動時やネットワークへの加入時の
ように、制御プログラムが動き出す前に実施するように
したが、本発明はこれに限ることはなく、例えば、制御
プログラムを動かしつつ名前解決するようにしてもよ
い。これにより、システム起動時等の動的名前解決処理
を省き、システムの起動を迅速に行えるようにすること
もできる。その際、名前解決が終わるまでは、ネット変
数の通信は行われないので、制御装置が危険な動作をし
ないように、ネット変数にはユーザが適切な初期値を設
定しておくものとする。
Further, in the above-described embodiment, the dynamic name resolution is performed before the control program starts running, such as when the control device is activated or when it joins the network. However, the present invention is not limited to this. The present invention is not limited to this. For example, name resolution may be performed while running a control program. As a result, dynamic name resolution processing at the time of system startup or the like can be omitted, and the system can be started quickly. At this time, the communication of the net variable is not performed until the name resolution is completed, so that the user sets an appropriate initial value to the net variable so that the control device does not perform a dangerous operation.

【0102】[0102]

【発明の効果】以上のように、この発明では、具体的な
データの記憶位置情報を知らなくても、論理名でアクセ
スすることができるので、通信処理を意識することな
く、共有するデータへのアクセスが容易に行える。しか
も、係る環境を得るために、記憶位置情報を動的に生
成,変更するだけでなく、少なくとも一部のデータにつ
いては、予めプログラミングツール側で静的名前解決を
行うことができるので、実際に制御装置間で通信を行っ
て動的に記憶位置情報を生成する処理数が削減できる。
よって、全体としてみると、効率よく・短時間で上記の
環境を構築することができる。
As described above, according to the present invention, it is possible to access by a logical name without knowing the storage location information of the specific data, so that the shared data can be accessed without being aware of the communication processing. Can be easily accessed. In addition, in order to obtain such an environment, not only the storage location information is dynamically generated and changed, but also at least a part of the data can be statically resolved by the programming tool in advance, so that the actual The number of processes for dynamically generating the storage location information by performing communication between the control devices can be reduced.
Therefore, as a whole, the above environment can be constructed efficiently and in a short time.

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

【図1】本発明の一実施の形態を示すブロック図であ
る。
FIG. 1 is a block diagram showing an embodiment of the present invention.

【図2】本形態の機能の概要を説明する図である。FIG. 2 is a diagram illustrating an outline of functions of the embodiment.

【図3】制御部の内部構造の一例を示す図である。FIG. 3 is a diagram illustrating an example of an internal structure of a control unit.

【図4】リンクメモリのデータ構造の一例を示す図であ
る。
FIG. 4 is a diagram illustrating an example of a data structure of a link memory.

【図5】変数データベースのデータ構造の一例を示す図
である。
FIG. 5 is a diagram illustrating an example of a data structure of a variable database.

【図6】間接参照テーブルのデータ構造の一例を示す図
である。
FIG. 6 is a diagram illustrating an example of a data structure of an indirect reference table.

【図7】Export変数リストのデータ構造の一例を
示す図である。
FIG. 7 is a diagram illustrating an example of a data structure of an Export variable list.

【図8】Import変数リストのデータ構造の一例を
示す図である。
FIG. 8 is a diagram illustrating an example of a data structure of an Import variable list.

【図9】Remote変数リストのデータ構造の一例を
示す図である。
FIG. 9 is a diagram illustrating an example of a data structure of a Remote variable list.

【図10】ネットワークシステムの好適な一実施の形態
を示す図である。
FIG. 10 is a diagram showing a preferred embodiment of a network system.

【図11】プログラミング装置を用いた制御装置へのダ
ウンロードの動作を説明する図である。
FIG. 11 is a diagram illustrating an operation of downloading to a control device using a programming device.

【図12】論理名調停部の機能の一部であるExpor
t変数リストの作成機能を示すフローチャートである。
FIG. 12 Expor is a part of the function of the logical name arbitration unit.
It is a flowchart which shows the creation function of a t variable list.

【図13】論理名調停部の機能の一部であるImpor
t変数リストの作成機能を示すフローチャートである。
FIG. 13 shows Impor which is a part of the function of the logical name arbitration unit.
9 is a flowchart illustrating a function for creating a t variable list.

【図14】Export変数リストを配送する側の処理
機能を説明するフローチャートである。
FIG. 14 is a flowchart illustrating a processing function of a side that delivers an Export variable list.

【図15】Export変数リストを受信する側の処理
機能を説明するフローチャートである。
FIG. 15 is a flowchart illustrating a processing function on the side that receives an Export variable list.

【図16】Remote変数リストとImport変数
リストから間接参照テーブルを作成する機能を説明する
図である。
FIG. 16 is a diagram illustrating a function of creating an indirect reference table from a Remote variable list and an Import variable list.

【図17】論理名調停部の機能の一部である間接参照テ
ーブルの更新機能を示すフローチャートである。
FIG. 17 is a flowchart illustrating an update function of an indirect reference table, which is a part of the function of the logical name arbitration unit.

【図18】論理名調停部の機能の一部である間接参照テ
ーブルの更新機能の具体例を示す概念図である。
FIG. 18 is a conceptual diagram showing a specific example of a function of updating an indirect reference table, which is a part of the function of the logical name arbitration unit.

【図19】制御実行部の機能を示すフローチャートであ
る。
FIG. 19 is a flowchart illustrating functions of a control execution unit.

【図20】制御装置の実行フェーズの一例を示す図であ
る。
FIG. 20 is a diagram illustrating an example of an execution phase of the control device.

【図21】制御装置内の制御部側RAMと通信側RAM
間でのデータの転送を説明する図である。
FIG. 21 is a diagram showing a control unit side RAM and a communication side RAM in the control device;
FIG. 3 is a diagram for explaining data transfer between the devices.

【図22】制御装置内の制御部側RAMと通信側RAM
間でのデータの転送のシーケンス(制御部側)を示すフ
ローチャートである。
FIG. 22 is a diagram showing a control unit side RAM and a communication side RAM in the control device;
6 is a flowchart showing a sequence of data transfer between the control units (the control unit side).

【図23】制御装置内の制御部側RAMと通信側RAM
間でのデータの転送のシーケンス(通信部側)を示すフ
ローチャートである。
FIG. 23 is a diagram showing a control unit RAM and a communication RAM in the control device;
9 is a flowchart showing a sequence of data transfer between the communication units (communication unit side).

【図24】プロジェクトの管理単位構成を示す図であ
る。
FIG. 24 is a diagram showing a management unit configuration of a project.

【図25】静的名前解決部の機能を説明するフローチャ
ートである。
FIG. 25 is a flowchart illustrating a function of a static name resolution unit.

【図26】制御装置内で行われる相対アドレスと絶対ア
ドレスの変換の一例を示す図である。
FIG. 26 is a diagram illustrating an example of conversion between a relative address and an absolute address performed in the control device.

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

1 制御装置 2 ネットワーク 3 プログラミングツール 5 静的名前解決部 6 変数データベース 11 制御部 12 通信部 15 リンクメモリ 16 間接参照テーブル 17 変数データベース 18 制御実行部 19 論理名調停部 20 Export変数リスト 21 Import変数リスト 22 Remote変数リスト 25 静的名前解決結果変換部 DESCRIPTION OF SYMBOLS 1 Control apparatus 2 Network 3 Programming tool 5 Static name resolution part 6 Variable database 11 Control part 12 Communication part 15 Link memory 16 Indirect reference table 17 Variable database 18 Control execution part 19 Logical name arbitration part 20 Export variable list 21 Import variable list 22 Remote variable list 25 Static name resolution result converter

フロントページの続き (72)発明者 吉田 寛 京都府京都市下京区塩小路通堀川東入南不 動堂町801番地 オムロン株式会社内 Fターム(参考) 5H220 BB05 CC09 CX04 CX09 DD04 EE10 HH01 HH04 JJ13 JJ24 JJ59 Continuation of the front page (72) Inventor Hiroshi Yoshida 801 Shimogyo-ku, Shimogyo-ku, Kyoto Shimogyo Higashi-iri, Minami-Fudo-cho F-term (reference) 5H220 BB05 CC09 CX04 CX09 DD04 EE10 HH01 HH04 JJ13 JJ24 JJ59

Claims (2)

【特許請求の範囲】[Claims] 【請求項1】 ネットワークに接続される複数の制御装
置間でデータを共有する分散制御システムを実現する前
記制御装置のためのプログラミングツールであって、 前記共有するデータは論理名で定義し、その論理名と、
その論理名に対応するデータを格納した相対記憶位置情
報を関連付けた相対関連情報を生成し、関連情報記憶部
に格納する静的名前解決手段と、 前記相対関連情報を前記制御装置にダウンロードする手
段を備えたことを特徴とするプログラミングツール。
1. A programming tool for a control device for realizing a distributed control system for sharing data among a plurality of control devices connected to a network, wherein the shared data is defined by a logical name, and Logical name,
Static name resolution means for generating relative relation information in which relative storage position information storing data corresponding to the logical name is stored and storing the relative relation information in a relation information storage unit; and means for downloading the relative relation information to the control device. A programming tool characterized by comprising:
【請求項2】 ネットワークに接続された他の制御装置
間との間でデータを共有することのできる制御装置であ
って、 ネットワークを介して前記他の制御装置との間で、デー
タ交換をする通信部と、 前記通信部で得た共有するデータを格納する記憶部と、 前記共有するデータは論理名で定義し、その論理名と、
その論理名に対応するデータを格納した前記記憶部の記
憶位置情報を関連付けた関連情報を格納する関連情報記
憶部と、 前記論理名に基づいて前記関連情報記憶部にアクセス
し、その論理名に対応する前記位置情報を取得するとと
もに対応するデータが記憶される前記記憶部の記憶領域
にアクセスする機能を有する制御実行部と、 前記記憶部内の記憶位置情報の変更に基づき、前記関連
情報記憶部の前記関連情報を更新する更新手段と、 前記他の制御装置との間で通信を行い、請求項1に記載
のプログラミングツールから与えられる相対関連情報の
うちの前記相対記憶位置情報を実際の記憶位置情報に更
新する機能を備え、 前記関連情報の少なくとも一部は、前記相対関連情報に
基づいて生成されたものであることを特徴とする制御装
置。
2. A control device capable of sharing data with another control device connected to a network, and exchanging data with the other control device via a network. A communication unit, a storage unit for storing shared data obtained by the communication unit, and the shared data is defined by a logical name, and the logical name,
A related information storage unit that stores related information in which storage location information of the storage unit that stores data corresponding to the logical name is stored; andthe related information storage unit is accessed based on the logical name. A control execution unit having a function of acquiring a corresponding location information and accessing a storage area of the storage unit in which corresponding data is stored; and a related information storage unit based on a change in storage location information in the storage unit. And updating means for updating the related information, and communicating with the other control device, and storing the relative storage position information among the relative related information provided from the programming tool according to claim 1 as an actual storage. A control device having a function of updating to position information, wherein at least a part of the related information is generated based on the relative related information.
JP2001073626A 2001-03-15 2001-03-15 system Expired - Lifetime JP4207105B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001073626A JP4207105B2 (en) 2001-03-15 2001-03-15 system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001073626A JP4207105B2 (en) 2001-03-15 2001-03-15 system

Publications (2)

Publication Number Publication Date
JP2002278606A true JP2002278606A (en) 2002-09-27
JP4207105B2 JP4207105B2 (en) 2009-01-14

Family

ID=18931023

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001073626A Expired - Lifetime JP4207105B2 (en) 2001-03-15 2001-03-15 system

Country Status (1)

Country Link
JP (1) JP4207105B2 (en)

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005129026A (en) * 2003-10-02 2005-05-19 Omron Corp Programmable controller, communication unit, controller system, data processing method, variable solution method and data exchange method
JP2005322268A (en) * 2003-10-02 2005-11-17 Omron Corp Programmable controller, communication unit, controller system, method of processing data, and methods of solving variables and of handling data
JP2006301886A (en) * 2005-04-19 2006-11-02 Omron Corp Programmable controller
JP2010097624A (en) * 2003-10-02 2010-04-30 Omron Corp Programmable controller and controller system
JP2011227556A (en) * 2010-04-15 2011-11-10 Mitsubishi Electric Corp Network parameter automatic setting program and peripheral device of programmable controller
JP2011233113A (en) * 2010-04-30 2011-11-17 Toshiba Corp Plant control system and program relocation method
JP2015194890A (en) * 2014-03-31 2015-11-05 株式会社ジェイテクト Plc and plc programming tool
JP2015215865A (en) * 2014-04-24 2015-12-03 富士電機株式会社 Programmable controller system, support device thereof and programmable controller
US9639249B2 (en) 2013-03-07 2017-05-02 Mitsubishi Electric Corporation Engineering tool providing human interface among plurality of human interfaces according to user skill level
WO2017168674A1 (en) * 2016-03-31 2017-10-05 東芝三菱電機産業システム株式会社 Data reproduction device for plant-monitoring control system
WO2018154884A1 (en) * 2017-02-22 2018-08-30 オムロン株式会社 Control system, control device, and control program
WO2019171501A1 (en) * 2018-03-07 2019-09-12 三菱電機株式会社 Cpu unit of programmable logic controller, programmable logic controller, method, computer, and computer program
WO2022049885A1 (en) * 2020-09-01 2022-03-10 株式会社日立産機システム Control device
WO2022190416A1 (en) * 2021-03-10 2022-09-15 オムロン株式会社 Control system, support method, and program

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61120202A (en) * 1984-11-16 1986-06-07 Hitachi Ltd Data maintenance method for processing control
JPH0272407A (en) * 1988-09-07 1990-03-12 Yokogawa Electric Corp Ladder program converter
JPH043205A (en) * 1990-04-20 1992-01-08 Yokogawa Electric Corp Data access system
JP2000268016A (en) * 1999-03-15 2000-09-29 Omron Corp Distributed control system and its constituting element

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61120202A (en) * 1984-11-16 1986-06-07 Hitachi Ltd Data maintenance method for processing control
JPH0272407A (en) * 1988-09-07 1990-03-12 Yokogawa Electric Corp Ladder program converter
JPH043205A (en) * 1990-04-20 1992-01-08 Yokogawa Electric Corp Data access system
JP2000268016A (en) * 1999-03-15 2000-09-29 Omron Corp Distributed control system and its constituting element

Cited By (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005129026A (en) * 2003-10-02 2005-05-19 Omron Corp Programmable controller, communication unit, controller system, data processing method, variable solution method and data exchange method
JP2005322268A (en) * 2003-10-02 2005-11-17 Omron Corp Programmable controller, communication unit, controller system, method of processing data, and methods of solving variables and of handling data
CN100428141C (en) * 2003-10-02 2008-10-22 欧姆龙株式会社 Programmable controller and communication unit, and methods of solving variables and of handing data
JP2010097624A (en) * 2003-10-02 2010-04-30 Omron Corp Programmable controller and controller system
JP4596153B2 (en) * 2003-10-02 2010-12-08 オムロン株式会社 Programmable controller, controller system, and variable solution method
JP2006301886A (en) * 2005-04-19 2006-11-02 Omron Corp Programmable controller
JP4544422B2 (en) * 2005-04-19 2010-09-15 オムロン株式会社 Programmable controller
JP2011227556A (en) * 2010-04-15 2011-11-10 Mitsubishi Electric Corp Network parameter automatic setting program and peripheral device of programmable controller
JP2011233113A (en) * 2010-04-30 2011-11-17 Toshiba Corp Plant control system and program relocation method
US9639249B2 (en) 2013-03-07 2017-05-02 Mitsubishi Electric Corporation Engineering tool providing human interface among plurality of human interfaces according to user skill level
JP2015194890A (en) * 2014-03-31 2015-11-05 株式会社ジェイテクト Plc and plc programming tool
JP2015215865A (en) * 2014-04-24 2015-12-03 富士電機株式会社 Programmable controller system, support device thereof and programmable controller
WO2017168674A1 (en) * 2016-03-31 2017-10-05 東芝三菱電機産業システム株式会社 Data reproduction device for plant-monitoring control system
JPWO2017168674A1 (en) * 2016-03-31 2018-11-15 東芝三菱電機産業システム株式会社 Data recovery device for plant monitoring control system
US10608933B2 (en) 2016-03-31 2020-03-31 Toshiba Mitsubishi-Electric Industrial Systems Corporation Data reproduction device for plant-monitoring control system
CN110168456A (en) * 2017-02-22 2019-08-23 欧姆龙株式会社 Control system, control device and control program
WO2018154884A1 (en) * 2017-02-22 2018-08-30 オムロン株式会社 Control system, control device, and control program
JP2018136745A (en) * 2017-02-22 2018-08-30 オムロン株式会社 Control system, controller and control program
US11169500B2 (en) 2017-02-22 2021-11-09 Omron Corporation Control system, control device and control program for verifying soundness of data on a transmission path
CN110168456B (en) * 2017-02-22 2021-12-10 欧姆龙株式会社 Control system, control device, and computer-readable storage medium
WO2019171501A1 (en) * 2018-03-07 2019-09-12 三菱電機株式会社 Cpu unit of programmable logic controller, programmable logic controller, method, computer, and computer program
JP6591116B1 (en) * 2018-03-07 2019-10-16 三菱電機株式会社 Programmable logic controller CPU unit, programmable logic controller, method, and computer
TWI701592B (en) * 2018-03-07 2020-08-11 日商三菱電機股份有限公司 Cpu unit of programmable logic controller, programmable logic controller, method, computer, and computer program
WO2022049885A1 (en) * 2020-09-01 2022-03-10 株式会社日立産機システム Control device
JP2022041359A (en) * 2020-09-01 2022-03-11 株式会社日立産機システム Control device
JP7361669B2 (en) 2020-09-01 2023-10-16 株式会社日立産機システム Control device
WO2022190416A1 (en) * 2021-03-10 2022-09-15 オムロン株式会社 Control system, support method, and program

Also Published As

Publication number Publication date
JP4207105B2 (en) 2009-01-14

Similar Documents

Publication Publication Date Title
JP2009009607A (en) Network system
US6138140A (en) Data processing method and device
JP4207105B2 (en) system
US5339435A (en) Heterogenous software configuration management apparatus
KR100239028B1 (en) Computer system and method for support of two endians
JP2986075B2 (en) System for combining a local object address and a global object identifier into a single object pointer
JP4021534B2 (en) How to run processor specific applications
JP3932817B2 (en) Control system
CN109240730B (en) Singlechip online upgrading method and system
JPH02214994A (en) Ic card
JP2002007211A (en) Processor having compressed instructions and method for compressing instruction for the processor
JPH0588907A (en) Compiling system in distributed circumstances
US20040205697A1 (en) Transferring data along with code for program overlays
CN113448643B (en) Configuration data management system and method
JP6720993B2 (en) Support devices and programs
JP2003271209A (en) Control device, expansion device and programming tool
US5479614A (en) Object sensor processing method and processor
JP3024345B2 (en) Data link method
JPH11249873A (en) Dynamic managing system for driver function and its method
JP3544886B2 (en) Programmable controller
JPH10187468A (en) System and method for parallel distributed processing
JP2005032171A (en) Communication control system between functional modules for data sharing, communication control method between functional modules, communication control program between functional modules, and its recording medium
JP3693311B2 (en) Distributed processing system
JP3489153B2 (en) File system
JP3651752B2 (en) Communication system site data creation method at the time of file update and communication system implementing the method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050810

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080219

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080228

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080428

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080610

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080811

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081008

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4207105

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111031

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111031

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121031

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121031

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131031

Year of fee payment: 5

EXPY Cancellation because of completion of term