WO2014162575A1 - エンジニアリングツールおよびプログラマブルロジックコントローラ - Google Patents

エンジニアリングツールおよびプログラマブルロジックコントローラ Download PDF

Info

Publication number
WO2014162575A1
WO2014162575A1 PCT/JP2013/060397 JP2013060397W WO2014162575A1 WO 2014162575 A1 WO2014162575 A1 WO 2014162575A1 JP 2013060397 W JP2013060397 W JP 2013060397W WO 2014162575 A1 WO2014162575 A1 WO 2014162575A1
Authority
WO
WIPO (PCT)
Prior art keywords
label
program
engineering tool
setting
individual process
Prior art date
Application number
PCT/JP2013/060397
Other languages
English (en)
French (fr)
Inventor
田中 修一
Original Assignee
三菱電機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to PCT/JP2013/060397 priority Critical patent/WO2014162575A1/ja
Priority to KR1020157020410A priority patent/KR101689099B1/ko
Priority to US14/767,982 priority patent/US20160085226A1/en
Priority to CN201380075347.6A priority patent/CN105074594B/zh
Priority to DE112013006802.8T priority patent/DE112013006802T5/de
Priority to JP2013541532A priority patent/JP5496429B1/ja
Priority to TW102131515A priority patent/TWI499877B/zh
Publication of WO2014162575A1 publication Critical patent/WO2014162575A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/056Programming the PLC
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13004Programming the plc
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/10Plc systems
    • G05B2219/13Plc programming
    • G05B2219/13034Operator interface derived from comment label in program

