The present invention generally relates to processing of a time-dependent pressure signal obtained from a fluid containing system, and in particular to filtering of such a pressure signal for removal of a signal component originating from a specific pulse generator. The present invention is e.g. applicable in fluid containing systems for extracorporeal blood treatment.
The above-mentioned pressure signal contains both an information component, e.g. pressure variations representing heart pulses, and a disturbance component, e.g. pressure variation caused by a blood pump. It is a challenging task to extract the information component by removing the disturbance component. For this purpose, existing methods have for instance employed an additional pressure signal which only contains the disturbance component, which may be referred to as a “pump pressure profile”.
One approach has been presented in WO2009/156175, in which the pump pressure profile is either directly subtracted from the pressure signal or used as input to an adaptive filter structure. The pump pressure profile is a predicted time resolved profile of pressure pulses from a dedicated pulse generator (e.g. a blood pump). The predicted profile has been either mathematically deduced or previously recorded under controlled circumstances, i.e. without influence from other sources in order to obtain a clean profile.
The prior art also comprises WO2010/066405, which proposes eliminating a pump disturbance in a pressure signal by subtracting a mathematically modelled pump contribution from the pressure signal. In an alternative approach, when the pump contribution is unknown, WO2010/066405 proposes repeatedly sampling pressure values at a time point when the pump contribution is known to be minimal and estimating an average heart pulse magnitude based on the standard deviation of the sampled pressure values. The latter technique is only able to generate an estimate of the average heart pulse magnitude, and provides neither information on the shape of the heart pulse, nor data on the magnitude or timing of individual heart pulses.
A field in which the present invention is relevant is extracorporeal blood treatment. In extracorporeal blood treatment, blood is taken out of a patient, treated and then reintroduced into the patient by means of an extracorporeal blood flow circuit. Generally, the blood is circulated through the circuit by one or more pumping devices. The circuit is connected to a blood vessel access of the patient, typically via one or more access devices, such as needles or catheters, which are inserted into the blood vessel access. Such extracorporeal blood treatments include hemodialysis, hemodiafiltration, hemofiltration, plasmapheresis, etc. For monitoring and analysing the behaviour of physiological pressure generators such as the heart or respiratory system, e.g. for monitoring a subject's heart pulse rate, blood pressure and also the condition of the blood vessel access (e.g. to identify so-called Venous Needle Dislodgement, VND), it is thus a desire to extract/isolate pressure data originating from such physiological pressure generators. Examples of such monitoring techniques are found in WO97/10013, WO2009/156174 and WO2010/149726.
However, existing solutions often require extensive memory and processing usage for processing the pressure signals, and they may also be unable to provide instantaneous information about the physiological pulses, such as magnitude, shape and timing. Some solutions also require known or predefined pump pressure profiles to filter the pressure signal. These pump pressure profiles may be difficult to obtain, may increase the complexity of implementation, and may generate unreliable results unless care is taken when measuring/calculating the pump pressure profiles.
Corresponding needs and tasks may arise in other fields of technology. Thus, generally speaking, there is a need for an improved technique for processing a time-dependent pressure signal obtained from a pressure sensor in a fluid containing system associated with a first pulse generator and a second pulse generator, in order to monitor a functional state or parameter of the fluid containing system by isolating a signal component originating from the second pulse generator among signal components originating from the first and second pulse generators. Specifically, the fluid containing system may comprise a first sub-system which comprises (or is associated with) the first pulse generator and the pressure sensor, a second sub-system which comprises (or is associated with) the second pulse generator, and a fluid connection between the first and second sub-systems.
It is an object of the invention to at least partly fulfil one or more of the above-identified needs in view of the prior art.
One objective is to provide a technique that enables extraction of an information component in a pressure signal obtained in a fluid containing system, by removal or suppression of a disturbance component in the pressure signal.
Another objective is to provide such a technique that is simple to implement in a fluid containing system.
A further objective is to provide a filtering technique with an improved usage of processing or memory capacity.
Another objective is to provide a technique that enables monitoring of a property of the first subsystem, the second subsystem, or the integrity of the fluid connection between the two sub-systems in the above-mentioned fluid containing system.
Yet another objective is to provide such a technique capable of being used for monitoring of one or more properties of the cardiovascular system of a human subject.
One or more of these objectives, as well as further objectives that may appear from the description below, are at least partly achieved by means of devices, an apparatus for blood treatment, methods and a computer readable-medium according to the independent claims, embodiments thereof being defined by the dependent claims.
In its various aspects, the invention provides filtering techniques that are designed with knowledge about the pulse generation process in the first pulse generator. Specifically, the inventive filtering is based on the knowledge that the pressure signal includes consecutive pulse cycles, and that each pulse cycle has a known occurrence of first pulses, even if the shape of the first pulse(s) within the individual pulse cycle is unknown (e.g. depending on the operating conditions of the fluid containing system and the first pulse generator). As used herein, a “pulse cycle” is tied to the construction of the first pulse generator and is manifested as a repeating structure of a predetermined number of first pulses in the pressure signal. The second pulses are overlaid or superposed on the pulse cycles in the pressure signal. By relating each current data sample, obtained from the pressure signal, to a current pulse cycle, it is possible to generate an appropriate reference value for each current data sample by selecting and processing a set of preceding and/or subsequent data samples in the pressure signal for each current data sample. Based on this insight, the invention in its various aspects may be designed to generate each reference value such that the resulting time-sequence of reference values form an estimated temporal profile of the first pulse(s) within the current pulse cycle. Thereby, each reference value will represent an estimation of the instant signal contribution from the first pulse(s) within the current pulse cycle. By subtracting this instant signal contribution from the respective current data sample, a time-sequence of output samples can be generated for the current pulse cycle so as to be essentially free of first pulses.
It is to be noted that the inventive filtering is based on the presumption that the shape of the first pulses is approximately unchanged over a number of successive pulse cycles, so that it is possible to derive appropriate reference values for current data samples based on preceding and/or subsequent data samples. The inventive filtering also presumes that the first and second pulses are generated at different rates, so that the location of the second pulses differ between consecutive pulse cycles. Thereby, the resulting output samples will contain a signal contribution of second pulses, if present in the pressure signal, while the signal contribution of first pulses is eliminated or at least significantly suppressed.
In its various aspects, the inventive filtering is simple to implement in a fluid containing system, since it only requires a single pressure sensor. The inventive filtering obviates the complexity of obtaining a reference profile from another pressure sensor, as well as the complexity of using and possibly adapting this reference profile for appropriate filtering of the pressure signal, as suggested in the prior art. In comparison to prior art techniques, the inventive filtering also obviates the need to pre-record or pre-calculate reference profiles, the need to store these reference profiles, and the complexity of using such stored reference profiles for filtering of the pressure signal. Thus, the inventive filtering may improve usage of at least one of processing capacity and memory capacity.
In the claims, the inventive filtering is defined in terms of two different approaches, namely a cycle-synchronization (CS) approach and a proximity prediction (PP) approach. It should be emphasized that both of these approaches fall within the general inventive concept discussed in the foregoing.
A first aspect of the CS approach is a device for processing a time-dependent pressure signal obtained from a pressure sensor in a fluid containing system associated with a first pulse generator and a second pulse generator. The pressure sensor is arranged in the fluid containing system to detect first pulses originating from the first pulse generator and second pulses originating from the second pulse generator, wherein the first pulse generator operates in a sequence of pulse cycles, each pulse cycle resulting in at least one first pulse. The device comprises: an input for the pressure signal, and a signal processor connected to the input and configured to: repetitively obtain a current data sample within a current pulse cycle in the pressure signal; calculate, for each current data sample within the current pulse cycle, a reference value as a function of a cycle-synchronized data sample in one or more other pulse cycles in the pressure signal, the cycle-synchronized data sample being obtained to have a location in said one or more other pulse cycles that corresponds to a location of the current data sample in the current pulse cycle; and operate a subtraction algorithm on the current data sample, using said reference value obtained for the current data sample as input, so as to generate a current output sample which is essentially free of a signal component attributable to said at least one first pulse.
As used herein, the “other” pulse cycle denotes another pulse cycle than the current pulse cycle. Depending on implementation, the one or more other pulse cycles may be preceding or subsequent to the current pulse cycle in the pressure signal, or both. The use of subsequent pulse cycles generally requires some form of buffering of the data samples. In one embodiment, the signal processor is configured to calculate the reference value as a function of the cycle-synchronized data sample in an adjacent pulse cycle, e.g. an immediately preceding pulse cycle. The signal processor may be further configured to set the reference value equal to the cycle-synchronized data sample in the adjacent pulse cycle.
In one embodiment, the signal processor is configured to calculate the reference value as an aggregation of the cycle-synchronized data sample and one or more adjacent data samples to the cycle-synchronized data sample in an adjacent pulse cycle, e.g. an immediately preceding pulse cycle.
In one embodiment, the signal processor is configured to calculate the reference value as an aggregation of cycle-synchronized data samples in at least two other pulse cycles. The signal processor may be further configured to calculate the aggregation to include one or more adjacent data samples to each cycle-synchronized data sample in said at least two other pulse cycles.
In one embodiment, the signal processor is configured to calculate the aggregation as a summation of data samples. The signal processor may be further configured to apply a weight factor to each data sample in said summation. The signal processor may further comprise an adaptive filter configured to adaptively determine each weight factor based on a difference between the current data sample and the output sample.
In one embodiment, the signal processor is configured to calculate the aggregation recursively, by updating a preceding reference value, which corresponds to the reference value and is calculated in a preceding pulse cycle. The signal processor may be further configured to calculate the reference value as a function of the preceding reference value and a difference between the cycle-synchronized data sample in the preceding pulse cycle and the preceding reference value. Here, the difference is thus calculated between a cycle-synchronized data sample and a reference value obtained in the same preceding pulse cycle, which may be the immediately preceding pulse cycle.
In one implementation of the recursive embodiment, the device further comprises a Kalman filter, which is configured to receive the time sequence of current data samples obtained within the current pulse cycle as input and estimate a set of states that represent a time sequence of reference values in the current pulse cycle. In a corresponding practical implementation, the signal processor may be configured to calculate a difference value between the current data sample and the cycle-synchronized data sample; generate a weighted feedback value by applying a weight factor to a cycle-synchronized output sample which is obtained to have a location in one or more preceding pulse cycles that corresponds to a location of the current data sample within the current pulse cycle; and generate the current output sample as a sum of the difference value and the weighted feedback value, wherein the weight factor may be selected such that the signal processor implements said Kalman filter.
In one implementation of the recursive embodiment, as well as all other embodiments disclosed herein, the signal processor is configured to obtain the current data sample as a pressure value in the pressure signal.
In another implementation of the recursive embodiment, the signal processor is configured to obtain the current data sample as a difference between proximate (e.g. consecutive) pressure values in the pressure signal. Thereby, the recursive embodiment may be configured to account for drifts in the operation of the first pulse generator.
The following embodiments are not only applicable to the first aspect of the CS approach but also to the first aspect of the PP approach, as described further below.
In one embodiment, the signal processor is configured to obtain first data samples from the pressure signal and obtain each current data sample by interpolation among the first data samples with respect to a respective location within the current pulse cycle. This embodiment thus allows each current data sample to be generated with a well-defined location in the current pulse cycle, while relaxing the requirements on the data sampling equipment that generates the first data samples.
In one such embodiment, the signal processor is configured to obtain the current data sample in synchronization with the pulse cycles.
In one such embodiment, the device further comprises an input for a synchronization signal that represents the pulse cycles of the first pulse generator, and the signal processor is responsive to the synchronization signal in at least one of obtaining the current data sample, calculating the reference value, and operating the subtraction algorithm.
In one embodiment, the fluid containing system comprises an extracorporeal blood processing apparatus, a cardiovascular system of a human subject, and a fluid connection between the extracorporeal blood processing apparatus and the cardiovascular system, wherein the first pulse generator is associated with the extracorporeal blood processing apparatus and the second pulse generator is associated with the human subject.
In one embodiment, the signal processor is configured to repetitively obtain the current data sample and calculate the reference value so as to generate a time-sequence of reference values that form an estimated temporal profile of said at least one first pulse within the current pulse cycle.
In one embodiment, the signal processor is configured to operate the subtraction algorithm so as to generate a time-sequence of current output samples which form a temporal profile of the second pulse.
In one embodiment, the signal processor is configured to generate at least three output samples for each current pulse cycle.
In one embodiment, the first pulse generator comprises a peristaltic pump comprising a rotor with at least one roller, and wherein each pulse cycle corresponds to a full rotation of the rotor. In an alternative embodiment, the first pulse generator comprises a peristaltic pump comprising a rotor with a number of rollers, and wherein each full rotation of the rotor generates the same number of pulse cycles as the number of rollers.
A second aspect of the CS approach is a device for processing a time-dependent pressure signal obtained from a pressure sensor in a fluid containing system associated with a first pulse generator and a second pulse generator. The pressure sensor is arranged in the fluid containing system to detect first pulses originating from the first pulse generator and second pulses originating from the second pulse generator, wherein the first pulse generator operates in a sequence of pulse cycles, each pulse cycle resulting in at least one first pulse. The device comprises: means for repetitively obtaining a current data sample within a current pulse cycle in the pressure signal; means for calculating, for each current data sample in the current pulse cycle, a reference value as a function of a cycle-synchronized data sample in one or more other pulse cycles in the pressure signal, the cycle-synchronized data sample being obtained to have a location in said one or more other pulse cycles that corresponds to a location of the current data sample in the current pulse cycle; and means for operating a subtraction algorithm on the current data sample, using said reference value obtained for the current data sample as input, so as to generate a current output sample which is essentially free of a signal component attributable to said at least one first pulse.
A third aspect of the CS approach is an apparatus for blood treatment, comprising an extracorporeal fluid circuit configured to be connected in fluid communication with a vascular access of a human subject and operable to circulate blood from the cardiovascular system of the human subject through a blood processing device and back to the cardiovascular system, and a device of the first or second aspects.
A fourth aspect of the CS approach is a method of processing a time-dependent pressure signal obtained from a pressure sensor in a fluid containing system associated with a first pulse generator and a second pulse generator. The pressure sensor is arranged in the fluid containing system to detect first pulses originating from the first pulse generator and second pulses originating from the second pulse generator, wherein the first pulse generator operates in a sequence of pulse cycles, each pulse cycle resulting in at least one first pulse. The method comprises: repetitively obtaining a current data sample within a current pulse cycle in the pressure signal; calculating, for each current data sample within the current pulse cycle, a reference value as a function of a cycle-synchronized data sample in one or more other pulse cycles in the pressure signal, the cycle-synchronized data sample being obtained to have a location in said one or more other pulse cycles that corresponds to a location of the current data sample in the current pulse cycle; and operating a subtraction algorithm on the current data sample, using said reference value obtained for the current data sample as input, so as to generate a current output sample which is essentially free of a signal component attributable to said at least one first pulse.
A fifth aspect of the CS approach is a computer-readable medium comprising computer instructions which, when executed by a processor, cause the processor to perform the method of the fourth aspect.
Any one of the above-identified embodiments of the first aspect of the CS approach may be adapted and implemented as an embodiment of the above-identified second to fifth aspects of the CS approach.
A first aspect of the PP approach is a device for processing a time-dependent pressure signal obtained from a pressure sensor in a fluid containing system associated with a first pulse generator and a second pulse generator. The pressure sensor is arranged in the fluid containing system to detect first pulses originating from the first pulse generator and second pulses originating from the second pulse generator, wherein the first pulse generator operates in a sequence of pulse cycles, each pulse cycle resulting in at least one first pulse. The device comprises: an input for the pressure signal, and a signal processor connected to said input and configured to: repetitively obtain a current data sample within the current pulse cycle in the pressure signal; calculate, for each current data sample within the current pulse cycle, a reference value as an estimate of the current data sample, the estimate being calculated by prediction based on at least two data samples in proximity to the current data sample in the pressure signal; and operate a subtraction algorithm on the current data sample, using said reference value obtained for the current data sample as input, so as to generate a current output sample which is essentially free of a signal component attributable to said at least one first pulse.
Depending on implementation, the at least two data samples may be preceding and/or subsequent to the current data sample in the pressure signal. The use of subsequent data sample(s) generally requires some form of buffering of the data samples.
In one embodiment of the PP approach, the signal processor is configured to calculate the prediction by applying a weight factor to each of the at least two data samples. The signal processor may further comprise an adaptive filter configured to adaptively determine each weight factor based on a difference between the current data sample and the current output sample.
A second aspect of the PP approach is a device for processing a time-dependent pressure signal obtained from a pressure sensor in a fluid containing system associated with a first pulse generator and a second pulse generator. The pressure sensor is arranged in the fluid containing system to detect first pulses originating from the first pulse generator and second pulses originating from the second pulse generator, wherein the first pulse generator operates in a sequence of pulse cycles, each pulse cycle resulting in at least one first pulse. The device comprises: means for repetitively obtaining a current data sample within the current pulse cycle in the pressure signal; means for calculating, for each current data sample within the current pulse cycle, a reference value as an estimate of the current data sample, the estimate being calculated by prediction based on at least two data samples in proximity to the current data sample in the pressure signal; and means for operating a subtraction algorithm on the current data sample, using said reference value obtained for the current data sample as input, so as to generate a current output sample which is essentially free of a signal component attributable to said at least one first pulse.
A third aspect of the PP approach is an apparatus for blood treatment, comprising an extracorporeal fluid circuit configured to be connected in fluid communication with a vascular access of a human subject and operable to circulate blood from the cardiovascular system of the human subject through a blood processing device and back to the cardiovascular system, and a device of the first or second aspects.
A fourth aspect of the PP approach is a method of processing a time-dependent pressure signal obtained from a pressure sensor in a fluid containing system associated with a first pulse generator and a second pulse generator. The pressure sensor is arranged in the fluid containing system to detect first pulses originating from the first pulse generator and second pulses originating from the second pulse generator, wherein the first pulse generator operates in a sequence of pulse cycles, each pulse cycle resulting in at least one first pulse. The method comprises: repetitively obtaining a current data sample within a current pulse cycle in the pressure signal; calculating, for each current data sample within the current pulse cycle, a reference value as an estimate of the current data sample, the estimate being calculated by prediction based on at least two data samples in proximity to the current data sample in the pressure signal; and operating a subtraction algorithm on the current data sample, using said reference value obtained for the current data sample as input, so as to generate a current output sample which is essentially free of a signal component attributable to said at least one first pulse.
A fifth aspect of the PP approach is a computer-readable medium comprising computer instructions which, when executed by a processor, cause the processor to perform the method of the fourth aspect.
Any one of the above-identified embodiments of the first aspect of the PP approach may be adapted and implemented as an embodiment of the above-identified second to fifth aspects of the PP approach.
Still other objectives, features, aspects and advantages of the present invention will appear from the following detailed description, from the attached claims as well as from the drawings.
Exemplifying embodiments of the invention will now be described in more detail with reference to the accompanying schematic drawings.
In the following, exemplifying embodiments of the invention will be described with reference to fluid containing systems in general. Thereafter, the embodiments and implementations of the invention will be further exemplified in the context of systems for extracorporeal blood treatment.
Throughout the following description, like elements are designated by the same reference signs.
General
The system of
Generally, the surveillance device 25 is configured to monitor a functional state or functional parameter of the fluid containing system by isolating and analysing one or more second pulses in one of the pressure signals. The functional state or parameter may be monitored for various characteristics of the second sub-system S2. If the second sub-system S2 is a human subject, as described further below, the functional state or parameter may be monitored for assessing heart pulse rate or blood pressure of the human subject. Additionally, as will be further exemplified in the following, the functional state or parameter may be monitored to identify a fault condition, e.g. in the first or second sub-systems S1, S2, the second pulse generator 3′ or the fluid connection C. Upon identification of a fault condition, the surveillance device 25 may issue an alarm or warning signal and/or alert a control system of the first or second sub-systems S1, S2 to take appropriate action. Alternatively or additionally, the surveillance device 25 may be configured to store or output (e.g. for display) a time sequence of values of the functional state or parameter.
Depending on implementation, the surveillance device 25 may use digital components or analog components, or a combination thereof, for receiving and processing the pressure signal. The device 25 may be a computer, or a similar data processing device, with adequate hardware for acquiring and processing the pressure signal in accordance with different embodiments of the invention. Embodiments of the invention may e.g. be implemented by software instructions that are supplied on a computer-readable medium for execution by a processor 25a in conjunction with an electronic memory 25b in the device 25.
Typically, the surveillance device 25 is configured to repeatedly process the time-dependent pressure signal(s) to isolate the second pulses, if present in the pressure signal. This processing is schematically depicted in the flow chart of
The process in
Introduction to Inventive Concept
As indicated in
As used herein, a preceding data sample which has the same, or at least closely similar, timing within the cycle as the current data sample is denoted a “cycle-synchronized data sample”. Stated otherwise, a cycle-synchronized data sample has a relative location in a preceding cycle that corresponds to the relative location of the current data sample in a current cycle.
The reference value may be an averaged value, possibly weighted, of two or more immediately preceding samples, or of two or more cycle-synchronized data samples, which thus may be obtained from two or more preceding cycles. In the following examples, the cycle-synchronized data samples are taken from one or more immediately preceding cycles. However, in principle, the cycle-synchronized samples may be taken from any preceding cycle(s), although greater accuracy may be achieved by using the cycle(s) closest in time to the current data sample, since it is likely that the these cycle(s) are generated at similar operational conditions as the current cycle, e.g. with respect to pumping rate, average fluid pressure, compliance volumes, pump occlusion, etc. In the examples described below, the reference value is generated based on cycle-synchronized samples taken from preceding cycle(s) with a fixed and predetermined relation to the current cycle. However, in a variant, a selection mechanism may be implemented to dynamically select the preceding cycle(s) to be used for obtaining the cycle-synchronized samples, e.g. by comparing the operational conditions (pumping rate, average fluid pressure, etc) of the current cycle to each of a set of preceding cycles. The dynamic selection of preceding cycle(s) may be simply implemented by dynamically setting a weight factor for each cycle-synchronized sample when calculating the average value (cf. the filter structures in
The effectiveness of the inventive filtering is exemplified in
In the following, exemplifying embodiments for estimating or generating the first pulse contribution (pump pulse contribution) at a given time and for extracting second (physiological) pulses of a pressure signal will be explained.
Example I. Reference Value Based on a Corresponding Cycle-Synchronized Sample of the Immediately Preceding Pulse Cycle
The sequence of output samples generated as the process in
It is to be understood that the filter structure 31 in
Example II. Reference Value Based on Corresponding Cycle-Synchronized Samples of Multiple Preceding Pulse Cycles
The procedure is repeated for current sample C2 and its cycle-synchronized data samples P12, P22 and P32 shown in
In the example with a peristaltic pump, the first preceding cycle-synchronized data sample P11, P12 and P13, respectively (cf.
The filter structure 31 in
Example III. Reference Value Based on Prediction of Samples Adjacent to the Current Sample
Two or more immediately preceding data samples may be used for the prediction or extrapolation. In principle, any previous values may be taken as basis for the prediction or extrapolation of the current data sample, although greater accuracy may be achieved by selecting the preceding data samples closest in time to the current data sample.
The weight factors are suitably set such that the predicted reference value is generated as a function of both the rate of change (derivative) among the preceding data samples and the absolute level among the preceding data samples. For example, reverting to
The filtering technique according to the third example may be particularly useful when the second pulses are weak relative to the first pulses, e.g. when the magnitude (amplitude) ratio of second pulses to first pulses is less than about 10%, 5% or 1%. With increasing M, the ability of this filtering technique to remove relatively stronger second pulses may be improved.
A variant is obtained by including a block 34 that adaptively determines the weight factors, e.g. as shown and described in relation to
A general property of including an adaptive filter 36 in the filter structure 31, e.g. as shown in
Example IV. Recursive Filtering
A fourth example involves a recursive method where the average from previous calculations of the reference values is re-used as a first part together with an additional value as a second part to derive a new average which is then subtracted from a current data sample. This procedure may be repeated for each consecutive time step to isolate the second pulses, if present in the pressure signal. Such a recursive filtering may be implemented by a filter structure 31 as shown in
Definition of a Kalman Filter
A Kalman filter is in general used to estimate the states in a dynamic system from measurements. Depending on the structure of the dynamic system it may be possible to estimate any number of states from just a single measurement using knowledge about the system structure. As used herein, m designates the number of states. The general structure of a dynamic system (with no control input and one output) in discrete time described in state space form is
x(n+1)=A(n)·x(n)+v(n)
d(n)=C(n)·x(n)+e(n) (1)
The m states are collected in the vector x, and the measurement d is in our case a scalar, but may in the general case be a vector of any length. The matrix A and vector C determine the structure of the system, and may (as indicated in Eq. 1) be time varying. The disturbances v and e are random vectors of the same dimensions as x and d respectively, and have zero mean values and covariances R and σ2, respectively.
The Kalman filter may be configured such that each element in state vector x(n) corresponds to one of the reference values within a current pulse cycle. The Kalman filter is thereby configured to, during each pulse cycle, estimate m reference values collected in the vector {circumflex over (x)}:
Here, {circumflex over (d)}(n) is the estimation made at time n−1 of the first pulse contribution at time n, and d(n) is the current data sample at time n. The expression for K(n) contains a matrix P(n) which is the covariance of the estimation error at time n, i.e. an estimate of the size of the error. It is calculated from:
It may be advantageous to identify a structure in which the matrix A and vector C are constant in time, since matrix P and vector K then converge to constant values which may be calculated in advance.
Application of a General Kalman Filter to Estimation of the First Pulse Contribution
Each data sample d within the pulse cycle is associated with one state in the model to be estimated. At each point in time, one of these data samples is measured with an error that also includes the effect of the second pulses.
If we assume that the first pulses are constant in time, i.e. the shape being identical from cycle to cycle, then the model of the states is that the states are constant. Hence, matrix A is not only constant, but also identical to the identity matrix, which is a particularly simple matrix that will disappear in all of Equations 1-3 above. With this model one state after the other is measured. Hence, the vector C will not be constant and will change between each measurement. When measuring the first state x1 the vector C will be (1 0 0 0 0 . . . 0), and when the next state x2 is measured it will be (0 1 0 0 . . . 0) and so on.
A Kalman Filter with Constant Parameters
In continuation of the above, it is also possible to find a model where both A and C are constant, which would be advantageous since matrix P and vector K then converge to constant values which may be calculated in advance as indicated above. This is achieved by successively changing the numbering of the states as we change which point is measured. For example, the state that is currently measured may be consistently denoted by x1. For each new data sample, the states are then renumbered. For instance, at the next time interval, the second state is set to the first state, the third state is set to the second state and so on until the last state, which is set to the first state. For m=4 (as an example) this is accomplished by choosing:
With this definition of the C vector, Eq. 2 yields {circumflex over (d)}(n)={circumflex over (x)}1(n), where {circumflex over (x)}1(n) denotes the estimation of the first state. If we assume that the sequence of first pulses are identical, R may be set to zero, i.e. R=0, representing no noise present in the state for the next time interval, i.e. the next state is exactly the same as the previous state was at the last time interval (x1(n+1)=x2(n), x2(n+1)=x3(n) and so on). Generally however, the measurement noise e is never zero since there will always be some error in the pressure signal and it also contains the varying second pulses.
In practice, it may be assumed that the first pulse profile changes slightly during a measurement session, although involving a very small change between pulse cycles. Hence, R may be set to a very small number. In addition, it can be seen from Eq. 2 and Eq. 3 that it is only the ratio of the covariances R and σ2 that matters. The actual value that should be used for this ratio may be determined from practical tests so that the mobility of the profile estimates become reasonable.
With the covariances and the matrix A and vector C determined, the first pulse profile estimates {circumflex over (x)} are determined by the initial values for the estimate and for P, and by the measurements (data samples) d. The initial state estimate is normally not known, and the initial value of P may be set to a very large number since it should reflect the uncertainty in the initial estimate. With a very large P, the initial state estimate may be set to zero, since it will immediately be corrected in the next time step. Normally P is thus initially set to a diagonal matrix with large elements, e.g. 1000.
With A and C given by Eq. 4 (for any m), and P started as a diagonal matrix, P will continue to be diagonal matrix throughout the remaining steps. The vector K will then have zeros in all elements except the last one. The matrix P will converge to a constant matrix
Comparison to a Set of First Order Filters
With the preceding description, all K vector elements except the last one is zero. Hence, all estimates except the last one will be renumbered without any update. Only the next value of the last state will be updated according to the measurement d since state number one will be the last state at the next time interval, when the current state number two will be state number one which will then be updated at the next time interval. Hence, each point in the first pulse will be updated once for each full set of measurements of all states. After the K vector has converged, we get:
{circumflex over (x)}1(n+1)={circumflex over (x)}i+1(n) for all i=1 . . . m−1 (5)
whereas
{circumflex over (x)}m(n+1)={circumflex over (x)}1(n)+k·[d(n)−{circumflex over (d)}(n)] (6)
Combining Eq. 5 and 6 yields:
{circumflex over (x)}m(n+m)={circumflex over (x)}1(n)+k·└d(n)−{circumflex over (d)}(n)┘ (7)
which is equal to
{circumflex over (d)}(n+m)={circumflex over (d)}(n)+k·└d(n)−{circumflex over (d)}(n)┘ (8)
This is thus the update we get of the state each time, i.e. every mth measurement, we have a new measurement relating to this point in the pulse cycle. This is the same structure as a normal first order filter, with a time constant of 1/k sample intervals, e.g. corresponding to the time for a full rotor revolution in the case of a peristaltic pump.
From the equations above, it may be shown that K will converge to a value given approximately by k2=m*R/σ2, as long as it is far below 1 as it should be. The Kalman filter above may then be replaced with a set of m first order filters with a time constant of 1/k sample intervals.
It can be shown that the data processing according to Eq. 8 may be implemented by combining the structures of
Elimination of Slow Drifts Using Extra States
In addition to comprising pulses from first and second pulse generators, a component may also be present which is attributable to a slow drift from, e.g., influence from the dialysis fluid side of the dialyzer (cf. 6 in
xm+1(n+1)=xm+1(n)+vm+1(n) (9)
There is no coupling between this extra state and the other states, and the A matrix is augmented with one extra column and one extra row where all elements are zero except the new diagonal element which is one. The extra state then enters into the measurement equation through an extension of the C vector with an extra 1 at the end
d(n)=x1(n)+xm+1(n)+e(n)=C·x(n)+e(n)=(1 0 0 0 1)·x(n)+e(n) (10)
Optionally, yet another state may be used to estimate the slope of the drift. The model would then assume that the level of the drift is not constant, but is changed by its slope at each new point in time. Instead, the slope would be assumed to be a constant with added noise at each new point in time. With the new state for the slope denoted xm+2 and the level still being xm+/we would get the drift model
xm+1(n+1)=xm+1(n)+xm+2(n)
xm+2(n+1)=xm+2(n)+vm+2(n) (11)
This model is incorporated in the total model by adding two rows and two columns to the original A matrix, where all elements in the first m rows and columns are zero, the two last columns of the penultimate row are both 1, and of the last row 0 and 1 respectively. The covariance value in the matrix R for element m+1 is zero. The measurement equation is only changed by adding one more zero to the C vector since the slope does not enter directly, only through the magnitude.
Elimination of Slow Drifts by Differencing
In the Kalman filter technique described above, the drift in the first pulse profile is estimated as a separate state, which is not coupled to the first pulse. This state cannot be allowed to change too quickly since it incorporates all the measurement noise as well. Additionally, the P matrix will no longer be diagonal, even if the initial value is diagonal, when the extra state is included in the model, rendering the computations more complex and processor demanding.
A different approach utilizes the fact that drift in the first pulse profile may often be deduced from the previous data samples, and assumes that the deviation from the first pulse profile is the same in the next sample. Hence, the deviation from the first pulse profile in one sample may be used to predict the expected deviation in the next sample. This may be achieved by estimating the consecutive differences in the first pulse profile instead of the first pulse profile itself. This may be done using the same equations as above, but with the measurement d(n) now being replaced by the change in pressure value from the previous value to the current one, i.e. d(n)−d(n−1). Thus, step 202 in
In such an implementation, {circumflex over (d)}(n) is the estimation of the change in the first pulse contribution at time n. In this approach, the predicted value of the current first pulse contribution will be the sum of the previously measured pressure value and the current estimate of the state x1, instead of only the current estimate of the state x1. To generate the output sample representing the second pulse contribution at time n, {circumflex over (d)}(n) may be subtracted from the change in pressure value, d(n)−d(n−1). The estimation of the change is then updated according to Eq. 8 above:
d(n+m)={circumflex over (d)}(n)+k·└(d(n)−d(n−1))−{circumflex over (d)}(n)┘. (12)
In principle, any previous values may be taken as basis for the prediction or extrapolation of the current data sample, although greater accuracy may be achieved by selecting the preceding data sample closest in time to the current data sample.
Elimination of Slow Drifts by High Pass Filtering
As an alternative to the use of differencing, slow drifts in the first pulse profile may be removed by high pass filtering of e(n)=d(n)−{circumflex over (d)}(n) to remove a major part of slow variations. For example, when applied for the purpose of isolating heart pulses in a pressure signal containing signal contributions from a blood pump, a heart and other slower physiological phenomena (such as the effect of breathing), such an embodiment may be optimized to suppress the signal contributions from both the blood pump and the slower physiological phenomena. In this example, the cut off frequency of the high pass filter may have to be well below any low heart rate, e.g. at 0.6 Hz. A further possibility, possibly in combination with the removal of slow disturbances, may be to use a notch filter to eliminate any undesirable residual signal contributions that may remain in the output samples from the Kalman filter.
For the purpose of conceptually explaining embodiments of the present invention, the pressure signal may be said to contain a sequence of “apparent pulses”, which are pressure pulses formed by a superposition of first pulses and second pulses when the connection system C is intact, i.e. when a fluid connection is established between the first subsystem S1, e.g. an extracorporeal blood circuit, and the second subsystem S2, e.g. the cardiovascular system of a human subject. The apparent pulses are defined in relation to the above-mentioned pulse cycles, such that each pulse cycle includes one and only one apparent pulse which extends a full pulse cycle. In the examples given herein, it is presumed that the apparent pulses are dominated by the first pulses, such that the first pulses provide a basic shape of the apparent pulses which is modified by the second pulses. However, it is not necessary that the first pulses dominate over the second pulses. When the connection system C is not intact, the apparent pulses are made up of only first pulses (and measurement noise).
Each pressure sensor 4a-4d in
The apparent profiles may be referred to as a “current apparent profile” and “preceding apparent profiles”.
Although embodiments of the invention are generally applicable to other situations, the examples herein are given in relation to first pulses that originate from a (peristaltic) blood pump in an extracorporeal blood treatment system and second pulses that originate from the beating of the heart of a human subject connected to the extracorporeal blood treatment system, e.g. via a vascular access. As used herein, the first pulses may also be denoted “pump pulses” or “pump profiles” (or more generally, “interference pulses” and interference profiles”) and the second pulses may also be denoted “heart pulses” and “heart profiles” (or more generally, “physiological pulses” or “physiological profiles”).
The embodiment in
The embodiment in
Reverting to
Sampling
Since timing of the pump rotations, both complete rotations and interval between the pump rollers, may not always be constant, the preceding data samples may not always have the same timing within the cycle as the current data sample. In one embodiment, denoted “resembled synchronous sampling” herein, this is remedied by post-processing to adjust the time scale, i.e. by resampling among the data samples, in order to obtain alignment of the current and preceding data samples on the respective cycles. In other words, first data samples that are acquired (sampled) from the pressure signal without (or with insufficient) synchronization with the pump rotation, are subjected to a resampling that generates signal values at a respective given timing (location) within each cycle using interpolation among the first data samples.
The resampling may be facilitated by the use of a timing signal (denoted “tacho-signal” in the following) which is synchronised with the operation of the first pulse generator, e.g. with the angular rotation of the pump rollers of a peristaltic pump. In the tacho-signal, the data samples are associated with a consecutive count which is reset to zero at the same location within each cycle. The total count is the same for each cycle, e.g. in the order of ten thousand counts per cycle. The use of a tacho-signal may improve the time determination of roller revolutions, and thereby also the subtraction process.
In one implementation, the pressure signal is resampled to a rate which is associated with the rotational velocity of the rollers. If the tacho-signal is reset at a same location of the rollers for each cycle, a predefined number of desired sampling points, e.g. 50, may be defined equally distributed between consecutive zero-settings of the tacho-signal, and an interpolation may be performed to find the pressure values (data samples) at these intermediate time points.
When sampling a high frequency signal slowly, the sampling time points will appear to be spread out randomly along the signal, which will result in that the sampled signal will comprise a low frequency instead. This aliasing phenomenon is avoided if the highest frequency in the pressure signal is less than half the sampling frequency, commonly referred to as the Nyquist frequency. Thus, before the sampling, it may generally be preferable to low-pass filter the pressure signal to avoid including frequencies which are higher than half the sampling frequency.
If a tacho-signal is not available, recorded pressure data may instead be analysed for peak detection to determine roller cycle intervals. This may however be obstructed by physical pulses shifting the peaks slightly in time, adding uncertainty to the detection.
In another embodiment, denoted “synchronous sampling” herein, the data samples are sampled synchronously with the motion of the pump revolutions, i.e. at the same respective locations along the circle spanned by the rollers of the pump. The synchronous sampling may be controlled based on the above-mentioned tacho-signal.
Synchronous sampling or resembled synchronous sampling may be of less importance when the sample rate is sufficiently high. For instance, a sample rate of 1000 Hz may be sufficient, i.e. 1000 measurement values or samples registered each second, which represents 1 ms between each sample. For instance, a signal with a sample rate of 1000 Hz which is not resampled to exactly match the exact pump cycles would generate a maximum error, or deviation from the correct value, of only 0.5 ms. Thus, in particular at high sample rates, the inventive technique may be implemented without synchronous sampling or resembled synchronous sampling such that the one or more cycle-synchronized data samples in one or more preceding cycles have a respective location (“best approximation”) that may deviate slightly from the exact location of a current data sample in a current pulse cycle. The use of neighbourhood aggregation may further reduce the need for synchronous sampling or resembled synchronous sampling.
Monitoring in an Extracorporeal Blood Flow Circuit
Below, an extracorporeal blood flow circuit is presented with reference to
In the illustrated example, the extracorporeal circuit 20 comprises the connector C1b, an arterial tube segment 2b, and a blood pump 3 which may be of peristaltic type, as indicated in
Herein, the “venous side” of the extracorporeal circuit 20 refers to the part of the blood path located downstream of the blood pump 3, whereas the “arterial side” of the extracorporeal circuit 20 refers to the part of the blood path located upstream of the blood pump 3. In the example of
In
Further, in
A detection of a fault condition may bring the device 25 to activate an alarm and/or stop the blood flow, e.g. by stopping the blood pump 3 and activating one or more clamping devices 13 (only one shown) on the tube segments 2a, 2b, 5, 10, 12a, 12b.
As indicated in
In
Embodiments of the invention relate to the monitoring/surveillance carried out by the surveillance device 25, based on the pressure signal. In one example, the monitoring may aim at detecting a disruption of the connection system C between the circuit 20 and the vascular system of the patient, i.e. on either the venous-side or the arterial-side, or both. The disruption may be caused by a dislodgement of the venous or arterial access device 1, 14 from the blood vessel access, i.e. that the access device 1, 14 comes loose from the vascular system of the patient. Alternatively, the disruption may be caused by a disconnection of the venous or arterial access device 1, 14 from the circuit 20, typically by disruption/defective coupling/uncoupling of the connectors C1a, C1b and C2a, C2b, respectively.
With embodiments of the present invention, a functional state or functional parameter of the fluid containing system may be monitored by analysing the filtered signal formed by the above-mentioned sequence of output samples, e.g. by isolating and analysing one or more second pulses in the filtered signal. Valuable information concerning the fluid containing system may also be derived from a detected absence of second pulses.
In extracorporeal blood flow circuits for instance, venous needle dislodgment (VND) may be detected by recognizing that the filtered signal, obtained by processing the pressure signal from the venous pressure sensor 4c, ceases to comprise second (heart and/or breathing) pulses. Various techniques for analysing the filtered signal may be used, for instance by recognizing that the signal magnitude in the filtered signal is below a predetermined threshold, by recognizing that the energy in the filtered signal falls and remains below a threshold for a certain period of time, by identifying a reduced correlation between second pulses in filtered signals obtained from venous and arterial pressure signals indicating loss of the second pulses in the venous pressure signal, by operating statistical techniques on the filtered signal, e.g. to identify a decreased spread of signal values in the filtered signal caused by a lack of second pulses. Additional details of these and other techniques for detecting dislodgment are disclosed in WO97/10013 and WO2009/156174, which are incorporated herein by reference.
To the extent that the pressure signal contains both first and second pulses, the filtered signal will include the second pulses, or part thereof, which may be evaluated for various characteristics for monitoring a functional state or functional parameter of the cardiovascular system of the subject in the case where the second pulses comprise physiological pulses, such as heart pulses, breathing pulses or blood pressure regulating pulses. Such uses of the filtered signal include detecting, presenting, tracking and predicting vital signs, e.g. cardiac or respiratory related such as hypotension prediction, cardiac output and access flow monitoring and blood pressure monitoring, or disordered conditions of the subject such as sneezing, hiccups, vomiting, coughing, blood pressure turbulence, ectopic beats, lack of autonomous regulation, hypotension, disordered breathing, sleep apnea, periodic breathing, hyperventilation, asthmatic attacks, dyspnea, and Cheyne-Stokes respiration. All of these uses or applications may be based on an extraction and analysis of the shape and/or the magnitude and/or the timing of the second pulses in the filtered signal, e.g. as disclosed in WO2010/149726, WO2011/080186, WO2011/080189, WO2011/080190, WO2011/080191 and WO2011/080194, all of which are incorporated herein by reference.
Analysis of the second pulses may also be used to identify a fault condition, e.g. in the connection system C, such as reversed positioning of the access needles 1, 14, where e.g. the shape and/or timing of second pulses may be evaluated for determining the positioning of the needles 1, 14, e.g. as disclosed in WO2011/080188, which is incorporated herein by reference.
The invention has mainly been described above with reference to a few embodiments. However, as readily appreciated by a person skilled in the art, other embodiments than the ones disclosed above are equally possible with the scope and spirit of the invention, which is defined and limited only by the appended patent claims.
For example, the reference value may be calculated as a function of subsequent data samples instead of (or in addition to) preceding data samples, e.g. if a time sequence of data samples is continuously or intermittently buffered in electronic memory (cf. 25b in
Furthermore, the pressure signal may originate from any conceivable type of pressure sensor, e.g. operating by resistive, capacitive, inductive, magnetic or optical sensing, and using one or more diaphragms, bellows, Bourdon tubes, piezo-electrical components, semiconductor components, strain gauges, resonant wires, accelerometers, etc.
Although
Further, the inventive technique is applicable for monitoring in all types of extracorporeal blood flow circuits in which blood is taken from the systemic blood circuit of the patient to have a process applied to it before it is returned to the patient. Such blood flow circuits include circuits for hemodialysis, hemofiltration, hemodiafiltration, plasmapheresis, apheresis, extracorporeal membrane oxygenation, assisted blood circulation, and extracorporeal liver support/dialysis. The inventive technique is likewise applicable for monitoring in other types of extracorporeal blood flow circuits, such as circuits for blood transfusion, infusion, as well as heart-lung-machines.
The inventive technique is also applicable to fluid systems containing other liquids than blood.
Further, the inventive technique is applicable to remove pressure pulses originating from any type of pumping device, not only rotary peristaltic pumps as disclosed above, but also other types of positive displacement pumps, such as linear peristaltic pumps, diaphragm pumps, as well as centrifugal pumps. In fact, the inventive technique is applicable for removing pressure pulses that originate from any type of periodic pulse generator, be it mechanic or human.
Likewise, the inventive technique is applicable to isolate pressure pulses originating from any type of pulse generator, be it human or mechanic.
The inventive technique need not operate on real-time data, but could be used for processing off-line data, such as a previously recorded measurement signal.
Number | Date | Country | Kind |
---|---|---|---|
1150604 | Jun 2011 | SE | national |
This application is the U.S. national phase of International Application No. PCT/EP2012/061765 filed 20 Jun. 2012 which designated the U.S. and claims priority to U.S. Patent Application Ser. No. 61/502,878 filed 30 Jun. 2011 and SE 1150604-5 filed 30 Jun. 2011, the entire contents of each of which are hereby incorporated by reference.
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/EP2012/061765 | 6/20/2012 | WO | 00 | 5/5/2014 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2013/000777 | 1/3/2013 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
4642800 | Umeda | Feb 1987 | A |
4667680 | Ellis | May 1987 | A |
5486286 | Peterson | Jan 1996 | A |
5649536 | Ogura | Jul 1997 | A |
6083172 | Baker, Jr. et al. | Jul 2000 | A |
6090048 | Hertz | Jul 2000 | A |
6536260 | Williams | Mar 2003 | B2 |
6741887 | Gleeson | May 2004 | B1 |
7250025 | Nigroni et al. | Jul 2007 | B2 |
9442036 | Furmanski | Sep 2016 | B2 |
20040138538 | Stetson | Jul 2004 | A1 |
20050010118 | Toyoda | Jan 2005 | A1 |
20060047201 | Eide | Mar 2006 | A1 |
20060211942 | Hoctor et al. | Sep 2006 | A1 |
20080004904 | Tran | Jan 2008 | A1 |
20080091118 | Georgopoulos | Apr 2008 | A1 |
20090069647 | McNames et al. | Mar 2009 | A1 |
20110106466 | Furmanski | May 2011 | A1 |
Number | Date | Country |
---|---|---|
9710013 | Mar 1997 | WO |
0072750 | Dec 2000 | WO |
2009156174 | Dec 2009 | WO |
2010149726 | Dec 2010 | WO |
Entry |
---|
Prosecution history of U.S. Appl. No. 13/001,314 (now issued U.S. Pat. No. 9,442,036) filed Dec. 23, 2010. |
Prosecution history of U.S. Appl. No. 13/380,631 (now issued U.S. Pat. No. 9,433,356) filed Mar. 16, 2012. |
Prosecution history of U.S. Appl. No. 14/129,087 (now issued U.S. Pat. No. 9,427,513) filed Apr. 11, 2014. |
Prosecution history of U.S. Appl. No. 12/988,146 (now issued U.S. Pat. No. 8,718,957) filed Oct. 15, 2010. |
Prosecution history of U.S. Appl. No. 13/000,856 (now issued U.S. Pat. No. 8,715,216) filed Dec. 22, 2010. |
Prosecution history of U.S. Appl. No. 14/270,246 (now issued U.S. Pat. No. 9,383,288) filed May 5, 2014. |
Prosecution history of U.S. Appl. No. 13/519,532, filed Sep. 12, 2012. |
Prosecution history of U.S. Appl. No. 14/123,397, filed Dec. 2, 2013. |
Prosecution history of U.S. Appl. No. 13/519,483, filed Sep. 13, 2012. |
Prosecution history of U.S. Appl. No. 13/519,559, filed Sep. 12, 2012. |
Prosecution history of U.S. Appl. No. 14/408,849, filed Dec. 17, 2014. |
Prosecution history of U.S. Appl. No. 14/651,730, filed Jun. 12, 2015. |
Prosecution history of U.S. Appl. No. 14/777,695, filed Sep. 16, 2015. |
Prosecution history of U.S. Appl. No. 14/917,099, filed Mar. 7, 2016. |
Prosecution history of U.S. Appl. No. 15/104,861, filed Jun. 15, 2016. |
Number | Date | Country | |
---|---|---|---|
20140231319 A1 | Aug 2014 | US |
Number | Date | Country | |
---|---|---|---|
61502878 | Jun 2011 | US |