Time interval robot reference frame
Patent Information
- Application Number
- CN202180046779.9
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-06-30
- Filing Date
- 2021-06-30
- Publication Date
- 2026-08-21
- Estimated Expiration
- 2041-06-30
AI Technical Summary
[0015]在考虑下文提供的实施方案描述之后,本发明的许多额外特征和优点对于本领域技术人员将变得显而易见。
Smart Images

Figure CN115803153B_ABST
Abstract
Description
Technical Field
[0001] This technology relates to robotic surgery as a whole, and more specifically to navigation during robotic surgery. Background Technology
[0002] Surgical navigation systems are used to track the position of one or more objects during surgery. Surgical robots are designed to hold one or more tools or devices during surgery and can operate autonomously (e.g., without any human input during operation), semi-autonomously (e.g., with some human input during operation), or non-autonomously (e.g., only as directed by human input). Summary of the Invention
[0003] A robot navigation system according to an embodiment of the present disclosure includes: a robot base; a robot arm including a proximal portion stabilized to the robot base, a distal portion movable relative to the proximal portion, and a tracking marker stabilized to the robot arm near the distal portion; at least one processor; a navigation system including a tracking marker sensor configured to identify the position of the tracking marker in a first coordinate space; and a memory. The memory stores instructions to be executed by the at least one processor, which, when executed, cause the at least one processor to: move the robot arm to a plurality of different poses; receive information relating to the position of the tracking marker in a second coordinate space when the robot arm is in each of the plurality of different poses; and compare the position of the tracking marker in the first coordinate space with the position of the tracking marker in the second coordinate space.
[0004] The multiple different poses can create a robot reference frame with time intervals. At least one of the multiple different poses can correspond to the maximum extension of the robot arm. Each tracking marker can be configured to emit or reflect light through a covering. The tracking marker can be a first tracking marker configured to emit or reflect light having a first wavelength, and the robot arm can include a second tracking marker configured to emit or reflect light having a second wavelength different from the first wavelength. The tracking marker can be a first tracking marker configured to emit light in pulses at a first frequency, and the robot arm can include a second tracking member configured to emit light in pulses at a second frequency different from the first frequency. The robot arm may be a first robot arm, the tracking mark may be a first tracking mark, and the robot navigation system may also include a second robot arm, the second robot arm including a second tracking mark. The navigation system may be configured to identify the position of the second tracking mark in the first coordinate space, and the memory may include instructions to be executed by the at least one processor, which, when executed, cause the at least one processor to compare the position of the second tracking mark in the first coordinate space with the position of the second tracking mark in the second coordinate space.
[0005] The robot arm may be a first robot arm, the tracking mark may be a first tracking mark, and the robot navigation system may also include a second robot arm, the second robot arm including a second tracking mark; the navigation system may be configured to identify the position of the second tracking mark in a third coordinate space different from the first coordinate space and the second coordinate space; and the memory may include instructions to be executed by the at least one processor, which, when executed, cause the at least one processor to compare the position of the second tracking mark in the first coordinate space with the position of the second tracking mark in the second coordinate space.
[0006] The navigation system can be configured to detect a first position of the tracking marker at a first time when the robotic arm is in a first pose among a plurality of different poses, and a second position of the tracking marker at a second time when the robotic arm is in a second pose among the plurality of different poses, the second time being after the first time and the second position being different from the first position. The memory can store additional instructions to be executed by the processor, which, when executed, cause the at least one processor to register the first coordinate space to the second coordinate space based at least on the detected first position, the detected second position, and the information. The received information can be obtained independently of the tracking marker sensor.
[0007] A method for using a robot reference frame based on a time interval, according to another embodiment of the present disclosure, includes: receiving from a tracking marker sensor first information about the position of a tracking marker that changes over a plurality of different times, the tracking marker being fixed to the robot arm of the robot, and the first information collectively defining a unique shape in a navigation coordinate system; receiving from the robot system second information corresponding to the position of the tracking marker in the robot coordinate system at the plurality of different times; and comparing the robot coordinate system with the navigation coordinate system based on the first information and the second information.
[0008] The robotic system can be configured to move the robotic arm to a first pose at a first time among a plurality of different times. This first pose may correspond to an extension of the robotic arm in a first direction. The robotic system can be configured to move the robotic arm to a second pose at a second time among the plurality of different times, and this second pose may correspond to an extension of the robotic arm in a second direction different from the first direction. The first direction may be orthogonal to the second direction. Each of the plurality of different times may occur during continuous movement of the robotic arm. Comparing the robot coordinate system with the navigation coordinate system based on the first and second information may include registering the robot coordinate system to the navigation coordinate system. This registration may not be based on any information about any tracking markers not fixed to the robotic arm. The second information may include information about the position of each tracking marker fixedly attached to the robotic arm. The method may also include operating the robot based on the comparison.
[0009] An apparatus for surgical navigation using a robot reference frame with time intervals, according to another embodiment of this disclosure, includes: at least one communication interface for receiving information from a robot; at least one tracking marker sensor configured to detect tracking markers on the robot arm; at least one processor; and at least one memory. The at least one memory stores instructions to be executed by the at least one processor, which, when executed, cause the at least one processor to: receive from the robot information corresponding to the pose of the robot arm at each of a plurality of different times; receive from the at least one tracking marker sensor data corresponding to the detected position of the tracking marker at each of the plurality of different times; and combine the information and the data to generate a reference frame with customized time intervals.
[0010] The at least one memory may store additional instructions to be executed by the at least one processor, which, when executed, further cause the at least one processor to: determine the position of the object in a predetermined coordinate space based on the creation of a reference frame based on the customized time interval. The at least one memory may store additional instructions to be executed by the at least one processor, which, when executed, further cause the at least one processor to determine the pose of the robot arm at each of the plurality of different times, wherein each pose is configured to avoid collisions with external objects near the robot arm. The at least one tracking marker sensor may be configured to detect tracking markers on each of the plurality of robot arms, the information corresponding to the pose of each of the plurality of robot arms at each of the plurality of different times, and the data corresponding to the detected position of the tracking marker at each of the plurality of different times. This information may correspond to the predicted pose of the robot arm at each of the plurality of different times.
[0011] Details of one or more aspects of this disclosure are set forth in the following drawings and description. Other features, objectives, and advantages of the technology described in this disclosure will be apparent from the specification, drawings, and claims.
[0012] The phrases “at least one,” “one or more,” and “and / or” are open-ended expressions that possess both connective and disjoint qualities in operation. For example, the expressions “at least one of A, B, and C,” “at least one of A, B, or C,” “one or more of A, B, and C,” “one or more of A, B, or C,” and “A, B, and / or C” mean only A, only B, only C, A and B together, A and C together, B and C together, or A, B, and C together. When each of A, B, and C in the above expressions refers to an element such as X, Y, and Z, or such as X1-X… n Y1-Y m and Z1-Z o When referring to a single class of elements, the phrase means a single element selected from X, Y, and Z; a combination of elements selected from the same class (e.g., X1 and X2); and elements selected from two or more classes (e.g., Y1 and Z). o () combination.
[0013] The term "a / an" refers to one or more of the entities mentioned. Thus, the terms "a / an," "one or more," and "at least one" are used interchangeably herein. It should also be noted that the terms "comprising / including" and "having" are used interchangeably.
[0014] The foregoing is a simplified overview of this disclosure to provide an understanding of some aspects thereof. This summary is neither a broad nor an exhaustive overview of this disclosure and its various aspects, embodiments, and configurations. It is not intended to identify key or essential elements of this disclosure, nor to depict its scope, but rather to present selected concepts in a simplified form as an introduction to the more detailed description presented below. It should be understood that other aspects, embodiments, and configurations of this disclosure may utilize one or more of the features set forth above or described in detail below, individually or in combination.
[0015] Many additional features and advantages of the invention will become apparent to those skilled in the art upon consideration of the embodiments described below. Attached Figure Description
[0016] The accompanying drawings are incorporated in and form part of this specification to illustrate several examples of this disclosure. These drawings, together with the description, explain the principles of this disclosure. The drawings illustrate only preferred and alternative examples of how to carry out and use this disclosure, and should not be construed as limiting this disclosure to the examples shown and described only. Additional features and advantages will become apparent from the following more detailed description of various aspects, embodiments, and configurations of this disclosure, as illustrated by the figures referenced below.
[0017] Figure 1 It is a block diagram of a system according to at least one embodiment of the present disclosure; Figure 2A A robot according to at least one embodiment of the present disclosure is depicted; Figure 2B Another robot according to at least one embodiment of this disclosure is depicted; Figure 3 This is a flowchart of a method according to at least one embodiment of the present disclosure; Figure 4A The field of view of a tracking marker sensor according to one embodiment of the present disclosure is depicted, wherein the robot is in the field of view in a first pose; Figure 4B The field of view of a tracking tag sensor according to one embodiment of the present disclosure is depicted, wherein the robot is in a second pose within the field of view; Figure 4C The field of view of a tracking marker sensor according to one embodiment of the present disclosure is depicted, wherein the robot is in a third pose within the field of view; Figure 4D The field of view of a tracking marker sensor according to one embodiment of the present disclosure is depicted, wherein the robot is in a fourth pose within the field of view; Figure 5 The detected locations of the tracked markers are depicted at four separate time points, corresponding to... Figures 4A to 4D The robot's four poses are shown; and Figure 6 This is a flowchart of a method according to at least one embodiment of the present disclosure; and Figure 7 This is another flowchart of a method according to at least one embodiment of the present disclosure. Detailed Implementation
[0018] It should be understood that the various aspects disclosed herein can be combined in combinations different from those specifically given in the specification and drawings. It should also be understood that, depending on the example or embodiment, certain actions or events of any of the processes or methods described herein may be performed in different sequences, and / or may be added, combined, or omitted entirely (e.g., depending on different embodiments of this disclosure, performing the disclosed technology may not require all the described actions or events). Furthermore, for clarity, although some aspects of this disclosure are described as being performed by a single module or unit, it should be understood that the technology of this disclosure can be performed by a combination of units or modules associated with, for example, computing devices and / or medical devices.
[0019] In one or more examples, the described methods, processes, and techniques may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functionality may be stored as one or more instructions or code on a computer-readable medium and executed by a hardware-based processing unit. Computer-readable media may include non-transitory computer-readable media, which correspond to tangible media such as data storage media (e.g., RAM, ROM, EEPROM, flash memory, or any other medium that can be used to store desired program code in the form of instructions or data structures and is accessible by a computer).
[0020] Instructions can be executed by one or more processors, such as one or more digital signal processors (DSPs), general-purpose microprocessors (e.g., Intel Core i3, i5, i7, or i9 processors; Intel Celeron processors; Intel Xeon processors; Intel Pentium processors; AMD Ryzen processors; AMD Athlon processors; AMD Phenom processors; Apple A10 or 10X Fusion processors; Apple A11, A12, A12X, A12Z, or A13 Bionic processors; or any other general-purpose microprocessor), application-specific integrated circuits (ASICs), field-programmable logic arrays (FPGAs), or other equivalent integrated or discrete logic circuit systems. Therefore, the term "processor" as used herein can refer to any of the foregoing structures or any other physical structures suitable for implementing the described techniques. Furthermore, this technique can be fully implemented in one or more circuit or logic elements.
[0021] Before explaining any embodiment of this disclosure in detail, it should be understood that this disclosure is not limited in its application to the construction details and component arrangements set forth in the following description or shown in the accompanying drawings. This disclosure can have other embodiments and can be practiced or carried out in various ways. Similarly, it should be understood that the wording and terminology used herein are for descriptive purposes and should not be considered limiting. The use of “including / comprising” or “having” and variations thereof herein is intended to cover items listed thereafter and their equivalents, as well as additional items. Furthermore, this disclosure may use examples to illustrate one or more aspects thereof. Unless expressly stated otherwise, the use or listing of one or more examples (which may be indicated by “for example,” “by means of an example,” “e.g.,” “such as,” or similar language) is not intended to, and does not limit, the scope of this disclosure.
[0022] Navigational robot programs typically involve a reference frame and trackers, the positions of which are detected by tracking marker sensors. For example, a navigation system can use a camera as a tracking marker sensor, detecting optical tracking markers attached to the robot arm's reference frame. Using this information, the robot system's coordinate system can be correlated with the navigation system's coordinate system. In other cases, information from the tracking marker sensors that accurately determines the robot arm's position and orientation can be used to calibrate the robot system.
[0023] Larger frames of reference provide better accuracy for navigation systems. However, large frames of reference can impede the operational field, be inefficient, and less stable. As disclosed herein, a robotic arm can create a frame of reference for time intervals by moving to several different poses, pausing at each pose to allow a navigation camera or other tracking marker sensor to capture the pose of the robotic arm (e.g., stabilizing to the position of a tracking marker on the robotic arm). The points are then stored and combined, and after several movements (e.g., four), the stored points create a frame of "time intervals," as if the navigation system were present in a large frame of reference with reflective spheres or LEDs at those stored points.
[0024] In embodiments of this disclosure, a robotic arm can move rapidly and accurately to a specified pose within robot space. To transform these poses in robot space into points in navigation space, a small frame of reference can be attached to the robotic arm. However, for greater accuracy, the robotic arm can track a “giant” frame of reference by moving to multiple (e.g., four) specific locations (reference points), pausing at each location to allow a navigation camera to “capture” the reference point in navigation space. For example, the end effector of the robotic arm may have LEDs (including, for example, infrared emitters), reflective spheres, optical patterns (e.g., QR codes, barcodes), shapes (e.g., triangles, circles, squares) (which may be printed or painted on the arm, applied as stickers, or provided in any other way), colors, emitters of specific wavelengths, reflectors of specific wavelengths, emitters that generate pulses at specific frequencies, or any other tracking markers for cameras or other tracking marker sensors. As the robot moves the robotic arm through four poses in robot space, the navigation system detects the tracking markers and thus identifies four corresponding reference points in navigation space, effectively using those four reference points as a giant frame of reference linking the robot and navigation space.
[0025] Other implementations may use multiple LEDs, reflective spheres, or other tracking markers on the robot arm (allowing cameras or other tracking marker sensors to track the robot arm from multiple angles). Additionally, the robot arm can continuously move to each designated reference point within a set of designated reference points and from the center point to each designated reference point within a set of designated reference points, wherein the navigation camera continuously tracks the tracking markers and thus the robot arm, and detects changes in orientation (e.g., a 180-degree change from arm movement away from the reference point) to reduce the time required to form a robot reference frame for the time interval.
[0026] U.S. Patent Application No. 16 / 244,369, filed January 10, 2019, and incorporated herein by reference in its entirety, entitled "System and Method for Registration Between Coordinate Systems and Navigation," describes a dynamic snapshot tracking device that can move to multiple locations within a navigation volume and be tracked at each of those locations. Multiple locations can be used collaboratively to define a virtual snapshot tracking device larger than a single physical snapshot tracking device, and thus achieve potentially greater accuracy and less bias compared to the possibility of a single physical snapshot tracking device.
[0027] A robot reference frame of time intervals, as described herein (and created using the robot and the tracking marker sensor), can be particularly useful when the robot's position is fixed relative to the tracking marker sensor's position or vice versa. When the tracking marker sensor's position relative to the robot is not fixed, a physical reference frame can be used in conjunction with a robot reference frame of time intervals as described herein. Alternatively, a robot reference frame of time intervals can be generated in a manner that minimizes relative movement (or relative movement opportunities) between the tracking marker sensor and the robot, such as by capturing individual points of the robot reference frame of time intervals over short time periods.
[0028] First turn Figure 1 This diagram illustrates a block diagram of a system 100 according to at least one embodiment of the present disclosure. System 100 may be used for: performing one or more aspects of one or more of the methods disclosed herein; for navigation purposes; for registration purposes; for calibration operations; for verifying the operational integrity of a navigation system (such as navigation system 160) or a robot (such as robot 136); or for any other useful purpose. System 100 includes a computing device 102, a tracking marker sensor 132, a robot 136, a navigation system 160, a database 164, and a cloud 168. Despite the foregoing description, systems according to other embodiments of the present disclosure may omit any one or more of the computing device 102, tracking marker sensor 132, robot 136, navigation system 160, database 164, and / or cloud 168. Additionally, systems according to other embodiments of the present disclosure may arrange one or more components of system 100 differently (e.g., one or more of the tracking marker sensor 132, robot 136, and navigation system 160 may include...). Figure 1 (The components shown are part of the computing device 102).
[0029] The computing device 102 includes at least one processor 104, at least one communication interface 108, at least one user interface 112, and at least one memory 116. In other embodiments of this disclosure, the computing device may omit one or both of the communication interface 108 and the user interface 112.
[0030] At least one processor 104 of computing device 102 may be any processor identified or described herein or any similar processor. At least one processor 104 may be configured to execute instructions stored in at least one memory 116 that enable at least one processor 104 to perform one or more computational steps using or based on data received, for example, from tracking tag sensor 132, robot 136, navigation system 160, database 164 and / or cloud 168.
[0031] The computing device 102 may also include at least one communication interface 108. The at least one communication interface 108 may be used to receive image data or other information from external sources (such as tracking tag sensor 132, robot 136, navigation system 160, database 164, cloud 168, and / or portable storage media (e.g., USB drive, DVD, CD)), and / or to transmit instructions, images, or other information from at least one processor 104 and / or the computing device 102 more generally to external systems or devices (e.g., another computing device 102, tracking tag sensor 132, robot 136, navigation system 160, database 164, cloud 168, and / or portable storage media (e.g., USB drive, DVD, CD)). The at least one communication interface 108 may include one or more wired interfaces (e.g., USB port, Ethernet port, FireWire port) and / or one or more wireless interfaces (e.g., configured to transmit information via one or more wireless communication protocols, such as 802.11a / b / g / n, Bluetooth, Bluetooth Low Energy, NFC, Bee, etc.). In some implementations, the at least one communication interface 108 may be used to enable the device 102 to communicate with one or more other processors 104 or computing devices 102, whether to reduce the time required to complete computationally intensive tasks or for any other reason.
[0032] At least one user interface 112 may be or include a keyboard, mouse, trackball, monitor, television, touchscreen, button, joystick, switch, lever, and / or any other means for receiving information from a user and / or for providing information to a user of computing device 102. The at least one user interface 112 may be used, for example, to receive user selections or other user inputs in conjunction with any step of any of the methods described herein; to receive user selections or other user inputs regarding one or more configurable settings of computing device 102 and / or another component of system 100; to receive user selections or other user inputs regarding how to store and / or transmit data received, modified, and / or generated by computing device 102 and / or where to store and / or transmit such data; and / or to display information (e.g., text, images) and / or play sounds to a user based on data received, modified, and / or generated by computing device 102. Although the at least one user interface 112 is included in system 100, system 100 may automatically (e.g., without any input through the at least one user interface 112 or otherwise) perform one or more or all of the steps of any of the methods described herein.
[0033] Although the at least one user interface 112 is shown as part of the computing device 102, in some embodiments, the computing device 102 may utilize the user interface 112, which is housed separately from one or more other components of the computing device 102. In some embodiments, the user interface 112 may be located close to one or more other components of the computing device 102, while in other embodiments, the user interface 112 may be located away from one or more other components of the computing device 102.
[0034] At least one memory 116 may be or include RAM, DRAM, SDRAM, other solid-state memory, any memory described herein, or any other tangible, non-transitory memory used to store computer-readable data and / or instructions. At least one memory 116 may store information or data suitable for performing any step of, for example, method 200 or 300 as described herein. At least one memory 116 may store, for example, information about one or more predetermined coordinate systems 120 (e.g., information about a robot coordinate system or space, information about a navigation coordinate system or space, information about a patient coordinate system or space); instructions 124 to be executed by at least one processor 104, for example, to cause at least one processor 104 to perform one or more steps of method 200 and / or method 300; and / or one or more algorithms 128 used by the processor to perform any calculations required to perform one or more steps of method 300, method 600, and / or method 700, or for any other calculations. In some implementations, such a predetermined coordinate system 120, instructions 124 and / or algorithms 128 may be organized into one or more applications, modules, packages, layers or engines, and may enable at least one processor 104 to manipulate data stored in at least one memory 116 and / or received from or through another component of the system 100.
[0035] Tracking tag sensor 132 is operable to detect one or more tracking tags 156 (described below). Tracking tag sensor 132 may be, for example, an optical camera; an infrared camera; a 3D camera system; a stereo vision system; another imaging device; an electromagnetic system; or any other sensor capable of detecting one or more tracking tags 156. Tracking tag sensor 132 may include a dedicated processor for executing instructions stored in a dedicated memory of tracking tag sensor 132, or tracking tag sensor 132 may simply be configured to transfer its collected data to computing device 102 or another component of system 100. In some embodiments, although in Figure 1The diagram shows communication only with computing device 102, but tracking tag sensor 132 may communicate with any or more of computing device 102, robot 136, navigation system 160, database 164, and / or cloud 168. Furthermore, in some embodiments, computing device 102 may include tracking tag sensor 132, while in other embodiments, navigation system 160 may include tracking tag sensor 132. In still other embodiments, robot 136 may include tracking tag sensor 132.
[0036] The tracking marker sensor 132 may be positioned directly above the operating table or a portion thereof, or above and to one side of the operating table or a portion thereof, or in another convenient location within the operating room or other room housing the robot 136. The tracking marker sensor 132 may be positioned at a location selected to provide the tracking marker sensor 132 with a clear and / or unobstructed view of the robotic arm 144 of the robot 136 during operation (and thus provide a clear and / or unobstructed view of one or more tracking markers 156 fixedly attached to the robotic arm 144). In some embodiments, the tracking marker sensor 132 is fixed, while in other embodiments, the tracking marker sensor 132 may be precisely movable in one or more directions (whether manually or automatically).
[0037] In other embodiments, the position and / or field of view of the tracking marker sensor 132 can be used to determine where the robotic arm 144 can be moved to generate a robotic reference frame for time intervals as disclosed herein. For example, a surgeon or other medical professional may place the tracking marker sensor 132 in a location in the operating room or other spaces where it appears to work well. The orientation and / or field of view of the tracking marker sensor 132 can then be determined (e.g., by taking some pictures with the tracking marker sensor 132 and identifying / tracking objects in the field of view or otherwise determining the orientation and / or field of view) and used to define the area where the robot arm 144, as described below, can move to create a robotic reference frame for time intervals as described elsewhere herein. The shape and size of the robotic reference frame for time intervals can also be defined based on constraints within the defined area.
[0038] The tracking marker sensor 132 can be configured to capture data about the sensed tracking marker 156 at multiple moments. For example, if the tracking marker sensor 132 is a camera, it can be configured to capture a sequence of still images including one or more tracking markers 156. The tracking marker sensor 132 can be configured to capture such data at periodic intervals, or when commanded by a user (e.g., via user interface 112) or based on signals from computing device 102, robot 136, and / or navigation system 160 (autonomously generated or in response to user input).
[0039] Tracking marker sensor 132 may additionally or alternatively be operable to capture data corresponding to one or more tracking markers 156 in real time. In such embodiments, tracking marker sensor 132 may provide a real-time sensor data stream to computing device 102, which may continuously process the sensor data to detect changes in the position of one or more tracking markers 156. In some embodiments, tracking marker sensor 132 may be a camera configured to capture a series of video frames. The processor 104 (or any other processor) of computing device 102 may then be used to identify or otherwise detect the tracking marker 156 in each video frame, and / or compare movement in different video frames to identify or extrapolate the movement trajectory of the tracking marker 156. In some embodiments, tracking marker sensor 132 may include more than one tracking marker sensor 132.
[0040] One benefit of continuously or periodically tracking the position of a robotic arm (such as robotic arm 144), and more specifically, the position of a tracking marker sensor 156 positioned on such a robotic arm (whether by capturing still images or videos of the robotic arm 144 and / or the tracking marker sensor 156 positioned thereon), is the ability to continuously or periodically confirm registration of the robotic space to the navigation space. This advantageously enhances patient safety by reducing the likelihood that any surgical step will be performed without proper alignment between the robotic space and the navigation space, one or both of which may also be aligned with the patient space. Where the robot is able to provide independent positional information about the robotic arm to the processor 104, the processor 104 can compare the independent positional information from the robot with the positional information obtained using the tracking marker sensor 132 to provide a redundant safety layer. Furthermore, the generation of a robot reference frame at time intervals as disclosed herein can be performed as the robot 136 (including robotic arm 144) performs its planned surgical movements, eliminating the need for additional movement or time to confirm registration during the procedure. Conversely, as robot 136 moves robotic arm 144 to the appropriate pose for each step of the surgical procedure, tracking marker sensor 132 can be used to capture still images or videos during the procedure (or otherwise monitor robotic arm 144 and / or tracking marker sensor 156 thereon). In summary, the corresponding positions of tracking marker 156 at each of the multiple poses form a robot reference frame for time intervals, as further described elsewhere herein. Furthermore, in some embodiments, the surgical plan detailing the planned movements of robot 136 (including its robotic arm 144) can be analyzed to identify when robot 136 will be in the most effective pose to capture the position of tracking marker 156 for generating a robot reference frame for time intervals as disclosed herein.
[0041] Still referencing Figure 1 And also refer to Figures 2A to 2B Robot 136 can be any surgical robot or surgical robot system. Robot 136 may be, or include, for example, Mazor X. ™ Stealth robot guidance system. Robot 136 may include a base 140 supporting robot arms 144. Robot 136 may include one or more robot arms 144. In some embodiments such as Figure 2B In the illustrated embodiment, robotic arm 144 may include a first robotic arm 144A and a second robotic arm 144B. In other embodiments, robot 136 may include more than two robotic arms 144. In some embodiments, robotic arms 144 may assist in surgical procedures (e.g., by holding the tool in a desired trajectory or pose and / or supporting the weight of the tool while the surgeon or other user operates the tool, or otherwise) and / or automate surgical procedures.
[0042] In embodiments of this disclosure that include a robot 136 having multiple robotic arms 144 (or multiple robots 136, each robot having one or more robotic arms 144), the robotic arms 144 may be used in combination to generate a robot reference frame for time intervals. For example, each robotic arm 144 may present and / or move to a unique pose, and the position of a tracking marker 156 on each robotic arm 144 may be detected and / or recorded. The resulting position can then be used to generate a robot reference frame for time intervals, as described elsewhere herein. Alternatively, in some embodiments, if the tracking marker sensor 132 cannot see one of the multiple robotic arms (or the tracking marker 156 anchored thereto) or if this occurs, another robotic arm among the multiple robotic arms may be used to generate a robot reference frame for time intervals.
[0043] In some embodiments, multiple robotic arms 144 may share a common coordinate system or space, while in other embodiments, one or more robotic arms 144 may have a different coordinate system or space than that used by the other one or more robotic arms 144. In embodiments where multiple robotic arms 144 use multiple coordinate systems, at least one robotic arm of the multiple robotic arms 144 corresponding to each of the multiple coordinate systems can be used to generate a robot reference frame for a time interval, which can then be used to map each coordinate system to the navigation coordinate system. Moreover, in some embodiments, the distal end effector or end effector of one robotic arm 144 can be used to contact a designated location (e.g., a specific location on a patient), and another robotic arm 144 can be used to form a robot reference frame for a time interval, thereby allowing the reference frame to be used to correlate patient space, robotic space, and navigation space.
[0044] Still referencing Figure 1 and Figures 2A to 2B The robotic arm 144 may have three, four, five, six, or more degrees of freedom. The robotic arm 144 may include one or more segments 152. Each segment 152 may include a member 176 and a joint 172, to which the member 176 is attached and / or extending from the joint. The joint 172 may be fixed to, for example, a base 140 or another segment 152 of the member 176. The joint 172 may be any type of joint that allows selective movement of the member 176 relative to the structure to which the joint 172 is attached. For example, the joint 172 may be a pivot joint, a hinge joint, a saddle joint, or a ball joint. The joint 172 may allow the member 176 to move in one or more dimensions and / or along one or more axes.
[0045] In an embodiment of robot 136 including robotic arm 144 having only one segment 152, a connector 172 of segment 152 may be secured to base 140, and a component 176 of segment 152 may include a proximal end secured to connector 172 and a distal end supporting an end effector. The end effector may be, for example, a tool (e.g., a drill, saw, screwdriver, imaging device) or a tool guide (e.g., for guiding a biopsy needle, ablation probe, or other tool along a desired trajectory).
[0046] In an embodiment of the robot 136 including a robotic arm 144 having multiple segments 152, such as Figure 2A As shown, the first segment 152 may include a connector 172 secured to the base 140, and a member 176 of the first segment 152 may include a proximal end secured to the connector 172 and a distal end supporting the connector of the second segment 152. The member 176 of the second segment 152 may include a proximal end secured to the connector 172 of the second segment 152 and a distal end supporting the connector 172 of the third segment 152, and so on. The member 176 of the last segment 152 may include a distal end supporting an end effector 180, which may be the same as or similar to the end effector described above. In such embodiments, the connectors 172 of the respective segments 152 may or may not be of the same type, and the members 176 of the respective segments 152 may or may not be the same. In some embodiments, one or more members of the members 176 may be configured to extend or otherwise retract to selectively adjust their length.
[0047] All or some of the joints 172 of segment 152 of the robotic arm 144 may be powered (so that they can be selectively controlled without physical manipulation by a human). Any or more of electric, pneumatic, hydraulic and / or other means may be used to selectively control the movement of component 176 with respect to joint 172. For example, each segment 152 may include a servo system for selectively moving component 176 of that segment 152 relative to joint 172.
[0048] The robotic arm 144 also includes one or more sensors 148. Each sensor 148 can be positioned to detect the position of a member 176 of a given segment 152 relative to a joint 172 of segment 152. For example, if the joint 172 of a given segment 152 is or includes a hinge joint, the sensor 148 can detect the angular position of the member 176 relative to an axis of the hinge joint. If the joint 172 of a given segment 152 is or includes a rotary joint (e.g., configured to allow rotation of the member 176 about an axis extending through the member 176 and the joint 172), the sensor 148 can detect the angular position of the member 176 relative to an axis extending through the member 176 and the joint 172. Each sensor 148 can be, for example, a rotary encoder, a linear encoder, or an incremental encoder.
[0049] Data from sensor 148 can be provided to the processor of robot 136, the processor 104 of computing device 102, and / or navigation system 160. This data can be used to calculate the spatial position of robot arm 144 relative to a predetermined coordinate system. For example, robot 136 can calculate the spatial position of robot arm 144 relative to a coordinate system whose origin is located at the position where the joint 172 of the first segment 152 of robot arm 144 is fixed to base 140. This calculation can be based not only on data received from sensor 148, but also on data or information (e.g., physical dimensions) corresponding to each segment 152 and / or to the end effector fixed to the last segment 152. By way of example only, the known position of the proximal end of robot arm 144 (e.g., where the joint 172 of the first segment 152 is fixed to base 140), the known dimensions of each segment 152, and data from sensor 148 regarding the orientation of the components 176 of each segment 152 relative to the joint 172 of each segment 152 can be used to calculate the path of the robot arm through space.
[0050] Still referencing Figures 2A to 2B At least one tracking mark 156 is fixedly attached to or positioned on the robotic arm 144. The tracking mark 156 may be positioned, for example, near the distal end of the robotic arm 144, whether or not it is on its end effector 180. As used herein, “fixedly attached” does not mean “permanently attached,” and in fact, the tracking mark 156 may be detachable from the robotic arm 144. The tracking mark 156 may be an infrared emitting diode (IRED) or any other type of light-emitting diode (LED). In some embodiments, the tracking mark 156 may be a reflective sphere, a geometric or optical pattern (e.g., a QR code or barcode). The tracking mark 156 may also be a shape (e.g., a triangle, a circle, a square) or a color, any shape or color may be printed or painted on the arm, applied as a sticker, or provided in any other way. The tracking mark 156 may also be a transmitter of a specific wavelength, a reflector of a specific wavelength, a transmitter that generates pulses at a specific frequency, or another item or feature that can be easily distinguished by the tracking mark sensor 132. The tracking marker 156 can be configured to be detected by the tracking marker sensor 132 even when covered by a drape or other covering that can be placed on or above the robotic arm 144 to maintain a sterile operating room environment.
[0051] When using more than one tracking mark 156 (e.g., when multiple tracking marks 156 are secured to a single robotic arm 144, and / or when one or more tracking marks 156 are secured to each of the multiple robotic arms 144), the tracking marks 156 may be all identical, or one or more tracking marks 156 may be different from other tracking marks 156. In some embodiments, one or more tracking marks 156 may be configured to emit light of a first wavelength, and another one or more tracking marks 156 may be configured to emit light of a second wavelength different from the first wavelength. Furthermore, in some embodiments, one or more tracking marks 156 may be configured to reflect light of the first wavelength, while another one or more tracking marks may be configured to reflect light of a second wavelength different from the first wavelength. The emission wavelength and / or reflection wavelength of the light in the embodiments described above may be wavelengths within a specific spectrum (e.g., wavelengths corresponding to red light and wavelengths corresponding to blue light in the visible spectrum, or different wavelengths in the infrared spectrum) and wavelengths from different spectra (e.g., wavelengths in the visible spectrum and wavelengths in the infrared spectrum). Additionally or alternatively, one or more of the tracking marks 156 may be or may include a transmitter that generates pulses at a first frequency, and another one or more of the tracking marks 156 may be or may include a transmitter that generates pulses at a second frequency different from the first frequency.
[0052] In some embodiments, a plurality of tracking marks 156 may be fixedly secured to or positioned on a segment 152 of the robotic arm 144, the segment including the distal end of the robotic arm 144 (but excluding, for example, an end effector 180 to which it may be attached). The plurality of tracking marks 156 may be arranged such that at least one tracking mark 156 is visible from any of a plurality of possible orientations of the segment 152 and / or the arm 144 (e.g., visible to the tracking sensor 132). For example, in some embodiments, the tracking marks 156 may be circumferentially spaced around the distal end of the robotic arm 144.
[0053] In some embodiments of this disclosure, the tracking marker 156 may be movably secured to the robotic arm 144 and may be further selectively movable relative to the robotic arm 144. In such embodiments, the tracking marker 156 may be configured to move (or automatically move) from a first position on the robotic arm 144 (e.g., near the distal end of the robotic arm) to a second position on the robotic arm 144 (e.g., near the proximal end of the robotic arm) as the robotic arm 144 moves into or out of a position or a set of positions. Such movement of the tracking marker 156 may be intended to facilitate maintaining a line of sight between the tracking marker 156 and the tracking marker sensor 132, or to enable multiple positions of the tracking marker 156 to be recorded by the tracking marker sensor 132 without moving the robotic arm 144 itself. For example, this may be advantageous for increasing the effective size of the robot reference frame for time intervals, as described elsewhere herein. In such implementations, robot 136 (and / or another component of system 100) may be configured to track whether tracking marker 156 is in its respective first or second (or other) position, and provide such information to navigation system 160 (or any other component of system 100) to establish the correlation between the robot coordinate system and the navigation coordinate system based on the position of tracking marker 156 relative to robot arm 144 as known to robot 136 (and / or another component of system 100) and further based on the position of tracking marker 156 detected by navigation system 160 (e.g., using tracking sensor 132). Robot 136 and / or the other component of system 100 may "know" the position of tracking marker 156 relative to robot arm 144 due to a calibration process or simply by storing information corresponding to the position of tracking marker 156 relative to robot arm 144 in its memory.
[0054] Refer again Figure 1 During surgery, navigation system 160 can provide navigation for the surgeon and / or robot 136. Navigation system 160 can be any navigation system now known or developed in the future, including, for example, Medtronic StealthStation. ™S8 Surgical Navigation System. Navigation system 160 may include cameras or other sensors for detecting and / or tracking one or more reference markers, navigation trackers, or other objects in the operating room or other rooms where the surgical procedure is performed. In some embodiments, navigation system 160 may include tracking marker sensor 132. In various embodiments, navigation system 160 may be used to track the position of robotic arm 144 (or more specifically, tracking marker 156 attached to robotic arm 144). Navigation system 160 may be used to track the position of one or more reference markers or arrays or other structures that can be detected by cameras or other sensors of navigation system 160. Navigation system 160 may include a display for showing one or more images from an external source (e.g., computing device 102, tracking marker sensor 132, or other source), or video streams from cameras or other sensors of navigation system 160. In some embodiments, system 100 may operate without using navigation system 160.
[0055] Database 164 may store information relating the position and orientation or pose of robotic arm 144 to the position of tracking marker 156. Database 164 may also store information about each of a plurality of detected positions of tracking marker 156. Database 164 may additionally or alternatively store, for example, one or more characteristics of or corresponding to tracking marker 156; one or more surgical plans for use by a user of robot 136, navigation system 160, and / or computing device 102 or system 100; information about one or more images that may be used in conjunction with surgery to be performed by or with the assistance of one or more other components of system 100; and / or any other useful information. Database 164 may be configured to provide any such information to computing device 102 or any other device of system 100 or any other device outside system 100, whether directly or via cloud 168. In some implementations, database 164 may be or include part of a hospital image storage system, such as a Picture Archiving and Communication System (PACS), a Health Information System (HIS), and / or another system for collecting, storing, managing, and / or transmitting electronic medical records including image data.
[0056] Cloud 168 can be or represents the Internet or any other wide area network. Computing device 102 can connect to cloud 168 via communication interface 108 using a wired connection, a wireless connection, or both. In some embodiments, computing device 102 can communicate with database 164 and / or external devices (e.g., computing devices) via cloud 168.
[0057] Turn now Figure 3The method 300 for utilizing a robot reference frame of time intervals can be executed, for example, by at least one processor. The at least one processor can be the same as or similar to processor 104 of the computing device 102 described above. The at least one processor can be part of a robot (such as robot 136) or a navigation system (such as navigation system 160). Processors other than any processor described herein can also be used to execute method 300. At least one processor can execute method 300 by executing instructions stored in memory (such as instruction 124 in memory 116). These instructions can correspond to one or more steps of method 300 described below. These instructions can cause the processor to execute one or more algorithms, such as algorithm 128.
[0058] Method 300 includes moving the robot's robotic arm to multiple different poses (step 304). The robot's robotic arm may be the same as or similar to the robotic arm 144 of the robot 136 described above. The multiple different poses may be two, three, four, or more poses. In some embodiments, the multiple different poses may include tens or hundreds of poses. The robot's robotic arm is moved sequentially to the multiple different poses such that there is a space or time period (whether measured in milliseconds, seconds, minutes, or otherwise) between a first time when the robotic arm is in one of the multiple different poses and a second time when the robotic arm is in a subsequent pose among the multiple different poses. The space or time period between any two poses in the multiple different poses (provided that the two poses are temporally adjacent) may be the same, or may change from one pair of temporally adjacent poses to another pair of temporally adjacent poses.
[0059] Multiple different poses can be selected or determined to maximize the distance between the tracking marker on the robot arm in each pose and the tracking marker on the robot arm in every other pose. Alternatively, multiple different poses can be selected or determined to maximize the distance between the tracking marker on the robot arm in each pose and the tracking marker on the robot arm in every other pose, while still ensuring that the tracking marker remains within the field of view of a tracking marker sensor, such as tracking marker sensor 132. In yet another embodiment, different poses can be selected at least in part based on the available poses within the navigation volume with respect to one or more obstacles within the navigation volume (e.g., a medical worker's arm and hand; tools, instruments, and other devices positioned within the navigation volume). In yet another embodiment, multiple different poses can be selected at least in part based on one or more of the foregoing considerations and / or based on any other considerations.
[0060] In some implementations, at least one of a plurality of different poses may be a pose in which the robotic arm contacts a specified location (e.g., a specific location on a patient). In such implementations, the resulting robot reference frame of the time interval can be used to correlate the patient space, the robot space, and the navigation space.
[0061] Figures 4A to 4D An example is shown of a sequence of four different poses through which a robotic arm, such as robotic arm 144, can move. Figures 4A to 4D The robot 136 and its robotic arm 144 are shown in the field of view of a tracking marker sensor, such as tracking marker sensor 132. Figures 4A to 4D In the example, robotic arm 144 in Figures 4A to 4D Each of the four different poses shown extends to or nearly extends to its maximum extension. Figures 4A to 4D When the tracking marker 156 is positioned near the distal end of the robotic arm 144, extending or nearly extending to its maximum possible extension advantageously maximizes the robot reference frame for the time interval created as part of method 300, thereby contributing to improved accuracy relative to a smaller reference frame. However, in other embodiments, whether in some or all of a plurality of different poses, the robotic arm may not extend or nearly extend to its maximum extension. Although Figures 4A to 4D A robotic arm 144 with a single tracking tag 156 attached thereto is shown, but in some embodiments of this disclosure, multiple tracking tags 156 may be attached to the robotic arm 144.
[0062] In some implementations, one of the multiple different poses may be the current pose of the robotic arm, and another of the multiple different poses may be the pose of the robotic arm required for surgical steps in conjunction with the surgical procedure. This may include causing a processor (e.g., processor 104) to execute instructions stored in memory (e.g., instructions 124 stored in memory 116) that cause the processor to generate one or more signals and transmit them to a robot such as robot 136. Signals may be transmitted, for example, via a communication interface such as communication interface 108.
[0063] Refer again Figure 3Method 300 further includes, when the robot arm is in a first pose among a plurality of different poses, causing the tracking marker sensor to detect a first position of a tracking marker on the robot arm in a first coordinate space (step 308). The tracking marker sensor may be the same as or similar to tracking marker sensor 132. The tracking marker sensor may be an optical camera, an infrared camera, or any other sensor configured to detect tracking markers. In some embodiments, the tracking marker sensor may be part of a robot (such as robot 136), or a navigation system (such as navigation system 160), or a computing device (such as computing device 102). In some embodiments, the tracking marker sensor may be independent of any of the foregoing components, but may be in electronic communication with one or more of the foregoing components.
[0064] The detected position of the tracking marker can be defined based on a coordinate system such as a navigation coordinate system. The detected position of the tracking marker can be stored in a memory such as memory 116, or in a database such as database 164. Enabling the tracking marker sensor to detect the first position may involve a processor (e.g., processor 104) executing instructions stored in memory (e.g., instruction 124 stored in memory 116), which causes the processor to generate one or more signals and transmit the signals to the tracking marker sensor, such as tracking marker sensor 132. The signals can be configured to activate the tracking marker sensor (e.g., take an image, open the aperture) to detect the first position of the tracking marker. Once the robotic arm has reached one of a plurality of different poses, the signals can be timed to activate the tracking marker. In some embodiments, one or more signals may cause the tracking marker sensor to periodically activate for a set number of iterations (e.g., 4, 10, 100 times) within a given time period (e.g., 1 second, 4 seconds, 30 seconds, 1 minute), during which the robotic arm can continuously move through multiple different poses (e.g., without pausing at each pose). Signals can be sent, for example, via a communication interface such as communication interface 108.
[0065] Method 300 further includes, when the robot arm is in a second pose among a plurality of different poses, causing the tracking marker sensor to detect a second position of the tracking marker on the robot arm in a first coordinate space (step 312). Step 312 may be the same as or substantially the same as step 308, but the robot arm is in a second pose among a plurality of different poses.
[0066] Despite Figure 3Not reflected in the text, but in some embodiments, method 300 may include enabling a tracking marker sensor to detect a third, fourth, fifth, etc., position of a tracking marker on each of the one or more robot arms when the one or more robot arms are respectively in a third, fourth, fifth, etc., pose among a plurality of different poses. Each detected position of each tracking marker of the one or more robot arms may be stored, for example, in a memory such as memory 116 and / or in a database such as database 164. When considered together, the various tracking marker positions define a reference frame for time intervals, which can have a dimension much larger than that possible using a single physical reference frame, for example, multiple reflective spheres or other tracking markers with various fixed arms stabilized to them. In some embodiments, the number of detected positions may be hundreds or more.
[0067] Figure 5 An example of a robot reference frame 500 for time intervals according to an embodiment of the present disclosure is shown. The robot reference frame 500 for time intervals includes four detected tracking marker positions. More specifically, tracking marker 156a is shown as being in a first position (corresponding to...). Figure 4A The pose of the robotic arm 144 is shown in the first instant, and the position is detected. Tracking marker 156b is shown as being in the second position (corresponding to...). Figure 4B The pose of the robotic arm 144 is shown, and this position is detected at a second time point after the first. Tracking marker 156c is shown as being in the third position (corresponding to...). Figure 4C The pose of the robot arm 144 in the image is shown, and this position is detected at a third time point after the second time point. Tracking marker 156d is shown as being in the fourth position (corresponding to...). Figure 4D The pose of the robotic arm 144 in the image was detected at the fourth time point after the third time point.
[0068] In embodiments of this disclosure, such as robot arm 144, which include a plurality of tracking markers attached thereto, the generated robot reference frame of time intervals can be based on the detected position of each of the plurality of tracking markers at each of a plurality of different times. Thus, for example, if Figures 4A to 4DThe robotic arm 144 has two tracking markers 156 attached to it, and tracking marker sensors are configured to detect two tracking markers in the tracking markers 156 in each of four different poses of the robotic arm 144. The resulting robot reference frame for the time interval will then reflect eight tracking marker positions, instead of four tracking marker positions as in reference frame 500. Therefore, including multiple tracking markers on the robotic arm reduces the number of different poses the robotic arm must present at sufficient points to obtain the robot reference frame for the time interval. For example, if a robot reference frame for a given time interval requires four points, and the robotic arm has two tracking markers attached to it, the robot reference frame for the time interval can be created by moving the robotic arm to only two different poses. Similarly, if a robot reference frame for a given time interval requires 100 points, and the robot arm has four tracking markers attached to it, the robot reference frame for the time interval can be created by moving the robot arm to twenty-five different poses (instead of the fifty different poses required if the robot arm has two tracking markers fixed to it, or the 100 different poses required if the robot arm has only one tracking marker fixed to it).
[0069] The robot reference frame 500 for time intervals corresponds to a physical reference frame to some extent, with four reflective spheres or other tracking markers mounted thereto, but differs in that the robot reference frame 500 for time intervals is not limited by the fixed dimensions of the physical reference frame. In practice, a robot such as robot 136, having a robot arm such as robot arm 144, can define the robot reference frame such as reference frame 500 for time intervals as needed, using multiple different poses that may be the same as or different from any previous multiple different poses. In fact, the robot reference frame for time intervals according to embodiments of this disclosure can be formed by moving the robot arm to multiple different poses selected based on, for example, the position of other objects in the surgical environment. Therefore, although using a physical reference frame with fixed dimensions in a crowded surgical environment may require moving one or more tools, instruments, monitors, or other objects, the robot reference frame for time intervals can be generated by posing the robot arm to avoid objects in the surgical environment, making it unnecessary to move those objects. In some implementations, based on information about the position of one or more objects in the navigation space, either in the surgical plan or elsewhere, the pose of the robotic arm moving to a robot reference frame that generates time intervals may be selectively or otherwise determined, and / or paths between each such pose may be selectively or otherwise determined. For example, based on a surgical plan requiring the use of a MIS tower in conjunction with spinal surgery, processor 104 or another processor may predict the position of the MIS tower based on information in the surgical plan and / or stored information about the size of the MIS tower, and may determine one or more poses and / or paths to, from, and / or between the one or more poses based on the predicted position of the MIS tower. In other implementations, when determining one or more poses and / or paths to, from, and / or between the one or more poses for the purposes described herein, processor 104 or another processor may use navigation information about the position of one or more tracked objects in the navigation space.
[0070] Furthermore, the robot reference frames for time intervals as described herein need not always have the same pattern or dimension. For example, a robot reference frame for one time interval may have dimensions corresponding to multiple different poses that allow the robot arm to extend or nearly extend to its maximum extension in each pose, while a robot reference frame for another time interval may have dimensions corresponding to multiple different poses, where none of those poses require the robot arm to extend to its maximum or near-maximum extension.
[0071] Although reference frame 500 is shown in two dimensions (e.g., all tracking markers 156a to 156d are positioned in the same plane), robot reference frames at time intervals according to embodiments of this disclosure may include tracking markers positioned in three dimensions. In other words, multiple different poses of the robot arm may include poses that position the tracking markers at different X, Y, and Z positions relative to the origin of the robot coordinate system, where X, Y, and Z represent orthogonal axes passing through the origin of the robot coordinate system. Furthermore, tracking marker sensors may be able to detect the position of the tracking markers in three dimensions (e.g., in the navigation coordinate system).
[0072] The fourth dimension, namely time, is used to create the robot reference frame 500 for time intervals. However, once the detected positions of the tracking marker 156 are generated by assembling or compiling at each of the multiple different poses corresponding to each of the multiple different times, the reference frame 500 itself does not reflect time.
[0073] As is clear from the foregoing, embodiments of this disclosure advantageously eliminate the need for sometimes bulky frames of reference. For example, some navigation systems require certain minimum distances between tracking markers (or a physical frame of reference for keeping the tracking markers at a minimum size) to provide accurate navigation within a volume suitable for a given application. Specifically, larger volumes may require a larger frame of reference compared to smaller volumes. In some cases, the frame of reference for keeping tracking markers for surgery or other medical procedures may extend from three inches to ten inches in multiple dimensions to achieve the minimum necessary size. Consequently, these frames of reference tend to be bulky, prone to collisions (which can, for example, cause undesirable movement of objects to which these frames of reference are attached), hinder the movement of any movable objects in the surgeon or operating room environment, and may be difficult to use. The use of a time-interval robotic frame of reference as described herein allows a somewhat bulky object (the robot) already in the operating room when needed to be used to create a time-interval frame of reference, thereby eliminating the need for a dedicated frame of reference and the problems associated with it.
[0074] return Figure 3Method 300 further includes receiving information from the robot corresponding to the position of the tracking marker in a second coordinate space when the robot arm is in each of a plurality of different poses (step 316). Such information may be determined based on the sensed position of the robot arm, such as as indicated by one or more sensors such as sensor 148. Such information may also be determined based on a known relationship between the position of the robot arm and the position of the tracking marker. Using system 100 as an example, the tracking marker 156 may be secured to a precise position near the distal end of the robot arm 144 (e.g., a precise known position on the robot arm 144, such as reflected by coordinates and / or measurements relative to the robot arm 144 or relative to the robot coordinate system). The precise position may be established during the manufacturing of the robot arm 144 (e.g., precision tools may be used to ensure that the tracking marker 156 is precisely mounted in a predetermined position on the robot arm 144) or during a subsequent calibration process (e.g., the position of the tracking marker 156 relative to the robot arm 144 and / or the robot coordinate system may be precisely measured after the tracking marker 156 has been attached to the robot arm 144).
[0075] In some implementations, the information may not include the position of each tracking marker corresponding to each pose of the robotic arm, but may instead include information sufficient to determine or calculate the position (in the robot coordinate system) of each tracking marker corresponding to each pose of the robotic arm. Thus, for example, the information may include information collected from one or more sensors, such as one or more sensors 148, regarding the position and orientation of the robotic arm in each of a plurality of different poses and / or information regarding the precise position of each tracking marker relative to the robotic arm. Based on such information, a processor (such as processor 104) may utilize one or more algorithms, such as algorithm 128, to calculate the position of each tracking marker in the robot coordinate system for each of the plurality of different poses of the robotic arm. For example, if the information includes sensor data sufficient to calculate the pose of one or more segments (e.g., segment 152) of the robotic arm (such as robotic arm 144), the calculated poses of one or more segments can then be combined into the calculated pose of the entire robotic arm. Once the position of the robotic arm (in robot coordinate space) has been determined, the position of the tracking marker can be determined based on the known position of the tracking marker relative to the robotic arm.
[0076] In some embodiments, the information received in step 316 may include information stored in a memory such as memory 116. Such information may include, for example, information regarding the dimensions, arrangement, range of motion, and / or other characteristics of segments of one or more robotic arms and / or the entirety of one or more robotic arms.
[0077] Method 300 further includes comparing the position of the tracking marker in a first coordinate space with the position of the tracking marker in a second coordinate space (step 320). The comparison may include registering the first coordinate space to the second coordinate space. Registration may include comparing the detected first position and the detected second position (both of which may be, for example, in the navigation coordinate space) with the received or calculated position of each tracking marker in the robot coordinate space (such as being included in or calculated from the received information), and based on the comparison, associating the robot coordinate space with the navigation coordinate space or vice versa.
[0078] In some implementations, registration may be further based on the detected position of a physical reference frame (e.g., not a robot reference frame for time intervals) that can be stabilized to, for example, a robot arm from which it extends. A physical reference frame can be used to ensure that there is no relative movement between the tracking marker sensor and the robot base, whether during a time period in which the robot arm is moved to multiple different poses, throughout the entire surgical procedure, or during another time period. Using a physical reference frame on the robot base may be advantageous when the robot base is mounted on wheels or otherwise movable. However, in other implementations, registration may be performed without information about or corresponding to any reference frame other than a robot reference frame for time intervals. Such implementations may include those in which the robot base and the tracking marker sensor are fixed relative to each other (e.g., by fixed mounting to a wall, ceiling, operating table, or other fixed structure). Such implementations may also include those in which multiple different positions are reached during relatively short time periods (such as time periods equal to or less than five seconds, or equal to or less than three seconds, or equal to or less than two seconds, or equal to or less than one second).
[0079] In some implementations, when a point constituting the robot reference frame of the time interval is captured within a predetermined time period (e.g., within one second or less, or two seconds or less, or three seconds or less, or five seconds or less), registration can be completed without information about or corresponding to any reference frame other than the robot reference frame of the time interval. When a point constituting the robot reference frame of the time interval is captured beyond a predetermined time period (e.g., within a time period exceeding one second, or exceeding two seconds, or exceeding three seconds, or exceeding five seconds), registration can be completed with information about or corresponding to the physical reference frame (or another physical reference frame) attached to the robot base.
[0080] In other implementations, registration can be performed without using or relying on any information corresponding to the physical reference frame (or any reference frame other than the robot reference frame of the time interval), but only after initial registration has been completed, at least in part, based on information about the physical reference frame. For example, if the physical reference frame will be occluded during the surgical procedure, the physical reference frame can be used to complete the initial registration, and re-registration or registration verification during the procedure can be performed using only the robot reference frame of the time interval.
[0081] Furthermore, when a comparison concludes that the detected tracking marker position matches the tracking marker position as reflected by or determined by the information used, the operational integrity of the robot and navigation system can be confirmed. This can be useful during surgical procedures and can be used for initial calibration of the robot system. On the other hand, if a comparison concludes that the detected tracking marker position does not match the tracking marker position as reflected by or determined by the information used, another conclusion can be reached that one or both of the robot and navigation system lack operational integrity. Therefore, when this occurs, a warning can be displayed to the operator of the robot and / or navigation system, and / or an audible sound can be played through a user interface (e.g., user interface 112 of computing device 102 or a user interface specific to the robot or navigation system). Providing such a warning to the operator of the robot and / or navigation system helps ensure that any questionable operational integrity of the robot and / or navigation system is investigated and any errors are corrected before further use of the robot and / or navigation system.
[0082] In some implementations, steps 304 to 316 can be repeated (e.g., based on multiple different poses of the robot arm) if the detected tracking marker position differs only slightly from the tracking marker position as reflected by or determined by the information. The detected tracking marker position can then be compared again with the tracking marker position as reflected by or determined by the information. If the second tracking marker position again differs slightly from the tracking marker position as reflected by or determined by the information, an error calculation and / or calibration process can be performed to determine adjustments to be applied to future adjustments to ensure that the detected tracking marker position matches the tracking marker position as reflected by or determined by the information, and vice versa. In other words, if the offset between the detected arrangement of multiple tracking markers and a set of corresponding tracking marker positions as reflected by or determined by the information can be characterized by a constant or derived equation, allowing the offset to be incorporated into further comparisons, the operational integrity of the robot and / or navigation system can then be verified.
[0083] This disclosure covers embodiments of method 300 that include more or fewer steps than the embodiments described above. Although aspects of method 300 are described with respect to a single robot including a single robotic arm, method 300 may utilize a single robot having multiple robotic arms (one or more of which have one or more tracking marks fixedly attached thereto), multiple robots each having a single robotic arm with one or more tracking marks fixedly attached thereto, and / or multiple robots each having multiple robotic arms (one or more of which have one or more tracking marks fixedly attached thereto).
[0084] Turn now Figure 6 The method 600, which utilizes a robot reference frame with time intervals for registration, includes receiving first information about the position of a tracking marker at each of a plurality of different times (step 304). The first information may be received, for example, from a sensor such as tracking marker sensor 132 or any other sensor suitable for detecting the tracking marker. The first information may be received directly from the sensor or via one or more communication interfaces (such as communication interface 108) and / or via a cloud (such as cloud 168) or via any other network, device, or component.
[0085] The multiple different times may include two times, three times, four times, or more times. In some embodiments, the multiple different times may include ten times or 100 times. Each of the multiple different times may fall within a time period of one second or less, or five seconds or less, or ten seconds or less, or one minute or less, or more than one minute. The tracking marker may be, for example, tracking marker 156 or any other tracking marker. The tracking marker may be securely attached to a robotic arm, which may be any robotic arm described herein, including, for example, robotic arm 144 of robot 136 or any other robotic arm.
[0086] The first information may be, or may include, information about the position of the tracking marker in the navigation coordinate system at each of a plurality of times. In some embodiments, the first information may include information about a first position of the tracking marker in the navigation coordinate system at at least one of the plurality of times, and may also include information about a second position of at least one tracking marker relative to the first position. In other words, the first information may include information sufficient to determine the position of the tracking marker relative to the navigation coordinate system at each of the plurality of times.
[0087] Method 600 further includes receiving second information corresponding to the position of the tracking marker in the robot coordinate system at each of a plurality of different times (step 608). The second information may describe the position of the tracking marker relative to the robot coordinate space at each of the plurality of different times (or implement a calculation sufficient to determine the position). The second information may be obtained, for example, from a robot arm, which may be robot arm 144 as described herein or any other robot arm. The second information may additionally or alternatively be obtained from or via a robot including a robot arm, such as robot 136, and / or from a memory (such as memory 116), a computing device (more generally, such as computing device 102), a database (such as database 164), a cloud (such as cloud 168), or another source.
[0088] The second information may be based, for example, data obtained from one or more sensors in the robot arm, such as sensor 148. For example, the second information may include sensor data regarding the detected pose of one or more segments of the robot arm and / or the entire robot arm. The second information may be additionally or alternatively based on one or more settings of one or more components of the robot arm. For example, the second information may include data describing the position (whether actual or commanded position) of one or more motors, servo systems, gears, or other means or components used to control the pose of the robot arm and / or one or more segments thereof. The second information may be obtained independently of the first information, and vice versa. The second information may include information describing the pose of the robot arm at each of a plurality of times, or information from which the pose of the robot arm at each of a plurality of times can be calculated. In the latter case, one or more algorithms, such as algorithm 128, may be used to calculate the pose of the robot arm at each of a plurality of times.
[0089] The second information may also include information about the position of the tracking marker relative to the robot arm and information about the robot arm relative to the robot coordinate system.
[0090] Method 600 further includes comparing the robot coordinate system with the navigation coordinate system based on the first and second information (step 612). The comparison may include registering the robot coordinate system to the navigation coordinate system. This registration may be based on the first and second information. In some embodiments, registration includes associating the pose of the robot arm in the robot coordinate system at each of a plurality of different times with the detected position of the tracking markers in the robot coordinate system at each of the plurality of different times. This association may include accessing information from a memory (such as memory 116), a database (such as database 164), a robot (such as robot 136), or another storage location. The accessed information may include, for example, information about the precise position of the tracking markers on the robot arm, and / or information about the size, arrangement, range of motion, and / or other characteristics of segments and / or the entire robot arm. Based on such information and information about the pose of the robot arm in the robot coordinate system (e.g., the second information received in step 608), the positions of multiple tracking markers in the robot coordinate system may be calculated. Such calculations may utilize, for example, one or more algorithms (such as algorithm 128). The relevant results can be the tracking of calculated or otherwise determined positions marked in the robot coordinate system at each of multiple different times.
[0091] Registration may include determining the relationship between the robot coordinate system and the navigation coordinate system based on tracking known positions of markers in the navigation coordinate system (such as those included in or determined from the first information) at each of multiple different times and tracking known positions of markers in the robot coordinate system (such as those included in or determined from the second information) at each of multiple different times. Registration may utilize one or more algorithms, such as algorithm 128 stored in memory 116.
[0092] In some embodiments, method 600 may further include registering the patient coordinate system to the navigation coordinate system. When the robot is connected to the patient (as is sometimes the case during robotic surgery or robot-assisted surgery) or when the robot coordinate system has already been registered to the patient coordinate system, the registration of the robot coordinate system to the navigation coordinate system (as described above with respect to step 612) also enables the patient coordinate system to be registered to the navigation coordinate system. In some embodiments, registration includes associating the robot coordinate system with the patient coordinate system (and vice versa), and based on that registration, associating the patient coordinate system with the navigation coordinate system. In other words, the registration may include determining the relationship between the patient coordinate system and the navigation coordinate system based on the relationship between the patient coordinate system and the robot coordinate system, and the relationship between the robot coordinate system and the navigation coordinate system. This registration may utilize one or more algorithms, such as algorithm 128 stored in memory 116.
[0093] Method 600 also includes operating the robot based on comparison (step 616). Operation may include a processor, such as processor 104, executing instructions (e.g., instruction 124) stored in a memory such as memory 116, which causes processor 104 to transmit one or more signals to robot 136 to cause robotic arm 144 to move in one or more ways to perform one or more steps of the surgical procedure. Comparison can advantageously enable the robotic arm to move to a precise position relative to the patient using information about the patient, such as one or more preoperative images and / or preoperative surgical plans.
[0094] This disclosure covers numerous variations of method 600. For example, in some embodiments, the second information may include position information (in the robot coordinate system) of the tracking marker at each of a plurality of times, making the correlations described above with respect to step 612 unnecessary (such as any calculations to determine the pose of the robot arm based on the second information, as described above with respect to step 608). Additionally, although in method 600 described above, the position of the tracking marker in the robot coordinate system at each of a plurality of different times is determined based on the second information regarding the pose of the robot arm in the robot coordinate system, in other embodiments, the pose of the robot arm may be determined based on the first information, and registration step 612 may include registering the robot coordinate system with the navigation coordinate system based on the position of the robot arm as determined according to the first information and the position of the robot arm as indicated by or determined according to the second information (or vice versa).
[0095] Method 600 advantageously enables the registration of the navigation coordinate system with the robot coordinate system and vice versa, without using a reference system other than the reference system formed by the robot arm itself (including tracking markers fixedly attached to the robot arm) over time intervals. Therefore, Method 600 avoids the cost of a separate reference system, the time expenditure required to fix a separate reference system to the robot arm, and the incision that would otherwise be required to fix a separate reference system to the patient when the reference system will be directly fixed to the patient (e.g., to the patient's vertebrae or pelvis). Furthermore, Method 600 eliminates the need for snapshot frames that would otherwise be required during the registration of the navigation coordinate system with the robot coordinate system (and vice versa).
[0096] This disclosure covers implementations of method 600 that have more or fewer steps than the implementation described above.
[0097] Now for reference Figure 7The method 700 using a robot reference frame includes receiving information corresponding to the pose of the robot arm at each of a plurality of different times (step 404). The plurality of different times may include a first time and a second time following the first time. In some embodiments, the plurality of different times may also include a third time following the second time, a fourth time following the third time, a fifth time following the fourth time, and / or additional times. The plurality of different times may be evenly spaced (e.g., each of the plurality of different times may be the same amount of time apart from each adjacent time interval of the plurality of different times), or may be disparately spaced. The plurality of different times may all fall within a total time period including two seconds or less, ten seconds or less, one hundred seconds or less, one thousand seconds or less, or any other time interval. The plurality of different times can be determined simply by when the robot arm arrives at each of the plurality of different poses.
[0098] The robotic arm can be robotic arm 144 as described herein or any other robotic arm. A tracking marker is fixedly secured to the robotic arm near its distal end. In some embodiments, more than one tracking marker may be fixedly secured to the robotic arm. Furthermore, in some embodiments, more than one robotic arm may be used in conjunction with method 700. The pose of the robotic arm differs at each of a plurality of different times. At a first time of the plurality of different times, the pose of the robotic arm may cause the robotic arm to extend substantially in a first direction, and at a second time of the plurality of different times, the pose of the robotic arm may cause the robotic arm to extend substantially in a second direction orthogonal to the first direction. In some embodiments, at a third time of the plurality of different times, the pose of the robotic arm may cause the robotic arm to extend substantially upward in a third direction orthogonal to the first and second directions. In other embodiments, at any pose corresponding to the plurality of different times, the robotic arm may not extend in any direction orthogonal or substantially orthogonal to any direction in which the robotic arm extends at any other pose corresponding to one of the plurality of different times.
[0099] In some implementations, the information corresponding to the pose of the robot arm at each of a plurality of different times may be information corresponding to the predicted pose of the robot arm at each of the plurality of different times. For example, the information may correspond to a plurality of planned poses to which the robot arm will move (e.g., sequentially, such that the robot arm presents each of the planned poses at different times), and the plurality of different times may be determined by predicting the time when the robot arm will reach each of the planned poses. This information may correspond to or include (e.g., the result of one or more calculations performed by a robot (such as robot 136) or a processor (such as processor 104) to determine the predicted position of the tracking marker based on the expected or current pose of the robot arm to which the tracking marker is fixedly anchored. At least one pose of the robot arm at one of the plurality of different times may be a pose that enables the end effector of the robot arm (whether an end effector or other feature) to contact an object whose position needs to be determined or confirmed (whether in the navigation coordinate space or another coordinate space). This information may include information about the position of the tracking marker fixedly anchored to the robot arm relative to the robot coordinate system or another coordinate system. In the case of using multiple robotic arms, each robotic arm has a tracking marker fixedly attached to it, and the information may include information about the characteristics of each tracking marker, such as the wavelength of each individual tracking marker, the frequency of the pulse generated, or information about the geometric pattern.
[0100] Each tracking marker can be any tracking marker described herein, including, for example, tracking marker 156. Each tracking marker is stabilized to the robotic arm.
[0101] Method 700 further includes receiving data corresponding to the detected position of a tracking marker on the robot arm at each of a plurality of different times (step 708). This data may be received, for example, from a tracking marker sensor (such as tracking marker sensor 132). The data may include position information of the tracking marker in a navigation coordinate space or another coordinate space. Alternatively, the data may enable the calculation of the position of the tracking marker in the navigation coordinate space or another coordinate space. When using multiple tracking markers, the data may include information about the characteristics of each individual tracking marker, such as the wavelength of each individual tracking marker, the frequency of the pulse generated, or the geometric pattern.
[0102] It is worth noting that the data corresponding to the detected position of the tracking marker is independent of the information corresponding to the pose of the robot arm, even though such information includes positional information about the tracking marker. In other words, the data is generated without referring to this information, and the information is generated without referring to this data.
[0103] Method 700 also includes combining information and data to generate a reference frame for a customized time interval (step 712). This combination can produce, for example, a reference frame for a customized time interval, such as... Figure 5 The custom time interval reference frame is shown. When the detected position of the tracking marker at each of multiple different times (e.g., as reflected in the data) matches the predicted or expected position of the tracking marker (e.g., as reflected in or determined from the information), the exact coordinates of the custom time interval reference frame are known in both the navigation coordinate system and the robot coordinate system. Therefore, instead of a separate reference frame that must be stabilized to or held by the robot arm or another object or person, a custom, disposable reference frame can be used.
[0104] The comparison may include using one or more algorithms (such as Algorithm 128) to convert the position of the tracking marker in one coordinate system (e.g., in the robot coordinate system) to the position of the tracking marker in another coordinate system (e.g., in the navigation coordinate system). The comparison may also include overlaying an image contained in or generated using data corresponding to the detected positions of the tracking markers at multiple different times onto a virtual image generated based on information corresponding to the pose of the tracking markers at each of the multiple different times to determine whether the tracking markers in the two images are aligned with each other. Other comparison methods may also be used to determine whether the position of the tracking markers as reflected in the data matches the position of the tracking markers as reflected in or determined from the information.
[0105] Method 700 further includes determining the object's position in a predetermined coordinate space based on the creation of a customized one-time reference frame (step 716). As described above, the precise coordinates of the robot reference frame for the time interval are known when the position of the tracking marker, as reflected in or determined from the information, matches the position of the tracking marker, as reflected in the data. If the object's position (and in some embodiments, the object's orientation) can be detected simultaneously with the tracking marker detection at one or more different times and / or if the robot arm contacts a known surface or feature of the object at one or more different times, the object's position (and in some embodiments, the object's orientation) can be determined using a customized time interval reference frame, just as the object's position (and in some embodiments, the object's orientation) can be determined using a reference frame separate from the robot arm.
[0106] This disclosure covers implementations of method 700 that have more or fewer steps than the implementation described above.
[0107] Each embodiment described herein may utilize: a single robotic arm having a single tracking marker stabilized thereto; a single robotic arm having multiple tracking markers stabilized thereto; multiple robotic arms having a single tracking marker stabilized to each robotic arm; and multiple robotic arms having multiple tracking markers stabilized to each robotic arm. As explained above, in embodiments including or utilizing multiple tracking markers, fewer different poses of one or more robotic arms may be required to achieve a robotic reference frame for a time interval suitable for the intended purpose. Similarly, in embodiments including or utilizing multiple robotic arms, each with at least one tracking marker stabilized thereto, fewer different poses of the multiple robotic arms may be required to achieve a robotic reference frame for a time interval suitable for the intended purpose.
[0108] When multiple robotic arms are used in conjunction with any or more of the systems, methods, or apparatuses described herein, any information described above corresponding to one or more poses of the robotic arms may include information corresponding to one or more poses of each of the multiple robotic arms. In some embodiments, such information may also be, or may include, information about the position of one or more tracking markers attached to each of the multiple robotic arms in robot coordinate space.
[0109] The embodiments disclosed herein can advantageously improve patient safety during surgical procedures. More specifically, the robot reference frame with time intervals as disclosed herein can be used to confirm, for example, registration between the robot coordinate space and the patient coordinate space and / or between the navigation coordinate space and the robot coordinate space and / or between the navigation coordinate space and the patient coordinate space (using the robot coordinate space as an intermediary). For example, a relatively small physical reference frame can be used to register the robot coordinate space to the patient coordinate space, thereby producing a registration with a first degree of accuracy. A relatively large robot reference frame with time intervals can also be used to register the robot coordinate space to the patient coordinate space, thereby producing a registration with a second degree of accuracy greater than the first degree of accuracy. As another example, after the initial registration of the robot coordinate space to the patient coordinate space, the robot reference frame with time intervals as disclosed herein can be used at one or more times throughout the surgical procedure (or, in some embodiments, continuously throughout the surgical procedure) to confirm (using a navigation system including tracking marker sensors) that the robot arm is actually in the position that the robot knows the robot arm should be in (e.g., by using one or more encoders or other sensors in the robot arm).
[0110] The embodiments of this disclosure enable a trade-off between space and time to maintain or improve the accuracy of registration, re-registration, or registration verification (any of which can be understood as registration). For example, when available space is insufficient to utilize a physical reference frame of sufficient size to achieve the desired level of accuracy, as described herein, a robotic arm with at least one tracking mark anchored thereto can be used to generate a robotic reference frame for time intervals over time. On the other hand, when available space is sufficient to utilize a physical reference frame of sufficient size to achieve the desired level of accuracy, a single snapshot of such a reference frame can provide the necessary information for registration. Including multiple tracking marks on a single robotic arm (or including a single tracking mark on multiple robotic arms, or including multiple tracking marks on multiple robotic arms) can reduce the amount of time required to generate a robotic reference frame for time intervals while increasing the amount of space required. When spatial and / or temporal constraints change during the course of the surgical procedure, a reference frame suitable for the current constraints can be selected and used.
[0111] As can be understood from the foregoing disclosure, this disclosure covers those with a greater than Figure 3 , Figure 6 and Figure 7 The methods with fewer steps identified in the text (and the corresponding descriptions of methods 300, 600, and 700), and including all steps other than those listed below. Figure 3 , Figure 6 and Figure 7 Methods involving steps other than those identified in the description (and corresponding descriptions of methods 300, 600, and 700). One or more aspects of this disclosure may be identical or similar to one or more corresponding aspects of the apparatus, system, and method disclosed in U.S. Patent Application Serial No. 63 / 036,130, filed June 8, 2020, entitled “Robotic Reference Frames for Navigation,” the entire contents of which are incorporated herein by reference.
[0112] The foregoing is not intended to limit this disclosure to the one or more forms disclosed herein. In the foregoing specific embodiments, for the purpose of simplifying this disclosure, various features of this disclosure are grouped together in one or more aspects, embodiments, and / or configurations. Features of aspects, embodiments, and / or configurations of this disclosure may be combined in alternative aspects, embodiments, and / or configurations other than those discussed above. The approach of this disclosure should not be construed as reflecting an intention that the claims require more features than expressly recited in each claim. Rather, as reflected in the following claims, aspects of the invention lie in fewer than all the features of a single foregoing aspect, embodiment, and / or configuration. Therefore, the following claims are hereby incorporated into this specific embodiment, wherein each claim exists independently as a separate preferred embodiment of this disclosure.
[0113] Furthermore, although the description has included descriptions of one or more aspects, embodiments, and / or configurations, as well as certain variations and modifications, other variations, combinations, and modifications are also within the scope of this disclosure upon understanding it, for example, as may be within the skill and knowledge of one skilled in the art. It is intended to obtain the right to include alternative aspects, embodiments, and / or configurations to the permissible extent, including claimed alternatives, replacements, and / or equivalent structures, functions, scopes, or steps, regardless of whether such alternatives, replacements, and / or equivalent structures, functions, scopes, or steps are disclosed herein, and it is not intended for use with any patentable subject matter.
Claims
1. A surgical robot navigation system, the surgical robot navigation system comprising: Robot base; Robotic arm, the robotic arm comprising: The proximal portion is securely attached to the robot base; The distal portion, which is movable relative to the proximal portion; and A tracking marker, which is secured to the robotic arm near the distal portion; At least one processor; A navigation system, the navigation system including a tracking marker sensor configured to identify the position of the tracking marker in a first coordinate space; and A memory storing instructions for execution by the at least one processor, the instructions causing the at least one processor, when executed, to: The robotic arm can be moved to multiple different poses; Receive information relating to the position of the tracking marker in a second coordinate space when the robotic arm is in each of the plurality of different poses; and The position of the tracking marker in the first coordinate space is compared with the position of the tracking marker in the second coordinate space. The navigation system is configured to detect a first position of the tracking marker at a first time when the robot arm is in a first pose among the plurality of different poses, and to detect a second position of the tracking marker at a second time when the robot arm is in a second pose among the plurality of different poses, wherein at least one of the first pose and the second pose corresponds to the pose in which the robot arm contacts a designated location.
2. The surgical robot navigation system according to claim 1, wherein the plurality of different poses create robot reference frames at time intervals.
3. The surgical robot navigation system according to claim 1, wherein at least one of the plurality of different poses corresponds to the maximum extension of the robot arm.
4. The surgical robot navigation system of claim 1, wherein the tracking marker is configured to emit or reflect light through a covering.
5. The surgical robot navigation system of claim 1, wherein the tracking marker is a first tracking marker configured to emit or reflect light having a first wavelength, and wherein the robotic arm includes a second tracking marker configured to emit or reflect light having a second wavelength different from the first wavelength.
6. The surgical robot navigation system of claim 1, wherein the tracking marker is a first tracking marker configured to emit light in pulses at a first frequency, and wherein the robotic arm includes a second tracking member configured to emit light in pulses at a second frequency different from the first frequency.
7. The surgical robot navigation system of claim 1, wherein the robotic arm is a first robotic arm, wherein the tracking marker is a first tracking marker, and wherein: The robot navigation system further includes a second robot arm, which includes a second tracking marker. The navigation system is configured to identify the position of the second tracking marker in the first coordinate space; and The memory includes instructions to be executed by the at least one processor, which, when executed, cause the at least one processor to compare the position of the second tracking marker in the first coordinate space with the position of the second tracking marker in the second coordinate space.
8. The surgical robot navigation system of claim 1, wherein the robotic arm is a first robotic arm, wherein the tracking marker is a first tracking marker, and wherein: The robot navigation system further includes a second robot arm, which includes a second tracking marker. The navigation system is configured to identify the position of the second tracking marker in a third coordinate space different from the first and second coordinate spaces; and The memory includes instructions to be executed by the at least one processor, which, when executed, cause the at least one processor to compare the position of the second tracking marker in the first coordinate space with the position of the second tracking marker in the third coordinate space.
9. The surgical robot navigation system of claim 1, wherein the second time is after the first time, and the second position is different from the first position, and wherein the designated position corresponds to a specific position on the patient.
10. The surgical robot navigation system of claim 9, wherein the memory stores additional instructions to be executed by the processor, the additional instructions causing the at least one processor, when executed, to: The first coordinate space is registered to the second coordinate space based at least on the detected first position, the detected second position, and the information.
11. The surgical robot navigation system of claim 1, wherein the received information is obtained independently of the tracking marker sensor.
12. A non-transitory computer-readable medium comprising one or more instructions stored thereon, said one or more instructions, when executed by a processor, causing the processor to perform a method utilizing a surgical robot reference frame of time intervals, said method comprising: The robot receives first information about the position of a tracking marker that changes over multiple different times from a tracking marker sensor, the tracking marker being fixed to the robot arm, and the first information collectively defines a unique shape in a navigation coordinate system, wherein the robot arm is in contact with a designated position for at least one of the multiple different times. Receive second information from the robot system corresponding to the position of the tracking marker in the robot coordinate system at the plurality of different times; as well as The robot coordinate system is compared with the navigation coordinate system based on the first information and the second information.
13. The non-transitory computer-readable medium of claim 12, wherein the robot system is configured to move the robot arm to a first pose at a first time among the plurality of different times, wherein the first pose corresponds to an extension of the robot arm in a first direction, wherein the robot system is configured to move the robot arm to a second pose at a second time among the plurality of different times, and wherein the second pose corresponds to an extension of the robot arm in a second direction different from the first direction.
14. The non-transitory computer-readable medium of claim 13, wherein the first direction is orthogonal to the second direction.
15. The non-transitory computer-readable medium of claim 12, wherein each of the plurality of different times occurs during continuous movement of the robotic arm.
16. The non-transitory computer-readable medium of claim 12, wherein comparing the robot coordinate system with the navigation coordinate system based on the first information and the second information includes registering the robot coordinate system to the navigation coordinate system.
17. The non-transitory computer-readable medium of claim 16, wherein the registration is not based on any information about any tracking markers not attached to the robotic arm.
18. The non-transitory computer-readable medium of claim 12, wherein the second information includes information about the position of the tracking mark fixedly attached to the robotic arm.
19. The non-transitory computer-readable medium of claim 12, further comprising: The robot is operated based on the comparison.
20. An apparatus for surgical navigation using a robot reference frame, the apparatus comprising: At least one communication interface, said at least one communication interface being used to receive information from the robot; At least one tracking marker sensor, the at least one tracking marker sensor being configured to detect tracking markers on the robot arm of the robot; At least one processor; and At least one memory, the at least one memory storing instructions for execution by the at least one processor, the instructions causing the at least one processor, when executed, to: The robot receives information corresponding to the pose of the robot arm at each of a plurality of different times, wherein the robot arm is in contact with a specified position for at least one pose of the robot arm. Data corresponding to the detected position of the tracking marker at each of the plurality of different times is received from the at least one tracking marker sensor; as well as The information and data are combined to generate a reference frame for a customized time interval.
21. The apparatus of claim 20, wherein the at least one memory stores additional instructions to be executed by the at least one processor, the additional instructions, when executed, further causing the at least one processor to: The position of the object in the predetermined coordinate space is determined by creating a reference frame based on the customized time interval.
22. The apparatus of claim 20, wherein the at least one memory stores additional instructions to be executed by the at least one processor, the additional instructions, when executed, further causing the at least one processor to determine the pose of the robotic arm at each of the plurality of different times, wherein each pose is configured to avoid collision with an external object near the robotic arm.
23. The apparatus of claim 20, wherein the at least one tracking marker sensor is configured to detect a tracking marker on each of a plurality of robotic arms, the information corresponding to the pose of each of the plurality of robotic arms at each of the plurality of different times, and the data corresponding to the detected position of the tracking marker at each of the plurality of different times.
24. The apparatus of claim 20, wherein the information corresponds to the predicted pose of the robotic arm at each of the plurality of different times.
Citation Information
Patent Citations
System and method for registration between coordinate systems and navigation
US11918297B2
Robot system, calibration method of robot system, robot, calibration device, and digital camera
CN103372862A
Mobile construction robot
EP3613544A1