Definitions

  • the present invention relates to an engineering tool and a programmable logic controller.
  • the engineering tool is a tool for editing a sequence program that is operated by a programmable logic controller (PLC) system or the like.
  • PLC programmable logic controller
  • an engineering tool for example, a tool for specifying a device by selecting a label and editing a sequence program is known. Labels are pre-assigned to devices.
  • the engineering tool manages label settings in the label editor. Conventionally, the setting of a label in the label editor includes the definition of a label name and a data type.
  • the present invention has been made in view of the above, and makes it possible to easily set and manage individual processes for devices, to easily edit programs, and to further reduce the size of a sequence program.
  • the purpose is to obtain a tool and a programmable logic controller.
  • the present invention specifies a device by selecting a label assigned to the device, and manages a program editing unit that edits a sequence program and the setting of the label
  • a label setting management unit that performs individual processing for the device specified by the label by associating a function corresponding to the individual processing with the label.
  • Process setting means is provided.
  • the label setting management unit can set the function corresponding to the individual processing in association with the label by the individual processing setting means.
  • the label setting management unit can set individual processing for a device in association with a label assigned to the device.
  • the label setting management unit centrally manages the label set for the device and the individual processing.
  • the operator can collectively specify a device and set individual processes by using the label editor.
  • the engineering tool can perform simple setting and management of individual processing for the device and simple program editing. Further, the engineering tool can suppress the size of the sequence program.
  • FIG. 1 is a block diagram showing a schematic configuration of an engineering tool according to an embodiment of the present invention.
  • FIG. 2 is a diagram illustrating a hardware configuration in which an engineering tool is installed.
  • FIG. 3 is a diagram illustrating a system including a programmable logic controller, a personal computer, and a sensor.
  • FIG. 4 is a diagram illustrating an example of an operation screen including a label editor.
  • FIG. 5 is a diagram illustrating a label setting example.
  • FIG. 6 is a diagram illustrating another setting example of the label.
  • FIG. 7 is a diagram for explaining program editing by the engineering tool and transmission of the sequence program to the PLC.
  • FIG. 8 is a diagram illustrating a state in which the sequence program is operating in the PLC.
  • FIG. 1 is a block diagram showing a schematic configuration of an engineering tool according to an embodiment of the present invention.
  • FIG. 2 is a diagram illustrating a hardware configuration in which an engineering tool is installed.
  • FIG. 3 is a diagram
  • FIG. 9 is a diagram for explaining the operation when an error occurs while the sequence program is operating in the PLC.
  • FIG. 10 is a flowchart showing a procedure for converting setting contents managed by the label setting management unit into a program for individual processing.
  • FIG. 11 is a flowchart showing the procedure of the registration process for the range check.
  • FIG. 12 is a flowchart illustrating automatic assignment of error numbers.
  • FIG. 13 is a diagram illustrating an example of error numbers and error messages held by the error number management unit.
  • FIG. 14 is a diagram illustrating an example of functional blocks registered for the range check.
  • FIG. 15 is a diagram showing a main program in which functional blocks are incorporated.
  • FIG. 16 is a diagram showing a system including a PLC, a PC, a display, and a plurality of sensors.
  • FIG. 1 is a block diagram showing a schematic configuration of an engineering tool according to an embodiment of the present invention.
  • FIG. 2 is a diagram illustrating a hardware configuration in which an engineering tool is installed.
  • FIG. 3 is a diagram illustrating a system including a programmable logic controller (PLC), a personal computer (PC), and a sensor.
  • PLC programmable logic controller
  • PC personal computer
  • the engineering tool 10 is a tool for editing a sequence program that is operated by a PLC system including the PLC 21.
  • the engineering tool 10 is realized by hardware in which engineering tool software is installed, for example, the PC 20.
  • the engineering tool 10 transmits the edited sequence program to the PLC 21.
  • the PC 20 is used for connection to a computing device 31, which is a CPU (Central Processing Unit), a ROM (Read Only Memory), a RAM (Random Access Memory), an external storage device, and the like, and a PLC 21.
  • a computing device 31 which is a CPU (Central Processing Unit), a ROM (Read Only Memory), a RAM (Random Access Memory), an external storage device, and the like, and a PLC 21.
  • An interface (I / F) 33, a display device 34 such as a liquid crystal display, an input device 35 such as a keyboard and a mouse, and a bus 36 for data transmission between each unit are provided.
  • the PLC 21 performs control according to the sequence program from the engineering tool 10.
  • the PLC 21 transmits a control signal to an external device to be controlled.
  • the PLC 21 receives the detection signal from the sensor 22 or the like, thereby monitoring the operation state of the external device.
  • the sensor 22 is connected to the PLC 21.
  • the engineering tool 10 includes a program editing unit 11, a label setting management unit 12, and an error number management unit 13.
  • the program editing unit 11 is a functional unit that edits a sequence program.
  • the label setting management unit 12 is a functional unit that manages label settings. The allocation of labels to devices is set according to the configuration of the control target.
  • the program editing unit 11 specifies a device by selecting a label assigned to the device in editing the sequence program.
  • the error number management unit 13 is a functional unit that holds a database for managing error numbers.
  • the error number is a number for identifying an individual process in which an error is detected.
  • the error number management unit 13 holds an error number and an error message indicating error contents in association with each other.
  • FIG. 4 is a diagram showing an example of an operation screen including a label editor.
  • the operation screen is displayed on the display device 34 included in the PC 20.
  • the label editor 14 is displayed in the operation screen by operating a menu bar in the operation screen.
  • the label editor 14 receives an operation for setting a label in the label setting management unit 12.
  • the label editor 14 displays the setting contents of the label managed by the label setting management unit 12.
  • the label editor 14 has a label registration function.
  • the label registration function is a function for registering information that does not involve sequence program processing, such as classes, data types, constant values, variables such as devices and addresses, and comments, using the label name as a key.
  • the label editor 14 has a function of registering the sequence program process for each label as a function other than the label registration function.
  • the program editor (not shown) is displayed in the operation screen by operating the menu bar in the operation screen.
  • the program editor accepts an operation for program editing.
  • the program editor displays the contents of the sequence program being edited by the program editing unit 11.
  • the label editor 14 includes a worksheet composed of rows and columns. For example, a sheet heading “Local label setting” is attached to the worksheet. Each row of the worksheet has a row number. The row number of the worksheet represents a local label number assigned to each label.
  • ⁇ ⁇ ⁇ Label is defined by each item of “Class”, “Label name” and “Data type”. Each item of “constant value”, “device”, and “address” relates to a device to which a label is assigned.
  • the item “Function” represents individual processing for a device as a function corresponding to the individual processing.
  • Each item of “first argument”, “second argument”, and “third argument” represents an argument that is attached information of individual processing.
  • “comment” item a supplementary explanation about the setting of the label is written.
  • arguments such as “first argument”, “second argument”, and “third argument”, the “function” itself can change the operation range and the like using the argument as a parameter.
  • the individual process setting means sets the individual process for the device specified by the label by associating the function corresponding to the individual process with the label.
  • FIG. 5 is a diagram showing a label setting example.
  • a label “Bottle_Beer” set for the liquid amount of the beer bottle and a label “Bottle_Juice” set for the liquid amount of the juice bottle are shown.
  • the label of the local label number “1” is defined as a class “VAR”, a label name “Bottle_Beer”, and a data type “word [signed]”.
  • the label of the local label number “2” is defined as a class “VAR”, a label name “Bottle_Juice”, and a data type “word [signed]”.
  • Range check set in these two labels represents a function for checking whether or not the liquid amount falls within a certain range.
  • the individual process by this function is a monitoring process for monitoring the operation state of the control target by the sequence program by comparing with the actual use range.
  • the individual process setting means can set the function corresponding to the individual process as the association with the label.
  • the first argument represents the minimum value of the liquid volume range that is the actual use range.
  • the second argument represents the maximum value of the liquid amount range that is the actual use range.
  • the first argument and the second argument are arguments that are attached information for individual processing.
  • the individual process setting means can set an argument that is attached information of the individual process as an association with the label.
  • the third argument represents the setting for assigning an error number to the error detected by the range check.
  • the third argument “ErrAuto” represents that an error number is automatically assigned.
  • the individual process setting means can set an operation for registering information for identifying an individual process in which an error is detected as an association with a label for the individual process that is a monitoring process. In this example, individual processing in which the operation state of the control target is out of the actual use range is treated as an error.
  • the error number management unit 13 provides an error number for each of the labels “Bottle_Beer” and “Bottle_Juice”. In response to the third argument “ErrAuto”, the error number management unit 13 appropriately assigns an empty number whose label is not registered to each label of the label setting management unit 12. When a numerical value is set as the third argument, the individual process setting unit sets the numerical value as an error number as it is.
  • the engineering tool 10 is not limited to the case where an individual process in which the operation state of the control target is deviated from the actual use range is handled as an error for the individual process for monitoring the operation state of the control target by comparison with the actual use range.
  • the engineering tool 10 may replace the handling as an error with the handling of a warning or interrupt process.
  • the individual process setting means can set an operation when registering a warning number or an interrupt process ID as information to identify an individual process whose operation state is out of the actual use range as an association with a label. .
  • FIG. 6 is a diagram illustrating another setting example of the label.
  • the individual process setting means sets a multiplication function.
  • the first argument represents a numerical value to be multiplied by the label name “Local_Label1”.
  • the second argument represents the multiplication result.
  • the individual process setting means can set any function as an individual process for a device.
  • the function that can be set by the individual process setting means is not limited to the function that uses an argument as the auxiliary information of the individual process.
  • the individual treatment setting means may set a function that does not require an argument.
  • FIG. 7 is a diagram for explaining program editing by the engineering tool and transmission of the sequence program to the PLC.
  • Liquid is injected into the bottle 23 by an external device controlled by the PLC 21.
  • the sensor 22 detects the amount of liquid poured toward the bottle 23.
  • a label is set in the label setting management unit 12 as shown in FIG. 5 by an operation on the label editor 14.
  • the program editing unit 11 converts the function associated with the label in the label setting management unit 12 into a program and incorporates it into the sequence program.
  • the program editing unit 11 converts the function corresponding to the label “Bottom_Beer” read from the label setting management unit 12 into the function block FB-1.
  • the program editing unit 11 converts the function corresponding to the label “Bottle_Juice” read from the label setting management unit 12 into the function block FB-2.
  • the program editing unit 11 registers FB-1 and FB-2 in the main program 15 (A-1).
  • the label setting management unit 12 instructs the error number management unit 13 to provide an error number (A-1).
  • the error number management unit 13 appropriately provides an empty number whose label is not registered to the label of the label setting management unit 12. For example, the error number management unit 13 assigns the error number “1” to the label “Bottle_Beer”. The error number management unit 13 assigns the error number “2” to the label “Bottle_Juice”.
  • the program editing unit 11 assigns the error number provided from the error number management unit 13 to the label.
  • the program editing unit 11 registers the error number assigned to the label in the error number management unit 13 together with the error message.
  • the program editing unit 11 outputs the main program 15 in which FB-1 including the error number “1” and FB-2 including the error number “2” are incorporated.
  • the PC 20 transmits a sequence program including the main program 15 to the PLC 21 (A-2).
  • FIG. 8 is a diagram showing a state in which the sequence program is operating in the PLC.
  • the program execution unit 16 executes a sequence program including the main program 15.
  • the program execution unit 16 executes control for range check according to FB-1 and FB-2.
  • the PLC 21 detects the amount of liquid poured toward the bottle 23 by the sensor 22.
  • FIG. 9 is a diagram for explaining the operation when an error occurs while the sequence program is operating in the PLC.
  • the sensor 22 outputs the detection result to the PLC as needed (B-1). For example, when the bottle 23 is a juice bottle, a liquid amount of 260 ml is detected by the sensor 22.
  • the PLC 21 transmits the error number “2” to the PC 20.
  • the error number management unit 13 collates the error number transmitted from the PLC 21 to the PC 20 with the error number managed by itself (B-2).
  • the error number management unit 13 holds an error message corresponding to the error number “2”. Such an error message represents an error content indicating that the amount of liquid for the juice bottle has exceeded the actual use range.
  • the PC 20 reads the error message corresponding to the error number “2” from the error number management unit 13. From this error message, the PC 20 grasps that the amount of liquid for the juice bottle has exceeded the actual use range. The PC 20 displays the content of the error message on the operation screen.
  • the PLC 21 can reduce the burden of individually preparing means for dealing with errors for each individual process.
  • the PLC 21 can easily troubleshoot.
  • the error number may be assigned on the engineering tool 10 side or on the PLC 21 side.
  • FIG. 10 is a flowchart showing a procedure for converting the setting contents managed by the label setting management unit into a program for individual processing. It is assumed that the label setting management unit 12 can manage labels from local label numbers 1 to N. N, which is the maximum value of the local label number, is a value according to the specification of the label setting management unit 12. However, N is an integer of 2 or more.
  • the program editing unit 11 sequentially reads “function” of each local label number.
  • the program editing unit 11 determines the “function” read for each local label number, and performs a registration process for registering the function block.
  • the “function” refers to a calculation or control process in a sequence program for a specific label.
  • the program editing unit 11 performs a function block registration process for the range check.
  • the program editing unit 11 performs a function block registration process for multiplication.
  • the program editing unit 11 performs a function block registration process for division.
  • the program editing unit 11 performs registration processing according to “function” for all local label numbers. If there is no entry in “Function”, the program editing unit 11 does nothing about the registration process.
  • the program editing unit 11 determines whether or not there is an abnormality in the registration process after completing the function block registration process for all the local label numbers. If there is no abnormality in all the registration processing, the program editing unit 11 ends the conversion processing from the function set in the label setting management unit 12 to the program for individual processing as normal.
  • the program editing unit 11 performs an abnormal message process on the assumption that the conversion process is abnormal.
  • the abnormal message process is a process for displaying a message indicating that the conversion process is abnormal, for example, on the operation screen. Thereby, the program editing unit 11 ends the conversion process from the function set in the label setting management unit 12 to the program for the individual process as abnormal.
  • FIG. 11 is a flowchart showing the procedure of the registration process for the range check.
  • the program editing unit 11 determines whether or not the first argument and the second argument are values within the range of the specified data type (step S1). When the first argument and the second argument are not values within the range (step S1, No), the program editing unit 11 determines that the registration process is abnormal (step S7).
  • step S1 When the first argument and the second argument are values within the range (step S1, Yes), the program editing unit 11 determines whether or not the relationship of first argument ⁇ second argument is satisfied (step S2). ). In steps S1 and S2, the program editing unit 11 checks whether or not values that can be correctly checked for the range are set as the first argument and the second argument.
  • step S7 the program editing unit 11 determines that the registration process is abnormal (step S7).
  • step S3 the program editing unit 11 determines whether the third argument is a number. It is assumed that the third argument is either a numerical value that is an error number or “ErrAuto”. In step S3, the program editing unit 11 determines whether or not to automatically assign an error number.
  • step S3 If the third argument is a number (step S3, Yes), the program editing unit 11 registers the number as an error number in the error number management unit 13 (step S5). If the third argument is not a number (No at Step S3), that is, if “ErrAuto”, the program editing unit 11 acquires a free number from the error number management unit 13. The program editing unit 11 automatically assigns an error number for the range check by adopting the empty number as an error number as it is (step S4). The program editing unit 11 registers the error number in the error number management unit 13 (step S5). As described above, the program editing unit 11 can automatically register the error number for each function. Thereby, the engineering tool 10 can register an error number easily.
  • FIG. 12 is a flowchart for explaining the automatic assignment of error numbers.
  • the program editing unit 11 acquires an error number in which an error message indicating the error content is not registered in the error number management unit 13 (step S11).
  • the program editing unit 11 sets the error number acquired in step S11 as a return value to the error number management unit 13 (step S12).
  • FIG. 13 is a diagram showing an example of error numbers and error messages held by the error number management unit.
  • a character string “(label name) _ (function abbreviation) _Error” is registered as an error message.
  • “Over” is an abbreviated function name for “range check”.
  • “Bottle_Beer_Over_Error” registered in the error number “1” is an error message indicating an error content indicating that the liquid amount for the beer bottle exceeds the actual use range.
  • “Bottle_Juice_Over_Error” registered in the error number “2” is an error message indicating an error content indicating that the liquid amount with respect to the juice bottle has exceeded the actual use range.
  • the engineering tool 10 can register an error number according to the setting of the label setting management unit 12 in the registration process for the range check.
  • the engineering tool 10 can easily manage error numbers without separately registering error numbers.
  • the program editing unit 11 registers the function block (FB) for the range check in the main program 15 (see FIG. 7) (step S6). After step S6 or step S7, the program editing unit 11 ends the registration process for the range check.
  • FIG. 14 is a diagram illustrating an example of functional blocks registered for the range check.
  • the program editing unit 11 uses the values set in the label setting management unit 12 to generate functional blocks.
  • the FB-1 registered for the local label number “1” is generated using each value set for the label “Bottle_Beer”, for example, “Bottle_Beer”, “0”, “350”.
  • the FB-2 registered for the local label number “2” is generated using each value set for the label “Bottle_Juice”, for example, “Bottle_Juice”, “0”, “250”.
  • “ERROR_NO” included in FB-1 and FB-2 is a label variable indicating an error number set in the PLC 21 when an error occurs.
  • FIG. 15 is a diagram showing a main program in which functional blocks are incorporated.
  • the program editing unit 11 generates a main program 15 in which FB-1 and FB-2 shown in FIG. 14 are incorporated, by converting the function associated with the label in the label setting management unit 12 into a program. .
  • the engineering tool 10 enables individual processing for a device specified by a label to be set in association with the label by a function corresponding to the individual processing by an individual processing setting unit.
  • the engineering tool 10 can eliminate the need for setting individual check logic in the user program itself such as a ladder.
  • the engineering tool 10 can reduce the size of the sequence program. The operator can reduce the burden of editing the sequence program.
  • the engineering tool 10 centrally manages the label set for the device and the individual processing in the label setting management unit 12.
  • the operator can collectively specify a device and set individual processes by using the label editor.
  • the labels are usually registered with the label names distinguished or arranged in accordance with the processing contents and the devices to be controlled.
  • the label name is distinguished according to the processing content by adding “Bottle” or the like to the head of the label name, for example.
  • the label editor 14 can easily display (sorting) the labels for each label name. . In such display, the operator can easily register the process (function) for the label by the same input as the table input.
  • an operator can efficiently register a process (function) for a specific label as compared with a conventional method that requires programming by an editor for each label. Furthermore, the operator can easily confirm the contents of the processes registered so far by sorting the labels with the label editor 14.
  • the engineering tool 10 can easily set and manage individual processes for devices and easily edit programs. Further, the engineering tool 10 can suppress the size of the sequence program.
  • the PLC 21 can perform control based on the setting in the individual processing setting means of the engineering tool 10.
  • the PLC 21 can perform efficient control by executing a sequence program with a reduced size.
  • FIG. 16 is a diagram showing a system including a PLC, a PC, a display, and a plurality of sensors.
  • the display 24 and the plurality of sensors 22 are connected to the PLC 21.
  • the display unit 24 displays the operating state of the external device to be controlled, and sets and operates each device.
  • the plurality of sensors 22 are various sensors that detect the operating state of the external device.
  • the plurality of sensors 22 include, for example, a vision sensor, a pressure sensor, a proximity sensor, and the like.
  • the engineering tool 10 edits a sequence program that is operated by the PLC system including the display 23 or the plurality of sensors 22. Also in this case, the engineering tool 10 can perform simple setting and management of individual processing for a device and simple program editing. Further, the engineering tool 10 can suppress the size of the sequence program.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Programmable Controllers (AREA)

