Motion control method and device, program product, robot and storage medium
By acquiring and adjusting the interactive torque, generating optimized trajectories and optimizing joint control, the robot's balance and interaction accuracy problems in unknown objects are solved, and the accuracy and safety of robot operations are improved.
Patent Information
- Application Number
- CN202411217786.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-30
- Publication Date
- 2024-12-13
- Estimated Expiration
- 2044-08-30
AI Technical Summary
In the case of unknown object information, especially in the case of unknown object weight, it is difficult for robots to maintain balance and accurately complete interactive tasks, resulting in task failure or damage.
By obtaining the expected interaction torque and the actual interaction torque, adjusting the initial expected trajectory, generating a second expected trajectory, and optimizing joint acceleration and torque based on hierarchical optimization of full-body coordination control technology to ensure balance at the end of the robot's arm and target object interaction.
It improves the accuracy and reliability of robot operations, ensures that interactive tasks can be completed safely under unknown object information, and enhances the robot's ability to adapt to the weight of the target object.
Smart Images

Figure CN119115929A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of robot technology, and in particular to a motion control method and device, a program product, a robot and a storage medium. Background Art
[0002] In recent years, robot technology has been developing continuously, becoming more and more intelligent and automated, and the richness, stability and flexibility of actions have been improved to varying degrees. Robots can replace users in production and life to perform specific tasks, thus bringing convenience to users; for example, robots can perform tasks such as manufacturing and assembly, daily cleaning, and kitchenware operation. These tasks involve a large number of physical interaction scenarios, so robots need to be able to autonomously adjust their motion trajectory based on information such as vision, interaction force and position, and ensure their own balance during the interaction process.
[0003] However, in the related art, when the information of the object to be interacted with is known, the robot can complete the task more accurately; but when the information of the object to be interacted with is unknown, the robot cannot complete the task more accurately, or may even be unable to complete the task, or may be unable to maintain balance, causing damage to the robot. Summary of the invention
[0004] In order to overcome the problems existing in the related art, the embodiments of the present disclosure provide a motion control method and device, a program product, a robot and a storage medium to solve the defects in the related art.
[0005] According to a first aspect of an embodiment of the present disclosure, a motion control method is provided, the method comprising:
[0006] In the process of controlling the end of the robot's arm to manipulate the target object based on the first expected trajectory, obtaining an expected interaction torque and an actual interaction torque acquired by the end of the arm;
[0007] adjusting the first desired trajectory according to the desired interaction torque and the actual interaction torque to obtain a second desired trajectory;
[0008] The end of the robot's arm is controlled to operate the target object based on the second expected trajectory.
[0009] In some embodiments of the present disclosure, adjusting the first expected trajectory according to the expected interaction torque and the actual interaction torque to obtain a second expected trajectory includes:
[0010] The first expected trajectory is adjusted according to the difference between the expected interaction torque and the actual interaction torque, as well as the first expected trajectory, the first expected speed, and the first expected acceleration, so as to obtain a second expected trajectory.
[0011] In some embodiments of the present disclosure, adjusting the first expected trajectory according to the difference between the expected interaction torque and the actual interaction torque, as well as the first expected trajectory, the first expected speed, and the first expected acceleration to obtain a second expected trajectory includes:
[0012] According to the difference between the expected interaction torque and the actual interaction torque, the first expected trajectory, the first expected speed, the first expected acceleration, and the stiffness parameter, the damping parameter and the inertia parameter, the first expected trajectory is adjusted to obtain a second expected trajectory;
[0013] wherein, at different trajectory points of the first desired trajectory, the stiffness parameters are the same or different;
[0014] Wherein, at different trajectory points of the first desired trajectory, the damping parameters are the same or different;
[0015] Among them, at different trajectory points of the first expected trajectory, the inertia parameters are the same or different.
[0016] In some embodiments of the present disclosure, at different trajectory points of the first desired trajectory, the desired interaction force is the same or different.
[0017] In some embodiments of the present disclosure, controlling the end of the robot's arm to operate the target object based on the second expected trajectory includes:
[0018] Maintaining the robot's body balance is a high priority task, and tracking the second desired trajectory is a low priority task. The end of the robot's arm is controlled to operate the target object based on hierarchical optimization of the whole body coordinated control technology.
[0019] In some embodiments of the present disclosure, maintaining the robot's body balance is a high priority task, tracking the second desired trajectory is a low priority task, and controlling the robot's arm end to operate the target object based on hierarchical optimization whole-body coordinated control technology includes:
[0020] Under the constraint condition of maintaining the balance of the robot body, the floating base acceleration and the acceleration of each joint are optimized based on the Jacobian matrix in the floating base coordinate system of the robot to obtain an initial optimization result of the floating base acceleration and an initial optimization result of the acceleration of each joint;
[0021] Under the constraint condition of tracking the second desired trajectory and within the initial optimization result of the floating base acceleration and the initial optimization result of the acceleration of each joint, the floating base acceleration and the acceleration of each joint are optimized based on the Jacobian matrix of the robot arm end and the error between the actual trajectory and the second desired trajectory to obtain a target optimization result of the floating base acceleration and a target optimization result of the acceleration of each joint;
[0022] Based on the target optimization result of the floating base acceleration and the target optimization result of the acceleration of each joint, the optimal torque of each joint is determined, and the corresponding joint is controlled to move based on the optimal torque of each joint to control the end of the robot's arm to operate the target object.
[0023] In some embodiments of the present disclosure, the constraint condition for maintaining the robot's body balance includes at least one of the following:
[0024] The angle of each joint of the robot is within the angle range;
[0025] The angular velocity of each joint of the robot is within the angular velocity range;
[0026] The relative posture between each joint of the robot and the floating base meets the requirements of posture stability.
[0027] In some embodiments of the present disclosure, the constraint condition for tracking the second desired trajectory includes at least one of the following:
[0028] The angle of each joint of the robot is within the angle range;
[0029] The angular velocity of each joint of the robot is within the angular velocity range;
[0030] The relative posture between each joint of the robot and the floating base meets the requirements of posture stability.
[0031] According to a second aspect of an embodiment of the present disclosure, a motion control device is provided, the device comprising:
[0032] An acquisition module, used to acquire the expected interaction torque and the actual interaction torque collected by the end of the arm in the process of controlling the end of the arm of the robot to operate the target object based on the first expected trajectory;
[0033] an adjustment module, configured to adjust the first desired trajectory according to the desired interaction torque and the actual interaction torque to obtain a second desired trajectory;
[0034] A tracking module is used to control the end of the robot's arm to operate the target object based on the second expected trajectory.
[0035] In some embodiments of the present disclosure, the adjustment module is used to:
[0036] The first expected trajectory is adjusted according to the difference between the expected interaction torque and the actual interaction torque, as well as the first expected trajectory, the first expected speed, and the first expected acceleration, so as to obtain a second expected trajectory.
[0037] In some embodiments of the present disclosure, the adjustment module is used to adjust the first expected trajectory according to the difference between the expected interaction torque and the actual interaction torque, as well as the first expected trajectory, the first expected speed and the first expected acceleration to obtain the second expected trajectory, and is used to:
[0038] According to the difference between the expected interaction torque and the actual interaction torque, the first expected trajectory, the first expected speed, the first expected acceleration, and the stiffness parameter, the damping parameter and the inertia parameter, the first expected trajectory is adjusted to obtain a second expected trajectory;
[0039] wherein, at different trajectory points of the first desired trajectory, the stiffness parameters are the same or different;
[0040] Wherein, at different trajectory points of the first desired trajectory, the damping parameters are the same or different;
[0041] Among them, at different trajectory points of the first expected trajectory, the inertia parameters are the same or different.
[0042] In some embodiments of the present disclosure, at different trajectory points of the first desired trajectory, the desired interaction force is the same or different.
[0043] In some embodiments of the present disclosure, the tracking module is used to:
[0044] Maintaining the robot's body balance is a high priority task, and tracking the second desired trajectory is a low priority task. The end of the robot's arm is controlled to operate the target object based on hierarchical optimization of the whole body coordinated control technology.
[0045] In some embodiments of the present disclosure, the tracking module is used to:
[0046] Under the constraint condition of maintaining the balance of the robot body, the floating base acceleration and the acceleration of each joint are optimized based on the Jacobian matrix in the floating base coordinate system of the robot to obtain an initial optimization result of the floating base acceleration and an initial optimization result of the acceleration of each joint;
[0047] Under the constraint condition of tracking the second desired trajectory and within the initial optimization result of the floating base acceleration and the initial optimization result of the acceleration of each joint, the floating base acceleration and the acceleration of each joint are optimized based on the Jacobian matrix of the robot arm end and the error between the actual trajectory and the second desired trajectory to obtain a target optimization result of the floating base acceleration and a target optimization result of the acceleration of each joint;
[0048] Based on the target optimization result of the floating base acceleration and the target optimization result of the acceleration of each joint, the optimal torque of each joint is determined, and the corresponding joint is controlled to move based on the optimal torque of each joint to control the end of the robot's arm to operate the target object.
[0049] In some embodiments of the present disclosure, the constraint condition for maintaining the robot's body balance includes at least one of the following:
[0050] The angle of each joint of the robot is within the angle range;
[0051] The angular velocity of each joint of the robot is within the angular velocity range;
[0052] The relative posture between each joint of the robot and the floating base meets the requirements of posture stability.
[0053] In some embodiments of the present disclosure, the constraint condition for tracking the second desired trajectory includes at least one of the following:
[0054] The angle of each joint of the robot is within the angle range;
[0055] The angular velocity of each joint of the robot is within the angular velocity range;
[0056] The relative posture between each joint of the robot and the floating base meets the requirements of posture stability.
[0057] According to a third aspect of an embodiment of the present disclosure, there is provided a computer program product, comprising a computer program / instruction, which implements the steps of any one of the methods described in the first aspect when the computer program / instruction is executed by a processor.
[0058] According to a fourth aspect of an embodiment of the present disclosure, a robot is provided, comprising a memory and a processor, wherein the memory is used to store computer instructions executable on the processor, and the processor is used to implement the motion control method described in any of the above embodiments when executing the computer instructions.
[0059] According to a fifth aspect of an embodiment of the present disclosure, a computer-readable storage medium is provided, on which a computer program is stored, and when the program is executed by a processor, the method described in any of the above embodiments is implemented.
[0060] The technical solution provided by the embodiments of the present disclosure may have the following beneficial effects:
[0061] The motion control method provided by the embodiment of the present disclosure obtains the expected interaction torque and the actual interaction torque collected by the end of the arm in the process of controlling the end of the robot's arm to operate the target object based on the first expected trajectory; and adjusts the first expected trajectory according to the expected interaction torque and the actual interaction torque to obtain the second expected trajectory; and then controls the end of the robot's arm to operate the target object based on the second expected trajectory. Since the actual interaction torque is more accurate and has a smaller error than visual information, this method can make the end of the robot's arm adapt to the information of the target object, especially the weight of the target object, after adjusting the expected trajectory based on the expected interaction torque and the actual collected torque, thereby improving the robot's operating accuracy, as well as the reliability and safety of the robot, so that it can complete the task of interacting with the object in the case of unknown object information, such as unknown object weight. BRIEF DESCRIPTION OF THE DRAWINGS
[0062] The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.
[0063] Figure 1 is a schematic diagram of a scene of a robot carrying a box, shown in an exemplary embodiment of the present disclosure;
[0064] Figure 2 is a flow chart of a motion control method shown in an exemplary embodiment of the present disclosure;
[0065] Figure 3 is a control logic diagram of a motion control method shown in an exemplary embodiment of the present disclosure;
[0066] Figure 4 is a structural schematic diagram of a motion control device shown in an exemplary embodiment of the present disclosure;
[0067] Figure 5 It is a structural block diagram of a robot shown in an exemplary embodiment of the present disclosure. DETAILED DESCRIPTION
[0068] Exemplary embodiments will be described in detail herein, examples of which are shown in the accompanying drawings. When the following description refers to the drawings, the same numbers in different drawings represent the same or similar elements unless otherwise indicated. The embodiments described in the following exemplary embodiments do not represent all embodiments consistent with the present disclosure. Instead, they are merely examples of devices and methods consistent with some aspects of the present disclosure as detailed in the appended claims.
[0069] The terms used in this disclosure are for the purpose of describing specific embodiments only and are not intended to limit the disclosure. The singular forms "a", "said" and "the" used in this disclosure and the appended claims are also intended to include plural forms unless the context clearly indicates otherwise. It should also be understood that the term "and / or" used herein refers to and includes any or all possible combinations of one or more associated listed items.
[0070] It should be understood that although the terms first, second, third, etc. may be used in the present disclosure to describe various information, such information should not be limited to these terms. These terms are only used to distinguish the same type of information from each other. For example, without departing from the scope of the present disclosure, the first information may also be referred to as the second information, and similarly, the second information may also be referred to as the first information. Depending on the context, the word "if" as used herein may be interpreted as "at the time of" or "when" or "in response to determining".
[0071] Based on the technical problems mentioned in the background technology, on the first aspect, at least one embodiment of the present disclosure provides a motion control method, which can be applied to robots, for example, to bipedal robots (humanoid robots); it should be understood that the bipedal robot has two lower limbs for walking and two upper limbs for manipulating objects, namely arms, the ends of the lower limbs, namely the feet, are used to contact the ground for walking, and the ends of the upper limbs, namely the hands, are used to manipulate objects.
[0072] This method can be applied to operating scenarios where robots carry, assemble, and disassemble objects, such as Figure 1 The scene of a humanoid robot carrying a box is shown. The humanoid robot in the above scene can meet the following requirements: each joint driver can support 1kHz torque control, and the robot's onboard computing device can solve the quadratic optimal control problem at a frequency of 500Hz; the head is equipped with a visual sensor to obtain the position information of the interactive object, and the position error accuracy is within 1cm; the wrist and ankle are equipped with a six-dimensional torque sensor to obtain the robot's end torque, and the torque error is within 1N; each joint has an encoder that can return the joint angle and angular velocity; the robot waist is equipped with an inertial measurement unit to estimate the position and velocity of the robot's floating base.
[0073] Please refer to the attached Figure 2 , which exemplarily shows the process of the method, including steps S201 to S203.
[0074] In step S201, in the process of controlling the end arm of the robot to operate the target object based on the first expected trajectory, the expected interaction torque and the actual interaction torque collected by the end arm are obtained.
[0075] In the motion control of the robot, control instructions, such as the joint torque of each joint, are output frame by frame according to a certain period to achieve continuous control. The expected trajectory includes at least one trajectory point, on which the posture, velocity, acceleration, etc. of each joint and floating base of the robot are marked. The end of the robot control arm tracks these trajectory points one by one to make it move according to the expected trajectory. The first expected trajectory can refer to the entire expected trajectory, or to the expected posture of the trajectory point that needs to be tracked in the current frame in the expected trajectory.
[0076] Among them, the actual interaction torque at the end of the arm can be collected by the six-dimensional torque sensor equipped on the robot wrist. The frequency of collecting the actual interaction torque by this sensor is equal to or higher than the command output frequency of the robot control.
[0077] Exemplarily, maintaining the robot's body balance is a high-priority task, and tracking the first desired trajectory is a low-priority task. The whole-body coordinated control technology based on hierarchical optimization controls the end of the robot's arm to operate the target object.
[0078] The constraint condition for maintaining the robot's body balance includes at least one of the following:
[0079] The angle of each joint of the robot is within the angle range;
[0080] The angular velocity of each joint of the robot is within the angular velocity range;
[0081] The relative posture between each joint of the robot and the floating base meets the requirements of posture stability.
[0082] The constraint condition for tracking the second desired trajectory includes at least one of the following:
[0083] The angle of each joint of the robot is within the angle range;
[0084] The angular velocity of each joint of the robot is within the angular velocity range;
[0085] The relative posture between each joint of the robot and the floating base meets the requirements of posture stability.
[0086] In step S202, the first expected trajectory is adjusted according to the expected interaction torque and the actual interaction torque to obtain a second expected trajectory.
[0087] Exemplarily, according to the difference between the expected interaction torque and the actual interaction torque, as well as the first expected trajectory, the first expected speed, and the first expected acceleration, the first expected trajectory is adjusted to obtain a second expected trajectory.
[0088] For example, according to the difference between the expected interaction torque and the actual interaction torque, the first expected trajectory, the first expected speed, the first expected acceleration, and the stiffness parameter, the damping parameter and the inertia parameter, the first expected trajectory is adjusted to obtain the second expected trajectory. That is, the second expected trajectory is determined according to the following formula:
[0089]
[0090] In the above formula, F represents the actual interaction torque, F r represents the expected interaction torque, r d represents the second desired trajectory, r r represents the first desired trajectory, is the second desired speed, is the first desired speed, is the second expected acceleration, is the first expected acceleration, K s ,K d ,K m Represents the stiffness, damping, and inertia parameters of the controller. The larger these parameters are, the more sensitive the corresponding position, velocity, and acceleration are to the interaction force. At this time, the same interaction force will produce a larger robot trajectory motion deviation, so it can be selected by engineers based on experience. Specifically, first obtain the interaction force F and the preset expected force F r and the first desired trajectory r r , and then calculate an adjusted second expected trajectory r according to the model represented by the above formula d .
[0091] wherein, at different trajectory points of the first desired trajectory, the stiffness parameters are the same or different;
[0092] Wherein, at different trajectory points of the first desired trajectory, the damping parameters are the same or different;
[0093] Among them, at different trajectory points of the first expected trajectory, the inertia parameters are the same or different.
[0094] One benefit of using the admittance controller expressed by the above formula is that engineers can design appropriate expected torque and admittance parameters, namely stiffness parameters, damping parameters, and inertia parameters, according to the robot application scenario. Taking the robot opening the hatch as an example, when the hatch is pulled up, the movement of the robotic arm will be subject to a sudden change in interaction force. Then, in the process of lifting the hatch, the interaction force between the hatch and the robotic arm decreases as the hatch lifting angle increases. Finally, when the robotic arm is pulled out, the controller needs to adaptively adjust the end posture according to the contact force to ensure the smallest possible collision. For the above scenarios, this project analyzes the impact of compliant control parameters such as stiffness, damping, mass, and expected interaction force on the operation process, and designs a compliant control parameter adjustment strategy when operating objects of unknown weight. Specifically, the expected interaction torque F is set in advance for the admittance controller in the stage of pulling up the hatch. r In order to speed up the process of the manipulator arm pulling up the hatch, the expected torque should be greater than or equal to the weight of the hatch. At the same time, high damping is designed to reduce the impact of sudden changes in interaction forces on the movement of the manipulator arm. In the stage of lifting the hatch, the expected interaction torque is gradually reduced according to the lifting angle to adapt to the lifting process. In the withdrawal stage, the low stiffness in the attitude direction of the end of the manipulator arm is maintained to reduce the collision between the manipulator and the hatch.
[0095] In step S203, the end arm of the robot is controlled to operate the target object based on the second expected trajectory.
[0096] Exemplarily, maintaining the robot's body balance is a high-priority task, and tracking the second desired trajectory is a low-priority task, and the whole-body coordinated control technology based on hierarchical optimization controls the end of the robot's arm to operate the target object.
[0097] Next, the whole-body coordinated control technology based on hierarchical optimization and the specific implementation method of this step are introduced in detail.
[0098] Whole-body coordinated control technology based on hierarchical optimization
[0099] Assume that a set of optimal solutions that satisfy the first p layers of tasks is Therefore, when solving the p+1th task, certain principles must be followed, that is, solving the p+1th layer task must not destroy the equality constraints and inequality constraints of the previous p layers of tasks.
[0100] In order to ensure that the equality constraints of the first p-layer tasks are not violated, the feasible domain of the optimization variables in the p+1-layer QP problem (quadratic programming problem) is expressed as:
[0101]
[0102] In the above formula, N p is the null space projection matrix of the first p-layer task; z p+1 is a free vector. Thanks to the characteristics of the null space projection, when zp+1 When taking any value, x p+1 Will not destroy the equality constraints of the first p layers of tasks. p The expression can be obtained by iterative calculation using the following formula:
[0103]
[0104] Where N p Equal to the null space projection matrix N of the first p-1 layer tasks p-1 and the null space projection matrix of the p-1th layer task The product of . The task coefficient matrix A representing the p-1th layer task p-1 The new task coefficient matrix after the null space projection matrix mapping, represents the pseudo-inverse matrix.
[0105] In order to ensure that the inequality constraints of the first p-layer tasks are not violated, when constructing the p+1-th layer QP problem, it is necessary to add the inequality constraints of the first p-layer tasks to the constraints, as follows:
[0106]
[0107] …
[0108]
[0109] In the formula, etc. are constrained items, f1, f p 、f p+1 is the constraint value of the constrained item, v p+1 is a constraint variable.
[0110] At this point, the goal of the p+1th level optimization problem is to find a set of z p+1 ,v p+1 , so that under the premise of satisfying the inequality constraints of the first p+1 layers of tasks, the optimization objective function Minimize. According to the optimization result of the p+1th layer problem The total output of the first p+1 layer tasks can be obtained for:
[0111]
[0112] The final solver will be based on Output the torque of each joint of the robot
[0113] Accordingly, this step can be performed as follows:
[0114] Firstly, under the constraint condition of maintaining the balance of the robot body, the floating base acceleration and the acceleration of each joint are optimized based on the Jacobian matrix in the robot's floating base coordinate system to obtain the initial optimization results of the floating base acceleration and the initial optimization results of the acceleration of each joint.
[0115] Among them, the task of keeping the robot's body balanced can be expressed as:
[0116]
[0117] In the above formula, u is a generalized velocity variable, which includes the linear velocity and angular velocity of the robot's floating base coordinate system and the rotational velocity of all joints. d is the decision variable to be optimized, representing the linear acceleration and angular acceleration of the robot's floating base coordinate system, as well as the joint acceleration and joint torque (i.e., the feedforward torque associated with the desired trajectory). n represents the joint torque dimension of the robot. The Jacobian matrix representing the robot's floating base coordinate system can be obtained based on the robot's kinematic model.
[0118] The constraint condition for maintaining the robot's body balance includes at least one of the following:
[0119] The angle of each joint of the robot is within the angle range;
[0120] The angular velocity of each joint of the robot is within the angular velocity range;
[0121] The relative posture between each joint of the robot and the floating base meets the requirements of posture stability.
[0122] Next, under the constraint condition of tracking the second desired trajectory and within the range of the initial optimization result of the floating base acceleration and the initial optimization result of the acceleration of each joint, the floating base acceleration and the acceleration of each joint are optimized based on the Jacobian matrix of the robot arm end and the error between the actual trajectory and the second desired trajectory to obtain a target optimization result of the floating base acceleration and a target optimization result of the acceleration of each joint.
[0123] The task of tracking the second desired trajectory can be expressed as:
[0124]
[0125] In the above formula, Represents the Jacobian matrix in the robot's terminal coordinate system, which can be obtained based on the robot's kinematic model. State error is defined as That is, the actual trajectory r and the expected trajectory r d The error KP , K D To control the gain parameters of the error variation, engineers can adjust them based on experience. Other tasks can be added as needed, such as dynamic constraints, output torque limits, etc.
[0126] The constraint condition for tracking the second desired trajectory includes at least one of the following:
[0127] The angle of each joint of the robot is within the angle range;
[0128] The angular velocity of each joint of the robot is within the angular velocity range;
[0129] The relative posture between each joint of the robot and the floating base meets the requirements of posture stability.
[0130] Finally, based on the target optimization result of the floating base acceleration and the target optimization result of the acceleration of each joint, the optimal torque of each joint is determined, and the corresponding joint is controlled to move based on the optimal torque of each joint to control the end of the robot's arm to operate the target object.
[0131] For example, the target optimization result of the floating base acceleration and the velocity of the floating base in the previous frame are integrated to obtain the velocity of the floating base in the current frame; and then the velocity of the floating base in the current frame and the posture of the floating base in the previous frame are integrated to obtain the posture of the floating base in the current frame.
[0132] For example, for each joint, the target optimization result based on the acceleration of the joint and the angular velocity of the joint in the previous frame are integrated to obtain the angular velocity of the joint in the current frame; then the angular velocity of the joint in the current frame and the angle of the joint in the previous frame are integrated to obtain the angle of the joint in the current frame. Finally, PD (Proportional-Derivative Control) control is performed based on the angle, angular velocity, and angular velocity of each joint in the current frame to obtain the optimal torque of each joint.
[0133] Each joint of the robot is controlled based on the optimal torque, so that the end of the arm can track the second desired trajectory and can adapt to the weight of the target object.
[0134] Combining the above embodiments, it can be seen that the method can be implemented by Figure 3The control strategy shown is used to complete the control. First, the admittance control is performed based on the initial reference trajectory and the interaction force (actual interaction force and expected interaction force), that is, steps S201 and S202 are executed; then, based on the corrected reference trajectory output by the admittance control, that is, the state feedback of the robot (that is, the state of each joint, the state of the floating base, etc.), the whole body control is performed to output joint torques to each joint of the robot, so that each joint tracks the corrected reference trajectory by adjusting the joint torque, thereby completing the interaction with the object of unknown weight.
[0135] It should be understood that this method can be executed once in each frame of the robot motion control. During the execution process, the current desired trajectory is adjusted, and the adjusted desired trajectory is tracked to interact with the target object, thereby realizing real-time torque control that adapts to the external force, so that the robot can complete the object interaction task stably, safely and smoothly.
[0136] The motion control method provided by the embodiment of the present disclosure obtains the expected interaction torque and the actual interaction torque collected by the end of the arm in the process of controlling the end of the robot's arm to operate the target object based on the first expected trajectory; and adjusts the first expected trajectory according to the expected interaction torque and the actual interaction torque to obtain the second expected trajectory; and then controls the end of the robot's arm to operate the target object based on the second expected trajectory. Since the actual interaction torque is more accurate and has a smaller error than visual information, this method can make the end of the robot's arm adapt to the information of the target object, especially the weight of the target object, after adjusting the expected trajectory based on the expected interaction torque and the actual collected torque, thereby improving the robot's operating accuracy, as well as the reliability and safety of the robot, so that it can complete the task of interacting with the object in the case of unknown object information, such as unknown object weight.
[0137] According to a second aspect of the present disclosure, a motion control device is provided. Figure 4 , the device comprises:
[0138] An acquisition module 401 is used to acquire a desired interaction torque and an actual interaction torque acquired by the end of the arm in a process of controlling the end of the arm of the robot to manipulate the target object based on the first desired trajectory;
[0139] An adjustment module 402, configured to adjust the first desired trajectory according to the desired interaction torque and the actual interaction torque to obtain a second desired trajectory;
[0140] The tracking module 403 is used to control the end of the robot's arm to operate the target object based on the second expected trajectory.
[0141] In some embodiments of the present disclosure, the adjustment module is used to:
[0142] The first expected trajectory is adjusted according to the difference between the expected interaction torque and the actual interaction torque, as well as the first expected trajectory, the first expected speed, and the first expected acceleration, so as to obtain a second expected trajectory.
[0143] In some embodiments of the present disclosure, the adjustment module is used to adjust the first expected trajectory according to the difference between the expected interaction torque and the actual interaction torque, as well as the first expected trajectory, the first expected speed and the first expected acceleration to obtain the second expected trajectory, and is used to:
[0144] According to the difference between the expected interaction torque and the actual interaction torque, the first expected trajectory, the first expected speed, the first expected acceleration, and the stiffness parameter, the damping parameter and the inertia parameter, the first expected trajectory is adjusted to obtain a second expected trajectory;
[0145] wherein, at different trajectory points of the first desired trajectory, the stiffness parameters are the same or different;
[0146] Wherein, at different trajectory points of the first desired trajectory, the damping parameters are the same or different;
[0147] Among them, at different trajectory points of the first expected trajectory, the inertia parameters are the same or different.
[0148] In some embodiments of the present disclosure, at different trajectory points of the first desired trajectory, the desired interaction force is the same or different.
[0149] In some embodiments of the present disclosure, the tracking module is used to:
[0150] Maintaining the robot's body balance is a high priority task, and tracking the second desired trajectory is a low priority task. The end of the robot's arm is controlled to operate the target object based on hierarchical optimization of the whole body coordinated control technology.
[0151] In some embodiments of the present disclosure, the tracking module is used to:
[0152] Under the constraint condition of maintaining the balance of the robot body, the floating base acceleration and the acceleration of each joint are optimized based on the Jacobian matrix in the floating base coordinate system of the robot to obtain an initial optimization result of the floating base acceleration and an initial optimization result of the acceleration of each joint;
[0153] Under the constraint condition of tracking the second desired trajectory and within the initial optimization result of the floating base acceleration and the initial optimization result of the acceleration of each joint, the floating base acceleration and the acceleration of each joint are optimized based on the Jacobian matrix of the robot arm end and the error between the actual trajectory and the second desired trajectory to obtain a target optimization result of the floating base acceleration and a target optimization result of the acceleration of each joint;
[0154] Based on the target optimization result of the floating base acceleration and the target optimization result of the acceleration of each joint, the optimal torque of each joint is determined, and the corresponding joint is controlled to move based on the optimal torque of each joint to control the end of the robot's arm to operate the target object.
[0155] In some embodiments of the present disclosure, the constraint condition for maintaining the robot's body balance includes at least one of the following:
[0156] The angle of each joint of the robot is within the angle range;
[0157] The angular velocity of each joint of the robot is within the angular velocity range;
[0158] The relative posture between each joint of the robot and the floating base meets the requirements of posture stability.
[0159] In some embodiments of the present disclosure, the constraint condition for tracking the second desired trajectory includes at least one of the following:
[0160] The angle of each joint of the robot is within the angle range;
[0161] The angular velocity of each joint of the robot is within the angular velocity range;
[0162] The relative posture between each joint of the robot and the floating base meets the requirements of posture stability.
[0163] Regarding the device in the above embodiment, the specific manner in which each module performs the operation has been described in detail in the embodiment of the first aspect related to the method, and will not be elaborated here.
[0164] According to a third aspect of an embodiment of the present disclosure, there is provided a computer program product, comprising a computer program / instruction, which, when executed by a processor, implements the steps of the method described in any embodiment of the first aspect.
[0165] According to a fourth aspect of the embodiments of the present disclosure, a robot is provided. Figure 5The robot includes a memory and a processor, wherein the memory is used to store computer instructions that can be executed on the processor, and the processor is used to implement the motion control method provided in any embodiment of the first aspect when executing the computer instructions.
[0166] In a sixth aspect, at least one embodiment of the present disclosure provides a computer-readable storage medium having a computer program stored thereon, wherein the program, when executed by a processor, implements any of the methods described in the first aspect.
[0167] Those skilled in the art will readily appreciate other embodiments of the present disclosure after considering the specification and practicing the disclosure disclosed herein. This application is intended to cover any variations, uses, or adaptations of the present disclosure that follow the general principles of the present disclosure and include common knowledge or customary techniques in the art that are not disclosed in the present disclosure. The description and examples are intended to be exemplary only, and the true scope and spirit of the present disclosure are indicated by the following claims.
[0168] It should be understood that the present disclosure is not limited to the exact structures that have been described above and shown in the drawings, and that various modifications and changes may be made without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.
Claims
1. A motion control method, characterized in that: The method comprises: In the process of controlling the end of the robot's arm to manipulate the target object based on the first expected trajectory, obtaining an expected interaction torque and an actual interaction torque acquired by the end of the arm; adjusting the first desired trajectory according to the desired interaction torque and the actual interaction torque to obtain a second desired trajectory; The end of the robot's arm is controlled to operate the target object based on the second expected trajectory.
2. The motion control method according to claim 1, characterized in that: The adjusting the first expected trajectory according to the expected interaction torque and the actual interaction torque to obtain a second expected trajectory includes: The first expected trajectory is adjusted according to the difference between the expected interaction torque and the actual interaction torque, as well as the first expected trajectory, the first expected speed, and the first expected acceleration, so as to obtain a second expected trajectory.
3. The motion control method according to claim 2, characterized in that: The adjusting the first expected trajectory according to the difference between the expected interaction torque and the actual interaction torque, as well as the first expected trajectory, the first expected speed, and the first expected acceleration to obtain a second expected trajectory includes: According to the difference between the expected interaction torque and the actual interaction torque, the first expected trajectory, the first expected speed, the first expected acceleration, and the stiffness parameter, the damping parameter and the inertia parameter, the first expected trajectory is adjusted to obtain a second expected trajectory; wherein, at different trajectory points of the first desired trajectory, the stiffness parameters are the same or different; Wherein, at different trajectory points of the first desired trajectory, the damping parameters are the same or different; Among them, at different trajectory points of the first expected trajectory, the inertia parameters are the same or different.
4. The motion control method according to claim 1, characterized in that: At different trajectory points of the first expected trajectory, the expected interaction forces are the same or different.
5. The motion control method according to claim 1, characterized in that: The controlling the end of the robot's arm to operate the target object based on the second expected trajectory includes: Maintaining the robot's body balance is a high priority task, and tracking the second desired trajectory is a low priority task. The end of the robot's arm is controlled to operate the target object based on hierarchical optimization of the whole body coordinated control technology.
6. The motion control method according to claim 5, characterized in that: The task of maintaining the robot's body balance is a high priority task, the task of tracking the second desired trajectory is a low priority task, and the whole-body coordinated control technology based on hierarchical optimization controls the end of the robot's arm to operate the target object, including: Under the constraint condition of maintaining the balance of the robot body, the floating base acceleration and the acceleration of each joint are optimized based on the Jacobian matrix in the floating base coordinate system of the robot to obtain an initial optimization result of the floating base acceleration and an initial optimization result of the acceleration of each joint; Under the constraint condition of tracking the second desired trajectory and within the initial optimization result of the floating base acceleration and the initial optimization result of the acceleration of each joint, the floating base acceleration and the acceleration of each joint are optimized based on the Jacobian matrix of the robot arm end and the error between the actual trajectory and the second desired trajectory to obtain a target optimization result of the floating base acceleration and a target optimization result of the acceleration of each joint; Based on the target optimization result of the floating base acceleration and the target optimization result of the acceleration of each joint, the optimal torque of each joint is determined, and the corresponding joint is controlled to move based on the optimal torque of each joint to control the end of the robot's arm to operate the target object.
7. The motion control method according to claim 5, characterized in that: The constraint condition for maintaining the robot's body balance includes at least one of the following: The angle of each joint of the robot is within the angle range; The angular velocity of each joint of the robot is within the angular velocity range; The relative posture between each joint of the robot and the floating base meets the requirements of posture stability.
8. The motion control method according to claim 5, characterized in that: The constraint condition for tracking the second desired trajectory includes at least one of the following: The angle of each joint of the robot is within the angle range; The angular velocity of each joint of the robot is within the angular velocity range; The relative posture between each joint of the robot and the floating base meets the requirements of posture stability.
9. A motion control device, characterized in that: The device comprises: An acquisition module, used to acquire the expected interaction torque and the actual interaction torque collected by the end of the arm in the process of controlling the end of the arm of the robot to operate the target object based on the first expected trajectory; an adjustment module, configured to adjust the first desired trajectory according to the desired interaction torque and the actual interaction torque to obtain a second desired trajectory; A tracking module is used to control the end of the robot's arm to operate the target object based on the second expected trajectory.
10. A computer program product comprising a computer program / instructions, characterized in that When the computer program / instructions are executed by a processor, the steps of the method according to any one of claims 1 to 8 are implemented.
11. A robot, characterized in that: The robot comprises a memory and a processor, wherein the memory is used to store computer instructions executable on the processor, and the processor is used to implement the method according to any one of claims 1 to 8 when executing the computer instructions.
12. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the method according to any one of claims 1 to 8 is implemented.
Citation Information
Patent Citations
Double-arm robot cooperative impedance control method based on estimated dynamics model
CN110421547A
Motion control method, motion control device and robot
CN114347020A
Impedance control method for slagging-off robot based on Q-learning
CN114571444A
Biped robot cascade control method and device based on task hierarchical optimization
CN115328186A
Method for avoiding singularities of robotic arm, control device and computer-readable storage medium
US20240217108A1
Cited By
Admittance control method and device of double-wheel-foot robot and double-wheel-foot robot
CN120178747A
