Time synchronization method, time synchronization program, and robot controller system

The method allows a master robot controller to determine and correct the time of slave controllers, ensuring accurate synchronization without requiring a full system reset, enhancing the reliability of robot controller systems.

JP7831021B2Active Publication Date: 2026-03-17SEIKO EPSON CORP
View PDF 5 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2022-03-09
Publication Date
2026-03-17

AI Technical Summary

Technical Problem

Existing time synchronization methods for robot controllers require resetting all units if time data is lost, making it difficult to maintain accurate time synchronization.

Method used

A time synchronization method where a master robot controller determines the validity of each controller's time based on time information, correcting and setting the time of slave controllers to a synchronized time using a determination and correction step.

Benefits of technology

Enables easy and accurate time synchronization among multiple robot controllers, reducing the need for resetting to default times and maintaining a highly reliable timekeeping system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007831021000001
    Figure 0007831021000001
  • Figure 0007831021000002
    Figure 0007831021000002
  • Figure 0007831021000003
    Figure 0007831021000003
Patent Text Reader

Abstract

To provide a time synchronization method, a time synchronization program, and a robot controller system capable of easily performing time synchronization.SOLUTION: This time synchronization method is for synchronizing time among a plurality of robot controllers in a robot controller system in which the robot controllers for controlling robot driving are connected to each other. The method comprises: a determining step of determining, by a master machine which is a prescribed robot controller, whether time of each robot controller is valid on the basis of time information of each robot controller; and a correction step of determining setting time on the basis of the time information by the master machine when the time is determined to be invalid in the determination step, and setting the time of the robot controller as the setting time.SELECTED DRAWING: Figure 3
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a time synchronization method, a time synchronization program, and a robot controller system.

Background Art

[0002] For example, in Patent Document 1, as a method of synchronizing the time of a real-time clock with a calendar representing year / month / day provided in the clock means provided in each control unit of a plurality of robots, a method of correcting the time difference between a plurality of RTCs to synchronize the time or a method of synchronizing the time by resetting them all at once is described.

Prior Art Documents

Patent Documents

[0003]

Patent Document 1

Summary of the Invention

Problems to be Solved by the Invention

[0004] However, in Patent Document 1, for example, if time data disappears in some control units, all control units have to be reset at once to synchronize the time, and it is not easy to synchronize the time.

Means for Solving the Problems

[0005] The time synchronization method of the present invention is a time synchronization method for synchronizing the times of a plurality of robot controllers connected to each other in a robot controller system in which a plurality of robot controllers that control the driving of robots are connected to each other, a determination step in which a master device, which is a predetermined one of the robot controllers, determines whether the time of each robot controller is valid or invalid based on the time information of each robot controller; ​If invalidity is determined in the determination step, the system includes a correction step in which the master unit determines a set time based on the time information and sets the time of each robot controller to the set time.

[0006] The present invention provides a time synchronization program for use in a robot controller system in which multiple robot controllers that control the drive of a robot are connected to each other, and which synchronizes the time of the multiple robot controllers. It is performed by one of the aforementioned robot controllers acting as the master unit, A determination step of determining whether the time of each robot controller is valid or invalid based on the time information of each robot controller, If invalidity is determined in the determination step, the system includes a correction step in which a set time is determined based on the time information and the time of each robot controller is set to the set time.

[0007] The robot controller system of the present invention is a robot controller system in which a plurality of robot controllers that control the drive of a robot are connected to each other, A determination step in which a predetermined robot controller, which is a master unit, determines whether the time of each robot controller is valid or invalid based on the time information of each robot controller, If invalidity is determined in the determination step, the master unit determines a set time based on the time information and performs a correction step to set the time of each robot controller to the set time, thereby synchronizing the times of the multiple robot controllers. [Brief explanation of the drawing]

[0008] [Figure 1] This is a block diagram showing a robot controller system according to a preferred embodiment. [Figure 2] This is a perspective view showing an example of a robot connected to a robot controller system. [Figure 3] This is a flowchart showing the time synchronization method. [Figure 4] This diagram shows how to determine whether the robot controller's time is valid or invalid. [Figure 5] This diagram shows how to determine whether the robot controller's time is valid or invalid. [Figure 6] This flowchart shows the method for synchronizing the time at startup. [Figure 7] This flowchart shows the method for synchronizing the time at startup. [Figure 8] This flowchart shows the time synchronization method during operation. [Modes for carrying out the invention]

[0009] The time synchronization method, time synchronization program, and robot controller system of the present invention will be described in detail below based on preferred embodiments shown in the accompanying drawings.

[0010] Figure 1 is a block diagram of a robot controller system according to a preferred embodiment. Figure 2 is a perspective view showing an example of a robot connected to the robot controller system. Figure 3 is a flowchart of a time synchronization method. Figures 4 and 5 show methods for determining whether the robot controller's time is enabled or disabled, respectively. Figures 6 and 7 are flowcharts of a time synchronization method at startup, respectively. Figure 8 is a flowchart of a time synchronization method during operation.