Abstract

 エンジニアリングツール(10)は、デバイスに割り当てられているラベルの選択によって前記デバイスを指定し、シーケンスプログラムを編集するプログラム編集部(11)と、前記ラベルの設定を管理するラベル設定管理部(12)と、を有し、前記ラベル設定管理部(12)は、前記ラベルによって指定される前記デバイスに対する個別処理を、前記個別処理に応じた機能を前記ラベルに対応付けることにより設定可能とする個別処理設定手段を備える。

Description

エンジニアリングツールおよびプログラマブルロジックコントローラ
 本発明は、エンジニアリングツールおよびプログラマブルロジックコントローラに関する。
 エンジニアリングツールは、プログラマブルロジックコントローラ(PLC)システム等で動作させるシーケンスプログラムを編集するツールである。エンジニアリングツールとしては、例えば、ラベルの選択によってデバイスを指定し、シーケンスプログラムを編集するものが知られている。ラベルは、デバイスにあらかじめ割り当てられている。エンジニアリングツールは、ラベルエディタにおいて、ラベルの設定を管理する。従来、ラベルエディタにおけるラベルの設定には、ラベル名およびデータ型の定義が含まれる。
 従来のラベルエディタを使用する場合において、ラベルによって指定されるデバイスに対する個別処理については、ラベルエディタによる作業とは別に、プログラムエディタ等でのプログラミングによる設定を要することとなる。このため、デバイスに対する個別処理の設定および管理が複雑となることや、プログラム編集が複雑となること、シーケンスプログラムのサイズが増大することが問題となる。
