Mechanical arm control method and device and intelligent mobile device

CN118342501BActive Publication Date: 2026-10-13UBTECH ROBOTICS CORP LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202410464058.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2024-04-17
Publication Date
2026-10-13
Estimated Expiration
2044-04-17

AI Technical Summary

Technical Problem

[0005]本申请实施例提供了机械臂控制方法、装置、智能移动设备及计算机可读存储介质,可以解决通过机械臂执行任务时,任务执行的成功率较低的问题

Benefits of technology

[0018]在检测到机器人的2个或2个以上的机械臂夹取到同一物体的情况下,获取所述N个机械臂的末端所受到的力,得到N个末端力,并根据所述N个末端力对所述N个机械臂进行导纳控制,再根据所述N个机械臂的导纳控制结果调整所述N个机械臂的关节角度。由于在2个或2个以上的机械臂的末端夹取到同一物体的情况下,不同机械臂上的力会相互影响,即夹取到同一物体的各个机械臂的末端存在的内应力会影响机械臂的运动,而对这些机械臂进行导纳控制后,能够消除这些机械臂的内应力,因此,在根据这些机械臂的导纳控制结果调整机械臂的关节角度后,能够保证调整结果的准确度,从而能够提高任务执行的成功率。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118342501B_ABST
    Figure CN118342501B_ABST
Patent Text Reader

Abstract

The application is suitable for the technical field of intelligent mobile devices, and provides a mechanical arm control method and device and an intelligent mobile device. The method comprises the following steps: in the case that N mechanical arms of a robot detect that the same object is clamped, acquiring forces borne by the ends of the N mechanical arms to obtain N end forces, wherein N is a natural number greater than or equal to 2; performing admittance control on the N mechanical arms according to the N end forces, wherein the admittance control is used for eliminating internal stress of the N ends; and adjusting joint angles of the N mechanical arms according to an admittance control result of the N mechanical arms. Through the above processing, the success rate of task execution can be improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application belongs to the field of intelligent mobile device technology, and in particular relates to robotic arm control methods, devices, intelligent mobile devices and computer-readable storage media. Background Technology

[0002] With the development of technology, the level of intelligence of equipment is becoming increasingly higher. For example, integrating cleaning functions into robots gives them cleaning capabilities, and integrating the ability to pick up and hold objects into robots gives them carrying capabilities, and so on.

[0003] In daily life, tasks such as moving or assembling items can be accomplished using robotic arms. While a single robotic arm can successfully perform tasks such as moving certain items, tasks involving large or heavy items can only be performed using two robotic arms.

[0004] In practice, when using dual robotic arms to perform tasks, there may be instances where the task fails, resulting in a low success rate. Summary of the Invention

[0005] This application provides a robotic arm control method, apparatus, smart mobile device, and computer-readable storage medium, which can solve the problem of low success rate of task execution when performing tasks with a robotic arm.

[0006] In a first aspect, embodiments of this application provide a robotic arm control method, including:

[0007] If the robot detects that N robotic arms have grasped the same object, the forces acting on the ends of the N robotic arms are obtained, resulting in N end forces, where N is a natural number greater than or equal to 2.

[0008] Admittance control is performed on the N robotic arms based on the N end forces, and the admittance control is used to eliminate the internal stress at the N ends;

[0009] The joint angles of the N robotic arms are adjusted based on the admittance control results of the N robotic arms.

[0010] Secondly, embodiments of this application provide a robotic arm control device, including:

[0011] The end-effector force determination module is used to obtain the forces acting on the ends of the N robotic arms when the robot detects that N robotic arms have grasped the same object, and obtain N end-effector forces, where N is a natural number greater than or equal to 2.

[0012] An admittance control module is used to perform admittance control on the N robotic arms based on the N end forces, wherein the admittance control is used to eliminate the internal stress at the N ends;

[0013] The joint angle adjustment module is used to adjust the joint angles of the N robotic arms according to the admittance control results of the N robotic arms.

[0014] Thirdly, embodiments of this application provide a smart mobile device, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to implement the method described in the first aspect.

[0015] Fourthly, embodiments of this application provide a computer-readable storage medium storing a computer program that, when executed by a processor, implements the method described in the first aspect.

[0016] Fifthly, embodiments of this application provide a computer program product that, when run on a smart mobile device, causes the smart mobile device to execute the method described in the first aspect above.

[0017] The beneficial effects of the embodiments in this application compared with the prior art are:

