WO2024189749A1 - Verification program, verification device, verification system, and verification method - Google Patents
Verification program, verification device, verification system, and verification method Download PDFInfo
- Publication number
- WO2024189749A1 WO2024189749A1 PCT/JP2023/009701 JP2023009701W WO2024189749A1 WO 2024189749 A1 WO2024189749 A1 WO 2024189749A1 JP 2023009701 W JP2023009701 W JP 2023009701W WO 2024189749 A1 WO2024189749 A1 WO 2024189749A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- unit
- verification
- execution
- verification process
- user
- Prior art date
Links
- 238000012795 verification Methods 0.000 title claims abstract description 333
- 238000000034 method Methods 0.000 title claims abstract description 286
- 230000008569 process Effects 0.000 claims abstract description 279
- 238000004148 unit process Methods 0.000 claims abstract description 252
- 238000012545 processing Methods 0.000 claims description 16
- 238000010586 diagram Methods 0.000 description 10
- 230000007704 transition Effects 0.000 description 8
- 238000003860 storage Methods 0.000 description 7
- 238000003825 pressing Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/05—Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
Definitions
- This disclosure relates to a verification program, a verification device, a verification system, and a verification method.
- Programmable logic controllers are known as devices that control the equipment involved in production on a manufacturing line.
- Programmable logic controllers (hereafter referred to as PLCs) control equipment by executing sequence programs.
- a verification device As disclosed in Patent Document 1, when a sequence program is created or its contents are modified, a verification device is used to verify the validity of the sequence program.
- the verification device of Patent Document 1 has a function of presenting a number of predetermined verification contents to the user as options. For each verification content, a verification process is defined in advance, which indicates the procedure for executing that verification content.
- the user selects the desired verification content from among multiple verification contents presented by the verification device.
- the verification device then executes the verification process corresponding to the selected verification content. In this way, the verification of the content desired by the user is carried out.
- the verification device disclosed in Patent Document 1 has a function to present multiple predefined verification processes to the user, but does not provide the user with an environment suitable for defining the verification process itself. If the user tries to define a new verification process that is not included in the presented options, a considerable amount of effort is required.
- the objective of this disclosure is to provide a verification program, a verification device, a verification system, and a verification method that can easily define a verification process that represents the procedure for verifying a sequence program.
- the verification program functions as a verification process definition support unit that provides a user with a verification process definition environment that defines a verification process that realizes the verification of validity, and the verification process includes an execution condition assignment process that assigns an execution condition for verification to an execution device that executes the sequence program, and a verification process execution unit that executes the verification process defined using the verification process definition environment, (I) causes the execution device to execute the sequence program in a manner that reflects the execution condition, and (II) obtains the execution result of the sequence program from the execution device and performs verification using the obtained execution result.
- the verification process definition support unit has a unit process object group presentation unit that presents a unit process object group that is composed of a plurality of unit process objects that each represent a predefined unit process to be executed by the verification process execution unit, and includes a unit process object that represents an execution condition assignment process as a unit process, and a verification process definition environment provision unit that provides a user with a verification process definition environment that defines a verification process by a combination of unit processes represented by each of the selected unit process objects when the user selects a plurality of unit process objects from the presented unit process object group.
- the above configuration provides the user with a verification process definition environment, making it easy to define a verification process that represents the steps for verifying a sequence program.
- FIG. 1 is a conceptual diagram showing a configuration of a verification system according to an embodiment.
- FIG. 1 is a conceptual diagram showing a configuration of a verification device according to an embodiment.
- FIG. 1 is a conceptual diagram showing functions of a verification device according to an embodiment;
- FIG. 1 is a conceptual diagram illustrating one aspect of a basic screen according to an embodiment;
- FIG. 1 is a conceptual diagram illustrating one aspect of a verification process definition screen according to an embodiment;
- FIG. 13 is a conceptual diagram illustrating another aspect of the basic screen according to the embodiment;
- FIG. 13 is a conceptual diagram illustrating still another example of the basic screen according to the embodiment;
- FIG. 13 is a conceptual diagram illustrating one aspect of a type selection screen according to an embodiment;
- FIG. 1 is a conceptual diagram showing a configuration of a verification system according to an embodiment.
- FIG. 1 is a conceptual diagram showing a configuration of a verification device according to an embodiment.
- FIG. 1 is a conceptual diagram showing functions of a verification
- FIG. 1 is a conceptual diagram illustrating an example of an editing position designation screen according to an embodiment
- FIG. 1 is a conceptual diagram illustrating an example of an editing content input screen according to an embodiment
- Flowchart of verification process definition support process according to an embodiment Flowchart of unit process definition support processing according to an embodiment
- the verification system 600 includes a verification device 200 that verifies the validity of the contents of the sequence program installed in the PLC (hereinafter, simply referred to as verification), and an execution device 400 that executes the sequence program for verification.
- a verification device 200 that verifies the validity of the contents of the sequence program installed in the PLC (hereinafter, simply referred to as verification)
- an execution device 400 that executes the sequence program for verification.
- the execution device 400 can be configured with a PLC, a simulator, etc.
- the simulator executes a sequence program to virtually reproduce the control operations specified by the sequence program.
- the verification system 600 can also be configured with a single computer.
- the computer may be an engineering tool that provides the user with an environment for creating a sequence program.
- the configuration of the verification device 200 will be described with reference to FIG. 2.
- the verification device 200 includes a communication device 200a that is responsible for communicating various data required for verification with the execution device 400 shown in FIG. 1.
- the verification device 200 also includes a display device 200b that displays information related to verification support, such as what type of verification is to be performed, and an input device 200c for inputting, selecting, specifying, etc., various data required for verification.
- the input device 200c and the display device 200b may form a touch screen.
- the verification device 200 also includes a storage device 200d that stores the sequence program 200e to be verified.
- the storage device 200d stores a verification program 200f that provides an environment to support the verification of the sequence program 200e.
- the verification device 200 also includes a processor 200i that executes the verification program 200f. Below, the functions realized by the processor 200i executing the verification program 200f will be described with reference to FIG. 3.
- the verification device 200 includes a verification process definition support unit 210 that supports the definition of a series of processes (hereinafter referred to as a verification process) that realizes verification, and a verification process execution unit 220 that executes the defined verification process.
- a verification process definition support unit 210 that supports the definition of a series of processes (hereinafter referred to as a verification process) that realizes verification
- a verification process execution unit 220 that executes the defined verification process.
- the verification device 200 also holds defined unit processing group data 200g that is used as a library for defining verification processes.
- the defined unit processing group data 200g is stored in the storage device 200d shown in FIG. 2.
- the defined unit process group data 200g represents a collection of predefined processes (hereafter referred to as unit processes) that can be executed by the verification process execution unit 220.
- unit processes predefined processes
- Each unit process has the versatility to be used as a component of various verification processes. In other words, each unit process has the significance of being a general-purpose component.
- the verification process definition support unit 210 has a unit process object group presentation unit 211 that uses the defined unit process group data 200g to present a unit process object group made up of a plurality of unit process objects each of which represents a unit process.
- "present” specifically means to display on the display device 200b shown in FIG. 2.
- the verification process definition support unit 210 also has a verification process definition environment provision unit 212 that provides the user with a verification process definition environment for defining the verification process.
- the user can select multiple desired unit process objects from the group of unit process objects presented by the unit process object group presentation unit 211, that is, multiple unit process objects representing multiple unit processes to be used as components of the verification process to be defined.
- the user can also specify the execution order between multiple unit processes represented by multiple unit process objects selected from a group of unit process objects.
- the verification process definition environment providing unit 212 defines a verification process by combining unit processes represented by each of the multiple unit process objects selected by the user in an execution order specified by the user.
- the verification process includes, as a unit process, an execution condition assignment process that assigns execution conditions for verification to the execution device 400 shown in FIG. 1.
- the unit process object group presented by the unit process object group presentation unit 211 includes a unit process object that represents the execution condition assignment process as a unit process.
- the unit process object group presented by the unit process object group presentation unit 211 includes a unit process object that represents an editing process as a unit process.
- the editing process is a unit process that edits the sequence program 200e prior to execution of the sequence program 200e by the execution device 400 shown in FIG. 1.
- the verification process does not necessarily have to include the editing process.
- the verification process execution unit 220 (I) causes the execution device 400 to execute the sequence program 200e in a manner that reflects the above-mentioned execution conditions, in accordance with the definition of the verification process defined using the above-mentioned verification process definition environment.
- the verification process execution unit 220 also (II) acquires the execution results of the sequence program 200e from the execution device 400, and performs verification using the acquired execution results. These operations (1) and (II) are realized by the verification process execution unit 220 executing the verification process.
- FIG. 4 shows the basic screen 110 that the verification process definition support unit 210 causes to be displayed on the display device 200b.
- the user first presses a button 111 that instructs the user to start defining the verification process.
- "pressing a button” specifically means a click operation using a mouse, a touch operation on a touch screen, etc.
- the verification process definition support unit 210 transitions the basic screen 110 to the verification process definition screen 120 shown in FIG. 5.
- the verification process definition screen 120 displays a name input field 121 for inputting the name of the verification process to be defined.
- the name "Test 2" has been input by the user into the name input field 121.
- the input device 200c is used for input.
- the verification process definition screen 120 also displays the unit process object group 122 described above. In FIG. 5, three unit process objects 122a, 122b, and 122c are displayed among those that make up the unit process object group 122. The user can also use the scroll button 123 to check the other unit process objects that make up the unit process object group 122.
- the verification process definition screen 120 also has a button 124 for each unit process object that makes up the unit process object group 122. By pressing the button 124 that corresponds to the desired unit process object, the user can check in detail the contents of the unit process represented by that unit process object.
- the verification process definition screen 120 provides the verification process definition environment described above. That is, the user can select multiple desired unit process objects from the unit process object group 122. The user can also specify the execution order between multiple unit processes represented by the selected multiple unit process objects.
- the verification process is defined by selecting multiple unit process objects and specifying the execution order.
- the input device 200c is used for the selection and specification.
- unit process objects 122b and 122c are selected by the user from the unit process object group 122.
- the input device 200c is used for the selection.
- FIG. 5 also illustrates a situation in which an execution order is specified in the execution order specification field 128 such that the unit process represented by unit process object 122c is executed after the unit process represented by unit process object 122b.
- the input device 200c is used to specify the execution order in the execution order specification field 128.
- the unit process object 122b represents the execution condition assignment process described above as a unit process.
- the unit process represented by the unit process object 122b also corresponds to the editing process described above.
- the verification process definition environment providing unit 212 defines the verification process by combining the unit processes represented by the unit process objects 122b and 122c selected by the user in the execution order specified in the execution order specification field 128.
- the user presses button 125.
- the verification process definition support unit 210 returns the verification process definition screen 120 to the basic screen 110 shown in FIG. 6.
- a verification process object 114a representing the defined verification process is displayed on the basic screen 110.
- the verification process execution unit 220 executes the verification process represented by the verification process object 114a.
- FIG. 6 illustrates an example in which the verification result 115a corresponding to the verification process object 114a affirms the validity of the sequence program 200e.
- FIG. 6 shows only one verification process object 114a representing one verification process
- the user can also define multiple verification processes with different execution conditions for the same sequence program 200e in the manner described with reference to FIG. 5.
- the sequence program 200e can be verified from multiple, mutually different perspectives.
- verification process objects 114a, 114b, and 114c representing the multiple verification processes are displayed on the basic screen 110.
- the verification process execution unit 220 executes the multiple verification processes represented by the multiple verification process objects 114a, 114b, and 114c all at once.
- the verification process execution unit 220 displays a list of the verification results 115 for each of the multiple verification processes.
- the verification results 115 are displayed by verification process, i.e., by verification process object 114.
- FIG. 7 illustrates an example in which the verification result 115a corresponding to the verification process object 114a and the verification result 115b corresponding to the verification process object 114b affirm the validity of the sequence program 200e, and the verification result 115c corresponding to the verification process object 114c denies the validity of the sequence program 200e.
- the verification device 200 also has a unit process definition support section 260 that supports the definition of new unit processes.
- the unit process definition support section 260 provides the user with a unit process definition environment for defining a unit process.
- the unit process definition support section 260 adds the unit process to the defined unit process group data 200g, which is a library of materials that make up a verification process.
- the unit process definition support section 260 adds the unit process to the defined unit process group data 200g, which is a library of materials that make up a verification process.
- a unit process object representing the unit process is included in the unit process object group 122 described above.
- the unit process definition support section 260 has a type presentation section 230 that presents multiple types of unit processes that can be defined, and a type selection section 240 that accepts a selection from the user as to which of the multiple types presented by the type presentation section 230 the type of unit process that the user is trying to define corresponds to.
- the unit process definition support unit 260 also has a necessary item input unit 250 that presents input items according to the type selected using the type selection unit 240.
- the necessary item input unit 250 accepts input from the user of the necessary items required to define the type of unit process selected by the user into the presented input items.
- the unit process object group 122 includes a unit process object that represents an edit process as a unit process.
- the user can define an edit process as a unit process. Therefore, the multiple types presented by the type presentation unit 230 include a type (hereinafter referred to as an edit type) in which editing is performed on the sequence program 200e prior to execution of the sequence program 200e by the execution device 400.
- the required information input unit 250 has an edit type selection unit 251 that accepts, from the user, the selection of the type of edit to be applied to the sequence program 200e when the type selection unit 240 accepts the selection of the edit type as the type.
- the edit type selection unit 251 accepts a selection from the user as to the type of edit: adding program code to the sequence program 200e, deleting program code from the sequence program 200e, or changing part of the content of the sequence program 200e.
- the required item input unit 250 also has an edit position designation unit 252 that accepts input from the user of the position in the sequence program 200e where the edit is to be performed (hereinafter referred to as the edit position) following the selection of the type of edit.
- the edit position is an example of the required items described above.
- the required item input unit 250 also has an edited content input unit 253 that accepts input of the edited content (hereinafter, edited content) from the user following input of the edit position.
- edited content is another example of the required items described above.
- FIG. 8 shows the type selection screen 130 that the type presentation unit 230 causes the display device 200b to display. Note that this type selection screen 130 is displayed when the button 126, which instructs the user to start defining the unit process, is pressed on the verification process definition screen 120 shown in FIG. 5.
- the type selection screen 130 presents the following types of unit processing that can be defined: (a1) editing the sequence program 200e; (a2) writing the sequence program 200e to the execution device 400; (a3) changing the current value of a device or label as a variable included in the sequence program 200e; and (a4) checking whether the value of a device or label as a variable included in the sequence program 200e is the expected value.
- FIG. 8 illustrates an example of a situation in which type (a1), i.e., the editing type described above, has been selected.
- the following describes the operation of the unit process definition support section 260 when type (a1) has been selected.
- type (a1) he/she presses button 131 to indicate completion of the selection. If the type selected by the user is an editing type, the required information input unit 250 transitions the type selection screen 130 to the editing position designation screen 140 shown in FIG. 9.
- the edit position designation screen 140 has an edit type presentation field 141 in which multiple edit types are presented.
- the edit type presentation field 141 presents three types of edits: (b1) adding program code to the sequence program 200e, (b2) deleting program code from the sequence program 200e, and (b3) changing part of the content of the sequence program 200e.
- the user uses the type selection button 142 to select the desired type from among the multiple types (b1)-(b3) presented in the edit type presentation field 141.
- Figure 9 shows an example of the situation in which type (b1) has been selected.
- the editing position specification screen 140 also has an editing position input field 145 for inputting the editing position of the sequence program 200e.
- the user inputs the editing position into the editing position input field 145.
- the input device 200c is used for input.
- the editing position input field 145 is an example of an input field according to the type selected using the type selection unit 240. Also, the editing position input into the editing position input field 145 is an example of a required item to be input into an input field.
- the edit position input field 145 is composed of a row input field 143 for inputting a row in the sequence program 200e, and a column input field 144 for inputting a column.
- the user inputs the number of the row to be edited in the row input field 143, and the number of the column to be edited in the column input field 144.
- buttons 146 After inputting the type of edit and the edit position, the user presses button 146 to indicate completion of the input.
- button 146 is pressed, the edit content input unit 253 transitions the edit position designation screen 140 to the edit content input screen 150 shown in FIG. 10.
- the edited content input screen 150 has an edited content input field 151 for inputting edited content.
- the user inputs the edited content into the edited content input field 151.
- the input device 200c is used for input.
- the user inputs the editing content corresponding to the type (b1) that he or she previously selected, i.e., the specific program code to be added to the sequence program 200e, into the editing content input field 151.
- the editing content input field 151 is an example of an input field corresponding to the type selected using the type selection unit 240 and the type selected using the editing type selection unit 251.
- the editing content entered in the editing content input field 151 is another example of the necessary information to be entered in an input field.
- the edit content input screen 150 also has a unit process name input field 152 where the user inputs the name of the unit process defined by the operations up to that point.
- the name "Program Edit 2" has been input by the user into the unit process name input field 152.
- the input device 200c is used for input.
- the unit process definition support section 260 returns the edit content input screen 150 to the verification process definition screen 120 shown in FIG. 5.
- the unit process object group 122 includes a unit process object 122b that represents the unit process named "Program Edit 2" that was previously input by the user. This is because the unit process definition support section 260, upon pressing the button 153 shown in FIG. 10, added the newly defined unit process to the defined unit process group data 200g as a library.
- the required item input unit 250 accepts the selection of whether the target for which the current value is to be changed is a device or a label, and presents an input field for inputting the name of the target for which the current value is to be changed, and presents an input field for inputting the changed value.
- the target name and the changed value are each an example of the required items already described.
- the required item input unit 250 accepts the selection of whether the target for checking the current value is a device or a label, and presents an input field for inputting the name of the target for checking the current value, and presents an input field for inputting the expected value, which is the correct value expected for that current value.
- the name of the target and the expected value are each examples of the required items already described.
- the verification process execution unit 220 determines whether the device or label value obtained as the execution result from the execution device 400 that executed the sequence program 200e matches the expected value. If the execution result matches the expected value, the verification process execution unit 220 affirms the validity of the sequence program 200e, and if the execution result does not match the expected value, the verification process execution unit 220 denies the validity of the sequence program 200e.
- the verification device 200 also includes a defined unit process editing section 270 for editing the contents of a unit process that has already been defined using the unit process definition environment described above (hereinafter, referred to as a defined unit process).
- the defined unit process editing unit 270 presents a list of previously defined unit processes and accepts the user's selection of a defined unit process to be used as a template from the presented list of defined unit processes.
- the defined unit process editing unit 270 then edits the contents of the selected defined unit process, thereby providing the user with a defined unit process editing environment in which the contents are used as a template to define a unit process different from the previously defined unit process.
- the defined unit process editing unit 270 obtains the contents of the defined unit process to be edited from the defined unit process group data 200g.
- the defined unit process editing unit 270 also adds the unit process newly defined by editing to the defined unit process group data 200g.
- the verification process definition screen 120 has a button 124 for each unit process object that makes up the unit process object group 122.
- the user can edit the contents of the defined unit process represented by the unit process object by pressing the button 124 corresponding to the unit process object that represents the defined unit process that the user wants to edit. This makes it easy to define a unit process that is different from the defined unit process by using the contents of the defined unit process as a template.
- the verification process definition screen 120 also has a button 127 for instructing copying of a defined unit process.
- the button 127 is pressed when a desired unit process object is selected from the unit process object group 122.
- the verification device 200 holds the contents of each verification process that has already been defined using the verification process definition environment described above (hereinafter, referred to as a defined verification process) as defined verification process group data 200h.
- the defined verification process group data 200h is stored in the storage device 200d shown in FIG. 2.
- the verification device 200 also includes a defined verification process editing unit 280 for editing the contents of the defined verification process.
- the predefined verification process editing unit 280 presents a list of predefined verification processes defined in the past, and accepts the user's selection of a process to be used as a template from the presented list of predefined verification processes.
- the predefined verification process editing unit 280 then edits the contents of the selected predefined verification process, thereby providing the user with a predefined verification process editing environment in which the contents are used as a template to define a verification process different from the predefined verification process.
- the defined verification process editing unit 280 obtains the contents of the defined verification process to be edited from the defined verification process group data 200h.
- the defined verification process editing unit 280 also adds the verification process newly defined by editing to the defined verification process group data 200h.
- the defined verification process editing environment provided by the defined verification process editing unit 280 will be specifically described.
- a plurality of verification process objects 114 representing defined verification processes can be displayed on the basic screen 110.
- a button 116 is provided for each verification process object 114.
- the user can edit the contents of the predefined verification process represented by that verification process object. This makes it possible to easily define a verification process that is different from the predefined verification process by using the contents of the predefined verification process as a template.
- the basic screen 110 also has a button 112 for instructing to copy a defined verification process.
- the button 112 is pressed when a desired verification process object 114 is selected. This makes it possible to edit a copy of the defined verification process represented by the selected verification process object. In other words, it is possible to define a verification process that is different from the defined verification process, while leaving the defined verification process to be edited and the verification process object that represents it intact.
- the verification process definition support process shown in FIG. 11 includes steps S11-S14 as an example of a verification process definition support step in which a computer provides a verification process definition environment to a user, and steps S15-S16 as an example of a verification process execution step in which a computer performs verification.
- steps S11-S14 as an example of a verification process definition support step in which a computer provides a verification process definition environment to a user
- steps S15-S16 as an example of a verification process execution step in which a computer performs verification.
- the unit process object group presentation unit 211 presents the unit process object group 122 as a library (step S11).
- the presented unit process object group 122 includes a unit process object that represents an execution condition assignment process as a unit process, and a unit process object that represents an editing process as a unit process.
- step S11 is an example of a unit process object group presentation step in which the computer presents the unit process object group 122.
- the verification process definition support unit 210 accepts from the user a selection of multiple unit process objects desired by the user from the presented unit process object group 122, and a specification of the execution order between the multiple unit processes represented by the multiple selected unit process objects (step S12).
- the selected unit process objects include a unit process object representing an execution condition assignment process.
- the verification process definition support unit 210 defines a verification process by combining the unit processes represented by each of the multiple unit process objects selected by the user in the execution order specified by the user (step S13).
- the verification process definition support unit 210 saves the contents of the verification process defined in step S13 in the storage device 200d by adding it to the defined verification process group data 200h (step S14). Therefore, from the next time onwards, the contents of the verification process defined in step S13 can be used as a template for defining another verification process.
- steps S12-S14 are an example of a verification process definition environment providing step in which the computer provides the user with a verification process definition environment.
- the verification process execution unit 220 executes the verification process defined in step S13, causing the execution device 400 to execute the sequence program 200e in a manner that reflects the execution conditions (step S15).
- the verification process execution unit 220 then causes the execution device 400 to present the results of the verification (step S16). This completes the verification process definition support process.
- the type presentation unit 230 presents multiple types of unit processes that can be defined (step S21).
- the type selection unit 240 accepts a selection from the user as to which of the multiple types presented by the type presentation unit 230 the type of unit process that the user is trying to define corresponds to (step S22).
- the edit type selection unit 251 accepts the selection of the edit type from the user (step S23).
- the editing position designation unit 252 accepts input of the editing position in the sequence program 200e from the user (step S24).
- the editing content input unit 253 accepts input of the editing content from the user (step S25).
- the unit process definition support unit 260 defines the editing process as a unit process based on the input items received in steps S23-25 (step S26).
- the unit process definition support unit 260 saves the contents of the edit process defined as the unit process in the storage device 200d by adding it to the defined unit process group data 200g (step S27). Therefore, from the next time onwards, the contents of the edit process defined in step S26 can be used as a template for defining another edit process.
- the verification device 200 according to the present embodiment described above provides the following advantages.
- the verification device 200 not only is the predefined verification process editing unit 280 able to provide the user with a function for presenting multiple predefined verification processes that have been prepared as options, but the verification process definition support unit 210 also provides the user with a verification process definition environment. This allows the user to easily define a new verification process that is not included in the options presented.
- the verification process definition environment providing unit 212 defines the verification process by combining unit processes represented by each of the multiple unit process objects selected by the user.
- the unit process object group 122 presented to the user includes a unit process object that represents editing processes. Therefore, when the user selects a unit process object that represents editing processes, a verification process that includes editing processes is defined.
- the above transition conditions can be temporarily disabled by editing, eliminating the need to adjust device or label values.
- the sequence program 200e has a structure that transitions to a specific program module (hereinafter referred to as an interrupt program) when an interrupt condition is satisfied, disabling the interrupt condition in editing makes it possible to immediately verify the contents of the interrupt program regardless of whether the interrupt condition is satisfied.
- the user is also provided with a unit process definition environment for defining the unit process itself, including the above-mentioned editing process. Therefore, the user can easily define a new unit process that is different from the already created defined unit process, while being prompted to input the necessary information according to the type of unit process.
- the user can easily define the editing process by selecting the type of editing, inputting the editing position, and inputting the editing content.
- the computer can function as the verification device 200 according to the embodiment.
- the concept of computer includes an engineering tool and a PLC.
- the engineering tool or the PLC may include a simulator as the execution device 400.
- the verification program 200f may be distributed via a communication network, or may be stored in a non-transitory computer-readable recording medium and distributed.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- Programmable Controllers (AREA)
Abstract
Provided is a verification program that causes a computer, which verifies the validity of the content of a sequence program installed in a programmable logic controller, to function as: a verification process definition assistance unit (210) which provides, to a user, a verification process definition environment for defining a verification process; and a verification process execution unit (220) which executes the verification process. In the verification process definition assistance unit (210), a unit process object group presentation unit (211) presents a unit process object group composed of a plurality of unit process objects representing predefined unit processes to be executed by the verification process execution unit (220). A verification process definition environment provision unit (212) provides, to the user, in response to the user selecting a plurality of unit process objects from the unit process object group, a verification process definition environment for defining the verification process by a combination of unit processes respectively represented by the plurality of unit process objects that have been selected.
Description
本開示は、検証プログラム、検証装置、検証システム、及び検証方法に関する。
This disclosure relates to a verification program, a verification device, a verification system, and a verification method.
製造ラインにおいて製造を担う機器を制御するものとして、プログラマブルロジックコントローラ(Programmable Logic Controller)が知られている。プログラマブルロジックコントローラ(以下、PLCと記す。)は、シーケンスプログラムを実行することにより機器の制御を実現する。
Programmable logic controllers are known as devices that control the equipment involved in production on a manufacturing line. Programmable logic controllers (hereafter referred to as PLCs) control equipment by executing sequence programs.
特許文献1に開示されているように、シーケンスプログラムの作成、内容の改変等が行われた場合には、検証装置を用いて、そのシーケンスプログラムの妥当性の検証が行われる。特許文献1に係る検証装置は、予め定められた複数の検証内容を選択肢としてユーザに提示する機能を有する。各々の検証内容には、その検証内容を実行する手順を表す検証処理が予め定義されている。
As disclosed in Patent Document 1, when a sequence program is created or its contents are modified, a verification device is used to verify the validity of the sequence program. The verification device of Patent Document 1 has a function of presenting a number of predetermined verification contents to the user as options. For each verification content, a verification process is defined in advance, which indicates the procedure for executing that verification content.
ユーザは、検証装置によって提示された複数の検証内容の中から、所望のものを選択する。すると、検証装置は、選択された検証内容に対応する検証処理を実行する。このようにして、ユーザが所望する内容の検証が遂行される。
The user selects the desired verification content from among multiple verification contents presented by the verification device. The verification device then executes the verification process corresponding to the selected verification content. In this way, the verification of the content desired by the user is carried out.
なお、検証の結果、シーケンスプログラムの妥当性が肯定された場合は、そのシーケンスプログラムを実行するPLCも正常に動作すると言える。従って、そのシーケンスプログラムが正式にPLCにインストール(install)される。一方、シーケンスプログラムの妥当性が否定された場合は、その否定の原因となっているプログラムコード(program code)を修正するデバッグ(debug)が行われる。
If the verification confirms the validity of the sequence program, it can be said that the PLC that executes that sequence program will also operate normally. Therefore, the sequence program is officially installed in the PLC. On the other hand, if the validity of the sequence program is denied, debugging is performed to correct the program code that is causing the denial.
特許文献1に係る検証装置は、予め定められた複数の検証処理をユーザに提示する機能は有するが、検証処理そのものを定義するのに適した環境をユーザに提供するものではない。提示される選択肢には無い、新たな検証処理をユーザが定義しようとすると、相応の手間を要していた。
The verification device disclosed in Patent Document 1 has a function to present multiple predefined verification processes to the user, but does not provide the user with an environment suitable for defining the verification process itself. If the user tries to define a new verification process that is not included in the presented options, a considerable amount of effort is required.
本開示の目的は、シーケンスプログラムの検証の手順を表す検証処理を容易に定義することができる検証プログラム、検証装置、検証システム、及び検証方法を提供することである。
The objective of this disclosure is to provide a verification program, a verification device, a verification system, and a verification method that can easily define a verification process that represents the procedure for verifying a sequence program.
本開示に係る検証プログラムは、プログラマブルロジックコントローラにインストールされるシーケンスプログラムの内容の妥当性を検証するコンピュータを、妥当性の検証を実現する検証処理を定義する検証処理定義環境をユーザに提供する検証処理定義支援部であって、検証処理には、シーケンスプログラムを実行する実行装置に対して、検証のための実行条件を付与する実行条件付与処理が含まれる検証処理定義支援部と、検証処理定義環境を用いて定義された検証処理を実行することにより、(I)実行条件が反映された態様で実行装置にシーケンスプログラムを実行させ、かつ(II)実行装置からシーケンスプログラムの実行結果を取得し、取得した実行結果を用いて検証を行う検証処理実行部と、として機能させる。検証処理定義支援部は、各々検証処理実行部に実行させる予め定義された単位処理を表す複数の単位処理オブジェクトで構成される単位処理オブジェクト群であって、単位処理としての実行条件付与処理を表す単位処理オブジェクトが含まれる単位処理オブジェクト群を提示させる単位処理オブジェクト群提示部と、提示された単位処理オブジェクト群の中から複数の単位処理オブジェクトをユーザが選択することにより、選択された複数の単位処理オブジェクトの各々が表す単位処理の組み合わせによって検証処理を定義する検証処理定義環境を、そのユーザに提供する検証処理定義環境提供部と、を有する。
The verification program according to the present disclosure functions as a verification process definition support unit that provides a user with a verification process definition environment that defines a verification process that realizes the verification of validity, and the verification process includes an execution condition assignment process that assigns an execution condition for verification to an execution device that executes the sequence program, and a verification process execution unit that executes the verification process defined using the verification process definition environment, (I) causes the execution device to execute the sequence program in a manner that reflects the execution condition, and (II) obtains the execution result of the sequence program from the execution device and performs verification using the obtained execution result. The verification process definition support unit has a unit process object group presentation unit that presents a unit process object group that is composed of a plurality of unit process objects that each represent a predefined unit process to be executed by the verification process execution unit, and includes a unit process object that represents an execution condition assignment process as a unit process, and a verification process definition environment provision unit that provides a user with a verification process definition environment that defines a verification process by a combination of unit processes represented by each of the selected unit process objects when the user selects a plurality of unit process objects from the presented unit process object group.
上記構成によれば、ユーザに検証処理定義環境が提供されるので、シーケンスプログラムの検証の手順を表す検証処理を容易に定義することができる。
The above configuration provides the user with a verification process definition environment, making it easy to define a verification process that represents the steps for verifying a sequence program.
以下、図面を参照し、実施の形態について説明する。図中、同一又は対応する部分に同一の符号を付す。
The following describes the embodiments with reference to the drawings. In the drawings, the same or corresponding parts are denoted by the same reference numerals.
図1に示すように、本実施の形態に係る検証システム600は、PLCにインストールされるシーケンスプログラムの、内容の妥当性の検証(以下、単に検証という。)を行う検証装置200と、検証のためにシーケンスプログラムを実行する実行装置400とを備える。
As shown in FIG. 1, the verification system 600 according to this embodiment includes a verification device 200 that verifies the validity of the contents of the sequence program installed in the PLC (hereinafter, simply referred to as verification), and an execution device 400 that executes the sequence program for verification.
実行装置400は、PLC、シミュレータ(simulator)等によって構成することができる。シミュレータは、シーケンスプログラムを実行することにより、そのシーケンスプログラムが規定する制御の動作を仮想的に再現する。実行装置400がシミュレータである場合は、検証システム600を1台のコンピュータで構成することもできる。そのコンピュータは、シーケンスプログラムを作成する環境をユーザに提供するエンジニアリングツール(engineering tool)であってもよい。
The execution device 400 can be configured with a PLC, a simulator, etc. The simulator executes a sequence program to virtually reproduce the control operations specified by the sequence program. When the execution device 400 is a simulator, the verification system 600 can also be configured with a single computer. The computer may be an engineering tool that provides the user with an environment for creating a sequence program.
図2を参照し、検証装置200の構成を説明する。検証装置200は、図1に示した実行装置400との間で、検証に必要な各種のデータの通信を担う通信装置200aを備える。
The configuration of the verification device 200 will be described with reference to FIG. 2. The verification device 200 includes a communication device 200a that is responsible for communicating various data required for verification with the execution device 400 shown in FIG. 1.
また、検証装置200は、どのような検証を行うかといった、検証の支援に係る表示を行う表示装置200bと、検証に必要な各種データの入力、選択、指定等を行うための入力装置200cとを備える。入力装置200cと表示装置200bとでタッチスクリーン(touch screen)が構成されてもよい。
The verification device 200 also includes a display device 200b that displays information related to verification support, such as what type of verification is to be performed, and an input device 200c for inputting, selecting, specifying, etc., various data required for verification. The input device 200c and the display device 200b may form a touch screen.
また、検証装置200は、検証の対象とするシーケンスプログラム200eを記憶する記憶装置200dを備える。記憶装置200dには、シーケンスプログラム200eの検証を支援する環境を提供する検証プログラム200fが記憶されている。
The verification device 200 also includes a storage device 200d that stores the sequence program 200e to be verified. The storage device 200d stores a verification program 200f that provides an environment to support the verification of the sequence program 200e.
また、検証装置200は、検証プログラム200fを実行するプロセッサ(processor)200iを備える。以下、プロセッサ200iが検証プログラム200fを実行することにより実現される機能について、図3を参照して説明する。
The verification device 200 also includes a processor 200i that executes the verification program 200f. Below, the functions realized by the processor 200i executing the verification program 200f will be described with reference to FIG. 3.
図3に示すように、検証装置200は、検証を実現する一連の処理(以下、検証処理という。)の定義を支援する検証処理定義支援部210と、定義された検証処理を実行する検証処理実行部220とを備える。
As shown in FIG. 3, the verification device 200 includes a verification process definition support unit 210 that supports the definition of a series of processes (hereinafter referred to as a verification process) that realizes verification, and a verification process execution unit 220 that executes the defined verification process.
また、検証装置200は、検証処理を定義するためのライブラリー(library)として用いられる定義済単位処理群データ200gを保持している。なお、定義済単位処理群データ200gは、図2に示した記憶装置200dに記憶されている。
The verification device 200 also holds defined unit processing group data 200g that is used as a library for defining verification processes. The defined unit processing group data 200g is stored in the storage device 200d shown in FIG. 2.
定義済単位処理群データ200gは、検証処理実行部220に実行させることができる予め定義された処理(以下、単位処理という。)の集まりを表す。各々の単位処理は、様々な検証処理の構成要素として用いることができる汎用性を有する。つまり、各々の単位処理は、汎用部品としての意義をもつ。
The defined unit process group data 200g represents a collection of predefined processes (hereafter referred to as unit processes) that can be executed by the verification process execution unit 220. Each unit process has the versatility to be used as a component of various verification processes. In other words, each unit process has the significance of being a general-purpose component.
検証処理定義支援部210は、定義済単位処理群データ200gを用いて、各々単位処理を表す複数の単位処理オブジェクトで構成される単位処理オブジェクト群を提示させる単位処理オブジェクト群提示部211を有する。ここで“提示させる”とは、具体的には、図2に示した表示装置200bに表示させることを意味する。
The verification process definition support unit 210 has a unit process object group presentation unit 211 that uses the defined unit process group data 200g to present a unit process object group made up of a plurality of unit process objects each of which represents a unit process. Here, "present" specifically means to display on the display device 200b shown in FIG. 2.
また、検証処理定義支援部210は、検証処理を定義する検証処理定義環境をユーザに提供する検証処理定義環境提供部212を有する。
The verification process definition support unit 210 also has a verification process definition environment provision unit 212 that provides the user with a verification process definition environment for defining the verification process.
検証処理定義環境において、ユーザは、単位処理オブジェクト群提示部211によって提示された単位処理オブジェクト群の中から、所望の複数の単位処理オブジェクト、つまり、定義したい検証処理の構成要素として用いる複数の単位処理を表す複数の単位処理オブジェクトを選択することができる。
In the verification process definition environment, the user can select multiple desired unit process objects from the group of unit process objects presented by the unit process object group presentation unit 211, that is, multiple unit process objects representing multiple unit processes to be used as components of the verification process to be defined.
また、検証処理定義環境において、ユーザは、単位処理オブジェクト群の中から選択する複数の単位処理オブジェクトが表す複数の単位処理の間の実行順序も指定することができる。
In addition, in the verification process definition environment, the user can also specify the execution order between multiple unit processes represented by multiple unit process objects selected from a group of unit process objects.
検証処理定義環境提供部212は、ユーザによって選択された複数の単位処理オブジェクトの各々が表す単位処理の、ユーザが指定した実行順序での組み合わせによって検証処理を定義する。
The verification process definition environment providing unit 212 defines a verification process by combining unit processes represented by each of the multiple unit process objects selected by the user in an execution order specified by the user.
なお、検証処理には、単位処理として、図1に示した実行装置400に対して検証のための実行条件を付与する実行条件付与処理が含まれる。つまり、単位処理オブジェクト群提示部211によって提示される単位処理オブジェクト群には、単位処理としての実行条件付与処理を表す単位処理オブジェクトが含まれる。
The verification process includes, as a unit process, an execution condition assignment process that assigns execution conditions for verification to the execution device 400 shown in FIG. 1. In other words, the unit process object group presented by the unit process object group presentation unit 211 includes a unit process object that represents the execution condition assignment process as a unit process.
また、本実施の形態では、単位処理オブジェクト群提示部211によって提示される単位処理オブジェクト群に、単位処理としての編集処理を表す単位処理オブジェクトが含まれる点を特徴の1つとしている。
In addition, one of the features of this embodiment is that the unit process object group presented by the unit process object group presentation unit 211 includes a unit process object that represents an editing process as a unit process.
編集処理とは、図1に示した実行装置400によるシーケンスプログラム200eの実行に先立って、シーケンスプログラム200eに編集を施す単位処理である。但し、検証処理には、必ずしも編集処理が含まれていなくてもよい。
The editing process is a unit process that edits the sequence program 200e prior to execution of the sequence program 200e by the execution device 400 shown in FIG. 1. However, the verification process does not necessarily have to include the editing process.
検証処理実行部220は、(I)上記検証処理定義環境を利用して定義された検証処理の定義に沿って、上記実行条件が反映された態様で実行装置400にシーケンスプログラム200eを実行させる。また、検証処理実行部220は、(II)実行装置400からシーケンスプログラム200eの実行結果を取得し、取得した実行結果を用いて検証を行う。これらの動作(1)及び(II)は、検証処理実行部220が検証処理を実行することにより実現される。
The verification process execution unit 220 (I) causes the execution device 400 to execute the sequence program 200e in a manner that reflects the above-mentioned execution conditions, in accordance with the definition of the verification process defined using the above-mentioned verification process definition environment. The verification process execution unit 220 also (II) acquires the execution results of the sequence program 200e from the execution device 400, and performs verification using the acquired execution results. These operations (1) and (II) are realized by the verification process execution unit 220 executing the verification process.
以下、図4-図7を参照し、検証処理定義支援部210及び検証処理実行部220の動作を、具体例を挙げて説明する。
Below, the operation of the verification process definition support unit 210 and the verification process execution unit 220 will be explained with specific examples, with reference to Figures 4 to 7.
図4は、検証処理定義支援部210が表示装置200bに表示させる基本画面110を示す。ユーザは、検証処理を定義するために、まず、検証処理の定義の開始を指示するボタン111を押下する。ここで“ボタンを押下する”とは、具体的には、マウスを用いたクリックの操作、タッチスクリーンにおけるタッチの操作等を意味する。ユーザがボタン111を押下すると、検証処理定義支援部210は、基本画面110を、図5に示す検証処理定義画面120へと遷移させる。
FIG. 4 shows the basic screen 110 that the verification process definition support unit 210 causes to be displayed on the display device 200b. To define a verification process, the user first presses a button 111 that instructs the user to start defining the verification process. Here, "pressing a button" specifically means a click operation using a mouse, a touch operation on a touch screen, etc. When the user presses the button 111, the verification process definition support unit 210 transitions the basic screen 110 to the verification process definition screen 120 shown in FIG. 5.
図5に示すように、検証処理定義画面120には、定義しようとする検証処理の名称を入力する名称入力欄121が表示される。図5では、名称入力欄121に“試験2”という名称がユーザによって入力されている。入力には、入力装置200cが用いられる。
As shown in FIG. 5, the verification process definition screen 120 displays a name input field 121 for inputting the name of the verification process to be defined. In FIG. 5, the name "Test 2" has been input by the user into the name input field 121. The input device 200c is used for input.
また、検証処理定義画面120には、既述の単位処理オブジェクト群122が表示されている。図5には、単位処理オブジェクト群122を構成するもののうち、3つの単位処理オブジェクト122a、122b、122cが表れている。ユーザは、スクロールボタン123を用いて、単位処理オブジェクト群122を構成する他の単位処理オブジェクトを確認することもできる。
The verification process definition screen 120 also displays the unit process object group 122 described above. In FIG. 5, three unit process objects 122a, 122b, and 122c are displayed among those that make up the unit process object group 122. The user can also use the scroll button 123 to check the other unit process objects that make up the unit process object group 122.
また、検証処理定義画面120には、単位処理オブジェクト群122を構成する単位処理オブジェクトごとにボタン124が設けられている。ユーザは、所望の単位処理オブジェクトに対応するボタン124を押下することで、その単位処理オブジェクトが表す単位処理の内容を詳細に確認することができる。
The verification process definition screen 120 also has a button 124 for each unit process object that makes up the unit process object group 122. By pressing the button 124 that corresponds to the desired unit process object, the user can check in detail the contents of the unit process represented by that unit process object.
検証処理定義画面120においては、既述の検証処理定義環境が提供される。即ち、ユーザは、単位処理オブジェクト群122の中から所望の複数の単位処理オブジェクトを選択することができる。また、ユーザは、選択する複数の単位処理オブジェクトが表す複数の単位処理の間の実行順序も指定することができる。
The verification process definition screen 120 provides the verification process definition environment described above. That is, the user can select multiple desired unit process objects from the unit process object group 122. The user can also specify the execution order between multiple unit processes represented by the selected multiple unit process objects.
複数の単位処理オブジェクトの選択及び実行順序の指定により、検証処理が定義される。選択及び指定には、入力装置200cが用いられる。
The verification process is defined by selecting multiple unit process objects and specifying the execution order. The input device 200c is used for the selection and specification.
なお、図5では、単位処理オブジェクト群122のうち、単位処理オブジェクト122b及び122cがユーザによって選択されている。選択には、入力装置200cが用いられる。また、図5は、実行順序指定欄128において、単位処理オブジェクト122bが表す単位処理の次に、単位処理オブジェクト122cが表す単位処理を実行するという実行順序が指定された状況を例示している。実行順序指定欄128への実行順序の指定には、入力装置200cが用いられる。
In FIG. 5, unit process objects 122b and 122c are selected by the user from the unit process object group 122. The input device 200c is used for the selection. FIG. 5 also illustrates a situation in which an execution order is specified in the execution order specification field 128 such that the unit process represented by unit process object 122c is executed after the unit process represented by unit process object 122b. The input device 200c is used to specify the execution order in the execution order specification field 128.
本具体例においては、単位処理オブジェクト122bが、単位処理としての既述の実行条件付与処理を表すものとする。また、単位処理オブジェクト122bが表す単位処理は、既述の編集処理にも該当する。
In this specific example, the unit process object 122b represents the execution condition assignment process described above as a unit process. The unit process represented by the unit process object 122b also corresponds to the editing process described above.
検証処理定義環境提供部212は、ユーザによって選択された単位処理オブジェクト122b及び122cの各々が表す単位処理の、実行順序指定欄128で指定された実行順序での組み合わせによって検証処理を定義する。以上のようにして検証処理の定義が完了すると、ユーザは、ボタン125を押下する。すると、検証処理定義支援部210は、検証処理定義画面120を、図6に示す基本画面110へと戻す。
The verification process definition environment providing unit 212 defines the verification process by combining the unit processes represented by the unit process objects 122b and 122c selected by the user in the execution order specified in the execution order specification field 128. When the definition of the verification process is completed in this manner, the user presses button 125. Then, the verification process definition support unit 210 returns the verification process definition screen 120 to the basic screen 110 shown in FIG. 6.
図6に示すように、検証処理の定義を終えた後は、基本画面110に、定義した検証処理を表す検証処理オブジェクト114aが表示される。この状態で、ユーザが、検証の実行を指示するボタン113を押下すると、検証処理実行部220が、検証処理オブジェクト114aが表す検証処理を実行する。
As shown in FIG. 6, after the definition of the verification process is completed, a verification process object 114a representing the defined verification process is displayed on the basic screen 110. In this state, when the user presses the button 113 to instruct the execution of the verification, the verification process execution unit 220 executes the verification process represented by the verification process object 114a.
そして、検証処理実行部220は、検証結果115aを表示させる。図6では、検証処理オブジェクト114aに対応する検証結果115aが、シーケンスプログラム200eの妥当性を肯定するものである場合を例示している。
Then, the verification process execution unit 220 displays the verification result 115a. Figure 6 illustrates an example in which the verification result 115a corresponding to the verification process object 114a affirms the validity of the sequence program 200e.
なお、図6には、1つの検証処理を表す1つの検証処理オブジェクト114aのみを示したが、ユーザは、図5を参照して説明した要領で、同一のシーケンスプログラム200eに対する、実行条件の異なる複数の検証処理を定義することもできる。即ち、互いに異なる複数の観点からシーケンスプログラム200eの検証を行える。
Note that while FIG. 6 shows only one verification process object 114a representing one verification process, the user can also define multiple verification processes with different execution conditions for the same sequence program 200e in the manner described with reference to FIG. 5. In other words, the sequence program 200e can be verified from multiple, mutually different perspectives.
図7に示すように、検証処理定義支援部210によって複数の検証処理が定義された場合には、それら複数の検証処理を表す検証処理オブジェクト114a、114b、114cが基本画面110に表示される。そして、ユーザが、実行を指示するボタン113を押下すると、検証処理実行部220は、複数の検証処理オブジェクト114a、114b、114cが表す複数の検証処理を一括して実行する。
As shown in FIG. 7, when multiple verification processes are defined by the verification process definition support unit 210, verification process objects 114a, 114b, and 114c representing the multiple verification processes are displayed on the basic screen 110. When the user presses the button 113 to instruct execution, the verification process execution unit 220 executes the multiple verification processes represented by the multiple verification process objects 114a, 114b, and 114c all at once.
そして、検証処理実行部220は、それら複数の検証処理の各々についての検証結果115の一覧を表示させる。検証結果115は、検証処理の別に、即ち検証処理オブジェクト114の別に表示される。図7では、検証処理オブジェクト114aに対応する検証結果115a、及び検証処理オブジェクト114bに対応する検証結果115bが、シーケンスプログラム200eの妥当性を肯定するものであり、検証処理オブジェクト114cに対応する検証結果115cが、シーケンスプログラム200eの妥当性を否定するものである場合を例示している。
Then, the verification process execution unit 220 displays a list of the verification results 115 for each of the multiple verification processes. The verification results 115 are displayed by verification process, i.e., by verification process object 114. FIG. 7 illustrates an example in which the verification result 115a corresponding to the verification process object 114a and the verification result 115b corresponding to the verification process object 114b affirm the validity of the sequence program 200e, and the verification result 115c corresponding to the verification process object 114c denies the validity of the sequence program 200e.
図3に戻り、説明を続ける。検証装置200は、新たな単位処理の定義を支援する単位処理定義支援部260も有する。
Let's return to Figure 3 to continue the explanation. The verification device 200 also has a unit process definition support section 260 that supports the definition of new unit processes.
単位処理定義支援部260は、単位処理を定義する単位処理定義環境をユーザに提供する。単位処理定義支援部260は、単位処理定義環境を用いて新たな単位処理が定義された場合は、その単位処理を、検証処理を構成する素材を集めたライブラリーとしての定義済単位処理群データ200gに追加する。この結果、その単位処理を表す単位処理オブジェクトが既述の単位処理オブジェクト群122に含められる。
The unit process definition support section 260 provides the user with a unit process definition environment for defining a unit process. When a new unit process is defined using the unit process definition environment, the unit process definition support section 260 adds the unit process to the defined unit process group data 200g, which is a library of materials that make up a verification process. As a result, a unit process object representing the unit process is included in the unit process object group 122 described above.
単位処理定義支援部260は、定義可能な単位処理の種類を複数提示させる種類提示部230と、ユーザが定義しようとしている単位処理の種類が、種類提示部230によって提示された複数の種類のいずれに該当するかの選択を、ユーザから受け付ける種類選択部240とを有する。
The unit process definition support section 260 has a type presentation section 230 that presents multiple types of unit processes that can be defined, and a type selection section 240 that accepts a selection from the user as to which of the multiple types presented by the type presentation section 230 the type of unit process that the user is trying to define corresponds to.
また、単位処理定義支援部260は、種類選択部240を用いて選択された種類に応じた入力項目を提示する必要事項入力部250を有する。必要事項入力部250は、ユーザが選択した種類の単位処理を定義するのに必要な必要事項の、提示した入力項目への入力を、ユーザから受け付ける。
The unit process definition support unit 260 also has a necessary item input unit 250 that presents input items according to the type selected using the type selection unit 240. The necessary item input unit 250 accepts input from the user of the necessary items required to define the type of unit process selected by the user into the presented input items.
既述のとおり、本実施の形態では、単位処理オブジェクト群122に、単位処理としての編集処理を表す単位処理オブジェクトが含まれる。つまり、ユーザは、単位処理として編集処理を定義することができる。そのため、種類提示部230によって提示される複数の種類には、実行装置400によるシーケンスプログラム200eの実行に先立ってシーケンスプログラム200eに編集を施すという種類(以下、編集種類という。)が含まれる。
As described above, in this embodiment, the unit process object group 122 includes a unit process object that represents an edit process as a unit process. In other words, the user can define an edit process as a unit process. Therefore, the multiple types presented by the type presentation unit 230 include a type (hereinafter referred to as an edit type) in which editing is performed on the sequence program 200e prior to execution of the sequence program 200e by the execution device 400.
必要事項入力部250は、種類選択部240によって、種類として編集種類の選択が受け付けられた場合に、シーケンスプログラム200eに施す編集の種別の選択をユーザから受け付ける編集種別選択部251を有する。
The required information input unit 250 has an edit type selection unit 251 that accepts, from the user, the selection of the type of edit to be applied to the sequence program 200e when the type selection unit 240 accepts the selection of the edit type as the type.
具体的には、編集種別選択部251は、編集の種別が、シーケンスプログラム200eへのプログラムコードの追加、シーケンスプログラム200eからのプログラムコードの削除、及びシーケンスプログラム200eの一部の内容の変更、のうちのいずれであるかの選択をユーザから受け付ける。
Specifically, the edit type selection unit 251 accepts a selection from the user as to the type of edit: adding program code to the sequence program 200e, deleting program code from the sequence program 200e, or changing part of the content of the sequence program 200e.
また、必要事項入力部250は、編集の種別の選択に引き続いて、シーケンスプログラム200eにおけるその編集を行う位置(以下、編集位置という。)の入力をユーザから受け付ける編集位置指定部252を有する。なお、編集位置は、上述した必要事項の一例である。
The required item input unit 250 also has an edit position designation unit 252 that accepts input from the user of the position in the sequence program 200e where the edit is to be performed (hereinafter referred to as the edit position) following the selection of the type of edit. The edit position is an example of the required items described above.
また、必要事項入力部250は、編集位置の入力に引き続いて、その編集の内容(以下、編集内容という。)の入力をユーザから受け付ける編集内容入力部253を有する。なお、編集内容は、上述した必要事項の他の一例である。
The required item input unit 250 also has an edited content input unit 253 that accepts input of the edited content (hereinafter, edited content) from the user following input of the edit position. The edited content is another example of the required items described above.
以下、図8-図10を参照し、単位処理定義支援部260の動作を、具体例を挙げて説明する。
Below, the operation of the unit process definition support unit 260 will be explained with specific examples, with reference to Figures 8 to 10.
図8は、種類提示部230が表示装置200bに表示させる種類選択画面130を示す。なお、この種類選択画面130は、図5に示した検証処理定義画面120で、単位処理の定義の開始を指示するボタン126が押下された場合に表示される。
FIG. 8 shows the type selection screen 130 that the type presentation unit 230 causes the display device 200b to display. Note that this type selection screen 130 is displayed when the button 126, which instructs the user to start defining the unit process, is pressed on the verification process definition screen 120 shown in FIG. 5.
種類選択画面130には、定義可能な単位処理の種類として、(a1)シーケンスプログラム200eの編集を行うという種類、(a2)実行装置400へのシーケンスプログラム200eの書き込みを行うという種類、(a3)シーケンスプログラム200eに含まれる変数としてのデバイス又はラベルの現在の値を変更するという種類、(a4)シーケンスプログラム200eに含まれる変数としてのデバイス又はラベルの値が期待した値であるか否かを確認するという種類、が提示されている。
The type selection screen 130 presents the following types of unit processing that can be defined: (a1) editing the sequence program 200e; (a2) writing the sequence program 200e to the execution device 400; (a3) changing the current value of a device or label as a variable included in the sequence program 200e; and (a4) checking whether the value of a device or label as a variable included in the sequence program 200e is the expected value.
ユーザは、提示された種類(a1)-(a4)のうち、どの種類の単位処理を定義しようとしているかを選択する。選択には、入力装置200cが用いられる。図8は、種類(a1)、即ち既述の編集種類が選択された状況を例示している。以下では、種類(a1)が選択された場合の単位処理定義支援部260の動作を述べる。
The user selects which type of unit process he or she wishes to define from the presented types (a1)-(a4). The input device 200c is used for the selection. Figure 8 illustrates an example of a situation in which type (a1), i.e., the editing type described above, has been selected. The following describes the operation of the unit process definition support section 260 when type (a1) has been selected.
ユーザは、編集種類である種類(a1)を選択した後、選択の完了を指示するボタン131を押下する。必要事項入力部250は、ユーザによって選択された種類が編集種類である場合、種類選択画面130を、図9に示す編集位置指定画面140へと遷移させる。
After the user selects the editing type, type (a1), he/she presses button 131 to indicate completion of the selection. If the type selected by the user is an editing type, the required information input unit 250 transitions the type selection screen 130 to the editing position designation screen 140 shown in FIG. 9.
図9に示すように、編集位置指定画面140には、編集の種別が複数提示される編集種別提示欄141が設けられている。具体的には、編集の種別として、(b1)シーケンスプログラム200eへのプログラムコードの追加、(b2)シーケンスプログラム200eからのプログラムコードの削除、及び(b3)シーケンスプログラム200eの一部の内容の変更、の3種が編集種別提示欄141に提示される。
As shown in FIG. 9, the edit position designation screen 140 has an edit type presentation field 141 in which multiple edit types are presented. Specifically, the edit type presentation field 141 presents three types of edits: (b1) adding program code to the sequence program 200e, (b2) deleting program code from the sequence program 200e, and (b3) changing part of the content of the sequence program 200e.
ユーザは、種別選択ボタン142を用いて、編集種別提示欄141に提示される複数の種別(b1)-(b3)の中から、所望のものを選択する。図9は、種別(b1)が選択された状況を例示している。
The user uses the type selection button 142 to select the desired type from among the multiple types (b1)-(b3) presented in the edit type presentation field 141. Figure 9 shows an example of the situation in which type (b1) has been selected.
また、編集位置指定画面140には、シーケンスプログラム200eの編集位置を入力する編集位置入力項目145が設けられている。ユーザは、編集位置入力項目145に編集位置を入力する。入力には、入力装置200cが用いられる。
The editing position specification screen 140 also has an editing position input field 145 for inputting the editing position of the sequence program 200e. The user inputs the editing position into the editing position input field 145. The input device 200c is used for input.
なお、編集位置入力項目145は、種類選択部240を用いて選択された種類に応じた入力項目の一例である。また、編集位置入力項目145に入力する編集位置は、入力項目に入力する必要事項の一例である。
Note that the editing position input field 145 is an example of an input field according to the type selected using the type selection unit 240. Also, the editing position input into the editing position input field 145 is an example of a required item to be input into an input field.
具体的には、編集位置入力項目145は、シーケンスプログラム200eにおける行を入力する行入力項目143と、列を入力する列入力項目144とで構成されている。ユーザは、行入力項目143に、編集を行う行の番号を入力し、列入力項目144に、編集を行う列の番号を入力する。
Specifically, the edit position input field 145 is composed of a row input field 143 for inputting a row in the sequence program 200e, and a column input field 144 for inputting a column. The user inputs the number of the row to be edited in the row input field 143, and the number of the column to be edited in the column input field 144.
ユーザは、編集の種別及び編集位置を入力した後、その入力の完了を指示するボタン146を押下する。編集内容入力部253は、ボタン146が押下されると、編集位置指定画面140を、図10に示す編集内容入力画面150へと遷移させる。
After inputting the type of edit and the edit position, the user presses button 146 to indicate completion of the input. When button 146 is pressed, the edit content input unit 253 transitions the edit position designation screen 140 to the edit content input screen 150 shown in FIG. 10.
図10に示すように、編集内容入力画面150には、編集内容を入力する編集内容入力項目151が設けられている。ユーザは、編集内容入力項目151に編集内容を入力する。入力には、入力装置200cが用いられる。
As shown in FIG. 10, the edited content input screen 150 has an edited content input field 151 for inputting edited content. The user inputs the edited content into the edited content input field 151. The input device 200c is used for input.
具体的には、ユーザは、先に自己が選択した種別(b1)に応じた編集内容、即ち、シーケンスプログラム200eに追加する具体的なプログラムコードを、編集内容入力項目151に入力する。
Specifically, the user inputs the editing content corresponding to the type (b1) that he or she previously selected, i.e., the specific program code to be added to the sequence program 200e, into the editing content input field 151.
なお、編集内容入力項目151は、種類選択部240を用いて選択された種類、及び編集種別選択部251を用いて選択された種別に応じた入力項目の一例である。また、編集内容入力項目151に入力する編集内容は、入力項目に入力する必要事項の他の一例である。
The editing content input field 151 is an example of an input field corresponding to the type selected using the type selection unit 240 and the type selected using the editing type selection unit 251. The editing content entered in the editing content input field 151 is another example of the necessary information to be entered in an input field.
また、編集内容入力画面150には、これまでの操作で定義された単位処理の名称をユーザが入力する単位処理名称入力欄152が設けられている。図10では、単位処理名称入力欄152に“プログラム編集2”という名称がユーザによって入力されている。入力には、入力装置200cが用いられる。
The edit content input screen 150 also has a unit process name input field 152 where the user inputs the name of the unit process defined by the operations up to that point. In FIG. 10, the name "Program Edit 2" has been input by the user into the unit process name input field 152. The input device 200c is used for input.
ユーザは、以上のようにして、単位処理定義環境を用いて所望の単位処理を定義すると、定義の完了を指示するボタン153を押下する。単位処理定義支援部260は、ボタン153が押下されると、編集内容入力画面150を、図5に示した検証処理定義画面120に戻す。
When the user has defined the desired unit process using the unit process definition environment in the above manner, he or she presses button 153, which indicates completion of the definition. When button 153 is pressed, the unit process definition support section 260 returns the edit content input screen 150 to the verification process definition screen 120 shown in FIG. 5.
図5に示したように、単位処理オブジェクト群122には、先にユーザが入力した“プログラム編集2”という名称の単位処理を表す単位処理オブジェクト122bが含まれている。これは、単位処理定義支援部260が、図10に示したボタン153の押下を契機として、新たに定義された単位処理を、ライブラリーとしての定義済単位処理群データ200gに追加したことによる。
As shown in FIG. 5, the unit process object group 122 includes a unit process object 122b that represents the unit process named "Program Edit 2" that was previously input by the user. This is because the unit process definition support section 260, upon pressing the button 153 shown in FIG. 10, added the newly defined unit process to the defined unit process group data 200g as a library.
図8に戻り、説明を続ける。種類選択画面130で、ユーザが、既述の種類(a3)、即ち“デバイス/ラベルの現在値変更”を選択した場合は、必要事項入力部250は、現在値を変更する対象がデバイスであるかラベルであるかの選択を受け付け、かつ現在値を変更する対象の名称を入力するための入力項目を提示し、かつ変更後の値を入力するための入力項目を提示する。ここで、対象の名称、変更後の値は、それぞれ既述の必要事項の一例である。
Returning to FIG. 8, the explanation will continue. When the user selects the type (a3) already described, i.e., "change device/label current value" on the type selection screen 130, the required item input unit 250 accepts the selection of whether the target for which the current value is to be changed is a device or a label, and presents an input field for inputting the name of the target for which the current value is to be changed, and presents an input field for inputting the changed value. Here, the target name and the changed value are each an example of the required items already described.
また、ユーザが、既述の種類(a4)、即ち“デバイス/ラベルの確認”を選択した場合は、必要事項入力部250は、現在値を確認する対象がデバイスであるかラベルであるかの選択を受け付け、かつ現在値を確認する対象の名称を入力するための入力項目を提示し、かつその現在値として期待される正しい値である期待値を入力するための入力項目を提示する。ここで、対象の名称、期待値は、それぞれ既述の必要事項の一例である。
Furthermore, if the user selects the type (a4) already described, i.e., "check device/label," the required item input unit 250 accepts the selection of whether the target for checking the current value is a device or a label, and presents an input field for inputting the name of the target for checking the current value, and presents an input field for inputting the expected value, which is the correct value expected for that current value. Here, the name of the target and the expected value are each examples of the required items already described.
なお、上述した種類(a4)の単位処理の定義が完了し、その単位処理を表す単位処理オブジェクトが、検証処理の構成要素として図5の検証処理定義画面120でユーザによって選択された場合、上記期待値は検証に用いられる。
When the definition of the above-mentioned type (a4) of unit process is completed and the unit process object representing that unit process is selected by the user as a component of the verification process on the verification process definition screen 120 in FIG. 5, the above expected value is used for verification.
即ち、検証処理実行部220は、シーケンスプログラム200eを実行した実行装置400から取得した実行結果としての、デバイス又はラベルの値が、上記期待値と一致するか否かを判定する。検証処理実行部220は、実行結果が上記期待値に一致する場合、シーケンスプログラム200eの妥当性を肯定し、実行結果が上記期待値に一致しない場合、シーケンスプログラム200eの妥当性を否定する。
In other words, the verification process execution unit 220 determines whether the device or label value obtained as the execution result from the execution device 400 that executed the sequence program 200e matches the expected value. If the execution result matches the expected value, the verification process execution unit 220 affirms the validity of the sequence program 200e, and if the execution result does not match the expected value, the verification process execution unit 220 denies the validity of the sequence program 200e.
図3に戻り、説明を続ける。検証装置200は、既述の単位処理定義環境を用いて既に定義された単位処理(以下、定義済単位処理という。)の内容を編集するための定義済単位処理編集部270も備える。
Returning to FIG. 3, the explanation will be continued. The verification device 200 also includes a defined unit process editing section 270 for editing the contents of a unit process that has already been defined using the unit process definition environment described above (hereinafter, referred to as a defined unit process).
定義済単位処理編集部270は、過去に定義された定義済単位処理の一覧を提示させ、提示された定義済単位処理の一覧の中から雛型として使用するものの選択をユーザから受け付ける。そして、定義済単位処理編集部270は、選択された定義済単位処理の内容を編集することにより、その内容を雛型に用いてその定義済単位処理とは異なる単位処理を定義する定義済単位処理編集環境をユーザに提供する。
The defined unit process editing unit 270 presents a list of previously defined unit processes and accepts the user's selection of a defined unit process to be used as a template from the presented list of defined unit processes. The defined unit process editing unit 270 then edits the contents of the selected defined unit process, thereby providing the user with a defined unit process editing environment in which the contents are used as a template to define a unit process different from the previously defined unit process.
なお、定義済単位処理編集部270は、編集の対象とする定義済単位処理の内容を、定義済単位処理群データ200gから取得する。また、定義済単位処理編集部270は、編集によって新たに定義された単位処理を、定義済単位処理群データ200gに追加する。
The defined unit process editing unit 270 obtains the contents of the defined unit process to be edited from the defined unit process group data 200g. The defined unit process editing unit 270 also adds the unit process newly defined by editing to the defined unit process group data 200g.
図5を参照し、定義済単位処理編集部270によって提供される定義済単位処理編集環境について具体的に説明する。
Referring to Figure 5, the defined unit process editing environment provided by the defined unit process editing unit 270 will be specifically described.
図5に示したように、検証処理定義画面120には、単位処理オブジェクト群122を構成する単位処理オブジェクトごとにボタン124が設けられている。
As shown in FIG. 5, the verification process definition screen 120 has a button 124 for each unit process object that makes up the unit process object group 122.
ユーザは、編集したい定義済単位処理を表す単位処理オブジェクトに対応するボタン124を押下することで、その単位処理オブジェクトが表す定義済単位処理の内容を編集することができる。このため、その定義済単位処理の内容を雛型に用いて、その定義済単位処理とは異なる単位処理を容易に定義することができる。
The user can edit the contents of the defined unit process represented by the unit process object by pressing the button 124 corresponding to the unit process object that represents the defined unit process that the user wants to edit. This makes it easy to define a unit process that is different from the defined unit process by using the contents of the defined unit process as a template.
また、検証処理定義画面120には、定義済単位処理のコピーを指示するボタン127が設けられている。ボタン127は、単位処理オブジェクト群122のうちの所望の単位処理オブジェクトが選択された状態で押下される。
The verification process definition screen 120 also has a button 127 for instructing copying of a defined unit process. The button 127 is pressed when a desired unit process object is selected from the unit process object group 122.
これにより、その選択された単位処理オブジェクトが表す定義済単位処理のコピーを編集することもできる。つまり、編集の対象とする定義済単位処理及びそれを表す単位処理オブジェクトを残したまま、その定義済単位処理とは別の単位処理を定義することができる。
This also allows you to edit a copy of the defined unit process represented by the selected unit process object. In other words, you can define a unit process that is different from the defined unit process while leaving the defined unit process that you want to edit and the unit process object that represents it intact.
図3に戻り、説明を続ける。検証装置200は、既述の検証処理定義環境を用いて既に定義された検証処理(以下、定義済検証処理という。)の各々の内容を、定義済検証処理群データ200hとして保持している。なお、定義済検証処理群データ200hは、図2に示した記憶装置200dに記憶されている。
Returning to FIG. 3, the explanation will be continued. The verification device 200 holds the contents of each verification process that has already been defined using the verification process definition environment described above (hereinafter, referred to as a defined verification process) as defined verification process group data 200h. The defined verification process group data 200h is stored in the storage device 200d shown in FIG. 2.
また、検証装置200は、定義済検証処理の内容を編集するための定義済検証処理編集部280も備える。
The verification device 200 also includes a defined verification process editing unit 280 for editing the contents of the defined verification process.
定義済検証処理編集部280は、過去に定義された定義済検証処理の一覧を提示させ、提示された定義済検証処理の一覧の中から雛型として使用するものの選択をユーザから受け付ける。そして、定義済検証処理編集部280は、選択された定義済検証処理の内容を編集することにより、その内容を雛型に用いてその定義済検証処理とは異なる検証処理を定義する定義済検証処理編集環境をユーザに提供する。
The predefined verification process editing unit 280 presents a list of predefined verification processes defined in the past, and accepts the user's selection of a process to be used as a template from the presented list of predefined verification processes. The predefined verification process editing unit 280 then edits the contents of the selected predefined verification process, thereby providing the user with a predefined verification process editing environment in which the contents are used as a template to define a verification process different from the predefined verification process.
なお、定義済検証処理編集部280は、編集の対象とする定義済検証処理の内容を、定義済検証処理群データ200hから取得する。また、定義済検証処理編集部280は、編集によって新たに定義された検証処理を、定義済検証処理群データ200hに追加する。
The defined verification process editing unit 280 obtains the contents of the defined verification process to be edited from the defined verification process group data 200h. The defined verification process editing unit 280 also adds the verification process newly defined by editing to the defined verification process group data 200h.
図7を参照し、定義済検証処理編集部280によって提供される定義済検証処理編集環境について具体的に説明する。
Referring to Figure 7, the defined verification process editing environment provided by the defined verification process editing unit 280 will be specifically described.
図7に示したように、基本画面110においては、定義済検証処理を表す検証処理オブジェクト114を複数表示させることができる。そして、検証処理オブジェクト114ごとに、ボタン116が設けられている。
As shown in FIG. 7, a plurality of verification process objects 114 representing defined verification processes can be displayed on the basic screen 110. A button 116 is provided for each verification process object 114.
ユーザは、編集したい定義済検証処理を表す検証処理オブジェクトに対応するボタン116を押下することで、その検証処理オブジェクトが表す定義済検証処理の内容を編集することができる。このため、その定義済検証処理の内容を雛型に用いて、その定義済検証処理とは異なる検証処理を容易に定義することができる。
By pressing button 116 corresponding to the verification process object that represents the predefined verification process that the user wants to edit, the user can edit the contents of the predefined verification process represented by that verification process object. This makes it possible to easily define a verification process that is different from the predefined verification process by using the contents of the predefined verification process as a template.
また、基本画面110には、定義済検証処理のコピーを指示するボタン112が設けられている。ボタン112は、所望の検証処理オブジェクト114が選択された状態で押下される。これにより、その選択された検証処理オブジェクトが表す定義済検証処理のコピーを編集することもできる。つまり、編集の対象とする定義済検証処理及びそれを表す検証処理オブジェクトを残したまま、その定義済検証処理とは別の検証処理を定義することができる。
The basic screen 110 also has a button 112 for instructing to copy a defined verification process. The button 112 is pressed when a desired verification process object 114 is selected. This makes it possible to edit a copy of the defined verification process represented by the selected verification process object. In other words, it is possible to define a verification process that is different from the defined verification process, while leaving the defined verification process to be edited and the verification process object that represents it intact.
以下、以上説明した検証装置200の動作をまとめる。まず、図11を参照し、検証処理定義支援部210及び検証処理実行部220が行う検証処理定義支援処理を述べる。
The operation of the verification device 200 described above will be summarized below. First, with reference to FIG. 11, the verification process definition support process performed by the verification process definition support unit 210 and the verification process execution unit 220 will be described.
図11に示す検証処理定義支援処理は、コンピュータが検証処理定義環境をユーザに提供する検証処理定義支援ステップの一例としてのステップS11-S14と、コンピュータが検証を行う検証処理実行ステップの一例としてのステップS15-S16とを含む。以下、具体的に説明する。
The verification process definition support process shown in FIG. 11 includes steps S11-S14 as an example of a verification process definition support step in which a computer provides a verification process definition environment to a user, and steps S15-S16 as an example of a verification process execution step in which a computer performs verification. A detailed explanation is provided below.
まず、単位処理オブジェクト群提示部211が、ライブラリーとしての単位処理オブジェクト群122を提示させる(ステップS11)。提示される単位処理オブジェクト群122には、単位処理としての実行条件付与処理を表す単位処理オブジェクト、及び単位処理としての編集処理を表す単位処理オブジェクトが含まれる。
First, the unit process object group presentation unit 211 presents the unit process object group 122 as a library (step S11). The presented unit process object group 122 includes a unit process object that represents an execution condition assignment process as a unit process, and a unit process object that represents an editing process as a unit process.
なお、本ステップS11は、コンピュータが単位処理オブジェクト群122を提示させる単位処理オブジェクト群提示ステップの一例である。
Note that step S11 is an example of a unit process object group presentation step in which the computer presents the unit process object group 122.
次に、検証処理定義支援部210が、提示された単位処理オブジェクト群122からの、ユーザが所望する複数の単位処理オブジェクトの選択と、選択する複数の単位処理オブジェクトが表す複数の単位処理の間の実行順序の指定とを、ユーザから受け付ける(ステップS12)。選択される単位処理オブジェクトには、実行条件付与処理を表す単位処理オブジェクトが含まれる。
Then, the verification process definition support unit 210 accepts from the user a selection of multiple unit process objects desired by the user from the presented unit process object group 122, and a specification of the execution order between the multiple unit processes represented by the multiple selected unit process objects (step S12). The selected unit process objects include a unit process object representing an execution condition assignment process.
次に、検証処理定義支援部210が、ユーザによって選択された複数の単位処理オブジェクトの各々が表す単位処理の、ユーザによって指定された実行順序での組み合わせによって検証処理を定義する(ステップS13)。
Next, the verification process definition support unit 210 defines a verification process by combining the unit processes represented by each of the multiple unit process objects selected by the user in the execution order specified by the user (step S13).
検証処理定義支援部210は、ステップS13で定義した検証処理の内容を、定義済検証処理群データ200hに追記することで記憶装置200dに保存する(ステップS14)。このため、次回以降は、ステップS13で定義した検証処理の内容を、別の検証処理を定義するための雛型として使用できる。
The verification process definition support unit 210 saves the contents of the verification process defined in step S13 in the storage device 200d by adding it to the defined verification process group data 200h (step S14). Therefore, from the next time onwards, the contents of the verification process defined in step S13 can be used as a template for defining another verification process.
なお、ステップS12-S14は、コンピュータがユーザに検証処理定義環境を提供する検証処理定義環境提供ステップの一例である。
Note that steps S12-S14 are an example of a verification process definition environment providing step in which the computer provides the user with a verification process definition environment.
次に、検証処理実行部220が、ステップS13で定義された検証処理を実行することにより、実行装置400に、実行条件が反映された態様でシーケンスプログラム200eを実行させる(ステップS15)。そして、検証処理実行部220が、検証の結果を提示させる(ステップS16)。以上で、検証処理定義支援処理を終える。
Next, the verification process execution unit 220 executes the verification process defined in step S13, causing the execution device 400 to execute the sequence program 200e in a manner that reflects the execution conditions (step S15). The verification process execution unit 220 then causes the execution device 400 to present the results of the verification (step S16). This completes the verification process definition support process.
次に、図12を参照し、単位処理定義支援部260が行う単位処理定義支援処理を述べる。
Next, the unit process definition support process performed by the unit process definition support unit 260 will be described with reference to FIG. 12.
図12に示すように、まず、種類提示部230が、定義可能な単位処理の種類を複数提示させる(ステップS21)。次に、種類選択部240が、ユーザが定義しようとしている単位処理の種類が、種類提示部230によって提示された複数の種類のいずれに該当するかの選択を、ユーザから受け付ける(ステップS22)。
As shown in FIG. 12, first, the type presentation unit 230 presents multiple types of unit processes that can be defined (step S21). Next, the type selection unit 240 accepts a selection from the user as to which of the multiple types presented by the type presentation unit 230 the type of unit process that the user is trying to define corresponds to (step S22).
次に、種類選択部240によって、単位処理の種類として編集種類の選択が受け付けられた場合に、編集種別選択部251が、その編集の種別の選択をユーザから受け付ける(ステップS23)。
Next, when the type selection unit 240 accepts the selection of an edit type as the type of unit processing, the edit type selection unit 251 accepts the selection of the edit type from the user (step S23).
次に、編集の種別の選択に引き続いて、編集位置指定部252が、シーケンスプログラム200eにおける編集位置の入力をユーザから受け付ける(ステップS24)。次に、編集位置の入力に引き続いて、編集内容入力部253が、編集内容の入力をユーザから受け付ける(ステップS25)。
Next, following the selection of the editing type, the editing position designation unit 252 accepts input of the editing position in the sequence program 200e from the user (step S24). Next, following the input of the editing position, the editing content input unit 253 accepts input of the editing content from the user (step S25).
単位処理定義支援部260は、ステップS23-25で受け付けた入力事項によって、単位処理としての編集処理を定義する(ステップS26)。
The unit process definition support unit 260 defines the editing process as a unit process based on the input items received in steps S23-25 (step S26).
そして、単位処理定義支援部260は、定義した単位処理としての編集処理の内容を、定義済単位処理群データ200gに追記することで記憶装置200dに保存する(ステップS27)。このため、次回以降は、ステップS26で定義された編集処理の内容を、別の編集処理を定義するための雛型として使用できる。
Then, the unit process definition support unit 260 saves the contents of the edit process defined as the unit process in the storage device 200d by adding it to the defined unit process group data 200g (step S27). Therefore, from the next time onwards, the contents of the edit process defined in step S26 can be used as a template for defining another edit process.
以上説明した本実施の形態に係る検証装置200によれば、次の効果が得られる。
The verification device 200 according to the present embodiment described above provides the following advantages.
従来の装置は、予め選択肢として準備された複数の検証処理をユーザに提示する機能は有するが、提示される選択肢には無い、新たな検証処理を定義するのに適した環境をユーザに提供するものではなかった。
Although conventional devices have the functionality to present the user with multiple verification processes that are prepared in advance as options, they do not provide the user with an environment suitable for defining a new verification process that is not included in the presented options.
これに対し、本実施の形態に係る検証装置200では、予め選択肢として準備された複数の定義済検証処理をユーザに提示する機能が定義済検証処理編集部280によって実現されるのみならず、検証処理定義支援部210によって、ユーザに検証処理定義環境が提供される。このため、ユーザは、提示される選択肢には無い、新たな検証処理を容易に定義することができる。
In contrast, in the verification device 200 according to this embodiment, not only is the predefined verification process editing unit 280 able to provide the user with a function for presenting multiple predefined verification processes that have been prepared as options, but the verification process definition support unit 210 also provides the user with a verification process definition environment. This allows the user to easily define a new verification process that is not included in the options presented.
具体的には、ユーザは、任意の検証処理を構築するための汎用部品の一覧としての単位処理オブジェクト群122の中から、所望の検証処理を構築するための複数の汎用部品としての単位処理オブジェクトを選択すればよい。検証処理定義環境提供部212が、ユーザによって選択された複数の単位処理オブジェクトの各々が表す単位処理の組み合わせによって検証処理を定義する。
Specifically, the user only needs to select multiple unit process objects as generic components for constructing a desired verification process from the unit process object group 122, which is a list of generic components for constructing any verification process. The verification process definition environment providing unit 212 defines the verification process by combining unit processes represented by each of the multiple unit process objects selected by the user.
また、従来の装置は、予め選択肢として準備された複数の検証処理をユーザに提示する機能は有するが、編集処理を含む検証処理をユーザに提示するものではなかった。一方、本実施の形態では、ユーザに提示される単位処理オブジェクト群122に、編集処理を表す単位処理オブジェクトが含まれている。従って、ユーザが、編集処理を表す単位処理オブジェクトを選択した場合には、編集処理を含む検証処理が定義される。
In addition, conventional devices have the function of presenting to the user a number of verification processes prepared in advance as options, but do not present to the user verification processes that include editing processes. On the other hand, in this embodiment, the unit process object group 122 presented to the user includes a unit process object that represents editing processes. Therefore, when the user selects a unit process object that represents editing processes, a verification process that includes editing processes is defined.
従来、或る遷移条件が成立した場合の制御動作を検証したい場合、その遷移条件が成立しにくいものであるときは、その制御動作の検証に手間を要していた。具体的には、上記遷移条件を成立させるために、多くの様々なデバイス又はラベルの値を調整する必要があり、その調整に手間を要していた。つまり、検証の実行条件の指定に手間を要していた。
Conventionally, when one wanted to verify the control operation when a certain transition condition was met, if that transition condition was difficult to meet, verifying that control operation was time-consuming. Specifically, in order to meet the transition condition, it was necessary to adjust the values of many different devices or labels, and this adjustment was time-consuming. In other words, it was time-consuming to specify the conditions for executing the verification.
これに対し、本実施の形態によれば、編集処理によって上記遷移条件を一時的に無効化することができるので、デバイス又はラベルの値を調整する手間を省ける。一例として、シーケンスプログラム200eが、割込み条件の成立によって、特定のプログラムモジュール(以下、割込みプログラムという。)へ遷移する構造を有する場合、編集処理で割込み条件を無効化することで、割込み条件の成立によらずに、直ちに割込みプログラムの内容を検証できる。
In contrast, according to this embodiment, the above transition conditions can be temporarily disabled by editing, eliminating the need to adjust device or label values. As an example, if the sequence program 200e has a structure that transitions to a specific program module (hereinafter referred to as an interrupt program) when an interrupt condition is satisfied, disabling the interrupt condition in editing makes it possible to immediately verify the contents of the interrupt program regardless of whether the interrupt condition is satisfied.
なお、編集処理による編集は、検証の便宜のために一時的に反映されるものである。検証の後には、シーケンスプログラム200eの内容が、検証処理実行部220によって、編集前の内容に自動的に戻される。
Note that the edits made through the editing process are reflected temporarily for the convenience of verification. After verification, the contents of the sequence program 200e are automatically restored to the contents before the edits by the verification process execution unit 220.
また、本実施の形態によれば、上記編集処理を含む単位処理そのものを定義する単位処理定義環境もユーザに提供される。このため、ユーザは、既に作成された定義済単位処理とは異なる、新たな単位処理を、その単位処理の種類に応じた必要事項の入力を促されながら、容易に定義することができる。ユーザは、特に編集処理を、編集の種別の選択、編集位置の入力、及び編集内容の入力を経て、容易に定義することができる。
Furthermore, according to this embodiment, the user is also provided with a unit process definition environment for defining the unit process itself, including the above-mentioned editing process. Therefore, the user can easily define a new unit process that is different from the already created defined unit process, while being prompted to input the necessary information according to the type of unit process. In particular, the user can easily define the editing process by selecting the type of editing, inputting the editing position, and inputting the editing content.
以上、実施の形態について説明した。以下に述べる変形も可能である。
The above describes an embodiment. The following variations are also possible.
図2に示す検証プログラム200fを既存のコンピュータにインストールすることで、そのコンピュータを実施の形態に係る検証装置200として機能させることができる。コンピュータの概念には、エンジニアリングツール及びPLCが含まれるものとする。エンジニアリングツール又はPLCは、実行装置400としてのシミュレータを備えるものであってもよい。検証プログラム200fは、通信ネットワークを介して配布してもよいし、コンピュータ読み取り可能な非一時的な記録媒体に格納して配布してもよい。
By installing the verification program 200f shown in FIG. 2 in an existing computer, the computer can function as the verification device 200 according to the embodiment. The concept of computer includes an engineering tool and a PLC. The engineering tool or the PLC may include a simulator as the execution device 400. The verification program 200f may be distributed via a communication network, or may be stored in a non-transitory computer-readable recording medium and distributed.
本開示は、本開示の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされる。上述した実施の形態は、本開示を説明するためのものであり、本開示の範囲を限定するものではない。本開示の範囲は、実施の形態ではなく、請求の範囲によって示される。請求の範囲内及びそれと同等の開示の意義の範囲内で施される様々な変形が、本開示の範囲内とみなされる。
Various embodiments and modifications of the present disclosure are possible without departing from the broad spirit and scope of the present disclosure. The above-described embodiments are intended to explain the present disclosure and do not limit the scope of the present disclosure. The scope of the present disclosure is indicated by the claims, not the embodiments. Various modifications made within the scope of the claims and the meaning of the disclosure equivalent thereto are deemed to be within the scope of the present disclosure.
110 基本画面、114,114a,114b,114c 検証処理オブジェクト、115,115a,115b,115c 検証結果、120 検証処理定義画面、121 名称入力欄、122 単位処理オブジェクト群、122a,122b,122c 単位処理オブジェクト、123 スクロールボタン、128 実行順序指定欄、130 種類選択画面、140 編集位置指定画面、141 編集種別提示欄、142 種別選択ボタン、143 行入力項目、144 列入力項目、145 編集位置入力項目(入力項目)、150 編集内容入力画面、151 編集内容入力項目(入力項目)、152 単位処理名称入力欄、111,112,113,116,124,125,126,127,131,146,153 ボタン、200 検証装置、200a 通信装置、200b 表示装置、200c 入力装置、200d 記憶装置、200e シーケンスプログラム、200f 検証プログラム、200g 定義済単位処理群データ、200h 定義済検証処理群データ、200i プロセッサ、210 検証処理定義支援部、211 単位処理オブジェクト群提示部、212 検証処理定義環境提供部、220 検証処理実行部、230 種類提示部、240 種類選択部、250 必要事項入力部、251 編集種別選択部、252 編集位置指定部、253 編集内容入力部、260 単位処理定義支援部、270 定義済単位処理編集部、280 定義済検証処理編集部、400 実行装置、600 検証システム。
110 Basic screen, 114, 114a, 114b, 114c Verification process object, 115, 115a, 115b, 115c Verification result, 120 Verification process definition screen, 121 Name input field, 122 Unit process object group, 122a, 122b, 122c Unit process object, 123 Scroll button, 128 Execution order specification field, 130 Type selection screen, 140 editing position designation screen, 141 editing type presentation field, 142 type selection button, 143 row input field, 144 column input field, 145 editing position input field (input field), 150 editing content input screen, 151 editing content input field (input field), 152 unit processing name input field, 111, 112, 113, 116, 124, 125, 126, 127, 131, 14 6,153 button, 200 verification device, 200a communication device, 200b display device, 200c input device, 200d storage device, 200e sequence program, 200f verification program, 200g defined unit processing group data, 200h defined verification processing group data, 200i processor, 210 verification processing definition support section, 211 unit processing object group presentation section, 212 verification processing definition environment provision section, 220 verification processing execution section, 230 type presentation section, 240 type selection section, 250 required item input section, 251 editing type selection section, 252 editing position designation section, 253 editing content input section, 260 unit processing definition support section, 270 defined unit processing editing section, 280 defined verification processing editing section, 400 execution device, 600 verification system.
Claims (12)
- プログラマブルロジックコントローラにインストールされるシーケンスプログラムの内容の妥当性を検証するコンピュータを、
前記妥当性の検証を実現する検証処理を定義する検証処理定義環境をユーザに提供する検証処理定義支援部であって、前記検証処理には、前記シーケンスプログラムを実行する実行装置に対して、前記検証のための実行条件を付与する実行条件付与処理が含まれる前記検証処理定義支援部と、
前記検証処理定義環境を用いて定義された前記検証処理を実行することにより、(I)前記実行条件が反映された態様で前記実行装置に前記シーケンスプログラムを実行させ、かつ(II)前記実行装置から前記シーケンスプログラムの実行結果を取得し、取得した前記実行結果を用いて前記検証を行う検証処理実行部と、
として機能させ、
前記検証処理定義支援部は、
各々前記検証処理実行部に実行させる予め定義された単位処理を表す複数の単位処理オブジェクトで構成される単位処理オブジェクト群であって、前記単位処理としての前記実行条件付与処理を表す前記単位処理オブジェクトが含まれる前記単位処理オブジェクト群を提示させる単位処理オブジェクト群提示部と、
提示された前記単位処理オブジェクト群の中から複数の前記単位処理オブジェクトをユーザが選択することにより、選択された複数の前記単位処理オブジェクトの各々が表す前記単位処理の組み合わせによって前記検証処理を定義する前記検証処理定義環境を、該ユーザに提供する検証処理定義環境提供部と、
を有する、検証プログラム。 A computer that verifies the validity of the contents of a sequence program installed in a programmable logic controller.
a verification process definition support unit that provides a user with a verification process definition environment that defines a verification process for implementing the validity verification, the verification process including an execution condition assignment process that assigns an execution condition for the verification to an execution device that executes the sequence program;
a verification process execution unit that executes the verification process defined using the verification process definition environment, (I) causes the execution device to execute the sequence program in a manner that reflects the execution conditions, and (II) acquires an execution result of the sequence program from the execution device and performs the verification using the acquired execution result;
Function as a
The verification process definition support unit
a unit process object group presentation unit which presents a unit process object group including a unit process object which represents the execution condition assignment process as the unit process, the unit process object group being composed of a plurality of unit process objects each representing a predefined unit process to be executed by the verification process execution unit;
a verification process definition environment providing unit which, when a user selects a plurality of the unit process objects from the presented group of unit process objects, provides the user with the verification process definition environment which defines the verification process by a combination of the unit processes represented by each of the selected plurality of unit process objects;
A verification program having the following features: - 前記単位処理オブジェクト群には、
前記実行装置による前記シーケンスプログラムの実行に先立って前記シーケンスプログラムに編集を施す前記単位処理である編集処理、を表す前記単位処理オブジェクト、
が含まれる、請求項1に記載の検証プログラム。 The unit processing object group includes:
the unit process object representing an edit process, which is the unit process for editing the sequence program prior to execution of the sequence program by the execution device;
The verification program according to claim 1 , comprising: - 前記コンピュータを、
前記単位処理を定義する単位処理定義環境をユーザに提供し、かつ前記単位処理定義環境を用いて新たな前記単位処理が定義された場合に、該単位処理を表す前記単位処理オブジェクトを前記単位処理オブジェクト群に含める単位処理定義支援部、
としてさらに機能させ、
前記単位処理定義支援部は、
定義可能な前記単位処理の種類を複数提示させる種類提示部と、
前記ユーザが定義しようとしている前記単位処理の前記種類が、前記種類提示部によって提示された複数の前記種類のいずれに該当するかの選択を、前記ユーザから受け付ける種類選択部と、
前記種類選択部を用いて選択された前記種類に応じた入力項目を提示し、提示した前記入力項目への、該種類の前記単位処理を定義するのに必要な必要事項の入力を前記ユーザから受け付ける必要事項入力部と、
を有する、請求項1又は2に記載の検証プログラム。 The computer,
a unit process definition support section that provides a user with a unit process definition environment for defining the unit process, and when a new unit process is defined using the unit process definition environment, includes the unit process object representing the new unit process in the unit process object group;
It also functions as
The unit process definition support unit
a type presenting unit that presents a plurality of types of the unit process that can be defined;
a type selection unit that receives from the user a selection of one of a plurality of types presented by the type presentation unit as to which the type of the unit process that the user is about to define corresponds;
a required item input unit that presents input items corresponding to the type selected using the type selection unit and receives from the user input of required items necessary for defining the unit process of the type into the presented input items;
The verification program according to claim 1 or 2, comprising: - 前記種類提示部によって提示される複数の前記種類には、前記実行装置による前記シーケンスプログラムの実行に先立って前記シーケンスプログラムに編集を施すという編集種類が含まれ、
前記必要事項入力部は、
前記種類選択部によって前記編集種類の選択が受け付けられた場合に、前記シーケンスプログラムに施す前記編集が、前記シーケンスプログラムへのプログラムコードの追加、前記シーケンスプログラムからのプログラムコードの削除、及び前記シーケンスプログラムの一部の内容の変更、のうちのいずれであるかの選択を前記ユーザから受け付ける編集種別選択部と、
前記必要事項として、前記シーケンスプログラムにおける前記編集を行う編集位置の入力を前記ユーザから受け付ける編集位置指定部と、
前記編集位置とは別の前記必要事項として、前記編集の内容の入力を前記ユーザから受け付ける編集内容入力部と、
を有する、請求項3に記載の検証プログラム。 the plurality of types presented by the type presentation unit includes an edit type of editing the sequence program prior to execution of the sequence program by the execution device;
The required item input unit includes:
an edit type selection unit that, when the type selection unit accepts a selection of the edit type to be performed on the sequence program, accepts from the user a selection of one of adding program code to the sequence program, deleting program code from the sequence program, and changing a part of the content of the sequence program;
an edit position designation unit that accepts input of an edit position in the sequence program where the editing is to be performed from the user as the necessary item;
an editing content input unit that receives an input of the editing content from the user as the necessary item other than the editing position;
The verification program according to claim 3 , comprising: - 前記検証処理定義環境提供部は、前記検証処理定義環境において、前記単位処理オブジェクト群の中から選択された複数の前記単位処理オブジェクトが表す複数の前記単位処理の間の実行順序の指定も前記ユーザから受け付ける、
請求項1又は2に記載の検証プログラム。 the verification process definition environment providing unit also accepts, from the user, a designation of an execution order among a plurality of the unit processes represented by a plurality of the unit process objects selected from the unit process object group in the verification process definition environment.
The verification program according to claim 1 or 2. - 前記検証処理定義支援部によって、同一の前記シーケンスプログラムに対する、前記実行条件の異なる複数の前記検証処理を定義可能であり、
前記検証処理実行部は、複数の前記検証処理を一括して実行する、
請求項1又は2に記載の検証プログラム。 The verification process definition support unit is capable of defining a plurality of verification processes having different execution conditions for the same sequence program,
The verification process execution unit executes a plurality of the verification processes collectively.
The verification program according to claim 1 . - 前記検証処理実行部は、複数の前記検証処理の各々についての前記検証の結果の一覧を表示させる、
請求項6に記載の検証プログラム。 the verification process execution unit displays a list of the verification results for each of the plurality of verification processes;
The verification program according to claim 6. - 前記コンピュータを、
前記単位処理定義環境を用いて既に定義された前記単位処理である定義済単位処理の内容を編集することにより、該内容を雛型に用いて該定義済単位処理とは異なる前記単位処理を定義する定義済単位処理編集環境を前記ユーザに提供する定義済単位処理編集部、
としてさらに機能させる、請求項3に記載の検証プログラム。 The computer,
a defined unit process editing unit that provides the user with a defined unit process editing environment for editing the contents of a defined unit process, which is the unit process that has already been defined using the unit process definition environment, and for defining the unit process different from the defined unit process by using the contents as a template;
The verification program according to claim 3 , further functioning as: - 前記コンピュータを、
前記検証処理定義環境を用いて既に定義された前記検証処理である定義済検証処理の内容を編集することにより、該内容を雛型に用いて該定義済検証処理とは異なる前記検証処理を定義する定義済検証処理編集環境を前記ユーザに提供する定義済検証処理編集部、
としてさらに機能させる、請求項1又は2に記載の検証プログラム。 The computer,
a predefined verification process editing unit that provides the user with a predefined verification process editing environment for editing the content of a predefined verification process, which is the verification process that has already been defined using the verification process definition environment, and for defining the verification process different from the predefined verification process by using the content as a template;
The verification program according to claim 1 or 2, further functioning as: - プログラマブルロジックコントローラにインストールされるシーケンスプログラムの内容の妥当性を検証する検証装置であって、
前記妥当性の検証を実現する検証処理を定義する検証処理定義環境をユーザに提供する検証処理定義支援部であって、前記検証処理には、前記シーケンスプログラムを実行する実行装置に対して、前記検証のための実行条件を付与する実行条件付与処理が含まれる前記検証処理定義支援部と、
前記検証処理定義環境を用いて定義された前記検証処理を実行することにより、(I)前記実行条件が反映された態様で前記実行装置に前記シーケンスプログラムを実行させ、かつ(II)前記実行装置から前記シーケンスプログラムの実行結果を取得し、取得した前記実行結果を用いて前記検証を行う検証処理実行部と、
を備え、
前記検証処理定義支援部は、
各々前記検証処理実行部に実行させる予め定義された単位処理を表す複数の単位処理オブジェクトで構成される単位処理オブジェクト群であって、前記単位処理としての前記実行条件付与処理を表す前記単位処理オブジェクトが含まれる前記単位処理オブジェクト群を提示させる単位処理オブジェクト群提示部と、
提示された前記単位処理オブジェクト群の中から複数の前記単位処理オブジェクトをユーザが選択することにより、選択された複数の前記単位処理オブジェクトの各々が表す前記単位処理の組み合わせによって前記検証処理を定義する前記検証処理定義環境を、該ユーザに提供する検証処理定義環境提供部と、
を有する、検証装置。 A verification device that verifies the validity of contents of a sequence program installed in a programmable logic controller, comprising:
a verification process definition support unit that provides a user with a verification process definition environment that defines a verification process for implementing the validity verification, the verification process including an execution condition assignment process that assigns an execution condition for the verification to an execution device that executes the sequence program;
a verification process execution unit that executes the verification process defined using the verification process definition environment, (I) causes the execution device to execute the sequence program in a manner that reflects the execution conditions, and (II) acquires an execution result of the sequence program from the execution device and performs the verification using the acquired execution result;
Equipped with
The verification process definition support unit
a unit process object group presentation unit which presents a unit process object group including a unit process object which represents the execution condition assignment process as the unit process, the unit process object group being composed of a plurality of unit process objects each representing a predefined unit process to be executed by the verification process execution unit;
a verification process definition environment providing unit which, when a user selects a plurality of the unit process objects from the presented group of unit process objects, provides the user with the verification process definition environment which defines the verification process by a combination of the unit processes represented by each of the selected plurality of unit process objects;
A verification device having the above configuration. - 請求項10に記載の検証装置と、
前記実行装置と、
を備える、検証システム。 A verification device according to claim 10;
the execution device;
A verification system comprising: - プログラマブルロジックコントローラにインストールされるシーケンスプログラムの内容の妥当性を検証する検証方法であって、
コンピュータが、前記妥当性の検証を実現する検証処理を定義する検証処理定義環境をユーザに提供する検証処理定義支援ステップであって、前記検証処理には、前記シーケンスプログラムを実行する実行装置に対して、前記検証のための実行条件を付与する実行条件付与処理が含まれる前記検証処理定義支援ステップと、
前記コンピュータが、前記検証処理定義環境を用いて定義された前記検証処理を実行することにより、(I)前記実行条件が反映された態様で前記実行装置に前記シーケンスプログラムを実行させ、かつ(II)前記実行装置から前記シーケンスプログラムの実行結果を取得し、取得した前記実行結果を用いて前記検証を行う検証処理実行ステップと、
を含み、
前記検証処理定義支援ステップは、
前記コンピュータが、各々予め定義された単位処理を表す複数の単位処理オブジェクトで構成される単位処理オブジェクト群であって、前記単位処理としての前記実行条件付与処理を表す前記単位処理オブジェクトが含まれる前記単位処理オブジェクト群を提示させる単位処理オブジェクト群提示ステップと、
提示された前記単位処理オブジェクト群の中から複数の前記単位処理オブジェクトをユーザが選択することにより、選択された複数の前記単位処理オブジェクトの各々が表す前記単位処理の組み合わせによって前記検証処理を定義する前記検証処理定義環境を、前記コンピュータが該ユーザに提供する検証処理定義環境提供ステップと、
を含む、検証方法。 A method for verifying the validity of contents of a sequence program installed in a programmable logic controller, comprising the steps of:
a verification process definition support step in which a computer provides a user with a verification process definition environment that defines a verification process for realizing the verification of the validity, the verification process including an execution condition assignment step of assigning an execution condition for the verification to an execution device that executes the sequence program;
a verification process execution step in which the computer executes the verification process defined using the verification process definition environment, thereby (I) causing the execution device to execute the sequence program in a manner that reflects the execution conditions, and (II) acquiring an execution result of the sequence program from the execution device and performing the verification using the acquired execution result;
Including,
The verification process definition support step includes:
a unit process object group presentation step in which the computer presents a unit process object group including a unit process object that represents the execution condition-imparting process as the unit process, the unit process object group being composed of a plurality of unit process objects each representing a predefined unit process;
a verification process definition environment providing step in which the computer provides the user with the verification process definition environment that defines the verification process by a combination of the unit processes represented by each of the selected unit process objects, when the user selects a plurality of the unit process objects from the presented group of unit process objects;
A verification method, comprising:
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2023/009701 WO2024189749A1 (en) | 2023-03-13 | 2023-03-13 | Verification program, verification device, verification system, and verification method |
JP2023560969A JP7433553B1 (en) | 2023-03-13 | 2023-03-13 | Verification program, verification device, verification system, and verification method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2023/009701 WO2024189749A1 (en) | 2023-03-13 | 2023-03-13 | Verification program, verification device, verification system, and verification method |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2024189749A1 true WO2024189749A1 (en) | 2024-09-19 |
Family
ID=89904343
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2023/009701 WO2024189749A1 (en) | 2023-03-13 | 2023-03-13 | Verification program, verification device, verification system, and verification method |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP7433553B1 (en) |
WO (1) | WO2024189749A1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0962530A (en) * | 1995-08-22 | 1997-03-07 | Yokogawa Electric Corp | Test execution flow preparing device |
JP2003532168A (en) * | 1999-10-12 | 2003-10-28 | テラダイン・インコーポレーテッド | Automatic test equipment for easy programming |
JP2011123780A (en) * | 2009-12-14 | 2011-06-23 | Mitsubishi Electric Corp | Test management device |
JP2013113663A (en) * | 2011-11-28 | 2013-06-10 | Advantest Corp | Test module generation device, test procedure generation device, generation method, program, and test device |
-
2023
- 2023-03-13 WO PCT/JP2023/009701 patent/WO2024189749A1/en unknown
- 2023-03-13 JP JP2023560969A patent/JP7433553B1/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0962530A (en) * | 1995-08-22 | 1997-03-07 | Yokogawa Electric Corp | Test execution flow preparing device |
JP2003532168A (en) * | 1999-10-12 | 2003-10-28 | テラダイン・インコーポレーテッド | Automatic test equipment for easy programming |
JP2011123780A (en) * | 2009-12-14 | 2011-06-23 | Mitsubishi Electric Corp | Test management device |
JP2013113663A (en) * | 2011-11-28 | 2013-06-10 | Advantest Corp | Test module generation device, test procedure generation device, generation method, program, and test device |
Also Published As
Publication number | Publication date |
---|---|
JP7433553B1 (en) | 2024-02-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11232240B2 (en) | Industrial automation project component replacement recommendation | |
US6239800B1 (en) | Method and apparatus for leading a user through a software installation procedure via interaction with displayed graphs | |
JP6096414B2 (en) | Method, apparatus and program for testing batch configurations | |
US8504930B1 (en) | User interface substitution | |
JP5039428B2 (en) | Programmable controller and PLC system | |
EP2705441B1 (en) | Automatic classification adjustment of recorded actions for automation script | |
US20210224239A1 (en) | Recipe management system | |
EP3798764B1 (en) | System and method for customer-specific naming conventions for industrial automation devices | |
JPWO2015075790A1 (en) | Sequence program creation support device | |
US20150309774A1 (en) | Method and device for changing objects in a human-machine interface device | |
EP3798762A1 (en) | Drag and drop design interface for an industrial automation device | |
WO2024189749A1 (en) | Verification program, verification device, verification system, and verification method | |
JP4229459B2 (en) | Test sequencer and method for managing and executing sequence items | |
EP3207431B1 (en) | Machine tool post configurator systems and methods | |
CN118051218A (en) | Visual execution method and device for terminal command, electronic equipment and storage medium | |
JP6794668B2 (en) | Programming device | |
JP5177082B2 (en) | Development support device, program | |
EP3798760B1 (en) | System and method for industrial automation project code analysis | |
JPH10247142A (en) | System and method for programming process control program | |
JPH1185835A (en) | Drawing apparatus | |
JP6795568B2 (en) | Tracer and programmable controller | |
JPH06301523A (en) | Execution program setting device | |
WO2024063781A1 (en) | Workflow management method, system and computer program product with dynamic workflow creation | |
JP5786387B2 (en) | PLC development support device and PLC development support program | |
CN115422219A (en) | Robot model data synchronization method, system and medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23927371 Country of ref document: EP Kind code of ref document: A1 |