[0011] The robot controller system 1 shown in Figure 1 has three robot controllers 2A, 2B, and 2C connected to each other, and a power supply 3 connected to these robot controllers 2A, 2B, and 2C. The robot controllers 2A, 2B, and 2C are powered by the power supply from the power supply 3. Robot controller 2A is electrically connected to robot 4A and controls the drive of robot 4A. Robot controller 2B is electrically connected to robot 4B and controls the drive of robot 4A. Robot controller 2C is electrically connected to robot 4C and controls the drive of robot 4C.

[0012] However, the configuration of the robot controller system 1 is not limited to this. For example, the number of robot controllers is not limited to three; it can be two or more. Also, robot controllers 2A, 2B, and 2C may control different parts of the same robot.

[0013] The robot controller 2A includes a control circuit 21A that controls the driving of the robot 4A, a real-time clock 22A that generates the time for the robot controller 2A, a power supply circuit 24A that receives power from power supply 3 and supplies power to the control circuit 21A and the real-time clock 22A, and a sub-battery 23A that supplies power to the real-time clock 22A when the power supply from power supply circuit 24A stops. The control circuit 21A also includes a processor 211A and a main memory 212A. The main memory 212A stores a time synchronization program P, and the processor 211A can read and execute the time synchronization program P stored in the main memory 212A.

[0014] Similarly, the robot controller 2B has a control circuit 21B that controls the driving of the robot 4B, a real-time clock 22B that generates the time of the robot controller 2B, a power supply circuit 24B that receives power supply from the power supply 3 and supplies power to the control circuit 21B and the real-time clock 22B, and a sub-battery 23B that supplies power to the real-time clock 22B when the power supply from the power supply circuit 24B stops. The control circuit 21B also has a processor 211B and a main memory 212B. The time synchronization program P is stored in the main memory 212B, and the processor 211B can read and execute the time synchronization program P stored in the main memory 212B.

[0015] Similarly, the robot controller 2C has a control circuit 21C that controls the driving of the robot 4C, a real-time clock 22C that generates the time of the robot controller 2C, a power supply circuit 24C that receives power supply from the power supply 3 and supplies power to the control circuit 21C and the real-time clock 22C, and a sub-battery 23C that supplies power to the real-time clock 22C when the power supply from the power supply circuit 24C stops. The control circuit 21C also has a processor 211C and a main memory 212C. The time synchronization program P is stored in the main memory 212C, and the processor 211C can read and execute the time synchronization program P stored in the main memory 212C.

[0016] The robots 4A, 4B, and 4C are robots that perform operations such as feeding, removing, transporting, and assembling precision equipment and the components that make it up. However, the uses of the robots 4A, 4B, and 4C are not particularly limited. As shown in FIG. 2, the robots 4A, 4B, and 4C are each 6-axis robots and have a base 41, a robot arm 42 rotatably connected to the base 41, and an end effector 43 connected to the tip of the robot arm 42.

[0017] The robot arm 42 is a robotic arm in which a plurality of arms 421, 422, 423, 424, 425, and 426 are rotatably connected, and it has six joints J1 to J6. Among these, joints J2, J3, and J5 are bending joints, and joints J1, J4, and J6 are twisting joints. Also, each of joints J1, J2, J3, J4, J5, and J6 includes a motor M as a drive source and an encoder E for detecting the amount of rotation of the motor M. By independently driving the motors M of each of the joints J1, J2, J3, J4, J5, and J6, the robot arm 42 can be moved along a desired trajectory.

[0018] The robots 4A, 4B, and 4C have been described above. However, the configurations of the robots 4A, 4B, and 4C are not particularly limited respectively. For example, the robots 4A, 4B, and 4C may be scalar robots (horizontal articulated robots), dual-arm robots, etc. Also, the robots 4A, 4B, and 4C may be fixed to the floor or the like and immovable, or may be fixed to a moving device such as an automated guided vehicle (AGV) and movable. Also, the robots 4A, 4B, and 4C may be robots with different configurations from each other.

[0019] The configuration of the robot controller system 1 has been described above. Here, in the robot controller system 1, time is often used for various events, for example, logs (records) such as startup, shutdown, and occurrence of abnormalities, time display on a display screen such as a monitor, addition of time to logs created by the user, etc. Therefore, it is very important for the robot controllers 2A, 2B, and 2C to hold accurate time.

[0020] However, depending on the accuracy of the input clock used, the time accuracy (the amount of time deviation per unit time) may differ between robot controllers 2A, 2B, and 2C. In such cases, the time difference between robot controllers 2A, 2B, and 2C will increase as time passes since the time synchronization, making it impossible to create accurate logs. For example, actions performed at the same time may be recorded as occurring at different times in the logs.

[0021] Therefore, in the robot controller system 1, robot controller 2A executes a time synchronization program P to synchronize the time between robot controllers 2A, 2B, and 2C. In other words, robot controller 2A is the "master unit" that executes the time synchronization program P, and the other robot controllers 2B and 2C are "slave units" that follow the time synchronization program P executed by robot controller 2A. In this embodiment, since robot controllers 2A, 2B, and 2C can each hold and execute the time synchronization program P, they can each function as a master unit. Therefore, in the robot controller system 1, the parent-child relationship between robot controllers 2A, 2B, and 2C can be switched, improving the convenience of the system.

