WO2020036094A1 - サポート装置、サポートプログラム、制御システム - Google Patents

サポート装置、サポートプログラム、制御システム Download PDF

Info

Publication number
WO2020036094A1
WO2020036094A1 PCT/JP2019/030837 JP2019030837W WO2020036094A1 WO 2020036094 A1 WO2020036094 A1 WO 2020036094A1 JP 2019030837 W JP2019030837 W JP 2019030837W WO 2020036094 A1 WO2020036094 A1 WO 2020036094A1
Authority
WO
WIPO (PCT)
Prior art keywords
data
devices
belonging
unit
same group
Prior art date
Application number
PCT/JP2019/030837
Other languages
English (en)
French (fr)
Inventor
茜 一村
大輔 玉嶋
克重 大貫
明日香 杉山
Original Assignee
オムロン株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オムロン株式会社 filed Critical オムロン株式会社
Publication of WO2020036094A1 publication Critical patent/WO2020036094A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts

Definitions

  • the present invention relates to a control system including a plurality of control devices, a support device directed to the control system, and a support program for realizing the support device.
  • control device such as a PLC (programmable logic controller) to control a control target such as equipment or a machine.
  • PLC programmable logic controller
  • a control system including a plurality of control devices communicably connected, instead of a single control device, is often employed.
  • Patent Document 1 discloses an integrated development environment tool capable of improving the efficiency of programming work by linking network settings with programming works such as a PLC and a programmable display. I do.
  • Patent Document 1 In the configuration disclosed in Japanese Patent Application Laid-Open No. 2005-327263 (Patent Document 1), a program to be executed by each control device is developed using an integrated development environment tool. And the necessary parameters must be transferred for each control device.
  • a single control device may control a plurality of facilities and machines included in a control target, or a single production line may be controlled by a plurality of control devices.
  • One object of the present invention is to provide a configuration capable of realizing data update or the like in a specific group unit in a control system including a plurality of devices.
  • a support apparatus used in a control system having a plurality of devices includes a data generation unit that generates data to be stored in each of the plurality of devices from a project including information necessary for operating the plurality of devices, and a device that belongs to the same group among the plurality of devices.
  • a selection receiving unit that receives the selection, and a data transfer unit that transfers data corresponding to each device generated by the data generation unit to each of the devices belonging to the same group in response to a user operation,
  • a data management unit for instructing each device to reflect the transferred data after successful data transfer to all devices belonging to the group.
  • data transfer and reflection can be easily realized in units of groups set for a control system having a plurality of devices.
  • the data management unit when data transfer to any device belonging to the same group fails, the data management unit returns all devices belonging to the same group to a state before data transfer. Is also good.
  • each of the devices has a first data area for storing data used for processing and a second data area for temporarily storing data transferred from the data transfer unit.
  • the data management unit may instruct each device belonging to the same group to reflect the data stored in the second data area on the first data area.
  • the data processing can be performed without affecting the control processing. Transfer and update can be realized.
  • the data management unit transmits the data stored in the second data area to each of the devices belonging to the same group. It may be instructed to delete.
  • the support device further includes a data holding unit that acquires data stored in each device belonging to the same group and holds it as backup data before data transfer, and the data management unit If the transfer of data to any of the devices belonging to the group fails, the backup data may be returned to the devices belonging to the same group.
  • each device belonging to the same group can be restored using the backup data acquired in advance, so that even if a data transfer failure occurs, The state can be returned.
  • the data management unit can instruct only the devices that have successfully transferred data among the devices belonging to the same group to reflect the transferred data according to a predetermined setting. It may be.
  • the data transferred from the data transfer unit includes a control program executed by the device and parameters necessary for the operation of the device, and the data transfer unit transfers the parameter after the transfer of the control program. You may do so.
  • the device includes a control device and a peripheral device connected to the control device, and the data transfer unit transfers a parameter to the peripheral device via the control device after transferring the control program to the control device. You may do so.
  • data stored in a peripheral device connected to the control device can be updated more reliably while monitoring the state of the control device.
  • the support device further includes a data acquisition processing unit that acquires data stored in each device from each of the devices belonging to the same group and updates the content of the project in response to the user operation. It may be included.
  • data acquisition upload processing
  • data acquisition can be easily realized in units of groups set for a control system having a plurality of devices.
  • a support program executed by a computer used in a control system having a plurality of devices.
  • the support program causes the computer to generate data to be stored in each of the plurality of devices from a project including information necessary for operating the plurality of devices. Accepting the selection; transferring, in response to a user operation, data corresponding to each generated device to each of the devices belonging to the same group; data for all devices belonging to the same group After the transfer is successfully performed, the step of instructing each device to reflect the transferred data.
  • data transfer and reflection can be easily realized in units of groups set for a control system having a plurality of devices.
  • a control system includes a plurality of devices and a support device connectable to the plurality of devices.
  • the support device includes a data generation unit that generates data to be stored in each of the plurality of devices from a project including information necessary for operating the plurality of devices, and a device that includes devices belonging to the same group among the plurality of devices.
  • a selection receiving unit that receives the selection, and a data transfer unit that transfers data corresponding to each device generated by the data generation unit to each of the devices belonging to the same group in response to a user operation,
  • a data management unit for instructing each device to reflect the transferred data after successful data transfer to all devices belonging to the group.
  • data transfer and reflection can be easily realized in units of groups set for a control system having a plurality of devices.
  • data update or the like can be realized in a specific group unit.
  • FIG. 2 is a schematic diagram illustrating an example of a hardware configuration of a PLC included in the control system according to the present embodiment.
  • FIG. 2 is a schematic diagram illustrating an example of a hardware configuration of a unit included in the control system according to the present embodiment.
  • FIG. 3 is a schematic diagram illustrating an example of a hardware configuration of a coupler included in the control system according to the present embodiment.
  • FIG. 2 is a schematic diagram illustrating an example of a hardware configuration of a support device included in the control system according to the present embodiment.
  • FIG. 2 is a schematic diagram illustrating an example of a functional configuration of a main part of a control system according to the present embodiment.
  • FIG. 3 is a diagram for explaining an example of a management function in group units in the control system according to the present embodiment.
  • FIG. 3 is a schematic diagram illustrating an example of mounting a management function in group units in the control system according to the present embodiment.
  • FIG. 7 is a schematic diagram for explaining a processing procedure of a management function (download) in a group unit in the control system according to the present embodiment.
  • 6 is a flowchart illustrating a processing procedure of a management function (download) in group units in the control system according to the present embodiment.
  • FIG. 6 is a flowchart illustrating a processing procedure of a management function (download) in group units in the control system according to the present embodiment.
  • FIG. 9 is a schematic diagram for explaining a processing procedure of a management function (upload) in group units in the control system according to the present embodiment.
  • 5 is a flowchart illustrating a processing procedure of a management function (upload) in group units in the control system according to the present embodiment.
  • 5 is a flowchart illustrating a processing procedure of a management function (upload) in group units in the control system according to the present embodiment.
  • It is a schematic diagram which shows an example of the group setting allocation screen provided by the control system according to the present embodiment.
  • FIG. 5 is a schematic diagram illustrating an example of an execution result notification screen provided by the control system according to the present embodiment.
  • FIG. 1 is a schematic diagram illustrating an application example of a control system 1 according to the present embodiment.
  • the control system 1 has a plurality of devices 10_1, 10_2, 10_3, 10_4,..., 10_N (hereinafter, also collectively referred to as “device 10”).
  • device means a unit of a control element in the control system 1, and programs, configuration settings, parameters, and the like necessary for control calculation are generated and managed in a unit of device.
  • a “device” cooperates with one or more PLCs (an example of a control device), which is a PLC (programmable logic controller) that executes a control program (which may include sequence control and motion control). It may include an HMI (Human @ Machine @ Interface), an IPC (Industrial @ Personal @ Computer) integrating PLC and HMI functions, and the like.
  • PLCs an example of a control device
  • HMI Human @ Machine @ Interface
  • IPC Intelligent @ Personal @ Computer
  • the peripheral device may include peripheral devices connected to PLCs and IPCs.
  • the peripheral device may typically include a device that exchanges input / output data handled by the PLC and the IPC with the control target.
  • the peripheral device includes a unit, a slave device, a coupler unit, and the like. Details of specific examples of the peripheral device will be described later.
  • the control system 1 has the support device 400 used in the control system 1.
  • the support device 400 develops and manages a control program executed by each device constituting the control system 1 and necessary parameters.
  • the support device 400 provides an integrated development environment in which control programs executed by the plurality of devices 10 included in the control system 1, necessary parameters, and the like can be collectively developed and managed.
  • a control program executed in each device constituting the control system 1 and necessary parameters are managed as a single project 484.
  • the project 484 may be composed of a plurality of files.
  • the support device 400 includes a data generation unit 20 (corresponding to a build processing unit 468 described later), a selection receiving unit 22 (corresponding to a group setting allocation screen 600 described later), and a data transfer unit 24 (file transfer processing unit 454 described later). And a data management unit 26 (corresponding to a download processing unit 458 described later).
  • the data generation unit 20 generates data to be stored in each of the plurality of devices 10 from the project 484 including information necessary for operating the plurality of devices 10.
  • the data may include a control program executed by each device 10, parameters necessary for the operation of each device 10, and the like.
  • the selection accepting unit 22 accepts selection of a device belonging to the same group among the plurality of devices 10. In the example illustrated in FIG. 1, it is assumed that the device 10_1 and the device 10_2 are set to belong to the same group A.
  • the data transfer unit 24 transfers data corresponding to each device generated by the data generation unit 20 to each of the devices 10 belonging to the same group in response to a user operation.
  • FIG. 1 shows an example in which data (file) is transferred to devices 10_1 and 10_2 belonging to group A.
  • FIG. 1 shows an example in which an instruction to reflect data (reflection instruction) is given to the devices 10_1 and 10_2 belonging to the group A.
  • FIG. 2 is a schematic diagram illustrating a configuration example of the control system 1 according to the present embodiment.
  • control system 1 is executed by a plurality of devices 10_1, 10_2, 10_3, 10_4,..., 10_N (hereinafter, also collectively referred to as “device 10”) and PLC 100 of device 10.
  • a support device 400 for setting parameters required for program development and program execution are connected to each other via a network 2.
  • Each of the devices 10 is configured around a PLC 100 which is a typical example of a control device.
  • the PLC 100 can be connected to an arbitrary unit 200 via the local bus 4 and can be connected to an arbitrary slave device (hereinafter simply referred to as “slave 250”) via the field bus 6.
  • a coupler unit (hereinafter, also simply referred to as “coupler 300”) may be connected to the field bus 6.
  • the coupler 300 is connected to an arbitrary unit 200 via the local bus 8. That is, the coupler 300 connects the unit 200 to the PLC 100 via the local bus 8 and the field bus 6. Note that the coupler 300 can also be regarded as the slave 250.
  • the device 10_1 includes the PLC 100, the slave 250 connected to the PLC 100 via the field bus 6, and the coupler 300.
  • the unit 200 is connected to the coupler 300 via the local bus 8.
  • the device 10_2 includes the PLC 100, two units 200 connected to the PLC 100 via the local bus 8, and two slaves 250 connected via the field bus 6.
  • the device 10_3 includes the PLC 100, one unit 200 connected to the PLC 100 via the local bus 8, and two slaves 250 connected via the field bus 6.
  • the device 10_4 includes the PLC 100, one unit 200 connected to the PLC 100 via the local bus 8, and one slave 250 connected via the field bus 6.
  • the device 10_N includes the PLC 100, two units 200 connected to the PLC 100 via the local bus 8, and one slave 250 connected via the field bus 6.
  • FIG. 2 illustrates the control system 1 including five devices 10, but the number of the devices 10 may be less than five or more than five.
  • the support device 400 provides functions such as program development and parameter setting.
  • the support device 400 transfers (downloads) the developed program and parameters to each device.
  • FIG. 3 is a schematic diagram illustrating an example of a hardware configuration of the PLC 100 included in the control system 1 according to the present embodiment.
  • PLC 100 includes a processor 102, a main memory 104, a storage 106, a network controller 108, a field bus controller 110, a USB (Universal Serial Bus) controller 114, a memory card interface 116, And a local bus controller 120. These components are connected via a processor bus 130.
  • the processor 102 corresponds to an arithmetic processing unit that executes control arithmetic and the like, and is configured by a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), and the like. Specifically, the processor 102 reads out a program (for example, the system program 1060 and the control program 140) stored in the storage 106, expands the program in the main memory 104, and executes the program. And so on.
  • a program for example, the system program 1060 and the control program 140
  • the main memory 104 is configured by a volatile storage device such as a DRAM (Dynamic Random Access Memory) or an SRAM (Static Random Access Memory).
  • the storage 106 corresponds to a storage unit, and includes, for example, a nonvolatile storage device such as a solid state drive (SSD) or a hard disk drive (HDD).
  • SSD solid state drive
  • HDD hard disk drive
  • the storage 106 stores, in addition to a system program 1060 for realizing basic functions, a control program 140 created according to a control target such as equipment or a machine.
  • the network controller 108 exchanges data with an arbitrary information processing apparatus including the support apparatus 400 via the network 2.
  • the fieldbus controller 110 is connected to the slave 250 and the coupler 300 via the fieldbus 6.
  • the USB controller 114 exchanges data with an external device or the like via a USB connection.
  • the memory card interface 116 receives a memory card 118, which is an example of a removable recording medium.
  • the memory card interface 116 is capable of writing data to the memory card 118 and reading various data (such as logs and trace data) from the memory card 118.
  • the local bus controller 120 exchanges data with an arbitrary unit 200 via the local bus 4.
  • FIG. 3 illustrates a configuration example in which the processor 102 provides necessary functions by executing a program.
  • some or all of the provided functions may be replaced by a dedicated hardware circuit (for example, an ASIC). (Application Specific Integrated Circuit) or FPGA (Field-Programmable Gate Array) or the like.
  • the main part of the PLC 100 may be realized using hardware that conforms to a general-purpose architecture (for example, an industrial personal computer based on a general-purpose personal computer).
  • a plurality of OSs (Operating Systems) having different applications may be executed in parallel using virtualization technology, and a required application may be executed on each OS.
  • OSs Operating Systems
  • FIG. 4 is a schematic diagram illustrating an example of a hardware configuration of unit 200 included in control system 1 according to the present embodiment.
  • unit 200 includes a functional module 210, a local bus controller 220, and a storage 206.
  • the function module 210 provides a function according to the duty of each unit 200.
  • the functional module 210 includes a digital signal input circuit and a detection circuit such as a photocoupler.
  • the function module 210 has trajectory calculation logic, command generation logic, and the like.
  • the local bus controller 220 exchanges data with the connected PLC 100 or coupler 300 via the local bus 4.
  • the storage 206 stores parameters 2060 for operating the unit 200.
  • the parameter 2060 includes a setting value related to the operation of the function module 210, in addition to information such as a network address of the unit 200.
  • the parameter 2060 is provided from the support device 400 via the PLC 100 or the coupler 300.
  • a part or all of the functions provided by the unit 200 may be realized by a processor executing a program.
  • FIG. 5 is a schematic diagram illustrating an example of a hardware configuration of the coupler 300 included in the control system 1 according to the present embodiment.
  • the coupler 300 corresponds to a configuration in which some of the components configuring the PLC 100 are simplified. More specifically, referring to FIG. 5, coupler 300 includes a processor 302, a main memory 304, a storage 306, a fieldbus controller 310, and a local bus controller 320. These components are connected via a processor bus 330.
  • the processor 302 corresponds to an arithmetic processing unit that executes control arithmetic and the like, and is configured by a CPU, a GPU, and the like.
  • the main memory 304 includes a volatile storage device such as a DRAM or an SRAM.
  • the storage 306 corresponds to a storage unit, and includes, for example, a nonvolatile storage device such as an SSD or an HDD.
  • the storage 306 stores parameters 3060 for operating the coupler 300.
  • the parameter 3060 includes, in addition to information such as the network address of the coupler 300, a set value related to the operation of the coupler 300, and the like.
  • the parameter 3060 is provided from the support device 400 via the field bus 6.
  • the fieldbus controller 310 is connected to the PLC 100, the slave 250, another coupler 300, and the like via the fieldbus 6.
  • the local bus controller 320 exchanges data with an arbitrary unit 200 via the local bus 8.
  • FIG. 5 shows a configuration example in which the processor 302 provides necessary functions by executing a program.
  • some or all of the provided functions may be replaced by a dedicated hardware circuit (for example, an ASIC). Or an FPGA or the like).
  • the slave 250 included in the control system 1 employs the field bus controller 310 included in the coupler 300 in FIG. 5 instead of the local bus controller 220 in the unit 200 illustrated in FIG. Configuration. Detailed description of slave 250 will not be repeated.
  • FIG. 6 is a schematic diagram illustrating an example of a hardware configuration of the support device 400 included in the control system 1 according to the present embodiment.
  • support device 400 is realized, for example, by a computer executing a program according to a general-purpose architecture.
  • the support device 400 includes a processor 402, a main memory 404, a storage 406, an input unit 408, a display unit 410, an optical drive 412, and a network controller 416. These components are connected via a processor bus 418.
  • the processor 402 is configured by a CPU, a GPU, and the like, reads out a program (for example, the OS 4060 and the support program 4062) stored in the storage 406, expands the program in the main memory 404, and executes the program. Implement the processing.
  • a program for example, the OS 4060 and the support program 4062
  • the main memory 404 is configured by a volatile storage device such as a DRAM or an SRAM.
  • the storage 406 includes, for example, a nonvolatile storage device such as an HDD or an SSD.
  • the storage 406 stores a support program 4062 for providing a function as the support device 400 in addition to the OS 4060 for realizing basic functions.
  • the support program 4062 causes a computer to function as the support device 400.
  • the input unit 408 includes a keyboard, a mouse, and the like, and receives a user operation.
  • the display unit 410 includes a display, various indicators, a printer, and the like, and outputs a processing result from the processor 402 and the like.
  • the network controller 416 exchanges data with an external device or the like via the network 2.
  • the support device 400 includes an optical drive 412, and a recording medium 414 (for example, an optical recording medium such as a DVD (Digital Versatile Disc)) that non-transitoryly stores a computer-readable program, and is stored therein.
  • the stored program is read and installed in the storage 406 or the like.
  • the support program 4062 and the like executed by the support device 400 may be installed via a computer-readable recording medium 414, or may be installed by downloading from a server device or the like on a network. Further, the function provided by the support device 400 according to the present embodiment may be realized by using a part of a module provided by the OS.
  • FIG. 6 shows an example of a configuration in which functions required as the support device 400 are provided by the processor 402 executing a program, but some or all of the provided functions may be replaced by dedicated hardware. It may be implemented using a circuit (for example, an ASIC or an FPGA).
  • FIG. 7 is a schematic diagram illustrating an example of a functional configuration of a main part of the control system 1 according to the present embodiment.
  • FIG. 7 focuses on the main functions of the device 10_1 and the support device 400 as an example.
  • device 10_1 includes PLC 100, unit 200, slave 250, and coupler 300.
  • the PLC 100 includes the storage 106 and the PLC function module 150.
  • the storage 106 is provided with a temporary data area 1062 and a data area 1064 as areas for storing data such as the control program 140 shown in FIG.
  • the temporary data area 1062 and the data area 1064 are storage areas for implementing data update and rollback for the PLC 100. More specifically, the data area 1064 corresponds to a first data area for storing data used for processing, and includes a control program 140 transmitted from the support device 400 and a set of data including related parameters. Stored temporarily.
  • Temporary data area 1062 corresponds to a second data area for temporarily storing data transferred from data transfer unit 24 (FIG. 1), and stores control program 140 being executed by PLC 100 and related parameters. Is done.
  • the PLC function module 150 provides a function necessary for executing the control program 140 in the PLC 100.
  • the PLC function module 150 includes a sequence control unit 152, a motion control unit 154, and an IO port 160.
  • the sequence control unit 152 corresponds to a processing engine that interprets and executes a sequence command included in the control program 140 executed in the PLC 100.
  • the motion control unit 154 corresponds to a processing engine that interprets and executes a motion command included in the control program 140 executed in the PLC 100.
  • the IO port 160 exchanges input / output data with the unit 200, the slave 250, the coupler 300, and the like.
  • the parameters 20060, 2560, and 3060 for operating the unit 200, the slave 250, and the coupler 300 are stored in the unit 200, the slave 250, and the coupler 300, respectively. These parameters 2060, 2560, 3060 are appropriately transferred from the support device 400.
  • transferring any data (or file) from the support device 400 to any device 10 is referred to as “download”, and conversely, any data (or file) from any device 10 to the support device 400.
  • transferring the file is referred to as “upload”.
  • the support apparatus 400 provides the integrated development environment 450 by executing the support program 4062 (FIG. 6).
  • the integrated development environment 450 is configured to exchange data with the storage 406, the input unit 408, and the display unit 410. That is, the integrated development environment 450 executes a process according to a user operation via the input unit 408, and displays an execution result (for example, an upload execution result or a build result) on the display unit 410.
  • the integrated development environment 450 includes a communication unit 452, a control unit 470, and a file IO processing unit 472 as a functional configuration.
  • the communication unit 452 is in charge of communication processing with an arbitrary device 10. Typically, the communication unit 452 connects the PLC 100 and the integrated development environment 450. The communication unit 452 can be implemented as a kind of communication stack.
  • the control unit 470 executes processing necessary for realizing the integrated development environment 450.
  • the control unit 470 includes a file transfer processing unit 454, a backup processing unit 456, a download processing unit 458, a file acquisition processing unit 460, an upload processing unit 462, a data load processing unit 464, and a restore processing. It includes a processing unit 466 and a build processing unit 468.
  • the file transfer processing unit 454 is mainly in charge of download processing, and transfers a designated file among the files generated in the support device 400 to the temporary data area 1062 of the PLC 100 by using the communication unit 452.
  • the file transfer processing unit 454 is a data transfer unit that transfers data corresponding to each device 10 generated by the build processing unit 468 to each of the devices 10 belonging to the same group in response to a user operation. Is equivalent to
  • the backup processing unit 456 manages target file selection and transfer processing when the file transfer processing unit 454 transfers the backup data 486. More specifically, the backup processing unit 456 corresponds to a data holding unit that acquires data stored in each device 10 belonging to the same group before data transfer and holds the data as backup data 486.
  • the download processing unit 458 manages a process of downloading the file generated by the build processing unit 468. More specifically, the download processing unit 458 corresponds to the data management unit 26 (FIG. 1), and after the data transfer to all the devices 10 belonging to the same group succeeds, the download processing unit 458 Instruct data to be reflected.
  • the download processing unit 458 performs a process of returning all the devices 10 belonging to the same group to a state before data transfer. I do.
  • the file acquisition processing unit 460 is mainly in charge of upload processing, uploads a specified file among files stored in an arbitrary device 10 (PLC 100) using the communication unit 452, and The acquired file is stored in 406 or the like.
  • the upload processing unit 462 manages the file upload processing performed by the file acquisition processing unit 460.
  • the data load processing unit 464 loads the file acquired by the file acquisition processing unit 460 as necessary, and generates a reusable state.
  • the upload processing unit 462 and the data load processing unit 464 correspond to a data acquisition processing unit, and are stored in each device 10 from each of the devices 10 belonging to the same group in response to a user operation.
  • the contents of the project 484 are updated by acquiring the data.
  • the restore processing unit 466 expands the file acquired by the file acquisition processing unit 460 and restores the file to a past state.
  • the build processing unit 468 corresponds to a data generation unit that generates data to be stored in each of the plurality of devices 10 from the project 484 including information necessary for operating the plurality of devices 10. Specifically, the build processing unit 468 interprets a source program created by a user and stores a file including data (typically, object code and parameters, etc.) for transfer to the device 10 (PLC 100). Generate.
  • the file IO processing unit 472 is in charge of reading and writing of a file stored in the storage 406.
  • a directory 480 is configured as a storage destination of a file accessed from the integrated development environment 450.
  • the directory 480 is a place where, for example, a file generated by the build processing unit 468 and a file uploaded to an arbitrary device 10 are stored.
  • the directory 480 stores a transfer file 482, a project 484, backup data 486, and a group setting file 488.
  • the transfer file 482 includes a file generated by the build processing unit 468 and transferred to the PLC 100.
  • the project 484 is a file in which programs and parameters developed in the integrated development environment 450 are integrated. In the integrated development environment 450, data is managed on a project basis. Project 484 may include data for control program 140 running on one or more devices 10.
  • the backup data 486 is a copy of data stored in the connected device 10, and is stored in the unit 200, the slave 250, and the coupler 300 in addition to data such as the control program 140 stored in each device 10. It may include parameter information and memory information.
  • the group setting file 488 defines devices belonging to each group for realizing a group-by-group management function described below.
  • the selection receiving unit 22 receives the selection of the devices 10 belonging to the same group among the plurality of devices 10 and reflects the content on the group setting file 488.
  • online processing of the support device 400 is possible in units of groups arbitrarily set for a plurality of devices 10.
  • online processing includes reading and / or writing processing of a file (data) such as download and upload.
  • the support apparatus 400 can download and upload one or a plurality of devices 10 belonging to the selected group collectively.
  • the “on-line process” may include a command that does not include a file read process or a file write process, such as a reset (restart) command.
  • FIG. 8 is a diagram for explaining an example of a management function for each group in the control system 1 according to the present embodiment.
  • FIG. 8 shows an example of the group setting file 488 stored in the support device 400.
  • the group setting file 488 shown in FIG. 8 four groups (group A, group B, group C, and group D) are defined, and which device belongs to each group is defined by a check mark. .
  • “device 1” and “device 2” belong to “group A”, and “device 3”, “group 4”, and “device N” belong to “group B”. I have. For example, when “group A” is selected, online processing (download and upload) is collectively executed for “device 1” and “device 2” belonging to “group A”.
  • Each device may be able to belong to multiple groups.
  • “device 1” belongs to “group A” and “group C”
  • “device 2” belongs to “group A” and “group D”.
  • each device may be allowed to belong to only a single group.
  • Such a management function on a group basis for example, in a case where a plurality of manufacturing lines are realized by a plurality of devices, transfers necessary data only to devices involved in a specific manufacturing line (download ) It can respond to needs such as wanting. Similarly, it is possible to cope with a need to upload only data held by a device involved in a specific manufacturing line and store it as backup data 486.
  • FIG. 9 is a schematic diagram showing an example of mounting a management function in group units in the control system 1 according to the present embodiment.
  • FIG. 9 illustrates an example in which the device 10_1 and the device 10_2 belong to the group A, and the device 10_3, the device 10_4, and the device 10_N belong to the group B.
  • the configuration of the devices 10_1, 10_2, 10_3, 10_4,..., 10_N is substantially the same as that shown in FIG.
  • support device 400 collects two devices 10 by executing data download and upload in parallel or serially for devices 10_1 and 10_2 belonging to group A. To realize online processing. Similarly, the support apparatus 400 executes data download and upload in parallel or serially with respect to the devices 10_3, 10_4, and 10_N belonging to the group B, so that the three devices 10 are combined. , Realize online processing.
  • the project 484 managed by the integrated development environment 450 of the support device 400 includes a partial project 4841 associated with the set group A and a partial project 4842 associated with the set group B.
  • the data downloaded from the support device 400 includes the control program 140 executed by the device 10 and the parameters 2060, 2560, and 3060 required for the operation of the device 10.
  • the partial project 4841 includes device data 485_1 exchanged with the device 10_1 belonging to the group A and device data 485_2 exchanged with the device 10_2.
  • the device data 485_1 directed to the device 10_1 includes the control program 140 executed by the PLC 100, the parameters 2560 stored in the slave 250, and the parameters 3060 stored in the coupler 300.
  • the control program 140 includes a configuration setting 1402 that defines the topology of the device 10_1 and the like, and a program code 1404.
  • the device data 485_2 directed to the device 10_2 includes the control program 140 executed by the PLC 100, the parameter 2560 stored in the slave 250, and the parameter 2060 stored in the unit 200.
  • the partial project 4842 is exchanged with the device data 485_3 exchanged with the device 10_3 belonging to the group B, the device data 485_4 exchanged with the device 10_4, and the device 10_N. Includes device data 485_N.
  • the device data 485_3 directed to the device 10_3, the device data 485_4 directed to the device 10_4, and the device data 485_N directed to the device 10_N are all a control program 140 executed by the PLC 100 and a slave.
  • a parameter 2560 stored in the unit 250 and a parameter 2060 stored in the unit 200 are included.
  • online processing download and upload
  • the corresponding device 10 in units of the partial project 4841 or the partial project 4842 included in the project 484.
  • FIG. 10 is a schematic diagram for explaining a processing procedure of a management function (download) for each group in the control system 1 according to the present embodiment.
  • FIG. 10 illustrates a processing example of downloading data to the devices 10_1 and 10_2 belonging to the group A.
  • FIG. 10 it is assumed that the control program 140 and the parameters 2060, 2560, and 3060 have been updated for each of the devices 10_1, 10_2, and 10_3 in the support device 400.
  • descriptions such as “# 1”, “# 2”, and “# 3” mean update numbers (versions).
  • “S” + “number” in a frame surrounded by a square corresponds to a step number described later. The same applies to FIG. 13 described later.
  • FIG. 10 shows an example of processing when download is instructed with group A selected. Since the group A is selected, data is downloaded only to the devices 10_1 and 10_2 belonging to the group A, and data is not downloaded to the device 10_3.
  • the support device 400 has previously performed a process of generating data to be stored in each of the plurality of devices 10 from the project 484 including information necessary for operating the plurality of devices 10. It is also assumed that the support device 400 has also executed in advance a process of receiving a selection of a device 10 belonging to the same group among the plurality of devices 10.
  • the support apparatus 400 acquires sessions of all the devices 10 belonging to the selected group, and acquires an exclusive control right (step S1). This is to prevent simultaneous writing from another apparatus to the same device 10.
  • the support device 400 sequentially accesses all the devices 10 belonging to the selected group, executes a backup process of data stored in each device 10, and saves the data as backup data 486 in the directory 480. (Step S2).
  • the backup processing of the data stored in the plurality of devices 10 may be executed not only by the sequential access but also by the parallel processing.
  • the support device 400 transfers a file including target data (such as the control program 140) to the temporary data area 1062 of each device 10 to all the devices 10 belonging to the selected group (Step S3). . That is, the support device 400 executes a process of transferring the generated data corresponding to each device 10 to each of the devices belonging to the same group in response to the user operation.
  • target data such as the control program 140
  • the support apparatus 400 stores the files in the temporary data area 1062 for all the devices 10 that have performed the file transfer to the temporary data area 1062. It is instructed to reflect the specified file in the data area 1064 (step S4). Loading and reflecting such transferred files is also referred to as “flash processing”. That is, after successfully transferring data to all the devices 10 belonging to the same group, the support device 400 executes a process of instructing each of the devices 10 to reflect the transferred data.
  • the execution instruction (reflection instruction) of the flash processing includes an instruction to reflect the data stored in the temporary data area 1062 to the data area 1064 for each device 10 belonging to the same group.
  • the support device 400 transfers the corresponding parameters 2060 to all the units 200 belonging to each device 10. (Step S5).
  • the support device 400 transfers the corresponding parameters 2560 and 3060 to all the slaves 250 and the coupler 300 belonging to each device 10. (Step S6).
  • the file transfer processing unit 454 (data transfer unit 24) of the support device 400 transfers (downloads) the parameters 2060, 2560, and 3060 after the transfer of the control program 140. More specifically, the file transfer processing unit 454 (data transfer unit 24) of the support device 400 transfers the control program 140 to the PLC 100, which is a control device, and then transmits the unit 200, which is a peripheral device, and the slave 250 via the PLC 100. Then, the parameters 2060, 2560, and 3060 are transferred to the coupler 300.
  • step S5 The order of executing the parameter transfer of the unit 200 (step S5) and the parameter transfer of the slave 250 and / or the coupler 300 (step S6) need not be the same.
  • step S5 and step S6 may be reversed.
  • the support device 400 executes an IP address update process for the PLC 100 (Step S7). That is, even if the file transferred to the PLC 100 includes an instruction to update the IP address, the process of updating the IP address is on standby until step S7.
  • the support apparatus 400 releases the sessions of all the devices 10 belonging to the selected group and releases the exclusive control right (step S8). Then, the support device 400 notifies the user of the result of the series of download processing (Step S9).
  • FIG. 10 illustrates the controller mainly including the PLC 100 as an example of a device.
  • the device is not limited to the controller mainly including the PLC 100.
  • the same applies to any device such as an HMI and an IPC. Applicable to
  • FIGS. 11 and 12 are flowcharts showing the processing procedure of the management function (download) in group units in the control system 1 according to the present embodiment. Each step shown in FIGS. 11 and 12 is typically realized by the processor 402 of the support device 400 executing the support program 4062.
  • the support apparatus 400 displays a group setting allocation screen (a group setting allocation screen 600 shown in FIG. 16 to be described later) and accepts a group selection (step S101).
  • the support apparatus 400 acquires the sessions of all the devices 10 belonging to the selected group and acquires the exclusive control right (step S102). That is, the support device 400 acquires a session for all the devices 10 belonging to the selected group in order to prevent the writing process from being performed by another support device 400 or the like during the process.
  • the exclusive control right of the target device 10 may be sequentially acquired, or the exclusive control right of a plurality of devices 10 may be acquired in parallel processing.
  • Step S201 the support apparatus 400 backs up data stored in all the devices 10 belonging to the selected group.
  • Data acquired from each device 10 is stored as backup data 486 in the directory 480.
  • the support apparatus 400 determines whether the backup has been successfully performed on all the devices 10 belonging to the selected group (step S202). If the backup for any of the devices 10 has failed (NO in step S202), the process proceeds to step S803.
  • the support device 400 changes the operation mode to the program mode for all the devices 10 belonging to the selected group. (Step S301).
  • the “program mode” is a mode in which the update of the control program and the parameters is permitted. In response to an instruction from the support device 400, the execution and the like of the control program can be stopped and restarted.
  • the support device 400 transfers the file to all the devices 10 belonging to the selected group (Step S302).
  • the file is transferred to the temporary data area 1062 of each PLC 100.
  • the transferred files have not yet been reflected.
  • the support apparatus 400 determines whether or not the file transfer to all the devices 10 belonging to the selected group has been successful (step S303). If the file transfer to any of the devices 10 has failed (NO in step S303), the support device 400 determines whether or not the setting for restoring the failure has been made (step S304).
  • the support device 400 deletes the transferred file stored in the temporary data area 1062 for all the devices 10 belonging to the selected group (YES in step S304). (Step S305). Then, the process proceeds to step S803.
  • the download processing unit 458 data management unit 26 of the support device 400 , An instruction to delete the data stored in the temporary data area 1062.
  • step S401 the processing is continued only for the device 10 to which the file transfer has succeeded. That is, the download processing unit 458 (data management unit 26) of the support device 400 succeeds in transferring the data among the devices 10 belonging to the same group according to the predetermined setting (invalidation of the setting to be restored in case of failure). It is possible to instruct only the transferred device 10 to reflect the transferred data.
  • step S401 and subsequent steps flash processing is executed. More specifically, the support apparatus 400 reflects the transferred file on all the devices 10 (that is, executes the flash processing) (step S401).
  • the writing order of the device 10 can be arbitrarily set on an execution order setting screen 660 shown in FIG. 16 described later or a pre-execution screen 670 shown in FIG.
  • the flash processing may be sequentially performed on the target devices 10, or the flash processing may be performed on a plurality of devices 10 by simultaneous reflection, that is, parallel processing.
  • step S402 the data in the device 10 is updated with the transferred file. Note that, when the IP address of the device 10 is changed, the loading of the IP address is not performed at this point in order to prevent the subsequent transfer process from being unable to be executed.
  • the support apparatus 400 determines whether or not the flash processing has been successfully performed on all the devices 10 belonging to the selected group (step S403). If the flash processing for any of the devices 10 has failed (NO in step S403), the support device 400 determines whether or not the setting for restoring the failure has been made (step S404).
  • step S404 If the setting for returning to the original state has been made in the event of a failure (YES in step S404), the process proceeds to step S504. On the other hand, if the setting to return to the original state in the event of failure has not been made (NO in step S404), the process proceeds to step S501. In this case, the processing is continued only for the device 10 for which the flash processing has succeeded.
  • support device 400 transfers the parameters to all units 200 belonging to each device 10 (step S501).
  • the support apparatus 400 determines whether or not the parameter transfer to all the units 200 belonging to each device 10 has succeeded (step S502). If the parameter transfer to any one of the units 200 has failed (NO in step S502), the support device 400 determines whether or not the setting for restoring the failure has been made (step S503).
  • step S503 If the setting for returning to the original state has been made in the event of a failure (YES in step S503), the process proceeds to step S504.
  • step S503 if the setting to return to the original state in the event of failure has not been made (NO in step S503), the process proceeds to step S601. In this case, the processing is continued only for the unit 200 for which the parameter transfer has succeeded.
  • support device 400 transfers the parameters to all slaves 250 and couplers 300 belonging to each device 10 (step S601). ).
  • the support apparatus 400 determines whether or not the parameter transfer to all the slaves 250 and the couplers 300 belonging to each device 10 has succeeded (step S602). If the parameter transfer to any one of the slaves 250 or the coupler 300 has failed (NO in step S602), the support device 400 determines whether or not the setting for restoring the failure has been made (step S603).
  • step S604 If the setting is set to return to the original state in the case of failure (YES in step S604), the process proceeds to step S504.
  • step S603 if the setting to return to the original state in the event of failure has not been made (NO in step S603), the process proceeds to step S701. In this case, the processing is continued only for the slave 250 and the coupler 300 for which the parameter transfer has succeeded.
  • step S504 the support device 400 restores the backed up data to each device (step S504). Thereby, each device 10 returns to the original state. That is, when data transfer to any device 10 belonging to the same group fails, the download processing unit 458 (data management unit 26) of the support device 400 transfers the backup data 486 to each device 10 belonging to the same group. return. Then, the process proceeds to step S803.
  • step S602 if the parameter transfer to all the slaves 250 and couplers 300 belonging to each device 10 has been successful (YES in step S602), support device 400 loads the IP addresses of devices 10 belonging to the selected group. (Step S701). Note that only the device 10 whose IP address is changed performs the load processing shown in step S701.
  • the support apparatus 400 checks whether or not there is a device 10 that failed to load the IP address (step S702).
  • the support device 400 operates on the operation mode change confirmation screen for selecting the device 10 to be returned to the operation mode (the operation mode change confirmation screen 680 in FIG. 18) regardless of whether or not there is a device 10 that failed to load the IP address. Is displayed (step S801).
  • the user can himself or herself select whether or not to return the device that was in the operation mode before the start of the download to the operation mode.
  • the operation mode change confirmation screen it is preferable to be able to select whether to return to the operation mode for each device.
  • the support device 400 returns the selected device to the operation mode according to the user operation on the operation mode change confirmation screen displayed in step S801 (step S802).
  • the support apparatus 400 releases the session of the device 10 belonging to the selected group and releases the exclusive control right (step S803).
  • the exclusive control right of the target device 10 may be sequentially released, or the exclusive control right of a plurality of devices 10 may be released in parallel processing.
  • the support device 400 notifies the user of the result of the series of download processing (for example, an execution result notification screen 690 illustrated in FIG. 19) (step S901).
  • This result preferably includes the transfer result for each device 10.
  • the IP address is changed, or when the load processing of the IP address fails, it is preferable to include the content in the notification result.
  • FIG. 13 is a schematic diagram for explaining a processing procedure of a management function (upload) in group units in the control system 1 according to the present embodiment.
  • FIG. 13 illustrates a processing example of uploading data to the devices 10_1 and 10_2 belonging to the group A.
  • FIG. 13 shows an example of processing when uploading is instructed with group A selected. Since the group A is selected, the data stored in the devices 10_1 and 10_2 belonging to the group A is uploaded, and the data is not uploaded to the device 10_3.
  • the support apparatus 400 acquires the sessions of all the devices 10 belonging to the selected group, and acquires the exclusive control right (step S11). This is to prevent simultaneous writing from another apparatus to the same device 10.
  • the support device 400 saves the data of the project 484 opened in the integrated development environment 450 in the directory 480 (step S12).
  • the support device 400 sequentially accesses all the devices 10 belonging to the selected group, executes upload processing for the file of the control program 140 in each device 10, and stores the control program 140 # in the directory 480 as the control program 140 #. It is stored (step S13).
  • the backup process for the files of the control programs 140 in the plurality of devices 10 may be executed not only in the sequential access but also in the parallel process.
  • the support device 400 updates the control program 140 of each device 10 opened in the integrated development environment 450 based on the uploaded control program 140 #. (Step S14).
  • the support device 400 executes an upload process for the parameters 2060 of all the units 200 belonging to each device 10 (Step S15).
  • the support device 400 updates the parameters 2060 of each unit 200 opened in the integrated development environment 450 based on the uploaded parameters 2060. .
  • the support device 400 executes the upload process for the parameters 2560 and 3060 of all the slaves 250 and the coupler 300 belonging to each device 10 ( Step S16).
  • the support device 400 integrates based on the uploaded parameters 2560 and 3060 of the coupler 250 and coupler 300.
  • the parameters 2560 and 3060 of each slave 250 and coupler 300 opened in the development environment 450 are updated.
  • step S15 The order of executing the parameter transfer of the unit 200 (step S15) and the parameter transfer of the slave 250 and / or the coupler 300 (step S16) need not be the same.
  • step S15 and step S16 may be reversed.
  • the support device 400 releases the sessions of all the devices 10 belonging to the selected group. Then, the exclusive control right is released (step S17). Then, the support device 400 notifies the user of the result of the series of download processing (step S18).
  • FIG. 13 illustrates the controller mainly including the PLC 100 as an example of a device.
  • the device is not limited to the controller mainly including the PLC 100.
  • the same applies to any device such as an HMI and an IPC. Applicable to
  • FIGS. 14 and 15 are flowcharts showing the processing procedure of the management function (upload) in group units in the control system 1 according to the present embodiment. Each step shown in FIGS. 14 and 15 is typically realized by the processor 402 of the support device 400 executing the support program 4062.
  • the support device 400 displays a group setting allocation screen (a group setting allocation screen 600 shown in FIG. 16 to be described later) and receives a group selection (step S1101).
  • the support apparatus 400 acquires the sessions of all the devices 10 belonging to the selected group, and acquires the exclusive control right (step S1102). That is, the support device 400 acquires a session for all the devices 10 belonging to the selected group in order to prevent the writing process from being performed by another support device 400 or the like during the process.
  • the exclusive control right of the target device 10 may be sequentially acquired, or the exclusive control right of a plurality of devices 10 may be acquired in parallel processing.
  • the support device 400 saves the data of the project 484 opened in the integrated development environment 450 in the directory 480 (step S1201). That is, the support device 400 locally copies the data of the currently opened project 484. This copy corresponds to the backup data 486 for restoring the project 484 when the upload processing has failed.
  • the support device 400 sequentially accesses all the devices 10 belonging to the selected group, executes an upload process for the control program 140 in each device 10, and saves them as the control program 140 # in the directory 480. (Step S1301). That is, the support device 400 uploads the files in each device 10 to the local folder for all the devices 10.
  • the support apparatus 400 determines whether or not the upload processing for all the devices 10 belonging to the selected group has been successful (step S1302). If the upload processing for any of the devices 10 has failed (NO in step S1302), the support device 400 determines whether or not the setting for restoring the failure has been made (step S1303).
  • step S1303 If the setting for returning to the original state has been made in the event of a failure (YES in step S1303), support device 400 deletes the file uploaded to directory 480 (step S1304). Then, the process proceeds to step S1711.
  • step S1303 if the setting for returning to the original state at the time of failure has not been made (NO in step S1303), the process proceeds to step S1401. In this case, the processing is continued only for the device 10 for which the upload processing has succeeded.
  • support device 400 opens each device opened in integrated development environment 450 based on uploaded control program 140 #.
  • the ten control programs 140 are updated (step S1401). That is, the support device 400 loads the uploaded file of the control program 140 and reflects the file on the settings of each device 10 in the project 484.
  • the support apparatus 400 determines whether the update of the control program 140 has been successful for all the devices 10 belonging to the selected group (step S1402). If the update of the control program 140 for any one of the devices 10 has failed (NO in step S1402), the support apparatus 400 determines whether or not the setting for restoring the failure has been made (step S1403).
  • step S1403 If the setting to return to the original state has been made in the event of failure (YES in step S1403), the process proceeds to step S1711.
  • step S1403 if the setting for returning to the original state in the event of failure has not been made (NO in step S1403), the process proceeds to step S1501. In this case, the processing is continued only for the device 10 for which the upload processing has succeeded.
  • step S1402 If the update of the control program 140 has been successful for all the devices 10 belonging to the selected group (YES in step S1402), the support device 400 performs an upload process on the parameters 2060 of all the units 200 belonging to each device 10. Based on the executed and uploaded parameters 2060, the parameters 2060 of each unit 200 opened in the integrated development environment 450 are updated (step S1501).
  • the support apparatus 400 determines whether or not the parameter transfer from all the units 200 belonging to each device 10 has succeeded (step S1502). If the parameter transfer from any of the units 200 has failed (NO in step S1502), the support device 400 determines whether or not the setting for restoring the failure has been made (step S1503).
  • step S1503 If the setting for returning to the original state has been made in the event of a failure (YES in step S1503), the process proceeds to step S1711.
  • step S1503 if the setting to return to the original state in the event of failure has not been made (NO in step S1503), the process proceeds to step S1601. In this case, the processing is continued only for the unit 200 for which the parameter transfer has succeeded.
  • the support apparatus 400 transmits the parameters 2560 for all the slaves 250 belonging to each device 10 and the parameters 3060 for the coupler 300.
  • the upload process is executed, and the parameters 2060 of each slave 250 and each coupler 300 opened in the integrated development environment 450 are updated based on the uploaded parameters 2560 and 3060 (step S1601).
  • the support apparatus 400 determines whether the parameter transfer from all the slaves 250 and the coupler 300 belonging to each device 10 has succeeded (step S1602). If the parameter transfer from any one of the slaves 250 or the coupler 300 has failed (NO in step S1602), the support device 400 determines whether or not the setting for restoring the failure has been made (step S1603).
  • step S1603 If the setting for returning to the original state has been made in the event of failure (YES in step S1603), the process proceeds to step S1711.
  • step S1603 if the setting for returning to the original state in the event of failure has not been made (NO in step S1603), the process proceeds to step S1701. In this case, the processing is continued only for the unit 200 for which the parameter transfer has succeeded.
  • step S1602 If the parameter transfer from all the slaves 250 and the coupler 300 belonging to each device 10 has been successful (YES in step S1602), the support device 400 releases the sessions of all the devices 10 belonging to the selected group. Then, the exclusive control right is released (step S1701).
  • the exclusive control right of the target device 10 may be sequentially released, or the exclusive control right of a plurality of devices 10 may be released in parallel processing.
  • the support device 400 notifies the user of the result of the series of upload processing (for example, an execution result notification screen 690 illustrated in FIG. 19) (step S1801).
  • This result preferably includes the transfer result for each device 10.
  • the cause of the failure in the notification result For the device 10 for which the transfer has failed, it is preferable to include the cause of the failure in the notification result.
  • step S1711 the support device 400 releases the sessions of all the devices 10 belonging to the selected group and releases the exclusive control right (step S1711).
  • the exclusive control right of the target device 10 may be sequentially released, or the exclusive control right of a plurality of devices 10 may be released in parallel processing.
  • the support device 400 temporarily changes each device 10 to offline (step S1712).
  • the support device 400 reopens the project using the project 484 saved before the upload process (step S1713). Then, the support device 400 performs online processing on the devices 10 belonging to the selected group (Step S1714). Then, the process proceeds to step S1801.
  • FIG. 16 is a schematic diagram illustrating an example of a group setting allocation screen provided by the control system 1 according to the present embodiment.
  • group setting allocation screen 600 includes group setting area 610 and group allocation setting area 620.
  • the group setting area 610 includes a list display 612 of registered groups. By operating an addition / deletion button 616, groups can be added and deleted. FIG. 16 shows an example in which four groups are registered.
  • the group assignment setting area 620 a list of devices included in the currently opened project 484 is displayed. More specifically, the group assignment setting area 620 includes a device list display 622, a device detailed information display 624 indicating the type of each device, and a belonging group display 626 indicating the group to which each device belongs. As described above, the group assignment setting area 620 includes, for each device, information that defines a corresponding format and a group to which the device belongs.
  • the device detailed information display 624 may include a plurality of columns, and describe not only the format column but also detailed information of the device 10 such as a version column of the device 10 for each column.
  • the belonging group setting screen 650 includes a list display 654 of registered groups, and a check box 652 for selecting whether or not there is a target for each group.
  • the user operates the check box 652 to select a group to which the selected device belongs. That is, the user sets to which group each device is assigned.
  • One device may be assigned to a plurality of groups.
  • the group setting area 610 includes a write order setting button 614.
  • an execution order setting screen 660 for setting the execution order of the devices in the writing process (downloading process) is displayed.
  • the execution order setting screen 660 includes a pull-down 662 for selecting a target group, a list display 666 of devices belonging to the selected group, and an execution order display 664 indicating the execution order.
  • the user selects a target device in the list display 666 and operates the change button 668 to change the execution order of the selected device.
  • the user can arbitrarily set the execution order in the download processing by changing the order of each device in the list display 666.
  • the execution order may be arbitrarily set immediately before the execution of the actual download process.
  • the setting of the execution order may be enabled only when the execution order can affect the behavior of the device. For example, for a process in which the execution order is unlikely to affect the behavior of the device, optimization may be internally performed to perform the process in parallel.
  • FIG. 17 is a schematic diagram illustrating an example of a screen before online processing execution provided by the control system 1 according to the present embodiment.
  • a user interface screen is provided as online processing other than write processing and write processing.
  • the pre-execution screen 670 includes a pull-down 672 for selecting a group to be subjected to a writing process, a list display 676 of devices belonging to the selected group, and an execution order display 674 indicating an execution order.
  • the pre-execution screen 670 includes a check box 679 for enabling the setting to be restored in case of failure.
  • a check box 679 for enabling the setting to be restored in case of failure.
  • a pre-execution screen 671 When a process other than the writing process is selected, a pre-execution screen 671 is displayed.
  • the pre-execution screen 671 corresponds to a simplification of the pre-execution screen 670, and includes a pull-down 672 for selecting a group to be subjected to a writing process and a check box 679 for activating a setting to be restored when a failure occurs. including.
  • the functions and processes of pull-down 672 and check box 679 are the same as those of pull-down 672 and check box 679 of pre-execution screen 670, and therefore, detailed description will not be repeated.
  • any of the online processes can be set to return to the original status when a failure occurs.
  • FIG. 18 is a schematic diagram illustrating an example of the operation mode change confirmation screen 680 provided by the control system 1 according to the present embodiment.
  • an operation mode change confirmation screen 680 includes a device list display 684, an execution result display 686 indicating an execution result of online processing for each device, and a target to be changed to an operation mode for each device. And a check box 682.
  • the list display 684 displays a list of devices belonging to the selected group.
  • the user operates the check box 682 to select a device to be changed to the operation mode from the devices displayed in the list display 684. In this way, the user can determine whether to change to the operation mode for each device by operating the check box 682.
  • the execution result display 686 displays the execution result (success or failure) of the online processing for each device.
  • the cause of the failure such as a failure in the transfer or a failure in the loading of the IP address may be displayed.
  • the cause of the failure such as a failure in the transfer or a failure in the loading of the IP address may be displayed.
  • it may be displayed that the IP address has been changed.
  • a display mode for example, another column is provided in addition to the execution result column, success or failure is displayed in the execution result column, and the detailed information described in the above-described content is displayed in the other column. May be displayed.
  • the change of the device to the operation mode may be prohibited.
  • the check box 682 may be grayed out for a device for which the execution of the online processing has failed, so that the device cannot be selected.
  • a display including a device or the like that failed to load the IP address may be displayed. This is because it is not preferable to change to the operation mode, since a device in which the loading of the IP address has failed is inconsistent between the file and the actual connection IP address, and a restart is required. It is.
  • the change of the device that was in the program mode at the start of the process to the operation mode may be prohibited.
  • FIG. 19 is a schematic diagram illustrating an example of the execution result notification screen 690 provided by the control system 1 according to the present embodiment.
  • execution result notification screen 690 includes a message notification area 691.
  • the message notification area 691 displays the contents related to the execution of the online processing. For example, the content of the displayed message is changed depending on the situation such as when there is a device that failed to execute the process or when the IP address has been changed.
  • the execution result notification screen 690 includes a list display 692 of devices belonging to the target group and a list display 694 of execution results of each device.
  • the list display 692 and the list display 694 indicate whether the processing item has succeeded or failed for each device.
  • the execution result notification screen 690 further includes a process list display 696 and an execution result list display 698 for displaying detailed information of processing for the specific device selected in the list display 692. That is, the details of the execution result of the process are displayed for each of the selected devices. By displaying such a detailed execution result, it is possible to easily grasp up to which process has been executed for each device, including the configuration not implemented.
  • the execution result notification screen 690 further includes an error information notification area 699.
  • error information notification area 699 when online processing for any device fails, corresponding error information, information on troubleshooting, and the like may be displayed.
  • error information notification area 699 any display items and contents may be used as long as the information can be understood by the user.
  • the user can execute the online processing for a plurality of devices at once, It is easy to recognize coping.
  • ⁇ I. Modification> In the above-described embodiment, a case has been described in which a single computer constitutes the support device 400. However, some of the processing or functions provided by the support device 400 may be distributed to another computer.
  • the storage function may be realized by using a storage area provided by a server on the network, or the build process may be performed by a server on the network.
  • the support device according to Configuration 3 which instructs the user to perform the operation (S305).
  • a data holding unit (456) that acquires data stored in each device belonging to the same group before data transfer and holds the data as backup data (486);
  • the data management unit is capable of instructing only devices that have successfully transferred data among devices belonging to the same group to reflect the transferred data.
  • the support device according to any one of Configurations 1 to 5 (S304, S305).
  • the data transferred from the data transfer unit includes a control program (140) executed by the device and parameters (2060, 2560, 3060) necessary for operation of the device,
  • the support device according to any one of Configurations 1 to 6, wherein the data transfer unit transfers the parameter after transferring the control program (S302, S501, S601).
  • the device includes a controller (100) and peripheral devices (200, 250, 300) connected to the controller, The support device according to configuration 7, wherein the data transfer unit transfers the parameter to the peripheral device via the control device after transferring the control program to the control device (S501, S601).
  • [Configuration 9] Further comprising a data acquisition processing unit (462, 464) for acquiring data stored in each device from each of the devices belonging to the same group in response to a user operation and updating the contents of the project; 9.
  • the support device according to any one of configurations 1 to 8.
  • control system 1 a part or all of a plurality of devices included in a project can be assigned to each group for a group arbitrarily set by a user such as a device unit. . Then, online processing can be executed in group units. By employing such a configuration, the following problems can be solved.
  • control system 1 by grouping one or a plurality of devices included in a project, subsequent online processing can be executed simultaneously in the group unit.
  • subsequent online processing can be executed simultaneously in the group unit.
  • the order of writing and measures to be taken in the event of a transfer failure can be set.
  • Batch operation can be realized.
  • An arbitrary device can be assigned to each group by a user.
  • the user By operating the group setting assignment screen 600, the user can assign any device included in the project to any of the groups registered in advance.
  • the user selects which group to execute the processing, so that the processing can be collectively executed for one or a plurality of devices belonging to the selected group. .
  • the order of data reflection can be set in advance between devices, thereby reducing the possibility of inconsistency in the behavior after writing.
  • data can be acquired from all of the target devices before the start of the process, and can be stored as backup data in the support device 400.
  • control program information can be stored in the support device 400 from all of the target devices before the process starts.
  • the execution result can be notified after the execution of all online processes is completed. At this time, if the operation has failed, the failed device information may also be notified.
  • An integrated development environment that can create a control program to be executed by a plurality of devices as one project is provided.
  • one or a plurality of devices can be grouped in a group set by the user.
  • Online processing can be executed in group units.
  • the contents of the read processing and the write processing may be any of online connection, monitoring, download, upload, backup, restore, online edit, and the like.
  • data of all devices belonging to the target group can be acquired before the start of the process and can be stored as backup data on a support device. It can be prevented from being changed.
  • control program data in the integrated development environment can be acquired and stored as backup data on the support device 400, so that data is changed only for a specific device. Can be prevented.
  • the device may be any device that can generate a project, such as a PLC or HMI.
  • a plurality of groups may be assigned to one device.
  • the control programs of the plurality of devices can be synchronized.
  • control program cannot be synchronized between a plurality of devices until the writing of the control program to all devices is completed. However, if writing to any of the devices fails, Since the restored control program is restored, it is possible to avoid a situation in which only a part of the control program is updated.

