WO2004096042A1 - A position monitoring system - Google Patents

A position monitoring system Download PDF

Info

Publication number
WO2004096042A1
WO2004096042A1 PCT/IE2004/000062 IE2004000062W WO2004096042A1 WO 2004096042 A1 WO2004096042 A1 WO 2004096042A1 IE 2004000062 W IE2004000062 W IE 2004000062W WO 2004096042 A1 WO2004096042 A1 WO 2004096042A1
Authority
WO
WIPO (PCT)
Prior art keywords
monitoring system
sensor
electromagnetic
data
position monitoring
Prior art date
Application number
PCT/IE2004/000062
Other languages
French (fr)
Inventor
Deli Geng
Charles Robert Allen
Original Assignee
Atropos Limited
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Atropos Limited filed Critical Atropos Limited
Publication of WO2004096042A1 publication Critical patent/WO2004096042A1/en

Links

Classifications

    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/42Detecting, measuring or recording for evaluating the gastrointestinal, the endocrine or the exocrine systems
    • A61B5/4222Evaluating particular parts, e.g. particular organs
    • A61B5/4255Intestines, colon or appendix
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/06Devices, other than using radiation, for detecting or locating foreign bodies ; determining position of probes within or on the body of the patient
    • A61B5/061Determining position of a probe within the body employing means separate from the probe, e.g. sensing internal probe position employing impedance electrodes on the surface of the body
    • A61B5/062Determining position of a probe within the body employing means separate from the probe, e.g. sensing internal probe position employing impedance electrodes on the surface of the body using magnetic field
    • AHUMAN NECESSITIES
    • A61MEDICAL OR VETERINARY SCIENCE; HYGIENE
    • A61BDIAGNOSIS; SURGERY; IDENTIFICATION
    • A61B5/00Measuring for diagnostic purposes; Identification of persons
    • A61B5/72Signal processing specially adapted for physiological signals or for diagnostic purposes
    • A61B5/7235Details of waveform analysis
    • A61B5/7253Details of waveform analysis characterised by using transforms
    • A61B5/7257Details of waveform analysis characterised by using transforms using Fourier transforms

Definitions

  • the invention relates to a position monitoring system suitable for use in a variety of different applications, including medical applications, such as monitoring the position of an endoscope during colonoscopy, or monitoring hand movement.
  • colonoscopy has less impact on a patient than open surgery, it is often quite painful because of movement of the endoscope through the colon. This may, for example, cause stretching of the bowel.
  • screening is becoming more common, there is pressure on medical personnel to increase the success rate above the current rate of c.90%, to make colonoscopy less painful for the patient and to reduce the time required.
  • United States Patent Specification No. US5913820 (BT) describes such a system.
  • BT United States Patent Specification No. US5913820
  • Fixed-location generators generate magnetic fields, inducing voltages in the sensors in the endoscope.
  • the generated magnetic field value and an estimate of the orientation of a sensor are used to determine an estimate of the distance from the sensor to the generator, and hence estimate the location of the sensor.
  • the estimated location and the sensor-induced voltage is then used to estimate the orientation of the sensor, and this is then used as an input for the next location estimation.
  • This invention is aimed at providing an improved position monitoring system. Statements of Invention .
  • a position monitoring system comprising:
  • a hardware layer comprising a plurality of electromagnetic generators, at least one sensor and a sample processor for generating sample data
  • a system layer comprising a position processor for generating position data from the sample data
  • the plurality of electromagnetic generators are configured to operate in a fixed phase relation.
  • the hardware layer comprises a sampling clock, and the system is configured for synchronised operation of the sampling clock and the plurality of electromagnetic generators.
  • the electromagnetic generator is configured to generate an electromagnetic waveform, and the electromagnetic generator is configured to generate one or more full electromagnetic waves within each sampling window.
  • the plurality of electromagnetic generators are configured such that at the beginning of each sampling window the amplitude of all of the generated electromagnetic waveforms is equal.
  • the plurality of electromagnetic generators are configured such that at the beginning of each sampling window the amplitude of all of the generated electromagnetic waveforms is zero.
  • the sensor may be configured to be mounted on an object, the position of which is desired to be monitored.
  • At least one sensor is of the magnetoresistive effect type.
  • the electromagnetic generator comprises a coil generator.
  • the electromagnetic generator comprises a set of 3-D generator coils.
  • the plurality of electromagnetic generators are driven by an oscillator circuit.
  • the oscillator circuit comprises a synchronous oscillator circuit.
  • the oscillator circuit may be configured for control of the oscillating frequency and phase by a reference signal.
  • the hardware layer comprises at least one reference sensor at a fixed position relative to the plurality of electromagnetic generators.
  • the sample processor may be configured to generate a series of readings for a channel from each sensor.
  • the sample processor is configured to extract the components of a signal, received from the sensor, corresponding to each generator.
  • the sample processor is configured to frequency multiplex the signal received from the sensor.
  • each electromagnetic generator is configured to operate at a unique frequency.
  • the sample processor comprises a Discrete Fourier Transform (DFT) function for generating sample data.
  • DFT Discrete Fourier Transform
  • the sample processor comprises an interface for receiving digitised sensor samples and an input buffer for retrieving sample words in parallel from the interface. Ideally the interface shifts bits as fresh bits are received, and the input buffer retrieves words of a pre-configured length.
  • the sample processor comprises a vector table for providing parametric data to the DFT function. The parametric data may be calculated according to frequency of operation of the generators and sampling frequency.
  • the DFT function windows time series incoming samples with a band limited waveform.
  • the sample processor may comprise an FPGA.
  • the sample processor may comprise a DSP.
  • system layer comprises an embedded processor.
  • the position processor is configured to generate the position data using only some of the sample data.
  • the position processor is configured to generate the position data using only the sample data having the largest amplitude.
  • the position processor may be configured to generate position data by:
  • step (d) using the results of steps (b) and (c) of a previous measurement iteration as an input to step (a) of a next measurement iteration.
  • step (b) is performed with recursive computing.
  • the position processor is configured to limit the range of the position calculation by:
  • V s amplitude of a signal received from the sensor
  • R distance between the sensor and a generator
  • the hardware layer is configured to supply power to each electromagnetic generator at a power level responsive to the position data generated by the position processor.
  • the hardware layer may be configured to enable the frequency, at which each electromagnetic generator may be operated, to be altered.
  • the system comprises means to analyse the difference between a signal from the sensor before altering the frequency and a signal from the sensor after altering the frequency.
  • the system comprises an application layer comprising at least one application for processing the position data. Ideally at least some applications of the application layer are remote from the system layer.
  • the position monitoring system is suitable for monitoring the position of a probe in a body passageway.
  • the position monitoring system is particularly suitable for monitoring the position of a colonoscope in a colon.
  • the invention provides a method for monitoring the position of an object, the method comprising the steps of:-
  • the plurality of electromagnetic generators are operated in a fixed phase relation.
  • a sampling clock and the plurality of electromagnetic generators are operated in a synchronised manner.
  • the electromagnetic generator generates an electromagnetic waveform, and the electromagnetic generator generates one or more full electromagnetic waves within each sampling window.
  • the plurality of electromagnetic generators are arranged in fixed positions, and the sensor is arranged to be carried by the object. Preferably the sensor is mounted on the object.
  • the plurality of electromagnetic generators may be driven by an oscillator circuit.
  • the method comprises the step of using a reference signal to control the oscillating frequency and phase of the oscillator circuit.
  • the sample data is generated by extracting the components of the sensor output corresponding to each generator.
  • the sample data is generated by frequency multiplexing the sensor output.
  • each electromagnetic generator is operated at a unique frequency.
  • the position data may be generated using only some of the sample data.
  • the position data is generated using only the sample data having the largest amplitude.
  • the position data is generated by:
  • step (d) using the results of steps (b) and (c) of a previous measurement iteration as an input to step (a) of a next measurement iteration.
  • step (b) is performed with recursive computing.
  • the method comprises the step of limiting the range of the position calculation by:
  • V s amplitude of a signal received from the sensor
  • R distance between the sensor and a generator
  • the method comprises the steps of supplying power to each electromagnetic generator at a power level responsive to the generated position data.
  • the method may comprise the step of altering the frequency, at which each electromagnetic generator is operated.
  • the method comprises the step of analysing the difference between the sensor output before altering the frequency and the sensor output after altering the frequency.
  • the method comprises the step of processing the position data to control an application.
  • the method is suitable for monitoring the position of a probe in a body passageway.
  • the method is particularly suitable for monitoring the position of a colonoscope in a colon.
  • Fig. 1 is a high level diagram illustrating architecture of a position monitoring system according to the invention
  • Figs. 2 and 2(a) are block diagrams illustrating the system of Fig. 1 in more detail;
  • Fig. 3 is a flow diagram illustrating operation of the system of Fig. 1;
  • Fig. 4 is a diagram of an alternative position monitoring system according to the invention.
  • Fig. 5 illustrates waveforms of two generators, one sensor, and a sampling clock of the system of Fig. 1;
  • Fig. 6 is a flow diagram illustrating operation of an interface part of the system of Fig. 1;
  • Fig. 7 is a circuit diagram of an oscillator circuit part of the system of Fig. 1. Detailed Description
  • a position monitoring system 1 has a modular three-tier structure of:
  • 2 a hardware layer for generating the underlying signals using electromagnetic generators and sensors
  • 3 a system layer for taking the sample signals and generating position and orientation data
  • 4 an application layer which uses the position and orientation data to generate outputs for a particular medical application, such as monitoring the tremor in a hand of a Parkinson's Disease sufferer.
  • the hardware layer 2 comprises three fixed-location sets of 3-D generator coils 10.
  • Each coil 10 has a unique, dedicated frequency of operation, and has a power consumption of between 0.1W to 10W (RMS) adjustable according to the working range.
  • RMS 0.1W to 10W
  • Each coil 10 can thus be battery-powered and portable.
  • the frequency of each of the coils 10 is selected to ensure that the sampling set, in this case 640 points, has a number of full sine or cosine waves within the sampling window.
  • a setup can be the following 9 frequencies for 9 coils: 10kHz, 9.750kHz, 9kHz, 12kHz, 11.500kHz, 10.250kHz, 11.750kHz, 8.500kHz, and 10.750kHz. If the digitising sampling rate is 32 kHz and the data set length is 640 points, then the 10kHz frequency generator coil 10 will produce the number N of full waves within the sampling window given by:
  • N coil_frequency x (frame_length / ADC_sampling_rate)
  • N 11.750kHz ⁇ ( 640 / 32kHz)
  • the actual measurement from a sensor 11 is the compound of all these 9 frequencies. Each frequency will be extracted using the Discrete Fourier Transform (DFT) signal processing algorithm.
  • DFT Discrete Fourier Transform
  • the field generators 10 are driven synchronously with a reference clock in a method comprising the steps of:
  • a Synchronous oscillator (SO) circuit drives the field generators 10.
  • ii) Disable the injection signal to make the oscillator free running iii) Measure the free running frequency. According to this frequency, estimate the tracking frequency range of the SO. According to this range determine the working frequency of each element of the field generators 10.
  • a power synchronous oscillating circuit is used to drive the generator coils 10. Its oscillation is synchronized to the coil control clock.
  • the tracking frequency range of the SO may drift from time to time.
  • Step (iv) above ensures correct operation of the SO. If the drift makes the working frequency of an element outside of the tracking range, step (iv) can reset the working frequency.
  • the SO circuit drives the three coils 10 of each generator set.
  • the inductors for the coils 10 are chosen to generate powerful driving of the coils 10.
  • the coils 10 may have the electrical characteristics as listed in Table I.
  • the generator phases generate 50V and 2.9 A (peak-to-peak) at the operating frequency of circa 10 kHz and operating battery voltage of +5V.
  • the drive MOSFET transistor consumes 145 mW.
  • n 1-D sensors 11 There are n 1-D sensors 11, where n is up to 64, mounted on the device being monitored, such as an endoscope.
  • the sensors 11 are magnetic field sensors of the type marketed by Philips under the code KMZ10ATM.
  • Each sensor 11 is based on the magnetoresistive effect of thin-film permalloy in a Wheatstone bridge configuration of four resistors. A voltage is applied to the bridge, and the bridge output changes in the presence of an applied magnetic field.
  • the sensors 11 are packaged items and so are particularly robust and predictable.
  • each sensor 11 is fed through a signal conditioning circuit 12 and an analog-to-digital (A/D) converter 13.
  • A/D analog-to-digital converter 13
  • the latter provides 640 samples of 24 bits each for each reading for each channel.
  • a dedicated FPGA 15 processes the digital outputs of the A/D converters 13 to provide a series of readings per channel.
  • an interface 16 controls flow to an input buffer 17 using a set of serial to parallel converters connected to an I 2 C bus.
  • the interface 16 is provided in the form of a USB interface between the A/D converters 13 and the input buffer 17.
  • the architecture of the USB interface 16 is illustrated in Fig. 6.
  • the USB interface 16 performs the following tasks:
  • the Discrete Fourier Transform (DFT) block 18 processes one of the 640 readings for all n channels in one cycle.
  • the input buffer 17 holds only one sample for all n channels at any time, and is immediately refreshed with the next sample.
  • the interface logic 16 stores the intermediate data.
  • Each sensor sample is digitised to a 24 bit binary code. For example, 00001111 10101010 11001100.
  • the wiring connection to the system digitiser is a single-bit stream serial port, while the interface to the input buffer is a 24 bit parallel connection. So when the first bit is moved into the interface 16, it has a data of Oxxxxxxx_xxxxxx_xxxxxxxx.
  • the interface 16 After 4 bits, it is for example 1100xxxx_xxxxxxxx_xxxxxxxx. After 8 bits, it is 11001100 xxxxxxxx xxxxxxxx. When all 24 bits have moved in, the interface 16 holds 00001111_101010_11001100. At this timing, the input buffer 17 will be instructed to get the 3 -byte data word. Since the data in the interface 16 is always shifting, this buffer is used to hold a stable and valid 24 bit sample data. The result of the computation of the DFT 18 is stored in the result buffer 19, providing spectral results for each of the n- channel sensor inputs.
  • the spectral result of a sensor has the same number of frequencies as the number of the generator coils, for example, if there are 9 generator coils 10, then the spectral result for each sensor 11 will contain 9 frequency measurements, i.e. the sensor amplitude and phase information for each generator 10.
  • a twiddle vector table 20 provides parametric values for the DFT 18 calculation as follows.
  • This example only shows the table data for 10kHz coil. For other coils there are similar sets of sine look-up data, which together form the whole data of the vector table 20. Since the working frequencies of the coils are set at run-time, this table is also setup at run- time. And it only needs to be setup once at the system startup/reset stage.
  • the generator coils 10 are driven simultaneously, with each coil 10 having a different frequency. These frequencies have a fixed phase relation at the beginning of a sampling window, and are synchronised with the ADC sampling clock. This arrangement ensures that in one sampling window for DFT, there are exact integral numbers of full waves in each window. As a result this eliminates frequency leakage during the spectral analysis by DFT.
  • the fixed starting phase of the frequencies helps to compensate the offset in the analog channel as well as to determine the orientation of the sensor.
  • An example of the ADC sampling window is given in Fig. 5.
  • Generator coil 1 and coil 2 are of different frequencies, and their phase is precisely controlled by the digital control clock. For a sampling window, all of them start from an amplitude of zero in this example.
  • ADC sampling is conducted according to the A/D sampling clock. In this example, there are 50 A/D samples, and within this sampling window there are exact integral number of full sin waves for both coil 1 and coil 2.
  • the waveform for coil 1 and the waveform for coil 2 operate in a fixed phase relation. In particular, in each sampling window, the starting phase of both of the waveforms is fixed.
  • coil 1 does not need to be identical to the form of the wave for coil 2.
  • coil 1 could be a sine waveform and coil 2 could be a cosine waveform.
  • the term 'frequency leakage' is defined as a signal of one frequency being found in its neighbour frequency after the conversion, for example, a signal of 9,999Hz being moved to a neighbouring bins such as 10,000Hz, 9,000Hz, or 11,000Hz.
  • Frequency leakage has in the past been caused by the discontinuity between the end and the beginning of the data in one sample frame.
  • windowing has in the past been applied to samples.
  • the DFT algorithm converts a time domain signal into the frequency domain.
  • Frequency leakage is a defect found when the DFT algorithm is used on un-windowed time series.
  • the result of the DFT is to create spectral outputs in the wrong frequency positions which are erroneous.
  • the synchronised operation of the generator coils 10 eliminates frequency leakage during DFT operation, and makes fast calculation of the position of the sensors 11 possible.
  • the DFT can convert a signal from time domain to frequency domain while avoiding frequency leakage.
  • An advantage of the system of the invention is that the generators are driven synchronously with the sampling, and so frequency leakage is avoided.
  • phase relation of the generator driving frequencies is fixed. This fixed phase relation assists in determining the orientation of the sensor. For example, if the sensor is rotated by 180 degrees from a first orientation to a second orientation, the amplitude of the measured sensor signal will be the same in both the first orientation and the second orientation. However the phase of the measured sensor signal will change from when the sensor is in the first orientation to when the sensor is in the second orientation, and thus the system can determine that the orientation of the sensor has changed.
  • the system also enjoys operational advantages as a result of the plurality of electromagnetic generators being driven by an oscillator circuit.
  • the oscillator has a higher efficiency and a simpler structure, compared to for example an amplifier circuit. Further the oscillator circuit operates under control of a reference signal.
  • the oscillator circuit delivers high power, and oscillates synchronously with a reference signal, and is therefore know as a Power Synchronous Oscillator (PSO).
  • PSO Power Synchronous Oscillator
  • the driving of the field generators 10 and the sampling is derived from the same clock.
  • the driving frequency and the sampling length By carefully allocating the driving frequency and the sampling length, an even number of sine or cosine waveforms can be obtained in one sampling frame.
  • the DFT calculations are based on the sample data.
  • the values represent both the amplitude and the phase of each driving element.
  • the system layer 3 comprises an embedded processor 25 which takes the output of the result buffer 19 and generates location and orientation data for each sensor 11.
  • the basic flow is illustrated in flow diagram form in Fig. 3 as a method 30.
  • the processor 20 estimates position and orientation in step 32.
  • An estimated position component Xn 1 is estimated as the previous position component X n- ⁇ plus the speed times the movement (change in location).
  • Recursive computing of step 33 is performed to generate location data X, Y, Z, for each sensor and orientation data a, ⁇ . This in turn is used to generate a speed value in step 35, subsequently used in step 32 of the next loop.
  • the resultant position monitoring information is particularly useful, real time position information for an application such as monitoring the location of an endoscope within a colon.
  • the system also includes an on-system user control panel to facilitate control of the system, during use.
  • the control panel includes a 16 x 2 character PLED display.
  • the PLED display provides enhanced display quality.
  • the interface is connected via FPGA logic.
  • the control panel also includes a 6-key keypad. All keys can be individually read by the firmware/software, via the FPGA logic.
  • a power switch is also provided to control the on/off status of the ATX power unit.
  • the control panel also includes a buzzer. The buzzer is controlled directly by the MCU, so that it can provide debug information when the FPGA is unavailable.
  • a reset button is also included. The button can reset the MCU, and hence restart the whole system.
  • the application layer 4 has software which processes the location and orientation data according to algorithms for particular applications. Such an application may for example monitor tremor/vibration of the hand of a patient suffering from Parkinson's disease.
  • the hardware layer 2 comprises a glove with sensors 11 located at positions on the fingers and at chosen positions elsewhere on the hand. Because of the frequency multiplexing and the speed of operation of the FPGA 15, it is possible to achieve about 50 to 100 readings for all sensors 11 per second.
  • the sensors 11 may be mounted along the length of an endoscope.
  • the system 1 could also be used in position monitoring in other parts of the digestive tract, or for navigation of a probe through other passageways in the body, such as cerebral passageways.
  • Other applications of the system 1 according to the invention include a telephone for deaf people using a standard telephony system.
  • Another application is a 3D input device for a virtual reality system.
  • a further application is movement analysis for sports.
  • a hardware layer 50 communicates via a wireless interface 51 with a system layer 52.
  • the latter has a computer network interface for Internet communication with applications 54 and 55.
  • applications 54 and 55 This allows excellent versatility in use of the system.
  • a physician may remotely monitor a patient who is at home.
  • a single hardware layer 50 supports multiple applications.
  • a physician can use one application (local) to assist with a procedure, another application can record the location data into a database for later access, while a lecturer could use another application to show his students how the procedure should be undertaken.
  • a system-layer unit may have sufficient processors to process data from multiple patient hardware-layer systems, and the links to the hardware are conveniently wireless.
  • the wire of the generator coils is doubled in size, and the windings are double rather than single layer to achieve the same turns.
  • generator coils may have electrical characteristics as listed in Tables II-l, II-2, II-3. Table II-l
  • a plurality of sensors are precisely fitted at known positions, to form a calibration platform; the generator-under-test may then be fitted precisely at another known position; and
  • the non- concentricity and the orientation error of the generator coil can be determined.
  • the amplitude of the sensor signal may be evaluated and used to control the power supplied to each generator.
  • the purpose of such generator power control is to increase the operating range while minimising power consumption.
  • the operating frequencies of the generator coils 10 may be swapped among each other from time to time.
  • a compensation matrix can be established. As a result, the effect of the metal mass to the accuracy of the position can be significantly reduced.
  • the 3D position calculation which is based on numeric optimization method, may include the following steps :-
  • V s is the amplitude of the field measured
  • R is the distance from the generator to the sensor
  • the maximum and minimum R can be determined by:
  • step 6 Use a numeric method, e.g. least-square-fit optimization, to find out the position and orientation of the sensor.
  • the space range specified in step 6 may be used to constrain the search.
  • two or more sets of generators could be populated in an extended area.
  • an area could be a floor of a squash court.
  • one set of generators could be fitted on the floor of a room and another set of generators could be fitted on a wall of the room.
  • the sets of generators do not have to be in the same plane. There is also no need to align the axes of the generators to the same direction.
  • Either all the generators of such a matrix can be driven at the same time or only a part of them are driven and managed by a power control method.
  • the generator coils are set to work under different frequencies. However a particular frequency can be reused. One frequency can be used for two or more generators provided the generators are separated from each other by a distance sufficient to prevent effective interference.
  • Each frequency bin of the result of the Fourier transform of the sensor signal represents a generator coil. As there are more generators than needed to calculate the position, sensor position calculation is based on those bins of a Fourier transform with the largest values. Based on the measured position of the sensor, lower power may be supplied to drive the generators which are located a substantial distance from the sensor. These generators which are located a substantial distance from the sensor, and the magnetic field generated from these generators contributes little to the 3D position calculation.
  • the frequency of the generators may be extracted by any suitable means, for example a modified form of the Discrete Fourier Transform (MDFT) may be used.
  • MDFT Discrete Fourier Transform
  • DSP processor may be used as an alternative to the FPGA processor.

Abstract

A position monitoring system (1) having a modular three-tier structure of a hardware layer (2) for generating underlying signals using electromagnetic generators (10) and sensors (11), a system layer (3) for taking the sample signals from the sensors (11) and generating position and orientation data, and an application layer (4) which uses the position and orientation data to generate outputs for a particular application, such as monitoring the progress of a colonoscope through a colon. The generators (10) are driven simultaneously at different frequencies. In addition, the generators (10) are operated in a synchronised manner, which results in frequency leakage being eliminated.

Description

"A position monitoring system"
Introduction
The invention relates to a position monitoring system suitable for use in a variety of different applications, including medical applications, such as monitoring the position of an endoscope during colonoscopy, or monitoring hand movement.
In recent years it has been recognised that internal medical examination is preferable to open surgical procedures for detecting illnesses such as colon cancer. While colonoscopy has less impact on a patient than open surgery, it is often quite painful because of movement of the endoscope through the colon. This may, for example, cause stretching of the bowel. As screening is becoming more common, there is pressure on medical personnel to increase the success rate above the current rate of c.90%, to make colonoscopy less painful for the patient and to reduce the time required.
To address this problem it is known to provide a position monitoring system to monitor the location and orientation of an endoscope. United States Patent Specification No. US5913820 (BT) describes such a system. In this system a series of twelve electromagnetic sensors are mounted along the length of an endoscope. Fixed-location generators generate magnetic fields, inducing voltages in the sensors in the endoscope. For each generator, the generated magnetic field value and an estimate of the orientation of a sensor are used to determine an estimate of the distance from the sensor to the generator, and hence estimate the location of the sensor. The estimated location and the sensor-induced voltage is then used to estimate the orientation of the sensor, and this is then used as an input for the next location estimation.
This invention is aimed at providing an improved position monitoring system. Statements of Invention .
According to the invention there is provided a position monitoring system comprising:
a hardware layer comprising a plurality of electromagnetic generators, at least one sensor and a sample processor for generating sample data; and
a system layer comprising a position processor for generating position data from the sample data;
the system being configured:-
for simultaneous operation of the plurality of electromagnetic generators, with the plurality of electromagnetic generators operating at different frequencies; and
for synchronised operation of the plurality of electromagnetic generators.
In one embodiment of the invention the plurality of electromagnetic generators are configured to operate in a fixed phase relation. Preferably the hardware layer comprises a sampling clock, and the system is configured for synchronised operation of the sampling clock and the plurality of electromagnetic generators. Ideally the electromagnetic generator is configured to generate an electromagnetic waveform, and the electromagnetic generator is configured to generate one or more full electromagnetic waves within each sampling window. Most preferably the plurality of electromagnetic generators are configured such that at the beginning of each sampling window the amplitude of all of the generated electromagnetic waveforms is equal. In one case the plurality of electromagnetic generators are configured such that at the beginning of each sampling window the amplitude of all of the generated electromagnetic waveforms is zero. The sensor may be configured to be mounted on an object, the position of which is desired to be monitored.
In one embodiment at least one sensor is of the magnetoresistive effect type.
In another case the electromagnetic generator comprises a coil generator. Preferably the electromagnetic generator comprises a set of 3-D generator coils. Ideally the plurality of electromagnetic generators are driven by an oscillator circuit. Most preferably the oscillator circuit comprises a synchronous oscillator circuit. The oscillator circuit may be configured for control of the oscillating frequency and phase by a reference signal.
In a preferred embodiment the hardware layer comprises at least one reference sensor at a fixed position relative to the plurality of electromagnetic generators.
The sample processor may be configured to generate a series of readings for a channel from each sensor.
In one embodiment the sample processor is configured to extract the components of a signal, received from the sensor, corresponding to each generator. Preferably the sample processor is configured to frequency multiplex the signal received from the sensor.
Ideally each electromagnetic generator is configured to operate at a unique frequency.
In another embodiment the sample processor comprises a Discrete Fourier Transform (DFT) function for generating sample data. Preferably the sample processor comprises an interface for receiving digitised sensor samples and an input buffer for retrieving sample words in parallel from the interface. Ideally the interface shifts bits as fresh bits are received, and the input buffer retrieves words of a pre-configured length. Most preferably the sample processor comprises a vector table for providing parametric data to the DFT function. The parametric data may be calculated according to frequency of operation of the generators and sampling frequency.
In a preferred case the DFT function windows time series incoming samples with a band limited waveform.
The sample processor may comprise an FPGA.
The sample processor may comprise a DSP.
In one embodiment the system layer comprises an embedded processor.
Preferably the position processor is configured to generate the position data using only some of the sample data. Ideally the position processor is configured to generate the position data using only the sample data having the largest amplitude.
The position processor may be configured to generate position data by:
(a) estimating three-dimensional position and orientation data;
(b) determining actual three-dimensional position and orientation data;
(c) determining speed of movement; and
(d) using the results of steps (b) and (c) of a previous measurement iteration as an input to step (a) of a next measurement iteration.
Preferably step (b) is performed with recursive computing. In one case the position processor is configured to limit the range of the position calculation by:
Figure imgf000007_0001
where:
Vs = amplitude of a signal received from the sensor;
R = distance between the sensor and a generator;
kc, ks = constants;
Dx, Dy, Dz = three-dimensional position of the sensor;
= orientation of the sensor.
In a further embodiment the hardware layer is configured to supply power to each electromagnetic generator at a power level responsive to the position data generated by the position processor.
The hardware layer may be configured to enable the frequency, at which each electromagnetic generator may be operated, to be altered. Preferably the system comprises means to analyse the difference between a signal from the sensor before altering the frequency and a signal from the sensor after altering the frequency.
In one case the system comprises an application layer comprising at least one application for processing the position data. Ideally at least some applications of the application layer are remote from the system layer. The position monitoring system is suitable for monitoring the position of a probe in a body passageway. The position monitoring system is particularly suitable for monitoring the position of a colonoscope in a colon.
In another aspect, the invention provides a method for monitoring the position of an object, the method comprising the steps of:-
providing a plurality of electromagnetic generators and at least one sensor;
arranging in a fixed position either the plurality of electromagnetic generators or the at least one sensor;
arranging for either the at least one sensor or the plurality of electromagnetic generators to be carried by the object;
simultaneously operating the plurality of electromagnetic generators, at different frequencies, in a synchronised manner;
generating sample data from the output of the at least one sensor;
generating position data from the sample data to monitor the position of the object.
In one embodiment the plurality of electromagnetic generators are operated in a fixed phase relation. Preferably a sampling clock and the plurality of electromagnetic generators are operated in a synchronised manner. Ideally the electromagnetic generator generates an electromagnetic waveform, and the electromagnetic generator generates one or more full electromagnetic waves within each sampling window. In another embodiment the plurality of electromagnetic generators are arranged in fixed positions, and the sensor is arranged to be carried by the object. Preferably the sensor is mounted on the object.
The plurality of electromagnetic generators may be driven by an oscillator circuit. Preferably the method comprises the step of using a reference signal to control the oscillating frequency and phase of the oscillator circuit.
In one case the sample data is generated by extracting the components of the sensor output corresponding to each generator. Preferably the sample data is generated by frequency multiplexing the sensor output.
Ideally each electromagnetic generator is operated at a unique frequency.
The position data may be generated using only some of the sample data. Preferably the position data is generated using only the sample data having the largest amplitude.
In a preferred case the position data is generated by:
(a) estimating three-dimensional position and orientation data;
(b) determining actual three-dimensional position and orientation data;
(c) determining speed of movement; and
(d) using the results of steps (b) and (c) of a previous measurement iteration as an input to step (a) of a next measurement iteration.
Ideally step (b) is performed with recursive computing. Desirably the method comprises the step of limiting the range of the position calculation by:
V_a»2 + VS / + W = ~f l + 3cos2α'
where:
Vs = amplitude of a signal received from the sensor;
R = distance between the sensor and a generator;
kc, ks = constants;
Dx, Dy, Dz = three-dimensional position of the sensor;
a = orientation of the sensor.
In a further embodiment the method comprises the steps of supplying power to each electromagnetic generator at a power level responsive to the generated position data.
The method may comprise the step of altering the frequency, at which each electromagnetic generator is operated. Preferably the method comprises the step of analysing the difference between the sensor output before altering the frequency and the sensor output after altering the frequency.
In a preferred embodiment the method comprises the step of processing the position data to control an application.
The method is suitable for monitoring the position of a probe in a body passageway. The method is particularly suitable for monitoring the position of a colonoscope in a colon. Brief Description of the Drawings
The invention will be more clearly understood from the following description of some embodiments thereof, given by way of example only, with reference to the accompanying drawings, in which: -
Fig. 1 is a high level diagram illustrating architecture of a position monitoring system according to the invention;
Figs. 2 and 2(a) are block diagrams illustrating the system of Fig. 1 in more detail;
Fig. 3 is a flow diagram illustrating operation of the system of Fig. 1;
Fig. 4 is a diagram of an alternative position monitoring system according to the invention;
Fig. 5 illustrates waveforms of two generators, one sensor, and a sampling clock of the system of Fig. 1;
Fig. 6 is a flow diagram illustrating operation of an interface part of the system of Fig. 1; and
Fig. 7 is a circuit diagram of an oscillator circuit part of the system of Fig. 1. Detailed Description
Referring to Fig. 1 a position monitoring system 1 according to the invention has a modular three-tier structure of:
2: a hardware layer for generating the underlying signals using electromagnetic generators and sensors, 3: a system layer for taking the sample signals and generating position and orientation data, and 4: an application layer which uses the position and orientation data to generate outputs for a particular medical application, such as monitoring the tremor in a hand of a Parkinson's Disease sufferer.
Referring to Fig. 2 the hardware layer 2 comprises three fixed-location sets of 3-D generator coils 10. Each coil 10 has a unique, dedicated frequency of operation, and has a power consumption of between 0.1W to 10W (RMS) adjustable according to the working range. Each coil 10 can thus be battery-powered and portable. The frequency of each of the coils 10 is selected to ensure that the sampling set, in this case 640 points, has a number of full sine or cosine waves within the sampling window.
For example, a setup can be the following 9 frequencies for 9 coils: 10kHz, 9.750kHz, 9kHz, 12kHz, 11.500kHz, 10.250kHz, 11.750kHz, 8.500kHz, and 10.750kHz. If the digitising sampling rate is 32 kHz and the data set length is 640 points, then the 10kHz frequency generator coil 10 will produce the number N of full waves within the sampling window given by:
N = coil_frequency x (frame_length / ADC_sampling_rate)
= 10kHz x (640/32kHz) = 200 full sine waveforms within the sampling window
Similarly, the generator coil 10 with a frequency of 11.750 kHz will produce:
N = 11.750kHz χ ( 640 / 32kHz)
= 235 full sine waveforms within the sampling window
The actual measurement from a sensor 11 is the compound of all these 9 frequencies. Each frequency will be extracted using the Discrete Fourier Transform (DFT) signal processing algorithm.
The field generators 10 are driven synchronously with a reference clock in a method comprising the steps of:
i) A Synchronous oscillator (SO) circuit drives the field generators 10. ii) Disable the injection signal to make the oscillator free running, iii) Measure the free running frequency. According to this frequency, estimate the tracking frequency range of the SO. According to this range determine the working frequency of each element of the field generators 10. iv) Monitor the working of the SO, repeat step ii) and iii) when required.
A power synchronous oscillating circuit is used to drive the generator coils 10. Its oscillation is synchronized to the coil control clock.
As the temperature and time can change the characteristics of the SO circuit, the tracking frequency range of the SO may drift from time to time. Step (iv) above ensures correct operation of the SO. If the drift makes the working frequency of an element outside of the tracking range, step (iv) can reset the working frequency. The SO circuit drives the three coils 10 of each generator set. The inductors for the coils 10 are chosen to generate powerful driving of the coils 10. The coils 10 may have the electrical characteristics as listed in Table I.
Table I.
Figure imgf000014_0001
In one case, the generator phases generate 50V and 2.9 A (peak-to-peak) at the operating frequency of circa 10 kHz and operating battery voltage of +5V. The drive MOSFET transistor consumes 145 mW. Coil heat dissipation is 0.528A per phase @ 5V operation = 2.64 W per phase.
There are n 1-D sensors 11, where n is up to 64, mounted on the device being monitored, such as an endoscope. The sensors 11 are magnetic field sensors of the type marketed by Philips under the code KMZ10A™. Each sensor 11 is based on the magnetoresistive effect of thin-film permalloy in a Wheatstone bridge configuration of four resistors. A voltage is applied to the bridge, and the bridge output changes in the presence of an applied magnetic field. The sensors 11 are packaged items and so are particularly robust and predictable.
The output of each sensor 11 is fed through a signal conditioning circuit 12 and an analog-to-digital (A/D) converter 13. The latter provides 640 samples of 24 bits each for each reading for each channel. There may also be reference sensors fitted at fixed positions relative to the generators. Such reference sensors may be used to detect the strength of the magnetic field generated, and hence provide field strength parameters for position calculation.
A dedicated FPGA 15 processes the digital outputs of the A/D converters 13 to provide a series of readings per channel. Within the FPGA 15, an interface 16 controls flow to an input buffer 17 using a set of serial to parallel converters connected to an I2C bus.
The interface 16 is provided in the form of a USB interface between the A/D converters 13 and the input buffer 17. The architecture of the USB interface 16 is illustrated in Fig. 6.
The USB interface 16 performs the following tasks:
Configures the FPGA logic;
Transfers data from A/D interface;
Sends control commands and checks the system status.
The Discrete Fourier Transform (DFT) block 18 processes one of the 640 readings for all n channels in one cycle. The input buffer 17 holds only one sample for all n channels at any time, and is immediately refreshed with the next sample. The interface logic 16 stores the intermediate data. Each sensor sample is digitised to a 24 bit binary code. For example, 00001111 10101010 11001100. The wiring connection to the system digitiser (Analogue-to-Digital Converter) is a single-bit stream serial port, while the interface to the input buffer is a 24 bit parallel connection. So when the first bit is moved into the interface 16, it has a data of Oxxxxxxx_xxxxxxxx_xxxxxxxx. After 4 bits, it is for example 1100xxxx_xxxxxxxx_xxxxxxxx. After 8 bits, it is 11001100 xxxxxxxx xxxxxxxx. When all 24 bits have moved in, the interface 16 holds 00001111_10101010_11001100. At this timing, the input buffer 17 will be instructed to get the 3 -byte data word. Since the data in the interface 16 is always shifting, this buffer is used to hold a stable and valid 24 bit sample data. The result of the computation of the DFT 18 is stored in the result buffer 19, providing spectral results for each of the n- channel sensor inputs. The spectral result of a sensor has the same number of frequencies as the number of the generator coils, for example, if there are 9 generator coils 10, then the spectral result for each sensor 11 will contain 9 frequency measurements, i.e. the sensor amplitude and phase information for each generator 10.
A twiddle vector table 20 provides parametric values for the DFT 18 calculation as follows. The parametric data is computed according to the working frequency of the generator coils 10. For example, if one coil 10 works at 10kHz and sampling frequency is 32kHz, for calculating the DFT of 640 points, we need to have some values of the sine function (also called Twiddle Factor). Let w = 2 * PI * 10 kHz / 32kHz, the table will have the value of sin(w), sin(2w), sin(3w) ... sin(639w).
This example only shows the table data for 10kHz coil. For other coils there are similar sets of sine look-up data, which together form the whole data of the vector table 20. Since the working frequencies of the coils are set at run-time, this table is also setup at run- time. And it only needs to be setup once at the system startup/reset stage.
The generator coils 10 are driven simultaneously, with each coil 10 having a different frequency. These frequencies have a fixed phase relation at the beginning of a sampling window, and are synchronised with the ADC sampling clock. This arrangement ensures that in one sampling window for DFT, there are exact integral numbers of full waves in each window. As a result this eliminates frequency leakage during the spectral analysis by DFT. The fixed starting phase of the frequencies helps to compensate the offset in the analog channel as well as to determine the orientation of the sensor. An example of the ADC sampling window is given in Fig. 5. Generator coil 1 and coil 2 are of different frequencies, and their phase is precisely controlled by the digital control clock. For a sampling window, all of them start from an amplitude of zero in this example. ADC sampling is conducted according to the A/D sampling clock. In this example, there are 50 A/D samples, and within this sampling window there are exact integral number of full sin waves for both coil 1 and coil 2.
The waveform for coil 1 and the waveform for coil 2 operate in a fixed phase relation. In particular, in each sampling window, the starting phase of both of the waveforms is fixed.
An example of the sensor signal is also given in Fig. 5. It will be appreciated that the exact shape of the sensor signal depends on the position and orientation of the sensor 11.
It will be appreciated that the form of the wave for coil 1 does not need to be identical to the form of the wave for coil 2. For example, coil 1 could be a sine waveform and coil 2 could be a cosine waveform.
In this specification, the term 'frequency leakage' is defined as a signal of one frequency being found in its neighbour frequency after the conversion, for example, a signal of 9,999Hz being moved to a neighbouring bins such as 10,000Hz, 9,000Hz, or 11,000Hz. Frequency leakage has in the past been caused by the discontinuity between the end and the beginning of the data in one sample frame. To overcome such frequency leakage, windowing has in the past been applied to samples.
The DFT algorithm converts a time domain signal into the frequency domain. Frequency leakage is a defect found when the DFT algorithm is used on un-windowed time series. The result of the DFT is to create spectral outputs in the wrong frequency positions which are erroneous. For example, a time series of signal data may have a significant component at a frequency of 9,999Hz. Due to frequency leakage this component may be assigned to 10,000 Hz rather than 9,000 Hz. For example, sample(O) = 0, but samρle(640) = 1000.
The synchronised operation of the generator coils 10 eliminates frequency leakage during DFT operation, and makes fast calculation of the position of the sensors 11 possible. The DFT can convert a signal from time domain to frequency domain while avoiding frequency leakage.
In the system according to the invention, by ensuring a complete number of full sine or cosine waves in one DFT frame, by which the continuity between the end and the beginning of the data in one sample frame is guaranteed, there is no signal leakage and no need for windowing and no need to calculate neighbour bins, which saves computing time, as well as improving the accuracy of the measurement. Therefore, operation of the DFT 18 is particularly fast. For example, if the sample(O) = 0, since we have complete number of full sine or cosine waveforms in one frame, the sample(640) = 0 is forced to also be true. So there is no leakage. The fact that there is no leakage will speed up the spectral analysis calculation.
An advantage of the system of the invention is that the generators are driven synchronously with the sampling, and so frequency leakage is avoided.
In addition, the phase relation of the generator driving frequencies is fixed. This fixed phase relation assists in determining the orientation of the sensor. For example, if the sensor is rotated by 180 degrees from a first orientation to a second orientation, the amplitude of the measured sensor signal will be the same in both the first orientation and the second orientation. However the phase of the measured sensor signal will change from when the sensor is in the first orientation to when the sensor is in the second orientation, and thus the system can determine that the orientation of the sensor has changed. The system also enjoys operational advantages as a result of the plurality of electromagnetic generators being driven by an oscillator circuit. In particular, the oscillator has a higher efficiency and a simpler structure, compared to for example an amplifier circuit. Further the oscillator circuit operates under control of a reference signal.
The oscillator circuit delivers high power, and oscillates synchronously with a reference signal, and is therefore know as a Power Synchronous Oscillator (PSO). The circuit diagram for the PSO is illustrated in Fig. 7.
At the hardware level 2 the driving of the field generators 10 and the sampling is derived from the same clock. By carefully allocating the driving frequency and the sampling length, an even number of sine or cosine waveforms can be obtained in one sampling frame.
The DFT calculations are based on the sample data. The values represent both the amplitude and the phase of each driving element.
Referring to Fig. 2(a), the system layer 3 comprises an embedded processor 25 which takes the output of the result buffer 19 and generates location and orientation data for each sensor 11.
The basic flow is illustrated in flow diagram form in Fig. 3 as a method 30. After getting the DFT result in step 31, the processor 20 estimates position and orientation in step 32. An estimated position component Xn1 is estimated as the previous position component Xn-ι plus the speed times the movement (change in location). Recursive computing of step 33 is performed to generate location data X, Y, Z, for each sensor and orientation data a, θ. This in turn is used to generate a speed value in step 35, subsequently used in step 32 of the next loop. The resultant position monitoring information is particularly useful, real time position information for an application such as monitoring the location of an endoscope within a colon.
The system also includes an on-system user control panel to facilitate control of the system, during use. The control panel includes a 16 x 2 character PLED display. The PLED display provides enhanced display quality. The interface is connected via FPGA logic. The control panel also includes a 6-key keypad. All keys can be individually read by the firmware/software, via the FPGA logic. A power switch is also provided to control the on/off status of the ATX power unit. The control panel also includes a buzzer. The buzzer is controlled directly by the MCU, so that it can provide debug information when the FPGA is unavailable. A reset button is also included. The button can reset the MCU, and hence restart the whole system.
The application layer 4 has software which processes the location and orientation data according to algorithms for particular applications. Such an application may for example monitor tremor/vibration of the hand of a patient suffering from Parkinson's disease. In this example, the hardware layer 2 comprises a glove with sensors 11 located at positions on the fingers and at chosen positions elsewhere on the hand. Because of the frequency multiplexing and the speed of operation of the FPGA 15, it is possible to achieve about 50 to 100 readings for all sensors 11 per second.
For colonoscopy, the sensors 11 may be mounted along the length of an endoscope.
The system 1 could also be used in position monitoring in other parts of the digestive tract, or for navigation of a probe through other passageways in the body, such as cerebral passageways. Other applications of the system 1 according to the invention include a telephone for deaf people using a standard telephony system. Another application is a 3D input device for a virtual reality system. A further application is movement analysis for sports.
Because of the nature of the system, wireless interfaces may be used. Such a scenario is illustrated in Fig. 4, in which a hardware layer 50 communicates via a wireless interface 51 with a system layer 52. The latter has a computer network interface for Internet communication with applications 54 and 55. This allows excellent versatility in use of the system. For example, a physician may remotely monitor a patient who is at home. In the example of Fig. 4, a single hardware layer 50 supports multiple applications. For example, a physician can use one application (local) to assist with a procedure, another application can record the location data into a database for later access, while a lecturer could use another application to show his students how the procedure should be undertaken. Also, a system-layer unit may have sufficient processors to process data from multiple patient hardware-layer systems, and the links to the hardware are conveniently wireless.
In another embodiment, the wire of the generator coils is doubled in size, and the windings are double rather than single layer to achieve the same turns. By doubling the wire size, this results in lower resistance, and therefore less DC heating effect by a factor of 4 times lower.
These generator coils produce about the same AC power and hence the same magnetic field strength of 46 V and 3.7 A (peak-to-peak) for +5V DC battery operation. Coil heat dissipation however is much lower, i.e. 0.182A per phase @ 5V operation = 0.91 W per phase. These coils provide a reduction in power loss of 65.5% which may be particularly advantageous.
These generator coils may have electrical characteristics as listed in Tables II-l, II-2, II-3. Table II-l
Figure imgf000022_0001
Table II-2
Figure imgf000022_0002
Table II-3
Figure imgf000022_0003
In another embodiment, to determine the error factor associated with a generator coil, the following steps may be performed:-
a plurality of sensors are precisely fitted at known positions, to form a calibration platform; the generator-under-test may then be fitted precisely at another known position; and
by analysing the measurement of the signal from the sensors, the non- concentricity and the orientation error of the generator coil can be determined.
During the 3D position calculation, such errors associated with the generator can be corrected by matrix operation.
In another embodiment, the amplitude of the sensor signal may be evaluated and used to control the power supplied to each generator. The further the sensor is located from a generator, the higher the power supplied to drive the generator. The purpose of such generator power control is to increase the operating range while minimising power consumption.
When there is metal mass within the operating range, an eddy effect may occur, and as a result the AC magnetic field generated may become distorted, and the accuracy of the position measurement may be adversely affected. To overcome this problem, in another embodiment, the operating frequencies of the generator coils 10 may be swapped among each other from time to time. As the eddy effect caused by AC magnetic field varies according to the frequency, by analysis of the measurement difference between the sensor signal before the switching and after the switching, a compensation matrix can be established. As a result, the effect of the metal mass to the accuracy of the position can be significantly reduced.
In another embodiment of the invention, the 3D position calculation, which is based on numeric optimization method, may include the following steps :-
1. Process the sensor signal (including filter, DFT) to get measurements from the generated magnetic field. 2. Based on the value of the processed signal, choose the measurements of at least two generator sets for further processing.
3. Normalize the value based on the parameter measured by reference sensors
4. Calibrate the generator non-concentricity error by means of matrix operation.
5. Calibrate the field distortion caused by metal mass.
6. Decide the position range of the sensor, by means of the following equation that links the magnitude of the measurement and the distance of the sensor:
where Vs is the amplitude of the field measured,
R is the distance from the generator to the sensor, and
kc, ks are constant factors.
The maximum and minimum R can be determined by:
ι+3 cos2α=2 and
Figure imgf000024_0001
respectively. By intersecting the Rmax and Rmin of different generators, a position range where the sensor exists can be defined.
7. For position and orientation calculation, further select at least the six largest measurements from the already chosen measurements in step 2 above.
8. Use a numeric method, e.g. least-square-fit optimization, to find out the position and orientation of the sensor. The space range specified in step 6 may be used to constrain the search.
In another embodiment, in order to increase the effective operating space, two or more sets of generators could be populated in an extended area. For example, such an area could be a floor of a squash court.
As another example, one set of generators could be fitted on the floor of a room and another set of generators could be fitted on a wall of the room. The sets of generators do not have to be in the same plane. There is also no need to align the axes of the generators to the same direction.
Either all the generators of such a matrix can be driven at the same time or only a part of them are driven and managed by a power control method.
The generator coils are set to work under different frequencies. However a particular frequency can be reused. One frequency can be used for two or more generators provided the generators are separated from each other by a distance sufficient to prevent effective interference.
Each frequency bin of the result of the Fourier transform of the sensor signal represents a generator coil. As there are more generators than needed to calculate the position, sensor position calculation is based on those bins of a Fourier transform with the largest values. Based on the measured position of the sensor, lower power may be supplied to drive the generators which are located a substantial distance from the sensor. These generators which are located a substantial distance from the sensor, and the magnetic field generated from these generators contributes little to the 3D position calculation.
It will be appreciated that the frequency of the generators may be extracted by any suitable means, for example a modified form of the Discrete Fourier Transform (MDFT) may be used.
It will be appreciated that a DSP processor may be used as an alternative to the FPGA processor.
The invention is not limited to the embodiments hereinbefore described, with reference to the accompanying drawings, which may be varied in construction and detail.