[0022] As shown in Figure 3, the time synchronization method for robot controllers 2A, 2B, and 2C includes a determination step Sa in which the master robot controller 2A determines whether the time of each robot controller 2A, 2B, and 2C is valid or invalid based on the time information Dta, Dtb, and Dtc of each robot controller 2A, 2B, and 2C, and a correction step Sb in which the robot controllers 2A, 2B, and 2C synchronize their times according to the result of the determination step Sa.

[0023] Before providing a detailed explanation of the time synchronization method, we will first describe how to determine whether a time is valid or invalid. "Valid" means a time that can be used for time correction, while "invalid" means a time that cannot be used for time correction. Since the method for determining valid / invalid time is the same for all controllers, the following explanation will focus on the time determination method for robot controller 2A, omitting the explanations for robot controllers 2B and 2C.

[0024] In robot controller 2A, even if power supply 3 is shut off and power supply from power circuit 24A is lost, the real-time clock 22A will continue to operate as long as power supply from sub-battery 23A continues. If power supply from sub-battery 23A is lost and the real-time clock 22A stops, the next time it is started, the count will start from the default (initial setting) time, or the time when the real-time clock 22A stopped will be remembered and the count will resume from the remembered time. Hereafter, this phenomenon will also be referred to as "reset".

[0025] Depending on the type of real-time clock 22A, some have a reset detection function to detect resets, while others do not. If the real-time clock 22A has a reset detection function, information regarding whether or not a reset has been detected is included in the time information Dta. Then, as shown in Figure 4, if "reset detection is present," the robot controller 2A determines that the time of the robot controller 2A is invalid because it is expected that the time of the robot controller 2A will deviate significantly from the actual time. If "reset detection is not present," the robot controller 2A determines that the time of the robot controller 2A is valid because it is expected that the time of the robot controller 2A will be accurate.

[0026] If the real-time clock 22A does not have a reset detection function, the robot controller 2A stores the time when the power supply 3 was last turned off as the power-off time, and includes information about the power-off time and the current time in the time information Dta. Then, as shown in Figure 5, the robot controller 2A compares the power-off time and the current time. If the current time is ahead of the power-off time, it is assumed that the real-time clock 22A continued to be driven by power supplied from the sub-battery 23A, and the robot controller 2A determines that its time is valid. If the current time is behind the power-off time, it is assumed that a reset occurred due to power loss, and the robot controller 2A determines that its time is invalid. It should be noted that there may be cases where the power-off time is not included in the time information Dta due to various reasons such as a program bug, and in such cases, the robot controller 2A determines that its time is invalid.

[0027] The above describes a method for determining the validity of the time on the robot controller 2A. This method allows for simple and accurate determination of the validity of the time on the robot controller 2A. However, the method for determining the validity of the time on the robot controller 2A is not particularly limited.

[0028] Next, the time synchronization method for robot controllers 2A, 2B, and 2C performed when the robot controller system 1 is started will be explained based on Figures 6 and 7. For convenience of explanation, robot controllers 2A, 2B, and 2C are referred to as RC2A, RC2B, and RC2C in Figures 6 and 7.

[0029] As shown in Figure 6, when the robot controller system 1 is driven by power supplied from power supply 3, in step S101, the robot controller 2A requests time information Dtb from the robot controller 2B. Next, in step S102, the robot controller 2B receives the request from the robot controller 2A and transmits the time information Dtb to the robot controller 2A.

[0030] Next, in step S103, the robot controller 2A determines whether the time of the robot controller 2B is valid or invalid based on the time information Dtb received from the robot controller 2B using the determination method described above. If the determination result is valid, in step S104, the robot controller 2A stores the current time Tb (the time when the robot controller 2B was requested to obtain the time information Dtb) contained in the time information Dtb, and starts the timer to count the elapsed time Cb from the time when the robot controller 2B was requested to obtain the time information Dtb. On the other hand, if the determination result is invalid, the robot controller 2A skips step S104 and proceeds to step S105.

[0031] Next, in step S105, the robot controller 2A requests time information Dtc from the robot controller 2C. Then, in step S106, the robot controller 2C receives the request from the robot controller 2A and sends the time information Dtc to the robot controller 2A.

[0032] Next, in step S107, the robot controller 2A determines whether the time on the robot controller 2C is valid or invalid based on the time information Dtc received from the robot controller 2C, using the determination method described above. If the determination result is valid, in step S108, the robot controller 2A stores the current time Tc (the time when the robot controller 2C was requested to obtain the time information Dtc) contained in the time information Dtc, and also starts the timer to count the elapsed time Cc from the time when the robot controller 2B was requested to obtain the time information Dtc. On the other hand, if the determination result is invalid, the robot controller 2A skips step S108 and proceeds to step S109.

