Hierarchical functions for user input mechanisms in computer-assisted surgical systems
By designing a system to detect the start and stop of the user input mechanism in a computer-assisted surgical system, the activation and deactivation of the clutch operating mode is achieved, solving the problem that it is difficult for the user input mechanism to achieve intuitive function selection, and improving the efficiency of surgical operations and the operating convenience of the system.
Patent Information
- Application Number
- CN201980096315.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2019-03-12
- Publication Date
- 2025-04-11
- Estimated Expiration
- 2039-03-12
AI Technical Summary
User input mechanisms of existing computer-assisted surgical systems are difficult to achieve intuitive and convenient function selection and may complicate the operation of the main control.
A system is designed to detect the start and stop of the user input mechanism associated with the user control mechanism through a processor, and to facilitate activation and deactivation of the clutch operating mode in which the control of the user control mechanism and the surgical instrument is decoupled. Based on detection by user input, the associated information is determined and compared with the defined criteria, and when the information meets the criteria, functions associated with different operating modes of the computer-assisted surgical system are performed.
It realizes the user's ability to select the computer-assisted surgical system through intuitive user input mechanisms, reduces unexpected actions, and improves the efficiency of surgical operations and the operation convenience of the system.
Smart Images

Figure CN113840577B_ABST
Abstract
Description
Background Art
[0001] Computer-assisted surgery systems allow surgeons to control remotely controlled surgical instruments to perform surgical procedures on patients. The surgeon uses the main controls of the computer-assisted surgery system to control the movement of the surgical instruments to perform the surgical procedure.
[0002] The computer-assisted surgical system may have a user input mechanism (e.g., a button or the like) by which the surgeon can control additional functions of the computer-assisted surgical system, such as a user input mechanism for selecting a function to be performed by the computer-assisted surgical system. It is desirable that such a user input mechanism be intuitive and convenient for the surgeon to use, and not obstruct or unduly complicate the operation of the main controls of the computer-assisted surgical system. Summary of the invention
[0003] An exemplary system includes a processor and a memory storing instructions, and the processor is communicatively coupled to the memory and configured to execute instructions to: detect the activation and deactivation of a user input mechanism associated with a user control mechanism, the user control mechanism being used to control a surgical instrument of a manipulator arm coupled to a computer-assisted surgical system, the user input mechanism being configured to facilitate activation and deactivation of a clutch operating mode in which the user control mechanism is decoupled from control of the surgical instrument; based on the detection of the activation and deactivation of the user input mechanism, determine information associated with the user input mechanism and the user control mechanism; compare the information to a set of defined criteria; and perform functions associated with different operating modes of the computer-assisted surgical system when the information meets the set of defined criteria.
[0004] An exemplary non-transitory computer-readable medium storing instructions that, when executed, direct at least one processor of a computing device to: detect a first input received through a user input mechanism associated with a user control mechanism for controlling a surgical instrument of a manipulator arm coupled to a computer-assisted surgical system, the user input mechanism being configured to facilitate activation and deactivation of a clutch operating mode in which the user control mechanism is decoupled from control of the surgical instrument; based on the detection of the first input, determine a first set of information associated with the user input mechanism and the user control mechanism; detect a second input received through the user input mechanism; based on the detection of the second input, determine a second set of information associated with the user input mechanism and the user control mechanism; compare the first set of information and the second set of information to a set of defined criteria; and when the set of defined criteria is met, perform functions associated with different operating modes of the computer-assisted surgical system.
[0005] An exemplary method includes: detecting the start and stop of a user input mechanism associated with a user control mechanism, the user control mechanism being used to control a surgical instrument of a manipulator arm coupled to a computer-assisted surgical system, the user input mechanism being configured to facilitate activation and deactivation of a clutch operating mode in which the user control mechanism is decoupled from control of the surgical instrument; based on the detection of the start and stop of the user input mechanism, determining information associated with the user input mechanism and the user control mechanism; comparing the information to a set of defined criteria; and when the information meets the set of defined criteria, performing functions associated with different operating modes of the computer-assisted surgical system. BRIEF DESCRIPTION OF THE DRAWINGS
[0006] The accompanying drawings illustrate various embodiments and are part of the specification. The embodiments shown are examples only and do not limit the scope of the present disclosure. Throughout the accompanying drawings, the same or similar reference numerals represent the same or similar elements.
[0007] Figure 1 An exemplary computer-assisted surgical system according to the principles described herein is shown.
[0008] Figure 2 The invention may be included in accordance with the principles described herein. Figure 1 An exemplary control system within a computer-assisted surgical system.
[0009] Figure 3 An exemplary function selection system according to the principles described herein is shown.
[0010] Figure 4 An exemplary method for selectively executing functions of a computer-assisted surgery system according to the principles described herein is shown.
[0011] Figure 5 An exemplary method for selectively executing functions of a computer-assisted surgery system according to the principles described herein is shown.
[0012] Figure 6 An exemplary computing system in accordance with the principles described herein is shown. DETAILED DESCRIPTION
[0013] This article describes a system and method for providing hierarchical functions for a user input mechanism of a computer-assisted surgical system. Based on the hierarchical functions of the user input mechanism, a user of the computer-assisted surgical system can intuitively and / or effectively select the functions to be performed by the computer-assisted surgical system. For example, in some embodiments, the computer-assisted surgical system may include a control mechanism (e.g., a set of one or more master controls) through which a surgeon can provide input to remotely control a surgical instrument coupled to the control mechanism. The computer-assisted surgical system may also include a user input mechanism associated with (e.g., located on) the control mechanism, and the surgeon can provide input through the user input mechanism to indicate one or more hierarchical functions mapped to the user input mechanism to be performed by the computer-assisted surgical system. In some examples, the computer-assisted surgical system can be configured to process input received through the user input mechanism and information associated with the input (e.g., contextual information, such as information about the movement of the control mechanism associated with the input) to determine which of the various hierarchical functions are to be performed. The computer-assisted surgical system can be configured to process the input and associated information in a manner that supports the use of a single user input mechanism (e.g., a single binary option user input mechanism) for the user to select any one of the multiple layers of functions to be performed mapped to the user input mechanism.
[0014] As an example, a computer-assisted surgical system can provide a conventional operating mode in which a control mechanism (e.g., a set of master controls) can be manipulated by a surgeon to remotely control a surgical instrument coupled to a manipulator arm of the computer-assisted surgical system. The computer-assisted surgical system can also provide a clutch operating mode in which the master controls are decoupled from manipulation of the surgical instrument so that the surgeon can manipulate (e.g., reposition) the master controls without affecting the surgical instrument (e.g., without moving or otherwise remotely controlling the surgical instrument). The computer-assisted surgical system can include a user input mechanism configured to facilitate activation and deactivation of the clutch operating mode. In addition to facilitating activation and deactivation of the clutch operating mode, the user input mechanism can be configured to facilitate user selection of one or more additional functions to be performed by the computer-assisted surgical system.
[0015] The user input mechanism can be a single binary option user input mechanism associated with a control mechanism (e.g., a set of master controls). To illustrate an example, the user input mechanism can be a button located on a control mechanism (e.g., a set of master controls). The computer-assisted surgical system can be configured to enable the surgeon to select to operate the computer-assisted surgical system in a clutch operating mode by starting and holding a button (e.g., by pressing a button and holding the button) while the surgeon manipulates the master controls. The same button can also be used by the surgeon to indicate another function to be performed by the computer-assisted surgical system. For example, the instantaneous start and stop of a button that meets a set of defined criteria (e.g., a quick click of a button that meets the criteria) can be mapped to another function of the computer-assisted surgical system, so that the instantaneous start and stop of a button that meets the defined criteria will trigger the execution of the function.
[0016] To this end, the computer-assisted surgical system can receive information associated with the user's interaction with the button (e.g., pressed, released, held) and information associated with the primary control (e.g., position, movement, speed) and determine whether the user's interaction with the button meets defined criteria, which can indicate whether the surgeon intended to instruct the computer-assisted surgical system to perform another function, such as a function associated with another operating mode other than the clutch operating mode. In addition, such information can be used by the system to determine whether the interaction with the button was unintentional.
[0017] By accessing and using additional information associated with the user input mechanism and the main control, the computer-assisted surgical system can reliably and / or accurately select and execute one or more functions of the computer-assisted surgical system that the surgeon intends to perform. In addition, by processing the received input using the additional information as described herein, the computer-assisted surgical system can allow the surgeon to use the same input mechanism to activate various operating modes and / or enable the execution of various functions associated with different operating modes, which can allow for fewer and / or more useful user input mechanisms and a simple, tidy interface for intuitive use. An intuitive interface can allow the surgeon to perform fewer unintended actions and / or perform intended actions more easily, which can lead to convenient and / or intuitive operation of the computer-assisted surgical system, as well as more effective surgical procedures. This can allow the computer-assisted surgical system to have a compact and flexible mechanical design (e.g., a design that allows multiple degrees of motion of the surgeon's hand for manipulating the main control), and can help keep the number of user input mechanisms implemented by the computer-assisted surgical system to a minimum. These and other advantages and benefits of the systems and methods described herein will become apparent.
[0018] Figure 1An exemplary computer-assisted surgical system 100 ("surgical system 100") is shown. As shown, surgical system 100 may include a manipulation system 102, a user control system 104, and an auxiliary system 106 that are communicatively coupled to one another. Surgical system 100 may be utilized by a surgical team to perform computer-assisted surgery on a patient 108. As shown, the surgical team may include a surgeon 110-1, an assistant 110-2, a nurse 110-3, and an anesthesiologist 110-4, all of which may be collectively referred to as "surgical team members 110". Additional or alternative surgical team members may be present during a surgical procedure to serve a particular embodiment.
[0019] Although Figure 1 A minimally invasive surgical procedure is shown being performed, but it should be understood that the surgical system 100 may similarly be used to perform open surgical procedures or other types of surgical procedures that may similarly benefit from the accuracy and convenience of the surgical system 100. Furthermore, it should be understood that a surgical procedure that may consistently employ the surgical system 100 may include not only the operative phase of the surgical procedure (e.g., Figure 1 ), and may also include pre-operative, post-operative and / or other suitable surgical stages. Surgery may include any operation on a patient using manual and / or instrumental techniques to detect or treat a patient's physical condition.
[0020] like Figure 1 As shown, the manipulation system 102 may include a plurality of manipulator arms 112 (e.g., manipulator arms 112-1 to 112-4) to which a plurality of surgical instruments may be coupled. Each surgical instrument may be implemented by any suitable surgical tool (e.g., a tool having tissue interaction functionality), a medical tool, an imaging device (e.g., an endoscope), a sensing instrument (e.g., a force sensing surgical instrument), a diagnostic instrument, etc., which may be used for computer-assisted surgery on a patient 108 (e.g., by being at least partially inserted into the patient 108 and manipulated to perform computer-assisted surgery on the patient 108). Although the manipulation system 102 is depicted and described herein as including four manipulator arms 112, it should be appreciated that the manipulation system 102 may include only a single manipulator arm 112 or any other number of manipulator arms that may be used for a particular embodiment.
[0021] The manipulator arm 112 and / or a surgical instrument attached to the manipulator arm 112 may include one or more displacement transducers, orientation sensors, and / or position sensors for generating raw (i.e., uncorrected) kinematic information. One or more components of the surgical system 100 may be configured to use the kinematic information to track (e.g., determine its position) and / or control the surgical instrument.
[0022] The user control system 104 can be configured to facilitate the surgeon 110-1 to control the manipulator arm 112 and the surgical instruments attached to the manipulator arm 112. For example, the surgeon 110-1 can interact with the user control system 104 to remotely move or telecontrol the manipulator arm 112 and the surgical instruments. To this end, the user control system 104 can provide the surgeon 110-1 with images (e.g., high-definition 3D images) of the surgical area associated with the patient 108 captured by an imaging system (e.g., an endoscope or any other suitable medical imaging system). In some examples, the user control system 104 can include a stereoscopic viewer with two displays, wherein a stereoscopic image of the surgical area associated with the patient 108 and generated by the stereoscopic imaging system can be viewed by the surgeon 110-1. The surgeon 110-1 can utilize the images to perform one or more surgeries using one or more surgical instruments attached to the manipulator arm 112.
[0023] To facilitate control of the surgical instruments, the user control system 104 may include a control mechanism, such as a set of master controls. The master controls may be manipulated by the surgeon 110-1 to control the movement of the surgical instruments (e.g., by utilizing robotics and / or teleoperation techniques). The master controls may be configured to detect various hand, wrist, and finger movements of the surgeon 110-1. In this way, the surgeon 110-1 may intuitively perform surgery using one or more surgical instruments.
[0024] The auxiliary system 106 may include one or more computing devices configured to perform basic processing operations of the surgical system 100. In such a configuration, the one or more computing devices included in the auxiliary system 106 may control and / or coordinate operations performed by various other components of the surgical system 100 (e.g., the manipulator system 102 and the user control system 104). For example, a computing device included in the user control system 104 may transmit instructions to the manipulator system 102 via one or more computing devices included in the auxiliary system 106. As another example, the auxiliary system 106 may receive and process image data representing images from the manipulator system 102 that were captured by an imaging device attached to one of the manipulator arms 112.
[0025] In some examples, the assistance system 106 can be configured to present visual content to a surgical team member 110 who may not have access to the images provided to the surgeon 110-1 at the user control system 104. To this end, the assistance system 106 can include a display monitor 114 that is configured to display one or more user interfaces, such as an image of the surgical area (e.g., a 2D image), information associated with the patient 108 and / or the surgical procedure, and / or any other visual content that may serve a particular embodiment. For example, the display monitor 114 can display an image of the surgical area along with additional content (e.g., graphical content, contextual information, etc.) displayed simultaneously with the image. In some embodiments, the display monitor 114 is implemented by a touch screen display, and the surgical team member 110 can interact with the touch screen display (e.g., via touch gestures) to provide user input to the surgical system 100.
[0026] The operating system 102, the user control system 104, and the auxiliary system 106 may be communicatively coupled to each other in any suitable manner. Figure 1 As shown, the operating system 102, the user control system 104, and the auxiliary system 106 can be communicatively coupled via a control line 116, which can represent any wired or wireless communication link that can serve a particular implementation. To this end, the operating system 102, the user control system 104, and the auxiliary system 106 can each include one or more wired or wireless communication interfaces, such as one or more local area network interfaces, Wi-Fi network interfaces, cellular interfaces, etc.
[0027] In some examples, a non-transitory computer-readable medium storing computer-readable instructions can be provided according to the principles described herein. When executed by a processor of a computing device, the instructions can direct the processor and / or computing device to perform one or more operations, including one or more of the operations described herein. Any of a variety of known computer-readable media can be used to store and / or transmit such instructions. Such a non-transitory computer-readable medium storing computer-readable instructions can be implemented by one or more components of the surgical system 100.
[0028] As referred to herein, non-transitory computer-readable media may include any non-transitory storage medium that participates in providing data (e.g., instructions) that can be read and / or executed by a computing device (e.g., by a processor of a computing device). For example, non-transitory computer-readable media may include, but are not limited to, any combination of non-volatile storage media and / or volatile storage media. Exemplary non-volatile storage media include, but are not limited to, read-only memory, flash memory, solid-state drives, magnetic storage devices (e.g., hard disks, floppy disks, magnetic tapes, etc.), ferroelectric random access memory ("RAM"), and optical disks (e.g., compact disks, digital video disks, Blu-ray disks, etc.). Exemplary volatile storage media include, but are not limited to, RAM (e.g., dynamic RAM).
[0029] Figure 2 An exemplary control system 200 is shown communicatively coupled to a user control mechanism 202 and a manipulator arm 112. The control system 200 may be communicatively coupled to the user control mechanism 202 and the manipulator arm 112 in any suitable manner that allows data, communications, and / or other signals to be sent by the control system 200 to the user control mechanism 202 and the manipulator arm 112 and / or received by the control system 200 from the user control mechanism 202 and the manipulator arm 112.
[0030] The control system 200 may be implemented within one or more components of the surgical system 100, such as within the user control system 104, the auxiliary system 106, the manipulator system 102, or any combination thereof. The control system 200 may be implemented as hardware, software, or a combination of hardware and software configured to perform one or more of the operations described herein, including operations for processing user input received through the user control 202 and determining the operation of the surgical system 100 based on the user input. For example, the control system 200 may be configured to translate movements of the user control 202 into movements of the manipulator arm 112 and / or a surgical instrument 204 attached to the manipulator arm 112.
[0031] Manipulator arm 112 may be a manipulator arm of a computer-assisted surgical system, such as any of manipulator arms 112-1 through 112-4 of surgical system 100. Any suitable surgical instrument (eg, surgical instrument 204) may be physically coupled to manipulator arm 112 in any suitable manner.
[0032] The user control mechanism 202 can be part of the user control system 104 of the surgical system 100. For example, the user control mechanism 202 can include or be included in a set of main controls of the user control system 104. In some examples, for example, the user control mechanism 202 can be part of a set of main controls configured to be manipulated by a surgeon to control the movement of a surgical instrument. For example, the user control mechanism 202 can be configured to be manipulated by the surgeon's hand to remotely control a surgical instrument attached to a manipulator arm, and the set of main controls can include additional controls for controlling the movement of the surgical instrument, such as another user control mechanism 202 configured to be manipulated by the surgeon's other hand to remotely control another surgical instrument attached to another manipulator arm. Although Figure 2 A user control mechanism 202 configured to be manipulated by one hand of a surgeon is shown, but in other examples, the user control mechanism may be a set of master controls that include multiple mechanisms configured to be manipulated to control the movement of a surgical instrument. Thus, a user control mechanism as used herein may refer to a portion of a set of master controls or the entire set of master controls.
[0033] The user control mechanism 202 may include a variety of mechanisms (e.g., buttons, finger rings, levers, pivot points, etc.) configured to receive various hand, wrist, and finger movements of the surgeon to control the movement of the surgical instrument. Thus, the surgeon may manipulate the user control mechanism 202 in a variety of ways and with multiple degrees of freedom to remotely control a surgical instrument 204 coupled to the user control mechanism 202 via the manipulator arm 112 and the control system 200.
[0034] In addition, the user control mechanism 202 includes a user input mechanism 206 through which the surgeon can provide input to indicate various operating modes. As shown, the user input mechanism 206 can be implemented as a button located on the user control mechanism 202. Alternatively or additionally, the user input mechanism 206 can be implemented as any type of input mechanism, such as a switch, a toggle input, a directional key, a joystick, etc. In addition, although the user input mechanism 206 is shown as part of the user control mechanism 202 (e.g., located on the user control mechanism 202), the user input mechanism 206 can alternatively or additionally include an input mechanism separate from the user control mechanism 202, such as a foot pedal, a voice input mechanism, or any other suitable input mechanism.
[0035] In some implementations, the user input mechanism 206 may include a binary input mechanism having exactly two distinct mechanical positions (e.g., on and off positions, activated and deactivated positions, etc.) that are mapped to discrete input options and that may be selected by user activation and / or deactivation of the user input mechanism 206. For example, the user input mechanism 206 may include a button (e.g., a spring-loaded button), a switch (e.g., a spring-loaded switch), a slider (e.g., a spring-loaded slider), a pedal (e.g., a spring-loaded pedal), etc. Such an input mechanism may facilitate discrete and momentary input to select from two binary options (e.g., two mechanical positions).
[0036] The user input mechanism 206 may be associated with the user control mechanism 202 in any suitable manner. For example, the user input mechanism 206 may be arranged on the user control mechanism 202 so that the surgeon who is telecontrolling the surgical instrument 204 using the user control mechanism 202 can easily access the user input mechanism 206. As an alternative example, because both the user input mechanism 206 and the user control mechanism 202 are components of the same computer-assisted surgical system, the user input mechanism 206 may be associated with the user control mechanism 202. For example, the user input mechanism 206 may be a foot pedal that can be activated and deactivated by a user of the computer-assisted surgical system.
[0037] The control system 200 is configured to receive information from the user controls 202. For example, the control system 200 may receive information about the position, movement, etc. of the user controls 202 and / or information about the user's interaction with the user controls 202. Based on such information, the control system 200 may track the position, movement, and / or other properties of the user controls 202.
[0038] The control system 200 may also receive information from the manipulator arm 112, such as information regarding movement, pressure, and / or other properties of the manipulator arm 112. In certain examples and / or modes of operation, the control system 200 may process the information received from the manipulator arm 112 and provide corresponding information and / or signals to the user control mechanism 202 to provide feedback (e.g., tactile feedback) to the surgeon.
[0039] When operating in certain operating modes (e.g., a normal operating mode), the control system 200 may process information received from the user control 202 to generate information and / or signals to send to the manipulator arm 112 to cause the manipulator arm 112 and / or the surgical instrument 204 to operate in accordance with the information received from the user control 202. In this or a similar manner, the control system 200 may convert attributes of the user control 202 into corresponding operations of the manipulator arm 112 and the surgical instrument 204, such as by converting movements of the user control 202 into corresponding movements of the manipulator arm 112 and the surgical instrument 204. In this way, the control system 200 couples the user control 202 to the manipulator arm 112 so that the surgeon can remotely control the surgical instrument 204 attached to the manipulator arm 112 using the user control 202.
[0040] When operating in certain operating modes, the control system 200 may output different information to the manipulator arm 112 and / or may output information to other components of the surgical system (e.g., one or more display components). When operating in some operating modes, such as when operating in a clutch operating mode, the control system 200 may not output information to the manipulator arm 112, in which the control system 200 decouples the user control mechanism 202 from the control of the movement of the manipulator arm 112 and the surgical instrument 204. Examples of operating modes of the surgical system 100 are described in further detail below.
[0041] The control system 200 is also configured to receive information from the user input mechanism 206. For example, the control system 200 may receive information indicating the type of input received through the user input mechanism 206. For example, if the user input mechanism 206 is a button, the type of input from the user input mechanism 206 may include the pressing of the button, the release of the button, the pressing and holding of the button, etc. Alternatively or additionally, the type of input received through the user input mechanism 206 may include any suitable movement, start and / or stop of the user input mechanism 206. The information about the type of input from the user input mechanism 206 may indicate one or more inputs received via the user input mechanism 206, such as a single press, a single release, a press and release, a double press, etc. The control system 200 may receive or generate information indicating one or more times associated with the input received through the user input mechanism 206, such as a timestamp indicating the time when the input was received.
[0042] The control system 200 includes a function selection system 208. The control system 200 can provide information to the function selection system 208 for use by the function selection system 208 to select (e.g., determine and activate) a desired function of the computer-assisted surgery system based on input received via the user input mechanism 206 and information associated with the user input mechanism 206 and the user control mechanism 202 (e.g., contextual information).
[0043] Figure 3 An exemplary function selection system 208 is shown, which can be configured to select a function to be performed by the computer-assisted surgery system. The function selection system 208 can be as follows: Figure 2 Alternatively, the function selection system 208 can be a separate system that is communicatively coupled to the control system 200.
[0044] like Figure 3 As shown, the function selection system 208 may include a storage facility 302, a processing facility 304, and an operating mode 308 (operating modes 308-1 to 308-N). The storage facility 302 and the processing facility 304 may be selectively and communicatively coupled to each other. The storage facility 302 and the processing facility 304 may each include hardware and / or software components (e.g., a processor, a memory, a communication interface, instructions stored in the memory for execution by the processor, etc.) or be implemented by hardware and / or software components. For example, the storage facility 302 and the processing facility 304 may be implemented by any component of the computer-assisted surgery system.
[0045] The storage facility 302 may maintain (e.g., store) executable data used by the processing facility 304 to perform any of the operations described herein. For example, the storage facility 302 may store instructions 306 that may be executed by the processing facility 304 to perform any of the operations described herein. The instructions 306 may be implemented by any suitable application, software, code, and / or other executable data instance. The storage facility 302 may also maintain any data received, generated, managed, used, and / or transmitted by the processing facility 304.
[0046] The processing facility 304 can be configured to perform (e.g., execute instructions 306 stored in the storage facility 302 to perform) various operations associated with selecting a function to be performed by a computer-assisted surgical system (e.g., surgical system 100). For example, the processing facility 304 can process input and information received by the function selection system 208 and select a function to be performed based on the input and information. Once the processing facility 304 selects a function, the function selection system 208 can notify the control system 200 of the selected function. The control system 200 can respond by executing the selected function.
[0047] The functions of the computer-assisted surgical system may include any functions that can be performed by the computer-assisted surgical system. In some examples, the functions may include activation or deactivation of an operating mode of the computer-assisted surgical system. In other examples, the functions may include any other functions associated with an operating mode, such as functions that can be performed by the computer-assisted surgical system when operating in a particular operating mode.
[0048] In some examples, the function selection system 208 can be configured to select an operating mode from a variety of available operating modes 308 for a computer-assisted surgical system (e.g., surgical system 100). For example, the function selection system 208 can be configured to select from a first operating mode 308-1, a second operating mode 308-2, a third operating mode 308-3, and an nth operating mode 308-N. In some examples, the operating modes 308 can include a conventional operating mode, a clutch operating mode, a measurement operating mode, various camera and / or vision operating modes (e.g., different types of fluorescence visualization operating modes), different types of movement operating modes, etc.
[0049] As an example, the first operating mode 308-1 may be a normal operating mode in which the control system 200 is configured to convert input received via the user control mechanism 202 into operation of the manipulator arm 112 in a manner that allows the surgeon to remotely control the surgical instrument 204. When the normal operating mode is activated, the control system 200 may couple or otherwise engage the user control mechanism 202 with the manipulator arm 112 so that manipulation of the user control mechanism 202 is converted into operation of the manipulator arm 112 and the surgical instrument 204. Thus, when the normal operating mode is activated, as the surgeon moves his or her fingers, wrist, and hand via the master controls, the control system 200 may control one or more manipulator arms 112 in a corresponding manner to remotely control one or more surgical instruments.
[0050] The second operating mode 308-2 may be, for example, a clutch operating mode in which the control system 200 may decouple the user control 202 from the manipulator arm 112 in a manner that allows the surgeon to move the user control 202 without causing corresponding movement of the manipulator arm 112 or the surgical instrument 204. For example, the surgeon may reposition his or her hands and / or master controls without moving the surgical instrument, and may do so when the clutch operating mode is activated.
[0051] The third operating mode 308-3 can be, for example, a measuring operating mode, in which the control system 200 can couple the user control mechanism 202 to the manipulator arm 112 in a manner that allows the surgeon to control the surgical instrument 204 as in the conventional operating mode. When the measuring operating mode is activated, the control system 200 can also allow the surgeon to use the surgical instrument 204 (and optionally one or more other surgical instruments) to measure the distance in the surgical area. For example, the control system 200 can receive input specifying an indication of a starting point and an indication of an end point, and determine and provide the distance between the end point and the starting point. Alternatively or additionally, the control system 200 can receive input specifying an indication of a starting point, and determine and provide the distance from the starting point to the current position of the surgical instrument 204 as the surgical instrument 204 is moved. For example, the indication of the starting point can be the point at which the measuring mode is activated by the control system 200. Once the control system 200 has activated the measuring operating mode, the surgeon can be provided with a visual indicator of the distance from the starting point as the surgeon moves the surgical instrument 204 via the user control mechanism 202. In some examples, the surgeon can provide input indicating the end point. In some examples, the function selection system 208 can be configured to automatically deactivate the measurement operating mode in response to detecting an indication of the endpoint. The surgical system 100 can be configured to provide a distance measurement between the start point and the endpoint as an output in any suitable manner (e.g., visually on a display screen) and / or store data representing the distance measurement to a data memory.
[0052] Function selection system 208 may be configured to determine and activate an operating mode of control system 200. To this end, function selection system 208 may detect input received via user input mechanism 206 and select an operating mode based on information associated with user input mechanism 206 and user control mechanism 202.
[0053] For example, the function selection system 208 can detect input received through the user input mechanism 206. Based on detecting the input, the function selection system 208 can determine information associated with the user input mechanism 206. For example, the information associated with the user input mechanism 206 can include the type of input received via the user input mechanism 206, such as the start or stop of the user input mechanism 206. The information associated with the user input mechanism 206 can also include a timestamp, such as the time when the input was received.
[0054] Based on detecting the input, the function selection system 208 may also determine information associated with the user control 202. The information associated with the user control 202 may provide additional context for the input and may be used by the function selection system 208 to select an operating mode. For example, the information associated with the user control 202 may include the position of the user control 202, the movement of the user control 202, the speed of the user control 202, etc. The function selection system 208 may determine the information associated with the user control 202 at any suitable time, including upon detecting receipt of an input via the user input mechanism 206, in response to one or more other events, and / or periodically at any suitable sampling rate.
[0055] Function selection system 208 can compare information associated with user input mechanism 206 and user control mechanism 202 with a set of defined criteria to determine the operating mode to be selected. The set of defined criteria may include any suitable set of criteria, such as a threshold distance, a threshold speed, a threshold time, etc. The set of defined criteria may be defined in any suitable manner (e.g., prior to operation of control system 200) and may be suitable for a particular implementation. Examples of defined criteria are described herein.
[0056] Based on comparing information associated with user input mechanism 206 and user control mechanism 202 to a set of defined criteria, function selection system 208 can determine and activate one or more operating modes of control system 200. Illustrative examples of how function selection system 208 can be configured to select an operating mode based on input received through user input mechanism 206 and based on comparison of information associated with user input mechanism 206 and user control mechanism 202 to a set of defined criteria are described herein.
[0057] In certain embodiments, the user input mechanism 206 can be configured to facilitate activation and deactivation of a clutch operating mode in which the user control mechanism 202 is decoupled from the control of the surgical instrument. When the control system 200 is operating in a conventional operating mode, the decoupling can decouple the coupling of the existing user control mechanism 202 to the surgical instrument, in which the user control mechanism 202 can be manipulated to cause the surgical instrument to move accordingly. The decoupling can be performed in any suitable manner, including by physically, logically, or communicatively decoupling the user control mechanism 202 from the manipulator arm 112 to which the surgical instrument is attached. When the clutch operating mode is activated, the control system 200 can decouple the user control mechanism 202 from the control of the surgical instrument. When the clutch operating mode is deactivated, the control system 200 can couple the user control mechanism 202 for controlling the surgical instrument.
[0058] The function selection system 208 can be configured to activate and deactivate the clutch operating mode based on input received through the user input mechanism 206. In some examples, the function selection system 208 can be configured to automatically and / or instantly activate the clutch operating mode when the surgeon activates (e.g., presses) the user input mechanism 206. In some alternative examples, the function selection system 208 can be configured to activate the clutch operating mode when the surgeon activates (e.g., presses) and holds the user input mechanism 206 for at least a defined amount of time. In other alternative examples, the function selection system 208 can be configured to activate the clutch operating mode when the surgeon activates (e.g., presses) and holds the user input mechanism and moves the user control mechanism 202 at least a defined threshold distance while the user input mechanism 206 is activated.
[0059] The function selection system 208 can be configured to deactivate the clutch operating mode based on input received through the user input mechanism 206. In some examples, the function selection system 208 can be configured to automatically and / or instantaneously deactivate the clutch operating mode when the surgeon deactivates (e.g., releases) the user input mechanism 206 (e.g., when the surgeon releases the user input mechanism 206 to end activation (e.g., pressing and holding) of the user input mechanism 206).
[0060] In addition to the user input mechanism 206 being configured to promote the activation and deactivation of the clutch operating mode, the user input mechanism 206 can be configured to promote the execution of a function associated with another operating mode. The function can be any function that can be performed by the computer-assisted surgical system. For example, the function can include the activation or deactivation of another operating mode, such as a measurement operating mode or a specific visualization operating mode. As another example, the function can be a function executed when the computer-assisted surgical system operates in another specific operating mode, such as a measurement sampling function executed when operating in the measurement operating mode. In some examples, the function selection system 208 can be configured to start and stop the user input mechanism 206 when the surgeon quickly (for example, in a shorter time than a predetermined time threshold) while keeping the user control mechanism 202 stationary (for example, by not moving the user control mechanism 202 beyond a predetermined distance threshold), execute a function associated with another operating mode (for example, activating the operating mode or performing a function in the active operating mode).
[0061] In some examples, sustained activation of the user input mechanism 206 may indicate that the surgeon intends to operate in the clutch operating mode, and rapid activation and deactivation of the user input mechanism 206 may indicate that the surgeon intends to invoke a function associated with another operating mode, such as a measurement operating mode. In such examples, the function selection system 208 may be configured to perform the function associated with the other operating mode when the user input mechanism 206 is activated and deactivated rapidly (e.g., in less time than a predetermined time threshold), and the user control mechanism 202 is stationary (e.g., does not move more than a predetermined distance threshold) when the user input mechanism 206 is activated and deactivated.
[0062] To determine whether to perform a function associated with another mode of operation in response to input received via the user input mechanism 206, the function selection system 208 may determine context information associated with the input received via the user input mechanism 206 and compare the information to a set of defined criteria. Based on the comparison, the function selection system 208 may determine whether to perform the function. By determining and using the context information associated with the input to determine whether to perform the function, the function selection system 208 may ascertain the surgeon's intent in the input provided via the user input mechanism 206 and in a manner that may allow the surgeon to intuitively and accurately select one or more functions to be performed by the computer-assisted surgical system via the same user input mechanism 206 (where a plurality of hierarchical functions are mapped to the user input mechanism 206).
[0063] The function selection system 208 can determine the intended function by comparing the input and associated information to a set of defined criteria. For example, if a quick press and release of the user input mechanism 206 is configured to invoke a function of a measurement operating mode and a press and hold of the user input mechanism 206 is configured to activate a clutch operating mode, the function selection system 208 can determine based on information associated with the input received via the user input mechanism 206 whether the detected press and release of the user input mechanism 206 is intended to be a quick press and release to invoke the function of the measurement operating mode or a press, hold, and release intended to activate the clutch operating mode.
[0064] For example, in some implementations, the function selection system 208 can detect an input via the user input mechanism 206 and determine the type of input detected. If the input is a press of the user input mechanism 206, the function selection system 208 can determine a timestamp of the press and a position and velocity of the user control 202 at the time of the press. If the input is a release of the user input mechanism 206, the function selection system 208 can determine a timestamp of the release and a position and velocity of the user control 202 at the time of the release.
[0065] When a press and release of the user input mechanism 206 is detected, the function selection system 208 may compare the timestamp, position, and velocity at the time of release to the timestamp, position, and velocity at the time of press to determine whether the surgeon intended a rapid press of the user input mechanism 206. If the difference between the timestamps is greater than a defined threshold time, the function selection system 208 may determine that the surgeon did not intend to press rapidly and the function mapped to the rapid press may not be invoked. Additionally or alternatively, if the difference between the positions is greater than a defined threshold distance, the function selection system 208 may determine that the surgeon did not intend to press rapidly and the function mapped to the rapid press may not be invoked. Additionally or alternatively, if one of the velocities is greater than a defined threshold velocity and / or the velocity of the time between press and release is greater than a defined threshold velocity, the function selection system 208 may determine that the surgeon did not intend to press rapidly and the function mapped to the rapid press may not be invoked.
[0066] Conversely, if the information satisfies the defined set of criteria, the function selection system 208 may invoke a function mapped to a rapid press, determining that satisfaction of the defined set of criteria indicates that the surgeon intended a rapid press of the user input mechanism 206. For example, if the difference between the timestamps is less than a defined threshold time, the difference between the positions is less than a defined threshold distance, and the speeds (and any detected intermediate speeds) are each less than a defined threshold speed, the function selection system 208 may determine that the surgeon intended a rapid press and release and may perform a function associated with another operating mode.
[0067] In some embodiments, comparing information associated with the user input mechanism 206 and the user control mechanism 202 may enable the function selection system 208 to determine an unintentional interaction with the user input mechanism 206. For example, if the time difference between a press of the user input mechanism 206 and a release of the user input mechanism 206 is less than a threshold time, but the speed of the user control mechanism 202 when pressed and / or released is greater than a threshold speed, the function selection system 208 may determine that the surgeon unintentionally pressed and released the user input mechanism 206 rapidly, without intending to invoke a function mapped to the rapid press and release of the user input mechanism.
[0068] Although the foregoing example describes invoking a function based on a quick press and release of the user input mechanism 206, the function selection system 208 can be configured to selectively invoke a function mapped to the user input mechanism 206 based on any other suitable input received by the user input mechanism 206, which input can be distinguished from input received through the user input mechanism 206 using contextual information, and the user input mechanism 206 is configured to invoke other functions, such as activation and / or deactivation of a clutch operating mode.
[0069] In some examples, the function selection system 208 can be configured to allow the surgeon to provide different inputs through the user input mechanism 206 to select various functions to be performed. For example, the system 208 can be configured to detect various inputs received through the user input mechanism 206 and select one or more operating modes from a set of operating modes based on the received input to be activated. For example, the start and hold of the user input mechanism 206 can activate the clutch operating mode, while different lengths of pressing the user input mechanism 206 can activate different operating modes. Additionally or alternatively, the rapid pressing of the user input mechanism 206 can cycle through the activation of different operating modes. Additionally or alternatively, different numbers of continuous rapid pressings (e.g., double clicking) of the user input mechanism 206 can activate different operating modes. This can allow additional functions (e.g., third-layer functions) to be layered on the user input mechanism 206.
[0070] Functions may be mapped to the user input mechanism 206 based on any suitable context of the computer-assisted surgical system. In some examples, the context information may include the current operating mode of the computer-assisted surgical system. For example, if the control system 200 is currently operating in a conventional operating mode and a quick press and release of the user input mechanism 206 is detected, the function selection system 208 may execute a function mapped to the quick press and release of the user input mechanism 206 associated with the conventional operating mode, such as activation of a measurement operating mode, a visualization operating mode, or another operating mode. As another example, if the current operating mode when the quick press and release of the user input mechanism 206 is detected is a measurement operating mode, the function selection system 208 may execute a function mapped to the quick press and release of the user input mechanism 206 associated with the measurement operating mode, such as a measurement sampling function, deactivation of the measurement operating mode, or activation of the conventional operating mode.
[0071] As another example, the control system 200 may be operated in a first visual operating mode in which the user control mechanism 202 is coupled to an imaging device and is configured to remotely control an imaging device (e.g., an endoscope) that captures an image of a surgical scene that is displayed (e.g., in a stereoscopic viewer of the user control system 104 of the surgical system 100). Based on the current operating mode being the first visual operating mode and / or the imaging device being coupled to the control mechanism 202, if the surgeon quickly presses the user input mechanism 206 while the control system 200 is operating in the first visual operating mode, the function selection system 208 may activate a second visual operating mode. For example, the function selection system 208 may activate a second visual operating mode (e.g., a fluorescent image viewing mode) in which the surgical system 100 displays an image of the surgical scene enhanced using fluorescent illumination (e.g., a fluorescent image received via a fluoroscope).
[0072] Figure 3 A set of functions 610 (e.g., functions 610-1 to 610-N) associated with the operating modes 608 of the computer-assisted surgical system are shown. Function 310-1 can be any function associated with the first operating mode 308-1, such as activation of the first operating mode 308-1, deactivation of the first operating mode 308-1, or any function that can be performed when the first operating mode 308-1 is active. Function 310-2 can similarly be any function of the second operating mode 308-2, and so on. For example, for the measurement operating mode, the functions associated with the measurement operating mode can include activation of the measurement operating mode, deactivation of the measurement operating mode, measurement sampling performed when the measurement operating mode is active, and the like.
[0073] The function selection system 208 can be configured to select a function to be performed in response to a quick press and release of the user input mechanism 206 based at least in part on the current operating mode of the control system 200. For example, if a quick press and release of the user input mechanism 206 is detected when the measurement operating mode is active, the function selection system 208 can perform a measurement sampling function of the measurement operating mode. As another example, if a quick press and release of the user input mechanism 206 is detected when the visualization operating mode is active (e.g., when the remote control of the imaging device is active), the function selection system 208 can activate the execution of a visualization function, such as activating a specific visualization operating mode (such as a fluorescence enhanced visualization operating mode). These examples are illustrative only. The selection of the function to be performed in response to the quick press and release of the user input mechanism 206 can be based on any suitable context of the computer-assisted surgical system.
[0074] As described above, in some embodiments, the activation of the user input mechanism 206 can be configured to automatically activate the clutch operating mode of the computer-assisted surgical system. In some examples, this can be performed globally, regardless of how the user input mechanism 206 is activated or the context associated with the activation. Similarly, the deactivation of the user input mechanism 206 can be configured to automatically deactivate the clutch operating mode of the computer-assisted surgical system. In such an embodiment, certain functions of the computer-assisted surgical system can be layered on the activation and deactivation of the clutch operating mode by being mapped to the rapid press and release of the user input mechanism 206 that meets a set of predetermined criteria (e.g., any exemplary criteria described herein). Therefore, when the rapid press and release of the user input mechanism 206 that meets a set of predetermined criteria is detected, in addition to activating and deactivating the clutch operating mode, the function selection system 208 can also perform one or more functions mapped to the rapid press and release of the user input mechanism 206.
[0075] Automatic activation and deactivation of the clutch operating mode can provide one or more benefits to a function that is performed when a rapid depression and release of the user input mechanism 206 is detected, and the function can assume that the clutch operating mode is active when the function is invoked. For example, automatic activation and deactivation of the clutch operating mode can ensure that the surgical instrument 204 is not inadvertently moved while the function is being performed, which can benefit the function. To illustrate, the function can include measurement sampling during which it is desired that the surgical instrument is not inadvertently moved.
[0076] Because activation and deactivation of the clutch operating mode is mapped to a user input mechanism 206 associated with a control mechanism 202 (which can be manipulated by a single hand of an operator), activation and deactivation of the clutch operating mode can be applied specifically to (e.g., applied only to) a surgical instrument 204 connected to a control mechanism 202 associated with the user input mechanism 206. Furthermore, one or more additional functions mapped to a user input mechanism 206 associated with a control mechanism 202 can be specific to a surgical instrument 204 connected to a control mechanism 202 associated with the user input mechanism 206. Furthermore, any context that is considered for selection of a function to be invoked when a rapid press and release of the user input mechanism 206 is detected can be specific to that user input mechanism 206, the control mechanism 202 associated with the user input mechanism 206, and / or the surgical instrument 204 connected to the control mechanism 202 (e.g., which surgical instrument or type of surgical instrument is connected).
[0077] While the foregoing examples describe illustrative implementations for selectively activating and deactivating a clutch operating mode and selectively performing a function associated with another operating mode (e.g., a measurement operating mode, a fluorescence visualization operating mode, etc.) based on user input received through the user input mechanism 206, in other examples, the function selection system 208 may be configured differently. For example, specific inputs for activating a clutch operating mode and selectively performing a function associated with another operating mode may be reversed. For example, a clutch operating mode may be activated upon a quick press and release of the user input mechanism 206, while a function associated with a different operating mode may be activated by pressing and holding the user input mechanism 206.
[0078] While in some embodiments, actuation of the user input mechanism 206 may be configured to automatically activate the clutch operating mode of the computer-assisted surgical system, in alternative embodiments, the function selection system 208 may be configured to selectively activate the clutch operating mode based on contextual information associated with actuation of the user input mechanism 206. For example, if a rapid press and release of the user input mechanism 206 is detected, the function selection system 208 may perform a function mapped to the rapid press and release of the user input mechanism 206 and may avoid activating the clutch operating mode. In some examples, the function may include activating an operating mode other than the clutch operating mode.
[0079] Figure 4 An exemplary method 400 for selectively executing functions of a computer-assisted surgery system is shown. Figure 4 Exemplary operations according to one embodiment are shown, but other embodiments may omit, add, reorder and / or modify Figure 4 Any of the actions shown. Figure 4 One or more of the illustrated operations may be performed by the function selection system 208 , any component included in the function selection system 208 , and / or any implementation of the function selection system 208 .
[0080] In operation 402, a function selection system detects input received through a user input mechanism (e.g., activation and deactivation of the user input mechanism) that is configured to facilitate activation and deactivation of a clutch operating mode in which the user control mechanism is decoupled from control of the surgical instrument. Operation 402 can be performed in any manner described herein.
[0081] In operation 404, the function selection system determines information associated with the user input mechanism and the user control mechanism based on the detection of the input. The information associated with the user input mechanism and the user control mechanism may include any context information, examples of which have been described herein. Operation 404 may be performed in any manner described herein.
[0082] In operation 406, the function selection system compares the information to a set of defined criteria. Operation 406 may be performed in any manner described herein.
[0083] In operation 408, when the information satisfies the set of defined criteria, the function selection system performs functions associated with different operating modes of the computer-assisted surgical system. Operation 408 may be performed in any manner described herein.
[0084] Figure 5 An exemplary method 500 for selectively executing layered functions of a computer-assisted surgical system is shown. Figure 5Exemplary operations according to one embodiment are shown, but other embodiments may omit, add, reorder and / or modify Figure 5 Any of the actions shown. Figure 5 One or more of the illustrated operations may be performed by the function selection system 208 , any component included in the function selection system 208 , and / or any implementation of the function selection system 208 .
[0085] In exemplary method 500, the function selection system is configured to activate a clutch operating mode ("clutch mode") upon detecting an input indicating actuation of a user input mechanism, and to deactivate the clutch mode upon detecting an input indicating a deactivation of the user input mechanism. Thus, any actuation of the user input mechanism activates the clutch mode, and any deactivation of the user input mechanism deactivates the clutch mode. The function selection system determines whether information associated with the input satisfies a set of defined criteria upon deactivation of the user input mechanism. If the set of defined criteria is determined to be satisfied, the function selection system activates a different operating mode (e.g., a measurement operating mode, an enhanced display operating mode, etc.).
[0086] In operation 502, the function selection system determines information associated with the user input mechanism and the user control mechanism. In some examples, the function selection system can periodically (e.g., continuously) sample to determine information such as whether input has been received via the user input mechanism, the position of the user control mechanism, and the speed of the user control mechanism.
[0087] In operation 504, the function selection system determines whether the state of the user input mechanism has changed. For example, if the user input mechanism is a button, the function selection system can determine whether the button has changed from being pressed to being released or vice versa. If the state of the user input mechanism has not changed, the function selection system can perform operation 506.
[0088] In operation 506 , the function selection system calculates the distance between the current position of the user control and the initial position of the user control previously stored by the function selection system.
[0089] In operation 508, the function selection system compares the calculated distance and the determined speed with a set of defined standards. For example, the calculated distance can be compared with a threshold distance, and the determined speed (for example, the speed determined in operation 502) can be compared with a threshold speed. If the standard is met, the function selection system can return to operation 502 to continue sampling information associated with the user input mechanism and the user control mechanism. If the standard is not met (for example, exceeding the threshold), an invalid click flag can be set in operation 514. The invalid click flag can be used to indicate that the start and stop of the user input mechanism do not indicate that different operating modes are intended to be activated. For example, if the surgeon moves the user control mechanism beyond the threshold distance or faster than the threshold speed, while the user input mechanism is started or stopped, the function selection system can determine that the surgeon is not intended to press the user input mechanism quickly, thereby setting the invalid click flag. The invalid click flag can be included as context information associated with the user input mechanism.
[0090] Returning to operation 504, if it is determined that the state of the user input mechanism has changed, the function selection system may perform operation 510. In operation 510, the function selection system detects the input type of the user input mechanism. If the user input mechanism has been activated (ie, the type input is activated), the function selection system performs operation 516.
[0091] In operation 516, the function selection system stores the position of the user control and the timestamp of the received input. The function selection system may determine the position and timestamp as the initial position and timestamp in any suitable manner, including by using the last sampled position and timestamp in operation 502, or by sampling the position and time in response to detecting a change in state of the user input mechanism in operation 504 or determining that the user input mechanism is activated in operation 506. The stored position and timestamp may be used to calculate the distance, time, and speed of the user control mechanism.
[0092] In operation 520, the function selection system clears the invalid click flag. Since the received input is a new activation of the user input mechanism, the function selection system can assume that the click is valid until otherwise determined and can therefore clear the invalid click flag to completely clear any determination of an invalid click from a previous activation of the user input mechanism.
[0093] In operation 524, the function selection system activates the clutch mode. As described above, in this example, the function selection system can activate the clutch mode in response to any activation of the user input mechanism. In this way, the surgeon can operate the surgical system in the clutch mode upon activation of the user input mechanism. After activating the clutch mode in operation 524, the function selection system returns to operation 502 to continue sampling of the user input mechanism and the user control mechanism.
[0094] Returning to operation 510, if the change in state of the user input mechanism is a stop, the function selection system can deactivate the clutch mode in operation 512. As described above, in this example, the function selection system can deactivate the clutch mode in response to any stop of the user input mechanism. In this way, the surgeon can terminate operating the surgical system in the clutch mode upon stop of the user input mechanism.
[0095] With the clutch mode deactivated, the function selection system may perform operation 518, in which the function selection system may calculate the time between the timestamp of the clutch mode deactivation and the initial timestamp (e.g., the initial timestamp stored in operation 516 when the user input mechanism was activated). The function selection system may also calculate the distance between the current position of the user control mechanism and the stored initial position of the user control mechanism (e.g., the initial position stored in operation 516 when the user input mechanism was activated).
[0096] In operation 522, the function selection system compares the calculated distance to a threshold distance. The threshold distance in operation 522 may be the same or different than the threshold distance in operation 508. If the calculated distance is more than (or greater than or equal to) the threshold distance, the function selection system may determine that the surgeon intended the clutch mode operation or that the activation of the user input mechanism was unintentional. The function selection system then returns to operation 502 to continue sampling. If the calculated distance meets a defined criterion (e.g., less than the threshold distance, less than or equal to the threshold distance, etc.), the function selection system performs operation 526.
[0097] In operation 526, the function selection system compares the calculated time to a threshold time. If the calculated time is more than (or greater than or equal to) the threshold time, the function selection system can determine that the surgeon intended to operate in clutch mode. The function selection system then returns to operation 502 to continue sampling. If the calculated time meets a defined criterion (e.g., less than a threshold time, less than or equal to a threshold time, etc.), the function selection system performs operation 528.
[0098] In operation 528, the function selection system checks whether the invalid click flag is set. If the invalid click flag has been previously set and not cleared, it may indicate that the activation of the user input mechanism is unintentional. For example, the surgeon may activate the user input mechanism to move the user control mechanism in a manner that returns the user control mechanism to a position within a threshold distance of the initial position at a time within a threshold time of the initial time. In such a case, the distance and / or speed traveled by the user control mechanism between the start and the stop will exceed the threshold distance or threshold speed (operation 508), so that the invalid click flag has been set (operation 514). If the invalid click flag is set, the function selection system can determine that the activation is unintentional or that the surgeon does not intend to activate a different operating mode and can return to operation 502. If the invalid click flag is not set, the function selection system can determine that the surgeon intends to perform a layered function associated with a different operating mode, and the function selection system performs the layered function associated with the different operating mode in operation 530. Operation 530 can be performed in any manner described herein.
[0099] In some examples, the function selection system can be configured to perform one or more of the operations described herein at a (faster rate) servo rate of the user control mechanism to provide a certain level of temporal resolution of the user control mechanism and / or small deviations in trajectory monitoring. In other examples, the operation mode selection system can be configured to perform one or more of the operations described herein at any suitable rate.
[0100] In some examples, the function selection system can be configured to use thresholds, such as a distance threshold of two millimeters, a speed threshold of two millimeters per second, and a time threshold of 0.5 seconds. Such thresholds can be included in a set of defined criteria in any suitable manner and used by the operating mode selection system for comparison of input and information associated with the user input mechanism and the user control mechanism to determine when to activate or deactivate the activation operating mode. Any other suitable thresholds can be used in other examples.
[0101] In certain embodiments, one or more of the systems, components, and / or processes described herein may be implemented and / or executed by one or more appropriately configured computing devices. To this end, one or more of the above-described systems and / or components may include or be implemented by any computer hardware and / or computer-implementable instructions (e.g., software), which are embodied on at least one non-transitory computer-readable medium configured to perform one or more of the processes described herein. In particular, system components may be implemented on one physical computing device or may be implemented on more than one physical computing device. Therefore, system components may include any number of computing devices and may employ any number of computer operating systems.
[0102] In some embodiments, one or more of the processes described herein may be implemented at least in part as instructions embodied in a non-transitory computer-readable medium and executable by one or more computing devices. In general, a processor (e.g., a microprocessor) receives instructions from a non-transitory computer-readable medium (e.g., a memory, etc.) and executes those instructions to perform one or more processes, including one or more of the processes described herein. Any of a variety of known computer-readable media may be used to store and / or transmit such instructions.
[0103] Computer-readable media (also referred to as processor-readable media) include any non-transitory media that participates in providing data (e.g., instructions) that can be read by a computer (e.g., by a processor of a computer). Such media can take a variety of forms, including, but not limited to, non-volatile media and / or volatile media. Non-volatile media can include, for example, optical or magnetic disks and other persistent memory. Volatile media can include, for example, dynamic random access memory ("DRAM"), which typically constitutes main memory. Common forms of computer-readable media include, for example, disks, hard disks, tapes, any other magnetic media, compact disk read-only memory ("CD-ROM"), digital video disks ("DVD"), any other optical media, random access memory ("RAM"), programmable read-only memory ("PROM"), electrically erasable programmable read-only memory ("EPROM"), FLASH-EEPROM, any other memory chip or cassette, or any other tangible medium that a computer can read.
[0104] Figure 6 An exemplary computing device 600 is shown, which may be specifically configured to perform one or more of the processes described herein. Figure 6 As shown, computing device 600 may include a communication interface 602, a processor 604, a storage device 606, and an input / output ("I / O") module 608 communicatively coupled via a communication infrastructure 610. Figure 6 An exemplary computing device 600 is shown, but Figure 6 The components shown are not intended to be limiting. Additional or alternative components may be used in other embodiments. Figure 6 Components of computing device 600 are shown.
[0105] Communication interface 602 may be configured to communicate with one or more computing devices. Examples of communication interface 602 include, but are not limited to, a wired network interface (e.g., a network interface card), a wireless network interface (e.g., a wireless network interface card), a modem, an audio / video connection, and any other suitable interface.
[0106] The processor 604 generally represents any type or form of processing unit capable of processing data or interpreting, executing and / or directing the execution of one or more of the instructions, processes and / or operations described herein. The processor 604 may direct the execution of operations according to one or more application programs 612 or other computer-executable instructions (e.g., which may be stored in the storage device 606 or another computer-readable medium).
[0107] The storage device 606 may include one or more data storage media, devices, or configurations, and may employ any type, form, and combination of data storage media and / or devices. For example, the storage device 606 may include, but is not limited to, a hard drive, a network drive, a flash drive, a magnetic disk, an optical disk, RAM, dynamic RAM, other non-volatile and / or volatile data storage units, or a combination or sub-combination thereof. Electronic data, including data described herein, may be temporarily and / or permanently stored in the storage device 606. For example, data representing one or more executable applications 612 configured to direct the processor 604 to perform any of the operations described herein may be stored within the storage device 606. In some examples, the data may be housed in one or more databases residing within the storage device 606.
[0108] The I / O module 608 may include one or more I / O modules configured to receive user input and provide user output. One or more I / O modules may be used to receive input for a single virtual reality experience. The I / O module 608 may include any hardware, firmware, software, or combination thereof that supports input and output capabilities. For example, the I / O module 608 may include hardware and / or software for capturing user input, including but not limited to a keyboard or keypad, a touch screen component (e.g., a touch screen display), a receiver (e.g., an RF or infrared receiver), a motion sensor, and / or one or more input buttons.
[0109] The I / O module 608 may include one or more devices for presenting output to a user, including, but not limited to, a graphics engine, a display (e.g., a display screen), one or more output drivers (e.g., a display driver), one or more audio speakers, and one or more audio drivers. In some embodiments, the I / O module 608 is configured to provide graphical data to the display for presentation to the user. The graphical data may represent one or more graphical user interfaces and / or any other graphical content that may serve a particular implementation.
[0110] In the foregoing description, various exemplary embodiments have been described with reference to the accompanying drawings. However, it is apparent that various modifications and changes may be made to the various exemplary embodiments, and additional embodiments may be implemented without departing from the scope of the present invention as set forth in the appended claims. For example, certain features of one embodiment described herein may be combined or substituted with features of another embodiment described herein. Therefore, the description and drawings are to be regarded as illustrative rather than restrictive.
Claims
1. An operation mode selection system, comprising: a memory for storing instructions; a processor communicatively coupled to the memory and configured to execute the instructions to: activating a first operating mode in which movement of a user control is translated into movement of a surgical instrument coupled to a manipulator arm of a computer-assisted surgical system; receiving a first user input during the first operating mode via a user input mechanism associated with the user control mechanism; based on the first user input, activating a second operating mode in which the user control is repositionable without causing movement of the surgical instrument; receiving, via the user input mechanism, a second user input during the first mode of operation, wherein the second user input is different from the first user input; as well as Based on the second user input, a function associated with a third operating mode of the computer-assisted surgical system is activated, the third operating mode being different from the first operating mode and the second operating mode.
2. The operating mode selection system of claim 1 , wherein the processor is further configured to distinguish the first user input from the second user input by: determining information associated with the user input mechanism and the user control mechanism; The information is compared to a set of defined criteria.
3. The operating mode selection system according to claim 2, wherein: The set of defined criteria includes defining a threshold distance; and The comparison of the information to the set of defined criteria includes determining whether movement of the user control mechanism satisfies the defined threshold distance when the user input mechanism is activated.
4. The operation mode selection system according to any one of claims 2 to 3, wherein: The set of defined criteria includes defining a threshold time; The input received through the user input mechanism includes a first input and a second input; The information associated with the user control includes a first timestamp indicating when the first input was received and a second timestamp indicating when the second input was received; and The comparison of the information to the set of defined criteria includes determining whether a time difference between the first timestamp and the second timestamp satisfies the defined threshold time.
5. The operation mode selection system according to any one of claims 2 to 3, wherein: The set of defined criteria includes defining a threshold distance; The input received through the user input mechanism includes a first input and a second input; The information associated with the user control includes a first position indicating a position of the user control when the first input is received and a second position indicating a position of the user control when the second input is received; and The comparison of the information to the set of defined criteria includes determining whether a distance difference between the first location and the second location satisfies the defined threshold distance.
6. The operation mode selection system according to any one of claims 2-3, wherein: The set of defined criteria includes defining a threshold speed; The information associated with the user control includes information indicative of a speed of the user control; and The comparison of the information to the set of defined criteria includes determining whether the speed meets the defined threshold speed.
7. An operating mode selection system according to any one of claims 2-3, wherein the processor is configured to automatically activate the second operating mode when the user input mechanism is activated and automatically deactivate the operating mode when the user input mechanism is stopped, and in the second operating mode, the user control mechanism can be repositioned without causing the surgical instrument to move.
8. The operating mode selection system of any one of claims 1-3, wherein the third operating mode comprises a measuring operating mode in which the surgical instrument is configured to be used to measure a distance between two points.
9. The operating mode selection system of any one of claims 1-3, wherein the third operating mode comprises a viewing operating mode in which fluorescent lighting is used to enhance display of an image of a surgical scene.
10. A non-transitory computer-readable medium storing instructions that, when executed, direct at least one processor of a computing device to: activating a first operating mode in which movement of a user control is translated into movement of a surgical instrument coupled to a manipulator arm of a computer-assisted surgical system; detecting a first input received during the first mode of operation via a user input mechanism associated with the user control mechanism; based on the first input, activating a second operating mode in which the user controls are decoupled from control of the surgical instrument; detecting a second input received via the user input mechanism during the first mode of operation, wherein the second input is different from the first input; and Based on the second input, a function associated with a third operating mode of the computer-assisted surgical system is activated, the third operating mode being different from the first operating mode and the second operating mode.
11. The computer-readable medium of claim 10, wherein the instructions, when executed, further direct the at least one processor of the computing device to distinguish the first input from the second input by: determining information associated with the user input mechanism and the user control mechanism; and The information is compared to a set of defined criteria.
12. The computer-readable medium of claim 11, wherein: The set of defined criteria includes defining a threshold time; The information associated with the user input mechanism and the user control mechanism includes a first timestamp indicating when the first input was received through the user input mechanism and a second timestamp indicating when the second input was received through the user input mechanism; and The comparison of the information to the set of defined criteria includes determining whether a time difference between the first timestamp and the second timestamp satisfies the defined threshold time.
13. The computer-readable medium of claim 11, wherein: The set of defined criteria includes defining a threshold distance; the information associated with the user input mechanism and the user control mechanism includes information indicating a first position of the user control mechanism when the first input is received through the user input mechanism and information indicating a second position of the user control mechanism when the second input is received through the user input mechanism; as well as The comparison of the information to the set of defined criteria includes determining whether a distance difference between the first location and the second location satisfies the defined threshold distance.
14. The computer-readable medium of claim 11, wherein: The set of defined criteria includes defining a threshold speed; The information associated with the user input mechanism and the user control mechanism includes a first speed of the user control mechanism when the first input is received through the user input mechanism and a second speed of the user control mechanism when the second input is received through the user input mechanism; and The comparison of the information to the set of defined criteria includes determining whether the first speed or the second speed satisfies the defined threshold speed.
Citation Information
Patent Citations
User selection of robotic system operating modes using mode distinguishing operator actions
US20170129108A1