Method for controlling a robot arm, robot, apparatus, device and medium

By adding virtual joints and implementing an attitude compensation strategy in the five-degree-of-freedom robotic arm model, the problem of insufficient control accuracy of the five-degree-of-freedom robotic arm was solved, and high-precision robotic arm control was achieved.

CN122299650APending Publication Date: 2026-06-30HUNAN MEDA INTELLIGENT TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
HUNAN MEDA INTELLIGENT TECH CO LTD
Filing Date
2026-04-23
Publication Date
2026-06-30

AI Technical Summary

Technical Problem

The existing five-degree-of-freedom robotic arm is unable to meet the control accuracy requirements of the inverse kinematics solver of a six-degree-of-freedom robotic arm due to the lack of a joint, resulting in the inability to complete the expected action and low control accuracy.

Method used

A virtual joint is added to the five-degree-of-freedom robotic arm model to construct a six-degree-of-freedom target robotic arm model. The angles of the real and virtual joints are obtained by inverse kinematics, control commands are generated, and attitude adjustment is performed by combining attitude deviation information and compensation strategies.

Benefits of technology

High-precision control of the five-degree-of-freedom robotic arm has been achieved, enabling it to complete the expected actions and improving control accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN122299650A_ABST
    Figure CN122299650A_ABST
Patent Text Reader

Abstract

This application discloses a control method, robot, device, equipment, and medium for a robotic arm. The method includes: adding virtual joints to an initial five-degree-of-freedom robotic arm model to obtain a six-degree-of-freedom target robotic arm model; acquiring target pose information; performing inverse kinematics calculation based on the target pose information and the target robotic arm model to obtain five real joint angles and one virtual joint angle; generating a first control command based on the five real joint angles; acquiring posture deviation information; performing posture compensation based on the posture deviation information and a preset compensation strategy to generate a second control command. This application enables a five-degree-of-freedom robotic arm to complete the expected action with high control precision.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of robotic arm control, and in particular to a control method, robot, device, equipment and medium for a robotic arm. Background Technology

[0002] In the field of industrial automation, six-degree-of-freedom (DOF) robotic arms have become the mainstream robotic equipment due to their ability to precisely control the position and posture of the end effector in three-dimensional space. However, six-DOF robotic arms have complex structures, high manufacturing costs, and are difficult to maintain. For some production scenarios with relatively relaxed requirements for operational precision or limited budgets, their performance is redundant and their economic efficiency is insufficient.

[0003] To reduce equipment investment costs, five-degree-of-freedom (DOF) robotic arms are currently being developed to replace traditional six-DOF models. Five-DOF robotic arms simplify the mechanical structure by reducing one joint, effectively lowering hardware costs and system complexity. However, existing robot control software platforms are generally developed based on six-DOF kinematic models, and their inverse kinematics solvers default to expecting the end-effector pose to contain complete six-DOF information. When such general-purpose software is applied to a robotic arm with only five controllable degrees of freedom, the insufficient system degrees of freedom prevent it from simultaneously satisfying the constraints of the end effector in all three attitude dimensions. During trajectory planning or target pose solving, inverse kinematics algorithms often fail to converge or return to a solution failure due to overdetermined equations, resulting in the robotic arm failing to complete the expected movements and exhibiting low control accuracy. Summary of the Invention

[0004] This application aims to propose a control method, robot, device, equipment, and medium for a robotic arm, which enables a five-degree-of-freedom robotic arm to complete the expected actions with high control precision.

[0005] In a first aspect, embodiments of this application provide a control method for a robotic arm, wherein the robotic arm is a five-degree-of-freedom robotic arm, and the method includes: Virtual joints are added to the initial five-degree-of-freedom robotic arm model to obtain a target six-degree-of-freedom robotic arm model; Acquire target pose information, which is used to indicate the target position and target orientation of the robotic arm; Based on the target pose information and the target robotic arm model, inverse kinematics solution is performed to obtain five real joint angles and one virtual joint angle. A first control command is generated based on the five real joint angles. The first control command is used to control the robotic arm to move to the first position. Acquire attitude deviation information, which is used to indicate the deviation between the first pose and the target pose; Based on the posture deviation information and the preset compensation strategy, posture compensation is performed to generate a second control command. The second control command is used to control the robotic arm to adjust its posture based on the first posture to move toward the target posture.

[0006] According to some embodiments of this application, before adding virtual joints to the initial five-degree-of-freedom robotic arm model, the method further includes: Construct an initial robotic arm model with five degrees of freedom, namely the degrees of freedom of the waist joint, shoulder joint, elbow joint, wrist pitch joint, and wrist rotation joint.

[0007] According to some embodiments of this application, in the step of adding virtual joints to the initial five-degree-of-freedom robotic arm model to obtain a six-degree-of-freedom target robotic arm model, the virtual joints correspond to the wrist yaw joints.

[0008] According to some embodiments of this application, the target pose information includes target pose information, and the acquisition of pose deviation information includes: Acquire first posture information, which is used to indicate the posture of the robotic arm after it moves to the first posture. The attitude deviation information is calculated based on the first attitude information and the target attitude information.

[0009] According to some embodiments of this application, the attitude deviation information includes roll angle attitude deviation, pitch angle attitude deviation, and yaw angle attitude deviation. Before performing attitude compensation based on the attitude deviation information and a preset compensation strategy, the method further includes: Based on five real joints, roll angle attitude deviation, pitch angle attitude deviation, and yaw angle attitude deviation are divided into controllable deviations and uncontrollable deviations. Compensation strategies are constructed based on controllable and uncontrollable deviations.

[0010] According to some embodiments of this application, the compensation strategy includes: The pitch angle posture deviation is compensated by the wrist pitch joint, and the roll angle posture deviation is compensated by the wrist rotation joint.

[0011] Secondly, embodiments of this application provide a robot, including a robot body, a robotic arm disposed on the robot body, and a controller, wherein the robotic arm is a five-degree-of-freedom robotic arm, and the controller is used to operate the method described in the first aspect embodiment.

[0012] Thirdly, embodiments of this application provide a control device for a robotic arm, including: The virtual joint setting module is used to add virtual joints to the initial five-degree-of-freedom robotic arm model to obtain a six-degree-of-freedom target robotic arm model. The target pose acquisition module acquires target pose information, which is used to indicate the target position and target posture of the robotic arm. The joint angle calculation module is used to perform inverse kinematics solution based on the target pose information and the target robotic arm model to obtain five real joint angles and one virtual joint angle. The initial control module is used to generate a first control command based on the five real joint angles. The first control command is used to control the robotic arm to move to the first position. The attitude deviation acquisition module is used to acquire attitude deviation information, which is used to indicate the deviation between the first pose and the target pose. The attitude compensation module is used to perform attitude compensation based on attitude deviation information and preset compensation strategies, and generate a second control command. The second control command is used to control the robotic arm to adjust its attitude based on the first pose to move toward the target pose.

[0013] Fourthly, embodiments of this application provide an electronic device, the device comprising: a processor and a memory storing computer program instructions; When the processor executes the computer program instructions, it implements the control method for the robotic arm as described in the first aspect.

[0014] Fifthly, embodiments of this application provide a computer-readable storage medium storing computer program instructions, which, when executed by a processor, implement the robotic arm control method as described in the first aspect.

[0015] The control method, robot, device, equipment, and medium for the robotic arm in the embodiments of this application have at least the following beneficial effects: In this embodiment, virtual joints are first added to an initial five-DOF robotic arm model to obtain a six-DOF target robotic arm model. Then, target pose information is acquired, followed by inverse kinematics solving based on the target pose information and the target robotic arm model to obtain five real joint angles and one virtual joint angle. A first control command is then generated based on the five real joint angles. Next, attitude deviation information is acquired. Based on the attitude deviation information and a preset compensation strategy, attitude compensation is performed to generate a second control command. This application enables a five-DOF robotic arm to complete the expected action with high control precision.

[0016] Additional aspects and advantages of this application will be set forth in part in the description which follows, and in part will be obvious from the description, or may be learned by practice of this application. Attached Figure Description

[0017] The present application will be further described below with reference to the accompanying drawings and embodiments, wherein: Figure 1 A flowchart illustrating an embodiment of the robotic arm control method provided in this application; Figure 2 A schematic diagram of the control device for the robotic arm provided in this application; Figure 3 A schematic diagram of the structure of the electronic device provided in this application. Detailed Implementation

[0018] The features and exemplary embodiments of various aspects of this application will be described in detail below. To make the objectives, technical solutions, and advantages of this application clearer, the application will be further described in detail below with reference to the accompanying drawings and specific embodiments. It should be understood that the specific embodiments described herein are only intended to explain this application and not to limit it. For those skilled in the art, this application can be implemented without some of these specific details. The following description of the embodiments is merely to provide a better understanding of this application by illustrating examples.

[0019] In this document, relational terms such as "first" and "second" are used merely to distinguish one entity or operation from another, without necessarily requiring or implying any such actual relationship or order between these entities or operations. Furthermore, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitation, an element defined by the phrase "comprising..." does not exclude the presence of additional identical elements in the process, method, article, or apparatus that includes said element.

[0020] To address the problems of the prior art, embodiments of this application provide a control method, robot, device, equipment, and medium for a robotic arm. The control of the robotic arm provided in this application embodiment will be described below first.

[0021] Figure 1 A flowchart illustrating the control method for a robotic arm provided in an embodiment of this application is shown. This method is applied to electronic devices and is a control method for a robotic arm, wherein the robotic arm is a five-degree-of-freedom robotic arm. The method includes: S101. Add virtual joints to the initial five-degree-of-freedom robotic arm model to obtain a six-degree-of-freedom target robotic arm model. S102. Obtain target pose information, which is used to indicate the target position and target posture of the robotic arm; S103. Based on the target pose information and the target robotic arm model, perform inverse kinematics solution to obtain five real joint angles and one virtual joint angle. S104. Generate a first control command based on the five real joint angles. The first control command is used to control the robotic arm to move to the first position. S105. Obtain attitude deviation information, which is used to indicate the deviation between the first pose and the target pose. S106. Based on the posture deviation information and the preset compensation strategy, perform posture compensation and generate a second control command. The second control command is used to control the robotic arm to adjust its posture based on the first posture to approach the target posture.

[0022] In this embodiment, virtual joints are first added to an initial five-DOF robotic arm model to obtain a six-DOF target robotic arm model. Then, target pose information is acquired, followed by inverse kinematics solving based on the target pose information and the target robotic arm model to obtain five real joint angles and one virtual joint angle. A first control command is then generated based on the five real joint angles. Next, attitude deviation information is acquired. Based on the attitude deviation information and a preset compensation strategy, attitude compensation is performed to generate a second control command. This application enables a five-DOF robotic arm to complete the expected action with high control precision.

[0023] Specifically, in step S101 above, adding a virtual joint to the initial five-DOF robotic arm model refers to adding a virtual joint to the model file of the five-DOF robotic arm, making the model six-DOF. Specifically, the initial five-DOF robotic arm model refers to a robotic arm model containing any five real joints from the following: Base / Waist, Shoulder, Elbow, Wrist Pitch, Wrist Roll, and Wrist Yaw. Since this robotic arm model only contains five real joints, the last joint is missing. For example, a five-DOF robotic arm may contain a Base / Waist, Shoulder, Elbow, Wrist Pitch, and Wrist Roll. The Base / Waist rotates around the vertical axis, responsible for the horizontal rotation of the base; the Shoulder controls the pitch of the upper arm; the Elbow controls the pitch of the forearm; the Wrist Pitch controls the vertical rotation of the wrist; and the Wrist Roll controls the rotation of the wrist around its own axis. Therefore, compared to a six-DOF robotic arm, this five-DOF robotic arm lacks a wrist yaw joint, meaning the end effector cannot independently yaw around a direction perpendicular to its own axis.

