WO2023189136A1 - Development assistance device, development assistance program, and development assistance method - Google Patents
Development assistance device, development assistance program, and development assistance method Download PDFInfo
- Publication number
- WO2023189136A1 WO2023189136A1 PCT/JP2023/007550 JP2023007550W WO2023189136A1 WO 2023189136 A1 WO2023189136 A1 WO 2023189136A1 JP 2023007550 W JP2023007550 W JP 2023007550W WO 2023189136 A1 WO2023189136 A1 WO 2023189136A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- control program
- development support
- devices
- data
- unit
- Prior art date
Links
- 238000011161 development Methods 0.000 title claims abstract description 149
- 238000000034 method Methods 0.000 title claims abstract description 27
- 230000005540 biological transmission Effects 0.000 claims description 64
- 238000004088 simulation Methods 0.000 claims description 35
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000012545 processing Methods 0.000 abstract description 57
- 238000012795 verification Methods 0.000 description 15
- 230000008569 process Effects 0.000 description 13
- 238000010586 diagram Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 11
- 238000004891 communication Methods 0.000 description 10
- 230000000052 comparative effect Effects 0.000 description 6
- 230000000694 effects Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 2
- 238000012856 packing Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
Images
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
Definitions
- the present disclosure relates to a development support device, a development support program, and a development support method.
- FA factory automation
- various types of devices that share work processes are controlled.
- an industrial network also called a field network, is constructed to connect these devices. There is.
- a master-slave system which consists of various slave devices and a master device.
- the slave device is a device that controls equipment installed in a factory or collects data.
- the master device is configured using, for example, a programmable logic controller, and the programmable logic controller executes a control program to perform predetermined control such as centralized management of slave devices.
- a development support device that supports debugging of a control program executed by a programmable logic controller.
- the development support device executes a simulation of the operation of various devices when a target control program, which is a simulation target, is executed in a field network.
- the present disclosure has been made in view of the above problems, and aims to provide a development support device, a development support program, or a development support method that can improve the accuracy of logic verification of a target control program.
- the present disclosure adopts the following configuration in order to solve the above problems.
- a development support device is a field network system that is connected to a network and includes a plurality of devices and a programmable logic controller that controls the plurality of devices by executing a control program.
- the programmable logic controller communicates with the plurality of devices by transmitting a transmission frame to the network every control period and receiving a reception frame from the network every control period.
- a development support device for simulating operations of the plurality of devices in a field network system, comprising: a target control program storage unit storing a target control program, which is a control program to be simulated; a reception unit that receives input of reception frame data that is recorded data of the reception frame; and a reception unit that receives input of reception frame data that is recorded data of the reception frame, and information regarding each of the devices transmitted by each of the devices to the programmable logic controller from the reception frame data received by the reception unit.
- a development unit that acquires device information that is information; and a simulation unit that simulates the operation of the plurality of devices when the target control program is executed based on the device information acquired by the development unit. It is prepared.
- a development support program is a development support program for causing a computer to function as the development support device, and includes the target control program storage unit, the reception unit, the expansion unit, and the development support program.
- the computer functions as a simulation section.
- a development support method provides a field network system including a plurality of devices connected to a network and a programmable logic controller that controls the plurality of devices by executing a control program.
- the programmable logic controller communicates with the plurality of devices by transmitting a transmission frame to the network every control period and receiving a reception frame from the network every control period.
- a development support method for simulating the operations of the plurality of devices in a field network system comprising: storing a target control program that is a control program to be simulated; receiving input of received frame data, which is data of the received frame, and obtaining device information, which is information regarding each of the devices transmitted by each of the devices to the programmable logic controller, from the received received frame data; and a step of simulating the operation of the plurality of devices when the target control program is executed based on the obtained device information.
- FIG. 1 is a diagram illustrating a configuration example of a field network system including a development support device according to Embodiment 1 of the present disclosure.
- FIG. 2 is a functional block diagram showing a configuration example of the programmable logic controller shown in FIG. 1.
- FIG. FIG. 2 is a functional block diagram showing a configuration example of the development support device. It is a figure explaining the example of operation of the above-mentioned development support device.
- FIG. 7 is a diagram illustrating the operation of a development support device of a comparative example.
- FIG. 2 is a functional block diagram showing a configuration example of a development support device according to Embodiment 2 of the present disclosure.
- FIG. 1 is a diagram illustrating a configuration example of a field network system 1 including a development support device 10 according to Embodiment 1 of the present disclosure.
- FIG. 2 is a functional block diagram showing a configuration example of the programmable logic controller 20 shown in FIG. 1.
- FIG. 3 is a functional block diagram showing an example of the configuration of the development support device 10. As shown in FIG.
- the field network system 1 is a system having a master-slave type network, and includes a programmable logic controller (PLC) 20 as a master device.
- the field network system 1 includes a plurality of slave devices 40A, 40B, and 40C connected to the programmable logic controller 20 via a network 60.
- the programmable logic controller 20 controls slave devices 40A, 40B, and 40C as a plurality of devices by executing a control program.
- Devices 50A, 50B, and 50C are connected to the plurality of slave devices 40A, 40B, and 40C, respectively.
- the programmable logic controller 20 transmits a transmission frame to the network 60 every control period, and receives a reception frame from the network 60 every control period, thereby communicating with the slave devices 40A, 40B, 40C. Communicate between.
- the slave devices 40A, 40B, and 40C function as IO devices that input/output (IN/OUT) data between the programmable logic controller 20 and the devices 50A, 50B, and 50C.
- the development support device 10 of the first embodiment is a simulator connected to a programmable logic controller 20.
- the development support device 10 of the first embodiment simulates the operations of the slave devices 40A, 40B, 40C and the devices 50A, 50B, 50C in the field network system 1 according to the control program of the programmable logic controller 20.
- the development support device 10 and the programmable logic controller 20 are connected, for example, through a communication line compliant with the Ethernet (registered trademark) standard.
- the development support device 10 of the first embodiment includes a control task execution simulation section 11, an input virtual IO device 12, and a reception section 14.
- the control task execution simulation unit 11 is a functional block that executes simulation of the control program.
- the receiving unit 14 receives frame data from an IO data file 22a recorded by an IO data recording processing unit 22 of the programmable logic controller 20, which will be described later.
- the input virtual IO device 12 is a virtual implementation of slave devices 40A, 40B, and 40C (IO devices) connected to the network 60 on the development support device (simulator) 10.
- the input virtual IO device 12 has a reception frame data reading section 12a, and uses reception frame data of the programmable logic controller 20 recorded in the IO data recording processing section 22.
- the control task execution simulation unit 11 includes a storage unit 11a, an IO data processing unit 11b, and a scheduler 11c.
- the storage unit 11a is an example of a target control program storage unit of the development support device 10, and stores a target control program that is a control program to be simulated.
- the IO data processing unit 11b is an example of an expansion unit of the development support device 10.
- the IO data processing unit 11b determines, based on the received frame data received by the input virtual IO device 12, information regarding the slave devices 40A, 40B, and 40C transmitted by the slave devices 40A, 40B, and 40C toward the programmable logic controller 20.
- Obtain device information which is information.
- the device information includes information indicating input variables, which will be described later, and information for specifying the type of the input variables used in the control program.
- the scheduler 11c is an example of a simulation unit of the development support device 10, and when the target control program stored in the storage unit 11a is executed in each control cycle based on the device information acquired by the IO data processing unit 11b. , to simulate the operation of multiple devices.
- the development support device 10 simulates the target control program using the received frame data, which is the actual data of the received frame actually input to the programmable logic controller 20 in the field network system 1. It can be performed. As a result, the development support device 10 can improve the accuracy of logic verification of the target control program.
- the programmable logic controller 20 controls the entire field network system 1. Specifically, the programmable logic controller 20 obtains information from the devices 50A, 50B, and 50C as input data via the slave devices 40A, 40B, and 40C. The programmable logic controller 20 executes arithmetic processing using the acquired input data according to a control program installed in advance. The programmable logic controller 20 executes the above arithmetic processing, determines the control contents for the devices 50A, 50B, and 50C, and transmits control data corresponding to the control contents to the devices via the slave devices 40A, 40B, and 40C. Output to 50A, 50B, and 50C.
- the network 60 transmits various data that the programmable logic controller 20 receives or transmits in each control cycle.
- the network 60 is, for example, EtherCAT (registered trademark), PROFINET (registered trademark), MECHATROLINK (registered trademark)-III, Powerlink (registered trademark), SERCOS (registered trademark)-III, or CIP Motion.
- the network 60 may be, for example, EtherNet/IP, DeviceNet, CompoNet, or the like.
- the slave devices 40A, 40B, and 40C are slave devices in a network 60 with the programmable logic controller 20 as a master device, and are, for example, device communication management units such as communication couplers that manage communication with the devices 50A, 50B, and 50C. .
- the slave devices 40A, 40B, and 40C may be devices directly connected to the network 60, such as servo drivers.
- the devices 50A, 50B, and 50C may be, for example, motors, actuators, various sensors, sensor communication units, inverters, servos, or input/output devices that input and output signals and data.
- an HMI (Human Machine Interface) 30 may be connected to the programmable logic controller 20 via a communication cable.
- the HMI 30 is a means for humans and machines to exchange information, and specifically allows the user to operate the machine (give instructions to the machine), and the machine to notify the user of its current status and results. It is a means of Regarding the HMI 30, means by which a user gives instructions to the machine include switches, buttons, a keyboard, a mouse, and the like. Further, means for conveying information about the current status, results, etc. of the machine to the user include a display panel such as a liquid crystal panel, a lamp, a speaker, and the like.
- the HMI 30 includes a display section, an operation section, a communication section that communicates with the programmable logic controller 20, and a control section that controls each section.
- the HMI 30 can change various settings of the field network system 1 (for example, the programmable logic controller 20) in response to user operations on the operation unit. Further, the display section of the HMI 30 displays predetermined information about the field network system 1.
- the programmable logic controller 20 includes a control task execution section 21 and an IO data recording processing section 22. Furthermore, the programmable logic controller 20 has a function of inputting and outputting data from slave devices 40A, 40B, and 40C as IO devices connected to the network 60.
- the control task execution unit 21 includes a storage unit 21a, an IO data processing unit 21b, and a scheduler 21c.
- the storage unit 21a is configured using storage means such as nonvolatile memory. Moreover, this storage section 21a stores the above-mentioned control program.
- the IO data processing unit 21b processes IO device data (IN data), that is, IN data from the slave devices 40A, 40B, and 40C, according to the control program. Specifically, the IO data processing unit 21b performs an unpacking process on the received frame received from the network 60, thereby acquiring the device information of the slave devices 40A, 40B, and 40C. Furthermore, the IO data processing unit 21b obtains OUT data, which is the output result to the slave devices 40A, 40B, and 40C when the control program is executed, based on the acquired device information. The IO data processing unit 21b performs pack processing on the obtained OUT data.
- I data IO device data
- the IO data processing unit 21b performs pack processing on the obtained OUT data.
- the IO data processing unit 21b receives a receive frame containing IN data from the slave devices 40A, 40B, and 40C, and performs a process of reflecting the IN data in input variables used in the control program.
- the IO data processing unit 21b performs a process of collecting OUT data of output variables as a result of executing the control program into a transmission frame.
- the scheduler 21c causes the IO data processing unit 21b to perform unpacking and packing at the timing of the control cycle.
- the IO data recording processing unit 22 stores the received frame and the transmitted frame in the IO data file 22a by performing IO data recording processing according to the timing of the control cycle.
- the IO data recording processing unit 22 may save received frames and transmitted frames to the IO data file 22a in response to a user's manual operation via the HMI 30 or the like.
- the IO data file 22a may be stored in the same storage unit as the storage unit 21a or in a separate storage unit.
- the development support device 10 is typically realized by a general-purpose computer.
- the target control program executed by the development support device 10 is downloaded via a communication cable such as an Ethernet (registered trademark) cable or a USB (Universal Serial Bus) cable.
- the development support device 10 may be used to record data from any recording medium such as a CD-ROM (Compact Disk-Read Only Memory), a DVD-ROM (Digital Versatile Disc-Read Only Memory), or a solid-state memory (not shown). It may also be configured to read the target control program.
- the development support device 10 is connected to the programmable logic controller 20 via a communication cable that is, for example, an Ethernet (registered trademark) cable or a USB (Universal Serial Bus) cable.
- the development support device 10 is an information processing device for generating a control program executed by the programmable logic controller 20 and various setting information for the field network system 1. Note that the development support device 10 may be connected to the programmable logic controller 20 via the network 60.
- the development support device 10 has a simulation function for a control program executed by the programmable logic controller 20 and a debug function using the results of the simulation function. Further, the development support device 10 provides, for example, a development environment for the programmable logic controller 20, and allows the user to create (create/edit) a control program according to the control purpose (for example, target line and process). It is possible to provide an environment of Note that the user can create a program code for a control program to be executed by the programmable logic controller 20 using the development environment (programming tool) provided by the development support device 10.
- the development support device 10 may calculate and set, for example, the timing at which the programmable logic controller 20 acquires the state value and the timing at which the programmable logic controller 20 updates the output value.
- the development support device 10 may monitor the operating state of the programmable logic controller 20 and the values of various data.
- the development support device 10 may be a device that provides an integrated development environment that supports 3D motion simulation as well as programming, configuration (configuration setting), debugging, maintenance, and monitoring functions of the programmable logic controller 20. . Further, the development support device 10 may set and adjust various parameters for the slave devices 40A, 40B, and 40C.
- the development support device 10 includes a control task execution simulation unit 11, an input virtual IO device 12, an output virtual IO device 13, a reception unit 14, a transmission frame data comparison unit 15, It is equipped with Furthermore, the development support device 10 simulates the control program executed in the programmable logic controller 20 using actual data in the programmable logic controller 20. Further, the development support device 10 uses the results of the simulation to verify the logic of the control program and debug the control program.
- the control task execution simulation unit 11 is a functional block that corresponds to the control task execution unit 21 of the programmable logic controller 20.
- the control task execution simulation unit 11 includes a storage unit 11a, an IO data processing unit 11b, and a scheduler 11c.
- the storage unit 11a is configured using storage means such as non-volatile memory.
- the storage unit 11a also stores a target control program, which is the control program to be simulated.
- the input virtual IO device 12 is a virtual implementation of the slave devices 40A, 40B, and 40C (IO devices) connected to the network 60 on the development support device 10.
- the receiving unit 14 receives received frame data from the IO data file 22a of the programmable logic controller 20, the input virtual IO device 12 acquires and holds the received frame data from the receiving unit 14. Further, in the input virtual IO device 12, the reception frame data reading unit 12a reads the held reception frame data for each control cycle to the IO data processing unit 11b.
- the IO data processing unit 11b performs an unpacking process on the received frame data from the input virtual IO device 12, similarly to the IO data processing unit 21b of the programmable logic controller 20. At this time, the IO data processing unit 11b acquires network configuration information such as the IP addresses and IDs (identifiers) of the slave devices 40A, 40B, and 40C, which is stored in the network configuration storage unit 11b1 provided therein. do.
- the IO data processing unit 11b acquires device information from the received frame data based on the acquired network configuration information. Specifically, the IO data processing unit 11b executes a process for each slave device 40A, 40B, 40C, which is executed by the target control program, based on information on the network configuration of the slave devices 40A, 40B, 40C included in the received frame data. Get the IN data. By executing the unpacking process, the IO data processing unit 11b reflects the IN data of each slave device 40A, 40B, and 40C in the input variables used as input data to the target control program.
- the IO data processing unit 11b obtains OUT data that is the output result of each slave device 40A, 40B, and 40C when the target control program is executed.
- the IO data processing unit 11b performs a pack process on the obtained OUT data to create simulated transmission frame data that is a collection of the OUT data.
- the scheduler 11c causes the IO data processing unit 11b to perform unpacking and packing at the timing of the control cycle.
- the output virtual IO device 13 is a virtual implementation of slave devices 40A, 40B, and 40C (IO devices) connected to the network 60 on the development support device 10, and is a transmission frame calculation unit of the development support device 10. This is an example.
- the output virtual IO device 13 includes a simulated transmission frame data writing section 13a. In the output virtual IO device 13, the simulated transmission frame data writing section 13a writes out and holds the simulated transmission frame data from the IO data processing section 11b. In this way, the output virtual IO device 13 calculates simulated transmission frame data of the transmission frame when the target control program is executed, based on the device information acquired by the IO data processing unit 11b.
- the transmission frame data comparison unit 15 is a functional block that compares the operation results of the control program and the target control program in order for the user to debug the control program.
- the transmission frame data comparison unit 15 inputs the transmission frame data from the reception unit 14 when the reception unit 14 receives the transmission frame data from the IO data file 22a of the programmable logic controller 20.
- the transmission frame data comparison unit 15 inputs the simulated transmission frame data held in the output virtual IO device 13 from the output virtual IO device 13.
- the transmission frame data comparison unit 15 compares the transmission frame data from the reception unit 14 and the simulated transmission frame data from the output virtual IO device 13.
- the transmission frame data comparison unit 15 causes a display unit (not shown) provided in the development support device 10 or the HMI 30 to display the comparison results.
- FIG. 4 is a diagram illustrating an example of the operation of the development support apparatus 10. Note that, in the following explanation, the simulation operation in the development support device 10 will be mainly explained.
- the IO data processing unit 21b receives a reception frame 51P in which IN data from the slave devices 40A, 40B, and 40C are collected into packets in each control cycle.
- the IN data is device information of each slave device transmitted from each slave device to the programmable logic controller 20.
- the IO data processing unit 21b performs an unpacking process on the received received frame 51P every control cycle, and extracts from the received frame 51P a value that reflects the received frame 51P as device information such as input variables used in the control program. get.
- the IO data processing unit 21b performs pack processing for each control cycle based on the acquired device information, and generates a transmission frame 52P by collecting OUT data of output variables as a result of executing the control program. Then, in the programmable logic controller 20, the IO data recording processing unit 22 records the reception frame 51P as reception frame data and the transmission frame 52P as transmission frame data in the IO data file 22a. As described above, in the field network system 1, logs of the received frame 51P and the transmitted frame 52P are recorded.
- the receiving unit 14 of the development support device 10 acquires the received frame data recorded as the log from the IO data file 22a of the programmable logic controller 20 as received frame data constituting the input virtual IO device 12. Further, the reception unit 14 of the development support device 10 may acquire the transmission frame data recorded as the log from the IO data file 22a of the programmable logic controller 20.
- the received frame data reading unit 12a of the input virtual IO device 12 reads the received frame data for each control cycle. is read out and delivered to the IO data processing unit 11b.
- the scheduler 11c causes the IO data processing unit 11b to perform unpacking processing on the received frame data acquired by the input virtual IO device 12 at each control cycle. Thereby, the IO data processing unit 11b reflects the received frame data in the input variables used in the target control program.
- the scheduler 11c also simulates the operation of each slave device 40A, 40B, 40C and each device 50A, 50B, 50C according to the target control program.
- the scheduler 11c causes the IO data processing unit 11b to execute pack processing every control cycle, and collects the OUT data of the output variables resulting from execution of the target control program to generate simulated transmission frame data of the transmission frame 72P.
- the scheduler 11c then causes the simulated transmission frame data writing unit 13a to write the simulated transmission frame data of the transmission frame 72P from the IO data processing unit 11b to the output virtual IO device 13.
- the development support device 10 uses the received frame data to execute the control logic of the target control program. Furthermore, the development support device 10 packs the output variable OUT data (simulated transmission frame data) and outputs the transmission frame 72P to the output virtual IO device 13. By repeating this, the development support device 10 executes a simulation of the control program.
- the transmission frame data comparison unit 15 compares the transmission frame data from the reception unit 14 and the simulated transmission frame data from the output virtual IO device 13. Then, the transmission frame data comparison unit 15 displays the comparison result on the HMI 30 or the like. Thereby, the transmission frame data comparison unit 15 can display the differences between the transmission frame data and the simulated transmission frame data for the user to visually recognize.
- the development support apparatus 10 of the first embodiment includes the storage unit 11a that stores a target control program, which is a control program to be simulated.
- the development support device 10 of the first embodiment includes a reception unit 14 that receives input of received frame data, which is actual data of a received frame actually generated and recorded in a field network system.
- the development support device 10 of the first embodiment uses an IO to acquire each device information of the slave devices 40A, 40B, and 40C that is actually transmitted to the programmable logic controller 20 in the field network system 1 based on the received frame data. It includes a data processing section 11b.
- the development support device 10 of the first embodiment includes a scheduler 11c that simulates the operations of the plurality of slave devices 40A, 40B, and 40C when the target control program is executed based on device information.
- the development support device 10 of the first embodiment uses actual data exchanged in the field network system 1 instead of device information data such as device variables in a simulated case designed on paper.
- the target control program can be simulated.
- the development support device 10 of the first embodiment can simulate the operations of the plurality of slave devices 40A, 40B, and 40C based on the target control program in accordance with the actual situation.
- the transmission frame data comparison unit 15 directly compares the simulated transmission frame data of the transmission frame 72P and the transmission frame data of the transmission frame 52P. Therefore, the development support apparatus 10 of this embodiment can easily debug the control program. Therefore, the development support apparatus 10 of the first embodiment can improve the accuracy of logic verification of the target control program.
- FIG. 5 is a diagram illustrating the operation of the development support device of the comparative example.
- the comparative example is an example of a conventional development support device that simulates the operation of a slave device according to a control program in a simulation environment.
- the development support device 100 of the comparative example uses a test program 110P prepared in advance by the user to generate virtual IO data and configure input variables to be acquired by the target control program.
- the development support apparatus 100 of the comparative example executes the simulation by executing the (target) control program 111P using the acquired input variables and obtaining OUT data including the output variables.
- the logic of the control program can be verified only in the case of virtual device information designed on a desk. Therefore, it has not always been possible to reproduce the behavior of an actual IO device on the development support apparatus 100.
- the target control program can be simulated using the actual data of the reception frame actually received by the programmable logic controller 20 in the field network system 1. Therefore, the development support apparatus 10 of the first embodiment can reproduce the behavior of the IO device, and can improve the accuracy of logic verification of the target control program.
- the IO data processing unit 11b acquires device information from the received frame data based on the network configuration information stored in the network configuration storage unit 11b1.
- the development support apparatus 10 of the first embodiment can acquire device information with high accuracy, and can easily improve the accuracy of logic verification of the target control program.
- the output virtual IO device 13 transmits data from the programmable logic controller 20 in the field network system 1 as a result of the simulation of the target control program using the above-mentioned actual data. Calculate simulated transmission frame data of the transmission frame.
- the user can directly compare the simulated transmission frame data that is the result of the simulation and the transmission frame data in the actual field network system 1. Therefore, in the first embodiment, the development support apparatus 10 can more effectively support the logic verification of the target control program.
- FIG. 6 is a functional block diagram showing a configuration example of the development support device 10 according to the second embodiment of the present disclosure.
- the main difference between the second embodiment and the first embodiment is that a frame configuration storage section 11b2 is provided in the IO data processing section 11b.
- a frame configuration storage section 11b2 is provided within the IO data processing section 11b.
- the frame configuration storage unit 11b2 stores information regarding the configuration of the received frame, such as the data format of the IO data files of the slave devices 40A, 40B, and 40C (IO devices).
- the IO data processing unit 11b uses the information about the configuration of the received frame stored in the frame configuration storage unit 11b2 to Get information.
- the development support device 10 of the second embodiment has the same effects as the development support device 10 of the first embodiment.
- the IO data processing unit 11b uses the information about the configuration of the received frame stored in the frame configuration storage unit 11b2 to Get information. Thereby, the development support apparatus 10 of the second embodiment can easily improve the accuracy of logic verification of the target control program.
- a network configuration storage unit 11b1 and a frame configuration storage unit 11b2 are provided within the IO data processing unit 11b. Further, the IO data processing unit 11b reads the device information based on the network configuration information and the information regarding the configuration of the received frame, respectively stored in the network configuration storage unit 11b1 and the frame configuration storage unit 11b2. It may also be a configuration to obtain the information.
- the functional blocks of the development support device 10 may be realized by a logic circuit (hardware) formed on an integrated circuit (IC chip) or the like. , may be realized by software.
- control task execution simulation unit 11 and the input virtual IO device 12 are equipped with a computer that executes instructions of a program that is software that implements each function.
- This computer includes, for example, one or more processors and a computer-readable recording medium that stores the above program. Then, in the computer, the processor reads the program from the recording medium and executes it, thereby achieving the object of the present disclosure.
- a CPU Central Processing Unit
- a recording medium a "non-temporary tangible medium” such as a ROM (Read Only Memory), a magnetic disk, a card, a semiconductor memory, a programmable logic circuit, etc. can be used.
- the computer may further include a RAM (Random Access Memory) for expanding the above program.
- the program may be supplied to the computer via any transmission medium (communication network, broadcast waves, etc.) that can transmit the program.
- any transmission medium communication network, broadcast waves, etc.
- one aspect of the present invention can also be realized in the form of a data signal embedded in a carrier wave, in which the program is embodied by electronic transmission.
- a development support device is a field network system that is connected to a network and includes a plurality of devices and a programmable logic controller that controls the plurality of devices by executing a control program.
- the programmable logic controller communicates with the plurality of devices by transmitting a transmission frame to the network every control period and receiving a reception frame from the network every control period.
- a development support device for simulating operations of the plurality of devices in a field network system, comprising: a target control program storage unit storing a target control program, which is a control program to be simulated; a reception unit that receives input of reception frame data that is recorded data of the reception frame; and a reception unit that receives input of reception frame data that is recorded data of the reception frame, and information regarding each of the devices transmitted by each of the devices to the programmable logic controller from the reception frame data received by the reception unit.
- a development unit that acquires device information that is information; and a simulation unit that simulates the operation of the plurality of devices when the target control program is executed based on the device information acquired by the development unit. It is prepared.
- the reception unit receives input of received frame data, which is actual data actually generated and recorded in the field network system.
- the expansion unit acquires the device information of each of the plurality of devices actually transmitted to the programmable logic controller in the field network system based on the received frame data received by the reception unit.
- the simulation section simulates the operation of the plurality of devices when the target control program is executed, based on the device information acquired by the expansion section. This allows the simulation unit to simulate the target control program using actual data exchanged in the field network system, rather than device information data such as device variables in a simulated case designed on a desk. . As a result, the development support device can improve the accuracy of logic verification of the target control program.
- the development support device further includes a network configuration storage unit that stores information on a network configuration in the field network system, and the development unit stores the received frame data based on the information on the network configuration.
- the device information may be acquired from.
- the expansion unit acquires the device information of each of the plurality of devices based on the network configuration information stored in the network configuration storage unit, so that the device information can be acquired with high accuracy. I can do it. As a result, the development support device can easily improve the accuracy of logic verification of the target control program.
- the development support device further includes a frame configuration storage unit that stores information regarding the configuration of the received frame, and the development unit stores the received frame data based on the information regarding the configuration of the received frame.
- the device information may be acquired from.
- the expansion unit acquires the device information of each of the plurality of devices based on the information regarding the configuration of the received frame stored in the frame configuration storage unit, so the device information is acquired with high accuracy. can do.
- the development support device can easily improve the accuracy of logic verification of the target control program.
- the development support device further includes a transmission frame calculation unit that calculates the transmission frame when the target control program is executed based on the device information acquired by the expansion unit. Good too.
- the transmission frame calculation unit calculates the transmission frame to be transmitted by the programmable logic controller in the field network system as a result of the simulation of the target control program using the actual data. .
- the user can directly compare the transmission frame resulting from the simulation with the transmission frame in the actual field network system, and the development support device can more effectively support the logic verification of the target control program. can be made into a target.
- a development support program is a development support program for causing a computer to function as the development support device, and includes the target control program storage unit, the reception unit, the expansion unit, and the development support program.
- the computer functions as a simulation section.
- a development support method provides a field network system including a plurality of devices connected to a network and a programmable logic controller that controls the plurality of devices by executing a control program.
- the programmable logic controller communicates with the plurality of devices by transmitting a transmission frame to the network every control period and receiving a reception frame from the network every control period.
- a development support method for simulating the operations of the plurality of devices in a field network system comprising: storing a target control program that is a control program to be simulated; receiving input of received frame data, which is data of the received frame, and obtaining device information, which is information regarding each of the devices transmitted by each of the devices to the programmable logic controller, from the received received frame data; and a step of simulating the operation of the plurality of devices when the target control program is executed based on the obtained device information.
- the accepting step input of received frame data, which is actual data actually generated and recorded in the field network system, is accepted.
- the device information of each of the plurality of devices actually transmitted to the programmable logic controller in the field network system is acquired based on the received received frame data.
- the operations of the plurality of devices when the target control program is executed are simulated based on the acquired device information.
- the target control program can be simulated using actual data exchanged over the field network, rather than device information data such as device variables in a simulated case designed on a desk. .
- the development support method can improve the accuracy of logic verification of the target control program.
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Programmable Controllers (AREA)
Abstract
Provided are a development assistance device, a development assistance program, and a development assistance method which can improve the accuracy of verifying the logic of a target control program. The development assistance device (10) comprises: a storage unit (11a) which stores the target control program; a reception unit (14) which receives an input of reception frame data recorded in a field network system; an IO data processing unit (11b) which acquires, from the reception frame data, apparatus information that is information pertaining to each of slave devices and transmitted from each of the slave devices towards a programmable logic controller; and a scheduler (11c) which simulates, on the basis of the apparatus information, the operations of a plurality of the slave devices when the target control program is executed.
Description
本開示は、開発支援装置、開発支援プログラム、及び開発支援方法に関する。
The present disclosure relates to a development support device, a development support program, and a development support method.
ファクトリーオートメーション(Factory Automation:FA)の分野においては、作業の工程を分担する様々な種類の装置の制御が行われる。工場施設等一定の領域において作業に用いられる各種のコントローラ、リモートI/O、および製造装置を連携して動作させるために、これらの装置を接続する、フィールドネットワークとも呼ばれる産業用ネットワークが構築されている。
In the field of factory automation (FA), various types of devices that share work processes are controlled. In order to operate various controllers, remote I/O, and manufacturing equipment used in certain areas such as factory facilities in a coordinated manner, an industrial network, also called a field network, is constructed to connect these devices. There is.
一般的な産業用ネットワークでは、各種のスレーブ装置と、マスタ装置などから構成されるマスタスレーブ方式が採用される。スレーブ装置は、工場内に設置される設備の制御あるいはデータ収集を行う装置である。マスタ装置は、例えば、プログラマブルロジックコントローラ(Programmable Logic Controller)を用いて構成されており、当該プログラマブルロジックコントローラが制御プログラムを実行することにより、スレーブ装置の集中管理などの所定の制御を行う。
In general industrial networks, a master-slave system is adopted, which consists of various slave devices and a master device. The slave device is a device that controls equipment installed in a factory or collects data. The master device is configured using, for example, a programmable logic controller, and the programmable logic controller executes a control program to perform predetermined control such as centralized management of slave devices.
また、プログラマブルロジックコントローラが実行する制御プログラムのデバッグを支援する開発支援装置が知られている。開発支援装置は、シミュレーションの対象である、対象制御プログラムがフィールドネットワークにおいて実行されたときの、各種装置の動作のシミュレーションを実行する。
Also, a development support device is known that supports debugging of a control program executed by a programmable logic controller. The development support device executes a simulation of the operation of various devices when a target control program, which is a simulation target, is executed in a field network.
しかし、開発支援装置による、対象制御プログラムのロジック検証の精度の向上を更に図ることが求められる。
However, there is a need to further improve the accuracy of logic verification of the target control program by the development support device.
本開示は上記の課題を鑑みてなされたものであり、対象制御プログラムのロジック検証の精度を向上させることができる開発支援装置、開発支援プログラム、または開発支援方法を提供することを目的とする。
The present disclosure has been made in view of the above problems, and aims to provide a development support device, a development support program, or a development support method that can improve the accuracy of logic verification of a target control program.
本開示は、上述の課題を解決するために、以下の構成を採用する。
The present disclosure adopts the following configuration in order to solve the above problems.
本開示の一側面に係る開発支援装置は、ネットワークに接続された、複数の機器と、制御プログラムを実行することによって前記複数の機器を制御するプログラマブルロジックコントローラと、を備えたフィールドネットワークシステムであって、前記プログラマブルロジックコントローラが、制御周期毎に前記ネットワークに送信フレームを送信し、かつ、前記制御周期毎に前記ネットワークから受信フレームを受信することによって、前記複数の機器との間で通信を行う、フィールドネットワークシステムにおける、前記複数の機器の動作を模擬する開発支援装置であって、シミュレーションの対象とする制御プログラムである、対象制御プログラムを記憶する対象制御プログラム記憶部と、前記フィールドネットワークシステムにおいて記録された前記受信フレームのデータである受信フレームデータの入力を受け付ける受付部と、前記受付部が受け付けた受信フレームデータから、それぞれの前記機器が前記プログラマブルロジックコントローラに向けて送信したそれぞれの機器に関する情報である機器情報を取得する展開部と、前記展開部が取得した前記機器情報に基づいて、前記対象制御プログラムが実行された場合の、前記複数の機器の動作を模擬するシミュレーション部と、を備えたものである。
A development support device according to one aspect of the present disclosure is a field network system that is connected to a network and includes a plurality of devices and a programmable logic controller that controls the plurality of devices by executing a control program. The programmable logic controller communicates with the plurality of devices by transmitting a transmission frame to the network every control period and receiving a reception frame from the network every control period. , a development support device for simulating operations of the plurality of devices in a field network system, comprising: a target control program storage unit storing a target control program, which is a control program to be simulated; a reception unit that receives input of reception frame data that is recorded data of the reception frame; and a reception unit that receives input of reception frame data that is recorded data of the reception frame, and information regarding each of the devices transmitted by each of the devices to the programmable logic controller from the reception frame data received by the reception unit. a development unit that acquires device information that is information; and a simulation unit that simulates the operation of the plurality of devices when the target control program is executed based on the device information acquired by the development unit. It is prepared.
また、本開示の一側面に係る開発支援プログラムは、上記開発支援装置としてコンピュータを機能させるための開発支援プログラムであって、前記対象制御プログラム記憶部、前記受付部、前記展開部、および、前記シミュレーション部としてコンピュータを機能させる。
Further, a development support program according to one aspect of the present disclosure is a development support program for causing a computer to function as the development support device, and includes the target control program storage unit, the reception unit, the expansion unit, and the development support program. The computer functions as a simulation section.
また、本開示の一側面に係る開発支援方法は、ネットワークに接続された、複数の機器と、制御プログラムを実行することによって前記複数の機器を制御するプログラマブルロジックコントローラと、を備えたフィールドネットワークシステムであって、前記プログラマブルロジックコントローラが、制御周期毎に前記ネットワークに送信フレームを送信し、かつ、前記制御周期毎に前記ネットワークから受信フレームを受信することによって、前記複数の機器との間で通信を行う、フィールドネットワークシステムにおける、前記複数の機器の動作を模擬する開発支援方法であって、シミュレーションの対象とする制御プログラムである、対象制御プログラムを記憶するステップと、前記フィールドネットワークシステムにおいて記録された前記受信フレームのデータである受信フレームデータの入力を受け付けるステップと、受け付けた受信フレームデータから、それぞれの前記機器が前記プログラマブルロジックコントローラに向けて送信したそれぞれの前記機器に関する情報である機器情報を取得するステップと、取得した前記機器情報に基づいて、前記対象制御プログラムが実行された場合の、前記複数の機器の動作を模擬するステップと、を含む。
Further, a development support method according to one aspect of the present disclosure provides a field network system including a plurality of devices connected to a network and a programmable logic controller that controls the plurality of devices by executing a control program. The programmable logic controller communicates with the plurality of devices by transmitting a transmission frame to the network every control period and receiving a reception frame from the network every control period. A development support method for simulating the operations of the plurality of devices in a field network system, the method comprising: storing a target control program that is a control program to be simulated; receiving input of received frame data, which is data of the received frame, and obtaining device information, which is information regarding each of the devices transmitted by each of the devices to the programmable logic controller, from the received received frame data; and a step of simulating the operation of the plurality of devices when the target control program is executed based on the obtained device information.
本開示によれば、対象制御プログラムのロジック検証の精度を向上させることができる開発支援装置、開発支援プログラム、及び開発支援方法を提供することができる。
According to the present disclosure, it is possible to provide a development support device, a development support program, and a development support method that can improve the accuracy of logic verification of a target control program.
〔実施形態1〕
§1 適用例
以下、図1から図3を用いて、本開示が適用される場面の一例について説明する。図1は、本開示の実施形態1に係る開発支援装置10を含んだフィールドネットワークシステム1の構成例を説明する図である。図2は、図1に示したプログラマブルロジックコントローラ20の構成例を示す機能ブロック図である。図3は、上記開発支援装置10の構成例を示す機能ブロック図である。 [Embodiment 1]
§1 Application Example Hereinafter, an example of a scene to which the present disclosure is applied will be described using FIGS. 1 to 3. FIG. 1 is a diagram illustrating a configuration example of afield network system 1 including a development support device 10 according to Embodiment 1 of the present disclosure. FIG. 2 is a functional block diagram showing a configuration example of the programmable logic controller 20 shown in FIG. 1. As shown in FIG. FIG. 3 is a functional block diagram showing an example of the configuration of the development support device 10. As shown in FIG.
§1 適用例
以下、図1から図3を用いて、本開示が適用される場面の一例について説明する。図1は、本開示の実施形態1に係る開発支援装置10を含んだフィールドネットワークシステム1の構成例を説明する図である。図2は、図1に示したプログラマブルロジックコントローラ20の構成例を示す機能ブロック図である。図3は、上記開発支援装置10の構成例を示す機能ブロック図である。 [Embodiment 1]
§1 Application Example Hereinafter, an example of a scene to which the present disclosure is applied will be described using FIGS. 1 to 3. FIG. 1 is a diagram illustrating a configuration example of a
まず、本開示の実施形態1に係る開発支援装置10についての理解を容易にするため、図1を用いて、開発支援装置10を含むフィールドネットワークシステム1の概要を説明する。
First, in order to facilitate understanding of the development support device 10 according to Embodiment 1 of the present disclosure, an overview of the field network system 1 including the development support device 10 will be described using FIG. 1.
フィールドネットワークシステム1は、マスタスレーブ方式のネットワークを有するシステムであり、マスタ装置としてのプログラマブルロジックコントローラ(PLC:Programmable Logic Controller)20を備えている。フィールドネットワークシステム1は、プログラマブルロジックコントローラ20にネットワーク60を介して接続された複数のスレーブ装置40A、40B、40Cを備えている。プログラマブルロジックコントローラ20は、制御プログラムを実行することによって複数の機器としてのスレーブ装置40A、40B、40Cを制御する。複数のスレーブ装置40A、40B、40Cには、それぞれデバイス50A、50B、50Cが接続されている。
The field network system 1 is a system having a master-slave type network, and includes a programmable logic controller (PLC) 20 as a master device. The field network system 1 includes a plurality of slave devices 40A, 40B, and 40C connected to the programmable logic controller 20 via a network 60. The programmable logic controller 20 controls slave devices 40A, 40B, and 40C as a plurality of devices by executing a control program. Devices 50A, 50B, and 50C are connected to the plurality of slave devices 40A, 40B, and 40C, respectively.
フィールドネットワークシステム1では、プログラマブルロジックコントローラ20が、制御周期毎にネットワーク60に送信フレームを送信し、かつ、制御周期毎にネットワーク60から受信フレームを受信することによって、スレーブ装置40A、40B、40Cとの間で通信を行う。これにより、スレーブ装置40A、40B、40Cは、プログラマブルロジックコントローラ20と、デバイス50A、50B、50Cとの間でのデータを入出力(IN/OUT)するIOデバイスとして機能する。
In the field network system 1, the programmable logic controller 20 transmits a transmission frame to the network 60 every control period, and receives a reception frame from the network 60 every control period, thereby communicating with the slave devices 40A, 40B, 40C. Communicate between. Thereby, the slave devices 40A, 40B, and 40C function as IO devices that input/output (IN/OUT) data between the programmable logic controller 20 and the devices 50A, 50B, and 50C.
本実施形態1の開発支援装置10は、プログラマブルロジックコントローラ20に接続されたシミュレータである。本実施形態1の開発支援装置10は、フィールドネットワークシステム1における、プログラマブルロジックコントローラ20の制御プログラムによるスレーブ装置40A、40B、40C、及び、デバイス50A、50B、50Cの動作を模擬(シミュレーション)する。なお、開発支援装置10とプログラマブルロジックコントローラ20とは、例えば、Ethernet(ETHERNET:登録商標、イーサネット:登録商標)規格に準拠した通信回線で接続されている。
The development support device 10 of the first embodiment is a simulator connected to a programmable logic controller 20. The development support device 10 of the first embodiment simulates the operations of the slave devices 40A, 40B, 40C and the devices 50A, 50B, 50C in the field network system 1 according to the control program of the programmable logic controller 20. The development support device 10 and the programmable logic controller 20 are connected, for example, through a communication line compliant with the Ethernet (registered trademark) standard.
本実施形態1の開発支援装置10は、制御タスク実行シミュレーション部11と、入力用仮想IOデバイス12と、受付部14と、を備えている。制御タスク実行シミュレーション部11は、上記制御プログラムのシミュレーションを実行する機能ブロックである。受付部14は、プログラマブルロジックコントローラ20の後述のIOデータ記録処理部22で記録したIOデータファイル22aからフレームデータを受け付ける。
The development support device 10 of the first embodiment includes a control task execution simulation section 11, an input virtual IO device 12, and a reception section 14. The control task execution simulation unit 11 is a functional block that executes simulation of the control program. The receiving unit 14 receives frame data from an IO data file 22a recorded by an IO data recording processing unit 22 of the programmable logic controller 20, which will be described later.
入力用仮想IOデバイス12は、ネットワーク60に接続されたスレーブ装置40A、40B、40C(IOデバイス)を開発支援装置(シミュレータ)10上で仮想的に実現したものである。入力用仮想IOデバイス12は、受信フレームデータ読出部12aを有し、IOデータ記録処理部22に記録したプログラマブルロジックコントローラ20の受信フレームデータを用いる。
The input virtual IO device 12 is a virtual implementation of slave devices 40A, 40B, and 40C (IO devices) connected to the network 60 on the development support device (simulator) 10. The input virtual IO device 12 has a reception frame data reading section 12a, and uses reception frame data of the programmable logic controller 20 recorded in the IO data recording processing section 22.
制御タスク実行シミュレーション部11は、記憶部11aと、IOデータ処理部11bと、スケジューラ11cと、を備えている。記憶部11aは、開発支援装置10の対象制御プログラム記憶部の一例であり、シミュレーションの対象とする制御プログラムである、対象制御プログラムを記憶する。
The control task execution simulation unit 11 includes a storage unit 11a, an IO data processing unit 11b, and a scheduler 11c. The storage unit 11a is an example of a target control program storage unit of the development support device 10, and stores a target control program that is a control program to be simulated.
IOデータ処理部11bは、開発支援装置10の展開部の一例である。IOデータ処理部11bは、入力用仮想IOデバイス12が受け付けた受信フレームデータから、それぞれのスレーブ装置40A、40B、40Cがプログラマブルロジックコントローラ20に向けて送信したそれぞれのスレーブ装置40A、40B、40Cに関する情報である機器情報を取得する。機器情報とは、上記制御プログラムで使用される、後述の入力変数を示す情報や当該入力変数の種別等を指定するための情報を含む。
The IO data processing unit 11b is an example of an expansion unit of the development support device 10. The IO data processing unit 11b determines, based on the received frame data received by the input virtual IO device 12, information regarding the slave devices 40A, 40B, and 40C transmitted by the slave devices 40A, 40B, and 40C toward the programmable logic controller 20. Obtain device information, which is information. The device information includes information indicating input variables, which will be described later, and information for specifying the type of the input variables used in the control program.
スケジューラ11cは、開発支援装置10のシミュレーション部の一例であり、制御周期毎に、IOデータ処理部11bが取得した機器情報に基づいて、記憶部11aに記憶された対象制御プログラムが実行された場合の、複数の機器の動作を模擬する。
The scheduler 11c is an example of a simulation unit of the development support device 10, and when the target control program stored in the storage unit 11a is executed in each control cycle based on the device information acquired by the IO data processing unit 11b. , to simulate the operation of multiple devices.
よって本実施形態1によれば、開発支援装置10では、フィールドネットワークシステム1においてプログラマブルロジックコントローラ20に実際に入力された受信フレームの実データである、受信フレームデータを用いて、対象制御プログラムのシミュレーションを行うことができる。この結果、開発支援装置10では、対象制御プログラムのロジック検証の精度を向上させることができる。
Therefore, according to the first embodiment, the development support device 10 simulates the target control program using the received frame data, which is the actual data of the received frame actually input to the programmable logic controller 20 in the field network system 1. It can be performed. As a result, the development support device 10 can improve the accuracy of logic verification of the target control program.
§2 構成例
<フィールドネットワークシステム1の構成>
以下に、本実施形態1のフィールドネットワークシステム1及び開発支援装置10の構成例を説明する。尚、以下の説明では、本実施形態1のフィールドネットワークシステム1が工場施設等に設けられた産業用ネットワークに適用された場合について説明する。 §2 Configuration example <Configuration offield network system 1>
Below, configuration examples of thefield network system 1 and the development support device 10 of the first embodiment will be described. In the following description, a case will be described in which the field network system 1 of the first embodiment is applied to an industrial network installed in a factory facility or the like.
<フィールドネットワークシステム1の構成>
以下に、本実施形態1のフィールドネットワークシステム1及び開発支援装置10の構成例を説明する。尚、以下の説明では、本実施形態1のフィールドネットワークシステム1が工場施設等に設けられた産業用ネットワークに適用された場合について説明する。 §2 Configuration example <Configuration of
Below, configuration examples of the
プログラマブルロジックコントローラ20は、フィールドネットワークシステム1の全体の制御を行う。具体的にいえば、プログラマブルロジックコントローラ20は、スレーブ装置40A、40B、40Cを介して、デバイス50A、50B、50Cからの情報を入力データとして取得する。プログラマブルロジックコントローラ20は、予め組み込まれた制御プログラムに従って、取得した入力データを用いた演算処理を実行する。プログラマブルロジックコントローラ20は、上記演算処理を実行して、デバイス50A、50B、50Cへの制御内容を決定し、その制御内容に対応する制御データを、スレーブ装置40A、40B、40Cを介して、デバイス50A、50B、50Cへと出力する。
The programmable logic controller 20 controls the entire field network system 1. Specifically, the programmable logic controller 20 obtains information from the devices 50A, 50B, and 50C as input data via the slave devices 40A, 40B, and 40C. The programmable logic controller 20 executes arithmetic processing using the acquired input data according to a control program installed in advance. The programmable logic controller 20 executes the above arithmetic processing, determines the control contents for the devices 50A, 50B, and 50C, and transmits control data corresponding to the control contents to the devices via the slave devices 40A, 40B, and 40C. Output to 50A, 50B, and 50C.
ネットワーク60は、制御周期毎に、プログラマブルロジックコントローラ20が受信し、またはプログラマブルロジックコントローラ20が送信する各種データを伝送する。また、ネットワーク60は、例えば、EtherCAT(登録商標)、PROFINET(登録商標)、MECHATROLINK(登録商標)-III、Powerlink(登録商標)、SERCOS(登録商標)-III、CIP Motionである。また、ネットワーク60は、例えば、EtherNet/IP、DeviceNet、CompoNetなどであってもよい。
The network 60 transmits various data that the programmable logic controller 20 receives or transmits in each control cycle. Further, the network 60 is, for example, EtherCAT (registered trademark), PROFINET (registered trademark), MECHATROLINK (registered trademark)-III, Powerlink (registered trademark), SERCOS (registered trademark)-III, or CIP Motion. Furthermore, the network 60 may be, for example, EtherNet/IP, DeviceNet, CompoNet, or the like.
スレーブ装置40A、40B、40Cは、プログラマブルロジックコントローラ20をマスタ装置とするネットワーク60におけるスレーブ装置であり、例えば、デバイス50A、50B、50Cとの通信を管理する通信カプラ等のデバイス通信管理ユニットである。スレーブ装置40A、40B、40Cは、ネットワーク60に直接接続される機器、例えば、サーボドライバであってもよい。デバイス50A、50B、50Cは、例えば、モータ、アクチュエータ、各種のセンサ、センサ通信ユニット、インバータ、サーボ、あるいは信号やデータを入力及び出力する入出力機器などであってもよい。
The slave devices 40A, 40B, and 40C are slave devices in a network 60 with the programmable logic controller 20 as a master device, and are, for example, device communication management units such as communication couplers that manage communication with the devices 50A, 50B, and 50C. . The slave devices 40A, 40B, and 40C may be devices directly connected to the network 60, such as servo drivers. The devices 50A, 50B, and 50C may be, for example, motors, actuators, various sensors, sensor communication units, inverters, servos, or input/output devices that input and output signals and data.
図1に示すように、HMI(Human Machine Interface)30が、通信ケーブルを介して、プログラマブルロジックコントローラ20に接続されてもよい。HMI30は、人間と機械とが情報をやり取りするための手段であり、具体的には、ユーザが機械を操作したり(機械に指示を与えたり)、機械が現在の状態・結果をユーザに知らせたりする手段である。HMI30について、ユーザが機械に指示を与える手段としてはスイッチ、ボタン、キーボード、マウスなどが含まれる。また、機械が現在の状態・結果等に係る情報をユーザに伝える手段としては液晶パネルなどの表示パネル、ランプ、スピーカーなどが含まれる。
As shown in FIG. 1, an HMI (Human Machine Interface) 30 may be connected to the programmable logic controller 20 via a communication cable. The HMI 30 is a means for humans and machines to exchange information, and specifically allows the user to operate the machine (give instructions to the machine), and the machine to notify the user of its current status and results. It is a means of Regarding the HMI 30, means by which a user gives instructions to the machine include switches, buttons, a keyboard, a mouse, and the like. Further, means for conveying information about the current status, results, etc. of the machine to the user include a display panel such as a liquid crystal panel, a lamp, a speaker, and the like.
HMI30は、表示部と、操作部と、プログラマブルロジックコントローラ20と通信する通信部と、各部を制御する制御部と、を備える。HMI30は、操作部へのユーザ操作に応じて、フィールドネットワークシステム1(例えば、プログラマブルロジックコントローラ20)の各種の設定を変更することができる。また、HMI30の表示部は、フィールドネットワークシステム1についての所定の情報を表示する。
The HMI 30 includes a display section, an operation section, a communication section that communicates with the programmable logic controller 20, and a control section that controls each section. The HMI 30 can change various settings of the field network system 1 (for example, the programmable logic controller 20) in response to user operations on the operation unit. Further, the display section of the HMI 30 displays predetermined information about the field network system 1.
<プログラマブルロジックコントローラ20の具体的な構成>
図2に示すように、プログラマブルロジックコントローラ20は、制御タスク実行部21と、IOデータ記録処理部22と、を備えている。また、プログラマブルロジックコントローラ20は、ネットワーク60に接続されたIOデバイスとしてのスレーブ装置40A、40B、40Cのデータを入出力する機能を有する。 <Specific configuration ofprogrammable logic controller 20>
As shown in FIG. 2, theprogrammable logic controller 20 includes a control task execution section 21 and an IO data recording processing section 22. Furthermore, the programmable logic controller 20 has a function of inputting and outputting data from slave devices 40A, 40B, and 40C as IO devices connected to the network 60.
図2に示すように、プログラマブルロジックコントローラ20は、制御タスク実行部21と、IOデータ記録処理部22と、を備えている。また、プログラマブルロジックコントローラ20は、ネットワーク60に接続されたIOデバイスとしてのスレーブ装置40A、40B、40Cのデータを入出力する機能を有する。 <Specific configuration of
As shown in FIG. 2, the
制御タスク実行部21は、記憶部21aと、IOデータ処理部21bと、スケジューラ21cと、を備えている。記憶部21aは、不揮発性メモリなどの記憶手段を用いて構成されている。また、この記憶部21aは、上記制御プログラムを記憶している。
The control task execution unit 21 includes a storage unit 21a, an IO data processing unit 21b, and a scheduler 21c. The storage unit 21a is configured using storage means such as nonvolatile memory. Moreover, this storage section 21a stores the above-mentioned control program.
IOデータ処理部21bは、上記制御プログラムに従って、IOデバイスのデータ(INデータ)、つまりスレーブ装置40A、40B、40CからのINデータを処理する。具体的には、IOデータ処理部21bは、ネットワーク60から受信した受信フレームに対して、アンパック処理を行うことにより、スレーブ装置40A、40B、40Cの上記機器情報を取得する。また、IOデータ処理部21bは、取得した機器情報に基づいて、制御プログラムが実行された場合の、スレーブ装置40A、40B、40Cへの出力結果であるOUTデータを求める。IOデータ処理部21bは、求めたOUTデータに対して、パック処理を行う。
The IO data processing unit 21b processes IO device data (IN data), that is, IN data from the slave devices 40A, 40B, and 40C, according to the control program. Specifically, the IO data processing unit 21b performs an unpacking process on the received frame received from the network 60, thereby acquiring the device information of the slave devices 40A, 40B, and 40C. Furthermore, the IO data processing unit 21b obtains OUT data, which is the output result to the slave devices 40A, 40B, and 40C when the control program is executed, based on the acquired device information. The IO data processing unit 21b performs pack processing on the obtained OUT data.
アンパック処理では、IOデータ処理部21bは、スレーブ装置40A、40B、40CからのINデータをまとめた受信フレームを受信し、制御プログラムで使用する入力変数にINデータを反映する処理が実行される。パック処理では、IOデータ処理部21bは、制御プログラムを実行した結果の出力変数のOUTデータを送信フレームにまとめる処理が実行される。スケジューラ21cは、上記制御周期のタイミングで、IOデータ処理部21bにアンパック処理、及び、パック処理を実行させる。
In the unpacking process, the IO data processing unit 21b receives a receive frame containing IN data from the slave devices 40A, 40B, and 40C, and performs a process of reflecting the IN data in input variables used in the control program. In the pack process, the IO data processing unit 21b performs a process of collecting OUT data of output variables as a result of executing the control program into a transmission frame. The scheduler 21c causes the IO data processing unit 21b to perform unpacking and packing at the timing of the control cycle.
IOデータ記録処理部22は、上記制御周期のタイミングに応じて、IOデータ記録処理を行うことにより、上記受信フレーム、及び、送信フレームをIOデータファイル22aに保存する。
The IO data recording processing unit 22 stores the received frame and the transmitted frame in the IO data file 22a by performing IO data recording processing according to the timing of the control cycle.
尚、この説明以外に、IOデータ記録処理部22は、HMI30などを介した、ユーザのマニュアル操作に応じて、IOデータファイル22aへの受信フレーム、及び、送信フレームの保存を実施してもよい。また、IOデータファイル22aは、上記記憶部21aと同一または別個の記憶手段に保存され得る。
In addition to this explanation, the IO data recording processing unit 22 may save received frames and transmitted frames to the IO data file 22a in response to a user's manual operation via the HMI 30 or the like. . Further, the IO data file 22a may be stored in the same storage unit as the storage unit 21a or in a separate storage unit.
<開発支援装置10の具体的な構成>
開発支援装置10は、典型的には、汎用のコンピュータで実現される。例えば、開発支援装置10で実行される対象制御プログラムは、例えば、Ethernet(ETHERNET:登録商標、イーサネット:登録商標)ケーブルやUSB(Universal Serial Bus)ケーブルである通信ケーブルを介して、ダウンロードされる。尚、この説明以外に、開発支援装置10が、不図示のCD-ROM(Compact Disk-Read Only Memory)、DVD-ROM(Digital Versatile Disc-Read Only Memory)、固体メモリ等の任意の記録媒体から対象制御プログラムを読み取る構成でもよい。 <Specific configuration ofdevelopment support device 10>
Thedevelopment support device 10 is typically realized by a general-purpose computer. For example, the target control program executed by the development support device 10 is downloaded via a communication cable such as an Ethernet (registered trademark) cable or a USB (Universal Serial Bus) cable. In addition to this explanation, the development support device 10 may be used to record data from any recording medium such as a CD-ROM (Compact Disk-Read Only Memory), a DVD-ROM (Digital Versatile Disc-Read Only Memory), or a solid-state memory (not shown). It may also be configured to read the target control program.
開発支援装置10は、典型的には、汎用のコンピュータで実現される。例えば、開発支援装置10で実行される対象制御プログラムは、例えば、Ethernet(ETHERNET:登録商標、イーサネット:登録商標)ケーブルやUSB(Universal Serial Bus)ケーブルである通信ケーブルを介して、ダウンロードされる。尚、この説明以外に、開発支援装置10が、不図示のCD-ROM(Compact Disk-Read Only Memory)、DVD-ROM(Digital Versatile Disc-Read Only Memory)、固体メモリ等の任意の記録媒体から対象制御プログラムを読み取る構成でもよい。 <Specific configuration of
The
開発支援装置10は、例えば、Ethernet(ETHERNET:登録商標、イーサネット:登録商標)ケーブルやUSB(Universal Serial Bus)ケーブルである通信ケーブルを介して、プログラマブルロジックコントローラ20に接続する。開発支援装置10は、プログラマブルロジックコントローラ20で実行される制御プログラム、及び、フィールドネットワークシステム1に対する各種の設定情報などを生成するための情報処理装置である。なお、開発支援装置10は、ネットワーク60を介してプログラマブルロジックコントローラ20に接続してもよい。
The development support device 10 is connected to the programmable logic controller 20 via a communication cable that is, for example, an Ethernet (registered trademark) cable or a USB (Universal Serial Bus) cable. The development support device 10 is an information processing device for generating a control program executed by the programmable logic controller 20 and various setting information for the field network system 1. Note that the development support device 10 may be connected to the programmable logic controller 20 via the network 60.
開発支援装置10は、プログラマブルロジックコントローラ20で実行させる制御プログラムのシミュレーション機能やシミュレーション機能の結果を用いたデバック機能を有している。また、開発支援装置10は、例えば、プログラマブルロジックコントローラ20の開発環境を提供し、ユーザが、制御目的(たとえば、対象のラインおよびプロセス)に応じて制御プログラムを作成する(作成・編集する)ための環境を提供することが可能である。尚、ユーザは、開発支援装置10の提供する開発環境(プログラミングツール)を用いて、プログラマブルロジックコントローラ20で実行させる制御プログラムのプログラムコードを作成することが可能である。
The development support device 10 has a simulation function for a control program executed by the programmable logic controller 20 and a debug function using the results of the simulation function. Further, the development support device 10 provides, for example, a development environment for the programmable logic controller 20, and allows the user to create (create/edit) a control program according to the control purpose (for example, target line and process). It is possible to provide an environment of Note that the user can create a program code for a control program to be executed by the programmable logic controller 20 using the development environment (programming tool) provided by the development support device 10.
また、開発支援装置10は、例えば、プログラマブルロジックコントローラ20による状態値の取得のタイミング、及び、プログラマブルロジックコントローラ20による出力値の更新のタイミングの算出、及び、設定を実行してもよい。開発支援装置10は、プログラマブルロジックコントローラ20の運転状態、及び、各種データの値などを監視してもよい。
Furthermore, the development support device 10 may calculate and set, for example, the timing at which the programmable logic controller 20 acquires the state value and the timing at which the programmable logic controller 20 updates the output value. The development support device 10 may monitor the operating state of the programmable logic controller 20 and the values of various data.
つまり、開発支援装置10は、プログラマブルロジックコントローラ20のプログラミング、コンフィグレーション(構成設定)、デバッグ、メンテナンス、モニタリング機能の他、3Dモーションシミュレーションにも対応した統合開発環境を提供する装置であってもよい。また、開発支援装置10は、スレーブ装置40A、40B、40Cのための各種のパラメータの設定および調整を行ってもよい。
In other words, the development support device 10 may be a device that provides an integrated development environment that supports 3D motion simulation as well as programming, configuration (configuration setting), debugging, maintenance, and monitoring functions of the programmable logic controller 20. . Further, the development support device 10 may set and adjust various parameters for the slave devices 40A, 40B, and 40C.
図3に示すように、開発支援装置10は、制御タスク実行シミュレーション部11と、入力用仮想IOデバイス12と、出力用仮想IOデバイス13と、受付部14と、送信フレームデータ比較部15と、を備えている。また、開発支援装置10は、プログラマブルロジックコントローラ20において実行される制御プログラムについて、当該プログラマブルロジックコントローラ20での実データを用いてシミュレーションする。更に、開発支援装置10は、前記のシミュレーションの結果を用いて、制御プログラムのロジック検証を実施して、当該制御プログラムのデバックを行う。
As shown in FIG. 3, the development support device 10 includes a control task execution simulation unit 11, an input virtual IO device 12, an output virtual IO device 13, a reception unit 14, a transmission frame data comparison unit 15, It is equipped with Furthermore, the development support device 10 simulates the control program executed in the programmable logic controller 20 using actual data in the programmable logic controller 20. Further, the development support device 10 uses the results of the simulation to verify the logic of the control program and debug the control program.
制御タスク実行シミュレーション部11は、プログラマブルロジックコントローラ20の制御タスク実行部21に相当する機能ブロックである。制御タスク実行シミュレーション部11は、記憶部11aと、IOデータ処理部11bと、スケジューラ11cと、を備えている。記憶部11aは、不揮発性メモリなどの記憶手段を用いて構成されている。また、この記憶部11aは、シミュレーションの対象とする上記制御プログラムである、対象制御プログラムを記憶している。
The control task execution simulation unit 11 is a functional block that corresponds to the control task execution unit 21 of the programmable logic controller 20. The control task execution simulation unit 11 includes a storage unit 11a, an IO data processing unit 11b, and a scheduler 11c. The storage unit 11a is configured using storage means such as non-volatile memory. The storage unit 11a also stores a target control program, which is the control program to be simulated.
入力用仮想IOデバイス12は、上述したように、ネットワーク60に接続されたスレーブ装置40A、40B、40C(IOデバイス)を開発支援装置10上で仮想的に実現したものである。入力用仮想IOデバイス12は、受付部14がプログラマブルロジックコントローラ20のIOデータファイル22aから受信フレームデータを受け付けた場合に、当該受信フレームデータを受付部14から取得して保持する。また、入力用仮想IOデバイス12では、受信フレームデータ読出部12aが、IOデータ処理部11bに対して、保持した制御周期毎の受信フレームデータを読み出す。
As described above, the input virtual IO device 12 is a virtual implementation of the slave devices 40A, 40B, and 40C (IO devices) connected to the network 60 on the development support device 10. When the receiving unit 14 receives received frame data from the IO data file 22a of the programmable logic controller 20, the input virtual IO device 12 acquires and holds the received frame data from the receiving unit 14. Further, in the input virtual IO device 12, the reception frame data reading unit 12a reads the held reception frame data for each control cycle to the IO data processing unit 11b.
IOデータ処理部11bは、入力用仮想IOデバイス12からの受信フレームデータに対して、プログラマブルロジックコントローラ20のIOデータ処理部21bと同様に、アンパック処理を実行する。このとき、IOデータ処理部11bは、その内部に設けられたネットワーク構成記憶部11b1に記憶されている、スレーブ装置40A、40B、40CのIPアドレスやID(識別子)等のネットワーク構成の情報を取得する。
The IO data processing unit 11b performs an unpacking process on the received frame data from the input virtual IO device 12, similarly to the IO data processing unit 21b of the programmable logic controller 20. At this time, the IO data processing unit 11b acquires network configuration information such as the IP addresses and IDs (identifiers) of the slave devices 40A, 40B, and 40C, which is stored in the network configuration storage unit 11b1 provided therein. do.
IOデータ処理部11bは、取得したネットワーク構成の情報に基づいて、上記受信フレームデータから機器情報を取得する。具体的には、IOデータ処理部11bは、受信フレームデータに含まれたスレーブ装置40A、40B、40Cのネットワーク構成の情報に基づき、対象制御プログラムで実行される、スレーブ装置40A、40B、40C毎のINデータを取得する。IOデータ処理部11bは、アンパック処理を実行することにより、対象制御プログラムへの入力データとして使用する入力変数にスレーブ装置40A、40B、40C毎のINデータを反映する。
The IO data processing unit 11b acquires device information from the received frame data based on the acquired network configuration information. Specifically, the IO data processing unit 11b executes a process for each slave device 40A, 40B, 40C, which is executed by the target control program, based on information on the network configuration of the slave devices 40A, 40B, 40C included in the received frame data. Get the IN data. By executing the unpacking process, the IO data processing unit 11b reflects the IN data of each slave device 40A, 40B, and 40C in the input variables used as input data to the target control program.
また、IOデータ処理部11bは、取得した機器情報に基づいて、対象制御プログラムが実行された場合の、スレーブ装置40A、40B、40C毎の出力結果であるOUTデータを求める。IOデータ処理部11bは、求めたOUTデータに対して、パック処理を行うことにより、当該OUTデータをまとめた模擬送信フレームデータを作成する。スケジューラ11cは、上記制御周期のタイミングで、IOデータ処理部11bによってアンパック処理、及び、パック処理を実行させる。
Furthermore, based on the acquired device information, the IO data processing unit 11b obtains OUT data that is the output result of each slave device 40A, 40B, and 40C when the target control program is executed. The IO data processing unit 11b performs a pack process on the obtained OUT data to create simulated transmission frame data that is a collection of the OUT data. The scheduler 11c causes the IO data processing unit 11b to perform unpacking and packing at the timing of the control cycle.
出力用仮想IOデバイス13は、ネットワーク60に接続されたスレーブ装置40A、40B、40C(IOデバイス)を開発支援装置10上で仮想的に実現したものであり、開発支援装置10の送信フレーム算出部の一例である。出力用仮想IOデバイス13は、模擬送信フレームデータ書出部13aを備えている。出力用仮想IOデバイス13では、模擬送信フレームデータ書出部13aがIOデータ処理部11bから模擬送信フレームデータを書き出して保持する。このように、出力用仮想IOデバイス13は、IOデータ処理部11bが取得した上記機器情報に基づいて、対象制御プログラムが実行された場合の、送信フレームの模擬送信フレームデータを算出する。
The output virtual IO device 13 is a virtual implementation of slave devices 40A, 40B, and 40C (IO devices) connected to the network 60 on the development support device 10, and is a transmission frame calculation unit of the development support device 10. This is an example. The output virtual IO device 13 includes a simulated transmission frame data writing section 13a. In the output virtual IO device 13, the simulated transmission frame data writing section 13a writes out and holds the simulated transmission frame data from the IO data processing section 11b. In this way, the output virtual IO device 13 calculates simulated transmission frame data of the transmission frame when the target control program is executed, based on the device information acquired by the IO data processing unit 11b.
送信フレームデータ比較部15は、ユーザが制御プログラムのデバックを行うために、制御プログラムの動作結果と対象制御プログラムの動作結果とを比較する機能ブロックである。送信フレームデータ比較部15は、受付部14がプログラマブルロジックコントローラ20のIOデータファイル22aから送信フレームデータを受け付けた場合に、当該送信フレームデータを受付部14から入力する。
The transmission frame data comparison unit 15 is a functional block that compares the operation results of the control program and the target control program in order for the user to debug the control program. The transmission frame data comparison unit 15 inputs the transmission frame data from the reception unit 14 when the reception unit 14 receives the transmission frame data from the IO data file 22a of the programmable logic controller 20.
送信フレームデータ比較部15は、出力用仮想IOデバイス13に保持された模擬送信フレームデータを出力用仮想IOデバイス13から入力する。送信フレームデータ比較部15は、受付部14からの送信フレームデータと、出力用仮想IOデバイス13からの模擬送信フレームデータとを比較する。送信フレームデータ比較部15は、開発支援装置10に設けられた不図示の表示部やHMI30に対して、比較結果を表示させる。
The transmission frame data comparison unit 15 inputs the simulated transmission frame data held in the output virtual IO device 13 from the output virtual IO device 13. The transmission frame data comparison unit 15 compares the transmission frame data from the reception unit 14 and the simulated transmission frame data from the output virtual IO device 13. The transmission frame data comparison unit 15 causes a display unit (not shown) provided in the development support device 10 or the HMI 30 to display the comparison results.
§3 動作例
<フィールドネットワークシステム1の動作>
次に、図4も用いて、本実施形態1のフィールドネットワークシステム1の動作例について具体的に説明する。図4は、上記開発支援装置10の動作例を説明する図である。なお、以下の説明では、開発支援装置10でのシミュレーションの動作について主に説明する。 §3 Operation example <Operation offield network system 1>
Next, an example of the operation of thefield network system 1 according to the first embodiment will be specifically explained using FIG. 4 as well. FIG. 4 is a diagram illustrating an example of the operation of the development support apparatus 10. Note that, in the following explanation, the simulation operation in the development support device 10 will be mainly explained.
<フィールドネットワークシステム1の動作>
次に、図4も用いて、本実施形態1のフィールドネットワークシステム1の動作例について具体的に説明する。図4は、上記開発支援装置10の動作例を説明する図である。なお、以下の説明では、開発支援装置10でのシミュレーションの動作について主に説明する。 §3 Operation example <Operation of
Next, an example of the operation of the
図4に示すように、プログラマブルロジックコントローラ20では、IOデータ処理部21bは制御周期毎にスレーブ装置40A、40B、40CからのINデータをパケットにまとめた受信フレーム51Pを受信する。INデータは、各スレーブ装置からプログラマブルロジックコントローラ20に向けて送信された、各スレーブ装置の機器情報である。IOデータ処理部21bは、受信した受信フレーム51Pに対して、制御周期毎にアンパック処理を行って、受信フレーム51Pから制御プログラムで使用する入力変数等の機器情報として当該受信フレーム51Pを反映した値を取得する。
As shown in FIG. 4, in the programmable logic controller 20, the IO data processing unit 21b receives a reception frame 51P in which IN data from the slave devices 40A, 40B, and 40C are collected into packets in each control cycle. The IN data is device information of each slave device transmitted from each slave device to the programmable logic controller 20. The IO data processing unit 21b performs an unpacking process on the received received frame 51P every control cycle, and extracts from the received frame 51P a value that reflects the received frame 51P as device information such as input variables used in the control program. get.
次に、IOデータ処理部21bは、取得した機器情報に基づいて、制御周期毎にパック処理を行って、制御プログラムを実行した結果の出力変数のOUTデータをまとめて送信フレーム52Pを生成する。そして、プログラマブルロジックコントローラ20では、IOデータ記録処理部22が、受信フレーム51Pを受信フレームデータとして、送信フレーム52Pを送信フレームデータとして、IOデータファイル22aに記録する。以上のようにして、フィールドネットワークシステム1では、受信フレーム51P及び送信フレーム52Pのログが記録される。
Next, the IO data processing unit 21b performs pack processing for each control cycle based on the acquired device information, and generates a transmission frame 52P by collecting OUT data of output variables as a result of executing the control program. Then, in the programmable logic controller 20, the IO data recording processing unit 22 records the reception frame 51P as reception frame data and the transmission frame 52P as transmission frame data in the IO data file 22a. As described above, in the field network system 1, logs of the received frame 51P and the transmitted frame 52P are recorded.
開発支援装置10の受付部14は、プログラマブルロジックコントローラ20のIOデータファイル22aから上記ログとして記録された受信フレームデータを、入力用仮想IOデバイス12を構成する受信フレームデータして取得する。また、開発支援装置10の受付部14は、プログラマブルロジックコントローラ20のIOデータファイル22aから上記ログとして記録された送信フレームデータを取得してもよい。
The receiving unit 14 of the development support device 10 acquires the received frame data recorded as the log from the IO data file 22a of the programmable logic controller 20 as received frame data constituting the input virtual IO device 12. Further, the reception unit 14 of the development support device 10 may acquire the transmission frame data recorded as the log from the IO data file 22a of the programmable logic controller 20.
開発支援装置10が取得した上記受信フレームデータに基づいて、対象制御プログラムを実行する場合のシミュレーションを行うとき、入力用仮想IOデバイス12の受信フレームデータ読出部12aは、制御周期毎の受信フレームデータを読み出し、IOデータ処理部11bに引き渡す。
When performing a simulation for executing the target control program based on the received frame data acquired by the development support device 10, the received frame data reading unit 12a of the input virtual IO device 12 reads the received frame data for each control cycle. is read out and delivered to the IO data processing unit 11b.
スケジューラ11cが、IOデータ処理部11bにより、入力用仮想IOデバイス12が取得した受信フレームデータに対して、制御周期毎にアンパック処理を実行させる。これにより、IOデータ処理部11bは、対象制御プログラムで使用する入力変数に受信フレームデータを反映する。またスケジューラ11cは、対象制御プログラムに従った各スレーブ装置40A、40B、40C、各デバイス50A、50B、50Cの動作をシミュレーションする。
The scheduler 11c causes the IO data processing unit 11b to perform unpacking processing on the received frame data acquired by the input virtual IO device 12 at each control cycle. Thereby, the IO data processing unit 11b reflects the received frame data in the input variables used in the target control program. The scheduler 11c also simulates the operation of each slave device 40A, 40B, 40C and each device 50A, 50B, 50C according to the target control program.
スケジューラ11cは、IOデータ処理部11bにより、制御周期毎にパック処理を実行させて、対象制御プログラムを実行した結果の出力変数のOUTデータをまとめて送信フレーム72Pの模擬送信フレームデータを生成させる。そして、スケジューラ11cは、模擬送信フレームデータ書出部13aに送信フレーム72Pの模擬送信フレームデータをIOデータ処理部11bから出力用仮想IOデバイス13に書き出させる。
The scheduler 11c causes the IO data processing unit 11b to execute pack processing every control cycle, and collects the OUT data of the output variables resulting from execution of the target control program to generate simulated transmission frame data of the transmission frame 72P. The scheduler 11c then causes the simulated transmission frame data writing unit 13a to write the simulated transmission frame data of the transmission frame 72P from the IO data processing unit 11b to the output virtual IO device 13.
以上の動作により、開発支援装置10では、受信フレームデータを使用して対象制御プログラムの制御ロジックを実行する。更に、開発支援装置10では、出力変数のOUTデータ(模擬送信フレームデータ)をパックして、送信フレーム72Pを出力用仮想IOデバイス13に出力する。これを繰り返すことで、開発支援装置10では、制御プログラムのシミュレーションが実行される。
Through the above operations, the development support device 10 uses the received frame data to execute the control logic of the target control program. Furthermore, the development support device 10 packs the output variable OUT data (simulated transmission frame data) and outputs the transmission frame 72P to the output virtual IO device 13. By repeating this, the development support device 10 executes a simulation of the control program.
開発支援装置10では、送信フレームデータ比較部15は、受付部14からの送信フレームデータと、出力用仮想IOデバイス13からの模擬送信フレームデータとの比較を実行する。そして、送信フレームデータ比較部15は、その比較結果をHMI30等に表示させる。これにより、送信フレームデータ比較部15は、送信フレームデータと模擬送信フレームデータとの相違点を表示させて、ユーザに視認させることができる。
In the development support device 10, the transmission frame data comparison unit 15 compares the transmission frame data from the reception unit 14 and the simulated transmission frame data from the output virtual IO device 13. Then, the transmission frame data comparison unit 15 displays the comparison result on the HMI 30 or the like. Thereby, the transmission frame data comparison unit 15 can display the differences between the transmission frame data and the simulated transmission frame data for the user to visually recognize.
<作用・効果>
以上のように、本実施形態1の開発支援装置10は、シミュレーションの対象とする制御プログラムである、対象制御プログラムを記憶する記憶部11aを備えている。本実施形態1の開発支援装置10は、フィールドネットワークシステムにおいて実際に生成され記録された受信フレームの実データである受信フレームデータの入力を受け付ける受付部14を備えている。 <Action/Effect>
As described above, thedevelopment support apparatus 10 of the first embodiment includes the storage unit 11a that stores a target control program, which is a control program to be simulated. The development support device 10 of the first embodiment includes a reception unit 14 that receives input of received frame data, which is actual data of a received frame actually generated and recorded in a field network system.
以上のように、本実施形態1の開発支援装置10は、シミュレーションの対象とする制御プログラムである、対象制御プログラムを記憶する記憶部11aを備えている。本実施形態1の開発支援装置10は、フィールドネットワークシステムにおいて実際に生成され記録された受信フレームの実データである受信フレームデータの入力を受け付ける受付部14を備えている。 <Action/Effect>
As described above, the
本実施形態1の開発支援装置10は、上記受信フレームデータを基に、フィールドネットワークシステム1において実際にプログラマブルロジックコントローラ20に送信された、スレーブ装置40A、40B、40Cの各機器情報を取得するIOデータ処理部11bを備えている。本実施形態1の開発支援装置10は、機器情報に基づいて、対象制御プログラムが実行された場合の、複数のスレーブ装置40A、40B、40Cの動作を模擬するスケジューラ11cを備えている。
The development support device 10 of the first embodiment uses an IO to acquire each device information of the slave devices 40A, 40B, and 40C that is actually transmitted to the programmable logic controller 20 in the field network system 1 based on the received frame data. It includes a data processing section 11b. The development support device 10 of the first embodiment includes a scheduler 11c that simulates the operations of the plurality of slave devices 40A, 40B, and 40C when the target control program is executed based on device information.
以上の構成により、本実施形態1の開発支援装置10では、机上で設計した模擬ケースでの機器変数等の機器情報のデータではなく、フィールドネットワークシステム1でやりとりされた実際のデータを用いて、対象制御プログラムのシミュレーションを行うことができる。この結果、本実施形態1の開発支援装置10では、対象制御プログラムによる、複数のスレーブ装置40A、40B、40Cの動作について、実態に即したシミュレーションが可能とすることができる。
With the above configuration, the development support device 10 of the first embodiment uses actual data exchanged in the field network system 1 instead of device information data such as device variables in a simulated case designed on paper. The target control program can be simulated. As a result, the development support device 10 of the first embodiment can simulate the operations of the plurality of slave devices 40A, 40B, and 40C based on the target control program in accordance with the actual situation.
また、本実施形態1の開発支援装置10では、送信フレームデータ比較部15が送信フレーム72Pの模擬送信フレームデータと送信フレーム52Pの送信フレームデータとの直接的な比較を行う。これにより、本実施形態の開発支援装置10では、制御プログラムのデバックを容易に行うことができる。従って、本実施形態1の開発支援装置10では、対象制御プログラムのロジック検証の精度を向上させることができる。
Furthermore, in the development support apparatus 10 of the first embodiment, the transmission frame data comparison unit 15 directly compares the simulated transmission frame data of the transmission frame 72P and the transmission frame data of the transmission frame 52P. Thereby, the development support apparatus 10 of this embodiment can easily debug the control program. Therefore, the development support apparatus 10 of the first embodiment can improve the accuracy of logic verification of the target control program.
ここで、図5も用いて、本実施形態1の開発支援装置10の効果について具体的に説明する。図5は、比較例の開発支援装置の動作を説明する図である。
Here, the effects of the development support device 10 of the first embodiment will be specifically explained using FIG. 5 as well. FIG. 5 is a diagram illustrating the operation of the development support device of the comparative example.
比較例は、シミュレーション環境下において、制御プログラムによるスレーブ装置の動作を模擬する従来の開発支援装置の一例である。
The comparative example is an example of a conventional development support device that simulates the operation of a slave device according to a control program in a simulation environment.
図5において、比較例の開発支援装置100ではユーザが予め用意したテスト用プログラム110Pを用いて、仮想のIOデータを生成して、対象制御プログラムが取得する入力変数を構成している。
In FIG. 5, the development support device 100 of the comparative example uses a test program 110P prepared in advance by the user to generate virtual IO data and configure input variables to be acquired by the target control program.
そして、比較例の開発支援装置100では、取得した入力変数を用いて、(対象)制御プログラム111Pを実行して、出力変数を含んだOUTデータを得ることにより、シミュレーションを実行する。
Then, the development support apparatus 100 of the comparative example executes the simulation by executing the (target) control program 111P using the acquired input variables and obtaining OUT data including the output variables.
以上のように、比較例の開発支援装置100では、机上で設計した仮想的な機器情報のケースでしか制御プログラムのロジックの検証ができない。したがって、現実のIOデバイスの振る舞いを開発支援装置100上で再現することは必ずしもできなかった。
As described above, in the development support apparatus 100 of the comparative example, the logic of the control program can be verified only in the case of virtual device information designed on a desk. Therefore, it has not always been possible to reproduce the behavior of an actual IO device on the development support apparatus 100.
これに対して、本実施形態1の開発支援装置10では、フィールドネットワークシステム1においてプログラマブルロジックコントローラ20が実際に受信した受信フレームの実データを用いて、対象制御プログラムのシミュレーションを行うことができる。このため、本実施形態1の開発支援装置10は、IOデバイスの振る舞いを再現することができ、対象制御プログラムのロジック検証の精度を向上させることができる。
In contrast, in the development support device 10 of the first embodiment, the target control program can be simulated using the actual data of the reception frame actually received by the programmable logic controller 20 in the field network system 1. Therefore, the development support apparatus 10 of the first embodiment can reproduce the behavior of the IO device, and can improve the accuracy of logic verification of the target control program.
また、本実施形態1の開発支援装置10では、IOデータ処理部11bは、ネットワーク構成記憶部11b1に記憶されているネットワーク構成の情報に基づいて、受信フレームデータから機器情報を取得する。これにより、本実施形態1の開発支援装置10では、機器情報を精度よく取得することができ、対象制御プログラムのロジック検証の精度を容易に向上させることができる。
Furthermore, in the development support device 10 of the first embodiment, the IO data processing unit 11b acquires device information from the received frame data based on the network configuration information stored in the network configuration storage unit 11b1. As a result, the development support apparatus 10 of the first embodiment can acquire device information with high accuracy, and can easily improve the accuracy of logic verification of the target control program.
また、本実施形態1の開発支援装置10では、出力用仮想IOデバイス13は、上記実際のデータを用いた対象制御プログラムのシミュレーションの結果として、フィールドネットワークシステム1においてプログラマブルロジックコントローラ20が送信する、送信フレームの模擬送信フレームデータを算出する。この結果、本実施形態1の開発支援装置10では、ユーザがシミュレーションの結果である模擬送信フレームデータと、現実のフィールドネットワークシステム1における送信フレームデータとを直接対比することができるようになる。従って、本実施形態1では、開発支援装置10が、対象制御プログラムのロジック検証の支援をより効果的にすることができる。
Furthermore, in the development support apparatus 10 of the first embodiment, the output virtual IO device 13 transmits data from the programmable logic controller 20 in the field network system 1 as a result of the simulation of the target control program using the above-mentioned actual data. Calculate simulated transmission frame data of the transmission frame. As a result, in the development support apparatus 10 of the first embodiment, the user can directly compare the simulated transmission frame data that is the result of the simulation and the transmission frame data in the actual field network system 1. Therefore, in the first embodiment, the development support apparatus 10 can more effectively support the logic verification of the target control program.
〔実施形態2〕
図6は、本開示の実施形態2に係る開発支援装置10の構成例を示す機能ブロック図である。 [Embodiment 2]
FIG. 6 is a functional block diagram showing a configuration example of thedevelopment support device 10 according to the second embodiment of the present disclosure.
図6は、本開示の実施形態2に係る開発支援装置10の構成例を示す機能ブロック図である。 [Embodiment 2]
FIG. 6 is a functional block diagram showing a configuration example of the
図6において、本実施形態2と実施形態1との主な相違点は、IOデータ処理部11b内にフレーム構成記憶部11b2を設けた点である。
In FIG. 6, the main difference between the second embodiment and the first embodiment is that a frame configuration storage section 11b2 is provided in the IO data processing section 11b.
図6において、本実施形態2の開発支援装置10では、フレーム構成記憶部11b2がIOデータ処理部11b内に設けられている。このフレーム構成記憶部11b2は、スレーブ装置40A、40B、40C(IOデバイス)のIOデータファイルのデータ形式などの受信フレームの構成に関する情報を記憶している。
In FIG. 6, in the development support device 10 of the second embodiment, a frame configuration storage section 11b2 is provided within the IO data processing section 11b. The frame configuration storage unit 11b2 stores information regarding the configuration of the received frame, such as the data format of the IO data files of the slave devices 40A, 40B, and 40C (IO devices).
また、本実施形態2の開発支援装置10では、IOデータ処理部11bは、フレーム構成記憶部11b2が記憶する受信フレームの構成に関する情報に基づき、複数の各スレーブ装置40A、40B、40Cの上記機器情報を取得する。
In addition, in the development support device 10 of the second embodiment, the IO data processing unit 11b uses the information about the configuration of the received frame stored in the frame configuration storage unit 11b2 to Get information.
以上の構成により、本実施形態2の開発支援装置10では、上記実施形態1の開発支援装置10と同様な効果を奏する。また、本実施形態2の開発支援装置10では、IOデータ処理部11bは、フレーム構成記憶部11b2が記憶する受信フレームの構成に関する情報に基づき、複数の各スレーブ装置40A、40B、40Cの上記機器情報を取得する。これにより、本実施形態2の開発支援装置10では、対象制御プログラムのロジック検証の精度を容易に向上させることができる。
With the above configuration, the development support device 10 of the second embodiment has the same effects as the development support device 10 of the first embodiment. In addition, in the development support device 10 of the second embodiment, the IO data processing unit 11b uses the information about the configuration of the received frame stored in the frame configuration storage unit 11b2 to Get information. Thereby, the development support apparatus 10 of the second embodiment can easily improve the accuracy of logic verification of the target control program.
なお、上記の説明以外に、IOデータ処理部11b内にネットワーク構成記憶部11b1、及び、フレーム構成記憶部11b2を設ける。更に、IOデータ処理部11bが、ネットワーク構成記憶部11b1、及び、フレーム構成記憶部11b2にそれぞれ記憶されている、ネットワーク構成の情報、及び、受信フレームの構成に関する情報を基に、上記機器情報を取得する構成でもよい。
Note that in addition to the above description, a network configuration storage unit 11b1 and a frame configuration storage unit 11b2 are provided within the IO data processing unit 11b. Further, the IO data processing unit 11b reads the device information based on the network configuration information and the information regarding the configuration of the received frame, respectively stored in the network configuration storage unit 11b1 and the frame configuration storage unit 11b2. It may also be a configuration to obtain the information.
〔ソフトウェアによる実現例〕
開発支援装置10の機能ブロック(特に、制御タスク実行シミュレーション部11及び入力用仮想IOデバイス12)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、ソフトウェアによって実現してもよい。 [Example of implementation using software]
The functional blocks of the development support device 10 (in particular, the control taskexecution simulation unit 11 and the input virtual IO device 12) may be realized by a logic circuit (hardware) formed on an integrated circuit (IC chip) or the like. , may be realized by software.
開発支援装置10の機能ブロック(特に、制御タスク実行シミュレーション部11及び入力用仮想IOデバイス12)は、集積回路(ICチップ)等に形成された論理回路(ハードウェア)によって実現してもよいし、ソフトウェアによって実現してもよい。 [Example of implementation using software]
The functional blocks of the development support device 10 (in particular, the control task
後者の場合、制御タスク実行シミュレーション部11及び入力用仮想IOデバイス12は、各機能を実現するソフトウェアであるプログラムの命令を実行するコンピュータを備えている。このコンピュータは、例えば1つ以上のプロセッサを備えていると共に、上記プログラムを記憶したコンピュータ読み取り可能な記録媒体を備えている。そして、上記コンピュータにおいて、上記プロセッサが上記プログラムを上記記録媒体から読み取って実行することにより、本開示の目的が達成される。
In the latter case, the control task execution simulation unit 11 and the input virtual IO device 12 are equipped with a computer that executes instructions of a program that is software that implements each function. This computer includes, for example, one or more processors and a computer-readable recording medium that stores the above program. Then, in the computer, the processor reads the program from the recording medium and executes it, thereby achieving the object of the present disclosure.
上記プロセッサとしては、例えばCPU(Central Processing Unit)を用いることができる。上記記録媒体としては、「一時的でない有形の媒体」、例えば、ROM(Read Only Memory)等の他、磁気ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記プログラムを展開するRAM(Random Access Memory)などを更に備えていてもよい。
As the processor, for example, a CPU (Central Processing Unit) can be used. As the recording medium, a "non-temporary tangible medium" such as a ROM (Read Only Memory), a magnetic disk, a card, a semiconductor memory, a programmable logic circuit, etc. can be used. Further, the computer may further include a RAM (Random Access Memory) for expanding the above program.
また、上記プログラムは、該プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。なお、本発明の一態様は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
Furthermore, the program may be supplied to the computer via any transmission medium (communication network, broadcast waves, etc.) that can transmit the program. Note that one aspect of the present invention can also be realized in the form of a data signal embedded in a carrier wave, in which the program is embodied by electronic transmission.
〔まとめ〕
本開示の一側面に係る開発支援装置は、ネットワークに接続された、複数の機器と、制御プログラムを実行することによって前記複数の機器を制御するプログラマブルロジックコントローラと、を備えたフィールドネットワークシステムであって、前記プログラマブルロジックコントローラが、制御周期毎に前記ネットワークに送信フレームを送信し、かつ、前記制御周期毎に前記ネットワークから受信フレームを受信することによって、前記複数の機器との間で通信を行う、フィールドネットワークシステムにおける、前記複数の機器の動作を模擬する開発支援装置であって、シミュレーションの対象とする制御プログラムである、対象制御プログラムを記憶する対象制御プログラム記憶部と、前記フィールドネットワークシステムにおいて記録された前記受信フレームのデータである受信フレームデータの入力を受け付ける受付部と、前記受付部が受け付けた受信フレームデータから、それぞれの前記機器が前記プログラマブルロジックコントローラに向けて送信したそれぞれの機器に関する情報である機器情報を取得する展開部と、前記展開部が取得した前記機器情報に基づいて、前記対象制御プログラムが実行された場合の、前記複数の機器の動作を模擬するシミュレーション部と、を備えたものである。 〔summary〕
A development support device according to one aspect of the present disclosure is a field network system that is connected to a network and includes a plurality of devices and a programmable logic controller that controls the plurality of devices by executing a control program. The programmable logic controller communicates with the plurality of devices by transmitting a transmission frame to the network every control period and receiving a reception frame from the network every control period. , a development support device for simulating operations of the plurality of devices in a field network system, comprising: a target control program storage unit storing a target control program, which is a control program to be simulated; a reception unit that receives input of reception frame data that is recorded data of the reception frame; and a reception unit that receives input of reception frame data that is recorded data of the reception frame, and information regarding each of the devices transmitted by each of the devices to the programmable logic controller from the reception frame data received by the reception unit. a development unit that acquires device information that is information; and a simulation unit that simulates the operation of the plurality of devices when the target control program is executed based on the device information acquired by the development unit. It is prepared.
本開示の一側面に係る開発支援装置は、ネットワークに接続された、複数の機器と、制御プログラムを実行することによって前記複数の機器を制御するプログラマブルロジックコントローラと、を備えたフィールドネットワークシステムであって、前記プログラマブルロジックコントローラが、制御周期毎に前記ネットワークに送信フレームを送信し、かつ、前記制御周期毎に前記ネットワークから受信フレームを受信することによって、前記複数の機器との間で通信を行う、フィールドネットワークシステムにおける、前記複数の機器の動作を模擬する開発支援装置であって、シミュレーションの対象とする制御プログラムである、対象制御プログラムを記憶する対象制御プログラム記憶部と、前記フィールドネットワークシステムにおいて記録された前記受信フレームのデータである受信フレームデータの入力を受け付ける受付部と、前記受付部が受け付けた受信フレームデータから、それぞれの前記機器が前記プログラマブルロジックコントローラに向けて送信したそれぞれの機器に関する情報である機器情報を取得する展開部と、前記展開部が取得した前記機器情報に基づいて、前記対象制御プログラムが実行された場合の、前記複数の機器の動作を模擬するシミュレーション部と、を備えたものである。 〔summary〕
A development support device according to one aspect of the present disclosure is a field network system that is connected to a network and includes a plurality of devices and a programmable logic controller that controls the plurality of devices by executing a control program. The programmable logic controller communicates with the plurality of devices by transmitting a transmission frame to the network every control period and receiving a reception frame from the network every control period. , a development support device for simulating operations of the plurality of devices in a field network system, comprising: a target control program storage unit storing a target control program, which is a control program to be simulated; a reception unit that receives input of reception frame data that is recorded data of the reception frame; and a reception unit that receives input of reception frame data that is recorded data of the reception frame, and information regarding each of the devices transmitted by each of the devices to the programmable logic controller from the reception frame data received by the reception unit. a development unit that acquires device information that is information; and a simulation unit that simulates the operation of the plurality of devices when the target control program is executed based on the device information acquired by the development unit. It is prepared.
上記構成によれば、受付部が、フィールドネットワークシステムにおいて実際に生成され記録された実データである受信フレームデータの入力を受け付ける。展開部は、受付部が受け付けた受信フレームデータを基に、フィールドネットワークシステムにおいて実際にプログラマブルロジックコントローラに送信された、複数の各機器の上記機器情報を取得する。シミュレーション部が、展開部が取得した機器情報に基づいて、対象制御プログラムが実行された場合の、複数の機器の動作を模擬する。これにより、シミュレーション部は、机上で設計した模擬ケースでの機器変数等の機器情報のデータではなく、フィールドネットワークシステムでやりとりされた実際のデータを用いて、対象制御プログラムのシミュレーションを行うことができる。この結果、開発支援装置では、対象制御プログラムのロジック検証の精度を向上させることができる。
According to the above configuration, the reception unit receives input of received frame data, which is actual data actually generated and recorded in the field network system. The expansion unit acquires the device information of each of the plurality of devices actually transmitted to the programmable logic controller in the field network system based on the received frame data received by the reception unit. The simulation section simulates the operation of the plurality of devices when the target control program is executed, based on the device information acquired by the expansion section. This allows the simulation unit to simulate the target control program using actual data exchanged in the field network system, rather than device information data such as device variables in a simulated case designed on a desk. . As a result, the development support device can improve the accuracy of logic verification of the target control program.
上記一側面に係る開発支援装置において、前記フィールドネットワークシステムにおけるネットワーク構成の情報を記憶する、ネットワーク構成記憶部を、更に備え、前記展開部は、前記ネットワーク構成の情報に基づいて、前記受信フレームデータから前記機器情報を取得してもよい。
The development support device according to the above aspect further includes a network configuration storage unit that stores information on a network configuration in the field network system, and the development unit stores the received frame data based on the information on the network configuration. The device information may be acquired from.
上記構成によれば、開発支援装置では、展開部が、ネットワーク構成記憶部が記憶するネットワーク構成の情報に基づき複数の各機器の上記機器情報を取得するので、当該機器情報を精度よく取得することができる。この結果、開発支援装置では、対象制御プログラムのロジック検証の精度を容易に向上させることができる。
According to the above configuration, in the development support device, the expansion unit acquires the device information of each of the plurality of devices based on the network configuration information stored in the network configuration storage unit, so that the device information can be acquired with high accuracy. I can do it. As a result, the development support device can easily improve the accuracy of logic verification of the target control program.
上記一側面に係る開発支援装置において、前記受信フレームの構成に関する情報を記憶する、フレーム構成記憶部を、更に備え、前記展開部は、前記受信フレームの構成に関する情報に基づいて、前記受信フレームデータから前記機器情報を取得してもよい。
The development support device according to the above aspect further includes a frame configuration storage unit that stores information regarding the configuration of the received frame, and the development unit stores the received frame data based on the information regarding the configuration of the received frame. The device information may be acquired from.
上記構成によれば、開発支援装置では、展開部が、フレーム構成記憶部が記憶する受信フレームの構成に関する情報に基づき複数の各機器の上記機器情報を取得するので、当該機器情報を精度よく取得することができる。この結果、開発支援装置では、対象制御プログラムのロジック検証の精度を容易に向上させることができる。
According to the above configuration, in the development support device, the expansion unit acquires the device information of each of the plurality of devices based on the information regarding the configuration of the received frame stored in the frame configuration storage unit, so the device information is acquired with high accuracy. can do. As a result, the development support device can easily improve the accuracy of logic verification of the target control program.
上記一側面に係る開発支援装置において、前記展開部が取得した前記機器情報に基づいて、前記対象制御プログラムが実行された場合の、前記送信フレームを算出する、送信フレーム算出部を、更に備えてもよい。
The development support device according to the above aspect further includes a transmission frame calculation unit that calculates the transmission frame when the target control program is executed based on the device information acquired by the expansion unit. Good too.
上記構成によれば、開発支援装置では、送信フレーム算出部は、上記実際のデータを用いた対象制御プログラムのシミュレーションの結果として、前記フィールドネットワークシステムにおいてプログラマブルロジックコントローラが送信する、送信フレームを算出する。この結果、ユーザがシミュレーションの結果である送信フレームと、現実のフィールドネットワークシステムにおける送信フレームとを直接対比することができるようになり、開発支援装置が、対象制御プログラムのロジック検証の支援をより効果的にすることができる。
According to the above configuration, in the development support device, the transmission frame calculation unit calculates the transmission frame to be transmitted by the programmable logic controller in the field network system as a result of the simulation of the target control program using the actual data. . As a result, the user can directly compare the transmission frame resulting from the simulation with the transmission frame in the actual field network system, and the development support device can more effectively support the logic verification of the target control program. can be made into a target.
また、本開示の一側面に係る開発支援プログラムは、上記開発支援装置としてコンピュータを機能させるための開発支援プログラムであって、前記対象制御プログラム記憶部、前記受付部、前記展開部、および、前記シミュレーション部としてコンピュータを機能させる。
Further, a development support program according to one aspect of the present disclosure is a development support program for causing a computer to function as the development support device, and includes the target control program storage unit, the reception unit, the expansion unit, and the development support program. The computer functions as a simulation section.
上記構成によれば、対象制御プログラムのロジック検証の精度を向上させることができる開発支援装置を実現することができる。
According to the above configuration, it is possible to realize a development support device that can improve the accuracy of logic verification of a target control program.
また、本開示の一側面に係る開発支援方法は、ネットワークに接続された、複数の機器と、制御プログラムを実行することによって前記複数の機器を制御するプログラマブルロジックコントローラと、を備えたフィールドネットワークシステムであって、前記プログラマブルロジックコントローラが、制御周期毎に前記ネットワークに送信フレームを送信し、かつ、前記制御周期毎に前記ネットワークから受信フレームを受信することによって、前記複数の機器との間で通信を行う、フィールドネットワークシステムにおける、前記複数の機器の動作を模擬する開発支援方法であって、シミュレーションの対象とする制御プログラムである、対象制御プログラムを記憶するステップと、前記フィールドネットワークシステムにおいて記録された前記受信フレームのデータである受信フレームデータの入力を受け付けるステップと、受け付けた受信フレームデータから、それぞれの前記機器が前記プログラマブルロジックコントローラに向けて送信したそれぞれの前記機器に関する情報である機器情報を取得するステップと、取得した前記機器情報に基づいて、前記対象制御プログラムが実行された場合の、前記複数の機器の動作を模擬するステップと、を含む。
Further, a development support method according to one aspect of the present disclosure provides a field network system including a plurality of devices connected to a network and a programmable logic controller that controls the plurality of devices by executing a control program. The programmable logic controller communicates with the plurality of devices by transmitting a transmission frame to the network every control period and receiving a reception frame from the network every control period. A development support method for simulating the operations of the plurality of devices in a field network system, the method comprising: storing a target control program that is a control program to be simulated; receiving input of received frame data, which is data of the received frame, and obtaining device information, which is information regarding each of the devices transmitted by each of the devices to the programmable logic controller, from the received received frame data; and a step of simulating the operation of the plurality of devices when the target control program is executed based on the obtained device information.
上記構成によれば、受け付けるステップにおいて、フィールドネットワークシステムにおいて実際に生成され記録された実データである受信フレームデータの入力が受け付けられる。取得するステップにおいて、受け付けられた受信フレームデータを基に、フィールドネットワークシステムにおいて実際にプログラマブルロジックコントローラに送信された、複数の各機器の上記機器情報が取得される。模擬するステップにおいて、取得された機器情報に基づいて、対象制御プログラムが実行された場合の、複数の機器の動作が模擬される。これにより、模擬するステップでは、机上で設計した模擬ケースでの機器変数等の機器情報のデータではなく、フィールドネットワークでやりとりされた実際のデータを用いて、対象制御プログラムのシミュレーションを行うことができる。この結果、開発支援方法では、対象制御プログラムのロジック検証の精度を向上させることができる。
According to the above configuration, in the accepting step, input of received frame data, which is actual data actually generated and recorded in the field network system, is accepted. In the acquiring step, the device information of each of the plurality of devices actually transmitted to the programmable logic controller in the field network system is acquired based on the received received frame data. In the simulating step, the operations of the plurality of devices when the target control program is executed are simulated based on the acquired device information. As a result, in the simulating step, the target control program can be simulated using actual data exchanged over the field network, rather than device information data such as device variables in a simulated case designed on a desk. . As a result, the development support method can improve the accuracy of logic verification of the target control program.
本開示は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、各実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本開示の技術的範囲に含まれる。
The present disclosure is not limited to the embodiments described above, and various changes can be made within the scope of the claims, and embodiments obtained by appropriately combining technical means disclosed in each embodiment. are also included within the technical scope of the present disclosure.
1 フィールドネットワークシステム
10 開発支援装置
11 制御タスク実行シミュレーション部
11a 記憶部(対象制御プログラム記憶部)
11b IOデータ処理部(展開部)
11b1 ネットワーク構成記憶部
11b2 フレーム構成記憶部
11c スケジューラ(シミュレーション部)
12 入力用仮想IOデバイス(受付部)
13 出力用仮想IOデバイス(送信フレーム算出部)
20 プログラマブルロジックコントローラ
40A、40B、40C スレーブ装置(機器) 1Field network system 10 Development support device 11 Control task execution simulation section 11a Storage section (target control program storage section)
11b IO data processing section (deployment section)
11b1 Network configuration storage unit 11b2 Frameconfiguration storage unit 11c Scheduler (simulation unit)
12 Virtual IO device for input (reception section)
13 Virtual IO device for output (transmission frame calculation unit)
20 Programmable logic controller 40A, 40B, 40C Slave device (equipment)
10 開発支援装置
11 制御タスク実行シミュレーション部
11a 記憶部(対象制御プログラム記憶部)
11b IOデータ処理部(展開部)
11b1 ネットワーク構成記憶部
11b2 フレーム構成記憶部
11c スケジューラ(シミュレーション部)
12 入力用仮想IOデバイス(受付部)
13 出力用仮想IOデバイス(送信フレーム算出部)
20 プログラマブルロジックコントローラ
40A、40B、40C スレーブ装置(機器) 1
11b IO data processing section (deployment section)
11b1 Network configuration storage unit 11b2 Frame
12 Virtual IO device for input (reception section)
13 Virtual IO device for output (transmission frame calculation unit)
20
Claims (6)
- ネットワークに接続された、複数の機器と、制御プログラムを実行することによって前記複数の機器を制御するプログラマブルロジックコントローラと、を備えたフィールドネットワークシステムであって、前記プログラマブルロジックコントローラが、制御周期毎に前記ネットワークに送信フレームを送信し、かつ、前記制御周期毎に前記ネットワークから受信フレームを受信することによって、前記複数の機器との間で通信を行う、フィールドネットワークシステムにおける、前記複数の機器の動作を模擬する開発支援装置であって、
シミュレーションの対象とする制御プログラムである、対象制御プログラムを記憶する対象制御プログラム記憶部と、
前記フィールドネットワークシステムにおいて記録された前記受信フレームのデータである受信フレームデータの入力を受け付ける受付部と、
前記受付部が受け付けた受信フレームデータから、それぞれの前記機器が前記プログラマブルロジックコントローラに向けて送信したそれぞれの機器に関する情報である機器情報を取得する展開部と、
前記展開部が取得した前記機器情報に基づいて、前記対象制御プログラムが実行された場合の、前記複数の機器の動作を模擬するシミュレーション部と、を備えた、
開発支援装置。 A field network system that includes a plurality of devices connected to a network and a programmable logic controller that controls the plurality of devices by executing a control program, wherein the programmable logic controller Operation of the plurality of devices in a field network system that communicates with the plurality of devices by transmitting a transmission frame to the network and receiving a reception frame from the network at each control cycle. A development support device that simulates
a target control program storage unit that stores a target control program that is a control program to be simulated;
a reception unit that receives input of received frame data that is data of the received frame recorded in the field network system;
a development unit that acquires device information that is information regarding each device transmitted by each of the devices to the programmable logic controller from the received frame data received by the reception unit;
a simulation unit that simulates the operation of the plurality of devices when the target control program is executed based on the device information acquired by the deployment unit;
Development support equipment. - 前記フィールドネットワークシステムにおけるネットワーク構成の情報を記憶する、ネットワーク構成記憶部を、更に備え、
前記展開部は、前記ネットワーク構成の情報に基づいて、前記受信フレームデータから前記機器情報を取得する、
請求項1に記載の開発支援装置。 further comprising a network configuration storage unit that stores information on a network configuration in the field network system,
The expansion unit acquires the device information from the received frame data based on information on the network configuration.
The development support device according to claim 1. - 前記受信フレームの構成に関する情報を記憶する、フレーム構成記憶部を、更に備え、
前記展開部は、前記受信フレームの構成に関する情報に基づいて、前記受信フレームデータから前記機器情報を取得する、
請求項1に記載の開発支援装置。 further comprising a frame configuration storage unit that stores information regarding the configuration of the received frame,
The expansion unit acquires the device information from the received frame data based on information regarding the configuration of the received frame.
The development support device according to claim 1. - 前記展開部が取得した前記機器情報に基づいて、前記対象制御プログラムが実行された場合の、前記送信フレームを算出する、送信フレーム算出部を、更に備える、
請求項1から3の何れか1項に記載の開発支援装置。 further comprising a transmission frame calculation unit that calculates the transmission frame when the target control program is executed based on the device information acquired by the deployment unit;
A development support device according to any one of claims 1 to 3. - 請求項1に記載の開発支援装置としてコンピュータを機能させるための開発支援プログラムであって、
前記対象制御プログラム記憶部、前記受付部、前記展開部、および、前記シミュレーション部としてコンピュータを機能させるための開発支援プログラム。 A development support program for causing a computer to function as the development support device according to claim 1,
A development support program for causing a computer to function as the target control program storage unit, the reception unit, the expansion unit, and the simulation unit. - ネットワークに接続された、複数の機器と、制御プログラムを実行することによって前記複数の機器を制御するプログラマブルロジックコントローラと、を備えたフィールドネットワークシステムであって、前記プログラマブルロジックコントローラが、制御周期毎に前記ネットワークに送信フレームを送信し、かつ、前記制御周期毎に前記ネットワークから受信フレームを受信することによって、前記複数の機器との間で通信を行う、フィールドネットワークシステムにおける、前記複数の機器の動作を模擬する開発支援方法であって、
シミュレーションの対象とする制御プログラムである、対象制御プログラムを記憶するステップと、
前記フィールドネットワークシステムにおいて記録された前記受信フレームのデータである受信フレームデータの入力を受け付けるステップと、
受け付けた受信フレームデータから、それぞれの前記機器が前記プログラマブルロジックコントローラに向けて送信したそれぞれの前記機器に関する情報である機器情報を取得するステップと、
取得した前記機器情報に基づいて、前記対象制御プログラムが実行された場合の、前記複数の機器の動作を模擬するステップと、
を含む、開発支援方法。 A field network system that includes a plurality of devices connected to a network and a programmable logic controller that controls the plurality of devices by executing a control program, wherein the programmable logic controller Operation of the plurality of devices in a field network system that communicates with the plurality of devices by transmitting a transmission frame to the network and receiving a reception frame from the network at each control cycle. A development support method that simulates
storing a target control program that is a control program to be simulated;
receiving input of received frame data that is data of the received frame recorded in the field network system;
acquiring device information, which is information regarding each of the devices transmitted by each of the devices to the programmable logic controller, from the received received frame data;
simulating the operation of the plurality of devices when the target control program is executed based on the acquired device information;
Development support methods, including:
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022062121A JP2023152149A (en) | 2022-04-01 | 2022-04-01 | Development support device, development support program, and development support method |
JP2022-062121 | 2022-04-01 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023189136A1 true WO2023189136A1 (en) | 2023-10-05 |
Family
ID=88201123
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2023/007550 WO2023189136A1 (en) | 2022-04-01 | 2023-03-01 | Development assistance device, development assistance program, and development assistance method |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2023152149A (en) |
WO (1) | WO2023189136A1 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012168900A (en) * | 2011-02-16 | 2012-09-06 | Fuji Electric Co Ltd | Programming device and program |
JP2015114901A (en) * | 2013-12-12 | 2015-06-22 | 三菱日立パワーシステムズ株式会社 | Controller, design device, control method and program |
JP2020149439A (en) * | 2019-03-14 | 2020-09-17 | オムロン株式会社 | Control system, support unit, and program for support unit |
-
2022
- 2022-04-01 JP JP2022062121A patent/JP2023152149A/en active Pending
-
2023
- 2023-03-01 WO PCT/JP2023/007550 patent/WO2023189136A1/en unknown
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012168900A (en) * | 2011-02-16 | 2012-09-06 | Fuji Electric Co Ltd | Programming device and program |
JP2015114901A (en) * | 2013-12-12 | 2015-06-22 | 三菱日立パワーシステムズ株式会社 | Controller, design device, control method and program |
JP2020149439A (en) * | 2019-03-14 | 2020-09-17 | オムロン株式会社 | Control system, support unit, and program for support unit |
Also Published As
Publication number | Publication date |
---|---|
JP2023152149A (en) | 2023-10-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7189383B1 (en) | Verification system and verification method | |
US8756041B2 (en) | Industrial simulation using redirected I/O module configurations | |
WO2014200070A1 (en) | Information processing device, and information processing device control method and control program | |
EP3428750B1 (en) | Slave device, method for controlling slave device, information processing program, and recording medium | |
US11366945B2 (en) | Soft-real-time hub providing data transport for processor-in-the-loop (PIL) simulations | |
CN105137902B (en) | Simulation system | |
US10198536B2 (en) | Simulation system, method for carrying out a simulation, control system, and computer program product | |
US11988998B2 (en) | Method and apparatus for computer aided simulation of a modular technical system | |
JP2005505811A (en) | Method and system for supporting manufacturing facility construction plan | |
JP2018151888A (en) | Slave device, control method of slave device, information processing program and storage medium | |
US20140172402A1 (en) | Simulation system, method for carrying out a simulation, guidance system, and computer program product | |
US20190306250A1 (en) | Support apparatus, non-transitory computer-readable recording medium and setting method | |
EP3467603B1 (en) | Information processing device, information processing method, and information processing program | |
US20140222408A1 (en) | Simulation system, method of carrying out a simulation, guidance system and computer program product | |
WO2023189136A1 (en) | Development assistance device, development assistance program, and development assistance method | |
US11604446B2 (en) | Method and system for validating a control program | |
CN111610725B (en) | Combined simulation method | |
US11269313B2 (en) | Controller and control system that stores data in current control cycle for output in next control cycle | |
JP2007518152A (en) | Simulation system and computer-implemented method for simulating and verifying a control system | |
US20190303319A1 (en) | Support apparatus, non-transitory computer-readable recording medium and setting method | |
CN114245883B (en) | Program development device, engineering method, and storage medium | |
JP7521341B2 (en) | Control device, control system and program | |
JP2003140711A (en) | Simulator for process controller and its program and program recording 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: 23779166 Country of ref document: EP Kind code of ref document: A1 |