WO2022201377A1 - Dispositif de commande de robot et procédé de commande de robot - Google Patents

Dispositif de commande de robot et procédé de commande de robot Download PDF

Info

Publication number
WO2022201377A1
WO2022201377A1 PCT/JP2021/012339 JP2021012339W WO2022201377A1 WO 2022201377 A1 WO2022201377 A1 WO 2022201377A1 JP 2021012339 W JP2021012339 W JP 2021012339W WO 2022201377 A1 WO2022201377 A1 WO 2022201377A1
Authority
WO
WIPO (PCT)
Prior art keywords
manipulator
gradient
command trajectory
trajectory
command
Prior art date
Application number
PCT/JP2021/012339
Other languages
English (en)
Japanese (ja)
Inventor
暁生 斎藤
Original Assignee
三菱電機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to CN202180028676.XA priority Critical patent/CN116940906A/zh
Priority to PCT/JP2021/012339 priority patent/WO2022201377A1/fr
Priority to DE112021007371.0T priority patent/DE112021007371T5/de
Priority to JP2022563069A priority patent/JP7378640B2/ja
Publication of WO2022201377A1 publication Critical patent/WO2022201377A1/fr

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B25HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
    • B25JMANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
    • B25J9/00Programme-controlled manipulators
    • B25J9/16Programme controls
    • B25J9/1656Programme controls characterised by programming, planning systems for manipulators
    • B25J9/1664Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40517Constraint motion planning, variational dynamic programming
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/30Nc systems
    • G05B2219/40Robotics, robotics mapping to robotics vision
    • G05B2219/40519Motion, trajectory planning

