Trajectory generation device for robot arm, trajectory generation method for robot arm, and robot control device

The trajectory generating device for robot arms addresses the issue of power consumption exceeding the upper limit by optimizing and modifying trajectories to prevent such exceedance, ensuring safe and efficient operation.

JP2025072730APending Publication Date: 2025-05-12MURORAN INSTITUTE OF TECHNOLOGY +1
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2023182995
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-10-25
Publication Date
2025-05-12

AI Technical Summary

Technical Problem

Robot arms with upper limits on power supply face the risk of exceeding their power consumption threshold, leading to potential operational failures when generating trajectories optimized for minimum energy consumption.

Method used

A trajectory generating device for robot arms that includes a path storage unit, a generation unit for optimizing trajectories to minimize total power consumption, a specification unit to identify time ranges where power consumption exceeds the limit, and a modification unit to adjust these trajectories to prevent exceeding the power threshold.

Benefits of technology

The solution effectively generates trajectories that prevent power consumption from exceeding the upper limit threshold, ensuring the robot arm can operate safely and efficiently without interruptions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025072730000001_ABST
    Figure 2025072730000001_ABST
Patent Text Reader

Abstract

To prevent power consumption of a robot arm from exceeding an upper limit threshold value.SOLUTION: A trajectory generation device 1 of a robot arm includes: a path storage unit 11 that stores path information indicating a path of an end effector of the robot arm; a generation unit 12 that generates a first trajectory corresponding to the path information in which the total power consumption amount of the robot arm become minimized; a specification unit 13 that specifies a time range in which the power consumption of the robot arm exceeds an upper limit threshold value in the first trajectory; and a correction unit 14 that corrects a portion of the first trajectory corresponding to the time range to a second trajectory in which the power consumption does not exceed the upper limit threshold value.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a trajectory generation device for a robot arm that generates a trajectory in which power consumption does not exceed an upper limit threshold. [Background technology]

[0002] Known technologies for generating trajectories for robot arms include a method for generating an optimal trajectory for moving an end effector to a desired position and posture under various constraint conditions (see, for example, Patent Document 1). Also known are methods for generating a trajectory for moving an end effector to a desired position and posture within a set time with minimal energy (see, for example, Non-Patent Documents 1 to 3). [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Publication No. 7-200030 [Non-patent literature]

[0004] [Non-Patent Document 1] A. Mohammed, B. Schmidt, L. Wang, and L. Gao, "Minimizing energy consumption for robot arm movement", Procedia CIRP, Vol.25, pp.400-405 (2014) [Non-Patent Document 2] J. Gregory, A. Olivares, and E. Staffetti, "Energy-optimal trajectory planning for robot manipulators with holonomic constraints", Syst. Control. Lett. 61(2), pp.279-291 (2012) [Non-Patent Document 3] Y. Wang, K. Ueda, and SA Bortoff "A Hamiltonian approach to compute an energy efficient trajectory for a servomotor system", Automatica, Vol.49, pp.3550-3561 (2013) Summary of the Invention [Problem to be solved by the invention]

[0005] In a robot arm, an upper limit of the power that can be supplied may be set. For example, when power is transmitted from the base end to the tip end of each joint of the robot arm by non-contact power transmission, there may be an upper limit to such power supply. In such a case, even if a trajectory is generated that can move the end effector to a desired position and posture with minimum energy within a predetermined time, when the robot arm is operated according to the trajectory, the power consumption of the robot arm may exceed the upper limit threshold, and the robot arm may not be able to operate midway.

[0006] The present invention has been made to solve the above-mentioned problems, and has an object to provide a robot arm trajectory generation device etc. that can generate a trajectory so that the power consumption of the robot arm does not exceed an upper limit threshold. [Means for solving the problem]

[0007] In order to achieve the above-mentioned object, a robot arm trajectory generation device according to one embodiment of the present invention includes a path memory unit that stores path information indicating a path of an end effector of a robot arm having multiple arms connected by joints driven by motors, a generation unit that generates a first trajectory that corresponds to the path information and is an optimized trajectory so as to minimize the total power consumption of the robot arm, an identification unit that identifies a time range in the first trajectory during which the power consumption of the robot arm exceeds an upper threshold, and a correction unit that corrects a portion of the first trajectory corresponding to the time range to a second trajectory in which the power consumption does not exceed the upper threshold.

[0008] With this configuration, it is possible to generate a trajectory that prevents power consumption from exceeding the upper threshold when the end effector moves. In addition, by generating such a trajectory by modifying the first trajectory, which is the trajectory with the minimum total power consumption, the generated trajectory also has a smaller total power consumption.

[0009] In addition, in a robot arm trajectory generation device according to one aspect of the present invention, the correction unit may further correct a portion of the first trajectory corresponding to from the end point of the time range to the end point of the first trajectory into a third trajectory from the end point of the second trajectory to the end point of the first trajectory. With this configuration, the end point of the corrected trajectory can be made to coincide with the end point of the first trajectory before correction.

[0010] Furthermore, in a robot arm trajectory generation device according to one aspect of the present invention, the correction unit generates a second trajectory by multiplying the angular velocity of each joint of the robot arm in a portion of the first trajectory corresponding to the time range by α, where α may be a maximum positive real number less than 1 that prevents the power consumption of the robot arm in the second trajectory from exceeding an upper limit threshold. With this configuration, when correcting the first trajectory, the path of the end effector on the first trajectory can be prevented from being changed.

[0011] In addition, a robot arm trajectory generation method according to one aspect of the present invention is a method processed using a path memory unit in which path information indicating a path of an end effector of a robot arm having multiple arms connected by joints driven by motors is stored, a generation unit, a determination unit, and a modification unit, and includes the steps of: the generation unit generating a first trajectory that corresponds to the path information and is a trajectory optimized to minimize the total power consumption of the robot arm; the determination unit identifying a time range in the first trajectory in which the power consumption of the robot arm exceeds an upper threshold; and the modification unit modifying a portion of the first trajectory corresponding to the time range to a second trajectory in which the power consumption does not exceed the upper threshold.

[0012] In addition, a robot control device according to one aspect of the present invention includes a robot arm having a plurality of arms connected by joints driven by motors, in which non-contact power transmission is performed at the joints, and a robot control unit that operates the robot arm based on a trajectory generated by a trajectory generation method. With such a configuration, for example, a robot arm that has an upper limit on power consumption can be operated with power consumption below that upper limit. Effect of the Invention

[0013] According to the robot arm trajectory generation device and the like according to one aspect of the present invention, it is possible to generate a trajectory that prevents the power consumption of the robot arm from exceeding an upper limit threshold. [Brief description of the drawings]

[0014] [Figure 1] FIG. 1 is a block diagram showing the configuration of a trajectory generation device for a robot arm according to an embodiment of the present invention. [Diagram 2] FIG. 2 is a schematic diagram showing a configuration of a robot control device according to the embodiment; [Diagram 3] FIG. 2 is a diagram showing an example of a power profile corresponding to a trajectory in the embodiment; [Figure 4]A flowchart showing the operation of the trajectory generation device for a robot arm according to the embodiment. [Diagram 5] FIG. 2 shows an example of the configuration of a computer system according to the embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0015] Hereinafter, a robot arm trajectory generation device, a robot arm trajectory generation method, and a robot control device according to the present invention will be described using embodiments. Note that in the following embodiments, components and steps with the same reference numerals are the same or equivalent, and repeated explanations may be omitted. The trajectory generation device according to this embodiment generates a trajectory that can prevent the power consumption of the robot arm from exceeding an upper limit threshold.

[0016] Fig. 1 is a block diagram showing the configuration of a trajectory generation device 1 for a robot arm according to this embodiment. The trajectory generation device 1 according to this embodiment includes a path storage unit 11 that stores a motion path of an end effector of a robot arm, a generation unit 12, a specification unit 13, a correction unit 14, and an output unit 15. The trajectory generation device 1 may be realized by, for example, a general-purpose computer as shown in Fig. 5, or may be a dedicated device for generating a trajectory. Fig. 5 will be described later.

[0017] 2 is a schematic diagram showing the configuration of a robot control device 3 according to this embodiment. The robot control device 3 according to this embodiment operates a robot arm 32 according to a trajectory generated by a trajectory generating device 1, and includes a trajectory storage unit 31, a robot arm 32, and a robot control unit 33. The use of the robot arm 32 is not particularly limited, and may be, for example, the transportation of an object to be transported, the assembly of an object to be assembled, welding, etc.

[0018] The path storage unit 11 stores path information of the end effector of the robot arm 32. The path information is information indicating the path of the end effector of the robot arm 32 having a plurality of arms connected by joints driven by motors. The joints may connect the arms with a structure, and the structure may have a motor, bearings, etc. built in it to rotate the connected arm with respect to one arm. This path information may be, for example, teaching data of the robot arm 32. The path information may directly indicate, for example, the path of the end effector. In this case, the path information may include, for example, information on the position and orientation of the end effector. Also, the path information may indirectly indicate, for example, the path of the end effector. In this case, the path information may include, for example, information on the angle of each joint of the robot arm 32. Even in this case, the position and orientation of the end effector can be calculated by forward kinematics using the angle of each joint of the robot arm 32, so that the path information indicates the path of the end effector. The route information may be, for example, information indicating the position and posture of the end effector at discrete positions along a predetermined route. In this case, for example, the distance between a first position and posture of the end effector included in the route information and the next second position and posture may be calculated by, for example, interpolating the first position and posture and the second position and posture. The type of interpolation (for example, linear interpolation, curved interpolation, etc.) may be included in the route information. The route storage unit 11 may also store information other than the route information. For example, the travel time when moving according to the route indicated by the route information may also be stored in the route storage unit 11. This travel time may indicate the maximum time for moving from the start point to the end point of the route.

[0019] In this embodiment, a path indicates only the trajectory of the end effector of the robot arm 32 and does not include time information. On the other hand, a trajectory indicates the trajectory of the end effector of the robot arm 32 and includes time information. Therefore, for example, a trajectory may be considered to be path information that also includes time information. Like path information, a trajectory may directly or indirectly indicate, for example, a change in the position or the like of the end effector over time.

[0020] The process by which the route information and the like are stored in the route storage unit 11 is not important. For example, the route information and the like may be stored in the route storage unit 11 via a recording medium, or the route information and the like transmitted via a communication line or the like may be stored in the route storage unit 11. The route storage unit 11 is preferably realized by a non-volatile recording medium, but may also be realized by a volatile recording medium. The recording medium may be, for example, a semiconductor memory or a magnetic disk.

[0021] The generating unit 12 generates a first trajectory, which is a trajectory corresponding to the path information stored in the path storage unit 11 and is optimized so as to minimize the total power consumption of the robot arm 32. That is, the first trajectory is a trajectory along which the end effector of the robot arm 32 moves along the path indicated by the path information. In addition, the total power consumption of the robot arm 32 is minimized by the end effector moving according to the first trajectory. Here, the total power consumption of the robot arm 32 refers to the amount of power consumed by the robot arm 32 when the end effector of the robot arm 32 moves according to the trajectory from the start point to the end point of the trajectory. For example, the generating unit 12 may generate the first trajectory so that the movement of the end effector from the start point to the end point of the path indicated by the path information is completed within the movement time stored in the path storage unit 11. The generating unit 12 may generate the first trajectory, for example, by performing a simulation of the robot arm 32. In the simulation, a start time t 0From the end time t f The optimization problem may be a trajectory that minimizes the total power consumption while the end effector completes the movement along the path indicated by the path information by the time the end effector reaches the target position. Therefore, the first trajectory is a trajectory that minimizes the total power consumption when the end effector is moved according to the path information. The generation of the first trajectory may be performed, for example, by a method similar to the method described in the above non-patent document. The information indicating the first trajectory may be stored in the path storage unit 11, for example. For convenience of explanation, the information indicating the first trajectory may be simply referred to as the first trajectory. The same applies to the other trajectories.

[0022] The determination unit 13 determines a time range in which the power consumption of the robot arm 32 exceeds an upper threshold in the first trajectory. FIG. 3 is a diagram showing a change over time in the power consumed by the robot arm 32 when the end effector of the robot arm 32 moves according to the trajectory. This change in power over time is sometimes called a power profile. In FIG. 3, a power profile 21 corresponds to the first trajectory generated by the generation unit 12. The determination unit 13 may use this power profile 21 to determine a time range in which the power exceeds an upper threshold. In FIG. 3, for example, a time t 1 From time t 2 More specifically, the range from the time t 1 and the end time t 2 The time t may be specified as information indicating a time range. 1 For example, time t may be the time when the power profile 21 is equal to the upper threshold and the slope of the power profile 21 is positive. 2may be, for example, a time when the power profile 21 is equal to the upper threshold and the slope of the power profile 21 is negative. In this way, the time range identified by the identification unit 13 may be, for example, a time range when the power consumption of the robot arm 32 according to the first trajectory is equal to or greater than the upper threshold. Note that the power profile according to the trajectory may be generated, for example, by the generation unit 12, the identification unit 13, or another component.

[0023] The correction unit 14 corrects the portion of the first trajectory corresponding to the time range identified by the identification unit 13 to a second trajectory in which the power consumption does not exceed the upper limit threshold. 1 From time t 2 The first orbital part up to time t 1 From time t 3 The first orbit is changed to the second orbit up to the time t 1 The position and orientation of the end effector at time t 2 If the position and posture of the end effector in is defined as the second position and posture, the second trajectory is a trajectory for moving the end effector from the first position and posture to the second position and posture. Also, the path of the end effector for the portion of the first trajectory that corresponds to the time range identified by the identification unit 13 is the same as the path of the end effector for the second trajectory. In this way, it is possible to prevent the power consumption from exceeding the upper limit threshold without changing the path. Note that the time t 3 is usually taken as the time t 2 That is, the time is later than t 3 >t 2 This is because, in order to reduce power consumption, it is necessary to rotate each joint of the robot arm 32 more slowly.

[0024] In Fig. 3, the power profile 22 shown by the dashed line corresponds to the second trajectory. As shown by the power profile 22, in the second trajectory, the power consumption of the robot arm 32 does not exceed an upper threshold. In the case shown in Fig. 3, the power consumption of the robot arm 32 at time t 1 From time t 2 The portion up to is corrected to the second trajectory by the corrector 14.

[0025] The correction unit 14 may generate the second trajectory by, for example, multiplying by α all the angular velocities of the joints of the robot arm 32 in the portion of the first trajectory corresponding to the specified time range. α is a positive real number less than 1 (0<α<1). α may be the maximum real number for preventing the power consumption of the robot arm 32 from exceeding the upper limit threshold in the second trajectory. This is because the degree of correction is smaller as the value of α is larger. The maximum real number may be, for example, the maximum real number in the strict sense, or may be the maximum real number within the range in which the correction unit 14 changes the candidates for α. For example, when the correction unit 14 increases or decreases the candidates for α at ε intervals, the maximum candidate for α for preventing the power consumption of the robot arm 32 in the second trajectory from exceeding the upper limit threshold may be the final α among the multiple candidates for α changed at the ε intervals.

[0026] As an example, when α1, α2, α3, etc., where 1>α1>α2>α3..., are prepared in advance, the correction unit 14 may first generate a second trajectory when α is set as candidate α1, calculate a power profile 22 corresponding to the second trajectory, and when the power indicated by the power profile 22 does not exceed the upper threshold at any time, set the final α as the value of the candidate at that time, and when it does not, update α to the next candidate α2. Then, this process may be repeated until the power indicated by the power profile 22 does not exceed the upper threshold at any time. Also, although the case where α1, α2, α3, etc. are prepared in advance has been described here, this is not necessary. For example, when updating a candidate for α, the correction unit 14 may generate the next candidate by multiplying the current candidate by a positive coefficient less than 1 (e.g., 0.9 or 0.8), or may generate the next candidate by subtracting a positive number less than 1 (e.g., 0.1 or 0.05) from the current candidate.

[0027] In this way, the angular velocity of each joint of the robot arm 32 is multiplied by α in the first trajectory to generate the second trajectory. Therefore, the path of the end effector in the second trajectory is 1 From time t 2 The path of the end effector from the point of the end point to the point of the end point is the same as that of the end effector from the point of the end point to the point of the end point. Note that the time required for the movement is 1 / α times longer. In other words, (t 3 -t 1 )=(t 2 -t 1 ) / α. In addition, the trajectory after a part of the first trajectory is corrected to the second trajectory may be stored in the route storage unit 11, for example.

[0028] Note that, for example, the correction unit 14 may change the coefficient by which the angular velocity of each joint is multiplied smoothly from 1 to α at the start point of the second trajectory, rather than suddenly multiplying the angular velocity of each joint by α. 1 The movement of the robot arm 32 at time t 1The time from when the coefficient by which the angular velocity of each joint is multiplied becomes α may be determined in advance. It is preferable that this time is short.

