A Method and System for Intellectually Avoiding Singular Points in Robotic Arm Grinding
The system addresses the challenge of robotic arm singularities by generating and executing a continuous grinding trajectory that avoids singularities, allowing for fully automated and safe grinding of complex metal parts.
Patent Information
- Application Number
- CN202510054096.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-01-14
- Publication Date
- 2025-07-15
- Estimated Expiration
- 2045-01-14
AI Technical Summary
The existing automatic grinding methods cannot effectively avoid the singular points in the robot grinding process, resulting in limited range of motion and inability to achieve intelligent grinding throughout the process.
The trajectory planning module generates an initial grinding trajectory, avoids the singular point module to process singular points, and the grinding attitude module plans a complete attitude, and the robotic arm control module realizes automatic grinding, combining the trajectory and attitude generation command set to control the work of the robotic arm.
It realizes intelligent polishing throughout the process, avoids manual intervention, ensures the smoothness, integrity and safety of the polishing process, and effectively avoids singular points.
Smart Images

Figure CN119704197B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the technical field of automated processing, and specifically to a method and system for intelligently avoiding the singularities of a robotic arm during grinding. Background Art
[0002] At present, in the production of metal products in China, skilled workers generally complete the work manually through electric or pneumatic grinding tools. For large castings with large volume, heavy weight, small batch production, and non-standard shapes, workers need to adjust the deflection angle of the grinding head at any time according to the shape of the workpiece during the grinding process. At the same time, the existing automatic grinding methods cannot avoid singularities, and manual intervention is required to handle the singularities that the robotic arm cannot reach, failing to achieve a fully intelligent grinding effect throughout the process.
[0003] Singular points usually refer to situations where, at certain specific postures or joint positions of a robot, there are problems with its kinematic model, resulting in an infinite number of inverse kinematic solutions or the inability to calculate the inverse kinematic solution. This means that the movement range of the robot may be restricted, and it may be unable to cover a specific area or perform a specific task.
[0004] Based on this, the present invention is proposed. Summary of the Invention
[0005] In view of the deficiencies of the prior art, the present invention provides a method and system for intelligently avoiding the singularities of a robotic arm during grinding. The technical solutions are as follows:
[0006] In a first aspect, an intelligent singularity avoidance system for a robotic arm during grinding includes a trajectory planning module, a singularity avoidance module, a grinding posture module, and a robotic arm control module.
[0007] The trajectory planning module is used to plan an initial grinding trajectory suitable for the continuous movement of the robotic arm from the point cloud data of the workpiece to be ground, and at the same time send the initial grinding trajectory to the grinding posture module.
[0008] The singularity avoidance module is used to process the singularities on the initial grinding trajectory, change the grinding posture by adjusting the contact point between the grinding disc and the workpiece to be ground, thereby avoiding singularities; generate a special grinding trajectory near the singularities, and merge the special grinding trajectory and the initial grinding trajectory into a complete grinding trajectory, and send the complete grinding trajectory to the grinding posture module and the robotic arm control module.
[0009] After receiving the complete grinding trajectory sent by the singularity avoidance module, the grinding posture module sequentially plans the corresponding grinding postures according to the order of the points on the complete grinding trajectory, and at the same time sends the grinding postures at each point to the robotic arm control module.
[0010] The robotic arm control module receives the complete grinding trajectory sent by the singularity avoidance module and the grinding posture at each point sent by the grinding posture module, and controls the robotic arm to work according to the command set to complete the entire grinding process.
[0011] In a second aspect, a method for intelligently avoiding singularities in robotic arm grinding includes the following steps:
[0012] First, send the point cloud data of the workpiece to be ground to the trajectory planning module. The trajectory planning module plans an initial grinding trajectory suitable for the continuous movement of the robotic arm according to the point cloud data and sends the initial grinding trajectory to the singularity avoidance module;
[0013] Then, the singularity avoidance module processes the singularities on the initial grinding trajectory to obtain a special grinding trajectory near the singularities, combines the initial grinding trajectory with the special grinding trajectory into a complete grinding trajectory, and sends the complete grinding trajectory to the grinding posture module and the robotic arm control module;
[0014] Finally, the grinding posture module plans a complete grinding posture according to the complete grinding trajectory and sends it to the robotic arm control module; the robotic arm control module controls the robotic arm to work according to the command set composed of the complete grinding trajectory and the corresponding grinding posture to complete the entire grinding process.
[0015] As a further solution of the present invention, the implementation process of the singularity avoidance module is as follows:
[0016] Taking the grinding posture at the singularity on the initial grinding trajectory as the initial state, at this time the grinding point is point P. Keeping the contact angle θ between the grinding disc and the workpiece to be ground unchanged, taking the direction perpendicular to the workpiece at the grinding point as the rotation axis, rotate the grinding disc counterclockwise or clockwise by an angle in turn. After each rotation, the grinding point remains unchanged, and the center coordinate of the grinding disc changes from point O to point O1; each rotation is in units of α, and the entire circumference is traversed. The circumference refers to the movement trajectory of the center of the grinding disc during the rotation process; after each rotation, judge whether the current robotic arm posture can pass through this singularity according to the inverse kinematics. If it can pass through this singularity, record the actual rotation angle as kα, where k is the number of rotations; after avoiding the singularity, rotate the grinding disc clockwise or counterclockwise back to the original state to continue grinding.
[0017] As a further solution of the present invention, the calculation formula for the grinding posture is as follows:
[0018]
[0019] where T i represents the grinding posture matrix of the i-th trajectory point (Tx, Ty, Tz) in the point cloud data T ;
[0020] XPx represents the component of the X-axis of the coordinate system where the trajectory point is located along the X-axis of the base coordinate system, XPy represents the component of the X-axis of the coordinate system where the trajectory point is located along the Y-axis of the base coordinate system, and XPz represents the component of the X-axis of the coordinate system where the trajectory point is located along the Z-axis of the base coordinate system;
[0021] YPx represents the component of the Y-axis of the coordinate system where the trajectory point is located along the X-axis of the base coordinate system, YPy represents the component of the Y-axis of the coordinate system where the trajectory point is located along the Y-axis of the base coordinate system, and YPz represents the component of the Y-axis of the coordinate system where the trajectory point is located along the Z-axis of the base coordinate system;
[0022] ZPx represents the component of the Z-axis of the coordinate system where the trajectory point is located along the X-axis of the base coordinate system, ZPy represents the component of the Z-axis of the coordinate system where the trajectory point is located along the Y-axis of the base coordinate system, and ZPz represents the component of the Z-axis of the coordinate system where the trajectory point is located along the Z-axis of the base coordinate system;
[0023] n represents the number of point cloud data. It is assumed that n point cloud data are obtained from the workpiece;
[0024] The orientation of the end of the robotic arm can be described by a 3×3 matrix composed of the direction cosines of the three unit principal vectors [X B , Y B , Z B of the end coordinate system B of the robotic arm relative to the base coordinate system A; that is, the coordinate transformation rotation matrix of the end coordinate system B of the robotic arm in the base coordinate system A
[0025]
[0026] A X B represents the component of the X-axis of the end coordinate system B of the robotic arm in the base coordinate system A; A Y B represents the component of the Y-axis of the end coordinate system B of the robotic arm in the base coordinate system A; A Z B represents the component of the Z-axis of the end coordinate system B of the robotic arm in the base coordinate system A; r11, r21......, r23, r33 are the components of the projection of each unit vector of the end coordinate system B of the robotic arm in the unit direction in the base coordinate system A;
[0027] If the coordinates of the grinding point are o(o x , o y , o z ), it is stipulated that the projection line of the connection line between the grinding point and the center of the grinding disc on the tangent plane of the grinding point is used as the y-axis, the normal line perpendicular to the tangent plane at the grinding point is used as the z-axis, the radius of the grinding disc is r, and the contact angle between the grinding disc and the workpiece to be ground is θ. Then the coordinates of the center of the grinding disc are o’(o x , o y+r cosθ, o z +r sinθ), according to the rotation matrix The robotic arm attitude matrix T1 when reaching the grinding point can be obtained as follows:
[0028]
[0029] At the singular point, when traversing to find the angle that can pass through this singular point, a new rotation matrix R is further synthesized on the basis of the original rotation matrix z (kα) =
[0030]
[0031] That is, the rotation matrix at the singular point is Through the grinding attitude calculation formula, the rotated grinding attitude matrix is obtained
[0032] Substitute the grinding attitude matrix T2 and the coordinates O' of the center of the grinding disc at this time into the inverse kinematics equation:
[0033] q = f -1 (O, T), where q = [q1, q2,..., q m represents the angle of each joint, q m represents the angle of the m-th joint, and m represents the number of joints of the robotic arm; f -1 represents the inverse kinematics equation;
[0034] Solve the solution that satisfies the kinematics equation of the robotic arm. If a unique solution can be obtained, it means that the traversal search times at this time can enable the robotic arm to avoid this singular point; if there is no solution or multiple solutions are obtained, it means that the attitude of the robotic arm is unreachable at this time, and the robotic arm cannot avoid this singular point, and the traversal search needs to continue.
[0035] Compared with the prior art, the beneficial effects of the present invention are:
[0036] 1), The trajectory planning module of the present invention can obtain the initial grinding trajectory of the robotic arm.
[0037] 2), The singular point avoidance module of the present invention can obtain the special grinding trajectory of the robotic arm near the singular point.
[0038] 3), The grinding attitude module of the present invention can combine the initial grinding trajectory with the special grinding trajectory near the singular point and generate a complete grinding attitude.
[0039] 4) The robotic arm control module of the present invention can control the operation of the robotic arm through a command set composed of a complete grinding trajectory and corresponding grinding postures, achieving the smoothness of the grinding process, the integrity of the workpiece to be ground, and the safety of the grinding environment. During the grinding process, there is no need to adjust the deflection angle of the grinding head at any time, which can effectively and automatically avoid singularities without special manual treatment, achieving a fully intelligent grinding effect throughout the process, thereby realizing full-process intelligent grinding. Description of the Drawings
[0040] Figure 1 It is a schematic diagram when the grinding disk is in the initial state, and the angle between the grinding disk and the plane where the grinding point is located is θ.
[0041] Figure 2 It is a schematic diagram when the grinding disk is in the rotated state, and the angle between the grinding disk and the plane where the grinding point is located remains θ.
[0042] Figure 3 It is a schematic diagram when the grinding disk is in the rotated state, and the angle between the center of the rotated grinding disk and the center of the original grinding disk is kα. Detailed Embodiments
[0043] The present invention will be described in detail below in conjunction with specific embodiments. The embodiments described below are only a part of the embodiments of the present invention, rather than all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative efforts fall within the scope of protection of the present invention.
[0044] Embodiment 1
[0045] A system for intelligently avoiding singularities in robotic arm grinding includes a trajectory planning module, a singularity avoidance module, a grinding posture module, and a robotic arm control module;
[0046] The trajectory planning module is used to plan the most efficient, convenient, and suitable initial grinding trajectory for the continuous movement of the robotic arm from the point cloud data of the workpiece to be ground, and at the same time send the initial grinding trajectory to the grinding posture module;
[0047] The singularity avoidance module is used to process the singularities on the initial grinding trajectory, change the grinding posture by adjusting the contact point between the grinding disk and the workpiece to be ground, so as to avoid singularities; generate special grinding trajectories near the singularities, and merge the special grinding trajectories and the initial grinding trajectories into a complete grinding trajectory, and send the complete grinding trajectory to the grinding posture module and the robotic arm control module;
[0048] After receiving the complete grinding trajectory sent by the singularity avoidance module, the grinding posture module plans the corresponding grinding postures in sequence according to the order of the points on the complete grinding trajectory path, and at the same time sends the grinding postures at each point to the robotic arm control module;
[0049] The robotic arm control module receives the complete grinding trajectory sent by the singularity avoidance module and the grinding posture at each point sent by the grinding posture module, and controls the robotic arm to work according to the command set to complete the entire grinding process.
[0050] Embodiment 2
[0051] A method for intelligently avoiding singularities in robotic arm grinding includes the following steps:
[0052] First, the point cloud data of the workpiece to be ground is sent to the trajectory planning module. The trajectory planning module plans an initial grinding trajectory suitable for the continuous movement of the robotic arm based on the point cloud data and sends the initial grinding trajectory to the singularity avoidance module;
[0053] Then, the singularity avoidance module processes the singularities on the initial grinding trajectory to obtain a special grinding trajectory near the singularities, combines the initial grinding trajectory and the special grinding trajectory into a complete grinding trajectory, and sends the complete grinding trajectory to the grinding posture module and the robotic arm control module;
[0054] Finally, the grinding posture module plans a complete grinding posture based on the complete grinding trajectory and sends it to the robotic arm control module; the robotic arm control module controls the robotic arm to work according to the command set composed of the complete grinding trajectory and the corresponding grinding posture to complete the entire grinding process.
[0055] The implementation process of the singularity avoidance module is as follows:
[0056] Taking the grinding posture at the singularity on the initial grinding trajectory as the initial state, at this time the grinding point is point P. When keeping the contact angle θ between the grinding disc and the workpiece to be ground unchanged, as Figure 1 shown, taking the direction perpendicular to the workpiece to be ground at the grinding point as the rotation axis of the grinding disc, after rotating the grinding disc counterclockwise or clockwise by an angle in turn, the grinding point remains unchanged, and the center coordinate of the grinding disc changes from point O to point O1, as Figure 2 shown; each rotation rotates by an angle in units of α, traversing the entire circumference, where the circumference refers to the movement trajectory of the center of the grinding disc during the rotation process; after each rotation, judge whether the current robotic arm posture can pass through this singularity according to the inverse kinematics. If it can pass through this singularity, record the actual rotation angle as kα, where k is the number of rotations, as Figure 3 shown; after avoiding the singularity, rotate the grinding disc clockwise or counterclockwise back to the original state and continue grinding.
[0057] The calculation formula for the grinding posture is as follows:
[0058]
[0059] where, Ti Representing the i-th trajectory point (Tx, Ty, Tz) in the point cloud data T of the grinding pose matrix;
[0060] XPx represents the component of the X-axis of the coordinate system where the trajectory point is located on the X-axis of the base coordinate system, XPy represents the component of the X-axis of the coordinate system where the trajectory point is located on the Y-axis of the base coordinate system, and XPz represents the component of the X-axis of the coordinate system where the trajectory point is located on the Z-axis of the base coordinate system;
[0061] YPx represents the component of the Y-axis of the coordinate system where the trajectory point is located on the X-axis of the base coordinate system, YPy represents the component of the Y-axis of the coordinate system where the trajectory point is located on the Y-axis of the base coordinate system, and YPz represents the component of the Y-axis of the coordinate system where the trajectory point is located on the Z-axis of the base coordinate system;
[0062] ZPx represents the component of the Z-axis of the coordinate system where the trajectory point is located on the X-axis of the base coordinate system, ZPy represents the component of the Z-axis of the coordinate system where the trajectory point is located on the Y-axis of the base coordinate system, and ZPz represents the component of the Z-axis of the coordinate system where the trajectory point is located on the Z-axis of the base coordinate system;
[0063] n represents the number of point cloud data. It is assumed that n point cloud data are obtained from the workpiece;
[0064] The orientation of the end of the robotic arm can be described by a 3×3 matrix composed of the direction cosines of the three unit principal vectors [X B , Y B , Z B of the end coordinate system B of the robotic arm relative to the base coordinate system A; that is, the coordinate transformation rotation matrix of the end coordinate system B of the robotic arm in the base coordinate system A
[0065]
[0066] A X B represents the component of the X-axis of the end coordinate system B of the robotic arm in the base coordinate system A; A Y B represents the component of the Y-axis of the end coordinate system B of the robotic arm in the base coordinate system A; A Z B represents the component of the Z-axis of the end coordinate system B of the robotic arm in the base coordinate system A; r11, r21......, r23, r33 are the components of the projection of each unit vector of the end coordinate system B of the robotic arm in the unit direction in the base coordinate system A;
[0067] If the grinding point coordinates are o(o x , o y , o z), the projection line of the connection line between the grinding point and the center of the grinding wheel on the tangent plane of the grinding point is defined as the y-axis, the normal line perpendicular to the tangent plane at the grinding point is defined as the z-axis, the radius of the grinding wheel is r, and the contact angle between the grinding wheel and the workpiece to be ground is θ. Then the coordinates of the center of the grinding wheel are o’(o x , o y + rcosθ, o z + rsinθ). According to the rotation matrix , the attitude matrix of the robotic arm when reaching the grinding point can be obtained as T1:
[0068]
[0069] At the singular point, when traversing to find the angle that can pass through this singular point, a new rotation matrix R z (kα) =
[0070]
[0071] where k can also be regarded as the number of search times during traversal;
[0072] That is, the rotation matrix at the singular point is Through the grinding attitude calculation formula, the rotated grinding attitude matrix is obtained
[0073] Substitute the grinding attitude matrix T2 and the coordinates of the center of the grinding wheel O at this time into the inverse kinematics equation:
[0074] q = f -1 (O, T), where q = [q1, q2,..., q m represents the angle of each joint, q m represents the angle of the m-th joint, and m represents the number of joints of the robotic arm; f -1 represents the inverse kinematics equation;
[0075] Solve for the solution that satisfies the kinematics equation of the robotic arm. If a unique solution can be obtained, it means that the number of search times at this time can enable the robotic arm to avoid this singular point; if there is no solution or multiple solutions are obtained, it means that the attitude of the robotic arm is unreachable at this time, and the robotic arm cannot avoid this singular point, and traversal search needs to continue.
[0076] In addition, it should be understood that those skilled in the art should regard the specification as a whole, and the technical solutions in each embodiment can also be appropriately combined to form other embodiments that can be understood by those skilled in the art.
Claims
1. An intelligent system for avoiding singularities in robotic arm grinding, characterized in that: It includes a trajectory planning module, a singularity avoidance module, a grinding attitude module, and a robotic arm control module; The trajectory planning module is used to plan an initial grinding trajectory suitable for the continuous movement of the robotic arm from the point cloud data of the workpiece to be ground, and at the same time send the initial grinding trajectory to the grinding attitude module; The singularity avoidance module is used to process the singularities on the initial grinding trajectory, change the grinding attitude by adjusting the contact point between the grinding disc and the workpiece to be ground, so as to avoid singularities; generate a special grinding trajectory near the singularities, and merge the special grinding trajectory and the initial grinding trajectory into a complete grinding trajectory, and send the complete grinding trajectory to the grinding attitude module and the robotic arm control module; After receiving the complete grinding trajectory sent by the singularity avoidance module, the grinding attitude module sequentially plans the corresponding grinding attitudes according to the order of the points on the complete grinding trajectory path, and at the same time sends the grinding attitude at each point to the robotic arm control module; The robotic arm control module receives the complete grinding trajectory sent by the singularity avoidance module and the grinding attitude at each point sent by the grinding attitude module, and controls the robotic arm to work according to the command set to complete the entire grinding process; The implementation process of the singularity avoidance module is as follows: Taking the grinding attitude at the singularity on the initial grinding trajectory as the initial state, at this time the grinding point is point P. Keeping the contact angle θ between the grinding disc and the workpiece to be ground unchanged, taking the direction perpendicular to the workpiece to be ground at the grinding point as the rotation axis of the grinding disc, after rotating the grinding disc counterclockwise or clockwise by an angle in turn, the grinding point remains unchanged, and the center coordinate of the grinding disc changes from point O to point O1; each rotation is in units of α for the rotation angle, traversing the entire circumference, where the circumference refers to the movement trajectory of the center of the grinding disc during the rotation process; after each rotation, judge whether the current robotic arm attitude can pass through this singularity according to the inverse kinematics. If it can pass through this singularity, record the actual rotation angle as kα, where k is the number of rotations; After avoiding the singularity, rotate the grinding disc clockwise or counterclockwise back to the original state to continue grinding.
2. The method for intelligently avoiding singularities in robotic arm grinding according to claim 1, wherein It includes the following steps: First, send the point cloud data of the workpiece to be ground to the trajectory planning module. The trajectory planning module plans an initial grinding trajectory suitable for the continuous movement of the robotic arm according to the point cloud data, and sends the initial grinding trajectory to the singularity avoidance module; Then, the singularity avoidance module processes the singularities on the initial grinding trajectory to obtain a special grinding trajectory near the singularities, and merges the initial grinding trajectory and the special grinding trajectory into a complete grinding trajectory, and sends the complete grinding trajectory to the grinding attitude module and the robotic arm control module; Finally, the grinding attitude module plans the complete grinding attitude according to the complete grinding trajectory and sends it to the robotic arm control module; the robotic arm control module controls the robotic arm to work according to the command set composed of the complete grinding trajectory and the corresponding grinding attitude to complete the entire grinding process.
3. The method and system for intelligently avoiding the singularity of robotic arm grinding according to claim 1, characterized in that: The calculation formula of the grinding attitude is as follows: Among them, T i represents the grinding pose matrix of the i-th trajectory point (Tx, Ty, Tz) in the point cloud data T ; XPx represents the component of the X-axis of the coordinate system where the trajectory point is located on the X-axis of the base coordinate system, XPy represents the component of the X-axis of the coordinate system where the trajectory point is located on the Y-axis of the base coordinate system, and XPz represents the component of the X-axis of the coordinate system where the trajectory point is located on the Z-axis of the base coordinate system; YPx represents the component of the Y-axis of the coordinate system where the trajectory point is located on the X-axis of the base coordinate system, YPy represents the component of the Y-axis of the coordinate system where the trajectory point is located on the Y-axis of the base coordinate system, and YPz represents the component of the Y-axis of the coordinate system where the trajectory point is located on the Z-axis of the base coordinate system; ZPx represents the component of the Z-axis of the coordinate system where the trajectory point is located on the X-axis of the base coordinate system, ZPy represents the component of the Z-axis of the coordinate system where the trajectory point is located on the Y-axis of the base coordinate system, and ZPz represents the component of the Z-axis of the coordinate system where the trajectory point is located on the Z-axis of the base coordinate system; n represents the number of point cloud data. It is assumed that n point cloud data are obtained from the workpiece; The orientation of the end of the robotic arm can be described by a 3×3 matrix composed of the direction cosines of the three unit principal vectors [X B , Y B , Z B of the end coordinate system B of the robotic arm with respect to the base coordinate system A; that is, the coordinate transformation rotation matrix of the end coordinate system B of the robotic arm under the base coordinate system A A X B represents the component of the X-axis of the end-effector coordinate system B of the robotic arm in the base coordinate system A; A Y B represents the component of the Y-axis of the end-effector coordinate system B of the robotic arm in the base coordinate system A; A Z B represents the component of the Z-axis of the end-effector coordinate system B of the robotic arm in the base coordinate system A; r11, r21......, r23, r33 are the components of the projection of each unit vector of the end-effector coordinate system B of the robotic arm in the unit direction in the base coordinate system A; If the coordinates of the grinding point are o(o x ,o y ,o z ), it is stipulated that the projection line of the connection line between the grinding point and the center of the grinding wheel on the tangent plane of the grinding point is used as the y-axis, and the normal line perpendicular to the tangent plane at the grinding point is used as the z-axis. The radius of the grinding wheel is r, and the contact angle between the grinding wheel and the workpiece to be ground is θ. Then the coordinates of the center of the grinding wheel are o’(o x ,o y +rcosθ,o z +rsinθ). According to the rotation matrix , the attitude matrix of the robotic arm when reaching the grinding point can be obtained as T1: When traversing to find the angle that can pass through the singular point at the singular point, a new rotation matrix R is further synthesized on the basis of the original rotation matrix z (kα) =, That is, the rotation matrix at the singular point is By polishing the attitude calculation formula, the polished attitude matrix after rotation is obtained Substitute the grinding attitude matrix T2 and the center coordinate O' of the grinding disc at this time into the inverse kinematics equation: q = f -1 (O, T), where q = [q1, q2,..., q m represents the angle of each joint, q m represents the angle of the m-th joint, m represents the number of joints of the robotic arm; f -1 represents the inverse kinematics equation; Solve for the solution that satisfies the kinematics equation of the robotic arm. If a unique solution can be obtained, it means that the current traversal search times can enable the robotic arm to avoid this singularity; if there is no solution or multiple solutions are obtained, it means that the pose of the robotic arm is unreachable at this time, and the robotic arm cannot avoid this singularity, and the traversal search needs to continue.
Citation Information
Patent Citations
Mechanical arm track planning method considering spacecraft body attitude motion
CN109623812A
General avoidance method and system for singular point of mechanical arm
CN113601512A