Claims

Claims
1. A position monitoring system comprising:
a hardware layer comprising a plurality of electromagnetic generators, at least one sensor and a sample processor for generating sample data; and
a system layer comprising a position processor for generating position data from the sample data;
the system being configured: -
for simultaneous operation of the plurality of electromagnetic generators, with the plurality of electromagnetic generators operating at different frequencies; and
for synchronised operation of the plurality of electromagnetic generators.
2. A position monitoring system as claimed in claim 1 wherein the plurality of electromagnetic generators are configured to operate in a fixed phase relation.
3. A position monitoring system as claimed in claim 1 or 2 wherein the hardware layer comprises a sampling clock, and the system is configured for synchronised operation of the sampling clock and the plurality of electromagnetic generators.
4. A position monitoring system as claimed in any of claims 1 to 3 wherein the electromagnetic generator is configured to generate an electromagnetic waveform, and the electromagnetic generator is configured to generate one or more full electromagnetic waves within each sampling window.
5. A position monitoring system as claimed in claim 4 wherein the plurality of electromagnetic generators are configured such that at the beginning of each sampling window the amplitude of all of the generated electromagnetic waveforms is equal.
6. A position monitoring system as claimed in claim 5 wherein the plurality of electromagnetic generators are configured such that at the beginning of each sampling window the amplitude of all of the generated electromagnetic waveforms is zero.
7. A position monitoring system as claimed in any of claims 1 to 6, wherein the sensor is configured to be mounted on an object, the position of which is desired to be monitored.
8. A position monitoring system as claimed in any of claims 1 to 7, wherein at least one sensor is of the magnetoresistive effect type.
9. A position monitoring system as claimed in any of claims 1 to 8 wherein the electromagnetic generator comprises a coil generator.
10. A position monitoring system as claimed in claim 9 wherein the electromagnetic generator comprises a set of 3-D generator coils.
11. A position monitoring system as claimed in any of claims 1 to 10 wherein the plurality of electromagnetic generators are driven by an oscillator circuit.
12. A position monitoring system as claimed in claim 11 wherein the oscillator circuit comprises a synchronous oscillator circuit.
13. A position monitoring system as claimed in claim 11 or 12 wherein the oscillator circuit is configured for control of the oscillating frequency and phase by a reference signal.
14. A position monitoring system as claimed in any of claims 1 to 13 wherein the hardware layer comprises at least one reference sensor at a fixed position relative to the plurality of electromagnetic generators.
15. A position monitoring system as claimed in any of claims 1 to 14, wherein the sample processor is configured to generate a series of readings for a channel from each sensor.
16. A position monitoring system as claimed in any of claims 1 to 15, wherein the sample processor is configured to extract the components of a signal, received from the sensor, corresponding to each generator.
17. A position monitoring system as claimed in claim 16, wherein the sample processor is configured to frequency multiplex the signal received from the sensor.
18. A position monitoring system as claimed in any of claims 1 to 17 wherein each electromagnetic generator is configured to operate at a unique frequency.
19. A position monitoring system as claimed in any preceding claim, wherein the sample processor comprises a Discrete Fourier Transform (DFT) function for generating sample data.
20. A position monitoring system as claimed in claim 19, wherein the sample processor comprises an interface for receiving digitised sensor samples and an input buffer for retrieving sample words in parallel from the interface.
21. A position monitoring system as claimed in claim 20, wherein the interface shifts bits as fresh bits are received, and the input buffer retrieves words of a pre- configured length.
22. A position monitoring system as claimed in any of claims 19 to 21, wherein the sample processor comprises a vector table for providing parametric data to the DFT function.
23. A position monitoring system as claimed in claim 22, wherein the parametric data is calculated according to frequency of operation of the generators and sampling frequency.
24. ' A position monitoring system as claimed in any of claims 19 to 23, wherein the DFT function windows time series incoming samples with a band limited waveform.
25. A position monitoring system as claimed in any preceding claim, wherein the sample processor comprises an FPGA.
26. A position monitoring system as claimed in any of claims 1 to 24 wherein the sample processor comprises a DSP.
27. A position monitoring system as claimed in any preceding claim, wherein the system layer comprises an embedded processor.
28. A position monitoring system as claimed in any of claims 1 to 27 wherein the position processor is configured to generate the position data using only some of the sample data.
29. A position monitoring system as claimed in claim 28 wherein the position processor is configured to generate the position data using only the sample data having the largest amplitude.
30. A position monitoring system as claimed in any preceding claim, wherein the position processor is configured to generate position data by:
(a) estimating three-dimensional position and orientation data;
(b) determining actual three-dimensional position and orientation data;
(c) determining speed of movement; and
(d) using the results of steps (b) and (c) of a previous measurement iteration as an input to step (a) of a next measurement iteration.
31. A position monitoring system as claimed in claim 30, wherein step (b) is performed with recursive computing.
32. A position monitoring system as claimed in claim 30 or 31 wherein the position processor is configured to limit the range of the position calculation by:
V W + v..,2 + W = -^r ' + 3o ° s2<*
where:
Vs = amplitude of a signal received from the sensor;
R = distance between the sensor and a generator; kc, ks = constants;
Dx, Dy, Dz = three-dimensional position of the sensor;
α = orientation of the sensor.
33. A position monitoring system as claimed in any of claims 1 to 32 wherein the hardware layer is configured to supply power to each electromagnetic generator at a power level responsive to the position data generated by the position processor.
34. A position monitoring system as claimed in any of claims 1 to 33 wherein the hardware layer is configured to enable the frequency, at which each electromagnetic generator may be operated, to be altered.
35. A position monitoring system as claimed in claim 34 wherein the system comprises means to analyse the difference between a signal from the sensor before altering the frequency and a signal from the sensor after altering the frequency.
36. A position monitoring system as claimed in any of claims 1 to 35 wherein the system comprises an application layer comprising at least one application for processing the position data.
37. A position monitoring system as claimed in claim 36, wherein at least some applications of the application layer are remote from the system layer.
38. A position monitoring system as claimed in any of claims 1 to 37 for monitoring the position of a probe in a body passageway.
39. A position monitoring system as claimed in claim 38 for monitoring the position of a colonoscope in a colon.
40. A position monitoring system substantially as hereinbefore described with reference to the accompanying drawings.
41. A method for monitoring the position of an object, the method comprising the steps of:-
providing a plurality of electromagnetic generators and at least one sensor;
arranging in a fixed position either the plurality of electromagnetic generators or the at least one sensor;
arranging for either the at least one sensor or the plurality of electromagnetic generators to be carried by the object;
simultaneously operating the plurality of electromagnetic generators, at different frequencies, in a synchronised manner;
generating sample data from the output of the at least one sensor;
generating position data from the sample data to monitor the position of the object.
42. A method as claimed in claim 41 wherein the plurality of electromagnetic generators are operated in a fixed phase relation.
43. A method as claimed in any of claims 41 or 42 wherein a sampling clock and the plurality of electromagnetic generators are operated in a synchronised manner.
44. A method as claimed in any of claims 41 to 43 wherein the electromagnetic generator generates an electromagnetic waveform, and the electromagnetic generator generates one or more full electromagnetic waves within each sampling window.
45. A method as claimed in any of claims 41 to 44 wherein the plurality of electromagnetic generators are arranged in fixed positions, and the sensor is arranged to be carried by the object.
46. A method as claimed in claim 45 wherein the sensor is mounted on the object.
47. A method as claimed in any of claims 41 to 46 wherein the plurality of electromagnetic generators are driven by an oscillator circuit.
48. A method as claimed in claim 47 wherein the method comprises the step of using a reference signal to control the oscillating frequency and phase of the oscillator circuit.
49. A method as claimed in any of claims 41 to 48 wherein the sample data is generated by extracting the components of the sensor output corresponding to each generator.
50. A method as claimed in claim 49 wherein the sample data is generated by frequency multiplexing the sensor output.
51. A method as claimed in any of claims 41 to 50 wherein each electromagnetic generator is operated at a unique frequency.
52. A method as claimed in any of claims 41 to 51 wherein the position data is generated using only some of the sample data.
53. A method as claimed in claim 52 wherein the position data is generated using only the sample data having the largest amplitude.
54. A method as claimed in any of claims 41 to 53 wherein the position data is generated by:
(a) estimating three-dimensional position and orientation data;
(b) determining actual three-dimensional position and orientation data;
(c) determining speed of movement; and
(d) using the results of steps (b) and (c) of a previous measurement iteration as an input to step (a) of a next measurement iteration.
55. A method as claimed in claim 54 wherein step (b) is performed with recursive computing.
56. A method as claimed in claim 54 or 55 wherein the method comprises the step of limiting the range of the position calculation by:
/ Ktffc2 + W + ViC
where:
Vs = amplitude of a signal received from the sensor; R = distance between the sensor and a generator;
kc, ks = constants;
Dx, Dy, Dz = three-dimensional position of the sensor;
α = orientation of the sensor.
57. A method as claimed in any of claims 41 to 56 wherein the method comprises the steps of supplying power to each electromagnetic generator at a power level responsive to the generated position data.
58. A method as claimed in any of claims 41 to 57 wherein the method comprises the step of altering the frequency, at which each electromagnetic generator is operated.
59. A method as claimed in claim 58 wherein the method comprises the step of analysing the difference between the sensor output before altering the frequency and the sensor output after altering the frequency.
60. A method as claimed in any of claims 41 to 59 wherein the method comprises the step of processing the position data to control an application.
61. A method as claimed in any of claims 41 to 60 for monitoring the position of a probe in a body passageway.
62. A method as claimed in claim 61 for monitoring the position of a colonoscope in a colon.
3. A method for monitoring the position of an object substantially as hereinbefore described with reference to the accompanying drawings.
PCT/IE2004/000062 2003-05-02 2004-05-04 A position monitoring system WO2004096042A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IE2003/0333 2003-05-02
IE20030333 2003-05-02

