Plane cutting control method, device and storage medium

By installing a torque sensor at the end of the robotic arm and constructing a saw blade coordinate system, combined with a sliding window average filter and zero drift correction, the problem of cutting error of the robotic arm during total knee replacement surgery was solved, high-precision plane cutting control was achieved, and surgical safety was ensured.

CN115153734BActive Publication Date: 2025-10-14XIAMEN BOCHUANG ZHONGYUAN MEDICAL TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210981833.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-08-16
Publication Date
2025-10-14
Estimated Expiration
2042-08-16

AI Technical Summary

Technical Problem

In the existing technology, it is difficult for the robotic arm to accurately control the electric saw blade to cut within the set plane during total knee replacement surgery, resulting in errors between the cutting result and the set plane, which may endanger patient safety.

Method used

By installing a torque sensor at the end of the robotic arm, a saw blade coordinate system is constructed, the force is decomposed and the offset is calculated, and the target point of the saw blade is determined in combination with the safety boundary. A sliding window average filter and zero drift correction are used to ensure that the saw blade cuts within the safety boundary, and a computer-readable storage medium is used to store the control program.

Benefits of technology

It achieves high-precision plane cutting control, avoids the safety damage of the patient caused by the movement of the robotic arm, improves the flatness and precision of the cutting, and ensures the safety of the operation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115153734B_ABST
    Figure CN115153734B_ABST
Patent Text Reader

Abstract

The application provides a plane cutting control method and device and a storage medium, which comprises the following steps: positioning a mechanical arm to a preset cutting surface, and constructing a saw blade coordinate system; obtaining a force F of the saw blade; projecting the force F onto a plane of the saw blade; determining an offset; determining a coordinate transformation matrix T of a current point relative to an initial point a ; judging whether an offset point is within a preset safety boundary; if yes, determining the offset point as a target point to which the saw blade will go at a next moment; if no, determining an intersection of a line connecting the current point and the offset point and the safety boundary, and setting the intersection as the target point; and determining a spatial motion instruction to be sent to the mechanical arm in a current control period. By using the above technical scheme, the plane control precision can be improved, the mechanical arm motion can be ensured within the bone cutting plane, the influence of the force perpendicular to the plane on the bone cutting plane precision can be reduced, the mechanical arm motion can be ensured within the safety boundary, and the patient can be prevented from being injured by mistake.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of robotic arm control, and in particular to a plane cutting control method, device and storage medium. Background Art

[0002] During robotic total knee replacement surgery, the planar motion of the electric saw blade must be precisely controlled to ensure that the resected knee joint conforms to the selected prosthesis. In existing techniques, an electric oscillating saw is mounted at the end of a robotic arm. The arm is guided to the osteotomy plane and its range of motion is limited to a set plane. The surgeon manually controls the oscillating saw at the end of the arm to propel the saw blade within the set plane, completing the cut. Figure 1 This is an example of a robotic arm trolley in the prior art.

[0003] Because the robotic arm is controlled by a motor, even if the vertical range of motion is limited, when the person pushes the front end of the robotic arm, there will still be some vibration, and it cannot be truly limited to the cutting plane. Therefore, there will be a certain error between the cutting result and the set plane. This error may lead to inaccurate bone cutting during the cutting process.

[0004] When performing surgery using the method of an embodiment of the present invention, it is possible to ensure that the robotic arm moves within the osteotomy plane, reduce the impact of forces perpendicular to the plane on the accuracy of the osteotomy plane, and ensure that the robotic arm moves within a safe boundary to prevent damage to the ligaments. Summary of the Invention

[0005] In order to solve the above technical problems, embodiments of the present invention provide a plane cutting control method, device and storage medium, so that the swing saw at the end of the robotic arm can operate within the safe boundary of the cutting plane to avoid compromising the safety of the patient.

[0006] In order to achieve the above-mentioned object, on the one hand, a plane cutting control method is provided for controlling a swing saw blade mounted at the end of a robotic arm to cut on a plane, wherein a torque sensor is provided on the robotic arm, and the method is characterized by comprising:

[0007] S1, positioning the robotic arm to a pre-set cutting surface, with the saw blade at the initial point, and constructing a coordinate system with the initial point as the origin, with the horizontal and vertical cutting directions of the saw blade as the x-axis and y-axis, respectively, and the direction perpendicular to the cutting surface as the z-axis. Thus, a saw blade coordinate system is constructed, wherein the position of the saw blade is represented by the position of a predetermined point on the saw blade;

[0008] S2, the force F of the saw blade is obtained through the torque sensor. The force F is applied by the operator through the handle of the saw swinging the robot arm;

[0009] S3, projecting the force F onto the plane of the saw blade and decomposing it onto the x-axis and y-axis to obtain the force component Fx on the x-axis and the force component Fy on the y-axis;

[0010] S4, based on the obtained Fx and Fy, determine the offset of the saw blade from the current moment to the next moment. The offset is calculated by the following formula:

[0011] Δx=k·Fx, Δy=k·Fy, where k is preset and k>0;

[0012] S5, determine the coordinate transformation matrix T of the current point relative to the initial point according to the current point of the saw blade a ;

[0013] S6, determining the offset point of the saw blade from the current moment to the next moment based on the current point and the offset, and judging whether the offset point is within the safety boundary, which is pre-set according to the contour to be cut; if so, determining the offset point as the target point to be moved by the saw blade at the next moment; if not, determining the intersection of the line connecting the current point and the offset point with the safety boundary, and setting the intersection point as the target point to be moved by the saw blade at the next moment;

[0014] S7, determining the spatial motion command to be sent to the robot arm in the current control cycle. The spatial motion command is determined by the following formula:

[0015]

[0016] Among them, T t is the target posture of the end of the robotic arm, T start is the posture matrix of the end of the robot arm when the saw blade is at the initial point, T tcp is the coordinate transformation matrix of the saw blade relative to the end of the robotic arm, T c is the coordinate transformation matrix of the target point relative to the initial point, T b The coordinate transformation matrix of the target point relative to the current point.

[0017] Preferably, in the plane cutting control method, step S2 includes:

[0018] Convert the torque obtained by the torque sensor into a first force f;

[0019] Correcting the first force f to obtain a corrected force F;

[0020] Among them, the amendments include:

[0021] The first force f is corrected for zero drift using the following formula to obtain the force f';

[0022]

[0023] Among them, f min >0, is the pre-set threshold,

[0024] Let the force f' be F.

[0025] Preferably, the plane cutting control method, wherein in step S2, after obtaining f', further comprises:

[0026] The sliding window average filter is used to filter f' to obtain the force F of the saw blade.

[0027] Preferably, in the plane cutting control method, converting the torque obtained by the torque sensor into the first force f comprises:

[0028] The torque caused by the weight of the robot body, the weight of the end saw blade, the inertia force of the robot movement, and the friction force of the robot is filtered out of the original torque obtained by the torque sensor, and the filtered torque is converted into the first force f.

[0029] Preferably, the plane cutting control method, wherein:

[0030] After step S5, the following steps are also included:

[0031] T a Make corrections and change T a The rotation matrix in is set to the identity matrix, and T a The z-axis component of is set to zero, and the corrected coordinate transformation matrix T of the current point relative to the initial point is obtained. a ';

[0032] According to the initial point and T a 'Determine the corrected current point;

[0033] Step S6 is:

[0034] The offset point of the saw blade from the current moment to the next moment is determined based on the corrected current point and the offset amount, and it is judged whether the offset point is within the safety boundary, which is pre-set according to the contour to be cut; if so, the offset point is determined as the target point to be moved by the saw blade at the next moment; if not, the intersection point of the line connecting the corrected current point and the offset point and the safety boundary is determined, and the intersection point is set as the target point to be moved by the saw blade at the next moment;

[0035] In step S7, T b is the coordinate transformation matrix of the target point relative to the corrected current point, where T c =T a ′*T b .

[0036] Preferably, the planar cutting control method, wherein the method is applied in a total knee arthroplasty surgery, and the safety boundary is preset according to a tibial bone profile to be cut.