Landscapes

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

Abstract

複数のデバイスを有する制御システムにおいて利用されるサポート装置が提供される。サポート装置は、プロジェクトから複数のデバイスの各々に格納すべきデータを生成するデータ生成部と、同一のグループに属するデバイスの選択を受付ける選択受付部と、ユーザ操作に応答して、同一のグループに属するデバイスの各々に対して、各デバイスに対応するデータを転送するデータ転送部と、すべてのデバイスに対するデータの転送が成功した後、各デバイスに対する当該転送されたデータに反映を指示するデータ管理部とを含む。

Description

サポート装置、サポートプログラム、制御システム
 本発明は、複数の制御装置を含む制御システム、当該制御システムに向けられたサポート装置、ならび、当該サポート装置を実現するためのサポートプログラムに関する。
 FA(ファクトリオートメーション)の分野では、PLC(プログラマブルロジックコントローラ)などの制御装置を用いて設備や機械などの制御対象を制御することが一般的である。通常、単一の制御装置ではなく、通信可能に接続された複数の制御装置からなる制御システムが採用されることが多い。
 各制御装置で実行されるプログラムの開発、および、制御に必要なパラメータの設定は、サポート装置と称される情報処理装置により提供される開発環境で行われることが多い。
 例えば、特開2005-327263号公報(特許文献1)は、ネットワークの設定とPLCやプログラマブル表示器などのプログラミング作業とを連携させてプログラミング作業の効率を向上させることのできる統合開発環境ツールを開示する。
