Robot control information history management program, and robot control information history management device.
The history management program and device address the challenge of identifying robot malfunction causes by storing and comparing robot control information changes, facilitating efficient malfunction verification.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- DENSO WAVE INC
- Filing Date
- 2024-12-17
- Publication Date
- 2026-06-29
AI Technical Summary
Identifying the cause of malfunctions in robot operations becomes difficult when robot control information, such as robot variables, is overwritten and changed, as it relies heavily on the memory of the user who made the changes.
A history management program and device that manage and store change history information of robot control information, allowing for acquisition, conversion, notification, retrieval, comparison, and display of control information to facilitate identification of malfunctions.
Enables verification of malfunctions in robot operations by comparing and displaying previous and changed control information, reducing reliance on user memory and expediting problem resolution.
Smart Images

Figure 2026106061000001_ABST
Abstract
Description
Technical Field
[0001] Embodiments of the present invention relate to a history management program for robot control information and a history management device for robot control information.
Background Art
[0002] It is known that an operator teaches a control device that controls the operation of an industrial robot using a teaching device such as a teaching pendant.
[0003] For example, Patent Document 1 discloses a robot operation device including a touch panel, a touch operation detection unit, an operation command generation unit, and a selection operation detection unit. The operation command generation unit can perform an operation determination process and an operation command generation process. The operation determination process determines a drive axis or an operation mode of a robot to be an operation target based on a selection operation detected by the selection operation detection unit, and determines a movement amount of the drag operation when the touch operation detected by the touch operation detection unit is a drag operation. The operation command generation process determines a movement amount of the robot based on the movement amount of the drag operation determined in the operation determination process, and generates an operation command for moving the robot by the movement amount in the drive axis or operation mode of the operation target.
Prior Art Documents
Patent Documents
[0004]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0005] If a program that controls the operation of a robot or a robot variable that defines the position of a robot arm, etc. is overwritten and saved when it is changed, it may be difficult to identify what was the problem when a malfunction occurs in the operation of the robot after the change.
[0006] This disclosure is made in view of the circumstances described above, and its purpose is to provide a robot control information history management program and a robot control information history management device that facilitate the identification of the cause of malfunctions. [Means for solving the problem]
[0007] The history management program according to the embodiment is a history management program that manages change history information of control information that defines the operation of a robot, and causes a computer to execute an acquisition process to acquire the set or changed control information in response to the setting or change of the control information, and a notification process to notify a management server of the acquired control information.
[0008] The history management device according to this embodiment manages change history information of control information that defines the operation of a robot. The history management device performs an acquisition process to acquire the set or changed control information in response to the setting or change of the control information, and a notification process to notify the management server of the acquired control information.
[0009] According to this, by storing and managing all control information before and after the change on the management server, it becomes possible to check the change history later. Therefore, if a problem occurs after the control information has been changed, it becomes possible to verify the location of the problem without relying on the memory of the user who made the change. [Brief explanation of the drawing]
[0010] [Figure 1] This figure shows a schematic configuration of a robot system including a robot control information history management device according to one embodiment. [Figure 2] This figure schematically shows the electrical configuration of a robot system including a robot control information history management device according to one embodiment. [Figure 3] A schematic diagram showing the processing flow of a history management device according to one embodiment, the diagram showing the processing flow when robot variables are set for the first time. [Figure 4] A schematic diagram showing the processing flow of a history management device according to one embodiment, the diagram showing the processing flow when a robot variable is changed. [Figure 5] This figure shows an example of a screen displayed on a display device by a history management device according to one embodiment. [Figure 6] This figure shows an example of a screen displayed on a display device by a history management device according to one embodiment. [Figure 7] This figure shows an example of a screen displayed on a display device by a history management device according to one embodiment. [Modes for carrying out the invention]
[0011] An example of applying the history management program and history management device of this disclosure to a control system for a robot such as an industrial robot will be described with reference to the drawings. The robot system 100 shown in Figures 1 and 2 comprises a robot 10, a teaching device 20, and a controller 30.
[0012] Robot 10 is the object operated by the teaching device 20 and the object controlled by the controller 30. Robot 10 is assumed to be an industrial robot, such as a vertical articulated robot, a horizontal articulated robot, or a parallel link robot. The teaching device 20 is connected to robot 10 via wired or wireless communication through the controller 30. The user operates the teaching device 20 to teach the robot 10 its movements and to input instructions such as starting and stopping the taught movements. The teaching device 20 is a so-called teaching pendant. The controller 30 controls the movements of robot 10.
[0013] In this embodiment, the robot 10 is a so-called 6-axis vertical articulated robot. The robot 10 has 1 to 6 axes, and each axis is provided with a motor (not shown) that serves as a drive source.
[0014] As shown in Figures 1 and 2, the teaching device 20 comprises a housing 21, a display unit 22, an input unit 23, and a control unit 24. The housing 21 is configured to be a size that can be held and handled by an operator. The display unit 22 is a user interface capable of displaying images, etc., and can be configured as, for example, a liquid crystal display or an organic EL display. The input unit 23 is a user interface that receives operational input from the user regarding the information displayed on the display unit 22, and can be configured as, for example, a mouse, keyboard, or touch panel. The input unit 23 includes at least a pointing device or touch device that can specify a specific position on the screen displayed on the display unit 22.
[0015] When a liquid crystal display or organic EL display is used as the display unit 22 and a touch panel is used as the input unit 23, the display unit 22 and the input unit 23 can be configured as an integrated touch panel display. Alternatively, the display unit 22 can be configured as a wearable display, for example, worn on the worker's head. In this case, the input unit 23 can be configured to detect the worker's operation input based on the movement of the worker's fingers or a pointing device used by the worker wearing the display unit 22. In this configuration, the worker inputs an operation to the input unit 23 by virtually touching, for example, icons displayed on the display unit 22 with their fingers or a pointing device.
[0016] The control unit 24 is mainly composed of a microcomputer having, for example, a CPU 241 and a storage area 242 such as ROM, RAM, and rewritable flash memory, and controls the operation of the entire teaching device 20. The storage area 242 stores computer programs. The display unit 22 and the input unit 23 operate under the control of the control unit 24. The display unit 22 and the input unit 23 operate based on the control of the control unit 24.
[0017] In the storage area 242 of the teaching device 20, there is stored an application that supports the user in setting and changing the operations of the robot 10. The control information of the robot that the user has set and changed using the teaching device 20 is transmitted to the controller 30. The user can set and change the control information by operating the input unit 23 of the teaching device 20.
[0018] The controller 30 includes a housing 31 and a control unit 32. The control unit 32 is mainly composed of a microcomputer having a storage area 322 such as a CPU 321, a ROM, a RAM, and a rewritable flash memory, and controls the operation of the entire controller 30. The storage area 322 stores a computer program. The control unit 32 controls the operation of the robot 10 by executing the control computer program stored in the storage area 322 in the CPU 321. Specifically, the control unit 32 drives and controls each motor, for example, by feedback control, based on the rotational position of each motor detected by an encoder provided corresponding to each motor of the robot 10.
[0019] As shown in FIG. 2, the robot system 100 further includes a management server 40. The management server 40 stores and manages the change history of the control information for controlling the operation of the robot 10. That is, the management server 40 can track all versions by storing the control information notified from the control unit 32. The control information includes, for example, robot variables and programs. The robot variables include, for example, position-type variables called P-type variables, joint-type variables called J-type variables, simultaneous conversion-type variables called T-type variables, and the like.
[0020] The management server 40 may be configured software-wise, hardware-wise, or by the cooperation of software and hardware. Also, the management server 40 may be configured as an internal component of the controller 30 or as an external component of the controller 30. In this embodiment, the management server 40 is configured software-wise as an internal component of the controller 30. The management server 40 is configured as a history management application stored in the storage area 322.
[0021] The management server 40 includes a storage unit 41. The storage unit 41 is composed of a ROM, a RAM, a rewritable flash memory, etc. The management server 40 stores control information in the storage unit 41.
[0022] The controller 30 executes a history management program. The history management program manages the change history information of the control information of the robot in a traceable manner by causing a computer to execute a predetermined process. The predetermined process includes an acquisition process, a notification process, a retrieval process, a comparison process, and a display process.
[0023] The controller 30 further includes an acquisition processing unit 33, a conversion processing unit 34, a notification processing unit 35, a retrieval processing unit 36, a comparison processing unit 37, and a display processing unit 38. The acquisition processing unit 33, the conversion processing unit 34, the notification processing unit 35, the retrieval processing unit 36, the comparison processing unit 37, and the display processing unit 38 are configured software-wise by the control unit 32 executing a control computer program stored in the storage area 322 in the CPU 321.
[0024] The acquisition processing unit 33 executes an acquisition process to acquire control information that has been set or changed by the user by inputting it into the teaching device 20. During the initial setup, the control unit 32 sets the control information in the control computer program stored in the memory area 322 based on the control information acquired by the acquisition processing unit 33. For subsequent setups, i.e., changes, the control unit 32 overwrites the control information in the robot control computer program stored in the memory area 322 based on the control information acquired by the acquisition processing unit 33.
[0025] The conversion processing unit 34 performs a conversion process to convert control information created in binary format into text format. The control information created in binary format includes robot variables. The program, on the other hand, is control information created in text format. Any known method can be used for the conversion process, but for example, each value can be separated by a comma (,) or a vertical bar (|) for display.
[0026] The notification processing unit 35 executes a notification process to notify the management server 40 of the control information acquired by the acquisition processing unit 33. If the acquired control information is in binary format, the notification process is the process of notifying the management server 40 of the control information converted into text format by the conversion processing unit 34. In other words, the control information stored in the management server 40 is standardized to text format. Furthermore, the notification process includes assigning an identifier to the control information. For example, in the example shown in Figure 3, the identifier V ver. 1.0 is assigned to the robot variable that was set for the first time. Also, in the example shown in Figure 4, the identifier V ver. 2.0 is assigned to the robot variable that was set, i.e., changed for the second time.
[0027] The notification process does not overwrite the previous control information with the new control information, but rather stores the new control information by adding it to the previous control information. As shown in Figure 4, when a robot variable is set for the second time, the management server 40 will store the robot variable with identifier V ver. 1.0 and the robot variable with identifier V ver. 2.0. In other words, when the setting is performed n times, n versions of control information will be stored in the management server 40. Note that the date and time on which the control information of that version was saved may be stored as an identifier, or in addition to the identifier, associated with the control information.
[0028] The retrieval processing unit 36 executes a retrieval process based on the user's operation on the teaching device 20. The retrieval process is the process of obtaining the version of control information specified by the user from the management server 40. In this case, the user can specify one or more versions of control information, for example, two versions.
[0029] The comparison processing unit 37 performs a comparison process. The comparison process compares multiple versions of control information extracted by the extraction process and calculates whether there are any differences. In the example shown in Figures 3 and 4, the value of cell X1 has changed from 0 to 600 between the robot variable with identifier V ver. 1.0 and the robot variable with identifier V ver. 2.0. The comparison processing unit 37 compares the robot variable with identifier V ver. 1.0 and the robot variable with identifier V ver. 2.0 and determines that there is a difference in cell X1.
[0030] The display processing unit 38 executes the display process. The display process is the process of displaying the version of control information retrieved from the management server 40 by the retrieval process on the display unit 22 of the teaching device 20. Figures 5 to 7 show the screen of the display unit 22 when the robot variables with identifier V ver. 1.0 and the robot variables with identifier V ver. 2.0 are retrieved from the management server 40.
[0031] Figures 5 and 6 show one robot variable from identifier V ver. 1.0 and the other robot variable from identifier V ver. 2.0, while the other robot variable is hidden. The display process includes the process of selectively displaying one of several control information on the display unit 22 in response to user operation on the input unit 23. For example, the user may be able to select which of the several control information to display on the display unit 22 by operating the input unit 23. The display process also includes the process of displaying multiple versions of the retrieved control information on the same screen. As shown in Figure 7, the user may be able to display multiple versions of the retrieved control information, in this case the robot variable, on the same screen at once by operating the input unit 23. The display process also includes the process of selectively displaying one of several control information or displaying multiple versions of the control information on the same screen in response to user operation on the input unit 23. The user may be able to select whether to selectively display one version of the control information or display multiple versions of the control information on the same screen by operating the input unit 23.
[0032] For example, in the examples in Figures 5 and 6, operating button 231 displays the robot variables with identifier V ver. 1.0, operating button 232 displays the robot variables with identifier V ver. 2.0, and operating button 233 displays a list of both the robot variables with identifier V ver. 1.0 and the robot variables with identifier V ver. 2.0. In the example in Figure 7, operating button 234 displays either the robot variables with identifier V ver. 1.0 or the robot variables with identifier V ver. 2.0 in an alternative manner.
[0033] The display process includes visually highlighting the differing components of the control information as a result of the comparison process. Here, the components refer to the values of robot variables included in the control information or some of the text in the program. The highlighting includes, for example, displaying the differing components in a different color than the other components that do not differ, displaying them in a different font, such as bold or italics, or displaying them in a different font size, in this case a larger font size.
[0034] When displaying in different colors, the cells, rows, or columns corresponding to the differing components can be filled with a color that has high contrast with the other cells, rows, or columns, or the differing components themselves can be displayed in a color that has high contrast with the other components. Furthermore, when filling the cells, rows, or columns corresponding to the differing components with a color that has high contrast with the other cells or rows, the differing components themselves may also be displayed in a color that has high contrast with the color used to fill those cells, rows, or columns. For example, if other cells, rows, or columns are filled with white, the cells, rows, or columns corresponding to the differing components can be filled with a color that generally attracts attention, such as red, yellow, or pink, or the differing components themselves can be displayed in red, yellow, pink, or similar colors.
[0035] In the robot variable examples shown in Figures 5 and 6, there is a difference in the value of cell X1 between the robot variable with identifier V ver. 1.0 and the robot variable with identifier V ver. 2.0, ranging from 0 to 600. Therefore, the display processing unit 38 displays cell X1 by filling it with, for example, red. Alternatively, the value of cell X1 may be displayed in a color with high contrast to the cell's red color, such as white or yellow.
[0036] If the control information is overwritten, it becomes difficult to check the control information from the previous or the one before that. In other words, the user has no choice but to recall the control information before the overwrite, and if the person in charge changes, it may not be possible to recover the control information before the overwrite.
[0037] According to the embodiment described above, the history management program is a program that manages change history information of control information that defines the operation of the robot 10. The history management program causes the control unit 32, which acts as a computer, to execute an acquisition process to acquire the set or changed control information in response to the setting or change of the control information, and a notification process to notify the management server of the acquired control information.
[0038] According to this, by storing and managing all control information before and after the change on the management server 40, the change history can be checked later. Therefore, if a problem occurs after the control information has been changed, it becomes possible to verify the location of the problem without relying on the memory of the user who made the change.
[0039] The history management program causes the control unit 32, which acts as a computer, to execute a conversion process, an retrieval process, and a comparison process. The conversion process is performed before the notification process and converts control information in binary format into text format. The retrieval process retrieves from the management server 40 the first control information, which is the control information stored in the management server 40 at an arbitrary first point in time, and the second control information, which is the control information stored in the management server 40 at a second point in time that is different from the first point in time. The comparison process compares the retrieved first control information and second control information and calculates whether there are any differences.
[0040] According to this method, the presence or absence of differences between multiple extracted versions of control information is calculated, making it even easier to verify the location of the malfunction. In addition, since the binary data is converted to text format before being stored in the management server 40 so that the presence or absence of differences can be calculated, there is no need to convert the control information to text format before the comparison process after the extraction process, and verification of the changed parts can be expedited when a malfunction occurs.
[0041] The history management program causes the control unit 32, which acts as a computer, to perform the display process. The display process involves displaying the first control information and the second control information retrieved by the retrieval process on the display unit 22 of the teaching device 20, which acts as an external display device.
[0042] According to this, the user can view the control information for the version they want to check on the teaching device, making it much easier to verify malfunctions in the robot 10's operation.
[0043] The display process includes the process of visualizing the results of the comparison process on the display unit 22 of the teaching device 20, which is a display device.
[0044] This allows the results of the comparison process to be provided to the user as visual information. Therefore, it becomes even easier to verify malfunctions in the robot 10's operation.
[0045] The display process includes visually highlighting the components of the control information that show a difference as a result of the comparison process.
[0046] This improves the visibility of the changes, making it easier to verify malfunctions in the robot 10's operation.
[0047] The display device is a teaching device 20 used to teach the movements of the robot 10.
[0048] According to this, the operator can confirm the comparison results on the display unit 22 of the teaching device 20, and then operate the teaching device 20 to resolve the problem. Therefore, resolving malfunctions in the operation of the robot 10 becomes even easier.
[0049] The control unit 32, acting as a history management device, manages change history information of the control information that defines the operation of the robot 10. The history management device performs an acquisition process to acquire the set or changed control information when the control information is set or changed, and a notification process to notify the management server 40 of the acquired control information.
[0050] According to this, by storing and managing all control information before and after the change on the management server 40, the change history can be checked later. Therefore, if a problem occurs after the control information has been changed, it becomes possible to verify the location of the problem without relying on the memory of the user who made the change.
[0051] In the embodiment described above, one management server 40 was provided for each robot 10, but this is not the only configuration. For example, one management server may store a history of changes to control information for multiple robots 10.
[0052] The control unit and its method described herein may be implemented by a dedicated computer provided by configuring a processor and memory programmed to perform one or more functions embodied by a computer program. Alternatively, the control unit and its method described herein may be implemented by a dedicated computer provided by configuring a processor by one or more dedicated hardware logic circuits. Alternatively, the control unit and its method described herein may be implemented by one or more dedicated computers configured by a combination of a processor and memory programmed to perform one or more functions and a processor configured by one or more hardware logic circuits. Furthermore, the computer program may be stored as instructions executed by the computer on a computer-readable non-transitional tangible recording medium.
[0053] This disclosure is described in accordance with the embodiments, but it is understood that this disclosure is not limited to such embodiments or structures. This disclosure also includes various modifications and variations within the equivalence. In addition, various combinations and forms, as well as other combinations and forms that include only one, more, or fewer of those elements, fall within the scope and concept of this disclosure. [Explanation of Symbols]
[0054] 10...Robot, 20...Teaching device, 22...Display unit, 23...Input unit, 30...Control device, 32...Control unit, 40...Management server
Claims
1. A history management program that manages change history information of control information that defines the movement of a robot, An acquisition process to acquire the control information that has been set or changed in response to the setting or change of the control information, A notification process that notifies the management server of the acquired control information, A history management program that causes a computer to execute a command.
2. A process performed before the notification process, comprising a conversion process that converts the control information, which is in binary format, into text format, A retrieval process that retrieves from the management server first control information, which is control information stored in the management server at an arbitrary first point in time, and second control information, which is control information stored in the management server at a second point in time different from the first point in time. A comparison process is performed to compare the extracted first control information and the second control information and calculate whether there is a difference, The history management program according to claim 1, which is to be executed by the computer.
3. A display process is performed to display the first control information and the second control information retrieved by the aforementioned retrieval process on an external display device. The history management program according to claim 2, which is to be executed by the computer.
4. The display process includes a process for visualizing the results of the comparison process on the display device. The history management program according to claim 3.
5. The display process includes a process that visually highlights the components of the control information that have differences as a result of the comparison process. The history management program according to claim 3.
6. The display device is a teaching device used to teach the robot's movements. A history management program according to any one of claims 3 to 5.
7. A history management device that manages change history information of control information that defines the movement of a robot, An acquisition process to acquire the control information that has been set or changed in response to the setting or change of the control information, A notification process that notifies the management server of the acquired control information, A history management device that performs this operation.