JP2007179114A - Data processor, its indication data creating device, program, and recording medium - Google Patents
Data processor, its indication data creating device, program, and recording medium Download PDFInfo
- Publication number
- JP2007179114A JP2007179114A JP2005373632A JP2005373632A JP2007179114A JP 2007179114 A JP2007179114 A JP 2007179114A JP 2005373632 A JP2005373632 A JP 2005373632A JP 2005373632 A JP2005373632 A JP 2005373632A JP 2007179114 A JP2007179114 A JP 2007179114A
- Authority
- JP
- Japan
- Prior art keywords
- variable
- address
- storage area
- instruction
- type
- 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
Links
Images
Abstract
Description
本発明は、例えば、グラフィック操作パネルやPLCなどのデータ処理装置、および、これらのグラフィック操作パネルやPLCなどが動作する際に参照する画面データやラダープログラムなどの指示データを生成する指示データ生成装置、並びに、そのプログラムおよび記録媒体に関するものである。 The present invention provides, for example, a data processing apparatus such as a graphic operation panel or a PLC, and an instruction data generation apparatus that generates instruction data such as screen data or a ladder program to be referred to when the graphic operation panel or the PLC operates. And a program and a recording medium thereof.
従来から、制御システムでは、プログラマブルロジックコントローラ(PLC)などと呼ばれる産業用制御装置が、シーケンス制御をはじめとする各種制御を実現するために使用されている。 Conventionally, in a control system, an industrial control device called a programmable logic controller (PLC) or the like has been used to realize various controls including sequence control.
上記PLCには、プログラムエディタ装置において作成されたラダープログラムが予め格納されており、当該ラダープログラムに基づいて、当該PLCに接続されたデバイスを制御している。 The PLC stores a ladder program created in the program editor device in advance, and controls a device connected to the PLC based on the ladder program.
ここで、プログラムエディタ装置では、ラダープログラムを作成する際、ラダー図に配置するラダー記号に、当該ラダー記号に対応するデバイスのアドレスを直接入力したり、例えば、後述する特許文献1および2のように、デバイスとは、変数と対応付けておき、変数とアドレスとを対応付け、さらに、変数に名称を付すことによって、アドレスに代えて、変数名を使用したりしている。
Here, when creating a ladder program, the program editor device directly inputs the address of a device corresponding to the ladder symbol to the ladder symbol arranged in the ladder diagram, for example, as described in
また、後述する特許文献3のように、上記制御システムのHMI(Human Machine Interface )として使用されるグラフィック操作パネルの操作画面を作成する際にも、操作画面上に配置される部品に、その部品に対応するデバイスのアドレスまたは変数を対応付けることによって、操作画面を示す画面データを生成することが行われている。
しかしながら、上記従来の構成において、PLCやグラフィック操作パネルに接続されるデバイスと変数とを対応付ける場合と同様に、一時的にデータを格納するために機器内に確保される記憶領域に変数を対応付ける場合にも、変数を当該記憶領域のアドレスと対応付けようとすると、ラダープログラムや操作画面のエディタ装置を操作するユーザが、当該一時的なデータの格納場所として、記憶領域のいずれを確保するかを管理し、そのアドレスを設定する必要があり、手間がかかるという問題を生じる。 However, in the above conventional configuration, as in the case of associating a variable connected with a device connected to the PLC or graphic operation panel, the variable is associated with a storage area reserved in the device for temporarily storing data. In addition, if the variable is to be associated with the address of the storage area, the user operating the ladder program or the editor device of the operation screen determines which of the storage areas to secure as the temporary data storage location. There is a problem that it is necessary to manage and set the address, which takes time.
本発明は、上記の問題点に鑑みてなされたものであり、その目的は、例えば、グラフィック操作パネルやPLCなどのデータ処理装置、および、これらのグラフィック操作パネルやPLCなどが動作する際に参照する画面データやラダープログラムなどの指示データを生成する指示データ生成装置において、特定のアドレスには予め対応付けられていないデバイスの変数を生成する際の手間を削減することにある。 The present invention has been made in view of the above-mentioned problems, and the object thereof is, for example, a data processing device such as a graphic operation panel or a PLC, and a reference when the graphic operation panel or the PLC operates. In the instruction data generation apparatus that generates instruction data such as screen data and ladder programs to be performed, it is necessary to reduce the trouble of generating a variable of a device not previously associated with a specific address.
本発明に係る指示データ生成装置は、上記課題を解決するために、データ処理装置の動作を示す指示データを生成する生成手段を備えた指示データ生成装置において、上記データ処理装置は、上記指示データに含まれるアクセス対象情報の示すデバイスにアクセスして、当該デバイスの内容を、上記指示データに応じて変更するか、上記デバイスの内容を取得するかの少なくとも一方を行うアクセス手段と、デバイスを特定するアドレスを示すアドレス情報と当該デバイスに対応する変数を特定する識別子との対応関係を記憶するデータベースとを備え、当該アクセス手段は、アクセス対象となるデバイスが変数の識別子で特定された場合、上記データベースを参照して、当該変数の識別子に対応するアドレス情報を特定し、当該アドレス情報が示すアドレスへアクセスするものであり、上記指示データ生成装置は、変数として、特定のアドレスには予め対応付けられていないデバイスに対応する変数が生成された場合、上記データ処理装置の記憶装置に予め設けられた自動割付用の特定領域内の空き領域に、当該変数に対応するデバイス用の記憶領域を自動割付すると共に、当該変数の識別子と当該記憶領域のアドレスを示すアドレス情報との対応関係を上記データベースに記憶する自動割付手段を備え、上記生成手段は、当該自動割付された記憶領域に対応するデバイスをアクセス対象とする際には、当該記憶領域のアドレスを示すアドレス情報と、当該デバイスに対応する変数の識別子との一方を示すアクセス対象情報が含まれた指示データを生成して、上記アクセス手段に、当該自動割付された記憶領域にアクセスさせることを特徴としている。 In order to solve the above-described problem, the instruction data generation apparatus according to the present invention includes an instruction data generation apparatus that includes generation means for generating instruction data indicating an operation of the data processing apparatus, wherein the data processing apparatus includes the instruction data The access means for accessing the device indicated by the access target information included in the device and changing the content of the device according to the instruction data or acquiring the content of the device, and specifying the device A database for storing a correspondence relationship between address information indicating an address to be addressed and an identifier for identifying a variable corresponding to the device, and the access means includes the above when the device to be accessed is identified by the identifier of the variable The address information corresponding to the identifier of the variable is identified by referring to the database, and the address information When the variable corresponding to the device not previously associated with the specific address is generated as a variable, the instruction data generation device stores the address indicated by the data processing device in the storage device of the data processing device. A device storage area corresponding to the variable is automatically allocated to a free area in a predetermined automatic allocation specific area, and a correspondence relationship between the identifier of the variable and address information indicating the address of the storage area When the device corresponding to the automatically allocated storage area is to be accessed, the generation means stores address information indicating the address of the storage area, and the device To generate instruction data including access target information indicating one of the identifiers of the variables corresponding to the It is characterized in that to access the automatic assigning storage area.
上記構成では、指示データ生成装置の自動割付手段は、変数として、特定のアドレスには予め対応付けられていないデバイスに対応する変数が生成された場合、上記データ処理装置の記憶装置に予め設けられた自動割付用の特定領域内の空き領域に、当該変数に対応するデバイス用の記憶領域を自動割付すると共に、当該変数の識別子(例えば、変数名など)と当該記憶領域のアドレスを示すアドレス情報との対応関係を上記データベースに記憶する。 In the above configuration, the automatic allocation unit of the instruction data generation device is provided in advance in the storage device of the data processing device when a variable corresponding to a device not previously associated with a specific address is generated as a variable. Address information indicating the identifier of the variable (for example, variable name) and the address of the storage area, as well as automatically assigning the storage area for the device corresponding to the variable to the free area in the specific area for automatic allocation Is stored in the database.
また、指示データ生成装置の生成手段は、当該自動割付された記憶領域に対応するデバイスをアクセス対象とする際には、当該記憶領域のアドレスを示すアドレス情報と、当該デバイスに対応する変数の識別子との一方を示すアクセス対象情報が含まれた指示データを生成する。 In addition, when the generation unit of the instruction data generation device targets the device corresponding to the automatically allocated storage area as an access target, the address information indicating the address of the storage area and the identifier of the variable corresponding to the device Instruction data including access target information indicating one of the above is generated.
一方、データ処理装置のアクセス手段は、上記指示データに含まれるアクセス対象情報の示すデバイスにアクセスして、当該デバイスの内容を、上記指示データに応じて変更するか、上記デバイスの内容を取得するかしており、アクセス対象となるデバイスが変数の識別子で特定された場合、上記データベースを参照して、当該変数の識別子に対応するアドレス情報を特定し、当該アドレス情報が示すアドレスへアクセスする。 On the other hand, the access means of the data processing apparatus accesses the device indicated by the access target information included in the instruction data, and changes the contents of the device according to the instruction data or acquires the contents of the device However, when a device to be accessed is specified by a variable identifier, the address information corresponding to the variable identifier is specified by referring to the database, and the address indicated by the address information is accessed.
ここで、上記生成手段が、当該自動割付された記憶領域に対応するデバイスをアクセス対象とする際に、当該記憶領域のアドレスを示すアドレス情報を含む指示データを生成した場合、上記データ処理装置のアクセス手段は、上記指示データに含まれるアクセス対象情報の示すデバイスにアクセスする。 Here, when the generation unit generates instruction data including address information indicating the address of the storage area when the device corresponding to the automatically allocated storage area is an access target, The access means accesses the device indicated by the access target information included in the instruction data.
これとは逆に、上記指示データ生成装置の生成手段が、当該自動割付された記憶領域に対応するデバイスをアクセス対象とする際に、当該デバイスに対応する変数の識別子を示すアクセス対象情報が含まれた指示データを生成した場合、データ処理装置のアクセス手段は、上記データベースを参照して、当該変数の識別子に対応するアドレス情報を特定し、当該アドレス情報が示す自動割付された記憶領域へアクセスする。 On the contrary, when the generation unit of the instruction data generation device targets the device corresponding to the automatically allocated storage area as the access target, the access target information indicating the identifier of the variable corresponding to the device is included. When the designated instruction data is generated, the access means of the data processing device refers to the database, identifies the address information corresponding to the identifier of the variable, and accesses the automatically allocated storage area indicated by the address information To do.
上記構成では、変数として、特定のアドレスには予め対応付けられていないデバイスに対応する変数が生成された場合、上記データ処理装置の記憶装置に予め設けられた自動割付用の特定領域内の空き領域に、当該変数に対応するデバイス用の記憶領域が自動割付され、当該変数の識別子と当該記憶領域のアドレスを示すアドレス情報との対応関係が上記データベースに記憶され、当該自動割付された記憶領域に対応するデバイスをアクセス対象とする際には、当該記憶領域のアドレスを示すアドレス情報と、当該デバイスに対応する変数の識別子との一方を示すアクセス対象情報が含まれた指示データを生成して、データ処理装置に、当該自動割付された記憶領域にアクセスさせる。 In the above configuration, when a variable corresponding to a device not previously associated with a specific address is generated as a variable, an empty space in a specific area for automatic allocation provided in advance in the storage device of the data processing apparatus The storage area for the device corresponding to the variable is automatically allocated to the area, the correspondence between the identifier of the variable and the address information indicating the address of the storage area is stored in the database, and the automatically allocated storage area When the device corresponding to the access target is to be accessed, the instruction data including the access target information indicating one of the address information indicating the address of the storage area and the identifier of the variable corresponding to the device is generated. The data processing device is made to access the automatically allocated storage area.
この結果、特定のアドレスに予め対応付けられているデバイスの変数を生成する場合と同様の手順で特定のアドレスには予め対応付けられていないデバイスの変数を生成する構成とは異なって、当該変数に対応するアドレスを指定しなくても、データ処理装置に、当該自動割付された記憶領域にアクセスさせることができ、当該変数を生成する際の手間を削減できる。 As a result, unlike the configuration in which a variable of a device not previously associated with a specific address is generated in the same procedure as that for generating a variable of a device previously associated with a specific address, the variable Even if the address corresponding to is not specified, the data processing apparatus can be made to access the automatically allocated storage area, and the labor for generating the variable can be reduced.
さらに、データ処理装置は、変数の識別子でアクセス対象が指定された場合、データベースを参照して、当該変数の識別子に対応するアドレス情報を特定し、当該アドレス情報の示すアドレスにアクセスするので、アドレスでの指定だけではなく、変数の識別子も受け付けることができる。この結果、アクセス対象を指定しやすい指示データ生成装置およびデータ処理装置を実現できる。 Further, when the access target is specified by the variable identifier, the data processing apparatus refers to the database, identifies the address information corresponding to the variable identifier, and accesses the address indicated by the address information. In addition to specifying with, variable identifiers can also be accepted. As a result, an instruction data generation device and a data processing device that can easily specify an access target can be realized.
さらに、上記構成に加えて、上記自動割付手段は、上記自動割付される変数の型が予め定められた複数の型のうち、いずれの型であるかの入力を受け付け、自動割付される変数の各記憶領域が、それぞれの型毎に整列するように、各記憶領域を自動割付してもよい。 Further, in addition to the above-described configuration, the automatic allocation means accepts an input indicating which type of the variable to be automatically allocated is a predetermined type, and the variable to be automatically allocated. Each storage area may be automatically allocated so that each storage area is aligned for each type.
当該構成では、自動割付される変数の各記憶領域が、それぞれの型毎に整列するように、各記憶領域を自動割付されているので、例えば、各記憶領域が、それぞれの型に拘らず、生成された順に並べられている構成と比較して、記憶領域の使用効率、または、データ処理装置のアクセス手段が各記憶領域へアクセスする際の効率を向上できる。 In this configuration, since each storage area is automatically allocated so that each storage area of variables to be automatically allocated is aligned for each type, for example, each storage area is independent of each type, Compared with the configuration arranged in the order of generation, the use efficiency of the storage area or the efficiency when the access means of the data processing device accesses each storage area can be improved.
また、上記構成に加えて、上記生成手段は、特定のアドレスに予め対応付けられているデバイスをアクセス対象とする際には、アクセス対象情報として、当該デバイスのアドレスを設定する一方、自動割り付けられた記憶領域に対応するデバイスをアクセス対象とする際には、上記特定のアドレスに予め対応付けられているデバイスの場合と同じサイズの上記アクセス対象情報を、第1および第2領域に分割すると共に、上記第1領域には、当該デバイスに対応する変数の型用の記憶領域における、当該変数の記憶領域のオフセットを設定し、当該デバイスの記憶領域が複数のフィールドから構成されている場合には上記第2領域にアクセス対象とするフィールドを示す値に設定してもよい。 Further, in addition to the above configuration, when the generation unit sets a device associated in advance with a specific address as an access target, the generation unit sets an address of the device as access target information, and is automatically allocated. When the device corresponding to the storage area is the access target, the access target information having the same size as that of the device previously associated with the specific address is divided into the first and second areas. In the first area, the offset of the storage area of the variable in the storage area for the variable type corresponding to the device is set, and the storage area of the device is configured by a plurality of fields. You may set to the value which shows the field made into access object to the said 2nd area | region.
ここで、上述したように、自動割付される変数の各記憶領域が、それぞれの型毎に整列するように、各記憶領域を自動割付されているので、ある変数の型用の記憶領域における、当該変数の記憶領域のオフセットを記憶するために必要な記憶容量は、ある変数の型用の記憶領域のアドレスを記憶するために必要な記憶容量よりも少なくなる。したがって、特定のアドレスに予め対応付けられているデバイスをアクセス対象とする際に設定されるアクセス対象情報が、上記特定のアドレスに予め対応付けられているデバイスの場合と同じサイズであった場合に、当該アクセス対象情報を第1および第2領域に分割したとしても、何ら支障なく、上記オフセットを第1領域に記憶できる。 Here, as described above, since each storage area is automatically allocated so that each storage area of the automatically allocated variable is arranged for each type, in the storage area for a certain variable type, The storage capacity required to store the storage area offset of the variable is less than the storage capacity required to store the address of the storage area for a variable type. Therefore, when the access target information set when the device previously associated with the specific address is the access target is the same size as the device previously associated with the specific address Even if the access target information is divided into the first and second areas, the offset can be stored in the first area without any trouble.
さらに、あるデバイスの記憶領域が複数のフィールドから構成されている場合、当該デバイスをアクセス対象とする変数のアクセス対象情報の第2領域には、アクセス対象とするフィールドを示す値に設定される。したがって、1つのアクセス対象情報で、そのデバイスに対応する記憶領域とフィールドとを指定できるので、それぞれを個別に設定する場合よりも、アクセス手段が、自動割付された記憶領域にアクセスする際の効率を向上できる。 Furthermore, when the storage area of a certain device is composed of a plurality of fields, the value indicating the field to be accessed is set in the second area of the access target information of the variable to which the device is to be accessed. Accordingly, since the storage area and field corresponding to the device can be specified with one piece of access target information, the access means can access the automatically allocated storage area more efficiently than when setting each individually. Can be improved.
また、上記構成に加えて、制御プログラムの命令のオペランドとして、当該命令がアクセス対象とするデバイスに対応する変数を設定可能な制御プログラム編集手段と、操作画面上に配置される部品によって状態が表示されるデバイス、または、当該部品への操作に応じて状態を変更するデバイスに関連付けて、そのデバイスに対応する変数を設定する操作画面編集手段とを備え、上記特定のアドレスに予め対応付けられているデバイスを第1種デバイス、上記特定のアドレスには予め対応付けられていないデバイスを第2種デバイスとするとき、上記制御プログラム編集手段および操作画面編集手段は、未だ対応するデバイスが設定されていない変数を追加する際、当該変数が第1種デバイスに対応するものであるか第2種デバイスに対応するものであるかの初期設定が、互いに異なっていてもよい。
In addition to the above configuration, the status is displayed by the control program editing means capable of setting the variable corresponding to the device to be accessed by the instruction as an operand of the instruction of the control program, and the parts arranged on the operation screen. An operation screen editing means for setting a variable corresponding to the device in association with a device to be changed or a device whose state is changed in response to an operation on the component, and is associated with the specific address in advance. Device is a first type device, and a device not previously associated with the specific address is a second type device, the control program editing unit and the operation screen editing unit are still set to the corresponding device. When adding a variable that does not exist, the variable corresponds to the
ここで、上記制御プログラム編集手段および操作画面編集手段は、これまでの経緯や、主として通信する相手の相違などによって、未だ対応するデバイスが設定されていない変数を追加する際に、上記第1および第2種デバイスのいずれを初期設定とする方がよいかが互いに異なっていることが多い。 Here, when the control program editing unit and the operation screen editing unit add a variable for which a corresponding device has not yet been set due to the background up to now, mainly due to a difference in communication partner, etc., Which of the second type devices is better to be the initial setting is often different from each other.
したがって、上記制御プログラム編集手段および操作画面編集手段の初期設定が共通であれば、一方の編集手段では、設定の手間を低減できたとしても、他方の編集手段では、変数に第1または第2種デバイスの一方が初期設定された後、第1または第2種デバイスの他方に設定を変更する必要があり、手間がかかってしまう。 Therefore, if the initial settings of the control program editing unit and the operation screen editing unit are common, even if one editing unit can reduce the setting effort, the other editing unit uses the first or second variable as the variable. After one of the seed devices is initialized, it is necessary to change the setting to the other of the first or second seed device, which is troublesome.
これに対して、上記指示データ生成装置では、上記制御プログラム編集手段および操作画面編集手段において、第1および第2種デバイスのうち、それぞれに適した方を初期設定とすることができるので、未だ対応するデバイスが設定されていない変数を追加する際の手間を削減できる。 On the other hand, in the instruction data generation device, the control program editing unit and the operation screen editing unit can initialize one of the first and second type devices, which is suitable for each of the first and second type devices. It is possible to reduce the trouble of adding a variable for which the corresponding device is not set.
また、上記構成に加えて、上記制御プログラム編集手段および操作画面編集手段は、未だ対応するデバイスが設定されていない変数を追加する際に、その変数の名前として設定される文字列が、予め定められたパターンにマッチする場合は、上記それぞれの初期設定に拘らず、上記第1および第2種デバイスのうち、当該パターンに対応して予め定められた方を、当該変数に対応付けてもよい。なお、上記パターンとしては、特定の文字で始めるパターンなどが好適に使用される。 In addition to the above configuration, when the control program editing unit and the operation screen editing unit add a variable for which a corresponding device is not yet set, a character string set as the name of the variable is determined in advance. When the pattern matches, the predetermined one of the first and second type devices corresponding to the pattern may be associated with the variable regardless of the respective initial settings. . As the pattern, a pattern starting with a specific character is preferably used.
上記構成では、その変数の名前として設定される文字列が、予め定められたパターンにマッチする場合は、上記それぞれの初期設定に拘らず、上記第1および第2種デバイスのうち、当該パターンに対応して予め定められた方を、当該変数に対応付ける。したがって、例えば、アドレスとしての数値を入力する場合、あるいは、変数名として、第1または第2種デバイスに特有の名前を設定する場合など、特定のパターンにマッチする場合には、第1および第2種デバイスのうち、初期設定とは異なる方を設定できる。この結果、未だ対応するデバイスが設定されていない変数を追加する際の手間を削減できる。 In the above configuration, when the character string set as the name of the variable matches a predetermined pattern, the pattern of the first and second type devices is included in the pattern regardless of the initial setting. Corresponding predetermined one is associated with the variable. Therefore, for example, when a numerical value as an address is input, or when a name specific to the first or second type device is set as a variable name, the first and second patterns are matched. Of the two types of devices, the one different from the initial setting can be set. As a result, it is possible to reduce the trouble of adding a variable for which a corresponding device is not yet set.
一方、本発明に係るデータ処理装置は、上記記載のいずれかの指示データ生成装置で生成された指示データに基づいて動作するデータ処理装置であって、上記指示データに含まれるアクセス対象情報の示すデバイスにアクセスして、当該デバイスの内容を、上記指示データに応じて変更するか、上記デバイスの内容を取得するかの少なくとも一方を行うアクセス手段と、デバイスを特定するアドレスを示すアドレス情報と当該デバイスに対応する変数を特定する識別子との対応関係を記憶するデータベースとを備えていることを特徴としている。 On the other hand, the data processing device according to the present invention is a data processing device that operates based on the instruction data generated by any one of the instruction data generation devices described above, and indicates the access target information included in the instruction data. Access means for accessing the device and changing the content of the device in accordance with the instruction data or acquiring the content of the device; address information indicating an address for identifying the device; And a database for storing a correspondence relationship with an identifier for specifying a variable corresponding to the device.
当該構成でも、変数として、特定のアドレスには予め対応付けられていないデバイスに対応する変数が生成された場合、上記データ処理装置の記憶装置に予め設けられた自動割付用の特定領域内の空き領域に、当該変数に対応するデバイス用の記憶領域が自動割付され、当該変数の識別子と当該記憶領域のアドレスを示すアドレス情報との対応関係が上記データベースに記憶され、当該自動割付された記憶領域に対応するデバイスをアクセス対象とする際には、当該記憶領域のアドレスを示すアドレス情報と、当該デバイスに対応する変数の識別子との一方を示すアクセス対象情報が含まれた指示データを生成する。一方、データ処理装置は、当該指示データに基づいて、自動割付された記憶領域にアクセスする。 Even in this configuration, when a variable corresponding to a device not previously associated with a specific address is generated as a variable, an empty space in a specific area for automatic allocation provided in advance in the storage device of the data processing apparatus The storage area for the device corresponding to the variable is automatically allocated to the area, the correspondence between the identifier of the variable and the address information indicating the address of the storage area is stored in the database, and the automatically allocated storage area When the device corresponding to the device is to be accessed, the instruction data including the access target information indicating one of the address information indicating the address of the storage area and the identifier of the variable corresponding to the device is generated. On the other hand, the data processing apparatus accesses the automatically allocated storage area based on the instruction data.
この結果、特定のアドレスに予め対応付けられているデバイスの変数を生成する場合と同様の手順で特定のアドレスには予め対応付けられていないデバイスの変数を生成する構成とは異なって、当該変数に対応するアドレスを指定しなくても、データ処理装置に、当該自動割付された記憶領域にアクセスさせることができ、当該変数を生成する際の手間を削減できる。 As a result, unlike the configuration in which a variable of a device not previously associated with a specific address is generated in the same procedure as that for generating a variable of a device previously associated with a specific address, the variable Even if the address corresponding to is not specified, the data processing apparatus can be made to access the automatically allocated storage area, and the labor for generating the variable can be reduced.
さらに、データ処理装置は、変数の識別子でアクセス対象が指定された場合、データベースを参照して、当該変数の識別子に対応するアドレス情報を特定し、当該アドレス情報の示すアドレスにアクセスするので、アドレスでの指定だけではなく、変数の識別子も受け付けることができる。この結果、アクセス対象を指定しやすい指示データ生成装置およびデータ処理装置を実現できる。 Further, when the access target is specified by the variable identifier, the data processing apparatus refers to the database, identifies the address information corresponding to the variable identifier, and accesses the address indicated by the address information. In addition to specifying with, variable identifiers can also be accepted. As a result, an instruction data generation device and a data processing device that can easily specify an access target can be realized.
ところで、上記指示データ生成装置およびデータ処理装置は、ハードウェアで実現してもよいし、プログラムをコンピュータに実行させることによって実現してもよい。具体的には、本発明に係るプログラムは、上記記載のいずれかの指示データ生成装置の各手段としてコンピュータを動作させることによって、当該コンピュータを上記指示データ生成装置として動作させるプログラム、あるいは、上記データ処理装置の各手段としてコンピュータを動作させることによって、当該コンピュータを上記データ処理装置として動作させるプログラムである。また、本発明に係る記録媒体には、これらのプログラムの少なくともいずれかが記録されている。 By the way, the instruction data generation device and the data processing device may be realized by hardware, or may be realized by causing a computer to execute a program. Specifically, the program according to the present invention is a program that causes a computer to operate as the instruction data generation device by operating the computer as each unit of the instruction data generation device described above, or the data A program that causes a computer to operate as the data processing device by operating the computer as each means of the processing device. In addition, at least one of these programs is recorded on the recording medium according to the present invention.
例えば、上記記録媒体をコンピュータが読み取るなどして、これらのプログラムがコンピュータによって実行されると、当該コンピュータは、上記指示データ生成装置またはデータ処理装置として動作する。したがって、上記と同様に、当該変数を生成する際の手間を削減でき、アクセス対象を指定しやすい指示データ生成装置またはデータ処理装置を実現できる。 For example, when the computer reads the recording medium and the programs are executed by the computer, the computer operates as the instruction data generation device or the data processing device. Therefore, similarly to the above, it is possible to reduce the time for generating the variable and to realize an instruction data generation device or a data processing device that can easily specify an access target.
本発明によれば、変数として、特定のアドレスには予め対応付けられていないデバイスに対応する変数が生成された場合、上記データ処理装置の記憶装置に予め設けられた自動割付用の特定領域内の空き領域に、当該変数に対応するデバイス用の記憶領域が自動割付され、当該変数の識別子と当該記憶領域のアドレスを示すアドレス情報との対応関係が上記データベースに記憶され、当該自動割付された記憶領域に対応するデバイスをアクセス対象とする際には、当該記憶領域のアドレスを示すアドレス情報と、当該デバイスに対応する変数の識別子との一方を示すアクセス対象情報が含まれた指示データを生成する。一方、データ処理装置は、当該指示データに基づいて、自動割付された記憶領域にアクセスする。 According to the present invention, when a variable corresponding to a device that is not previously associated with a specific address is generated as a variable, within a specific area for automatic allocation provided in advance in the storage device of the data processing apparatus The storage area for the device corresponding to the variable is automatically allocated to the free area, and the correspondence between the identifier of the variable and the address information indicating the address of the storage area is stored in the database, and the automatic allocation is performed. When a device corresponding to a storage area is to be accessed, instruction data including access target information indicating one of address information indicating the address of the storage area and a variable identifier corresponding to the device is generated. To do. On the other hand, the data processing apparatus accesses the automatically allocated storage area based on the instruction data.
この結果、特定のアドレスに予め対応付けられているデバイスの変数を生成する場合と同様の手順で特定のアドレスには予め対応付けられていないデバイスの変数を生成する構成とは異なって、当該変数に対応するアドレスを指定しなくても、データ処理装置に、当該自動割付された記憶領域にアクセスさせることができ、当該変数を生成する際の手間を削減できる。 As a result, unlike the configuration in which a variable of a device not previously associated with a specific address is generated in the same procedure as that for generating a variable of a device previously associated with a specific address, the variable Even if the address corresponding to is not specified, the data processing apparatus can be made to access the automatically allocated storage area, and the labor for generating the variable can be reduced.
さらに、データ処理装置は、変数の識別子でアクセス対象が指定された場合、データベースを参照して、当該変数の識別子に対応するアドレス情報を特定し、当該アドレス情報の示すアドレスにアクセスするので、アドレスでの指定だけではなく、変数の識別子も受け付けることができる。この結果、アクセス対象を指定しやすい指示データ生成装置およびデータ処理装置を実現できる。 Further, when the access target is specified by the variable identifier, the data processing apparatus refers to the database, identifies the address information corresponding to the variable identifier, and accesses the address indicated by the address information. In addition to specifying with, variable identifiers can also be accepted. As a result, an instruction data generation device and a data processing device that can easily specify an access target can be realized.
本発明の一実施形態について図1ないし図16に基づいて説明すると以下の通りである。すなわち、図2に示すように、本実施形態に係る制御システム1は、例えば、製造プラントなどに設けられたターゲットシステム2を制御するために好適に用いられており、例えば、ベルトコンベアー式の自動組付機など、当該ターゲットシステム2のデバイス(制御対象)2aを制御するために用いられている。
An embodiment of the present invention will be described below with reference to FIGS. That is, as shown in FIG. 2, the
当該制御システム1には、上記デバイス2aを制御する制御装置としてのPLC11と、多くの場合、制御対象近傍に配されると共に、制御システム1のHMIとして、デバイス2aの状態を表示し、オペレータによるデバイス2aへの操作を受け付けるグラフィック操作パネル(データ処理装置)12とを備えている。また、本実施形態に係るグラフィック操作パネル12は、詳細は後述するように、PLCとしての機能も備えており、それぞれに対応するPLC11だけではなく、自らが制御するデバイス2aにも直接接続されている。
The
さらに、本実施形態に係る制御システム1では、各グラフィック操作パネル12は、イーサネット(登録商標)などのLAN(ローカルエリアネットワーク)13によって互いに接続されている。また、上記LAN13には、多くの場合、グラフィック操作パネル12よりも離れた場所から、制御システム1全体を管理する制御用ホストコンピュータ14が接続されている。
Furthermore, in the
なお、上記各グラフィック操作パネル12は、シリアルケーブルなどの通信経路を介して、それぞれに対応するPLC11と接続されている。また、図2では、説明の便宜上、LAN13にグラフィック操作パネル12が2台接続され、各グラフィック操作パネル12には、PLC11およびデバイス2aがそれぞれ1台ずつ接続されると共に、各PLC11にデバイス2aが1台接続されている場合を例示しているが、当然ながら、それぞれの接続台数は任意に設定できる。
Each graphic operation panel 12 is connected to the corresponding PLC 11 via a communication path such as a serial cable. In FIG. 2, for convenience of explanation, two graphic operation panels 12 are connected to the LAN 13, and one PLC 11 and one
また、デバイスは、デバイスアドレスや後述する変数により特定可能で、しかも、状態を取得したり、制御(変更)できるものであれば、例えば、デバイス2a自体であってもよいし、例えば、PLC11やグラフィック操作パネル12の記憶装置など、制御システム1に設けられた記憶装置の一領域を示していてもよい。
Further, the device may be the
ここで、上記制御システム1では、制御システム1に必須の構成であり、しかも、HMIとして動作するため、演算能力に余力のあるグラフィック操作パネル12が通信の大半を処理するように構成されている。さらに、各グラフィック操作パネル12は、自らに接続されているPLC11の機種に固有の専用プロトコルと、LAN13での共通プロトコルとを変換して、他のグラフィック操作パネル12や制御用ホストコンピュータ14と、PLC11との通信を中継する。なお、共通プロトコルと専用プロトコルとの間のプロトコル変換には、同じ指示に同じコードが割り当てられるように予め定められた共通のコマンドと上記共通のコマンドに対応するPLC11固有のコマンドとの間の変換や、データやアドレスの表現方法の変換、デバイスアドレスと、当該デバイスアドレスに対応し、しかも、デバイスアドレスとは異なる値に設定可能な変数や変数の名称(変数名)との変換なども含まれる。
Here, the
これにより、グラフィック操作パネル12および制御用ホストコンピュータ14は、他のグラフィック操作パネル12に接続されているPLC11の機種に拘らず、LAN13を介して共通のプロトコルで通信できる。この結果、互いに異なる機種のPLC11の混在する制御システム1が比較的容易に実現されている。
As a result, the graphic operation panel 12 and the control host computer 14 can communicate with each other via the LAN 13 using a common protocol regardless of the model of the PLC 11 connected to the other graphic operation panel 12. As a result, the
上記グラフィック操作パネル12は、後述する画面データに基づいて、デバイスの状態を画面表示する際の動作や、画面への操作に応じてデバイスの状態を制御する際の動作を特定するものであって、PLC11と通信するPLC・IF部21と、上記LAN13に接続するためのLAN・IF部22と、例えば、液晶表示装置などからなるディスプレイ23と、ディスプレイ23の画面上に配されたタッチパネル24と、上記各部材21〜24を制御するHMI処理部25と、当該HMI処理部25によって参照され、上記画面データおよび変数が格納される記憶部26とを備えている。
The graphic operation panel 12 specifies an operation for displaying the device state on the screen and an operation for controlling the device state according to the operation on the screen based on screen data described later. The PLC /
本実施形態に係る画面データは、画面を表示し、操作を受け付ける際の動作を特定するデータであって、例えば、解像度などの点で互いに異なるディスプレイ23を有するグラフィック操作パネル12間、あるいは、制御用ホストコンピュータ14であっても当該画面データを共用できるように、抽象化されたオブジェクトデータ(手続きおよびデータ)として表現されている。一方、HMI処理部25は、当該画面データを、自機器に応じた機械語に翻訳して実行することで画面表示や操作受付などの動作を実行する。なお、オブジェクトの内部変数やデバイス2aの状態を記憶する領域、あるいは、作業領域など、HMI処理部25が画面データを実行する際に必要な記憶領域は、上記記憶部26に確保される。
The screen data according to the present embodiment is data for specifying an operation when a screen is displayed and an operation is received. For example, between the graphic operation panels 12 having different displays 23 in terms of resolution or the like, or control The host computer 14 is expressed as abstracted object data (procedure and data) so that the screen data can be shared. On the other hand, the HMI processing unit 25 executes operations such as screen display and operation reception by translating and executing the screen data into a machine language corresponding to the device itself. Note that a storage area required when the HMI processing unit 25 executes the screen data, such as an area for storing the internal variables of the object and the state of the
より詳細には、本実施形態に係る画面データは、HMI処理部25がオブジェクトを生成するためのデータであって、ディスプレイ23の画面に表示可能な部品(図形要素)に対応するオブジェクトの集合としてのパネルオブジェクトを生成するためのデータを含んでいる。 More specifically, the screen data according to the present embodiment is data for generating an object by the HMI processing unit 25 and is a set of objects corresponding to parts (graphic elements) that can be displayed on the screen of the display 23. Contains data for creating a panel object.
また、本実施形態に係る画面データでは、オブジェクトがアドレスによって直接デバイスと関連付けられているのではなく、デバイスを特定する情報(アドレスなど)に対応する変数を介してデバイスと対応付けられている。本実施形態では、オブジェクトは、属性によって変数と対応付けられており、上記各オブジェクトのうち、デバイスに関連するオブジェクトは、それぞれに対応付けられた変数を示すデバイス属性ADを有しており、当該属性ADによって、上記変数のいずれかに対応付けできる。 In the screen data according to the present embodiment, an object is not directly associated with a device by an address, but is associated with a device via a variable corresponding to information (address or the like) specifying the device. In the present embodiment, an object is associated with a variable by an attribute, and among the above objects, an object related to a device has a device attribute AD indicating a variable associated with the object, and the object The attribute AD can be associated with any of the above variables.
一方、デバイスに対応付けられた変数には、属性として、デバイスの状態を示す内容と、デバイスアドレスなど、デバイスを特定するための情報とが設けられている。また、上記パネルオブジェクトを生成するためのデータには、デバイスに対応付け可能な変数のうち、上記各オブジェクトのいずれかから参照されている変数のリストが含まれている。 On the other hand, the variable associated with the device includes, as attributes, contents indicating the state of the device and information for specifying the device such as a device address. In addition, the data for generating the panel object includes a list of variables that are referred to by any of the objects among variables that can be associated with the device.
また、上記各オブジェクトは、画面上の領域と対応付けることができる。本実施形態では、当該対応付けも、オブジェクトの属性によって行われており、上記各オブジェクトのうち、例えば、画面上の一領域にデバイスの状態を表示するオブジェクトや、画面上の一領域への操作を受け付けるオブジェクトには、当該領域を示す領域属性AAが付加されている。これにより、オブジェクトは、当該領域属性AAの値を参照すれば、自らがデバイスの状態を表示すべき画面上の領域を特定したり、操作を受け付けるべき画面上の領域をHMI処理部25へ伝えたりすることができる。 Each object can be associated with an area on the screen. In the present embodiment, the association is also performed according to the attribute of the object. Among the above objects, for example, an object that displays a device state in one area on the screen or an operation on one area on the screen A region attribute AA indicating the region is added to the object that accepts. As a result, if the object refers to the value of the area attribute AA, the object identifies the area on the screen where the device state should be displayed, or informs the HMI processing unit 25 of the area where the operation should be accepted. Can be.
さらに、各オブジェクトは、自らの属性を参照しながら、メッセージに応じて、あるいは、予め定められたタイミングで、例えば、他のオブジェクトとのやり取りや、他の部材21〜24・26とのやり取りなど、予め定められた処理を行うことができる。なお、当該処理としては、例えば、変数の内容取得や、変数の内容変更、ディスプレイ23への表示などが挙げられる。
Further, each object refers to its own attribute, responds to a message or at a predetermined timing, for example, exchanges with other objects, exchanges with
例えば、デバイスの状態を表示するオブジェクトは、例えば、デバイスの状態表示を示すメッセージを受け取った時点や、予め定められたタイミング(例えば、予め定められた時間が経過した時点など)になると、上記デバイス属性ADの値に基づいて、自らに対応付けられた変数の内容を取得すると共に、上記領域属性AAの値に基づいて、自らがデバイスの状態を表示すべき、画面上の領域を特定する。さらに、オブジェクトは、予め定められた手順に従って、変数の内容、すなわち、デバイスの状態に応じて、上記領域における図形表示を変更できる。 For example, the object that displays the device status is, for example, when the message indicating the device status display is received or at a predetermined timing (for example, when a predetermined time elapses), Based on the value of the attribute AD, the content of the variable associated with itself is acquired, and based on the value of the area attribute AA, the area on the screen where the device state should be displayed is specified. Furthermore, the object can change the graphic display in the area according to the contents of the variable, that is, the state of the device, according to a predetermined procedure.
一例として、あるオブジェクトが、線や円などの線画を示す基本図形を組み合わせて、部品を表示している場合、当該オブジェクトは、デバイスの状態に応じて、基本図形の色や大きさ、組み合わせられる各基本図形の相対位置などを変更して、部品の表示を変更できる。また、オブジェクトが、部品として、画像ファイルを表示している場合、当該オブジェクトは、デバイスの状態に応じて、参照する画像ファイルを変更して、部品の表示を変更できる。なお、画像ファイルを表示する際の色や大きさを変更し、表示を変更してもよい。 As an example, when an object displays a part by combining basic figures that show line drawings such as lines and circles, the object can be combined with the color and size of the basic figure according to the state of the device. The display of parts can be changed by changing the relative position of each basic figure. Further, when an object displays an image file as a part, the object can change the display of the part by changing the image file to be referred to according to the state of the device. Note that the display may be changed by changing the color or size when the image file is displayed.
また、オペレータがタッチパネル24によって画面上の部品を操作した場合、HMI処理部25は、画面データに基づいて、あるいは、オブジェクトからの応答に基づいて、操作対象となるオブジェクトを特定し、当該オブジェクトに、操作内容に応じたメッセージを送信できる。一方、上記各オブジェクトのうち、操作を受け付け可能なオブジェクトは、例えば、画面へのタッチなどによる、オブジェクトへの操作受け付けを示すメッセージを受け取ると、メッセージの示す操作に応じて、自らに対応付けられた変数の内容を変更できる。
When the operator operates a part on the screen using the
さらに、上記HMI処理部25は、変数の内容と、それに対応するデバイスの状態とが一致するように、変数の内容と、それに対応するデバイスの状態との少なくとも一方を更新できる。具体的には、HMI処理部25は、例えば、予め定められた周期など、予め定められたタイミングで、上記リストに含まれた各変数に対応するデバイスの状態を取得し、当該状態に応じて、それに対応する変数の内容を更新できる。また、HMI処理部25は、例えば、予め定められた周期など、予め定められたタイミングで、変数の内容に応じて、変数に対応するデバイスの状態を変更できる。 Further, the HMI processing unit 25 can update at least one of the variable contents and the corresponding device state so that the variable contents match the corresponding device state. Specifically, the HMI processing unit 25 acquires the device states corresponding to the variables included in the list at a predetermined timing such as a predetermined cycle, and according to the state , The contents of the corresponding variable can be updated. Further, the HMI processing unit 25 can change the state of the device corresponding to the variable according to the content of the variable at a predetermined timing such as a predetermined cycle, for example.
より詳細には、HMI処理部25は、変数の属性のうち、デバイスを特定するための属性の値に基づいて、デバイスへの通信経路を特定する。通信路が特定されると、必要に応じて、両IF部21・22へ指示して、自機器に接続されているPLC11や、他のグラフィック操作パネル12と通信し、デバイス2aの状態を取得する。また、HMI処理部25は、取得したデバイス2aの状態を、変数の内容として、記憶部26に格納できる。
More specifically, the HMI processing unit 25 identifies the communication path to the device based on the attribute value for identifying the device among the variable attributes. When the communication path is specified, if necessary, the
一方、変数の内容に応じてデバイス2aの状態を変更する場合には、HMI処理部25は、変数の属性のうち、デバイスを特定するための属性の値から、デバイス2aへの通信路を特定すると共に、デバイスへ送信すべき制御指示を特定する。さらに、通信経路および制御指示が特定されると、必要に応じて、両IF部21・22へ指示して、自機器に接続されているPLC11や、他のグラフィック操作パネル12と通信し、デバイス2aの状態制御指示を送信できる。
On the other hand, when the state of the
なお、デバイスがグラフィック操作パネル12内の記憶領域に対応している場合など、状態取得に通信が不要な場合、HMI処理部25は、通信不要と判断する。この場合、HMI処理部25は、通信せずにデバイスの状態を取得したり、デバイスの状態を制御したりする。 Note that the HMI processing unit 25 determines that communication is not required when communication is not necessary for status acquisition, such as when the device corresponds to a storage area in the graphic operation panel 12. In this case, the HMI processing unit 25 acquires the state of the device without controlling or controls the state of the device.
これにより、グラフィック操作パネル12は、図3に示すように、画面データの示すデバイスの状態を、画面データの示すように、ディスプレイ23の画面(操作画面)上に表示すると共に、画面データに基づいて、当該操作画面への操作を受け付け、当該操作に応じてデバイスの状態を変更できる。 As a result, the graphic operation panel 12 displays the device state indicated by the screen data on the screen (operation screen) of the display 23 as indicated by the screen data, as shown in FIG. 3, and based on the screen data. Thus, it is possible to accept an operation on the operation screen and change the state of the device according to the operation.
さらに、本実施形態に係るグラフィック操作パネル12は、PLCとしても動作するために、デバイス2aに接続するためのIO・IF部31と、上記記憶部26に格納されたラダープログラムに基づいて、IO・IF部31に接続されたデバイス2aを制御するデバイス制御部32とを備えている。
Furthermore, since the graphic operation panel 12 according to the present embodiment also operates as a PLC, the IO / IF unit 31 for connecting to the
本実施形態に係るデバイス制御部32も、HMI処理部25と同様、デバイス2aの状態を記憶部26にキャッシュしており、ラダープログラムを実行する際、その都度デバイス2aへアクセスする代わりに、記憶部26へアクセスしている。また、本実施形態に係るデバイス制御部32は、制御対象を変数で特定できるように構成されている。
Similarly to the HMI processing unit 25, the device control unit 32 according to the present embodiment also caches the state of the
より詳細には、デバイス制御部32は、例えば、数十msなど、予め定められた長さの走査期間(スキャンタイム)毎に、各デバイス2aの状態を読み出し、各デバイス2aに対応する変数の内容として、記憶部26の変数領域に格納できる。
More specifically, for example, the device control unit 32 reads the state of each
さらに、デバイス制御部32は、記憶部26の変数領域に格納された各変数の内容を参照しながら、記憶部26に格納されたラダープログラムが示す各命令を順次実行できる。当該ラダープログラムは、図4に示すように、ラダー図として記述したり、図5に示すように、ニモニックで示された命令のシーケンスとしても記述したりできる。なお、図4および図5は、ラダー図として図示するか、あるいは、ニモニックで図示するかという表現方法は、互いに異なっているが、内容(手順)としては、互いに同じラダープログラムを示している。
Furthermore, the device control unit 32 can sequentially execute each command indicated by the ladder program stored in the
本実施形態に係るラダープログラムでは、図5に、そのニモニック表記として示すように、各命令において、命令語Cα…で示される動作の対象(オペランド)を、変数で指定可能であり、命令が変数で示されたオペランドを含んでいる場合、デバイス制御部32は、当該命令を実行する際、オペランドとして指定された変数の内容を参照したり、オペランドとして指定された変数の内容を更新したりできる。また、各命令では、オペランドとして、変数以外の値(定数、あるいは、アドレスなど)を指定することもでき、デバイス制御部32は、当該命令を実行する際、当該値を参照したり、当該値で示されるアドレスの内容を参照したり、更新したりできる。なお、デバイス制御部32が実行可能な命令セットには、オペランドを含まない命令が含まれていてもよい。 In the ladder program according to the present embodiment, as shown in FIG. 5 as its mnemonic notation, in each instruction, an operation target (operand) indicated by the instruction word Cα can be specified by a variable, and the instruction is a variable. When the device control unit 32 executes the instruction, the device control unit 32 can refer to the content of the variable designated as the operand or update the content of the variable designated as the operand. . In each instruction, a value other than a variable (a constant or an address) can be specified as an operand, and the device control unit 32 refers to the value or executes the value when executing the instruction. The contents of the address indicated by can be referenced or updated. The instruction set that can be executed by the device control unit 32 may include an instruction that does not include an operand.
さらに、上記順次実行される命令の1つとして、エンド命令が実行されると、デバイス制御部32は、ラダープログラムの実行を終了し、記憶部26の変数領域に格納された各変数のうち、IO・IF部31に接続されたデバイス2aに対応する変数の内容を各デバイス2aに書き込む。これにより、デバイス制御部32は、PLCと同様に、ユーザが作成したラダープログラムに従い、デバイス2aの状態に応じて各デバイス2aを制御できる。
Furthermore, when an end instruction is executed as one of the sequentially executed instructions, the device control unit 32 ends the execution of the ladder program, and among the variables stored in the variable area of the
ここで、本実施形態に係るグラフィック操作パネル12では、上記HMI処理部25およびデバイス制御部32は、図1に示すように、アプリケーション層41と制御層42とサービス層(アクセス手段)43とに分けて実装されている。
Here, in the graphic operation panel 12 according to the present embodiment, the HMI processing unit 25 and the device control unit 32 are connected to the application layer 41, the
すなわち、アプリケーション層41には、HMI処理部25およびデバイス制御部32に、それぞれ対応して、HMIアプリケーション41aおよび制御アプリケーション41bが設けられている。これらのアプリケーション41a・41bは、上述したHMI処理部25およびデバイス制御部32の動作のうち、デバイス2aの状態を取得する動作およびデバイス2aの状態を更新する動作以外の処理を行うものであって、デバイス2aの状態を取得したり更新したりする際には、制御層42を介して、サービス層43へ指示することによって、デバイス2aの状態を取得させたり更新させたりしている。
That is, the application layer 41 is provided with an HMI application 41a and a control application 41b corresponding to the HMI processing unit 25 and the device control unit 32, respectively. These applications 41a and 41b perform processing other than the operation of acquiring the state of the
一方、上記サービス層43は、制御層42を介したアプリケーション層41からのアクセス要求に応えて、要求されたデバイス2aの状態を返したり、要求されたデバイス2aの状態を、要求された値に変更したりすることができる。
On the other hand, in response to an access request from the application layer 41 via the
本実施形態に係るグラフィック操作パネル12は、上述したように、デバイス2aの状態を記憶部26にキャッシュしているので、上記サービス層43として、PLC11またはIO・IF部31を介して、デバイス2aと通信して、デバイス2aの状態を取得したり、デバイス2aの状態を更新したりするための通信サービス43aと、記憶部26内に設けられた実デバイス領域A1にアクセスして、実デバイス領域A1にキャッシュされているデバイス2aの状態を取得したり、更新したりするための実デバイス領域サービス43bとが設けられている。なお、自動割付領域サービス43cについては後述する。
Since the graphic operation panel 12 according to the present embodiment caches the state of the
一方、上記両層41・43の間に設けられた制御層42は、上記アプリケーション層41(より詳細には、アプリケーション層41内の各アプリケーション41a、41b)からの指示に基づいて、上記サービス層43内の各サービスのいずれに、アプリケーション層41からの指示を与えるかを制御している。また、制御層42は、アプリケーション層41からの指示において、アクセス対象が変数の識別子(例えば、変数名あるいは変数IDなど)によって特定されていた場合、当該変数の識別子を実アドレスにアドレス変換し、実アドレスでアクセス対象が指定された指示を、サービス層43へ与えることができる。
On the other hand, the
より詳細には、アプリケーション層41は、図6に示すデータ構造の指示T1を制御層42へ与えている。当該指示T1には、指示の種類を示すフィールドF11と、アクセスする領域を示す情報(アクセス領域情報)のフィールドF12と、アクセス先となるサービスを示すフィールドF13とが含まれている。 More specifically, the application layer 41 gives an instruction T1 of the data structure shown in FIG. The instruction T1 includes a field F11 indicating the type of instruction, a field F12 indicating information to be accessed (access area information), and a field F13 indicating a service to be accessed.
上記種類は、制御層42でのアドレス変換が必要か否かを示すものであって、図7に示すように、上記指示T1が実アドレスでアクセス対象を特定する指示T1αである場合、当該指示T1αのフィールドF11には、変換不要を示す値(図の例では、”直接”)が格納される。なお、この場合、フィールドF12には、実アドレス(図7の例では、”D0000”)が格納され、制御層42は、フィールドF12の内容を、フィールドF13の示すサービス(図7の例では、実デバイス領域サービス43b)へ転送する。なお、制御層42は、図8に示すように、上記指示T1αから、フィールドF11およびF13を取り除いた後の指示T2α、すなわち、実アドレスのフィールドF21を含む指示T2αを、サービス層43へ与えている。
The type indicates whether or not address translation in the
これとは逆に、上記指示T1が変数の識別子でアクセス対象を特定する指示T1βである場合、図9に示すように、当該指示T1βのフィールドF11には、変換要を示す値(図9の例では”間接”)が格納される。なお、この場合、フィールドF12には、変数の識別子(図9の例では、変数名”内部レジスタ”に対応するID”5”)が格納され、制御層42は、フィールドF12の内容を実アドレスに変換した後、図10に示すように、変換後の指示T2βを、フィールドF13の示すサービス(図9の例では、実デバイス領域サービス43b)へ転送する。
On the other hand, when the instruction T1 is an instruction T1β that specifies an access target with a variable identifier, as shown in FIG. 9, the field F11 of the instruction T1β has a value indicating conversion necessity (FIG. 9). In the example, “indirect”) is stored. In this case, the variable identifier (ID “5” corresponding to the variable name “internal register” in the example of FIG. 9) is stored in the field F12, and the
より詳細には、本実施形態に係るグラフィック操作パネル12には、データベース44が設けられており、上記制御層42は、実アドレスへの変換の際に、当該データベース44を参照している。
More specifically, the graphic operation panel 12 according to the present embodiment is provided with a
上記データベース44には、各変数のID(変数ID)に関連付けて、その変数に対応する実アドレスが記憶されており、制御層42は、変数IDでアクセス対象が指定された指示を受け取った場合、データベース44から当該IDに対応する実アドレスを読み出すことによって、変数IDを実アドレスに変換できる。
In the
また、上記データベース44には、各変数のIDに関連付けて、その変数の名称(変数名)を記憶することもでき、制御層42は、変数名でアクセス対象が指定された指示を受け取った場合、データベース44から当該変数名に対応する実アドレスを読み出すことによって、変数名を実アドレスに変換できる。
The
一例として、本実施形態に係るデータベース44では、図11に示すように、各変数毎にレコードが設けられており、各レコードには、その変数を示す変数IDのフィールドF41と、その変数に対応するアドレスのフィールドF42と、その変数の変数名のフィールドF43と、その変数の型(後述)を示すフィールドF44とが設けられており、変数に名前が付されている場合、その変数に対応するレコードの上記フィールドF43には、その変数の名前を示す情報が格納される。
As an example, in the
また、本実施形態に係るグラフィック操作パネル12では、変数名が付されず、実アドレスのみで参照されるデバイスも、変数として扱われており、データベース44には、当該デバイスに対応する変数のレコードも設けられている。なお、変数名が付されていない場合、その変数のレコードのフィールドF43は空に設定される。
Further, in the graphic operation panel 12 according to the present embodiment, a device that is not assigned a variable name and that is referred to only by a real address is also handled as a variable, and the
さらに、本実施形態に係るデータベース44の各レコードには、上記各フィールドF41〜F44に加えて、その変数の値を保持するか否かを示すフィールドF45、および、その変数のコメントのフィールドF46が設けられている。また、上記各レコードには、その変数が配列型か否かと、配列型の場合は、配列の要素数とを格納するフィールドF47も設けられている。
Furthermore, in addition to the fields F41 to F44, each record of the
例えば、図9の例では、アプリケーション層41からの指示T1βにおいて、アクセス対象が、変数ID”5”で特定されている。したがって、上記制御層42は、データベース44から、当該変数IDに対応する実アドレス(図11の例では、”LS0000”)を読み出し、図9に示すように、実アドレスのフィールドF21を含む指示T2βを生成する。
For example, in the example of FIG. 9, in the instruction T1β from the application layer 41, the access target is specified by the variable ID “5”. Therefore, the
一方、制御層42への指示T1が、実アドレスでアクセス対象を特定する指示T1αであるか、変数の識別子でアクセス対象を特定する指示T1βであるかに拘らず、実アドレスのフィールドF21を含む指示T2(T2αまたはT2β)が制御層42からサービス層43へ与えられると、サービス層43は、指示T2αのフィールドF21の示すアクセス対象の内容を返したり、更新したりできる。なお、内容を変更する指示の場合、上記指示T1・T2には、変更内容を示すフィールドも設けられており、制御層42は、当該フィールドも、サービス層43へ与えている。
On the other hand, regardless of whether the instruction T1 to the
例えば、サービス層43の通信サービス43aであれば、例えば、デバイス制御部32または各IF部21・22へ指示するなどして、指示T2αのフィールドF21の示すアクセス対象と通信して、その状態を取得し、取得した状態をアプリケーション層41へ返答したり、当該アクセス対象と通信して、その状態を、指示T2αの示す内容に変更したりできる。また、サービス層43の実デバイス領域サービス43bは、記憶部26に設けられた実デバイス領域A1のうち、フィールドF21の示す記憶領域にアクセスして、当該記憶領域から読み出した値をアプリケーション層41へ返答したり、当該記憶領域の内容を、指示T2αの示す内容に変更したりできる。
For example, in the case of the communication service 43a of the
ところで、上記データベース44の内容、および、上記アプリケーション層41が上記指示T1α・T1βを作成する際に参照する画面データおよびラダープログラムなどのデータは、例えば、図2に示すエディタ装置(指示データ生成装置)15によって生成され、グラフィック操作パネル12は、通常動作期間、すなわち、ラダープログラムに基づいてデバイスを制御し、画面データに基づいて操作画面を表示する期間よりも前に、例えば、一時的に接続されたエディタ装置15からの通信、あるいは、エディタ装置15によって上記各データが書き込まれた記録媒体からの読み出しなどによって、上記各データを取得し、記憶部26に格納する。なお、例えば、制御用ホストコンピュータ14など、LAN13に接続された機器が上記各データの生成機能を有している場合、グラフィック操作パネル12は、当該機器とLAN13経由で通信して上記各データを取得してもよいし、グラフィック操作パネル12自体が上記各データの生成/編集機能を有している場合は、グラフィック操作パネル12がユーザからの指示に応じて、記憶部26の上記各データを修正したり、新規に上記各データを生成したりして、修正/生成された上記各データを記憶部26に格納してもよい。
By the way, the contents of the
本実施形態に係るエディタ装置15は、一例として、ラダープログラムを生成/編集する機能と画面データを生成/編集する機能とを兼ね備えた装置であって、例えば、図12に示すように、ユーザの操作に応じて、予め格納されたラダープログラムを修正したり新規作成したりして、ラダープログラムをプログラミングし、新たなラダープログラムを生成するプログラムエディタ(制御プログラム編集手段)51と、ユーザの操作に応じて、予め格納された画面データを修正したり新規作成したりして、操作画面を設計し、新たな画面データを生成する作画エディタ(操作画面編集手段)52と、上記各エディタ51・52が生成したラダープログラムおよび画面データを格納する記憶装置53とを備えている。また、上記エディタ装置15には、上述した変数のデータが格納されるデータベース54が設けられており、上記各エディタ51・52は、ユーザの操作に応じてデータベース54の内容を更新できる。
As an example, the
また、図2に示すエディタ装置15は、一例として、グラフィック操作パネル12と通信して上記各データを伝送する構成であり、記憶装置53およびデータベース54に格納された上記各データを、これらグラフィック操作パネル12へ通信する通信処理部55が設けられている。なお、記録媒体経由で上記各データを伝送する場合は、通信処理部55に代えて/加えて記録媒体に記憶装置53またはデータベース54に格納された各データを書き込む記録装置を設ければよい。
The
なお、上述したグラフィック操作パネル12の各部材21・22・25〜32および41〜44、並びに、上記各部材51〜55は、CPUなどの演算手段が、ROMやRAMなどの記憶手段に格納されたプログラムを実行し、タッチパネルや液晶表示装置などの入出力手段、あるいは、インターフェース回路などの通信回路を制御することによって実現される機能ブロックである。また、これらの部材のうち、各記憶部26・51a・52a、記憶装置53およびデータベース44・54(一部後述)は、ROMやRAMなどの記憶装置自体であってもよい。したがって、これらの手段を有するコンピュータが、上記プログラムを記録した記録媒体(例えば、CD−ROMなど)を読み取り、当該プログラムを実行するだけで、本実施形態に係るエディタ装置15を実現できる。なお、例えば、LAN13、あるいは、他の通信路を介してプログラムをダウンロードするためのプログラムが、上記コンピュータに予めインストールされていれば、これらの通信路を介して、上記コンピュータへ上記プログラムを配付してもよい。
Note that each
より詳細には、上記プログラムエディタ51は、ラダープログラムに対応する情報および当該ラダープログラムに対応するラダー図を示す情報が一時的に格納される作業用の記憶部51aと、ユーザの指示を受け付けて、当該記憶部51aの内容を書き換える編集処理部(自動割付手段)51bと、編集処理部51bによって編集される記憶部51aの内容を、ラダー図として、図示しないディスプレイに表示させる表示処理部51cと、上記記憶部51aに格納されたラダープログラムを当該記憶部51aに展開したり、編集後の記憶部51aの内容に応じたラダープログラムを記憶部51aへ書き込むデータ入出力処理部51dとを備えている。
More specifically, the program editor 51 receives a work storage unit 51a in which information corresponding to a ladder program and information indicating a ladder diagram corresponding to the ladder program are temporarily stored, and a user instruction. An editing processing unit (automatic assignment means) 51b for rewriting the contents of the storage unit 51a, and a
ここで、上記ラダープログラムは、上述したように、ラダー図として図示することが可能であり、プログラムエディタ51の編集処理部51bは、例えば、配置可能なラダー記号の種類を示すパレットを表示し、パレット中のラダー記号の種類を選択して画面上に所望の種類のラダー記号を配置するようにユーザへ促す。また、編集処理部51bは、ユーザによるラダー記号の配置操作を受け付けると、当該操作に応じて、編集中のラダー図が上記配置されたラダー記号を含むように、記憶部51aの内容を変更し、表示処理部51cは、記憶部51aの内容に基づいて、当該ラダー記号を指定された座標に表示する。同様に、編集処理部51bは、ユーザによるネットワークの配置操作を受け付けると、当該操作に応じて、編集中のラダープログラムが当該ネットワークを含むように、記憶部51aの内容を変更し、表示処理部51cは、記憶部51aの内容に基づいて、当該ネットワークを指定された位置に表示できる。
Here, as described above, the ladder program can be illustrated as a ladder diagram, and the editing processing unit 51b of the program editor 51 displays, for example, a palette indicating the types of ladder symbols that can be arranged, The user is prompted to select the type of ladder symbol in the palette and place the desired type of ladder symbol on the screen. In addition, when the editing processing unit 51b receives a ladder symbol arrangement operation by the user, the editing processing unit 51b changes the contents of the storage unit 51a according to the operation so that the ladder diagram being edited includes the ladder symbol arranged as described above. The
さらに、編集処理部51bは、ユーザのドラッグ&ドロップなどの操作に応じて記憶部51aの内容を変更して、当該ラダー記号の表示座標範囲の値を調整し、表示処理部51cは、変更後の位置にラダー記号を表示する。また、編集処理部51bは、ラダー記号に関連するデバイスを特定するための情報としてアドレスや変数を入力するようにユーザへ促すと共に、入力されたアドレスや変数が当該ラダー記号に関連するように、記憶部51aの内容(より詳細には、ラダー記号に対応する命令のオペランドを示す情報)を変更し、表示処理部51cは、ユーザの指示に応じて、各ラダー記号に関連付けられている変数を、それに対応するアドレスあるいは変数名の形式で表示できる。
Furthermore, the edit processing unit 51b changes the contents of the storage unit 51a in accordance with the user's operation such as drag and drop to adjust the value of the display coordinate range of the ladder symbol, and the
また、編集処理部51bは、変数に対するデバイスアドレスの入力操作を受け付け、入力されたアドレスを示すように、データベース54の内容(より詳細には、当該変数に対応するレコードの内容)を変更し、表示処理部51cは、ユーザの指示に応じて、各変数に関連付けられているアドレスを表示してもよい。なお、新たに変数を登録する際の動作および作画エディタ52との連係動作については後述する。
The edit processing unit 51b accepts an input operation of a device address for a variable, changes the contents of the database 54 (more specifically, the contents of a record corresponding to the variable) to indicate the input address, The
さらに、編集終了指示を受け付けると、データ入出力処理部51dは、記憶部51aの内容に応じたラダープログラムを生成して、記憶装置53に書き込む。これにより、編集されたラダー図に対応する命令シーケンスからなるラダープログラムが生成される。 Further, upon receiving an editing end instruction, the data input / output processing unit 51 d generates a ladder program according to the contents of the storage unit 51 a and writes the ladder program in the storage device 53. As a result, a ladder program including an instruction sequence corresponding to the edited ladder diagram is generated.
同様に、上記作画エディタ52は、画面データに対応する情報が一時的に格納される作業用の記憶部52aと、ユーザの指示を受け付けて、当該記憶部52aの内容を書き換える編集処理部(自動割付手段)52bと、編集処理部52bによって編集される記憶部52aの内容を図示しないディスプレイに表示させる表示処理部52cと、上記記憶装置53に格納された画面データを当該記憶部52aに展開したり、編集後の記憶部52aの内容に応じた画面データを記憶装置53へ書き込むデータ入出力処理部(生成手段)52dとを備えている。
Similarly, the drawing
ここで、上記画面データは、上述したように、画面上の領域と、当該領域への表示や入力に対応するデバイスを特定可能なアドレスとの対応関係を示すオブジェクトを組み合わせて構成されており、作画エディタ52の編集処理部52bは、例えば、オブジェクトの雛型となるクラスのパレットを表示し、パレット中のクラスを選択して画面上に所望のオブジェクトを配置するようにユーザへ促す。また、編集処理部52bは、ユーザによるオブジェクトの配置操作を受け付けると、当該操作に応じて、編集中の画面データが上記配置されたオブジェクトのデータを含むように、記憶部52aの内容を変更し、表示処理部52cは、記憶部52aの内容に基づいて、当該オブジェクトを指定された座標に表示する。また、編集処理部52bは、ユーザのドラッグ&ドロップなどの操作に応じて記憶部52aの内容を変更して、当該オブジェクトの領域属性の値を調整し、表示処理部52cは、変更後の位置にオブジェクトを表示する。また、編集処理部52bは、オブジェクトに関連するアドレスや変数を入力するようにユーザへ促すと共に、入力されたアドレスや変数が当該オブジェクトに関連するように、記憶部52aの内容(より詳細には、オブジェクトのデバイス属性の値)を変更し、表示処理部52cは、ユーザの指示に応じて、各オブジェクトに関連つけられているアドレスや変数を表示する。さらに、編集処理部52bは、プログラムエディタ51の編集処理部51bと同様に、変数に対するデバイスアドレスの入力操作を受け付けると、入力されたアドレスを示すように、データベース54の内容(より詳細には、当該変数に対応するレコードの内容)を変更し、表示処理部52cは、ユーザの指示に応じて、各変数に関連付けられているアドレスを表示できる。
Here, as described above, the screen data is configured by combining an object indicating a correspondence relationship between an area on the screen and an address that can identify a device corresponding to display or input in the area. The edit processing unit 52b of the drawing
なお、本実施形態に係るグラフィック操作パネル12は、複数の画面(操作画面)を切り換えて表示可能であり、上記編集処理部52bは、操作画面の追加操作や、それぞれの操作画面に対する編集操作を受け付けると共に、各操作画面に関連付けて、当該操作画面に配置された各オブジェクトのデータを、記憶部51aに格納できる。 The graphic operation panel 12 according to the present embodiment can switch and display a plurality of screens (operation screens), and the edit processing unit 52b performs an operation screen addition operation and an editing operation on each operation screen. In addition to accepting, the data of each object arranged on the operation screen in association with each operation screen can be stored in the storage unit 51a.
一方、編集終了指示を受け付けると、データ入出力処理部52dは、記憶部52aの内容に応じた画面データを生成して、記憶装置53に書き込む。これにより、編集されたオブジェクトをグラフィック操作パネル12に生成するための情報が含まれた画面データを生成できる。
On the other hand, when the editing end instruction is received, the data input / output processing unit 52 d generates screen data corresponding to the contents of the
これらの結果、設計者は、エディタ装置15の作画エディタ52を操作して、画面上の所望の位置にオブジェクトを配置すると共に、各オブジェクトと変数とを対応付け、変数とデバイスのアドレスとを対応付けるだけで、画面データを作成できる。したがって、グラフィック操作パネル12の表示プログラムを修正する場合に比べて容易に、各グラフィック操作パネル12の表示や操作を決定(変更)でき、制御システム1のユーザ(エディタ装置15を操作する設計者)は、ターゲットシステム2の実情や、グラフィック操作パネル12のオペレータの習熟度、あるいは、ユーザの好みや判断基準に合わせることができる。
As a result, the designer operates the drawing
さらに、上記各エディタ51・52の編集処理部51b・52bは、例えば、他方のエディタ51・52からのドラッグ&ドロップなどによって、他方のエディタ51・52の画面上に配置されていた部品に対応する部品を自らの画面上に配置するための操作を受け付けることができ、この場合、当該他方の部品に対応すると予め定められた部品で、しかも、当該他方の部品に関連付けられている変数に関連付けられた部品を配置することができる。また、上記両エディタ51・52は、互いに同じデータベース54を参照している。これらの結果、両エディタ51・52の双方で、互いに対応する部品をそれぞれ別個に配置し、それらの部品に対応する変数をそれぞれ別個に設定する構成よりも、変数に対応するアドレス等の情報を入力したり、各部品に対応する変数を設定したりする際の手間を大幅に削減できる。
Furthermore, the editing processing units 51b and 52b of the
ところで、上記画面データおよびラダープログラムにおいてアクセスの対象となり得るデバイスには、PLC11に接続されているデバイス2a、IO・IF部31を介して接続されているデバイス2a、あるいは、PLC11またはグラフィック操作パネル12内の記憶領域であっても特定の機能が割り当てられたアドレスが含まれており、これらのデバイスの場合には、デバイス2aのデバイスアドレスまたはアドレスが予め定められている。
By the way, the devices that can be accessed in the screen data and the ladder program include the
一方、上記デバイスの中には、これら特定のアドレスが予め定められているデバイスだけではなく、例えば、一時的にデータを格納するためにグラフィック操作パネル12内に確保される記憶領域も含まれており、この場合には、当該データを記憶できれば、当該記憶領域がいずれのアドレスにあってもかまわない。 On the other hand, the above devices include not only devices whose specific addresses are determined in advance, but also storage areas reserved in the graphic operation panel 12 for temporarily storing data, for example. In this case, the storage area may be located at any address as long as the data can be stored.
ただし、この場合に、ユーザが、グラフィック操作パネル12内の空いている記憶領域の中からデバイスに割り当てる記憶領域を決定した後、上記特定のアドレスが定められているデバイスと同様に、変数にアドレスを対応付けるとすると、操作が煩雑になってしまう。 However, in this case, after the user determines a storage area to be assigned to the device from among the free storage areas in the graphic operation panel 12, the address is set in the variable as in the device in which the specific address is determined. If these are associated, the operation becomes complicated.
これに対して、本実施形態に係るグラフィック操作パネル12では、上記記憶部26の記憶領域のうち、上記実デバイス領域A1とは別の記憶領域に、自動割付領域(自動割付用の特定領域)A2が設けられており、上記エディタ装置15は、上記特定のアドレスが予め定められていないデバイスについては、当該自動割付領域A2のうち、空いている記憶領域を自動的に割り当て、当該デバイスへアクセスする際には、当該割り当てられた記憶領域にアクセスするように、上記画面データ、ラダープログラムおよびデータベース54の内容(データベース44の内容)を設定できる。
On the other hand, in the graphic operation panel 12 according to the present embodiment, an automatic allocation area (a specific area for automatic allocation) is stored in a storage area of the
さらに、本実施形態に係るエディタ装置15は、上記記憶領域を割り当てる際、変数の型毎に整列して割り当てており、グラフィック操作パネル12のアプリケーション層41は、制御層42へ指示する際、例えば、図13に示す指示T1γのように、実アドレスでの指定に代えて、各型におけるオフセットでの指定によって、アクセス対象となる記憶領域を特定している。
Furthermore, the
本実施形態では、上記型の一例として、ビット型(bit型)、整数型(int型)、実数型(float型)および機種依存の最大精度の実数型(real型)が用意されており、図14に示すように、上記自動割付領域A2は、それぞれに対応する領域Ab、Ai、AfおよびArに区分されている。なお、本実施形態では、他にも、タイマ型、カウンタ型、日付型、時刻型、PID型などの型も用意されており、自動割付領域A2には、それぞれに対応する領域も設けられているが、図14では、説明の便宜上、これらの領域を省略している。 In this embodiment, a bit type (bit type), an integer type (int type), a real number type (float type), and a real number type (real type) with the maximum accuracy depending on the model are prepared as an example of the above type. As shown in FIG. 14, the automatic allocation area A2 is divided into areas Ab, Ai, Af, and Ar corresponding to the areas. In addition, in this embodiment, other types such as a timer type, a counter type, a date type, a time type, and a PID type are also prepared, and the automatic allocation area A2 is provided with areas corresponding thereto. However, in FIG. 14, these regions are omitted for convenience of explanation.
一例として、図13に示す指示T1γは、整数型の変数の2番目(オフセット0001)をアクセス対象とする場合を示しており、当該指示T1γのフィールドF12には、型とオフセットとの組み合わせが格納されている。なお、図では、説明の便宜上、フィールドF12の内容を、整数型を示す文字”I”とオフセットを示す文字列とをセパレータを”_”で結んだ文字列として図示しているが、実際には、型とオフセットとの組み合わせを示す数値が記憶されている。 As an example, the instruction T1γ shown in FIG. 13 shows a case where the second variable (offset 0001) of the integer type is to be accessed, and the combination of the type and the offset is stored in the field F12 of the instruction T1γ. Has been. In the figure, for convenience of explanation, the contents of the field F12 are illustrated as a character string in which a character “I” indicating an integer type and a character string indicating an offset are connected by a separator “_”. Stores numerical values indicating combinations of molds and offsets.
なお、上記オフセットは、アドレスとは独立に設定可能な変数名や変数の識別子とは異なって、ベースとなるアドレス(ベースアドレス)と、その型のサイズとが予め定められていれば、特にデータベース44を参照しなくても、ベースアドレスとサイズとオフセットとに基づいて実際のアドレスを算出可能である。 Note that the offset is different from variable names and variable identifiers that can be set independently of the address. If the base address (base address) and the size of the type are predetermined, the offset is particularly Even without referring to 44, the actual address can be calculated based on the base address, size, and offset.
ここで、制御層42が実際のアドレスを算出してもよいが、本実施形態では、サービス層43が上記ベースアドレスとサイズとオフセットとに基づいて実際のアドレスを算出している。これに伴って、上記指示T1γでは、指示の種類を示すフィールドF11が、変換不要を示す値(図の例では、”直接”)に設定されており、制御層42は、サービス層43への指示T2γを生成する際、図15に示すように、当該指示T2γのフィールドF21に、フィールドF12の内容を、そのまま設定している。
Here, the
一方、本実施形態に係るサービス層43には、オフセットで記憶領域が指定された指示T2γに基づいて上記自動割付領域A2へアクセスする自動割付領域サービス43cが設けられており、当該自動割付領域サービス43cは、当該指示T2γを受け取ると、当該指示T2γに含まれるオフセットと、予め定められた上記ベースアドレスおよびサイズとに基づいて、上記自動割付領域A2のうち、当該指示T2γがアクセス対象として指定している記憶領域のアドレスを算出する。さらに、自動割付領域サービス43cは、当該記憶領域へアクセスして、当該記憶領域の内容をアプリケーション層41へ返答したり、当該記憶領域の内容をアプリケーション層41からの指示に応じて変更したりする。
On the other hand, the
これにより、サービス層43は、アプリケーション層41が各型におけるオフセットでアクセス対象を指定しても、何ら支障なく、当該アクセス対象、すなわち、自動割付領域A2内に設けられた記憶領域にアクセスできる。
Thereby, even if the application layer 41 designates the access target with the offset in each type, the
なお、上記では、自動割付領域A2に割り当てられた記憶領域にアクセスする際、アプリケーション層41が、実アドレスでの指定に代えて、オフセットでの指定によって、アクセス対象となる記憶領域が特定されている場合について説明した。一方、アプリケーション層41が変数の識別子によって指定した場合、制御層42は、実デバイス領域A1がアクセス対象である場合と略同様に、データベース44を参照して、当該変数の識別子に対応する値に変換してサービス層43へ伝える。ただし、アクセス対象が自動割付領域A2内の記憶領域である場合は、データベース44には、実アドレスに代えて、各型におけるオフセットが記憶されている。したがって、制御層42は、上記指定された変数の識別子に対応するオフセットを、上記データベース44から読み出し、当該オフセットをサービス層43へ通知する。これにより、アクセス対象が自動割付領域A2内の記憶領域である場合であっても、アプリケーション層41は、変数の識別子でアクセス対象を特定できる。
In the above, when accessing the storage area allocated to the automatic allocation area A2, the application layer 41 specifies the storage area to be accessed by specifying with an offset instead of specifying with a real address. Explained the case. On the other hand, when the application layer 41 is designated by the identifier of the variable, the
以下では、アプリケーション層41が自動割付された記憶領域へアクセスする際に参照するラダープログラムおよび画面データを作成すると共に、アクセス対象の記憶領域を自動割付するための構成について説明する。すなわち、図11に示すように、本実施形態に係るデータベース44・45には、各変数に対応するレコードに、型のフィールドF44が設けられており、デバイスが上記自動割付領域A2内の記憶領域である場合、当該デバイスに対応する変数のレコードのフィールドF44には、そのデバイスの型の情報が格納される。また、当該変数のレコードのフィールドF42には、上記記憶領域を示す情報として、型とオフセットとの組み合わせが格納されている。なお、図では、フィールドF12と同様に、説明の便宜上、フィールドF42の内容を、整数型を示す文字”I”とオフセットを示す文字列とをセパレータを”_”で結んだ文字列として図示している。
Hereinafter, a configuration for creating a ladder program and screen data to be referred to when the application layer 41 accesses the automatically allocated storage area and for automatically allocating the storage area to be accessed will be described. That is, as shown in FIG. 11, in the
なお、上述したように、本実施形態では、変数が実アドレスに対応付けられている場合、その変数のレコードのフィールドF42には、実アドレスが格納されており、この場合、そのレコードの型のフィールドF44には、実アドレスを示す値(実アドレス型を示す値)が格納される。 As described above, in this embodiment, when a variable is associated with a real address, the real address is stored in the field F42 of the record of the variable. In this case, the type of the record is A value indicating a real address (a value indicating a real address type) is stored in the field F44.
一方、編集処理部51b・52bは、ラダー図または操作画面上に部品(オブジェクト)またはラダー記号が配置され、当該部品またはラダー記号に関連するアドレスや変数の入力を受け付けた場合、以下のようにして、当該変数の型を設定する。 On the other hand, when a part (object) or a ladder symbol is arranged on a ladder diagram or an operation screen and an input of an address or a variable related to the part or the ladder symbol is received, the editing processing units 51b and 52b are as follows. To set the variable type.
すなわち、本実施形態に係る編集処理部51b・51aは、新たな部品またはラダー記号の配置操作を受け付けた場合、それに変数が対応しているか否かを判定する。例えば、編集処理部51b・51aの一方から他方への配置操作の場合、元の編集処理部において、既に部品またはラダー記号に変数が対応付けられているので、配置操作を受け付けた編集処理部は、当該部品またはラダー記号に、元の編集処理部において対応付けられていた変数を対応付ける。 In other words, when the editing processing unit 51b or 51a according to the present embodiment receives an operation for arranging a new part or ladder symbol, it determines whether or not the variable corresponds to it. For example, in the case of an arrangement operation from one of the editing processing units 51b and 51a to the other, since the variable has already been associated with the part or ladder symbol in the original editing processing unit, the editing processing unit that has accepted the arrangement operation is The variable associated with the original editing processing unit is associated with the part or ladder symbol.
一方、パレットからの配置操作を受け付けた場合など、部品またはラダー記号が新規に配置された場合、編集処理部51b・51aは、当該部品またはラダー記号に対応する変数名を入力するように、ユーザへ促す。 On the other hand, when a part or ladder symbol is newly placed, such as when a placement operation from a pallet is accepted, the editing processing unit 51b / 51a is configured so that the user can input a variable name corresponding to the part or ladder symbol. Prompt.
変数名が入力された場合、編集処理部51b・52bは、データベース54を参照して、入力された変数名がデータベース54に既に登録されているか否かを判定し、登録されている場合は、上記部品またはラダー記号に、当該変数名を持った変数を対応付ける。 When the variable name is input, the edit processing units 51b and 52b refer to the database 54 to determine whether or not the input variable name is already registered in the database 54. A variable having the variable name is associated with the part or ladder symbol.
これとは逆に、入力された変数名がデータベース54に登録されていなかった場合、当該変数は、新たな変数である。この場合、編集処理部51b・52bは、当該変数名が、予め定められたパターンにマッチする文字列であるか否かを判定し、マッチした文字列であった場合、上記部品またはラダー記号に対応する型として、当該パターンに予め対応付けられている型を設定する。 On the contrary, if the input variable name is not registered in the database 54, the variable is a new variable. In this case, the edit processing units 51b and 52b determine whether or not the variable name is a character string that matches a predetermined pattern. As a corresponding type, a type preliminarily associated with the pattern is set.
本実施形態では、一例として、数値のパターンには、実アドレス型が対応付けられている。また、整数型を示すIなど、型を示す文字から始まるというパターンには、その型が対応付けれている。さらに、モータやランプあるいはスイッチなど、グラフィック操作パネル12またはPLC11に外部接続されるデバイス2aを示す文字として、予め定められた文字(例えば、モータの場合の”M”など)から始まるというパターンには、実アドレス型が対応付けられている。
In the present embodiment, as an example, a real address type is associated with a numerical pattern. In addition, a pattern that starts with a character indicating a type, such as I indicating an integer type, is associated with the type. Further, as a pattern indicating a
このように、上記パターンにマッチする文字列が入力された場合には、当該パターンに予め対応付けられた型が設定される。 As described above, when a character string matching the pattern is input, a type associated with the pattern in advance is set.
一方、予め定められたパターンのいずれにもマッチしなかった場合、編集処理部51b・52bは、予め定められている型を初期設定の型として設定する。本実施形態では、プログラムエディタ51の編集処理部51bには、初期設定の型として、自動割付用の型のうちの予め定められた型(例えば、整数型など)が規定されている。これに対して、作画エディタ52の編集処理部52bには、初期設定の型として、実アドレス型が規定されている。
On the other hand, when the pattern does not match any of the predetermined patterns, the edit processing units 51b and 52b set a predetermined type as an initial type. In the present embodiment, the editing processing unit 51b of the program editor 51 defines a predetermined type (for example, an integer type) among automatic allocation types as an initial setting type. On the other hand, a real address type is defined as an initial setting type in the editing processing unit 52b of the drawing
ここで、作画エディタは、例えば、プログラマブル表示器やPLCの機能を持たないグラフィック操作パネルなど、PLCの機能を持たず、PLCに接続することを前提とした制御用表示装置の操作画面を作成するために用いられることが多い。また、PLCの中には、変数での指定を受け付けることができず、アドレスでの指定しか受け付けることができないものが多い。さらに、ラダープログラムを作成する場合と比較すると、あるデバイスが頻繁に使用されることは少なく、一時的にデータを記憶するための記憶領域を必要とする可能性も低い。したがって、当該PLCに接続されたデバイスをアクセス対象とする場合、作画エディタのユーザは、アクセス対象をアドレスで指定することを避けることができず、アドレスでの指定に慣れていることが多い。 Here, the drawing editor creates an operation screen of a control display device that does not have a PLC function and is assumed to be connected to the PLC, such as a programmable display or a graphic operation panel without a PLC function. Often used for. In addition, many PLCs cannot accept designation by a variable and can only accept designation by an address. Furthermore, as compared with the case of creating a ladder program, a certain device is rarely used frequently, and it is less likely that a storage area for temporarily storing data is required. Therefore, when a device connected to the PLC is an access target, the user of the drawing editor cannot avoid specifying the access target by an address, and is often accustomed to the specification by an address.
この結果、上記パターンにマッチしなかった場合、作画エディタ52の編集処理部52bが、その変数の型を実アドレス型に設定すると、多くの場合、型を変更する必要がなく、ユーザの手間を削減できる。
As a result, if the pattern does not match the pattern, the edit processing unit 52b of the drawing
一方、プログラムエディタは、デバイスに直接接続される制御装置の制御プログラム(ラダープログラムなど)を作成するために用いられるが、作画エディタの場合と比較すると、同じデバイスを、プログラム内で繰り返し使用することが多く、一時的にデータを記憶するための記憶領域を必要とする可能性も高い。したがって、上記作画エディタ52と同様に、初期設定の型を実アドレス型に設定したとすると、型の変更が必要になる可能性が高く、ユーザの手間が増加する虞れがある。
On the other hand, the program editor is used to create a control program (such as a ladder program) for a control device directly connected to the device, but the same device is repeatedly used in the program as compared to the drawing editor. In many cases, there is a high possibility that a storage area for temporarily storing data is required. Therefore, similarly to the drawing
これに対して、本実施形態に係るプログラムエディタ51の編集処理部51bは、上記パターンにマッチしなかった場合、その変数の型を、自動割付用の型のうちの予め定められた型(例えば、整数型など)に設定する。したがって、実アドレス型に設定する場合と比較して、型変更が必要になる可能性を低減でき、ユーザの手間を削減できる。 On the other hand, if the edit processing unit 51b of the program editor 51 according to the present embodiment does not match the above pattern, the edit type of the variable is set to a predetermined type (for example, a type of automatic allocation) (for example, , Integer type, etc.). Therefore, compared with the case where the real address type is set, the possibility that the type needs to be changed can be reduced, and the labor of the user can be reduced.
なお、上記の型設定が誤っていた場合に備えて、本実施形態に係る編集処理部51b・52bは、例えば、部品またはラダー記号の属性編集操作の1つとして、型の変更操作も受け付けることができる。また、上記各編集処理部51b・52bは、例えば、ユーザの操作に応じて、各変数の型をリスト表示することもでき、リスト表示された各変数の型への編集操作(型の変更操作)を受け付けることができる。これにより、上記の型設定が誤っていたとしても、何ら支障なく、正しい型に変更できる。 In preparation for the case where the above-described type setting is incorrect, the editing processing units 51b and 52b according to the present embodiment also accept a type changing operation as one of the attribute editing operations for parts or ladder symbols, for example. Can do. Each of the editing processing units 51b and 52b can also display a list of types of each variable according to a user operation, for example, and can perform an editing operation (type changing operation) on each type of the displayed variables. ) Can be accepted. As a result, even if the above type setting is incorrect, it can be changed to the correct type without any trouble.
また、上記編集処理部51b・52bは、例えば、新たに、自動割付用の型の変数を追加する場合、あるいは、既に作成されている変数であっても、その型が、自動割付用の型に変更された場合、グラフィック操作パネル12の記憶部26の自動割付領域A2に当該変数用の記憶領域を割り付ける。
In addition, the editing processing units 51b and 52b, for example, when adding a new variable for automatic allocation, or even if a variable has already been created, the type is the type for automatic allocation. Is changed, the storage area for the variable is allocated to the automatic allocation area A2 of the
上述したように、本実施形態に係るグラフィック操作パネル12では、自動割付された変数の記憶領域は、変数の型毎に整列して割り当てられている。これを実現するために、本実施形態に係る編集処理部51b・52bは、上記記憶部26の自動割付領域A2のうち、新たに記憶領域を割り付ける変数の型用の領域のうち、既に使用されている記憶領域に連続する領域(例えば、既に使用されている記憶領域の次の領域など)に、当該変数用の記憶領域を確保し、上記データベース54の当該変数のレコードのフィールドF42に、当該確保した記憶領域を示す情報として、型とオフセットとの組み合わせを格納する。
As described above, in the graphic operation panel 12 according to the present embodiment, the automatically allocated variable storage areas are allocated in line for each variable type. In order to realize this, the editing processing units 51b and 52b according to the present embodiment are already used among the variable type areas for newly allocating the storage area in the automatic allocation area A2 of the
例えば、図11に示す状態では、整数型のオフセットは、I_0000(図示せず)と、I_0001とが使用されている。したがって、この状態で、整数型の変数の記憶領域を自動割付した場合、図16に示すように、I_0002のレコードが追加される。 For example, in the state shown in FIG. 11, integer offsets I_0000 (not shown) and I_0001 are used. Therefore, in this state, when the storage area of the integer type variable is automatically allocated, a record of I_0002 is added as shown in FIG.
本実施形態に係る編集処理部51b・52bは、一例として、データベース54を検索することによって、新たに記憶領域を割り付ける変数の型用の領域のうち、既に使用されている記憶領域に連続する領域を探索している。 As an example, the edit processing units 51b and 52b according to the present embodiment search the database 54, and among the variable type areas to which a storage area is newly allocated, areas that are continuous with the storage area that has already been used Looking for.
具体的には、上述したように、データベース54には、既に記憶領域が割り当てられている変数について、型とオフセットとの組み合わせが記憶されている。したがって、編集処理部51b・52bは、型とオフセットとの組み合わせがデータベース54に登録されているか否かで、その組み合わせが示す記憶領域が既に割り当てられているか否かを判定できる。また、編集処理部51b・52bは、新たな記憶領域を割り付ける際、記憶領域が連続するように割り付けている。したがって、編集処理部51b・52bは、データベース54に記憶された型とオフセットとの組み合わせのうち、新たに記憶領域を割り付けようとする変数の型と同じ型で、しかも、オフセットの値が最後の組み合わせを抽出し、そのオフセットの次の値を、当該記憶領域のオフセットとして決定する。一例として、オフセットが連続して大きくなっている場合、次の値は、オフセットの最大値に1を加えた数であり、オフセットが1つ飛ばしで小さくなっている場合、次の値は、オフセットの最小値から2を減らした値である。 Specifically, as described above, the database 54 stores combinations of types and offsets for variables that have already been assigned storage areas. Therefore, the edit processing units 51b and 52b can determine whether or not the storage area indicated by the combination has already been allocated based on whether or not the combination of the type and the offset is registered in the database 54. In addition, when the editing processing units 51b and 52b allocate new storage areas, they are allocated so that the storage areas are continuous. Therefore, the editing processing units 51b and 52b have the same type as the type of the variable to which a new storage area is to be allocated among the combinations of the type and offset stored in the database 54, and the offset value is the last one. The combination is extracted, and the next value of the offset is determined as the offset of the storage area. As an example, when the offset is continuously increased, the next value is a number obtained by adding 1 to the maximum offset value, and when the offset is decreased by skipping one, the next value is the offset. This is a value obtained by subtracting 2 from the minimum value.
なお、記憶部26に配置した状態で整列していれば、編集処理部51b・52bは、例えば、データベース54に登録する段階では、記憶領域を不連続に配置しておき、データベース44に登録する段階で、型毎に整列するようにオフセットを修正してもよい。いずれの場合であっても、記憶部26に配置した状態で整列していれば、同様の効果が得られる。
If they are aligned in the state where they are arranged in the
また、上記では、一例として、基本型(要素数が1の型)について説明したが、本実施形態では、その派生型として、上述した各型の配列も用意されている。この場合、グラフィック操作パネル12のアプリケーション層41およびサービス層43、並びに、エディタ装置15の編集処理部51b・52bは、配列の各要素を、型と、オフセットと、その配列におけるインデックスとの組み合わせで特定している。
In the above description, the basic type (type with one element) is described as an example. However, in the present embodiment, arrays of the above-described types are also prepared as derived types. In this case, the application layer 41 and the
ここで、上述したように、本実施形態に係るアプリケーション層41は、自動割付領域A2内の記憶領域へのアクセスを制御層42へ指示する際、その指示T1γのフィールドF12に、型とオフセットとの組み合わせを設定している。
Here, as described above, when the application layer 41 according to the present embodiment instructs the
ただし、一般に、型とオフセットとの組み合わせを記憶する際に必要な領域は、実アドレスの記憶に必要な領域よりも小さくなる。したがって、実アドレスでアクセス対象を特定した指示T1αと、型およびオフセットの組み合わせでアクセス対象を特定した指示T1γとで、フィールドF12のサイズを、互いに同じに設定したとすると、指示T1γのフィールドF12のうち、特定の領域(例えば、オフセットの上位ビットに対応する領域など)は、常に同じ値になる。なお、フィールドF21・F42についても同様に、特定の領域が常に同じ値になる。 However, in general, the area required for storing the combination of the type and the offset is smaller than the area required for storing the real address. Accordingly, if the size of the field F12 is set to be the same between the instruction T1α specifying the access target with the real address and the instruction T1γ specifying the access target with the combination of the type and the offset, the field F12 of the instruction T1γ Among these, a specific area (for example, an area corresponding to the upper bits of the offset) always has the same value. In the same way, the specific areas always have the same value in the fields F21 and F42.
本実施形態では、フィールドF12・F21のサイズを互いに同じに設定することによって、自動割付するための自動割付領域サービス43cが設けられていない構成と、制御層42のデータ処理を共通にしているにも拘らず、フィールドF12のうち、上記特定の領域に、配列のインデックスを格納することによって、アクセス対象が配列の場合、1つの指示T1によって、自動割付領域サービス43cへ、インデックスをも通知している。これにより、自動割付された記憶領域にアクセスする際の効率を向上できる。
In this embodiment, by setting the sizes of the fields F12 and F21 to be the same, the configuration in which the automatic allocation area service 43c for automatic allocation is not provided and the data processing of the
さらに、本実施形態では、フィールドF12・F21の図示しないヘッダ領域のうち、予め設けられていた予約領域に、インデックスまたはサブフィールド(後述)がフィールドF12・F21に含まれているか否か示すフラグが設けられており、上記グラフィック操作パネル12のアプリケーション層41は、インデックスまたはサブフィールド(後述)を指定する場合、当該フラグを真(含まれていることを示す値)に設定し、サービス層43は、当該フラグが真である場合に、インデックスまたはサブフィールドで特定された領域にアクセスしている。これにより、以下の不具合、すなわち、指示が、実アドレスでアクセス対象を特定した指示と、型およびオフセットの組み合わせでアクセス対象を特定した指示との一方であるにも拘らず、サービス層43が他方と誤って処理してしまうという不具合の発生を防止できる。
Further, in the present embodiment, a flag indicating whether an index or a subfield (described later) is included in the fields F12 and F21 in a reserved area provided in advance in a header area (not shown) of the fields F12 and F21. The application layer 41 of the graphic operation panel 12 sets the flag to true (a value indicating that it is included) when specifying an index or a subfield (described later), and the
また、上記では、配列型の場合を例にして説明したが、本実施形態に係るアプリケーション層41およびサービス層43、並びに、エディタ装置15の編集処理部51b・52bは、整数型など、他の型の変数であっても、その変数の記憶領域が複数のサブフィールドに分割されていれば、グラフィック操作パネル12のアプリケーション層41およびサービス層43、並びに、エディタ装置15の編集処理部51b・52bは、上記特定の領域に、アクセス対象とするサブフィールドを示す識別子を格納している。これにより、制御層42の互換性を維持したまま、当該サブフィールドへアクセスする際の効率を向上できる。
Further, in the above description, the case of the array type has been described as an example. However, the application layer 41 and the
なお、上記では、自動割付される記憶領域が型毎に整列されている場合を例にして説明したが、これに限るものではない。自動割付領域A2内の空き領域に、特定のアドレスには予め対応付けられていないデバイスに対応するデバイス用の記憶領域を自動割付すると共に、当該変数の識別子と当該記憶領域のアドレスを示すアドレス情報(例えば、型とオフセットとの組み合わせなど)との対応関係を、上記データベース44に記憶してもよい。また、上記では、自動割付された型の変数に対応する記憶領域を、型とオフセットとの組み合わせで特定しているが、これに限るものではない。当該記憶領域のアドレスを示すアドレス情報で特定されれば、例えば、アドレス自体であってもよい。
In the above description, the case where the storage areas to be automatically allocated are arranged for each type has been described as an example. However, the present invention is not limited to this. Address information indicating the identifier of the variable and the address of the storage area as well as automatically assigning a storage area for the device corresponding to a device not previously associated with a specific address to the free area in the automatic allocation area A2 The correspondence relationship with (for example, a combination of a mold and an offset) may be stored in the
これらの構成であっても、特定のアドレスに予め対応付けられているデバイスの変数を生成する場合と同様の手順で特定のアドレスには予め対応付けられていないデバイスの変数を生成する構成とは異なって、当該変数に対応するアドレスを指定しなくても、データ処理装置に、当該自動割付された記憶領域にアクセスさせることができ、当該変数を生成する際の手間を削減できる。 Even with these configurations, a configuration for generating device variables not previously associated with specific addresses in the same procedure as when generating device variables previously associated with specific addresses In contrast, even if the address corresponding to the variable is not specified, the data processing apparatus can be made to access the automatically allocated storage area, and the labor for generating the variable can be reduced.
ただし、本実施形態のように、自動割付される記憶領域が型毎に整列されていれば、例えば、各記憶領域が、それぞれの型に拘らず、生成された順に並べられている構成と比較して、記憶領域の使用効率、または、自動割付領域サービス43cが各記憶領域へアクセスする際の効率を向上できる。 However, if the storage areas to be automatically allocated are aligned for each type as in the present embodiment, for example, each storage area is compared with a configuration in which the storage areas are arranged in the order in which they are generated regardless of the type. Thus, the use efficiency of the storage area or the efficiency when the automatic allocation area service 43c accesses each storage area can be improved.
PLCなどの制御装置、その制御プログラムを生成するためのプログラムエディタ装置、グラフィック操作パネルなどの制御用表示装置、その操作画面を設計するための作画エディタ装置をはじめとして、種々のデータ処理装置および指示データ生成装置に広く適用できる。 Various data processing devices and instructions including a control device such as a PLC, a program editor device for generating the control program, a control display device such as a graphic operation panel, and a drawing editor device for designing the operation screen Widely applicable to data generators.
12 グラフィック操作パネル(データ処理装置)
15 エディタ装置(指示データ生成装置)
43 サービス層(アクセス手段)
44 データベース
51 プログラムエディタ(制御プログラム編集手段)
52 作画エディタ(操作画面編集手段)
51b・52b 編集処理部(自動割付手段)
51d・52d データ入出力処理部(生成手段)
A2 自動割付領域(自動割付用の特定領域)
12 Graphic operation panel (data processing device)
15 Editor device (instruction data generation device)
43 Service layer (access means)
44 Database 51 Program editor (control program editing means)
52 drawing editor (operation screen editing means)
51b / 52b Edit processing unit (automatic allocation means)
51d / 52d data input / output processing unit (generating means)
A2 Automatic allocation area (specific area for automatic allocation)
Claims (9)
上記データ処理装置は、上記指示データに含まれるアクセス対象情報の示すデバイスにアクセスして、当該デバイスの内容を、上記指示データに応じて変更するか、上記デバイスの内容を取得するかの少なくとも一方を行うアクセス手段と、
デバイスを特定するアドレスを示すアドレス情報と当該デバイスに対応する変数を特定する識別子との対応関係を記憶するデータベースとを備え、
当該アクセス手段は、アクセス対象となるデバイスが変数の識別子で特定された場合、上記データベースを参照して、当該変数の識別子に対応するアドレス情報を特定し、当該アドレス情報が示すアドレスへアクセスするものであり、
上記指示データ生成装置は、変数として、特定のアドレスには予め対応付けられていないデバイスに対応する変数が生成された場合、上記データ処理装置の記憶装置に予め設けられた自動割付用の特定領域内の空き領域に、当該変数に対応するデバイス用の記憶領域を自動割付すると共に、当該変数の識別子と当該記憶領域のアドレスを示すアドレス情報との対応関係を上記データベースに記憶する自動割付手段を備え、
上記生成手段は、当該自動割付された記憶領域に対応するデバイスをアクセス対象とする際には、当該記憶領域のアドレスを示すアドレス情報と、当該デバイスに対応する変数の識別子との一方を示すアクセス対象情報が含まれた指示データを生成して、上記アクセス手段に、当該自動割付された記憶領域にアクセスさせることを特徴とする指示データ生成装置。 In the instruction data generating device provided with a generating means for generating instruction data indicating the operation of the data processing device,
The data processing apparatus accesses the device indicated by the access target information included in the instruction data, and changes at least one of the contents of the device according to the instruction data and acquires the contents of the device Access means for performing
A database for storing a correspondence relationship between address information indicating an address for specifying a device and an identifier for specifying a variable corresponding to the device;
When the device to be accessed is identified by a variable identifier, the access means refers to the database, identifies address information corresponding to the variable identifier, and accesses the address indicated by the address information. And
In the case where a variable corresponding to a device that is not previously associated with a specific address is generated as a variable, the instruction data generation device is provided with a specific area for automatic allocation provided in advance in the storage device of the data processing device Automatic allocation means for automatically allocating a storage area for a device corresponding to the variable to an empty area in the database and storing a correspondence relationship between an identifier of the variable and address information indicating an address of the storage area in the database Prepared,
When the device corresponding to the automatically allocated storage area is an access target, the generation means accesses one of address information indicating the address of the storage area and an identifier of a variable corresponding to the device. An instruction data generating apparatus, comprising: generating instruction data including target information and causing the access means to access the automatically allocated storage area.
操作画面上に配置される部品によって状態が表示されるデバイス、または、当該部品への操作に応じて状態を変更するデバイスに関連付けて、そのデバイスに対応する変数を設定する操作画面編集手段とを備え、
上記特定のアドレスに予め対応付けられているデバイスを第1種デバイス、上記特定のアドレスには予め対応付けられていないデバイスを第2種デバイスとするとき、
上記制御プログラム編集手段および操作画面編集手段は、未だ対応するデバイスが設定されていない変数を追加する際、当該変数が第1種デバイスに対応するものであるか第2種デバイスに対応するものであるかの初期設定が、互いに異なっていることを特徴とする請求項1、2または3記載の指示データ生成装置。 A control program editing means capable of setting a variable corresponding to a device to be accessed by the instruction as an operand of the instruction of the control program;
An operation screen editing means for setting a variable corresponding to a device whose state is displayed by a component arranged on the operation screen or a device whose state is changed according to an operation on the component; Prepared,
When a device previously associated with the specific address is a first type device, and a device not previously associated with the specific address is a second type device,
The control program editing means and the operation screen editing means correspond to a first type device or a second type device when adding a variable for which a corresponding device is not yet set. 4. The instruction data generation device according to claim 1, wherein the initial settings are different from each other.
上記指示データに含まれるアクセス対象情報の示すデバイスにアクセスして、当該デバイスの内容を、上記指示データに応じて変更するか、上記デバイスの内容を取得するかの少なくとも一方を行うアクセス手段と、
デバイスを特定するアドレスを示すアドレス情報と当該デバイスに対応する変数を特定する識別子との対応関係を記憶するデータベースとを備えていることを特徴とするデータ処理装置。 A data processing device that operates based on instruction data generated by the instruction data generation device according to any one of claims 1 to 5,
Access means for accessing the device indicated by the access target information included in the instruction data and changing the contents of the device according to the instruction data or acquiring the contents of the device;
A data processing apparatus, comprising: a database for storing a correspondence relationship between address information indicating an address for specifying a device and an identifier for specifying a variable corresponding to the device.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005373632A JP4778312B2 (en) | 2005-12-26 | 2005-12-26 | Data processing device, program, editor device, and recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005373632A JP4778312B2 (en) | 2005-12-26 | 2005-12-26 | Data processing device, program, editor device, and recording medium |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007179114A true JP2007179114A (en) | 2007-07-12 |
JP4778312B2 JP4778312B2 (en) | 2011-09-21 |
Family
ID=38304272
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005373632A Active JP4778312B2 (en) | 2005-12-26 | 2005-12-26 | Data processing device, program, editor device, and recording medium |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4778312B2 (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110442078A (en) * | 2019-08-06 | 2019-11-12 | 胜业电气股份有限公司 | Industrial control method and industrial control equipment based on programmable controller |
CN113179656A (en) * | 2019-11-26 | 2021-07-27 | 东芝三菱电机产业系统株式会社 | SCADA webpage HMI system |
CN113268042A (en) * | 2021-05-13 | 2021-08-17 | 矿冶科技集团有限公司 | Upper computer program processing method and device and electronic equipment |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10283004A (en) * | 1997-04-04 | 1998-10-23 | Digital Electron Corp | Programmable display device |
JPH113105A (en) * | 1997-06-10 | 1999-01-06 | Denso Corp | Programming device for programmable controller |
JP2002189508A (en) * | 2000-12-20 | 2002-07-05 | Digital Electronics Corp | Controller and recording medium with its program recorded |
JP2003131709A (en) * | 2001-10-25 | 2003-05-09 | Digital Electronics Corp | Control display system, control program and recording medium storing the program |
JP2003295912A (en) * | 2003-04-23 | 2003-10-17 | Digital Electronics Corp | Editor device for recording medium recording editor program |
JP2005141563A (en) * | 2003-11-07 | 2005-06-02 | Digital Electronics Corp | Editor apparatus, program for operating computer as editor apparatus, and recording medium |
-
2005
- 2005-12-26 JP JP2005373632A patent/JP4778312B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH10283004A (en) * | 1997-04-04 | 1998-10-23 | Digital Electron Corp | Programmable display device |
JPH113105A (en) * | 1997-06-10 | 1999-01-06 | Denso Corp | Programming device for programmable controller |
JP2002189508A (en) * | 2000-12-20 | 2002-07-05 | Digital Electronics Corp | Controller and recording medium with its program recorded |
JP2003131709A (en) * | 2001-10-25 | 2003-05-09 | Digital Electronics Corp | Control display system, control program and recording medium storing the program |
JP2003295912A (en) * | 2003-04-23 | 2003-10-17 | Digital Electronics Corp | Editor device for recording medium recording editor program |
JP2005141563A (en) * | 2003-11-07 | 2005-06-02 | Digital Electronics Corp | Editor apparatus, program for operating computer as editor apparatus, and recording medium |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110442078A (en) * | 2019-08-06 | 2019-11-12 | 胜业电气股份有限公司 | Industrial control method and industrial control equipment based on programmable controller |
CN113179656A (en) * | 2019-11-26 | 2021-07-27 | 东芝三菱电机产业系统株式会社 | SCADA webpage HMI system |
CN113268042A (en) * | 2021-05-13 | 2021-08-17 | 矿冶科技集团有限公司 | Upper computer program processing method and device and electronic equipment |
CN113268042B (en) * | 2021-05-13 | 2022-06-24 | 矿冶科技集团有限公司 | Upper computer program processing method and device and electronic equipment |
Also Published As
Publication number | Publication date |
---|---|
JP4778312B2 (en) | 2011-09-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110249274B (en) | Program development system for industrial controller and data sharing method thereof | |
JP4850556B2 (en) | Program creation support apparatus and method | |
JP6065008B2 (en) | Control device | |
JP6372308B2 (en) | Information processing apparatus, information processing method, information processing program, and recording medium | |
JP2009146229A (en) | Programmable controller system | |
JP4778312B2 (en) | Data processing device, program, editor device, and recording medium | |
JP5444112B2 (en) | Plant control system and program relocate method | |
JP6292096B2 (en) | Programmable controller system and its support device | |
CN111095194A (en) | Control system, controller and control method | |
JP2011081430A (en) | Design support device | |
JP2010198562A (en) | Method and device of creating control program | |
JP2006294011A (en) | Control program development support apparatus | |
JP2009230572A (en) | Design support device | |
JP6119452B2 (en) | Programmable controller system, its support device, programmable controller, program | |
US8050784B2 (en) | Integrated programmer reference for industrial control device data | |
JPH09153067A (en) | Hypermedia document havigation system | |
JP2009059212A (en) | Pod screen generator, and program therefor | |
CN111651142B (en) | Configuration type demonstrator management system | |
JP2009157534A (en) | Programming support system, its programmable controller support device, and programmable indicator support device | |
KR101085114B1 (en) | System for providing programable logic controller software development environment | |
CN116126366B (en) | Chip input/output interface configuration method, device, medium and electronic equipment | |
JP2724242B2 (en) | Automatic program generator with macro block diagram processing function | |
JP2007179113A (en) | Control device, program generating device thereof, program and recording medium therefor | |
JP2004199524A (en) | Apparatus and method for control program generation, and program product | |
JPH0546608A (en) | Document processor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20081009 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100114 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100119 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100311 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100713 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100906 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20110201 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20110408 |
|
A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20110419 |
|
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: 20110621 |
|
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: 20110701 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4778312 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: 20140708 Year of fee payment: 3 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |