Three-degree-of-freedom robotic arm control method, system, medium, and device
By calibrating the camera coordinate system to be consistent with the vehicle coordinate system and optimizing motion performance in combination with the weight of the cargo, the problem of the three-degree-of-freedom robotic arm being unable to accurately control its movement to the target position was solved, thus achieving safe and smooth transportation by the robotic arm.
Patent Information
- Application Number
- CN202410611839.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-05-16
- Publication Date
- 2026-02-03
- Estimated Expiration
- 2044-05-16
AI Technical Summary
In existing technologies, three-degree-of-freedom robotic arms cannot directly provide the angles that each joint of the robotic arm needs to change when identifying targets, thus making it impossible to accurately control the robotic arm to move to the target position.
By calibrating the camera coordinate system at the end of the robotic arm to be consistent with the vehicle coordinate system, the angles that each joint of the robotic arm needs to rotate are calculated based on the inverse kinematics algorithm. The motion performance, including acceleration rate, deceleration rate and inflection point timing, is optimized according to the weight of the cargo to ensure that the robotic arm safely and smoothly transports the cargo to the target location.
It accurately determines the angles that each joint of the robotic arm needs to change based on the target position, ensuring that the robotic arm can move safely and smoothly to the target position and optimizing motion performance.
Smart Images