Definitions

  • the present disclosure relates to a robot control device and a robot control method for controlling a manipulator.
  • Patent Document 1 a simulation is performed using a simulation model of a robot including an elastic holding body, and when the load moment generated in the holding body is greater than a threshold, the simulation is performed so that the load moment is equal to or less than the threshold.
  • a simulation device for changing execution conditions is disclosed.
  • Patent Document 1 it is necessary to repeatedly change the execution conditions of the simulation until the load moment becomes equal to or less than the threshold. Therefore, it takes time to determine the appropriate execution conditions in consideration of the force and moment generated in the workpiece. There is In addition, the only simulation execution condition that can be automatically adjusted is the maximum acceleration. There is a problem that the operation time until gripping cannot be shortened.
  • the present disclosure has been made in order to solve the above-mentioned problems, and is to quickly obtain a manipulator command trajectory and velocity profile that satisfy constraints such as forces and moments generated in a workpiece and shorten operation time. It is an object of the present invention to provide a robot control device and a robot control method capable of
  • the robot control device calculates a velocity profile of the manipulator based on a preset command trajectory to the manipulator, constraints on the manipulator, and an evaluation index based on the operation time of the manipulator. a calculation unit, a gradient calculation unit that calculates a gradient related to the command trajectory of the operation time based on the speed profile to obtain gradient information, and a corrected command trajectory that corrects the command trajectory based on the gradient information. and a control unit for controlling the manipulator to follow the corrected command trajectory.
  • the robot control method calculates a velocity profile of the manipulator based on a preset command trajectory to the manipulator, constraints on the manipulator, and an evaluation index based on the operation time of the manipulator. calculating a slope of the command trajectory of the operation time based on the speed profile to obtain slope information; and correcting the command trajectory based on the slope information to obtain a corrected command trajectory. and controlling the manipulator to follow the correction command locus.
  • a robot control device and a robot control method calculate a velocity profile based on an evaluation index based on manipulator constraints and manipulator operation time, and calculate a command trajectory based on a slope of the command trajectory of the operation time. is corrected, it is possible to quickly obtain a correction command trajectory and velocity profile of the manipulator that satisfy the constraint conditions and shorten the operation time.
  • FIG. 1 is a block diagram showing an example of a robot control device according to Embodiment 1;
  • FIG. 1 is a diagram showing an example of a configuration including a robot control device according to Embodiments 1 to 4;
  • FIG. 4 is a block diagram showing an example of a velocity calculator in Embodiments 1 to 4;
  • FIG. 4 is a block diagram showing an example of a gradient calculator in Embodiments 1 to 4;
  • FIG. FIG. 3 is a block diagram showing an example of a control unit in Embodiments 1 to 4;
  • FIG. 4 is a flow chart showing an example of the operation of the robot control device according to Embodiment 1;
  • FIG. 10 is a block diagram showing an example of a robot control device according to Embodiment 2;
  • FIG. 11 is a block diagram showing an example of a commanded trajectory correction unit according to Embodiment 2;
  • FIG. 9 is a flow chart showing an example of the operation of the robot control device according to Embodiment 2;
  • FIG. 11 is a block diagram showing an example of a robot control device according to Embodiment 3;
  • 14 is a flow chart showing an example of the operation of the robot control device according to Embodiment 3;
  • FIG. 12 is a block diagram showing an example of a robot control device according to Embodiment 4;
  • 14 is a flow chart showing an example of the operation of the robot control device according to Embodiment 4;
  • 2 is a diagram showing a hardware configuration of a robot control device according to Embodiments 1 to 4;
  • FIG. 1 is a block diagram showing an example of a robot control device 100 according to Embodiment 1.
  • FIG. 1 is a block diagram composed of a robot control device 100, an actuator 110, a manipulator 1, and a workpiece 112.
  • FIG. 2 is a diagram showing an example of a configuration including the robot control device 100 according to Embodiment 1.
  • the robot control device 100 controls the actuators 110 installed at the joints of the manipulator 1, which is a vertical articulated robot, so that the gripping unit 111 installed at the tip of the manipulator 1 can pick and hold a work 112 to be gripped. Realize the behavior of a place.
  • the surrounding environment 113 is, for example, a camera, and outputs an image of the manipulator 1 performing pick-and-place operations to a display device (not shown).
  • the robot control device 100 includes a constraint storage unit 2, a command trajectory storage unit 3, a speed calculation unit 4, a gradient calculation unit 5, a command trajectory correction unit 6, a command point sequence calculation unit 7, and a control unit 8. and
  • the constraint storage unit 2 stores parameters of constraints preset for the manipulator 1 .
  • the constraints are at least one of the joint angular velocity, joint angular acceleration, joint torque, hand speed, hand acceleration of the manipulator 1, the force generated in the object (workpiece 112) gripped by the manipulator 1, and the moment generated in the gripped object. It is a condition about one.
  • the constraint is related to the hand speed vh , the constraint is "v min ⁇ v h ⁇ v max ".
  • vmin is the lower limit of the tip speed vh
  • vmax is the upper limit of the tip speed vh .
  • the constraint parameters are v min and v max .
  • Constraints and parameters of constraints are not limited to these.
  • the constraint may be “
  • the robot control device 100 may include a gripping constraint learning unit (not shown).
  • the gripping constraint learning unit uses machine learning to learn constraint parameters for at least one of the force and moment generated on the workpiece 112 , and stores the obtained constraint parameters in the constraint storage unit 2 .
  • the gripping constraint learning unit acquires the force and moment generated in the workpiece 112 by a sensor (not shown), and uses the acquired values as parameters of the constraint conditions. learn.
  • the command trajectory storage unit 3 stores a preset command trajectory to the manipulator 1 .
  • the command trajectory storage unit 3 stores a pair of the position of a waypoint on the spline curve and the value of the parameter of the curve at that position (value from 0 to 1). memorize with Alternatively, the command trajectory storage unit 3 may store only the positions of waypoints on the spline curve. In this case, the value of the parameter is calculated from the distance between waypoints on the spline curve.
  • the command trajectory may be given as a B-spline curve, a Bezier curve, or the like, other than the spline curve.
  • the command trajectory storage unit 3 stores a corrected command trajectory from the command trajectory correction unit 6, which will be described later. At this time, the preset command trajectory is discarded and the corrected command trajectory is newly stored.
  • the velocity calculation unit 4 calculates the velocity profile of the manipulator 1 based on a preset command trajectory to the manipulator 1, constraints on the manipulator 1, and an evaluation index based on the operation time of the manipulator 1. That is, based on the command trajectory from the command trajectory storage unit 3 and the parameters of the constraint conditions from the constraint condition storage unit 2, the velocity calculation unit 4 issues a command to shorten the operation time of the manipulator 1 within the range of the constraint conditions. Calculate the velocity profile on the trajectory. Alternatively, if the robot control device 100 includes a gripping constraint learning unit, the velocity calculating unit 4 calculates a velocity profile based on the command trajectory and the parameters of the constraints learned by the gripping constraint learning unit.
  • the evaluation index based on the operating time of the manipulator 1 is an evaluation function used by the profile calculator 44, which will be described later.
  • This evaluation function is a function obtained by formulating the acceleration and velocity of the manipulator 1 as variables via parameters.
  • the velocity profile represents the change over time of the velocity of each joint when the manipulator 1 moves along the commanded trajectory.
  • a speed calculator 4 calculates a speed profile by an optimization problem that minimizes the operating time represented by the evaluation function.
  • FIG. 3 is a block diagram showing an example of the speed calculation unit 4 according to Embodiment 1.
  • the velocity calculator 4 includes a command interpolation calculator 41 , a dynamics calculator 42 , a constraint coefficient calculator 43 , and a profile calculator 44 .
  • the command interpolation calculation unit 41 uses a preset natural number N to interpolate the curve of the command trajectory from the command trajectory storage unit 3 at N points, and calculates the position of the interpolation point on the command trajectory and the parameter of the command trajectory. Compute first and second derivatives.
  • N a preset natural number
  • the joint position (or joint angle) of each axis of the manipulator 1 is expressed as a cubic piecewise polynomial with respect to parameters.
  • the positions (or angles) of the interpolated points as well as the first and second derivatives with respect to the parameters can be computed.
  • the dynamics calculation unit 42 performs kinematics calculation and dynamics calculation of the manipulator 1 using the positions at the interpolation points from the command interpolation calculation unit 41 and the first-order differential and the second-order differential. output the results of academic calculations.
  • the kinematics calculation is to calculate the velocity, acceleration, angular velocity, and angular acceleration of each joint, each link, and the grasping part 111 of the manipulator 1 from the velocity, acceleration, angular velocity, and angular acceleration of each joint of the manipulator 1. That is.
  • the dynamics calculation is performed by calculating the torque generated at each joint of the manipulator 1 and the torque generated at the gripping portion 111 from the velocity, acceleration, angular velocity, and angular acceleration of each joint, each link, and the gripping portion 111 of the manipulator 1. is to calculate the forces and moments acting on
  • the constraint coefficient calculation unit 43 calculates constraint coefficients based on the kinematics calculation results and dynamics calculation results from the dynamics calculation unit 42 and the constraint parameters from the constraint storage unit 2 .
  • the coefficients of the constraint are a, b, and c. That is, the constraint coefficient is a coefficient included in each term in a relational expression including a plurality of variables.
  • the variables are the acceleration u and the velocity x at the interpolation points in Equation (1).
  • the profile calculator 44 calculates a velocity profile based on the constraint coefficients from the constraint coefficient calculator 43 . That is, the profile calculator 44 calculates the velocity profile on the commanded trajectory of the manipulator 1 and the operating time of the manipulator 1 by optimization calculation based on the evaluation function based on the operating time of the manipulator 1 and the coefficients of the constraint conditions. do.
  • the speed calculation unit 4 can calculate a speed profile that shortens the operation time within the range of the constraint conditions set in the constraint storage unit 2.
  • problems such as the workpiece 112 dropping or excessive force being generated in the workpiece 112 during pick-and-place of the workpiece 112 can be suppressed.
  • the method described in Non-Patent Document 1 is a method called convex optimization that can easily obtain a global optimum solution, so it is possible to calculate the velocity profile at high speed.
  • the gradient calculator 5 calculates the gradient of the commanded trajectory of the manipulator 1 based on the velocity profile from the velocity calculator 4, and outputs it as gradient information. Specifically, the gradient calculator 5 differentiates the motion time of the manipulator 1 from the profile calculator 44 with respect to the commanded trajectory using automatic differentiation, thereby calculating the gradient of the motion time with respect to the commanded trajectory. output as
  • FIG. 4 is a block diagram showing an example of the gradient calculator 5 according to the first embodiment.
  • the gradient calculator 5 includes a command interpolation gradient calculator 51 , a dynamic gradient calculator 52 , a constraint coefficient gradient calculator 53 , and a profile gradient calculator 54 .
  • the command interpolation gradient calculator 51, the dynamic gradient calculator 52, the constraint coefficient gradient calculator 53, and the profile gradient calculator 54 are the command interpolation calculator 41, the dynamic calculator 42, and the constraint coefficient calculator 43, respectively.
  • the slope of the calculation result performed by the profile calculator 44 is calculated.
  • the profile gradient calculation unit 54 calculates the gradients of the coefficients of the operating time constraints by calculating the gradients of the coefficients of the optimization problem based on a method similar to the method disclosed in Non-Patent Document 2 as an example. calculate.
  • the constraint coefficient gradient calculator 53 receives the gradient related to the coefficient of the constraint from the profile gradient calculator 54 as an input, and calculates differentiation of the calculation procedure of the constraint coefficient calculator 43 based on the chain rule to obtain the operation time , and the gradient for the motion time dynamics calculation results.
  • the dynamics gradient calculator 52 inputs the gradients related to the kinematics calculation result of the action time from the constraint coefficient gradient calculator 53 and the gradients related to the dynamics calculation result of the action time.
  • the derivative based on the chain rule the slope of the position at the interpolation point on the commanded trajectory of the action time, the slope of the first derivative of the parameter of the commanded trajectory of the action time, and the parameter of the commanded trajectory of the action time Computes the gradient with respect to the second derivative with respect to .
  • the command interpolation gradient calculation unit 51 calculates the gradient regarding the position of the interpolation point on the command trajectory from the dynamic gradient calculation unit 52, the gradient regarding the first derivative regarding the parameter of the command trajectory, and the gradient regarding the second derivative regarding the parameter of the command trajectory. is input, and the differential of the calculation procedure of the command interpolation calculation unit 41 is calculated based on the chain rule, thereby calculating the gradient of the commanded trajectory of the operation time.
  • the command interpolating gradient calculator 51 outputs the gradient related to the commanded trajectory of the operation time as gradient information.
  • the command trajectory correction unit 6 corrects the command trajectory based on the gradient information from the gradient calculation unit 5 so as to reduce the operation time of the manipulator 1, and outputs it as a corrected command trajectory.
  • the commanded trajectory correction unit 6 corrects the commanded trajectory by using any one of the gradient descent method, the conjugate gradient method, and the quasi-Newton method based on the gradient information. Examples of gradient descent include steepest descent, momentum, or accelerating gradients.
  • the corrected command trajectory is stored in the command trajectory storage unit 3 .
  • the operation time of the manipulator 1 can be shortened by correcting the instruction trajectory so that the operation time of the manipulator 1 is reduced by the command trajectory correction unit 6 based on the gradient information. Further, since the commanded trajectory correction unit 6 uses the gradient information, the commanded trajectory can be corrected efficiently and at high speed.
  • the command point sequence calculation unit 7 calculates command point sequences for each predetermined sampling period based on the corrected command trajectory stored in the command trajectory storage unit 3 and the speed profile from the speed calculation unit 4 .
  • This sampling period is the period when the controller 8, which will be described later, calculates the current value to the actuator 110.
  • FIG. As an example, when the correction command trajectory is given as a spline curve, the command point sequence calculation unit 7 performs conversion between the time and the parameter of the curve of the correction command trajectory based on the velocity profile. is combined with the piecewise polynomial of the spline curve of the corrected command trajectory, which is input, to calculate the point sequence of the position command to the manipulator 1 at each sampling.
  • the control unit 8 controls the manipulator 1 to follow the correction command trajectory. That is, the controller 8 controls the manipulator 1 to follow the command point sequence from the command point sequence calculator 7 .
  • FIG. 5 is a block diagram showing an example of the control section 8 according to the first embodiment.
  • the controller 8 includes a feedforward controller 81 , a feedback controller 82 and a current value calculator 83 .
  • the feedforward control unit 81 performs filter processing such as smoothing on the command point sequence from the command point sequence calculation unit 7, and outputs it as a smoothed command point sequence.
  • the feedforward control unit 81 applies a modeled inverse transfer function to the command point sequence from the command point sequence calculation unit 7 to calculate and output the feedforward value of the current input to the actuator 110.
  • the inverse transfer function is an inverse function of the transfer function of actuator 110, which is the object to be controlled. If the sensor can detect the disturbance generated by the actuator 110, the feedforward control unit 81 may apply a modeled inverse transfer function to the disturbance signal. In this case, the feedforward control unit 81 outputs the current feedforward value including the result obtained by applying the inverse transfer function to the disturbance signal.
  • An example of the disturbance is vibration caused by contact with the manipulator 1 by the operator.
  • the feedback control unit 82 performs feedback control so that the actuator 110 follows the smoothed command point sequence from the feedforward control unit 81, and calculates and outputs the feedback value of the current input to the actuator 110.
  • the current value calculator 83 calculates the current value to be input to the actuator 110 based on the current feedforward value from the feedforward controller 81 and the current feedback value from the feedback controller 82 .
  • FIG. 6 is a flow chart showing an example of the operation of the robot control device 100 according to the first embodiment. That is, FIG. 6 is a flow chart showing an example of the robot control method according to the first embodiment.
  • the velocity calculation unit 4 calculates a preset command trajectory to the manipulator 1, constraints on the manipulator 1, and operation time of the manipulator 1.
  • a velocity profile of the manipulator 1 is calculated (step ST1).
  • the gradient calculation unit 5 calculates the gradient of the commanded trajectory of the manipulator 1 and outputs it as gradient information (step ST2).
  • the command trajectory correction unit 6 corrects the command trajectory based on the gradient information and outputs it as a corrected command trajectory (step ST3).
  • the command trajectory storage unit 3 stores the corrected command trajectory (step ST4).
  • the command point sequence calculation unit 7 calculates a command point sequence based on the corrected command trajectory and speed profile (step ST5).
  • the control unit 8 controls the actuator 110 so that the manipulator 1 follows the corrected command locus (step ST6).
  • a means determines whether or not to continue controlling the robot (step ST7).
  • step ST7 determines whether the manipulator 1 has operated abnormally. If the determination in step ST7 is "Yes”, the process returns to step ST6 to continue controlling the robot. If the determination in step ST7 is "No", control of the robot ends. Robot control ends when, for example, the manipulator 1 reaches the end point of the correction command trajectory. Alternatively, it is a case where it is determined that the manipulator 1 has operated abnormally. This determination is made by means not shown.
  • the velocity profile is calculated based on the evaluation index based on the constraints on the manipulator 1 and the operating time of the manipulator 1, and the commanded trajectory is calculated based on the gradient of the commanded trajectory of the operating time. Since the correction is performed, it is possible to quickly obtain the correction command trajectory and velocity profile of the manipulator 1 that satisfy the constraint conditions and shorten the operation time.
  • the command trajectory is generated based on peripheral information around the manipulator 1 acquired in advance from the peripheral environment 113 .
  • FIG. 7 is a block diagram showing an example of the robot control device 100a according to the second embodiment. 7 differs from FIG. 1 in that the robot control device 100a includes a peripheral environment information storage unit 9, a command trajectory generation unit 10, and a speed profile storage unit 11 in addition to the components of the robot control device 100. . 7 differs from FIG. 1 in that a command trajectory correction unit 6a is provided instead of the command trajectory correction unit 6. FIG. 1 except for the surrounding environment information storage unit 9, the command trajectory generation unit 10, the speed profile storage unit 11, and the command trajectory correction unit 6a, description thereof will be omitted.
  • the peripheral environment information storage unit 9 stores peripheral information around the manipulator 1 .
  • the peripheral environment information storage unit 9 stores information such as the position and shape of obstacles around the manipulator 1 acquired from the peripheral environment 113 as peripheral information.
  • the data structure for storing peripheral information may be, for example, basic shapes such as point groups, voxels, polygon meshes, and rectangular parallelepipeds, or a combination of a plurality of basic shapes.
  • the data structure may be a bounding volume layer that can speed up the distance calculation performed by the distance function calculator 61, which will be described later.
  • the command trajectory generation unit 10 generates a command trajectory based on the surrounding information stored in the surrounding environment information storage unit 9. Specifically, the command trajectory generation unit 10 generates a command trajectory based on the peripheral information so that the manipulator 1 does not surround the manipulator 1 with surrounding obstacles, and updates the command trajectory stored in the command trajectory storage unit 3. I do.
  • RRT Rapidly-exploring Random Tree
  • PRM Probabilistic Road Map
  • the command trajectory generated by the command trajectory generator 10 is not a preset initial trajectory, but a command trajectory that avoids interference with obstacles around the manipulator 1, and is generated autonomously. Therefore, the command trajectory generator 10 can automatically generate the command trajectory only by inputting, for example, the start point and the end point of the command trajectory.
  • the command trajectory correction unit 6a corrects the command trajectory based on the command trajectory stored in the command trajectory storage unit 3, the surrounding information stored in the surrounding environment information storage unit 9, and the gradient information from the gradient calculation unit 5. It is corrected and output as a correction command trajectory.
  • the corrected command trajectory is stored in the command trajectory storage unit 3 .
  • FIG. 8 is a block diagram showing an example of the command locus correction unit 6a according to the second embodiment.
  • the commanded trajectory correction unit 6 a includes a distance function calculation unit 61 , a barrier function calculation unit 62 , a barrier function gradient calculation unit 63 , and a command trajectory correction value calculation unit 64 .
  • the distance function calculation unit 61 calculates the value of the distance function between the commanded trajectory and surrounding obstacles. to calculate
  • the barrier function calculator 62 constructs a barrier function such that the value of the function diverges when the value of the distance function becomes a certain value or less. to calculate
  • the barrier function gradient calculator 63 calculates the gradient of the barrier function value from the barrier function calculator 62 with respect to the commanded trajectory.
  • the barrier function gradient calculator 63 calculates gradients using, for example, automatic differentiation.
  • the command trajectory correction value calculation unit 64 combines the gradient regarding the command trajectory of the operating time of the manipulator 1 from the gradient calculation unit 5 and the gradient regarding the command trajectory of the value of the barrier function from the barrier function gradient calculation unit 63 to obtain gradient information. Then, based on this gradient information, a correction value for the commanded trajectory is calculated so that the sum of the operating time and the value of the barrier function becomes small.
  • the speed profile storage unit 11 stores the speed profile from the speed calculation unit 4.
  • the timing at which the speed calculation unit 4 calculates the speed profile can be arbitrarily set. That is, the velocity profile can be calculated not only immediately before the control unit 8 controls the actuator 110 but also, for example, while the manipulator 1 is not operating or while the manipulator 1 is performing other operations.
  • the command point sequence calculation unit 7 calculates a command point sequence for each predetermined sampling period based on the corrected command trajectory stored in the command trajectory storage unit 3 and the speed profile stored in the speed profile storage unit 11. .
  • FIG. 9 is a flow chart showing an example of the operation of the robot control device 100a according to the second embodiment. That is, FIG. 9 is a flow chart showing an example of the robot control method according to the second embodiment. Since steps ST1 to ST7 in FIG. 9 are the same as steps ST1 to ST7 in FIG. 6, detailed description thereof is omitted here.
  • the command trajectory generator 10 when robot control is started by means (not shown), the command trajectory generator 10 generates a command trajectory based on the surrounding information stored in the surrounding environment information storage unit 9 . (Step ST8).
  • the velocity calculation unit 4 calculates the velocity profile of the manipulator 1 based on the command trajectory to the manipulator 1, the constraint on the manipulator 1, and the evaluation index based on the operation time of the manipulator 1 (step ST1).
  • the speed profile storage unit 11 stores the speed profile (step ST9).
  • the gradient calculation unit 5 calculates the gradient of the commanded trajectory of the manipulator 1 and outputs it as gradient information (step ST2).
  • the commanded trajectory correction unit 6a calculates the gradient of the value of the barrier function with respect to the commanded trajectory, and outputs the gradient information combined with the gradient calculated in step ST2 (step ST10).
  • the command trajectory correction unit 6a corrects the command trajectory based on the gradient information and outputs it as a corrected command trajectory (step ST3).
  • the command trajectory storage unit 3 stores the corrected command trajectory (step ST4).
  • the command point sequence calculation unit 7 calculates a command point sequence based on the corrected command trajectory and speed profile (step ST5).
  • the control unit 8 controls the actuator 110 so that the manipulator 1 follows the corrected command locus (step ST6).
  • a means determines whether or not to continue controlling the robot (step ST7).
  • step ST7 If the determination in step ST7 is "Yes”, the process returns to step ST6 to continue controlling the robot. If the determination in step ST7 is "No", control of the robot ends.
  • the command trajectory generation unit 10 since the command trajectory generation unit 10 generates the command trajectory based on the surrounding information from the surrounding environment 113, the operation time is shortened while avoiding interference with obstacles.
  • the correction command trajectory and velocity profile of the manipulator 1 can be obtained at high speed.
  • Embodiment 3 the manipulator 1 is controlled using an input/output device 12 such as a tablet.
  • FIG. 10 is a block diagram showing an example of a robot control device 100b according to the third embodiment.
  • FIG. 10 differs from FIG. 1 in that the robot control device 100b is connected to the input/output device 12 by a means (not shown). Since the robot control device 100b has the same configuration as the robot control device 100 in the first embodiment, the description thereof is omitted.
  • the robot control device 100b may have the same configuration as the robot control device 100a in the second embodiment.
  • the input/output device 12 displays operation information of the manipulator 1 and peripheral information acquired from the peripheral environment 113 on the screen.
  • the motion information is, for example, an image of the manipulator 1 in motion.
  • the input/output device 12 outputs motion information input by the operator to the robot control device 100b.
  • the input/output device 12 may allow the operator to input the start point and end point of the operation of the manipulator 1 through a touch panel on the screen or a voice interface, or allow the operator to trace the screen of the tablet with a finger.
  • a rough command trajectory of the gripping portion 111 of the manipulator 1 may be input. This commanded trajectory is stored in the commanded trajectory storage unit 3 .
  • the operator can also use the input/output device 12 to stop the manipulator 1 during operation.
  • the input/output device 12 displays "operation stop” on the screen and causes the operator to touch the display, thereby transmitting a work stop command to the robot control device 100b.
  • the robot control device 100b stops the manipulator 1 from operating.
  • FIG. 11 is a flow chart showing an example of the operation of the robot control device 100b according to the third embodiment. That is, FIG. 11 is a flow chart showing an example of the robot control method according to the third embodiment. Since steps ST1 to ST6 in FIG. 11 are the same as steps ST1 to ST6 in FIG. 6, detailed description thereof is omitted here.
  • the velocity calculation unit 4 calculates a preset command trajectory to the manipulator 1, constraints on the manipulator 1, and operation time of the manipulator 1.
  • a velocity profile of the manipulator 1 is calculated (step ST1).
  • the gradient calculation unit 5 calculates the gradient of the commanded trajectory of the manipulator 1 and outputs it as gradient information (step ST2).
  • the command trajectory correction unit 6 corrects the command trajectory based on the gradient information and outputs it as a corrected command trajectory (step ST3).
  • the command trajectory storage unit 3 stores the corrected command trajectory (step ST4).
  • the command point sequence calculation unit 7 calculates a command point sequence based on the corrected command trajectory and speed profile (step ST5).
  • the control unit 8 controls the actuator 110 so that the manipulator 1 follows the corrected command locus (step ST6).
  • a means determines whether or not to continue controlling the robot (step ST11).
  • step ST11 determines whether the process has operated abnormally. If the determination in step ST11 is "Yes”, the process returns to step ST6 and control of the manipulator 1 is continued. If the determination in step ST11 is "No", control of the robot ends. Robot control ends when, for example, the manipulator 1 reaches the end point of the correction command trajectory. Alternatively, it is a case where it is determined that the manipulator 1 has operated abnormally. Alternatively, the I/O device 12 sends a command to "stop operation" to the robot control device 100b. This determination is made by means not shown.
  • the operation of the manipulator 1 can be visualized by controlling the manipulator 1 using the input/output device 12 .
  • Embodiment 4 the manipulator 1 is controlled while the manipulator 1 is installed on the movable platform 13 .
  • FIG. 12 is a block diagram showing an example of the robot control device 100c according to the fourth embodiment.
  • FIG. 12 is different from FIG. 1 in that the manipulator 1 is installed on a moving platform 13.
  • the robot control device 100c includes a constraint storage unit 2c instead of the constraint storage unit 2, a speed calculation unit 4c instead of the speed calculation unit 4, and a slope calculation unit 5 instead of the slope calculation unit 5. differs from FIG. 1 in that it includes a gradient calculator 5c. Except for the constraint storage unit 2c, the velocity calculation unit 4c, and the gradient calculation unit 5c, they are the same as those shown in FIG.
  • the robot control device 100c is based on the robot control device 100 in the first embodiment, but may be based on the robot control device 100a in the second embodiment or the robot control device 100b in the third embodiment.
  • the constraint storage unit 2c stores parameters of constraints set in advance for the manipulator 1. Constraints are the joint angular velocity, joint angular acceleration, joint torque, hand velocity, hand acceleration of the manipulator 1, the force generated by the object gripped by the manipulator 1, and the moment generated by the object, and the manipulator 1 is installed. It includes conditions related to at least one of the reaction force applied to the movable platform 13 and the torque component of the reaction force.
  • the robot control device 100c may be provided with a reaction force constraint learning section (not shown).
  • the reaction force constraint learning unit uses machine learning to learn the parameters of the constraint conditions for at least one of the reaction force applied to the movable platform 13 on which the manipulator 1 is installed and the torque component of the reaction force. Parameters of conditions may be stored in the constraint condition storage unit 2c. Specifically, the reaction force constraint learning unit acquires the reaction force applied to the movable platform 13 and the torque component of the reaction force by a sensor (not shown) during the operation of the manipulator 1, and determines the constraint conditions based on the acquired values. Learn as parameters.
  • the speed calculation unit 4c calculates a command trajectory that shortens the operation time of the manipulator 1 within the range of the constraint conditions. Calculate the velocity profile of
  • the configuration of the speed calculation unit 4c is the same as the configuration of the speed calculation unit 4 shown in FIG. and the constraint coefficient calculator 43 calculates the coefficient of the constraint including the reaction force and the torque component of the reaction force. If the robot control device 100c includes a reaction force constraint learning unit, the speed calculation unit 4c calculates a speed profile based on the command trajectory and the constraint parameters learned by the reaction force constraint learning unit.
  • the gradient calculation unit 5c calculates the gradient regarding the commanded trajectory of the manipulator 1 operation time and outputs it as gradient information.
  • the configuration of the gradient calculator 5c is the same as the configuration of the gradient calculator 5 shown in FIG. It is different from the gradient calculator 5 in that it calculates the gradient for the kinematic calculation result of the action time and the gradient for the dynamic calculation result of the action time, taking into consideration the components as well. Further, the profile gradient calculator 54 differs from the gradient calculator 5 in that the gradient is calculated in consideration of the reaction force applied to the movable platform 13 during the operation of the manipulator 1 and the torque component of the reaction force.
  • the robot control device 100c includes the constraint storage unit 2c, the speed calculation unit 4c, and the gradient calculation unit 5c. operation time can be shortened.
  • FIG. 13 is a flow chart showing an example of the operation of the robot control device 100c according to the fourth embodiment. That is, FIG. 13 is a flow chart showing an example of the robot control method according to the fourth embodiment. Since steps ST1 to ST7 in FIG. 13 are the same as steps ST1 to ST7 in FIG. 6, detailed description thereof is omitted here.
  • the speed calculation unit 4c calculates a preset command trajectory to the manipulator 1, constraints on the manipulator 1, and operation time of the manipulator 1.
  • a velocity profile of the manipulator 1 is calculated (step ST1).
  • a dynamics calculation unit 42 in the speed calculation unit 4c performs kinematics calculation and dynamics calculation including calculation of the reaction force applied to the movable platform 13 during operation of the manipulator 1 and the torque component of the reaction force.
  • the constraint coefficient calculation unit 43 in the speed calculation unit 4c calculates coefficients of constraint conditions, including the constraint conditions related to the reaction force applied to the movable platform 13 and the torque component of the reaction force.
  • the gradient calculation unit 5c calculates the gradient of the commanded trajectory of the manipulator 1 during operation and outputs it as gradient information (step ST2).
  • the constraint coefficient gradient calculation unit 53 in the gradient calculation unit 5c calculates the gradient related to the kinematic calculation result of the operation time and the operation time taking into account the reaction force applied to the movable platform 13 during the operation of the manipulator 1 and the torque component of the reaction force. Calculate the gradient for the time dynamics calculation results.
  • the profile gradient calculator 54 in the gradient calculator 5c calculates the gradient related to the coefficient of the operating time constraint, taking into account the reaction force applied to the movable platform 13 and the torque component of the reaction force.
  • the command trajectory correction unit 6 corrects the command trajectory based on the gradient information and outputs it as a corrected command trajectory (step ST3).
  • the command trajectory storage unit 3 stores the corrected command trajectory (step ST4).
  • the command point sequence calculation unit 7 calculates a command point sequence based on the corrected command trajectory and speed profile (step ST5).
  • the control unit 8 controls the actuator 110 so that the manipulator 1 follows the corrected command locus (step ST6).
  • a means determines whether or not to continue controlling the robot (step ST11).
  • step ST11 determines whether the determination in step ST11 is "Yes" or the process returns to step ST6 and control of the manipulator 1 is continued. If the determination in step ST11 is "No", control of the robot ends.
  • control of the manipulator 1 performed by the robot control device 100c in Embodiment 4 can also be applied to the movable platform 13. Further, the present invention is not limited to the case where the manipulator 1 is installed on the movable pedestal 13, but can be applied to the case where the manipulator 1 is installed on a fixed pedestal (not shown).
  • the robot control devices 100, 100a, 100b, and 100c and the robot control method in Embodiments 1 to 4 can be applied to other than the manipulator 1, which is a vertical articulated robot.
  • the manipulator 1 which is a vertical articulated robot.
  • it can be applied to a manipulator 1 having an arbitrary axis configuration such as a horizontal articulated robot.
  • it can also be applied to industrial devices other than the manipulator 1 .
  • the processing circuitry comprises at least one processor and at least one memory.
  • FIG. 14 is a diagram showing the hardware configuration of the robot control devices 100, 100a, 100b and 100c according to Embodiments 1-4.
  • Robot controllers 100, 100a, 100b and 100c can be implemented by processor 200 and memory 201 shown in FIG. 14(a).
  • the processor 200 is, for example, a CPU (Central Processing Unit, central processing unit, processing unit, arithmetic unit, microprocessor, microcomputer, processor, DSP (Digital Signal Processor)) or system LSI (Large Scale Integration).
  • CPU Central Processing Unit
  • processing unit processing unit
  • arithmetic unit microprocessor
  • microcomputer processor
  • DSP Digital Signal Processor
  • system LSI Large Scale Integration
  • the memory 201 is, for example, a RAM (Random Access Memory), a ROM (Read Only Memory), a flash memory, an EPROM (Erasable Programmable Read Only Memory), an EEPROM (registered trademark) (Electrically Erasable Programmable Read Only Memory) or a non-volatile memory such as a Volatile semiconductor memory, HDD (Hard Disk Drive), magnetic disk, flexible disk, optical disk, compact disk, mini disk, DVD (Digital Versatile Disk), and the like.
  • RAM Random Access Memory
  • ROM Read Only Memory
  • flash memory an EPROM (Erasable Programmable Read Only Memory), an EEPROM (registered trademark) (Electrically Erasable Programmable Read Only Memory) or a non-volatile memory such as a Volatile semiconductor memory, HDD (Hard Disk Drive), magnetic disk, flexible disk, optical disk, compact disk, mini disk, DVD (Digital Versatile Disk), and the like.
  • each part of the robot control devices 100, 100a, 100b, and 100c are realized by software (software, firmware, or software and firmware).
  • Software or the like is written as a program and stored in the memory 201 .
  • the processor 200 reads out and executes programs stored in the memory 201 to achieve the functions of each unit. That is, it can be said that this program causes a computer to execute the procedures or methods of the robot control devices 100, 100a, 100b and 100c.
  • the program executed by the processor 200 may be stored in a computer-readable storage medium in an installable or executable format and provided as a computer program product. Also, the program executed by the processor 200 may be provided to the robot control devices 100, 100a, 100b and 100c via a network such as the Internet.
  • the robot control devices 100, 100a, 100b, and 100c may be realized by a dedicated processing circuit 202 shown in FIG. 14(b). If the processing circuit 202 is dedicated hardware, the processing circuit 202 may be, for example, a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, an ASIC (Application Specific Integrated Circuit), or an FPGA (Field-Programmable Gate). Array), or a combination thereof.
  • the configuration in which the functions of the constituent elements of the robot control devices 100, 100a, 100b, and 100c are realized by either software or hardware has been described above.
  • the configuration is not limited to this, and may be a configuration in which a part of the constituent elements of the robot control devices 100, 100a, 100b, and 100c are realized by software, and another part is realized by dedicated hardware. .