[0037] Preferably, the planar cutting control method, wherein the safety boundary is formed by presetting a plurality of boundary points and connecting adjacent boundary points.

[0038] In another aspect, a planar cutting control device is provided, which comprises a memory and a processor, the memory stores at least one program, and the at least one program is executed by the processor to implement any of the planar cutting control methods described above.

[0039] In yet another aspect, a computer readable storage medium is provided, wherein the storage medium stores at least one program, and the at least one program is executed by a processor to implement any of the planar cutting control methods described above.

[0040] In yet another aspect, a mechanical arm comprising the planar cutting control device described above is provided.

[0041] The above technical solutions have the following technical effects:

[0042] The technical solution of the embodiment of the present application provides a high-precision planar control method, which limits the target point to be reached by the saw blade at the next moment within the preset safety boundary, thereby avoiding damage to the safety of the patient during the cutting process.

[0043] In a further embodiment of the present application, by modifying the coordinate transformation matrix of the current point relative to the initial point, a modified current point is obtained, and the modified current point is used to determine the target point to be reached by the saw blade at the next moment, which can well avoid the problem that the movement of the saw blade is not in the same plane due to the shaking of the mechanical arm, thereby better controlling the cutting of the saw blade in a plane, improving the precision of planar control, and better ensuring the flatness of the cutting.

[0044] Applying the technical solution of the embodiment of the present application to the osteotomy surgery can ensure that the movement of the mechanical arm is within the osteotomy plane, reduce the influence of the force perpendicular to the plane on the precision of the osteotomy plane, ensure that the movement of the mechanical arm is within the safety boundary, and prevent damage to the ligament. BRIEF DESCRIPTION OF DRAWINGS

[0045] Figure 1 An example of a mechanical arm trolley of the prior art is shown;

[0046] Figure 2 A schematic diagram of planar movement of a swing saw in the planar cutting control method of an embodiment of the present application is shown;

[0047] Figure 3A force and decomposition schematic diagram of a swing saw blade in a planar cutting control method of an embodiment of the present application;

[0048] Figure 4 A safety boundary schematic diagram preset according to a tibia profile to be cut in a total knee replacement surgery;

[0049] Figure 5 A schematic diagram of determining a target point by using a safety boundary in a planar cutting control method of an embodiment of the present application;

[0050] Figure 6 A structure schematic diagram of a planar cutting control device of an embodiment of the present application. DETAILED DESCRIPTION

[0051] To further illustrate the embodiments, the present application provides accompanying drawings. These drawings are part of the disclosure of the present application, which mainly serve to illustrate the embodiments, and can be interpreted in conjunction with the related description of the specification to explain the operating principle of the embodiments. Those of ordinary skill in the art should be able to understand other possible implementations and advantages of the present application in conjunction with these. The components in the drawings are not drawn to scale, and similar component symbols are generally used to represent similar components.

[0052] The present application will be further illustrated in conjunction with the accompanying drawings and specific embodiments.

[0053] The inventor of the present application realizes that in total knee replacement surgery, in order to prevent the end saw blade from cutting into the cross ligament and other places when the mechanical arm moves in a plane, a safety boundary needs to be set to avoid damage to the patient's safety during operation. Therefore, when the mechanical arm moves in the set plane, in addition to setting its activity degree in the vertical direction of the plane, it also needs to be limited within the safety boundary.

[0054] Embodiment one:

[0055] Figure 2 A planar motion schematic diagram of a swing saw in a planar cutting control method of an embodiment of the present application. The planar cutting control method of an embodiment of the present application is used to control the swing saw blade installed at the end of the mechanical arm to cut in a plane. A torque sensor is arranged on the mechanical arm. The method comprises the following steps:

[0056] S1, position the mechanical arm to a pre-set cutting surface, and the saw blade is located at an initial point. A coordinate system is constructed with the initial point as the origin. The x-axis and y-axis are respectively the horizontal and vertical cutting directions of the saw blade, and the z-axis is the direction perpendicular to the cutting surface and upward. Thus, the saw blade coordinate system is constructed, wherein the position of the saw blade is represented by the position of a pre-determined point on the saw blade;

