Discrete state-space filter and method for processing asynchronously sampled data
AssigneeRaytheon Company
InventorDaniel J. Mosier
Life of this patent
Estimating the term…
Abstract
A discrete state-space filter directly applies a linear transfer function that describes the frequency-domain representation of an IIR filter or control plant to asynchronously sampled data. The discrete state-space technique maps a continuous time transfer function into the discrete state-space filter and stores the states of the filter in a sample-time independent fashion in a discrete state-space vector. The filter states are propagated with the asynchronous time measurements provided with the input data to generate the filtered output.
Claims25
A method of discrete time filtering asynchronously sampled data, comprising:
- a) mapping the coefficients of a linear frequency-domain transfer function H(s) into a continuous-time state-space representation;
- b) initializing a discrete state vector Xk that stores filter states independent of sample-time;
- c) sampling by an A/D conventer an analog signal to produce a sequence of asynchronous data samples, each said sample having an amplitude uk and time measurement Δtk;
- d) updating a discrete state transition matrix Φk and a discrete input matrix Γk from the continuous state-space representation and the time measurement Δtk of the input data sample, said discrete state transition matrix Φk defining the extent the previous discrete state vector will affect the current state vector and said discrete input matrix Γk defining the extent the previous filter state is expected to change due to input data sample;
- e) updating the discrete state vector Xk by propagating the filter states in the previous state vector Xk-1 with the time measurements within the discrete state transition matrix Φk and summing with the sample amplitude uk weighted by the discrete input matrix Γk;
- f) calculating at least at least one output data sample amplitude yk from the updated discrete state vector Xk, the sample amplitude uk and continuous-time state-space representation;
- and
- g) repeating steps d through f for the next asynchronous data sample.
A method of processing asynchronously sampled data, comprising:
- a) mapping the coefficients of a linear frequency-domain transfer function H(s) that describes the s-domain representation of an infinite impulse response (IIR) filter or a linear control plant into a continuous-time state-space representation including a state transition matrix A, an input gain matrix B, an output gain matrix C and a input-to-output gain matrix D;
- b) receiving an amplitude uk and time measurement Δtk of a kth data sample;
- c) updating a discrete state transition matrix Φk=eA*Δtk using a first order approximation of the matrix exponential eA*Δtk and a discrete input matrix Γk=(Φk−I)*A−1*B where I is the identity matrix;
- d) updating a discrete state vector Xk=Φk*Xk-1+Γk*uk;
- e) calculating an output amplitude yk=C*Xk+D*uk;
- and
- f) repeating steps b through e for the next k+1 asynchronous data sample.
A method of using a discrete state-space representation of a linear transfer function including a discrete state transition matrix Φ and a discrete input matrix Γ to update a discrete state vector Xk and calculate a output sample yk where Φk defines the extent the previous discrete state vector will affect the current state vector and Γk defines the extent the previous filter state is expected to change due to input data sample, comprising for each kth input data sample uk having a time measurement Δtk:
- updating by a coefficient arithmetic unit (CAU) the discrete state transition matrix Φk=eA*Δtk using a first order approximation of the matrix exponential eA*Δtk where A is a state transition matrix of the continuous-time state-space representation of the linear transfer function;
- updating by the CAU the discrete input matrix Γk=(Φk−I)*A−1*B where I is the identity matrix and B is the input gain matrix of the continuous-time state-space representation of the linear transfer function;
- and
- updating by a filter core the discrete state vector Xk=Φk*Xk-1+Γk*uk.
A discrete time filter for processing asynchronously sampled data, comprising:
- a coefficient arithmetic unit (CAU) configured to receive a portion of a continuous-time state-space representation of a linear frequency-domain transfer function H(s) and a time measurement Δtk of each successive data sample and to update a discrete state transition matrix Φk and a discrete input matrix Γk from the continuous state-space representation and the time measurement of the data sample, said discrete state transition matrix defining the extent the previous discrete state vector Xk-1 will affect the current state vector Xk and said discrete input matrix defining the extent the previous state is expected to change due to input data sample;
- and
- a filter core that stores filter states sample-time independently in a discrete state vector Xk, said core configured to receive the updated discrete state transition matrix Φk and the discrete input matrix Γk from the CAU, an amplitude uk of the data sample and another portion of the continuous-time state-space representation, to update the discrete state vector Xk by propagating the filter states in the previous state vector Xk-1 with the time measurements within the discrete state transition matrix Φk and summing with the sample amplitude uk weighted by the discrete input matrix Γk, and to calculate an output data sample amplitude yk as a function of the updated discrete state vector Xk, the sample amplitude uk and the another portion of the continuous-time state-space representation.
Dependencies are inferred from the claim text.