特開2005-327263号公報
 上述の特開2005-327263号公報(特許文献1)に開示される構成においては、統合開発環境ツールを用いて各制御装置で実行されるプログラムをそれぞれ開発することになるが、開発されたプログラムおよび必要なパラメータは制御装置ごとに転送する必要がある。
 一方、実際の制御システムにおいては、単一の制御装置が制御対象に含まれる複数の設備や機械を制御することもあるし、単一の製造ラインを複数の制御装置が制御することもある。
 本発明の一つの目的は、複数のデバイスを含む制御システムにおいて、特定のグループ単位でデータ更新などを実現可能な構成を提供することである。
 本発明の一つの実施の形態によれば、複数のデバイスを有する制御システムにおいて利用されるサポート装置が提供される。サポート装置は、複数のデバイスを動作させるために必要な情報を含むプロジェクトから、複数のデバイスの各々に格納すべきデータを生成するデータ生成部と、複数のデバイスのうち同一のグループに属するデバイスの選択を受付ける選択受付部と、ユーザ操作に応答して、同一のグループに属するデバイスの各々に対して、データ生成部により生成された各デバイスに対応するデータを転送するデータ転送部と、同一のグループに属するすべてのデバイスに対するデータの転送が成功した後、各デバイスに対する当該転送されたデータに反映を指示するデータ管理部とを含む。
 本開示によれば、複数のデバイスを有する制御システムに対して設定されるグループの単位で、データの転送および反映を容易に実現できる。
 上述の開示において、データ管理部は、同一のグループに属するいずれかのデバイスに対するデータの転送が失敗すると、当該同一のグループに属するすべてのデバイスを、データを転送する前の状態に戻すようにしてもよい。
 本開示によれば、同一のグループに属するデバイスについては、一部のデバイスについてデータが更新されないといった事態を回避できる。
 上述の開示において、デバイスの各々は、処理に用いられるデータを格納するための第1のデータ領域と、データ転送部から転送されるデータを一時的に格納するための第2のデータ領域とを有しており、データ管理部は、同一のグループに属する各デバイスに対して、第2のデータ領域に格納されているデータを第1のデータ領域に反映するように指示するようにしてもよい。
 本開示によれば、第1のデータ領域および第2のデータ領域を利用することで、一部のデバイスについてデータ転送が失敗した場合であっても、制御処理に影響を与えることなく、データの転送および更新を実現できる。
 上述の開示において、データ管理部は、同一のグループに属するいずれかのデバイスに対するデータの転送が失敗すると、同一のグループに属する各デバイスに対して、第2のデータ領域に格納されているデータを削除するように指示するようにしてもよい。
 本開示によれば、データの転送が失敗した場合には、第2のデータ領域に格納されるデータを削除するのみでよいので、元に戻す場合の処理を簡素化できる。
 上述の開示において、サポート装置は、データの転送前に、同一のグループに属する各デバイスに格納されているデータを取得してバックアップデータとして保持するデータ保持部をさらに含み、データ管理部は、同一のグループに属するいずれかのデバイスに対するデータの転送が失敗すると、バックアップデータを同一のグループに属する各デバイスに戻すようにしてもよい。
 本開示によれば、事前に取得しておいたバックアップデータを用いて、同一のグループに属する各デバイスを元に戻すことができるので、万が一、データ転送の失敗が生じたとしても、確実に元の状態の戻すことができる。
 上述の開示において、データ管理部は、予め定められた設定に従って、同一のグループに属するデバイスのうちデータの転送が成功したデバイスのみに対して、当該転送されたデータに反映を指示することが可能になっていてもよい。
 本開示によれば、状況によっては、同一のグループに属するデバイスをまとめて扱うのではなく、一部の転送が成功したデバイスのみデータの反映をしたいような場合もあり、このような要求に応えることができる。
 上述の開示において、データ転送部から転送されるデータは、デバイスで実行される制御プログラムと、デバイスの動作に必要なパラメータとを含み、データ転送部は、制御プログラムの転送後に、パラメータを転送するようにしてもよい。
 本開示によれば、制御プログラムの後のパラメータを転送することで、制御動作に何らかの異常が生じ得る可能性を低減できる。
 上述の開示において、デバイスは、制御装置と制御装置に接続される周辺装置とを含み、データ転送部は、制御プログラムを制御装置に転送した後に、制御装置を介して周辺装置にパラメータを転送するようにしてもよい。
 本開示によれば、制御装置の状態を監視しつつ、当該制御装置に接続される周辺装置に格納されるデータをより確実に更新できる。
 上述の開示において、サポート装置は、ユーザ操作に応答して、同一のグループに属するデバイスの各々から、各デバイスに格納されているデータを取得してプロジェクトの内容を更新するデータ取得処理部をさらに含むようにしてもよい。
 本開示によれば、複数のデバイスを有する制御システムに対して設定されるグループの単位で、データの取得(アップロード処理)を容易に実現できる。
 本発明の別の実施の形態によれば、複数のデバイスを有する制御システムにおいて利用されるコンピュータで実行されるサポートプログラムが提供される。サポートプログラムはコンピュータに、複数のデバイスを動作させるために必要な情報を含むプロジェクトから、複数のデバイスの各々に格納すべきデータを生成するステップと、複数のデバイスのうち同一のグループに属するデバイスの選択を受付けるステップと、ユーザ操作に応答して、同一のグループに属するデバイスの各々に対して、生成された各デバイスに対応するデータを転送するステップと、同一のグループに属するすべてのデバイスに対するデータの転送が成功した後、各デバイスに対する当該転送されたデータに反映を指示するステップとを実行させる。
 本開示によれば、複数のデバイスを有する制御システムに対して設定されるグループの単位で、データの転送および反映を容易に実現できる。
 本発明のさらに別の実施の形態に係る制御システムは、複数のデバイスと、複数のデバイスに接続可能なサポート装置とを含む。サポート装置は、複数のデバイスを動作させるために必要な情報を含むプロジェクトから、複数のデバイスの各々に格納すべきデータを生成するデータ生成部と、複数のデバイスのうち同一のグループに属するデバイスの選択を受付ける選択受付部と、ユーザ操作に応答して、同一のグループに属するデバイスの各々に対して、データ生成部により生成された各デバイスに対応するデータを転送するデータ転送部と、同一のグループに属するすべてのデバイスに対するデータの転送が成功した後、各デバイスに対する当該転送されたデータに反映を指示するデータ管理部とを含む。
 本開示によれば、複数のデバイスを有する制御システムに対して設定されるグループの単位で、データの転送および反映を容易に実現できる。
 本発明によれば、複数のデバイスを含む制御システムにおいて、特定のグループ単位でデータ更新などを実現できる。