[0057] S2, obtain the force F of the saw blade by the torque sensor, which is applied by the operator through the handle of the mechanical arm swing saw;Figure 2 An example of a force point at the handle is shown in the middle;

[0058] S3, project the force F to the plane of the saw blade and decompose it to the x-axis and y-axis, to obtain the force component Fx on the x-axis and the force component Fy on the y-axis;

[0059] S4, according to the obtained Fx and Fy, determine the offset of the saw blade from the current time to the next time, the offset is calculated by the following formula:

[0060] Δx=k·Fx, Δy=k·Fy, where k is pre-set, and k>0;

[0061] S5, according to the current point where the saw blade is currently located, determine the coordinate transformation matrix T of the current point relative to the initial point a ;

[0062] S6, according to the current point and the offset, determine the offset point of the saw blade from the current time to the next time, and judge whether the offset point is within the safety boundary, the safety boundary is pre-set according to the contour to be cut; if yes, determine the offset point as the target point to be reached by the saw blade at the next time; if not, determine the intersection of the line connecting the current point and the offset point and the safety boundary, and set the intersection as the target point to be reached by the saw blade at the next time;

[0063] S7, determine the spatial motion instruction to be sent to the robot arm in the current control period, the spatial motion instruction is determined by the following formula:

[0064]

[0065] Where, T t is the target pose of the robot arm end, T start is the pose matrix of the saw blade at the initial point, T tcp is the coordinate transformation matrix of the saw blade relative to the robot arm end, T c is the coordinate transformation matrix of the target point relative to the initial point, T b is the coordinate transformation matrix of the target point relative to the current point.

[0066] As Figure 2 , an example of the initial point, the current point and the offset point is shown, and a saw blade coordinate system is established with the initial point as the origin. As Figure 2Similar to the coordinate system at the initial point, the coordinate system of the saw blade at the current point and the offset point is constructed with the current point and the offset point as the origin. In a specific example, the predetermined point on the saw blade used to position the mechanical arm is the midpoint of the saw blade. The initial point is the positioning origin of the mechanical arm, and the mechanical arm is positioned to this point before starting the plane control. The current point is the position of the mechanical arm at the current time, and the offset point is the position calculated according to the offset amount of the swing saw, which is the position to which the mechanical arm and the swing saw blade on the mechanical arm will go to at the next time. After determining whether the offset point is within the safety boundary, it is determined whether the theoretically calculated offset point can be used as the target point to be reached at the next time. Thus, the operation of the swing saw blade mounted at the end of the mechanical arm is limited within the safety boundary.

[0067] In another embodiment of the present application, the force F obtained in step S2 is obtained by correcting and converting the torque obtained by the torque sensor into a force, and then correcting the converted force. The correction of the torque includes filtering the torque generated by forces other than the force applied to the handle, such as the weight of the mechanical arm body, the weight of the end saw blade, the inertial force of the mechanical arm movement, the friction of the mechanical arm, and the like. For example, the filtering can be achieved by filtering the torque generated by these other external forces. Depending on the type of the mechanical arm, the torque is obtained in different ways, and the model and means used in the correction are different. The content of this part is prior art, and will not be described here. The correction of the force can include zero drift correction and / or filtering correction using a sliding window average filter.

[0068] Preferably, in another embodiment, after step S5, further comprising: correcting T a , setting the rotation matrix in T a to a unit matrix, and setting the z-axis component of T a to zero, to obtain a corrected coordinate transformation matrix T a ' of the current point relative to the initial point; determining a corrected current point according to the initial point and T a '; step S6 is: determining the offset point of the saw blade from the current time to the next time according to the corrected current point and the offset amount, and determining whether the offset point is within the safety boundary, which is predetermined according to the profile to be cut; if yes, the offset point is determined as the target point to be reached by the saw blade at the next time; if no, the intersection of the line connecting the corrected current point and the offset point and the safety boundary is determined, and the intersection is set as the target point to be reached by the saw blade at the next time; in step S7, T b is the coordinate transformation matrix of the target point relative to the corrected current point, wherein T c =T a ' *T b .

