Management device, network system, and method for managing robot operation programs
Patent Information
- Application Number
- JP2023531204
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-06-29
- Publication Date
- 2025-02-19
- Estimated Expiration
- 2041-06-29
AI Technical Summary
【0007】 本開示によれば、未承認の動作プログラムが実行されていることを迅速に発見し、該未承認の動作プログラムによって予期せぬ事故が発生してしまうのを、未然に防止できる。その結果、作業効率を向上させることができる。
Smart Images

Figure 0007633404000003 
Figure 0007633404000004 
Figure 0007633404000005
Abstract
Description
[Technical field]
[0001] The present disclosure relates to a management device, a network system, and a method for managing an operation program of a robot. [Background technology]
[0002] 2. Description of the Related Art There is known a program correction device that, when a robot operation program is corrected, supplies the corrected portion to a robot control device (for example, see Patent Document 1). [Prior art documents] [Patent documents]
[0003] [Patent Document 1] JP 2016-016488 A Summary of the Invention [Problem to be solved by the invention]
[0004] In the past, there were cases where an operation program was executed without the administrator's approval of modifications to the operation program. In such cases, there is a demand for a technology that can reliably prevent unexpected accidents from occurring due to an unauthorized operation program. [Means for solving the problem]
[0005] In one aspect of the present disclosure, a management device that manages a robot's operation program includes a data acquisition unit that acquires change information indicating changes made to the operation program and execution information indicating that the operation program has been executed to operate the robot, an input receiving unit that accepts input approving the change information acquired by the data acquisition unit, an approval determination unit that determines whether the change information of the operation program being executed has been approved when the data acquisition unit acquires the execution information, and a process execution unit that executes a predetermined accident prevention process when the approval determination unit determines that the change information has not been approved.
[0006] In another aspect of the present disclosure, a method for managing a robot's operation program includes acquiring change information indicating changes made to the operation program and execution information indicating that the operation program has been executed to operate the robot, accepting input approving the change information acquired by the data acquisition unit, determining whether the change information of the operating program being executed has been approved upon acquiring the execution information, and executing a predetermined accident prevention process if it is determined that the change information has not been approved. Effect of the Invention
[0007] According to the present disclosure, it is possible to quickly discover that an unauthorized operation program is being executed, and to prevent an unexpected accident caused by the unauthorized operation program, thereby improving work efficiency. [Brief description of the drawings]
[0008] [Figure 1] FIG. 1 is a block diagram of a network system according to an embodiment. [Diagram 2] FIG. 1 is a diagram of a robotic system according to one embodiment. [Diagram 3] 1 is a flowchart showing an example of a method for managing an operation program of a robot. [Figure 4] FIG. 11 is a block diagram of a network system according to another embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0009] Hereinafter, an embodiment of the present disclosure will be described in detail with reference to the drawings. In various embodiments described below, similar elements are given the same reference numerals, and duplicated explanations will be omitted. First, a network system 10 according to one embodiment will be described with reference to FIG. 1. The network system 10 includes a robot system 12, a preventive maintenance device 14, an external device 16, and a communication network 18.
[0010] The robot system 12 is an industrial robot system that performs a predetermined task on a workpiece. The preventive maintenance device 14 obtains from the robot system 12 operation status data OD indicating the operation status of the robot system 12 or an abnormality identification code CD indicating an abnormality in the robot system 12, and monitors abnormalities occurring in the robot system 12 based on the operation status data OD or the abnormality identification code CD.
[0011] The external device 16 is, for example, a computer such as a desktop or portable PC, or a server. The communication network 18 is, for example, a LAN (such as an intranet) or the Internet, and connects the robot system 12, the preventive maintenance device 14, and the external device 16 so that they can communicate with each other. As an example, the robot system 12 may be installed in a first building in which a work line is provided, the preventive maintenance device 14 may be installed in a second building separate from the first building, and the external device 16 may be installed in a third building separate from the first building and the second building.
[0012] Fig. 2 shows an example of the robot system 12. The robot system 12 includes a robot 20, a sensor 22 (Fig. 1), a control device 24, and a teaching device 26. In the example shown in Fig. 2, the robot 20 is a vertical articulated robot, and includes a robot base 28, a rotating body 30, a lower arm 32, an upper arm 34, a wrist 36, and an end effector 38.
[0013] The robot base 28 is fixed on the floor of the work line. The rotating body 30 is provided on the robot base 28 so as to be rotatable around a vertical axis. The lower arm 32 is provided on the rotating body 30 so as to be rotatable around a horizontal axis, and the upper arm 34 is provided on the tip of the lower arm 32 so as to be rotatable.
[0014] The wrist 36 is provided at the tip of the upper arm 34 so as to be rotatable about two mutually perpendicular axes. The end effector 38 is detachably attached to the tip (so-called wrist flange) of the wrist 36. The end effector 38 is, for example, a robot hand, a cutting tool, or a welding torch, and performs a predetermined operation on a workpiece (workpiece handling, cutting, welding, etc.).
[0015] A servo motor 40 (FIG. 1) is provided on each component of the robot 20 (robot base 28, rotating torso 30, lower arm 32, upper arm 34, wrist 36). The servo motor 40 drives the movable components of the robot 20 (rotating torso 30, lower arm 32, upper arm 34, wrist 36) in response to commands from the control device 24.
[0016] The sensor 22 detects operation status data OD of the robot system 12. The operation status data OD includes, for example, the rotational position, rotational speed, rotational acceleration, current value, and load torque of the servo motor 40, the external force acting on the robot 20, and the voltage of a battery for operating the control device 24 (or an encoder provided on the servo motor 40). The sensor 22 supplies the detected operation status data OD to the control device 24.
[0017] The control device 24 controls the operation of the robot 20. Specifically, the control device 24 is a computer having a processor (CPU, GPU, etc.) and a storage unit (ROM, RAM, etc.), and generates commands to the servo motors 40 of the robot 20 according to a pre-created operation program OP, and operates each movable component of the robot 20 according to the commands, thereby moving the end effector 38 to a plurality of teaching points TP defined in the operation program OP. k In this manner, the control device 24 moves the robot 20 in accordance with the operation program OP to move the end effector 38 to the teaching point TP. k While moving the workpiece, a predetermined operation is performed on the workpiece by the end effector 38.
[0018] In the operation program OP, a command CM for causing the robot 20 to execute a predetermined operation is defined together with operation parameters PR of the robot 20. The operation parameters PR include, for example, a plurality of teaching points TP k The position data (specifically, the coordinates of the robot coordinate system) and the two teaching points TP k and TP k+1 The moving trajectory and moving speed between the two points are also included.
[0019] The control device 24 is communicatively connected to the preventive maintenance device 14 via the communication network 18. When the control device 24 (specifically, a processor) executes an operation program OP to operate the robot 20, it supplies execution information EI to the preventive maintenance device 14. The execution information EI includes, for example, information such as a program name NM of the executed operation program OP, and a start time t1 and an end time t2 of the operation program OP. The program name NM is, for example, an arbitrary character string, and is given by an operator A1 of the robot system 12.
[0020] Furthermore, the control device 24 detects an abnormality in the robot system 12 based on the operation status data OD acquired by the sensor 22 while the robot 20 is operating according to the operation program OP. For example, the control device 24 (specifically, the processor) determines that an abnormality has occurred in the robot system 12 when the value of the operation status data OD (rotational position, rotational speed, rotational acceleration, current value, load torque, external force, voltage, etc.) acquired from the sensor 22 exceeds a predetermined reference value.
[0021] When the control device 24 detects that an abnormality has occurred in the robot system 12, it transmits an abnormality identification code CD for identifying the abnormality to the preventive maintenance device 14 through the communication network 18. The abnormality identification code CD is, for example, a character string (a so-called error code), and is assigned individually for each of multiple types of abnormalities that may occur in the robot system 12 (such as malfunction of the sensor 22, interference between the robot 20 and objects in the surrounding environment, and a drop in battery voltage).
[0022] The teaching device 26 teaches the robot 20 how to move. Specifically, the teaching device 26 is, for example, a portable computer such as a teaching pendant or a tablet terminal device, and has a processor (CPU, GPU, etc.), a storage unit (ROM, RAM), a display unit (LCD, organic EL display, etc.), and an operation unit (push button, touch sensor, etc.).
[0023] The teaching device 26 is communicatively connected to the control device 24, and can jog the robot 20 via the control device 24 in response to an input to an operation unit. The operator A1 operates the operation unit of the teaching device 26 to jog the robot 20, thereby teaching the robot 20 a predetermined operation, and thereby creates an operation program OP0 for causing the robot 20 to execute the predetermined operation. In this manner, the initial operation program OP0 is created.
[0024] The teaching device 26 assigns initial version information VER0 to the created operation program OP0. The version information VER0 is, for example, a character string "VER.000". The teaching device 26 supplies the created operation program OP0 together with additional information such as the program name NM, the program creation time t3, and the version information VER0 to the control device 24, and then supplies it to the preventive maintenance device 14 via the communication network 18.
[0025] On the other hand, the operator A1 operates the teaching device 26 to repeatedly change the CH of the created operation program OP0. n Changes CH made to the operating program OP0 n Examples of such a change include changing a character or line of a command statement CM, changing the values of operation parameters PR (position data, movement speed, etc.), or adding a new command statement CM or operation parameter PR.
[0026] Using the teaching device 26, the first change CH1, the second change CH2, ..., the nth change CH nEach time CH is added, the operation program OP changes from the initial operation program OP0 to the operation program OP1 after the first change CH1, to the operation program OP2 after the second change CH2, ... the operation program OP after the nth change CH n Later operation program OP n will be updated.
[0027] More specifically, the teaching device 26 (processor) receives the nth change CH from the operator. n Input IPc n When the input IPc n In response to the instruction, the operation program OP currently stored in the memory of the teaching device 26 is n-1 Change to CH n Add the operation program OP n At this time, the teaching device 26 updates the changed operation program OP n , new version information VER n (For example, if n=3, the character string: “VER.003”) is automatically added and stored in the memory unit of the teaching device 26.
[0028] The teaching device 26 then n Change information to indicate n The change information CHI is supplied to the preventive maintenance device 14. n For example, the modified operating program OP n Program name NM, change time t4, and version information VER n Additional information and changes made n Changes in the data shown in CHD n Includes.
[0029] As an example, change contents data CHD n is the operation program after the change n In another example, the change content data CHD may include only the changed (or added) parts (i.e., the changed or added command statements CM or the operation parameters PR). n is the operation program after the change nIt may include the command itself (that is, all the command statements CM and the action parameters PR).
[0030] In this way, the teaching device 26 changes CH n The operating program OP n-1 Add it to the operating program OP n , and the robot 20 is taught the motion of the robot 20. n Each time it is added, the modified operation program OP n Along with the change information CHI n The control device 24 transmits the received operation program OP n is stored in the storage unit, and the change information CHI n is transmitted to the preventive maintenance device 14 via the communication network 18.
[0031] As described above, in this embodiment, the control device 24 and the teaching device 26 are directly or indirectly connected to the robot 20 and the preventive maintenance device 14, and communicate with each other to exchange execution information EI and change information CHI. n The preventive maintenance device 14 receives the execution information EI and the change information CHI. n to the preventive maintenance device 14.
[0032] The preventive maintenance device 14 is a computer (such as a PC or a server) having a processor 50, a storage unit 52, an I / O interface 54, an input device 56, and a display device 58. The processor 50 has a CPU or a GPU, and is communicatively connected to the storage unit 52, the I / O interface 54, the input device 56, and the display device 58 via a bus 60.
[0033] The storage unit 52 has a RAM, a ROM, or the like, and temporarily or permanently stores various data used in the arithmetic processing executed by the processor 50 and various data generated during the arithmetic processing. The I / O interface 54 has, for example, an Ethernet (registered trademark) port, a USB port, an optical fiber connector, or an HDMI (registered trademark) terminal, and communicates data with other devices in a wired or wireless manner under instructions from the processor 50. The I / O interface 54 is connected to the communication network 18.
[0034] The input device 56 has a keyboard, a mouse, a touch panel, or the like, and receives data input from an operator. The display device 58 has a liquid crystal display, an organic EL display, or the like, and displays various data. The input device 56 and the display device 58 may be provided separately from the housing of the preventive maintenance device 14, or may be incorporated integrally into the housing of the preventive maintenance device 14.
[0035] The processor 50 obtains the above-mentioned operating status data OD or abnormality identification code CD from the communication device 42 (specifically, the control device 24) through the communication network 18, and detects an abnormality in the robot system 12 based on the operating status data OD or the abnormality identification code CD.
[0036] As one example, when the processor 50 receives an abnormality identification code CD from the control device 24, it can detect that an abnormality identified by the abnormality identification code CD has occurred in the robot system 12. As another example, when the processor 50 acquires operation status data OD, it can detect an abnormality based on the operation status data OD by an abnormality detection method similar to that of the control device 24 described above.
[0037] As yet another example, the processor 50 can detect an abnormality in the robot system 12 by applying the acquired operation state data OD to a learning model LM constructed by machine learning. This learning model LM indicates a correlation between the operation state data OD (e.g., an external force) and an abnormality occurring in the robot system 12 (e.g., interference between the robot 20 and an object in the surrounding environment), and can be constructed, for example, by repeatedly providing a learning data set of the operation state data OD and judgment data indicating the presence or absence of an abnormality to a machine learning device (e.g., supervised learning).
[0038] The processor 50 sequentially inputs the operation status data OD continuously obtained from the robot system 12 to the learning model LM. When there is an abnormality that has a high correlation with the change in the operation status data OD input during a predetermined period, the learning model LM identifies and outputs the abnormality. In this way, the processor 50 can detect an abnormality occurring in the robot system 12 using the learning model LM.
[0039] By using this learning model LM, the processor 50 can predict that an abnormality will cause a component of the robot system 12 to fail. The processor 50 may be configured to execute the functions of the machine learning device described above. In this manner, the processor 50 detects an abnormality in the robot system 12 based on the operation status data OD or the abnormality identification code CD.
[0040] On the other hand, when the processor 50 receives the initial operation program OP0 created by the teaching device 26 through the communication network 18, it generates an approval image AIM0 for approving the operation program OP0 and displays it on the display device 58. For example, the approval image AIM0 includes an approval button image.
[0041] An operator A2 (e.g., a designer of a work line) of the preventive maintenance device 14 can provide the processor 50 with an input IPa0 approving the operation program OP0 by operating the input device 56 and clicking an approval button image in the approval image AIM0 on the image. In response to the input IPa0, the processor 50 assigns an approval flag F1 indicating that the operation program OP0 has been approved as additional information of the operation program OP0. Details of the approval flag F1 will be described later.
[0042] The processor 50 manages the operation program OP. A method for managing the operation program OP will be described below with reference to Fig. 3. The flow shown in Fig. 3 starts when the processor 50 receives an operation start command from the operator A2, a higher-level controller, or a computer program.
[0043] In step S1, the processor 50 receives the modification information CHI n Specifically, as described above, the change channel n The operating program OP n-1 , the processor 50 receives the change information CHI from the communication device 42 through the communication network 18. n The processor 50 obtains the changed CH n Each time a change is made, multiple pieces of change information CHI are acquired. n are sequentially stored as change history data HIS in the storage unit 52. The change history data HIS will be described in detail later.
[0044] Thus, in this embodiment, the processor 50 converts the change information CHI n The processor 50 functions as a data acquisition unit 62 (FIG. 1) that acquires the change information CHI n If the change information CHI is acquired, the determination is YES and the process proceeds to step S2. n If not acquired, the result is NO, and the process proceeds to step S5.
[0045] In step S2, the processor 50 calculates the most recently acquired change information CHIn Approval image for approving AIM n is generated and displayed on the display device 58. For example, the approval image AIM n The operator A2 operates the input device 56 to input the approval image AIM n Click the approval button on the image to change the information n Input IPa to approve n can be provided to the processor 50.
[0046] In step S3, the processor 50 calculates the change information CHI n Input IPa to approve n The processor 50 determines whether or not an input IPa has been received through the input device 56. n If the input IPa n If the change information CHI has not been received, the processor 50 judges the result as NO and proceeds to step S5. n Input IPa to approve n The input unit 64 (FIG. 1) receives the following:
[0047] In step S4, the processor 50 calculates the most recently acquired change information CHI n For example, the processor 50 executes a process of approving the most recent change information CHI stored in the storage unit 52 as the change history data HIS. n An approval flag F1 indicating that approval has been performed is added as additional information to the change history data HIS. An example of the change history data HIS stored in the storage unit 52 is shown in Table 1 below.
[0048] [Table 1]
[0049] Table 1 shows a schematic data structure of the change history data HIS. The example shown in Table 1 shows an operation program OP whose program name NM is "PRG-XYZ001".n 13 shows the change history data HIS of the above, in which "version information," "time," "stored data," and "approval flag" are stored in association with each other.
[0050] For example, the line in which the "Version Information" is "VER.000" corresponds to the initial operation program OP0, the creation time t3 of the initial operation program OP0 is recorded as the "Time", and the operation program OP0 itself (i.e., all command statements CM and operation parameters PR) is stored as the "Stored Data".
[0051] On the other hand, the row with "Version Information" "VER.001" corresponds to change information CHI1 indicating the first change CH1, the change time t4 when change CH1 was made is recorded as the "Time", and change content data CHD1 (the change location, or the operating program OP1 after the change) is stored as the "Stored Data".
[0052] Also, an "O" in the "Approval Flag" column indicates that the approval flag F1, which indicates that approval has been given, has been assigned, while an "X" in the "Approval Flag" column indicates that the approval flag F1 has not been assigned (or a flag indicating that it has not been approved has been assigned). For example, in the example of Table 1, the approval flag F1 has been assigned to the change information CHI1 indicating the first change CH1, which corresponds to "VER.001" ("Approval Flag"="O"), and therefore indicates that the change information CHI1 has been approved by operator A2.
[0053] On the other hand, the approval flag F1 is not assigned to the change information CHI3 indicating the third change CH3 corresponding to "VER.003" ("approval flag"="x"), which indicates that the change information CHI3 has not been approved by the operator A2. n By referring to the presence or absence ("◯" or "×") of the approval flag F1 for each of the operation programs OP0 and OP1, each of the change information CHI nIt can be determined whether or not the program (and the initial operating program OP0) is approved.
[0054] In step S5, the processor 50 judges whether or not the execution information EI has been acquired. Specifically, as described above, when the control device 24 executes the operation program OP, the processor 50 functions as the data acquisition unit 62 and acquires the execution information EI from the control device 24 through the communication network 18. If the processor 50 has acquired the execution information EI, the processor 50 judges YES and proceeds to step S6, whereas if the processor 50 has not acquired the execution information EI, the processor 50 judges NO and proceeds to step S8.
[0055] In step S6, the processor 50 detects the operation program OP n Changes in information for CHI n Specifically, the processor 50 determines whether the operation program OP included in the execution information EI most recently acquired is approved. n and a program name NM of the program OP having the program name NM is referenced. n The change history data HIS is obtained from the storage unit 52.
[0056] Then, the processor 50 extracts the latest change information CHI from the change history data HIS. n For example, the processor 50 searches for the version information VER stored in the change history data HIS. n Or from the change time t4, the latest change information CHI n For example, in the example of Table 1, the processor 50 can search for the change information CHI3 indicating the third change CH3, in which the "version information" is "VER.003" and the "time" is "2021 / 10 / 5", as the most recently acquired change information.
[0057] Then, processor 50 refers to the "approval flag" of the most recent change information CHI3 found and determines whether or not the change information CHI3 has been approved. In the example of Table 1, since the "approval flag" of change information CHI3 is "X", processor 50 will determine NO in this step S6. On the other hand, if the "approval flag" of change information CHI3 is "O", processor 50 will determine YES. If processor 50 determines NO in this step S6, it proceeds to step S7, whereas if it determines YES, it proceeds to step S8.
[0058] In this manner, the processor 50 executes the operation program OP by the execution information EI. n is being executed, and the operating program OP n Changes in information for CHI n In this embodiment, the processor 50 determines whether the operating program OP n Changes in information for CHI n The function of the approval determination unit 66 (FIG. 1) is to determine whether or not the application is approved.
[0059] In step S7, the processor 50 executes the accident prevention process AP. As one example of the accident prevention process AP, the processor 50 generates an alarm signal AL. For example, the processor 50 generates the alarm signal AL in the form of an image displaying the text "An unapproved operation program is being executed in a robot system on the work line. Please immediately confirm whether or not it can be approved." The processor 50 then causes the generated alarm signal AL to be displayed on the display device 58. This allows the operator A2 to be aware of the unapproved operation program OP. n It can be intuitively recognized that the following is being executed by the robot system 12.
[0060] The processor 50 may supply the generated alarm signal AL to the communication device 42 through the communication network 18. In this case, the control device 24 or the teaching device 26 may display the acquired alarm signal AL on a display device provided in the control device 24 or the teaching device 26. In this case, the operator A1 of the work line may also be notified of the unauthorized operation program OP. n can be notified that it is running.
[0061] The processor 50 may also transmit the generated alarm signal AL to the external device 16 via the communication network 18, for example, in the form of an e-mail. In this case, the operator A3 (for example, a manager of a work line) of the external device 16 is also notified of the unauthorized operation program OP. n can be notified that it is running.
[0062] Furthermore, the processor 50 may repeatedly notify the operators A1, A2, or A3 by repeatedly outputting the generated alarm signal AL to the display device 58, the communication device 42, or the external device 16. The timing of outputting the alarm signal AL to the display device 58, the communication device 42, or the external device 16 (for example, output every hour) may be determined arbitrarily by the operator A2. With this configuration, the unauthorized operation program OP n It is possible to reliably notify the operator A1, A2 or A3 that the following is being executed:
[0063] Furthermore, the preventive maintenance device 14 may be configured so that the operator A2 can arbitrarily set whether or not to output the alarm signal AL to the communication device 42 or the external device 16. With this configuration, the function of notifying the alarm signal AL can be arbitrarily turned ON / OFF depending on the situation. The processor 50 may generate the alarm signal AL as audio data. In this case, the processor 50 may output the alarm signal AL as audio through a speaker (not shown) provided in the preventive maintenance device 14, the communication device 42, or the external device 16.
[0064] As another example of the accident prevention process AP, the processor 50 may stop the operation of the robot 20. Specifically, the processor 50 transmits an emergency stop command to stop the robot 20 to the control device 24 through the communication network 18. In response to the emergency stop command, the control device 24 stops the servo motor 40 of the robot 20, thereby stopping the operation of the robot 20.
[0065] As yet another example of the accident prevention process AP, the processor 50 may cause the robot 20 to execute an evacuation action. Specifically, the processor 50 transmits an evacuation command to the control device 24 through the communication network 18 to cause the robot 20 to evacuate. In response to the evacuation command, the control device 24 causes the robot 20 to evacuate to a predetermined evacuation position along a predetermined evacuation path.
[0066] As described above, the processor 50 generates the modification information CHI n If it is determined that the request has not been approved (i.e., NO is determined in step S6), an accident prevention process AP (generation of an alarm signal AL, emergency stopping or evacuation action of the robot 20, etc.) is executed in step S7. Therefore, in this embodiment, the processor 50 functions as a process execution unit 68 (FIG. 1) that executes the accident prevention process AP. After step S7, the processor 50 proceeds to step S8.
[0067] In step S8, the processor 50 judges whether or not an operation end command has been received from the operator A2, the upper controller, or the computer program. If an operation end command has been received, the processor 50 judges YES and ends the flow shown in Fig. 3, whereas if an operation end command has not been received, the processor 50 judges NO and returns to step S1.
[0068] As described above, in this embodiment, the processor 50 functions as the data acquisition unit 62, the input reception unit 64, the approval determination unit 66, and the process execution unit 68, and generates the change information CHI n In cooperation with a memory unit 52 that stores the change history data HIS of the operation program OPn Manage.
[0069] Therefore, in this embodiment, the processor 50 (data acquisition unit 62, input reception unit 64, approval determination unit 66, process execution unit 68) and the memory unit 52 execute the operation program OP n That is, in this embodiment, the management device 70 is implemented in the preventive maintenance device 14.
[0070] In the management device 70, the data acquisition unit 62 acquires the change information CHI n and execution information EI, and the input receiving unit 64 receives change information CHI n Input IPa to approve n The approval decision unit 66 accepts the operation program OP n Changes in information for CHI n The process execution unit 68 determines whether the change information CHI has been approved. n If it is determined that the problem has not been approved, the accident prevention process AP is executed.
[0071] According to this configuration, an unauthorized operating program OP n Rapidly detect the execution of unauthorized operating programs (OPs) n This can prevent unexpected accidents (for example, accidents in which the work line stops due to malfunction of the robot 20 or interference between the robot 20 and surrounding objects) from occurring, and as a result, the work efficiency can be improved.
[0072] In the management device 70, the process execution unit 68 generates an alarm signal AL as an example of an accident prevention process AP. n is being executed by the robot system 12.
[0073] The execution information EI is the operation program OP nAs information for identification, the above-mentioned version information VER n or the time t1 or t4 may be further included. In this case, in step S6 described above, the processor 50 uses the version information VER included in the execution information EI obtained most recently n or the times t1, t4, and compares them with the change history data HIS (Table 1) stored in the storage unit 52, and searches for the version information VER n or the change information CHI corresponding to the times t1, t4 n from the change history data HIS. The processor 50 may n refer to the approval flag F1 of the change information CHI thus retrieved to determine whether the change information CHI n is approved.
[0074] Next, with reference to FIG. 4, other functions of the preventive maintenance device 14 will be described. As described above, the processor 50 detects an abnormality in the robot system 12 based on the operation state data OD or the abnormality identification code CD supplied during the execution of the operation program OP n . Such an abnormality may occur because the executed operation program OP n is inappropriate.
[0075] Therefore, when an abnormality is detected, operators A1 and A2 may want to discard the operation program OP after the most recent change CH n and restore the operation program OP after the change CH n performed before the most recent change CH stored in the above-mentioned change history data HIS n (m < n). Therefore, in the present embodiment, the processor 50 further functions as a program restoration unit 72 to restore the past operation program OP m (m < n). m . m As an example, when the processor 50 detects an abnormality, it uses a plurality of change information CHI stored in the change history data HIS
[0076] n A selection image SIM for selecting one of the change history data HIS is generated and displayed on the display device 58. The selection image SIM includes an image of the change history data HIS as shown in Table 1, and the operator A2 operates the input device 56 to select one of the change information CHI from the change history data HIS displayed in the selection image SIM. m (Specifically, "Version information," "Time," or "Stored data") can be selected by clicking on the image.
[0077] The processor 50 functions as an input receiving unit 64, and receives, via the input device 56, from the change history data HIS, m Change information to indicate m For example, in the example in Table 1, the operation program OP before the most recent change CH3 is selected. m As the operation program OP0, there are an initial operation program OP0, an operation program OP1 after the first change CH1, and an operation program OP2 after the second change CH2.
[0078] In this case, if operator A2 selects change information CHI2 (i.e., version information "VER.002") indicating the second change CH2 from the change history data HIS, the processor 50 restores the operating program OP2 after change CH2 based on the change history data HIS.
[0079] As an example, change information CHI n Changes in data contained in CHD n has only the changes (i.e., the changed or added command statement CM or operating parameter PR), the processor 50 can restore the operating program OP2 after change CH2 from the operating program OP0 stored as the "stored data" of "VER.000" in Table 1, the change content data CHD1 (i.e., the changes made to CH1) stored as the "stored data" of "VER.001", and the change content data CHD2 (i.e., the changes made to CH2) stored as the "stored data" of "VER.002".
[0080] As another example, change data CHD n However, after the change, the operation program OP n itself (that is, all of the command statements CM and operation parameters PR), the processor 50 can restore the operation program OP2 by reading out the operation program OP2 stored as the "stored data" of "VER.002."
[0081] In this manner, the processor 50 determines the most recent change CH based on the change history data HIS. n Changes made before CH m Later operation program OP m Therefore, in this embodiment, the processor 50 restores the operating program OP m The processor 50 functions as a program restoration unit 72 that restores the restored operating program OP m is provided to a communication device 42 (eg, the control device 24) via the communication network 18.
[0082] It will be understood that when the operator A2 selects the initial operation program OP0: "VER.000", the processor 50 can restore the operation program OP0 stored as "stored data" of "VER.000" by reading it out. As described above, in this embodiment, the processor 50 (data acquisition unit 62, input reception unit 64, approval determination unit 66, process execution unit 68, program restoration unit 72) and the memory unit 52 can read and restore the operation program OP0. n The management device 80 (FIG. 1) manages the above.
[0083] In the management device 80, the storage unit 52 stores the change channel n Each time the data is repeatedly added, the data acquisition unit 62 acquires a plurality of pieces of change information CHI n The program restoration unit 72 stores the most recent change CH based on the change history data HST (Table 1) (step S1 above). n Changes made before CH m Later operation program OP mRestore.
[0084] According to this configuration, the most recent change n Later operation program OP n By executing the OP, if an abnormality occurs in the robot system 12, the past operation program OP m For example, the restored operating program OP m It is possible to try whether or not the abnormality can be resolved by operating the robot 20 according to the above. As a result, it is possible to increase the possibility that work on the work line can be continued, which can lead to improved work efficiency.
[0085] In the management device 80, the input reception unit 64 receives an input IPs for selecting one piece of change information CHI2 from the change history data HST, and the program restoration unit 72 restores the operation program OP2 after the change CH2 in accordance with the input IPs received by the input reception unit 64. According to this configuration, the operator A2 can select the operation program OP2 to be restored. m can be selected arbitrarily.
[0086] In addition, the processor 50 may include the approved change information CHI in the selected image SIM. m (or the approved initial operation program OP0) may be displayed. Specifically, when the processor 50 detects an abnormality, the processor 50 checks the most recent change CH in the change history data HIS stored in the storage unit 52. n Changes made before CH m Change information to indicate m Refer to the approval flag F1 of each of the above.
[0087] Then, the processor 50 selects the change information CHI to which the approval flag F1 has been added. m(and the initial operating program OP0). For example, in the example of Table 1, the processor 50 generates a selection image SIM that displays only the initial operating program OP0 (version information: "VER.000"), the change information CHI1 (version information: "VER.001"), and the change information CHI2 (version information: "VER.002"), to which the approval flag F1 is assigned.
[0088] The processor 50 functions as an input receiving unit 64 to receive an input IPs for selecting the operation program OP0, the change information CHI1, or the change information CHI2 displayed in the selection image SIM. m (or the initial operating program OP0) can be immediately recognized, and approved change information CHI m (or the initial operating program OP0) to be restored.
[0089] In addition, the processor 50 selects the change information CHI in which no abnormality has been detected in the selected image SIM. m (or the initial operation program OP0) may be displayed. n When an abnormality is detected during the execution of the operation program OP, the operation program OP is executed in the change history data HIS stored in the memory unit 52. n Change information corresponding to CHI n As additional information of the change history data HIS, an abnormality flag F2 indicating that an abnormality has been detected is added. An example of such change history data HIS is shown in Table 2 below.
[0090] [Table 2]
[0091] In the example shown in Table 2, an "O" in the "Abnormality Flag" column indicates that an abnormality flag F2 has been applied, indicating that an abnormality has been detected, while an "X" in the "Abnormality Flag" column indicates that an abnormality flag F2 has not been applied (or that a flag indicating that an abnormality has not been detected has been applied).
[0092] For example, in the example of Table 2, an abnormality flag F2 is assigned to change information CHI3 indicating the third change CH3 corresponding to "VER.003" (i.e., the "abnormality flag" is "O"), thus indicating that an abnormality was detected during execution of the operating program OP3 after the change CH3.
[0093] On the other hand, the abnormality flag F2 is not assigned to the change information CHI1 indicating the first change CH1 (i.e., the "abnormality flag" is "X"), which indicates that no abnormality was detected during the execution of the operation program OP1 after the change CH1. n (and the initial operation program OP0), by referring to the presence or absence ("◯" or "×") of the abnormality flag F2, each change information CHI n The corresponding operation program OP n It can be determined whether an abnormality has been detected.
[0094] The processor 50 executes an operating program OP n When an abnormality is detected during the execution of the operation program OP n Changes in information for CHI n (or the initial operation program OP0), an abnormality flag F2 is added as additional information. For example, version information VER is added to execution information EI. n If the program is included, the processor 50 executes the operation program OP n When an abnormality is detected during the execution of the operation program OP n Version information VER included in execution information EI n Refer to the version information VER n Change information corresponding to CHIn The abnormality flag F2 may be added as additional information of the initial operation program OP0 (or the initial operation program OP0). In this way, the processor 50 can create the change history data HIS as shown in Table 2.
[0095] Then, the processor 50 selects the change information CHI in which no abnormality is detected in the selected image SIM. m (or the initial operation program OP0). Specifically, the processor 50 selects only the most recently changed CH in the change history data HIS stored in the storage unit 52. n Changes made before CH m Change information to indicate m The abnormality flag F2 of each of the above is referred to.
[0096] Then, the processor 50 selects the change information CHI to which the abnormality flag F2 is not assigned. m (and the initial operation program OP0) is displayed. For example, in the example of Table 2, the processor 50 detects an abnormality during execution of the operation program OP3 after the most recent change CH3, and assigns an abnormality flag F2 to the change information CHI3 indicating the third change CH3, which corresponds to "VER.003", in the change history data HIS.
[0097] In this case, the processor 50 refers to the abnormality flags F2 in the change history data HIS for the initial operating program OP0 (version information "VER.000") prior to the most recent change CH3, the change information CHI1 (version information "VER.001") indicating the first change CH1, and the change information CHI2 (version information "VER.002") indicating the second change CH2.
[0098] In the example of Table 2, since the abnormality flag F2 is not assigned to the change information CHI1 and CHI2, the processor 50 generates a selection image SIM that displays only the change information CHI1 and CHI2. The processor 50 then functions as the input receiving unit 64 and receives an input IPs that selects the change information CHI1 or CHI2 displayed in the selection image SIM.
[0099] According to this configuration, the operator A2 can check the change information CHI in which an abnormality was detected in the past. m (or the initial operation program OP0) can be immediately recognized, and no abnormality is detected. m (or the initial operating program OP0) to be restored.
[0100] The processor 50 combines the approval flag F1 and the abnormality flag F2 to generate change information CHI to be displayed on the selection image SIM. m For example, the processor 50 may extract the change information CHI (or the initial operation program OP0) from the change history data HIS. The change information CHI satisfies the condition that the approval flag F1 is assigned and the abnormality flag F2 is not assigned (i.e., "approval flag"="o" AND "abnormality flag"="x"). m (or the initial operating program OP0).
[0101] For example, in the case of the example of Table 2, the processor 50 extracts the change information CHI1 (version information: "VER.001") as satisfying this condition. The processor 50 generates a selection image SIM that displays only the change information CHI1 thus extracted. According to this configuration, the operator A2 can select the operation program OP that satisfies the multiple conditions of the presence or absence of approval and the presence or absence of anomaly detection. m can be selectively restored.
[0102] The processor 50 executes the operation program OP according to the predetermined condition CT without receiving the input IPs to the selected image SIM by the operator A2. mFor example, the most recent change CH may be restored automatically as a condition CT. n Changes made before CH m The change information CHI indicates that the approval flag F1 is assigned and the abnormality flag F2 is not assigned. m A condition may be set that the latest one among them.
[0103] When an abnormality is detected, the processor 50 does not generate the selected image SIM, but selects the change information CHI that satisfies the condition CT from the change history data HIS in accordance with the condition CT. m Then, the processor 50 extracts the extracted change information CHI based on the change history data HIS. m The corresponding operation program OP m may be automatically restored and provided over the communications network 18 to the communications device 42 (eg, the controller 24).
[0104] In the above embodiment, the teaching device 26 receives the above-mentioned change information CHI n At the same time, an approval request may be sent to the preventive maintenance device 14. This approval request is sent to the operator A2 of the preventive maintenance device 14 along with the change information CHI. n The message is for prompting approval of the changes, and includes, for example, image (or audio) data displaying the text "Changes have been made to the operating program. Please approve these changes."
[0105] When the processor 50 of the preventive maintenance device 14 receives the approval request, the processor 50 displays the image (or sound) included in the approval request on the display device 58 (or outputs it through the speaker). n Change to Ch n It is possible to know with certainty that this has been done.
[0106] In addition, the above change information CHI n As additional information, the change channel n Identification information of the operator A1 who performed the change (ID number, etc.), reason for the change, and the change channeln The change history data HIS may further include an identification number (such as a product number) of the teaching device 26 used in the change. In this case, the processor 50 of the preventive maintenance device 14 may store the identification information and the reason for the change in the change history data HIS.
[0107] In the above embodiment, the teaching device 26 executes the operation program OP n Version information VER n However, the present invention is not limited to this. The processor 50 of the preventive maintenance device 14 may execute the operation program OP n Version information VER n may be given.
[0108] Specifically, when the teaching device 26 creates the initial operation program OP0, it supplies the created operation program OP0 together with accompanying information including the program name NM and the program creation time t3 to the preventive maintenance device 14 via the communication network 18. The processor 50 of the preventive maintenance device 14 assigns initial version information VER0 (e.g., "VER.000") to the acquired operation program OP0, and stores it in the memory unit 52 as the above-mentioned change history data HIS.
[0109] The teaching device 26 also displays the operation program OP n-1 Change to CH n Add the operating program OP n When updating to , the program name NM, the change time t4, and other additional information and the change content data CHD n and including change information n The processor 50 of the preventive maintenance device 14 supplies the change information CHI n When the change information CHI is acquired, n The change indicated by CH n Later operation program OP n New version information VER n and stores the result in the storage unit 52 as the change history data HIS.
[0110] Note that the above-mentioned Tables 1 and 2 are merely examples. n may be stored in the change history data HIS, and any parameters (e.g., the reason for the change as described above) may be stored in the change history data HIS in addition to (or instead of) the “version information”, “time”, “stored data”, and “approval flag”.
[0111] In the above embodiment, the processor 50 also calculates the change information CHI n Version information included with VER n Or, by referring to the change time t4, the most recently acquired change information CHI n In the above description, the change history data HIS is searched for (step S6). However, the present invention is not limited to this. n , version information VER n Or instead of (or in addition to) the change time t4, n For example, the processor 50 may add any information that can identify the time sequence in which the modification information CHI was added. n The number is assigned to each item in the order of acquisition, and the most recent change information CHI is obtained by using the number. n You can also search for.
[0112] In the above embodiment, in step S4, the processor 50 n As a process for approving changes, n The above description has been given with respect to a case where the approval flag F1 is added to the additional information of the change information CHI. However, the present invention is not limited to this. n As a process for approving changes, n Any data processing may be carried out that will enable the identification of the person as having been authorized.
[0113] For example, the processor 50 may n Version information VER nBy adding a character or symbol indicating that the information has been approved (for example, changing "VER.002" to "VER.002.AP"), the change information CHI n It may be possible to identify that the request has been approved.
[0114] In this case, in step S6, the processor 50 compiles the change information CHI by referring to the data processing performed in the approval process in step S4. n It can be determined whether the change information CHI has been approved. n Alternatively, the execution information EI is not limited to the information exemplified in the above embodiment, and may include any other information.
[0115] Further, in the above-described embodiment, the management devices 70 and 80 are described as being implemented in the preventive maintenance device 14. However, this is not limiting, and the management device 70 or 80 may be implemented in the communication device 42. For example, when the management device 70 or 80 is implemented in the control device 24, the processor and storage unit of the control device 24 constitute the management device 70 or 80. The processor of the control device 24 manages the operation program OP by executing the flow shown in FIG. 3. In this case, when the processor of the control device 24 executes the operation program OP, it generates execution information EI and determines YES in step S5.
[0116] On the other hand, when the management device 70 or 80 is implemented in the teaching device 26, the processor and storage unit of the teaching device 26 constitute the management device 70 or 80. The processor of the teaching device 26 manages the operation program OP by executing the flow shown in Fig. 3. In this case, the processor of the teaching device 26 receives an input IPc from the operator A1. n Depending on the operating program OP n-1 Change to CH n When you add, the change information n and the result of the determination in step S1 is YES. Although the present disclosure has been described above through the embodiments, the above-described embodiments do not limit the invention according to the claims. [Explanation of symbols]
[0117] 10 Network Systems 12 Robot Systems 14 Preventive maintenance devices 16 External equipment 18. Communications Networks 20. Robot 24 Control device 26 Teaching device 50 processors 62 Data Acquisition Section 64 Input reception section 66 Approval Judgment Department 68 Process Execution Unit 70,80 Management device 72 Program Recovery Section
Claims
1. A management device for managing an operation program of a robot, a data acquisition unit that acquires change information indicating a change made to the operation program and execution information indicating that the operation program has been executed to operate the robot; an input receiving unit that receives an input approving the change information acquired by the data acquisition unit; an approval determination unit that determines whether or not the change information of the operating program being executed has been approved when the data acquisition unit acquires the execution information; a process execution unit that executes a predetermined accident prevention process when the approval determination unit determines that the change information is not approved.
2. The management device according to claim 1 , wherein the process execution unit generates an alarm signal as the accident prevention process.
3. a storage unit that stores the plurality of pieces of change information acquired by the data acquisition unit as change history data each time the change is repeatedly made; The management device according to claim 1 , further comprising a program restoration unit that restores the operating program after a second change that was made before the first change, based on the change history data.
4. the input receiving unit further receives an input for selecting the change information indicating the second change from the change history data; The management device according to claim 3 , wherein the program restoration unit restores the second changed operating program in response to the selection input received by the input reception unit.
5. A management device according to any one of claims 1 to 4, The robot; A network system comprising: a communication device communicatively connected to the robot and the management device, the communication device storing the operation program and supplying the change information and the execution information to the management device.
6. The communication device includes: a control device that operates the robot according to the operation program and supplies the execution information to the management device; 6. The network system according to claim 5, further comprising: a teaching device that accepts input of the change and adds the change to the operation program to teach the robot an operation, and supplies the change information to the management device.
7. A method for managing an operation program of a robot, comprising: acquiring modification information indicating modifications made to the operation program and execution information indicating that the operation program has been executed to operate the robot; accepting an input approving the acquired change information; When the execution information is acquired, it is determined whether the change information of the operating program being executed has been approved; and executing a predetermined incident prevention process if the change information is determined to be unauthorized.
Citation Information
Patent Citations
Robot program correction system
JP2016016488A
Cell controller optimizing operation of production system having plurality of industrial machines
JP2017199077A
Robot operation monitoring
JP2017517800A