特開平10-63315号公報
 本発明は、上記に鑑みてなされたものであって、デバイスに対する個別処理の簡易な設定および管理と、簡易なプログラム編集とを可能とし、また、さらにはシーケンスプログラムのサイズを抑制可能とするエンジニアリングツールおよびプログラマブルロジックコントローラを得ることを目的とする。
 上述した課題を解決し、目的を達成するために、本発明は、デバイスに割り当てられているラベルの選択によって前記デバイスを指定し、シーケンスプログラムを編集するプログラム編集部と、前記ラベルの設定を管理するラベル設定管理部と、を有し、前記ラベル設定管理部は、前記ラベルによって指定される前記デバイスに対する個別処理を、前記個別処理に応じた機能を前記ラベルに対応付けることにより設定可能とする個別処理設定手段を備えることを特徴とする。
 本発明によれば、ラベルによって指定されるデバイスに対する個別処理について、ラベル設定管理部は、個別処理設定手段により、個別処理に応じた機能をラベルに対応付けて設定可能とする。ラベル設定管理部は、デバイスに対する個別処理を、デバイスに割り当てられているラベルに紐付けて設定可能とする。ラベル設定管理部は、デバイスに対し設定されているラベルと個別処理とを一元管理する。作業者は、ラベルエディタを使用する作業によって、デバイスの指定と個別処理の設定とを一括して行うことができる。これにより、エンジニアリングツールは、デバイスに対する個別処理の簡易な設定および管理と、簡易なプログラム編集とが可能となる。また、エンジニアリングツールは、シーケンスプログラムのサイズを抑制させることができる。
図1は、本発明の実施の形態にかかるエンジニアリングツールの概略構成を示すブロック図である。 図2は、エンジニアリングツールがインストールされたハードウェア構成を示す図である。 図3は、プログラマブルロジックコントローラ、パーソナルコンピュータおよびセンサを含むシステムを示す図である。 図4は、ラベルエディタを含む操作画面の一例を示す図である。 図5は、ラベルの設定例を示す図である。 図6は、ラベルの他の設定例を示す図である。 図7は、エンジニアリングツールによるプログラム編集と、PLCへのシーケンスプログラムの送信とを説明する図である。 図8は、PLCにおいてシーケンスプログラムが動作している状態を示す図である。 図9は、PLCにおいてシーケンスプログラムが動作している間にエラーが発生したときの動作を説明する図である。 図10は、ラベル設定管理部が管理する設定内容を、個別処理のためのプログラムへ変換するための手順を示すフローチャートである。 図11は、範囲チェックについての登録処理の手順を示すフローチャートである。 図12は、エラー番号の自動付与について説明するフローチャートである。 図13は、エラー番号管理部が保持するエラー番号およびエラーメッセージの例を示す図である。 図14は、範囲チェックについて登録される機能ブロックの例を示す図である。 図15は、機能ブロックが組み込まれたメインプログラムを示す図である。 図16は、PLC、PC、表示器および複数のセンサを含むシステムを示す図である。
 以下に、本発明にかかるエンジニアリングツールおよびプログラマブルロジックコントローラの実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態.
 図1は、本発明の実施の形態にかかるエンジニアリングツールの概略構成を示すブロック図である。図2は、エンジニアリングツールがインストールされたハードウェア構成を示す図である。図3は、プログラマブルロジックコントローラ(PLC)、パーソナルコンピュータ(PC)およびセンサを含むシステムを示す図である。
 エンジニアリングツール10は、PLC21を含むPLCシステムで動作させるシーケンスプログラムを編集するツールである。エンジニアリングツール10は、エンジニアリングツールソフトウェアがインストールされたハードウェア、例えばPC20で実現される。エンジニアリングツール10は、編集されたシーケンスプログラムをPLC21へ送信する。
 PC20は、例えば、CPU(Central Processing Unit)である演算装置31、ROM(Read Only Memory)、RAM(Random Access Memory)、外部記憶装置などにより構成される記憶装置32、PLC21との接続のためのインタフェース(I/F)33、液晶ディスプレイなどの表示装置34、キーボードやマウスなどの入力装置35、各部の間のデータ伝送のためのバス36を備えている。
 PLC21は、エンジニアリングツール10からのシーケンスプログラムに応じた制御を実施する。PLC21は、制御対象である外部機器へ制御信号を送信する。PLC21は、センサ22等からの検出信号を受信することで、外部機器の動作状態を監視する。センサ22は、PLC21に接続されている。
 エンジニアリングツール10は、プログラム編集部11、ラベル設定管理部12およびエラー番号管理部13を有する。プログラム編集部11は、シーケンスプログラムを編集する機能部である。ラベル設定管理部12は、ラベルの設定を管理する機能部である。デバイスに対するラベルの割り当ては、制御対象の構成等に応じて設定されている。プログラム編集部11は、シーケンスプログラムの編集において、デバイスに割り当てられているラベルの選択によってデバイスを指定する。
 エラー番号管理部13は、エラー番号を管理するデータベースを保持する機能部である。エラー番号は、エラーが検出された個別処理を識別するための番号とする。エラー番号管理部13は、エラー番号と、エラー内容を示すエラーメッセージとを対応付けて保持する。
 図4は、ラベルエディタを含む操作画面の一例を示す図である。操作画面は、PC20が備える表示装置34に表示される。ラベルエディタ14は、操作画面内のメニューバーの操作等によって、操作画面内に表示される。ラベルエディタ14は、ラベル設定管理部12へのラベルの設定のための操作を受け付ける。また、ラベルエディタ14は、ラベル設定管理部12が管理しているラベルの設定内容を表示する。
 ラベルエディタ14は、ラベル登録機能を有している。ラベル登録機能は、ラベル名をキーとして、クラス、データ型、定数値、デバイスやアドレス等の変数、コメントなどの、シーケンスプログラム処理を伴わない情報を登録する機能である。また、ラベルエディタ14は、ラベル登録機能以外の機能として、ラベルごとにシーケンスプログラム処理を登録する機能を有している。
 不図示のプログラムエディタは、操作画面内のメニューバーの操作等によって、操作画面内に表示される。プログラムエディタは、プログラム編集のための操作を受け付ける。また、プログラムエディタは、プログラム編集部11が編集しているシーケンスプログラムの内容を表示する。
 ラベルエディタ14は、行および列で構成されるワークシートを備える。ワークシートには、例えば、「ローカルラベル設定」と記されたシート見出しが付されている。ワークシートの各行には、行番号が記されている。ワークシートの行番号は、ラベルごとに付されるローカルラベル番号を表している。
 図示するワークシートの各列には、左から順に、「クラス」、「ラベル名」、「データ型」、「定数値」、「デバイス」、「アドレス」、「ファンクション」、「第1引数」、「第2引数」、「第3引数」および「コメント」の項目名がそれぞれ記されている。
 ラベルは、「クラス」、「ラベル名」および「データ型」の各項目により定義される。「定数値」、「デバイス」および「アドレス」の各項目は、ラベルが割り当てられているデバイスに関する。
 「ファンクション」の項目は、デバイスに対する個別処理を、個別処理に応じた機能として表している。「第1引数」、「第2引数」および「第3引数」の各項目は、個別処理の付属情報とする引数を表している。「コメント」の項目には、ラベルの設定についての補足説明等が記される。「第1引数」、「第2引数」および「第3引数」等の引数を用いることで、「ファンクション」自体が、引数をパラメータとして動作範囲等を変えることが可能とされている。
 ラベルエディタ14のうち、「ファンクション」、「第1引数」、「第2引数」および「第3引数」の項目の列からなる部分は、ラベル設定管理部12のうちの個別処理設定手段として機能する。個別処理設定手段は、ラベルによって指定されるデバイスに対する個別処理を、個別処理に応じた機能をラベルに対応付けることにより設定する。
 図5は、ラベルの設定例を示す図である。この例では、ビールボトルの液量に関して設定されたラベル「Bottle_Beer」と、ジュースボトルの液量に関して設定されたラベル「Bottle_Juice」を示している。
 ローカルラベル番号「1」のラベルは、クラス「VAR」、ラベル名「Bottle_Beer」、データ型「ワード[符号付き]」と定義されている。ローカルラベル番号「2」のラベルは、クラス「VAR」、ラベル名「Bottle_Juice」、データ型「ワード[符号付き]」と定義されている。
 この2つのラベルに設定されている「範囲チェック」は、液量がある範囲内に含まれるか否かをチェックする機能を表す。この機能による個別処理は、シーケンスプログラムによる制御対象の動作状態を実使用範囲との比較により監視するための監視処理である。個別処理設定手段は、個別処理に応じた機能を、ラベルへの対応付けとして設定可能とする。
 第1引数は、実使用範囲とする液量の範囲の最小値を表す。第2引数は、実使用範囲とする液量の範囲の最大値を表す。第1引数および第2引数は、個別処理の付属情報とする引数である。個別処理設定手段は、個別処理の付属情報とする引数を、ラベルへの対応付けとして設定可能とする。
 第3引数は、範囲チェックにて検出されたエラーに対するエラー番号の付与についての設定を表す。第3引数「ErrAuto」は、エラー番号を自動的に付与することを表す。個別処理設定手段は、監視処理である個別処理について、エラーが検出された個別処理を識別するための情報を登録する際の動作を、ラベルへの対応付けとして設定可能とする。この例では、制御対象の動作状態が実使用範囲から外れた個別処理を、エラーとして扱う。
 図5に示すラベルの設定例によると、ラベル「Bottle_Beer」によって指定されるデバイスに対しては、ビールボトルの液量が0mlから350mlの範囲に含まれるか否かをチェックする個別処理がプログラミングされる。このプログラムによる個別処理では、液量が0mlから350mlの範囲を超える場合をエラーとする。プログラム編集部11は、この個別処理について、エラー番号を自動的に付与する。
 ラベル「Bottle_Juice」によって指定されるデバイスに対しては、ジュースボトルの液量が0mlから250mlの範囲に含まれるか否かをチェックする個別処理がプログラミングされる。このプログラムによる個別処理では、液量が0mlから250mlの範囲を超える場合をエラーとする。プログラム編集部11は、この個別処理について、エラー番号を自動的に付与する。
 エラー番号管理部13は、ラベル「Bottle_Beer」および「Bottle_Juice」に対し、それぞれエラー番号を提供する。第3引数「ErrAuto」に応じて、エラー番号管理部13は、ラベルが未登録である空き番号を、ラベル設定管理部12の各ラベルに適宜割り当てる。なお、第3引数として数値が設定されている場合、個別処理設定手段は、当該数値をそのままエラー番号として設定する。
 エンジニアリングツール10は、制御対象の動作状態を実使用範囲との比較により監視する個別処理について、制御対象の動作状態が実使用範囲から外れた個別処理をエラーとして扱う場合に限られない。エンジニアリングツール10は、例えば、エラーとしての扱いを、警告や割り込み処理の対象とする扱いに代えても良い。個別処理設定手段は、動作状態が実使用範囲から外れた個別処理を識別するための情報として、ワーニング番号や割り込み処理のIDを登録する際の動作を、ラベルへの対応付けとして設定可能とする。
 個別処理設定手段によって設定される個別処理は、範囲チェックに限られない。図6は、ラベルの他の設定例を示す図である。この例では、個別処理設定手段は、掛け算の機能を設定する。第1引数は、ラベル名「Local_Label1」に乗算される数値を表す。第2引数は、乗算結果を表す。この例では、D0=(Local_Label1)×3の演算を実施する個別処理がプログラミングされる。
 個別処理設定手段は、デバイスに対する個別処理として、いずれの機能も設定可能であるものとする。個別処理設定手段が設定可能な機能は、個別処理の付属情報として引数を使用するものに限られない。個別処置設定手段は、引数を不要とする機能を設定することとしても良い。
 次に、図7から図9を参照して、エンジニアリングツールおよびPLCの動作手順について説明する。図7は、エンジニアリングツールによるプログラム編集と、PLCへのシーケンスプログラムの送信とを説明する図である。ボトル23には、PLC21が制御する外部機器によって、液体が注入される。センサ22は、ボトル23へ向けて注がれた液体の量を検出する。
 例えば、ラベルエディタ14への操作により、ラベル設定管理部12には、図5に示すようにラベルが設定されている。ラベルエディタ14のラベルがプログラムエディタへ貼り付けられることで、プログラム編集部11は、ラベル設定管理部12にてラベルに対応付けられている機能をプログラムに変換し、シーケンスプログラムに組みこむ。
 プログラム編集部11は、ラベル設定管理部12から読み出されたラベル「Bottle_Beer」に対応する機能を、機能ブロックであるFB-1へ変換する。プログラム編集部11は、ラベル設定管理部12から読み出されたラベル「Bottle_Juice」に対応する機能を、機能ブロックであるFB-2へ変換する。プログラム編集部11は、メインプログラム15にFB-1およびFB-2を登録する(A-1)。
 図5に示す第3引数「ErrAuto」に応じて、ラベル設定管理部12は、エラー番号管理部13に対し、エラー番号の提供を指示する(A-1)。エラー番号管理部13は、ラベルが未登録である空き番号を、ラベル設定管理部12のラベルに適宜提供する。例えば、エラー番号管理部13は、ラベル「Bottle_Beer」に、エラー番号「1」を割り当てる。エラー番号管理部13は、ラベル「Bottle_Juice」に、エラー番号「2」を割り当てる。
 プログラム編集部11は、エラー番号管理部13から提供されたエラー番号をラベルに付与する。プログラム編集部11は、ラベルに付与したエラー番号を、エラーメッセージとともに、エラー番号管理部13へ登録する。プログラム編集部11は、エラー番号「1」を含むFB-1、エラー番号「2」を含むFB-2が組み込まれたメインプログラム15を出力する。PC20は、メインプログラム15を含むシーケンスプログラムを、PLC21へ送信する(A-2)。
 図8は、PLCにおいてシーケンスプログラムが動作している状態を示す図である。プログラム実行部16は、メインプログラム15を含むシーケンスプログラムを実行する。プログラム実行部16は、FB-1およびFB-2に応じて、範囲チェックのための制御を実行する。PLC21は、ボトル23へ向けて注がれた液体の量を、センサ22によって検出する。
 図9は、PLCにおいてシーケンスプログラムが動作している間にエラーが発生したときの動作を説明する図である。センサ22は、検出結果を随時PLCへ出力する(B-1)。例えば、ボトル23がジュースボトルである場合において、液量260mlがセンサ22によって検出されたとする。
 このときのセンサ22からの検出結果を受けて、PLC21には、プログラム実行部16でのFB-2に応じた処理によって、エラー番号「2」(ERROR_NO=2)がセットされる。PLC21は、PC20へエラー番号「2」を送信する。エラー番号管理部13は、PLC21からPC20へ送信されたエラー番号と、自身が管理するエラー番号とを照合する(B-2)。
 エラー番号管理部13は、エラー番号「2」に対応するエラーメッセージを保持している。かかるエラーメッセージは、ジュースボトルに対する液量が実使用範囲を超えた旨のエラー内容を表す。
 PC20は、エラー番号「2」に対応するエラーメッセージをエラー番号管理部13から読み出す。PC20は、このエラーメッセージから、ジュースボトルに対する液量が実使用範囲を超えたことを把握する。PC20は、エラーメッセージの内容を操作画面に表示する。
 エラー番号管理部13によりエラー番号およびエラーメッセージを管理するエンジニアリングツール10を適用することで、PLC21は、個別処理ごとのエラーへ対処するための手段を個別に用意する負担を軽減することができる。PLC21は、容易なトラブルシュートが可能となる。なお、エラー番号の付与は、エンジニアリングツール10側で実施するほか、PLC21側で実施しても良い。
 図10は、ラベル設定管理部が管理する設定内容を、個別処理のためのプログラムへ変換するための手順を示すフローチャートである。ラベル設定管理部12は、ローカルラベル番号1からNまでのラベルを管理可能であるものとする。ローカルラベル番号の最大値であるNは、ラベル設定管理部12の仕様に応じた値であるものとする。ただし、Nは2以上の整数とする。
 プログラム編集部11は、各ローカルラベル番号の「ファンクション」を順次読み取る。プログラム編集部11は、ローカルラベル番号ごとに読み取った「ファンクション」を判別し、機能ブロックを登録する登録処理を実施する。なお、「ファンクション」は、特定のラベルに対するシーケンスプログラムでの演算や制御処理をいうものとする。
 例えば、「ファンクション」が「範囲チェック」であった場合、プログラム編集部11は、範囲チェックについての機能ブロックの登録処理を実施する。「ファンクション」が「掛け算」であった場合、プログラム編集部11は、掛け算についての機能ブロックの登録処理を実施する。「ファンクション」が「割り算」であった場合、プログラム編集部11は、割り算についての機能ブロックの登録処理を実施する。プログラム編集部11は、全てのローカルラベル番号について、「ファンクション」に応じた登録処理を実施する。「ファンクション」に記入が無い場合、プログラム編集部11は、登録処理については何もしない。
 プログラム編集部11は、全てのローカルラベル番号について機能ブロックの登録処理を終えると、登録処理に異常があったか否かを判断する。全ての登録処理に異常が無い場合、プログラム編集部11は、ラベル設定管理部12に設定されている機能から個別処理のためのプログラムへの変換処理を、正常であるものとして終了する。
 一方、全ての登録処理の中に1つでも異常があった場合、プログラム編集部11は、変換処理が異常であったとして、異常メッセージ処理を実施する。異常メッセージ処理は、変換処理が異常であった旨のメッセージを、例えば操作画面に表示するための処理とする。これにより、プログラム編集部11は、ラベル設定管理部12に設定されている機能から個別処理のためのプログラムへの変換処理を、異常であるものとして終了する。
 次に、機能ブロックの登録処理の詳細について説明する。ここでは、範囲チェックについての機能ブロックの登録処理を例として説明する。範囲チェック以外の機能についての登録処理については、説明を省略する。
 図11は、範囲チェックについての登録処理の手順を示すフローチャートである。プログラム編集部11は、第1引数および第2引数が、指定されているデータ型の範囲内の値であるか否かを判断する(ステップS1)。第1引数および第2引数が、当該範囲内の値でない場合(ステップS1、No)、プログラム編集部11は、登録処理は異常であるものと判定する(ステップS7)。
 第1引数および第2引数が、当該範囲内の値である場合(ステップS1、Yes)、プログラム編集部11は、第1引数≦第2引数の関係が成り立つか否かを判断する(ステップS2)。プログラム編集部11は、ステップS1およびS2では、正しく範囲チェックが可能な値が第1引数および第2引数として設定されているか否かを確認する。
 第1引数≦第2引数の関係が成り立たない場合(ステップS2、No)、プログラム編集部11は、登録処理は異常であるものと判定する(ステップS7)。第1引数≦第2引数の関係が成り立つ場合(ステップS2、Yes)、プログラム編集部11は、第3引数が数字か否かを判断する(ステップS3)。なお、第3引数は、エラー番号とされる数値と、「ErrAuto」のいずれかであるものとする。プログラム編集部11は、ステップS3では、エラー番号を自動付与とするか否かを判断する。
 第3引数が数字である場合(ステップS3、Yes)、プログラム編集部11は、当該数字を、エラー番号としてエラー番号管理部13に登録する(ステップS5)。第3引数が数字でない場合(ステップS3、No)、すなわち「ErrAuto」である場合、プログラム編集部11は、エラー番号管理部13から空き番号を取得する。プログラム編集部11は、空き番号をそのままエラー番号として採用することで、範囲チェックについてエラー番号を自動付与する(ステップS4)。プログラム編集部11は、当該エラー番号をエラー番号管理部13に登録する(ステップS5)。このように、プログラム編集部11は、エラー番号を、機能ごとに自動的に登録可能とする。これにより、エンジニアリングツール10は、エラー番号を簡単に登録することができる。
 図12は、エラー番号の自動付与について説明するフローチャートである。プログラム編集部11は、エラー内容を示すエラーメッセージがエラー番号管理部13において未登録であるエラー番号を取得する(ステップS11)。プログラム編集部11は、ステップS11で取得したエラー番号を、エラー番号管理部13への戻り値に設定する(ステップS12)。
 図13は、エラー番号管理部が保持するエラー番号およびエラーメッセージの例を示す図である。エラー番号管理部13には、「(ラベル名)_(機能略称)_Error」の文字列が、エラーメッセージとして登録されている。この例では、「範囲チェック」については、「Over」を機能略称としている。
 エラー番号「1」に登録されている「Bottle_Beer_Over_Error」は、ビールボトルに対する液量が実使用範囲を超えた旨のエラー内容を示すエラーメッセージである。エラー番号「2」に登録されている「Bottle_Juice_Over_Error」は、ジュースボトルに対する液量が実使用範囲を超えた旨のエラー内容を示すエラーメッセージである。
 エンジニアリングツール10は、範囲チェックについての登録処理において、ラベル設定管理部12の設定に応じてエラー番号を登録可能とする。エンジニアリングツール10は、エラー番号の登録を別途行うこと無く、エラー番号を容易に管理することができる。
 図11に戻って、プログラム編集部11は、範囲チェックについての機能ブロック(FB)を、メインプログラム15(図7参照)に登録する(ステップS6)。ステップS6またはステップS7を経て、プログラム編集部11は、範囲チェックについての登録処理を終了する。
 図14は、範囲チェックについて登録される機能ブロックの例を示す図である。プログラム編集部11は、ラベル設定管理部12に設定されている値を用いて、機能ブロックを生成する。
 例えば、ローカルラベル番号「1」について登録されるFB-1は、ラベル「Bottle_Beer」について設定されている各値、例えば、「Bottle_Beer」、「0」、「350」を用いて生成される。ローカルラベル番号「2」について登録されるFB-2は、ラベル「Bottle_Juice」について設定されている各値、例えば、「Bottle_Juice」、「0」、「250」を用いて生成される。なお、FB-1およびFB-2に含まれる「ERROR_NO」は、エラーが発生した際に、PLC21にてセットされるエラー番号を示すラベル変数とする。
 図15は、機能ブロックが組み込まれたメインプログラムを示す図である。プログラム編集部11は、ラベル設定管理部12にてラベルに対応付けられている機能をプログラムに変換することにより、図14に示すFB-1およびFB-2が組み込まれたメインプログラム15を生成する。
 本発明のエンジニアリングツール10は、ラベルによって指定されるデバイスに対する個別処理について、個別処理設定手段により、個別処理に応じた機能をラベルに対応付けて設定可能とする。エンジニアリングツール10は、ラダーなどのユーザプログラム自体における個別のチェックロジックの設定を不要とすることができる。エンジニアリングツール10は、シーケンスプログラムのサイズの削減が可能となる。作業者は、シーケンスプログラムの編集の負担を軽減できる。
 エンジニアリングツール10は、デバイスに対し設定されているラベルと個別処理とを、ラベル設定管理部12にて一元管理する。作業者は、ラベルエディタを使用する作業によって、デバイスの指定と個別処理の設定とを一括して行うことができる。
 ラベルエディタ14において、ラベルは、通常、処理内容や制御対象とする機器などに応じて、ラベル名が区別あるいは整理されて登録されることが多い。ラベル名は、例えば、ラベル名の先頭に「Bottle」などと付されることで、処理内容にしたがって区別される。ここで、処理内容にしたがって区別されているラベルと同じ処理(ファンクション)をさせたい場合に、ラベルエディタ14であれば、容易に、各ラベルをラベル名ごとに並べて(ソーティング)表示することができる。かかる表示において、作業者は、表入力と同様の入力によって、ラベルに対する処理(ファンクション)を容易に登録することができる。本実施の形態によると、作業者は、ラベルごとのエディタでのプログラミングを要する従来の手法に比べて、特定のラベルに対する処理(ファンクション)の登録を効率的に行うことができる。さらに、作業者は、ラベルエディタ14にて各ラベルをソーティングすることで、それまでに登録されている処理の内容を容易に確認することができる。
 これにより、エンジニアリングツール10は、デバイスに対する個別処理の簡易な設定および管理と、簡易なプログラム編集とが可能となる。また、エンジニアリングツール10は、シーケンスプログラムのサイズを抑制させることができる。
 PLC21は、エンジニアリングツール10の個別処理設定手段における設定に基づく制御を実施可能とする。PLC21は、サイズが削減されたシーケンスプログラムの実行によって、効率的な制御を実施することができる。
 図16は、PLC、PC、表示器および複数のセンサを含むシステムを示す図である。表示器24および複数のセンサ22は、PLC21に接続されている。表示器24は、制御対象である外部機器の稼動状態の表示、各機器の設定および操作を行う。複数のセンサ22は、外部機器の稼動状態を検出する各種センサである。複数のセンサ22は、例えば、ビジョンセンサ、圧力センサ、近接センサ等を含む。
 エンジニアリングツール10は、かかる表示器23あるいは複数のセンサ22を含むPLCシステムで動作させるシーケンスプログラムを編集する。この場合も、エンジニアリングツール10は、デバイスに対する個別処理の簡易な設定および管理と、簡易なプログラム編集とが可能となる。また、エンジニアリングツール10は、シーケンスプログラムのサイズを抑制させることができる。
 10 エンジニアリングツール、11 プログラム編集部、12 ラベル設定管理部、13 エラー番号管理部、14 ラベルエディタ、15 メインプログラム、16 プログラム実行部、20 PC、21 PLC、22 センサ、23 ボトル、24 表示器、31 演算装置、32 記憶装置、33 I/F、34 表示装置、35 入力装置。

Claims (6)

  1.  デバイスに割り当てられているラベルの選択によって前記デバイスを指定し、シーケンスプログラムを編集するプログラム編集部と、
     前記ラベルの設定を管理するラベル設定管理部と、を有し、
     前記ラベル設定管理部は、
     前記ラベルによって指定される前記デバイスに対する個別処理を、前記個別処理に応じた機能を前記ラベルに対応付けることにより設定可能とする個別処理設定手段を備えることを特徴とするエンジニアリングツール。
  2.  前記個別処理設定手段は、さらに、前記個別処理の付属情報とする引数を、前記ラベルへの対応付けとして設定可能とすることを特徴とする請求項1に記載のエンジニアリングツール。
  3.  前記個別処理設定手段は、前記シーケンスプログラムによる制御対象の動作状態を実使用範囲との比較により監視する前記個別処理について、さらに、前記動作状態が前記実使用範囲から外れた前記個別処理を識別するための情報を登録する際の動作を、前記ラベルへの対応付けとして設定可能とすることを特徴とする請求項2に記載のエンジニアリングツール。
  4.  前記シーケンスプログラムによる制御対象の動作状態を実使用範囲との比較により監視する前記個別処理について、前記動作状態が前記実使用範囲から外れた前記個別処理を識別するための情報であるエラー番号を管理するエラー番号管理部をさらに有することを特徴とする請求項1から3のいずれか一つに記載のエンジニアリングツール。
  5.  前記プログラム編集部は、前記エラー番号を、前記機能ごとに自動的に登録可能とすることを特徴とする請求項4に記載のエンジニアリングツール。
  6.  シーケンスプログラムを実行するプログラム実行部を有し、前記シーケンスプログラムに応じた制御を実施するプログラマブルロジックコントローラであって、
     前記シーケンスプログラムは、エンジニアリングツールにおいて、デバイスに割り当てられているラベルの選択による前記デバイスの指定を経て編集され、
     前記エンジニアリングツールでは、前記ラベルの設定が管理され、かつ、前記ラベルによって指定される前記デバイスに対する個別処理が、前記個別処理に応じた機能を前記ラベルに対応付けることによって設定され、
     前記プログラム実行部は、前記ラベルに対応付けられている前記機能に応じた前記個別処理を実施することを特徴とするプログラマブルロジックコントローラ。