[0029] Also, the correction unit 14 may generate the second trajectory by another method as long as the second trajectory can be generated so that the power indicated by the power profile corresponding to the second trajectory does not exceed the upper limit threshold at any time. As an example, the correction unit 14 may change α in multiple stages in the second trajectory. For example, the value of α in the first half of the second trajectory may be different from the value of α in the second half. In this case, for example, the former value of α may be larger than the latter value of α.

[0030] In addition, the correction unit 14 may correct a portion of the first trajectory corresponding to the end point of the time range identified by the identification unit 13 from the end point of the first trajectory to a third trajectory from the end point of the second trajectory to the end point of the first trajectory. 2 From time t f The first orbital part up to time t 3 From time t f The first orbit is changed to the third orbit up to the time t f If the position and posture of the end effector in the first trajectory is the third position and posture, the third trajectory is a trajectory for the end effector to move from the second position and posture to the third position and posture. 2 From time t f The path of the end effector for the portion up to the third trajectory is assumed to be the same as the path of the end effector for the third trajectory. In this way, the end effector can be moved to the third trajectory at time t 3 From time t f The end effector can be moved from the second position and posture to a third position and posture during

[0031] The third orbit is, for example, at time t 3 From time t fAlternatively, the trajectory may be a trajectory in which the total power consumption is minimized when the end effector moves from the second position and posture to the third position and posture in the time from t ... 3 From time t 3 +τ, the time t 2 From time t 2 +τ part in the time direction 3 -t 2 At time t 3 +τ to time t f The third trajectory may be generated so as to minimize the total power consumption. τ is a real number greater than 0. τ may be a minimum real number for preventing the power consumption of the robot arm 32 from exceeding an upper limit threshold in the third trajectory. The trajectories after a part of the first trajectory is corrected to the second trajectory and the third trajectory may be stored in the route storage unit 11, for example.

[0032] In Fig. 3, the power profile 23 indicated by the two-dot chain line corresponds to the third trajectory. As indicated by the power profile 23, the power consumption according to the third trajectory does not exceed the upper threshold. In the case shown in Fig. 3, the power consumption according to the third trajectory is increased from time t 2 From time t f The portion up to is corrected to the third trajectory by the corrector 14.

[0033] Here, usually, at time t 3Each joint is considered to be in motion at time t 3 This makes the movement of the robot arm 32 smoother.

[0034] The correction unit 14 corrects the time t 1 The trajectory after the subsequent portion is corrected to the second trajectory and the third trajectory is the trajectory finally generated by the trajectory generation device 1. That is, in the case shown in FIG. 3, at time t 0 From time t 1 The first orbital part up to time t 1 From time t 3 The second orbit to time t 3 From time t f The trajectory composed of the first trajectory to the third trajectory is the trajectory generated by the trajectory generating device 1. The correcting unit 14 may also generate the second trajectory and the third trajectory, for example, by performing a simulation on the robot arm 32. Information such as a model and parameters required for the simulation performed by the generating unit 12 and the correcting unit 14 may be stored in the path storage unit 11, for example.

[0035] The output unit 15 may output the generated trajectory. Here, this output may be, for example, transmission to a predetermined device via a communication line, storage in a recording medium, or delivery to another component. As an example, the output unit 15 may transmit the generated trajectory to the robot control device 3. Note that the output unit 15 may or may not include a device that performs output (e.g., a communication device, etc.). Also, the output unit 15 may be realized by hardware, or may be realized by software such as a driver that drives those devices.

[0036] 1 shows a configuration in which the trajectory generation device 1 includes the output unit 15, but this is not necessarily the case. The trajectory generation device 1 does not have to include the output unit 15. For example, when the trajectory generation device 1 and the robot control device 3 are configured as an integrated unit, the trajectory generation device 1 does not have to include the output unit 15. In this case, for example, the generated trajectory stored in the path storage unit 11 may be directly used by the robot control unit 33 of the robot control device 3.

[0037] Next, a description will be given of the robot control device 3 shown in Fig. 2. The robot control device 3 controls a robot arm 32 in accordance with the trajectory generated by the trajectory generating device 1.