Landscapes

  • Engineering & Computer Science (AREA)
  • Robotics (AREA)
  • Mechanical Engineering (AREA)
  • Manipulator (AREA)

Abstract

L'invention concerne un dispositif de commande de robot (100) comprenant : une unité de calcul de vitesse (4) qui calcule le profil de vitesse d'un manipulateur prédéfini (1) sur la base de la trajectoire d'instruction du manipulateur (1), une condition de contrainte relative au manipulateur (1) et un indice d'évaluation qui est basé sur le temps de fonctionnement du manipulateur (1) ; une unité de calcul de gradient (5) qui calcule un gradient relatif à la trajectoire d'instruction dans le temps de fonctionnement, et qui utilise le gradient résultant en tant qu'informations de gradient, sur la base du profil de vitesse ; une unité de correction de trajectoire d'instruction (6) qui corrige la trajectoire d'instruction et qui utilise la trajectoire d'instruction résultante en tant que trajectoire d'instruction corrigée, sur la base des informations de gradient ; et une unité de commande (8) qui effectue une commande de telle sorte que le manipulateur (1) suit la trajectoire d'instruction corrigée.
PCT/JP2021/012339 2021-03-24 2021-03-24 Dispositif de commande de robot et procédé de commande de robot WO2022201377A1 (fr)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN202180028676.XA CN116940906A (zh) 2021-03-24 2021-03-24 机器人控制装置及机器人控制方法
PCT/JP2021/012339 WO2022201377A1 (fr) 2021-03-24 2021-03-24 Dispositif de commande de robot et procédé de commande de robot
DE112021007371.0T DE112021007371T5 (de) 2021-03-24 2021-03-24 Robotersteuervorrichtung und robotersteuerverfahren
JP2022563069A JP7378640B2 (ja) 2021-03-24 2021-03-24 ロボット制御装置およびロボット制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2021/012339 WO2022201377A1 (fr) 2021-03-24 2021-03-24 Dispositif de commande de robot et procédé de commande de robot

