A method and system for inverse kinematics of SCRA-type robots
By configuring the joint range of the Scala robot and constructing a kinematic top view, the joint posture is calculated using the cosine theorem, which solves the problems of cumbersome inverse kinematics calculation and coupled motion in Scala robots, thus improving computational efficiency.
Patent Information
- Application Number
- CN202510140407.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-02-08
- Publication Date
- 2026-01-30
- Estimated Expiration
- 2045-02-08
AI Technical Summary
The inverse kinematics calculation process for SCRA robots in the existing technology is cumbersome, especially the coupled motion of the third and fourth joints caused by the lead screw spline axis, which makes the solution difficult. In addition, there are many inverse kinematics solutions and the calculation efficiency is low.
By configuring the range of motion of each joint of the Scala robot, a kinematic top view is constructed, the configuration variables of the second and fourth joints are determined, and the position and orientation of each joint are calculated using the law of cosines and transformation matrices, simplifying the solution process.
This invention enables the inverse kinematics solution of SCRA robots with coupled motion caused by the lead screw and spline shaft, reducing the number of inverse kinematics solutions and improving computational efficiency and the simplicity of the solution process.
Smart Images

Figure CN119795181B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of robot control, in particular to a scara robot kinematics inverse solution method and system. BACKGROUND
[0002] Kinematics inverse solution is a process of solving the joint variables required to achieve a given position and attitude of a robot in space. It enables the robot to accurately calculate the position and angle of each joint according to the task requirements, thereby achieving the expected motion trajectory and attitude.
[0003] Scara robot is an industrial robot designed for assembly work, which generally has three rotary joints and one moving joint, and is suitable for fast and accurate work in two-dimensional plane, such as electronic component assembly, placement, etc. Calculating the kinematics inverse solution of scara robot is a necessary condition for scara robot to walk in Cartesian space path such as straight line, circular arc, etc. However, for a general scara robot, there are multiple inverse solutions of its kinematics. If you want to calculate all inverse solutions, you need to consider all solutions of other joints of the scara robot under this end attitude, so the calculation process is relatively cumbersome. At the same time, for the scara robot with coupled motion of the third joint and the fourth joint caused by the screw key shaft, the dynamic effect caused by joint coupling will make it difficult to solve the kinematics inverse solution of the scara robot. SUMMARY
[0004] In view of the above problems of the prior art, the technical problem to be solved by the present application is to provide a scara robot kinematics inverse solution method and system, so as to solve the kinematics inverse solution of the scara robot with coupled motion of the third joint and the fourth joint caused by the screw key shaft, and reduce the case division in the process of solving the scara robot kinematics inverse solution, reduce the number of inverse solutions, and improve the calculation efficiency of the scara robot kinematics inverse solution.
[0005] One of the technical solutions adopted by the present application is to provide a scara robot kinematics inverse solution method, comprising the following steps:
[0006] S1: configuring the motion range of each joint of the scara robot;
[0007] S2: constructing the kinematics top view of each joint according to the current end posture;
[0008] S3: determining the configuration variables of the second joint and the fourth joint according to the current end posture;
[0009] S4: Solve the position or attitude of each joint according to the position and attitude angle of the current end, and the configuration variable of the second joint and the fourth joint.
[0010] Further, in the S1 step, the following sub-steps are included:
[0011] S11: Configure the rotation range of the first joint and the second joint as (-180, 180) degrees;
[0012] S12: Configure the movement range of the third joint as (-D, D), where D is a positive number, and the unit is millimeter;
[0013] S13: Configure the rotation range of the fourth joint as (-180×N, 180×N) degrees, where N is a positive integer.
[0014] Further, in the S2 step, the following sub-steps are included:
[0015] S21: In the kinematic top view, the first arm connecting the first joint and the second joint is denoted as OE, and the length of the first arm is denoted as A1;
[0016] S22: In the kinematic top view, the second arm connecting the second joint and the fourth joint is denoted as ET, and the length of the second arm is denoted as L2;
[0017] S23: In the kinematic top view, the line between the first joint and the fourth joint is denoted as OT, and the length is denoted as L.
[0018] Further, in the S3 step, the following sub-steps are included:
[0019] S31: Denote the configuration variable of the second joint as ConfigA2, where A2 represents the rotation angle of the second joint, if A2>0, ConfigA2 takes the value of +1, if A2<0, ConfigA2 takes the value of -1;
[0020] S32: Denote the configuration variable of the fourth joint as ConfigA4, where A4 represents the rotation angle of the fourth joint, ConfigA4 takes an integer, and the interval to which the rotation angle of A4 belongs is denoted as (-180+ConfigA4×360, 180+ConfigA4×360) degrees.
[0021] Further, in the S4 step, the following sub-steps are included:
[0022] S41: Input the end position and attitude angle, denote the end position as T=[T x , T y , T z ], and denote the attitude angle as T c , where Tx , T y , T z respectively represent the Cartesian space three-axis coordinates of the end position;
[0023] S42: Calculate ∠OET by using the cosine theorem, and calculate the rotation angle A2 of the second joint according to ∠OET and ConfigA2;
[0024] S43: Calculate the radian ∠rZ of rotating around the Z axis to , and calculate according to ∠rZ; according to , calculate the rotation angle A1 of the first joint;
[0025] S44: According to the end posture angle T c , the rotation angle A1 of the first joint, the rotation angle A2 of the second joint, and the configuration variable ConfigA4 of the fourth joint, calculate the rotation angle A4 of the fourth joint;
[0026] S45: According to the end Z axis coordinate T z , the rotation angle A4 of the fourth joint, and the pitch of the third joint, calculate the moving distance A3 of the third joint.
[0027] Further, in the S42 step, the following sub-steps are included:
[0028] S421: Calculate ∠OET by using the cosine theorem, and the specific formula can be represented as:
[0029]
[0030] Wherein, ∠OET represents the included angle between the first arm OE and the second arm ET;
[0031] S422: According to ∠OET and ConfigA2, calculate the rotation angle A2 of the second joint, and the specific formula can be represented as:
[0032] A2 = ConfigA2 * (π-∠OET);
[0033] Wherein, π represents π radian, that is, 180 degrees.
[0034] Further, in the S43 step, the following sub-steps are included:
[0035] S431: Calculate the radian ∠rZ of rotating around the Z axis to , and the specific formula can be represented as:
[0036]
[0037] ∠rZ=ConfigA2*(∠OTE-π);
[0038] Wherein, ∠OTE represents the angle between OT and TE;
[0039] S432: Calculated based on ∠rZ The specific formula can be expressed as:
[0040]
[0041]
[0042] Where rotz(θ) represents the transformation matrix for rotating about the Z-axis by an angle θ;
[0043] S433: According to calculate according to The rotation angle A1 of the first joint can be calculated using the following formula:
[0044]
[0045] in, Representing vectors Components on the y-axis This represents the components of the vector along the x-axis.
[0046] Furthermore, the specific formula for the calculation process in step S44 can be expressed as follows:
[0047] A4 = T c -A1-A26ConfigA4*2*π;
[0048] Among them, T c A1 represents the end-effector attitude angle, A2 represents the rotation angle of the first joint, A3 represents the rotation angle of the second joint, and ConfigA4 represents the configuration variable of the fourth joint.
[0049] Furthermore, the specific formula for the calculation process in step S45 can be expressed as follows:
[0050] A3 = T z -A4*pitch;
[0051] Where pitch represents the pitch of the third joint.
[0052] To solve the above-mentioned technical problems, the second technical solution adopted by the present invention is: to provide a SCRA-type robot inverse kinematics system, comprising:
[0053] The parameter configuration module is used to configure the range of motion of each joint of the Scara robot;
[0054] The kinematic top view construction module is used to construct the kinematic top view of each joint based on the current end pose.
[0055] The joint variable calculation module is used to determine the configuration variables of the second and fourth joints based on the current end-effector pose.
[0056] The joint pose calculation module is used to solve the position or pose of each joint based on the current position and attitude angle of the end effector, as well as the configuration variables of the second and fourth joints.
[0057] The present invention provides a method and system for inverse kinematics of SCara robots, which has at least the following advantages: The present invention provides a method for inverse kinematics of SCara robots, which can solve the inverse kinematics of SCara robots whose third and fourth joints are coupled due to the lead screw spline axis, and reduces the number of cases in the process of solving the inverse kinematics of SCara robots, thereby reducing the number of inverse solutions and making the solution process simple to code and easy to implement, thus improving the computational efficiency of inverse kinematics of SCara robots. Attached Figure Description
[0058] The accompanying drawings, which are included to provide a further understanding of this application and form part of this application, illustrate exemplary embodiments and are used to explain this application, but do not constitute an undue limitation of this application. In the drawings:
[0059] Figure 1 This is a flowchart of one embodiment of the inverse kinematics solution method for a SCRA-type robot according to the present invention.
[0060] Figure 2 for Figure 1 The sub-flowchart of step S1.
[0061] Figure 3 This is a schematic diagram of the scara robot of the present invention.
[0062] Figure 4 This is a top view of the kinematics of the scara robot of the present invention.
[0063] Figure 5 for Figure 1 The sub-flowchart of step S2.
[0064] Figure 6 for Figure 1 The sub-flowchart of step S3.
[0065] Figure 7 for Figure 1The sub-flow chart of step S4.
[0066] Figure 8 The structural block diagram of an embodiment of the kinematics inverse solution system of the application.
[0067] Legend: base-11; first arm-12; second arm-13; end effector-14; first joint-21; second joint-22; third joint-23; fourth joint-24. DETAILED DESCRIPTION
[0068] The application will be further described below in conjunction with the drawings.
[0069] Please refer to Figure 1 The flow chart of an embodiment of the kinematics inverse solution method of the scara robot of the application. The embodiment can specifically include the following steps:
[0070] S1: configuring the motion range of each joint of the scara robot.
[0071] Specifically, the scara robot is an industrial robot specially designed for assembly work, which generally has three rotary joints and one moving joint. By configuring the motion range of each joint, it can perform fast and accurate work in a two-dimensional plane, such as electronic component assembly, placement, etc.
[0072] Please refer to Figure 2 The step S1 can include the following sub-steps:
[0073] S11: configuring the rotary range of the first joint 21 and the second joint 22 as (-180, 180) degrees;
[0074] S12: configuring the moving range of the third joint 23 as (-D, D), where D is a positive number, unit: millimeter;
[0075] S13: configuring the rotary range of the fourth joint 24 as (-180×N, 180×N) degrees, where N is a positive integer.
[0076] Specifically, in the embodiment, the specific structure of the scara robot please refer to Figure 3Wherein the end effector 14 is connected with the third joint 23 and the fourth joint 24 through the screw spline shaft, and the rotation of the fourth joint 24 can drive the vertical reciprocating motion of the third joint 23, the first joint 21 is the rotation joint of the forearm, i.e. the first arm 12, which is arranged on the scara robot base 11, and the rotation range thereof can be set as (-180, 180) degrees, the second joint 22 is the rotation joint of the wrist, i.e. the second arm 13, and the rotation range thereof can also be set as (-180, 180) degrees, the third joint 23 is the movement joint of the end effector 14, and the movement range thereof can be set as (-D, D), wherein D is a positive number, and the unit is millimeter, and the fourth joint 24 is the rotation joint of the end effector 14, and the rotation range thereof can be set as (-180xN, 180xN) degrees, wherein N is a positive integer.
[0077] S2: constructing the kinematic top view of each joint according to the current end pose.
[0078] Specifically, please refer to Figure 4 The kinematic top view of the present scheme is the projection of the scara robot from the Z axis to the XY plane, which can reflect the position and state of the first arm 12 and the second arm 13 of the scara robot in the XY plane, thereby facilitating the calculation of the inverse kinematics of the scara robot.
[0079] Please refer to Figure 5 The step S2 can include the following sub-steps:
[0080] S21: in the kinematic top view, the first arm 12 connecting the first joint 21 and the second joint 22 is recorded as OE, and the length of the first arm 12 is recorded as L1.
[0081] S22: in the kinematic top view, the second arm 13 connecting the second joint 22 and the fourth joint 24 is recorded as ET, and the length of the second arm 13 is recorded as L2.
[0082] S23: in the kinematic top view, the connection line between the first joint 21 and the fourth joint 24 is recorded as OT, and the length is recorded as L.
[0083] Specifically, in the present embodiment, as shown in Figure 4 In the kinematic top view, the forearm, i.e. the first arm 12 of the scara robot is recorded as OE, and the length thereof is recorded as L1; the wrist, i.e. the second arm 13 of the scara robot is recorded as ET, and the length thereof is recorded as L2. Furthermore, the length of the connection line between OT can be recorded as L.
[0084] S3: determining the configuration variable of the second joint 22 and the fourth joint 24 according to the current end pose.
[0085] Specifically, according to the current pose of the end effector 14 in the kinematic top view, the configuration variable of the second joint 22 and the fourth joint 24 can be determined.
[0086] In some embodiments, referring to Figure 4 , the step S3 can include the following steps:
[0087] S31: the configuration variable of the second joint 22 is recorded as ConfigA2, where A2 represents the rotation angle of the second joint 22, if A2>0, ConfigA2 takes the value of +1, and if A2<0, ConfigA2 takes the value of -1.
[0088] Specifically, in the present embodiment, the configuration variable ConfigA2 of the second joint 22 is determined by reading the current position of the end effector 14 in the kinematic top view, where A2 represents the rotation angle of the second joint 22, and it should be noted that Figure 4 in the kinematic top view of the robot arm 10, there are two cases for the position of the end effector 14 corresponding to the position of the second joint 22, i.e. A2>0, ConfigA2 takes the value of +1, and in this case, in the kinematic top view, the position of E is on the right side of the line from O to T; and A2<0, ConfigA2 takes the value of -1, and in this case, in the kinematic top view, the position of E is on the left side of the line from O to T.
[0089] S32: the configuration variable of the fourth joint 24 is recorded as ConfigA4, where A4 represents the rotation angle of the fourth joint 24, ConfigA4 takes an integer, and the interval to which the rotation angle of A4 belongs is recorded as (-180+ConfigA4×360, 180+ConfigA4×360).
[0090] Specifically, in the present embodiment, the configuration variable ConfigA4 of the fourth joint 24 is determined by reading the current rotation angle of the end effector 14 in the kinematic top view, where A4 represents the rotation angle of the fourth joint 24, ConfigA4 takes an integer, and the interval to which the rotation angle of A4 belongs is recorded as (-180+ConfigA4×360, 180+ConfigA4×360). In order to facilitate understanding, the calculation process of the configuration variable ConfigA4 is illustrated as follows: for example, if the current rotation angle of the end effector 14 in the kinematic top view is between -180 degrees and 180 degrees, then ConfigA4=0; if the current rotation angle of the end effector 14 in the kinematic top view is between 180 degrees and 540 degrees, then ConfigA4=1; and if the current rotation angle of the end effector 14 in the kinematic top view is between -540 degrees and -180 degrees, then ConfigA4=-1.
[0091] S4: Solve the position or attitude of each joint according to the position and attitude angle of the current end, and the configuration variable of the second joint 22 and the fourth joint 24.
[0092] Specifically, for the multi-solution problem of the scara robot inverse solution in the prior art, when moving in the Cartesian space, it is necessary to select the set of solutions that are continuous and not abrupt with the current joint value, and the classification of the multi-solution is somewhat redundant, and the calculation process is complicated. The present scheme only uses the configuration variable for the second joint 22 and the fourth joint 24, so as to calculate the state of all joints of the scara robot, and has the advantages of non-redundant problem classification, clear and simple steps, and intuitive method.
[0093] Please refer to Figure 5 , the present step S4 can include the following sub-steps:
[0094] S41: Input the end position and attitude angle, and record the end position as T=[T x ,T y ,T z ], and record the attitude angle as T c , wherein T x , T y , and T z respectively represent the three-axis coordinates of the end position in the Cartesian space.
[0095] S42: Calculate ∠OET using the cosine theorem, and calculate the rotation angle A2 of the second joint 22 according to ∠OET and ConfigA2.
[0096] Specifically, in the present embodiment, the rotation angle A2 of the second joint 22 is calculated by the position and attitude angle of the end position, i.e. the position of the end effector 14. The specific calculation process is shown in steps S421 and S422.
[0097] In some embodiments, the present S42 step can include the following sub-steps:
[0098] S421: Calculate ∠OET using the cosine theorem, and the specific formula can be represented as:
[0099]
[0100] Wherein, ∠OET represents the included angle between the first arm 12, i.e. the OE connecting line, and the second arm 13, i.e. the ET connecting line;
[0101] S422: Calculate the rotation angle A2 of the second joint 22 according to ∠OET and ConfigA2, and the specific formula can be represented as:
[0102] A2=ConfigA2*(π-∠OET);
[0103] wherein, π represents π radian, i.e. 180 degrees.
[0104] Specifically, the step S421 is a calculation process of the included angle ∠OET between the line OE and ET in the kinematic top view. The included angle ∠OET can be calculated by the cosine theorem and the known lengths L1 of the first arm 12, L2 of the second arm 13 and L of the line between OT. Then, in step S422, the rotation angle A2 of the second joint 22 is calculated according to the included angle ∠OET and the calculated ConfigA2. Thus, there are still three joint variables to be calculated.
[0105] S43: calculating the rotation angle A1 of the first joint 21 to the radian ∠rZ around the Z axis, wherein the specific formula can be represented as:
[0106] Specifically, the step S43 also calculates the rotation angle A1 of the first joint 21 by the geometric relationship in the kinematic top view.
[0107] In some embodiments, the step S43 can include the following sub-steps:
[0108] S431: calculating the rotation angle A1 of the first joint 21 to the radian ∠rZ around the Z axis, wherein the specific formula can be represented as:
[0109]
[0110] ∠rZ = ConfigA2*(∠OTE-π);
[0111] wherein, ∠OTE represents the included angle between OT and TE, and π represents π radian, i.e. 180 degrees;
[0112] In this step S431, according to the cosine theorem, the included angle ∠OTE between OT and TE in the kinematic top view is calculated first, and then the radian ∠rZ around the Z axis to which the first joint 21 is rotated can be calculated according to the calculated second joint 22 configuration variable ConfigA2 and the included angle ∠OTE.
[0113] S432: calculating the rotation angle A1 of the first joint 21 to the radian ∠rZ around the Z axis, wherein the specific formula can be represented as:
[0114]
[0115] wherein, rotz(0) represents a transformation matrix of rotating 0 angle around Z axis; rotz(∠rZ) represents a transformation matrix of rotating ∠rZ angle around Z axis.
[0116] In this step S432, since the end effector 14 position is determined, then is known, so it can be calculated by the vector The calculated is rotated around the Z axis to the radian ∠rZ of the vector and the modulus of the vector , the vector
[0117] S433: According to calculate According to the rotation angle A1 of the first joint 21 is calculated, and the specific formula can be represented as:
[0118]
[0119] wherein, represents the component of the vector in the y axis, represents the component of the vector in the x axis.
[0120] In this step S433, the known vector and the calculated vector are superimposed to obtain the position vector of the first joint 21, that is, the vector and the rotation angle A1 of the first joint 21 can be obtained according to the arctangent function.
[0121] S44: According to the end pose angle T c , the rotation angle A1 of the first joint 21, the rotation angle A2 of the second joint 22, and the configuration variable ConfigA4 of the fourth joint 24, the rotation angle A4 of the fourth joint 24 is calculated.
[0122] In some embodiments, the specific formula of the calculation process in the S44 step can be represented as:
[0123] A4=T c -A1-A2+ConfigA4*2*π;
[0124] wherein, T c represents the end pose angle, A1 represents the rotation angle of the first joint 21, A2 represents the rotation angle of the second joint 22, and ConfigA4 represents the configuration variable of the fourth joint 24.
[0125] Specifically, in the step S44, according to the determined rotation angle of the end effector 14, i.e. the end pose angle T c and the calculated rotation angle A1 of the first joint 21, the rotation angle A2 of the second joint 22, and the configuration variable ConfigA4 of the fourth joint 24, the rotation angle A4 of the fourth joint 24 is calculated.
[0126] S45: According to the Z-axis coordinate T z of the end effector 14, the rotation angle A4 of the fourth joint 24, and the pitch of the third joint 23, the moving distance A3 of the third joint 23 is calculated.
[0127] In some embodiments, the specific formula of the calculation process in the step S45 can be expressed as:
[0128] A3 = T z -A4 * pitch;
[0129] Wherein, the pitch represents the pitch of the third joint 23, i.e. the pitch of the screw.
[0130] Specifically, in the step S45, since the third joint 23 is a moving joint, and the third joint 23 and the fourth joint 24 are coupled motion connected by the screw and spline shaft, the moving distance of the third joint 23 is related to the rotation angle A4 of the fourth joint 24 and the pitch pitch of the screw. Therefore, after the rotation angle A4 of the fourth joint 24 and the Z-axis coordinate T z of the end effector 14 are known, the moving distance of the third joint 23, i.e. the last joint, can be calculated. Thus, the inverse kinematics of the scara robot is solved according to the current position of the end effector 14.
[0131] The present application can solve the inverse kinematics of the scara robot caused by the coupled motion of the third joint 23 and the fourth joint 24 due to the screw and spline shaft, reduce the case division in the process of solving the inverse kinematics of the scara robot, reduce the number of inverse solutions, and improve the calculation efficiency of the inverse kinematics of the scara robot.
[0132] Please refer to Figure 6 , which is a structural block diagram of an embodiment of the scara robot inverse kinematics system of the present application. The scara robot inverse kinematics system of the present embodiment is used to implement the scara robot inverse kinematics method as described in the above embodiment. Specifically, the scara robot inverse kinematics system of the present embodiment includes a parameter configuration module 100, a kinematic top view construction module 200, a joint variable calculation module 300, and a joint pose calculation module 400. Among them:
[0133] The parameter configuration module 100 is configured to configure the motion range of each joint of the scara robot.
[0134] The kinematic top view construction module 200 is configured to construct a kinematic top view of each joint according to the current end position.
[0135] The joint variable calculation module 300 is configured to determine the configuration variables of the second joint 22 and the fourth joint 24 according to the current end position.
[0136] The joint position calculation module 400 is configured to solve the position or attitude of each joint according to the position and attitude angle of the current end, and the configuration variables of the second joint 22 and the fourth joint 24.
[0137] The scara robot kinematic inverse solution method can solve the kinematic inverse solution of the scara robot in which the third joint 23 and the fourth joint 24 are coupled to move due to the lead screw spline shaft, and can reduce the case division in the process of solving the kinematic inverse solution of the scara robot, reduce the number of inverse solutions, and thus improve the calculation efficiency of the kinematic inverse solution of the scara robot.
[0138] The above only expresses the preferred embodiments of the present application, which are described in detail, but cannot be understood as limiting the scope of the patent. It should be noted that for those skilled in the art, without departing from the concept of the present application, a number of modifications and improvements can be made, which are all within the scope of the present application. Therefore, the scope of the patent protection of the present application should be subject to the appended claims.
Claims
1. A scara robot kinematics inverse solution method, characterized in that, The method comprises the following steps: S1: configuring the motion range of each joint of the scara robot; S2: constructing a kinematic overhead view of each joint according to the current end position and posture; S3: determining the configuration variables of the second joint and the fourth joint according to the current end position and posture; S4: solving the position or posture of each joint according to the position and posture angle of the current end, and the configuration variables of the second joint and the fourth joint; In the S2 step, the following sub-steps are included: S21: in the kinematic overhead view, the first arm connecting the first joint and the second joint is recorded as OE, and the length of the first arm is recorded as L1; S22: in the kinematic overhead view, the second arm connecting the second joint and the fourth joint is recorded as ET, and the length of the second arm is recorded as L2; S23: in the kinematic overhead view, the connecting line between the first joint and the fourth joint is recorded as OT, and the length is recorded as L; In the S3 step, the following sub-steps are included: S31: the configuration variable of the second joint is recorded as ConfigA2, wherein A2 represents the rotation angle of the second joint, if A2>0, ConfigA2 takes the value of +1, if A2<0, ConfigA2 takes the value of -1; S32: the configuration variable of the fourth joint is recorded as ConfigA4, wherein A4 represents the rotation angle of the fourth joint, ConfigA4 takes an integer, and the interval to which the rotation angle of A4 belongs is recorded as (-180+ConfigA4×360, 180+ConfigA4×360) degrees; In the S4 step, the following sub-steps are included: S41: input the end position and the attitude angle, record the end position as T=[T x ,T y ,T z ], and record the attitude angle as T c , wherein T x , T y , and T z respectively represent the three-axis coordinates of the end position in the Cartesian space; S42: the cosine theorem is used to calculate ∠OET, and according to ∠OET and ConfigA2, the rotation angle A2 of the second joint is calculated; S43: calculate around the Z axis to an angle ∠rZ, calculate from the angle ∠rZ the angle of rotation A1 of the first joint; calculate from the angle of rotation A1 of the first joint the angle of rotation A2 of the second joint; calculate S44: Calculate the fourth joint rotation angle A4 based on the end posture angle T c , the first joint rotation angle Al, the second joint rotation angle A2, and the configuration variable ConfigA4 of the fourth joint. S45: Calculate the third joint moving distance A3 according to the end Z-axis coordinate T, the fourth joint rotating angle A4 and the pitch of the third joint. z , the fourth joint rotating angle A4 and the pitch of the third joint.
2. The scara robot kinematics inverse solution method of claim 1, wherein, In the S1 step, the following sub-steps are included: S11: the rotation range of the first joint and the second joint is configured as (-180, 180) degrees; S12: the movement range of the third joint is configured as (-D, D), wherein D is a positive number, and the unit is millimeter; S13: the rotation range of the fourth joint is configured as (-180×N, 180×N) degrees, wherein N is a positive integer.
3. The scara robot kinematics inverse solution method of claim 1, wherein, In the S42 step, the following sub-steps are included: S421: the cosine theorem is used to calculate ∠OET, and the specific formula can be represented as: Wherein, ∠OET represents the included angle between the first arm OE and the second arm ET; S422: according to ∠OET and ConfigA2, the rotation angle A2 of the second joint is calculated, and the specific formula can be represented as: A2=ConfigA2*(π-∠OET); Wherein, π represents π radian, that is, 180 degrees.
4. The scara robot kinematics inverse solution method of claim 3, wherein, In the S43 step, the following sub-steps are included: S431: Calculate Rotate around the Z axis to the radian ∠rZ, the specific formula can be expressed as: ∠rZ=ConfigA2*(∠OTE-π); Wherein, ∠OTE represents the included angle between OT and TE; S432: Calculate according to ∠rZ The specific formula can be expressed as: Wherein, rotz(θ) represents the transformation matrix of rotating θ degrees around the Z axis; S433: According to Calculate According to Calculate the rotation angle A1 of the first joint, and the specific formula can be represented as: wherein denotes the component of the vector in the y-axis, denotes the component of the vector in the x-axis.
5. The scara robot kinematics inverse solution method of claim 4, wherein, The specific formula of the calculation process in the S44 step can be represented as: A4 = T c - A1 - A2 + ConfigA4 * 2 * π; where T c denotes the end pose angle, A1 denotes the rotation angle of the first joint, A2 denotes the rotation angle of the second joint, and ConfigA4 denotes the configuration variable of the fourth joint.
6. The scara robot kinematics inverse solution method of claim 5, wherein, The specific formula of the calculation process in the S45 step can be represented as: A3 = T z - A4 * pitch; Wherein, pitch represents the pitch of the third joint.
7. A scara robot kinematics inverse solution system, characterized in that, It comprises: A parameter configuration module is configured to configure a motion range of each joint of the scara robot. A kinematic top view construction module is configured to construct a kinematic top view of each joint according to a current end position. A joint variable calculation module is configured to determine configuration variables of the second joint and the fourth joint according to the current end position. A joint position calculation module is configured to solve a position or attitude of each joint according to a position and an attitude angle of the current end, and the configuration variables of the second joint and the fourth joint.
Citation Information
Patent Citations
Four-axis SCARA robot inverse solution method
CN109333520A
Inverse kinematics solving method and system for four-degree-of-freedom series robot
CN113510690A