Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP4433492B2 - Data exchange method with programmable controller - Google Patents
[go: Go Back, main page]

JP4433492B2 - Data exchange method with programmable controller - Google Patents

Data exchange method with programmable controller Download PDF

Info

Publication number
JP4433492B2
JP4433492B2 JP2000188742A JP2000188742A JP4433492B2 JP 4433492 B2 JP4433492 B2 JP 4433492B2 JP 2000188742 A JP2000188742 A JP 2000188742A JP 2000188742 A JP2000188742 A JP 2000188742A JP 4433492 B2 JP4433492 B2 JP 4433492B2
Authority
JP
Japan
Prior art keywords
programmable controller
communication
device information
information
image
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.)
Expired - Fee Related
Application number
JP2000188742A
Other languages
Japanese (ja)
Other versions
JP2002006908A (en
Inventor
正 吉川
一明 芹沢
昌宏 小池
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Howa Machinery Ltd
Original Assignee
Howa Machinery Ltd
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 Howa Machinery Ltd filed Critical Howa Machinery Ltd
Priority to JP2000188742A priority Critical patent/JP4433492B2/en
Publication of JP2002006908A publication Critical patent/JP2002006908A/en
Application granted granted Critical
Publication of JP4433492B2 publication Critical patent/JP4433492B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Control By Computers (AREA)
  • Programmable Controllers (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、表示装置などの外部データ取扱機器などとプログラマグルコントローラとの間でデータを授受する方式に関する。
【0002】
【従来の技術】
従来、例えば、パーソナルコンピュータによって制御される表示装置では、図1に示すように、ある一つの画面表示動作(プロジェクト)には、プログラマブルコントローラの複数のデバイス情報が用いられて、いくつかの異なる内容表示(オブジェクト)が行われている。このような複数のオブジェクトを実行するとき、従来では、オブジェクト1つづつに対して、表示装置側からプログラマブルコントローラへ必要とするデバイス情報を要求し、プログラマブルコントローラから、その要求に応じたデバイス情報を表示装置へ返し、その通信の都度、表示装置の表示アプリケーションが同期して動作して、表示動作を行うようになっている。
【0003】
【発明が解決しようとする課題】
前記従来の通信方式では、1つ1つのオブジェクト毎に通信を行っているので、オブジェクトが多数あるようなプロジェクトにおいては、非常に応答性の悪いシステムとなる。また、プロジェクトに含まれる複数のオブジェクトでは、デバイス情報が重複したりする場合もあり、そうすると、同じデバイス情報を何度も通信する結果、ますます応答性が落ちる結果になる。
この発明の課題は、応答性のよいプログラマブルコントローラとの間のデータ通信方式を提供することにある。また、プロジェクト側のアプリケーションが通信システムと全く非同期でデバイス情報を入手できるシンプルな通信制御を実現できるデータ通信方式を提供することにある。
【0004】
【課題を解決するための手段】
上記課題解決のため、本願では、プログラマブルコントローラと、表示装置などの外部のデータ取扱機器との間などにおいてデータを授受する方式であって、プログラマブルコントローラのデバイス番号に対応して、デバイス情報を格納する中間メモリを設けておき、その中間メモリにプログラマブルコントローラからのデバイス情報を逐次メモリし、データ取扱機器は、必要時に前記中間メモリのデバイス情報を参照してそのデバイス情報を用いて自己のプロジェクトを実行するプログラマブルコントローラとの間のデータ授受方式において、
データ取扱機器は、実行しようとするプロジェクトに、プログラマブルコントローラの、異なるデバイスサイズのデバイス情報を使用する複数のオブジェクトが割り当てられる一方、プロジェクト実行前に、複数のオブジェクトから各オブジェクトで必要とするプログラマブルコントローラ番号、デバイス番号、デバイスサイズなどのオブジェクト情報を読み出してオブジェクトテーブルを作成し、そのオブジェクトテーブルをプログラマブルコントローラ番号別でかつデバイス番号順に並べ替え、そのデバイス番号順にデバイス単位毎で順次展開してオブジェクデバイスイメージテーブルを作成し、オブジェクトデバイスイメージテーブルから、実際にデバイス情報を格納する中間メモリとしてのオブジェクトイメージを作成し、オブジェクトイメージ内でのデータ位置を示すポインタを前記オブジェクトテーブルに算出する処理を実施し、オブジェクトデバイスイメージテーブルの全範囲にわたって、1回の通信で読み出し、書き込み可能な複数のデバイス範囲を設定し、各デバイス範囲の先頭となるデバイス情報と、その先頭から一括して通信するデバイスまでの通信サイズとを、通信スキャンテーブルとして書き出す前処理を行い、前処理終了後に、プログラマブルコントローラとの間で1回に通信できる情報サイズで、常時、若しくは適宜のタイミングで前記通信スキャンテーブルの内容に従って、プログラマブルコントローラとデータ取扱機器との間で通信を行い、プログラマブルコントローラからのデバイス情報を前記オブジェクトイメージ内に逐次記録する一方、前記データ取扱機器は、自己の動作に必要なデバイス情報を、前記オブジェクトイメージを参照して取り込むようにし、特定のデバイス情報に対応するオブジェクトイメージに対応した通信スキャンテーブルの位置を計算し、その通信スキャンテーブル位置から次の通信を行い、表示更新するオブジェクトの優先順位を変更できるようにしたことを特徴とする(請求項1)。これによれば、データ取扱機器では、必要時に中間メモリの必要データ部分を参照することで自己の動作(プロジェクト)を実行でき、プログラマブルコントローラからのデバイス情報取得動作に同期してデータ取扱機器側のアプリケーションを制御する必要がない。
また、デバイス情報を一旦デバイス単位に展開することで、オブジェクトが重複したデバイス情報や、ビットデバイス情報を混在して使用する場合であっても、重複したデバイス情報を取得しなくてよく、通信時間を短縮できる。さらに、高速な更新が必要な特定のオブジェクトに対しては、優先的に通信することができる。
【0006】
【発明の実施の形態】
以下、表示装置1にプログラマブルコントローラのデバイス情報を表示する態様で本願発明を説明する。図1において、制御対象機器をコントロールするために、複数のプログラマブルコントローラPLCn,n+1…が設けてある。演算制御装置(例えばパーソナルコンピュータ)2がプログラマブルコントローラPLCn,n+1…と接続され、パーソナルコンピュータ2は、表示装置1に接続されている。パーソナルコンピュータ2は、表示装置1に、プログラマブルコントローラPLCn,n+1…のデバイス情報を表示するための表示アプリケーション3を備えている。この表示アプリケーション3により、表示装置1上には、例えば図1に示すように、所定の画面位置に、デバイス情報が単一に、あるいは、複数のデバイス情報からなるデバイス情報群として表示されるようになっている。この画面表示動作をプロジェクトと呼び、そのプロジェクトは、前述のようにいくつかのデバイス情報表示から構成され、これらのデバイス情報表示をオブジェクトと呼び、ここでは、オブジェクト1〜7の7つのオブジェクトにより1つのプロジェクトが構成されている。
【0007】
各オブジェクト1〜7には、それの含まれるプロジェクト(画面表示動作)において、固有の番号が与えられており、これをテーブル番号として表示位置情報として利用している。各オブジェクト1〜7は、プログラマブルコントローラPLCn,n+1…のPLC番号n,n+1…、そのプログラマブルコントローラPLCn,n+1…のデバイス番号、1デバイスの大きさを示すテーブルバイトサイズ(デバイスの種類などにより、「1デバイス」を構成する基本バイト単位は異なる。後述のオブジェクトイメージを参照するときの、展開イメージオフセット位置からのバイトサイズであり、デバイスサイズである)、デバイスがビットデバイスであった場合の、「1デバイスを構成する基本バイト単位」にした場合のそのデバイスの先頭からのオフセット量、及び、後述のオブジェクトイメージの先頭からのオフセット位置とを持っている(図2参照)。
【0008】
演算処理装置2は、プロジェクトが実行される(画面表示のアプリケーションが実行される)のに先立ち、前記各オブジェクト1〜7で使用されるデバイス情報を整理する前処理プログラム4を有する。この前処理プログラム4では、以下の処理が行われる。
(1)プロジェクト(画面表示アプリケーション)から、そのプロジェクトに含まれる複数のオブジェクト情報を読み出し、これを演算処理装置2のメモリ領域に、図2に示すようなオブジェクトテーブル5として記憶する。各オブジェクト1〜7のオブジェクト情報は前記した通りであり、ここでは、7つのオブジェクト1〜7のデータが順に記憶され、メモリ領域において、各オブジェクトデータの先頭アドレスが順にS1、S2…S7となっている。
(2)次に、こうして作られたオブジェクトテーブル5のテーブルデータを、プログラマブルコントローラ番号別でデバイス番号順にソートし、その並べ替えた結果を、各オブジェクトデータの先頭アドレスS1〜S7により図3に示すようにオブジェクトソートポインタ6として保存する。
(3)次にオブジェクトソートポインタ6の示す内容に従って、オブジェクトテーブル5を参照すると、図4の右側のテーブルの並びとなるので、この並べ替えられたオブジェクトテーブルの内容に従って、プログラマブルコントローラPLCn,n+1…毎に、しかも、デバイス番号順に、デバイス単位毎で順に展開してオブジェクトデバイスイメージテーブル7を作成する。
【0009】
いま、1デバイスが2バイトで構成され、テーブル番号2のオブジェクト2では、プログラマブルコントローラnのデバイス番号mから8バイト分を使用するので、8バイト/2バイトで4デバイスのデータ、つまり、デバイス番号mからデバイス番号m+3までを使用し、テーブル番号4のオブジェクト4では同様にしてデバイス番号m+2からデバイス番号m+5までを使用し、テーブル番号6のオブジェクトではデバイス番号m+10のみを使用し、テーブル番号5のオブジェクトではデバイス番号m+10から5デバイス分つまりデバイス番号m+14までを使用する。また、テーブル番号7,3,1のオブジェクト7,オブジェクト3,オブジェクト1は、夫々ビットデバイスであって、順にビットデバイスp、p+4、p+5の夫々1ビットデータを使用するとする。尚、ビットデバイスとは、例えばプログラマブルコントローラn内のデバイス番号pの16ビット(2バイト)のメモリエリアの各1ビット単位のデバイスを指し、ビットデバイスオフセット量とは、デバイス番号pの16ビットの先頭ビットからのオフセット量である。
オブジェクトイメージデバイステーブル7では、デバイス単位で展開されているので、並べ替えられたオブジェクトテーブルの内容をこのオブジェクトイメージデバイステーブル7に対応づけていくと、テーブル番号2,4のオブジェクトデータは、図4のように、オブジェクトイメージデバイステーブル7において、デバイス番号m+2、m+3の部分で重なる。また、テーブル番号6,5のオブジェクトデータは、デバイス番号m+10で重なる。このことは、プロジェクト中に、重複するデバイス情報を含んでいる複数のオブジェクトがある場合には、それらの重複するデバイス番号即ち通信情報の重複は、このオブジェクトイメージデバイステーブル7を作成することで吸収されることを示している。また、テーブル番号7,3,1の各ビットデバイスは、そのビットデバイスの存在するデバイス番号pの16ビット内に含まれるので、デバイス単位で通信することで、これら複数のビットデバイス情報も一度に取得されることになる。
【0010】
(4)次に、プログラマブルコントローラn,n+1…からのデバイス情報を実際にバイト単位で格納する為のオブジェクトイメージ8を作成する。オブジェクトイメージ8は、前述のオブジェクトデバイスイメージテーブル7を参照して、各デバイス番号に対応してバイト単位で展開して作成される。即ち、デバイス番号mに対して、オブジェクトイメージ+0,+1の2バイト領域が対応し、デバイス番号m+1に対してオブジェクトイメージ+2、+3の2バイト領域が対応し、というように対応づけてある。そして、このオブジェクトイメージ8の先頭から、前記オブジェクトテーブル5におけるオブジェクトデータの展開イメージオフセット位置がポインタとして夫々算出され、オブジェクトテーブル5の、対応するオブジェクトデータの展開イメージオフセット位置T1〜T7に書き込まれる。例えば、オブジェクト2(テーブル番号2)では、デバイス番号mから8バイト分のデータを必要とするので、オブジェクトイメージ+0を先頭とするためオフセット位置は「0」、オブジェクト4(テーブル番号4)では、デバイス番号m+2から8バイト分のデータを必要とするので、オブジェクトイメージ+4を先頭とするためオフセット位置は「4」というように書き込まれ、同様に、オブジェクト5,6では、オフセット位置は「12」、ビットデバイスであるオブジェクト7,3,1では、オフセット位置は「22」となり、これらが対応する展開イメージオフセット位置T5、T6、T7、T3、T1に書き込まれる。書き込まれた様子を、図2ではこれらの数値を括弧で囲んで表現している。
【0011】
(5)更に、オブジェクトデバイスイメージテーブル7の先頭デバイスをチェックし、その先頭デバイスから、1回の通信で読み出し、書き込み可能なデバイスまで検索する。そのデバイス群を通信するためのサイズ(一括通信サイズ)を算出し、先の先頭通信デバイス情報と共に、通信スキャンテーブル9の最初のポインタに設定する。次に、先の一括通信サイズの最終となった次のデバイスを先頭デバイスとして、上記同様に1回の通信で読み出し、書き込み可能なデバイスまで検索し、一括通信サイズを算出し、先頭通信デバイス情報と共に、通信スキャンテーブル9の次のポインタに設定する、という処理をオブジェクトデバイスイメージテーブル7の最終ポインタまで繰り返し、通信スキャンテーブル9を作成する。
【0012】
前処理プログラム4により、以上の前処理が終了した後、演算処理装置2は、常時、通信スキャンテーブル9の内容に従って、その先頭からプログラマブルコントローラn,n+1…との間で通信を行う。すると、プログラマブルコントローラn,n+1…からのデバイス情報は、オブジェクトイメージ8の、各デバイス番号に対応付けられた位置にバイト単位で逐次記録されていく。一方、表示アプリケーション3は、そのようにして逐次書き換えられていくプログラマブルコントローラn,n+1…からのデバイス情報を、必要に応じてオブジェクトに対応したオブジェクトテーブル5の展開イメージオフセット位置のデータと、オブジェクトイメージ8におけるテーブルデータサイズを用いて、前記オブジェクトイメージ8を参照し、画面表示を行う。例えば、プロジェクト2では、展開イメージオフセット位置が「0」でテーブルバイトサイズが「8」なので、オブジェクトイメージ8の先頭(オブジェクトイメージ+0)から8バイト分(オブジェクトイメージ+7まで)のデータを取得して表示する。このように、表示アプリケーション3は、デバイス情報を逐次書き換えていく通信システムと非同期でデバイス情報をやりとりできるので、通信制御が極めてシンプルとなる。また、オブジェクト2とオブジェクト4のように、各オブジェクトで重複するデバイス情報を扱っている場合でも、そうした重複デバイス情報をデバイス単位に展開することで排除しており、重複してデバイス情報を取得する必要がなく、通信データサイズを小さくできる。
【0013】
なお、通信スキャンテーブル9に基づいてオブジェクトイメージ8が逐次書き換えられていくが、例えばオブジェクト2で利用するデバイス番号m〜m+3に対応するオブジェクトイメージ8のオブジェクトイメージ+0〜+8の途中(例えばオブジェクトイメージ+5)まで書き換えが行われたときに、オブジェクト2がオブジェクトイメージ8を参照すると、オブジェクトイメージ+0〜+5までは新しいデータであるが、オブジェクトイメージ+6以後は、1回前のデータである。これをそのまま取得すると、1つのオブジェクトに新旧のデバイス情報が混在して取得されてしまって好ましくないので、このような場合にはオブジェクトイメージ+0〜+8のデータを取得しないようにする。具体的には、オブジェクトイメージ8の1バイト毎のデータエリアに書き込まれる各デバイス情報に、オブジェクトイメージ8のすべてのデータの書き換えが行われる度にカウントするカウントデータを付加し、そのカウントデータが、取り込もうとするオブジェクトイメージ8の対象データ範囲で一致していれば、デバイス情報を取得し、一致していなければ、取得しないというようにする。
【0015】
【発明の効果】
以上のように本発明では、データ取扱機器では、必要時に中間メモリの必要データ部分を参照することでプロジェクトを実行でき、プログラマブルコントローラからのデバイス情報取得動作にデータ取扱機器側のアプリケーションを同期する必要がなく、単純な通信制御となる。また、デバイス情報をデバイス単位に展開することで、オブジェクトが重複したデバイス情報や、ビットデバイス情報を混在して使用する場合であっても、重複したデバイス情報を取得しなくてよく、1つのプロジェクトにおけるデータ通信時間を短縮できる利点がある。
また、上記実施形態では、通信スキャンテーブルをその先頭から順に読み出してデータ通信を行っているが、特定のデバイス情報の即時の表示更新を行いたい場合には、そのデバイス情報に対応するオブジェクトイメージに対応した通信スキャンテーブルの位置を計算し、その通信スキャンテーブル位置から次の通信を行うようにすればよく、オブジェクトに重みを持たせて、高速な更新が必要なオブジェクトに対しては、優先的に通信させることができる。
【図面の簡単な説明】
【図1】本願発明の全体構成を示すブロック図である。
【図2】オブジェクトテーブルを示す図である。
【図3】オブジェクトソートポインタの説明図である。
【図4】オブジェクトデバイスイメージテーブルの説明図である。
【図5】オブジェクトイメージの説明図である。
【図6】通信スキャンテーブルの説明図である。
【符号の説明】
1 表示装置
2 演算制御装置
3 表示アプリケーション
5 オブジェクトテーブル
7 オブジェクトデバイスイメージテーブル
8 オブジェクトイメージ
9 通信スキャンテーブル
PLCn、PLCn+1 プログラマブルコントローラ
[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a method for exchanging data between an external data handling device such as a display device and a programmer controller.
[0002]
[Prior art]
2. Description of the Related Art Conventionally, for example, in a display device controlled by a personal computer, as shown in FIG. 1, a plurality of device information of a programmable controller is used for one screen display operation (project), and several different contents are used. Display (object) is performed. When executing such a plurality of objects, conventionally, the device information required from the display device side to the programmable controller is requested for each object, and the device information corresponding to the request is received from the programmable controller. Returning to the display device, each time the communication is performed, the display application of the display device operates synchronously to perform a display operation.
[0003]
[Problems to be solved by the invention]
In the conventional communication method, since communication is performed for each object, in a project where there are a large number of objects, the system is very responsive. In addition, device information may be duplicated in a plurality of objects included in a project, and as a result, the same device information is communicated over and over, resulting in an increasingly poor response.
An object of the present invention is to provide a data communication system with a responsive programmable controller. It is another object of the present invention to provide a data communication method that can realize simple communication control in which the application on the project side can obtain device information completely asynchronously with the communication system.
[0004]
[Means for Solving the Problems]
In order to solve the above problems, in the present application, data is exchanged between a programmable controller and an external data handling device such as a display device, and device information is stored corresponding to the device number of the programmable controller. An intermediate memory is provided, and device information from the programmable controller is sequentially stored in the intermediate memory, and the data handling device refers to the device information in the intermediate memory when necessary and uses the device information to perform its own project. In the data transfer method with the programmable controller to be executed,
In the data handling device, a plurality of objects using device information of different device sizes of the programmable controller are assigned to the project to be executed, while the programmable controller required for each object from the plurality of objects before the project execution. number, device number, to create an object table reads the object information such as device size, objects and the object table sorted to the programmable controller by number a and the device number order, sequentially developed with each device unit to the device number order Create a device image table, and create an object image as an intermediate memory that actually stores device information from the object device image table. A process for calculating a pointer indicating the data position in the image image in the object table, setting a plurality of device ranges that can be read and written in one communication over the entire range of the object device image table, Performs pre-processing to write out device information at the head of the device range and the communication size from the head to the devices that communicate with each other as a communication scan table. Once pre-processing is completed, once with the programmable controller Communicate between the programmable controller and the data handling device in accordance with the contents of the communication scan table at a regular or appropriate timing with a communicable information size, and sequentially record device information from the programmable controller in the object image on the other hand Wherein the data handling device, the device information necessary for its own operation, the to capture refers to an object image to compute the position of the communication scan table corresponding to the object image corresponding to the specific device information, the communication The following communication is performed from the scan table position so that the priority order of the objects to be updated can be changed (claim 1). According to this, the data handling device can execute its own operation (project) by referring to the necessary data portion of the intermediate memory when necessary, and the data handling device side synchronizes with the device information acquisition operation from the programmable controller. There is no need to control the application.
Also, once device information is expanded in units of devices, duplicate device information does not need to be acquired even when device information with duplicate objects and bit device information are used together, and communication time Can be shortened. Furthermore, it is possible to preferentially communicate with a specific object that requires high-speed updating.
[0006]
DETAILED DESCRIPTION OF THE INVENTION
Hereinafter, the present invention will be described in a mode in which device information of the programmable controller is displayed on the display device 1. In FIG. 1, a plurality of programmable controllers PLCn, n + 1... Are provided to control the control target device. An arithmetic control device (for example, a personal computer) 2 is connected to the programmable controllers PLCn, n + 1..., And the personal computer 2 is connected to the display device 1. The personal computer 2 includes a display application 3 for displaying device information of the programmable controllers PLCn, n + 1... On the display device 1. As shown in FIG. 1, for example, as shown in FIG. 1, the display application 3 displays device information as a single device information or a device information group including a plurality of device information at a predetermined screen position. It has become. This screen display operation is called a project, and the project is composed of several device information displays as described above. These device information displays are called objects. Here, seven objects 1 to 7 are used to indicate one. There are two projects.
[0007]
Each object 1-7 is given a unique number in the project (screen display operation) in which each object is included, and this is used as display position information as a table number. Each object 1 to 7 has a PLC number n, n + 1... Of the programmable controller PLCn, n + 1..., A device number of the programmable controller PLCn, n + 1..., A table byte size indicating the size of the device. The basic byte unit constituting “1 device” is different.The byte size from the development image offset position when referring to an object image to be described later is the device size), and when the device is a bit device, It has an offset amount from the head of the device in the case of “basic byte unit constituting one device” and an offset position from the head of the object image described later (see FIG. 2).
[0008]
The arithmetic processing device 2 has a preprocessing program 4 for organizing device information used by the objects 1 to 7 before a project is executed (an application for screen display is executed). In the preprocessing program 4, the following processing is performed.
(1) A plurality of object information included in the project is read from the project (screen display application), and stored in the memory area of the arithmetic processing unit 2 as an object table 5 as shown in FIG. The object information of each object 1 to 7 is as described above. Here, the data of the seven objects 1 to 7 are stored in order, and the start address of each object data in the memory area is S1, S2,... S7 in order. ing.
(2) Next, the table data of the object table 5 created in this way is sorted in order of device number by programmable controller number, and the rearranged result is shown in FIG. 3 by the top addresses S1 to S7 of each object data. Thus, the object sort pointer 6 is saved.
(3) Next, referring to the object table 5 according to the contents indicated by the object sort pointer 6, the table on the right side of FIG. 4 is arranged, so that the programmable controllers PLCn, n + 1... According to the contents of the rearranged object table. In addition, the object device image table 7 is created by developing the device numbers in order by device number.
[0009]
Now, since one device is composed of 2 bytes and the object 2 of the table number 2 uses 8 bytes from the device number m of the programmable controller n, the data of 4 devices in 8 bytes / 2 bytes, that is, the device number m to device number m + 3 are used, object number 4 of table number 4 uses device number m + 2 to device number m + 5 in the same manner, object number of table number 6 uses only device number m + 10, and table number 5 The object uses device numbers m + 10 to 5 devices, that is, device numbers m + 14. Further, it is assumed that object 7, object 3, and object 1 of table numbers 7, 3, and 1 are bit devices, respectively, and 1-bit data of bit devices p, p + 4, and p + 5 are used in this order. The bit device refers to a device in units of 1 bit in a 16-bit (2-byte) memory area of the device number p in the programmable controller n, for example, and the bit device offset amount refers to the 16-bit device number p. This is the amount of offset from the first bit.
Since the object image device table 7 is expanded in units of devices, if the contents of the rearranged object table are associated with the object image device table 7, the object data of the table numbers 2 and 4 are shown in FIG. In the object image device table 7, the device numbers m + 2 and m + 3 overlap each other. The object data in the table numbers 6 and 5 overlap with the device number m + 10. This means that if there are a plurality of objects containing overlapping device information in the project, these overlapping device numbers, that is, duplication of communication information, are absorbed by creating this object image device table 7. It is shown that. Further, each bit device of the table numbers 7, 3, and 1 is included in 16 bits of the device number p in which the bit device exists. Will be acquired.
[0010]
(4) Next, an object image 8 for actually storing device information from the programmable controllers n, n + 1... In byte units is created. The object image 8 is created by referring to the above-described object device image table 7 and expanding in byte units corresponding to each device number. That is, the 2-byte area of the object image + 0, + 1 corresponds to the device number m, the 2-byte area of the object image +2, +3 corresponds to the device number m + 1, and so on. Then, the development image offset position of the object data in the object table 5 is calculated from the head of the object image 8 as a pointer, and written in the development image offset positions T1 to T7 of the corresponding object data in the object table 5. For example, since object 2 (table number 2) requires 8 bytes of data from device number m, the offset position is “0” because object image +0 is the head, and object 4 (table number 4) Since 8 bytes of data from the device number m + 2 are required, the offset position is written as “4” since the object image +4 is the head. Similarly, in the objects 5 and 6, the offset position is “12”. In the objects 7, 3, and 1 that are bit devices, the offset position is “22”, and these are written in the corresponding developed image offset positions T5, T6, T7, T3, and T1. In FIG. 2, the written state is expressed by enclosing these numerical values in parentheses.
[0011]
(5) Further, the head device of the object device image table 7 is checked, and from the head device, a device that can be read and written by one communication is searched. A size (collective communication size) for communicating the device group is calculated, and set to the first pointer of the communication scan table 9 together with the previous head communication device information. Next, the next device, which is the last of the previous batch communication size, is set as the top device, and in the same manner as described above, a device that reads and writes data can be searched once, the batch communication size is calculated, and the top communication device information is obtained. At the same time, the process of setting the next pointer of the communication scan table 9 is repeated until the final pointer of the object device image table 7 to create the communication scan table 9.
[0012]
After the above preprocessing is completed by the preprocessing program 4, the arithmetic processing device 2 always communicates with the programmable controllers n, n + 1... From the head according to the contents of the communication scan table 9. Then, the device information from the programmable controllers n, n + 1,... Is sequentially recorded in byte units at positions corresponding to the respective device numbers in the object image 8. On the other hand, the display application 3 converts the device information from the programmable controllers n, n + 1,..., Which is sequentially rewritten as described above, to the data of the developed image offset position of the object table 5 corresponding to the object and the object image as necessary. Using the table data size in FIG. 8, the object image 8 is referred to and screen display is performed. For example, in Project 2, since the developed image offset position is “0” and the table byte size is “8”, data of 8 bytes (from object image +7) to the beginning of object image 8 (object image +0) is acquired. indicate. In this way, the display application 3 can exchange device information asynchronously with a communication system that sequentially rewrites device information, so communication control is extremely simple. Further, even when overlapping device information is handled in each object, such as the object 2 and the object 4, such overlapping device information is eliminated by expanding the device unit, and device information is acquired redundantly. There is no need, and the communication data size can be reduced.
[0013]
The object image 8 is sequentially rewritten based on the communication scan table 9. For example, the object image +0 to +8 in the middle of the object image 8 corresponding to the device numbers m to m + 3 used in the object 2 (for example, the object image +5). When the object 2 refers to the object image 8 when the rewriting is performed, the object image +0 to +5 is new data, but the object image +6 and later are the previous data. If this is acquired as it is, it is not preferable because new and old device information is mixedly acquired in one object. In such a case, data of object images +0 to +8 is not acquired. Specifically, count data that is counted every time all data of the object image 8 is rewritten is added to each device information written in the data area for each byte of the object image 8, and the count data is If the target data range of the object image 8 to be captured matches, the device information is acquired, and if it does not match, the device information is not acquired.
[0015]
【The invention's effect】
As described above, in the present invention, the data handling device can execute the project by referring to the necessary data portion of the intermediate memory when necessary, and it is necessary to synchronize the application on the data handling device side with the device information acquisition operation from the programmable controller. There is no simple communication control. Also, by deploying device information in units of devices, it is not necessary to obtain duplicate device information even when device information with overlapping objects or bit device information is used together. There is an advantage that the data communication time can be shortened.
In the above-described embodiment, the communication scan table is read in order from the head and data communication is performed. However, when an immediate display update of specific device information is desired, an object image corresponding to the device information is displayed. It is only necessary to calculate the position of the corresponding communication scan table and perform the next communication from the position of the communication scan table, and give priority to objects that need to be weighted and updated at high speed. Can communicate.
[Brief description of the drawings]
FIG. 1 is a block diagram showing an overall configuration of the present invention.
FIG. 2 is a diagram illustrating an object table.
FIG. 3 is an explanatory diagram of an object sort pointer.
FIG. 4 is an explanatory diagram of an object device image table.
FIG. 5 is an explanatory diagram of an object image.
FIG. 6 is an explanatory diagram of a communication scan table.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 Display apparatus 2 Arithmetic control apparatus 3 Display application 5 Object table 7 Object device image table 8 Object image 9 Communication scan table PLCn, PLCn + 1 Programmable controller

Claims (1)

プログラマブルコントローラと、表示装置などの外部のデータ取扱機器との間などにおいてデータを授受する方式であって、プログラマブルコントローラのデバイス番号に対応して、デバイス情報を格納する中間メモリを設けておき、その中間メモリにプログラマブルコントローラからのデバイス情報を逐次メモリし、データ取扱機器は、必要時に前記中間メモリのデバイス情報を参照してそのデバイス情報を用いて自己のプロジェクトを実行するプログラマブルコントローラとの間のデータ授受方式において、
データ取扱機器は、実行しようとするプロジェクトに、プログラマブルコントローラの、異なるデバイスサイズのデバイス情報を使用する複数のオブジェクトが割り当てられる一方、
プロジェクト実行前に、
(1)複数のオブジェクトから各オブジェクトで必要とするプログラマブルコントローラ番号、デバイス番号、デバイスサイズなどのオブジェクト情報を読み出してオブジェクトテーブルを作成し、
(2)そのオブジェクトテーブルをプログラマブルコントローラ番号別でかつデバイス番号順に並べ替え、
(3)そのデバイス番号順にデバイス単位毎で順次展開してオブジェクデバイスイメージテーブルを作成し、
(4)オブジェクトデバイスイメージテーブルから、実際にデバイス情報を格納する中間メモリとしてのオブジェクトイメージを作成し、オブジェクトイメージ内でのデータ位置を示すポインタを前記オブジェクトテーブルに算出する処理を実施し、
(5)オブジェクトデバイスイメージテーブルの全範囲にわたって、1回の通信で読み出し、書き込み可能な複数のデバイス範囲を設定し、各デバイス範囲の先頭となるデバイス情報と、その先頭から一括して通信するデバイスまでの通信サイズとを、通信スキャンテーブルとして書き出す前処理を行い、
前処理終了後に、プログラマブルコントローラとの間で1回に通信できる情報サイズで、常時、若しくは適宜のタイミングで前記通信スキャンテーブルの内容に従って、プログラマブルコントローラとデータ取扱機器との間で通信を行い、
プログラマブルコントローラからのデバイス情報を前記オブジェクトイメージ内に逐次記録する一方、
前記データ取扱機器は、自己の動作に必要なデバイス情報を、前記オブジェクトイメージを参照して取り込むようにし
特定のデバイス情報に対応するオブジェクトイメージに対応した通信スキャンテーブルの位置を計算し、その通信スキャンテーブル位置から次の通信を行い、表示更新するオブジェクトの優先順位を変更できるようにしたことを特徴とするプログラマブルコントローラとの間のデータ授受方式。
This is a method for transferring data between a programmable controller and an external data handling device such as a display device, and an intermediate memory for storing device information corresponding to the device number of the programmable controller is provided. The device information from the programmable controller is sequentially stored in the intermediate memory, and the data handling device refers to the device information in the intermediate memory when necessary, and uses the device information to execute the project with the programmable controller. In the transfer system,
While the data handling device is assigned multiple objects that use device information of different device sizes of the programmable controller to the project to be executed,
Before running the project,
(1) Read object information such as the programmable controller number, device number, and device size required for each object from multiple objects, create an object table,
(2) Sort the object table by programmable controller number and in device number order,
(3) to create an object device image table are sequentially deployed in each device unit to the device number order,
(4) An object image as an intermediate memory for actually storing device information is created from the object device image table, and a process for calculating a pointer indicating a data position in the object image is performed in the object table.
(5) A device that sets a plurality of device ranges that can be read and written in one communication over the entire range of the object device image table, and communicates collectively from the head of each device range and the device information. Pre-processing to write out the communication size up to the communication scan table,
After the preprocessing is completed, with the information size that can be communicated with the programmable controller at a time, according to the contents of the communication scan table at any time or at an appropriate timing, communication is performed between the programmable controller and the data handling device,
While sequentially recording device information from the programmable controller in the object image,
The data handling device captures device information necessary for its own operation with reference to the object image ,
The communication scan table position corresponding to the object image corresponding to specific device information is calculated, the next communication is performed from the communication scan table position, and the priority order of objects to be updated can be changed. Data exchange with a programmable controller.
JP2000188742A 2000-06-23 2000-06-23 Data exchange method with programmable controller Expired - Fee Related JP4433492B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000188742A JP4433492B2 (en) 2000-06-23 2000-06-23 Data exchange method with programmable controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000188742A JP4433492B2 (en) 2000-06-23 2000-06-23 Data exchange method with programmable controller

Publications (2)

Publication Number Publication Date
JP2002006908A JP2002006908A (en) 2002-01-11
JP4433492B2 true JP4433492B2 (en) 2010-03-17

Family

ID=18688480

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000188742A Expired - Fee Related JP4433492B2 (en) 2000-06-23 2000-06-23 Data exchange method with programmable controller

Country Status (1)

Country Link
JP (1) JP4433492B2 (en)

Also Published As

Publication number Publication date
JP2002006908A (en) 2002-01-11

Similar Documents

Publication Publication Date Title
JPH0425582B2 (en)
JP4433492B2 (en) Data exchange method with programmable controller
KR100782594B1 (en) Memory device with data processing function
JP2000330970A (en) Simulation apparatus and simulation method
JPH03248204A (en) Control method for programmable controller
JP3404730B2 (en) Program update detection method for programming device
JPH0250786A (en) Ic card and its program rewriting system
JPH10334038A (en) Data transfer device
JPH0272430A (en) Arithmetic processor
JP2867482B2 (en) Image processing device
JPH04333952A (en) Dma control lsi
JPS63223943A (en) Direct memory access control system
JP2000172307A (en) Method of updating process data collection device
JP2793258B2 (en) Data setting method for positioning control device
US7099345B2 (en) Method and system for buffering a data packet for transmission to a network
JP3358113B2 (en) Program creation device for programmable controller
JPS62200945A (en) Communication control system
JPH02228743A (en) System for data transfer between storage devices
JPH1029477A (en) Electronic control device and control method thereof
JPS6214242A (en) Variable hystory recording system
JPH04284588A (en) Programmable remote id controller
JPS6041143A (en) Method for setting up control condition of computer system
JPH0520140U (en) Information processing equipment
JPH0385648A (en) Operation history information recording system for program
JPH01114961A (en) Directory memory access controller

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20061201

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090423

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090423

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090618

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090727

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091014

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20091104

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4433492

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20130108

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20140108

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees