WO2016189709A1 - コントローラ - Google Patents
コントローラ Download PDFInfo
- Publication number
- WO2016189709A1 WO2016189709A1 PCT/JP2015/065301 JP2015065301W WO2016189709A1 WO 2016189709 A1 WO2016189709 A1 WO 2016189709A1 JP 2015065301 W JP2015065301 W JP 2015065301W WO 2016189709 A1 WO2016189709 A1 WO 2016189709A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- unit
- communication path
- priority
- calculation unit
- data
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/04—Programme control other than numerical control, i.e. in sequence controllers or logic controllers
- G05B19/042—Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
Definitions
- the present invention relates to a factory automation controller.
- a programmable controller (hereinafter referred to as a controller) that integrates control processing and information processing accesses an I / O (Input / Output) memory that stores input / output device information from the control processing bus and the information processing bus.
- I / O Input / Output
- a contention circuit prioritizes access from each bus and arbitrates access contention from each bus.
- Some controllers of FA (Factory Automation) control systems that control industrial equipment and the like have a plurality of arithmetic units that execute instructions using different operating units (OS).
- OS operating units
- instruction data and data obtained as a result of executing the instructions are transmitted and received between the arithmetic units.
- the commands executed in each arithmetic unit include a real-time one that controls the movement of the driving device and a non-real-time one that collects information on the operating state of the driving device.
- the arithmetic unit needs to transmit the real-time instruction data in preference to the non-real-time instruction data.
- Patent Document 1 the priority of the control processing bus is made higher than the priority of the information processing bus with emphasis on time constraints of the control system, but the priority is set on a bus basis. There is no description in Patent Document 1 regarding preferential transmission of real-time command data between arithmetic units.
- the present invention has been made in view of the above, and in the case of providing a plurality of arithmetic units, preferentially transmits real-time instruction data from the arithmetic unit holding the instruction data to another arithmetic unit.
- the aim is to obtain a possible controller.
- the controller of the present invention provides data between the first calculation unit, the second calculation unit, and the first calculation unit and the second calculation unit.
- a plurality of communication paths serving as paths for transmitting and receiving the communication, and a communication path management unit that holds information on the plurality of communication paths.
- the first calculation unit is executed by the storage unit that stores instruction data, which is data of an instruction executed by either the first calculation unit or the second calculation unit, and the second calculation unit.
- a plurality of communication routes based on a priority calculation unit that calculates the priority of the instruction data to be received, information on the priority calculated by the priority calculation unit, and information on the plurality of communication routes held by the communication route management unit
- a communication path selection unit that selects a communication path to be used when command data is transmitted to the second arithmetic unit.
- the controller according to the present invention includes a plurality of calculation units, it has an effect that the command data having real-time property can be preferentially transmitted from the calculation unit holding the command data to other calculation units.
- Block diagram showing a configuration example of FA controller A flowchart showing an operation in which the general-purpose arithmetic unit transmits control command data to the control arithmetic unit based on the priority of the control command data in the FA controller.
- Flow chart showing processing for calculating priority of control command data in the priority calculation unit The figure which shows the example of the information of the communication path which a communication path management part hold
- the flowchart which shows the process which transmits / receives data between the communication path selection part of a general purpose arithmetic part, and the data transmission / reception part of a control arithmetic part.
- FIG. 1 is a block diagram showing a configuration example of an FA controller 1 according to an embodiment of the present invention.
- the FA controller 1 is a controller that controls a control target device 15 such as an industrial device via the communication bus 13 and the module 14.
- a solid line indicates exchange of instruction data in the FA controller 1
- a dotted line indicates exchange of information other than instruction data.
- the FA controller 1 is connected to one module 14 and one control target device 15 via the communication bus 13, but is only an example, and is connected to a plurality of modules 14 and a plurality of control target devices 15. In addition, it is possible to control a plurality of control target devices 15.
- the FA controller 1 is a control command that controls the operation of a general-purpose arithmetic unit 2 that performs a calculation using a general-purpose OS to execute general-purpose command data that is data of a general-purpose command, and a control target device 15 such as an industrial device.
- a control operation unit 3 that performs an operation using a dedicated control OS in order to execute control instruction data, which is
- the general-purpose OS is an OS used in a computer such as a general personal computer, and can be applied to a wide range of uses.
- the control OS is an OS that controls the operation of the control target device 15 such as an industrial device. Although its application is limited, the control target device 15 can be controlled at high speed and with high accuracy by a general-purpose OS.
- the general-purpose arithmetic unit 2 is a first arithmetic unit
- the control arithmetic unit 3 is a second arithmetic unit.
- the FA controller 1 also includes a real-time communication path 4 that is a communication path for transmitting and receiving real-time data, that is, high-priority data, between the general-purpose arithmetic unit 2 and the control arithmetic unit 3, and the general-purpose arithmetic unit 2.
- a non-real-time communication path 5 that is a communication path for transmitting / receiving non-real-time data between the control operation unit 3 and non-real-time data, that is, data having a lower priority than the above-described high-priority data, and a real-time communication path 4
- a communication path management unit 6 that holds information on each communication path of the non-real-time communication path 5.
- control command data real-time data is data with high priority
- non-real-time data is data with low priority
- the general-purpose arithmetic unit 2 and the control arithmetic unit 3 transmit and receive data using the real-time communication path 4 and the non-real-time communication path 5, that is, a plurality of communication paths.
- the general-purpose arithmetic unit 2 transmits control instruction data that cannot be executed by the general-purpose arithmetic unit 2 to the control arithmetic unit 3, and the control arithmetic unit 3 executes the control instruction data received from the general-purpose arithmetic unit 2.
- the general-purpose arithmetic unit 2 transmits data having high real-time priority among the control command data to the control arithmetic unit 3 via the real-time communication path 4, and transmits non-real-time low priority data to the non-real-time communication.
- the data is transmitted to the control calculation unit 3 via the path 5.
- the real-time communication path 4 and the non-real-time communication path 5 are not distinguished, they may be collectively referred to as a communication path.
- the FA controller 1 includes one real-time communication path 4 and one non-real-time communication path 5, but actually includes a plurality of real-time communication paths 4 and non-real-time communication paths 5, respectively. To do.
- the FA controller 1 includes two types of communication paths, but is an example, and may include three or more types of communication paths.
- the display unit 9 When the display unit 9 is connected to the FA controller 1 and calculates the priority of response data based on the result of execution of general-purpose command data or the result of execution of control command data by the FA controller 1, control command data to be described later It is a display that displays the information of the index used for.
- the input unit 10 is an input interface such as a keyboard and a mouse for performing an operation of inputting an index weight to the setting unit 25 described later.
- the terminal device 11 is a computer such as a personal computer, the setting unit 111 has the same configuration as the setting unit 25, the input unit 112 has the same configuration as the input unit 10, and the display unit 113 has the same configuration as the display unit 9.
- the external storage medium 12 is a storage medium such as a USB (Universal Serial Bus) memory.
- the communication bus 13 is a high-speed and large-capacity data communication line that connects the control command execution unit 32 of the control calculation unit 3 and the module 14.
- the communication bus 13 may be accessible from the general-purpose arithmetic unit 2, but in this case, there is a possibility that the time restriction required for FA control cannot be guaranteed. Therefore, control based on control command data related to FA control is performed from the control command execution unit 32.
- the module 14 drives the control target device 15 such as an industrial device in accordance with control from the control command execution unit 32.
- FIG. 1 shows an example in which the FA controller 1 is directly connected to the display unit 9, the input unit 10, the terminal device 11, and the external storage medium 12, but a wired or wireless LAN (Local Area Network) unit 7. May be connected to the network 8 via the network 8 and connected to the display unit 9, the input unit 10, the terminal device 11, and the external storage medium 12 via the network 8.
- the FA controller 1 is connected to the module 14 via the communication bus 13, but may be connected to the network 8 via the LAN unit 7 and connected to the module 14 via the network 8.
- the general-purpose arithmetic unit 2 includes a storage unit 21 that stores instruction data that is data of instructions executed by either the general-purpose arithmetic unit 2 or the control arithmetic unit 3, and instruction data stored in the storage unit 21.
- the general-purpose instruction execution unit 22 that executes general-purpose instruction data executed by the general-purpose operation unit 2 and the priority of control instruction data executed by the control operation unit 3 among the instruction data stored in the storage unit 21
- a communication path selection unit 24 that selects a communication path to be used when transmitting control command data to the control calculation unit 3, and transmits control command data from the selected communication path to the control calculation unit 3, and a priority calculation unit 23
- a plurality of indicators to be used in calculating the priority of the instruction data includes a setting unit 25 for setting a weight for each index, the.
- the control calculation unit 3 is obtained as a result of executing the control command data by executing the control command data received by the data transmission / reception unit 31 and the data transmission / reception unit 31 that transmits / receives data to / from the general-purpose calculation unit 2
- a control command execution unit 32 that generates response data that is response data and outputs the response data to the data transmission / reception unit 31.
- the general-purpose command execution unit 22 and the setting unit 25 of the general-purpose calculation unit 2 are connected to the display unit 9.
- the control command of the control calculation unit 3 is an example.
- the execution unit 32 may be connected to the display unit 9.
- the operation to be executed will be described.
- the storage unit 21 stores general-purpose instruction data such as all applications and programs executed by the general-purpose instruction execution unit 22 of the general-purpose operation unit 2.
- the storage unit 21 stores control instruction data such as an application and a program executed by the control instruction execution unit 32 of the control arithmetic unit 3.
- the instruction data regarding the process in which the general-purpose arithmetic unit 2 and the control arithmetic unit 3 are linked can be stored as general-purpose instruction data and control instruction data.
- the general-purpose arithmetic unit 2 performs an operation of capturing an image in accordance with the general-purpose command data.
- the general-purpose arithmetic unit 2 transmits control command data for changing the output of the control target device 15.
- the general-purpose calculation unit 2 transmits control command data for acquiring operation information of the control target device 15 to the control calculation unit 3,
- the operation information of the control target device 15 is received as response data from the device 15, the operation information of the control target device 15 received according to the general command data is analyzed, and information such as whether the control target device 15 is abnormal is displayed on the display unit 9. There is something to display.
- the general-purpose instruction execution unit 22 is an instruction execution unit that can simultaneously execute an allowable number of general-purpose instruction data for the general-purpose instruction data stored in the storage unit 21.
- the general-purpose instruction execution unit 22 executes general-purpose instruction data using a general-purpose OS.
- the timing at which the general-purpose instruction data is executed in the general-purpose instruction execution unit 22 is, for example, an external device connected at regular intervals according to a timer provided in the general-purpose instruction execution unit 22 or the general-purpose arithmetic unit 2 or directly or via the network 8
- the present invention is not limited to this, but can be triggered by an operation from, or an interrupt notification from the control calculation unit 3 or the like.
- the general-purpose instruction execution unit 22 causes the priority calculation unit 23 to input control instruction data that cannot be executed by the general-purpose instruction execution unit 22 among the instruction data stored in the storage unit 21.
- the general-purpose instruction execution unit 22 may read out from the storage unit 21 and output it to the priority calculation unit 23, or the general-purpose instruction execution unit 22 may calculate the priority.
- the unit 23 may be instructed to read from the storage unit 21.
- the general-purpose instruction execution unit 22 outputs response wait designation information for designating whether to wait for response data from the control calculation unit 3 to the priority calculation unit 23.
- the response wait designation is valid
- the general-purpose instruction execution unit 22 does not execute the next process related to the general-purpose instruction data until the response data is received from the control calculation unit 3.
- the response wait designation is invalid
- the general-purpose command execution unit 22 executes the next general-purpose command data immediately after the process of transmitting the control command data to the control calculation unit 3 is completed.
- the general-purpose instruction execution unit 22 validates the response wait designation when the response data is necessary for the next processing, and invalidates the response wait designation when the response data does not affect the next processing. Thereby, the general-purpose instruction execution unit 22 can shorten the execution time of the general-purpose instruction data.
- the data transmission / reception unit 31 receives the control command data transmitted from the communication path selection unit 24 of the general-purpose calculation unit 2 via the real-time communication path 4 or the non-real-time communication path 5, and receives the received control command.
- Data is output to the control instruction execution unit 32.
- the control command execution unit 32 is a command execution unit that executes control command data acquired from the data transmission / reception unit 31.
- the control command execution unit 32 executes control command data using the control OS.
- the contents controlled by the control command data executed by the control command execution unit 32 are input / output of data to / from the module 14 via the communication bus 13, driving and control of the control target device 15 via the communication bus 13 and the module 14.
- the operation information of the instruction execution unit 32 is acquired and the operation of the control OS is changed when the control instruction data is executed.
- the control command execution unit 32 generates response data that is a result of executing the control command data, and outputs the response data to the data transmission / reception unit 31.
- the data transmission / reception unit 31 transmits the response data input from the control command execution unit 32 to the communication path selection unit 24 of the general-purpose arithmetic unit 2 from the same communication path as that when the control command data is received.
- FIG. 2 is a flowchart illustrating an operation in which the general-purpose arithmetic unit 2 transmits the control command data to the control arithmetic unit 3 based on the priority of the control command data in the FA controller 1 according to the present embodiment.
- the FA controller 1 sets the weight of each index used for the priority calculation of the control command data to the priority calculation unit 23 (step S1).
- the method of setting the weight of each index in the priority calculation unit 23 includes a method of setting from the setting unit 25 inside the general-purpose calculation unit 2, a method of setting from the terminal device 11 connected to the FA controller 1, and connection to the FA controller 1. As an example, a method for setting from the terminal device 11 will be described in detail.
- FIG. 3 is a diagram illustrating an example of information displayed on the display unit 113 when setting the weight of each index used for priority calculation from the terminal device 11 according to the present embodiment. Specifically, a case will be described in which three indicators of an instruction name, an access destination, and an allowable delay time are used as indicators used for priority calculation.
- the terminal unit 11 receives an operation for setting the priority weight from the administrator of the FA control system or the like via the input unit 112, the setting unit 111 sets the priority index as an example of the information illustrated in FIG.
- the screen of the tool 201 is displayed.
- the priority index setting tool 201 includes an instruction type 202 indicating the type of control instruction data, an instruction name 203 of control instruction data that is an index used for priority calculation, and control instruction data that is an index used for priority calculation. Setting to reflect the access destination 204, the allowable delay time 205 of the control command data, which is an index used for priority calculation, and the information on the weight of each set index to the priority calculation unit 23 of the FA controller 1, that is, output The output interface 206 and a setting output interface 207 for reflecting, that is, outputting, the content of the set weight information of each index to the external storage medium 12 are displayed.
- a weight is set for each control command data for the command name 203 to be index 1.
- control command data that requires immediate response or punctuality such as control when the control target device 15 that is the drive device is driven, is used as a high priority weight.
- the control command data such as acquiring information of the module 14 and turning on the LED has a lower priority than the control command data targeted for the driving device, and is therefore weighted with a low priority. Note that the higher the priority, the smaller the weight value, and the lower the priority, the larger the weight value. The same applies to the following.
- the weight is set according to the type of the module 14 targeted by the control command data.
- the target unit of the control command data is a best effort type module such as a module that transmits data to the higher-level monitoring device, a slight delay is allowed, so the weight is set to a low priority.
- the target unit of the control command data is an I / O module of an external device related to the control of the driving device, the weight is set to a high priority.
- the administrator refers to the priority index setting tool 201 displayed on the display unit 113, and sets the weight of each index in the setting unit 111 via the input unit 112 for the control command data.
- the setting unit 111 when “execution” of the setting output interface 206 is operated by the administrator via the input unit 112 in the priority index setting tool 201 displayed on the display unit 113, each setting set by the administrator is performed.
- Information on the weight of the index is output to the priority calculation unit 23 of the FA controller 1.
- the priority calculation unit 23 stores the weight information of each index received from the setting unit 111 in a built-in storage unit.
- the weight information about each control command data is directly output from the terminal device 11 to the priority calculation unit 23 of the FA controller 1
- it can be performed via the external storage medium 12.
- the setting unit 111 when “execution” of the setting output interface 207 is operated by the administrator via the input unit 112 in the priority index setting tool 201 displayed on the display unit 113, each setting set by the administrator is performed. Information on the weight of the index is output to the external storage medium 12.
- the priority calculation unit 23 obtains the weight information for each index from the external storage medium 12. Read and store in the built-in storage unit.
- the FA controller 1 can accept the setting of the weight of each index for each control command data directly from the administrator.
- the setting unit 111 can be replaced with the setting unit 25
- the input unit 112 can be replaced with the input unit 10
- the display unit 113 can be replaced with the display unit 9.
- the administrator can make settings for optimizing the weight of each index for each FA control system to be used. For example, for the FA control system in which monitoring of the control target device 15 is most important, the administrator sets the control command data for reading the state of the control target device 15 as a high priority weight, and sets the other control command data as a low priority. By allowing delay as a weight, it is possible to realize an FA control system that does not delay the main processing. The administrator sets the index weight so as to increase the priority of the control command data to be preferentially processed.
- the priority calculation unit 23 calculates the weights of the plurality of indexes set by the setting unit 111 or the setting unit 25 in detail based on the plurality of indexes.
- the priority of the control command data is calculated using the information or using the weight information of the plurality of indices set by the setting unit 25 and acquired via the external storage medium 12 (step S2).
- the priority calculation process in the priority calculation unit 23 will be described in detail.
- FIG. 4 is a flowchart showing a process of calculating the priority of the control command data in the priority calculation unit 23 according to the present embodiment.
- the priority calculation unit 23 acquires target control command data (step S11). As described above, the priority calculation unit 23 may acquire the target control command data from the storage unit 21 via the general-purpose command execution unit 22 or based on an instruction from the general-purpose command execution unit 22. The priority calculation unit 23 may read out from the storage unit 21. Note that the priority calculation unit 23 acquires from the general-purpose command execution unit 22 information for specifying a response wait for control command data.
- the priority calculation unit 23 reads the weight of each index acquired from the setting unit 111 and stored in the built-in storage unit for the acquired control command data (step S12). Specifically, the priority calculation unit 23 reads the weight for each index of the corresponding instruction name, access destination, and allowable delay time from the contents of the acquired control instruction data.
- the priority calculation unit 23 outputs the control command data, the priority information of the calculated control command data, and the response wait designation information acquired from the general-purpose command execution unit 22 to the communication path selection unit 24 (step S14). .
- the communication path selection unit 24 includes the priority information of the control command data acquired from the priority calculation unit 23 and the communication held by the communication path management unit 6.
- a communication path for transmitting control command data is selected using the path information (step S3).
- FIG. 5 is a diagram showing an example of communication path information held by the communication path management unit 6 according to the present embodiment.
- the communication path management unit 6 is a storage unit that holds information on the transmission time 301, the communicable size 302, the permitted priority 303, the exclusive status 304, and the processing 305 during exclusive use for each communication path.
- the communication path information held by the communication path management unit 6 shown in FIG. 5 can be written and read from both the communication path selection unit 24 of the general-purpose calculation unit 2 and the data transmission / reception unit 31 of the control calculation unit 3.
- the transmission time 301 is a time required for data transmission / reception in the minimum unit between the communication path selection unit 24 and the data transmission / reception unit 31. Since the smaller the value, the faster the data can be transmitted and received, the priority 303 that allows the use of a communication path with a short transmission time is set high. In the example of FIG. 5, the allowable priority 303 is set small.
- the communicable size 302 is the maximum size of data that can be transmitted / received between the communication path selection unit 24 and the data transmission / reception unit 31.
- the communication path is divided by the size of the communication path based on the size of control command data to be transmitted and received.
- the communication on the corresponding communication path is permitted.
- the communication path selection unit 24 when the control command data with the priority of 29 calculated in step S2 described above is applied to the example of the communication path information shown in FIG. 5, the control command data with the priority of 29 is allowed. Since the priority 303 to be assigned is lower than “20”, the communication path having the permitted priority 303 of “50” is assigned to the control command data having the priority of 29. Note that the communication path selection unit 24 assigns a communication path whose priority 303 is “ ⁇ ” for control command data with a priority lower than 50.
- the exclusive status 304 indicates the usage status of each communication path.
- An unused communication path is assumed to be “0: no control command data / response data”.
- the communication path in which the control data is written from the communication path selection unit 24 is “1: control command data set complete”.
- the communication path in which the response data is written from the data transmission / reception unit 31 is “2: Response data set complete”.
- the communication path selection unit 24 and the data transmission / reception unit 31 update the value of the exclusive status 304.
- Exclusive processing 305 indicates the contents of control command data or response data when the corresponding communication path is in use.
- the communication path selection unit 24 and the data transmission / reception unit 31 update the value of the exclusive status 304, the content of the processing 305 during exclusive use is also updated.
- the transmission time 301 and the communicable size 302 are information indicating the performance of the real-time communication path 4 and the non-real-time communication path 5 used in the FA controller 1, and are determined by the performance of each communication path. Value.
- the allowable priority 303 is a value that can be set by the administrator based on the transmission time 301 and the communicable size 302.
- the exclusive status 304 and the exclusive processing 305 are written by the communication path selection unit 24 and the data transmission / reception unit 31.
- the types of communication paths in the FA controller 1 may be set to four types in accordance with the types of allowable priorities 303 shown in FIG.
- the communication path management unit 6 holds information on five items for each communication path, but this is an example, and the present invention is not limited to this.
- the communication path management unit 6 holds, for example, information on any one of the transmission time 301 and the communicable size 302, which is information indicating the performance of the communication path, the permitted priority 303, and the information on the exclusive status 304. Even in this case, the communication path selection unit 24 can select a communication path.
- the communication path management unit 6 manages information about the communication paths of the real-time communication path 4 and the non-real-time communication path 5 centrally regardless of the physical implementation of the communication path and the communication means.
- the general-purpose arithmetic unit 2 recognizes the real-time communication path 4 and the non-real-time communication path 5 as communication paths having different transmission times 301 and communicable sizes 302, and the general-purpose arithmetic unit 2 controls the control arithmetic unit 3 by the number of communication paths. Control command data can be transmitted simultaneously.
- the communication path selection unit 24 selects the communication path with the permitted priority 303 of “50” as described above for the control command data with the priority 29 acquired from the priority calculation unit 23. At this time, the communication route selection unit 24 selects a communication route whose exclusive status 304 is “0” because the communication route whose exclusive status 304 is “1” or “2” is in use. To do.
- the communication path selection unit 24 first confirms the exclusive status 304 of the communication path management unit 6, confirms that there is a communication path with the exclusive status 304 of “0”, and confirms the priority 303 to be allowed. May be.
- the exclusive status 304 is “1” or “2” for the communication path corresponding to the permitted priority 303.
- a communication path with a priority lower than the priority permitted to be used at the permitted priority 303 may be selected.
- the communication path selection unit 24 transmits control command data to the control calculation unit 3 using the selected communication path (step S4).
- the communication path selection unit 24 may store the response wait designation information acquired from the priority calculation unit 23 in the control command data and transmit it to the control calculation unit 3, or may be separate from the control command data. You may transmit to the control calculating part 3 with control command data in a state.
- the communication path selection unit 24 stores response wait designation information in the control command data and transmits it to the control calculation unit 3.
- the communication path selection unit 24 updates the exclusive status 304 column of the communication path management unit 6 to “1” for the selected communication path, and writes the contents of the control command data in the exclusive process 305.
- the real-time communication path 4 and the non-real-time communication path 5 between the general-purpose arithmetic unit 2 and the control arithmetic unit 3 are actually memories into which data can be written.
- the communication path selection unit 24 writes control command data to the selected communication path.
- the data transmission / reception unit 31 can determine that the control command data is newly written in the communication path updated to “1” by checking the exclusive status 304 of the communication path management unit 6. .
- the data transmitting / receiving unit 31 receives the control command data from the general-purpose arithmetic unit 2 by reading the control command data from the communication path in which the exclusive status 304 of the communication path management unit 6 is updated to “1”.
- step S5 When the response wait designation is valid for the response wait designation information transmitted to the control computation section 3 (step S5: Yes), the communication path selection section 24 obtains response data from the control computation section 3 and performs processing. The process ends (step S6). On the other hand, when the response waiting designation is invalid (step S5: No), the communication path selection unit 24 ends the process.
- the priority calculation unit 23 In the flowchart shown in FIG. 2, when the control command data is continuously transmitted from the general-purpose computing unit 2 to the control computing unit 3, the priority calculation unit 23 has already set the weight of each index used for the priority calculation. In that case, the operation of step S1 may be omitted.
- FIG. 6 is a flowchart showing a process of transmitting and receiving data between the communication path selection unit 24 of the general-purpose calculation unit 2 and the data transmission / reception unit 31 of the control calculation unit 3 according to the present embodiment.
- the communication path selection unit 24 checks whether there is an unused communication path for the communication path for transmitting the control command data to the control calculation unit 3 (step S21). Specifically, the communication path selection unit 24 checks whether there is a communication path of “0” in the exclusive status 304 of the communication path management unit 6. When there is no communication path that is not used (step S21: No), the communication path selection unit 24 waits until the use of one of the communication paths is completed.
- the communication path selection unit 24 confirms whether or not the priority of the control command data is higher than the permitted priority 303 for the usable communication path (step S21). S22). Specifically, the communication path selection unit 24 confirms the permitted priority 303 for the communication path whose exclusive status 304 of the communication path management unit 6 is “0”. When the priority of the control command data is smaller than the allowable priority 303 (step S22: No), the communication path selection unit 24 finishes using the communication path whose priority of the control command data is equal to or higher than the allowable priority 303. Wait until.
- the communication path selection unit 24 stores the response wait designation information acquired from the priority calculation unit 23 in the control command data, Control command data is written to the corresponding communication path (step S23).
- the communication path selection unit 24 updates the exclusive status 304 of the communication path management unit 6 to “1” for the written communication path (step S24).
- the data transmission / reception unit 31 checks whether or not control command data is written in the communication path (step S31). Specifically, the data transmitting / receiving unit 31 confirms the communication path in which the exclusive status 304 of the communication path management unit 6 is updated to “1”. When control command data is not written in the communication path (step S31: No), the data transmitter / receiver 31 waits until control command data is written in the communication path. When the control command data has been written in the communication path (step S31: Yes), the data transmitting / receiving unit 31 reads the control command data from the corresponding communication path (step S32). The data transmitter / receiver 31 extracts response wait designation information from the read control command data, and confirms whether the response wait designation is valid for the response wait designation information (step S33).
- the data transmitting / receiving unit 31 When the response waiting designation is valid (step S33: Yes), the data transmitting / receiving unit 31 outputs control command data to the control command executing unit 32 (step S34).
- the data transmission / reception unit 31 acquires response data obtained by executing the control command data in the control command execution unit 32 from the control command execution unit 32 (step S35).
- the data transmission / reception unit 31 writes the response data acquired from the control command execution unit 32 in the communication path (step S36).
- the data transmitting / receiving unit 31 writes the response data in the same communication path as the communication path in which the control command data has been written.
- the data transmitting / receiving unit 31 updates the exclusive status 304 of the communication path management unit 6 to “2” (step S37) and ends the process.
- step S33 when the response waiting designation is invalid (step S33: No), the data transmitting / receiving unit 31 updates the exclusive status 304 of the communication path management unit 6 to “0” (step S38). The data transmission / reception unit 31 outputs control command data to the control command execution unit 32 (step S39) and ends the process.
- the communication path selection unit 24 confirms whether the response wait designation is valid for the response wait designation information obtained from the priority calculation unit 23 (step S25). If the response wait designation is valid (step S25: Yes), the communication path selection unit 24 checks whether response data is written in the communication path (step S26). Specifically, the communication path selection unit 24 checks whether or not the exclusive status 304 of the communication path management unit 6 is updated to “2” for the communication path in which the control command data is written. When response data is not written in the communication path (step S26: No), the communication path selection unit 24 waits until response data is written in the communication path.
- step S26 When response data is written in the communication path (step S26: Yes), that is, when the exclusive status 304 of the communication path management unit 6 is updated to “2” for the communication path in which the control command data is written,
- the communication path selection unit 24 reads response data from the corresponding communication path (step S27).
- the communication path selection unit 24 outputs the read response data to the general-purpose command execution unit 22 via the priority calculation unit 23 (step S28).
- the communication path selection unit 24 updates the exclusive status 304 of the communication path management unit 6 to “0” for the communication path from which the response data has been read (step S29), and ends the process.
- step S25: No the communication path selection unit 24 ends the process.
- FIG. 7 is a diagram illustrating an example of a hardware configuration of the FA controller 1 according to the present embodiment.
- the storage unit 21 is realized by the memory 92.
- the general-purpose instruction execution unit 22, the priority calculation unit 23, the communication path selection unit 24, and the setting unit 25 are realized by the processor 91 executing programs for each configuration stored in the memory 92.
- the control operation unit 3 the data transmission / reception unit 31 and the control instruction execution unit 32 are realized by the processor 91 executing the program for each component stored in the memory 92.
- the real-time communication path 4, the non-real-time communication path 5, and the communication path management unit 6 are realized by the memory 92.
- the LAN unit 7 is realized by a transmitter 93 and a receiver 94.
- the processor 91, the memory 92, the transmitter 93 and the receiver 94 are connected by a system bus 95.
- a plurality of processors 91 and a plurality of memories 92 may cooperate to execute the function of each component.
- the general-purpose arithmetic unit 2 and the control arithmetic unit 3 are realized by a CPU (Central Processing Unit) that executes a program stored in a memory.
- CPU Central Processing Unit
- the general-purpose arithmetic unit 2 includes a priority calculation unit. 23 calculates the priority of the control command data to be transmitted to the control arithmetic unit 3, and the communication path selection unit 24 converts the high-priority real-time control command data to the real-time communication path 4 which is high-speed but limited in resources. Is assigned with priority over and transmitted to the control calculation unit 3. In addition, the communication path selection unit 24 assigns control command data that does not require immediate responsiveness only to the low-speed non-real-time communication path 5.
- the FA controller 1 can select an optimal communication path and execute control command data requiring immediate response or punctuality without delay.
- the FA controller 1 can optimize the processing time of the control command data by preferentially processing the control command data with high time constraints and importance when transmitting a plurality of control command data.
- the FA controller 1 uses a plurality of indexes in the priority calculation of the control command data, and the weight of each index can be set from the terminal device 11 or the external storage medium 12 using a GUI (Graphical User Interface) tool.
- GUI Graphic User Interface
- control command data executed by the control calculation unit 3 can be incorporated in the storage unit 21 of the general-purpose calculation unit 2. Therefore, even if a general user who is not an administrator of the FA control system does not know how the instruction data is processed inside the FA controller 1, complicated calculation, device control of motion and I / O, image It is possible to construct an advanced FA control system that integrates processing, screen output, monitoring devices, etc., and higher-level communication.
- the configuration described in the above embodiment shows an example of the contents of the present invention, and can be combined with another known technique, and can be combined with other configurations without departing from the gist of the present invention. It is also possible to omit or change the part.
- 1 FA controller 2 general-purpose computing unit, 3 control computing unit, 4 real-time communication path, 5 non-real-time communication path, 6 communication path management unit, 7 LAN unit, 8 network, 9,113 display unit, 10,112 input unit, 11 terminal device, 12 external storage medium, 13 communication bus, 14 module, 15 control target device, 21 storage unit, 22 general-purpose command execution unit, 23 priority calculation unit, 24 communication path selection unit, 25, 111 setting unit, 31 Data transmission / reception unit, 32 control command execution unit.
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Automation & Control Theory (AREA)
- Programmable Controllers (AREA)
- Bus Control (AREA)
Abstract
汎用演算部(2)と、制御演算部(3)と、汎用演算部(2)と制御演算部(3)との間でデータを送受信する際の経路となるリアルタイム通信経路(4)および非リアルタイム通信経路(5)と、リアルタイム通信経路(4)および非リアルタイム通信経路(5)の情報を保持する通信経路管理部(6)と、を備え、汎用演算部(2)は、汎用演算部(2)または制御演算部(3)のいずれかの演算部で実行される命令のデータである命令データを記憶する記憶部(21)と、制御演算部(3)で実行される命令データの優先度を計算する優先度計算部(23)と、優先度計算部(23)で計算された優先度の情報、通信経路管理部(6)で保持するリアルタイム通信経路(4)および非リアルタイム通信経路(5)の情報に基づいて、リアルタイム通信経路(4)および非リアルタイム通信経路(5)から、制御演算部(3)へ命令データを送信する際に使用する通信経路を選択する通信経路選択部(24)と、を備える。
Description
本発明は、ファクトリーオートメーションのコントローラに関する。
制御処理および情報処理を統合したプログラマブルコントローラ(以下、コントローラとする)には、制御処理用バスおよび情報処理用バスから入出力装置の情報を格納したI/O(Input/Output)メモリへアクセスする際、競合回路において、各バスからのアクセスに優先度を設定し、各バスからのアクセスの競合を調停しているものがある。このような技術が、下記特許文献1において開示されている。
産業機器などを制御するFA(Factory Automation)制御システムのコントローラには、各演算部が異なるOS(Operating System)によって命令を実行する複数の演算部を有するものがある。複数の演算部を有するコントローラでは、演算部間で、命令のデータおよび命令を実行した結果のデータを送受信する。各演算部で実行される命令には、駆動機器の動きを制御するリアルタイム性のもの、駆動機器の稼働状態の情報を収集する非リアルタイム性のものなどがある。演算部では、リアルタイム性の命令のデータを非リアルタイム性の命令のデータよりも優先して送信する必要がある。
上記特許文献1では、制御系の時間的制約を重視して制御処理用バスの優先度を情報処理用バスの優先度よりも高くしているが、バス単位で優先度を設定している。演算部間でリアルタイム性の命令のデータを優先的に送信することについて、上記特許文献1には記載されていない。
本発明は、上記に鑑みてなされたものであって、複数の演算部を備える場合に、命令のデータを保持する演算部から他の演算部へリアルタイム性のある命令のデータを優先的に送信可能なコントローラを得ることを目的とする。
上述した課題を解決し、目的を達成するために、本発明のコントローラは、第1の演算部と、第2の演算部と、第1の演算部と第2の演算部との間でデータを送受信する際の経路となる複数の通信経路と、複数の通信経路の情報を保持する通信経路管理部と、を備える。第1の演算部は、第1の演算部または第2の演算部のいずれかの演算部で実行される命令のデータである命令データを記憶する記憶部と、第2の演算部で実行される命令データの優先度を計算する優先度計算部と、優先度計算部で計算された優先度の情報、および通信経路管理部で保持する複数の通信経路の情報に基づいて、複数の通信経路から、第2の演算部へ命令データを送信する際に使用する通信経路を選択する通信経路選択部とを備える。
本発明にかかるコントローラは、複数の演算部を備える場合に、命令のデータを保持する演算部から他の演算部へリアルタイム性のある命令のデータを優先的に送信できる、という効果を奏する。
以下に、本発明の実施の形態にかかるコントローラを図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。
実施の形態.
図1は、本発明の実施の形態にかかるFAコントローラ1の構成例を示すブロック図である。FA制御システムにおいて、FAコントローラ1は、産業機器などの制御対象機器15を、通信バス13およびモジュール14を介して制御するコントローラである。図1において、実線はFAコントローラ1内における命令のデータのやり取りを示し、点線は命令のデータ以外の情報のやり取りを示す。なお、図1では、FAコントローラ1は通信バス13経由で1つのモジュール14および1つの制御対象機器15と接続しているが、一例であり、複数のモジュール14および複数の制御対象機器15と接続し、複数の制御対象機器15を制御することが可能である。
図1は、本発明の実施の形態にかかるFAコントローラ1の構成例を示すブロック図である。FA制御システムにおいて、FAコントローラ1は、産業機器などの制御対象機器15を、通信バス13およびモジュール14を介して制御するコントローラである。図1において、実線はFAコントローラ1内における命令のデータのやり取りを示し、点線は命令のデータ以外の情報のやり取りを示す。なお、図1では、FAコントローラ1は通信バス13経由で1つのモジュール14および1つの制御対象機器15と接続しているが、一例であり、複数のモジュール14および複数の制御対象機器15と接続し、複数の制御対象機器15を制御することが可能である。
FAコントローラ1は、汎用的な命令のデータである汎用命令データを実行するため汎用OSを使用して演算を行う汎用演算部2と、産業機器などの制御対象機器15の動作を制御する制御命令のデータである制御命令データを実行するため専用の制御OSを使用して演算を行う制御演算部3と、を備える。汎用OSは、一般的なパーソナルコンピュータなどの計算機で使用されるOSであり、広範囲の用途に適用可能である。制御OSは、産業機器などの制御対象機器15の動作を制御するOSであり、用途は限定されるが、汎用OSより制御対象機器15を高速かつ高精度で制御できる。FAコントローラ1において、汎用演算部2は第1の演算部であり、制御演算部3は第2の演算部である。
また、FAコントローラ1は、汎用演算部2と制御演算部3との間でリアルタイム性のデータ、すなわち優先度の高いデータを送受信する際の通信経路であるリアルタイム通信経路4と、汎用演算部2と制御演算部3との間で非リアルタイム性のデータ、すなわち前述の優先度の高いデータよりも優先度の低いデータを送受信する際の通信経路である非リアルタイム通信経路5と、リアルタイム通信経路4および非リアルタイム通信経路5の各通信経路の情報を保持する通信経路管理部6と、を備える。ここでは、制御命令データにおいて、リアルタイム性のデータを優先度の高いデータとし、非リアルタイム性のデータを優先度の低いデータとする。汎用演算部2および制御演算部3は、リアルタイム通信経路4および非リアルタイム通信経路5、すなわち複数の通信経路を用いてデータを送受信する。FAコントローラ1では、汎用演算部2は、汎用演算部2で実行できない制御命令データを制御演算部3へ送信し、制御演算部3は、汎用演算部2から受信した制御命令データを実行する。また、汎用演算部2は、制御命令データのうち、リアルタイム性の優先度の高いデータをリアルタイム通信経路4経由で制御演算部3へ送信し、非リアルタイム性の優先度の低いデータを非リアルタイム通信経路5経由で制御演算部3へ送信する。なお、リアルタイム通信経路4および非リアルタイム通信経路5を区別しない場合、両者をまとめて通信経路と称することがある。
図1では、FAコントローラ1は、リアルタイム通信経路4および非リアルタイム通信経路5を各1つ備えているが、実際には、リアルタイム通信経路4および非リアルタイム通信経路5を各々複数備えているものとする。また、図1では、FAコントローラ1は、2種類の通信経路を備えているが、一例であり、3種類以上の通信経路を備えてもよい。
表示部9は、FAコントローラ1と接続し、FAコントローラ1で汎用命令データが実行された結果または制御命令データが実行された結果に基づく応答データ、後述する制御命令データの優先度を計算する際に使用する指標の情報などを表示するディスプレイである。入力部10は、後述する設定部25に対して指標の重みを入力する操作などを行うキーボード、マウスなどの入力インタフェースである。端末装置11は、パーソナルコンピュータなどの計算機であり、設定部111は設定部25、入力部112は入力部10、表示部113は表示部9と同様の構成である。外部記憶媒体12は、USB(Universal Serial Bus)メモリなどの記憶媒体である。通信バス13は、制御演算部3の制御命令実行部32とモジュール14とを繋ぐ高速大容量のデータ通信線である。なお、通信バス13は、汎用演算部2からアクセスできるようにしてもよいが、この場合、FA制御に求められる時間的制約を保証できないおそれがある。そのため、FA制御にかかる制御命令データに基づく制御は、制御命令実行部32から行う。モジュール14は、制御命令実行部32からの制御に従って産業機器などの制御対象機器15を駆動する。
図1では、FAコントローラ1は、表示部9、入力部10、端末装置11および外部記憶媒体12と直接接続している例を示しているが、有線または無線によるLAN(Local Area Network)部7を介してネットワーク8と接続し、ネットワーク8経由で表示部9、入力部10、端末装置11および外部記憶媒体12と接続してもよい。また、FAコントローラ1は、通信バス13を介してモジュール14と接続しているが、LAN部7を介してネットワーク8と接続し、ネットワーク8経由でモジュール14と接続してもよい。
つぎに、汎用演算部2および制御演算部3の構成について説明する。
汎用演算部2は、汎用演算部2または制御演算部3のいずれかの演算部で実行される命令のデータである命令データを記憶する記憶部21と、記憶部21で記憶されている命令データのうち、汎用演算部2で実行される汎用命令データを実行する汎用命令実行部22と、記憶部21で記憶されている命令データのうち、制御演算部3で実行される制御命令データの優先度を計算する優先度計算部23と、優先度計算部23で計算された制御命令データの優先度、および通信経路管理部6で保持している通信経路の情報に基づいて、複数の通信経路から、制御命令データを制御演算部3へ送信する際に使用する通信経路を選択し、選択した通信経路から制御演算部3へ制御命令データを送信する通信経路選択部24と、優先度計算部23で制御命令データの優先度を計算する際に使用する複数の指標について、各指標の重みを設定する設定部25と、を備える。汎用演算部2では、FAコントローラ1が端末装置11と接続し、端末装置11から優先度計算部23に各指標の重みを設定可能な場合、設定部25を備えない構成にしてもよい。
制御演算部3は、汎用演算部2との間でデータの送受信を行うデータ送受信部31と、データ送受信部31で受信された制御命令データを実行し、制御命令データを実行した結果得られた応答のデータである応答データを生成し、応答データをデータ送受信部31へ出力する制御命令実行部32と、を備える。なお、図1では、FAコントローラ1において、汎用演算部2の汎用命令実行部22および設定部25が表示部9と接続する構成になっているが、一例であり、制御演算部3の制御命令実行部32が表示部9と接続してもよい。
汎用演算部2の記憶部21で記憶している命令データ、汎用演算部2の汎用命令実行部22が汎用命令データを実行する動作、制御演算部3の制御命令実行部32が制御命令データを実行する動作について説明する。
汎用演算部2において、記憶部21は、汎用演算部2の汎用命令実行部22で実行されるすべてのアプリケーション、プログラムなどの汎用命令データを記憶している。また、記憶部21は、制御演算部3の制御命令実行部32で実行されるアプリケーション、プログラムなどの制御命令データを記憶している。記憶部21では、汎用演算部2および制御演算部3が連係する処理についての命令データを、汎用命令データおよび制御命令データとして記憶することができる。
汎用演算部2および制御演算部3が連係する処理には、例えば、汎用演算部2では、汎用命令データに従って画像を取り込む動作を行い、画像の一定領域が変化した場合に、制御演算部3に対して制御対象機器15の出力を変化させる制御命令データを送信するものがある。また、汎用演算部2および制御演算部3が連係する処理には、汎用演算部2では、制御対象機器15の動作情報を取得するための制御命令データを制御演算部3へ送信し、制御対象機器15から応答データとして制御対象機器15の動作情報を受信し、汎用命令データに従って受信した制御対象機器15の動作情報を分析し、制御対象機器15に異常がないかなどの情報を表示部9に表示するものがある。
汎用命令実行部22は、記憶部21に記憶されている汎用命令データについて、許容される数の汎用命令データを同時に実行することができる命令実行部である。汎用命令実行部22は、汎用OSを用いて汎用命令データを実行する。汎用命令実行部22において汎用命令データを実行するタイミングは、例えば、汎用命令実行部22または汎用演算部2で備えるタイマに従って一定時間毎に、または、直接またはネットワーク8を介して接続される外部機器からの操作をトリガとして、または、制御演算部3からの割込み通知などをトリガとすることができるが、これらに限定されるものではない。
汎用命令実行部22は、記憶部21に記憶されている命令データのうち、汎用命令実行部22で実行できない制御命令データを優先度計算部23に入力させる。優先度計算部23に制御命令データを入力させる方法については、汎用命令実行部22が記憶部21から読み出して優先度計算部23へ出力してもよいし、汎用命令実行部22が優先度計算部23に対して記憶部21から読み出すことを指示してもよい。
また、汎用命令実行部22は、制御演算部3からの応答データを待つかどうかを指定する応答待ち指定の情報を優先度計算部23へ出力する。汎用命令実行部22は、応答待ち指定が有効の場合、制御演算部3から応答データを受信するまでは、汎用命令データにかかる次の処理を実行しない。汎用命令実行部22は、応答待ち指定が無効の場合、制御演算部3へ制御命令データを送信する処理が終了すると、すぐに次の汎用命令データを実行する。汎用命令実行部22は、応答データが次の処理で必要な場合は応答待ち指定を有効にし、応答データが次の処理に影響を与えない場合は応答待ち指定を無効とする。これにより、汎用命令実行部22では、汎用命令データの実行時間を短縮することができる。
制御演算部3では、データ送受信部31は、汎用演算部2の通信経路選択部24から送信された制御命令データをリアルタイム通信経路4または非リアルタイム通信経路5を介して受信し、受信した制御命令データを制御命令実行部32へ出力する。制御命令実行部32は、データ送受信部31から取得した制御命令データを実行する命令実行部である。制御命令実行部32は、制御OSを用いて制御命令データを実行する。制御命令実行部32が実行する制御命令データによって制御される内容は、通信バス13を介したモジュール14へのデータの入出力、通信バス13およびモジュール14を介した制御対象機器15の駆動、制御命令実行部32の動作情報の取得、制御命令データを実行する際の制御OSの動作変更などである。制御命令実行部32は、制御命令データを実行した結果である応答データを生成し、応答データをデータ送受信部31へ出力する。データ送受信部31は、制御命令実行部32から入力された応答データを、制御命令データを受信した際の通信経路と同じ通信経路から、汎用演算部2の通信経路選択部24へ送信する。
つづいて、FAコントローラ1において、汎用演算部2が、制御命令データの優先度に基づいて、制御演算部3へ制御命令データを送信する動作について説明する。図2は、本実施の形態にかかるFAコントローラ1において汎用演算部2が制御命令データの優先度に基づいて制御演算部3へ制御命令データを送信する動作を示すフローチャートである。
まず、FAコントローラ1では、優先度計算部23に対して制御命令データの優先度計算に使用する各指標の重みを設定する(ステップS1)。優先度計算部23に各指標の重みを設定する方法には、汎用演算部2内部の設定部25から設定する方法、FAコントローラ1と接続する端末装置11から設定する方法、FAコントローラ1と接続する外部記憶媒体12を用いる方法があるが、一例として、端末装置11から設定する方法について詳細に説明する。
図3は、本実施の形態にかかる端末装置11から優先度計算に使用する各指標の重みを設定する際に表示部113に表示される情報の例を示す図である。優先度計算に使用する指標として、具体的に、命令名、アクセス先、および許容遅延時間の3つの指標を使用する場合について説明する。端末装置11では、FA制御システムの管理者などから優先度の重みを設定する操作を入力部112で受け付けると、設定部111が、表示部113に図3に示す情報の例として優先度指標設定ツール201の画面を表示する。
優先度指標設定ツール201には、制御命令データの種別を示す命令種別202、優先度計算に使用する指標である制御命令データの命令名203、優先度計算に使用する指標である制御命令データのアクセス先204、優先度計算に使用する指標である制御命令データの許容遅延時間205、設定された各指標の重みの情報の内容をFAコントローラ1の優先度計算部23へ反映、すなわち出力させる設定出力インタフェース206、設定された各指標の重みの情報の内容を外部記憶媒体12へ反映、すなわち出力させる設定出力インタフェース207、が表示される。
指標1となる命令名203について、制御命令データ毎に重みを設定する。一般に、制御命令データの内容が駆動機器である制御対象機器15を駆動する場合の制御など、特に即時応答性または定時性が求められる制御命令データを優先度の高い重みとする。モジュール14の情報を取得する、LEDを点灯させるといった内容の制御命令データは、駆動機器を対象とする制御命令データよりも時間的制約は厳しくないため、優先度の低い重みとする。なお、優先度が高いほど重みの値を小さくし、優先度が低いほど重みの値を大きくする。以降についても同様とする。
指標2となるアクセス先204について、制御命令データが対象とするモジュール14の種別によって重みを設定する。例えば、制御命令データの対象ユニットが上位監視装置にデータを送信するモジュールなどのベストエフォート型のモジュールの場合、多少の遅れは許容されるため優先度の低い重みとする。制御命令データの対象ユニットが駆動機器の制御に関わる外部機器のI/Oモジュールなどの場合、優先度の高い重みとする。
指標3となる許容遅延時間205について、FAコントローラ1が制御するシステムにおいて、制御命令データを実行する際の最小処理時間に対して許容できる遅延時間を重みとして設定する。例えば、制御命令データの最小処理時間に対して、大きな遅延が許容できない場合は優先度の高い重みとし、大きな遅延が許容できる場合は優先度の低い重みとする。図3の例では、最小処理時間が10msのため、対象の制御命令データを実行する際の許容処理時間が14msの場合、許容遅延時間、すなわち設定する重みを「14-10=4」とする。
管理者は、表示部113に表示される優先度指標設定ツール201を参照し、制御命令データについて、入力部112を介して設定部111に各指標の重みを設定する。設定部111では、表示部113に表示される優先度指標設定ツール201において、管理者から入力部112を介して設定出力インタフェース206の「実行」が操作されると、管理者によって設定された各指標の重みの情報を、FAコントローラ1の優先度計算部23へ出力する。優先度計算部23では、設定部111から受け付けた各指標の重みの情報を内蔵する記憶部に記憶する。
なお、端末装置11からFAコントローラ1の優先度計算部23へ、直接各制御命令データについての重みの情報を出力する場合について説明したが、外部記憶媒体12経由で行うことも可能である。設定部111では、表示部113に表示される優先度指標設定ツール201において、管理者から入力部112を介して設定出力インタフェース207の「実行」が操作されると、管理者によって設定された各指標の重みの情報を、外部記憶媒体12へ出力する。そして、管理者が、各制御命令データについての重みの情報が記憶された外部記憶媒体12をFAコントローラ1へ接続すると、優先度計算部23は、外部記憶媒体12から各指標の重みの情報を読み出し、内蔵する記憶部に記憶する。
また、FAコントローラ1では、管理者から直接各制御命令データについて各指標の重みの設定を受け付けることができる。この場合、端末装置11を用いた説明において、設定部111を設定部25に、入力部112を入力部10に、表示部113を表示部9に置き換えることで対応可能である。この場合、図3に示す優先度指標設定ツール201の画面において、下部の設定出力インタフェース206,207の表示は無くてよい。
管理者は、各指標の重みについて、使用するFA制御システム毎に最適化するための設定を行うことができる。例えば、制御対象機器15のモニタリングが最重要なFA制御システムについて、管理者は、制御対象機器15の状態を読み出す制御命令データを優先度の高い重みとし、その他の制御命令データを優先度の低い重みとして遅れを許容することで、主目的の処理を遅延させることのないFA制御システムを実現できる。管理者は、優先的に処理したい制御命令データの優先度を高くするように指標の重みを設定する。
設定部111は、図3に示す例では、制御命令データの各指標について重みを設定していたが、さらに、各指標の重みを加算して制御命令データの優先度を計算し、計算した優先度の情報もあわせてFAコントローラ1の優先度計算部23へ出力してもよい。具体的に、設定部111は、「指標1の重み+指標2の重み+指標3の重み」すなわち「5+20+4=29」によって制御命令データの優先度を計算する。この場合、FAコントローラ1の優先度計算部23では、内蔵する記憶部に記憶する情報量が増えるため容量の大きな記憶部が必要となるが、優先度を計算する際の演算量を減らすことができる。
図3に示す例では、3つの指標を用いた場合について説明したが、一例であり、4つ以上の指標を用いてもよいし、特定の指標のみを使用してもよい。また、すべての制御命令データについて、各指標の重みを同じにすることで、FAコントローラ1において制御命令データを指示した順番通りに処理させることも可能である。
図2のフローチャートに戻って、つぎに、FAコントローラ1では、優先度計算部23は、複数の指標に基づいて、詳細には設定部111または設定部25で設定された複数の指標の重みの情報を用いて、または設定部25で設定され外部記憶媒体12を介して取得した複数の指標の重みの情報を用いて、制御命令データの優先度を計算する(ステップS2)。優先度計算部23における優先度計算の処理について詳細に説明する。図4は、本実施の形態にかかる優先度計算部23における制御命令データの優先度を計算する処理を示すフローチャートである。
まず、優先度計算部23では、対象の制御命令データを取得する(ステップS11)。優先度計算部23で対象の制御命令データを取得する方法は、前述のように、記憶部21から汎用命令実行部22経由で取得してもよいし、汎用命令実行部22からの指示に基づいて、優先度計算部23が記憶部21から読み出してもよい。なお、優先度計算部23は、汎用命令実行部22から、制御命令データについての応答待ち指定の情報を取得する。
優先度計算部23は、取得した制御命令データについて、設定部111などから取得して内蔵する記憶部に記憶されている各指標の重みを読み出す(ステップS12)。具体的に、優先度計算部23は、取得した制御命令データの内容から、対応する命令名、アクセス先、許容遅延時間の各指標についての重みを読み出す。
優先度計算部23は、読み出した各指標の重みを加算して、取得した制御命令データの優先度を計算する(ステップS13)。例えば、取得した制御命令データについての各指標の重みが図3に示すものであった場合、優先度計算部23は、取得した制御命令データの優先度を「指標1の重み+指標2の重み+指標3の重み」によって、具体的には「5+20+4=29」として求める。
優先度計算部23は、制御命令データ、計算した制御命令データの優先度の情報、および、汎用命令実行部22から取得した応答待ち指定の情報を通信経路選択部24へ出力する(ステップS14)。
図2のフローチャートに戻って、つぎに、FAコントローラ1では、通信経路選択部24は、優先度計算部23から取得した制御命令データの優先度の情報と、通信経路管理部6が保持する通信経路の情報を用いて、制御命令データを送信する通信経路を選択する(ステップS3)。
ここで、通信経路管理部6が保持する通信経路の情報について説明する。図5は、本実施の形態にかかる通信経路管理部6が保持する通信経路の情報の例を示す図である。通信経路管理部6は、各通信経路について、伝送時間301、通信可能サイズ302、許容する優先度303、専有状況304、専有中の処理305の情報を保持する記憶部である。図5に示す通信経路管理部6が保持する通信経路の情報は、汎用演算部2の通信経路選択部24および制御演算部3のデータ送受信部31の双方から書き込みおよび読み出しが可能である。
伝送時間301は、通信経路選択部24とデータ送受信部31との間で最小単位のデータ送受信に掛かる時間である。この値が小さいほど高速にデータの送受信が可能であるため、伝送時間が短い通信経路の使用を許容する優先度303を高く、図5の例では許容する優先度303の値を小さく設定する。
通信可能サイズ302は、通信経路選択部24とデータ送受信部31との間で送受信可能なデータの最大サイズである。なお、FAコントローラ1において複数の通信経路が物理的には1つの通信経路である場合には、送受信される制御命令データのサイズに基づいた通信経路のサイズで通信経路を分割し、分割された通信経路を使用するよう許容する優先度303を設定することで、演算部間の通信を効率良く行うことができる。
許容する優先度303は、優先度計算部23で計算された制御命令データの優先度が許容する優先度303で示される優先度よりも高い場合に、対応する通信経路での通信を許容することを示す各通信経路における優先度の閾値である。例えば、通信経路選択部24では、図5に示す通信経路の情報の例に前述のステップS2で計算された優先度が29の制御命令データを適用すると、優先度が29の制御命令データは許容する優先度303が「20」よりも優先度が低いため、優先度が29の制御命令データには許容する優先度303が「50」の通信経路を割り当てる。なお、通信経路選択部24は、優先度が50より低い制御命令データについては、許容する優先度303が「-」の通信経路を割り当てる。
専有状況304は、各通信経路の使用状況を示す。使用されていない通信経路は「0:制御命令データ/応答データなし」とする。通信経路選択部24から制御データが書き込まれた状態の通信経路は「1:制御命令データセット完了」とする。データ送受信部31から応答データが書き込まれた通信経路は「2:応答データセット完了」とする。通信経路選択部24およびデータ送受信部31が、専有状況304の値を更新する。
専有中の処理305は、対応する通信経路が使用中の場合に、制御命令データまたは応答データの内容を示す。通信経路選択部24およびデータ送受信部31が、専有状況304の値を更新する際に、専有中の処理305の内容も更新する。
通信経路管理部6において、伝送時間301および通信可能サイズ302は、FAコントローラ1で使用されているリアルタイム通信経路4および非リアルタイム通信経路5の性能を示す情報であり、各通信経路の性能によって決まる値である。許容する優先度303は、管理者が伝送時間301および通信可能サイズ302に基づいて設定可能な値である。専有状況304および専有中の処理305は、通信経路選択部24およびデータ送受信部31が書き込みを行う。
なお、図5に示す許容する優先度303と、リアルタイム通信経路4および非リアルタイム通信経路5との関係については、例えば、許容する優先度303が「3」と「20」に該当する通信経路をリアルタイム通信経路4、許容する優先度303が「50」と「-」に該当する通信経路を非リアルタイム通信経路5としてもよい。また、図5に示す許容する優先度303の種類に合わせて、FAコントローラ1内の通信経路の種類を4種類にしてもよい。
また、通信経路管理部6では、図5に示すように、各通信経路について、5つの項目の情報を保持しているが、一例であり、これに限定するものではない。通信経路管理部6では、例えば、通信経路の性能を示す情報である伝送時間301および通信可能サイズ302のうちいずれか一方の情報、許容する優先度303、および専有状況304の情報を保持する。この場合でも、通信経路選択部24は通信経路を選択することができる。
通信経路管理部6では、リアルタイム通信経路4および非リアルタイム通信経路5の通信経路について、通信経路の物理的な実装、通信手段によらず一元的に情報を管理する。汎用演算部2は、リアルタイム通信経路4および非リアルタイム通信経路5について、伝送時間301、通信可能サイズ302が異なる通信経路として認識し、通信経路の数だけ汎用演算部2から制御演算部3に対して制御命令データを同時に送信することができる。
通信経路選択部24は、優先度計算部23から取得した優先度が29の制御命令データについて、前述のように許容する優先度303が「50」の通信経路を選択する。このとき、通信経路選択部24は、専有状況304が「1」または「2」の通信経路は使用中であることから、通信経路管理部6の専有状況304が「0」の通信経路を選択する。なお、通信経路選択部24では、先に通信経路管理部6の専有状況304を確認し、専有状況304が「0」の通信経路があることを確認してから、許容する優先度303を確認してもよい。また、通信経路選択部24では、許容する優先度303に該当する通信経路が全て使用中、すなわち、許容する優先度303に該当する通信経路について専有状況304が「1」または「2」の場合、許容する優先度303で使用が許容される優先度よりも低い優先度の通信経路を選択してもよい。
通信経路選択部24は、選択した通信経路を用いて、制御命令データを制御演算部3へ送信する(ステップS4)。なお、通信経路選択部24は、優先度計算部23から取得した応答待ち指定の情報について、制御命令データに格納して制御演算部3へ送信してもよいし、制御命令データとは別々の状態で制御命令データとともに制御演算部3へ送信してもよい。ここでは、通信経路選択部24は、応答待ち指定の情報を制御命令データに格納して制御演算部3へ送信する。以降についても同様とする。通信経路選択部24は、選択した通信経路について、通信経路管理部6の専有状況304の欄を「1」に更新し、専有中の処理305に制御命令データの内容を書き込む。
なお、汎用演算部2と制御演算部3との間のリアルタイム通信経路4および非リアルタイム通信経路5は、実際にはデータを書き込み可能なメモリである。詳細には、通信経路選択部24は、選択した通信経路に制御命令データを書き込む。制御演算部3では、データ送受信部31が、通信経路管理部6の専有状況304を確認することで、「1」に更新された通信経路に新たに制御命令データが書き込まれていると判断できる。データ送受信部31は、通信経路管理部6の専有状況304が「1」に更新された通信経路から制御命令データを読み出すことで、汎用演算部2から制御命令データを受信する。
そして、通信経路選択部24は、制御演算部3へ送信した応答待ち指定の情報について、応答待ち指定が有効の場合(ステップS5:Yes)、制御演算部3から応答データを取得して処理を終了する(ステップS6)。一方、応答待ち指定が無効の場合(ステップS5:No)、通信経路選択部24は処理を終了する。図2に示すフローチャートにおいて、汎用演算部2から継続的に制御演算部3へ制御命令データを送信する場合、優先度計算部23では、既に優先度計算に使用する各指標の重みが設定済みの場合はステップS1の動作を省略してもよい。
図2に示すステップS3~S6までの通信経路選択部24が関係する処理について、制御演算部3のデータ送受信部31の処理とともに詳細に説明する。図6は、本実施の形態にかかる汎用演算部2の通信経路選択部24および制御演算部3のデータ送受信部31との間でデータを送受信する処理を示すフローチャートである。
まず、通信経路選択部24は、制御命令データを制御演算部3へ送信する通信経路について、使用されていない通信経路があるかどうか確認する(ステップS21)。具体的に、通信経路選択部24は、通信経路管理部6の専有状況304に「0」の通信経路があるかどうかを確認する。使用されていない通信経路がない場合(ステップS21:No)、通信経路選択部24は、いずれかの通信経路の使用が終わるまで待機する。
使用されていない通信経路がある場合(ステップS21:Yes)、通信経路選択部24は、使用可能な通信経路について、制御命令データの優先度が許容する優先度303以上かどうかを確認する(ステップS22)。具体的に、通信経路選択部24は、通信経路管理部6の専有状況304が「0」の通信経路についての許容する優先度303を確認する。制御命令データの優先度が許容する優先度303より小さい場合(ステップS22:No)、通信経路選択部24は、制御命令データの優先度が許容する優先度303以上となる通信経路の使用が終わるまで待機する。
制御命令データの優先度が許容する優先度303以上の場合(ステップS22:Yes)、通信経路選択部24は、制御命令データに優先度計算部23から取得した応答待ち指定の情報を格納し、該当する通信経路に制御命令データを書き込む(ステップS23)。通信経路選択部24は、書き込みを行った通信経路について、通信経路管理部6の専有状況304を「1」に更新する(ステップS24)。
制御演算部3では、データ送受信部31は、通信経路に制御命令データが書き込まれているかどうかを確認する(ステップS31)。具体的には、データ送受信部31は、通信経路管理部6の専有状況304が「1」に更新された通信経路を確認する。通信経路に制御命令データが書き込まれていない場合(ステップS31:No)、データ送受信部31は、通信経路に制御命令データの書き込みがあるまで待機する。通信経路に制御命令データが書き込まれていた場合(ステップS31:Yes)、データ送受信部31は、該当する通信経路から制御命令データを読み出す(ステップS32)。データ送受信部31は、読み出した制御命令データから応答待ち指定の情報を抽出し、応答待ち指定の情報について、応答待ち指定が有効かどうかを確認する(ステップS33)。
応答待ち指定が有効の場合(ステップS33:Yes)、データ送受信部31は、制御命令実行部32へ制御命令データを出力する(ステップS34)。データ送受信部31は、制御命令実行部32から、制御命令実行部32において制御命令データを実行して得られた応答データを取得する(ステップS35)。データ送受信部31は、通信経路に制御命令実行部32から取得した応答データを書き込む(ステップS36)。このとき、データ送受信部31は、制御命令データが書き込まれていた通信経路と同じ通信経路に応答データを書き込む。データ送受信部31は、通信経路管理部6の専有状況304を「2」に更新して(ステップS37)処理を終了する。
一方、応答待ち指定が無効の場合(ステップS33:No)、データ送受信部31は、通信経路管理部6の専有状況304を「0」に更新する(ステップS38)。データ送受信部31は、制御命令実行部32へ制御命令データを出力して(ステップS39)処理を終了する。
汎用演算部2の通信経路選択部24の動作の説明に戻る。通信経路選択部24は、優先度計算部23から取得した応答待ち指定の情報について、応答待ち指定が有効かどうかを確認する(ステップS25)。応答待ち指定が有効の場合(ステップS25:Yes)、通信経路選択部24は、通信経路に応答データが書き込まれているかどうかを確認する(ステップS26)。具体的には、通信経路選択部24は、制御命令データを書き込んだ通信経路について、通信経路管理部6の専有状況304が「2」に更新されているかどうかを確認する。通信経路に応答データが書き込まれていない場合(ステップS26:No)、通信経路選択部24は、通信経路に応答データが書き込まれるまで待機する。
通信経路に応答データが書き込まれている場合(ステップS26:Yes)、すなわち、制御命令データを書き込んだ通信経路について、通信経路管理部6の専有状況304が「2」に更新されている場合、通信経路選択部24は、該当する通信経路から応答データを読み出す(ステップS27)。通信経路選択部24は、優先度計算部23を経由して汎用命令実行部22へ、読み出した応答データを出力する(ステップS28)。そして、通信経路選択部24は、応答データを読み出した通信経路について、通信経路管理部6の専有状況304を「0」に更新して(ステップS29)処理を終了する。
一方、応答待ち指定が無効の場合(ステップS25:No)、通信経路選択部24は処理を終了する。
図1に示すFAコントローラ1の各構成を実現するハードウェア構成について説明する。図7は、本実施の形態にかかるFAコントローラ1のハードウェア構成の例を示す図である。汎用演算部2において、記憶部21は、メモリ92によって実現される。汎用命令実行部22、優先度計算部23、通信経路選択部24、および設定部25は、プロセッサ91が、メモリ92に記憶された各構成用のプログラムを実行することにより実現される。制御演算部3において、データ送受信部31および制御命令実行部32は、プロセッサ91が、メモリ92に記憶された各構成用のプログラムを実行することにより実現される。リアルタイム通信経路4、非リアルタイム通信経路5、および通信経路管理部6は、メモリ92によって実現される。LAN部7は、送信器93および受信器94によって実現される。プロセッサ91、メモリ92、送信器93および受信器94は、システムバス95により接続されている。複数のプロセッサ91および複数のメモリ92が連携して各構成の機能を実行してもよい。また、汎用演算部2および制御演算部3は、メモリに格納されるプログラムを実行するCPU(Central Processing Unit)によって実現される。
以上説明したように、本実施の形態によれば、異なるOSで命令を実行する複数の演算部が複数の通信経路で接続されているFAコントローラ1において、汎用演算部2では、優先度計算部23が、制御演算部3へ送信する制御命令データの優先度を計算し、通信経路選択部24が、優先度の高いリアルタイム性の制御命令データを、高速だがリソースに限りのあるリアルタイム通信経路4に優先して割り当てて制御演算部3へ送信する。また、通信経路選択部24は、即時応答性が必要ない制御命令データを低速な非リアルタイム通信経路5にのみ割り当てることとした。これにより、FAコントローラ1では、最適な通信経路を選択し、即時応答性または定時性が必要な制御命令データを遅延なく実行することができる。FAコントローラ1では、複数の制御命令データを送信する場合に、時間的制約や重要度の高い制御命令データを優先的に処理することで、制御命令データの処理時間を最適化することができる。
また、FAコントローラ1では、制御命令データの優先度計算において複数の指標を用い、各指標の重みをGUI(Graphical User Interface)ツールによる端末装置11または外部記憶媒体12などから設定可能とする。これにより、FA制御システムごとに異なる通信経路の性能や経路数に合わせて優先する制御命令データを変更し、FAコントローラ1の性能の最適化を図ることができる。
また、FAコントローラ1では、制御演算部3で実行する制御命令データを汎用演算部2の記憶部21に組み込むことができる。そのため、FA制御システムの管理者ではない一般のユーザは、FAコントローラ1の内部でどのように命令データが処理されるかを知らなくとも、複雑な計算、モーションやI/Oのデバイス制御、画像処理、画面出力、監視装置など、また上位通信などを統合した高度なFA制御システムを構築できる。
以上の実施の形態に示した構成は、本発明の内容の一例を示すものであり、別の公知の技術と組み合わせることも可能であるし、本発明の要旨を逸脱しない範囲で、構成の一部を省略、変更することも可能である。
1 FAコントローラ、2 汎用演算部、3 制御演算部、4 リアルタイム通信経路、5 非リアルタイム通信経路、6 通信経路管理部、7 LAN部、8 ネットワーク、9,113 表示部、10,112 入力部、11 端末装置、12 外部記憶媒体、13 通信バス、14 モジュール、15 制御対象機器、21 記憶部、22 汎用命令実行部、23 優先度計算部、24 通信経路選択部、25,111 設定部、31 データ送受信部、32 制御命令実行部。
Claims (7)
- 第1の演算部と、
第2の演算部と、
前記第1の演算部と前記第2の演算部との間でデータを送受信する際の経路となる複数の通信経路と、
前記複数の通信経路の情報を保持する通信経路管理部と、
を備え、
前記第1の演算部は、
前記第1の演算部または前記第2の演算部のいずれかの演算部で実行される命令のデータである命令データを記憶する記憶部と、
前記第2の演算部で実行される命令データの優先度を計算する優先度計算部と、
前記優先度計算部で計算された優先度の情報、および前記通信経路管理部で保持する前記複数の通信経路の情報に基づいて、前記複数の通信経路から、前記第2の演算部へ命令データを送信する際に使用する通信経路を選択する通信経路選択部と、
を備えることを特徴とするコントローラ。 - 前記優先度計算部は、複数の指標に基づいて、前記第2の演算部で実行される命令データの優先度を計算する、
ことを特徴とする請求項1に記載のコントローラ。 - 前記第1の演算部は、
前記優先度計算部で使用する各指標の重みを設定する設定部、
を備え、
前記優先度計算部は、前記設定部で設定された各指標の重みの情報を用いて、前記第2の演算部で実行される命令データの優先度を計算する、
ことを特徴とする請求項2に記載のコントローラ。 - 前記コントローラは、前記優先度計算部で使用する各指標の重みを設定する設定部を有する計算機と接続し、
前記優先度計算部は、前記設定部で設定された各指標の重みの情報を用いて、前記第2の演算部で実行される命令データの優先度を計算する、
ことを特徴とする請求項2に記載のコントローラ。 - 前記コントローラは、前記優先度計算部で使用する各指標の重みが記憶された外部記憶媒体と接続し、
前記優先度計算部は、前記外部記憶媒体に記憶されている各指標の重みの情報を用いて、前記第2の演算部で実行される命令データの優先度を計算する、
ことを特徴とする請求項2に記載のコントローラ。 - 前記通信経路管理部は、各通信経路について、通信経路の性能を示す情報、許容する優先度、および専有状況の情報を保持する、
ことを特徴とする請求項1から5のいずれか1つに記載のコントローラ。 - 前記第2の演算部は、
前記命令データを実行し、前記命令データを実行した結果である応答データを生成する命令実行部と、
前記複数の通信経路から前記命令データを受信して前記命令実行部へ出力し、前記命令実行部で生成された前記応答データを、前記命令データを受信した通信経路から前記第1の演算部へ送信するデータ送受信部と、
を備えることを特徴とする請求項1から6のいずれか1つに記載のコントローラ。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2015/065301 WO2016189709A1 (ja) | 2015-05-27 | 2015-05-27 | コントローラ |
JP2016553672A JP6138375B2 (ja) | 2015-05-27 | 2015-05-27 | コントローラ |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2015/065301 WO2016189709A1 (ja) | 2015-05-27 | 2015-05-27 | コントローラ |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2016189709A1 true WO2016189709A1 (ja) | 2016-12-01 |
Family
ID=57392645
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2015/065301 WO2016189709A1 (ja) | 2015-05-27 | 2015-05-27 | コントローラ |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP6138375B2 (ja) |
WO (1) | WO2016189709A1 (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107797461A (zh) * | 2017-09-30 | 2018-03-13 | 广东美的制冷设备有限公司 | 运行控制方法、资源共享装置和计算机可读存储介质 |
JP2018097839A (ja) * | 2017-06-08 | 2018-06-21 | オムロン株式会社 | 制御装置、制御プログラムおよび制御方法 |
JP2019057212A (ja) * | 2017-09-22 | 2019-04-11 | 株式会社日立産機システム | プログラマブルコントローラ及びコントロールシステム |
US11009847B2 (en) | 2016-12-14 | 2021-05-18 | Omron Corporation | Controller, control program, and control method |
US11036199B2 (en) | 2016-12-14 | 2021-06-15 | Omron Corporation | Control device, control program, and control method for anomaly detection |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11312007A (ja) * | 1998-04-28 | 1999-11-09 | Hitachi Ltd | プログラマブルコントローラ |
JP2004054622A (ja) * | 2002-07-19 | 2004-02-19 | Hitachi Ltd | コントローラおよび情報通信サービス方法 |
JP2006039849A (ja) * | 2004-07-26 | 2006-02-09 | Matsushita Electric Ind Co Ltd | モジュール間通信装置および方法 |
-
2015
- 2015-05-27 JP JP2016553672A patent/JP6138375B2/ja active Active
- 2015-05-27 WO PCT/JP2015/065301 patent/WO2016189709A1/ja active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11312007A (ja) * | 1998-04-28 | 1999-11-09 | Hitachi Ltd | プログラマブルコントローラ |
JP2004054622A (ja) * | 2002-07-19 | 2004-02-19 | Hitachi Ltd | コントローラおよび情報通信サービス方法 |
JP2006039849A (ja) * | 2004-07-26 | 2006-02-09 | Matsushita Electric Ind Co Ltd | モジュール間通信装置および方法 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11009847B2 (en) | 2016-12-14 | 2021-05-18 | Omron Corporation | Controller, control program, and control method |
US11036199B2 (en) | 2016-12-14 | 2021-06-15 | Omron Corporation | Control device, control program, and control method for anomaly detection |
JP2018097839A (ja) * | 2017-06-08 | 2018-06-21 | オムロン株式会社 | 制御装置、制御プログラムおよび制御方法 |
JP2019057212A (ja) * | 2017-09-22 | 2019-04-11 | 株式会社日立産機システム | プログラマブルコントローラ及びコントロールシステム |
CN107797461A (zh) * | 2017-09-30 | 2018-03-13 | 广东美的制冷设备有限公司 | 运行控制方法、资源共享装置和计算机可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2016189709A1 (ja) | 2017-06-15 |
JP6138375B2 (ja) | 2017-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6138375B2 (ja) | コントローラ | |
EP3255553B1 (en) | Transmission control method and device for direct memory access | |
US8347044B2 (en) | Multi-processor based programmable logic controller and method for operating the same | |
JP5895840B2 (ja) | マルチプロセッサシステム、実行制御方法、実行制御プログラム | |
JP4706720B2 (ja) | Dma制御システム、印刷装置、および転送指示プログラム | |
JP2015176191A (ja) | コントローラ | |
KR20150076207A (ko) | 스케일가능한 컴퓨트 패브릭 | |
JP2006195867A (ja) | バス調停方法及び半導体装置 | |
JP5360061B2 (ja) | マルチプロセッサシステム及びその制御方法 | |
CN104903800A (zh) | 运动控制器和使用这种运动控制器的机器人控制*** | |
WO2012056537A1 (ja) | プログラマブルコントローラ | |
CN115168256A (zh) | 中断控制方法、中断控制器、电子设备、介质和芯片 | |
EP3188446B1 (en) | Remote resource access method and switching device | |
JP2016091559A (ja) | Plcシステム及びその動作方法 | |
JP2012065284A (ja) | ネットワークスキャナ、情報処理装置及びネットワークスキャニングシステム | |
KR101552119B1 (ko) | EtherCAT을 위한 노드간 최적 시간 위상 검색 시스템 | |
JP4856413B2 (ja) | 演算処理装置、情報処理装置、及び演算処理装置の制御方法 | |
KR20170024876A (ko) | 실시간 공유 인터페이스를 포함하는 시스템 온 칩의 스케쥴링 방법 | |
WO2013062109A1 (ja) | I/oデバイス制御システムおよびi/oデバイス制御方法 | |
JP2019191920A (ja) | プロセッサ及び情報処理装置 | |
US10802730B2 (en) | Semiconductor device and reconfiguration control method of the same | |
JP5459549B2 (ja) | コンピュータシステム及びその余剰コアを用いた通信エミュレート方法 | |
KR101647818B1 (ko) | 멀티 코어 사이의 데이터 전송 장치 및 방법 | |
CN101354687B (zh) | 包括用于传输请求的传输装置的信息处理设备和控制信息处理设备的方法 | |
RU2571376C1 (ru) | Способ и устройство для параллельной обработки цифровой информации в вычислительной системе |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ENP | Entry into the national phase |
Ref document number: 2016553672 Country of ref document: JP Kind code of ref document: A |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 15893343 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: 15893343 Country of ref document: EP Kind code of ref document: A1 |