[0018] When two or more robotic arms are detected gripping the same object, the forces acting on the ends of the N robotic arms are acquired, resulting in N end-effector forces. Admittance control is then applied to the N robotic arms based on these N end-effector forces, and the joint angles of the N robotic arms are adjusted according to the admittance control results. Since the forces on different robotic arms can influence each other when two or more robotic arms grip the same object, the internal stress at the ends of the arms gripping the same object can affect the movement of the robotic arms. Admittance control eliminates this internal stress, thus ensuring the accuracy of the adjustment results after adjusting the joint angles based on the admittance control results, thereby improving the success rate of task execution. Attached Figure Description

[0019] To more clearly illustrate the technical solutions in the embodiments of this application, the accompanying drawings used in the description of the embodiments or the prior art will be briefly introduced below.

[0020] Figure 1 This is a flowchart illustrating a robotic arm control method according to an embodiment of this application;

[0021] Figure 2This is a schematic diagram of a scenario for a shaft-hole assembly task provided in an embodiment of this application;

[0022] Figure 3 This is a flowchart illustrating another robotic arm control method provided in an embodiment of this application;

[0023] Figure 4 This is a schematic diagram of the structure of a robotic arm control device provided in one embodiment of this application;

[0024] Figure 5 This is a schematic diagram of the structure of a smart mobile device provided in another embodiment of this application. Detailed Implementation

[0025] In the following description, specific details such as particular system architectures and techniques are set forth for illustrative purposes and not for limitation, in order to provide a thorough understanding of the embodiments of this application. However, those skilled in the art will understand that this application may also be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems, apparatuses, circuits, and methods have been omitted so as not to obscure the description of this application with unnecessary detail.

[0026] It should be understood that, when used in this application specification and the appended claims, the term "comprising" indicates the presence of the described features, integrals, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, integrals, steps, operations, elements, components and / or a collection thereof.

[0027] It should also be understood that the term “and / or” as used in this application specification and the appended claims means any combination of one or more of the associated listed items and all possible combinations, and includes such combinations.

[0028] Furthermore, in the description of this application and the appended claims, the terms "first," "second," etc., are used only to distinguish descriptions and should not be construed as indicating or implying relative importance.

[0029] References to "one embodiment" or "some embodiments" in this specification mean that one or more embodiments of this application include a specific feature, structure, or characteristic described in connection with that embodiment. Therefore, the phrases "in one embodiment," "in some embodiments," "in other embodiments," "in still other embodiments," etc., appearing in different parts of this specification do not necessarily refer to the same embodiment, but rather mean "one or more, but not all, embodiments," unless otherwise specifically emphasized.

[0030] Currently, robots with robotic arms are able to assist people in completing an increasing number of tasks. When the working robot is a single-arm robot, it can usually successfully perform the corresponding task by only considering the force at the end of that arm; however, when the working robot is a dual-arm robot, if the forces at the end of the two arms are considered independently without considering the internal stress at those end points, the task may fail.

[0031] Internal stress, in the context of dual-arm operation, occurs when the force applied by one robotic arm is not used for the object's motion or to balance its weight, but is instead canceled out by the opposing force generated by the other robotic arm. If the grippers (i.e., the ends of the robotic arms) and the robotic arms themselves move to their designated positions without error after the dual robotic arms grasp an object, then internal stress will not occur. However, in actual operation, control errors are inevitable, and even small errors can generate significant internal stress. This is especially true since robotic arms are rigid bodies; when two rigid bodies are in rigid contact, the internal stress becomes extremely high, potentially causing the dual-arm grasping operation to fail.

[0032] To improve the success rate of tasks performed by robotic arms, this application provides a robotic arm control method. In this method, when two or more robotic arms are detected gripping the same object, admittance control is applied to these robotic arms to eliminate their internal stress, thereby helping to improve the success rate of the robotic arms performing gripping tasks.

[0033] The robotic arm control method provided in the embodiments of this application is described below with reference to the accompanying drawings.

[0034] Figure 1 A flowchart illustrating a robotic arm control method according to an embodiment of this application is shown below, and details are as follows:

[0035] S11, when it is detected that the N robotic arms of the robot have grasped the same object, obtain the forces on the ends of the N robotic arms and obtain N end forces, where N is a natural number greater than or equal to 2.

[0036] Specifically, when more than one robotic arm is detected to have grasped an object, a sensor can be used to determine whether the objects grasped by these robotic arms are the same object. The image sensor here can be an image sensor, a radar sensor, or something similar.

[0037] For example, when the sensor is an image sensor, an image of the object gripped by the robotic arm can be acquired through the image sensor, and target recognition can be performed on the object in the image to determine whether the object gripped by the robotic arm is the same object.

[0038] In this embodiment, a force sensor can be installed at the end of the robotic arm to measure the force acting on that end. Specifically, a force sensor can be installed at the end of each robotic arm, so that the force acting on the end of the corresponding robotic arm can be obtained through each force sensor.