[0038] In Fig. 2, the trajectory generated by the trajectory generating device 1 is stored in the trajectory storage unit 31. The process by which the trajectory is stored in the trajectory storage unit 31 is not important. For example, the trajectory may be stored in the trajectory storage unit 31 via a recording medium, or a trajectory transmitted via a communication line or the like may be stored in the trajectory storage unit 31. In addition, the trajectory storage unit 31 is preferably realized by a non-volatile recording medium, but may also be realized by a volatile recording medium. The recording medium may be, for example, a semiconductor memory or a magnetic disk.

[0039] The robot arm 32 has a plurality of arms connected by joints driven by motors. In addition, in the robot arm 32, non-contact power transmission may be performed at each joint. In this case, an upper limit value of the power that can be used in the robot arm 32 is determined. This upper limit value of the power may be used in the trajectory generation device 1 as an upper limit threshold value for the power consumption of the robot arm 32.

[0040] The robot control unit 33 operates the robot arm 32 based on the trajectory stored in the trajectory memory unit 31. By controlling the robot arm 32 in this manner, the power consumption of the robot arm 32 does not exceed the upper limit threshold. Therefore, it is possible to prevent the robot arm 32 from stopping its operation due to a power shortage or performing an unexpected operation, for example.

[0041] Next, the operation of the trajectory generation device 1 will be described with reference to the flowchart in Fig. 4. A trajectory is generated according to the processing in the flowchart in Fig. 4. Therefore, Fig. 4 may be considered as a flowchart showing a method for generating a trajectory.

[0042] (Step S101) The generation unit 12 generates a first trajectory, which is a trajectory corresponding to the path information stored in the path storage unit 11 and in which the total power consumption of the robot arm 32 is minimized.

[0043] (Step S102) The identifying unit 13 identifies a time range in which the power consumption exceeds an upper limit threshold in the power profile corresponding to the first trajectory.

[0044] (Step S103) The modification unit 14 determines whether or not a time range has been identified by the identification unit 13. If a time range has been identified, the process proceeds to step S104. If not, the process ends the series of processes for generating a trajectory because there is no time range in which power consumption exceeds the upper limit threshold in the power profile corresponding to the first trajectory. In this case, the robot control device 3 may control the robot arm 32 according to the first trajectory.

[0045] (Step S104) The modification unit 14 sets α to α1.

[0046] (Step S105) The modification unit 14 generates a second trajectory by modifying the portion of the first trajectory corresponding to the time range identified in step S102 using α at that time point.

[0047] (Step S106) The modification unit 14 determines whether the power consumption of the robot arm 32 exceeds the upper threshold in the power profile corresponding to the second trajectory generated in step S105. If the power consumption does not exceed the upper threshold, the process proceeds to step S107, and if not, the process proceeds to step S108.

[0048] (Step S107) The correction unit 14 generates a third trajectory from the end point of the second trajectory to the end point of the first trajectory. Then, a series of processes for generating a trajectory is completed. Note that the generated trajectory is the first trajectory from the start point of the first trajectory to the point where the power consumption exceeds the upper limit threshold, followed by the second trajectory, and then the third trajectory.

[0049] (Step S108) The modification unit 14 updates α and returns to step S105. For example, the modification unit 14 may update α by subtracting a predetermined positive real number less than 1 from α, or may update α by multiplying α by a predetermined positive real number less than 1.

[0050] In addition, in the flowchart of Fig. 4, following step S107, there may be a step in which the output unit 15 outputs the generated trajectory. Also, the order of the processes in the flowchart of Fig. 4 is an example, and the order of the steps may be changed as long as the same result can be obtained.

[0051] The trajectory generated by the trajectory generation method shown in the flowchart of Fig. 4 may be stored in the trajectory storage unit 31 of the robot control device 3, and the robot arm 32 may be controlled by the robot control unit 33 in accordance with the trajectory stored in the trajectory storage unit 31. Note that this control process is already known, and a detailed description thereof will be omitted.