[0033] Next, as shown in Figure 7, in step S109, the robot controller 2A determines whether the time of the robot controller 2A is valid or invalid based on the time information Dta of the robot controller 2A using the determination method described above. If the determination result is valid, in step S110, the robot controller 2A refers to the time determination results of the robot controllers 2B and 2C in steps S103 and S107.

[0034] If the timestamps of robot controllers 2B and 2C are both valid, that is, if the timestamps of robot controllers 2A, 2B, and 2C are all valid, then in step S111, robot controller 2A obtains its current time Ta from the real-time clock 22A, obtains a corrected time Tb' by adding the elapsed time Cb to the current time Tb, and obtains a corrected time Tc' by adding the elapsed time Cc to the current time Tc.

[0035] Next, in step S112, the robot controller 2A calculates the new set time Tset using the current time Ta and correction times Tb' and Tc'. The method for calculating the set time Tset is not particularly limited and can be appropriately selected according to the characteristics of the real-time clocks 22A, 22B, and 22C. For example, if prior verification has shown that the real-time clocks 22A, 22B, and 22C have a mix of clocks that tend to run ahead of the actual time and clocks that tend to run behind, the set time Tset is calculated by averaging the current time Ta and correction times Tb' and Tc'. This method can suppress the discrepancy between the set time Tset and the actual time.

[0036] Furthermore, if prior verification reveals that all real-time clocks 22A, 22B, and 22C tend to run ahead of the actual time, the latest time among the current time Ta and correction times Tb' and Tc' is calculated as the set time Tset. This method helps to suppress the discrepancy between the set time Tset and the actual time.

[0037] Conversely, if prior verification reveals that all real-time clocks 22A, 22B, and 22C tend to lag behind actual time, the current time Ta and the most advanced of the correction times Tb' and Tc' are calculated as the set time Tset. This method helps to suppress the discrepancy between the set time Tset and actual time.

[0038] Returning to step S110, if only one of the robot controllers 2B or 2C's judgment results is valid, then in steps S113 and S114, the set time Tset is calculated using the current time Ta and the valid correction time Tb' or Tc' in the same manner as described above.

[0039] Furthermore, if the determination results of both robot controllers 2B and 2C are invalid in step S110, then in step S115, robot controller 2A obtains its current time Ta from the real-time clock 22A. Next, in step S116, robot controller 2A sets the current time Ta to the set time Tset. In this case, since only robot controller 2A has a valid time, setting the current time Ta to the set time Tset can suppress the discrepancy between the set time Tset and the actual time.

[0040] Returning to step S109, if the time of robot controller 2A is invalid, in step S117, robot controller 2A refers to the time determination results of robot controllers 2B and 2C in steps S103 and S107. If the determination results of robot controllers 2B and 2C are both valid, in step S118, robot controller 2A obtains the corrected times Tb' and Tc'. Next, in step S119, robot controller 2A calculates the set time Tset using the corrected times Tb' and Tc' in the same way as described above.

[0041] In step S117, if only one of the robot controllers 2B or 2C's determination results is valid, in step S120, robot controller 2A sets the valid of the correction times Tb' and Tc' as the set time Tset. This method makes it possible to suppress the discrepancy between the set time Tset and the actual time.

[0042] In contrast, if the determination results of robot controllers 2B and 2C are both invalid in step S117, then in step S121, robot controller 2A determines whether the power-off time, which is the time when the power was last turned off, is stored in at least one of robot controllers 2A, 2B, and 2C. If the power-off time is recorded in at least one of robot controllers 2A, 2B, and 2C, then in step S122, robot controller 2A sets the power-off time as the set time Tset. This will cause a discrepancy with the actual time, but it prevents the system from going back in time. In other words, the time series of the log can be correctly maintained.

[0043] Furthermore, if power-off times are recorded for two or more robot controllers 2A, 2B, and 2C, and these power-off times differ, any of these power-off times may be used as the set time Tset. However, it is preferable to use the latest power-off time (closest to the actual time) as the set time Tset. This minimizes the discrepancy between the set time Tset and the actual time.

[0044] In contrast, if no power-off time is recorded in any of the robot controllers 2A, 2B, or 2C in step S119, then in step S123, robot controller 2A sets the default time set for robot controller 2A as the set time Tset. This will cause a discrepancy with the actual time, but at least the times of robot controllers 2A, 2B, and 2C can be synchronized.

[0045] Thus, in the determination step Sa, if it is determined that at least one of the robot controllers 2A, 2B, and 2C's time zones is invalid, the setting time Tset is determined based on the time information Dta, Dtb, and Dtc. In this embodiment, the setting time Tset is determined based on at least one of the current time zones Ta, Tb, and Tc included in the time information Dta, Dtb, and Dtc, and the power-off time of the robot controllers 2A, 2B, and 2C. In this embodiment, the time information does not include the default time, but the time information may include the default time of the robot controllers 2A, 2B, and 2C. In that case, the setting time Tset may be determined based on at least one of the current time zones Ta, Tb, and Tc included in the time information Dta, Dtb, and Dtc, the power-off time of the robot controllers 2A, 2B, and 2C, and the default time.