本実施の形態に係る制御システムの適用例を示す模式図である。 本実施の形態に係る制御システムの構成例を示す模式図である。 本実施の形態に係る制御システムに含まれるPLCのハードウェア構成の一例を示す模式図である。 本実施の形態に係る制御システムに含まれるユニットのハードウェア構成の一例を示す模式図である。 本実施の形態に係る制御システムに含まれるカプラのハードウェア構成の一例を示す模式図である。 本実施の形態に係る制御システムに含まれるサポート装置のハードウェア構成の一例を示す模式図である。 本実施の形態に係る制御システムの要部機能構成の一例を示す模式図である。 本実施の形態に係る制御システムにおけるグループ単位での管理機能の一例を説明するための図である。 本実施の形態に係る制御システムにおけるグループ単位での管理機能の実装例を示す模式図である。 本実施の形態に係る制御システムにおけるグループ単位での管理機能(ダウンロード)の処理手順を説明するための模式図である。 本実施の形態に係る制御システムにおけるグループ単位での管理機能(ダウンロード)の処理手順を示すフローチャートである。 本実施の形態に係る制御システムにおけるグループ単位での管理機能(ダウンロード)の処理手順を示すフローチャートである。 本実施の形態に係る制御システムにおけるグループ単位での管理機能(アップロード)の処理手順を説明するための模式図である。 本実施の形態に係る制御システムにおけるグループ単位での管理機能(アップロード)の処理手順を示すフローチャートである。 本実施の形態に係る制御システムにおけるグループ単位での管理機能(アップロード)の処理手順を示すフローチャートである。 本実施の形態に係る制御システムが提供するグループ設定割付画面の一例を示す模式図である。 本実施の形態に係る制御システムが提供するオンライン処理実行前画面の一例を示す模式図である。 本実施の形態に係る制御システムが提供する運転モード変更確認画面の一例を示す模式図である。 本実施の形態に係る制御システムが提供する実行結果通知画面の一例を示す模式図である。
 本発明の実施の形態について、図面を参照しながら詳細に説明する。なお、図中の同一または相当部分については、同一符号を付してその説明は繰返さない。
 <A.適用例>
 まず、本発明が適用される場面の一例について説明する。図1は、本実施の形態に係る制御システム1の適用例を示す模式図である。図1を参照して、制御システム1は、複数のデバイス10_1,10_2,10_3,10_4,・・・,10_N(以下、「デバイス10」とも総称する。)を有している。
 本明細書において、「デバイス」は、制御システム1における制御要素の単位を意味し、制御演算に必要なプログラム、構成設定、パラメータなどは、デバイスの単位で生成および管理される。典型的には、「デバイス」は、制御プログラム(シーケンス制御およびモーション制御を含み得る)を実行する処理主体であるPLC(プログラマブルロジックコントローラ)(制御装置の一例)、1または複数のPLCと連携するHMI(Human Machine Interface)、PLCおよびHMIの機能を統合したIPC(Industrial Personal Computer)などを含み得る。
 デバイスは、PLCおよびIPCに接続される周辺装置を含み得る。周辺装置は、典型的には、PLCおよびIPCで取り扱われる入出力データを制御対象との間で遣り取りする装置を含み得る。具体的には、周辺装置は、ユニット、スレーブデバイス、カプラユニットなどが挙げられる。周辺装置の具体例に内容については、後に詳述する。
 制御システム1は、制御システム1において利用されるサポート装置400を有している。サポート装置400は、制御システム1を構成する各デバイスで実行される制御プログラムや必要なパラメータなどの開発や管理を行う。
 本実施の形態に係るサポート装置400は、制御システム1に含まれる複数のデバイス10で実行される制御プログラムや必要なパラメータなどを一括して開発や管理可能な統合開発環境を提供する。
 統合開発環境においては、制御システム1を構成する各デバイスで実行される制御プログラムや必要なパラメータなどは、単一のプロジェクト484として管理される。プロジェクト484は、複数のファイルで構成されてもよい。
 サポート装置400は、データ生成部20(後述のビルド処理部468に相当)と、選択受付部22(後述のグループ設定割付画面600に相当)と、データ転送部24(後述のファイル転送処理部454に相当)と、データ管理部26(後述のダウンロード処理部458に相当)とを含む。
 データ生成部20は、複数のデバイス10を動作させるために必要な情報を含むプロジェクト484から、複数のデバイス10の各々に格納すべきデータを生成する。データには、各デバイス10で実行される制御プログラム、各デバイス10の動作に必要なパラメータなどを含み得る。
 なお、データは「ファイル」の形で転送および管理されることが一般的であるので、以下の説明においては、「ファイル」という用語を「データ」とほぼ同義で用いることとする。
 選択受付部22は、複数のデバイス10のうち同一のグループに属するデバイスの選択を受付ける。図1に示す例では、デバイス10_1およびデバイス10_2が同一のグループAに属することが設定されているとする。
 データ転送部24は、ユーザ操作に応答して、同一のグループに属するデバイス10の各々に対して、データ生成部20により生成された各デバイスに対応するデータを転送する。図1には、グループAに属するデバイス10_1およびデバイス10_2に対して、データ(ファイル)が転送される例を示す。
 データ管理部26は、同一のグループに属するすべてのデバイス10に対するデータの転送が成功した後、各デバイス10に対する当該転送されたデータに反映を指示する。図1には、グループAに属するデバイス10_1およびデバイス10_2に対して、データを反映するための指示(反映指示)が与えられる例を示す。
 このような構成を採用することで、複数のデバイス10を含む制御システム1において、特定のグループ単位でデータ更新などを実現できる。
 <B.制御システムの構成例>
 まず、本実施の形態に係る制御システム1の構成例について説明する。図2は、本実施の形態に係る制御システム1の構成例を示す模式図である。図2を参照して、制御システム1は、複数のデバイス10_1,10_2,10_3,10_4,・・・,10_N(以下、「デバイス10」とも総称する。)と、デバイス10のPLC100で実行されるプログラムの開発およびプログラムの実行に必要なパラメータの設定を行うためのサポート装置400とを含む。これらの装置はネットワーク2を介して互いに接続されている。
 デバイス10の各々は、制御装置の典型例であるPLC100を中心として構成される。
 PLC100は、ローカルバス4を介して任意のユニット200と接続可能であるとともに、フィールドバス6を介して任意のスレーブデバイス(以下、単に「スレーブ250」とも称す。)と接続可能である。フィールドバス6には、カプラユニット(以下、単に「カプラ300」とも称す。)が接続されることもある。カプラ300は、ローカルバス8を介して任意のユニット200と接続される。すなわち、カプラ300は、ユニット200を、ローカルバス8およびフィールドバス6を介してPLC100と接続する。なお、カプラ300はスレーブ250とみなすこともできる。
 図2に示す制御システム1において、デバイス10_1は、PLC100と、PLC100にフィールドバス6を介して接続されるスレーブ250とカプラ300とからなる。カプラ300には、ローカルバス8を介してユニット200が接続される。
 デバイス10_2は、PLC100と、PLC100にローカルバス8を介して接続される2つのユニット200と、フィールドバス6を介して接続される2つのスレーブ250とを含む。
 デバイス10_3は、PLC100と、PLC100にローカルバス8を介して接続される1つのユニット200と、フィールドバス6を介して接続される2つのスレーブ250とを含む。
 デバイス10_4は、PLC100と、PLC100にローカルバス8を介して接続される1つのユニット200と、フィールドバス6を介して接続される1つのスレーブ250とを含む。
 デバイス10_Nは、PLC100と、PLC100にローカルバス8を介して接続される2つのユニット200と、フィールドバス6を介して接続される1つのスレーブ250とを含む。
 なお、図2には、5つのデバイス10を含む制御システム1を例示するが、デバイス10の数は5つより少なくてもよいし、5つより多くてもよい。
 サポート装置400は、プログラム開発およびパラメータ設定などの機能を提供する。サポート装置400は、開発されたプログラムおよびパラメータを各デバイスへ転送(ダウンロード)する。
 <C.制御システム1に含まれる各装置のハードウェア構成>
 次に、制御システム1に含まれる各装置のハードウェア構成の一例について説明する。
 (c1:PLC100)
 図3は、本実施の形態に係る制御システム1に含まれるPLC100のハードウェア構成の一例を示す模式図である。図3を参照して、PLC100は、プロセッサ102と、メインメモリ104と、ストレージ106と、ネットワークコントローラ108と、フィールドバスコントローラ110と、USB(Universal Serial Bus)コントローラ114と、メモリカードインターフェイス116と、ローカルバスコントローラ120とを含む。これらのコンポーネントは、プロセッサバス130を介して接続されている。
 プロセッサ102は、制御演算などを実行する演算処理部に相当し、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)などで構成される。具体的には、プロセッサ102は、ストレージ106に格納されたプログラム(一例として、システムプログラム1060および制御プログラム140)を読出して、メインメモリ104に展開して実行することで、制御対象に応じた制御などを実現する。
 メインメモリ104は、DRAM(Dynamic Random Access Memory)やSRAM(Static Random Access Memory)などの揮発性記憶装置などで構成される。ストレージ106は、記憶部に相当し、例えば、SSD(Solid State Drive)やHDD(Hard Disk Drive)などの不揮発性記憶装置などで構成される。
 ストレージ106には、基本的な機能を実現するためのシステムプログラム1060に加えて、設備や機械などの制御対象に応じて作成される制御プログラム140が格納される。
 ネットワークコントローラ108は、ネットワーク2を介して、サポート装置400を含む任意の情報処理装置との間でデータを遣り取りする。フィールドバスコントローラ110は、フィールドバス6を介して、スレーブ250やカプラ300と接続される。USBコントローラ114は、USB接続を介して、任意の外部装置などとの間でデータを遣り取りする。
 メモリカードインターフェイス116は、着脱可能な記録媒体の一例であるメモリカード118を受付ける。メモリカードインターフェイス116は、メモリカード118に対してデータを書込み、メモリカード118から各種データ(ログやトレースデータなど)を読出すことが可能になっている。
 ローカルバスコントローラ120は、ローカルバス4を介して、任意のユニット200との間でデータを遣り取りする。
 図3には、プロセッサ102がプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路(例えば、ASIC(Application Specific Integrated Circuit)またはFPGA(Field-Programmable Gate Array)など)を用いて実装してもよい。あるいは、PLC100の主要部を、汎用的なアーキテクチャに従うハードウェア(例えば、汎用パソコンをベースとした産業用パソコン)を用いて実現してもよい。この場合には、仮想化技術を用いて、用途の異なる複数のOS(Operating System)を並列的に実行させるとともに、各OS上で必要なアプリケーションを実行させるようにしてもよい。
 (c2:ユニット200)
 図4は、本実施の形態に係る制御システム1に含まれるユニット200のハードウェア構成の一例を示す模式図である。図4を参照して、ユニット200は、機能モジュール210と、ローカルバスコントローラ220と、ストレージ206とを含む。
 機能モジュール210は、各ユニット200の責務に応じた機能を提供する。例えば、ユニット200がデジタル入力ユニットである場合には、機能モジュール210は、フォトカプラなどのデジタル信号の入力回路および検出回路を有している。また、ユニット200がサーボドライバなどである場合には、機能モジュール210は、軌道演算ロジックおよび指令生成ロジックなどを有している。
 ローカルバスコントローラ220は、ローカルバス4を介して、接続先のPLC100またはカプラ300との間でデータを遣り取りする。
 ストレージ206には、ユニット200を動作させるためのパラメータ2060が格納される。パラメータ2060は、ユニット200のネットワークアドレスなどの情報に加えて、機能モジュール210の動作に係る設定値などを含む。パラメータ2060は、サポート装置400からPLC100またはカプラ300を介して提供される。
 ユニット200が提供する機能の一部または全部を、プロセッサがプログラムを実行することで実現してもよい。
 (c3:カプラ300)
 図5は、本実施の形態に係る制御システム1に含まれるカプラ300のハードウェア構成の一例を示す模式図である。カプラ300は、PLC100を構成するコンポーネントの一部を簡略化した構成に相当する。より具体的には、図5を参照して、カプラ300は、プロセッサ302と、メインメモリ304と、ストレージ306と、フィールドバスコントローラ310と、ローカルバスコントローラ320とを含む。これらのコンポーネントは、プロセッサバス330を介して接続されている。
 プロセッサ302は、制御演算などを実行する演算処理部に相当し、CPUやGPUなどで構成される。メインメモリ304は、DRAMやSRAMなどの揮発性記憶装置などで構成される。
 ストレージ306は、記憶部に相当し、例えば、SSDやHDDなどの不揮発性記憶装置などで構成される。ストレージ306には、カプラ300を動作させるためのパラメータ3060が格納される。パラメータ3060は、カプラ300のネットワークアドレスなどの情報に加えて、カプラ300の動作に係る設定値などを含む。パラメータ3060は、サポート装置400からフィールドバス6を介して提供される。
 フィールドバスコントローラ310は、フィールドバス6を介して、PLC100、スレーブ250、他のカプラ300などと接続される。
 ローカルバスコントローラ320は、ローカルバス8を介して、任意のユニット200との間でデータを遣り取りする。
 図5には、プロセッサ302がプログラムを実行することで必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路(例えば、ASICまたはFPGAなど)を用いて実装してもよい。
 (c4:スレーブ250)
 本実施の形態に係る制御システム1に含まれるスレーブ250は、図4に示すユニット200に対して、ローカルバスコントローラ220に代えて、図5のカプラ300に含まれるフィールドバスコントローラ310を採用したような構成を有している。スレーブ250についての詳細な説明は繰返さない。
 (c5:サポート装置400)
 図6は、本実施の形態に係る制御システム1に含まれるサポート装置400のハードウェア構成の一例を示す模式図である。図6を参照して、サポート装置400は、一例として、汎用的なアーキテクチャに従うコンピュータがプログラムを実行することで実現される。
 より具体的には、サポート装置400は、プロセッサ402と、メインメモリ404と、ストレージ406と、入力部408と、表示部410と、光学ドライブ412と、ネットワークコントローラ416とを含む。これらのコンポーネントは、プロセッサバス418を介して接続されている。
 プロセッサ402は、CPUやGPUなどで構成され、ストレージ406に格納されたプログラム(一例として、OS4060およびサポートプログラム4062)を読出して、メインメモリ404に展開して実行することで、後述するような各種処理を実現する。
 メインメモリ404は、DRAMやSRAMなどの揮発性記憶装置などで構成される。ストレージ406は、例えば、HDDやSSDなどの不揮発性記憶装置などで構成される。
 ストレージ406には、基本的な機能を実現するためのOS4060に加えて、サポート装置400としての機能を提供するためのサポートプログラム4062が格納される。サポートプログラム4062は、コンピュータをサポート装置400として機能させる。
 入力部408は、キーボードやマウスなどで構成され、ユーザ操作を受付ける。表示部410は、ディスプレイ、各種インジケータ、プリンタなどで構成され、プロセッサ402からの処理結果などを出力する。
 ネットワークコントローラ416は、ネットワーク2を介して、任意の外部装置などとの間でデータを遣り取りする。
 サポート装置400は、光学ドライブ412を有しており、コンピュータ読取可能なプログラムを非一過的に格納する記録媒体414(例えば、DVD(Digital Versatile Disc)などの光学記録媒体)から、その中に格納されたプログラムが読取られてストレージ406などにインストールされる。
 サポート装置400で実行されるサポートプログラム4062などは、コンピュータ読取可能な記録媒体414を介してインストールされてもよいが、ネットワーク上のサーバ装置などからダウンロードする形でインストールするようにしてもよい。また、本実施の形態に係るサポート装置400が提供する機能は、OSが提供するモジュールの一部を利用する形で実現される場合もある。
 図6には、プロセッサ402がプログラムを実行することで、サポート装置400として必要な機能が提供される構成例を示したが、これらの提供される機能の一部または全部を、専用のハードウェア回路(例えば、ASICまたはFPGAなど)を用いて実装してもよい。
 <D.制御システム1の要部機能構成>
 次に、本実施の形態に係る制御システム1の要部機能構成の一例について説明する。図7は、本実施の形態に係る制御システム1の要部機能構成の一例を示す模式図である。図7には、一例として、デバイス10_1およびサポート装置400の要部機能に着目している。
 図7を参照して、デバイス10_1は、PLC100と、ユニット200と、スレーブ250と、カプラ300とを含む。
 PLC100は、ストレージ106およびPLC機能モジュール150とを含む。ストレージ106には、上述の図3に示す制御プログラム140および関連するパラメータなどのデータを格納する領域として、一時データ領域1062およびデータ領域1064が設けられている。一時データ領域1062およびデータ領域1064は、PLC100に対するデータ更新およびロールバックを実現するための記憶領域である。より具体的には、データ領域1064は、処理に用いられるデータを格納するための第1のデータ領域に相当し、サポート装置400から送信される制御プログラム140および関連するパラメータなどを含むデータ一式が一時的に格納される。一時データ領域1062は、データ転送部24(図1)から転送されるデータを一時的に格納するための第2のデータ領域に相当し、PLC100で実行中の制御プログラム140および関連するパラメータが格納される。
 PLC機能モジュール150は、PLC100における制御プログラム140の実行に必要な機能を提供する。具体的には、PLC機能モジュール150は、シーケンス制御部152と、モーション制御部154と、IOポート160とを含む。シーケンス制御部152は、PLC100において実行される制御プログラム140に含まれるシーケンス命令を解釈して実行する処理エンジンに相当する。モーション制御部154は、PLC100において実行される制御プログラム140に含まれるモーション命令を解釈して実行する処理エンジンに相当する。IOポート160は、ユニット200、スレーブ250、カプラ300などとの間で入出力データを遣り取りする。
 上述したように、ユニット200、スレーブ250、カプラ300には、それぞれ、ユニット200、スレーブ250、カプラ300を動作させるためのパラメータ2060,2560,3060が格納される。これらのパラメータ2060,2560,3060は、サポート装置400から適宜転送される。
 本明細書においては、サポート装置400から任意のデバイス10へ任意のデータ(あるいは、ファイル)を転送することを「ダウンロード」と称し、逆に、任意のデバイス10からサポート装置400へ任意のデータ(あるいは、ファイル)を転送することを「アップロード」と称する。
 サポート装置400は、サポートプログラム4062(図6)を実行することで、統合開発環境450を提供する。統合開発環境450は、ストレージ406、入力部408および表示部410との間でデータを遣り取り可能に構成される。すなわち、統合開発環境450は、入力部408を介したユーザ操作に応じた処理を実行するとともに、表示部410に実行結果(例えば、アップロード実行結果やビルド結果など)を表示する。
 統合開発環境450は、機能構成として、通信部452と、制御部470と、ファイルIO処理部472とを含む。
 通信部452は、任意のデバイス10との間の通信処理を担当する。典型的には、通信部452は、PLC100と統合開発環境450とを接続する。通信部452は、一種の通信スタックとして実装することができる。
 制御部470は、統合開発環境450を実現するために必要な処理を実行する。具体的には、制御部470は、ファイル転送処理部454と、バックアップ処理部456と、ダウンロード処理部458と、ファイル取得処理部460と、アップロード処理部462と、データロード処理部464と、リストア処理部466と、ビルド処理部468とを含む。
 ファイル転送処理部454は、主としてダウンロード処理を担当し、通信部452を利用して、サポート装置400において生成されたファイルのうち、指定されたファイルをPLC100の一時データ領域1062へ転送する。特に、ファイル転送処理部454は、ユーザ操作に応答して、同一のグループに属するデバイス10の各々に対して、ビルド処理部468により生成された各デバイス10に対応するデータを転送するデータ転送部に相当する。
 バックアップ処理部456は、ファイル転送処理部454がバックアップデータ486を転送する場合に、対象のファイル選択および転送処理などを管理する。より特定的には、バックアップ処理部456は、データの転送前に、同一のグループに属する各デバイス10に格納されているデータを取得してバックアップデータ486として保持するデータ保持部に相当する。
 ダウンロード処理部458は、ビルド処理部468により生成されたファイルをダウンロードする処理を管理する。より特定的には、ダウンロード処理部458は、データ管理部26(図1)に相当し、同一のグループに属するすべてのデバイス10に対するデータの転送が成功した後、各デバイス10に対する当該転送されたデータに反映を指示する。
 また、ダウンロード処理部458は、同一のグループに属するいずれかのデバイス10に対するデータの転送が失敗すると、当該同一のグループに属するすべてのデバイス10を、データを転送する前の状態に戻す処理を実行する。
 ファイル取得処理部460は、主としてアップロード処理を担当し、通信部452を利用して、任意のデバイス10(PLC100)に格納されているファイルのうち指定されたファイルをアップロードし、サポート装置400のストレージ406などに取得したファイルを格納する。
 アップロード処理部462は、ファイル取得処理部460によるファイルのアップロードの処理を管理する。データロード処理部464は、ファイル取得処理部460により取得されたファイルを必要に応じてロードして、再利用可能な状態を生成する。
 より特定的には、アップロード処理部462およびデータロード処理部464は、データ取得処理部に相当し、ユーザ操作に応答して、同一のグループに属するデバイス10の各々から、各デバイス10に格納されているデータを取得してプロジェクト484の内容を更新する。
 リストア処理部466は、ファイル取得処理部460により取得されたファイルを展開して過去のある状態に復元する。
 ビルド処理部468は、複数のデバイス10を動作させるために必要な情報を含むプロジェクト484から、複数のデバイス10の各々に格納すべきデータを生成するデータ生成部に相当する。具体的には、ビルド処理部468は、ユーザにより作成されたソースプログラムを解釈して、デバイス10(PLC100)へ転送するためのデータ(典型的には、オブジェクトコードおよびパラメータなど)を含むファイルを生成する。
 ファイルIO処理部472は、ストレージ406に格納されているファイルの読出しおよび書込みを担当する。
 ストレージ406には、統合開発環境450からアクセスされるファイルの格納先としてディレクトリ480が構成されている。ディレクトリ480は、例えば、ビルド処理部468により生成されたファイル、および、任意のデバイス10へアップロードしたファイルなどが格納される場所である。
 具体的には、ディレクトリ480には、転送ファイル482と、プロジェクト484と、バックアップデータ486と、グループ設定ファイル488が格納される。
 転送ファイル482は、ビルド処理部468により生成されたPLC100へ転送するためのファイルを含む。
 プロジェクト484は、統合開発環境450において開発されるプログラムおよびパラメータなどを総合したファイルである。統合開発環境450においては、プロジェクトという単位でデータが管理される。プロジェクト484は、1または複数のデバイス10で実行される制御プログラム140のデータを含み得る。
 バックアップデータ486は、接続先のデバイス10に格納されるデータの複製であり、各デバイス10に格納される制御プログラム140などのデータに加えて、ユニット200、スレーブ250、カプラ300にそれぞれ格納されるパラメータ情報およびメモリ情報などを含み得る。
 グループ設定ファイル488は、以下に説明するグループ単位での管理機能を実現するための各グループに属するデバイスを定義する。選択受付部22(図1)は、複数のデバイス10のうち同一のグループに属するデバイス10の選択を受付けて、その内容をグループ設定ファイル488に反映する。
 <E.グループ単位での管理機能>
 本実施の形態に係る制御システム1においては、複数のデバイス10に対して任意に設定されるグループの単位で、サポート装置400のオンライン処理が可能になっている。本明細書において、「オンライン処理」は、ダウンロードやアップロードなどのファイル(データ)の読込み処理および/または書込み処理を含む。典型的には、サポート装置400は、選択されたグループに属する1または複数のデバイス10をまとめて、ダウンロードおよびアップロードを行うことが可能になっている。さらに、「オンライン処理」は、リセット(再起動)コマンドといった、ファイルの読込み処理または書き処理を含まない指令も含み得る。
 図8は、本実施の形態に係る制御システム1におけるグループ単位での管理機能の一例を説明するための図である。図8には、サポート装置400に格納されるグループ設定ファイル488の一例を示す。図8に示すグループ設定ファイル488においては、4つのグループ(グループA、グループB、グループC、グループD)が定義されており、各グループにいずれのデバイスが属するのかがチェックマークにより規定されている。
 図8に示す例では、「グループA」には「デバイス1」および「デバイス2」が属しており、「グループB」には「デバイス3」、「グループ4」および「デバイスN」が属している。例えば、「グループA」が選択されると、「グループA」に属している「デバイス1」および「デバイス2」に対して、オンライン処理(ダウンロードおよびアップロード)がまとめて実行される。
 各デバイスは複数のグループに属することが可能であってもよい。図8に示す例では、「デバイス1」は、「グループA」および「グループC」に属しており、「デバイス2」は、「グループA」および「グループD」に属している。もちろん、各デバイスは単一のグループにのみ属することが可能なようにしてもよい。
 このようなグループ単位での管理機能は、例えば、複数の製造ラインが複数のデバイスにより実現されているような場合において、特定の製造ラインに関与するデバイスに対してのみ必要なデータを転送(ダウンロード)したいといったニーズなどに対応できる。同様に、特定の製造ラインに関与するデバイスが保持しているデータのみをアップロードしてバックアップデータ486として格納したいというニーズにも対応できる。
 図9は、本実施の形態に係る制御システム1におけるグループ単位での管理機能の実装例を示す模式図である。図9には、デバイス10_1およびデバイス10_2がグループAに属しており、デバイス10_3、デバイス10_4およびデバイス10_NがグループBに属している例を示す。
 デバイス10_1,10_2,10_3,10_4,・・・,10_Nの構成は、図2に示すものと実質的に同一としている。
 図9を参照して、サポート装置400は、グループAに属するデバイス10_1およびデバイス10_2に対して、データのダウンロードおよびアップロードを並列的または直列的に実行することで、2つのデバイス10をまとめた状態で、オンライン処理を実現する。同様に、サポート装置400は、グループBに属するデバイス10_3、デバイス10_4およびデバイス10_Nに対して、データのダウンロードおよびアップロードを並列的または直列的に実行することで、3つのデバイス10をまとめた状態で、オンライン処理を実現する。
 サポート装置400の統合開発環境450が管理するプロジェクト484は、設定されるグループAに対応付けられた部分プロジェクト4841と、設定されるグループBに対応付けられた部分プロジェクト4842とを含む。
 サポート装置400からダウンロードされるデータは、デバイス10で実行される制御プログラム140と、デバイス10の動作に必要なパラメータ2060,2560,3060とを含む。
 部分プロジェクト4841は、グループAに属するデバイス10_1との間で遣り取りされるデバイス用データ485_1およびデバイス10_2との間で遣り取りされるデバイス用データ485_2を含む。
 デバイス10_1に向けられたデバイス用データ485_1は、PLC100で実行される制御プログラム140と、スレーブ250に格納されるパラメータ2560と、カプラ300に格納されるパラメータ3060とを含む。制御プログラム140は、デバイス10_1のトポロジーなどを規定する構成設定1402と、プログラムコード1404とを含む。
 同様に、デバイス10_2に向けられたデバイス用データ485_2は、PLC100で実行される制御プログラム140と、スレーブ250に格納されるパラメータ2560と、ユニット200に格納されるパラメータ2060とを含む。
 一方、部分プロジェクト4842は、グループBに属するデバイス10_3との間で遣り取りされるデバイス用データ485_3、デバイス10_4との間で遣り取りされるデバイス用データ485_4、および、デバイス10_Nとの間で遣り取りされるデバイス用データ485_Nを含む。
 デバイス10_3に向けられたデバイス用データ485_3、デバイス10_4に向けられたデバイス用データ485_4、および、デバイス10_Nに向けられたデバイス用データ485_Nは、いずれも、PLC100で実行される制御プログラム140と、スレーブ250に格納されるパラメータ2560と、ユニット200に格納されるパラメータ2060とを含む。
 グループ単位での管理機能においては、プロジェクト484に含まれる、部分プロジェクト4841または部分プロジェクト4842の単位で、対応するデバイス10との間でオンライン処理(ダウンロードおよびアップロード)が実行される。
 <F.グループ単位での管理機能(ダウンロード)の処理手順>
 次に、本実施の形態に係る制御システム1におけるグループ単位での管理機能(ダウンロード)の処理手順の一例について説明する。
 図10は、本実施の形態に係る制御システム1におけるグループ単位での管理機能(ダウンロード)の処理手順を説明するための模式図である。図10には、グループAに属するデバイス10_1およびデバイス10_2に対するデータのダウンロードの処理例を示す。
 図10においては、サポート装置400において、デバイス10_1,10_2,10_3の各々について、制御プログラム140およびパラメータ2060,2560,3060が更新されているとする。図10において、「#1」、「#2」、「#3」といった記載は、更新番号(バージョン)を意味するものとする。また、図10において、四角で囲まれた枠内の「S」+「数字」は、後述のステップ番号に対応する。後述の図13においても同様である。
 図10においては、グループAが選択された状態で、ダウンロードが指示された場合の処理例を示す。グループAが選択されているので、グループAに属するデバイス10_1およびデバイス10_2に対してのみデータがダウンロードされ、デバイス10_3に対してはデータのダウンロードは行われない。
 なお、サポート装置400は、複数のデバイス10を動作させるために必要な情報を含むプロジェクト484から、複数のデバイス10の各々に格納すべきデータを生成する処理を事前に実行しているとする。また、サポート装置400は、複数のデバイス10のうち同一のグループに属するデバイス10の選択を受付ける処理も事前に実行しているとする。
 概略の処理手順として、まず、サポート装置400は、選択されたグループに属するすべてのデバイス10のセッションを取得して、排他制御権を取得する(ステップS1)。これは、別の装置から同一のデバイス10への同時書込みを防止するためである。
 続いて、サポート装置400は、選択されたグループに属するすべてのデバイス10に順次アクセスして、各デバイス10に格納されているデータのバックアップ処理を実行し、ディレクトリ480内にバックアップデータ486として保存する(ステップS2)。
 なお、順次アクセスだけではなく、並列処理で複数のデバイス10に格納されているデータのバックアップ処理を実行するようにしてもよい。
 続いて、サポート装置400は、選択されたグループに属するすべてのデバイス10に対して、各デバイス10の一時データ領域1062へ対象のデータ(制御プログラム140など)を含むファイルを転送する(ステップS3)。すなわち、サポート装置400は、ユーザ操作に応答して、同一のグループに属するデバイスの各々に対して、生成された各デバイス10に対応するデータを転送する処理を実行する。
 選択されたグループに属するすべてのデバイス10に対するファイル転送が正常に完了すると、サポート装置400は、一時データ領域1062に対してファイル転送を行ったすべてのデバイス10に対して、一時データ領域1062に格納されているファイルをデータ領域1064に反映することを指示する(ステップS4)。このような転送されたファイルをロードして反映することを、「フラッシュ処理」とも称する。すなわち、サポート装置400は、同一のグループに属するすべてのデバイス10に対するデータの転送が成功した後、各デバイス10に対する当該転送されたデータに反映を指示する処理を実行する。
 このフラッシュ処理の実行指示(反映指示)は、同一のグループに属する各デバイス10に対して、一時データ領域1062に格納されているデータをデータ領域1064に反映するための指示を含む。
 そして、選択されたグループに属するすべてのデバイス10においてデータ領域1064への反映が正常に完了すると、サポート装置400は、各デバイス10に属するすべてのユニット200に対して、対応するパラメータ2060を転送する(ステップS5)。
 各デバイス10に属するすべてのユニット200に対するパラメータ2060の転送が正常に完了すると、サポート装置400は、各デバイス10に属するすべてのスレーブ250およびカプラ300に対して、対応するパラメータ2560およびパラメータ3060を転送する(ステップS6)。
 このように、サポート装置400のファイル転送処理部454(データ転送部24)は、制御プログラム140の転送後に、パラメータ2060,2560,3060を転送(ダウンロード)する。より具体的には、サポート装置400のファイル転送処理部454(データ転送部24)は、制御プログラム140を制御装置であるPLC100に転送した後に、PLC100を介して周辺装置であるユニット200、スレーブ250、カプラ300にパラメータ2060,2560,3060を転送する。
 なお、ユニット200のパラメータの転送(ステップS5)とスレーブ250および/またはカプラ300のパラメータ転送(ステップS6)との実行順序はこの通りでなくてもよい。例えば、ステップS5とステップS6との実行順序を逆にしてもよい。
 続いて、各デバイス10に属するすべてのスレーブ250およびカプラ300に対するパラメータ2560およびパラメータ3060の転送が正常に完了すると、サポート装置400は、PLC100に対してIPアドレスの更新処理を実行する(ステップS7)。すなわち、PLC100に転送されたファイルにIPアドレスの更新指示が含まれていても、IPアドレスの更新処理はステップS7の時点まで待機される。
 最終的に、サポート装置400は、選択されたグループに属するすべてのデバイス10のセッションを開放して、排他制御権を開放する(ステップS8)。そして、サポート装置400は、一連のダウンロード処理の結果をユーザに通知する(ステップS9)。
 説明の便宜上、図10には、PLC100を主とするコントローラをデバイスの一例として説明したが、デバイスとしてはPLC100を主とするコントローラに限られず、例えば、HMIやIPCなどの任意の装置にも同様に適用可能である。
 図11および図12は、本実施の形態に係る制御システム1におけるグループ単位での管理機能(ダウンロード)の処理手順を示すフローチャートである。図11および図12に示す各ステップは、典型的には、サポート装置400のプロセッサ402がサポートプログラム4062を実行することで実現される。
 まず、サポート装置400は、グループ設定割付画面(後述の図16に示すグループ設定割付画面600)を表示して、グループの選択を受付ける(ステップS101)。
 続いて、サポート装置400は、選択されたグループに属するすべてのデバイス10のセッションを取得して、排他制御権を取得する(ステップS102)。すなわち、サポート装置400は、処理実行中に別のサポート装置400などから書込み処理が実行されることを防止するために、選択されたグループに属するすべてのデバイス10に対してセッションを取得する。
 ここで、対象のデバイス10の排他制御権を順次取得するようにしてもよいし、並列処理で複数のデバイス10の排他制御権を取得するようにしてもよい。
 続いて、サポート装置400は、選択されたグループに属するすべてのデバイス10に格納されているデータをバックアップする(ステップS201)。それぞれのデバイス10から取得されたデータは、ディレクトリ480内にバックアップデータ486として保存される。
 サポート装置400は、選択されたグループに属するすべてのデバイス10に対するバックアップが成功したか否かを判断する(ステップS202)。いずれかのデバイス10に対するバックアップが失敗していれば(ステップS202においてNO)、処理はステップS803へ進む。
 選択されたグループに属するすべてのデバイス10に対するバックアップが成功していれば(ステップS202においてYES)、サポート装置400は、選択されたグループに属するすべてのデバイス10について、動作モードをプログラムモードに変更する(ステップS301)。
 「プログラムモード」は、制御プログラムおよびパラメータの更新を許可するモードであり、サポート装置400からの指示によって、制御プログラムの実行などが停止および再開可能な状態になっている。
 続いて、サポート装置400は、選択されたグループに属するすべてのデバイス10に対してファイルを転送する(ステップS302)。ファイルは、各PLC100の一時データ領域1062に転送される。この段階では、転送されたファイルはまだ反映されていない。
 サポート装置400は、選択されたグループに属するすべてのデバイス10に対するファイル転送が成功したか否かを判断する(ステップS303)。いずれかのデバイス10に対するファイル転送が失敗していれば(ステップS303においてNO)、サポート装置400は、失敗時に元に戻す設定がなされているか否かを判断する(ステップS304)。
 失敗時に元に戻す設定がなされていれば(ステップS304においてYES)、サポート装置400は、選択されたグループに属するすべてのデバイス10について、一時データ領域1062に格納されている転送されたファイルを削除する(ステップS305)。そして、処理はステップS803へ進む。
 このように、サポート装置400のダウンロード処理部458(データ管理部26)は、同一のグループに属するいずれかのデバイス10に対するデータの転送が失敗すると、当該同一のグループに属する各デバイス10に対して、一時データ領域1062に格納されているデータを削除するように指示する。
 一方、失敗時に元に戻す設定がなされていなければ(ステップS304においてNO)、処理はステップS401へ進む。この場合、ファイル転送が成功したデバイス10についてのみ処理が継続されることになる。すなわち、サポート装置400のダウンロード処理部458(データ管理部26)は、予め定められた設定(失敗時に元に戻す設定の無効化)に従って、同一のグループに属するデバイス10のうちデータの転送が成功したデバイス10のみに対して、当該転送されたデータに反映を指示することが可能になっている。
 ステップS401以下においては、フラッシュ処理が実行される。より具体的には、サポート装置400は、すべてのデバイス10に対して、転送されたファイルを反映する(すなわち、フラッシュ処理を実行する)(ステップS401)。なお、デバイス10の書込順は、後述の図16に示される実行順設定画面660または図17に示される実行前画面670において任意に設定できる。
 ここで、対象のデバイス10に対してフラッシュ処理を順次実行するようにしてもよいし、同時反映、すなわち並列処理で複数のデバイス10に対してフラッシュ処理を実行するようにしてもよい。
 ステップS402においては、転送されたファイルでデバイス10内のデータが更新される。なお、デバイス10のIPアドレスが変更されると、以降の転送処理が実行できなくなることを防止するため、IPアドレスのロードはこの時点では実施されない。
 サポート装置400は、選択されたグループに属するすべてのデバイス10に対するフラッシュ処理が成功したか否かを判断する(ステップS403)。いずれかのデバイス10に対するフラッシュ処理が失敗していれば(ステップS403においてNO)、サポート装置400は、失敗時に元に戻す設定がなされているか否かを判断する(ステップS404)。
 失敗時に元に戻す設定がなされていれば(ステップS404においてYES)、処理はステップS504へ進む。一方、失敗時に元に戻す設定がなされていなければ(ステップS404においてNO)、処理はステップS501へ進む。この場合、フラッシュ処理が成功したデバイス10についてのみ処理が継続されることになる。
 選択されたグループに属するすべてのデバイス10に対するフラッシュ処理が成功していれば(ステップS403においてYES)、サポート装置400は、各デバイス10に属するすべてのユニット200へパラメータを転送する(ステップS501)。
 サポート装置400は、各デバイス10に属するすべてのユニット200へのパラメータ転送が成功したか否かを判断する(ステップS502)。いずれかのユニット200へのパラメータ転送が失敗していれば(ステップS502においてNO)、サポート装置400は、失敗時に元に戻す設定がなされているか否かを判断する(ステップS503)。
 失敗時に元に戻す設定がなされていれば(ステップS503においてYES)、処理はステップS504へ進む。
 一方、失敗時に元に戻す設定がなされていなければ(ステップS503においてNO)、処理はステップS601へ進む。この場合、パラメータ転送が成功したユニット200についてのみ処理が継続されることになる。
 各デバイスに属するすべてのユニット200へのパラメータ転送が成功していれば(ステップS502においてYES)、サポート装置400は、各デバイス10に属するすべてのスレーブ250およびカプラ300へパラメータを転送する(ステップS601)。
 サポート装置400は、各デバイス10に属するすべてのスレーブ250およびカプラ300へのパラメータ転送が成功したか否かを判断する(ステップS602)。いずれかのスレーブ250またはカプラ300へのパラメータ転送が失敗していれば(ステップS602においてNO)、サポート装置400は、失敗時に元に戻す設定がなされているか否かを判断する(ステップS603)。
 失敗時に元に戻す設定がなされていれば(ステップS604においてYES)、処理はステップS504へ進む。
 一方、失敗時に元に戻す設定がなされていなければ(ステップS603においてNO)、処理はステップS701へ進む。この場合、パラメータ転送が成功したスレーブ250およびカプラ300についてのみ処理が継続されることになる。
 ステップS504において、サポート装置400は、バックアップしたデータを各デバイスへリストアする(ステップS504)。これによって、各デバイス10は、元の状態に復帰する。すなわち、サポート装置400のダウンロード処理部458(データ管理部26)は、同一のグループに属するいずれかのデバイス10に対するデータの転送が失敗すると、バックアップデータ486を当該同一のグループに属する各デバイス10に戻す。そして、処理はステップS803へ進む。
 一方、各デバイス10に属するすべてのスレーブ250およびカプラ300へのパラメータ転送が成功していれば(ステップS602においてYES)、サポート装置400は、選択されたグループに属するデバイス10のIPアドレスをロードする(ステップS701)。なお、IPアドレスが変更されるデバイス10のみ、ステップS701に示されるロード処理が実行される。
 サポート装置400は、IPアドレスのロードに失敗したデバイス10が存在するか否かをチェックする(ステップS702)。サポート装置400は、IPアドレスのロードに失敗したデバイス10が存在するか否かにかかわらず、運転モードに戻すデバイス10を選択するための運転モード変更確認画面(図18の運転モード変更確認画面680を参照)を表示する(ステップS801)。
 IPアドレスのロードに失敗した場合であっても、ファイルおよびパラメータの転送自体は正常に完了しているため、原則として、処理は継続される。但し、転送されたファイルに規定されたIPアドレスと実際に設定されているIPアドレスとの間に矛盾が生じることになる。そこで、転送結果を表示する際に、IPアドレスのロードに失敗したデバイス10については、IPアドレスのロードに失敗した旨の結果を通知する。加えて、当該デバイスのリスタートが必要であることをユーザへ通知することが好ましい。
 ステップS801において表示される運転モード変更確認画面を操作することで、ユーザは、ダウンロード開始前に運転モードであったデバイスを運転モードに戻すか否かを自身で選択できる。運転モード変更確認画面においては、デバイスごとに運転モードに戻すか否かを選択できるようにしておくことが好ましい。
 サポート装置400は、ステップS801において表示される運転モード変更確認画面に対するユーザ操作に応じて、選択されたデバイスを運転モードに戻す(ステップS802)。
 そして、サポート装置400は、選択されたグループに属するデバイス10のセッションを開放して、排他制御権を開放する(ステップS803)。ここで、対象のデバイス10の排他制御権を順次解放するようにしてもよいし、並列処理で複数のデバイス10の排他制御権を開放するようにしてもよい。
 最終的に、サポート装置400は、一連のダウンロード処理の結果をユーザに通知する(例えば、図19に示す実行結果通知画面690)(ステップS901)。この結果には、デバイス10ごとの転送結果を含めることが好ましい。IPアドレスが変更された場合、あるいは、IPアドレスのロード処理に失敗した場合などには、その内容についても通知結果に含めることが好ましい。
 <G.グループ単位での管理機能(アップロード)の処理手順>
 次に、本実施の形態に係る制御システム1におけるグループ単位での管理機能(アップロード)の処理手順の一例について説明する。
 図13は、本実施の形態に係る制御システム1におけるグループ単位での管理機能(アップロード)の処理手順を説明するための模式図である。図13には、グループAに属するデバイス10_1およびデバイス10_2に対するデータのアップロードの処理例を示す。
 図13においては、グループAが選択された状態で、アップロードが指示された場合の処理例を示す。グループAが選択されているので、グループAに属するデバイス10_1およびデバイス10_2に格納されているデータがアップロードされ、デバイス10_3に対してはデータのアップロードは行われない。
 概略の処理手順として、まず、サポート装置400は、選択されたグループに属するすべてのデバイス10のセッションを取得して、排他制御権を取得する(ステップS11)。これは、別の装置から同一のデバイス10への同時書込みを防止するためである。
 続いて、サポート装置400は、統合開発環境450で開かれているプロジェクト484のデータをディレクトリ480内に保存する(ステップS12)。
 続いて、サポート装置400は、選択されたグループに属するすべてのデバイス10に順次アクセスして、各デバイス10内の制御プログラム140のファイルに対するアップロード処理を実行し、ディレクトリ480内に制御プログラム140#として保存する(ステップS13)。
 なお、順次アクセスだけではなく、並列処理で複数のデバイス10内の制御プログラム140のファイルに対するバックアップ処理を実行するようにしてもよい。
 選択されたグループに属するすべてのデバイス10に対するアップロード処理が正常に完了すると、サポート装置400は、アップロードした制御プログラム140#に基づいて、統合開発環境450で開かれる各デバイス10の制御プログラム140を更新する(ステップS14)。
 選択されたグループに属するすべてのデバイス10について制御プログラム140の更新が正常に完了すると、サポート装置400は、各デバイス10に属するすべてのユニット200のパラメータ2060に対するアップロード処理を実行する(ステップS15)。各デバイス10に属するすべてのユニット200のパラメータ2060に対するアップロード処理が正常に完了すると、サポート装置400は、アップロードしたパラメータ2060に基づいて、統合開発環境450で開かれる各ユニット200のパラメータ2060を更新する。
 各デバイス10に属するすべてのユニット200についてパラメータ2060の更新が正常に完了すると、サポート装置400は、各デバイス10に属するすべてのスレーブ250およびカプラ300のパラメータ2560およびパラメータ3060に対するアップロード処理を実行する(ステップS16)。各デバイス10に属するすべてのスレーブ250およびカプラ300のパラメータ2560およびパラメータ3060に対するアップロード処理が正常に完了すると、サポート装置400は、アップロードしたスレーブ250およびカプラ300のパラメータ2560およびパラメータ3060に基づいて、統合開発環境450で開かれる各スレーブ250およびカプラ300のパラメータ2560およびパラメータ3060を更新する。
 なお、ユニット200のパラメータの転送(ステップS15)とスレーブ250および/またはカプラ300のパラメータ転送(ステップS16)との実行順序はこの通りでなくてもよい。例えば、ステップS15とステップS16との実行順序を逆にしてもよい。
 各デバイス10に属するすべてのスレーブ250およびカプラ300についてパラメータ2560およびパラメータ3060の更新が正常に完了すると、サポート装置400は、サポート装置400は、選択されたグループに属するすべてのデバイス10のセッションを開放して、排他制御権を開放する(ステップS17)。そして、サポート装置400は、一連のダウンロード処理の結果をユーザに通知する(ステップS18)。
 説明の便宜上、図13には、PLC100を主とするコントローラをデバイスの一例として説明したが、デバイスとしてはPLC100を主とするコントローラに限られず、例えば、HMIやIPCなどの任意の装置にも同様に適用可能である。
 図14および図15は、本実施の形態に係る制御システム1におけるグループ単位での管理機能(アップロード)の処理手順を示すフローチャートである。図14および図15に示す各ステップは、典型的には、サポート装置400のプロセッサ402がサポートプログラム4062を実行することで実現される。
 まず、サポート装置400は、グループ設定割付画面(後述の図16に示すグループ設定割付画面600)を表示して、グループの選択を受付ける(ステップS1101)。
 続いて、サポート装置400は、選択されたグループに属するすべてのデバイス10のセッションを取得して、排他制御権を取得する(ステップS1102)。すなわち、サポート装置400は、処理実行中に別のサポート装置400などから書込み処理が実行されることを防止するために、選択されたグループに属するすべてのデバイス10に対してセッションを取得する。
 ここで、対象のデバイス10の排他制御権を順次取得するようにしてもよいし、並列処理で複数のデバイス10の排他制御権を取得するようにしてもよい。
 続いて、サポート装置400は、統合開発環境450で開かれているプロジェクト484のデータをディレクトリ480内に保存する(ステップS1201)。すなわち、サポート装置400は、現在開かれているプロジェクト484のデータをローカルにコピーする。このコピーは、アップロード処理に失敗した場合に、プロジェクト484を元に戻すためのバックアップデータ486に相当する。
 続いて、サポート装置400は、選択されたグループに属するすべてのデバイス10に順次アクセスして、各デバイス10内の制御プログラム140に対するアップロード処理を実行し、ディレクトリ480内に制御プログラム140#として保存する(ステップS1301)。すなわち、サポート装置400は、すべてのデバイス10に対して、各デバイス10内のファイルをローカルフォルダへアップロードする。
 サポート装置400は、選択されたグループに属するすべてのデバイス10に対するアップロード処理が成功したか否かを判断する(ステップS1302)。いずれかのデバイス10に対するアップロード処理が失敗していれば(ステップS1302においてNO)、サポート装置400は、失敗時に元に戻す設定がなされているか否かを判断する(ステップS1303)。
 失敗時に元に戻す設定がなされていれば(ステップS1303においてYES)、サポート装置400は、ディレクトリ480にアップロードしたファイルを削除する(ステップS1304)。そして、処理はステップS1711へ進む。
 一方、失敗時に元に戻す設定がなされていなければ(ステップS1303においてNO)、処理はステップS1401へ進む。この場合、アップロード処理が成功したデバイス10についてのみ処理が継続されることになる。
 選択されたグループに属するすべてのデバイス10に対するアップロード処理が成功していれば(ステップS1302においてYES)、サポート装置400は、アップロードした制御プログラム140#に基づいて、統合開発環境450で開かれる各デバイス10の制御プログラム140を更新する(ステップS1401)。すなわち、サポート装置400は、アップロードした制御プログラム140のファイルをロードして、プロジェクト484内の各デバイス10の設定へ反映する。
 サポート装置400は、選択されたグループに属するすべてのデバイス10について制御プログラム140の更新が成功したか否かを判断する(ステップS1402)。いずれかのデバイス10に対する制御プログラム140の更新が失敗していれば(ステップS1402においてNO)、サポート装置400は、失敗時に元に戻す設定がなされているか否かを判断する(ステップS1403)。
 失敗時に元に戻す設定がなされていれば(ステップS1403においてYES)、処理はステップS1711へ進む。
 一方、失敗時に元に戻す設定がなされていなければ(ステップS1403においてNO)、処理はステップS1501へ進む。この場合、アップロード処理が成功したデバイス10についてのみ処理が継続されることになる。
 選択されたグループに属するすべてのデバイス10について制御プログラム140の更新が成功していれば(ステップS1402においてYES)、サポート装置400は、各デバイス10に属するすべてのユニット200のパラメータ2060に対するアップロード処理を実行し、アップロードしたパラメータ2060に基づいて、統合開発環境450で開かれる各ユニット200のパラメータ2060を更新する(ステップS1501)。
 サポート装置400は、各デバイス10に属するすべてのユニット200からのパラメータ転送が成功したか否かを判断する(ステップS1502)。いずれかのユニット200からのパラメータ転送が失敗していれば(ステップS1502においてNO)、サポート装置400は、失敗時に元に戻す設定がなされているか否かを判断する(ステップS1503)。
 失敗時に元に戻す設定がなされていれば(ステップS1503においてYES)、処理はステップS1711へ進む。
 一方、失敗時に元に戻す設定がなされていなければ(ステップS1503においてNO)、処理はステップS1601へ進む。この場合、パラメータ転送が成功したユニット200についてのみ処理が継続されることになる。
 各デバイス10に属するすべてのユニット200からのパラメータ転送が成功していれば(ステップS1502においてYES)、サポート装置400は、各デバイス10に属するすべてのスレーブ250のパラメータ2560およびカプラ300のパラメータ3060に対するアップロード処理を実行し、アップロードしたパラメータ2560およびパラメータ3060に基づいて、統合開発環境450で開かれる各スレーブ250および各カプラ300のパラメータ2060を更新する(ステップS1601)。
 サポート装置400は、各デバイス10に属するすべてのスレーブ250およびカプラ300からのパラメータ転送が成功したか否かを判断する(ステップS1602)。いずれかのスレーブ250またはカプラ300からのパラメータ転送が失敗していれば(ステップS1602においてNO)、サポート装置400は、失敗時に元に戻す設定がなされているか否かを判断する(ステップS1603)。
 失敗時に元に戻す設定がなされていれば(ステップS1603においてYES)、処理はステップS1711へ進む。
 一方、失敗時に元に戻す設定がなされていなければ(ステップS1603においてNO)、処理はステップS1701へ進む。この場合、パラメータ転送が成功したユニット200についてのみ処理が継続されることになる。
 各デバイス10に属するすべてのスレーブ250およびカプラ300からのパラメータ転送が成功していれば(ステップS1602においてYES)、サポート装置400は、選択されたグループに属するすべてのデバイス10のセッションを開放して、排他制御権を開放する(ステップS1701)。ここで、対象のデバイス10の排他制御権を順次解放するようにしてもよいし、並列処理で複数のデバイス10の排他制御権を開放するようにしてもよい。
 最終的に、サポート装置400は、一連のアップロード処理の結果をユーザに通知する(例えば、図19に示す実行結果通知画面690)(ステップS1801)。この結果には、デバイス10ごとの転送結果を含めることが好ましい。転送が失敗したデバイス10については、その失敗した原因なども通知結果に含めることが好ましい。
 また、ステップS1711において、サポート装置400は、選択されたグループに属するすべてのデバイス10のセッションを開放して、排他制御権を開放する(ステップS1711)。ここで、対象のデバイス10の排他制御権を順次解放するようにしてもよいし、並列処理で複数のデバイス10の排他制御権を開放するようにしてもよい。また、サポート装置400は、各デバイス10を一旦オフラインに変更する(ステップS1712)。
 そして、サポート装置400は、アップロード処理前に保存したプロジェクト484を用いてプロジェクトを開き直す(ステップS1713)。そして、サポート装置400は、選択されたグループに属するデバイス10に対してオンライン処理を実行する(ステップS1714)。そして、処理はステップS1801へ進む。
 <H.ユーザインターフェイス画面>
 上述したようなオンライン処理(ダウンロードおよびアップロード)に関するユーザインターフェイス画面の一例について説明する。
 (h1:グループ設定割付画面)
 図16は、本実施の形態に係る制御システム1が提供するグループ設定割付画面の一例を示す模式図である。図16を参照して、グループ設定割付画面600は、グループ設定エリア610と、グループ割付設定エリア620とを含む。
 グループ設定エリア610は、登録されているグループの一覧表示612を含んでおり、追加削除ボタン616を操作することで、グループの追加および削除が可能になっている。図16には、4つのグループが登録されている例を示す。
 グループ割付設定エリア620には、現在開かれているプロジェクト484に含まれるデバイスが一覧表示される。より具体的には、グループ割付設定エリア620は、デバイスの一覧表示622と、各デバイスの形式を示すデバイス詳細情報表示624と、各デバイスが属するグループを示す所属グループ表示626とを含む。このように、グループ割付設定エリア620は、デバイスごとに、対応する形式および所属するグループを規定する情報を含む。
 なお、デバイス詳細情報表示624として形式を表示する例を示すが、別の表示形態を採用してもよい。例えば、デバイス詳細情報表示624として複数の列を含み、形式列だけではなく、デバイス10のバージョン列などデバイス10の詳細情報を列ごとに記載してもよい。
 所属グループ表示626に含まれる「+」ボタンが押下されると、所属グループ設定画面650が表示される。所属グループ設定画面650は、登録されているグループの一覧表示654と、グループごとに対象の有無を選択するチェックボックス652とを含む。ユーザは、チェックボックス652を操作して、選択されているデバイスを所属させるべきグループを選択する。すなわち、ユーザは各デバイスをどのグループに割り付けるかを設定する。なお、1つのデバイスを複数のグループに割り付けることができるようにしてもよい。
 グループ設定エリア610は、書込順の設定ボタン614を含む。設定ボタン614が押下されると、書込み処理(ダウンロード処理)におけるデバイスの実行順を設定するための実行順設定画面660が表示される。ダウンロード処理の場合、書込順によってデバイスの挙動が変化し得るため、デバイスに対する処理の実行順を予め設定しておくことが好ましい。実行順設定画面660は、対象のグループを選択するためのプルダウン662と、選択されているグループに所属するデバイスの一覧表示666と、実行順を示す実行順表示664とを含む。
 ユーザは、一覧表示666において対象のデバイスを選択するとともに、変更ボタン668を操作することで、当該選択されているデバイスの実行順が変化する。このように、ユーザは、一覧表示666において各デバイスの順番を入れ替えることで、ダウンロード処理における実行順を任意に設定できる。なお、実際のダウンロード処理の実行直前においても、実行順を任意に設定できるようにしてもよい。
 このような実行順の設定は、実行順がデバイスの振る舞いに影響を与え得る場合にのみ有効化されてもよい。例えば、実行順がデバイスの振る舞いに影響を与える可能性がない処理については、内部的に最適化を実行して、並列に処理するようにしてもよい。
 以下、実行直前に提供されるユーザインターフェイス画面の一例について説明する。
 図17は、本実施の形態に係る制御システム1が提供するオンライン処理実行前画面の一例を示す模式図である。図17を参照して、オンライン処理として、書込み処理および書込み処理以外の別にユーザインターフェイス画面が提供される。
 書込み処理が選択されると、実行前画面670が表示される。実行前画面670は、書込み処理の対象となるグループを選択するためのプルダウン672と、選択されているグループに所属するデバイスの一覧表示676と、実行順を示す実行順表示674とを含む。
 ユーザがプルダウン672を操作して、書込み処理の対象となる任意のグループを選択すると、当該選択されたグループに所属するデバイスの一覧が表示または更新される。グループ設定割付画面600(図16)において予め設定された書込順がデフォルトとして、実行前画面670に表示される。デバイスの実行順を変更する必要がある場合には、ユーザは、一覧表示676において対象のデバイスを選択するとともに、変更ボタン678を操作する。
 実行前画面670は、失敗時に元に戻す設定を有効化するためのチェックボックス679を含む。ユーザがチェックボックス679を有効化することで、いずれかのデバイスにおいて処理の実行が失敗すると、対象のすべてのデバイスが処理実行前の状態に戻される。チェックボックス679が無効化されている場合には、処理の実行が成功したデバイスについて処理が継続される。
 書込み処理以外が選択されると、実行前画面671が表示される。実行前画面671は、実行前画面670を簡素化したものに相当し、書込み処理の対象となるグループを選択するためのプルダウン672と、失敗時に元に戻す設定を有効化するためのチェックボックス679を含む。プルダウン672およびチェックボックス679の機能および処理は、実行前画面670のプルダウン672およびチェックボックス679と同様であるので、詳細な説明は繰返さない。
 図17に示すように、いずれのオンライン処理であっても、失敗時に元に戻す設定が可能になっている。
 (h2:運転モード変更画面)
 図18は、本実施の形態に係る制御システム1が提供する運転モード変更確認画面680の一例を示す模式図である。図18を参照して、運転モード変更確認画面680は、デバイスの一覧表示684と、各デバイスに対するオンライン処理の実行結果を示す実行結果表示686と、デバイスごとに運転モードへの変更対象を選択するチェックボックス682とを含む。
 一覧表示684には、選択されているグループに所属するデバイスが一覧表示される。ユーザは、チェックボックス682を操作して、一覧表示684に表示されるデバイスのうち運転モードに変更する対象のデバイスを選択する。このように、ユーザは、チェックボックス682を操作することで、デバイスごとに運転モードに変更するか否かを決定できる。
 実行結果表示686には、各デバイスに対するオンライン処理の実行結果(成功または失敗)が表示される。
 ここで、成功または失敗だけでなく、詳細情報を表示するようにしてもよい。例えば、失敗であれば、転送失敗なのかIPアドレスのロードに失敗なのかといった失敗の原因を表示するようにしてもよい。また、成功した場合であっても、IPアドレスが変更されていることなどを表示するようにしてもよい。
 表示態様としても、例えば、実行結果欄の他に別の欄を設けて、実行結果欄には成功または失敗を表示するとともに、当該別の欄には上述したような内容で記載された詳細情報を表示するようにしてもよい。
 例えば、書込み処理に失敗したデバイスは動作が変化する可能性があるため、当該デバイスについての運転モードへの変更を禁止してもよい。このような運転モードへの変更を禁止する場合には、オンライン処理の実行が失敗したデバイスについては、チェックボックス682をグレイアウトして、選択不可の状態にしてもよい。
 この他にも、IPアドレスのロードに失敗したデバイスなどを含んだ表示としてもよい。これは、IPアドレスのロードに失敗しているデバイスは、ファイルと実際の接続IPアドレスとの間に矛盾が発生するため、リスタートが必要になるので、運転モードへ変更することは好ましくないからである。
 また、処理開始時にプログラムモードであったデバイスについても、運転モードへの変更を禁止するようにしてもよい。
 (h3:実行結果通知画面)
 図19は、本実施の形態に係る制御システム1が提供する実行結果通知画面690の一例を示す模式図である。図19を参照して、実行結果通知画面690は、メッセージ通知領域691を含む。メッセージ通知領域691には、オンライン処理の実行に関する内容が表示される。例えば、処理の実行に失敗したデバイスが存在する場合や、IPアドレスが変更された場合などの状況に応じて、表示されるメッセージの内容が変更される。
 実行結果通知画面690は、対象のグループに属しているデバイスの一覧表示692および各デバイスについての実行結果の一覧表示694を含む。一覧表示692および一覧表示694には、デバイスごとに処理の事項が成功したのか、あるいは、失敗したのかが示される。
 実行結果通知画面690は、さらに、一覧表示692において選択された特定のデバイスについて、処理の詳細な情報を表示するための工程の一覧表示696および実行結果の一覧表示698を含む。すなわち、選択された任意のデバイスについて、工程ごとに処理の実行結果の詳細が表示される。このような詳細な実行結果を表示することで、各デバイスについて、実施されていない構成を含めて、いずれの工程まで実行されたのかを容易に把握できる。
 実行結果通知画面690は、さらに、エラー情報通知領域699を含む。エラー情報通知領域699には、いずれかのデバイスに対するオンライン処理が失敗したときに、対応するエラー情報およびトラブルシュートに関する情報などが表示されてもよい。エラー情報通知領域699に、ユーザが理解できる情報であれば、どのような表示項目および内容であってもよい。
 図19に示すような実行結果通知画面690が提供されることで、ユーザは、複数のデバイスに対してまとめてオンライン処理を実行する場合であっても、一部のデバイスで発生するエラーやその対処などを容易に認識できる。
 <I.変形例>
 上述の実施の形態においては、単一のコンピュータがサポート装置400を構成する場合について説明したが、サポート装置400が提供する処理または機能の一部を他のコンピュータに分散配置してもよい。例えば、ストレージの機能をネットワーク上のサーバが提供する記憶領域を用いて実現してもよいし、あるいは、ビルド処理をネットワーク上のサーバで実施するようにしてもよい。
 このように、サポート装置400の具体的な実装形態としては、各時代に応じた適切な形態を採用すればよい。
 <J.付記>
 上述したような本実施の形態は、以下のような技術思想を含む。
[構成1]
 複数のデバイス(10)を有する制御システム(1)において利用されるサポート装置(400)であって、
 前記複数のデバイスを動作させるために必要な情報を含むプロジェクト(484)から、前記複数のデバイスの各々に格納すべきデータ(485)を生成するデータ生成部(20;468)と、
 前記複数のデバイスのうち同一のグループに属するデバイスの選択を受付ける選択受付部(22;600)と、
 ユーザ操作に応答して、前記同一のグループに属するデバイスの各々に対して、前記データ生成部により生成された各デバイスに対応するデータを転送するデータ転送部(24;454)と、
 前記同一のグループに属するすべてのデバイスに対するデータの転送が成功した後、各デバイスに対する当該転送されたデータに反映を指示するデータ管理部(26;458)とを備える、サポート装置。
[構成2]
 前記データ管理部は、前記同一のグループに属するいずれかのデバイスに対するデータの転送が失敗すると、当該同一のグループに属するすべてのデバイスを、データを転送する前の状態に戻す(S304;S504)、構成1に記載のサポート装置。
[構成3]
 前記デバイスの各々は、処理に用いられるデータを格納するための第1のデータ領域(1064)と、前記データ転送部から転送されるデータを一時的に格納するための第2のデータ領域(1062)とを有しており、
 前記データ管理部は、前記同一のグループに属する各デバイスに対して、前記第2のデータ領域に格納されているデータを前記第1のデータ領域に反映するように指示する(S402)、構成1または2に記載のサポート装置。