Publications (1)

Publication Number Publication Date
WO2004096042A1 true WO2004096042A1 (en) 2004-11-11

Family

ID=33397631

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IE2004/000062 WO2004096042A1 (en) 2003-05-02 2004-05-04 A position monitoring system

Country Status (1)

Country Link
WO (1) WO2004096042A1 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005082247A1 (en) * 2004-02-18 2005-09-09 Philips Intellectual Property & Standards Gmbh Correction of measured values for a magnetic localization device
DE102007012361A1 (en) * 2007-03-14 2008-09-25 Siemens Ag Method for determining the position of a medical instrument
KR102047718B1 (en) * 2018-07-25 2019-11-22 주식회사 이투에스 Voltage measurement apparatus using variable sampling data

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6263230B1 (en) * 1997-05-08 2001-07-17 Lucent Medical Systems, Inc. System and method to determine the location and orientation of an indwelling medical device
US6316934B1 (en) * 1998-09-17 2001-11-13 Netmor Ltd. System for three dimensional positioning and tracking
US6427079B1 (en) * 1999-08-09 2002-07-30 Cormedica Corporation Position and orientation measuring with magnetic fields
US6487516B1 (en) * 1998-10-29 2002-11-26 Netmor Ltd. System for three dimensional positioning and tracking with dynamic range extension
EP1260176A2 (en) * 2001-05-20 2002-11-27 Given Imaging Ltd. Array system and method for locating an in vivo signal source

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6263230B1 (en) * 1997-05-08 2001-07-17 Lucent Medical Systems, Inc. System and method to determine the location and orientation of an indwelling medical device
US6316934B1 (en) * 1998-09-17 2001-11-13 Netmor Ltd. System for three dimensional positioning and tracking
US6487516B1 (en) * 1998-10-29 2002-11-26 Netmor Ltd. System for three dimensional positioning and tracking with dynamic range extension
US6427079B1 (en) * 1999-08-09 2002-07-30 Cormedica Corporation Position and orientation measuring with magnetic fields
EP1260176A2 (en) * 2001-05-20 2002-11-27 Given Imaging Ltd. Array system and method for locating an in vivo signal source

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005082247A1 (en) * 2004-02-18 2005-09-09 Philips Intellectual Property & Standards Gmbh Correction of measured values for a magnetic localization device
US7652468B2 (en) 2004-02-18 2010-01-26 Koninklijke Philips Electronics N.V. Correction of measured values for a magnetic localization device
DE102007012361A1 (en) * 2007-03-14 2008-09-25 Siemens Ag Method for determining the position of a medical instrument
DE102007012361B4 (en) * 2007-03-14 2016-09-22 Siemens Healthcare Gmbh Method for determining the position of a medical instrument and position-determining device
KR102047718B1 (en) * 2018-07-25 2019-11-22 주식회사 이투에스 Voltage measurement apparatus using variable sampling data