[0046] Through the above steps, a set time Tset is calculated according to the valid / invalid determination result of the robot controllers 2A, 2B, and 2C. Next, in step S124, robot controller 2A sets the real-time clock 22A to set time Tset and transmits the set time Tset to robot controllers 2B and 2C. Then, robot controllers 2B and 2C, having received the set time Tset, set the real-time clocks 22B and 22C to set time Tset.

[0047] With the above steps, the time synchronization of robot controllers 2A, 2B, and 2C is completed. This method makes it easy to synchronize the time of robot controllers 2A, 2B, and 2C. Furthermore, even if one or two of robot controllers 2A, 2B, or 2C are reset, the current time can be calculated from the time of the other robot controllers, thus reducing the need to synchronize the time with the default time. Therefore, this results in a highly reliable robot controller system 1.

[0048] Next, based on Figure 8, the method for periodically synchronizing the time of robot controllers 2A, 2B, and 2C during the operation of robot controller system 1 will be explained. By performing time synchronization periodically during operation, not just at startup, the time difference between robot controllers 2A, 2B, and 2C can always be kept small.

[0049] As shown in Figure 8, when the robot controller system 1 is in operation, in step S201, the robot controller 2A requests time information Dtb from the robot controller 2B. Next, in step S202, the robot controller 2B receives the request from the robot controller 2A and sends the time information Dtb to the robot controller 2A.

[0050] Next, in step S203, the robot controller 2A determines whether the time of the robot controller 2B is valid or invalid based on the time information Dtb received from the robot controller 2B using the determination method described above. If the determination result is valid, in step S204, the robot controller 2A stores the current time Tb (the time when the robot controller 2B was requested to obtain the time information Dtb) contained in the time information Dtb, and starts the timer to count the elapsed time Cb from the time when the robot controller 2B was requested to obtain the time information Dtb. On the other hand, if the determination result is invalid, the robot controller 2A skips step S204 and proceeds to step S205.

[0051] Next, in step S205, the robot controller 2A requests time information Dtc from the robot controller 2C. Then, in step S206, the robot controller 2C receives the request from the robot controller 2A and sends the time information Dtc to the robot controller 2A.

[0052] Next, in step S207, the robot controller 2A determines whether the time on the robot controller 2C is valid or invalid based on the time information Dtc received from the robot controller 2C using the determination method described above. If the determination result is valid, in step S208, the robot controller 2A stores the current time Tc (the time when the time information Dtc was requested) contained in the time information Dtc, and starts the timer to count the elapsed time Cc from the time when the time information Dtc was requested. On the other hand, if the determination result is invalid, the robot controller 2A skips step S208 and proceeds to step S209.

[0053] Next, in steps S209 and S210, the robot controller 2A obtains the valid current time Ta and correction times Tb' and Tc', and calculates the set time Tset by averaging all valid times. Next, in step S211, the robot controller 2A sets the real-time clock 22A to the set time Tset and transmits the set time Tset to the robot controllers 2B and 2C. Then, the robot controllers 2B and 2C, having obtained the set time Tset, set the real-time clocks 22B and 22C to the set time Tset.

[0054] With the above steps, the time synchronization of robot controllers 2A, 2B, and 2C is completed. This method makes it easy to synchronize the time of robot controllers 2A, 2B, and 2C.

[0055] The robot controller system 1 has been described above. The time synchronization method performed in the robot controller system 1 is, as described above, a time synchronization method for synchronizing the times of multiple robot controllers 2A, 2B, 2C that control the driving of robots 4A, 4B, 4C, in a robot controller system 1 in which multiple robot controllers 2A, 2B, 2C are connected to each other, and includes a determination step Sa in which a master unit, which is a predetermined robot controller 2A, determines whether the time of each robot controller 2A, 2B, 2C is valid or invalid based on the time information Dta, Dtb, Dtc of each robot controller 2A, 2B, 2C, and a correction step Sb in which, if it is determined in the determination step Sa that the time is invalid, the master unit determines a set time Tset based on the time information Dta, Dtb, Dtc, and sets the time of each robot controller 2A, 2B, 2C to the set time Tset. With such a method, the time synchronization of robot controllers 2A, 2B, 2C can be easily performed. Furthermore, even if one or two of the robot controllers 2A, 2B, or 2C are reset, the current time can be calculated from the time of the other robot controllers, reducing the need to synchronize the time with the default time. This results in a highly reliable robot controller system 1.

[0056] Furthermore, as mentioned above, each robot controller 2A, 2B, and 2C has a real-time clock 22A, 22B, and 22C, and the time information Dta, Dtb, and Dtc include information on whether or not a reset of the real-time clock 22A, 22B, and 22C has been detected. In the determination step Sa, if a reset is detected, it is determined to be invalid. With this determination method, the validity of the time of the robot controllers 2A, 2B, and 2C can be determined simply and accurately.