[0024] Taking the configuration of joint and link parameters of a robotic arm using the MoveIt2 URDF / Xacro model description file as an example, a virtual joint is added to the Unified Robot Description Format (URDF) of the robotic arm. The specific steps are as follows: At the end of the URDF description file of the five-DOF robotic arm, after the last real joint, add a virtual revolute joint. Set the type of this joint to revolute, and set the corresponding link mass and inertia to zero or minimal. Adding the virtual revolute joint to the end of the URDF model of the five-DOF robotic arm makes the model six-DOF, and then configure it in MoveIt2.

[0025] The step S102 above, obtaining the target pose information, refers to acquiring the target position XYZ and target pose RPY that the robotic arm needs to reach. The target position XYZ refers to the three-dimensional spatial coordinate point that the robotic arm's end effector needs to reach, relative to the robotic arm's base coordinate system. The target pose RPY refers to the orientation / angle that the end effector needs to maintain when reaching the target point. An object that the robotic arm needs to interact with / grasp can be set as a reference object, and then the position and pose of the reference object can be used as the target position and target pose. The pose of the reference object can be obtained through LiDAR, a vision camera, or other sensors.

[0026] Specifically, RPY is an abbreviation for Roll-Pitch-Yaw, which is an Euler angle representation method for describing the rotational attitude of an object in three-dimensional space. Roll is the rotation about the X-axis, Pitch is the rotation about the Y-axis, and Yaw is the rotation about the Z-axis.

[0027] For example, the robotic arm needs to pick up a tilted part from the conveyor belt. The placement posture of the part is obtained by the vision system, and its RPY is (10°, 5°, 30°). It is expected that the end effector of the robotic arm will align with the part and reach the position (x=0.3m, y=0.1m, z=0.15m) with the posture RPY (10°, 5°, 30°). Therefore, in this embodiment, the target pose information can be obtained as follows: target position XYZ (0.3m, 0.1m, 0.15m), target posture RPY (10°, 5°, 30°).

[0028] In step S103 above, the inverse kinematics solution based on the target pose information and the target robotic arm model refers to inputting the target pose information into MoveIt2, which contains a target robotic arm model with six degrees of freedom, and performing inverse kinematics solution through MoveIt2 to obtain six joint angles. The six joint angles include five real joint angles and one virtual joint angle θ_virtual.

[0029] In step S104 above, generating the first control command based on the five real joint angles refers to controlling the robotic arm to move to the first pose based on the five real joint angles. It should be understood that since the virtual joints are not actually executed, there will be a deviation between the actual end effector pose corresponding to the first pose and the target pose. If the wrist yaw joint is a virtual joint, then the XYZ position in the first pose is the same as the target position, but the current pose of the robotic arm at the target position deviates from the target pose.

[0030] In step S105 above, obtaining attitude deviation information refers to obtaining the deviation between the first pose and the target pose. This can be obtained manually by the user after measurement and then input, or the attitude deviation can be directly calculated by the system. Specifically, the known RPY values ​​(R_ref, P_ref, Y_ref) of the reference object are obtained as the target pose, and the end effector RPY values ​​(R_actual, P_actual, Y_actual) after the robotic arm actually reaches its position are obtained through forward kinematics calculation or by reading the sensor values ​​as the first pose. Then, the attitude deviations ΔR, ΔP, and ΔY are calculated, with the following expressions: ΔR = R_ref - R_actual; ΔP = P_ref - P_actual; ΔY = Y_ref - Y_actual.

[0031] In step S106 above, attitude compensation is performed based on attitude deviation information and a preset compensation strategy to generate a second control command. This means that the attitude deviation is allocated to the controllable joints of the robotic arm for compensation according to the preset compensation strategy, and the attitude of the robotic arm is adjusted through the second control command so that the attitude of the robotic arm tends to the target attitude.

[0032] Specifically, the compensation strategy can be implemented as follows: based on the current real and virtual joints, the attitude deviations ΔR, ΔP, and ΔY are divided into deviations in controllable directions and deviations in uncontrollable directions. Then, the deviations in controllable directions are eliminated by adjusting the existing joint angles, while the deviations in uncontrollable directions are ignored within the allowable range of the task or avoided by adjusting the operation strategy.

[0033] In some implementations, before adding virtual joints to the initial five-DOF robotic arm model, the following may also be included: Construct an initial robotic arm model with five degrees of freedom, namely the degrees of freedom of the waist joint, shoulder joint, elbow joint, wrist pitch joint, and wrist rotation joint.

[0034] In this embodiment, before adding virtual joints to the initial five-degree-of-freedom robotic arm model, a five-degree-of-freedom initial robotic arm model with waist joint, shoulder joint, elbow joint, wrist pitch joint and wrist rotation joint is first constructed.

[0035] In some implementations, in the step of adding virtual joints to the initial five-DOF robotic arm model to obtain the six-DOF target robotic arm model, the virtual joints correspond to the wrist yaw joints.

[0036] In some implementations, the target pose information includes target pose information, and obtaining pose deviation information may include: Acquire first posture information, which is used to indicate the posture of the robotic arm after it has moved to the first posture. The attitude deviation information is calculated based on the first attitude information and the target attitude information.

[0037] In this embodiment, firstly, the first attitude information is obtained, and then the attitude deviation information is calculated based on the first attitude information and the target attitude information. This allows for rapid calculation of the attitude deviation and improves efficiency.

[0038] Specifically, the first posture information is obtained through forward kinematics calculations or by reading the end effector RPY value after the robotic arm has actually reached its position using sensors.

[0039] In some implementations, the attitude deviation information includes roll angle attitude deviation, pitch angle attitude deviation, and yaw angle attitude deviation. Before performing attitude compensation based on the attitude deviation information and a preset compensation strategy, the following may also be included: Based on five real joints, roll angle attitude deviation, pitch angle attitude deviation, and yaw angle attitude deviation are divided into controllable deviations and uncontrollable deviations. Compensation strategies are constructed based on controllable and uncontrollable deviations.

[0040] In this embodiment, the roll angle attitude deviation, pitch angle attitude deviation, and yaw angle attitude deviation are first divided into controllable deviations and uncontrollable deviations based on the five real joints. Then, a compensation strategy is constructed based on the controllable and uncontrollable deviations. A compensation strategy for attitude compensation can be obtained.

[0041] Specifically, deviations in controllable directions are eliminated by adjusting existing joint angles, while deviations in uncontrollable directions are ignored within the allowable range of the task or avoided by adjusting the operation strategy.

[0042] In some implementations, the compensation strategy may include: It should be noted that, taking the waist, shoulder, elbow, wrist pitch, and wrist rotation joints as real joints, and the wrist yaw joint as a virtual joint, as an example, the pitch angle attitude deviation ΔP can be compensated through the wrist pitch joint, and the roll angle attitude deviation ΔR can be compensated through the wrist rotation joint. After compensating for the pitch angle attitude deviation ΔP through the wrist pitch joint and the roll angle attitude deviation ΔR through the wrist rotation joint, if the residual attitude error is controlled within the allowable tolerance range, ΔY can be ignored; if it cannot be ignored, it can be avoided by adjusting the operation strategy.

[0043] The following example, using a five-degree-of-freedom robotic arm performing an object grasping task, details the specific process of this application: Scenario description: The robotic arm needs to pick up a tilted part from the conveyor belt. The orientation of the part is obtained through the vision system, with the reference object RPY as (10°, 5°, 30°).

[0044] Target setting: The desired position is for the end effector gripper of the robotic arm to align with the part and reach the position (x=0.3m, y=0.1m, z=0.15m) with an orientation of RPY (10°, 5°, 30°).