[0069] Example Two

[0070] The planar cutting control method of another embodiment of the present application comprises the following steps:

[0071] 1) The mechanical arm is first accurately positioned to a pre-set cutting plane such as a bone cutting plane, as shown in FIG. 1, defining the position of the swing saw at this time as an initial point, and the setting method of the initial point is the same as that of the first embodiment, and the mechanical arm will drive the saw blade to move in the plane. Figure 2

[0072] 2) The torque data of the mechanical arm joint is obtained through the torque sensor provided on the joint of the mechanical arm. This torque includes the torque generated by the external force applied by the operator through the swing saw handle, the inertia force generated by the weight of the mechanical arm body, the weight of the end tool such as the swing saw, and the inertia such as acceleration during movement, and the friction force of the mechanical arm. However, in the design of the control system, only the external force input through the handle is usually taken as the input item of the control system, so it is necessary to process and separate the torque part caused by the external force, and then map the external force acting on the joint to the tool coordinate system established on the tool such as the saw blade through forward kinematics, so as to calculate the external force f acting on the tool coordinate system. Through this step, the external force that may cause errors other than the force applied by the operator such as the doctor on the handle of the swing saw is filtered out. The step of filtering out other external forces is the same as described above, mainly using the prior art method, which will not be described here.

[0073] For example, if a KUKA robot is used, it has 7 torque sensors, through which the force applied by the operator on the end of the mechanical arm can be obtained.

[0074] 3) Since the torque sensor has zero drift phenomenon, the external force data f may not be zero in the absence of external force, so a suitable threshold f min is set to ensure that there is indeed an external force at the end of the mechanical arm at this time, that is, the force is corrected through the following formula:

[0075]

[0076] Where f min > 0 represents the set correction threshold.

[0077] 4) In addition, in actual application, the obtained external force data f has a large amplitude fluctuation, and if it is directly introduced into the controller, it is easy to produce unstable situation, so the obtained data needs to be filtered first. The sliding window average filter is a low-pass FIR filter, which has good filtering effect on processing accidental high-frequency oscillation data stream.

[0078] ​The sliding window average filter requires a set sliding window length and sets the initial value of the data within the sliding window to 0. When the external force data of the robot arm is acquired, the data is queued from one end of the sliding window, and the data at the other end is lost, so the total length of the sliding window remains unchanged. At each moment, a filtered value is output, which is equal to the average of all values ​​in the current sliding window. It can be expressed mathematically as follows:

[0079]

[0080] Where F represents the output data, f i ′ represents the i-th data value at the current moment, and N represents the sliding window length. The larger the length, the smoother the data change and the longer the controller responds to force changes.

[0081] 5) In order to realize the movement of the swing saw in the plane where the saw blade is located, it is necessary to establish the tool coordinate system such as Figure 2 The saw blade coordinate system shown projects the external force on the end of the robot arm onto the saw blade plane and decomposes it into the x-axis and y-axis, as shown in Figure 3 As shown, the components Fx and Fy of the force F on the x-axis and y-axis are obtained.

[0082] 6) Based on the obtained Fx and Fy, the offset of the robotic arm, i.e., the saw blade on the robotic arm, relative to the current moment, i.e., the current point, at the next moment is calculated. This offset represents the offset of the robotic arm at the next moment relative to the current moment. The offset is calculated according to Δx = k·Fx, Δy = k·Fy, where k > 0. The value of k is selected based on the specific application. Preferably, for millimeter-level applications, k can be a number between 0 and 1. Δx and Δy represent the offset on the x-axis and y-axis, respectively.