[0057] Furthermore, as mentioned above, each robot controller 2A, 2B, and 2C has a real-time clock 22A, 22B, and 22C, and the time information Dta, Dtb, and Dtc include the time obtained from the real-time clocks 22A, 22B, and 22C, and the power-off time, which is the time when the power was last turned off. Then, in the determination step Sa, The time obtained from real-time clocks 22A, 22B, and 22C is the power-off time. If the time is slower than this, it is determined to be invalid. This method of determination allows for the simple and accurate determination of the validity of the time on robot controllers 2A, 2B, and 2C.

[0058] Furthermore, as mentioned above, in the determination step Sa, if the time information Dta, Dtb, and Dtc does not include the power-off time, it is also determined to be invalid. This determination method allows for the simple and accurate determination of the validity of the time on the robot controllers 2A, 2B, and 2C.

[0059] Furthermore, as mentioned above, if there are multiple robot controllers 2A, 2B, and 2C that are determined to be valid, the average time of the valid robot controllers 2A, 2B, and 2C is set as the set time Tset. This method can suppress the discrepancy between the set time Tset and the actual time, especially when prior verification has revealed that the real-time clocks 22A, 22B, and 22C contain a mix of those that tend to run ahead of the actual time and those that tend to run behind.

[0060] Furthermore, as mentioned above, if there are multiple robot controllers 2A, 2B, and 2C that are determined to be valid, the latest time among the valid robot controllers 2A, 2B, and 2C is set as the set time Tset. This method can suppress the discrepancy between the set time Tset and the actual time, especially when it is known that all of the real-time clocks 22A, 22B, and 22C tend to run ahead of the actual time.

[0061] Furthermore, as mentioned above, if there are multiple robot controllers 2A, 2B, and 2C that are determined to be valid, the earliest time among the valid robot controllers 2A, 2B, and 2C is set as the set time Tset. This method can suppress the discrepancy between the set time Tset and the actual time, especially when it is known that all of the real-time clocks 22A, 22B, and 22C tend to lag behind the actual time.

[0062] Furthermore, as mentioned above, the time synchronization method is performed periodically while the robot controller system 1 is in operation. By performing time synchronization periodically during operation in this way, the time difference between robot controllers 2A, 2B, and 2C can always be kept to a minimum.

[0063] Furthermore, as mentioned above, the time synchronization program P is used in a robot controller system 1 in which multiple robot controllers 2A, 2B, and 2C that control the driving of robots 4A, 4B, and 4C are connected to each other. The time synchronization program P synchronizes the times of the multiple robot controllers 2A, 2B, and 2C and is executed by one robot controller 2A as the master unit. It includes a determination step Sa which determines whether the time of each robot controller 2A, 2B, and 2C is valid or invalid based on the time information Dta, Dtb, and Dtc of each robot controller 2A, 2B, and 2C, and a correction step Sb which, if it is determined in the determination step Sa that the time is invalid, determines a set time Tset based on the time information Dta, Dtb, and Dtc and sets the time of each robot controller 2A, 2B, and 2C to the set time Tset. With such a configuration, the time synchronization of the robot controllers 2A, 2B, and 2C can be easily performed. Furthermore, even if one or two of the robot controllers 2A, 2B, or 2C are reset, the current time can be calculated from the time of the other robot controllers, reducing the need to synchronize the time with the default time. This results in a highly reliable robot controller system 1.

[0064] Furthermore, as mentioned above, the time synchronization program P is held in multiple robot controllers 2A, 2B, and 2C, and one selected robot controller 2A, 2B, or 2C executes it as the master unit. This allows for switching between master and slave units, resulting in a highly convenient robot controller system 1.

[0065] As mentioned above, the robot controller system 1 is a robot controller system in which multiple robot controllers 2A, 2B, and 2C that control the driving of robots 4A, 4B, and 4C are connected to each other. The system synchronizes the times of multiple robot controllers 2A, 2B, and 2C by performing a determination step Sa in which a master unit, which is a predetermined robot controller 2A, determines whether the time of each robot controller 2A, 2B, and 2C is valid or invalid based on the time information Dta, Dtb, and Dtc of each robot controller 2A, 2B, and 2C, and a correction step Sb in which, if the determination step Sa determines that the time is invalid, the master unit determines a set time Tset based on the time information Dta, Dtb, and Dtc, and sets the time of each robot controller 2A, 2B, and 2C to the set time Tset. With this configuration, the time synchronization of the robot controllers 2A, 2B, and 2C can be easily performed. In addition, even if one or two of the robot controllers 2A, 2B, and 2C are reset, the current time can be calculated from the time of the other robot controllers, thus reducing the situations in which the time synchronization must be performed with the default time. Therefore, it becomes a highly reliable robot controller system 1.

[0066] The time synchronization method, time synchronization program, and robot controller system of the present invention have been described above based on the illustrated embodiments. However, the present invention is not limited thereto, and the configuration of each part can be replaced with any configuration having a similar function. Furthermore, any other components may be added to the present invention. [Explanation of Symbols]