[0045] Virtual joint solution: Input the position (x=0.3m, y=0.1m, z=0.15m) and attitude RPY(10°, 5°, 30°) into MoveIt2 and solve it on a 6-DOF model to obtain the joint angles [θ1=45°, θ2=30°, θ3=-20°, θ4=15°, θ5=60°, θ_virtual=12°].

[0046] Execution and Compensation: The robotic arm executes the first 5 joint angles to reach the target position. Because θ_virtual=12° was not executed, there is a deviation between the actual end effector posture and the target posture. The posture deviation is calculated, and then posture compensation is performed by fine-tuning the wrist pitch and wrist rotation joints to make the end effector posture as close as possible to the reference object RPY (10°, 5°, 30°). After verification, the residual posture error can be controlled within the allowable tolerance range of ±2°.

[0047] This application also relates to a robot, including a robot body, a robotic arm disposed on the robot body, and a controller, wherein the robotic arm is a five-degree-of-freedom robotic arm, and the controller is used to run the method of the above embodiments.

[0048] Based on the control method of the robotic arm provided in the above embodiments, this application also provides a specific implementation of the control device for the robotic arm.

[0049] like Figure 2As shown, the control device 200 for the robotic arm provided in this embodiment may include: The virtual joint setting module 201 is used to add virtual joints to the initial five-degree-of-freedom robotic arm model to obtain a six-degree-of-freedom target robotic arm model. The target pose acquisition module 202 acquires target pose information, which is used to indicate the target position and target posture of the robotic arm. The joint angle calculation module 203 is used to perform inverse kinematics solution based on the target pose information and the target robotic arm model to obtain five real joint angles and one virtual joint angle. The initial control module 204 is used to generate a first control command based on the five real joint angles. The first control command is used to control the robotic arm to move to the first position. The attitude deviation acquisition module 205 is used to acquire attitude deviation information, which is used to indicate the deviation between the first pose and the target pose. The posture compensation module 206 is used to perform posture compensation based on posture deviation information and a preset compensation strategy, and generate a second control command. The second control command is used to control the robotic arm to adjust its posture based on the first posture to approach the target posture.

[0050] The control device 200 of the robotic arm in this embodiment is used to execute the control method of the robotic arm in the above embodiment. Its specific processing is the same as the control method of the robotic arm in the above embodiment, and will not be described in detail here.

[0051] Figure 3 A schematic diagram of the hardware structure of the electronic device provided in an embodiment of this application is shown.

[0052] The electronic device may include a processor 301 and a memory 302 storing computer program instructions.

[0053] Specifically, the processor 301 may include a central processing unit (CPU), an application-specific integrated circuit (ASIC), or one or more integrated circuits that can be configured to implement the embodiments of this application.

[0054] Memory 302 may include mass storage for data or instructions. For example, and not limitingly, memory 302 may include a hard disk drive (HDD), floppy disk drive, flash memory, optical disk, magneto-optical disk, magnetic tape, or Universal Serial Bus (USB) drive, or a combination of two or more of these. Where appropriate, memory 302 may include removable or non-removable (or fixed) media. Where appropriate, memory 302 may be internal or external to the integrated gateway disaster recovery device. In a particular embodiment, memory 302 is non-volatile solid-state memory.

[0055] In some embodiments, memory 302 may include read-only memory (ROM), random access memory (RAM), disk storage media device, optical storage media device, flash memory device, electrical, optical, or other physical / tangible memory storage device. Thus, generally, memory includes one or more tangible (non-transitory) computer-readable storage media (e.g., memory devices) encoded with software including computer-executable instructions, and when the software is executed (e.g., by one or more processors), it is operable to perform the operations described with reference to the method according to one aspect of this disclosure.

[0056] The processor 301 reads and executes computer program instructions stored in the memory 302 to implement any of the robotic arm control methods in the above embodiments.

[0057] In one example, the electronic device may also include a communication interface 303 and a bus 310. For example, Figure 3 As shown, the processor 301, memory 302, and communication interface 303 are connected through bus 310 and complete communication with each other.

[0058] The communication interface 303 is mainly used to realize communication between various modules, devices, units and / or equipment in the embodiments of this application.

[0059] Bus 310 may include hardware, software, or both. For example, and not limitingly, the bus may include an Accelerated Graphics Port (AGP) or other graphics bus, an Enhanced Industry Standard Architecture (EISA) bus, a Front Side Bus (FSB), HyperTransport (HT) interconnect, an Industry Standard Architecture (ISA) bus, an Infinite Bandwidth Interconnect, a Low Pin Count (LPC) bus, a memory bus, a Microchannel Architecture (MCA) bus, a Peripheral Component Interconnect (PCI) bus, a PCI-Express (PCI-X) bus, a Serial Advanced Technology Attachment (SATA) bus, a Video Electronics Standards Association Local (VLB) bus, or other suitable buses, or combinations of two or more of these. Where appropriate, bus 310 may include one or more buses. Although specific buses are described and illustrated in embodiments of this application, this application contemplates any suitable bus or interconnect.

[0060] Furthermore, in conjunction with the robotic arm control methods described in the above embodiments, this application embodiment can provide a computer storage medium for implementation. This computer storage medium stores computer program instructions; when these computer program instructions are executed by a processor, they implement any of the robotic arm control methods described in the above embodiments.

[0061] It should be clarified that this application is not limited to the specific configurations and processes described above and shown in the figures. For the sake of brevity, detailed descriptions of known methods are omitted here. In the above embodiments, several specific steps are described and shown as examples. However, the method process of this application is not limited to the specific steps described and shown. Those skilled in the art can make various changes, modifications, and additions, or change the order of steps, after understanding the spirit of this application.

[0062] The functional blocks shown in the above-described structural diagram can be implemented as hardware, software, firmware, or a combination thereof. When implemented in hardware, they can be, for example, electronic circuits, application-specific integrated circuits (ASICs), appropriate firmware, plug-ins, function cards, etc. When implemented in software, the elements of this application are programs or code segments used to perform the required tasks. Programs or code segments can be stored on a machine-readable medium or transmitted over a transmission medium or communication link via data signals carried on a carrier wave. "Machine-readable medium" can include any medium capable of storing or transmitting information. Examples of machine-readable media include electronic circuits, semiconductor memory devices, ROM, flash memory, erasable ROM (EROM), floppy disks, CD-ROMs, optical disks, hard disks, fiber optic media, radio frequency (RF) links, etc. Code segments can be downloaded via computer networks such as the Internet, intranets, etc.

[0063] It should also be noted that the exemplary embodiments mentioned in this application describe methods or systems based on a series of steps or apparatus. However, this application is not limited to the order of the above steps; that is, the steps can be performed in the order mentioned in the embodiments, or in a different order, or several steps can be performed simultaneously.

[0064] The aspects of this disclosure have been described above with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of this disclosure. It should be understood that each block in the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing apparatus to produce a machine such that these instructions, executable via the processor of the computer or other programmable data processing apparatus, enable the implementation of the functions / actions specified in one or more blocks of the flowchart illustrations and / or block diagrams. Such a processor can be, but is not limited to, a general-purpose processor, a special-purpose processor, a special application processor, or a field-programmable logic circuit. It is also understood that each block in the block diagrams and / or flowcharts, and combinations of blocks in the block diagrams and / or flowcharts, can also be implemented by special-purpose hardware performing the specified functions or actions, or can be implemented by a combination of special-purpose hardware and computer instructions.

[0065] The above description is merely a specific implementation of this application. Those skilled in the art will clearly understand that, for the sake of convenience and brevity, the specific working processes of the systems, modules, and units described above can be referred to the corresponding processes in the foregoing method embodiments, and will not be repeated here. It should be understood that the protection scope of this application is not limited thereto. Any person skilled in the art can easily conceive of various equivalent modifications or substitutions within the technical scope disclosed in this application, and these modifications or substitutions should all be covered within the protection scope of this application.