Figure CN118357921B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to the field of ground texture technology, and in particular to a three-degree-of-freedom robotic arm control method, system, medium, and device. Background Technology
[0002] In collaborative robots, the movement of the robotic arm is often linked to target recognition. However, target recognition typically outputs coordinate information, while robotic arm control often employs angle control, setting angles for each joint. Therefore, target recognition can output the positional difference between the current position and the target position in the coordinate system, but it cannot directly provide the angles that each joint of the robotic arm needs to change.
[0003] Therefore, in response to the above problems, for a three-degree-of-freedom robotic arm, how to determine the angles that each joint of the robotic arm needs to change based on the target position, so as to control the robotic arm to move to the target position, is an urgent problem to be solved. Summary of the Invention
[0004] The present invention provides a three-degree-of-freedom robotic arm control method, system, medium and device, which can determine the angles that each joint of the robotic arm needs to change according to the target position, thereby controlling the robotic arm to move to the target position.
[0005] Firstly, a three-degree-of-freedom robotic arm control method is provided, comprising the following steps:
[0006] The camera coordinate system at the end of the robotic arm is calibrated to be aligned with the vehicle coordinate system.
[0007] Based on the target position in the calibrated camera coordinate system, the angle of rotation and the distance of movement of each joint of the robotic arm during the process of transporting goods to the target position by the robotic arm end effector are solved by inverse engineering based on the robotic arm control algorithm.
[0008] Optimize the motion performance of the robotic arm end effector when transporting goods based on the weight of the goods.
[0009] According to the first aspect, in a first possible implementation of the first aspect, the step of "calibrating the camera coordinate system located at the end of the robotic arm to be aligned with the vehicle coordinate system" specifically includes the following steps:
[0010] Based on the coordinates of the center point of the camera image (1 / 2 * weight, 1 / 2 * height), and the angle between the camera and the x-axis in the vehicle coordinate system. 3 The coordinates of the target point on the x-axis in the vehicle coordinate system and its coordinates in the camera coordinate system are calculated as follows:
[0011] (1 / 2*weight*cot3+1 / 2weight,1 / 2*weight*tan3+1 / 2*height);
[0012] Connect the center point of the camera image with the target point to obtain the x-axis in the calibrated camera coordinate system, and obtain the y-axis perpendicular to the x-axis in the calibrated camera coordinate system;
[0013] In the formula, weight is the length of the camera frame; height is the width of the camera frame.
[0014] According to the first aspect, in a second possible implementation of the first aspect, the robotic arm includes a large robotic arm connected to the vehicle body and rotating about a connection point and moving laterally along the vehicle body, and a small robotic arm connected to the large robotic arm and rotating about a connection point. The robotic arm control algorithm specifically includes the following steps:
[0015] In the calibrated camera coordinate system, during the process of transporting goods to the target position by the end effector of the robotic arm, the initial end effector coordinates are obtained according to the set robotic arm size parameters, the rotation angle of the upper arm and the rotation angle of the lower arm. The initial end effector coordinates are moved by the target distance in the y-axis direction to obtain the final end effector coordinates, which are the target position.
[0016] According to the second possible implementation of the first aspect, in the third possible implementation of the first aspect, the calculation formula for obtaining the initial end-effector coordinates (D4, D3) of the robotic arm based on the set robotic arm size parameters, the rotation angle of the upper arm of the robotic arm, and the rotation angle of the lower arm of the robotic arm is as follows:
[0017] D3 = D2 * sinθ4;
[0018] D4 = D2 * cosθ4;
[0019] Where, D2=(L1) 2 +L2 2 -2*L1*L2*cos(180-θ2)) 1 / 2 ;
[0020]
[0021] D1=(L2 2 +L2 2 -2*L2*L2*cosθ2) 1 / 2 ;
[0022] In the formula, θ1 is the rotation angle of the upper arm of the robotic arm; θ2 is the rotation angle of the lower arm of the robotic arm; L1 is the length of the upper arm of the robotic arm; L2 is the length of the upper arm of the robotic arm.
[0023] According to the first aspect, in the fourth possible implementation of the first aspect, the step of "optimizing the motion performance of the robotic arm end effector for transporting goods based on the weight of the goods" specifically includes the following steps:
[0024] Based on the baseline motion performance of the robotic arm when it is unloaded, and according to the weight M of the cargo, the following formulas are obtained for calculating the acceleration rate a1 and deceleration rate a1 of the robotic arm end effector when transporting cargo, taking into account the weight of the cargo, and the inflection point t3 of the robotic arm's acceleration motion:
[0025] a1 = V1 / t3;
[0026] V1 = math.max[V*(M max -M) / M max V min ];
[0027] t3=t1*(1+M / M max );
[0028] In the formula, V is the uniform speed of the robotic arm in the baseline motion performance when the robotic arm is unloaded; V1 is the uniform speed of the robotic arm considering the weight of the goods during the end effector transport of goods; M max V represents the maximum gripping weight of the robotic arm. min t1 represents the minimum moving speed of the robotic arm; t1 represents the acceleration end time in the baseline motion performance of the robotic arm when it is unloaded.
[0029] According to the first aspect, in the fifth possible implementation of the first aspect, after the step of "optimizing the motion performance of the robotic arm end effector in transporting goods according to the weight of the goods", the following steps are specifically included:
[0030] Optimize the motion performance of the robotic arm's end effector when transporting goods, based on the robotic arm's maintenance cycle.
[0031] According to the fifth possible implementation of the first aspect, in the sixth possible implementation of the first aspect, after the step of "optimizing the motion performance of the robotic arm end effector for transporting goods according to the robotic arm maintenance cycle", the following steps are specifically included:
[0032] Based on the baseline motion performance of the robotic arm when it is unloaded, and according to the robotic arm maintenance cycle D max The formulas for calculating the acceleration rate a2 and deceleration rate a2 corresponding to the maintenance cycle of the robotic arm when transporting goods, and the inflection point t5 of the robotic arm's acceleration motion, are as follows:
[0033] a2 = V1 / t5;
[0034] t5 = math.max(t3*(D max -D) / D max,t1);
[0035] In the formula, V1 is the uniform speed of the robotic arm considering the weight of the goods during the end-effector transport of goods; D is the time since the last maintenance of the robotic arm during the current end-effector transport of goods; t1 is the acceleration end time in the baseline motion performance corresponding to the no-load condition of the robotic arm; t3 is the inflection point of the acceleration motion of the robotic arm considering the weight of the goods during the end-effector transport of goods.
[0036] Secondly, a three-degree-of-freedom robotic arm control system is provided, including:
[0037] The coordinate calibration module is used to calibrate the camera coordinate system located at the end of the robotic arm so that it is aligned with the vehicle coordinate system.
[0038] The robotic arm algorithm control module, communicatively connected to the coordinate calibration module, is used to, based on the calibrated target position in the camera coordinate system, inversely solve the angles of rotation required by each joint of the robotic arm during the process of transporting goods to the target position by the robotic arm end effector using the robotic arm control algorithm; and...
[0039] The optimization module, which is connected in communication with the robotic arm algorithm control module, is used to optimize the motion performance of the robotic arm end effector in transporting goods based on the weight of the goods.
[0040] Thirdly, a storage medium is provided on which a computer program is stored, which, when executed by a processor, implements the three-degree-of-freedom robotic arm control method as described above.
[0041] Fourthly, an electronic device is provided, including a storage medium, a processor, and a computer program stored in the storage medium and executable on the processor, wherein the processor, when executing the computer program, implements the three-degree-of-freedom robotic arm control method described above.
[0042] Compared with existing technologies, the advantages of this invention are as follows: A robotic arm grips and transports goods to a target location. Specifically, the steps are: first, calibrating the camera coordinate system to align it with the vehicle coordinate system, providing a directional reference for the robotic arm's movement; then, based on the target position in the calibrated camera coordinate system, using a robotic arm control algorithm, calculating the rotation angles and movement distances required by each joint of the robotic arm during the transport of goods to the target position; and finally, setting different motion performance parameters for the robotic arm based on the weight of the goods, compensating for these performance parameters. Therefore, this invention targets a three-degree-of-freedom robotic arm, providing the angles that each joint of the robotic arm needs to change based on the target position, thereby controlling the robotic arm to move to the target position. Attached Figure Description
[0043] Figure 1 This is a flowchart illustrating a three-degree-of-freedom robotic arm control method according to the present invention;
[0044] Figure 2 This is a schematic diagram of an embodiment of the three-degree-of-freedom robotic arm of the present invention;
[0045] Figure 3 This is a schematic diagram of another embodiment of the three-degree-of-freedom robotic arm of the present invention;
[0046] Figure 4 This is a schematic diagram of another embodiment of the three-degree-of-freedom robotic arm of the present invention;
[0047] Figure 5 This is a schematic diagram of the camera screen of the present invention;
[0048] Figure 6 This is a simplified schematic diagram of an embodiment of the three-degree-of-freedom robotic arm of the present invention;
[0049] Figure 7 This is a simplified schematic diagram of yet another embodiment of the three-degree-of-freedom robotic arm of the present invention;
[0050] Figure 8 This is a simplified schematic diagram of yet another embodiment of the three-degree-of-freedom robotic arm of the present invention;
[0051] Figure 9 This is a schematic diagram of the reference motion curve of the robotic arm of the present invention when it is unloaded;
[0052] Figure 10 This is a schematic diagram of the motion curve of the robotic arm of the present invention considering the weight of the cargo;
[0053] Figure 11 This is a schematic diagram of the motion curve of the robotic arm of the present invention considering maintenance time;
[0054] Figure 12 This is a schematic diagram of the structure of a three-degree-of-freedom robotic arm control system according to the present invention. Detailed Implementation
[0055] Referring now to specific embodiments of the invention, examples of which are illustrated in the accompanying drawings. Although the invention will be described in conjunction with specific embodiments, it will be understood that it is not intended to limit the invention to the described embodiments. Rather, it is intended to cover variations, modifications, and equivalents included within the spirit and scope of the invention as defined by the appended claims. It should be noted that the method steps described herein can be implemented by any functional block or functional arrangement, and any functional block or functional arrangement can be implemented as a physical entity or a logical entity, or a combination of both.
[0056] To enable those skilled in the art to better understand the present invention, the present invention will be further described in detail below with reference to the accompanying drawings and specific embodiments.
[0057] Note: The examples described below are merely specific examples and are not intended to limit the embodiments of the present invention to the specific steps, values, conditions, data, order, etc. Those skilled in the art can utilize the concept of the present invention to construct more embodiments not mentioned herein by reading this specification.
[0058] See Figure 1 As shown, this embodiment of the invention provides a three-degree-of-freedom robotic arm control method, including the following steps:
[0059] S100, calibrate the camera coordinate system set at the end of the robotic arm so that it is aligned with the vehicle coordinate system;
[0060] S200, based on the target position in the calibrated camera coordinate system, uses the robotic arm control algorithm to inversely solve the angle of rotation and the distance of movement required by each joint of the robotic arm during the process of transporting goods to the target position by the end of the robotic arm;
[0061] The S300 optimizes the motion performance of the robotic arm end effector for transporting goods based on the weight of the goods.
[0062] Specifically, in this embodiment, a robotic arm grips and transports goods to a target location. The specific steps are as follows: First, the camera coordinate system is calibrated to align with the vehicle coordinate system, providing a directional reference for the robotic arm's movement. Then, based on the target position in the calibrated camera coordinate system, the robotic arm control algorithm is used to inversely solve for the rotation angles and movement distances required by each joint of the robotic arm during the transport of goods to the target position. Finally, different motion performance parameters of the robotic arm are set according to the weight of the goods, and the motion performance is compensated. Therefore, this invention targets a three-degree-of-freedom robotic arm, providing the angles that each joint of the robotic arm needs to change based on the target position, thereby controlling the robotic arm to move to the target position.
[0063] Preferably, in another embodiment of this application, the step "S100, calibrating the camera coordinate system located at the end of the robotic arm to be aligned with the vehicle coordinate system" specifically includes the following steps:
[0064] Based on the coordinates of the center point of the camera image (1 / 2 * weight, 1 / 2 * height), and the angle between the camera and the x-axis in the vehicle coordinate system. 3 The coordinates of the target point on the x-axis in the vehicle coordinate system and its coordinates in the camera coordinate system are calculated as follows:
[0065] (1 / 2*weight*cot3+1 / 2weight,1 / 2*weight*tan3+1 / 2*height);
[0066] Connect the center point of the camera image with the target point to obtain the x-axis in the calibrated camera coordinate system, and obtain the y-axis perpendicular to the x-axis in the calibrated camera coordinate system;
[0067] In the formula, weight is the length of the camera frame; height is the width of the camera frame.
[0068] Specifically, in this embodiment, the robotic arm includes a large robotic arm connected to the vehicle body (robot) and rotating about the connection point, and moving laterally along the vehicle body, and a small robotic arm connected to the large robotic arm and rotating about the connection point, thus having a total of three degrees of freedom. See details below. Figure 2 As shown.
[0069] First, the coordinate system is defined as the position of the robotic arm's end effector within the coordinate system. For ease of calculation, the coordinate system and the motion capabilities of each joint of the robotic arm are shown in the figure below. It is stipulated that when the upper arm is parallel to the x-axis, the upper arm angle is 0°; when the lower arm angle is parallel to the upper arm angle, the lower arm angle is 0°. See [link to details] for further information. Figure 3 As shown.
[0070] After both joints of the robotic arm rotate, the angles of the two joints are read. As shown in the diagram, the first segment of the robotic arm rotates clockwise, with a negative angle (position -1). The second segment rotates counter-clockwise, with a positive angle (θ2). Therefore, the angle θ3 between the end effector and the reference coordinate system can be calculated as θ2 = θ2 - θ1. (See details...) Figure 4 As shown.
[0071] Next, calculate the coordinate system of the end-point camera. Use OpenCV to capture the camera image, obtaining a frame with length *weight* and width *height*. The center coordinates of the camera image are then (1 / 2 *weight*, 1 / 2 *height*). Use this center point as the origin of the end-point camera coordinate system. See [link / reference] Figure 5 Based on the camera view shown, the coordinates of the target point on the x-axis in the vehicle coordinate system and its coordinates in the camera coordinate system are calculated as follows:
[0072] (1 / 2*weight*cot3+1 / 2weight,1 / 2*weight*tan3+1 / 2*height);
[0073] Connecting the origin of the end-effector camera coordinate system with the target point on the x-axis of the vehicle coordinate system yields the calibrated x-axis of the camera coordinate system, with the y-axis perpendicular to the x-axis. This calibrates the coordinate system of the robotic arm's end-effector camera to be aligned with the vehicle's reference coordinate system.
[0074] Preferably, in another embodiment of this application, the robotic arm control algorithm specifically includes the following steps:
[0075] In the calibrated camera coordinate system, during the process of transporting goods to the target position by the end effector of the robotic arm, the initial end effector coordinates are obtained according to the set robotic arm size parameters, the rotation angle of the upper arm and the rotation angle of the lower arm. The initial end effector coordinates are moved by the target distance in the y-axis direction to obtain the final end effector coordinates, which are the target position.
[0076] Specifically, in this embodiment, see Figure 6 As shown, let the angle of the upper arm of the robotic arm be θ1, the angle of the lower arm be θ2, the length of the upper arm be L1, and the length of the lower arm be L2. These four variables are all known variables.
[0077] To solve for the end effector position of the robotic arm, see [link / reference]. Figure 7 As shown, auxiliary dashed lines with lengths D1 and D2 are drawn. Since the robotic arm is a rigid body, its length remains unchanged when the forearm rotates from 0° to θ2, meaning the length of the dashed part is also L2. The length D1 can be calculated using the law of cosines.
[0078] D1=(L2 2 +L2 2 -2*L2*L2*cosθ2) 1 / 2 ;
[0079] The length of D2 can also be calculated:
[0080] D2=(L1 2 +L2 2 -2*L1*L2*cos(180-θ2)) 1 / 2 ;
[0081] Now that the lengths of the three sides of the triangle are known, the size of angle θ3 can also be calculated:
[0082]
[0083] Then we can calculate θ4 = θ1 - θ3;
[0084] At this point, we can calculate D3 = D2 * sinθ4; D4 = D2 * cosθ4;
[0085] The initial coordinates of the robotic arm's end effector are (D4, D3).
[0086] The effects of changing the two rotational degrees of freedom on the coordinates of the robotic arm's end effector were calculated. Then, a third translational degree of freedom was added. At this point, the robotic arm moved a target distance D5 along the Y-axis. This target distance D5 can be read by the encoder and is known. Therefore, the final coordinates of the robotic arm's end effector are (D4, D3 + D5). See details... Figure 8 As shown.
[0087] Preferably, in another embodiment of this application, the step "S300, optimizing the motion performance of the robotic arm end effector for transporting goods based on the weight of the goods" specifically includes the following steps:
[0088] Based on the baseline motion performance of the robotic arm when it is unloaded, and according to the weight M of the cargo, the following formulas are obtained for calculating the acceleration rate a1 and deceleration rate a1 of the robotic arm end effector when transporting cargo, taking into account the weight of the cargo, and the inflection point t3 of the robotic arm's acceleration motion:
[0089] a1 = V1 / t3;
[0090] V1 = math.max[V*(M max -M) / M max V min ];
[0091] t3=t1*(1+M / M max );
[0092] In the formula, V is the uniform speed of the robotic arm in the baseline motion performance when the robotic arm is unloaded; V1 is the uniform speed of the robotic arm considering the weight of the goods during the end effector transport of goods; M max V represents the maximum gripping weight of the robotic arm. min t1 represents the minimum moving speed of the robotic arm; t1 represents the acceleration end time in the baseline motion performance of the robotic arm when it is unloaded.
[0093] Specifically, in this embodiment, to make the robotic arm's movement smoother and safer, it is necessary to optimize the robotic arm's movement. This requires setting the robotic arm's acceleration / deceleration rate and acceleration / deceleration time. First, the baseline motion performance of the robotic arm when unloaded is set as follows: Figure 9 As shown, t1 and t2 are the acceleration end time and deceleration start time, respectively. Therefore, the acceleration / deceleration rate a = V / t1 can be calculated.
[0094] Considering that the robotic arm needs to slow down its acceleration and target speed after grasping a heavy object, the minimum moving speed of the robotic arm is set to V. min Therefore, the motion curve of the robotic arm is optimized. Figure 10 As shown. Assume the maximum gripping weight of the robotic arm is M. max Let M be the weight of the currently gripped object. Then t3 = t1 * (1 + M / M) max V1 = math.max[V*(M max -M) / M max V min The expression `math.max()` represents taking the larger of the two values, which allows the maximum speed of the robotic arm to decrease with the weight of the object, while remaining above the minimum speed. Therefore, the acceleration / deceleration rate `a1 = V1 / t3` can be calculated.
[0095] Preferably, in another embodiment of this application, after the step "S300, optimizing the motion performance of the robotic arm end effector for transporting goods based on the weight of the goods", the following steps are specifically included:
[0096] The S400 optimizes the motion performance of the robotic arm's end effector when transporting goods, based on the robotic arm's maintenance cycle.
[0097] Preferably, in another embodiment of this application, after the step "S400, optimize the motion performance of the robotic arm end effector for transporting goods according to the robotic arm maintenance cycle", the following steps are specifically included:
[0098] Based on the baseline motion performance of the robotic arm when it is unloaded, and according to the robotic arm maintenance cycle D max The formulas for calculating the acceleration rate a2 and deceleration rate a2 corresponding to the maintenance cycle of the robotic arm when transporting goods, and the inflection point t5 of the robotic arm's acceleration motion, are as follows:
[0099] a2 = V1 / t5;
[0100] t5 = math.max(t3*(D max -D) / D max ,t1);
[0101] In the formula, V1 is the uniform speed of the robotic arm considering the weight of the goods during the end-effector transport of goods; D is the time since the last maintenance of the robotic arm during the current end-effector transport of goods; t1 is the acceleration end time in the baseline motion performance corresponding to the no-load condition of the robotic arm; t3 is the inflection point of the acceleration motion of the robotic arm considering the weight of the goods during the end-effector transport of goods.
[0102] Specifically, in this embodiment, considering that the motion response of the robotic arm will decrease after prolonged operation without maintenance, the motion curve is optimized again based on the maintenance time, such as... Figure 11 As shown. Assume the maintenance cycle of the robotic arm is every D... max If maintenance is performed every day, and D days have passed since the last maintenance, then t5 = math.max(t3 * (D days)). max -D) / D max , t1), so that the longer the time since the last maintenance, the earlier the release speed will be, ensuring that the robotic arm can still maintain its actual motion performance even when the response decreases. The acceleration and deceleration rate at this time is a2=V1 / t5.
[0103] See also Figure 12 As shown, an embodiment of the present invention provides a three-degree-of-freedom robotic arm control system, comprising:
[0104] The coordinate calibration module is used to calibrate the camera coordinate system located at the end of the robotic arm so that it is aligned with the vehicle coordinate system.
[0105] The robotic arm algorithm control module, communicatively connected to the coordinate calibration module, is used to, based on the calibrated target position in the camera coordinate system, inversely solve the angles of rotation required by each joint of the robotic arm during the process of transporting goods to the target position by the robotic arm end effector using the robotic arm control algorithm; and...
[0106] The optimization module, which is connected in communication with the robotic arm algorithm control module, is used to optimize the motion performance of the robotic arm end effector in transporting goods based on the weight of the goods.
[0107] Therefore, for a 3-DOF robotic arm, the camera coordinate system is first calibrated to be consistent with the vehicle coordinate system, providing a directional reference for the robotic arm's movement. The coordinates are then inversely solved to obtain the joint angles of the robotic arm. Different motion performance is then set according to the weight of the cargo, and the motion response delay caused by wear and tear and usage time of the robotic arm is taken into account to compensate for the motion performance.
[0108] Specifically, this embodiment corresponds one-to-one with the above method embodiments. The functions of each module have been described in detail in the corresponding method embodiments, so they will not be repeated here.
[0109] Based on the same inventive concept, embodiments of this application also provide a computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements all or part of the method steps of the above method.
[0110] The present invention can implement all or part of the processes in the above methods, or it can be accomplished 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: any entity or device capable of carrying computer program code, recording media, USB flash drives, portable hard drives, magnetic disks, optical disks, computer memory, read-only memory (ROM), random access memory (RAM), electrical carrier signals, telecommunication signals, and software distribution media, etc. It should be noted that the content included in the computer-readable medium can be appropriately added or removed according to the requirements of legislation and patent practice in the jurisdiction. For example, in some jurisdictions, according to legislation and patent practice, the computer-readable medium does not include electrical carrier signals and telecommunication signals.
[0111] Based on the same inventive concept, embodiments of this application also provide an electronic device, including a memory and a processor. The memory stores a computer program that runs on the processor. When the processor executes the computer program, it implements all or part of the method steps described above.
[0112] The processor can be a Central Processing Unit (CPU), or 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 can be a microprocessor or any conventional processor. The processor is the control center of the computer device, connecting all parts of the computer device through various interfaces and lines.
[0113] Memory can be used to store computer programs and / or modules. The processor performs various functions of the computer device by running or executing the computer programs and / or modules stored in the memory, and by accessing data stored in the memory. Memory can primarily include a program storage area and a data storage area. The program storage area can store the operating system and at least one application program required for a function (e.g., sound playback, image playback, etc.); the data storage area can store data created based on the use of the mobile phone (e.g., audio data, video data, etc.). Furthermore, memory can include high-speed random access memory, and can also include non-volatile memory, such as hard disks, RAM, plug-in hard disks, smart memory cards (SMC), secure digital cards (SD cards), flash memory cards, at least one disk storage device, flash memory device, or other volatile solid-state storage devices.
[0114] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, systems, servers, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage and optical storage) containing computer-usable program code.
[0115] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), servers, and computer program products according to embodiments of the invention. It will be understood that each block of 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, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart... Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.
[0116] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.
[0117] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1 One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.
[0118] Obviously, those skilled in the art can make various modifications and variations to this invention without departing from its spirit and scope. Therefore, if these modifications and variations fall within the scope of the claims of this invention and their equivalents, this invention also intends to include these modifications and variations.
Claims
1. A control method for a three-degree-of-freedom robotic arm, characterized in that, Includes the following steps: The camera coordinate system at the end of the robotic arm is calibrated to be aligned with the vehicle coordinate system. Based on the target position in the calibrated camera coordinate system, the angle of rotation and the distance of movement of each joint of the robotic arm during the process of transporting goods to the target position by the robotic arm end effector are solved by inverse engineering based on the robotic arm control algorithm. Optimize the motion performance of the robotic arm's end effector when transporting goods based on their weight; The step of "optimizing the motion performance of the robotic arm's end effector for transporting goods based on the weight of the goods" specifically includes the following steps: Based on the baseline motion performance of the robotic arm when it is unloaded, and according to the weight M of the cargo, the following formulas are obtained for calculating the acceleration rate a1 and deceleration rate a1 of the robotic arm end effector when transporting cargo, taking into account the weight of the cargo, and the inflection point t3 of the robotic arm's acceleration motion: In the formula, V is the uniform speed of the robotic arm in the baseline motion performance when the robotic arm is unloaded; V1 is the uniform speed of the robotic arm considering the weight of the goods during the end effector transport of goods; M max V represents the maximum gripping weight of the robotic arm. min t1 represents the minimum moving speed of the robotic arm; t1 represents the acceleration end time in the baseline motion performance of the robotic arm when it is unloaded.
2. The three-degree-of-freedom robotic arm control method as described in claim 1, characterized in that, The step of "calibrating the camera coordinate system set at the end of the robotic arm to be consistent with the direction of the vehicle coordinate system" specifically includes the following steps: Based on the coordinates of the center point of the camera image and the angle between the camera and the x-axis in the vehicle coordinate system. The coordinates of the target point on the x-axis in the vehicle coordinate system and its coordinates in the camera coordinate system are calculated as follows: ; Connect the center point of the camera image with the target point to obtain the x-axis in the calibrated camera coordinate system, and obtain the y-axis perpendicular to the x-axis in the calibrated camera coordinate system; In the formula, weight is the length of the camera frame; height is the width of the camera frame.
3. The three-degree-of-freedom robotic arm control method as described in claim 1, wherein the robotic arm comprises a large robotic arm connected to the vehicle body, rotating about a connection point, and moving laterally along the vehicle body, and a small robotic arm connected to the large robotic arm and rotating about a connection point, characterized in that, The robotic arm control algorithm specifically includes the following steps: In the calibrated camera coordinate system, during the process of transporting goods to the target position by the end effector of the robotic arm, the initial end effector coordinates are obtained according to the set robotic arm size parameters, the rotation angle of the upper arm and the rotation angle of the lower arm. The initial end effector coordinates are moved by the target distance in the y-axis direction to obtain the final end effector coordinates, which are the target position.
4. The three-degree-of-freedom robotic arm control method as described in claim 3, characterized in that, The formula for calculating the initial end-effector coordinates (D4, D3) of the robotic arm, based on the set robotic arm size parameters, the rotation angle of the upper arm, and the rotation angle of the lower arm, is as follows: In the formula, θ1 is the rotation angle of the upper arm of the robotic arm; θ2 is the rotation angle of the lower arm of the robotic arm; L1 is the length of the upper arm of the robotic arm; L2 is the length of the upper arm of the robotic arm.
5. The three-degree-of-freedom robotic arm control method as described in claim 1, characterized in that, Following the step of "optimizing the motion performance of the robotic arm's end effector for transporting goods based on the weight of the goods," the specific steps include: Optimize the motion performance of the robotic arm's end effector when transporting goods, based on the robotic arm's maintenance cycle.
6. The three-degree-of-freedom robotic arm control method as described in claim 5, characterized in that, Following the step of "optimizing the motion performance of the robotic arm's end effector for transporting goods based on the robotic arm's maintenance cycle," the specific steps include: Based on the baseline motion performance of the robotic arm when it is unloaded, and according to the robotic arm maintenance cycle D max The formulas for calculating the acceleration rate a2 and deceleration rate a2 corresponding to the maintenance cycle of the robotic arm when transporting goods, and the inflection point t5 of the robotic arm's acceleration motion, are as follows: In the formula, V1 is the uniform speed of the robotic arm considering the weight of the goods during the end-effector transport of goods; D is the time since the last maintenance of the robotic arm during the current end-effector transport of goods; t1 is the acceleration end time in the baseline motion performance corresponding to the no-load condition of the robotic arm; t3 is the inflection point of the acceleration motion of the robotic arm considering the weight of the goods during the end-effector transport of goods.
7. A three-degree-of-freedom robotic arm control system, characterized in that, include: The coordinate calibration module is used to calibrate the camera coordinate system located at the end of the robotic arm so that it is aligned with the vehicle coordinate system. The robotic arm algorithm control module, communicatively connected to the coordinate calibration module, is used to, based on the calibrated target position in the camera coordinate system, inversely solve the angles of rotation required by each joint of the robotic arm during the process of transporting goods to the target position by the robotic arm end effector using the robotic arm control algorithm; and... The optimization module, which is communicatively connected to the robotic arm algorithm control module, is used to optimize the motion performance of the robotic arm end effector in transporting goods based on the weight of the goods. The step of "optimizing the motion performance of the robotic arm's end effector for transporting goods based on the weight of the goods" specifically includes the following steps: Based on the baseline motion performance of the robotic arm when it is unloaded, and according to the weight M of the cargo, the following formulas are obtained for calculating the acceleration rate a1 and deceleration rate a1 of the robotic arm end effector when transporting cargo, taking into account the weight of the cargo, and the inflection point t3 of the robotic arm's acceleration motion: In the formula, V is the uniform speed of the robotic arm in the baseline motion performance when the robotic arm is unloaded; V1 is the uniform speed of the robotic arm considering the weight of the goods during the end effector transport of goods; M max V represents the maximum gripping weight of the robotic arm. min t1 represents the minimum moving speed of the robotic arm; t1 represents the acceleration end time in the baseline motion performance of the robotic arm when it is unloaded.
8. A storage medium having a computer program stored thereon, characterized in that, When the computer program is executed by the processor, it implements the three-degree-of-freedom robotic arm control method as described in any one of claims 1 to 6.
9. An electronic device comprising a storage medium, a processor, and a computer program stored in the storage medium and executable on the processor, characterized in that, When the processor runs the computer program, it implements the three-degree-of-freedom robotic arm control method as described in any one of claims 1 to 6.
Citation Information
Patent Citations
Force information-based method of allowing multiple mobile robots to cooperate to carry flat objects
CN104808668A
Mechanical arm trajectory planning method and device, electronic equipment and storage medium
CN112828890A