PCT/JP2013/060397 2013-04-04 2013-04-04 エンジニアリングツールおよびプログラマブルロジックコントローラ WO2014162575A1 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
PCT/JP2013/060397 WO2014162575A1 (ja) 2013-04-04 2013-04-04 エンジニアリングツールおよびプログラマブルロジックコントローラ
KR1020157020410A KR101689099B1 (ko) 2013-04-04 2013-04-04 엔지니어링 툴 및 프로그래머블 로직 컨트롤러
US14/767,982 US20160085226A1 (en) 2013-04-04 2013-04-04 Engineering tool and programmable logic controller
CN201380075347.6A CN105074594B (zh) 2013-04-04 2013-04-04 工程设计工具以及可编程逻辑控制器
DE112013006802.8T DE112013006802T5 (de) 2013-04-04 2013-04-04 Engineering-Tool und speicherprogrammierbare Steuerung
JP2013541532A JP5496429B1 (ja) 2013-04-04 2013-04-04 エンジニアリングツールおよびプログラマブルロジックコントローラ
TW102131515A TWI499877B (zh) 2013-04-04 2013-09-02 工程工具及可編程控制器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/060397 WO2014162575A1 (ja) 2013-04-04 2013-04-04 エンジニアリングツールおよびプログラマブルロジックコントローラ

Publications (1)

Publication Number Publication Date
WO2014162575A1 true WO2014162575A1 (ja) 2014-10-09

Family

ID=50941645

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/060397 WO2014162575A1 (ja) 2013-04-04 2013-04-04 エンジニアリングツールおよびプログラマブルロジックコントローラ

Country Status (7)