Claims

1. A control method for a robotic arm, characterized in that, The robotic arm is a five-degree-of-freedom robotic arm, and the method includes: Virtual joints are added to the initial five-degree-of-freedom robotic arm model to obtain a target six-degree-of-freedom robotic arm model; Acquire target pose information, which is used to indicate the target position and target orientation of the robotic arm; Based on the target pose information and the target robotic arm model, inverse kinematics solution is performed to obtain five real joint angles and one virtual joint angle. A first control command is generated based on the five real joint angles. The first control command is used to control the robotic arm to move to the first position. Acquire attitude deviation information, which is used to indicate the deviation between the first pose and the target pose; Based on the posture deviation information and the preset compensation strategy, posture compensation is performed to generate a second control command. The second control command is used to control the robotic arm to adjust its posture based on the first posture to move towards the target posture.

2. The control method for the robotic arm according to claim 1, characterized in that, Before adding virtual joints to the initial five-DOF robotic arm model, the process also includes: Construct an initial robotic arm model with five degrees of freedom, namely the degrees of freedom of the waist joint, shoulder joint, elbow joint, wrist pitch joint, and wrist rotation joint.

3. The control method for the robotic arm according to claim 2, characterized in that, In the step of adding virtual joints to the initial five-degree-of-freedom robotic arm model to obtain a target six-degree-of-freedom robotic arm model, the virtual joints correspond to the wrist yaw joints.

4. The control method for the robotic arm according to claim 1, characterized in that, The target pose information includes target pose information, and the acquisition of pose deviation information includes: Acquire first posture information, which is used to indicate the posture of the robotic arm after it moves to the first posture. The attitude deviation information is calculated based on the first attitude information and the target attitude information.

5. The control method for the robotic arm according to claim 1, characterized in that, The attitude deviation information includes roll angle attitude deviation, pitch angle attitude deviation, and yaw angle attitude deviation. Before performing attitude compensation based on the attitude deviation information and a preset compensation strategy, the following steps are also included: Based on five real joints, roll angle attitude deviation, pitch angle attitude deviation, and yaw angle attitude deviation are divided into controllable deviations and uncontrollable deviations. Compensation strategies are constructed based on controllable and uncontrollable deviations.

6. The control method for the robotic arm according to claim 5, characterized in that, The compensation strategy includes: The pitch angle posture deviation is compensated by the wrist pitch joint, and the roll angle posture deviation is compensated by the wrist rotation joint.

7. A robot, characterized in that, The device includes a robot body, a robotic arm mounted on the robot body, and a controller, wherein the robotic arm is a five-degree-of-freedom robotic arm, and the controller is used to perform the method described in any one of claims 1 to 6.

8. A control device for a robotic arm, characterized in that, include: The virtual joint setting module is used to add virtual joints to the initial five-degree-of-freedom robotic arm model to obtain a six-degree-of-freedom target robotic arm model. The target pose acquisition module acquires target pose information, which is used to indicate the target position and target posture of the robotic arm. The joint angle calculation module is used to perform inverse kinematics solution based on the target pose information and the target robotic arm model to obtain five real joint angles and one virtual joint angle. The initial control module is used to generate a first control command based on the five real joint angles. The first control command is used to control the robotic arm to move to the first position. The attitude deviation acquisition module is used to acquire attitude deviation information, which is used to indicate the deviation between the first pose and the target pose. The attitude compensation module is used to perform attitude compensation based on attitude deviation information and preset compensation strategies, and generate a second control command. The second control command is used to control the robotic arm to adjust its attitude based on the first pose to move toward the target pose.

9. An electronic device, characterized in that, The device includes: a processor and a memory storing computer program instructions; When the processor executes the computer program instructions, it implements the control method for the robotic arm as described in any one of claims 1-6.

10. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores computer program instructions, which, when executed by a processor, implement the control method for the robotic arm as described in any one of claims 1-6.