[構成4]
 前記データ管理部は、前記同一のグループに属するいずれかのデバイスに対するデータの転送が失敗すると、前記同一のグループに属する各デバイスに対して、前記第2のデータ領域に格納されているデータを削除するように指示する(S305)、構成3に記載のサポート装置。
[構成5]
 データの転送前に、前記同一のグループに属する各デバイスに格納されているデータを取得してバックアップデータ(486)として保持するデータ保持部(456)をさらに備え、
 前記データ管理部は、前記同一のグループに属するいずれかのデバイスに対するデータの転送が失敗すると、前記バックアップデータを前記同一のグループに属する各デバイスに戻す(S504)、構成2に記載のサポート装置。
[構成6]
 前記データ管理部は、予め定められた設定に従って、前記同一のグループに属するデバイスのうちデータの転送が成功したデバイスのみに対して、当該転送されたデータに反映を指示することが可能になっている(S304,S305)、構成1~5のいずれか1項に記載のサポート装置。
[構成7]
 前記データ転送部から転送されるデータは、前記デバイスで実行される制御プログラム(140)と、前記デバイスの動作に必要なパラメータ(2060,2560,3060)とを含み、
 前記データ転送部は、前記制御プログラムの転送後に、前記パラメータを転送する(S302,S501,S601)、構成1~6のいずれか1項に記載のサポート装置。