[0083] 7) According to the positions of the initial point and the current point of the saw blade, calculate the coordinate transformation matrix T of the current point relative to the initial point a Those skilled in the art know that the coordinate transformation matrix is ​​used to represent the positional relationship between two points in space, including the rotation amount and the direct transformation relationship between the two coordinate systems; the coordinate transformation matrix is ​​a 4x4 matrix, which contains a 3x3 rotation matrix, a 3x1 position translation matrix and a (0,0,0,1) vector. Since errors are introduced during the movement of the robotic arm, T a The rotation matrix is ​​not a unit matrix and the z-axis component is not zero. It is necessary to a The correction method is to change T a The rotation matrix is ​​set to the identity matrix, and T a The z-axis component of T is set to zero. a By making the above corrections, we can get the new coordinate transformation matrix T a ′, using the corrected T a' to calculate the saw blade position at the next moment, which can effectively improve the plane control accuracy.

[0084] 8) According to the initial point and the revised T a ' to calculate the corrected current point. This is because when the robot arm moves from the initial point to the current point, the current point may have deviated from the current cutting plane due to deviation. The corrected current point obtained by the above correction is a virtual point on the same cutting plane as the initial point. Subsequent use of this corrected current point to calculate the robot arm's offset point at the next moment can bring the offset point back to the same cutting plane, avoiding further cutting errors.

[0085] 9) Use the corrected current point and the above offset to calculate the position of the saw blade at the next moment, that is, the offset point.

[0086] Then, it is necessary to determine whether the offset point is within the preset safety boundary. The safety boundary is generally set before the operation. The setting method can be to pre-set multiple boundary points and connect adjacent boundary points to form a line. Specifically, several points are selected on the osteotomy surface and connected according to the safety requirements to form a boundary, such as Figure 4 shown. Figure 4 When the method of this embodiment is applied in total knee replacement surgery, a safety margin is pre-set according to the contour of the tibia to be cut to avoid the ligaments to be included.

[0087] When the offset point is determined to be within the safety boundary, the position of the saw blade at the next moment, that is, the position of the target point, is the position of the offset point. At this time, the offset point is set as the target point, and the rotation offset matrix T from the target point to the corrected current point is b That is, the coordinate transformation matrix of the offset point relative to the corrected current point; when it is determined that the offset point is outside the safety boundary, such as Figure 5 As shown, first calculate the intersection of the corrected current point and the offset point with the safety boundary, set the intersection as the target point, and then the rotation offset matrix T from the target point to the corrected current point b is the coordinate transformation matrix of the intersection point relative to the corrected current point. b It can ensure that the saw blade moves within the safety boundary.

[0088] Figure 5 The safety boundary shown in FIG is formed by connecting the boundary points. In other embodiments, the safety boundary can be a line formed or fitted in other ways, such as a line of any shape that can be expressed by a mathematical formula.

[0089] 10) Determine the spatial motion command to be sent to the robot arm in the current control cycle. The command is calculated using the following formula:

[0090] T t =T start*T tcp *T c *T tcp -1

[0091] Among them, T c =T a ′*T b , T c is the coordinate transformation matrix of the target point that the saw blade will go to next moment relative to the initial point, where T t represents the target posture of the end of the robotic arm, T start Represents the posture matrix of the end arm when the saw blade is in the initial position, T tcp Represents the coordinate transformation matrix of the saw blade relative to the end of the robotic arm.

[0092] The obtained T t The planar motion control of the robot arm can be achieved by updating the data to the robot arm within each cycle time, i.e., each control period. Preferably, the control period is pre-set to 25ms. Other control periods can be set according to the actual application.

[0093] Utilizing the high-precision plane control method within the safety boundary of the embodiment of the present invention, the operator can manually guide the robotic arm to perform saw blade cutting movements within the plane, assisting in the completion of total knee surgery with greater safety. The method of the embodiment of the present invention is based on the torque sensor already present in the existing robotic arm body, eliminating the need for additional torque sensors. Secondly, a sliding window average filter is introduced to reduce the risk of severe vibration of the robotic arm during movement. A force threshold setting is introduced to prevent instability of the robotic arm in the absence of external force. Errors generated during the movement of the robotic arm are corrected to improve the accuracy of plane motion. At the same time, a safety boundary is set to effectively ensure the safety of the robotic arm and the patient.

