Control device, control method, and control program
The control device addresses memory abnormalities in production site control systems by using a dual-memory system and noise management units, allowing for simultaneous memory restoration and continued operation, thus reducing stoppages and improving productivity.
Patent Information
- Application Number
- JP2024563381
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2024-07-29
- Publication Date
- 2025-03-18
- Estimated Expiration
- 2044-07-29
AI Technical Summary
Existing control devices for production sites, such as PLCs, face issues with memory abnormalities caused by noise, leading to unnecessary device stoppages and impacting productivity.
The control device incorporates a dual-memory system with a nonvolatile memory for storing programs and two volatile memory regions: one for normal operation and another for handling memory abnormalities. It includes noise acquisition and abnormality judgment units to manage memory restoration while maintaining operation.
This solution enables simultaneous memory restoration and continued operation when memory abnormalities occur due to noise, reducing unnecessary device stoppages and enhancing productivity.
Smart Images

Figure 0007648017000001 
Figure 0007648017000002 
Figure 0007648017000003
Abstract
Description
[Technical field]
[0001] The present disclosure relates to control devices and the like. [Background technology]
[0002] Machines and equipment used at production sites are controlled by control devices such as PLCs. Such control devices are exposed to a noisy environment, such as electromagnetic energy caused by electrostatic discharges from surrounding machines and equipment, and this noise can cause memory errors in the control devices. When an error occurs in the memory, it can stop not only the device containing the memory with the error, but the entire device, causing unnecessary stoppages at the production site.
[0003] To address this problem, Patent Document 1 discloses a technology that can prevent unnecessary shutdowns by stopping only the parts of the control device related to the memory where the abnormality occurred, while allowing the rest of the device to continue operating. [Prior art documents] [Patent documents]
[0004] [Patent Document 1] JP 2018-128820 A Summary of the Invention [Problem to be solved by the invention]
[0005] However, in Patent Document 1, memory recovery is not performed while operation continues. In this case, to recover the memory, it is necessary to reset the PLC system, but resetting the PLC system may stop the entire device, which may affect productivity. Therefore, a technology is required to recover the memory while continuing operation.
[0006] The present disclosure aims to provide a control device etc. that is capable of continuing operation while simultaneously recovering memory when an abnormality occurs in the memory due to noise. [Means for solving the problem]
[0007] The control device of the present disclosure comprises a volatile memory including a nonvolatile memory in which a program is stored, a first area used under normal circumstances and in which the program is stored from the nonvolatile memory, and a second area used in the event of an abnormality in the first area and in which the program is stored from the nonvolatile memory, a noise acquisition unit that acquires information regarding noise, an abnormality occurrence determination unit that determines whether an abnormality has occurred in the volatile memory, and a control unit that executes the program stored in the first area and stores an execution result obtained by executing the program stored in the first area in the first area and the second area, wherein when the noise acquisition unit acquires information regarding noise and the abnormality occurrence determination unit determines that an abnormality has occurred in the first area, the control unit i) stops the execution of the program stored in the first area, and ii) stores the program stored in the second area using the execution result obtained by executing the program stored in the first area and stored in the second area to continue operation, while storing the program from the nonvolatile memory to the first area to restore the first area. Effect of the Invention
[0008] The control device etc. disclosed herein is capable of recovering the memory while continuing operation when an abnormality occurs in the memory due to noise. [Brief description of the drawings]
[0009] [Figure 1] FIG. 1 is a diagram showing a functional configuration of a control device according to a first embodiment of the present disclosure. [Diagram 2] FIG. 1 is a diagram illustrating an example of a hardware configuration of a control device according to a first embodiment of the present disclosure. [Diagram 3] FIG. 1 is a diagram showing an example of an operation of a control device according to the first embodiment of the present disclosure. [Figure 4]FIG. 1 is a diagram showing an example of an operation of a control device in a first region according to the first embodiment of the present disclosure; [Diagram 5] FIG. 13 is a diagram showing an example of an operation of the control device in the second region according to the first embodiment of the present disclosure. [Figure 6] FIG. 13 is a diagram showing an example of an operation of a control device according to a third embodiment of the present disclosure in a second region; [Figure 7] FIG. 13 is a diagram showing an example of an operation of a control device in a first region according to a fourth embodiment of the present disclosure. [Figure 8] FIG. 13 is a diagram illustrating an example of a hardware configuration of a control device according to a fifth embodiment of the present disclosure. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0010] Hereinafter, a control device according to an embodiment of the present disclosure will be described with reference to the drawings. In the drawings, the same reference numerals are used to denote the same or corresponding parts.
[0011] Embodiment 1 The control device according to this embodiment is a CPU (Central Processing Unit) unit that executes a program and controls controlled devices in a PLC (Programmable Logic Controller) system.
[0012] As shown in FIG. 1, the control device 1 includes an auxiliary memory unit 11, a main memory unit 12, a noise acquisition unit 13, an abnormality occurrence determination unit 14, a setting unit 15, a control unit 16, a notification unit 17, and a communication unit 18.
[0013] The auxiliary storage unit 11 stores a program for the control device 1 to perform control. The auxiliary storage unit 11 also stores noise acquisition information from the noise acquisition unit 13 and abnormality occurrence information from the abnormality occurrence determination unit 14. The noise acquisition information and abnormality occurrence information will be described later in the explanation of the noise acquisition unit 13 and the abnormality occurrence determination unit 14, respectively. The auxiliary storage unit 11 is an example of a non-volatile memory in which a program is stored.
[0014] The main memory 12 stores a program from the auxiliary memory 11. The main memory 12 includes a first area 121 and a second area 122. The first area 121 is an area of the auxiliary memory 11 used in normal operation, and the second area 122 is an area of the auxiliary memory 11 used in abnormal operation in the first area 121. Hereinafter, the first area 121 or the second area 122 of the main memory 12 may be simply referred to as an area. In addition, an abnormal operation in this embodiment means a case where the abnormality occurrence determination unit 14 determines that an abnormality has occurred in the first area 121, and a normal operation in this embodiment means a case other than an abnormal operation. The abnormality will be described later in the explanation of the abnormality occurrence determination unit 14. The main memory 12 is an example of a volatile memory including a first area used in normal operation and storing a program from a nonvolatile memory, and a second area used in abnormal operation and storing a program from a nonvolatile memory.
[0015] The noise acquisition unit 13 acquires information about noise. The noise in this embodiment includes, for example, static electricity generated when a peripheral device of the control device 1 is in operation. Note that acquiring information about noise may mean that the noise acquisition unit 13 directly detects noise, or that an external detector capable of detecting noise is connected to the control device 1, and when the detector detects noise, the noise acquisition unit 13 receives a notification from the detector. By using an external detector, even if the detector is not built into the control device 1, the noise detected by the external detector can be acquired by the noise acquisition unit 13 in the control device 1. Furthermore, when the noise acquisition unit 13 acquires information about noise, it stores the noise acquisition information in the auxiliary storage unit 11. The noise acquisition information includes information about noise acquired by the noise acquisition unit 13 and the date and time when the noise was acquired. The noise acquisition unit 13 is an example of a noise acquisition unit that acquires information about noise.
[0016] The abnormality occurrence determination unit 14 determines the occurrence of an abnormality in the first area 121 of the main memory unit 12. An abnormality in this embodiment is, for example, a change in a data bit of a volatile memory from 1 to 0 or from 0 to 1 at an unintended timing. In this embodiment, the main memory unit 12 is a volatile memory, and the abnormality occurrence determination unit 14 monitors the data bits in the area of the main memory unit 12 and processes a change in the data bit at an unintended timing as an abnormality. Furthermore, when the abnormality occurrence determination unit 14 determines that an abnormality has occurred in the first area 121 of the main memory unit 12, it stores abnormality occurrence information in the auxiliary memory unit 11. The abnormality occurrence information includes information regarding the abnormality acquired by the abnormality occurrence determination unit 14 and the date and time of the occurrence of the abnormality. The abnormality occurrence determination unit 14 is an example of an abnormality occurrence determination unit that determines the occurrence of an abnormality in a volatile memory.
[0017] The setting unit 15 sets whether to continue operation and restore the first region 121 when an abnormality occurs in the first region 121 due to noise. Hereinafter, the setting of whether to continue operation and restore the first region 121 when an abnormality occurs in the first region 121 due to noise may be simply referred to as an operation continuation setting. If the operation continuation setting is set to continue, the operation continues and the first region 121 is restored when an abnormality occurs in the first region 121 due to noise. If the operation continuation setting is not set to continue, even when an abnormality occurs in the first region 121 due to noise, the operation is not continued and the first region 121 is not restored, and the operation stops as a result. Note that the operation continuation setting is set in advance by the user. For example, the operation continuation setting may be set on the external device using an engineering tool by connecting to an external device such as a computer such as a personal computer, or the operation continuation setting may be set by connecting a programmable display as an external device, or a decision branch for whether to continue operation depending on conditions may be created in a program created by the user. The setting unit 15 is an example of a setting unit that sets whether to continue operation or restore the first area when the noise acquisition unit acquires information regarding noise and the abnormality occurrence determination unit determines that an abnormality has occurred in the first area.
[0018] The control unit 16 stores the program from the auxiliary storage unit 11 in the first area 121 and the second area 122 of the main storage unit 12. The program is stored from the auxiliary storage unit 11 in the first area 121 and the second area 122 when the control device 1 starts operating or when the area in which an abnormality has occurred, which will be described later, is restored. The control unit 16 also executes the program stored in the first area 121 or the second area 122 of the main storage unit 12. The control unit 16 determines which area the program is to be executed from by referring to the noise acquisition unit 13 and the abnormality occurrence determination unit 14, and the details will be described later in the explanation of the operation of the control device 1. When the program is executed, the execution result of the program is used, but when the execution result of the program is not stored, such as at the start of operation, an initial value is used. The initial value may be predetermined in the program, or may be set by the user as necessary. The control unit 16 also stores the execution result of the program in both the first area 121 and the second area 122 of the main storage unit 12. Furthermore, the control unit 16 refers to the noise acquisition unit 13 and the abnormality occurrence determination unit 14 to stop the program being executed, restore the area where the abnormality occurred, and resume the program being stopped. The area where the abnormality occurred is restored by the control unit 16 storing the program from the auxiliary storage unit 11 to the area where the abnormality occurred. The program being stopped is resumed by the control unit 16 stopping the program being executed and using the execution result of the program stored by the program being executed. Note that the recovery of the area where the abnormality occurred and the resume of the program being stopped are performed only when the control unit 16 refers to the setting unit 15 and the operation continuation setting is set to the continuation setting. Although the stopping of the program being executed, the recovery of the area where the abnormality occurred, and the resume of the program being stopped have been individually described, the details of the overall flow will be described later in the description of the operation of the control device 1. The control unit 16 is an example of a control unit according to the present disclosure.
[0019] The notification unit 17 notifies the user of the area in which the program is being executed, between the first area 121 and the second area 122 of the main memory unit 12. More specifically, the notification unit 17 identifies the area in which the program is being executed by referring to the first area 121 and the second area 122 of the main memory unit 12, and then notifies the user of the identified area as the area in which the program is being executed. However, when the result of referring to the first area 121 and the second area shows that the program is not being executed in either the first area 121 or the second area 122, the notification unit 17 does not notify the user. Note that it is preferable that the notification unit 17 periodically refers to the first area 121 and the second area 122 in accordance with the execution of the program from the start of operation of the control device 1 until the end of operation. Here, the notification to the user may be performed in any manner as long as the user can recognize the area in which the program is being executed. For example, the control device 1 may be connected to an external device such as a computer such as a personal computer and displayed on the external device using an engineering tool, or a programmable display may be connected as an external device and displayed on the programmable display, or a light-emitting unit such as an LED may be provided on the housing of the control device 1 and the user may be notified by the light-emitting unit flashing for a certain period of time. The notification unit 17 is an example of a notification unit that notifies the user which of the first and second areas of the volatile memory is in which area the program is being executed.
[0020] The communication unit 18 communicates with devices connected to the control device 1. For example, the control device 1 connects to a device controlled by the control device 1 via the communication unit 18 to exchange control data, connects to an external device such as a computer such as a personal computer to exchange various types of data with the external device using an engineering tool, or connects to a programmable display device as an external device to exchange various types of data with the programmable display device.
[0021] An example of the hardware configuration of control device 1 will be described with reference to Fig. 2. Control device 1 comprises non-volatile memory 1001, volatile memory 1002, communication interface 1003, and processor 1004, which are all connected via bus 1000.
[0022] The non-volatile memory 1001 includes, for example, a ROM (Read Only Memory). The non-volatile memory 1001 stores a program executed by the processor 1004. The non-volatile memory 1001 also stores information acquired by each function realized by the processor 1004. For example, the non-volatile memory 1001 stores noise acquisition information acquired from the noise acquisition unit 13 and abnormality occurrence information acquired from the abnormality occurrence determination unit 14. The non-volatile memory 1001 functions as the auxiliary storage unit 11.
[0023] The volatile memory 1002 includes, for example, a RAM (Random Access Memory). The volatile memory 1002 stores a program that the processor 1004 has loaded from the non-volatile memory 1001. The volatile memory 1002 also functions as a working memory when the processor 1004 executes the program. The volatile memory 1002 functions as a main storage unit 12. In other words, the first area 121 and the second area 122 of the volatile memory 1002 function as a working memory when the processor 1004 executes the program.
[0024] The communication interface 1003 includes, for example, an I / O (Input / Output) interface, a USB (Universal Serial Bus) port, and a serial port. Through the communication interface 1003, the control device 1 communicates with controlled devices of the control device 1 as well as with external devices such as a computer and a programmable display device, and exchanges data with various devices. The communication interface 1003 functions as a communication unit 18.
[0025] The processor 1004 includes, for example, a CPU and an MPU (Micro Processing Unit). The processor 1004 stores a program from the non-volatile memory 1001 to the volatile memory 1002 and executes the program stored in the volatile memory 1002, thereby realizing each function and executing each operation. Each operation will be described later in the explanation of the operation of the control device 1.
[0026] Next, the operation of the control device 1 configured in this manner will be described with reference to Figs. 3 to 5. Here, Fig. 3 is a flowchart showing the overall operation of the control device 1, Fig. 4 is a flowchart showing a specific operation of "operation in the first area" (step S12) among the operations of the control device 1 shown in Fig. 3, and Fig. 5 is a flowchart showing a specific operation of "operation in the second area" (step S14) among the operations of the control device 1 shown in Fig. 3. Note that "operation in the first area" refers to an operation of executing a program stored in the first area, and "operation in the second area" refers to an operation of executing a program stored in the second area. Hereinafter, an operation of executing a program stored in the first area 121 will be expressed as "operation in the first area 121", and an operation of executing a program stored in the second area 122 will be expressed as "operation in the second area 122".
[0027] As shown in FIG. 3, after starting operation, the control unit 16 stores a program from the auxiliary storage unit 11 into the first area 121 and the second area 122 of the main storage unit 12 (step S11).
[0028] After control unit 16 stores the program from auxiliary memory unit 11 to first area 121 and second area 122 of main memory unit 12 in step S11, control device 1 performs operation in first area 121 (step S12). That is, when step S11 is completed, operations from step S121 to step S127 shown in Fig. 4 are performed. Hereinafter, specific operations of operation of control device 1 in first area 121 after step S11 is completed will be described with reference to Fig. 4.
[0029] In the operation in the first area 121, first, the control unit 16 executes the program stored in the first area 121 (step S121). Note that when step S121 is performed after step S11, the execution result of the program has not yet been stored, so that an initial value is used for the execution of the program.
[0030] After the control unit 16 executes the program stored in the first area 121 in step S121, the control unit 16 stores the execution results obtained by executing the program stored in the first area 121 in the first area 121 and the second area 122 (step S122).
[0031] After the control unit 16 stores the execution results obtained by executing the program stored in the first area 121 in the first area 121 and the second area 122 in step S122, the control unit 16 refers to the noise acquisition unit 13 and determines whether the noise acquisition unit 13 has acquired information regarding noise (step S123).
[0032] If noise acquiring section 13 has not acquired information related to noise (step S123: No), control device 1 repeats the operations from step S121. In this case, in step S121, the program execution result stored in step S122 is used for executing the program.
[0033] When the noise acquiring unit 13 acquires information related to noise (step S123: Yes), the noise acquiring unit 13 stores the noise acquisition information in the auxiliary storage unit 11 (step S124).
[0034] After the noise acquisition unit 13 stores the noise acquisition information in the auxiliary memory unit 11 in step S124, the control unit 16 refers to the abnormality occurrence judgment unit 14 to determine whether or not the abnormality occurrence judgment unit 14 has determined that an abnormality has occurred in the first area 121 (step S125).
[0035] If abnormality occurrence determination unit 14 has not determined that an abnormality has occurred in first area 121 (step S125: No), control device 1 repeats the operations from step S121. In this case, in step S121, the program execution result stored in step S122 is used for executing the program.
[0036] If the abnormality occurrence determination unit 14 determines that an abnormality has occurred in the first area 121 (step S125: Yes), the control unit 16 stops the execution of the program stored in the first area 121 (step S126).
[0037] After the control unit 16 stops the execution of the program stored in the first area 121 in step S126, the abnormality occurrence determination unit 14 stores the abnormality occurrence information in the auxiliary storage unit 11 and ends the operation in the first area 121 (step S127).
[0038] Returning to FIG. 3, after the operation of control device 1 in first area 121 ends in step S12, control section 16 refers to setting section 15 to determine whether or not the operation continuation setting is set to continue (step S13).
[0039] If the operation continuation setting is not set to continue, control device 1 ends the operation (step S13: No).
[0040] If the operation continuation setting is set to continue, control device 1 performs operation in second region 122 (step S13: Yes). That is, if the determination in step S13 is positive, operations from step S141 to step S147 shown in Fig. 5 are performed. Hereinafter, specific operations of control device 1 in operation in second region 122 after the determination in step S13 is positive will be described with reference to Fig. 5.
[0041] In operation in the second area 122, first, the control unit 16 starts storing a program from the auxiliary storage unit 11 to the first area 121 (step S141). That is, the control unit 16 starts storing a program from the auxiliary storage unit 11 to the first area 121, which is the area where the abnormality has occurred, thereby starting recovery of the first area 121, which is the area where the abnormality has occurred.
[0042] After control unit 16 starts storing the program from auxiliary storage unit 11 to first area 121 in step S141, control unit 16 executes the program stored in second area 122 (step S142). Note that when step S142 is performed after step S13 and step S141, the program stored in second area 122 has not yet been executed, so the execution result of the program stored in second area 122, which is obtained by executing the program stored in first area 121 in step S122, is used to execute the program.
[0043] After the control unit 16 executes the program stored in the second area 122 in step S142, the control unit 16 stores the execution results obtained by executing the program stored in the second area 122 in the first area 121 and the second area 122 (step S143).
[0044] After the control unit 16 stores the execution results obtained by executing the program stored in the second area 122 in the first area 121 and the second area 122 in step S143, the control unit 16 determines whether the storage of the program from the auxiliary memory unit 11 to the first area 121 has been completed (step S144).
[0045] If storage of the program in first area 121 is not complete (step S144: No), control device 1 repeats the operations from step S142. In this case, in step S142, the execution result of the program stored in step S143 is used for execution of the program.
[0046] If the storage of the program in the first area 121 has been completed (step S144: Yes), the control unit 16 refers to the abnormality occurrence judgment unit 14 and determines whether the abnormality occurrence judgment unit 14 has determined that an abnormality has occurred in the first area 121 (step S145).
[0047] If the abnormality occurrence determination unit 14 determines that an abnormality has occurred in the first area 121 (step S145: Yes), the abnormality occurrence determination unit 14 stores the abnormality occurrence information in the auxiliary storage unit 11 (step S146). Thereafter, the control device 1 repeats the operation from step S141. In other words, if the abnormality in the first area 121 has not been resolved, the process returns to step S141 and attempts to restore the program by storing it again in the first area 121. Note that in this case, in step S142 following step S141, the execution result of the program stored in step S122 is used for executing the program.
[0048] If the abnormality occurrence judgment unit 14 has not determined that an abnormality has occurred in the first area 121 (step S145: No), that is, if the abnormality in the first area 121 has been resolved, the control unit 16 stops execution of the program stored in the second area 122 and terminates operation in the second area 122 (step S147).
[0049] 3, after the operation of the control device 1 in the second domain 122 ends in step S14, the control unit 16 repeats the operation from step S12, that is, resumes the operation in the first domain 121. When resuming the operation in the first domain 121, in step S121, the program execution result stored in step S143 is used for the program execution.
[0050] In this manner, in the control device 1 according to the present embodiment, when the noise acquisition unit 13 acquires information about noise and the abnormality occurrence determination unit 14 determines that an abnormality has occurred in the first area 121, the control unit 16 stops the execution of the program stored in the first area 121, but the execution result obtained by executing the program stored in the first area 121 is stored not only in the first area 121 but also in the second area 122. Therefore, the control unit 16 executes the program stored in the second area 122 using the execution result obtained by executing the program stored in the first area 121 and stored in the second area 122. By doing so, it becomes possible to continue the operation in the second area 122 even if the operation in the first area 121 is stopped. In addition, the control unit 16 stores the program from the auxiliary storage unit 11, i.e., the non-volatile memory 1001, to the first area 121 while continuing the operation, and also restores the first area 121. Therefore, an effect is achieved that when an abnormality occurs in the memory due to noise, it is possible to simultaneously restore the memory while continuing the operation.
[0051] In addition, in the control device 1 according to the present embodiment, when the abnormality occurrence determination unit 14 no longer determines that an abnormality has occurred in the first area 121, the execution of the program stored in the second area 122 is stopped, but the program stored in the second area 122 is executed to continue the operation, and the execution result of the program obtained is stored not only in the second area 122 but also in the first area 121. Therefore, the control unit 16 can resume the execution of the program stored in the first area 121 using the execution result obtained by executing the program stored in the second area 122 and stored in the first area 121, and return from the operation in the second area 122 to the operation in the first area 121. Since the operation is returned to normal after the abnormality no longer occurs in the memory, it is possible to prevent the operation from being returned to normal when an abnormality has occurred in the memory, which leads to an effect of improving maintainability.
[0052] As described above, in the control device 1 according to the present embodiment, when an abnormality occurs in the memory due to noise, the operation can be continued from the recovery of the memory to the return to normal operation without stopping the control device. Being able to continue operation in this way can prevent the control device from being stopped inadvertently, leading to improved productivity. In addition, it also leads to improved maintainability, as it becomes unnecessary to check the stop status of the control device or to investigate the impact of stopping it.
[0053] Here, an example of a memory abnormality not caused by noise is a memory component failure, but in the case of such a component failure, the memory cannot be restored. If the operation is shifted to the second region 122 without detecting noise, the operation is shifted to the second region 122 without being able to distinguish whether the memory abnormality is caused by a component failure or noise, and it becomes impossible to return from the operation in the second region 122 to the operation in the first region 121, and the operation of the control device 1 has to be stopped. If the memory abnormality is caused by noise, the component is not broken, so it can be safely restored, and in order to make sure that it is not a component failure, the occurrence of a memory abnormality caused by noise is set as a condition for shifting to the operation in the second region 122. That is, by setting the condition for shifting to the operation in the second region 122 as the abnormality occurrence determination unit 14 determining that an abnormality has occurred in the first region 121 and the noise acquisition unit 13 acquiring information regarding noise, in addition to the abnormality occurrence determination unit 14 determining that an abnormality has occurred in the first region 121, it is possible to shift to a memory recovery operation after making it clear that the memory abnormality is not caused by noise such as a memory component failure, which has the effect of improving maintainability.
[0054] Furthermore, in control device 1 according to the present embodiment, control unit 16 notifies the user which of first area 121 and second area 122 of volatile memory 1002 the program is being executed in. Since the user can recognize the area in which the program is being executed, the user can grasp the operating status of the control device, which has the effect of improving maintainability.
[0055] Furthermore, in control device 1 according to the present embodiment, when noise acquisition section 13 acquires information related to noise and abnormality occurrence determination section 14 determines that an abnormality has occurred in first area 121, setting section 15 sets whether to continue operation or restore first area 121. Since it is possible to set in advance whether to continue operation and restore the memory when an abnormality has occurred in the memory due to noise, it becomes possible to set the control device according to the user's wishes, which has the effect of improving usability as a control device.
[0056] In addition, when the noise acquisition unit 13 acquires information regarding noise, the noise acquisition information is stored in the auxiliary memory unit 11, and when the abnormality occurrence judgment unit 14 judges that an abnormality has occurred in the first area 121, the abnormality occurrence information is stored in the auxiliary memory unit 11, thereby making it possible to check the operating status of the control equipment in detail, which has the effect of improving maintainability.
[0057] Embodiment 2 The control device according to the second embodiment differs from the first embodiment in that the program stored in the second area 122 is programmed with only the operations necessary for continuing operation. The rest is the same as the first embodiment. Hereinafter, the points that differ from the first embodiment will be explained, but the explanation of the points that are the same as the first embodiment will be omitted.
[0058] In the control device 1 according to the second embodiment, the program stored in the first area 121 is the first program, and the program stored in the second area 122 is the second program. The second program is programmed with the minimum operations for the control device 1 to maintain a state in which production is possible. For example, the first program is programmed with an operation of acquiring sensor values necessary for normal operation, including sensor values necessary for degenerate operation, an operation of displaying information on a display device, an operation of uploading data to a server, and an operation of grasping the operating status of other devices connected to the control device 1. In that case, the second program is programmed with only an operation of acquiring sensor values necessary for degenerate operation. Here, degenerate operation is an operation in which the functions used are restricted more than in normal operation. That is, the second program is programmed with only the operations necessary for continuing operation, and when the second program is executed, the operation is restricted in functions compared to when the first program is executed.
[0059] The auxiliary storage unit 11 stores a first program and a second program.
[0060] The main memory unit 12 stores the first program and the second program from the auxiliary memory unit 11. More specifically, the first program is stored in a first area 121 of the main memory unit 12 from the auxiliary memory unit 11, and the second program is stored in a second area 122 of the main memory unit 12 from the auxiliary memory unit 11.
[0061] The control unit 16 stores the first program from the auxiliary storage unit 11 in the first area 121 of the main storage unit 12 , and stores the second program from the auxiliary storage unit 11 in the second area 122 of the main storage unit 12 .
[0062] Furthermore, the operation of the control device 1 in embodiment 2 is the same as that obtained by replacing the "program stored in the first area 121" with the "first program" and the "program stored in the second area 122" with the "second program," and therefore will not be described.
[0063] Such control device 1 according to embodiment 2 also operates in the same way as control device 1 according to embodiment 1, and even if the second program is programmed with only operations necessary for continuing operation, control unit 16 executes the second program using the execution result of the first program, so that even if operation in first area 121 is stopped, operation can be continued in second area 122. Therefore, control device 1 according to embodiment 2 also has the effect of being able to continue operation while simultaneously recovering the memory when an abnormality occurs in the memory due to noise.
[0064] Furthermore, as in embodiment 2, compared to embodiment 1, even if the second program is programmed with only the operations necessary for continuing operation, the result is the same that even if operation in first area 121 is stopped, operation can be continued in second area 122, and therefore, in addition to the effects described above, all of the effects achieved by control device 1 in embodiment 1 are also achieved by control device 1 in embodiment 2.
[0065] Furthermore, since only the operations necessary for continuing operation are programmed in the second program, there is an effect that operation can be continued by degenerate operation when an abnormality occurs. By operating while limiting the functions to be used compared to normal operation by degenerate operation, for example, even if an abnormality occurs that prevents the control device 1 according to embodiment 1 from continuing operation, it may be possible to continue operation by limiting the functions to be used.
[0066] In addition, since the second program is programmed with only the operations necessary for continuing operation, the capacity of the second program is smaller than the capacity of the first program, which has the effect of reducing the memory capacity required for the second area 122 of the main memory unit 12.
[0067] Embodiment 3 In the control device according to the first embodiment, when the abnormality occurrence determination unit 14 no longer determines that an abnormality has occurred in the first region 121, the execution of the program stored in the second region 122 is stopped, and the execution of the program stored in the first region 121 is resumed using the execution result obtained by executing the program stored in the second region 122. In contrast, in the control device according to the third embodiment, when the abnormality occurrence determination unit 14 no longer determines that an abnormality has occurred in the first region 121 and the noise acquisition unit 13 no longer acquires information regarding noise, the execution of the above-mentioned program is stopped and resumed. That is, the control device according to the third embodiment differs in that a condition for terminating the operation in the second region 122 is added in which the noise acquisition unit 13 re-determines whether or not the noise acquisition unit 13 has acquired information regarding noise in order to determine that the noise has disappeared. The rest is the same as in the first embodiment. Hereinafter, the points different from the first embodiment will be described, but the points similar to the first embodiment will not be described.
[0068] Control device 1 according to embodiment 3 differs from control device 1 according to embodiment 1 only in part of the operation of driving in second region 122. Therefore, specific operations of driving in second region 122 will be described with reference to Fig. 6. Other points are the same as those in embodiment 1, and therefore description thereof will be omitted.
[0069] Fig. 6 is a diagram showing an example of the operation of driving in second area 122 of control device 1 according to embodiment 3, and differs from Fig. 5 showing an example of the operation of driving in second area 122 of control device 1 according to embodiment 1 in that steps S145' and S146' are added. The other steps are the same as in embodiment 1, and therefore description thereof will be omitted.
[0070] In the control device 1 of embodiment 3, if the abnormality occurrence judgment unit 14 does not judge that an abnormality has occurred in the first area 121 (step S145: No), the control unit 16 refers to the noise acquisition unit 13 and judges whether the noise acquisition unit 13 has acquired information regarding noise (step S145').
[0071] If the noise acquiring unit 13 acquires information related to noise (step S145': Yes), the noise acquiring unit 13 stores the noise acquisition information in the auxiliary storage unit 11 (step S146').
[0072] After noise acquisition section 13 stores the noise acquisition information in auxiliary storage section 11 in step S146', control device 1 repeats the operations from step S145.
[0073] If the noise acquiring unit 13 has not acquired information related to noise (step S145': No), the control unit 16 stops the execution of the program stored in the second area 122 and ends the operation in the second area 122 (step S147).
[0074] Such control device 1 according to the third embodiment also operates in the same manner as control device 1 according to the first embodiment except for the operation in second area 122, and the operation in second area 122 is not changed from the first embodiment except that a condition for terminating the operation in second area 122 is added, that is, a condition for determining again whether noise acquisition unit 13 has acquired information on noise in order to determine that the noise has disappeared. Therefore, the fact that control unit 16 executes a program stored in second area 122 using an execution result obtained by executing a program stored in first area 121 remains unchanged, and it is possible to continue the operation in second area 122 even if the operation in first area 121 is stopped. Therefore, control device 1 according to the third embodiment also has the effect of being able to continue the operation and simultaneously recover the memory when an abnormality occurs in the memory due to noise.
[0075] Furthermore, even if a condition for re-determining whether or not the noise acquisition unit 13 has acquired information regarding noise is added to embodiment 1 as a condition for terminating operation in the second area 122, as in embodiment 3, the result is the same that even if operation in the first area 121 is stopped, operation can be continued in the second area 122.Therefore, in addition to the effects described above, all of the effects achieved by the control device 1 of embodiment 1 are also achieved by the control device 1 of embodiment 3.
[0076] Furthermore, as a condition for terminating operation in the second area 122, a condition has been added in which the noise acquisition unit 13 re-determines whether or not it has acquired information regarding noise in order to determine that the noise has disappeared. This makes it possible to return to operation in the first area 121 in an environment where no noise is occurring, thereby achieving the effect of enabling a safer return to normal operation.
[0077] Note that, as a condition for terminating operation in second region 122, a condition for determining again whether noise acquiring unit 13 has acquired information regarding noise in order to determine that noise has disappeared may be added to the conditions for terminating operation in second region 122 in control device 1 according to embodiment 2. Even in this case, in addition to the effect of control device 1 according to embodiment 2, an effect of being able to return to normal operation more safely is achieved.
[0078] Embodiment 4 The control device according to embodiment 4 differs from embodiment 1 in that, when abnormality occurrence determination unit 14 determines that an abnormality has occurred in second area 122, a program is stored from non-volatile memory 1001 to second area 122 to restore second area 122. The rest is the same as embodiment 1. Hereinafter, the points that differ from embodiment 1 will be described, but the description of the points that are the same as embodiment 1 will be omitted.
[0079] Control device 1 according to embodiment 4 differs from control device 1 according to embodiment 1 only in part of the operation of driving in first area 121. Therefore, specific operation of driving in first area 121 will be described with reference to Fig. 7. Other points are the same as those in embodiment 1, and therefore description thereof will be omitted.
[0080] In the first embodiment, an abnormal state means a case where the abnormality occurrence determination unit 14 determines that an abnormality has occurred in the first region 121, and a normal state means a case other than an abnormality, and this also applies to the fourth embodiment. For example, when the abnormality occurrence determination unit 14 determines that an abnormality has occurred in the second region 122, although an abnormality has occurred, operation in the first region 121 continues, and the control device 1 is operating normally.
[0081] The abnormality occurrence determination unit 14 determines whether an abnormality has occurred in the second area 122 in addition to whether an abnormality has occurred in the first area 121 of the main memory unit 12.
[0082] Fig. 7 is a diagram showing an example of the operation of control device 1 in first area 121 according to embodiment 4, and differs from Fig. 4 showing an example of the operation of control device 1 in first area 121 according to embodiment 1 in that steps S122', S123' and S124' are added. The other steps are the same as in embodiment 1, and therefore description thereof will be omitted.
[0083] In the control device 1 of embodiment 4, after the control unit 16 stores the execution result obtained by executing the program stored in the first area 121 in the first area 121 and the second area 122 in step S122, the control unit 16 refers to the abnormality occurrence judgment unit 14 and determines whether or not the abnormality occurrence judgment unit 14 has determined that an abnormality has occurred in the second area 122 (step S122').
[0084] If the abnormality occurrence judgment unit 14 does not judge that an abnormality has occurred in the second region 122 (step S122': No), the control unit 16 refers to the noise acquisition unit 13 and judges whether the noise acquisition unit 13 has acquired information regarding noise (step S123).
[0085] When the abnormality occurrence determination unit 14 determines that an abnormality has occurred in the second area 122 (step S122': Yes), the control unit 16 stores the program from the auxiliary storage unit 11 to the second area 122 (step S123'). That is, the control unit 16 restores the second area 122, which is the area where the abnormality has occurred, by storing the program from the auxiliary storage unit 11 to the second area 122, which is the area where the abnormality has occurred.
[0086] After the control unit 16 stores the program from the auxiliary storage unit 11 to the first area 121 where the abnormality has occurred in step S123', the abnormality occurrence determination unit 14 stores abnormality occurrence information in the auxiliary storage unit 11 (step S124').
[0087] After the abnormality occurrence determination unit 14 stores the abnormality occurrence information in the auxiliary storage unit 11 in step S124', the control unit 16 refers to the noise acquisition unit 13 and determines whether or not the noise acquisition unit 13 has acquired information related to noise (step S123).
[0088] Such control device 1 according to the fourth embodiment also operates in the same manner as control device 1 according to the first embodiment except for the operation in first region 121, and there is no change from the first embodiment except that when abnormality occurrence determination section 14 determines that an abnormality has occurred in second region 122, the operation in first region 121 stores a program from non-volatile memory 1001 to second region 122 and restores second region 122. Therefore, the fact that control section 16 executes a program stored in second region 122 using an execution result obtained by executing a program stored in first region 121 remains unchanged, and it is possible to continue operation in second region 122 even if operation in first region 121 is stopped. Therefore, control device 1 according to the fourth embodiment also has the effect of being able to continue operation and simultaneously restore the memory when an abnormality has occurred in the memory due to noise.
[0089] Furthermore, even if, as in embodiment 4, a step is added to embodiment 1 in which, when the abnormality occurrence judgment unit 14 judges that an abnormality has occurred in the second area 122, a program is stored from the non-volatile memory 1001 in the second area 122 and the second area 122 is restored, the result is the same that even if operation in the first area 121 is stopped, operation can be continued in the second area 122, and therefore all of the effects achieved by the control device 1 of embodiment 1 are also achieved by the control device 1 of embodiment 4.
[0090] Furthermore, when the abnormality occurrence determination unit 14 determines that an abnormality has occurred in the second area 122, a program is stored from the non-volatile memory 1001 in the second area 122 to restore the second area 122. This makes it possible to restore the second area 122 while continuing operation in the first area 121, even if an abnormality occurs in the second area 122 during operation in the first area 121. Since operation can be continued in the second area 122 after restoring the second area 122, it is possible to prevent a transition to operation during an abnormality when an abnormality has occurred in the second area 122, and an effect of safely continuing operation is achieved.
[0091] Note that when abnormality occurrence determination unit 14 determines that an abnormality has occurred in second area 122, storing a program from non-volatile memory 1001 into second area 122 and restoring second area 122 may be added as steps S122' to S124' after step S122 of the operation in first area 121 in control device 1 according to embodiments 2 and 3. Even in this case, in addition to the effect of control device 1 according to embodiments 2 and 3, the effect of being able to continue operation safely is achieved.
[0092] Embodiment 5. The control device according to the first embodiment includes a volatile memory 1002 including a first area 121 that is used in a normal state and stores a program from the non-volatile memory 1001, and a second area 122 that is used in an abnormal state in the first area 121 and stores a program from the non-volatile memory 1001. The control device according to the fifth embodiment includes a volatile memory 1002 including a first volatile memory 1011 that includes the first area 121 and a second volatile memory 1012 that includes the second area 122. That is, the control device according to the fifth embodiment is different in that the volatile memory 1002 includes the first volatile memory 1011 that includes the first area 121 and the second volatile memory 1012 that includes the second area 122. The rest is the same as the first embodiment. Hereinafter, the points that are different from the first embodiment will be described, but the points that are the same as the first embodiment will not be described.
[0093] Control device 1 according to embodiment 5 differs from control device 1 according to embodiment 1 only in part of the hardware configuration of control device 1. Therefore, an example of the hardware configuration of control device 1 according to embodiment 5 will be described with reference to Fig. 8. Other points are the same as those in embodiment 1, so description thereof will be omitted.
[0094] As shown in FIG. 8, the volatile memory 1002 includes a first volatile memory 1011 and a second volatile memory 1012 .
[0095] Like the volatile memory 1002, the first volatile memory 1011 and the second volatile memory 1012 include, for example, a RAM (Random Access Memory). Also, the volatile memory 1002 functions as the main memory unit 12, but the first area 121 which is a part of the main memory unit 12 is included in the first volatile memory 1011, and the second area which is also a part of the main memory unit 12 is included in the second volatile memory 1012. That is, in the control device 1 according to the fifth embodiment, unlike the first embodiment, the first area 121 and the second area 122 are physically separated into the first volatile memory 1011 and the second volatile memory 1012, respectively.
[0096] Such control device 1 according to the fifth embodiment is different from the first embodiment in that volatile memory 1002 includes first volatile memory 1011 including first region 121 and second volatile memory 1012 including second region 122, that is, first region 121 and second region 122 are physically separated into first volatile memory 1011 and second volatile memory 1012, respectively. Therefore, the control unit 16 executes a program stored in second region 122 using an execution result obtained by executing a program stored in first region 121, and it is possible to continue operation in second region 122 even if operation in first region 121 is stopped. Therefore, the control device 1 according to the third embodiment also has the effect of being able to continue operation and simultaneously recover the memory when an abnormality occurs in the memory due to noise.
[0097] Furthermore, as in embodiment 5, unlike embodiment 1, in that the volatile memory 1002 includes a first volatile memory 1011 including a first region 121 and a second volatile memory 1012 including a second region 122, the first region 121 and the second region 122 are physically separated into the first volatile memory 1011 and the second volatile memory 1012, respectively. However, the result is the same as in embodiment 1 in that operation can be continued in the second region 122 even if operation in the first region 121 is stopped, and therefore all of the effects achieved by the control device 1 of embodiment 1 are also achieved by the control device 1 of embodiment 5.
[0098] Furthermore, since the first area 121 and the second area 122 are physically separated into the first volatile memory 1011 and the second volatile memory 1012, respectively, the effect of further improving access performance and memory data robustness compared to embodiment 1 is achieved.
[0099] Similarly, in the second, third and fourth embodiments, the volatile memory 1002 may include a first volatile memory 1011 including a first region 121 and a second volatile memory 1012 including a second region 122, so that the first region 121 and the second region 122 are physically separated into the first volatile memory 1011 and the second volatile memory 1012, respectively. Even in this case, in addition to the effects of the control device 1 according to the second, third and fourth embodiments, there is also an effect that the access performance and the data robustness of the memory are further improved compared to the first embodiment.
[0100] Various embodiments and modifications of the present disclosure are possible without departing from the broad spirit and scope of the present disclosure. The above-described embodiments are for explaining the present disclosure and do not limit the scope of the present disclosure. In other words, the scope of the present disclosure is indicated by the claims, not the embodiments. Various modifications made within the scope of the claims and within the scope of the disclosure equivalent thereto are considered to be within the scope of the present disclosure. [Explanation of symbols]
[0101] 1 control device, 11 auxiliary memory unit, 12 main memory unit, 121 first area, 122 second region, 13 noise acquisition unit, 14 abnormality occurrence determination unit, 15 setting unit, 16 control unit, 17 notification unit, 18 communication unit, 1000 bus, 1001 non-volatile memory, 1002 volatile memory, 1003 communication interface, 1004 processor, 1011 first volatile memory, 1012 second volatile memory
Claims
1. A non-volatile memory in which a program is stored; a volatile memory including a first area used in normal operation and storing the program from the nonvolatile memory, and a second area used in abnormal operation in the first area and storing the program from the nonvolatile memory; a noise acquisition unit that acquires information regarding noise; an abnormality occurrence determination unit that determines the occurrence of an abnormality in the volatile memory; a control unit that executes the program stored in the first area and stores an execution result obtained by executing the program stored in the first area in the first area and the second area; Equipped with The control unit, when the noise acquisition unit acquires information regarding the noise and the abnormality occurrence determination unit determines that an abnormality has occurred in the first area, i) stops execution of the program stored in the first area, and ii) executes the program stored in the second area using the execution result obtained by executing the program stored in the first area and stored in the second area to continue operation, while storing the program from the non-volatile memory to the first area, thereby recovering the first area.
2. The control device according to claim 1, characterized in that the control unit executes the program stored in the second area to continue operation and stores the execution results of the program obtained in the first area and the second area.
3. The control device described in claim 2, characterized in that when the abnormality occurrence judgment unit no longer judges that an abnormality has occurred in the first area, the control unit stops execution of the program stored in the second area and resumes execution of the program stored in the first area using an execution result obtained by executing the program stored in the second area.
4. The control device according to claim 3, further characterized in that, when the noise acquisition unit stops acquiring information regarding the noise, the control unit stops execution of the program stored in the second area and resumes execution of the program stored in the first area.
5. The control device according to any one of claims 1 to 4, characterized in that when the abnormality occurrence determination unit determines that an abnormality has occurred in the second area, the control unit stores the program from the non-volatile memory to the second area and restores the second area.
6. The control device according to any one of claims 1 to 4, further comprising an alarm unit that notifies a user which of the first and second areas of the volatile memory is executing the program.
7. the programs stored in the non-volatile memory include a first program used in normal operation and stored in the first area, and a second program used in abnormal operation in the first area and stored in the second area, 5. The control device according to claim 1, wherein the second program is smaller in size than the first program.
8. 8. The control device according to claim 7, wherein the second program is programmed with only operations necessary for continuing the operation.
9. The control device according to any one of claims 1 to 4, further comprising a setting unit that sets whether to continue the operation or restore the first area when the noise acquisition unit acquires information regarding the noise and the abnormality occurrence determination unit determines that an abnormality has occurred in the first area.
10. 5. The control device according to claim 1, wherein the volatile memory includes a first volatile memory including the first area, and a second volatile memory including the second area.
11. A first step of obtaining information about noise; a second step of determining, from a non-volatile memory in which a program is stored and which is used under normal circumstances, whether an abnormality has occurred in a first area of a volatile memory that stores the program; a third step of executing the program stored in the first area, and storing an execution result obtained by executing the program stored in the first area in the first area and in a second area of the volatile memory that is used when an abnormality occurs in the first area and that stores the program from the nonvolatile memory; a fourth step of acquiring information about the noise and, when it is determined that the abnormality has occurred, stopping the execution of the program stored in the first area; a fifth step of executing the program stored in the second area using an execution result obtained by executing the program stored in the first area and stored in the second area to continue operation, while storing the program from the non-volatile memory into the first area to restore the first area; A control method comprising:
12. On the computer, A first step of obtaining information about noise; a second step of determining, from a non-volatile memory in which a program is stored and which is used under normal circumstances, whether an abnormality has occurred in a first area of a volatile memory that stores the program; a third step of executing the program stored in the first area, and storing an execution result obtained by executing the program stored in the first area in the first area and in a second area of the volatile memory that is used when an abnormality occurs in the first area and that stores the program from the nonvolatile memory; a fourth step of acquiring information about the noise and, when it is determined that the abnormality has occurred, stopping the execution of the program stored in the first area; a fifth step of executing the program stored in the second area using an execution result obtained by executing the program stored in the first area and stored in the second area to continue operation, while storing the program from the non-volatile memory into the first area to restore the first area; A control program for causing the user to execute the above steps.
Citation Information
Patent Citations
JP1982014201U
Event processing system, processing device, processing method, and program
JP2022016730A
Control system, control method, and recording medium
WO2023074430A1
Control device and method for controlling the same
JP2018128820A