A robot control method, apparatus and device
Through the robotic belt grinding system, the cross-section method and polynomial interpolation curve are used to control the robot to polish the blade edge, which solves the problems of low blade polishing efficiency and poor quality and achieves efficient and accurate burr removal.
Patent Information
- Application Number
- CN202411194325.8
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-08-28
- Publication Date
- 2025-10-17
- Estimated Expiration
- 2044-08-28
AI Technical Summary
In the prior art, the efficiency and quality of blade edge polishing are low, and manual operation affects health.
A robotic belt grinding system is used to obtain the three-dimensional model spline curve of the aircraft engine precision forging blade through the cross-section method, construct a polynomial interpolation curve, determine the cutting equation and tangent point, perform tangent point compensation, and use the robot kinematic model to control the robot for polishing.
The efficiency and accuracy of blade edge polishing are improved, manual errors are reduced, and the effect of precise burr removal is achieved.
Smart Images

Figure CN118990248B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of robots, and in particular to a robot control method, device and equipment. BACKGROUND
[0002] The blade is a key part of an aero-engine, and the machining quality of the blade will directly affect the working performance of the aero-engine. Therefore, manufacturing a blade with high geometric precision and good surface quality is of great significance to improve the performance and quality of the aero-engine, and edge polishing of the blade of the aero-engine can effectively improve the surface quality and geometric precision of the blade.
[0003] At present, the edge polishing of the blade is mainly performed in a traditional manual manner, which has the problems of low efficiency and poor quality, and manual polishing by an operator will greatly affect the health of the operator. SUMMARY
[0004] Therefore, the present application provides a robot control method, device and equipment to solve the problems of low efficiency and insufficient precision when manually polishing the edge of the blade.
[0005] Specifically, the present application is implemented by the following technical solutions:
[0006] The first aspect of the present application provides a robot control method, which is used for controlling a robot in a robot abrasive belt grinding system, the robot abrasive belt grinding system further comprising an abrasive belt grinding device, and the robot abrasive belt grinding system is used for edge polishing of an aero-engine precision forged blade clamped on an end effector of the robot by using the abrasive belt grinding device to remove burrs on the aero-engine precision forged blade; the method comprises:
[0007] obtaining a spline curve of a three-dimensional model of the aero-engine precision forged blade on each section by using the section method;
[0008] selecting an initial target point to be machined on a face of any one of a top, a bottom, a leading edge and a trailing edge of the aero-engine precision forged blade from the spline curve on each section;
[0009] constructing a polynomial interpolation curve on the face of the section according to the initial target point; wherein the polynomial interpolation curve sequentially passes through the initial target point, and the polynomial interpolation curve is used for describing the edge of the aero-engine precision forged blade on the face of the section;
[0010] for each cutting angle in a plurality of preset cutting angles, determining an actual cutting equation by taking the cutting angle as a cutting angle corresponding to an initial cutting equation of a belt in a pre-established abrasive belt grinding device;
[0011] determine a tangent point of the polynomial interpolation curve and the actual cutting equation according to a preset position relationship between an edge of the aero-engine precision forged blade and the abrasive belt;
[0012] compensate the tangent point, take the compensated tangent point as position information of an end effector of the robot, and obtain a trajectory point corresponding to the compensated tangent point of the robot through inverse kinematics according to a kinematics equation of the robot, wherein the trajectory point includes rotation angles of each joint;
[0013] control the robot according to trajectory points corresponding to all compensated tangent points of the robot.
[0014] The second aspect of the present application provides a robot control device for controlling a robot in a robot abrasive belt grinding system, the robot abrasive belt grinding system further comprising an abrasive belt grinding device, and the robot abrasive belt grinding system being configured to polish an edge of an aero-engine precision forged blade clamped on an end effector of the robot by using the abrasive belt grinding device to remove burrs on the aero-engine precision forged blade; the device comprises a determination module, a construction module, a compensation module and a control module; wherein,
[0015] the determination module is configured to obtain spline curves of a three-dimensional model of the aero-engine precision forged blade on each cross section by using a cross section method;
[0016] the determination module is configured to select an initial target point to be machined on a face of the aero-engine precision forged blade from the spline curves on each cross section for any one of the top, bottom, leading edge and trailing edge of the aero-engine precision forged blade;
[0017] the construction module is configured to construct a polynomial interpolation curve on the face of the cross section according to the initial target point; wherein the polynomial interpolation curve sequentially passes through the initial target point, and the polynomial interpolation curve is used to describe an edge of the aero-engine precision forged blade on the face of the cross section;
[0018] the determination module is configured to determine an actual cutting equation for each cutting angle in a preset plurality of cutting angles, taking the cutting angle as a cutting angle corresponding to an initial cutting equation of an abrasive belt in the preset abrasive belt grinding device;
[0019] the determination module is configured to determine a tangent point of the polynomial interpolation curve and the actual cutting equation according to a preset position relationship between an edge of the aero-engine precision forged blade and the abrasive belt;
[0020] The compensation module is configured to compensate the cut point, take the compensated cut point as position information of an end effector of the robot, and obtain a trajectory point corresponding to the compensated cut point of the robot according to a kinematics equation of the robot through inverse kinematics solving; the trajectory point includes an angle of rotation of each joint.
[0021] The control module is configured to control the robot according to the trajectory points corresponding to all the compensated cut points of the robot.
[0022] The third aspect of the present application provides a robot control device, which comprises a memory, a processor, and a computer program stored in the memory and executable on the processor, and the processor implements the steps of any one of the methods provided in the first aspect of the present application when executing the program.
[0023] The fourth aspect of the present application provides a computer readable storage medium, which stores a computer program, and the program implements the steps of any one of the methods provided in the first aspect of the present application when executed by a processor.
[0024] The robot control method, device and equipment provided in the present application first use the cross-section method to obtain the spline curves of the three-dimensional model of the precision-forged blade of the aircraft engine on each cross-section. Furthermore, for any one of the top, bottom, leading edge and trailing edge of the precision-forged blade of the aircraft engine, the initial target point of the cross-section to be processed on the surface is selected from the spline curve on each cross-section. Then, for any one of the surfaces, a polynomial interpolation curve of the cross-section on the surface can be constructed based on the initial target point. For each of the preset multiple cutting angles, the cutting angle is used as the cutting angle corresponding to the initial cutting equation of the abrasive belt in the pre-established abrasive belt grinding device to determine the actual cutting equation. Furthermore, when the polynomial interpolation curve and the actual cutting equation of the cross-section on the surface are obtained, the tangent point of the polynomial interpolation curve and the actual cutting equation can be determined based on the preset positional relationship between the edge of the precision-forged blade of the aircraft engine and the abrasive belt, and the tangent point can be compensated. Then, the compensated tangent point is used as the position information of the robot's end effector. According to the robot's kinematic equation, the trajectory point of the robot corresponding to the compensated tangent point is obtained by inverse kinematics solution, and then the robot is controlled according to the finally obtained trajectory points of the robot corresponding to all compensated tangent points, so that the robot performs the polishing operation. In this way, on the one hand, the edge polishing of the blade by the robot can improve work efficiency and reduce human errors; on the other hand, when establishing the mathematical model of the blade edge, that is, when establishing the polynomial interpolation curve, for the top, bottom, leading edge, and trailing edge, the corresponding polynomial interpolation curve is established in segments, which can improve the accuracy. By solving the tangent point through a more accurate polynomial interpolation curve, the tangent point can be accurately found, the edge polishing position can be accurately positioned, and the burr removal effect can be achieved; on the third hand, after solving the tangent point, the edge polishing position can be accurately positioned by compensating the tangent point. BRIEF DESCRIPTION OF THE DRAWINGS
[0025] Figure 1 This is a flowchart of Example 1 of the robot control method provided by this application;
[0026] Figure 2 A schematic diagram of a robotic belt grinding system according to an exemplary embodiment of the present application is shown;
[0027] Figure 3 This is a schematic diagram illustrating the implementation principle of the cross-section method according to an exemplary embodiment of this embodiment;
[0028] Figure 4 This is a flowchart of constructing a polynomial interpolation curve according to an exemplary embodiment of the present application;
[0029] Figure 5 This is a schematic diagram of a constructed polynomial interpolation curve shown in an exemplary embodiment of the present application;
[0030] Figure 6 A difference diagram of a polynomial interpolation curve and a spline curve shown for an exemplary embodiment of the present application;
[0031] Figure 7 A diagram showing the positional relationship between the edge of an aero-engine precision forged blade and a sand belt shown for an exemplary embodiment of the present application;
[0032] Figure 8 A flowchart of a robot control method shown for an exemplary embodiment of the present application;
[0033] Figure 9 A flowchart of a robot control method shown for another exemplary embodiment of the present application;
[0034] Figure 10 A flowchart of a robot control method provided by the present application, embodiment two;
[0035] Figure 11 A hardware structure diagram of a robot control device in which the robot control apparatus of the present application is located;
[0036] Figure 12 A structural schematic diagram of the robot control apparatus provided by the present application, embodiment one. DETAILED DESCRIPTION
[0037] The exemplary embodiments will be described in detail herein with reference to the attached drawings. In the following description, the same numbers are used to designate the same elements, unless otherwise indicated. The embodiments described in the following exemplary embodiments are not meant to represent all embodiments consistent with the present application.
[0038] The terminology used in the present application is for the purpose of describing particular embodiments only and is not intended to be limiting of the present application. As used in the present application, the singular forms "a," "an," and "the" are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms "comprises" and / or "comprising," when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and / or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and / or groups thereof.
[0039] It should be understood that although the terms first, second, third, etc. can be used herein to describe various information, these terms are not intended to denote a particular order or hierarchy. These terms are used only to distinguish one from another. For example, a first information can be termed a second information, and similarly, a second information can be termed a first information, without departing from the scope of the present application. As used herein, the term "if' can be interpreted to mean "when" or "responsive to the determination" or "in response to the determination" depending on the context.
[0040] The specific embodiments given above are illustrative only and not meant to be limiting on the present application.
[0041] Figure 1 The flow chart of the robot control method provided in the present application is shown in Figure 1. Figure 1 The method provided in the present embodiment can include the following steps.
[0042] S101, obtaining the spline curve of the three-dimensional model of the aero-engine precision forged blade on each section by using the section method.
[0043] It should be noted that the robot control method provided in the present application is used to control the robot in the robot abrasive belt grinding system. Figure 2 The schematic diagram of the robot abrasive belt grinding system shown in an exemplary embodiment of the present application is shown in Figure 2. Figure 2 The robot abrasive belt grinding system includes a robot abrasive belt grinding device and a robot, and the robot abrasive belt grinding system is used to use the robot abrasive belt grinding device to perform edge polishing on the aero-engine precision forged blade clamped on the end effector of the robot, so as to remove burrs on the aero-engine precision forged blade.
[0044] Further, the robot control method and device provided in the present application are applied to a robot control device, which can be a controller integrated on a robot or a controller independent of the robot, and the present application does not limit this.
[0045] Specifically, in order to obtain accurate point information of the aero-engine precision forged blade, the spline curve of the aero-engine precision forged blade on each section is obtained by using the section method. In specific implementation, a series of planes can be used to intercept the three-dimensional model of the aero-engine precision forged blade, and the intersection line of the series of planes and the aero-engine precision forged blade is the spline curve.
[0046] Figure 3 The implementation principle diagram of the section method shown in an exemplary embodiment of the present embodiment is shown in Figure 3. Figure 3 In the three-dimensional model, the Z-axis of the coordinate system is parallel to the blade stacking axis; further, a plurality of planes parallel to the XOY plane are established according to requirements; then, the intersection curve of the blade body surface and the plurality of planes established in the previous step is constructed, and the intersection curve is the spline curve.
[0047] It should be noted that the construction method of the three-dimensional model of the aero-engine precision forged blade refers to the description in the related art, which will not be repeated here. Further, the blade stacking axis refers to the reference axis of the shape and position of the blade along its height direction (usually from the blade root to the blade tip).
[0048] S102, selecting, from the spline curve on each section, an initial target point to be machined on the face of the top, bottom, leading edge or trailing edge of the aero-engine precision forged blade.
[0049] Specifically, to accurately obtain the accurate point information of a certain area, an initial target point to be machined on the face of the top, bottom, leading edge or trailing edge of the aero-engine precision forged blade is selected from the spline curve on each section. For example, for the top, an initial target point to be machined on the top of the first section is selected from the spline curve on the first section.
[0050] It should be noted that the number of initial target points to be machined on each face is set according to actual needs, which is not limited in the embodiment. For example, in an embodiment, the number of initial target points to be machined on each face is 5.
[0051] In combination with the above example, in this step, 5 initial target points to be machined on the face of the top, bottom, leading edge or trailing edge of the aero-engine precision forged blade are selected from the spline curve on a certain section, that is, for the spline curve on a certain section, the spline curve is divided into four parts, which are top part, bottom part, leading edge part and trailing edge part. 5 points are selected from the top part as the initial target points to be machined on the top of the section; 5 points are selected from the bottom part as the initial target points to be machined on the bottom of the section; 5 points are selected from the leading edge part as the initial target points to be machined on the leading edge of the section; and 5 points are selected from the trailing edge part as the initial target points to be machined on the trailing edge of the section. That is, for the spline curve on a certain section, 20 initial target points are selected, which are divided into four groups corresponding to the top, bottom, leading edge and trailing edge.
[0052] It should be noted that when selecting the initial target points, points corresponding to key geometric features of the blade (such as the highest point, the lowest point), points with large curvature change or curvature extreme points on the spline curve can be selected. In the embodiment, it is not limited.
[0053] S103, constructing a polynomial interpolation curve on the face of the section according to the initial target points; wherein the polynomial interpolation curve sequentially passes through the initial target points, and the polynomial interpolation curve is used to describe the edge of the aero-engine precision forged blade on the face of the section.
[0054] Specifically, in order to accurately describe the edge of the aero-engine precision forged blade on the face of a certain section, in the embodiment, a polynomial interpolation curve is used to approximate the edge of the aero-engine precision forged blade.
[0055] In a specific implementation, for example, for the edge of an aero-engine precision forged blade at the top of a certain section, a polynomial interpolation curve on the top of the section can be constructed according to 5 initial target points on the top of the section selected from the spline curve on the section.
[0056] In other words, after the initial target points and their detailed position information are obtained by the section method, in order to accurately control the edge polishing position, in the present application, a method of constructing a mathematical model of the edge by constructing polynomial interpolation curves of the blade basin (top), back side (bottom), leading edge and trailing edge through segmentation is proposed.
[0057] Figure 4 A flowchart of constructing a polynomial interpolation curve shown for an exemplary embodiment of the present application, Figure 5 A schematic diagram of a constructed polynomial interpolation curve shown for an exemplary embodiment of the present application. Please refer to Figure 4 and Figure 5 In a possible implementation, the constructing a polynomial interpolation curve on the section according to the initial target points can include:
[0058] S401, constructing an initial interpolation function; wherein the number of undetermined coefficients in the initial interpolation function is equal to the number of initial target points.
[0059] Specifically, when constructing a polynomial interpolation curve sequentially passing through initial target points , it is necessary to first construct a corresponding initial interpolation function.
[0060] It should be noted that the initial interpolation function is constructed according to actual needs, and in the present embodiment, it is not limited. For example, in a possible implementation, if a polynomial basis is selected as a power basis, at this time, the initial interpolation function is as follows:
[0061] ; (1)
[0062] wherein, is an undetermined coefficient in the initial interpolation function, is a parameter value.
[0063] It should be noted that the number of undetermined coefficients in the initial interpolation function is equal to the number of initial target points. For example, in an embodiment, the number of initial target points is 5, and the number of undetermined coefficients in the initial interpolation function is also 5.
[0064] S402, according to the preset interpolation condition, and the position information of the initial target point, solving the undetermined coefficient in the initial interpolation function, obtaining the polynomial interpolation curve; Wherein, the interpolation condition requires each initial target point to satisfy the initial interpolation function.
[0065] Specifically, the undetermined coefficient in the initial interpolation function has not been determined, and the position information of the initial target point is needed to solve the undetermined coefficient according to the preset interpolation condition, and then the polynomial interpolation curve is obtained. Wherein, the preset interpolation condition is set according to the actual demand, which is not limited in this embodiment. For example, in a possible implementation, the preset interpolation condition is:
[0066] ; (2)
[0067] Wherein, is the undetermined coefficient.
[0068] Further, it is assumed that the data points have been parameterized, and the parameter division is determined. The parameter value is substituted into the equation to satisfy the above interpolation condition, and the undetermined coefficient is solved, as shown below:
[0069] ; (3)
[0070] Wherein, is the undetermined coefficient.
[0071] For example, in an embodiment, after obtaining a spline curve by section method, for the top, 5 points are selected as initial target points on the spline curve according to the preset selection rule, the position information of the 5 initial target points is substituted into the above formula, the undetermined coefficient is solved, and the final polynomial interpolation curve is confirmed.
[0072] In combination with the above example, for example, in an embodiment, table 1 is the initial target point obtained on the top surface of a certain section of an engine precision forging blade according to an exemplary embodiment of the application:
[0073] Table 1 initial target point of a certain section of an engine precision forging blade on the top surface
[0074]
[0075] In combination with formula (1), formula (2) and formula (3), the above values are substituted into the above formula, and the undetermined coefficient of the initial interpolation function can be solved, and then the polynomial interpolation curve is determined. At this time, the determined polynomial interpolation curve is as follows:
[0076] ; (4)
[0077] After the polynomial interpolation curve is obtained, in order to determine the accuracy of the polynomial interpolation curve, the deviation between the polynomial interpolation curve and the original spline curve is analyzed to determine whether the polynomial interpolation curve meets the processing needs.
[0078] Figure 6 For the difference between the polynomial interpolation curve and the spline curve shown in an exemplary embodiment of the present application, please refer to Figure 6 It can be seen that the deviation between the polynomial interpolation curve and the spline curve is less than the deviation threshold, which meets the processing needs.
[0079] It should be noted that the deviation threshold for determining whether it meets the processing needs is set according to the actual needs, which is not limited here.
[0080] S104, for each cutting angle in the preset plurality of cutting angles, taking the cutting angle as the corresponding cutting angle of the initial cutting equation of the sand belt in the pre-established sand belt grinding device, determining the actual cutting equation.
[0081] The preset plurality of cutting angles is set according to the actual needs, and in this embodiment, the preset plurality of cutting angles is not limited, for example, in one possible implementation, the preset plurality of cutting angles can include 15°, 30° and 45°, etc.
[0082] Further, the initial cutting equation of the sand belt in the pre-established sand belt grinding device is as follows:
[0083] ; (5)
[0084] Wherein, k is a parameter about the cutting angle in the initial cutting equation, when the cutting angle is , .
[0085] It should be noted that since the blade edge and the sand belt are tangent to each other, b can be solved when the cutting angle is known, so after k and b are determined, the actual cutting equation can be obtained.
[0086] S105, according to the position relationship between the edge of the aero-engine precision forged blade and the sand belt, determining the tangent point of the polynomial interpolation curve and the actual cutting equation.
[0087] Specifically, Figure 7 For the position relationship between the edge of the aero-engine precision forged blade and the sand belt shown in an exemplary embodiment of the present application, please refer to Figure 7It can be understood that, in the process of polishing, the abrasive belt is tangent to the edge of the aero-transmitter precision forged blade, and the tangent point between the two can be solved through the polynomial interpolation curve and the actual cutting equation.
[0088] Specifically, please refer to Figure 7 , the polynomial interpolation curve and the actual cutting equation have and only have a unique solution, which is the tangent point, as shown by the point Figure 7 in .
[0089] S106, compensate for the tangent point, take the compensated tangent point as the position information of the end effector of the robot, and obtain the trajectory point of the robot corresponding to the compensated tangent point through inverse kinematics according to the kinematics equation of the robot; wherein the trajectory point includes the rotation angle of each joint.
[0090] Specifically, the specific implementation principle and implementation process of compensation will be described in detail in the following embodiments, which will not be repeated here.
[0091] Further, the establishment process of the dynamic model of the robot is explained as follows:
[0092] Figure 8 For the flowchart of the robot control method shown in an exemplary embodiment of the present application, please refer to Figure 8 , on the basis of the above embodiment, the robot control method provided in the embodiment is established by the following method:
[0093] S801, establish coordinate systems for each link and end effector of the robot.
[0094] Specifically, to achieve high-performance control of the robot, the robot needs to be dynamically modeled first, and the kinematics model of the robot is established; wherein the kinematics model of the robot is used to represent the relationship between the pose of the end effector and the joint angle.
[0095] Further, for the dynamic modeling of the robot, the coordinate systems of each link and end effector of the robot need to be established based on the D-H method first.
[0096] When implemented specifically, the coordinate systems of each link and end effector of the robot can be established according to the following steps:
[0097] (1) determine the axis of each coordinate system. When implemented specifically, the axis is selected along the axis of the joint (pointing in any direction, but usually all parallel axes are taken in the same direction).
[0098] (2) Determine the origin of each coordinate system. In the specific implementation, select the origin In the past Axis and On the common normal of the axis (i.e. For this reason, the common normal intersection of the axes).
[0099] (3) Determine the X-axis of each coordinate system. When implementing, select Axis along Axis and The common normal of the axis, the direction from point to .
[0100] (4) Determine the coordinates of each system Axis. In specific implementation, , which constitutes a right-handed coordinate system.
[0101] Optionally, in one possible implementation, the robot is a six-axis industrial robot manufactured by the Stäubli Group. As previously discussed, high-performance robot control is premised on establishing accurate relative motion relationships between the robot's links. Based on these relative motion relationships, the relationship between the robot's end effector pose and joint rotation angles is established, enabling any spatial pose of the end effector to be represented in the joint coordinate space.
[0102] S802: Construct DH parameters between each pair of adjacent coordinate systems; wherein the DH parameters are used to describe the geometric relationship and motion relationship between each joint and connecting rod.
[0103] Specifically, the DH parameters are used to describe the geometric relationship and motion relationship between each joint and the connecting rod; further, in this application, the DH parameters include the connecting rod length ( ), connecting rod torsion angle ( )、Joint distance( ) and joint rotation ( ) Four basic parameters.
[0104] The connecting rod length Defined as Axis to Axis distance, along The direction of the axis is positive; the connecting rod torsion angle Defined as Axis to Angle of rotation around the axis The positive rotation of the shaft is positive, and the ; Joint distance Defined as Axis to The distance along the axis The orientation of the axis is positive; joint angle defined as from the axis to the angle of rotation of the axis, around positive rotation of the axis is positive, and is defined as .
[0105] In combination with the above example, taking a six-axis industrial robot produced by the Staubli Group as an example, the D-H parameters of the six-axis industrial robot are shown in Table 2:
[0106] Table 2 D-H parameter table of the six-axis industrial robot
[0107]
[0108] S803, according to the D-H parameters, determine the homogeneous transformation matrix between adjacent coordinate systems.
[0109] Specifically, after establishing the coordinate system by using the D-H method, the continuous right multiplication can obtain the motion position relationship of the last rod, which is specifically as follows:
[0110] ; (6)
[0111] wherein, the homogeneous transformation matrix of the coordinate system of joint to the coordinate system of joint , is the joint angle, is the joint distance, is the length of the connecting rod, is the torsion angle of the connecting rod.
[0112] wherein, in formula (6) are shown in the following formulas respectively:
[0113] ; (7)
[0114] ; (8)
[0115] ; (9)
[0116] ; (10)
[0117] Further, substituting the above formulas (7)~(10) into formula (6), the specific homogeneous transformation matrix between adjacent coordinate systems can be obtained.
[0118] Specifically, as described above, the coordinate system of joint to the coordinate system of joint The homogeneous transformation matrix between the coordinate system of joint
[0119] ; (11)
[0120] wherein, denotes the homogeneous transformation matrix between the coordinate system of joint and the coordinate system of joint , is the joint rotation angle, is the joint distance, is the link length, is the link twist angle.
[0121] S804, determining the kinematic model of the robot according to all the homogeneous transformation matrices; wherein the kinematic model is used to represent the relationship between the pose of the end effector and the joint rotation angle.
[0122] Specifically, according to the homogeneous transformation matrix between each adjacent joint coordinate system, the relationship between the homogeneous transformation matrices can be obtained, and then the kinematic model of the robot is determined, so as to utilize the kinematic model to represent the relationship between the pose of the end effector and the joint rotation angle. Specifically, the kinematic model is as follows:
[0123] ; (12)
[0124] It should be noted that the kinematic model is different for different models of robots. In one possible implementation, after the model of the robot is selected, the link length, the link twist angle, and the joint distance are known. Therefore, based on formula (12), the following can be further obtained:
[0125] ; (13)
[0126] ; (14)
[0127] ; (15)
[0128] Based on formulas (11), (12), (13), (14), and (15), the relationship between the pose of the robot end effector and the joint rotation angle can be obtained.
[0129] As described above, it can be understood that the inverse kinematics solving process is as follows:
[0130] The following matrix is obtained from formula (12):
[0131] ; (16)
[0132] The following matrix is obtained from formula (16):
[0133] (17)
[0134] wherein: is a shorthand for is a shorthand for is a shorthand for is a shorthand for
[0135] The right side of equation (16) gives the following matrix:
[0136] (18)
[0137] wherein: is a shorthand for is a shorthand for is a shorthand for is a shorthand for
[0138] Since (17) = (18), let each term be equal, the value of can be solved.
[0139] As described above, after obtaining the position information of the end effector of the robot, the rotation angle of each joint can be solved based on inverse kinematics to obtain the trajectory point of the robot corresponding to the compensated tangent point.
[0140] S107, controlling the robot according to the trajectory point of the robot corresponding to all compensated tangent points.
[0141] Specifically, after obtaining the trajectory point of the robot corresponding to all compensated tangent points, the robot can be controlled according to the trajectory point to instruct the robot to perform edge polishing to remove burrs on the aero-engine precision forged blade.
[0142] As described above, it can be understood that, first, in the present application, the polishing is controlled by the robot, which can ensure the accuracy of the polishing and reduce the influence of human factors on the processing quality; second, the spline curve of the three-dimensional model of the aero-engine precision forged blade on each section can be obtained by the section method, which can ensure the accuracy of the data; further, on this basis, the polynomial interpolation curve is determined by segmenting the top, bottom, leading edge and trailing edge, which can realize accurate positioning and improve the polishing precision; in addition, by compensating the tangent point, the errors caused by other factors can be ensured, which can further improve the polishing precision and quality; finally, the method provided by the present application can make the robot accurately polish along the complex trajectory through polynomial interpolation, tangent point compensation and inverse kinematics solving, which can process complex curves and edges and is suitable for aero-engine blades with complex shapes.
[0143] The robot control method provided by the embodiment firstly acquires the spline curve of the three-dimensional model of the aero-engine precision forged blade on each section by using the section method, further, for any one of the top, bottom, leading edge and trailing edge of the aero-engine precision forged blade, the initial target point to be processed on the section on the face is selected from the spline curve on each section, then for any one face, the polynomial interpolation curve of the section on the face can be constructed according to the initial target point, and for each cutting angle in the preset plurality of cutting angles, the cutting angle is taken as the corresponding cutting angle of the initial cutting equation of the abrasive belt in the pre-established abrasive belt grinding device to determine the actual cutting equation, further, when the polynomial interpolation curve of the section on the face and the actual cutting equation are obtained, the cutting point of the polynomial interpolation curve and the actual cutting equation can be determined according to the preset position relationship between the edge of the aero-engine precision forged blade and the abrasive belt, and the cutting point is compensated, and then the compensated cutting point is taken as the position information of the end effector of the robot, the trajectory point of the robot corresponding to the compensated cutting point is obtained by inverse kinematics according to the kinematics equation of the robot, and then the robot is controlled according to the finally obtained trajectory point of the robot corresponding to all the compensated cutting points to make the robot perform the polishing operation, in this way, first, the edge polishing of the blade is performed by the robot, which can improve the work efficiency and reduce the manual error; second, when the mathematical model of the blade edge is established, that is, the polynomial interpolation curve is established, the corresponding polynomial interpolation curve is established for the top, bottom, leading edge and trailing edge in sections, which can improve the accuracy, so that the cutting point is solved by the more accurate polynomial interpolation curve, the cutting point can be accurately found, the accurate positioning of the edge polishing position is realized, and the effect of accurately removing burrs is realized; third, after the cutting point is solved, the accurate positioning of the edge polishing position can be further improved by compensating the cutting point.
[0144] Figure 9 For the flowchart of the robot control method shown in another exemplary embodiment of the present application, please refer to Figure 9 The method provided by the embodiment, on the basis of the above-mentioned embodiment, the compensation of the cutting point comprises:
[0145] S901, calculate the first distance between the rotation center corresponding to the polynomial interpolation curve and the edge sharp point of the polynomial interpolation curve, and the second distance between the cutting point and the rotation center.
[0146] Specifically, please continue to refer to Figure 7 Since the curve corresponding to the actual cutting equation of the abrasive belt is tangent to the polynomial interpolation curve, k in formula (5) is also determined when the cutting angle is determined, and there is only one solution by combining formula (4) and formula (5), so the cutting point The coordinates of the cutting point are .
[0147] For further information, please refer to Figure 7 , the edge cusp on the polynomial interpolation curve is recorded as , the coordinates are ; The rotation center corresponding to the polynomial interpolation curve is recorded as , the coordinates are .
[0148] Furthermore, the first distance between the rotation center and the edge point can be calculated according to the following formula:
[0149] ; (19)
[0150] in, is the first distance between the rotation center corresponding to the polynomial interpolation curve and the edge cusp of the polynomial interpolation curve, The edge point, is the center of rotation.
[0151] Furthermore, the second distance between the tangent point and the rotation center can be calculated according to the following formula:
[0152] ; (20)
[0153] in, The cutting angle is The cutting point, The cutting angle is When , the second distance between the tangent point and the rotation center corresponding to the polynomial interpolation curve.
[0154] It should be noted that, as described above, the cutting angle is selected based on actual needs and is not limited here. For example, in one embodiment, the selected cutting angles may be 15°, 30°, and 45°. In this case, the second distance may be calculated according to the following formulas:
[0155] ; (20)
[0156] ; (twenty one)
[0157] ; (twenty two)
[0158] S902: Calculate the rotation angle between the first vector whose rotation center points to the cusp point and the second vector whose rotation center points to the tangent point.
[0159] Specifically, the first vector pointing from the center of rotation to the edge point is recorded as The second vector with the rotation center pointing to the tangent point is denoted as .
[0160] The rotation angle between the first vector and the second vector can be calculated according to the following formula:
[0161] ; (23)
[0162] wherein, is the cosine value of the rotation angle between the first vector and the second vector.
[0163] S903, compensating the tangent point according to the first distance, the second distance and the rotation angle.
[0164] It should be noted that, referring to the foregoing description, the polynomial interpolation curve is used to describe the edge of the aero-engine precision forged blade, the edge is a curve, in actual application, the abrasive belt is fixed, in order to ensure consistency and accuracy in the machining process, the tangent point needs to be compensated so that the distance from each tangent point to the rotation center is equal.
[0165] Optionally, in a possible implementation, the distance that each tangent point needs to be compensated can be calculated according to the second distance and the rotation angle, further, for each tangent point, the normal direction of the tangent point is determined, finally, the tangent point is moved along the normal direction according to the distance that the tangent point needs to be compensated, to obtain the compensated tangent point. The specific implementation principle and implementation process of calculating the distance that the tangent point needs to be compensated and determining the normal direction of the tangent point can be referred to the description in the related art, which will not be described here.
[0166] Similarly, extending to each cross section, in the sixth joint coordinate system, the coordinate of the edge point O is set as , the edge point O is the center of the edge, the distance between the edge tip point and one side of the abrasive belt is l1. The blade accumulation shaft is parallel to the Z axis, the rotation angle of the blade edge along the Z axis of the sixth axis is , and the rotation matrix is:
[0167] ; (24)
[0168] wherein, is the distance between the edge tip point and one side of the abrasive belt, is the rotation angle of the blade edge along the Z axis of the sixth axis.
[0169] Further, after the O point is rotated in the sixth joint coordinate system, the displacement of the O point transformation is:
[0170] ; (25)
[0171] wherein, is the displacement of the transformation at point O, is the displacement component of the x-axis displacement in the sixth joint coordinate system, is the displacement component of the y-axis displacement in the sixth joint coordinate system, is the displacement component of the z-axis displacement in the sixth joint coordinate system.
[0172] Furthermore, in order to ensure that the position of point O remains unchanged, the manipulator needs to rotate around point O. The motion homogeneous transformation matrix of the manipulator is:
[0173] ; (26)
[0174] in, The rotation angle around the Z axis is The rotation matrix of is the displacement of the transformation at point O.
[0175] The method provided in this embodiment provides a method for compensating the tangent point. Through this method, the tangent point can be compensated to improve accuracy.
[0176] Figure 10 This is a flow chart of the second embodiment of the robot control method provided by this application. Figure 10 The method provided in this embodiment, based on the above embodiment, may further include:
[0177] S1001. Establish a simulation model of the robot according to the joint parameters of the robot.
[0178] Specifically, the joint parameters shown in Table 1 can be input into modeling software to establish a simulation model. It should be noted that the modeling software can be selected according to actual needs and is not limited here. In one embodiment, MATLAB can be used to model the robot. During specific implementation, the joint parameters of the robot are input into MATLAB to obtain a simulation model of the corresponding robot.
[0179] S1002: Simulate the working range, velocity curve, and acceleration curve of the end effector using the simulation model.
[0180] After establishing the simulation model of the robot, the working range, velocity curve and acceleration curve of the robot end effector can be simulated by using the tools on the modeling platform, which can effectively verify the effectiveness and reliability of the control algorithm.
[0181] S1003 , performing forward kinematics simulation and inverse kinematics simulation using the simulation model to obtain simulation results.
[0182] Specifically, the simulation model is used to simulate the forward kinematics and the inverse kinematics of the robot, and simulation results are obtained.
[0183] S1004, guiding the movement of the robot according to the working range, the speed curve, the acceleration curve, and the simulation results.
[0184] Specifically, according to the working range, the speed curve, and the acceleration curve, and according to the specific situation of the simulation results, the robot is guided to perform the frosting operation on the edge sharp point of the aero-engine precision forged blade.
[0185] The method provided in the embodiment can simulate the working range, the speed curve, and the acceleration curve of the end effector through the simulation model of the robot, perform forward kinematics fitting and inverse kinematics simulation through the simulation model, and obtain simulation results. Therefore, in the control process of the robot, the movement of the robot can be guided according to the working range, the speed curve, the acceleration curve, and the simulation results. In this way, the accuracy and feasibility of the robot trajectory can be verified through the simulation model of the robot, and the efficiency, accuracy, and safety of the robot control can be significantly improved.
[0186] Corresponding to the foregoing embodiment of the robot control method, the present application also provides an embodiment of a robot control device.
[0187] The embodiment of the robot control device of the present application can be applied to a robot control device. The device embodiment can be realized by software, or by hardware or a combination of software and hardware. Taking software implementation as an example, as a logical device, it is formed by reading the corresponding computer program instructions in the non-volatile memory into the memory and running by the processor of the robot control device where it is located. From the hardware level, as shown in Figure 11 , it is a hardware structure diagram of the robot control device where the robot control device of the present application is located. In addition to the processor, the memory, the network interface, and the non-volatile memory shown in Figure 11 , the robot control device where the device is located in the embodiment can also include other hardware according to the actual function of the robot control device, and this will not be described again.
[0188] Figure 12 The structure diagram of the first embodiment of the robot control device provided in the present application is shown in Figure 12 The device provided in the embodiment includes a determination module 1210, a construction module 1220, a compensation module 1230, and a control module 1240; wherein,
[0189] The determination module 1210 is configured to obtain a spline curve of the three-dimensional model of the aero-engine precision forged blade on each section by using a section method.
[0190] The determination module 1210 is configured to select, from the spline curve of each section, an initial target point to be machined on a face of any one of a top, a bottom, a leading edge and a trailing edge of the aero-engine precision forged blade.
[0191] The construction module 1220 is configured to construct a polynomial interpolation curve on the face of the section according to the initial target point, wherein the polynomial interpolation curve sequentially passes through the initial target point, and the polynomial interpolation curve is used to describe an edge of the aero-engine precision forged blade on the face of the section.
[0192] The determination module 1210 is configured to, for each cutting angle in a plurality of preset cutting angles, determine an actual cutting equation by taking the cutting angle as a corresponding cutting angle of an initial cutting equation of a sand belt in a sand belt grinding device.
[0193] The determination module 1210 is configured to determine a tangent point of the polynomial interpolation curve and the actual cutting equation according to a preset position relationship between an edge of the aero-engine precision forged blade and the sand belt.
[0194] The compensation module 1230 is configured to compensate the tangent point, take a compensated tangent point as position information of an end effector of the robot, and obtain a trajectory point corresponding to the compensated tangent point of the robot by inverse kinematics according to a kinematics equation of the robot, wherein the trajectory point includes an angle of rotation of each joint.
[0195] The control module 1240 is configured to control the robot according to the trajectory point corresponding to all the compensated tangent points of the robot.
[0196] The device of the embodiment can be used to execute the method. Figure 1 The steps of the method embodiment are similar to the specific implementation principles and implementation processes, and thus will not be described herein.
[0197] Optionally, the compensation module 1230 is specifically configured to calculate a first distance between a rotation center corresponding to the polynomial interpolation curve and an edge sharp point of the polynomial interpolation curve, and a second distance between the tangent point and the rotation center.
[0198] The compensation module 1230 is further specifically configured to calculate a rotation angle between a first vector of the rotation center pointing to the sharp point and a second vector of the rotation center pointing to the tangent point.
[0199] The compensation module 1230 is further specifically configured to compensate the tangent point according to the first distance, the second distance, and the rotation angle to obtain a compensated tangent point.
[0200] Optionally, the construction module 1220 is specifically configured to:
[0201] Constructing an initial interpolation function; wherein the number of undetermined coefficients in the initial interpolation function is equal to the number of the initial target points;
[0202] According to the preset interpolation conditions and the position information of the initial target point, the undetermined coefficients in the initial interpolation function are solved to obtain the polynomial interpolation curve; wherein the interpolation conditions require that each initial target point satisfies the initial interpolation function.
[0203] Optionally, the determining module 1210 is further configured to:
[0204] Establishing coordinate systems for the various links and end effectors of the robot;
[0205] Constructing DH parameters between each pair of adjacent coordinate systems; wherein the DH parameters are used to describe the geometric and kinematic relationships between each joint and link;
[0206] Determining a homogeneous transformation matrix between adjacent coordinate systems based on the DH parameters;
[0207] The kinematic model of the robot is determined based on all homogeneous transformation matrices; wherein the kinematic model is used to characterize the relationship between the position and posture of the end effector and the rotation angles of each joint.
[0208] Optionally, the determining module 1210 is specifically configured to:
[0209] A set of planes perpendicular to the stacking axis of the aero-engine precision forged blades are sampled to intercept the three-dimensional model to obtain the multiple spline curves.
[0210] Optionally, the determining module 1210 is specifically configured to:
[0211] Establishing a simulation model of the robot according to the joint parameters of the robot;
[0212] Simulating the working range, velocity curve, and acceleration curve of the end effector through the simulation model;
[0213] Perform forward kinematics simulation and inverse kinematics simulation using the simulation model to obtain simulation results;
[0214] The movement process of the robot is guided according to the working range, the speed curve, the acceleration curve, and the simulation result.
[0215] Please continue to refer to Figure 11 The application further provides a robot control device, comprising a memory, a processor and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of any of the methods provided in the first aspect of the application when executing the program.
[0216] The application further provides a computer readable storage medium, which stores a computer program, wherein the program is executable on a processor to implement the steps of any of the methods provided in the application.
[0217] The implementation process of the functions and roles of each unit in the above device is specifically described in the implementation process of the corresponding steps in the above method, and will not be repeated here.
[0218] For the device embodiment, since it basically corresponds to the method embodiment, the related parts can be referred to the part of the method embodiment. The above described device embodiment is only illustrative, wherein the units described as separate components can be or can not be physically separated, and the components displayed as units can be or can not be physical units, that is, they can be located in one place or distributed on multiple network units. According to the actual needs, part or all of the modules can be selected to achieve the purpose of the application. Those skilled in the art can understand and implement without creative labor.
[0219] The above description is only the preferred embodiment of the application, and is not used to limit the application. Any modification, equivalent replacement, improvement, etc. made within the spirit and principle of the application shall be included in the protection scope of the application.
Claims
1. A robot control method, characterized in that: The method is used to control a robot in a robotic belt grinding system, wherein the robotic belt grinding system further includes a belt grinding device, and the robotic belt grinding system is used to polish the edge of an aero-engine precision-forged blade clamped on an end effector of the robot using the belt grinding device to remove burrs on the aero-engine precision-forged blade. The method comprises: A cross-section method is used to obtain a spline curve on each cross-section of the three-dimensional model of the aero-engine precision forged blade; For any one of the top, bottom, leading edge and trailing edge of the precision-forged aero-engine blade, an initial target point to be machined on the surface of the section is selected from a spline curve on each cross section; Constructing a polynomial interpolation curve of the cross section on the surface according to the initial target point; wherein the polynomial interpolation curve passes through the initial target point in sequence, and the polynomial interpolation curve is used to describe the edge of the aircraft engine precision forging blade on the surface of the cross section; For each of the plurality of preset cutting angles, the actual cutting equation is determined by using the cutting angle as the cutting angle corresponding to the pre-established initial cutting equation of the abrasive belt in the abrasive belt grinding device; Determining the tangent point between the polynomial interpolation curve and the actual cutting equation according to a preset positional relationship between the edge of the aero-engine precision forging blade and the abrasive belt; Compensating the tangent point, using the compensated tangent point as position information of the end effector of the robot, and obtaining a trajectory point of the robot corresponding to the compensated tangent point by inverse kinematics according to the kinematic equation of the robot; wherein the trajectory point includes the rotation angle of each joint; The robot is controlled according to its trajectory points corresponding to all compensated tangent points.
2. The method according to claim 1, characterized in that The compensating the tangent point includes: Calculating a first distance between a rotation center corresponding to the polynomial interpolation curve and an edge cusp of the polynomial interpolation curve, and a second distance between the tangent point and the rotation center; Calculating a rotation angle between a first vector whose rotation center points to the cusp point and a second vector whose rotation center points to the tangent point; The tangent point is compensated according to the first distance, the second distance, and the rotation angle to obtain a compensated tangent point.
3. The method according to claim 1, characterized in that Constructing a polynomial interpolation curve of the section on the surface according to the initial target point, including: Constructing an initial interpolation function; wherein the number of undetermined coefficients in the initial interpolation function is equal to the number of the initial target points; According to the preset interpolation conditions and the position information of the initial target point, the undetermined coefficients in the initial interpolation function are solved to obtain the polynomial interpolation curve; wherein the interpolation conditions require that each initial target point satisfies the initial interpolation function.
4. The method according to claim 1, wherein The dynamic model of the robot is established by the following method: Establishing coordinate systems for the various links and end effectors of the robot; Constructing DH parameters between each pair of adjacent coordinate systems; wherein the DH parameters are used to describe the geometric and kinematic relationships between each joint and link; Determining a homogeneous transformation matrix between adjacent coordinate systems based on the DH parameters; The kinematic model of the robot is determined based on all homogeneous transformation matrices; wherein the kinematic model is used to characterize the relationship between the position and posture of the end effector and the rotation angles of each joint.
5. The method according to claim 1, wherein The method of obtaining multiple spline curves of the three-dimensional model of the aero-engine precision forged blade by using the cross-section method includes: A set of planes perpendicular to the stacking axis of the aero-engine precision forged blades are sampled to intercept the three-dimensional model to obtain the multiple spline curves.
6. The method according to claim 1, characterized in that The method further comprises: Establishing a simulation model of the robot according to the joint parameters of the robot; Simulating the working range, velocity curve, and acceleration curve of the end effector through the simulation model; Perform forward kinematics simulation and inverse kinematics simulation using the simulation model to obtain simulation results; The movement process of the robot is guided according to the working range, the speed curve, the acceleration curve, and the simulation result.
7. A robot control device, characterized in that: The device is used to control a robot in a robotic belt grinding system, wherein the robotic belt grinding system further comprises a belt grinding device, and the robotic belt grinding system is used to polish the edge of an aero-engine precision-forged blade clamped on an end effector of the robot using the belt grinding device to remove burrs on the aero-engine precision-forged blade; the device comprises a determination module, a construction module, a compensation module, and a control module; wherein, The determining module is used to obtain the spline curve of each cross section of the three-dimensional model of the aero-engine precision forged blade by using a cross-section method; The determination module is configured to select, from the spline curve on each cross section, an initial target point to be machined on any one of the top, bottom, leading edge, and trailing edge surfaces of the precision forged aero-engine blade; The construction module is configured to construct a polynomial interpolation curve of the cross section on the surface according to the initial target point; wherein the polynomial interpolation curve sequentially passes through the initial target point and is used to describe the edge of the aero-engine precision forged blade on the surface of the cross section; The determining module is configured to determine, for each of a plurality of preset cutting angles, an actual cutting equation using the cutting angle as a cutting angle corresponding to a pre-established initial cutting equation for the abrasive belt in the abrasive belt grinding device; The determination module is configured to determine a tangent point between the polynomial interpolation curve and the actual cutting equation based on a preset positional relationship between an edge of an aero-engine precision forged blade and an abrasive belt; The compensation module is configured to compensate the tangent point, use the compensated tangent point as position information of the end effector of the robot, and obtain a trajectory point of the robot corresponding to the compensated tangent point by inverse kinematics according to the kinematic equation of the robot; wherein the trajectory point includes the rotation angle of each joint; The control module is used to control the robot according to the trajectory points of the robot corresponding to all compensated tangent points.
8. The device according to claim 7, characterized in that The compensation module is specifically configured to calculate a first distance between a rotation center corresponding to the polynomial interpolation curve and an edge cusp of the polynomial interpolation curve, and a second distance between the tangent point and the rotation center; The compensation module is further specifically configured to calculate a rotation angle between a first vector whose rotation center points to the cusp point and a second vector whose rotation center points to the tangent point; The compensation module is further specifically configured to compensate the tangent point according to the first distance, the second distance, and the rotation angle to obtain a compensated tangent point.
9. A robot control device, characterized in that: The method comprises a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor implements the steps of the method according to any one of claims 1 to 6 when executing the program.
10. A computer-readable storage medium having a computer program stored thereon, characterized in that: When the program is executed by a processor, the steps of the method according to any one of claims 1 to 6 are implemented.
Citation Information
Patent Citations
Aero-engine blade polishing method and system
CN115026706A
automatic AFTER-PROCESSING OF BLADES FOR ROTARY MACHINES
SE9300829D0