Similar Documents

Publication Publication Date Title
CN100546540C (en) Endocardium three-dimension navigation system
JP2006507057A (en) Multi-frequency bioimpedance measurement method
CN102247128B (en) Human body pulse information collecting device and human body health status monitoring device
US20060167374A1 (en) Bioelectrical impedance measuring device and body composition measuring apparatus
US5339827A (en) Acupuncture system and method
CN109891210A (en) Hardometer and hardness measurement method
Wei et al. Volume catheter parallel conductance varies between end-systole and end-diastole
JP2004041435A (en) Measuring instrument for biological impedance
US11712309B2 (en) Magnetic flexible catheter tracking system and method using digital magnetometers
AU2005303213A1 (en) Endoscope shape determining apparatus
CN108814564A (en) A kind of intelligence pulse diagnosing device
WO2004096042A1 (en) A position monitoring system
EP2967392B1 (en) Improved ecg calculation method for use in generating 12 lead ecg measurements from devices that have less than 10 electrodes
US20220160248A1 (en) Micro device for measuring tissue impedance
CN103417204B (en) Human body simulation and calibration device of oscilloscope electronic sphygmomanometer
IE20040307A1 (en) A position monitoring system
CN107928636B (en) Pulse diagnosis instrument with temperature compensation function
Gordon et al. A virtual system for simultaneous multi-frequency measurement of electrical bioimpedance
JP2011156194A (en) Electrocardiographic device
JP2017153622A (en) Pulse diagnostic apparatus
RU2009142646A (en) ELECTRODE MONITORING DEVICE INSIDE THE PATIENT&#39;S BODY AND METHOD FOR ITS IMPLEMENTATION
TW202108076A (en) Method for determining r peaks of electrocardiogram
CN110051373A (en) Continuous grip measuring device and method based on bio-impedance tomoscan
Sun et al. Application of Multi-channel Impedance Measurement Device in Teaching of" Signal Analysis and Processing"
Rubini et al. Design of high performance system-on-chips using Field Programmable Gate Arrays (FPGA)

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): AE AG AL AM AT AU AZ BA BB BG BR BW BY BZ CA CH CN CO CR CU CZ DE DK DM DZ EC EE EG ES FI GB GD GE GH GM HR HU ID IL IN IS JP KE KG KP KR KZ LC LK LR LS LT LU LV MA MD MG MK MN MW MX MZ NA NI NO NZ OM PG PH PL PT RO RU SC SD SE SG SK SL SY TJ TM TN TR TT TZ UA UG US UZ VC VN YU ZA ZM ZW

AL Designated countries for regional patents

Kind code of ref document: A1

Designated state(s): BW GH GM KE LS MW MZ NA SD SL SZ TZ UG ZM ZW AM AZ BY KG KZ MD RU TJ TM AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IT LU MC NL PL PT RO SE SI SK TR BF BJ CF CG CI CM GA GN GQ GW ML MR NE SN TD TG

121 Ep: the epo has been informed by wipo that ep was designated in this application
122 Ep: pct application non-entry in european phase