Information processing device
Through the command analysis and issuance ruling mechanism of the information processing device, the access sequence and interval are optimized, and the delay problem caused by the simultaneous access control device of multiple applications is solved, achieving efficient access management and performance improvement.
Patent Information
- Application Number
- CN202180017004.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-02-27
- Filing Date
- 2021-02-24
- Publication Date
- 2025-08-12
- Estimated Expiration
- 2041-02-24
AI Technical Summary
In the prior art, when multiple applications access control devices simultaneously, access delays and performance are reduced, making it difficult to efficiently manage and allocate access resources.
Through the command analysis unit and the command issuance decision unit in the information processing device, the access tendency of each application is identified and analyzed, the access order and interval are optimized, and the efficient access management of the control device is realized.
Effectively identify and manage access volume and timing of each application, prevent performance degradation and processing delay caused by access delay, and improve the overall system operation efficiency.
Smart Images

Figure CN115210663B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to an information processing device, and more particularly to an information processing device that accesses data in a control device for controlling industrial machinery. Background Art
[0002] In order for an application running on a personal computer to access data within the control device, the personal computer connected to the control device includes a communication processing unit that serves as an interface with the control device. Applications running on the personal computer may access data within the control device frequently, periodically, or sporadically.
[0003] When a large number of applications are running simultaneously, applications that frequently access data in the control device are hindered, access by other applications is often delayed, and the overall operation of applications slows down.
[0004] A technology for addressing this issue is disclosed (e.g., Patent Document 1). In this technology, the data priority set by a personal computer application is communicated to a control device. When multiple data items are requested from the personal computer application, the control device sends the higher-priority data first and stores it in a buffer. The sending interval is adjusted based on the control device's load and response time.
[0005] Prior art literature
[0006] Patent Literature
[0007] Patent Document 1: Japanese Patent Application Laid-Open No. 2017-134459 Summary of the Invention
[0008] Problems to be solved by the invention
[0009] Sometimes, applications frequently access control devices without considering overall performance, or a large number of applications access control devices simultaneously. In these cases, access delays can lead to performance degradation and processing delays in the control device connected to the personal computer. Problems arising from these conditions include irregular access to data that should be processed regularly, delayed processing of urgent events, and overall slowdown of application operations.
[0010] Even if the order and timing of transmissions are adjusted according to data priority, the controller's load, and the response time allowed, this problem remains difficult to resolve. Even if the control device's response processing for data request commands is streamlined, it still fails to achieve efficiency and load reduction in the processing of commands issued from the personal computer to the controller. This is because the data sent in response to write requests cannot be efficiently processed.
[0011] To solve this problem, it is necessary to arbitrate and appropriately allocate access to the control device for each application. To do this, a mechanism is needed that can identify the amount and timing of access to the control device by each application and perform comprehensive management and arbitration.
[0012] Means for solving problems
[0013] The information processing device of the present invention detects an excessive issuance state from applications accessing a control device, determines the issuance order and issuance interval according to priority, and optimizes command issuance to the control device, thereby solving the above-mentioned problem.
[0014] Furthermore, one embodiment of the present invention is an information processing device connected to a control device, which controls the issuance of a command to the control device when a command to access the control device is indicated from multiple applications. The information processing device comprises: a command analysis unit, which analyzes the tendency of instructions for accessing the control device for each application; and a command issuance determination unit, which determines the issuance of the command to the control device based on the analysis result of the command analysis unit.
[0015] Effects of the Invention
[0016] According to one aspect of the present invention, it is possible to identify and analyze the volume and timing of access from various applications to control devices, a task that was previously difficult. Furthermore, by quantifying the access trends of each application, it is possible to manage access to the control device for each application. This allows for the appropriate allocation of access from a large number of applications to the control device. As a result, it is possible to prevent performance degradation and processing delays caused by access delays. BRIEF DESCRIPTION OF THE DRAWINGS
[0017] Figure 1 This is a schematic hardware configuration diagram of an information processing device according to one embodiment.
[0018] Figure 2 This is a schematic functional block diagram of the information processing device according to the first embodiment;
[0019] Figure 3 This is an example of a schematic flowchart of command analysis processing.
[0020] Figure 4This is an example of a timing diagram of command instructions for each application.
[0021] Figure 5 This is an example of the analysis results of command analysis for each application.
[0022] Figure 6 This is an example of a ruling on an order issued by the Order Issuance Ruling Department.
[0023] Figure 7 This is an example of a schematic flowchart of the order issuance and adjudication process.
[0024] Figure 8 This is a schematic functional block diagram of an information processing device according to a second embodiment;
[0025] Figure 9 This is an example of the screen displayed by the judgment correction tool section. DETAILED DESCRIPTION
[0026] Hereinafter, embodiments of the present invention will be described with reference to the accompanying drawings.
[0027] Figure 1 This is a schematic hardware configuration diagram of an information processing device according to one embodiment of the present invention. The information processing device 1 can be installed, for example, on a personal computer installed in parallel with a control device for controlling industrial machinery. Alternatively, the information processing device 1 can be installed on a personal computer, fog computer, cloud server, or other device connected to the control device for controlling industrial machinery via a wired / wireless network. This embodiment illustrates an example in which the information processing device 1 is installed on a personal computer connected to the control device for controlling industrial machinery via a wired / wireless network.
[0028] The information processing device 1 of this embodiment includes a CPU 11, which is a processor that controls the entire information processing device 1. The CPU 11 reads a system program stored in the ROM 12 via the bus 22. The CPU 11 controls the entire information processing device 1 according to the system program. The RAM 13 temporarily stores temporary calculation data, display data, and various data input from the external device.
[0029] The non-volatile memory 14 is composed of an HDD (Hard Disk Drive), an SSD (Solid State Drive), or the like. Data written to the non-volatile memory 14 remains stored even when the information processing device 1 is powered off. The non-volatile memory 14 stores data read from the external device 72 via the interface 15, control programs, data and programs input via the input device 71, and various data obtained from the control device 3. The data and programs stored in the non-volatile memory 14 can also be expanded into the RAM 13 during execution / use. Furthermore, various system programs, such as well-known analysis programs, are pre-written in the ROM 12.
[0030] The interface 15 is an interface for connecting to the CPU 11 of the information processing device 1 and an external device 72 such as a USB device. For example, control programs and parameters used in controlling industrial machinery can be read from the external device 72. Furthermore, control programs and parameters edited within the information processing device 1 can be stored in an external storage unit via the external device 72 or transmitted to the control device 3 via the network 5.
[0031] The display device 70 outputs and displays various data read into the memory and data obtained as a result of executing the control program, system program, etc. via the interface 18. Furthermore, the input device 71, which includes a keyboard, pointing device, etc., transmits commands and data based on operator operations to the CPU 11 via the interface 19.
[0032] The interface 20 is an interface for connecting the CPU 11 of the information processing device 1 to the wired or wireless network 5. The control device 3 for controlling industrial machinery is connected to the network 5, and data is exchanged between the control device 3 and the information processing device 1.
[0033] Figure 2 This is a diagram showing the functions of the information processing device 1 according to the first embodiment of the present invention as a schematic block diagram. The functions of the information processing device 1 according to this embodiment are provided by Figure 1 This is achieved by the CPU 11 included in the illustrated information processing device 1 executing a system program to control the operation of each unit of the information processing device 1 .
[0034] The information processing device 1 of this embodiment includes a central processing unit 100, a communication interface unit 110, and a communication processing unit 120. Furthermore, a storage unit 200 is provided on the RAM 13 or the nonvolatile memory 14. This storage unit 200 is an area for storing information related to commands issued by application programs 300a, 300b, 300c, etc. for accessing the control device 3.
[0035] The central processing unit 100 is implemented by the CPU 11 executing a system program read from the ROM 12, primarily performing computational processing using the RAM 13 and non-volatile memory 14. The central processing unit 100 executes the programs of the application programs 300a, 300b, 300c, ... running on the information processing device 1, and controls the operation of each application program 300a, 300b, 300c, ... . The central processing unit 100 controls, for example, writing to and reading from each application program 300a, 300b, 300c, ... to the storage unit 200, outputting commands to the communication interface unit 110, and transferring data received from the control device 3 in response to these commands. The central processing unit 100 can be provided as a function for controlling the execution of application programs based on a general operating system.
[0036] The communication interface unit 110 is implemented by the CPU 11 executing a system program read from the ROM 12, primarily performing computational processing by the CPU 11 using the RAM 13 and nonvolatile memory 14. The communication interface unit 110 analyzes and adjudicates commands for accessing the control device 3, issued by the various application programs 300a, 300b, 300c, etc. Based on the results of the analysis and adjudication, the communication interface unit 110 outputs the command to the communication processing unit 120. Furthermore, upon receiving a response to a command from the communication processing unit 120, the communication interface unit 110 transfers the response to the application program that issued the command. The communication interface unit 110 includes a command analysis unit 112, a command issuance adjudication unit 114, and a command processing unit 116.
[0037] The command analysis unit 112 records the history of commands indicated by each application in the storage unit 200. Then, the command analysis unit 112 analyzes the tendency of commands indicated by each application stored in the storage unit 200. The command analysis unit 112 analyzes, for example, the type, frequency, and periodicity of the instruction interval of the commands indicated from the application, and classifies the commands indicated from the application into types such as frequent, regular, sporadic, and group. In addition, the command analysis unit 112 sets the priority of each application based on the priority of the commands indicated by the application. In addition, the command analysis unit 112 calculates parameters such as the instruction interval of the commands of each application. Then, the command analysis unit 112 stores the analysis results of the application thus analyzed in the storage unit 200. The command analysis unit 112 regularly performs analysis of the commands indicated from each application.
[0038] Figure 3This is an example of a schematic flowchart of the analysis process of the commands indicated by each application program, which is performed by the command analysis unit 112. The command analysis unit 112 obtains the instruction history of the commands of each application program from the storage unit 200, and generates the distribution of the commands for each predetermined period Ts (for example, Ts=200ms) (step SA02). Then, the number of elements, the valid distribution, the number of valid distributions, and the distribution interval during the predetermined n cycles are calculated. Here, the number of elements refers to the number of commands in each cycle. The valid distribution refers to the cycle in which the number of elements is not zero. The number of valid distributions refers to the number of valid distributions during the n cycles. The distribution interval refers to the time or number of cycles between valid distributions. Then, when the difference in the number of elements in each cycle during the n cycles is less than the predetermined threshold value Th1, the type of the application is set to frequent (steps SA03, SA04). Next, if the maximum or average value of the difference in the number of elements in each period during n cycles is greater than or equal to threshold Th1, the number of valid distributions in the n periods is compared with a predetermined threshold Th2. If the valid distribution number is less than threshold Th2, the application type is set to scattered (steps SA05 and SA06). Furthermore, if the valid distribution number in the n periods is greater than or equal to threshold Th2, the maximum or average value of the difference in the distribution intervals in the n periods is compared with a predetermined threshold Th3. If the distribution interval difference is less than threshold Th3, the application type is set to periodic (steps SA07 and SA08). Furthermore, if none of the conditions are met, the application type is set to mass (step SA09).
[0039] The command analysis unit 112 further calculates the average distribution interval Id of the command av , average instruction interval Ic av (Steps SA10 and SA11), and the priority level preset for each command is acquired (Step SA12).
[0040] Figure 4 The commands indicated by each application are illustrated in the timing diagram. Figure 5 The command analysis unit 112 analyzes Figure 4 Examples of analysis results obtained for each application are shown in the timing diagram of . Figure 4 、 5 As shown in the example, applications with a large number of commands issued in all cycles are set to Frequent. Applications with a small number of commands issued in all cycles are set to Sporadic. Applications with commands issued in a fixed cycle are set to Periodic. Applications other than these are set to Mass.
[0041] The command issuance determination unit 114 determines the output of the command indicated by the application to the communication processing unit 120 (issuance to the control device 3) based on the analysis result (classification content) of the command analysis unit. In the case where commands are indicated from multiple applications too densely (for example, when the instruction interval of the commands indicated from multiple applications becomes less than a predetermined allowed interval, or when commands are indicated from multiple applications at the same timing), the command issuance determination unit 114 outputs the commands indicated by the application of type "sporadic" and the application of type "periodic" to the communication processing unit 120 in priority to other commands, and issues an instruction to the command processing unit 116 to delay the output of other commands. In addition, in the case where commands are indicated from multiple applications too densely, the command issuance determination unit 114 outputs the commands with higher priority (in Figure 4 In the example, the priority D and priority C commands are output to the communication processing unit 120 in priority to other commands, and the command processing unit 116 is instructed to delay the output of other commands. In addition, the command issuance arbitration unit 114 instructs the command processing unit 116 to output commands to the communication processing unit 120 while adjusting the instruction interval of the commands to be greater than the predetermined allowable interval, so as to prevent excessive transmission of commands to the control device 3. Figure 6 1 is a diagram showing an example of the determination performed by the command issuance determination unit 114. Figure 6 As illustrated, the command issuance arbitration unit 114 conducts arbitration to delay the output of commands of a low-priority application and commands of a low-priority application when there is a conflict between commands or when instructions are issued too frequently.
[0042] Figure 7 The following is an example of a schematic flowchart of the command issuance determination process performed by the command issuance determination unit 114. The command issuance determination unit 114 counts the number SC of commands currently indicated by each application program for each execution cycle (step SB01). Then, if the number of indicated commands does not exceed three, the command issuance determination unit 114 instructs the command processing unit 116 to sequentially issue the indicated commands at predetermined time intervals (step SB03). On the other hand, if the number of indicated commands exceeds three, the command issuance determination unit 114 corrects the command issuance interval for each command using the allowed interval and the instruction interval (or the correction interval described later) (steps SB04 to SB08).
[0043] The command issuance arbitration unit 114 then calculates the priority of each command based on the priority of the application that issued the command and the priority of the command itself, and instructs the command processing unit 116 to issue the commands in order, starting with the command with the highest priority as a result of the calculation (steps SB09 to SB12).
[0044] The command processing unit 116 converts the access command output from the application programs 300 a , 300 b , 300 c , . . . for the control device 3 into a format that can be interpreted by the control device 3 , and passes the command to the communication processing unit 120 .
[0045] The communication processing unit 120 is implemented by the CPU 11 executing a system program read from the ROM 12, primarily performing arithmetic processing by the CPU 11 using the RAM 13 and nonvolatile memory 14, and input / output processing using the interface 20. The communication processing unit 120 outputs commands input from the communication interface to the control device 3 via the network 5. Furthermore, upon receiving a response from the control device 3, the communication processing unit 120 transmits the received response to the communication interface 110.
[0046] The information processing device 1 of this embodiment, equipped with the above-described structure, can identify and analyze the number and timing of accesses from various applications to the control device, a task that was previously difficult. Furthermore, by quantifying the access trends of each application, access to the control device can be managed for each application. This allows for the appropriate allocation of access from a large number of applications to the control device. Consequently, performance degradation and processing delays caused by access delays can be prevented.
[0047] Conventionally, to adjust access to the control device 3, it was necessary to modify each application to adjust the amount of access, access timing, and interval. In the information processing device 1 of this embodiment, the command issuance arbitration unit 114 automatically performs the adjustment, and the arbitration correction tool unit 130 can correct the adjustment amount. Therefore, it is no longer necessary to modify each application.
[0048] Figure 8 This figure schematically shows the functions of the information processing device 1 according to the second embodiment of the present invention. The functions of the information processing device 1 according to this embodiment are realized by the CPU 11 executing a system program and controlling the operation of each unit of the information processing device 1.
[0049] In addition to the central processing unit 100, the communication interface unit 110, and the communication processing unit 120, the information processing device 1 of this embodiment further includes a judgment correction tool unit 130. Furthermore, a storage unit 200 is provided on the RAM 13 or the nonvolatile memory 14. This storage unit 200 is an area for storing information related to commands issued by application programs 300a, 300b, 300c, etc. for accessing the control device 3.
[0050] The central processing unit 100 , communication interface unit 110 , and communication processing unit 120 included in the information processing device 1 of this embodiment have the same functions as those of the central processing unit 100 , communication interface unit 110 , and communication processing unit 120 included in the information processing device 1 of the first embodiment.
[0051] The judgment correction tool unit 130 is Figure 1 The CPU 11 of the information processing device 1 shown in FIG. 1 executes a system program read from the ROM 12, and mainly performs arithmetic processing using the RAM 13 and the non-volatile memory 14, and input and output processing using the interfaces 18 and 19. The judgment correction tool unit 130 displays the analysis result of the command analysis unit 112 on the display device 70. For example, Figure 9 As shown in the example, the timing of the command instructions of the correction tool unit 130 and each application is determined. Figure 1 A table showing the analysis results is shown. Figure 9 In the table of analysis results, the Corrected Interval column is a column for correcting the instruction interval (the average interval at which commands are issued in this application). The Corrected Interval column basically displays the instruction interval of each application. In addition, for applications whose instruction interval is less than the predetermined allowable interval, the Corrected Interval column displays the allowable interval value (in the Figure 9 In the example, it is 32ms). In addition, when the type of application is scattered, the column for the correction interval is not displayed (correction cannot be performed). The operator edits the column for the correction interval while referring to the analysis results displayed on the display device 70, thereby being able to correct the instruction interval of the commands in each application. In addition, the operator can also change the priority of each application by changing the column for the priority. In the case where the correction interval and the priority of the application are corrected by the operator, the arbitration correction tool unit 130 can also adjudicate the instructions of the commands of each application displayed in the timing diagram based on the corrected content and redisplay them.
[0052] The information processing device 1 of this embodiment, having the above-described configuration, can utilize the analysis results of the command analysis unit 112 to determine and appropriately distribute access from a large number of applications to the control device 3 via the determination and correction tool unit 130 and the command issuance determination unit 114. This prevents performance degradation and processing delays caused by access delays.
[0053] As mentioned above, although one embodiment of the present invention has been described, the present invention is not limited to the example of the embodiment described above, and can be implemented in various forms by adding appropriate changes.
[0054] Description of Reference Signs
[0055] 1. Information processing device;
[0056] 3. Control device;
[0057] 5. Network;
[0058] 11CPU;
[0059] 12ROM;
[0060] 13 RAM;
[0061] 14 non-volatile memory;
[0062] Interfaces 15, 18, 19, 20, and 21;
[0063] 22 buses;
[0064] 70 display device;
[0065] 71 input device;
[0066] 72 external devices;
[0067] 100 Central Processing Unit;
[0068] 110 Communication Interface Department;
[0069] 112 Command Analysis Department;
[0070] 114 Order Issuing Ruling Department;
[0071] 116 Command Processing Department;
[0072] 120 Communication Processing Department;
[0073] 130 Ruling Amendment Tool Department;
[0074] 200 storage unit.
Claims
1. An information processing device connected to a control device, and controlling access to the control device when a command to access the control device is issued from a plurality of application programs, characterized in that: The information processing device comprises: a command analysis unit that analyzes, for each of the application programs, instructions for commands to access the control device, the number of commands from each of the application programs to access the control device within a predetermined period, and timing of the commands; as well as A command issuance determination unit determines an issuance interval of the command to the control device based on the access to the control device by each application analyzed by the command analysis unit.
2. The information processing device according to claim 1, wherein The information processing device further comprises: A ruling correction tool unit visualizes a timing chart showing a state of issuance of commands for each application program to the control device and an analysis result of the command analysis unit, and corrects parameters related to the ruling of issuance of the commands.
3. The information processing device according to claim 1, wherein The analysis result of the command analysis unit includes information on the priority of each application and the priority of each command. In a case where commands are excessively issued, the command issuance arbitration section arbitrates issuance of commands in an issuance order in accordance with a priority of each of the application programs and a priority of each of the commands.
Citation Information
Patent Citations
Support device and recording medium
CN109557889A
Control system and control device
CN109582397A
Numerical value control system efficiently delivering numerical value control data
JP2017134459A