[0067] 1...Robot controller system, 2A...Robot controller, 21A...Control circuit, 211A...Processor, 212A...Main memory, 22A...Real-time clock, 23A...Sub-battery, 24A...Power supply circuit, 2B...Robot controller, 21B...Control circuit, 211B...Processor, 212B...Main memory, 22B...Real-time clock, 23B...Sub-battery, 24B...Power supply circuit, 2C...Robot controller, 21C...Control circuit, 211C...Processor, 212 C...Main memory, 22C...Real-time clock, 23C...Sub-battery, 24C...Power supply circuit, 3...Power supply, 4A...Robot, 4B...Robot, 4C...Robot, 41...Base, 42...Robot arm, 421...Arm, 422...Arm, 423...Arm, 424...Arm, 425...Arm, 426...Arm, 43...End effector, Cb...Elapsed time, Cc...Elapsed time, Dta...Time information, Dtb...Time information, Dtc...Time information, E...Encoder, J1...Joint, J2...Joint, J3...Joint, J4... Joint, J5... Joint, J6... Joint, M... Motor, P... Time synchronization program, S101... Step, S102... Step, S103... Step, S104... Step, S105... Step, S106... Step, S107... Step, S108... Step, S109... Step, S110... Step, S111... Step, S112... Step, S113... Step, S114... Step, S115... Step, S116... Step, S117... Step, S118... Step, S119... Step, S12 0...Step, S121...Step, S122...Step, S123...Step, S124...Step, S201...Step, S202...Step, S203...Step, S204...Step, S205...Step, S206...Step, S207...Step, S208...Step, S209...Step, S210...Step, S211...Step, Sa...Decision step, Sb...Correction step, Ta...Current time, Tb...Current time, Tb'...Correction time, Tc...Current time, Tc'...Correction time, Tset...Set time

Claims

1. A time synchronization method for a robot controller system in which multiple robot controllers that control the drive of a robot are connected to each other, wherein the time of the multiple robot controllers is synchronized, A determination step in which a predetermined robot controller, which is a master unit, determines whether the time of each robot controller is valid or invalid based on the time information of each robot controller, If invalidity is determined in the determination step, the correction step includes: the master unit determines a set time based on the time information and sets the time of each robot controller to the set time; Each of the robot controllers has a real-time clock, The aforementioned time information includes information on whether or not a reset of the real-time clock has been detected. The time synchronization method is characterized in that, in the determination step, if the reset is detected, it is determined to be invalid.

2. A time synchronization method for a robot controller system in which multiple robot controllers that control the drive of a robot are connected to each other, wherein the time of the multiple robot controllers is synchronized, A determination step in which a predetermined robot controller, which is a master unit, determines whether the time of each robot controller is valid or invalid based on the time information of each robot controller, If invalidity is determined in the determination step, the correction step includes: the master unit determines a set time based on the time information and sets the time of each robot controller to the set time; Each of the robot controllers has a real-time clock, The aforementioned time information includes the time obtained from the real-time clock and the power-off time, which is the time when the power was last turned off. The time synchronization method is characterized in that, in the determination step, it is determined to be invalid if the time obtained from the real-time clock is later than the power-off time.

3. The time synchronization method according to claim 2, wherein the determination step also determines that the time information is invalid if the power-off time is not included.

4. If there are multiple robot controllers that have been determined to be valid, the time synchronization method according to any one of claims 1 to 3, wherein the average value of the times of the robot controllers that have been determined to be valid is set to the setting time.

5. A time synchronization method for a robot controller system in which multiple robot controllers that control the drive of a robot are connected to each other, wherein the time of the multiple robot controllers is synchronized, A determination step in which a predetermined robot controller, which is a master unit, determines whether the time of each robot controller is valid or invalid based on the time information of each robot controller, If invalidity is determined in the determination step, the correction step includes: the master unit determines a set time based on the time information and sets the time of each robot controller to the set time; A time synchronization method characterized in that, if there are multiple robot controllers determined to be valid, the latest time among the robot controllers determined to be valid is set as the setting time.

6. A time synchronization method for a robot controller system in which multiple robot controllers that control the drive of a robot are connected to each other, wherein the time of the multiple robot controllers is synchronized, A determination step in which a predetermined robot controller, which is a master unit, determines whether the time of each robot controller is valid or invalid based on the time information of each robot controller, If invalidity is determined in the determination step, the correction step includes: the master unit determines a set time based on the time information and sets the time of each robot controller to the set time; A time synchronization method characterized in that, if there are multiple robot controllers determined to be valid, the earliest time among the robot controllers determined to be valid is set as the setting time.

7. A time synchronization method according to any one of claims 1 to 6, which is performed periodically while the robot controller system is in operation.

8. A time synchronization program used in a robot controller system in which multiple robot controllers that control the movement of a robot are connected to each other, for synchronizing the time of the multiple robot controllers, It is executed by one of the aforementioned robot controllers acting as the master unit, A determination step of determining whether the time of each robot controller is valid or invalid based on the time information of each robot controller, If invalidity is determined in the determination step, the correction step includes determining a set time based on the time information and setting the time of each robot controller to the set time. Each of the robot controllers has a real-time clock, The aforementioned time information includes information on whether or not a reset of the real-time clock has been detected. The time synchronization program is characterized in that, in the determination step, it is determined to be invalid if the reset is detected.