[構成8]
 前記デバイスは、制御装置(100)と前記制御装置に接続される周辺装置(200,250,300)とを含み、
 前記データ転送部は、前記制御プログラムを前記制御装置に転送した後に、前記制御装置を介して前記周辺装置に前記パラメータを転送する(S501,S601)、構成7に記載のサポート装置。
[構成9]
 ユーザ操作に応答して、前記同一のグループに属するデバイスの各々から、各デバイスに格納されているデータを取得して前記プロジェクトの内容を更新するデータ取得処理部(462,464)をさらに備える、構成1~8のいずれか1項に記載のサポート装置。
[構成10]
 複数のデバイス(10)を有する制御システム(1)において利用されるコンピュータ(400)で実行されるサポートプログラム(4062)であって、前記サポートプログラムはコンピュータに
 前記複数のデバイスを動作させるために必要な情報を含むプロジェクト(484)から、前記複数のデバイスの各々に格納すべきデータ(485)を生成するステップ(20;468)と、
 前記複数のデバイスのうち同一のグループに属するデバイスの選択を受付けるステップ(22;600)と、
 ユーザ操作に応答して、前記同一のグループに属するデバイスの各々に対して、前記生成された各デバイスに対応するデータを転送するステップ(S302)と、
 前記同一のグループに属するすべてのデバイスに対するデータの転送が成功した後、各デバイスに対する当該転送されたデータに反映を指示するステップ(S402)とを実行させる、サポートプログラム。