Country Link
US (1) US20160085226A1 (ja)
JP (1) JP5496429B1 (ja)
KR (1) KR101689099B1 (ja)
CN (1) CN105074594B (ja)
DE (1) DE112013006802T5 (ja)
TW (1) TWI499877B (ja)
WO (1) WO2014162575A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018123456A1 (ja) * 2016-12-27 2018-07-05 東芝三菱電機産業システム株式会社 プログラマブルコントローラ、管理装置および制御システム

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10295981B2 (en) 2016-02-12 2019-05-21 Mitsubishi Electric Corporation Engineering tool
KR101869233B1 (ko) 2016-03-08 2018-06-20 주식회사 로제타텍 분산형 피엘씨를 위한 아이오티 구조의 프로세스 관리 시스템의 구동 방법
EP3460598A1 (de) * 2017-09-22 2019-03-27 Siemens Aktiengesellschaft Speicherprogrammierbare steuerung

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07281880A (ja) * 1994-04-15 1995-10-27 Mitsubishi Electric Corp ウィンドウ入出力装置
JPH09212394A (ja) * 1996-01-31 1997-08-15 Mitsubishi Electric Corp データ処理装置
JPH1063315A (ja) * 1996-08-13 1998-03-06 Toshiba Corp タグシステム及びそのタグシステムを用いた監視制御装置
JPH10240310A (ja) * 1997-02-28 1998-09-11 Mitsubishi Electric Corp ソフトウェアエラー処理編集システム及びソフトウェアエラー処理編集方法
JP2005004598A (ja) * 2003-06-13 2005-01-06 Toshiba Mitsubishi-Electric Industrial System Corp プラント監視支援システム
JP2006309360A (ja) * 2005-04-27 2006-11-09 Keyence Corp 表示装置及びデータ表示システム
JP2007065913A (ja) * 2005-08-30 2007-03-15 Digital Electronics Corp プログラマブル表示器、制御プログラムおよびそのプログラムを記録した記録媒体
JP2007213341A (ja) * 2006-02-09 2007-08-23 Seiko Instruments Inc プログラマブルロジックコントローラ、情報処理装置、制御プログラム、およびテーブル作成プログラム
WO2010103700A1 (ja) * 2009-03-13 2010-09-16 三菱電機株式会社 プログラム作成支援装置

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6505341B1 (en) * 1998-11-10 2003-01-07 Scientronix, Inc. System and method for programming a logic control unit
JP3897597B2 (ja) * 2002-01-08 2007-03-28 株式会社山武 エンジニアリング支援システム及びその方法
JP3940389B2 (ja) * 2003-08-28 2007-07-04 三菱電機株式会社 検査装置及びプログラミングツール
JP3836109B2 (ja) * 2004-02-19 2006-10-18 東京エレクトロン株式会社 プログラマブル論理回路制御装置、プログラマブル論理回路制御方法及びプログラム
JP2007536634A (ja) * 2004-05-04 2007-12-13 フィッシャー−ローズマウント・システムズ・インコーポレーテッド プロセス制御システムのためのサービス指向型アーキテクチャ
DE112005001790B4 (de) * 2004-07-28 2016-01-28 Mitsubishi Electric Corp. Programmerstellungseinrichtung für eine programmierbare Steuervorrichtung, Programmerstellungsverfahren für eine programmierbare Steuervorrichtung und Aufzeichnungsmedium mit darauf aufgezeichnetem Programm
JP4300275B2 (ja) * 2004-10-21 2009-07-22 義昭 垣野 工程設計方法、工程設計装置及びコンピュータプログラム
US7881812B2 (en) * 2005-09-29 2011-02-01 Rockwell Automation Technologies, Inc. Editing and configuring device
DE102006056879A1 (de) * 2006-12-01 2008-06-05 Dürr Systems GmbH Fehlerprotokollierungsverfahren für eine Beschichtungsanlage
JP4952401B2 (ja) * 2007-06-29 2012-06-13 株式会社ジェイテクト Plc
US8494988B2 (en) * 2009-05-15 2013-07-23 The Aerospace Corporation Systems and methods for generating feasible solutions from two parents for an evolutionary process
WO2011089688A1 (ja) * 2010-01-20 2011-07-28 三菱電機株式会社 プログラマブルコントローラシステムおよび開発システム
CN103180789B (zh) * 2010-10-27 2016-03-02 三菱电机株式会社 日志设定装置、日志设定方法
KR20130101569A (ko) * 2010-12-24 2013-09-13 미쓰비시덴키 가부시키가이샤 프로그래머블 콘트롤러의 주변 장치 및 그 통신 방법
DE112013006686T5 (de) * 2013-03-06 2015-11-05 Mitsubishi Electric Corp. Programmierbare Steuerung, programmierbares Steuersystem und Verfahren zum Erzeugen einer Ausführungsfehlerinformation

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07281880A (ja) * 1994-04-15 1995-10-27 Mitsubishi Electric Corp ウィンドウ入出力装置
JPH09212394A (ja) * 1996-01-31 1997-08-15 Mitsubishi Electric Corp データ処理装置
JPH1063315A (ja) * 1996-08-13 1998-03-06 Toshiba Corp タグシステム及びそのタグシステムを用いた監視制御装置
JPH10240310A (ja) * 1997-02-28 1998-09-11 Mitsubishi Electric Corp ソフトウェアエラー処理編集システム及びソフトウェアエラー処理編集方法
JP2005004598A (ja) * 2003-06-13 2005-01-06 Toshiba Mitsubishi-Electric Industrial System Corp プラント監視支援システム
JP2006309360A (ja) * 2005-04-27 2006-11-09 Keyence Corp 表示装置及びデータ表示システム
JP2007065913A (ja) * 2005-08-30 2007-03-15 Digital Electronics Corp プログラマブル表示器、制御プログラムおよびそのプログラムを記録した記録媒体
JP2007213341A (ja) * 2006-02-09 2007-08-23 Seiko Instruments Inc プログラマブルロジックコントローラ、情報処理装置、制御プログラム、およびテーブル作成プログラム
WO2010103700A1 (ja) * 2009-03-13 2010-09-16 三菱電機株式会社 プログラム作成支援装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018123456A1 (ja) * 2016-12-27 2018-07-05 東芝三菱電機産業システム株式会社 プログラマブルコントローラ、管理装置および制御システム
US10956238B2 (en) 2016-12-27 2021-03-23 Toshiba Mitsubishi-Electric Industrial Systems Corporation Programmable controller, management device, and control system

Also Published As

Publication number Publication date
JPWO2014162575A1 (ja) 2017-02-16
CN105074594B (zh) 2017-04-05
KR20150102101A (ko) 2015-09-04
US20160085226A1 (en) 2016-03-24
JP5496429B1 (ja) 2014-05-21
TW201439696A (zh) 2014-10-16
KR101689099B1 (ko) 2016-12-22
TWI499877B (zh) 2015-09-11
CN105074594A (zh) 2015-11-18
DE112013006802T5 (de) 2015-12-03

Similar Documents

Publication Publication Date Title
JP4820265B2 (ja) エンジニアリング装置
JP5496429B1 (ja) エンジニアリングツールおよびプログラマブルロジックコントローラ
JP2002268707A (ja) コントローラ及びツール並びにそれらにより構成されるシステム
KR101889631B1 (ko) 시퀀스 프로그램 작성 지원 장치
US10466674B2 (en) Programmable logic controller system, and engineering tool computer program product
US20160125037A1 (en) Information processing apparatus, information processing method, information processing program, and storage medium
US10295981B2 (en) Engineering tool
CN102959526A (zh) 地址变换检查装置、中央处理运算装置及地址变换检查方法
JP5156713B2 (ja) 設計支援装置
CN112446625A (zh) 一种工艺线路生成系统、方法、平台及存储介质
US20130238104A1 (en) System design device
JP6664562B1 (ja) デバッグ支援装置、デバッグ支援方法、デバッグ支援プログラム
JP6389947B1 (ja) 情報処理システム、情報処理装置、及びプログラム
US20130055122A1 (en) Macro management system foran engineering system for parameterizing switchgear
US20220299968A1 (en) Control system, information processing apparatus, and information processing program
JP2022122610A (ja) 情報処理装置、情報処理システム、情報処理方法及びプログラム
JP2533370B2 (ja) 制御プログラム作成方法
CN114981743A (zh) 设计辅助装置、设计辅助方法及设计辅助程序
JP6053665B2 (ja) 連携システム
JPWO2018229979A1 (ja) プログラム作成装置
JP2013206327A (ja) 監視用画面作成装置および監視用画面作成方法
JPH02121040A (ja) エラーメッセージ表示処理方法
JPH02133838A (ja) データ処理装置
JPH038030A (ja) 情報処理装置のテスト方式

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201380075347.6

Country of ref document: CN

ENP Entry into the national phase

Ref document number: 2013541532

Country of ref document: JP

Kind code of ref document: A

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 13881246

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 20157020410

Country of ref document: KR

Kind code of ref document: A

WWE Wipo information: entry into national phase

Ref document number: 14767982

Country of ref document: US

WWE Wipo information: entry into national phase

Ref document number: 112013006802

Country of ref document: DE

Ref document number: 1120130068028

Country of ref document: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13881246

Country of ref document: EP

Kind code of ref document: A1