[0052] As described above, according to the robot arm trajectory generation device 1 of this embodiment, it is possible to generate a trajectory that does not exceed the upper threshold value of power consumption when operating the robot arm 32. Therefore, by controlling the robot arm 32 according to the trajectory generated in this manner, the robot control device 3 can prevent the power consumption of the robot arm 32 from exceeding the upper threshold value during control. Therefore, even for a robot arm that has an upper limit on the power supply, such as a robot arm that performs non-contact power transmission at a joint, it is possible to generate a trajectory that can appropriately operate such a robot arm. Also, the correction unit 14 corrects the power consumption of the robot arm 32 at time t 2 From time t f The portion of the first orbit corresponding to the end of the second orbit at time t 3 From the end of the first orbit, time t f By correcting the first trajectory to a third trajectory up to , the end point of the first trajectory before correction can be made to coincide with the end point of the trajectory after correction, and the movement time of the end effector can be prevented from becoming longer according to the correction of the trajectory. In addition, when multiple robot arms such as a first robot arm, a second robot arm, and a third robot arm are operated simultaneously, for example, by operating each robot arm using the trajectory generated by the trajectory generation device 1 according to this embodiment, the upper limit thresholds P1, P2, P3, etc. of power consumption are determined for each of the multiple robot arms such as the first to third robot arms within a certain time width ΔT, and the generation of the trajectory according to this embodiment can be applied. In this case, the upper limit of power consumption may be suppressed by multiplying the angular velocity of all joints by α. In this case, each robot arm does not need to perform contactless power transmission at the joints, for example. In addition, by suppressing the maximum power consumption in this way, highly efficient power operation can be realized. In addition, by modifying the first trajectory so that it is the same path as the first trajectory, the modified trajectory, i.e., the generated trajectory, also moves the end effector along the path indicated by the path information stored in the path memory unit 11.

[0053] Moreover, by generating a trajectory in which the power consumption does not exceed the upper threshold by modifying the first trajectory, which is the trajectory with the minimum total power consumption, the generated trajectory can also have a smaller total power consumption. Moreover, for the portion of the first trajectory corresponding to the time range identified by the identification unit 13, the angular velocity of each joint of the robot arm 32 is multiplied by α to generate a second trajectory, so that the second trajectory has the same path as the first trajectory.

[0054] In this embodiment, the correction unit 14 corrects the end time t f Although the case where the first trajectory is corrected so that time t does not change has been described, this is not necessarily the case. For example, the end point of the corrected trajectory may be a time later than the end point of the first trajectory. As an example, the correction unit 14 may correct the time t 2 From time t f The part of the first orbit up to t 3 -t 2 In this case, the end point of the corrected trajectory is shifted by t from the end point of the first trajectory. 3 -t 2 The time will be later.

[0055] In addition, in a robot arm in which non-contact power transmission is performed at each joint, power may be transmitted to the motor driving the joint on the most proximal side via a wire. In this case, a trajectory may be generated using the power consumption of the robot arm without considering the motor driving the joint on the most proximal side. That is, the power consumption of the robot arm may be, for example, the power consumption of a motor other than the motor on the most proximal side. In addition, the upper limit threshold may be, for example, a threshold related to the power consumption of a motor other than the motor on the most proximal side. This is because, when power is transmitted to the motor driving the joint on the most proximal side via a wire, there is no power limit for that motor. It is preferable that the trajectory generated is a trajectory related to the entire robot arm including the joint on the most proximal side.

[0056] In addition, in the above embodiments, each process or function may be realized by centralized processing in a single device or a single system, or may be realized by distributed processing in multiple devices or multiple systems.

[0057] In addition, in the above embodiments, the transfer of information between each component may be performed, for example, by one component outputting information and the other component receiving information if the two components transferring the information are physically different, or, if the two components transferring the information are physically the same, by shifting from a processing phase corresponding to one component to a processing phase corresponding to the other component.

[0058] In the above embodiment, each component may be configured by dedicated hardware, or a component that can be realized by software may be realized by executing a program. For example, each component may be realized by a program execution unit such as a CPU reading and executing a software program recorded on a recording medium such as a hard disk or semiconductor memory. During execution, the program execution unit may execute the program while accessing the storage unit or recording medium.

[0059] This program may also be executed by being downloaded from a server or the like, or by reading out a program recorded on a predetermined recording medium (for example, an optical disk such as a CD-ROM, a magnetic disk, a semiconductor memory, etc.). This program may also be used as a program constituting a program product. The program may be executed by a single computer or multiple computers. In other words, centralized processing or distributed processing may be performed.