[0094] Example 3:

[0095] The present invention also provides a plane cutting control device, such as Figure 6 As shown, the device includes a processor 601, a memory 602, a bus 603, and a computer program stored in the memory 602 and executable on the processor 601. The processor 601 includes one or more processing cores. The memory 602 is connected to the processor 601 via the bus 603. The memory 602 is used to store program instructions. When the processor executes the computer program, the steps in the above-mentioned method embodiment of the first embodiment of the present invention are implemented.

[0096] Furthermore, as an executable solution, the plane cutting control device can be a computer unit, which can be a computing device such as a desktop computer, a notebook, a handheld computer, and a cloud server. The computer unit may include, but is not limited to, a processor and a memory. Those skilled in the art will understand that the composition structure of the above-mentioned computer unit is only an example of a computer unit and does not constitute a limitation on the computer unit. It can include more or fewer components than the above-mentioned components, or a combination of certain components, or different components. For example, the computer unit may also include input and output devices, network access devices, buses, etc., which are not limited in the embodiments of the present invention.

[0097] Furthermore, as an executable solution, the processor may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. The general-purpose processor may be a microprocessor or any conventional processor, etc. The processor is the control center of the computer unit and connects various parts of the entire computer unit using various interfaces and lines.

[0098] The memory can be used to store the computer programs and / or modules, and the processor implements the various functions of the computer unit by running or executing the computer programs and / or modules stored in the memory, and calling the data stored in the memory. The memory can mainly include a program storage area and a data storage area, wherein the program storage area can store an operating system and at least one application required for a function; the data storage area can store data created based on the use of the mobile phone, etc. In addition, the memory can include a high-speed random access memory, and can also include a non-volatile memory, such as a hard disk, a memory, a plug-in hard disk, a smart memory card (Smart Media Card, SMC), a secure digital (Secure Digital, SD) card, a flash card (Flash Card), at least one disk storage device, a flash memory device, or other volatile solid-state storage device.

[0099] Example 4:

[0100] The application further provides a computer readable storage medium, which stores a computer program, and the computer program is executed by a processor to implement the steps of the method of the above-mentioned embodiments of the application.

[0101] The modules / units integrated with the computer unit, if realized in the form of software function units and sold or used as independent products, can be stored in a computer readable storage medium. Based on such understanding, the application can also be implemented by a computer program to instruct related hardware to complete all or part of the processes of the above-mentioned embodiments, and the computer program can be stored in a computer readable storage medium. When the computer program is executed by a processor, the steps of each method embodiment can be implemented. The computer program includes computer program code, which can be in the form of source code, object code, executable files or some intermediate forms, etc. The computer readable medium can include any entity or device capable of carrying the computer program code, recording medium, U disk, mobile hard disk, magnetic disk, optical disk, computer memory, read-only memory (ROM), random access memory (RAM) and software distribution medium, etc. It should be noted that the content included in the computer readable medium can be appropriately increased or decreased according to the requirements of legislation and patent practice in the jurisdiction.

[0102] Although the application is specifically shown and described in connection with the preferred embodiments, those skilled in the art should understand that various changes in form and details can be made to the application without departing from the spirit and scope of the application as defined in the appended claims.

Claims