[0039] It should be noted that if multiple robotic arms grasp two or more objects at the same time, for example, robotic arms 1 and 2 grasp object 1, while robotic arms 3 and 4 grasp object 2, then the forces acting on the ends of robotic arms 1 and 2 (i.e., the end forces corresponding to object 1) are obtained respectively, as are the forces acting on the ends of robotic arms 3 and 4 (i.e., the end forces corresponding to object 2). In subsequent processing, these are processed according to the end forces corresponding to different objects, which will not be elaborated here.

[0040] Optionally, considering that the robotic arms are only affected by internal stress when two or more robotic arms are gripping the same object, the force on the end of the robotic arm may not be acquired when only one robotic arm is detected gripping the object.

[0041] S12, Admittance control is performed on the N robotic arms based on the N end forces mentioned above, and the admittance control is used to eliminate the internal stress at the N ends.

[0042] Admittance control refers to controlling the movement of the end effector of a robotic arm based on the forces and torques acting on its end effector.

[0043] Specifically, the admittance control of the corresponding robotic arm can be performed based on each end force, or the resultant force of each end force can be calculated before the admittance control of the N robotic arms can be performed. There is no limitation here.

[0044] In this embodiment of the application, the admitted control result obtained after admittance control includes the displacement of the robotic arm.

[0045] S13, adjust the joint angles of the N robotic arms according to the admittance control results of the N robotic arms.

[0046] Specifically, by combining inverse kinematics, the joint angles corresponding to the robotic arm can be determined based on the displacement of the robotic arm included in the admittance control results.

[0047] In some embodiments, considering that when a robot is gripping an object, it is actually performing a task, and before or during the task, a trajectory corresponding to the task (including the trajectory of the robotic arm) is usually planned, and after admittance control of the robotic arm, the displacement of the robotic arm under the influence of other robotic arms can be determined based on the admittance control result. At this time, the joint angle of the robotic arm can be adjusted together based on the planned trajectory and the displacement in the admittance control result to improve the accuracy of the adjusted joint angle.

[0048] In this embodiment, when two or more robotic arms of the robot are detected to have grasped the same object, the forces acting on the ends of the N robotic arms are obtained, resulting in N end-effector forces. Admittance control is then performed on the N robotic arms based on these N end-effector forces, and the joint angles of the N robotic arms are adjusted according to the admittance control results. Since the forces on different robotic arms will influence each other when two or more robotic arms have grasped the same object, the internal stress at the ends of the robotic arms grasping the same object will affect the movement of the robotic arms. Admittance control of these robotic arms can eliminate this internal stress. Therefore, adjusting the joint angles of the robotic arms based on the admittance control results ensures the accuracy of the adjustment, thereby improving the success rate of task execution.

[0049] In some embodiments, step S12 includes:

[0050] For each of the above N end forces, admittance control is performed on the corresponding robotic arm in the first target direction based on the above end force to obtain the admittance control result of the above robotic arm.

[0051] The first target direction mentioned above includes at least one of the following rotation directions: rx, ry, and rz, where rx, ry, and rz are the directions corresponding to rotations around the x-axis, y-axis, and z-axis, respectively.

[0052] Specifically, the rotational direction included in the aforementioned first target direction is related to the end effector force. For example, if the directions corresponding to the components of the end effector force are rx and ry, then admittance control of the robotic arm is performed in the rx and ry directions, and in this case, the first target direction is rx and ry. As another example, if the direction corresponding to the component of the end effector force is rx, then admittance control of the robotic arm is performed in the rx direction, and in this case, the first target direction is rx. That is, in this embodiment, the first target direction corresponding to different end effectors may be different.

[0053] In this embodiment, the admittance control result includes the displacement of the robotic arm under the end effector force, such as the displacement of the robotic arm in the first target direction. Assuming the displacement in a certain direction (or degree of freedom) is denoted by δ...x This means that δ x It can be calculated using the following formula (1):

[0054]

[0055] Formula (1) above describes the mass-spring-damping model, where M represents mass, B represents damping coefficient, K represents elastic coefficient, and δ represents the spring constant. x Indicates displacement. Indicates speed, f represents acceleration. ext This represents the external force, specifically the force at the end of the robotic arm.

[0056] In this embodiment, admittance control of the corresponding robotic arm is performed in the first target direction based on the end effector force. Since the first target direction includes at least one rotation direction among rx, ry, and rz, and positional deviations generated in the rotation direction can easily lead to task execution failure, admittance control of the robotic arm in the first target direction can improve the success rate of the executed task.

