End tool motion guidance method, system, and surgical robot
By detecting the current position and distance stiffness function of the end effector, a feedback force is output to guide the position and direction of movement of the end effector, solving the problem of inaccurate positioning in existing guided surgical robots and improving the speed and safety of surgery.
Patent Information
- Application Number
- CN202210665507.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2021-07-09
- Publication Date
- 2026-02-06
- Estimated Expiration
- 2041-07-09
AI Technical Summary
Existing guided surgical robots cannot provide users with timely and effective position information of the end effector, resulting in a poor subjective experience and an inability to accurately guide the movement direction of the end effector.
By detecting the current position of the end effector, its corresponding sub-constraint space and its distance stiffness function are determined, and a feedback force towards the desired path is output. Nested sub-constraint spaces and different distance stiffness functions are used to guide the position and direction of movement of the end effector.
It enables accurate positioning of the end-effector and precise guidance of its movement, improving the speed, safety, and accuracy of orthopedic surgery.
Smart Images

Figure CN114869478B_ABST
Abstract
Description
[0001] This application is a divisional application of the Chinese patent application with the application date of July 9, 2021, the application number of 202110778776.6, and the invention name of "end tool motion guiding method, system and surgical robot". TECHNICAL FIELD
[0002] Embodiments of the present application relate to the field of medical equipment, in particular to an end tool motion guiding method, system and surgical robot. BACKGROUND
[0003] The existing auxiliary system for bone surgery includes fully autonomous surgical robots and guided surgical robots. The former is dominated by robots and assisted by doctors. Since the participation of doctors is low, it is difficult to guarantee the success rate of surgery. The latter is dominated by doctors, which improves the participation of doctors in surgery, effectively prevents the occurrence of surgical accidents, and guarantees the success rate of surgery.
[0004] However, the existing guided surgical robot can only complete the guidance of the motion direction of the end tool, and cannot make the user obtain the effective position information of the end tool in time, the subjective perception experience is poor, and the guidance of the motion direction of the end tool cannot be accurately performed. SUMMARY
[0005] Embodiments of the present application provide an end tool motion guiding method, system and surgical robot, which solves the problem that the existing guided surgical robot cannot make the user obtain the effective position information of the end tool in time.
[0006] In a first aspect, embodiments of the present application provide an end tool motion guiding method, which is executed by a processor of a surgical robot, and includes:
[0007] detecting a current position of an end tool, and if the current position of the end tool is not on an expected path of a constraint space, determining a sub-constraint space corresponding to the current position of the end tool and a distance stiffness function corresponding to the sub-constraint space, wherein a central axis of the constraint space is the expected path of the end tool, and the constraint space includes at least two sub-constraint spaces nested together;
[0008] outputting a first feedback force toward the expected path to the end tool according to the current position and the distance stiffness function corresponding to the current position.
[0009] In a second aspect, embodiments of the present application also provide a surgical robot, which includes:
[0010] a mechanical arm, configured to drive an end tool to move under an external force, and output a feedback force to the end tool;
[0011] A navigation device is configured to obtain a current position of an end tool in a constraint space, the constraint space has a central axis as a desired path of the end tool, and the constraint space comprises at least two nested sub-constraint spaces;
[0012] A processor is configured to detect, by the navigation device, a current position of the end tool, determine a sub-constraint space corresponding to the current position of the end tool and a distance stiffness function corresponding to the sub-constraint space if the current position of the end tool is not on the desired path of the constraint space, and output, by the mechanical arm, a first feedback force towards the desired path to the end tool according to the current position and the distance stiffness function corresponding to the current position.
[0013] In a third aspect, an embodiment of the present application further provides an end tool motion guiding system, which comprises a processor and a memory, the memory stores a computer program, and the processor is configured to execute the end tool motion guiding method according to any of the embodiments when executing the computer program.
[0014] The end tool motion guiding method provided by the embodiment of the present application is configured to determine a sub-constraint space corresponding to a current position of an end tool and a distance stiffness function corresponding to the sub-constraint space if the end tool is not currently on a desired path of a constraint space, output a first feedback force towards the desired path to the end tool according to the current position and the distance stiffness function corresponding to the current position, and because the constraint space comprises at least two nested sub-constraint spaces and different sub-constraint spaces correspond to different distance stiffness functions, the end tool receives different forms of the first feedback force in different sub-constraint spaces, so that a user can determine a sub-constraint space in which the end tool is currently located, i.e., a position range of the end tool in the constraint space, according to the change form of the first feedback force, and the position of the end tool is guided; the user can also determine a target moving direction of the end tool according to the direction of the first feedback force, and the moving direction of the end tool is guided, and the moving path of the end tool is optimized through the position guiding and the moving direction guiding of the end tool, so that the speed, safety and accuracy of orthopedic surgery are improved. BRIEF DESCRIPTION OF DRAWINGS
[0015] In order to more clearly illustrate the technical solutions in the embodiments of the present application, the drawings needed in the embodiment description will be briefly introduced. Obviously, the drawings in the following description are some embodiments of the present application, and other drawings can also be obtained by those skilled in the art without creative labor.
[0016] Figure 1 is a flowchart of the end tool motion guiding method provided by an embodiment of the present application;
[0017] Figure 2 is a structural diagram of a surgical robot based on an embodiment of the present application;
[0018] Figure 3 is a constraint space diagram provided by an embodiment of the present application;
[0019] Figure 4 is a diagram of a distance stiffness function provided by an embodiment of the present application;
[0020] Figure 5 is a flowchart of a motion guiding method of an end tool provided by another embodiment of the present application;
[0021] Figure 6 is a diagram of a rotation stiffness function provided by another embodiment of the present application;
[0022] Figure 7 is a flowchart of a motion guiding method of an end tool provided by another embodiment of the present application;
[0023] Figure 8 is a diagram of a damping function provided by another embodiment of the present application;
[0024] Figure 9 is a structural diagram of a motion guiding device of an end tool provided by another embodiment of the present application;
[0025] Figure 10 is a structural diagram of a surgical robot provided by another embodiment of the present application;
[0026] Figure 11 is a structural diagram of a surgical robot provided by another embodiment of the present application. DETAILED DESCRIPTION
[0027] In order to make the objects, technical solutions and advantages of the present application clearer, the technical solutions of the present application will be described clearly and completely below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only some of the embodiments of the present application, but not all the embodiments. Based on the embodiments in the present application, all other embodiments obtained by those skilled in the art without creative work fall within the scope of protection of the present application.
[0028] Figure 1 is a flowchart of a motion guiding method of an end tool provided by an embodiment of the present application. The technical solution of the present embodiment is applicable to the case of guiding the motion of an end tool in a constraint space. The method can be executed by a motion guiding device of an end tool provided by an embodiment of the present application, which can be realized in the form of software and / or hardware and configured in a processor of a surgical robot for application. Wherein, as shown in Figure 2As shown, the surgical robot comprises a mechanical arm 11 for carrying an end tool, a navigation device 12 for acquiring a current position of the end tool in a constraint space, and a processor 13 connecting the mechanical arm 11 and the navigation device 12.
[0029] The method specifically comprises the following steps:
[0030] S101, detecting a current position of an end tool, and if the end tool is not currently on a desired path of a constraint space, determining a sub-constraint space corresponding to the current position of the end tool and a distance stiffness function corresponding to the sub-constraint space, wherein a central axis of the constraint space is the desired path of the end tool, and the constraint space comprises at least two sub-constraint spaces nested together.
[0031] Wherein the end tool is a surgical tool in an orthopedic surgery or a prosthesis for replacing a lesion, and the surgical tool can be a file for cleaning a lesion.
[0032] In one embodiment, a feature point for position tracking is arranged on the end tool, and the position of the feature point is taken as the position of the end tool.
[0033] Wherein the constraint space is a surgical opening area, which can be conical (see Figure 3 ), bowl-shaped or columnar. However, regardless of its shape, the central axis thereof is the desired path of the end tool, i.e. the movement path of the end tool as desired by a user. It can be understood that the target position of the end tool, i.e. the surgical position of the end tool, is located at the end of the desired path.
[0034] The constraint space in the embodiment comprises at least two sub-constraint spaces nested in the same direction, and the central axes of each sub-constraint space coincide. Wherein the determination method of the sub-constraint space comprises: according to a preset proportion of the effective radius range of each sub-constraint space, dividing the constraint space into at least two layers from inside to outside, and taking each layer as a sub-constraint space. As Figure 3 shown, the constraint space is divided into three layers, i.e. the constraint space is divided into three sub-constraint spaces. The three sub-constraint spaces from inside to outside are a free constraint space 21, a buffer constraint space 22 and a boundary constraint space 23.
[0035] In the embodiment, different distance stiffness functions are configured for different sub-constraint spaces, wherein the distance stiffness function is a constant function or an increasing function. The sub-constraint space with the constant function and the sub-constraint space with the increasing function are arranged alternately. Moreover, the distance stiffness values of the distance stiffness functions corresponding to adjacent sub-constraint spaces are the same at the common boundary.
[0036] In one embodiment, as Figure 4 shown, the sub-constraint space located at the center of the constraint space, i.e.Figure 3 The distance stiffness function corresponding to the free constraint space 21 in the middle of the constraint space is a first constant function; the sub-constraint space located in the middle layer of the constraint space, i.e. Figure 3 The distance stiffness function corresponding to the buffer constraint space 22 in the middle of the constraint space is a monotonically increasing quadratic curve; the sub-constraint space located in the outermost layer of the constraint space, i.e. Figure 3 The distance stiffness function corresponding to the boundary constraint space 23 in the middle of the constraint space is a second constant function. Figure 4 It is also shown that the distance stiffness values corresponding to adjacent sub-constraint spaces at a common boundary are the same.
[0037] S102, according to the current position and the distance stiffness function corresponding to the current position, outputting a first feedback force towards the desired path to the end tool.
[0038] After determining the current position of the end tool and the distance stiffness function corresponding to the current position, the distance stiffness value corresponding to the current position is determined, and the product of the target distance corresponding to the current position and the distance stiffness value is taken as the absolute value of the first feedback force, and a first feedback force towards the desired path is output to the end tool. Preferably, the direction of the first feedback force is perpendicular to and towards the desired path.
[0039] In one embodiment, after determining the current position of the end tool and the distance stiffness function corresponding to the current position, the target distance between the current position and the desired path is determined, and the target distance equivalent corresponding to the target distance is determined; according to the target distance equivalent and the distance stiffness function corresponding to the current position, the distance stiffness value corresponding to the current position is determined; the absolute value of the first feedback force is determined according to the target distance equivalent and the distance stiffness value, and a first feedback force towards the desired path is output to the end tool.
[0040] Wherein, the introduction of the target distance equivalent can make the first feedback force received by the end tool at different positions of the boundary of the same sub-constraint space be the same. Referring to Figure 3 The boundary point A and the boundary point B of the free constraint space 21, although the distances from the constraint space center axis are different, both are located on the boundary of the same constraint space, and the target distance equivalent of both is the same, so the first feedback force received by the end tool at the boundary point A is the same as that at the boundary point B. In this way, the user can compare the first feedback force received by the end tool at the current position with the first feedback force received by the end tool at the boundary of each sub-constraint space, and determine the sub-constraint space where the end tool is located according to the comparison result, i.e. determine the position range of the end tool. It can be understood that the user needs to know in advance the size of the first feedback force received by the end tool at the boundary of each sub-constraint space.
[0041] In one embodiment, the method for determining the target distance equivalent comprises: calculating a ratio of the reference radius of the sub-constraint space to the radius of the sub-constraint space corresponding to the current position of the end-effector, and taking the product of the target distance corresponding to the current position of the end-effector and the ratio as the target distance equivalent. For example, if the reference radius of the sub-constraint space is R and the radius of the sub-constraint space corresponding to the current position of the end-effector is R, the target distance equivalent is R Figure 3 The radius corresponding to the boundary point C is taken as the reference radius R 参 , and the first feedback force F experienced by the end-effector at the boundary point C is F = M · R 参 , the first feedback force experienced by the end-effector at the center point of the reference radius is The first feedback force experienced by the end-effector at the center point of the reference radius is Then, if the end-effector is currently located at the center point of the radius corresponding to the boundary point B, the radius of the sub-constraint space corresponding to the current position of the end-effector is R B , the target distance is The first feedback force F experienced by the end-effector at the current position is F = M · R
[0042] It can be understood that, since the distance stiffness values of the distance stiffness functions corresponding to two adjacent sub-constraint spaces are the same at the common boundary, the first feedback force experienced by the end-effector is continuously changed rather than jumping when the end-effector enters another sub-constraint space from one sub-constraint space. The continuously changed first feedback force helps to improve the user's control of the end-effector, thereby improving the user's accuracy in dragging the end-effector to move.
[0043] wherein the target distance is the distance between the current position of the end-effector and the desired path.
[0044] It can be understood that, since different sub-constraint spaces correspond to different distance stiffness functions, and the first feedback force is determined based on the product of the target distance corresponding to the current position of the end-effector and the distance stiffness value corresponding to the current position, or is determined based on the product of the target distance equivalent corresponding to the current position of the end-effector and the distance stiffness value corresponding to the current position, and the distance stiffness value is determined by the current position and the distance stiffness function corresponding to the current position, the distance stiffness function determines the change form of the first feedback force. Therefore, the user can determine the approximate position of the end-effector in the constraint space according to the change form of the first feedback force.
[0045] Furthermore, since the distance stiffness function corresponding to any sub-constraint space is either an increasing function or a constant function, the distance stiffness values of the distance stiffness functions corresponding to adjacent sub-constraint spaces are the same at their common boundary. Moreover, the first feedback force is determined based on the product of the target distance equivalent corresponding to the current position of the end effector and the distance stiffness value corresponding to that current position. Therefore, the first feedback force on the end effector increases as the target distance corresponding to the current position increases. Thus, once the sub-constraint space where the end effector is located is determined, the user can further narrow down the position range of the end effector within that sub-constraint space based on the magnitude of the first feedback force. Of course, this requires the user to be familiar with the correspondence between the magnitude of the first feedback force and the position of the end effector.
[0046] In one embodiment, when the end-effector is detected to have moved to the outer boundary of the outermost sub-constraint space of the constraint space, i.e., when it has moved to... Figure 3 When the end-effector reaches the outer boundary of the boundary constraint space 23, a braking operation is performed on the end-effector to stop its operation and a first warning message is output. This prevents the end-effector, which is in operation, from moving outside the constraint space and reminds the user to take appropriate measures, such as dragging the end-effector back into the constraint space. This first warning message can be displayed on the robotic arm carrying the end-effector or on a separate display device. Alternatively, it can be an audible warning message output by an alarm connected to the surgical robot's processor.
[0047] In one embodiment, after determining the sub-constraint space where the end effector is currently located, positional information corresponding to that sub-constraint space is output. For example, this positional information is output to the display device of the surgical robot. While informing the user of the sub-constraint space where the end effector is currently located through different forms of change in the first feedback force, the positional information of the end effector is also output through the display device. This positional information includes the sub-constraint space where the end effector is located and its specific position within that sub-constraint space.
[0048] The technical scheme of the end tool motion guiding method provided by the embodiment of the present application is as follows: if the current position of the end tool is not on the expected path of the constraint space, the sub-constraint space corresponding to the current position of the end tool and the distance stiffness function corresponding to the sub-constraint space are determined; the first feedback force towards the expected path is output to the end tool according to the current position and the distance stiffness function corresponding to the current position; since the constraint space includes at least two sub-constraint spaces nested together, different sub-constraint spaces correspond to different distance stiffness functions, and thus the first feedback force received by the end tool in different sub-constraint spaces is different in form, so that the user can determine the sub-constraint space in which the end tool is currently located, i.e., the approximate position of the end tool in the constraint space, according to the change form of the first feedback force, and the position of the end tool is guided; the user can also determine the moving direction of the end tool according to the direction of the first feedback force, and the moving direction of the end tool is guided, and the moving path of the end tool is optimized through the position guiding and the moving direction guiding of the end tool, so that the speed, safety and accuracy of the orthopedic surgery are improved.
[0049] Figure 5 The flowchart of the end tool motion guiding method provided by another embodiment of the present application is shown in FIG. 6. The embodiment of the present application can add a rotation guiding step of the end tool on the basis of the above-mentioned embodiment, and of course, the rotation guiding step can also be an independent step.
[0050] Correspondingly, the method of the embodiment includes:
[0051] S201, the current position of the end tool is detected, and if the current position of the end tool is not on the expected path of the constraint space, the sub-constraint space corresponding to the current position of the end tool and the distance stiffness function corresponding to the sub-constraint space are determined, wherein the central axis of the constraint space is the expected path of the end tool, and the constraint space includes at least two sub-constraint spaces nested together.
[0052] S202, the first feedback force towards the expected path is output to the end tool according to the current position and the distance stiffness function corresponding to the current position.
[0053] S203, when the current included angle between the end tool and the expected path is greater than zero, the rotation stiffness function corresponding to the included angle interval in which the current included angle is located is determined.
[0054] The ideal posture of the end tool is that the end tool coincides with the expected path, i.e., the included angle between the end tool and the expected path is 0. For this purpose, the posture information of the end tool and the constraint space is acquired in real time, and the current included angle between the end tool and the expected path of the constraint space is determined according to the posture information of the two, and the rotation stiffness function corresponding to the included angle interval in which the current included angle is located is determined.
[0055] The embodiment sets different rotation stiffness functions for different angle intervals, and each rotation stiffness function remains unchanged or increases with the increase of the angle between the end tool and the expected path. The rotation stiffness values of the rotation stiffness functions corresponding to adjacent angle intervals are the same at the common boundary.
[0056] In one embodiment, the number of angle intervals is 3. The rotation stiffness function is a constant function or an increasing function. The angle intervals corresponding to the constant function and the angle intervals corresponding to the increasing function are arranged alternately, and the rotation stiffness values of the rotation stiffness functions of adjacent angle intervals are the same at the common boundary.
[0057] For example, as shown in Figure 6 The number of angle intervals is 3. The rotation stiffness function corresponding to the angle interval containing the minimum angle, i.e. the first angle interval, is a first rotation stiffness constant function. The rotation stiffness function corresponding to the angle interval containing the maximum angle, i.e. the third angle interval, is a second rotation stiffness constant function. The rotation stiffness function corresponding to the second angle interval between the first angle interval and the second angle interval is an increasing function, preferably a monotonically increasing quadratic curve. The rotation stiffness values of the rotation stiffness functions corresponding to adjacent angle intervals are the same at the common boundary.
[0058] The maximum allowed angle between the end tool and the expected path is related to the opening size of the surgical area. Therefore, in actual use, the maximum allowed angle between the end tool and the expected path can be set according to the specific situation, and the angle range corresponding to each angle interval can also be set. For hip replacement surgery, the maximum allowed angle between the end tool and the expected path is preferably 15 degrees, i.e. the angle between the boundary of the free constraint region and the expected path should be less than or equal to 15 degrees, as shown in Figure 3 .
[0059] In one embodiment, when it is detected that the current angle between the end tool and the expected path is the maximum allowed angle, an angle warning information is output, and a braking operation is performed on the end tool to enable the user to take appropriate measures in a timely manner, such as rotating the end tool towards the expected path. The angle warning information can be output by the mechanical arm used to carry the end tool, or by the output device corresponding to the mechanical arm. Of course, the angle warning information can also be output through the corresponding alarm of the processor.
[0060] S204, according to the current angle and the rotation stiffness function corresponding to the current angle, output a rotation torque for rotating the end tool towards the expected path to the end tool.
[0061] After the rotational stiffness function corresponding to the current included angle is determined, a rotational stiffness value corresponding to the current included angle is determined according to the rotational stiffness function, and a product of the current included angle and the rotational stiffness value is calculated, and the product is taken as an absolute value of the rotational torque, and a rotational torque that makes the end tool rotate towards the desired path is output to the end tool.
[0062] It can be understood that, since the rotational stiffness values of the rotational stiffness functions corresponding to two adjacent included angle intervals are the same at the common boundary, the rotational torque received by the end tool is continuously changed rather than jumping when the included angle between the end tool and the desired path enters from one included angle interval to another included angle interval. The continuously changed rotational torque helps to improve the user's control of the end tool, thereby improving the user's accuracy in dragging the end tool to move.
[0063] It can be understood that, since different included angle intervals correspond to different rotational stiffness functions, and the rotational torque is determined based on the product of the current included angle between the end tool and the desired path and the rotational stiffness value corresponding to the current included angle, and the rotational stiffness value is determined by the current included angle and the rotational stiffness function corresponding to the current included angle, the rotational stiffness function determines the form of change of the rotational torque, and therefore the user can determine the included angle interval in which the end tool is located, i.e., the included angle range between the end tool and the desired path, according to the form of change of the rotational torque.
[0064] Further, since the rotational stiffness function corresponding to any angle interval is an increasing function or a constant function, the rotational stiffness values of the rotational stiffness functions corresponding to adjacent angle intervals are the same at the common boundary, and the rotational torque is determined based on the product of the current included angle between the end tool and the desired path and the rotational stiffness value corresponding to the current included angle, the rotational torque received by the end tool increases with the increase of the current included angle, and therefore the user can not only determine the included angle range between the end tool and the desired path, but also further narrow the included angle range between the end tool and the desired path according to the size of the rotational torque. Of course, this requires the user to be familiar with the corresponding relationship between the size of the rotational torque and the target included angle, which is the included angle between the end tool and the desired path.
[0065] The technical scheme of the end tool movement guiding method provided by the embodiment of the application comprises the following steps: when it is detected that the current included angle between the end tool and the expected path is greater than zero, a rotation stiffness function corresponding to the included angle interval in which the current included angle is located is determined; and a rotation torque for rotating the end tool to the expected path is output to the end tool according to the current included angle and the rotation stiffness function corresponding to the current included angle. Since different included angle intervals correspond to different rotation stiffness functions, the change form of the rotation torque received by the end tool is different when the included angle between the end tool and the expected path is located in different included angle intervals, so that the user can determine the included angle interval in which the current included angle between the end tool and the expected path is located, that is, the included angle range between the end tool and the expected path, according to the change form of the rotation torque, the rotation direction of the end tool is guided, the user's control of the pose of the end tool is improved, and the speed and accuracy of the orthopedic surgery are improved.
[0066] Figure 7 The flowchart of the end tool movement guiding method provided by another embodiment of the application is shown in FIG. 3. The embodiment of the application adds the step of the speed control method on the basis of any of the above embodiments.
[0067] Correspondingly, the method of the embodiment comprises the following steps:
[0068] S301, detecting the current position of the end tool, and if the end tool is not currently on the expected path of the constraint space, determining the sub-constraint space corresponding to the current position of the end tool and the distance stiffness function corresponding to the sub-constraint space, wherein the central axis of the constraint space is the expected path of the end tool, and the constraint space comprises at least two sub-constraint spaces nested together.
[0069] S302, outputting a first feedback force toward the expected path to the end tool according to the current position and the distance stiffness function corresponding to the current position.
[0070] S303, when it is detected that the direction of the current movement speed of the end tool deviates from the expected path, determining the speed interval corresponding to the current movement speed and the damping function corresponding to the speed interval.
[0071] In the embodiment, the speed interval of the end tool has at least two different speed intervals, and different damping functions are configured for different speed intervals. The damping function is a constant function or an increasing function, and the damping values of the damping functions corresponding to two adjacent speed intervals are the same at the common boundary of the two adjacent speed intervals.
[0072] In one embodiment, the damping function corresponding to the speed interval containing the maximum allowable speed and the damping function corresponding to the speed interval containing the minimum allowable speed are constant functions, and the damping function of the speed interval between the speed interval containing the maximum allowable speed and the speed interval containing the minimum allowable speed is an increasing function. For example, the speed interval of the end tool is 3, wherein, as shown in FIG. 8, the damping function corresponding to the speed interval containing the minimum allowable speed, i.e., the first speed interval, is a first damping constant function, the damping function corresponding to the speed interval containing the maximum allowable speed, i.e., the third speed interval, is a second damping constant function, and the damping function of the second speed interval between the first speed interval and the third speed interval is a monotonically increasing quadratic curve function. Figure 8
[0073] S304, outputting a second feedback force towards the desired path to the end tool according to the current motion speed and the damping function corresponding to the current motion speed.
[0074] According to the current motion speed of the end tool and the damping function corresponding to the current motion speed, a damping value corresponding to the current motion speed is determined, and the product of the current motion speed and the damping value corresponding to the current motion speed is taken as the absolute value of the second feedback force, and a second feedback force towards the desired path is output to the end tool. Preferably, the direction of the second feedback force is perpendicular to and towards the desired path.
[0075] It can be understood that, since the damping values of the damping functions corresponding to two adjacent speed intervals are the same at the common boundary, the second feedback force received by the end tool is continuously changed rather than jumping when the end tool enters another speed interval from one speed interval. The continuously changing second feedback force helps to improve the user's control of the end tool, thereby improving the user's accuracy in dragging the end tool to move.
[0076] It can be understood that, since different speed intervals correspond to different damping functions, and the second feedback force is determined based on the product of the current motion speed of the end tool and the damping value corresponding to the current motion speed, and the damping value is determined by the current motion speed and the damping function corresponding to the current motion speed, the damping function determines the form of change of the second feedback force. Therefore, the user can determine the speed range of the end tool according to the form of change of the second feedback force.
[0077] It can be understood that the total feedback force received by the end tool is the vector sum of the first feedback force and the second feedback force. Therefore, the form of change of the total feedback force is the vector combination of the form of change of the first feedback force and the form of change of the second feedback force, and therefore the user can determine the sub-constraint space and the speed interval in which the end tool is currently located according to the feeling corresponding to the vector combination of the form of change of the first feedback force and the form of change of the second feedback force corresponding to the form of change of the current total feedback force.
[0078] In one embodiment, see Figure 3 The bottom of the constraint space is connected to the acetabulum 24, and the central axis of the acetabulum is located on the extension line of the central axis of the constraint space. When the end tool enters the acetabulum but is not on the desired path, the end tool will also be subjected to a feedback force. However, the direction of the feedback force is not perpendicular and toward the desired path, but toward the center point of the bottom of the constraint space, so that the user can stop the movement of the end tool toward the acetabulum in time according to the feedback force and return it to the center point of the constraint space.
[0079] The technical solution of the end-effector motion guidance method provided in this invention has different forms of change of the second feedback force corresponding to different speed ranges due to the different damping functions corresponding to different speed ranges. Since the total feedback force on the end-effector is the vector sum of the first feedback force and the second feedback force, the user can determine the current sub-constraint space and speed range of the end-effector based on the feel corresponding to the vector combination of the changes in the first and second feedback forces corresponding to the current total feedback force. This helps to improve the user's control over the current position and current movement speed of the end-effector, thereby improving the accuracy of the surgery.
[0080] Figure 9 This is a structural block diagram of an end-effector motion guidance device according to another embodiment of the present invention. The device is used to execute the end-effector motion guidance method provided in any of the above embodiments, and the device may be implemented in software or hardware. The device includes:
[0081] The stiffness distance function determination module 41 is used to detect the current position of the end tool. If the current position of the end tool is not on the expected path of the constraint space, the module determines the sub-constraint space corresponding to the current position of the end tool and the distance stiffness function corresponding to the sub-constraint space. The central axis of the constraint space is the expected path of the end tool, and the constraint space includes at least two sub-constraint spaces nested in the same direction.
[0082] The first feedback force output module 42 is used to output a first feedback force toward the desired path to the end tool according to the current position and the distance stiffness function corresponding to the current position.
[0083] The constraint space includes three nested sub-constraint spaces in the same direction, which are, from the inside out, a free constraint space, a buffer constraint space, and a boundary constraint space. The distance stiffness functions corresponding to the free constraint space and the boundary constraint space are constant functions. The distance stiffness function corresponding to the buffer constraint space is an increasing function, and this increasing function increases as the distance between the end-effector and the desired path increases. The distance stiffness values of the distance stiffness functions corresponding to adjacent sub-constraint spaces are the same at their common boundary.
[0084] Preferably, the first feedback force output module is configured to determine a target distance between the current position and the desired path, and a target distance equivalent corresponding to the target distance; determine a distance stiffness value corresponding to the current position according to the target distance equivalent and a distance stiffness function corresponding to the current position; and output a first feedback force towards the desired path to the end tool according to the target distance equivalent and the distance stiffness value.
[0085] Preferably, the apparatus further comprises:
[0086] The rotation stiffness function determination module is configured to determine a rotation stiffness function corresponding to a current angle interval in which the current angle between the end tool and the desired path is located when it is detected that the current angle is greater than zero, wherein the number of angle intervals is greater than or equal to 2.
[0087] The rotation torque output module is configured to output a rotation torque for rotating the end tool towards the desired path to the end tool according to the current angle and the rotation stiffness function corresponding to the current angle.
[0088] Preferably, the number of angle intervals is 3; the rotation stiffness functions corresponding to the angle interval containing the maximum angle and the angle interval containing the minimum angle are constant functions, the rotation stiffness function corresponding to the angle interval between the angle interval containing the maximum angle and the angle interval containing the minimum angle is an increasing function; and the rotation stiffness values of the rotation stiffness functions corresponding to adjacent angle intervals at the common boundary are the same.
[0089] Preferably, the apparatus further comprises:
[0090] The damping function determination module is configured to determine a speed interval corresponding to a current motion speed of the end tool and a damping function corresponding to the speed interval when it is detected that the direction of the current motion speed deviates from the desired path.
[0091] The second feedback force output module is configured to output a second feedback force towards the desired path to the end tool according to the current motion speed and the damping function corresponding to the current motion speed.
[0092] Preferably, the number of angle intervals is 3; the rotation stiffness functions corresponding to the angle interval containing the maximum angle and the angle interval containing the minimum angle are constant functions, the rotation stiffness function corresponding to the angle interval between the angle interval containing the maximum angle and the angle interval containing the minimum angle is an increasing function; and the rotation stiffness values of the rotation stiffness functions corresponding to adjacent angle intervals at the common boundary are the same.
[0093] Preferably, the apparatus further comprises:
[0094] The warning module is configured to perform a braking operation on the end tool when it is detected that the feature point of the end tool is located at the outer boundary of the buffer constraint space, and output first warning information.
[0095] The target position of the end tool is the top end of the buffer constraint space.
[0096] The end tool motion guiding device provided by the embodiment of the present application determines the current position of the end tool through the stiffness distance function determination module. If the end tool is not currently on the desired path of the constraint space, the sub-constraint space corresponding to the current position of the end tool and the distance stiffness function corresponding to the sub-constraint space are determined. The first feedback force towards the desired path is output to the end tool by the first feedback force output module according to the current position and the distance stiffness function corresponding to the current position. Since the constraint space includes at least two nested sub-constraint spaces, different sub-constraint spaces correspond to different distance stiffness functions, and thus the change form of the first feedback force received by the end tool in different sub-constraint spaces is different, so that the user can determine the sub-constraint space in which the end tool is currently located, i.e., the approximate position of the end tool in the constraint space, according to the change form of the first feedback force, thereby realizing the position guidance of the end tool. The user can also determine the moving direction of the end tool according to the direction of the first feedback force, thereby realizing the guidance of the moving direction of the end tool. The moving path of the end tool is optimized through the position guidance and the moving direction guidance of the end tool, thereby improving the speed, safety and accuracy of the orthopedic surgery.
[0097] The end tool motion guiding device provided by the embodiment of the present application can execute the end tool motion guiding method provided by any embodiment of the present application, and has the corresponding function modules and beneficial effects of the execution method.
[0098] As shown in Figure 2 Another embodiment of the present application provides a surgical robot, which includes a mechanical arm 11, a navigation device 12 and a processor 13. The mechanical arm 11 is configured to drive the end tool to move under the action of an external force, and output a set feedback force to the end tool. The navigation device 12 is configured to obtain the current position of the end tool in a constraint space. The center axis of the constraint space is the desired path of the end tool, and the constraint space includes at least two nested sub-constraint spaces. The processor is configured to detect the current position of the end tool through the navigation device 12. If the end tool is not currently on the desired path of the constraint space, the sub-constraint space corresponding to the current position of the end tool and the distance stiffness function corresponding to the sub-constraint space are determined. The first feedback force towards the desired path is output to the end tool by the mechanical arm according to the current position and the distance stiffness function corresponding to the current position.
[0099] Among them, as Figure 11As shown, the mechanical arm 11 drives the acetabular cup 4 or the acetabular reamer to move through the connecting rod 3, one end of which is provided with the acetabular cup 4 or the acetabular reamer. When the end tool is the acetabular cup, the other end of the connecting rod 3 is provided with a cup knocking handle 31. The doctor performs the cup knocking operation on the acetabular cup through the cup knocking handle 31.
[0100] As shown, the navigation device 12 includes a first optical array 121 arranged on the base 10, a second optical array 122 arranged on the mechanical arm, and a third optical array 123 arranged near the acetabular fossa. The processor obtains the current position of the end tool in real time through the second optical array 122, and obtains the current pose of the constraint space 2 in real time through the third optical array 123, and converts the current position of the acetabular cup and the current pose of the acetabular fossa into the coordinate system corresponding to the first optical array 121, so as to determine the current position of the end tool in the constraint space. Figure 11
[0101] The surgical robot also includes an optical camera 5 (see Figure 11 ), which is used to obtain the current position of the end tool in the constraint space determined by the navigation device.
[0102] As shown in Figure 10 and Figure 11 , the surgical robot also includes a force sensor 14, such as a six-axis force sensor, for detecting external forces on the end tool, such as contact force between the end tool and the affected area, and drag force applied by the user on the end tool. Preferably, the force sensor can also perform low-pass filtering on the detected force signal to filter out noise such as doctor's hand or patient's body shaking, thereby improving the accuracy of force detection.
[0103] Wherein the end tool is a surgical tool in orthopedic surgery or a prosthesis for replacing a lesion, wherein the surgical tool can be a reamer for cleaning the affected area, and the prosthesis can be an acetabular cup 4 (see Figure 11 ).
[0104] Wherein the feature point is a point on the end tool, and in this embodiment, the position of the feature point is taken as the position of the end tool.
[0105] Wherein the constraint space is the surgical opening area of the patient 01, which can be conical (see Figure 3 ), bowl-shaped or columnar. However, regardless of its shape, the central axis is the desired path of the end tool, i.e. the movement path of the end tool desired by the user. It can be understood that the target position of the end tool, i.e. the surgical position of the end tool, is located at the end of the desired path.
[0106] The constraint space in the embodiment includes at least two sub-constraint spaces nested in the same direction, and the central axes of each sub-constraint space are coincident. The determination method of the sub-constraint space includes: dividing the constraint space into at least two layers from inside to outside according to the proportion of the effective radius range of each sub-constraint space, and taking each layer as a sub-constraint space. As shown in Figure 3 The constraint space is divided into three layers, i.e., the constraint space is divided into three sub-constraint spaces. The three sub-constraint spaces from inside to outside are the free constraint space 21, the buffer constraint space 22 and the boundary constraint space 23.
[0107] The embodiment configures different distance stiffness functions for different sub-constraint spaces, wherein the distance stiffness function is a constant function or an increasing function. The sub-constraint space with the constant function is alternately arranged with the sub-constraint space with the increasing function. Moreover, the distance stiffness values of the distance stiffness functions corresponding to adjacent sub-constraint spaces at the common boundary are the same, i.e., the distance stiffness values of the two distance stiffness functions corresponding to adjacent two sub-constraint spaces at the common boundary are continuous, rather than jumping.
[0108] In one embodiment, as shown in Figure 4 The distance stiffness function corresponding to the free constraint space 21 in the sub-constraint space at the center of the constraint space, i.e., the distance stiffness function corresponding to the free constraint space 21 in Figure 3 is a first constant function; the distance stiffness function corresponding to the buffer constraint space 22 in the sub-constraint space at the middle layer of the constraint space, i.e., the distance stiffness function corresponding to the buffer constraint space 22 in Figure 3 is a monotonically increasing quadratic curve; and the distance stiffness function corresponding to the boundary constraint space 23 in the sub-constraint space at the outermost layer of the constraint space, i.e., the distance stiffness function corresponding to the boundary constraint space 23 in Figure 3 is a second constant function. Figure 4 It is also shown that the distance stiffness values corresponding to adjacent sub-constraint spaces at the common boundary are the same.
[0109] After the processor 13 determines the current position of the end tool and the distance stiffness function corresponding to the current position, the processor 13 determines the distance stiffness value corresponding to the current position, and takes the product of the target distance corresponding to the current position and the distance stiffness value as the absolute value of the first feedback force, and outputs the first feedback force towards the desired path to the end tool. Preferably, the direction of the first feedback force is perpendicular to and towards the desired path.
[0110] In one embodiment, after the processor 13 determines the current position of the end tool and the distance stiffness function corresponding to the current position, the processor 13 determines the target distance between the current position and the desired path, and the target distance equivalent corresponding to the target distance; determines the distance stiffness value corresponding to the current position according to the target distance equivalent and the distance stiffness function corresponding to the current position; determines the absolute value of the first feedback force according to the target distance equivalent and the distance stiffness value, and outputs the first feedback force towards the desired path to the end tool.
[0111] The target distance equivalent is introduced so that the first feedback force experienced by the end-effector at different positions on the boundary of the same sub-constraint space is the same. See Figure 3 The boundary point A and the boundary point B of the free constraint space 21 are both on the boundary of the same sub-constraint space, although the distance from the center axis of the constraint space is different, the target distance equivalent of the two is the same, so the first feedback force experienced by the end-effector at the boundary point A is the same as that at the boundary point B. In this way, the user can compare the first feedback force experienced by the end-effector at the current position with the first feedback force experienced by the end-effector at the boundary of each sub-constraint space, and determine the sub-constraint space in which the end-effector is located according to the comparison result, i.e., determine the position range of the end-effector. It can be understood that the user needs to know the first feedback force experienced by the end-effector at the boundary of each sub-constraint space in advance.
[0112] The method for determining the target distance equivalent includes calculating the ratio of the reference radius of the sub-constraint space to the radius of the sub-constraint space corresponding to the current position, and taking the product of the target distance corresponding to the current position and the ratio as the target distance equivalent. For example, the radius corresponding to the boundary point C in Figure 3 the reference radius R 参 is set as M, the first feedback force experienced by the end-effector at the boundary point C is F = M·R 参 , and the first feedback force experienced by the end-effector at the center point of the reference radius is Then, if the end-effector is currently located at the center point of the radius corresponding to the boundary point B, the radius of the sub-constraint space corresponding to the current position of the end-effector is R B , and the target distance is The first feedback force experienced by the end-effector at the current position is
[0113] It can be understood that, since the distance stiffness values of the distance stiffness functions corresponding to two adjacent sub-constraint spaces are the same at the common boundary, the first feedback force experienced by the end-effector is continuously changed rather than jumping when the end-effector enters another sub-constraint space from one sub-constraint space. The continuously changed first feedback force helps to improve the user's control of the end-effector, thereby improving the accuracy of the user's dragging motion of the end-effector.
[0114] The target distance is the absolute value of the target displacement corresponding to the current position, specifically the distance between the current position and the desired path, and the direction of the target displacement is the direction in which the current position points to the desired path.
[0115] It can be understood that, since different sub-constraint spaces correspond to different distance stiffness functions, and the first feedback force is determined based on the product of the target distance corresponding to the current position of the end tool and the distance stiffness value corresponding to the current position, or is determined based on the product of the target distance equivalent corresponding to the current position of the end tool and the distance stiffness value corresponding to the current position, and the distance stiffness value is determined by the current position and the distance stiffness function corresponding to the current position, therefore the distance stiffness function determines the change form of the first feedback force. Therefore, the user can determine the sub-constraint space where the end tool is located, i.e. the approximate position of the end tool in the constraint space, according to the change form of the first feedback force.
[0116] Further, since the distance stiffness function corresponding to any sub-constraint space is an increasing function or a constant function, the distance stiffness values of the distance stiffness functions corresponding to adjacent sub-constraint spaces are the same at the common boundary, and the first feedback force is determined based on the product of the target distance equivalent corresponding to the current position of the end tool and the distance stiffness value corresponding to the current position, therefore the first feedback force received by the end tool increases as the target distance corresponding to the current position increases, so that the user can further narrow the position range of the end tool in the sub-constraint space while determining the sub-constraint space where the end tool is located, according to the size of the first feedback force. Of course, this requires the user to be familiar with the corresponding relationship between the size of the first feedback force and the position of the end tool.
[0117] In an embodiment, the processor performs a braking operation on the end tool to stop the running of the end tool and outputs first warning information when detecting that the end tool runs to the outer boundary of the sub-constraint space at the outermost side of the constraint space, i.e. to the outer boundary of the boundary constraint space in the formula. Figure 3 This prevents the end tool in the working state from running to the outside of the constraint space, and reminds the user to take appropriate measures in time, such as dragging the end tool back to the inside of the constraint space. The first warning information can be displayed on the display device of the surgical robot or a separate display device. Of course, the first warning information can also be the corresponding sound warning information output by the alarm connected to the surgical robot processor.
[0118] In an embodiment, the processor outputs the position prompt information corresponding to the sub-constraint space where the end tool is currently located after determining the sub-constraint space. For example, the position prompt information is output to the display device of the surgical robot. When the user is prompted about the sub-constraint space where the end tool is currently located through the different change forms of the first feedback force, the position prompt information of the end tool is also output through the display device, and the position prompt information includes the sub-constraint space where the end tool is located and the specific position in the corresponding sub-constraint space.
[0119] The ideal orientation of the end effector is that it coincides with the desired path, i.e., the angle between the end effector and the desired path is 0. To this end, this embodiment acquires the pose information of the end effector and the constraint space in real time, and determines the current angle between the end effector and the desired path in the constraint space based on the pose information of the two, as well as the rotational stiffness function corresponding to the angle interval in which the current angle is located.
[0120] In this embodiment, different rotational stiffness functions are set for different angle intervals, and the function value of each rotational stiffness function remains unchanged or increases as the angle between the end tool and the desired path increases. The rotational stiffness values of the rotational stiffness functions corresponding to adjacent angle intervals are the same at the common boundary.
[0121] In one embodiment, the number of included angle intervals is 3. The rotational stiffness function is either a constant function or an increasing function. The included angle intervals corresponding to the constant function and the included angle intervals corresponding to the increasing function are alternately set, and the rotational stiffness values of the rotational stiffness functions of adjacent included angle intervals are the same at the common boundary. That is, the rotational stiffness values of the two rotational stiffness functions corresponding to two adjacent angle intervals are continuous at the common boundary, rather than abrupt.
[0122] For example, such as Figure 6 As shown, the number of included angle intervals is 3. The rotational stiffness function corresponding to the included angle interval containing the smallest included angle, i.e., the first included angle interval, is the first rotational stiffness constant function. The rotational stiffness function corresponding to the angle interval containing the largest included angle, i.e., the third included angle interval, is the second rotational stiffness constant function. The rotational stiffness function corresponding to the second included angle interval, which is located between the first included angle interval and the second angle interval, is an increasing function, preferably a monotonically increasing quadratic curve. Furthermore, the rotational stiffness of the rotational stiffness functions corresponding to adjacent angle intervals is equal at the common boundary.
[0123] The maximum permissible angle between the end effector and the desired path is related to the size of the surgical opening. Therefore, in actual use, the maximum permissible angle between the end effector and the desired path, as well as the angle range corresponding to each angle interval, can be set according to specific circumstances. For hip replacement surgery, the maximum permissible angle between the end effector and the desired path is preferably 15 degrees, that is, the angle between the boundary of the free constraint area and the desired path should be less than or equal to 15 degrees. See [link to relevant documentation]. Figure 3 .
[0124] In one embodiment, when it is detected that the current included angle between the end tool and the expected path is the maximum allowed included angle, an included angle warning information is outputted, and a braking operation is performed on the end tool to enable the user to take corresponding measures in time, such as rotating the end tool towards the expected path. The included angle warning information can be outputted through a mechanical arm for carrying the end tool, or through an output device corresponding to the mechanical arm. Of course, the included angle warning information can also be outputted through a corresponding alarm connected to the processor.
[0125] After the rotation stiffness function corresponding to the current included angle is determined, a rotation stiffness value corresponding to the current included angle is determined according to the rotation stiffness function, a product of the current included angle and the rotation stiffness value is calculated, and the product is taken as an absolute value of the rotation torque, while a rotation torque for rotating the end tool towards the expected path is outputted to the end tool.
[0126] It can be understood that, since the rotation stiffness values of the rotation stiffness functions corresponding to two adjacent included angle intervals are the same at the common boundary, the rotation torque received by the end tool is continuously changed rather than jumping when the included angle between the end tool and the expected path enters from one included angle interval to another included angle interval. The continuously changed rotation torque helps to improve the user's control of the end tool, thereby improving the user's accuracy in dragging the end tool to move.
[0127] It can be understood that, since different included angle intervals correspond to different rotation stiffness functions, and the rotation torque is determined based on the product of the current included angle between the end tool and the expected path and the rotation stiffness value corresponding to the current included angle, and the rotation stiffness value is determined by the current included angle and the rotation stiffness function corresponding to the current included angle, the rotation stiffness function determines the change form of the rotation torque, so the user can determine the included angle interval in which the end tool is located, i.e., the included angle range between the end tool and the expected path, according to the change form of the rotation torque.
[0128] Further, since the rotation stiffness functions corresponding to any angle interval are all increasing functions or constant functions, the rotation stiffness values of the rotation stiffness functions corresponding to adjacent angle intervals are the same at the common boundary, and the rotation torque is determined based on the product of the current included angle between the end tool and the expected path and the rotation stiffness value corresponding to the current included angle, the rotation torque received by the end tool increases with the increase of the current included angle, so the user can not only determine the included angle range between the end tool and the expected path, but also further narrow the included angle range between the end tool and the expected path according to the size of the rotation torque. Of course, this requires the user to be familiar with the corresponding relationship between the size of the rotation torque and the target included angle, which is the included angle between the end tool and the expected path.
[0129] The processor is further configured to obtain a current movement speed of the end tool, and determine a speed interval corresponding to the current movement speed of the end tool and a damping function corresponding to the speed interval when detecting that a direction of the current movement speed of the end tool deviates from the expected path.
[0130] In the embodiment, the speed interval of the end tool has at least two different speed intervals, and different damping functions are configured for different speed intervals. The damping function is a constant function or an increasing function, and the damping values of the damping functions corresponding to two adjacent speed intervals are the same at the common boundary of the two speed intervals.
[0131] In one embodiment, the damping functions corresponding to the speed interval containing the maximum allowed speed and the speed interval containing the minimum allowed speed are constant functions, and the damping function of the speed interval between the speed interval containing the maximum allowed speed and the speed interval containing the minimum allowed speed is an increasing function. For example, the speed interval of the end tool has three speed intervals, as shown in FIG. 1, the damping function corresponding to the speed interval containing the minimum allowed speed, i.e., the first speed interval, is a first damping constant function, the damping function corresponding to the speed interval containing the maximum allowed speed, i.e., the third speed interval, is a second damping constant function, and the damping function corresponding to the second speed interval between the first speed interval and the third speed interval is a monotonically increasing quadratic curve function. Figure 8
[0132] The processor determines a damping value corresponding to the current movement speed of the end tool according to the current movement speed of the end tool and the damping function corresponding to the current movement speed of the end tool, takes the product of the current movement speed and the damping value corresponding to the current movement speed of the end tool as the absolute value of the second feedback force, and outputs the second feedback force towards the expected path to the end tool. Preferably, the direction of the second feedback force is perpendicular to and towards the expected path.
[0133] It can be understood that, since the damping values of the damping functions corresponding to two adjacent speed intervals are the same at the common boundary, the second feedback force received by the end tool is continuously changed rather than jumping when the end tool enters another speed interval from one speed interval. The continuously changing second feedback force helps to improve the user's control over the end tool, thereby improving the user's accuracy in dragging the end tool to move.
[0134] It can be understood that, since different speed intervals correspond to different damping functions, and the second feedback force is determined based on the product of the current movement speed of the end tool and the damping value corresponding to the current movement speed of the end tool, and the damping value is determined by the current movement speed of the end tool and the damping function corresponding to the current movement speed of the end tool, the damping function determines the change form of the second feedback force. Therefore, the user can determine the speed range of the end tool according to the change form of the second feedback force.
[0135] It can be understood that the total feedback force received by the end tool is the vector sum of the first feedback force and the second feedback force. Therefore, the change form of the total feedback force is the vector combination of the change form of the first feedback force and the change form of the second feedback force, so the user can determine the current sub-constraint space and speed interval of the end tool according to the corresponding feeling of the vector combination of the change form of the first feedback force and the change form of the second feedback force corresponding to the change form of the current total feedback force.
[0136] The surgical robot also includes a memory 15, an input device 16, and an output device 17; the number of processors 13 in the device can be one or more, Figure 10 In the embodiment, one processor 13 is taken as an example; the processor 13, the memory 15, the input device 16, and the output device 17 in the device can be connected through a bus or other means, Figure 10 In the embodiment, the connection through the bus is taken as an example.
[0137] The memory 15, as a kind of computer readable storage medium, can be used to store software programs, computer executable programs and modules, such as the program instructions / modules (for example, the stiffness distance function determination module 41 and the first feedback force output module 42) corresponding to the end tool motion guiding method in the embodiment of the application. The processor 13 executes the software programs, instructions and modules stored in the memory 15, thereby performing various functional applications and data processing of the device, that is, realizing the end tool motion guiding method described above.
[0138] The memory 15 can mainly include a storage program area and a storage data area, wherein the storage program area can store an operating system and at least one application program required by a function; the storage data area can store data created according to the use of the terminal and the like. In addition, the memory 15 can include a high-speed random access memory, and can also include a non-volatile memory, such as at least one magnetic disk storage device, a flash memory device, or other non-volatile solid-state memory device. In some examples, the memory 15 can further include a memory remotely arranged with respect to the processor 13, and these remote memories can be connected to the device through a network. Examples of the above-mentioned network include but are not limited to the Internet, an intranet, a local area network, a mobile communication network, and a combination thereof.
[0139] The input device 16 can be used to receive input digital or character information, and generate key signal input related to user settings and function control of the device.
[0140] The output device 17 can be a display, which is used to display various warning information and / or the pose of the end tool in the constraint space. Among them, the warning information includes but is not limited to the aforementioned first warning information and second warning information.
[0141] The technical scheme of the end tool motion guiding method provided by the embodiment of the application is as follows: if the end tool is not currently on the expected path of the constraint space, a sub-constraint space corresponding to the current position of the end tool and a distance stiffness function corresponding to the sub-constraint space are determined; a first feedback force towards the expected path is output to the end tool according to the current position and the distance stiffness function corresponding to the current position. Since the constraint space includes at least two sub-constraint spaces nested together, different sub-constraint spaces correspond to different distance stiffness functions, and thus the first feedback force received by the end tool in different sub-constraint spaces varies in different forms, so that the user can determine the sub-constraint space in which the end tool is currently located, i.e., the approximate position of the end tool in the constraint space, according to the variation form of the first feedback force, thereby realizing the position guiding of the end tool. The user can also determine the moving direction of the end tool according to the direction of the first feedback force, thereby realizing the guiding of the moving direction of the end tool. The moving path of the end tool is optimized through the position guiding and the moving direction guiding of the end tool, thereby improving the speed, safety and accuracy of orthopedic surgery.
[0142] Another embodiment of the application further provides an end tool motion guiding system, including a processor and a memory, the memory stores a computer program, and the processor is used to execute the computer program to execute an end tool motion guiding method, the method including:
[0143] detecting a current position of an end tool, and if the current position of the end tool is not on an expected path of a constraint space, determining a sub-constraint space corresponding to the current position of the end tool and a distance stiffness function corresponding to the sub-constraint space, wherein a central axis of the constraint space is the expected path of the end tool, and the constraint space includes at least two sub-constraint spaces nested together;
[0144] outputting a first feedback force towards the expected path to the end tool according to the current position and the distance stiffness function corresponding to the current position.
[0145] Of course, the computer program of the end tool motion guiding system provided by the embodiment of the application is not limited to the method operations described above, and can also execute the related operations in the end tool motion guiding method provided by any embodiment of the application.
[0146] Through the above description of the embodiments, those skilled in the art can clearly understand that the present application can be realized by means of software and necessary universal hardware, and of course can also be realized by hardware, but in many cases the former is a better embodiment. Based on such understanding, the technical solutions of the present application can be embodied in the form of a software product in essence or in the form of a part of the prior art that makes a contribution, and the computer software product can be stored in a computer readable storage medium, such as a floppy disk, a read-only memory (ROM), a random access memory (RAM), a FLASH, a hard disk, or an optical disk, and includes a number of instructions for causing a computer device (which can be a personal computer, a server, or a network device, etc.) to execute the end tool movement guiding method described in various embodiments of the present application.
[0147] It is worth noting that in the above embodiments of the end tool movement guiding device, each unit and module included is only divided according to functional logic, but is not limited to the above division, as long as the corresponding functions can be realized; in addition, the specific names of each functional unit are only for easy mutual differentiation, and do not limit the protection scope of the present application.
[0148] Note that the above are only preferred embodiments of the present application and the technical principles applied. Those skilled in the art will understand that the present application is not limited to the specific embodiments described herein, and those skilled in the art can make various obvious changes, readjustments and substitutions without departing from the scope of the present application. Therefore, although the present application has been described in more detail through the above embodiments, the present application is not limited to the above embodiments, and can include more other equivalent embodiments without departing from the concept of the present application, and the scope of the present application is determined by the scope of the appended claims.
Claims
1. An end tool movement guide device characterized by comprising: The device comprises: a rigidity distance function determination module configured to detect a current position of an end tool, and determine a sub-constraint space corresponding to the current position of the end tool and a distance rigidity function corresponding to the sub-constraint space if the current position of the end tool is not on an expected path of a constraint space, wherein a central axis of the constraint space is the expected path of the end tool, and the constraint space comprises at least two sub-constraint spaces nested in the same direction; a first feedback force output module configured to determine a target distance between the current position and the expected path, calculate a ratio of a reference radius of the sub-constraint space to a radius of the sub-constraint space corresponding to the current position, and take a product of the target distance corresponding to the current position and the ratio as a target distance equivalent, determine a distance rigidity value corresponding to the current position according to the target distance equivalent and the distance rigidity function corresponding to the current position, and output a first feedback force towards the expected path to the end tool according to the target distance equivalent and the distance rigidity value.
2. The apparatus of claim 1, wherein, The constraint space comprises three sub-constraint spaces nested in the same direction, and the three sub-constraint spaces are a free constraint space, a buffer constraint space and a boundary constraint space from inside to outside respectively; The distance rigidity functions corresponding to the free constraint space and the boundary constraint space are constant functions; The distance rigidity function corresponding to the buffer constraint space is an increasing function, and a function value of the increasing function increases with an increase of a distance between the end tool and the expected path; Distance rigidity values of the distance rigidity functions corresponding to adjacent sub-constraint spaces are the same at a common boundary.
3. The apparatus of claim 2, wherein, The distance rigidity function corresponding to the buffer constraint space is a monotonically increasing quadratic curve.
4. The apparatus of claim 1, wherein, The device further comprises: a rotational rigidity function determination module configured to determine a rotational rigidity function corresponding to an angle interval in which a current included angle between the end tool and the expected path is located when it is detected that the current included angle is greater than zero, wherein a number of the angle intervals is greater than or equal to 2; a rotational torque output module configured to output a rotational torque for rotating the end tool towards the expected path to the end tool according to the current included angle and the rotational rigidity function corresponding to the current included angle.
5. The device according to claim 4, wherein the number of the angle intervals is 3; the rotational rigidity functions corresponding to an angle interval containing a maximum included angle and an angle interval containing a minimum included angle are constant functions, and the rotational rigidity function corresponding to an angle interval between the angle interval containing the maximum included angle and the angle interval containing the minimum included angle is an increasing function; rotational rigidity values of the rotational rigidity functions corresponding to adjacent angle intervals are the same at a common boundary.
6. The apparatus of any one of claims 1-5, wherein, The device further comprises: a damping function determination module configured to determine a speed interval corresponding to a current motion speed of the end tool and a damping function corresponding to the speed interval when it is detected that a direction of the current motion speed deviates from the expected path; a second feedback force output module configured to output a second feedback force towards the expected path to the end tool according to the current motion speed and the damping function corresponding to the current motion speed.
7. The apparatus of claim 6, wherein, The damping function corresponding to the speed interval containing the maximum allowable speed and the damping function corresponding to the speed interval containing the minimum allowable speed are constant functions, and the damping degree function corresponding to the speed interval between the speed interval containing the maximum allowable speed and the speed interval containing the minimum allowable speed is an increasing function; The damping values of the damping functions corresponding to adjacent speed intervals are the same at the common boundary.
8. The apparatus of claim 1, wherein, Further comprising: The warning module is configured to perform a braking operation on the end tool when it is detected that the feature point of the end tool is located at the outer boundary of the buffer constraint space, and output first warning information.
9. The apparatus of claim 2, wherein, The target position of the end tool is the top end of the buffer constraint space.
10. A surgical robot, characterised in that, Further comprising: The mechanical arm is configured to drive the end tool to move under the action of an external force, and output a feedback force to the end tool; The navigation device is configured to obtain a current position of the end tool in a constraint space, a center axis of the constraint space being a desired path of the end tool, the constraint space including at least two nested sub-constraint spaces; The processor is configured to detect the current position of the end tool by the navigation device, determine a sub-constraint space corresponding to the current position of the end tool and a distance stiffness function corresponding to the sub-constraint space if the current position of the end tool is not on the desired path of the constraint space; determine a target distance between the current position and the desired path, calculate a ratio of a reference radius of the sub-constraint space to a radius of the sub-constraint space corresponding to the current position, and take a product of the target distance corresponding to the current position and the ratio as a target distance equivalent; determine a distance stiffness value corresponding to the current position according to the target distance equivalent and the distance stiffness function corresponding to the current position; and output a first feedback force towards the desired path to the end tool according to the target distance equivalent and the distance stiffness value.
11. The surgical robot of claim 10, wherein, The surgical robot further comprises: An optical camera configured to obtain an included angle between the end tool and the desired path; The processor is further configured to obtain a current included angle between the end tool and the desired path by the optical camera; If the current included angle is greater than zero, a rotational torque for rotating the end tool towards the desired path is output to the end tool according to the current included angle and a rotational stiffness function corresponding to the included angle interval in which the current included angle is located.
12. The surgical robot of claim 10, wherein, The processor is further configured to: obtain a current movement speed of the end tool in a direction perpendicular to the desired path by the navigation device; If the direction of the current movement speed deviates from the desired path, a second feedback force towards the desired path is output to the end tool by the mechanical arm according to the current movement speed and a damping function corresponding to the speed interval in which the current movement speed is located.
13. An end tool motion guidance system comprising a processor and a memory, the memory storing a computer program, wherein, The processor executes the computer program to execute an end tool movement guidance method, comprising: detecting a current position of an end tool, if the current position of the end tool is not on a desired path of a constraint space, determining a sub-constraint space corresponding to the current position of the end tool and a distance stiffness function corresponding to the sub-constraint space, wherein a central axis of the constraint space is the desired path of the end tool, and the constraint space comprises at least two sub-constraint spaces nested together; configuring different distance stiffness functions for different sub-constraint spaces; determining a target distance between the current position and the desired path, and calculating a ratio of a reference radius of the sub-constraint space to a radius of the sub-constraint space corresponding to the current position, and taking a product of the target distance corresponding to the current position and the ratio as a target distance equivalent; determining a distance stiffness value corresponding to the current position according to the target distance equivalent and the distance stiffness function corresponding to the current position; outputting a first feedback force towards the desired path to the end tool according to the target distance equivalent and the distance stiffness value.
Citation Information
Patent Citations
Control method and system of robot based on virtual fixture
CN109171965A
Control method of teleoperation system with virtual constraint
CN109333497A
Surgical robot auxiliary positioning method, surgical robot and storage medium
CN111870348A