9. A time synchronization program used in a robot controller system in which multiple robot controllers that control the movement of a robot are connected to each other, for synchronizing the time of the multiple robot controllers, It is executed by one of the aforementioned robot controllers acting as the master unit, A determination step of determining whether the time of each robot controller is valid or invalid based on the time information of each robot controller, If invalidity is determined in the determination step, the correction step includes determining a set time based on the time information and setting the time of each robot controller to the set time. Each of the robot controllers has a real-time clock, The aforementioned time information includes the time obtained from the real-time clock and the power-off time, which is the time when the power was last turned off. The time synchronization program is characterized in that, in the determination step, it is determined to be invalid if the time obtained from the real-time clock is later than the power-off time.

10. A time synchronization program used in a robot controller system in which multiple robot controllers that control the movement of a robot are connected to each other, for synchronizing the time of the multiple robot controllers, It is executed by one of the aforementioned robot controllers acting as the master unit, A determination step of determining whether the time of each robot controller is valid or invalid based on the time information of each robot controller, If invalidity is determined in the determination step, the correction step includes determining a set time based on the time information and setting the time of each robot controller to the set time. A time synchronization program characterized in that, if there are multiple robot controllers determined to be valid, the latest time among the robot controllers determined to be valid is set as the setting time.

11. A time synchronization program used in a robot controller system in which multiple robot controllers that control the movement of a robot are connected to each other, for synchronizing the time of the multiple robot controllers, It is executed by one of the aforementioned robot controllers acting as the master unit, A determination step of determining whether the time of each robot controller is valid or invalid based on the time information of each robot controller, If invalidity is determined in the determination step, the correction step includes determining a set time based on the time information and setting the time of each robot controller to the set time. A time synchronization program characterized in that, if there are multiple robot controllers determined to be valid, the earliest time among the robot controllers determined to be valid is set as the setting time.

12. The time synchronization program according to any one of claims 8 to 11, which is held by a plurality of robot controllers and executed by one selected robot controller as the master unit.

13. A robot controller system in which multiple robot controllers that control the movement of a robot are connected to each other, A determination step in which a predetermined robot controller, which is a master unit, determines whether the time of each robot controller is valid or invalid based on the time information of each robot controller, If invalidity is determined in the determination step, the master unit determines a set time based on the time information and performs a correction step to set the time of each robot controller to the set time, thereby synchronizing the times of the multiple robot controllers. Each of the robot controllers has a real-time clock, The aforementioned time information includes information on whether or not a reset of the real-time clock has been detected. The robot controller system is characterized in that, in the determination step, it is determined to be invalid when the reset is detected.

14. A robot controller system in which multiple robot controllers that control the movement of a robot are connected to each other, A determination step in which a predetermined robot controller, which is a master unit, determines whether the time of each robot controller is valid or invalid based on the time information of each robot controller, If invalidity is determined in the determination step, the master unit determines a set time based on the time information and performs a correction step to set the time of each robot controller to the set time, thereby synchronizing the times of the multiple robot controllers. Each of the robot controllers has a real-time clock, The aforementioned time information includes the time obtained from the real-time clock and the power-off time, which is the time when the power was last turned off. The robot controller system is characterized in that, in the determination step, it is determined to be invalid if the time obtained from the real-time clock is later than the power-off time.

15. A robot controller system in which multiple robot controllers that control the movement of a robot are connected to each other, A determination step in which a predetermined robot controller, which is a master unit, determines whether the time of each robot controller is valid or invalid based on the time information of each robot controller, If invalidity is determined in the determination step, the master unit determines a set time based on the time information and performs a correction step to set the time of each robot controller to the set time, thereby synchronizing the times of the multiple robot controllers. A robot controller system characterized in that, if there are multiple robot controllers determined to be valid, the latest time among the robot controllers determined to be valid is set as the setting time.

16. A robot controller system in which multiple robot controllers that control the movement of a robot are connected to each other, A determination step in which a predetermined robot controller, which is a master unit, determines whether the time of each robot controller is valid or invalid based on the time information of each robot controller, If invalidity is determined in the determination step, the master unit determines a set time based on the time information and performs a correction step to set the time of each robot controller to the set time, thereby synchronizing the times of the multiple robot controllers. A robot controller system characterized in that, if there are multiple robot controllers determined to be valid, the earliest time among the robot controllers determined to be valid is set as the setting time.

Citation Information

Patent Citations

  • Method for synchronizing a local to a central time base, and device for carrying out the method with preferred uses

    DE19815647A1

  • Control method for calendar clock and data managing device

    JP2001043137A

  • Electronic controller

    JP2002014726A

  • Cooperative operation controller for a plurality of robots

    JP2006107050A

  • Redundant time synchronization

    US20070076765A1