[構成11]
 複数のデバイス(10)と、
 前記複数のデバイスに接続可能なサポート装置(400)とを備え、
 前記サポート装置は、
  前記複数のデバイスを動作させるために必要な情報を含むプロジェクト(484)から、前記複数のデバイスの各々に格納すべきデータ(485)を生成するデータ生成部(20;468)と、
  前記複数のデバイスのうち同一のグループに属するデバイスの選択を受付ける選択受付部(22;600)と、
  ユーザ操作に応答して、前記同一のグループに属するデバイスの各々に対して、前記データ生成部により生成された各デバイスに対応するデータを転送するデータ転送部(24;454)と、
  前記同一のグループに属するすべてのデバイスに対するデータの転送が成功した後、各デバイスに対する当該転送されたデータに反映を指示するデータ管理部(26;458)とを備える、制御システム。
 <K.利点>
 本実施の形態に係る制御システム1によれば、装置単位などのユーザが任意に設定したグループに対して、プロジェクトに含まれる複数のデバイスのうち一部または全部を各グループに割付ることができる。そして、グループ単位でオンライン処理を実行できる。このような構成を採用することで、以下のような課題を解決できる。
 具体的には、従来の統合開発環境からデバイスとの間でデータ(制御プログラムやパラメータなど)を読み書きする場合には、デバイスごとに操作を行う必要があった。例えば、複数のデバイスで構成される単一の装置を一つのプロジェクトとして管理している場合であっても、ダウンロード処理やモニタリングといったオンライン処理は、デバイスごとに個別に実行する必要があった。そのため、ユーザから見れば、一つのプロジェクトとして管理しているメリットを享受できず、また、デバイスの数だけ類似した操作を繰返さなければならず、手数の多さに起因する誤操作などの可能性も増大し得る。
 また、特定のデバイスに対する書込み処理が失敗した場合に、既に書込みが完了したデバイスを元の戻すような仕組みも存在しないので、複数のデバイスの取扱いには手間が掛かる。
 また、一つのデバイスに対する操作が完了するまで次のデバイスに対する操作を開始できないため、ユーザがすべてのデバイスにオンライン処理を実行完了するまでに長い時間を要する。すなわち、対象グループの属する各デバイスへの読書きを順次実行する場合には、長い処理時間を要する。
 このような課題に対して、本実施の形態に係る制御システム1によれば、プロジェクトに含まれる1または複数のデバイスをグループ化することで、その後のオンライン処理を当該グループ単位で一斉に実行できる。例えば、同一のグループに属するデバイスに対してデータの書込み処理などを行う場合には、書込順や転送失敗時の対処などを設定できるので、同一グループに属するデバイス間に不整合を生じることなく、一括操作を実現できる。
 また、処理を部分的に並列処理できるため、ユーザがすべてのデバイスにオンライン処理を実行完了するまでの時間を短縮できる。
 本実施の形態に係る制御システム1においては、以下のような処理および機能を実行可能である。
 (1)ユーザにより任意のデバイスを各グループに割当てることができる。
 (2)ユーザはグループ設定割付画面600を操作することで、プロジェクトに含まれる任意のデバイスを予め登録したいずれかのグループへ割当てることができる。
 (3)ユーザは、オンライン処理の実行時において、いずれのグループに対して処理を実行するか選択することで、当該選択されたグループに属する1または複数のデバイスに対して一括した処理を実行できる。
 (4)書込み処理を行う際は、デバイス間でデータ反映の順番を予め設定でき、これによって書込み後の挙動に不整合が生じる可能性を低減できる。
 (5)書込み処理を行う際、処理開始前に対象となるデバイスのすべてからデータを取得してサポート装置400内にバックアップデータとして格納できる。
 (6)読込み処理を行う際、処理開始前に対象となるデバイスのすべてから制御プログラムの情報をサポート装置400内に格納できる。
 (7)オンライン処理の実行時には、必要に応じて排他制御をかけることができるので、書込みあるいは読出しにおけるデバイス間の不整合を防止できる。
 (8)対象のすべてのデバイスに対する処理の完了後、実行結果をチェックして1つでも失敗したデバイスが存在する場合には、サポート装置400に格納してあるバックアップデータを用いて元に戻すこともできる。
 (9)すべてのオンライン処理の実行完了後に実行結果を通知することもできる。このとき、失敗した場合は失敗したデバイス情報も通知するようにしてもよい。
 (10)複数のデバイスで実行される制御プログラムを一つのプロジェクトとして作成できる統合開発環境が提供される。この統合開発環境においては、ユーザが設定したグループ単位で1または複数のデバイスをグループ化できる。
 (11)グループ単位でオンライン処理を実行できる。
 (12)読込み処理および書込処理の内容は、オンライン接続、モニタ、ダウンロード、アップロード、バックアップ、リストア、オンラインエディットなどいずれであってもよい。
 (13)デバイスに対するオンライン処理の実行時においては、必要に応じて排他制御をかけることで、書込みあるいは読出しのデバイス間の不整合を防止できる。
 (14)統合開発環境からデバイスへの書込み処理を行う際、処理開始前に対象のグループに属する全デバイスのデータを取得し、サポート装置上でバックアップデータとして保管できるため、特定のデバイスのみデータが変更されることを防止できる。
 (15)デバイスから統合開発環境へデータを取得する際は、統合開発環境上の制御プログラムデータを取得し、サポート装置400上でバックアップデータとして格納できるため、特定のデバイスのみデータが変更されることを防止できる。
 (16)オンライン処理の実行後、各デバイスでの結果をチェックして、いずれか1つでも失敗しているデバイスが存在した場合には、サポート装置400上で保管していたバックアップデータを使用して、処理実行前の状態へ戻すことができる。
 (17)すべての処理が完了後に、実行結果をユーザへ通知する。
 (18)デバイスは、PLCやHMIなどプロジェクトが生成可能なデバイスであればいずれであってもよい。
 (19)対象グループの属する各デバイスへの読書きは並列に処理することができるため、各デバイスへの読書きを順次実行する場合に比べて処理を短時間化できる。
 (20)1デバイスあたり複数グループを割り付けることも可能であってもよい。
 本実施の形態に係る制御システム1が提供する統合開発環境においては、複数のデバイスで実行される制御プログラムを変更するような場合、当該複数のデバイスの制御プログラムを同期させることができる。
 なお、すべてのデバイスに対する制御プログラムの書込みが完了するまでには、複数のデバイス間で制御プログラムの同期状態を確保できないが、万が一、いずれかのデバイスに対する書込みが失敗した場合には、既に書込まれた制御プログラムを元に戻すので、一部の制御プログラムのみが更新されるといった事態を回避できる。
 今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、請求の範囲によって示され、請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
 1 制御システム、2 ネットワーク、4,8 ローカルバス、6 フィールドバス、10,10_1,10_2,10_3,10_4,・・・,10_N デバイス、20 データ生成部、22 選択受付部、24 データ転送部、26 データ管理部、100 PLC、102,302,402 プロセッサ、104,304,404 メインメモリ、106,206,306,406 ストレージ、108,416 ネットワークコントローラ、110,310 フィールドバスコントローラ、114 USBコントローラ、116 メモリカードインターフェイス、118 メモリカード、120,220,320 ローカルバスコントローラ、130,330,418 プロセッサバス、140 制御プログラム、150 PLC機能モジュール、152 シーケンス制御部、154 モーション制御部、160 IOポート、200 ユニット、210 機能モジュール、250 スレーブ、300 カプラ、400 サポート装置、408 入力部、410 表示部、412 光学ドライブ、414 記録媒体、450 統合開発環境、452 通信部、454 ファイル転送処理部、456 バックアップ処理部、458 ダウンロード処理部、460 ファイル取得処理部、462 アップロード処理部、464 データロード処理部、466 リストア処理部、468 ビルド処理部、470 制御部、472 ファイルIO処理部、480 ディレクトリ、482 転送ファイル、484 プロジェクト、485 デバイス用データ、486 バックアップデータ、488 グループ設定ファイル、600 グループ設定割付画面、610 グループ設定エリア、612,622,654,666,676,684,692,694,696,698 一覧表示、614 設定ボタン、616 追加削除ボタン、620 グループ割付設定エリア、624 デバイス詳細情報表示、626 所属グループ表示、650 所属グループ設定画面、652,679,682 チェックボックス、660 実行順設定画面、662,672 プルダウン、664,674 実行順表示、668,678 変更ボタン、670,671 実行前画面、680 運転モード変更確認画面、686 実行結果表示、690 実行結果通知画面、691 メッセージ通知領域、699 エラー情報通知領域、1060 システムプログラム、1062 一時データ領域、1064 データ領域、1402 構成設定、1404 プログラムコード、2060,2560,3060 パラメータ、4060 OS、4062 サポートプログラム、4841,4842 部分プロジェクト。

Claims (11)

  1.  複数のデバイスを有する制御システムにおいて利用されるサポート装置であって、
     前記複数のデバイスを動作させるために必要な情報を含むプロジェクトから、前記複数のデバイスの各々に格納すべきデータを生成するデータ生成部と、
     前記複数のデバイスのうち同一のグループに属するデバイスの選択を受付ける選択受付部と、
     ユーザ操作に応答して、前記同一のグループに属するデバイスの各々に対して、前記データ生成部により生成された各デバイスに対応するデータを転送するデータ転送部と、
     前記同一のグループに属するすべてのデバイスに対するデータの転送が成功した後、各デバイスに対する当該転送されたデータに反映を指示するデータ管理部とを備える、サポート装置。
  2.  前記データ管理部は、前記同一のグループに属するいずれかのデバイスに対するデータの転送が失敗すると、当該同一のグループに属するすべてのデバイスを、データを転送する前の状態に戻す、請求項1に記載のサポート装置。
  3.  前記デバイスの各々は、処理に用いられるデータを格納するための第1のデータ領域と、前記データ転送部から転送されるデータを一時的に格納するための第2のデータ領域とを有しており、
     前記データ管理部は、前記同一のグループに属する各デバイスに対して、前記第2のデータ領域に格納されているデータを前記第1のデータ領域に反映するように指示する、請求項1または2に記載のサポート装置。
  4.  前記データ管理部は、前記同一のグループに属するいずれかのデバイスに対するデータの転送が失敗すると、前記同一のグループに属する各デバイスに対して、前記第2のデータ領域に格納されているデータを削除するように指示する、請求項3に記載のサポート装置。
  5.  データの転送前に、前記同一のグループに属する各デバイスに格納されているデータを取得してバックアップデータとして保持するデータ保持部をさらに備え、
     前記データ管理部は、前記同一のグループに属するいずれかのデバイスに対するデータの転送が失敗すると、前記バックアップデータを前記同一のグループに属する各デバイスに戻す、請求項2に記載のサポート装置。
  6.  前記データ管理部は、予め定められた設定に従って、前記同一のグループに属するデバイスのうちデータの転送が成功したデバイスのみに対して、当該転送されたデータに反映を指示することが可能になっている、請求項1~5のいずれか1項に記載のサポート装置。
  7.  前記データ転送部から転送されるデータは、前記デバイスで実行される制御プログラムと、前記デバイスの動作に必要なパラメータとを含み、
     前記データ転送部は、前記制御プログラムの転送後に、前記パラメータを転送する、請求項1~6のいずれか1項に記載のサポート装置。
  8.  前記デバイスは、制御装置と前記制御装置に接続される周辺装置とを含み、
     前記データ転送部は、前記制御プログラムを前記制御装置に転送した後に、前記制御装置を介して前記周辺装置に前記パラメータを転送する、請求項7に記載のサポート装置。
  9.  ユーザ操作に応答して、前記同一のグループに属するデバイスの各々から、各デバイスに格納されているデータを取得して前記プロジェクトの内容を更新するデータ取得処理部をさらに備える、請求項1~8のいずれか1項に記載のサポート装置。
  10.  複数のデバイスを有する制御システムにおいて利用されるコンピュータで実行されるサポートプログラムであって、前記サポートプログラムはコンピュータに
     前記複数のデバイスを動作させるために必要な情報を含むプロジェクトから、前記複数のデバイスの各々に格納すべきデータを生成するステップと、
     前記複数のデバイスのうち同一のグループに属するデバイスの選択を受付けるステップと、
     ユーザ操作に応答して、前記同一のグループに属するデバイスの各々に対して、前記生成された各デバイスに対応するデータを転送するステップと、
     前記同一のグループに属するすべてのデバイスに対するデータの転送が成功した後、各デバイスに対する当該転送されたデータに反映を指示するステップとを実行させる、サポートプログラム。
  11.  複数のデバイスと、
     前記複数のデバイスに接続可能なサポート装置とを備え、
     前記サポート装置は、
      前記複数のデバイスを動作させるために必要な情報を含むプロジェクトから、前記複数のデバイスの各々に格納すべきデータを生成するデータ生成部と、
      前記複数のデバイスのうち同一のグループに属するデバイスの選択を受付ける選択受付部と、
      ユーザ操作に応答して、前記同一のグループに属するデバイスの各々に対して、前記データ生成部により生成された各デバイスに対応するデータを転送するデータ転送部と、
      前記同一のグループに属するすべてのデバイスに対するデータの転送が成功した後、各デバイスに対する当該転送されたデータに反映を指示するデータ管理部とを備える、制御システム。
PCT/JP2019/030837 2018-08-13 2019-08-06 サポート装置、サポートプログラム、制御システム WO2020036094A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018152231A JP7091928B2 (ja) 2018-08-13 2018-08-13 サポート装置、サポートプログラム、制御システム
JP2018-152231 2018-08-13

Publications (1)

Publication Number Publication Date
WO2020036094A1 true WO2020036094A1 (ja) 2020-02-20

Family

ID=69525400

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/030837 WO2020036094A1 (ja) 2018-08-13 2019-08-06 サポート装置、サポートプログラム、制御システム

Country Status (2)

Country Link
JP (1) JP7091928B2 (ja)
WO (1) WO2020036094A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001325010A (ja) * 2000-05-12 2001-11-22 Omron Corp プログラマブルコントローラシステム
JP2005100028A (ja) * 2003-09-24 2005-04-14 Fuji Electric Fa Components & Systems Co Ltd プログラマブルコントローラ
JP2015176369A (ja) * 2014-03-14 2015-10-05 オムロン株式会社 制御装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001325010A (ja) * 2000-05-12 2001-11-22 Omron Corp プログラマブルコントローラシステム
JP2005100028A (ja) * 2003-09-24 2005-04-14 Fuji Electric Fa Components & Systems Co Ltd プログラマブルコントローラ
JP2015176369A (ja) * 2014-03-14 2015-10-05 オムロン株式会社 制御装置

Also Published As

Publication number Publication date
JP7091928B2 (ja) 2022-06-28
JP2020027460A (ja) 2020-02-20

Similar Documents

Publication Publication Date Title
CN110768833B (zh) 基于kubernetes的应用编排部署方法及装置
JP5298763B2 (ja) 仮想システム制御プログラム、方法及び装置
JP5244430B2 (ja) ストレージ装置及びその制御方法
US9122734B2 (en) Transparent data service suitable for modifying data storage capabilities in applications
JP2020095547A (ja) コンテナ提供支援システムおよびコンテナ提供支援方法
CN106605217B (zh) 用于将应用从一个站点移动到另一站点的方法和系统
WO2011072716A1 (en) A method of updating versioned software using a shared cache
WO2014128920A1 (ja) システム開発装置、方法およびプログラム
WO2020036094A1 (ja) サポート装置、サポートプログラム、制御システム
JP2006127001A (ja) 業務システムの運用方法、運用管理システムおよび運用プログラム
WO2022030402A1 (ja) 制御装置およびプログラム
JP4784754B2 (ja) 制御システム設定装置
WO2020179581A1 (ja) 制御装置およびソフトウェアのデプロイ方法
JP4790283B2 (ja) ストレージサブシステム及びストレージシステム
CH706996A1 (en) Operating unit with applications for operating production systems.
JP5403691B2 (ja) 仮想マシンのデプロイ方法およびデプロイ実行プログラムとデプロイ実行装置
JP2020205488A (ja) 情報処理装置、方法およびプログラム
JP6467298B2 (ja) サーバ運用作業履歴管理装置、システム、方法、およびプログラム
JP6405972B2 (ja) 動作検証装置、動作検証方法及び動作検証プログラム
WO2024011627A1 (zh) 大数据集群部署方法以及基于大数据集群的数据处理方法
JP7238334B2 (ja) 環境構築システム、管理装置、環境構築方法、およびプログラム
WO2023275926A1 (ja) コンテナ基盤クラスタのアップデート制御方法、コンテナ基盤クラスタアップデートシステム、アップデート制御装置、および、アップデート制御プログラム
JP2017004332A (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
JP6762452B1 (ja) 情報処理装置、バックアップ方法、リストア方法およびプログラム
JP2020177286A (ja) 情報処理装置、情報処理方法及びプログラム

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19850699

Country of ref document: EP

Kind code of ref document: A1