1. A plane cutting control method for controlling a swing saw blade mounted at the end of a robotic arm to cut on a plane, wherein a torque sensor is provided on the robotic arm, characterized in that: include: S1, positioning the robotic arm at a predetermined cutting surface, with the saw blade at an initial point, and constructing a coordinate system with the initial point as the origin, with the horizontal and vertical cutting directions of the saw blade as the x-axis and y-axis, respectively, and the upward direction perpendicular to the cutting surface as the z-axis, thereby constructing a saw blade coordinate system, wherein the position of the saw blade is represented by the position of a predetermined point on the saw blade; S2, obtaining the force F of the saw blade through the torque sensor, wherein the force F is applied by the operator through the handle of the saw swinging arm; S3, projecting the force F onto the plane of the saw blade and decomposing it onto the x-axis and the y-axis to obtain a force component Fx on the x-axis and a force component Fy on the y-axis; S4, determining the offset of the saw blade from the current moment to the next moment based on the obtained Fx and Fy, wherein the offset is calculated by the following formula: Δx=k·Fx, Δy=k·Fy, where k is preset and k>0; S5, determining a coordinate transformation matrix Ta of the current point relative to the initial point according to the current point where the saw blade is currently located; S6, determining an offset point of the saw blade from the current moment to the next moment based on the current point and the offset, and judging whether the offset point is within a safety boundary, wherein the safety boundary is pre-set according to the contour to be cut; If so, the offset point is determined as the target point to be reached by the saw blade at the next moment; If not, determining the intersection of the line connecting the current point and the offset point and the safety boundary, and setting the intersection as the target point to be reached by the saw blade at the next moment; S7, determining the spatial motion instruction to be sent to the robotic arm in the current control cycle, wherein the spatial motion instruction is determined by the following formula: Among them, T t is the target posture of the end of the robotic arm, T start is the posture matrix of the end of the robot arm when the saw blade is at the initial point, T tcp is the coordinate transformation matrix of the saw blade relative to the end of the robotic arm, T c is the coordinate transformation matrix of the target point relative to the initial point, T b is the coordinate transformation matrix of the target point relative to the current point.

2. The plane cutting control method according to claim 1, characterized in that: The step S2 comprises: Converting the torque obtained by the torque sensor into a first force f; Correcting the first force f to obtain the corrected force F; The amendments include: The first force f is corrected for zero drift using the following formula to obtain the force f'; Among them, f min >0, is the pre-set threshold, The force f' is referred to as F.

3. The plane cutting control method according to claim 2, characterized in that: In the step S2, after obtaining the f', the following steps are further included: The f' is filtered using a sliding window average filter to obtain the force F of the saw blade.

4. The plane cutting control method according to claim 2, characterized in that: The converting the torque obtained by the torque sensor into a first force f comprises: The torque caused by the weight of the robot body, the weight of the end saw blade, the inertia force of the robot movement, and the friction force of the robot is filtered out of the original torque obtained by the torque sensor, and the filtered torque is converted into the first force f.

5. The plane cutting control method according to any one of claims 1 to 4, characterized in that: After step S5, the following steps are further included: For the T a Make corrections and change the T a The rotation matrix in is set to the identity matrix, and the T a The z-axis component of is set to zero, and the corrected coordinate transformation matrix T of the current point relative to the initial point is obtained. a '; According to the initial point and the T a 'Determine the corrected current point; The step S6 is: Determining an offset point of the saw blade from the current moment to the next moment based on the corrected current point and the offset amount, and judging whether the offset point is within a safety boundary, the safety boundary being pre-set based on the contour to be cut; if so, determining the offset point as a target point to be moved to by the saw blade at the next moment; if not, determining an intersection point of a line connecting the corrected current point and the offset point with the safety boundary, and setting the intersection point as the target point to be moved to by the saw blade at the next moment; In step S7, the T b is the coordinate transformation matrix of the target point relative to the corrected current point, where T c =T a ′*T b .

6. The plane cutting control method according to claim 1, characterized in that: The method is applied in total knee replacement surgery, and the safety margin is pre-set according to the contour of the tibia to be cut.

7. The plane cutting control method according to claim 1, characterized in that: The safety boundary is formed by presetting a plurality of boundary points and connecting adjacent boundary points.

8. A plane cutting control device, characterized in that: The method comprises a memory and a processor, wherein the memory stores at least one program, and the at least one program is executed by the processor to implement the plane cutting control method according to any one of claims 1 to 7.

9. A computer-readable storage medium, characterized in that The storage medium stores at least one program, and the at least one program is executed by a processor to implement the plane cutting control method according to any one of claims 1 to 7.

10. A robotic arm comprising the plane cutting control device according to claim 8.

Citation Information

Patent Citations

  • Robot safety boundary interaction method and device, electronic equipment and storage medium

    CN112998863A

  • Robot mechanical arm control method and system

    CN113907889A