[0057] In some embodiments, step S12 includes:

[0058] For each of the above N end forces, admittance control is performed on the corresponding robotic arm in the second target direction based on the above end force to obtain the admittance control result of the above robotic arm.

[0059] The second target direction mentioned above includes at least one of the following translation directions: x, y, and z, where x, y, and z are the directions corresponding to the x-axis, y-axis, and z-axis, respectively.

[0060] Specifically, the rotational direction included in the aforementioned second target direction is related to the end effector force. For example, if the components of the end effector force correspond to the directions x and y, then admittance control of the robotic arm is performed in the x and y directions, and in this case, the second target direction is x and y. As another example, if the component of the end effector force corresponds to the direction x, then admittance control of the robotic arm is performed in the x direction, and in this case, the second target direction is x. That is, in this embodiment, the second target direction corresponding to different end effectors may be different.

[0061] In this embodiment, admittance control of the corresponding robotic arm is performed in the second target direction based on the end effector force. Since the second target direction includes at least one translational direction among x, y, and z, and positional deviations generated in the translational direction can easily lead to task execution failure, admittance control of the robotic arm in the second target direction can improve the success rate of the executed task.

[0062] In some embodiments, admittance control of the robotic arm can be performed simultaneously in the first target direction and the second target direction to further improve the effectiveness of admittance control.

[0063] In some embodiments, the above-described admittance control of the corresponding robotic arm in the second target direction based on the end effector force includes:

[0064] A1. Determine the stiffness of the aforementioned robotic arm.

[0065] The rigidity of the robotic arm is mainly related to the material of the robotic arm, and of course, it may also be related to the cross-sectional area and / or shape of the robotic arm.

[0066] In this embodiment, the stiffness of the robotic arm can be determined based on its material, shape, and cross-sectional area. Specifically, corresponding weights are assigned to the material, shape, and cross-sectional area, with the material having the largest weight. This improves the accuracy of the determined stiffness of the robotic arm when using these weights to determine its rigidity.

[0067] Considering that once a robotic arm is manufactured, its material, shape, and cross-sectional area usually do not change, the stiffness of the robotic arm can be calculated in advance. In this way, when admittance control of the robotic arm is required, the stiffness of the robotic arm can be directly obtained, thereby improving the efficiency of obtaining stiffness.

[0068] A2. When the stiffness of the robotic arm is greater than the preset stiffness threshold, admittance control is performed on the corresponding robotic arm in the second target direction according to the end force.

[0069] Optionally, if the stiffness of the robotic arm is greater than a preset stiffness threshold, admittance control is performed on the corresponding robotic arm in the second target direction and the first target direction based on the end effector force.

[0070] Optionally, if the stiffness of the robotic arm is not greater than a preset stiffness threshold, admittance control of the corresponding robotic arm is only performed in the first target direction based on the end effector force.

[0071] In this embodiment, considering that the greater the stiffness, the less flexible the robotic arm, and thus the higher the accuracy requirement for the position of the robotic arm, admittance control of the robotic arm is only performed in the second target direction when the stiffness is determined to be large, or admittance control of the robotic arm is performed in both the first and second target directions simultaneously. When the stiffness is determined to be small, admittance control of the robotic arm is only performed in the first target direction. This not only effectively saves resources but also ensures the effective elimination of internal stress.

[0072] In some embodiments, it is assumed that the task currently performed by the robot includes assembling the aforementioned object, and the assembly process requires executing an assembly trajectory to complete the assembly. Since positional errors can cause significant resistance, positional errors during the assembly process are likely to lead to assembly failure. To improve the probability of successful assembly, it is necessary to enable the object to appropriately change its motion trajectory (i.e., change the predetermined assembly trajectory) according to external forces during the execution of the assembly trajectory. In this case, after S13 above, the following is also included:

[0073] B1. During the process of the robot assembling the object using M robotic arms, admittance control is performed on the object based on the forces acting on it, where M is a natural number greater than or equal to 2.

[0074] B2. Adjust the joint angles of the M robotic arms based on the admittance control results of the above objects.

[0075] The force acting on an object refers to the various forces acting on that object.

[0076] In this embodiment of the application, the robotic arm that grips the object may be different from the robotic arm that assembles the object. When performing admittance control on the object, only the robotic arm that assembles the object needs to be considered.

[0077] In this embodiment of the application, the assembly position point can be determined in advance according to the assembly task, and when the robot arrives at the assembly position point of the object, it is determined that the robotic arm is assembling the object. Of course, it is also possible to determine that the robotic arm is assembling the object only when the object is detected to have arrived at the assembly position point and collided with another object. This is not limited here.

[0078] In this embodiment, after admittance control of the object, the admittance control result, i.e., the displacement of the object, can be obtained. Since the displacement of the object is controlled by M robotic arms, adjusting the joint angles of the M robotic arms according to the admittance control result of the object can adjust the displacement of the object, thereby improving the accuracy of the motion trajectory of the object during the assembly process and thus increasing the success rate of assembling the object.

[0079] In some embodiments, step B1 above, which involves performing admittance control on the object based on the forces acting on it, includes:

[0080] C1. Determine the force exerted on the object by the object in contact with the object mentioned above, as well as the weight of the object mentioned above.

[0081] C2. Admittance control of the object is performed based on the forces applied to it and gravity.

[0082] Specifically, since the object is installed using M robotic arms, the objects in contact with the object must include the M robotic arms. Of course, when the object is in contact with other objects, it will also be subject to forces exerted on it by those other objects. In this case, the objects in contact with the object include the M robotic arms and other objects.

[0083] In this embodiment, the gravity of an object can be determined based on the object's mass and center of mass.

[0084] In the embodiments of this application, since the forces exerted on the object by the object in contact with the object are considered not only when determining the forces acting on the object, but also the gravity acting on the object, the accuracy of the determined forces acting on the object can be improved, thereby improving the accuracy of admittance control of the object.

[0085] In some embodiments, the robotic arm control method provided in this application further includes:

[0086] D1. During the process of the robot assembling the object using M robotic arms, the error value is determined based on the force acting on the object and the expected force, wherein the expected force is determined based on the task of assembling the object.

[0087] The forces acting on the object include at least the object's weight and the forces exerted on the object by the M robotic arms.

[0088] Alternatively, the forces acting on an object can be continuously obtained by force tracking.

[0089] Optionally, the direction requiring force tracking is determined based on the task of assembling the object, and then the force acting on the object is determined based on this direction. For example, suppose the task of assembling the object is a shaft-hole assembly task, which includes two steps: searching for the hole's location and pressing down during the hole-finding process. After performing these two steps, the shaft can be pushed into the hole when it is found. (Reference) Figure 2 The shaft-hole assembly task shown involves pressing the plate down after the hole aligns with the shaft. Therefore, it is only necessary to enable the force tracking mode in the direction of the shaft (assuming the direction of the shaft is the z-direction) to track the forces acting on the object. Furthermore, the admittance mode can be enabled in the first target direction and / or the second target direction to perform admittance control on the object.

[0090] D2. Determine the displacement of the M robotic arms based on the above error values.

[0091] Specifically, suppose the force (or torque) to be tracked in a certain degree of freedom is f. d If the actual force is f, then the force tracking error is f. e =f d-f, the acceleration of motion on this degree of freedom can be calculated using the following formula (2):

[0092]

[0093] In formula (2), K p K i K d The PID parameters are proportional coefficient, integral time, and derivative time, respectively. The corresponding displacement is obtained by integrating formula (2) twice.

[0094] Correspondingly, step B2 above includes:

[0095] The joint angles of the M robotic arms are adjusted based on the admittance control results of the object and the displacement of the M robotic arms.

[0096] Specifically, based on the admittance control result obtained by performing admittance control on the object (which includes the displacement corresponding to the object), the displacements corresponding to M robotic arms are determined (assumed to be the first displacement). Based on the first displacement and the displacements corresponding to the M robotic arms determined by force tracking on the object (assumed to be the second displacement), the final displacements corresponding to the M robotic arms can be determined. Then, the joint angles of the M robotic arms are adjusted based on the final displacements.

[0097] Since the forces acting on an object often differ from the expected forces during the assembly process of M robotic arms, determining the error value based on the forces acting on the object and the expected forces, and then determining the displacement of the M robotic arms based on the error value, allows for timely calibration of the displacement of the M robotic arms, thereby improving the success rate of the robot in performing its tasks.

[0098] To more clearly describe the robotic arm control method provided in the embodiments of this application, the following is combined with... Figure 3 Describe it.

[0099] exist Figure 3 In this case, we assume that the robot performs the task using two robotic arms.

[0100] After the robot's two robotic arms grasp the same object, the robot determines the wrist forces or wrist torques of its two arms (i.e., the end effector forces mentioned above). Based on these wrist forces, the robot performs admittance control on the first target direction (such as the three rotational directions rx, ry, and rz) of each of the two robotic arms (of course, admittance control can also be performed simultaneously on the second target direction), obtaining the corresponding admittance control result. This admittance control result includes the displacement of the left robotic arm (i.e., the displacement of the left robotic arm). Figure 3 ΔX in L This also includes the displacement corresponding to the right robotic arm (i.e., Figure 3 ΔX in R).

[0101] When a robot performs the task of assembling an object, during the assembly process, the robot estimates the forces (also known as external forces) acting on the object based on its mass, center of mass, and the wrist forces of its two arms. The robot's compliant controller performs admittance control on the object based on these forces, and determines the displacements of the two robotic arms based on the forces acting on the object and the desired forces. The robot then adjusts the trajectories of the left and right robotic arms based on the displacements X output by the compliant controller, obtaining the adjusted displacement: ΔX. OL and ΔX OR .

[0102] According to ΔX L ΔX R ΔX OL ΔX OR And the pre-planned trajectory of the left arm (i.e., the trajectory of the left robotic arm) and the planned trajectory of the right arm (i.e., the trajectory of the right robotic arm) determines the final trajectory X. L and X R After inverse kinematics processing, the joint angles q corresponding to the left and right robotic arms are obtained. L and q R .

[0103] It should be pointed out that, in Figure 3 In this context, the right arm's planned trajectory is referenced to the left arm's planned trajectory. In practice, the left arm's planned trajectory can also be referenced to the right arm's planned trajectory; this is not a limitation here.

[0104] It should be understood that the sequence number of each step in the above embodiments does not imply the order of execution. The execution order of each process should be determined by its function and internal logic, and should not constitute any limitation on the implementation process of the embodiments of this application.

[0105] Corresponding to the robotic arm control method described in the above embodiments, Figure 4 A structural block diagram of the robotic arm control device provided in the embodiments of this application is shown. For ease of explanation, only the parts related to the embodiments of this application are shown.

[0106] Reference Figure 4 The robotic arm control device 4 can be applied in smart mobile devices and includes: an end-effector force determination module 41, an admittance control module 42, and a joint angle adjustment module 43. Among them:

[0107] The end-effector force determination module 41 is used to obtain the forces acting on the ends of the N robotic arms when the robot detects that N robotic arms have grasped the same object, and obtain N end-effector forces, where N is a natural number greater than or equal to 2.

[0108] Admittance control module 42 is used to perform admittance control on the N robotic arms according to the N end forces, and the admittance control is used to eliminate the internal stress of the N ends.

[0109] The joint angle adjustment module 43 is used to adjust the joint angles of the N robotic arms according to the admittance control results of the N robotic arms.

[0110] In this embodiment, when two or more robotic arms of the robot are detected to have grasped the same object, the forces acting on the ends of the N robotic arms are obtained, resulting in N end-effector forces. Admittance control is then performed on the N robotic arms based on these N end-effector forces, and the joint angles of the N robotic arms are adjusted according to the admittance control results. Since the forces on different robotic arms will influence each other when two or more robotic arms have grasped the same object, the internal stress at the ends of the robotic arms grasping the same object will affect the movement of the robotic arms. Admittance control of these robotic arms can eliminate this internal stress. Therefore, adjusting the joint angles of the robotic arms based on the admittance control results ensures the accuracy of the adjustment, thereby improving the success rate of task execution.

[0111] In some embodiments, the admittance control module 42 described above is specifically used for:

[0112] For each of the above N end forces, admittance control is performed on the corresponding robotic arm in the first target direction based on the above end force to obtain the admittance control result of the above robotic arm;

[0113] The first target direction mentioned above includes at least one of the following rotation directions: rx, ry, and rz, where rx, ry, and rz are the directions corresponding to rotations around the x-axis, y-axis, and z-axis, respectively.

[0114] In some embodiments, the admittance control module 42 described above is specifically used for:

[0115] For each of the above N end forces, admittance control is performed on the corresponding robotic arm in the second target direction based on the above end force to obtain the admittance control result of the above robotic arm;

[0116] The second target direction mentioned above includes at least one of the following translation directions: x, y, and z, where x, y, and z are the directions corresponding to the x-axis, y-axis, and z-axis, respectively.

[0117] In some embodiments, the above-described admittance control of the corresponding robotic arm in the second target direction based on the end effector force includes:

[0118] Determine the stiffness of the aforementioned robotic arm;

[0119] When the stiffness of the aforementioned robotic arm is greater than a preset stiffness threshold, admittance control is performed on the corresponding robotic arm in the second target direction based on the aforementioned end force.

[0120] In some embodiments, the task currently performed by the robot includes assembling the object, and the robotic arm control device 4 further includes:

[0121] The object compliance module is used to perform admittance control on the object based on the forces acting on the object during the process of the robot assembling the object by the M robotic arms after adjusting the joint angles of the N robotic arms according to the admittance control results of the N robotic arms. Here, M is a natural number greater than or equal to 2.

[0122] The joint angle adjustment module is used to adjust the joint angles of the M robotic arms based on the admittance control results of the object.

[0123] In some embodiments, the above-described admittance control of the object based on the forces acting on the object includes:

[0124] Determine the force exerted on the object by the object in contact with the object, as well as the weight of the object.

[0125] Admittance control of the object is performed based on the forces applied to it and gravity.

[0126] In some embodiments, the robotic arm control device 4 provided in this application further includes:

[0127] The error value determination module is used to determine the error value based on the force acting on the object and the expected force during the process of the robot assembling the object using M robotic arms, wherein the expected force is determined according to the task of assembling the object.

[0128] The error displacement determination module is used to determine the displacement of the M robotic arms based on the aforementioned error values.

[0129] Correspondingly, the aforementioned joint angle adjustment module is specifically used for:

[0130] The joint angles of the M robotic arms are adjusted based on the admittance control results of the object and the displacement of the M robotic arms.

[0131] It should be noted that the information interaction and execution process between the above-mentioned devices / units are based on the same concept as the method embodiments of this application. For details on their specific functions and technical effects, please refer to the method embodiments section, and they will not be repeated here.

[0132] Figure 5 This is a schematic diagram of the structure of a smart mobile device provided in an embodiment of this application. Figure 5 As shown, the smart mobile device 5 of this embodiment includes: at least one processor 50 ( Figure 5 The diagram shows only one processor, a memory 51, and a computer program 52 stored in the memory 51 and executable on the at least one processor 50, which, when executed, performs the steps of any of the above method embodiments.

[0133] The intelligent mobile device 5 can be a robot with two robotic arms or a robot with multiple robotic arms. These robots can be humanoid robots or robots of other shapes. The intelligent mobile device may include, but is not limited to, a processor 50 and a memory 51. Those skilled in the art will understand that... Figure 5 This is merely an example of a smart mobile device 5 and does not constitute a limitation on the smart mobile device 5. It may include more or fewer components than shown in the figure, or combine certain components, or different components, such as input / output devices, network access devices, etc.

[0134] The processor 50 may be a Central Processing Unit (CPU), or it may be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor.

[0135] In some embodiments, the memory 51 may be an internal storage unit of the smart mobile device 5, such as a hard drive or memory of the smart mobile device 5. In other embodiments, the memory 51 may be an external storage device of the smart mobile device 5, such as a plug-in hard drive, SmartMedia Card (SMC), Secure Digital (SD) card, or Flash Card equipped on the smart mobile device 5. Furthermore, the memory 51 may include both internal and external storage units of the smart mobile device 5. The memory 51 is used to store the operating system, applications, bootloader, data, and other programs, such as the program code of the computer program. The memory 51 can also be used to temporarily store data that has been output or will be output.

[0136] Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the above-described division of functional units and modules is merely an example. In practical applications, the above functions can be assigned to different functional units and modules as needed, that is, the internal structure of the device can be divided into different functional units or modules to complete all or part of the functions described above. The functional units and modules in the embodiments can be integrated into one processing unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The integrated unit can be implemented in hardware or as a software functional unit. Furthermore, the specific names of the functional units and modules are only for easy differentiation and are not intended to limit the scope of protection of this application. The specific working process of the units and modules in the above system can be referred to the corresponding process in the foregoing method embodiments, and will not be repeated here.

[0137] This application also provides a network device, which includes: at least one processor, a memory, and a computer program stored in the memory and executable on the at least one processor, wherein the processor executes the computer program to implement the steps in any of the above method embodiments.

[0138] This application also provides a computer-readable storage medium storing a computer program that, when executed by a processor, can implement the steps in the above-described method embodiments.

[0139] This application provides a computer program product that, when run on a smart mobile device, enables the smart mobile device to implement the steps described in the various method embodiments.

[0140] If the integrated unit is implemented as a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, all or part of the processes in the above-described embodiments of this application can be implemented by a computer program instructing related hardware. The computer program can be stored in a computer-readable storage medium, and when executed by a processor, it can implement the steps of the various method embodiments described above. The computer program includes computer program code, which can be in the form of source code, object code, executable files, or certain intermediate forms. The computer-readable medium can include at least: any entity or device capable of carrying the computer program code to a camera / smart mobile device, a recording medium, a computer memory, a read-only memory (ROM), a random access memory (RAM), an electrical carrier signal, a telecommunication signal, and a software distribution medium. Examples include USB flash drives, portable hard drives, magnetic disks, or optical disks. In some jurisdictions, according to legislation and patent practice, computer-readable media cannot be electrical carrier signals or telecommunication signals.

[0141] In the above embodiments, the descriptions of each embodiment have different focuses. For parts that are not described in detail or recorded in a certain embodiment, please refer to the relevant descriptions of other embodiments.

[0142] Those skilled in the art will recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0143] In the embodiments provided in this application, it should be understood that the disclosed apparatus / network devices and methods can be implemented in other ways. For example, the apparatus / network device embodiments described above are merely illustrative. For instance, the division of modules or units is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple units or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between devices or units may be electrical, mechanical, or other forms.

