WO2019176755A1 - ネットワークシステム - Google Patents

ネットワークシステム Download PDF

Info

Publication number
WO2019176755A1
WO2019176755A1 PCT/JP2019/009240 JP2019009240W WO2019176755A1 WO 2019176755 A1 WO2019176755 A1 WO 2019176755A1 JP 2019009240 W JP2019009240 W JP 2019009240W WO 2019176755 A1 WO2019176755 A1 WO 2019176755A1
Authority
WO
WIPO (PCT)
Prior art keywords
plc
processing
master device
period
network system
Prior art date
Application number
PCT/JP2019/009240
Other languages
English (en)
French (fr)
Inventor
豊 田原
Original Assignee
オムロン株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オムロン株式会社 filed Critical オムロン株式会社
Priority to CN201980004229.3A priority Critical patent/CN111052683B/zh
Priority to US16/644,973 priority patent/US11374788B2/en
Priority to EP19766839.5A priority patent/EP3767893A4/en
Publication of WO2019176755A1 publication Critical patent/WO2019176755A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/056Programming the PLC
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L12/40143Bus networks involving priority mechanisms
    • H04L12/4015Bus networks involving priority mechanisms by scheduling the transmission of messages at the communication node
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/052Linking several PLC's
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/05Programmable logic controllers, e.g. simulating logic interconnections of signals according to ladder diagrams or function charts
    • G05B19/054Input/output
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5017Task decomposition
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/4026Bus for use in automation systems

