Alarm processing method and device of surgical robot and electronic equipment
By identifying and handling motor blockage and attitude angle exceeding limits in surgical robots, providing reliable alarm and limit control, the problems of interruption and motor damage in the operation of surgical robots in the prior art are solved, ensuring the safe and stable operation of surgical robots. .
Patent Information
- Application Number
- CN202411556111.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-11-04
- Publication Date
- 2025-02-14
- Estimated Expiration
- 2044-11-04
AI Technical Summary
Existing surgical robots lack effective alarm and limit control when the motor fails to reach its target position and attitude angle exceeds the limit, resulting in possible interruptions or motor damage.
By obtaining the alarm information generated by the surgical robot, identifying motor blockage and attitude angle exceeding limits, and providing reliable alarm and prompt mechanisms, including restarting the motor and increasing the movement speed to deal with blockages, promptly prompting the user to exceed the limit motor position and Pose angle.
Effectively identify and deal with motor blockage and attitude angle exceeding limits, ensure safe operation of surgical robots and avoid interruptions and motor damage.
Smart Images

Figure CN119445782A_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of robot control, and in particular, to an alarm processing method, device and electronic equipment for a surgical robot. Background Art
[0002] In modern surgery, the development of minimally invasive surgical robot technology has greatly improved the accuracy and safety of surgery. Such surgical robots are usually driven by multiple motors and can accurately control the position and motion trajectory of surgical instruments, thereby realizing complex surgical operations. However, the motor often encounters situations where it cannot reach the target position during execution. This may be caused by reasons such as the motor speed being set too low, insufficient voltage, or being blocked by external objects. In these cases, existing control methods usually adopt simple strategies, such as directly stopping the motor movement or increasing the motor speed. However, directly stopping the motor may cause the surgical operation to be interrupted, while simply increasing the speed and voltage may cause the motor to be in a high-voltage state for a long time when the motor is blocked by foreign objects, which will have an adverse effect on the life and reliability of the motor.
[0003] Secondly, existing surgical robots lack effective protection mechanisms for the limit control of the attitude angle and motor position. Due to the limited space in the surgical environment, if the attitude angle or motor position exceeds the preset limit range, the surgical arm may collide with the device housing or other sensitive areas, thus adversely affecting the surgical process. Summary of the invention
[0004] The embodiments of the present disclosure at least provide an alarm processing method, device and electronic equipment for a surgical robot, which can effectively identify the abnormal situation that the motor fails to reach the target position within the set time, and provide a reliable alarm and prompt mechanism when encountering motor blockage or attitude angle exceeding the limit, so as to ensure the safe operation of the surgical robot.
[0005] The present disclosure provides an alarm processing method for a surgical robot, comprising:
[0006] Acquire alarm information and corresponding alarm types generated by the surgical robot, wherein the alarm types include position alarm information of not reaching a specified position and position alarm information of exceeding a limit;
[0007] With respect to the position alarm information, a current motor encoding value and a previous motor encoding value in a previous task cycle are obtained, and an absolute value of a difference between the current motor encoding value and the previous motor encoding value is determined;
[0008] If the absolute value of the difference is less than the preset motor speed, the motor is determined to be blocked and the number of blockages is recorded; when the number of blockages is greater than the preset blocking number threshold, the motor is restarted and the motor speed is increased;
[0009] In response to the posture alarm information, when the surgical arm posture angle of the surgical robot exceeds the preset target posture angle, the user is prompted that the target surgical arm angle exceeds the limit; when the motor position of the surgical robot exceeds the preset target limit, the user is prompted that the motor exceeds the limit.
[0010] In an optional implementation, for the position alarm information, obtaining the current motor encoding value and the previous motor encoding value in the previous task cycle, and determining the absolute value of the difference between the current motor encoding value and the previous motor encoding value specifically includes:
[0011] After entering the motor displacement control task, setting the motor motion parameters, the motor motion parameters including the motor target position, the preset motor speed and the position tolerance;
[0012] Start the motor displacement control task loop and obtain the current motor encoding value;
[0013] When the absolute value of the difference between the current motor encoding value and the motor target position is not less than the position tolerance, determining the absolute value of the difference;
[0014] When the absolute value of the difference between the current motor encoding value and the motor target position is less than the position tolerance, it is determined that the motor has reached the motor target position.
[0015] In an optional implementation manner, after determining that the motor has reached the motor target position, the method further includes:
[0016] Switching the business state corresponding to the motor displacement control task to an idle state;
[0017] The information that the motor reaches the motor target position is sent to a preset human-computer interaction interface through a process pipeline, thereby completing the motor displacement control task.
[0018] In an optional implementation, if the absolute value of the difference is less than a preset motor speed, it is determined that the motor is blocked and the number of blockages is recorded, and when the number of blockages is greater than a preset blockage threshold, the motor is restarted and the motor speed is increased, the method further includes:
[0019] Record the number of motor restarts;
[0020] If the restart number is greater than a preset restart number threshold, it is determined that the motor is abnormal;
[0021] Send click exception information to the preset human-computer interaction interface through the process pipeline.
[0022] In an optional implementation manner, the method further includes:
[0023] When the absolute value of the difference between the current motor encoding value and the previous motor encoding value is not less than the preset motor speed, the motor is controlled to sleep for a preset sleep time, and the step of obtaining the current motor encoding value is re-executed;
[0024] When the blocking number is not greater than the preset blocking number threshold, controlling the motor to sleep for the preset sleep time, and then re-performing the step of obtaining the current motor encoding value;
[0025] When the restart times are not greater than the preset restart times threshold, the motor is controlled to sleep for the preset sleep time, and then the step of obtaining the current motor encoding value is executed again.
[0026] In an optional implementation, when the motor position of the surgical robot exceeds the preset target limit, prompting the user that the motor exceeds the limit specifically includes:
[0027] When the posture angle of the surgical arm does not exceed the preset target posture angle, determining whether the motor position exceeds the preset target limit through inverse kinematics;
[0028] If so, the motor position over-limit information is sent to the preset human-computer interaction interface through the process pipeline;
[0029] If not, a motor control command is sent to control the motor to continue to perform the moving task.
[0030] The present disclosure also provides an alarm processing device for a surgical robot, comprising:
[0031] An alarm acquisition module, used to acquire alarm information and corresponding alarm types generated by the surgical robot, wherein the alarm types include position alarm information of not reaching a specified position and position alarm information of exceeding a limit;
[0032] A position alarm processing module, used for obtaining the current motor encoding value and the previous motor encoding value in the previous task cycle according to the position alarm information, and determining the absolute value of the difference between the current motor encoding value and the previous motor encoding value;
[0033] A blocking processing module, for determining that the motor is blocked and recording the number of blocking times if the absolute value of the difference is less than a preset motor speed, and restarting the motor and increasing the motor movement speed when the number of blocking times is greater than a preset blocking times threshold;
[0034] The posture alarm processing module is used to prompt the user that the target surgical arm angle exceeds the limit when the surgical arm posture angle of the surgical robot exceeds the preset target posture angle; when the motor position of the surgical robot exceeds the preset target limit, it is used to prompt the user that the motor exceeds the limit.
[0035] In an optional implementation manner, the location alarm processing module is specifically used to:
[0036] After entering the motor displacement control task, setting the motor motion parameters, the motor motion parameters including the motor target position, the preset motor speed and the position tolerance;
[0037] Start the motor displacement control task loop and obtain the current motor encoding value;
[0038] When the absolute value of the difference between the current motor encoding value and the motor target position is not less than the position tolerance, determining the absolute value of the difference;
[0039] When the absolute value of the difference between the current motor encoding value and the motor target position is less than the position tolerance, it is determined that the motor has reached the motor target position.
[0040] An embodiment of the present disclosure also provides an electronic device, including: a processor, a memory and a bus, wherein the memory stores machine-readable instructions executable by the processor, and when the electronic device is running, the processor and the memory communicate through the bus, and when the machine-readable instructions are executed by the processor, the above-mentioned alarm processing method for the surgical robot is executed, or steps in any possible implementation of the above-mentioned alarm processing method for the surgical robot are performed.
[0041] An embodiment of the present disclosure also provides a computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, the alarm processing method for the surgical robot described above or the steps in any possible implementation of the alarm processing method for the surgical robot described above are executed.
[0042] The disclosed embodiments also provide a computer program product, including a computer program / instruction, which, when executed by a processor, implements the alarm processing method for the surgical robot, or the steps in any possible implementation of the alarm processing method for the surgical robot.
[0043] The present disclosure provides an alarm processing method, device and electronic device for a surgical robot. The method obtains the alarm information generated by the surgical robot and the corresponding alarm type, wherein the alarm type includes position alarm information of not reaching the specified position and position alarm information of posture exceeding the limit; for the position alarm information, the current motor encoding value and the previous motor encoding value in the previous task cycle are obtained, and the absolute value of the difference between the current motor encoding value and the previous motor encoding value is determined; if the absolute value of the difference is less than the preset motor speed, the motor is determined to be blocked and the number of blockages is recorded, and when the number of blockages is greater than the preset blocking number threshold, the motor is restarted and the motor movement speed is increased; for the posture alarm information, when the surgical arm posture angle of the surgical robot exceeds the preset target posture angle, the user is prompted that the target surgical arm angle exceeds the limit; when the motor position of the surgical robot exceeds the preset target limit, the user is prompted that the motor exceeds the limit. The method can effectively identify the abnormal situation that the motor fails to reach the target position within the set time, and provide a reliable alarm and prompt mechanism when the motor is blocked or the posture angle exceeds the limit, so as to ensure the safe operation of the surgical robot.
[0044] In order to make the above-mentioned objectives, features and advantages of the present disclosure more obvious and easy to understand, preferred embodiments are specifically cited below and described in detail with reference to the attached drawings. BRIEF DESCRIPTION OF THE DRAWINGS
[0045] In order to more clearly illustrate the technical solutions of the embodiments of the present disclosure, the following is a brief introduction to the drawings required for use in the embodiments. The drawings herein are incorporated into the specification and constitute a part of the specification. These drawings illustrate embodiments consistent with the present disclosure and are used together with the specification to illustrate the technical solutions of the present disclosure. It should be understood that the following drawings only illustrate certain embodiments of the present disclosure and should not be regarded as limiting the scope. For ordinary technicians in this field, other relevant drawings can also be obtained based on these drawings without creative work.
[0046] Figure 1 A flowchart of an alarm processing method for a surgical robot provided by an embodiment of the present disclosure is shown;
[0047] Figure 2 A flowchart of another alarm processing method of a surgical robot provided by an embodiment of the present disclosure is shown;
[0048] Figure 3 A schematic diagram of an alarm processing device for a surgical robot provided in an embodiment of the present disclosure is shown;
[0049] Figure 4 A schematic diagram of an electronic device provided by an embodiment of the present disclosure is shown. DETAILED DESCRIPTION
[0050] In order to make the purpose, technical scheme and advantages of the embodiments of the present disclosure clearer, the technical scheme in the embodiments of the present disclosure will be clearly and completely described below in conjunction with the drawings in the embodiments of the present disclosure. Obviously, the described embodiments are only part of the embodiments of the present disclosure, rather than all of the embodiments. The components of the embodiments of the present disclosure generally described and shown in the drawings here can be arranged and designed in various different configurations. Therefore, the following detailed description of the embodiments of the present disclosure provided in the drawings is not intended to limit the scope of the present disclosure for protection, but merely represents the selected embodiments of the present disclosure. Based on the embodiments of the present disclosure, all other embodiments obtained by those skilled in the art without making creative work belong to the scope of protection of the present disclosure.
[0051] It should be noted that similar reference numerals and letters denote similar items in the following drawings, and therefore, once an item is defined in one drawing, further definition and explanation thereof is not required in subsequent drawings.
[0052] The term "and / or" herein only describes an association relationship, indicating that three relationships may exist. For example, A and / or B may represent the following three situations: A exists alone, A and B exist at the same time, and B exists alone. In addition, the term "at least one" herein represents any combination of at least two of any one or more of a plurality of. For example, including at least one of A, B, and C may represent including any one or more elements selected from the set consisting of A, B, and C.
[0053] Research has found that the motor often encounters situations where it cannot reach the target position during execution. This may be caused by reasons such as the motor speed being set too low, insufficient voltage, or being blocked by external objects. In these cases, existing control methods usually adopt simple strategies, such as directly stopping the motor movement or increasing the motor speed. However, directly stopping the motor may cause the surgical operation to be interrupted, while simply increasing the speed and voltage may cause the motor to be in a high-voltage state for a long time when the motor is blocked by foreign objects, which will have an adverse effect on the life and reliability of the motor. Secondly, the existing surgical robots lack effective protection mechanisms for the limit control of the attitude angle and motor position. Due to the limited space in the surgical environment, if the attitude angle or motor position exceeds the preset limit range, it may cause the surgical arm to collide with the device casing or other sensitive areas, thereby adversely affecting the surgical process.
[0054] Based on the above research, the present disclosure provides an alarm processing method, device and electronic device for a surgical robot, which obtains the alarm information generated by the surgical robot and the corresponding alarm type, wherein the alarm type includes position alarm information of not reaching the specified position and position alarm information of posture exceeding the limit; for the position alarm information, obtain the current motor encoding value and the previous motor encoding value in the previous task cycle, and determine the absolute value of the difference between the current motor encoding value and the previous motor encoding value; if the absolute value of the difference is less than the preset motor speed, determine that the motor is blocked and record the number of blockages, and restart the motor and increase the motor movement speed when the number of blockages is greater than the preset blockage threshold; for the posture alarm information, when the surgical arm posture angle of the surgical robot exceeds the preset target posture angle, prompt the user that the target surgical arm angle exceeds the limit; when the motor position of the surgical robot exceeds the preset target limit, prompt the user that the motor exceeds the limit. It can effectively identify the abnormal situation that the motor fails to reach the target position within the set time, and provide a reliable alarm and prompt mechanism when encountering motor blockage or posture angle exceeding the limit, so as to ensure the safe operation of the surgical robot.
[0055] To facilitate understanding of this embodiment, a surgical robot alarm processing method disclosed in the embodiment of the present disclosure is first introduced in detail. The execution subject of the surgical robot alarm processing method provided in the embodiment of the present disclosure is generally a computer device with certain computing capabilities, and the computer device includes, for example: a terminal device or a server or other processing device, and the terminal device can be a user equipment (User Equipment, UE), a mobile device, a user terminal, a terminal, a cellular phone, a cordless phone, a personal digital assistant (Personal Digital Assistant, PDA), a handheld device, a computing device, a vehicle-mounted device, a wearable device, etc. In some possible implementations, the surgical robot alarm processing method can be implemented by a processor calling a computer-readable instruction stored in a memory.
[0056] See also Figure 1 1 is a flowchart of a robot alarm processing method provided by an embodiment of the present disclosure, the method comprising steps S101 to S104:
[0057] S101. Acquire alarm information and corresponding alarm types generated by a surgical robot, wherein the alarm types include position alarm information of not reaching a specified position and position alarm information of exceeding a limit.
[0058] In a specific implementation, the alarm types processed by the alarm processing method of the surgical robot provided in the embodiment of the present application include position alarm information that the motor of the surgical robot fails to reach the specified position within the specified time, and posture alarm information that the motor control exceeds the limit position and the surgical arm posture angle exceeds the limit.
[0059] S102 obtains the current motor encoding value and the previous motor encoding value in the previous task cycle according to the position alarm information, and determines the absolute value of the difference between the current motor encoding value and the previous motor encoding value.
[0060] In the specific implementation, the processing method for the position alarm information that the motor of the surgical robot fails to reach the specified position within the specified time is to determine whether the motor is blocked based on the current code value clicked in the task cycle of the current motor displacement control task and the motor code value in the task cycle of the previous motor displacement control task.
[0061] For details, see Figure 2 , is a flowchart of another robot alarm processing method provided by an embodiment of the present disclosure, the method comprising steps S1021-S1024:
[0062] S1021. After entering the motor displacement control task, setting motor motion parameters, the motor motion parameters including the motor target position, the preset motor speed and the position tolerance.
[0063] S1022, start the motor displacement control task loop and obtain the current motor encoding value.
[0064] S1023. When the absolute value of the difference between the current motor encoding value and the motor target position is not less than the position tolerance, determine the absolute value of the difference.
[0065] S1024: When the absolute value of the difference between the current motor encoding value and the motor target position is less than the position tolerance, determine that the motor has reached the motor target position.
[0066] In the specific implementation, the motor position control task is entered to move the motor to the target position. According to the control requirements, the motor motion parameters are pre-set, including the target position (target), the preset motor speed (speed), and the position tolerance (tolerance). These parameters are used to guide the motor's motion behavior.
[0067] Here, after setting the parameters, a control command is sent to the motor to start the motor movement. The motor starts to execute the task cycle of position control, in which the position encoder value of the motor is continuously monitored and adjusted according to the feedback of the encoder value.
[0068] During this process, the system obtains the real-time encoder value from the motor to determine whether the motor has reached the target position. The process determines whether the absolute value of the difference between the current encoder value and the target position is within the set tolerance range.
[0069] Among them, if the absolute value of the difference between the current encoding value and the target position is less than the tolerance range (that is, the motor has reached the target position). If the absolute value of the difference between the current encoding value and the target position is greater than the tolerance range (that is, the motor has not reached the target position), continue to execute the subsequent steps.
[0070] It should be noted that the motor encoding value is a key parameter in the motor position feedback system, which is usually generated by the encoder on the motor. The encoder is a sensor device installed on the motor shaft. It can measure the position, speed and direction of the motor shaft in real time, and convert this information into digital signals and feed it back to the control system. The encoding value represents the current position of the motor. In the position control task, the encoding value is used to monitor in real time whether the motor has reached the target position. The control system makes dynamic adjustments based on the difference between the encoding value and the set target position to ensure that the motor reaches the target position accurately.
[0071] As a possible implementation method, after determining that the motor has reached the motor target position, the business state corresponding to the motor displacement control task is switched to an idle state; information that the motor has reached the motor target position is sent to a preset human-computer interaction interface through a process pipeline to end the motor displacement control task.
[0072] S103: if the absolute value of the difference is less than the preset motor speed, determine that the motor is blocked and record the number of blockages; when the number of blockages is greater than the preset blockage threshold, restart the motor and increase the motor speed.
[0073] In the specific implementation, by comparing the current encoding value with the encoding value of the previous cycle, if the absolute value of the difference is less than the set speed value, the system considers that the motor may not move and records the number of blocking times. If the blocking number value exceeds the preset blocking number threshold, the system will immediately restart the motor and increase the speed and voltage of the motor to overcome possible resistance or obstacles and try to reach the target position again.
[0074] It should be noted that the preset blocking times threshold can be determined according to actual needs and is not specifically limited here.
[0075] Afterwards, the number of restarts of the motor is recorded; if the number of restarts is greater than the preset restart threshold, it is determined that the motor is abnormal; and the click abnormality information is sent to the preset human-computer interaction interface through the process pipeline.
[0076] Here, the system will also record the number of restarts and determine whether the number of restarts exceeds the preset restart threshold. If the number of restarts exceeds the preset restart threshold, the system will consider that the motor is abnormal, terminate the current task and report the abnormal state of the motor to the UI interface, prompting that manual inspection and processing are required. If the number of restarts does not exceed the preset restart threshold, the system will continue to restart the motor and try to reach the target position again.
[0077] It should be noted that the preset restart times threshold can be determined according to actual needs and is not specifically limited here. Preferably, it can be 2 times.
[0078] As a possible implementation method, when the absolute value of the difference between the current motor encoding value and the previous motor encoding value is not less than the preset motor speed, the motor is controlled to sleep for a preset sleep time, and the step of obtaining the current motor encoding value is re-executed; when the number of blocking times is not greater than the preset blocking times threshold, the motor is controlled to sleep for a preset sleep time, and the step of obtaining the current motor encoding value is re-executed; when the number of restarts is not greater than the preset restart times threshold, the motor is controlled to sleep for a preset sleep time, and the step of obtaining the current motor encoding value is re-executed.
[0079] It should be noted that the preset sleep time can be determined according to actual needs, and there is no specific limit here, and it can be preferably 100 milliseconds to ensure that the motor has enough time to adjust, and then re-enter the position judgment and blocking detection process until the motor successfully reaches the target position or the number of restarts exceeds the limit.
[0080] S104 is for the posture alarm information. When the posture angle of the surgical arm of the surgical robot exceeds the preset target posture angle, the user is prompted that the target surgical arm angle exceeds the limit; when the motor position of the surgical robot exceeds the preset target limit, the user is prompted that the motor exceeds the limit.
[0081] In specific implementation, the surgical robot for eye surgery is divided into two control modes: extraocular and intraocular. After entering the extraocular or intraocular control cycle task, it enters the control cycle to gradually adjust the posture of the surgical arm and the motor.
[0082] Here, in each control cycle, the system sets the target posture angle of the surgical arm according to the surgical operation requirements. These target posture angles determine the positioning and orientation of the surgical arm in space, ensuring the accuracy of the operation.
[0083] Specifically, when the posture angle of the surgical arm does not exceed the preset target posture angle, inverse kinematics is used to determine whether the motor position exceeds the preset target limit; if so, the motor position over-limit information is sent to the preset human-computer interaction interface through the process pipeline; if not, a motor control command is sent to control the motor to continue to perform the moving task.
[0084] Here, after obtaining the target attitude angle, the system will calculate the target value that each motor needs to achieve through the inverse kinematics algorithm. Inverse kinematics analysis can convert the target value of the attitude angle into the specific position parameters of each motor, guiding the motor to achieve precise movement.
[0085] If the target attitude angle or motor position does not exceed the set limit range, the system will continue to send motor control commands and execute the next step. If it exceeds the set limit range, the system will send an alarm notification to the UI interface through the process pipeline.
[0086] Furthermore, when the attitude angle or motor position is detected to be out of limit, the system will immediately send a notification to the UI and display the limit information on the interface. The UI interface will display the specific limit items, such as attitude angle out of limit or motor position out of limit, so that the operator can quickly identify the problem.
[0087] Here, after the over-limit alarm is processed, if the over-limit problem of the motor is resolved, the system will continue to the next control cycle to ensure that the surgical arm and the motor continue to move according to the set path.
[0088] The present disclosure provides an alarm processing method for a surgical robot, which obtains alarm information generated by the surgical robot and the corresponding alarm type, wherein the alarm type includes position alarm information of not reaching the specified position and position alarm information of posture exceeding the limit; for the position alarm information, obtain the current motor encoding value and the previous motor encoding value in the previous task cycle, and determine the absolute value of the difference between the current motor encoding value and the previous motor encoding value; if the absolute value of the difference is less than the preset motor speed, determine that the motor is blocked and record the number of blockages, and restart the motor and increase the motor movement speed when the number of blockages is greater than the preset blocking number threshold; for the posture alarm information, when the surgical arm posture angle of the surgical robot exceeds the preset target posture angle, prompt the user that the target surgical arm angle exceeds the limit; when the motor position of the surgical robot exceeds the preset target limit, prompt the user that the motor exceeds the limit. It can effectively identify the abnormal situation that the motor fails to reach the target position within the set time, and provide a reliable alarm and prompt mechanism when encountering motor blockage or posture angle exceeding the limit, so as to ensure the safe operation of the surgical robot.
[0089] Those skilled in the art will appreciate that, in the above method of specific implementation, the order in which the steps are written does not imply a strict execution order and does not constitute any limitation on the implementation process. The specific execution order of the steps should be determined by their functions and possible internal logic.
[0090] Based on the same inventive concept, the embodiment of the present disclosure also provides an alarm processing device for a surgical robot corresponding to the alarm processing method of the surgical robot. Since the principle of solving the problem by the device in the embodiment of the present disclosure is similar to the alarm processing method of the surgical robot mentioned above in the embodiment of the present disclosure, the implementation of the device can refer to the implementation of the method, and the repeated parts will not be repeated.
[0091] See also Figure 3 , Figure 3 Schematic diagram of an alarm processing device for a surgical robot provided in an embodiment of the present disclosure. Figure 3 As shown in the figure, the alarm processing device 300 of the surgical robot provided by the embodiment of the present disclosure includes:
[0092] The alarm acquisition module 310 is used to obtain the alarm information generated by the surgical robot and the corresponding alarm type, wherein the alarm type includes position alarm information of not reaching the specified position and position alarm information of exceeding the limit.
[0093] The position alarm processing module 320 is used to obtain the current motor encoding value and the previous motor encoding value in the previous task cycle according to the position alarm information, and determine the absolute value of the difference between the current motor encoding value and the previous motor encoding value.
[0094] The blocking processing module 330 is used to determine that the motor is blocked and record the number of blocking times if the absolute value of the difference is less than the preset motor speed, and restart the motor and increase the motor movement speed when the number of blocking times is greater than the preset blocking number threshold.
[0095] The posture alarm processing module 340 is used to prompt the user that the target surgical arm angle exceeds the limit when the surgical arm posture angle of the surgical robot exceeds the preset target posture angle; and to prompt the user that the motor exceeds the limit when the motor position of the surgical robot exceeds the preset target limit.
[0096] For descriptions of the processing flow of each module in the device and the interaction flow between each module, reference may be made to the relevant descriptions in the above method embodiment, which will not be described in detail here.
[0097] The present disclosure provides an alarm processing device for a surgical robot, which obtains alarm information generated by the surgical robot and the corresponding alarm type, wherein the alarm type includes position alarm information of not reaching the specified position and position alarm information of posture exceeding the limit; for the position alarm information, obtain the current motor encoding value and the previous motor encoding value in the previous task cycle, and determine the absolute value of the difference between the current motor encoding value and the previous motor encoding value; if the absolute value of the difference is less than the preset motor speed, determine that the motor is blocked and record the number of blockages, and restart the motor and increase the motor movement speed when the number of blockages is greater than the preset blocking number threshold; for the posture alarm information, when the surgical arm posture angle of the surgical robot exceeds the preset target posture angle, prompt the user that the target surgical arm angle exceeds the limit; when the motor position of the surgical robot exceeds the preset target limit, prompt the user that the motor exceeds the limit. It can effectively identify the abnormal situation that the motor fails to reach the target position within the set time, and provide a reliable alarm and prompt mechanism when encountering motor blockage or posture angle exceeding the limit, so as to ensure the safe operation of the surgical robot.
[0098] Corresponds to Figure 1 The alarm processing method of the surgical robot in the present disclosure also provides an electronic device 40, such as Figure 4 FIG. 4 is a schematic diagram of the structure of an electronic device 400 provided in an embodiment of the present disclosure, including:
[0099] Processor 41, memory 42, and bus 43; memory 42 is used to store execution instructions, including memory 421 and external memory 422; memory 421 here is also called internal memory, which is used to temporarily store operation data in processor 41 and data exchanged with external memory 422 such as hard disk. Processor 41 exchanges data with external memory 422 through memory 421. When the electronic device 400 is running, the processor 41 communicates with the memory 42 through bus 43, so that the processor 41 executes Figure 1 Steps of an alarm handling method for a surgical robot.
[0100] The present disclosure also provides a computer-readable storage medium, on which a computer program is stored, and when the computer program is executed by a processor, the steps of the alarm processing method for the surgical robot described in the above method embodiment are executed. The storage medium can be a volatile or non-volatile computer-readable storage medium.
[0101] The presently disclosed embodiment also provides a computer program product, which includes computer instructions. When the computer instructions are executed by a processor, the steps of the alarm processing method for the surgical robot described in the above method embodiment can be executed. For details, please refer to the above method embodiment, which will not be repeated here.
[0102] The computer program product may be implemented in hardware, software or a combination thereof. In one optional embodiment, the computer program product is implemented as a computer storage medium. In another optional embodiment, the computer program product is implemented as a software product, such as a software development kit (SDK).
[0103] Those skilled in the art can clearly understand that, for the convenience and simplicity of description, the specific working process of the device described above can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here. In the several embodiments provided in the present disclosure, it should be understood that the disclosed device and method can be implemented in other ways. The device embodiments described above are merely schematic. For example, the division of the units is only a logical function division. There may be other division methods in actual implementation. For example, multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some communication interfaces, and the indirect coupling or communication connection of the device or unit can be electrical, mechanical or other forms.
[0104] The units described as separate components may or may not be physically separated, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
[0105] In addition, each functional unit in each embodiment of the present disclosure may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
[0106] If the functions are implemented in the form of software functional units and sold or used as independent products, they can be stored in a non-volatile computer-readable storage medium that is executable by a processor. Based on this understanding, the technical solution of the present disclosure, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product, which is stored in a storage medium and includes several instructions for a computer device (which can be a personal computer, a server, or a network device, etc.) to perform all or part of the steps of the method described in each embodiment of the present disclosure. The aforementioned storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.
[0107] Finally, it should be noted that the above-described embodiments are only specific implementation methods of the present disclosure, which are used to illustrate the technical solutions of the present disclosure, rather than to limit them. The protection scope of the present disclosure is not limited thereto. Although the present disclosure is described in detail with reference to the above-described embodiments, ordinary technicians in the field should understand that any technician familiar with the technical field can still modify the technical solutions recorded in the above-described embodiments within the technical scope disclosed in the present disclosure, or can easily think of changes, or make equivalent replacements for some of the technical features therein; and these modifications, changes or replacements do not make the essence of the corresponding technical solutions deviate from the spirit and scope of the technical solutions of the embodiments of the present disclosure, and should be included in the protection scope of the present disclosure. Therefore, the protection scope of the present disclosure should be based on the protection scope of the claims.
Claims
1. A method for processing an alarm of a surgical robot, characterized in that: include: Acquire alarm information and corresponding alarm types generated by the surgical robot, wherein the alarm types include position alarm information of not reaching a specified position and position alarm information of exceeding a limit; With respect to the position alarm information, a current motor encoding value and a previous motor encoding value in a previous task cycle are obtained, and an absolute value of a difference between the current motor encoding value and the previous motor encoding value is determined; If the absolute value of the difference is less than the preset motor speed, the motor is determined to be blocked and the number of blockages is recorded; when the number of blockages is greater than the preset blocking number threshold, the motor is restarted and the motor speed is increased; In response to the posture alarm information, when the posture angle of the surgical arm of the surgical robot exceeds the preset target posture angle, the user is prompted that the target surgical arm angle exceeds the limit; When the motor position of the surgical robot exceeds the preset target limit, the user is prompted that the motor is out of limit.
2. The method according to claim 1, characterized in that For the position alarm information, obtaining the current motor encoding value and the previous motor encoding value in the previous task cycle, and determining the absolute value of the difference between the current motor encoding value and the previous motor encoding value, specifically includes: After entering the motor displacement control task, setting the motor motion parameters, the motor motion parameters including the motor target position, the preset motor speed and the position tolerance; Start the motor displacement control task loop and obtain the current motor encoding value; When the absolute value of the difference between the current motor encoding value and the motor target position is not less than the position tolerance, determining the absolute value of the difference; When the absolute value of the difference between the current motor encoding value and the motor target position is less than the position tolerance, it is determined that the motor has reached the motor target position.
3. The method according to claim 2, characterized in that After determining that the motor has reached the motor target position, the method further includes: Switching the business state corresponding to the motor displacement control task to an idle state; The information that the motor reaches the motor target position is sent to a preset human-computer interaction interface through a process pipeline, thereby completing the motor displacement control task.
4. The method according to claim 1, characterized in that: If the absolute value of the difference is less than the preset motor speed, it is determined that the motor is blocked and the number of blockages is recorded, and when the number of blockages is greater than the preset blockage threshold, the motor is restarted and the motor speed is increased, the method further includes: Record the number of motor restarts; If the restart number is greater than a preset restart number threshold, it is determined that the motor is abnormal; Send click exception information to the preset human-computer interaction interface through the process pipeline.
5. The method according to claim 4, characterized in that The method further comprises: When the absolute value of the difference between the current motor encoding value and the previous motor encoding value is not less than the preset motor speed, the motor is controlled to sleep for a preset sleep time, and the step of obtaining the current motor encoding value is re-executed; When the blocking number is not greater than the preset blocking number threshold, controlling the motor to sleep for the preset sleep time, and then re-performing the step of obtaining the current motor encoding value; When the restart times are not greater than the preset restart times threshold, the motor is controlled to sleep for the preset sleep time, and then the step of obtaining the current motor encoding value is executed again.
6. The method according to claim 1, characterized in that When the motor position of the surgical robot exceeds the preset target limit, the user is prompted that the motor exceeds the limit, including: When the posture angle of the surgical arm does not exceed the preset target posture angle, determining whether the motor position exceeds the preset target limit through inverse kinematics; If so, the motor position over-limit information is sent to the preset human-computer interaction interface through the process pipeline; If not, a motor control command is sent to control the motor to continue to perform the moving task.
7. An alarm processing device for a surgical robot, characterized in that: include: An alarm acquisition module, used to acquire alarm information and corresponding alarm types generated by the surgical robot, wherein the alarm types include position alarm information of not reaching a specified position and position alarm information of exceeding a limit; A position alarm processing module, used for obtaining the current motor encoding value and the previous motor encoding value in the previous task cycle according to the position alarm information, and determining the absolute value of the difference between the current motor encoding value and the previous motor encoding value; A blocking processing module, for determining that the motor is blocked and recording the number of blocking times if the absolute value of the difference is less than a preset motor speed, and restarting the motor and increasing the motor movement speed when the number of blocking times is greater than a preset blocking times threshold; A posture alarm processing module is used to prompt the user of the target surgical arm angle exceeding the limit when the posture angle of the surgical arm of the surgical robot exceeds the preset target posture angle according to the posture alarm information; When the motor position of the surgical robot exceeds the preset target limit, the user is prompted that the motor is out of limit.
8. The device according to claim 7, characterized in that The location alarm processing module is specifically used for: After entering the motor displacement control task, setting the motor motion parameters, the motor motion parameters including the motor target position, the preset motor speed and the position tolerance; Start the motor displacement control task loop and obtain the current motor encoding value; When the absolute value of the difference between the current motor encoding value and the motor target position is not less than the position tolerance, determining the absolute value of the difference; When the absolute value of the difference between the current motor encoding value and the motor target position is less than the position tolerance, it is determined that the motor has reached the motor target position.
9. An electronic device, characterized in that: include: A processor, a memory and a bus, wherein the memory stores machine-readable instructions executable by the processor, and when the electronic device is running, the processor and the memory communicate via the bus, and when the machine-readable instructions are executed by the processor, the steps of the alarm processing method for the surgical robot as described in any one of claims 1 to 6 are performed.
10. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores a computer program, and when the computer program is executed by a processor, the steps of the alarm processing method of the surgical robot as described in any one of claims 1 to 6 are executed.
Citation Information
Patent Citations
Stepping motor load judgment method and stepping motor closed-loop control system
CN114649982A
Surgical robot state monitoring system, method and equipment and storage medium
CN116849727A
Exhaust industrial control system for commercial gas equipment
CN216617965U
Electronic motor controller and method for controlling a motor
WO2009006172A2