[0144] The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the units can be selected to achieve the purpose of this embodiment according to actual needs.

[0145] The above-described embodiments are only used to illustrate the technical solutions of this application, and are not intended to limit them. Although this application has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features. Such modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of this application, and should all be included within the protection scope of this application.

Claims

1. A robotic arm control method, characterized in that, include: If the robot detects that N robotic arms have grasped the same object, the forces acting on the ends of the N robotic arms are obtained, resulting in N end forces, where N is a natural number greater than or equal to 2. Admittance control is performed on the N robotic arms based on the N end forces, and the admittance control is used to eliminate the internal stress at the N ends; The joint angles of the N robotic arms are adjusted based on the admittance control results of the N robotic arms. The admittance control of the N robotic arms based on the N end forces includes: For each of the N end forces, determine the stiffness of the robotic arm; When the stiffness of the robotic arm is greater than a preset stiffness threshold, admittance control is performed on the corresponding robotic arm in the second target direction according to the end force to obtain the admittance control result of the robotic arm. The second target direction includes at least one of the following translation directions: x, y, and z, where x, y, and z are the directions corresponding to the x-axis, y-axis, and z-axis, respectively.

2. The robotic arm control method as described in claim 1, characterized in that, Admittance control of the N robotic arms based on the N end forces includes: For each of the N end forces, admittance control is performed on the corresponding robotic arm in the first target direction based on the end force to obtain the admittance control result of the robotic arm; The first target direction includes at least one of the following rotation directions: rx, ry, and rz, where rx, ry, and rz are the directions corresponding to rotations around the x-axis, y-axis, and z-axis, respectively.

3. The robotic arm control method as described in claim 1, characterized in that, The task currently being performed by the robot includes assembling the object, and after adjusting the joint angles of the N robotic arms based on the admittance control results of the N robotic arms, it further includes: During the process of the robot assembling the object using M robotic arms, admittance control is performed on the object based on the forces acting on it, where M is a natural number greater than or equal to 2. The joint angles of the M robotic arms are adjusted based on the admittance control results of the object.

4. The robotic arm control method as described in claim 3, characterized in that, The admittance control of the object based on the forces acting on it includes: Determine the force exerted on the object by the object in contact with it, as well as the weight of the object. Admittance control of the object is performed based on the force applied to the object and the gravity.

5. The robotic arm control method as described in claim 3, characterized in that, Also includes: During the process of the robot assembling the object using M robotic arms, an error value is determined based on the force acting on the object and the desired force, wherein the desired force is determined according to the task of assembling the object. The displacements of the M robotic arms are determined based on the error values; The adjustment of the joint angles of the M robotic arms based on the admittance control result of the object includes: The joint angles of the M robotic arms are adjusted based on the admittance control results of the object and the displacement of the M robotic arms.

6. A robotic arm control device, characterized in that, include: The end-effector force determination module is used to obtain the forces acting on the ends of the N robotic arms when the robot detects that N robotic arms have grasped the same object, and obtain N end-effector forces, where N is a natural number greater than or equal to 2. An admittance control module is used to perform admittance control on the N robotic arms based on the N end forces, wherein the admittance control is used to eliminate the internal stress at the N ends; A joint angle adjustment module is used to adjust the joint angles of the N robotic arms according to the admittance control results of the N robotic arms. The admittance control module includes: For each of the N end forces, determine the stiffness of the robotic arm; When the stiffness of the robotic arm is greater than a preset stiffness threshold, admittance control is performed on the corresponding robotic arm in the second target direction according to the end force to obtain the admittance control result of the robotic arm. The second target direction includes at least one of the following translation directions: x, y, and z, where x, y, and z are the directions corresponding to the x-axis, y-axis, and z-axis, respectively.

7. A smart mobile device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, characterized in that, When the processor executes the computer program, it implements the method as described in any one of claims 1 to 5.

8. A computer-readable storage medium storing a computer program, characterized in that, When the computer program is executed by a processor, it implements the method as described in any one of claims 1 to 5.

Citation Information

Patent Citations

  • Robotic arm control method and intelligent mobile device using the same

    US20250326114A1