Definitions

  • the present invention relates to a network system.
  • Patent Document 1 describes a technique for efficiently constructing a controller system in which one application program is divided into a plurality of divided programs and distributed to a plurality of controllers with a small burden.
  • PLC programmable logic controller
  • the present invention provides a mechanism that does not require network division or new design work in order to distribute the load even when there is a processing load exceeding the performance of the existing master device.
  • One aspect of the present invention is a process for receiving data from a first slave device for each period, a process for executing a part of a first process for the received data according to prior allocation, A process of transmitting data corresponding to the remainder of the first process to the outside according to prior allocation and receiving a result corresponding to the remainder of the first process; A first master device that executes a process corresponding to the first process, and a result corresponding to the remainder of the first process for the data received from the first master device within the period.
  • data is transmitted between the second master device to the first master device and between the first slave device and the first master device. Transmit A first network, a network system and a second network for transmitting data between the first master device and the second master device.
  • FIG. 1 is a diagram illustrating a configuration example of a network system 1A (hereinafter referred to as “network system 1A”) before expansion.
  • the network system 1A is assumed to be used in the field of process automation, the field of factory automation, the field of motion control, etc. that require real-time responsiveness and high durability for communication between nodes.
  • the network system 1A shown in FIG. 1 includes two industrial networks that are independent of each other.
  • independent means that two industrial networks are separated.
  • Industrial network is a generic term for networks used for the process automation, factory automation, motion control, etc. described above.
  • one of the two industrial networks is referred to as a first industrial network 10A, and the other is referred to as a second industrial network 10B.
  • the first industrial network 10A is composed of a plurality of devices 11A to be controlled and managed and a communication cable 11C connecting them.
  • the device 11A is, for example, a motor, an actuator, an input / output device that inputs or outputs a signal or data, various sensors, a sensor communication unit, an inverter, a servo, or the like.
  • the first industrial network 10A is provided with two branch slaves 12A, and a plurality of devices 11A are connected in series to each branch slave 12A.
  • a plurality of devices 11A corresponding to each line are connected to each other through a communication cable 11C.
  • a PLC 20A Connected to the first industrial network 10A is a PLC 20A that executes data transmission to each device 11A, reception of data from each device 11A, and processing of data received from each device 11A in time sequence. Has been.
  • the PLC 20A is used for controlling the device 11A and collecting information generated by the device 11A.
  • PLC 20A operates as a master device for device 11A. Note that the device 11A operates as a slave device for the PLC 20A.
  • the first industrial network 10A has one master device.
  • the second industrial network 10B is also composed of a plurality of devices 11B to be controlled and managed and a communication cable 11C connecting them.
  • the second industrial network 10B in FIG. 1 is configured by connecting a plurality of devices 11B in series on a single line.
  • the device 11B is also, for example, a motor, an actuator, an input / output device that inputs or outputs signals and data, various sensors, a sensor communication unit, an inverter, a servo, and the like.
  • the device 11B here is daisy chain connected.
  • a PLC 20B Connected to the second industrial network 10B is a PLC 20B that executes data transmission to each device 11B, reception of data from each device 11B, and processing of data received from each device 11B in time sequence. Has been.
  • the PLC 20B is also used for controlling the device 11B and collecting information generated by the device 11B.
  • PLC 20B operates as a master device for device 11B.
  • the device 11B operates as a slave device for the PLC 20B.
  • the first industrial network 10A is an example of a first network
  • the second industrial network 10B is an example of a second network.
  • the PLC 20A is an example of a first master device, and the PLC 20B is an example of a second master device.
  • the device 11A is an example of a first slave device, and the device 11B is an example of a second slave device.
  • the physical network configuration and logical network configuration (topology) of the first industrial network 10A and the second industrial network 10B are arbitrary, and are not limited to the configuration of FIG.
  • the types and number of devices 11A and 11B constituting the first industrial network 10A and the second industrial network 10B are also arbitrary.
  • EtherCAT registered trademark
  • EtherCAT registered trademark
  • Ethernet for Control Automation Technology which is an example of industrial Ethernet
  • the connection using EtherCAT ensures synchronization between the control cycle of the PLC 20A and the communication cycle on the first industrial network 10A. In addition, synchronization between the control period of the PLC 20B and the communication period on the second industrial network 10B is guaranteed.
  • PLC20A which operate
  • the device 11A operating as a slave device executes reading of data addressed to the own device included in the received frame and writing of data generated after passing the previous frame. That is, each device 11A exchanges each data at the moment when the frame passes through its own device. This operation is called on-the-fly.
  • a maximum of 65535 devices 11A can be connected to the first industrial network 10A.
  • FIG. 2 is a diagram for explaining an example of the hardware configuration of the PLCs 20A and 20B.
  • the PLC 20A will be described as a representative.
  • the PLC 20A includes an arithmetic processor (CPU: Central Processing Unit) 21, a system program memory 22, a user program memory 23, a parameter memory 24, a work memory 25, an input / output memory (I / O memory) 26, a communication interface (communication I / F). ) 27, an input / output interface (input / output I / F) 28, and the like.
  • CPU Central Processing Unit
  • I / O memory input / output memory
  • I / F communication interface
  • I / output I / F input / output interface
  • the arithmetic processor 21 controls the entire operation of the PLC 20A through the execution of the system program and the user program.
  • the system program memory 22 is a memory that stores system programs.
  • the user program memory 23 is a memory that stores a user program created by the user (in this case, an execution program of the PLC 20A).
  • the parameter memory 24 is a memory that stores various parameters used in various calculations and processes in the PLC 20A.
  • Work memory 25 is a memory that temporarily stores data used in various calculations and processes.
  • the input / output memory (I / O memory) 26 is a memory used for reference or rewriting as a substitute for information input / output through execution of a program.
  • the input / output memory 26 also stores parameters for each program block.
  • the communication interface 27 includes, for example, a communication port used for connection with the first industrial network 10A, a communication port used for connection with another controller (management computer or other PLC), and the like. .
  • EtherCAT having a communication band of about 200M is used for communication between the PLC 20A and the first industrial network 10A.
  • EtherNet / IP registered trademark
  • Communication with the management computer may be asynchronous and the communication speed need not be high.
  • the input / output interface 28 includes a communication port used for connection with an input device or an output device.
  • FIG. 3 is a diagram for explaining an example of a control sequence executed by the PLC 20A and the PLC 20B.
  • Processes executed by the PLC 20A are distinguished by the difference in cycle (cycle) assigned to the execution of the processes.
  • cycle the task with the shortest cycle
  • reference task Other tasks are called fixed-cycle tasks.
  • the period of the fixed period task is given by a constant multiple (2 times, 3 times%) Of the period of the reference task (reference period).
  • the reference task is assigned to a task having the strictest requirement for response time from data input to output (in other words, the fastest processing is required).
  • the constant multiple task is used for a task having a sufficient response time compared to the reference task.
  • the fixed cycle task with a smaller constant value has a shorter cycle length.
  • the periodic task whose constant is “1” corresponds to the reference task.
  • a priority is set between tasks, and a shorter cycle is assigned as the priority is higher. Therefore, the reference task is the task with the highest priority.
  • FIG. 3 in addition to the reference task, fifth, sixteenth, and seventeenth periodic tasks with execution priorities and system services are shown.
  • the PLC 20A in the present embodiment executes these multiple tasks in parallel. That is, the PLC 20A executes multitask processing. One or more tasks are assigned to control and management of each device 11A (see FIG. 1).
  • each task starts when the execution condition is met. Some periodic tasks are triggered by the start or completion of other tasks. As shown in FIG. 3, each task includes a period (IO) for transmitting / receiving data to / from each device 11A, a period (UPG) for processing data received from each device 11A through execution of a user program, and a motion And a control execution period (MC). Among these, in a motion control execution period (MC), an instruction from a motion control command included in the user program is executed.
  • IO is an abbreviation for an I / O refresh period to be described later.
  • FIG. 4 is a diagram for explaining a configuration example of tasks.
  • one task is composed of an I / O refresh period 31 and a control processing period 32 in order from the head side.
  • I / O refresh period 31 in order from the head side, output data processing 31A prepared for data transmission by the communication interface 27 (see FIG. 2) and data transmission from the communication interface 27 to the first industrial network 10A.
  • the control processing period 32 includes, in order from the top, a first system common process 32A, a user program (UPG) execution 32B, a motion control (MC) 32C, and a second system common process 32D. Is done.
  • FIG. 5 is a diagram illustrating a configuration example of the network system 1B after expansion (hereinafter referred to as “network system 1B”).
  • FIG. 5 reference numerals corresponding to those in FIG. 1 are attached.
  • the difference between the network system 1B and the network system 1A (see FIG. 1) is that in the network system 1B, the number of lines in the first industrial network 10A is larger than the number of lines in the network system 1A (see FIG. 1). It is. In FIG. 5, the added line portion is indicated by a thick broken line.
  • the PLC 20A needs a computing capability for controlling the added device 11A and the branch slave 12A.
  • the PLC 20A needs memory resources necessary for storing these programs.
  • “Insufficient memory resources” means that the capacity for storing a program used for controlling the device 11A is insufficient.
  • the performance (calculation capability and memory resources) of the PLC 20A that is insufficient for the control of the first industrial network 10A after the expansion is used to control the second industrial network 10B.
  • Adopting a mechanism that assists with the existing PLC 20B.
  • the PLC 20A that controls the first industrial network 10A is referred to as a main PLC
  • the PLC 20B that controls the second industrial network 10B is referred to as an auxiliary PLC.
  • the first condition is that the PLC 20B has sufficient computing power.
  • the PLC 20B needs to control the second industrial network 10B, and cannot operate as an auxiliary PLC if this control is hindered.
  • the second condition is that the remaining capacity of the computing capacity is larger than the computing capacity required for the processing to be performed (part exceeding the computing capacity of the PLC 20A).
  • the PLC 20B has insufficient computing capability, further setting of the auxiliary PLC is considered.
  • the PLC 20A as the main PLC and the PLC 20B as the auxiliary PLC are connected through the high-speed / synchronous network 30.
  • the high-speed / synchronous network 30 uses, for example, the TSN standard that is being standardized by an IEEE 802.1 TSN (Time Sensitive Networking) task group.
  • the TSN standard can realize communication with a bandwidth of, for example, 1 Gbit / second or more and synchronization between nodes (that is, between PLCs) within several tens of nanoseconds.
  • the high speed / synchronization network 30 synchronizes the control cycle of the main PLC (PLC 20A) with the control cycle of the auxiliary PLC (PLC 20B) and the communication cycle.
  • sequence control such as ladder, motion axis control, safety control, and robot control are assumed as a part of processing exceeding the computing capability of the PLC 20A.
  • the partial processing may be a part of the arithmetic processing of the image analysis algorithm as long as it is a unit of arithmetic processing that can be divided.
  • FIG. 6 is a diagram for explaining an example of the relationship between the control sequence of the main PLC and the control sequence of the auxiliary PLC.
  • a period during which data required for the process substituted by the auxiliary PLC is transmitted to the auxiliary PLC (input data transmission 50) and a period during which the result of the process substituted by the auxiliary PLC is received from the auxiliary PLC (process) Result reception 51) is placed in the same task.
  • the main PLC can reflect the processing result (including the processing result in the auxiliary PLC) on the data received in a certain cycle (Nth cycle) in the transmission of the next cycle (N + 1th cycle).
  • the timing for executing the transmission of data to the auxiliary PLC may be performed after the reception of data required for the processing performed by the auxiliary PLC. Therefore, the place where the input data transmission 50 is arranged is not limited to after the IO refresh period (IO processing) 31.
  • the input data transmission 50 can be arranged so as to overlap with the IO refresh period (IO processing) 31.
  • the input data transmission 50 can be arranged so as to overlap with the control processing period 32.
  • a period 52 corresponding to a part of the user program (UPG) execution 32B (see FIG. 4) and the motion control (MC) execution 32C (see FIG. 4) is arranged.
  • This period 52 is arranged when there is a user program (UPG) or motion control (MC) that uses the result of processing performed by the auxiliary PLC.
  • the user program (UPG) and the motion control (MC) that require the result of the processing that the auxiliary PLC performs are suspended until the corresponding processing result is received.
  • the period 52 need not be arranged. For this reason, in FIG. 6, the period 52 is indicated by a broken line.
  • control sequence of the auxiliary PLC includes a period for receiving data from the main PLC (input data reception 60), execution of a substitute user program (UPG process 61), execution of substitute motion control (MC process 62), A period (process result transmission 63) for transmitting the results of these processes to the main PLC.
  • each period is not always continuous.
  • the input data reception 60 and user program execution may be separated in time.
  • the motion control execution (MC process 62) and the process result transmission 63 may be separated in time.
  • FIG. 7 is a diagram illustrating an example of a system configuration used in preparation for using the existing PLC 20A as a main PLC and using another existing PLC 20B as an auxiliary PLC.
  • the PLC 20A and the PLC 20B are connected to a computer 40.
  • a process for determining a control sequence used in each PLC is executed through a load simulation described later.
  • the computer 40 also executes a process of downloading the determined control sequence to the PLCs 20A and 20B.
  • the computer 40 may be a general-purpose computer or a PLC.
  • the computer 40 here is an example of a management apparatus.
  • Information required for preparation is taken into the computer 40 through the setting computer 41 and the database 42 on the cloud.
  • the information necessary for preparation includes, for example, the performance on the hardware of the PLCs 20A and 20B, the contents of the control processing executed by the PLCs 20A and 20B, and the configurations of the first industrial network 10A and the second industrial network 10B. The conditions that each control should satisfy.
  • the computer 40 gives load information to the load simulator (program), executes a load simulation, and downloads setting information (control sequence, program, etc.) 43 and 44 to each of the PLC 20A and PLC 20B.
  • Information 43 is for the main PLC
  • information 44 is for the auxiliary PLC.
  • FIG. 8 is a flowchart for explaining an example of a work operation executed in the preparation process.
  • the user operates the computer 40 (see FIG. 7) to execute the load simulator, and determines settings for substituting part of the processing of the main PLC by the auxiliary PLC (step 1). Details of this operation will be described later.
  • the user synchronously connects the PLC 20B operating as the auxiliary PLC to the PLC 20A operating as the main PLC via the high-speed / synchronous network 30 (see FIG. 5) (step 3).
  • the user operates the computer 40 to download the determined settings to the PLC 20A that operates as the main PLC and the PLC 20B that operates as the auxiliary PLC, respectively (step 4).
  • the user When the download is completed, the user performs a test run of the network system 1B (step 5). When the trial operation is successful, the user switches the network system 1B to the main operation (step 6).
  • FIG. 9 is a flowchart for explaining the processing operation of the load simulator executed for determining the setting for substituting a part of the processing of the main PLC by the auxiliary PLC.
  • the load simulator accepts designation of a PLC to be used as an auxiliary PLC (step 11).
  • the load simulator allocates a part of the control process of the main PLC to the auxiliary PLC (step 12).
  • Examples of assignment targets include a user program, motion control calculation processing, safety control processing, and image analysis processing.
  • the processing assigned is randomly determined.
  • the allocation here may be a unit that can be divided and may be a part of the processing.
  • the synchronization setting is the same as before the expansion.
  • the load simulator sets the control sequence of the main PLC (step 13). Specifically, the control period of the main PLC and the communication timing of the high-speed / synchronous network 30 (see FIG. 5) are set.
  • the load simulator calculates the processing time of the control task in the main PLC (step 14).
  • the load simulator determines whether or not the processing time is within the task cycle (step 15).
  • step 15 If a negative result is obtained in step 15, the load simulator returns to step 12 and changes a part of the control process assigned to the auxiliary PLC. This change is repeated until a positive result is obtained in step 15.
  • the load simulator sets the control sequence of the auxiliary PLC (step 16). Specifically, the control period of the auxiliary PLC and the communication timing of the high-speed / synchronous network 30 (see FIG. 5) are set.
  • the main PLC uses the processing result of the auxiliary PLC for calculation (when the processing 52 in FIG. 6 is present), it is also confirmed whether the setting of the control cycle of the auxiliary PLC falls within the control cycle of the main PLC.
  • the synchronization setting is the same as before the expansion.
  • the load simulator calculates the processing time of the control task in the auxiliary PLC (step 17).
  • the load simulator determines whether or not the processing time is within the task cycle (step 18).
  • step 18 the load simulator ends a series of processes.
  • the control sequence of the main PLC and the control sequence of the auxiliary PLC are determined.
  • the control sequence includes determination of processing executed in each PLC.
  • step 18 the load simulator adds another auxiliary PLC (step 19), and then returns to step 16. At this time, a control process that can be undertaken within a range in which the first auxiliary PLC satisfies the task cycle is determined, and the remaining auxiliary PLC is assigned to the additional auxiliary PLC. In addition, you may look for the auxiliary PLC which can share the control process of main PLC.
  • FIG. 10 is a diagram for explaining an example of the relationship between the control sequence of the main PLC (PLC 20A) and the control sequence of the auxiliary PLC (PLC 20B) constituting the network system 1B after expansion (see FIG. 5).
  • two types of tasks are executed in the main PLC, and one type of task (reference task) is executed in the auxiliary PLC.
  • one type of task is executed in the auxiliary PLC. Note that the illustrated tasks are a part of tasks executed by the main PLC and the auxiliary PLC.
  • auxiliary PLC a part of the processing of the periodic task (non-reference task) executed by the main PLC is assigned to the auxiliary PLC.
  • user program processing UPG processing
  • motion control processing MC processing executed immediately after the IO refresh period (IO processing) in each task of the main PLC are examples of the first processing.
  • user program processing UPG processing
  • motion control processing MC processing
  • IO refresh period IO processing
  • the task period of the fixed-cycle task that distributes a part of the process is twice the reference period.
  • the time length of the reference period is common to the main PLC and the auxiliary PLC. Accordingly, the auxiliary PLC receives data from the main PLC at a rate of once every two reference cycles. That is, the substitution of processing is executed at a rate of once every two reference cycles.
  • the auxiliary PLC executes proxy processing 60 to 63 (see FIG. 6) after completing the task processing as the master device in the reference cycle in which the data is received. Further, the main PLC receives the processing result within the same task period.
  • the main PLC does not interfere with the control of the first industrial network 10A (see FIG. 5) while basically maintaining the control sequence before adding the line.
  • the auxiliary PLC can complete the reference task within the reference period, including the process of acting. For this reason, no trouble occurs in the control of the second industrial network 10B (see FIG. 5) by the auxiliary PLC.
  • the auxiliary PLC in FIG. 10 can execute communication as a master device and communication with the main PLC independently. For this reason, even if the auxiliary PLC receives data from the main PLC during the IO refresh period (IO processing) of the slave device, the auxiliary PLC operates without any problem.
  • the processing result notification may be received from the auxiliary PLC. This is because the processing time of the periodic task varies. Has occurred. Incidentally, the fluctuation of the processing time of the periodic task occurs due to the lower priority than the reference task.
  • the computer receives the processing result from the auxiliary PLC and executes the user program (UPG) or motion control (MC) using the processing result within one task cycle.
  • UPG user program
  • MC motion control
  • 40 determines the control sequence.
  • the computer 40 may calculate the expected variation in processing time, or the user may instruct the computer 40 in advance.
  • the first industrial network 10A need not be divided into a plurality of parts. Therefore, between the plurality of PLC devices operating as masters in the work of changing the installed network and the divided network. Design work to synchronize control is not required.
  • control sequence shown in FIG. 10 represents a case where the result of the process performed by the auxiliary PLC is not used in the user program (UPG) or motion control (MC) of the main PLC. For this reason, the result of the process is received from the auxiliary PLC after the task by the main PLC is completed.
  • UPG user program
  • MC motion control
  • auxiliary PLC when it is necessary to use the result of the processing performed by the auxiliary PLC in the user program (UPG) or motion control (MC) of the main PLC, after receiving data from the auxiliary PLC (reception period 51 ( After (see FIG. 6), a period 52 (see FIG. 6) for executing the user program (UPG) and the motion control (MC) for the process substituting for the auxiliary PLC may be provided.
  • FIG. 11 is a diagram for explaining another configuration example of the network system 1C after extension (hereinafter referred to as “network system 1C”).
  • FIG. 11 shows the parts corresponding to those in FIG.
  • FIG. 11 also shows the addition of a line to the first industrial network 10A. Accordingly, the PLC 20A that operates as a master device of the first industrial network 10A is used as the main PLC.
  • the feature of this embodiment is that an existing PLC is not used as an auxiliary PLC. For this reason, in FIG. 11, the network is not connected to the PLC 20C used as the auxiliary PLC.
  • FIG. 12 is a diagram for explaining an example of the relationship between the control sequence of the main PLC (PLC 20A) and the control sequence of the auxiliary PLC (PLC 20C) constituting the network system 1C after expansion (see FIG. 11).
  • the task period corresponding to the fixed period task is twice the reference period.
  • the main PLC only a part of tasks executed by the main PLC is shown.
  • both a part of the process of the reference task executed by the main PLC and a part of the process of the fixed-cycle task (non-reference task) are assigned to one auxiliary PLC.
  • the auxiliary PLC executes part of the processing of the reference task to be executed with priority over part of the processing of the periodic task. It is also possible to execute part of the reference task and part of the periodic task in parallel.
  • the notification of the result of the partial task of the reference task may be performed so that the execution of the reference task is not hindered. It only needs to be executed so as not to hinder the execution of the periodic task.
  • FIG. 13 is a diagram for explaining an example of the relationship between the control sequence of the main PLC (PLC 20A) and the control sequences of two auxiliary PLCs (PLCs 20C1 and 20C2) constituting the network system 1C after expansion (see FIG. 11). is there.
  • control sequence shown in FIG. 13 is different from the above-described operation example in that two auxiliary PLCs are prepared.
  • the task period corresponding to the fixed period task is twice the reference period. Note that FIG. 13 shows only a part of tasks executed by the main PLC.
  • a part of the process of the reference task executed by the main PLC is assigned to the PLC 20C1
  • a part of the process of the fixed period task (non-reference task) is assigned to the PLC 20C2.
  • the performance required for each of the PLC 20C1 and the PLC 20C2 operating as the auxiliary PLC is lower than when one auxiliary PLC is used. For this reason, the existing facilities can be effectively used.
  • auxiliary PLC may be shared.
  • a part of processing of one task is shared by one auxiliary PLC, but a part of processing of one task may be shared by a plurality of auxiliary PLCs.
  • a part of processing in two tasks having different task cycles (that is, a reference task and a fixed cycle task) is assigned to different auxiliary PLCs, but in a plurality of tasks having the same task cycle.
  • a part of the processing may be assigned to different auxiliary PLCs.
  • Aspect 1 of the present invention includes a process for receiving data from the first slave device for each period, a process for executing a part of the first process for the received data according to prior allocation, A process of transmitting data corresponding to the remainder of the first process to the outside according to prior allocation and receiving a result corresponding to the remainder of the first process; A first master device that executes a process corresponding to the first process, and a result corresponding to the remainder of the first process for the data received from the first master device within the period.
  • data is transmitted between the second master device to the first master device and between the first slave device and the first master device.
  • To transmit And network a network system and a second network for transmitting data between the first master device and the second master device.
  • the network system according to aspect 2 of the present invention is the network system according to aspect 1, in which the second master device receives data from the second slave device and executes the second processing, and the second slave device. Using the idle time during which data transmission processing is not executed, data reception from the first master device, processing corresponding to the remainder of the first processing, and the first processing A configuration for executing transmission of the result corresponding to the remainder of the first to the first master device.
  • the network system according to aspect 3 of the present invention may have a configuration in the above aspect 1 or 2, in which the period has a length that is a constant multiple of a reference period.
  • the process executed by the second master device as the remainder of the first process includes a plurality of processes having different cycle lengths.
  • a configuration may be provided.
  • each of a plurality of processes having the same period length is assigned to a different second master device. May be provided.
  • the network system according to aspect 6 of the present invention is configured such that, in the above aspect 1 or 2, when a plurality of the second master devices are used, each of the plurality of second master devices executes a process with a different period length. May be provided.
  • the network system according to aspect 7 of the present invention has a configuration in which, in the above aspect 1 or 2, when a plurality of the second master devices are used, each of the plurality of second master devices executes processing corresponding to a different task. You may have.
  • the network system according to aspect 8 of the present invention is the network system according to aspect 2, in which the second master device performs the execution of the second process and the execution of the process corresponding to the rest of the first process. You may provide the structure to perform in.
  • the network system according to aspect 9 of the present invention is the network system according to aspect 1 or 2, wherein the first master device receives the result corresponding to the rest of the first processing from the second master device.
  • a configuration may be provided in which processing using the result among the processing of one is interrupted.
  • the network system according to aspect 10 of the present invention is the network system according to aspect 1, wherein the operation schedules of the first master device and the second master device are set so that the first processing is within a corresponding period. You may provide the structure which further has an apparatus.
  • the network system according to aspect 11 of the present invention is the network system according to aspect 2, in which the first process is performed so that the first process is within a corresponding period and the second process is also within a corresponding period.
  • the processing capability of the existing second master device can be effectively utilized.
  • a plurality of processes corresponding to a plurality of cycles can be shared by a single second master device.
  • a plurality of processes corresponding to one cycle can be distributed to a plurality of second master devices.
  • a plurality of processes corresponding to a plurality of cycles can be distributed to a plurality of second master devices.
  • execution of different tasks can be shared by a plurality of second master devices.
  • the second master device can share a part of the first processing in the first master device while keeping the existing processing schedule portion of the second master device as it is.
  • the processing operation can be accommodated within one cycle.
  • network division and new design work can be dispensed with.

Abstract

ネットワークシステムは、周期毎に、第1のスレーブ装置からデータを受信する処理と、受信したデータを対象とする第1の処理のうちの一部を事前の割り当てに従い実行する処理と、第1の処理の残りに対応するデータを事前の割り当てに従い外部に送信するとともに第1の処理の残りに対応する結果を受信する処理と、第1のスレーブ装置に対して第1の処理に対応する結果を送信する処理と、を実行する第1のマスタ装置と、第1のマスタ装置から受信したデータに対する第1の処理の残りに対応する結果を、周期内の第1の処理に割り当てられた期間が終了する前に、第1のマスタ装置に送信する第2のマスタ装置と、第1のスレーブ装置と第1のマスタ装置の間でデータを伝送する第1のネットワークと、第1のマスタ装置と第2のマスタ装置の間でデータを伝送する第2のネットワークとを有する。

Description

ネットワークシステム
 本発明は、ネットワークシステムに関する。
 特許文献1には、1つのアプリケーションプログラムを複数の分割プログラムに分割して複数のコントローラに分散するコントローラシステムを効率よく、かつ、少ない負担で構築するための技術が記載されている。
日本国公開特許公報「特開2001-325011号公報」
 ネットワークシステムの運用中には、システムの変更や増設が必要になることがある。例えば既設のネットワークシステムを増設する場合、その管理に使用されるプログラマブルロジックコントローラ(以下「PLC」という)のハードウェア上の能力が不足することがある。このような場合、一般には、性能がより高いPLCへの変更やネットワークシステムの分割が行われる。
 ただし、その場合には、新たな設備投資が必要となり、分割後の各ネットワークシステムの通信の周期とこれらネットワークシステムを制御する複数のPLCの制御の周期を相互に同期させるための設計作業が必要になる。
 本発明は、既設のマスタ装置の性能を超える処理の負荷があった場合でも、負荷を分散させるために、ネットワークの分割や新たな設計作業が不要な仕組みを提供する。
 本発明の一態様は、周期毎に、第1のスレーブ装置からデータを受信する処理と、受信したデータを対象とする第1の処理のうちの一部を事前の割り当てに従い実行する処理と、当該第1の処理の残りに対応するデータを事前の割り当てに従い外部に送信するとともに当該第1の処理の残りに対応する結果を受信する処理と、当該第1のスレーブ装置に対して当該第1の処理に対応する結果を送信する処理と、を実行する第1のマスタ装置と、前記第1のマスタ装置から受信したデータに対する前記第1の処理の残りに対応する前記結果を、前記周期内の前記第1の処理に割り当てられた期間が終了する前に、当該第1のマスタ装置に送信する第2のマスタ装置と、前記第1のスレーブ装置と前記第1のマスタ装置の間でデータを伝送する第1のネットワークと、前記第1のマスタ装置と前記第2のマスタ装置の間でデータを伝送する第2のネットワークとを有するネットワークシステムである。
 上記本発明の一態様によれば、既設のマスタ装置の性能を超える処理の負荷があった場合でも、負荷を分散させるために、ネットワークの分割や新たな設計作業を不要にできる。
増設前のネットワークシステムの構成例を示す図である。 PLCのハードウェア構成の例を説明する図である。 PLCで実行される制御シーケンスの一例を説明する図である。 タスクの構成例を説明する図である。 増設後のネットワークシステムの構成例を説明する図である。 主PLCの制御シーケンスと補助PLCの制御シーケンスの関係の一例を説明する図である。 既設のPLCを主PLCとし、既設の他のPLCを補助PLCとして利用するための事前準備の際に使用するシステム構成の一例を示す図である。 事前準備の過程で実行される作業動作の一例を説明するフローチャートである。 主PLCの処理の一部を補助PLCで代行させるための設定を決定するために実行する負荷シミュレータの処理動作を説明するフローチャートである。 増設後のネットワークシステムを構成する主PLCの制御シーケンスと補助PLCの制御シーケンスとの関係の一例を説明する図である。 増設後のネットワークシステムの他の構成例を説明する図である。 増設後のネットワークシステムを構成する主PLCの制御シーケンスと補助PLCの制御シーケンスとの関係の一例を説明する図である。 増設後のネットワークシステムを構成する主PLCの制御シーケンスと2台の補助PLCの制御シーケンスとの関係の一例を説明する図である。
 以下、添付図面を参照して、本発明の実施の形態について詳細に説明する。
 <実施の形態1>
 <増設前のネットワークシステムの構成例>
 図1は、増設前のネットワークシステム1A(以下「ネットワークシステム1A」という)の構成例を示す図である。
 ネットワークシステム1Aは、ノード間の通信に、リアルタイムでの応答性や高い耐久性が要求されるプロセスオートメーションの分野、ファクトリーオートメーションの分野、モーションコントロールの分野等での使用を想定する。
 図1に示すネットワークシステム1Aは、互いに独立した2つの産業用ネットワークによって構成されている。本実施の形態の場合、独立したとは、2つの産業用ネットワークが分離していることをいう。
 産業用ネットワークは、前述したプロセスオートメーション、ファクトリーオートメーション、モーションコントロール等に用いられるネットワークの総称である。
 ここでは、2つの産業用ネットワークのうちの一方を第1の産業用ネットワーク10Aと呼び、他方を第2の産業用ネットワーク10Bと呼ぶ。
 第1の産業用ネットワーク10Aは、制御や管理の対象である複数のデバイス11Aとそれらを接続する通信ケーブル11Cとで構成される。デバイス11Aは、例えばモータ、アクチュエータ、信号やデータを入力又は出力する入出力機器、各種のセンサ、センサ通信ユニット、インバータ、サーボ等である。
 第1の産業用ネットワーク10Aには、分岐スレーブ12Aが2つ設けられており、個々の分岐スレーブ12Aには複数のデバイス11Aが直列に接続されている。各ラインに対応する複数のデバイス11Aは、通信ケーブル11Cを通じて互いに接続されている。第1の産業用ネットワーク10Aを複数のラインに分割することで、デバイス11Aに故障が生じた場合でも、故障の影響が及ぶ範囲を限定することができる。
 第1の産業用ネットワーク10Aには、個々のデバイス11Aに対するデータの送信と、個々のデバイス11Aからのデータの受信と、各デバイス11Aから受信したデータの処理とを時間順次に実行するPLC20Aが接続されている。
 換言すると、PLC20Aは、デバイス11Aの制御やデバイス11Aで発生される情報の収集に用いられる。
 PLC20Aは、デバイス11Aに対するマスタ装置として動作する。なお、デバイス11AはPLC20Aに対するスレーブ装置として動作する。
 図1に示すように、第1の産業用ネットワーク10Aのマスタ装置は1つである。
 第2の産業用ネットワーク10Bも、制御や管理の対象である複数のデバイス11Bとそれらを接続する通信ケーブル11Cとで構成される。
 ただし、図1における第2の産業用ネットワーク10Bは、単一のライン上に複数のデバイス11Bを直列に接続して構成される。
 デバイス11Bも、例えばモータ、アクチュエータ、信号やデータを入力又は出力する入出力機器、各種のセンサ、センサ通信ユニット、インバータ、サーボ等である。ここでのデバイス11Bは、デイジーチェーン接続されている。
 第2の産業用ネットワーク10Bには、個々のデバイス11Bに対するデータの送信と、個々のデバイス11Bからのデータの受信と、各デバイス11Bから受信したデータの処理とを時間順次に実行するPLC20Bが接続されている。PLC20Bも、デバイス11Bの制御やデバイス11Bで発生される情報の収集に用いられる。
 PLC20Bは、デバイス11Bに対するマスタ装置として動作する。なお、デバイス11BはPLC20Bに対するスレーブ装置として動作する。
 図1に示すように、第2の産業用ネットワーク10Bのマスタ装置は1つである。
 第1の産業用ネットワーク10Aは、第1のネットワークの一例であり、第2の産業用ネットワーク10Bは、第2のネットワークの一例である。
 また、PLC20Aは、第1のマスタ装置の一例であり、PLC20Bは、第2のマスタ装置の一例である。
 また、デバイス11Aは、第1のスレーブ装置の一例であり、デバイス11Bは、第2のスレーブ装置の一例である。
 なお、第1の産業用ネットワーク10Aと第2の産業用ネットワーク10Bの物理的なネットワーク構成や論理的なネットワーク構成(トポロジー)は任意であり、図1の構成に限らない。
 第1の産業用ネットワーク10Aと第2の産業用ネットワーク10Bを構成するデバイス11A及び11Bの種類や個数も任意である。
 第1の産業用ネットワーク10A上での通信と第2の産業用ネットワーク10B上での通信には、例えば産業用イーサネットの一例であるEtherCAT(登録商標)(Ethernet for Control Automation Technology)を使用する。
 EtherCATを用いた接続により、PLC20Aによる制御の周期と第1の産業用ネットワーク10A上における通信の周期との同期が確保される。また、PLC20Bによる制御の周期と第2の産業用ネットワーク10B上における通信の周期との同期が保証される。
 マスタ装置として動作するPLC20Aは、1つのフレームを用い、個々のスレーブ(デバイス11A)に対して生成されたデータを送信する。
 一方、スレーブ装置として動作するデバイス11Aは、受信したフレームに含まれる自機を宛先とするデータの読み出しと、前フレームの通過後に発生したデータの書き込みを実行する。すなわち、各デバイス11Aは、フレームが自機を通過する瞬間にそれぞれのデータを交換する。この動作はオンザフライと呼ばれる。
 第1の産業用ネットワーク10A上では、例えば全二重通信方式でデータが伝送され、200(=2×100)Mビット/sの帯域幅での通信が可能である。例えば100個のノードに分散した1000点のデジタルI/Oを30μsで更新できる。また、第1の産業用ネットワーク10Aに接続された複数のデバイス11Aの時刻を1μs以内で同期させることができる。
 規格上、第1の産業用ネットワーク10Aには、最大で65535台のデバイス11Aを接続することができる。
 第2の産業用ネットワーク10Bを構成するPLC20B及びデバイス11Bについても同様である。
 図2は、PLC20A及び20Bのハードウェア構成の例を説明する図である。
 以下では、代表して、PLC20Aについて説明する。
 PLC20Aは、演算プロセッサ(CPU:Central Processing Unit)21、システムプログラムメモリ22、ユーザプログラムメモリ23、パラメータメモリ24、ワークメモリ25、入出力メモリ(I/Oメモリ)26、通信インタフェース(通信I/F)27、入出力インタフェース(入出力I/F)28等により構成されている。
 演算プロセッサ21は、システムプログラムやユーザプログラムの実行を通じてPLC20Aの動作の全体を制御する。
 システムプログラムメモリ22は、システムプログラムを記憶するメモリである。
 ユーザプログラムメモリ23は、ユーザが作成したユーザプログラム(ここではPLC20Aの実行プログラム)を記憶するメモリである。
 パラメータメモリ24は、PLC20Aにおける各種の演算や処理で使用する各種のパラメータを記憶するメモリである。
 ワークメモリ25は、各種の演算や処理で使用するデータを一時的に記憶するメモリである。
 入出力メモリ(I/Oメモリ)26は、プログラムの実行を通じて入出力される情報の代用として参照や書き換えに用いられるメモリである。入出力メモリ26には、プログラムブロック毎のパラメータも格納される。
 通信インタフェース27は、例えば第1の産業用ネットワーク10Aとの接続に使用される通信ポート、他のコントローラ(管理用のコンピュータや他のPLC)との接続に使用される通信ポートなどで構成される。
 本実施の形態の場合、PLC20Aと第1の産業用ネットワーク10Aとの通信には、約200Mの通信帯域を有するEtherCATを使用する。
 PLC20Aと管理用のコンピュータとの通信には、例えば産業用のオープンネットワークであるEtherNet/IP(登録商標)を使用する。管理用のコンピュータとの通信は、非同期でよく、通信速度も高速である必要はない。
 入出力インタフェース28は、入力装置や出力装置との接続に使用される通信ポートで構成される。
 図3は、PLC20A及びPLC20Bで実行される制御シーケンスの一例を説明する図である。
 以下では、制御シーケンスの代表例としてPLC20Aの動作を説明する。
 PLC20Aで実行される処理(以下「タスク」という)は、処理の実行に割り当てられる周期(サイクル)の違いにより区別される。本実施の形態では、周期が最短のタスクを基準タスクという。他のタスクは、定周期タスクという。定周期タスクの周期は、基準タスクの周期(基準周期)の定数倍(2倍、3倍…)で与えられる。
 従って、基準タスクは、データの入力から出力までの応答時間に求められる要求が最も厳しい(換言すると、最も速い処理が要求される)タスクに割り当てられる。一方、定数倍タスクは、基準タスクに比して応答時間に余裕があるタスクに使用される。勿論、定数倍の値が小さい定周期タスクほど、周期の長さは短くなる。因みに定数が「1」の定周期タスクが基準タスクにあたる。
 本実施の形態では、タスク間に優先度が設定されており、優先度が高いほど短い周期が割り当てられる。従って、基準タスクは最も優先度が高いタスクである。図3には、基準タスクの他に、実行優先度が5番目、16番目、17番目の定周期タスクと、システムサービスとを表している。
 本実施の形態におけるPLC20Aは、これら複数のタスクを並列に実行する。すなわち、PLC20Aは、マルチタスク処理を実行する。各デバイス11A(図1参照)の制御や管理には、1つまたは複数のタスクが割り当てられる。
 各タスクは、実行条件の成立により開始される。定周期タスクの一部は、他のタスクの開始や完了をトリガとする。図3に示すように、各タスクは、各デバイス11Aとの間でデータを送受信する期間(IO)と、各デバイス11Aから受信したデータをユーザプログラムの実行を通じて処理する期間(UPG)と、モーション制御の実行期間(MC)とで構成される。このうち、モーション制御の実行期間(MC)では、ユーザプログラムに含まれるモーション制御命令からの指示が実行される。なお、IOは、後述するI/Oリフレッシュ期間の略である。
 図4は、タスクの構成例を説明する図である。
 図4に示すように、1つのタスクは、先頭側から順番に、I/Oリフレッシュ期間31と制御処理期間32の2つで構成される。
 I/Oリフレッシュ期間31は、先頭側から順番に、通信インタフェース27(図2参照)によるデータの送信に備える出力データ処理31Aと、通信インタフェース27から第1の産業用ネットワーク10Aへのデータの送信と第1の産業用ネットワーク10Aからのデータの受信とを実行するリフレッシュ実行31Bと、各タスクの実行に関する条件式との一致の判定や通信インタフェース27から受信したデータの取り込み等を実行する入力データ処理31Cとで構成される。
 制御処理期間32は、先頭側から順番に、1つ目のシステム共通処理32Aと、ユーザプログラム(UPG)実行32Bと、モーション制御(MC)32Cと、2つ目のシステム共通処理32Dとで構成される。
 システム共通処理では、自己診断(例えば故障の検知など)が実行される。
<増設後のネットワークシステムの構成>
 図5は、増設後のネットワークシステム1B(以下「ネットワークシステム1B」という)の構成例を説明する図である。
 図5には、図1と対応する部分に対応する符号を付している。
 ネットワークシステム1Bがネットワークシステム1A(図1参照)と異なる点は、ネットワークシステム1Bでは、第1の産業用ネットワーク10Aのライン数がネットワークシステム1A(図1参照)のライン数よりも増えている点である。図5では、増設されたライン部分を太枠の破線で示している。
 PLC20Aには、増設前のデバイス11A及び分岐スレーブ12Aに加え、増設されたデバイス11Aや分岐スレーブ12Aを制御するための演算能力が必要になる。
 また、新たなプログラムの追加やプログラムの更新に伴ってプログラムの格納に必要なデータサイズが増加する場合には、PLC20Aに、これらのプログラムの記憶に必要なメモリ資源が必要になる。
 ここでは、既設のPLC20Aのメモリ資源や演算能力の余力が、増設されたデバイス11A等の制御に必要なメモリ資源や演算能力を充足しない場合を想定する。
 メモリ資源の不足とは、デバイス11Aの制御に使用するプログラムを記憶するための容量が不足することをいう。
 演算能力の不足とは、対応する周期(サイクル)内にタスク(IOリフレッシュ、共通処理、プログラム実行処理、周辺サービス処理など)が終わらないことをいう。
 このため、本実施の形態では、増設後の第1の産業用ネットワーク10Aの制御に不足するPLC20Aの性能(演算能力やメモリ資源)を、第2の産業用ネットワーク10Bを制御するために使用される既設のPLC20Bで補助する仕組みを採用する。
 本実施の形態では、第1の産業用ネットワーク10Aを制御するPLC20Aを主PLCと呼び、第2の産業用ネットワーク10Bを制御するPLC20Bを補助PLCと呼ぶ。
 ただし、既設のPLC20Bを補助PLCとして使用するには、満たすべき条件がある。
 条件の1つ目は、PLC20Bの演算能力に余力があることである。PLC20Bは、第2の産業用ネットワーク10Bを制御する必要があり、この制御に支障が及ぶようでは、補助PLCとして動作させることはできない。
 条件の2つ目は、演算能力の余力が、代行する処理(PLC20Aの演算能力を超える部分)に要求される演算能力よりも大きいことである。なお、PLC20Bだけでは演算能力が不足する場合には、更なる補助PLCの設定を検討する。
 本実施の形態の場合、主PLCとしてのPLC20Aと補助PLCとしてのPLC20Bとは、高速/同期ネットワーク30を通じて接続される。
 ここでの高速/同期ネットワーク30には、例えばIEEE802.1のTSN(Time Sensitive Networking)タスクグループによって規格化が進められているTSN規格を使用する。TSN規格は、例えば1Gビット/秒以上の帯域幅での通信と、数十ナノ秒以内でのノード間(すなわち、PLC間)の同期とを実現できる。
 すなわち、高速/同期ネットワーク30は、主PLC(PLC20A)における制御の周期と補助PLC(PLC20B)の制御の周期と通信の周期とを互いに同期させる。
 本実施の形態では、PLC20Aの演算能力を超える一部分の処理として、例えばラダー等のシーケンス制御、モーション軸制御、安全制御、ロボット制御を想定する。
 もっとも、一部分の処理は、プログラムの全体である必要はない。例えば一部分の処理は、分割可能な演算処理の単位であれば、画像解析アルゴリズムの演算処理の一部でもよい。
 図6は、主PLCの制御シーケンスと補助PLCの制御シーケンスの関係の一例を説明する図である。
 主PLCの制御シーケンスでは、補助PLCが代行する処理で必要になるデータを補助PLCに送信する期間(入力データ送信50)と、補助PLCが代行した処理の結果を補助PLCから受信する期間(処理結果受信51)とが、同じタスク内に配置される。
 換言すると、主PLCは、ある周期(第N周期)に受信したデータに対する処理の結果(補助PLCでの処理の結果を含む)を次の周期(第N+1周期)の送信に反映することができる。
 ここで、補助PLCへのデータの送信(入力データ送信50)を実行するタイミングは、補助PLCが代行する処理で必要とされるデータの受信後に行われればよい。従って、入力データ送信50を配置する場所は、IOリフレッシュ期間(IO処理)31の後に限らない。例えばIOリフレッシュ期間(IO処理)31と重複するように、入力データ送信50を配置することも可能である。また例えば制御処理期間32と重複するように、入力データ送信50を配置することも可能である。
 ただし、主PLCにおけるIOリフレッシュ期間(IO処理)31や補助PLCにおけるIOリフレッシュ期間(不図示)の処理に影響しないことが前提となる。影響が及ぶと、デバイス11A及び11Bとのデータの送受信が正しく行われなくなる。
 図6の場合、処理結果受信51の後に、ユーザプログラム(UPG)実行32B(図4参照)とモーション制御(MC)実行32C(図4参照)の一部に対応する期間52が配置されている。この期間52は、補助PLCが代行した処理の結果を利用するユーザプログラム(UPG)やモーション制御(MC)がある場合に配置される。換言すると、補助PLCが代行する処理の結果を必要とするユーザプログラム(UPG)やモーション制御(MC)は、対応する処理の結果が受信されるまで中断される。
 従って、補助PLCが代行した処理の結果をそのまま次の周期(第N+1周期)の送信に用いることができる場合には、期間52を配置する必要はない。このため、図6では、期間52を破線で示している。
 一方、補助PLCの制御シーケンスは、主PLCからのデータを受信する期間(入力データ受信60)と、代行するユーザプログラム実行(UPG処理61)と、代行するモーション制御実行(MC処理62)と、これらの処理の結果を主PLCに送信する期間(処理結果送信63)とを有している。
 これらの処理は、補助PLCが優先的に実行すべきデバイス11B(図5参照)の制御に用いられていない期間を利用して実行される。従って、各期間は連続しているとは限らない。例えば入力データ受信60とユーザプログラム実行(UPG処理61)とは時間的に離れていてもよい。また、モーション制御実行(MC処理62)と処理結果送信63とは時間的に離れていてもよい。
 なお、分担する処理によっては、ユーザプログラム実行(UPG処理61)及びモーション制御実行(MC処理62)のうち一方だけが実行されてもよい。
 <事前準備>
 続いて、増設後の第1の産業用ネットワーク10A(図5参照)の運用を開始する前に実行する事前準備について説明する。
 図7は、既設のPLC20Aを主PLCとし、既設の他のPLC20Bを補助PLCとして利用するための事前準備の際に使用するシステム構成の一例を示す図である。
 図7に示すように、PLC20AとPLC20Bは、コンピュータ40に接続されている。
 コンピュータ40では、後述する負荷シミュレーションを通じて各PLCで使用する制御シーケンスを決定する処理が実行される。
 また、コンピュータ40では、決定された制御シーケンスをPLC20A及び20Bにダウンロードする処理も実行される。
 コンピュータ40は、汎用のコンピュータでもよいし、PLCであってもよい。ここでのコンピュータ40は、管理装置の一例である。
 事前準備に必要な情報は、設定用のコンピュータ41やクラウド上のデータベース42を通じてコンピュータ40に取り込まれる。
 ここで、事前準備に必要な情報は、例えばPLC20A及び20Bのハードウェア上の性能、PLC20A及び20Bで実行させる制御処理の内容、第1の産業用ネットワーク10Aと第2の産業用ネットワーク10Bの構成、個々の制御が満たすべき条件などである。
 コンピュータ40は、負荷シミュレータ(プログラム)に取り込んだ情報を与えて負荷シミュレーションを実行し、PLC20AとPLC20Bのそれぞれに対して設定の情報(制御シーケンスやプログラム等)43及び44をダウンロードする。情報43は主PLC用であり、情報44は補助PLC用である。
 図8は、事前準備の過程で実行される作業動作の一例を説明するフローチャートである。
 まず、ユーザは、コンピュータ40(図7参照)を操作して負荷シミュレータを実行させ、主PLCの処理の一部を補助PLCで代行させるための設定を決定する(ステップ1)。この動作の詳細については後述する。
 設定が決定すると、ユーザは、ネットワークシステム1B(図5参照)を停止させる(ステップ2)。具体的には、主PLCとして動作させるPLC20A(図5参照)が制御する第1の産業用ネットワーク10A(図5参照)と、補助PLCとして動作させるPLC20B(図5参照)が制御する第2の産業用ネットワーク10B(図5参照)が停止される。
 この後、ユーザは、補助PLCとして動作させるPLC20Bを、高速/同期ネットワーク30(図5参照)を介して、主PLCとして動作させるPLC20Aに同期接続する(ステップ3)。
 次に、ユーザは、コンピュータ40を操作して、決定した設定を主PLCとして動作するPLC20Aと補助PLCとして動作するPLC20Bにそれぞれダウンロードする(ステップ4)。
 ダウンロードが終了すると、ユーザは、ネットワークシステム1Bの試運転を実行する(ステップ5)。試運転に成功すると、ユーザは、ネットワークシステム1Bを本運転に切り替える(ステップ6)。
 図9は、主PLCの処理の一部を補助PLCで代行させるための設定を決定するために実行する負荷シミュレータの処理動作を説明するフローチャートである。
 まず、負荷シミュレータは、補助PLCとして使用するPLCの指定を受け付ける(ステップ11)。
 次に、負荷シミュレータは、主PLCの制御処理の一部を補助PLCに割り当てる(ステップ12)。割り当ての対象には、例えばユーザプログラム、モーション制御演算処理、安全制御処理、画像解析処理などがある。割り当てられる処理は無作為に決定される。ここでの割り当ては、分割可能な単位であればよく、処理の一部でよい。なお、同期設定は、増設前と同じである。
 次に、負荷シミュレータは、主PLCの制御シーケンスを設定する(ステップ13)。具体的には、主PLCの制御周期と、高速/同期ネットワーク30(図5参照)の通信タイミングとが設定される。
 続いて、負荷シミュレータは、主PLCにおける制御タスクの処理時間を計算する(ステップ14)。
 処理時間が計算されると、負荷シミュレータは、処理時間がタスク周期内に収まるか否かを判定する(ステップ15)。
 ステップ15で否定結果が得られた場合、負荷シミュレータは、ステップ12に戻り、補助PLCに割り当てる制御処理の一部を変更する。この変更は、ステップ15で肯定結果が得られるまで繰り返される。
 ステップ15で肯定結果が得られると、負荷シミュレータは、補助PLCの制御シーケンスを設定する(ステップ16)。具体的には、補助PLCの制御周期と、高速/同期ネットワーク30(図5参照)の通信タイミングとが設定される。
 ここで、補助PLCの処理結果を主PLCが演算に使用する場合(図6の処理52がある場合)には、補助PLCの制御周期の設定が主PLCの制御周期に収まるかについても確認される。なお、同期設定は、増設前と同じである。
 続いて、負荷シミュレータは、補助PLCにおける制御タスクの処理時間を計算する(ステップ17)。
 処理時間が計算されると、負荷シミュレータは、処理時間がタスク周期内に収まるか否かを判定する(ステップ18)。
 ステップ18で肯定結果が得られた場合、負荷シミュレータは、一連の処理を終了する。この場合、主PLCの制御シーケンスと補助PLCの制御シーケンスが決定される。制御シーケンスには、各PLCで実行される処理の決定も含まれる。
 ステップ18で否定結果が得られた場合、負荷シミュレータは、別の補助PLCを追加し(ステップ19)、その後、ステップ16に戻る。この際、1つ目の補助PLCがタスク周期を満たす範囲で引き受け可能な制御処理が決定され、残りを追加する補助PLCに割り当てる。なお、主PLCの制御処理を分担できる補助PLCを探してもよい。
 <動作例>
 図10は、増設後のネットワークシステム1B(図5参照)を構成する主PLC(PLC20A)の制御シーケンスと補助PLC(PLC20B)の制御シーケンスの関係の一例を説明する図である。
 図10の場合、主PLCでは、2種類のタスク(基準タスクと定周期タスク)が実行され、補助PLCでは、1種類のタスク(基準タスク)が実行されている。なお、図示しているタスクは、主PLCと補助PLCで実行されるタスクの一部である。
 また、図10の場合、主PLCで実行される定周期タスク(非基準タスク)の処理の一部を、補助PLCに割り当てている。
 ここで、主PLCの個々のタスクにおけるIOリフレッシュ期間(IO処理)の直後に実行されるユーザプログラム処理(UPG処理)とモーション制御処理(MC処理)は第1の処理の一例である。
 また、補助PLCのタスク内のうちIOリフレッシュ期間(IO処理)の直後に配置されるユーザプログラム処理(UPG処理)とモーション制御処理(MC処理)は第2の処理の一例である。
 この例の場合、処理の一部を分散する定周期タスクのタスク周期は、基準周期の2倍である。基準周期の時間長は、主PLCと補助PLCと共通である。従って、補助PLCは、基準周期の2回に1回の割合で主PLCからデータを受信する。すなわち、処理の代行は、基準周期の2回に1回の割合で実行される。
 この例の場合、補助PLCは、データを受信した基準周期で、マスタ装置としてのタスク処理を完了した後に、代行する処理60~63(図6参照)を実行している。また、主PLCは、同じタスク周期内に、処理の結果を受信している。
 このため、主PLCは、ラインを増設する前の制御シーケンスを基本的に維持したまま、第1の産業用ネットワーク10A(図5参照)の制御に支障は生じない。
 また、補助PLCも、代行する処理を含め、基準タスクを基準周期内に完了できる。このため、補助PLCによる第2の産業用ネットワーク10B(図5参照)の制御に支障は生じない。
 なお、図10における補助PLCは、マスタ装置としての通信と主PLCとの通信とを独立に実行できるものとする。このため、補助PLCがスレーブ装置のIOリフレッシュ期間(IO処理)に、主PLCからデータを受信しても補助PLCは支障なく動作する。
 また、図10では、主PLCにおける定周期タスクの実行が完了した後に、補助PLCから処理結果の通知を受信している場合があるが、これは、定周期タスクの処理時間が変動するために生じている。因みに、定周期タスクの処理時間の変動は、基準タスクよりも優先順位が低いことで発生する。
 このような変動があっても、補助PLCからの処理結果の受信や処理結果を利用したユーザプログラム(UPG)やモーション制御(MC)の実行が、1つのタスク周期内に完了するように、コンピュータ40(図7参照)は、制御シーケンスを決定する。想定される処理時間の変動分は、コンピュータ40が計算してもよいし、ユーザが予めコンピュータ40に指示してもよい。
 このように、本実施の形態では、第1の産業用ネットワーク10A(図5参照)のマスタ装置として、増設前に比して性能(メモリ容量や演算能力)が高いPLCを新たに用意せずにすむ。すなわち、追加の設備投資が不要になる。
 また、本実施の形態の場合、第1の産業用ネットワーク10Aを複数に分割せずに済むので、敷設されたネットワークを変更する作業、分割後のネットワークでマスタとして動作する複数のPLC装置間で制御を同期させるための設計作業が不要になる。
 なお、本実施の形態でも、事前に、主PLCのどの処理を補助PLCに代行させるかを決定する処理が必要になる。しかし、この処理自体は、図9を用いて説明したように、コンピュータ40が実行する。
 因みに、図10に示す制御シーケンスは、補助PLCで代行される処理の結果を、主PLCのユーザプログラム(UPG)やモーション制御(MC)で利用しない場合について表している。このため、主PLCによるタスクの終了後に補助PLCから処理の結果が受信されている。
 なお、補助PLCで代行される処理の結果を主PLCのユーザプログラム(UPG)やモーション制御(MC)で利用する必要がある場合には、補助PLCからのデータを受信した後(受信期間51(図6参照)の後)に、補助PLCで代行する処理をユーザプログラム(UPG)やモーション制御(MC)を実行する期間52(図6参照)を設ければよい。
 <実施の形態2>
 <ネットワークシステムの構成>
 図11は、増設後のネットワークシステム1C(以下「ネットワークシステム1C」という)の他の構成例を説明する図である。
 図11には、図5との対応部分に対応する符号を付して示している。
 図11も、第1の産業用ネットワーク10Aにラインが増設されている。従って、第1の産業用ネットワーク10Aのマスタ装置として動作するPLC20Aが主PLCとして使用される。
 この実施の形態の特徴は、補助PLCとして既設のPLCを用いない点である。このため、図11では、補助PLCとして用いられるPLC20Cにネットワークが接続されていない。
 すなわち、実施の形態2では、補助PLC専用のPLC20Cを新たに追加する場合について説明する。
 <動作例>
 図12は、増設後のネットワークシステム1C(図11参照)を構成する主PLC(PLC20A)の制御シーケンスと補助PLC(PLC20C)の制御シーケンスとの関係の一例を説明する図である。
 図12の場合、主PLCでは、2種類のタスク(基準タスクと定周期タスク)が実行されているが、補助PLCにはタスクは実行されていない。
 図12の場合も、定周期タスクに対応するタスク周期は、基準周期の2倍である。なお、図12では、主PLCで実行されるタスクの一部のみを表している。
 図12の場合、主PLCで実行される基準タスクの処理の一部と、定周期タスク(非基準タスク)の処理の一部の両方を、1台の補助PLCに割り当てている。
 本実施の形態の場合、補助PLCは、実行する基準タスクの一部の処理を、定周期タスクの一部の処理よりも優先して実行する。なお、基準タスクの一部の処理と定周期タスクの一部の処理を並行に実行することも可能である。
 図12の場合、基準タスクの一部の処理の結果の通知は、基準タスクの実行に支障が生じないように実行されていればよく、定周期タスクの一部の処理の結果の通知は、定周期タスクの実行に支障が生じないように実行されていればよい。
 この動作例の場合、専用の補助PLCを1台で用意すればよいので、追加の配線や制御シーケンスの決定が容易である。
 図13は、増設後のネットワークシステム1C(図11参照)を構成する主PLC(PLC20A)の制御シーケンスと2台の補助PLC(PLC20C1及び20C2)の制御シーケンスとの関係の一例を説明する図である。
 すなわち、図13に示す制御シーケンスは、補助PLCを2台用意する点で前述の動作例と異なっている。
 図13の場合も、主PLCでは、2種類のタスク(基準タスクと定周期タスク)が実行されているが、補助PLCであるPLC20C1とPLC20C2ではタスクが実行されていない。
 図13の場合も、定周期タスクに対応するタスク周期は、基準周期の2倍である。なお、図13では、主PLCで実行されるタスクの一部のみを表している。
 図13の場合、主PLCで実行される基準タスクの処理の一部をPLC20C1に割り当て、定周期タスク(非基準タスク)の処理の一部をPLC20C2に割り当てている。
 この場合、補助PLCとして動作するPLC20C1とPLC20C2のそれぞれに要求される性能は1台の補助PLCを用いる場合よりも低く済む。このため、既存の設備の有効活用が可能になる。
 <他の実施の形態>
 以上、本発明の実施の形態について説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。前述した実施の形態に、種々の変更又は改良を加えたものも、本発明の技術的範囲に含まれることは、特許請求の範囲の記載から明らかである。
 前述の実施の形態1の場合には、定周期タスクの一部の処理を既設の補助PLCに分担させているが、実施の形態2の場合のように、基準タスクの一部の処理を既設の補助PLCに分担させてもよい。
 前述の実施の形態の説明では、1つのタスクの一部の処理を1つの補助PLCに分担させているが、1つのタスクの一部の処理を複数の補助PLCに分担させてもよい。
 前述の実施の形態の説明では、タスク周期が異なる2つのタスク(すなわち基準タスクと定周期タスク)における処理の一部をそれぞれ異なる補助PLCに分担させているが、タスク周期が同じ複数のタスクにおける処理の一部をそれぞれ異なる補助PLCに割り当ててもよい。
 <まとめ>
 本発明の態様1は、周期毎に、第1のスレーブ装置からデータを受信する処理と、受信したデータを対象とする第1の処理のうちの一部を事前の割り当てに従い実行する処理と、当該第1の処理の残りに対応するデータを事前の割り当てに従い外部に送信するとともに当該第1の処理の残りに対応する結果を受信する処理と、当該第1のスレーブ装置に対して当該第1の処理に対応する結果を送信する処理と、を実行する第1のマスタ装置と、前記第1のマスタ装置から受信したデータに対する前記第1の処理の残りに対応する前記結果を、前記周期内の前記第1の処理に割り当てられた期間が終了する前に、当該第1のマスタ装置に送信する第2のマスタ装置と、前記第1のスレーブ装置と前記第1のマスタ装置の間でデータを伝送する第1のネットワークと、前記第1のマスタ装置と前記第2のマスタ装置の間でデータを伝送する第2のネットワークとを有するネットワークシステムである。
 本発明の態様2のネットワークシステムは、上記態様1において、前記第2のマスタ装置は、第2のスレーブ装置からデータを受信して第2の処理を実行する処理と、当該第2のスレーブ装置に対してデータを送信する処理とが実行されない空き時間を利用して、前記第1のマスタ装置からのデータの受信と、前記第1の処理の残りに対応する処理と、当該第1の処理の残りに対応する前記結果の当該第1のマスタ装置への送信とを実行する構成を備えていてもよい。
 本発明の態様3のネットワークシステムは、上記態様1又は2において、前記周期は、基準とする周期に対して定数倍の長さを有する構成を備えていてもよい。
 本発明の態様4のネットワークシステムは、上記態様1又は2において、前記第2のマスタ装置が前記第1の処理の残りとして実行する処理には、周期の長さが異なる複数の処理が含まれる構成を備えていてもよい。
 本発明の態様5のネットワークシステムは、上記態様1又は2において、前記第2のマスタ装置を複数用いる場合、同じ周期の長さを有する複数の処理のそれぞれが、異なる第2のマスタ装置に割り当てられる構成を備えていてもよい。
 本発明の態様6のネットワークシステムは、上記態様1又は2において、前記第2のマスタ装置を複数用いる場合、当該複数の第2のマスタ装置はそれぞれ、周期の長さが異なる処理を実行する構成を備えていてもよい。
 本発明の態様7のネットワークシステムは、上記態様1又は2において、前記第2のマスタ装置を複数用いる場合、当該複数の第2のマスタ装置はそれぞれ、異なるタスクに対応する処理を実行する構成を備えていてもよい。
 本発明の態様8のネットワークシステムは、上記態様2において、前記第2のマスタ装置は、前記第2の処理の実行と、前記第1の処理の残りに対応する処理の実行とを、前記周期内に実行する構成を備えていてもよい。
 本発明の態様9のネットワークシステムは、上記態様1又は2において、前記第1のマスタ装置は、前記第1の処理の残りに対応する結果を前記第2のマスタ装置から受信するまで、前記第1の処理のうち当該結果を利用する処理を中断する構成を備えていてもよい。
 本発明の態様10のネットワークシステムは、上記態様1において、前記第1の処理が対応する周期内に収まるように、前記第1のマスタ装置と前記第2のマスタ装置の動作スケジュールを設定する管理装置を更に有する構成を備えていてもよい。
 本発明の態様11のネットワークシステムは、上記態様2において、前記第1の処理が対応する周期内に収まり、かつ、前記第2の処理についても対応する周期内に収まるように、前記第1のマスタ装置と前記第2のマスタ装置の動作スケジュールを設定する管理装置を更に有する構成を備えていてもよい。
 本発明の態様1によれば、既設のマスタ装置の性能を超える処理の負荷があった場合でも、負荷を分散させるために、ネットワークの分割や新たな設計作業を不要にできる。
 本発明の態様2によれば、既設の第2のマスタ装置の処理能力を有効に活用できる。
 本発明の態様3によれば、基準とする周期の定数倍の長さを有する周期内に処理すべき第1の処理が増加しても対応する周期内に処理を終わらせることができる。
 本発明の態様4によれば、1台の第2のマスタ装置で複数の周期に対応する複数の処理を分担できる。
 本発明の態様5によれば、複数台の第2のマスタ装置に1つの周期に対応する複数の処理を分散できる。
 本発明の態様6によれば、複数台の第2のマスタ装置に複数の周期に対応する複数の処理を分散できる。
 本発明の態様7によれば、複数台の第2のマスタ装置で異なるタスクの実行を分担できる。
 本発明の態様8によれば、第2のマスタ装置の既存の処理スケジュールの部分はそのままに第1のマスタ装置における第1の処理の一部を第2のマスタ装置で分担できる。
 本発明の態様9によれば、処理の一部を第2のマスタ装置に分担させる場合でも1つの周期内で処理動作を収めることができる。
 本発明の態様10によれば、ネットワークの分割や新たな設計作業を不要にできる。
 本発明の態様11によれば、ネットワークの分割や新たな設計作業を不要にできる。
1A…増設前のネットワークシステム、1B、1C…増設後のネットワークシステム、10A…第1の産業用ネットワーク、10B…第2の産業用ネットワーク、11A、11B…デバイス、11C…通信ケーブル、12A…分岐スレーブ、20A、20B…PLC、30…高速/同期ネットワーク、40…コンピュータ

Claims (11)

  1.  周期毎に、第1のスレーブ装置からデータを受信する処理と、受信したデータを対象とする第1の処理のうちの一部を事前の割り当てに従い実行する処理と、当該第1の処理の残りに対応するデータを事前の割り当てに従い外部に送信するとともに当該第1の処理の残りに対応する結果を受信する処理と、当該第1のスレーブ装置に対して当該第1の処理に対応する結果を送信する処理と、を実行する第1のマスタ装置と、
     前記第1のマスタ装置から受信したデータに対する前記第1の処理の残りに対応する前記結果を、前記周期内の前記第1の処理に割り当てられた期間が終了する前に、当該第1のマスタ装置に送信する第2のマスタ装置と、
     前記第1のスレーブ装置と前記第1のマスタ装置の間でデータを伝送する第1のネットワークと、
     前記第1のマスタ装置と前記第2のマスタ装置の間でデータを伝送する第2のネットワークと
     を有するネットワークシステム。
  2.  前記第2のマスタ装置は、第2のスレーブ装置からデータを受信して第2の処理を実行する処理と、当該第2のスレーブ装置に対してデータを送信する処理とが実行されない空き時間を利用して、前記第1のマスタ装置からのデータの受信と、前記第1の処理の残りに対応する処理と、当該第1の処理の残りに対応する前記結果の当該第1のマスタ装置への送信とを実行する、請求項1に記載のネットワークシステム。
  3.  前記周期は、基準とする周期に対して定数倍の長さを有する、請求項1又は2に記載のネットワークシステム。
  4.  前記第2のマスタ装置が前記第1の処理の残りとして実行する処理には、周期の長さが異なる複数の処理が含まれる、請求項1又は2に記載のネットワークシステム。
  5.  前記第2のマスタ装置を複数用いる場合、同じ周期の長さを有する複数の処理のそれぞれが、異なる第2のマスタ装置に割り当てられる、請求項1又は2に記載のネットワークシステム。
  6.  前記第2のマスタ装置を複数用いる場合、当該複数の第2のマスタ装置はそれぞれ、周期の長さが異なる処理を実行する、請求項1又は2に記載のネットワークシステム。
  7.  前記第2のマスタ装置を複数用いる場合、当該複数の第2のマスタ装置はそれぞれ、異なるタスクに対応する処理を実行する、請求項1又は2に記載のネットワークシステム。
  8.  前記第2のマスタ装置は、前記第2の処理の実行と、前記第1の処理の残りに対応する処理の実行とを、前記周期内に実行する、請求項2に記載のネットワークシステム。
  9.  前記第1のマスタ装置は、前記第1の処理の残りに対応する結果を前記第2のマスタ装置から受信するまで、前記第1の処理のうち当該結果を利用する処理を中断する、請求項1又は2に記載のネットワークシステム。
  10.  前記第1の処理が対応する周期内に収まるように、前記第1のマスタ装置と前記第2のマスタ装置の動作スケジュールを設定する管理装置を更に有する
     請求項1に記載のネットワークシステム。
  11.  前記第1の処理が対応する周期内に収まり、かつ、前記第2の処理についても対応する周期内に収まるように、前記第1のマスタ装置と前記第2のマスタ装置の動作スケジュールを設定する管理装置を更に有する
     請求項2に記載のネットワークシステム。
PCT/JP2019/009240 2018-03-15 2019-03-08 ネットワークシステム WO2019176755A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN201980004229.3A CN111052683B (zh) 2018-03-15 2019-03-08 网络系统
US16/644,973 US11374788B2 (en) 2018-03-15 2019-03-08 Network system having master device carrying out part of a process and slave device carrying out remainder of the process
EP19766839.5A EP3767893A4 (en) 2018-03-15 2019-03-08 NETWORK SYSTEM

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-047601 2018-03-15
JP2018047601A JP6939665B2 (ja) 2018-03-15 2018-03-15 ネットワークシステム

Publications (1)

Publication Number Publication Date
WO2019176755A1 true WO2019176755A1 (ja) 2019-09-19

Family

ID=67908229

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/009240 WO2019176755A1 (ja) 2018-03-15 2019-03-08 ネットワークシステム

Country Status (5)

Country Link
US (1) US11374788B2 (ja)
EP (1) EP3767893A4 (ja)
JP (1) JP6939665B2 (ja)
CN (1) CN111052683B (ja)
WO (1) WO2019176755A1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2024040913A (ja) * 2022-09-13 2024-03-26 キヤノン株式会社 システム、その制御方法およびプログラム

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001325011A (ja) 2000-05-12 2001-11-22 Omron Corp プログラマブルコントローラシステム
WO2010073313A1 (ja) * 2008-12-22 2010-07-01 トヨタ自動車株式会社 車両用電子制御システム、車両用電子制御ユニット、車両用制御同期方法
JP2012194683A (ja) * 2011-03-15 2012-10-11 Omron Corp 制御装置およびシステムプログラム
JP2017168994A (ja) * 2016-03-15 2017-09-21 本田技研工業株式会社 通信装置及び通信システム

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4410661B2 (ja) * 2004-11-09 2010-02-03 株式会社日立製作所 分散制御システム
JP2007164765A (ja) * 2005-11-15 2007-06-28 Matsushita Electric Ind Co Ltd Iicバス通信システム、スレーブ装置およびiicバス通信制御方法
KR20070080307A (ko) * 2006-02-07 2007-08-10 삼성전자주식회사 Cpu의 성능 향상을 위한 버스 구조를 갖는 시스템과성능 향상방법
NZ582897A (en) 2007-08-07 2012-09-28 Ticketmaster L L C Allocating computing resources to authorised requesters based on ranking criteria
CN101919210B (zh) * 2008-02-06 2013-05-29 西门子公司 组主控器通信系统和在自动化技术中进行串行数据传输的通信方法
CN101741885A (zh) * 2008-11-19 2010-06-16 珠海市西山居软件有限公司 分布式系统及分布式系统处理任务流的方法
CN102244913B (zh) * 2010-05-12 2014-11-05 华为技术有限公司 无线网络的多跳路由协作方法及实现装置
JP5682392B2 (ja) * 2011-03-22 2015-03-11 富士通株式会社 情報処理装置、制御装置および異常ユニット判定方法
JP5467610B2 (ja) * 2011-07-26 2014-04-09 パナソニック株式会社 通信装置、通信システム、通信方法、及び通信プログラム
CN102387136A (zh) * 2011-10-10 2012-03-21 深圳中兴网信科技有限公司 一种分布式PPT转换成swf的系统及方法
DE102012010851A1 (de) * 2012-05-31 2013-12-05 Robert Bosch Gmbh Feldbusnetzwerk aufweisend zwei Hauptteilnehmer und wenigstens einen Nebenteilnehmer
CN103577424B (zh) * 2012-07-24 2017-11-07 中兴通讯股份有限公司 分布式数据库视图的实现方法及系统
WO2014086019A1 (en) * 2012-12-06 2014-06-12 Empire Technology Development Llc Decentralizing a hadoop cluster
DE102013002647B3 (de) * 2013-02-15 2014-05-22 Audi Ag Kraftwagen mit einem Fahrzeugkommunikationsbus und Verfahren zum Erzeugen von Busnachrichten
KR101946455B1 (ko) * 2013-03-14 2019-02-11 삼성전자주식회사 시스템 온-칩 및 이의 동작 방법
CN103428217B (zh) * 2013-08-19 2016-05-25 中国航空动力机械研究所 分布式并行计算的作业分配方法及分配系统
JP6233021B2 (ja) * 2013-12-27 2017-11-22 株式会社Ihi 通信分配装置
JP6246606B2 (ja) * 2014-01-31 2017-12-13 株式会社Screenホールディングス 基板処理装置
US10277417B2 (en) * 2014-03-04 2019-04-30 Omron Corporation Control system, control apparatus and control method with input-only communication frame
KR101622516B1 (ko) * 2015-04-20 2016-05-18 엘에스산전 주식회사 데이터 송수신 시스템
CN107025139A (zh) * 2017-03-21 2017-08-08 北京天云融创软件技术有限公司 一种基于云计算的高性能计算调度框架

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001325011A (ja) 2000-05-12 2001-11-22 Omron Corp プログラマブルコントローラシステム
WO2010073313A1 (ja) * 2008-12-22 2010-07-01 トヨタ自動車株式会社 車両用電子制御システム、車両用電子制御ユニット、車両用制御同期方法
JP2012194683A (ja) * 2011-03-15 2012-10-11 Omron Corp 制御装置およびシステムプログラム
JP2017168994A (ja) * 2016-03-15 2017-09-21 本田技研工業株式会社 通信装置及び通信システム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See also references of EP3767893A4

Also Published As

Publication number Publication date
EP3767893A1 (en) 2021-01-20
EP3767893A4 (en) 2021-11-24
CN111052683A (zh) 2020-04-21
CN111052683B (zh) 2021-12-07
JP2019161523A (ja) 2019-09-19
US20210377072A1 (en) 2021-12-02
JP6939665B2 (ja) 2021-09-22
US11374788B2 (en) 2022-06-28

Similar Documents

Publication Publication Date Title
EP3116166B1 (en) Control system, control device, and control method
CN111034128B (zh) 控制系统以及控制装置
US20220147022A1 (en) Control system
EP3089401B1 (en) Control apparatus, development support apparatuses, control method
JP7396393B2 (ja) 制御システム、装置および制御方法
JP2019146060A (ja) 通信システム、通信装置および通信方法
WO2019176755A1 (ja) ネットワークシステム
EP3764175B1 (en) Control device and control system
WO2020054477A1 (ja) 制御システムおよび制御装置
JP7231073B2 (ja) 制御装置および制御システム
WO2022269889A1 (ja) 入力ユニット、制御システム、通信方法及びプログラム
JP7110911B2 (ja) コントローラおよびコントローラの備える通信制御部の制御方法
US20220317665A1 (en) High-availability cloud-based automation solution with optimized transmission times
Puiu et al. The synchronous control of nodes and the message time delays estimation for a CAN network
JP2022138400A (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: 19766839

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

WWE Wipo information: entry into national phase

Ref document number: 2019766839

Country of ref document: EP

ENP Entry into the national phase

Ref document number: 2019766839

Country of ref document: EP

Effective date: 20201015