[0060] FIG. 5 is a diagram showing the configuration of a computer system 900 that executes a program to realize the trajectory generation device 1 according to the above embodiment. The trajectory generation device 1 according to the above embodiment may be realized, for example, by computer hardware and a computer program executed thereon. In FIG. 5, the computer system 900 may include a computer 901, a keyboard 902 and a mouse 903 that are input means for inputting information to the computer 901, and a monitor 904 that is output means for outputting information from the computer 901. In addition to a disk drive 905, the computer 901 may include an MPU (Micro Processing Unit) 911, a ROM 912 for storing programs such as a boot-up program, a RAM 913 connected to the MPU 911 to temporarily store instructions of application programs and provide a temporary storage space, a hard disk 914 that stores application programs, system programs, and data, and a bus 915 that connects the MPU 911, the ROM 912, and the like to each other. Also, for example, instead of the hard disk 914, another recording medium such as an SSD may be used. The computer 901 may include a network card (not shown) that provides a connection to a LAN, WAN, or the like.

[0061] A program for causing the computer system 900 to execute the functions of the trajectory generation device 1 according to the above embodiment may be stored on a disk 921 such as a CD-ROM or DVD, inserted into the disk drive 905, and transferred to the hard disk 914. Alternatively, the program may be transmitted to the computer 901 via a network (not shown) and stored on the hard disk 914. The program is loaded into the RAM 913 when executed. The program may be loaded directly from the disk 921 or the network.

[0062] The program does not necessarily include an operating system (OS) or a third-party program that causes the computer 901 to execute the functions of the trajectory generation device 1 according to the above embodiment. The program may include only an instruction portion that calls appropriate functions or modules in a controlled manner to obtain a desired result. How the computer system 900 operates is well known, and a detailed description thereof will be omitted.

[0063] The above-mentioned embodiments are merely examples for specifically implementing the present invention, and are not intended to limit the technical scope of the present invention. The technical scope of the present invention is indicated by the claims, not by the description of the embodiments, and is intended to include modifications within the literal scope of the claims and the scope of equivalent meanings. [Explanation of symbols]

[0064] 1 Trajectory generator 3 Robot control device 11 Route memory section 12 Generation part 13 Specific section 14 Correction section 15 Output section 31 Trajectory memory section 32 Robot Arm 33 Robot control unit

Claims

1. a path memory unit that stores path information indicating a path of an end effector of a robot arm having a plurality of arms connected by joints driven by a motor; a generation unit that generates a first trajectory, the first trajectory being a trajectory corresponding to the path information and optimized so as to minimize a total power consumption amount of the robot arm; an identification unit that identifies a time range in which power consumption of the robot arm exceeds an upper limit threshold on the first trajectory; A correction unit that corrects a portion of the first trajectory corresponding to the time range into a second trajectory in which power consumption does not exceed the upper limit threshold.

2. 2. The trajectory generation device according to claim 1, wherein the modification unit further modifies a portion of the first trajectory corresponding to an end point of the time range to an end point of the first trajectory into a third trajectory from an end point of the second trajectory to an end point of the first trajectory.

3. The correction unit generates a second trajectory by multiplying by α an angular velocity of each joint of the robot arm in a portion of the first trajectory corresponding to the time range; 3. The robot arm trajectory generation device according to claim 1, wherein α is a maximum positive real number less than 1 for preventing power consumption of the robot arm from exceeding the upper limit threshold on the second trajectory.

4. A trajectory generation method for a robot arm, the method being processed using a storage unit that stores path information indicating a path of an end effector of a robot arm having a plurality of arms connected by joints driven by motors, a generation unit, a determination unit, and a correction unit, the method comprising: A step of generating a first trajectory by the generation unit, the first trajectory being a trajectory corresponding to the path information and optimized so as to minimize a total power consumption amount of the robot arm; The identifying unit identifies a time range in which power consumption of the robot arm exceeds an upper limit threshold on the first trajectory; and a step of correcting the portion of the first trajectory corresponding to the time range to a second trajectory in which power consumption does not exceed the upper limit threshold by the correction unit.

5. A robot arm having a plurality of arms connected by joints driven by a motor, in which non-contact power transmission is performed at the joints; A robot control device comprising: a robot control unit that causes the robot arm to operate based on a trajectory generated by the method for generating a trajectory of a robot arm according to claim 4.

Citation Information

Patent Citations

  • Robot operation scheduling device, controller and method for generating optimum track

    JP1995200030A