The present invention relates generally to the field of robotic catheter systems for performing diagnostic and/or therapeutic procedures and in particular, to a system and method for controlling a motor used to drive portions of the catheter system that includes determining a load torque using the motor.
Catheters may be used for many medical procedures, including inserting a guide wire, delivering a stent and delivering and inflating a balloon. Catheterization procedures are commonly performed for diagnosis and treatment of diseases of the heart and vascular systems. The catheterization procedure is generally initiated by inserting a guide wire into a blood vessel in the patient's body. The guide wire is then guided to the desired location, most commonly in one of the heart vessels or elsewhere in the vascular system. At this point, the catheter is slid over the guide wire into the blood vessel and/or heart. Once the catheter is in the desired position, the guide wire can then be removed leaving the catheter in location. Alternatively, in some procedures, the catheter is inserted without using a guide wire. The catheter may be used to pass ancillary devices into the body such as an angioplasty balloon, or to perform other diagnostic or therapeutic procedures.
For manual insertion of a catheter, the physician applies torque and axial push force on the proximal end of a guide wire to effect tip direction and axial advancement at the distal end. Robotic catheter system have been developed that may be used to aid a physician in performing a catheterization procedure such as a percutaneous coronary intervention (PCI). The physician uses a robotic catheter system to precisely steer a coronary guide wire and balloon/stent device in order to, for example, widen an obstructed artery. The physician relies on position feedback signals provided by both the robotic catheter system and a fluoroscopic imaging system in order to complete the procedure Robotic catheter systems, however, do not provide the force feedback the physician experiences when manually performing PCI. In order to provide force sensing capabilities, an appropriately selected load cell or rotary torque sensor could be used; however, these are costly devices which can drastically increase the required work space volume to perform the PCI procedure.
It would be desirable to provide a system and method for controlling a motor used to drive portions of the catheter system including sensing torque using the motor. In various embodiments, either a brushless DC (BLDC) motor or a stepper motor may be used to determine the load torque being exerted on the motor. Presenting the real time force and torque required to drive a coronary device in the patient may enhance the performance of the robotic catheter system.
In accordance with an embodiment, a catheter procedure system includes a bedside system comprising a percutaneous device, at least one drive mechanism coupled to the percutaneous device and at least one motor coupled to the at least one drive mechanism; and a workstation coupled to the bedside system including a user interface and a controller coupled to the bedside system and the user interface, the controller programmed to receive at last one parameter of the motor, determine a quadrature current of the motor based on at least the at least one parameter, determine a load torque on the motor based on at least the quadrature current, an angular velocity and an angular acceleration and control the operation of the motor based on the load torque, wherein the operation of the motor causes the drive mechanism to move the percutaneous device.
In accordance with another embodiment, a method for controlling a motor in a catheter procedure system includes receiving at least one parameter of the motor, determining a quadrature current of the motor based on at least the at least one parameter, determining a load torque on the motor based on at least the quadrature current, an angular velocity and an angular acceleration and controlling the operation of the motor based on the load torque, wherein the operation of the motor causes the drive mechanism to move the percutaneous device.
The invention will become more fully understood from the following detailed description, taken in conjunction with the accompanying drawings, wherein the reference numerals refer to like parts in which:
Catheter procedure system 100 includes lab unit 106 and workstation 116. Catheter procedure system 100 includes a robotic catheter system, shown as bedside system 110, located within lab unit 106 adjacent a patient 102. Patient 102 is supported on a table 108. Generally, bedside system 110 may be equipped with the appropriate percutaneous intervention devices or other components (e.g., guide wires, guide catheters, working catheters, catheter balloons, stents, contrast media, medicine, diagnostic catheters, etc.) to allow the user to perform a catheter based medical procedure via a robotic system by operating various controls such as the controls located at workstation 116. Bedside system 110 may include any number and/or combination of components to provide bedside system 110 with the functionality described herein. Bedside system 110 includes, among other elements, a cassette 114 supported by a robotic arm 112 which is used to automatically feed a guide wire into a guide catheter seated in an artery of the patient 102.
Bedside system 110 is in communication with workstation 116, allowing signals generated by the user inputs of workstation 116 to be transmitted to bedside system 110 to control the various functions of bedside system 110. Bedside system 110 may also provide feedback signals (e.g., operating conditions, warning signals, error codes, etc.) to workstation 116. Bedside system 110 may be connected to workstation 116 via a communication link 140 (shown in
Workstation 116 includes a user interface 126 configured to receive user inputs to operate various components or systems of catheter procedure system 100. User interface 126 includes controls 118 that allow the user to control bedside system 110 to perform a catheter based medical procedure. For example, controls 118 may be configured to cause bedside system 110 to perform various tasks using the various percutaneous intervention devices with which bedside system 110 may be equipped (e.g., to advance, retract, or rotate a guide wire, advance, retract or rotate a working catheter, advance, retract, or rotate a guide catheter, inflate or deflate a balloon located on a catheter, position and/or deploy a stent, inject contrast media into a catheter, inject medicine into a catheter, or to perform any other function that may be performed as part of a catheter based medical procedure). Cassette 22 includes various drive mechanisms to cause movement (e.g., axial and rotational movement) of the components of the bedside system 110 including the percutaneous intervention devices.
In one embodiment, controls 118 include a touch screen 124, one or more joysticks 128 and buttons 130, 132. The joystick 128 may be configured to advance, retract, or rotate various components and percutaneous intervention devices such as, for example, a guide wire, a guide catheter or a working catheter. Buttons 130, 132 may include, for example, an emergency stop button and a multiplier button. When an emergency stop button is pushed a relay is triggered to cut the power supply to bedside system 110. Multiplier button acts to increase or decrease the speed at which the associated component is moved in response to a manipulation of controls 118. In one embodiment, controls 118 may include one or more controls or icons (not shown) displayed on touch screen 124, that, when activated, causes operation of a component of the catheter procedure system 100. Controls 118 may also include a balloon or stent control that is configured to inflate or deflate a balloon and/or a stent. Each of the controls may include one or more buttons, joysticks, touch screen, etc. that may be desirable to control the particular component to which the control is dedicated. In addition, touch screen 124 may display one or more icons (not shown) related to various portions of controls 118 or to various components of catheter procedure system 100.
User interface 126 may include a first monitor or display 120 and a second monitor or display 122. First monitor 120 and second monitor 122 may be configured to display information or patient specific data to the user located at workstation 116. For example, first monitor 120 and second monitor 122 may be configured to display image data (e.g., x-ray images, MRI images, CT images, ultrasound images, etc.), hemodynamic data (e.g., blood pressure, heart rate, etc.), patient record information (e.g., medical history, age, weight, etc.). In addition, first monitor 120 and second monitor 122 may be configured to display procedure specific information (e.g., duration of procedure, catheter or guide wire position, volume of medicine or contrast agent delivered, etc.). Monitor 120 and monitor 122 may be configured to display information regarding the position the guide catheter. Further, monitor 120 and monitor 122 may be configured to display information to provide the functionalities associated with controller 134 (shown in
Catheter procedure system 100 also includes an imaging system 104 located within lab unit 106. Imaging system 104 may be any medical imaging system that may be used in conjunction with a catheter based medical procedure (e.g., non-digital x-ray, digital x-ray, CT, MRI, ultrasound, etc.). In an exemplary embodiment, imaging system 104 is a digital x-ray imaging device that is in communication with workstation 116. In one embodiment, imaging system 104 may include a C-arm (not shown) that allows imaging system 104 to partially or completely rotate around patient 102 in order to obtain images at different angular positions relative to patient 102 (e.g., sagittal views, caudal views, anterior-posterior views, etc.).
Imaging system 104 may be configured to take x-ray images of the appropriate area of patient 102 during a particular procedure. For example, imaging system 104 may be configured to take one or more x-ray images of the heart to diagnose a heart condition. Imaging system 104 may also be configured to take one or more x-ray images during a catheter based medical procedure (e.g., real time images) to assist the user of workstation 116 to properly position a guide wire, guide catheter, stent, etc. during the procedure. The image or images may be displayed on first monitor 120 and/or second monitor 122. In particular, images may be displayed on first monitor 120 and/or second monitor 122 to allow the user to, for example, accurately move a guide catheter into the proper position.
In addition, a user of workstation 116 may be able to control the angular position of imaging system 104 relative to the patient to obtain and display various views of the patient's heart on first monitor 120 and/or second monitor 122. Displaying different views at different portions of the procedure may aid the user of workstation 116 to properly move and position the percutaneous intervention devices within the 3D geometry of the patient's heart. In an embodiment, imaging system 104 may be any 3D imaging modality such as an x-ray based computed tomography (CT) imaging device, a magnetic resonance imaging device, a 3D ultrasound imaging device, etc. In this embodiment, the image of the patient's heart that is displayed during the procedure may be a 3D image. In addition, controls 118 may also be configured to allow the user positioned at workstation 116 to control various functions of imaging system 104 (e.g., image capture, magnification, collimation, c-arm positioning, etc.).
Referring now to
Each of the capstan sockets 214, 218, 222 is configured to receive one of the capstans 208, 210, 212 of motor drive base 204. In the embodiment shown, base plate 228 includes a hole or aperture aligned with each of the capstan sockets 214, 218, and 222 to allow each capstan to engage with the appropriate capstan socket. The engagement between the capstans and capstan sockets allows the transfer of energy (e.g., rotational movement) generated by one or more actuators (e.g., motors) located within motor drive base 204 to each of the drive mechanisms (e.g., axial and rotational drive mechanisms) within cassette 200. Capstans and capstan sockets are one embodiment of a motor coupler that may be used to couple the motors to the axial and rotational drive mechanisms in the cassette 200. Other motor couplers that can couple the motor to the motors to the drive mechanisms are also contemplated.
In one embodiment, a single actuator provides energy to each of the drive mechanisms. In another embodiment, there is an actuator that drives capstan 208, an actuator that drives capstan 210 and an actuator that drives capstan 212. Further, the positioning of the capstans and capstan sockets helps the user to align cassette 200 relative to motor drive base 204 by allowing cassette 200 to be mounted to motor drive base 204 only when all three capstan sockets are aligned with the proper capstan.
In one embodiment, the motors that drive capstans 208, 210, and 212 are located within motor drive base 204. In another embodiment, the motors that drive capstans 208, 210, and 210 may be located outside of base 204 and connected to cassette 200 via an appropriate transmission device (e.g., shaft, cable, other mechanical coupler, etc.). In yet another embodiment, cassette 200 includes motors located within the housing of cassette 200. In another embodiment, cassette 200 does not include capstan sockets 214, 218 and 222, but includes an alternative mechanism for transferring energy (e.g., rotational motion) from an actuator external to the cassette to each of the cassette drive mechanisms. For example, rotational movement may be transferred to the drive mechanisms of cassette 200 via alternating or rotating magnets or magnetic fields located within motor drive base 204.
In the embodiment, shown, cassette 200 also includes a guide catheter support 216 that supports guide catheter 226 at a position spaced from cassette 200. As shown, guide catheter support 216 is attached to cassette 200 by a rod 220. Rod 220 and guide catheter support 216 are strong enough to support guide catheter 226 without buckling. Guide catheter support 216 supports guide catheter 226 at a position spaced apart from the cassette, between the patient and the cassette to prevent buckling, bending, etc. of the portion of guide catheter 226 between the cassette and the patient.
Referring to
Referring to
Communication between the various components of catheter procedure system 100 may be accomplished via communication links 140. Communication links 140 may be dedicated wires or wireless connections. Communication links 140 may also represent communication over a network. Catheter procedure system 100 may be connected or configured to include any other systems and/or devices not explicitly shown. For example, catheter procedure system 100 may include IVUS systems, image processing engines, data storage and archive systems, automatic balloon and/or stent inflation systems, medicine injection systems, medicine tracking and/or logging systems, user logs, encryption systems, systems to restrict access or use of catheter procedure system 100, etc.
As mentioned, controller 134 is in communication with bedside system 110 and may provide control signals to the bedside system 110 to control the operation of the motors and drive mechanisms used to drive the percutaneous intervention devices (e.g., guide wire, catheter, etc.).
Motor drive base 204 includes working catheter axial drive motor 238, guide wire axial drive motor 240, a guide wire rotational drive motor 242, and a power supply 244. Working catheter axial drive motor 238 drives capstan 208, guide wire axial drive motor 240 drives capstan 210 and guide wire rotational drive motor 242 drives capstan 212 to cause movement of working catheter 206 and guide wire 202. Motors 238, 240, and 242 are in communication with controller 143 such that control signals 246 may be received by motors 238, 240 and 242. Motors 238, 240 and 242 respond to control signals 246 by varying the rotation of capstans 208, 210 and 212 thereby varying the movement of working catheter 206 and guide wire 202 caused by drive mechanisms 232, 234 and 236. As shown, motor drive base 204 also includes a power supply 244 that may be, for example, a battery, the AC building supply, etc.
In various embodiments, the motors may be a permanent magnet synchronous motor (PMSM) such as a brushless DC (BLDC) or a stepper motor. Controller 134 is configured to receive data from a motor (e.g., motors 238, 240, 242). As mentioned, controller 134 also provides control signals 246 to a motor to control the operation of the motor. Each motor used to drive the various devices in the catheter procedure system 100 may be used in conjunction with controller 134 as a torque sensor to determine the load torque on the motor in order to, for example, provide feedback to the user and to control the operation of the motor to advance, retract and rotate a device. Accordingly, a separate torque sensor is not required to sense the load torque on a motor in the catheter procedure system. While the following discusses a method for sensing torque in relation to a motor used in a catheter procedure system, it should be understood that the methods described herein may be used in other systems using a motor to drive a device.
{circumflex over (θ)}m=y(k)+θm (1)
where y(k) is a discrete time integrator defined as:
where u(k)=ωm(k−1) and ωr=ωm.
At block 304, a quadrature current is determined. In an embodiment where the motor is a BLDC motor, the quadrature current (Q-current, iq) is determined based on the filtered version of the measured motor angular position ({circumflex over (θ)}m), and a reference motor angular position (θr). In another embodiment, the Q-current may be determined based on the measured motor angular position rather than the filtered version of the measured motor angular position. In another embodiment, a predetermined quadrature current setpoint may be used. By choosing to sense torque in a BLDC motor by directly controlling the quadrature current iq, the torque is directly controlled with the motor. Therefore, a position control system (e.g., a motor position proportional integral (PI) controller) is required to maintain the position of the motor. The position control system is used to determine the Q-current and control the angular position and velocity of the BLDC motor.
A discrete time (DT) command filter 402 (denoted Htraj: θS→θC) is used to generate a command position, angular velocity and angular acceleration for the BLDC motor.
where the DT relationship is given by:
where Ts is a sampling rate. In order to limit the range of the angular velocity command ωc[k] and command angular acceleration {dot over (ω)}c[k], a saturation function denoted sat (us, umin, umax) is used such that:
The following equations summarize the implementation of the DT command filter 500 to generate the command position θC[k], angular velocity ωc(k) and angular acceleration {dot over (ω)}c(k) for the BLDC motor:
Returning to
with a DT filter Hd(z). The DT filter Hd(s) may be realized with a feedback loop containing an integrator in the feedback path and a gain of ωd in the output path. Hd(s) may be approximated by replacing the integrator with HI(z) and solving the DT equations which are:
Therefore:
Feedback control 406 is used for closed loop velocity and position control of the BLDC motor. The most inner feedback loop ensures angular velocity tracking with both a proportional term kpeω[k] (kp>0) and an integrator term (e.g., with anti-windup) which is denoted HI(z)kIeω(z) (kI>0, where eω(z) is the z-transform of eω[k]). The outer feedback loop requires proportional feedback to ensure tracking of θS[k]. The DT equations for feedback control are as follows:
In one embodiment, the integrator limits are chosen from the physical limits of the quadrature current amplifier such that eω-I-min=−eω-I-max=Kiq-max in which iq-max is the absolute max drive current of the amplifier. In one embodiment, a quadrature current controller is approximated by a zero order hold block (ZOH) 408 such that iq(t)=iq-set(k) for t∈[kTS, (k+1)TS).
Returning to
iq-set[k]=(−sin(npθ[k])iα-set[k]+cos(npθ[k])iβ-set[k]) (16)
The electrical angle may be measured using, for example, hall effect sensors. In another embodiment, a Q-current may be calculated using measured phase currents and either an estimate, npθ[k], of the electrical angle or a measurement of the electrical angle, θe[k]:
iq[k]=(−sin(npθ[k])iα[k]+cos(npθ[k])iβ[k]) (17)
The electrical angle may be measured using, for example, hall effect sensors. In another embodiment, a predetermined quadrature current setpoint may be used. In one embodiment the Q-current is converted to a PWM signal, specifically, a PWM duty cycle (for example, that is cycle proportional to the ratio of the absolute desired setpoint current to the Q-current amplifiers absolute current control range) and a direction signal which indicates the sign of the current using known methods. In another embodiment, the Q-current may be used without being converted to a PWM signal.
At block 306, a load torque is estimated. In one embodiment, the motor is a BLDC motor and the load torque may be estimated using:
{circumflex over (τ)}l[k]=Kiq-set[k]−B{circumflex over (ω)}[k]−J{dot over ({circumflex over (ω)})}[k] (18)
where {circumflex over (τ)}l[k] is the load torque, {circumflex over (ω)}[k] is the angular velocity, {dot over ({circumflex over (ω)})}[k] is the angular acceleration, K is the torque constant, B is damping coefficient of the rotor, J is moment of inertia of the rotor and iq-set is a desired setpoint of the Q-current (maintained by the position control system described above. In another embodiment, the motor is a stepper motor and the load torque is estimated based on the phase current setpoints using:
iq-set[k]=(−sin(npθ[k])iα-set[k]+cos(npθ[k])iβ-set[k]) (19)
{circumflex over (τ)}l[k]=Kiq-set[k]−B{circumflex over (ω)}[k]−J{dot over ({circumflex over (ω)})}[k]−Kd4 sin(4npθ[k]) (20)
where {circumflex over (τ)}l[k] is the load torque, {circumflex over (ω)}[k] is the angular velocity, {dot over ({circumflex over (ω)})}[k] is the angular acceleration, K is the torque constant, B is damping coefficient of the rotor, J is moment of inertia of the rotor, iq-set is a desired setpoint of the Q-current, iα-set is a phase current setpoint, iβ-set is a phased current setpoint, np is the number of magnetic pole pairs of the rotor, θ is the angular position of the rotor, and Kd4 is the detent torque amplitude. In an alternative embodiment, the load torque for the stepper motor may be estimated based on the measured phase currents using:
iq[k]=(−sin(npθ[k])iα[k]+cos(npθ[k])iβ[k]) (21)
{circumflex over (τ)}l[k]=Kiq[k]−B{circumflex over (ω)}[k]−J{dot over ({circumflex over (ω)})}[k]−Kd4 sin(4npθ[k]) (22)
where {circumflex over (τ)}l[k] is the load torque, {circumflex over (ω)}[k] is the angular velocity, {dot over ({circumflex over (ω)})}[k] is the angular acceleration, K is the torque constant, B is damping coefficient of the rotor, J is moment of inertia of the rotor, iq is the Q-current, iα is a measured phase current, iβ is a measured phase current, np is the number of magnetic pole pairs of the rotor, θ is the angular position of the rotor, and Kd4 is the detent torque amplitude
In one embodiment, the measured angular position of the stepper motor from a rotary encoder may have a phase offset such that θm=θ+φ. By assuming that the load torque τl and detent torque amplitude Kd4 are both zero and the system is at steady-state, the error can be estimated by:
For both the BLDC or stepper motor embodiments, the angular velocity {circumflex over (ω)}[k] and angular acceleration {dot over ({circumflex over (ω)})}[k] may be estimated using a discrete time (DT) command filter.
where the DT relationship is given by equation (4). The DT command filter may be implemented to estimate angular velocity and angular acceleration for either a BLDC or stepper motor using:
The loops need to be solved for the above DT filter given by equations 26 and 27 and may be realized in the following vector form:
in which
Therefore, the DT filter may be implemented by:
in which
and
Which allows {dot over ({circumflex over (ω)})}[k] to be computed as follows
At block 308, the estimated load torque may be used to control the motor to operate a drive mechanism and cause movement (e.g., advance, retract, rotate) of a percutaneous device in the catheter procedure system. For example, the controller 134 (shown in
Computer-executable instructions for controlling a motor including determining a load torque using the motor according to the above-described method may be stored on a form of computer readable media. Computer readable media includes volatile and nonvolatile, removable, and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer readable media includes, but is not limited to, random access memory (RAM), read-only memory (ROM), electrically erasable programmable ROM (EEPROM), flash memory or other memory technology, compact disk ROM (CD-ROM), digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired instructions and which may be accessed by system 10 (shown in
This written description used examples to disclose the invention, including the best mode, and also to enable any person skilled in the art to make and use the invention. The patentable scope of the invention is defined by the claims, and may include other examples that occur to those skilled in the art. Such other examples are intended to be within the scope of the claims if they have structural elements that do not differ from the literal language of the claims, or if they include equivalent structural elements with insubstantial differences from the literal language of the claims. The order and sequence of any process or method steps may be varied or re-sequenced according to alternative embodiments.
Many other changes and modifications may be made to the present invention without departing from the spirit thereof. The scope of these and other changes will become apparent from the appended claims.
The present application claims the benefit of U.S. Provisional Application No. 61/916,900, filed Dec. 17, 2013, entitled “TORQUE SENSOR USING BLDC AND STEPPER MOTORS”, herein incorporated by reference in its entirety.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/US2014/070529 | 12/16/2014 | WO | 00 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2015/095149 | 6/25/2015 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
5317246 | Wei | May 1994 | A |
5936369 | Iwashita | Aug 1999 | A |
6158553 | Oshima et al. | Dec 2000 | A |
6262550 | Kliman et al. | Jul 2001 | B1 |
6396234 | Tateishi | May 2002 | B1 |
7203601 | Ito | Apr 2007 | B2 |
7541759 | Hirai | Jun 2009 | B2 |
7627440 | Rehm | Dec 2009 | B2 |
7963288 | Rosenberg et al. | Jun 2011 | B2 |
20060012321 | Rozman | Jan 2006 | A1 |
20060179859 | Nakata | Aug 2006 | A1 |
20120130400 | Brock | May 2012 | A1 |
20130012930 | Morales et al. | Jan 2013 | A1 |
20130231678 | Wenderow et al. | Sep 2013 | A1 |
20140285124 | Derammelaere | Sep 2014 | A1 |
Entry |
---|
International Search Report and Written Opinion for PCT/US2014/070529; dated Mar. 10, 2015; 8 pages. |
Extended European Search Report for EP 14872216.8; dated Jul. 25, 2017; 11 pages. |
Number | Date | Country | |
---|---|---|---|
20160310222 A1 | Oct 2016 | US |
Number | Date | Country | |
---|---|---|---|
61916900 | Dec 2013 | US |