Publications (1)

Publication Number Publication Date
WO2022201377A1 true WO2022201377A1 (fr) 2022-09-29

Family

ID=83396633

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2021/012339 WO2022201377A1 (fr) 2021-03-24 2021-03-24 Dispositif de commande de robot et procédé de commande de robot

Country Status (4)

Country Link
JP (1) JP7378640B2 (fr)
CN (1) CN116940906A (fr)
DE (1) DE112021007371T5 (fr)
WO (1) WO2022201377A1 (fr)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05297916A (ja) * 1992-04-16 1993-11-12 Nachi Fujikoshi Corp ロボットの軌跡制御方法
WO2000010777A1 (fr) * 1998-08-19 2000-03-02 Kuka Roboter Gmbh Dispositif et procede d'equilibrage de poids pour bras de robot
JP2005044230A (ja) * 2003-07-24 2005-02-17 Mitsubishi Electric Corp ロボット制御装置
US20110087375A1 (en) * 2009-10-13 2011-04-14 Kuka Roboter Gmbh Method And Device For Controlling A Manipulator
JP2013041478A (ja) * 2011-08-17 2013-02-28 Fanuc Ltd 学習制御機能を備えたロボット
JP2019123051A (ja) * 2018-01-17 2019-07-25 キヤノン株式会社 ロボット装置、ロボットの制御方法、ロボットの制御装置
JP2020506815A (ja) * 2017-02-08 2020-03-05 ユニバーシティ オブ プレトリア ロボット

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2017129200A1 (fr) 2016-01-28 2017-08-03 MAX-PLANCK-Gesellschaft zur Förderung der Wissenschaften e.V. Système d'optimisation et de commande de mouvement continu dans le monde réel
JP6874712B2 (ja) 2018-02-19 2021-05-19 オムロン株式会社 シミュレーション装置、シミュレーション方法及びシミュレーションプログラム

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05297916A (ja) * 1992-04-16 1993-11-12 Nachi Fujikoshi Corp ロボットの軌跡制御方法
WO2000010777A1 (fr) * 1998-08-19 2000-03-02 Kuka Roboter Gmbh Dispositif et procede d'equilibrage de poids pour bras de robot
JP2005044230A (ja) * 2003-07-24 2005-02-17 Mitsubishi Electric Corp ロボット制御装置
US20110087375A1 (en) * 2009-10-13 2011-04-14 Kuka Roboter Gmbh Method And Device For Controlling A Manipulator
JP2013041478A (ja) * 2011-08-17 2013-02-28 Fanuc Ltd 学習制御機能を備えたロボット
JP2020506815A (ja) * 2017-02-08 2020-03-05 ユニバーシティ オブ プレトリア ロボット
JP2019123051A (ja) * 2018-01-17 2019-07-25 キヤノン株式会社 ロボット装置、ロボットの制御方法、ロボットの制御装置

Also Published As

Publication number Publication date
CN116940906A (zh) 2023-10-24
JP7378640B2 (ja) 2023-11-13
JPWO2022201377A1 (fr) 2022-09-29
DE112021007371T5 (de) 2024-02-15

Similar Documents

Publication Publication Date Title
Cheah et al. Adaptive Jacobian tracking control of robots with uncertainties in kinematic, dynamic and actuator models
EP2835228B1 (fr) Appareil robotique et procédé de commande de robot
US9381643B2 (en) Dynamical system-based robot velocity control
JP5327722B2 (ja) ロボットの負荷推定装置及び負荷推定方法
US20060195228A1 (en) Robot locus control method and apparatus and program of robot locus control method
CN104842355B (zh) 避障约束下冗余空间机器人的混合整数预测控制方法
JP5916583B2 (ja) 多関節ロボットのウィービング制御装置
JP2007076807A (ja) パワーアシスト装置とその適応モデル予測制御方法
Lee et al. Robust and adaptive dynamic controller for fully-actuated robots in operational space under uncertainties
US20200023516A1 (en) Automatic path generation device
Likar et al. Adaptation of bimanual assembly tasks using iterative learning framework
WO2022201377A1 (fr) Dispositif de commande de robot et procédé de commande de robot
Fateh et al. On the transforming of control space by manipulator Jacobian
JP2020110884A (ja) ロボット制御装置、ロボット制御方法、及びロボット制御プログラム
US20220305645A1 (en) System and Method for Robotic Assembly Based on Adaptive Compliance
Li et al. Cooperative robotic soldering of flexible PCBs
Yovchev Finding the optimal parameters for robotic manipulator applications of the bounded error algorithm for iterative learning control
CN114840947A (zh) 一种带约束的三自由度机械臂动力学模型
JP4222338B2 (ja) 適応型ビジュアルフィードバック制御方法
Lang et al. Visual servoing with LQR control for mobile robots
JP6429977B2 (ja) ロボット装置及びロボット制御方法
JP7284874B1 (ja) ロボット制御装置及びロボット制御方法
Pavlichenko et al. Flexible-joint manipulator trajectory tracking with learned two-stage model employing one-step future prediction
JP7399357B1 (ja) 軌道生成装置
JP2020121358A (ja) 学習制御装置、ロボット制御装置およびロボット

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 202180028676.X

Country of ref document: CN

ENP Entry into the national phase

Ref document number: 2022563069

Country of ref document: JP

Kind code of ref document: A

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21932987

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 112021007371

Country of ref document: DE

122 Ep: pct application non-entry in european phase

Ref document number: 21932987

Country of ref document: EP

Kind code of ref document: A1