Kalman, White Noise, Sensor Specification, Discretization?

In summary: It seems like the "power spectrum" would be the same for both graphs. In fact, I don't think white noise has a "power spectrum" in the sense that a periodic function has a "power spectrum".I'm not sure why, in section 8.1, Simon is talking about Qc and Rd. I thought the question was about Qd and Rc. I don't have an answer to your question, but I am curious about the notation Qc and Qd. To me, Qd would be a matrix of numbers that describe how big the jumps are in the noise. If you simulate noise at 1/10
  • #1
Hare
3
0
Hi.

I have a few questions about sensor specifications and its implementation in a Kalman Filter and simulation of gyroscope/accelerometer output.

Abbreviation used:
d - discrete
c - continuous

Q1:
From book: Aided Navigation - Farrell (you don't need the book to understand the question).

Section 7.2 Methodology: Detailed Example:
Here
[itex]\sigma_1[/itex], [itex]\sigma_{bu}[/itex] and [itex]\sigma_{by}[/itex] are root PSD of continuous white noise.
[itex]\sigma_2[/itex] is std. deviation of discrete white noise.

[itex]Qc[/itex] = diag([[itex]\sigma_{bu}^2[/itex] [itex]\sigma_{by}^2[/itex] [itex]\sigma_1^2[/itex] ])
[itex]Qd[/itex] = function of [itex]Qc[/itex] and sampling time

[itex]Rd[/itex] = [itex]\sigma_2^2[/itex]

This I understand, but not section 7.4.

Section 7.4 An Alternative Approach:
Same sigma values as above, plus
[itex] sigma_3[/itex] is root PSD of continuous white noise.

Qc = diag([[itex]\sigma_{bu}^2[/itex] [itex] \sigma_{by}^2[/itex] [itex] \sigma_3^2[/itex]])
Qd = function of Qc and sampling time

Rd =[itex] \sigma_1^2[/itex]
and later
Rd = diag([[itex]\sigma_2^2[/itex] [itex] \sigma_1^2[/itex]])

a)
Can you just use [itex]\sigma[/itex] in Rd no matter if it's std. deviation for discrete white noise ([itex]\sigma_2[/itex]) or root PSD of continuous white noise([itex]\sigma_1[/itex])?
b)
Shouldn't [itex]\sigma_1[/itex] be "discretizised" or something?


Q2:
If you get noise specification for the sensor noise from PSD method, Allan Variance method or data sheet, it is for continuous white noise. Is this correct?

Q3:
How do you simulate the output of a sensor in e.g. Matlab/simulink if you have noise specification in continuous time?

Q4:
When we discretizise a stochastic linear system, we get:
Qd = f(Qc, A, T)
Rd = Rc
(http://en.wikipedia.org/wiki/Discretization)
I don't understand why Rd = Rc?

Q5:
In the book: Optimal State Estimation - Kalman, Hinf and Nonlinear Approaches - 2006 - Dan Simon, section 8.1 DISCRETE-TIME AND CONTINUOUS-TIME WHITE NOISE, it says:

"... discrete-time white noise with covariance Qd in a system with a sample period of T, is equivalent to continuous-time white noise with covariance Qc*[itex]\delta[/itex] (t) (*[itex]\delta[/itex] (t): dirac delta function), where Qc = Qd / T."

"... Rd = Rc / T ... This establishes the equivalence between white measurement noise in discrete time and continuous time. The effects of white measurement noise in discrete time and continuous time are the same if
v(k) ~ (0,Rd)
v(t) ~ (0,Rc)
"
How does this relate to my other questions? It seems to suggest that Rd [itex]\neq[/itex] Rc as Q4 suggests.


Best Regard
Jonas
 
Physics news on Phys.org
  • #2
Any experts out there?
 
  • #3
I'm not an expert in you topic, but I'd find it interesting to chat about it until one comes along.


Hare said:
Hi.

I have a few questions about sensor specifications and its implementation in a Kalman Filter and simulation of gyroscope/accelerometer output.

Abbreviation used:
d - discrete
c - continuous

Q1:
From book: Aided Navigation - Farrell (you don't need the book to understand the question).

Maybe an navigation engineer doesn't need a the book! - but this isn't the engineering section of the forum.

Section 7.2 Methodology: Detailed Example:
Here
[itex]\sigma_1[/itex], [itex]\sigma_{bu}[/itex] and [itex]\sigma_{by}[/itex] are root PSD of continuous white noise.
[itex]\sigma_2[/itex] is std. deviation of discrete white noise.

[itex]Qc[/itex] = diag([[itex]\sigma_{bu}^2[/itex] [itex]\sigma_{by}^2[/itex] [itex]\sigma_1^2[/itex] ])
[itex]Qd[/itex] = function of [itex]Qc[/itex] and sampling time

[itex]Rd[/itex] = [itex]\sigma_2^2[/itex]

This I understand, but not section 7.4.

I don't understand from that description, what equations relate those quantities to each other.


Section 7.4 An Alternative Approach:
Same sigma values as above, plus
[itex] sigma_3[/itex] is root PSD of continuous white noise.

Qc = diag([[itex]\sigma_{bu}^2[/itex] [itex] \sigma_{by}^2[/itex] [itex] \sigma_3^2[/itex]])
Qd = function of Qc and sampling time

Rd =[itex] \sigma_1^2[/itex]
and later
Rd = diag([[itex]\sigma_2^2[/itex] [itex] \sigma_1^2[/itex]])

a)
Can you just use [itex]\sigma[/itex] in Rd no matter if it's std. deviation for discrete white noise ([itex]\sigma_2[/itex]) or root PSD of continuous white noise([itex]\sigma_1[/itex])?
b)
Shouldn't [itex]\sigma_1[/itex] be "discretizised" or something?

Again, I don't know the equations that your are using.


Q2:
If you get noise specification for the sensor noise from PSD method, Allan Variance method or data sheet, it is for continuous white noise. Is this correct?

For us non-engineeers, give a link to a specific data sheet where sensor noise is given. Perhaps we can learn what the specification means from an example.

Q3:
How do you simulate the output of a sensor in e.g. Matlab/simulink if you have noise specification in continuous time?

Unfortunately, I don't own Matlab or simulink. I can run the free software Octave which is similar.

Q4:
When we discretizise a stochastic linear system, we get:
Qd = f(Qc, A, T)
Rd = Rc
(http://en.wikipedia.org/wiki/Discretization)
I don't understand why Rd = Rc?

Are you saying that something in that article asserts Rd = Rc or are asking about material from Farell's book?

Q5:
In the book: Optimal State Estimation - Kalman, Hinf and Nonlinear Approaches - 2006 - Dan Simon, section 8.1 DISCRETE-TIME AND CONTINUOUS-TIME WHITE NOISE, it says:

"... discrete-time white noise with covariance Qd in a system with a sample period of T, is equivalent to continuous-time white noise with covariance Qc*[itex]\delta[/itex] (t) (*[itex]\delta[/itex] (t): dirac delta function), where Qc = Qd / T."

"... Rd = Rc / T ... This establishes the equivalence between white measurement noise in discrete time and continuous time. The effects of white measurement noise in discrete time and continuous time are the same if
v(k) ~ (0,Rd)
v(t) ~ (0,Rc)
"
How does this relate to my other questions? It seems to suggest that Rd [itex]\neq[/itex] Rc as Q4 suggests.

I don't know if you think about white noise the way electrical engineers often do, as a type of "power spectrum". I haven't learned to think of it that way.

My intuitive understanding of white noise goes like this. Suppose you wanted to simulate a white noise at 1 second time intervals by drawing a random number from some distribution. You do this an produce a graph. Then someone (say your boss) wants you to simulate "the same" noise but at a time step of 1/10 of a second. If you draw numbers from the same distribution at each 1/10 of a second, you get another jumpy graph. Maybe you think it looks OK. But suppose your boss is using the white noise in some other function that adds it up, like the simple sum of all the white noise jumps you provide. He probably won't think that you did a good job because in a time interval of a certain size , say 60 seconds, the graph of his function will look a more jumpy with your 1/10 th second noise that it did with the 1 second noise.

Suppose you try to fix this by scaling the numbers you draw. For 1/10 a second, you draw random numbers from the same distribution that you were using and then you divide the numbers by 10. This won't please the boss either. The graph of his function won't look jumpy enough. (Intuitively, this is because the jumps he gets at 1 second intervals is now the average of 10 draws at 1/10 second intervals which has a smaller variation that one draw per second.

The way to please your boss is to scale the numbers so their variance is 1/10 of the standard deviation of the original distribution. Then, according the law for finding the variance of a sum of independent random variables, the variation he gets a 1 second intervals is the sum of 10 terms, each of which has variance that is 1/10 of the variance he had at 1 second intervals. So he sees the same variability over a given time interval as he did with your 1 second noise.

If I want to talk about the variance of white noise, in the sense of a process that takes places in continuous time rather than at discrete steps, I think of the units of measure as being something-squared per unit time. Only when both units are established (e.g. feet and seconds) is the variance of the noise well defined.

I can't tell what the texts you presented are saying about Rc=Rd. An emprical measurment of noise at an arbitrary time step has the proper units for noise at a unit time step, e.g. 2.4 ft^2/ 2 secs = 1.2 ft^2/ 1 sec. But I don't know if that is what is being asserted.
 

1. What is the Kalman filter and how does it work?

The Kalman filter is a mathematical algorithm that is used to estimate the state of a system based on noisy measurements. It uses a series of predictions and updates to continuously refine the estimated state, taking into account both the measurements and the system dynamics.

2. What is white noise and how does it affect sensor measurements?

White noise is a type of random signal that has a flat power spectral density. In terms of sensor measurements, it refers to any random fluctuations or errors in the readings that are unrelated to the actual signal being measured. This can affect the accuracy and precision of the measurements and must be accounted for in the sensor specifications.

3. Why is it important to specify sensors when using the Kalman filter?

Specifying the sensors is crucial in order for the Kalman filter to accurately estimate the state of the system. The filter relies on the sensor measurements to make predictions and updates, so if the sensors are not properly specified, the filter may produce inaccurate results.

4. What factors should be considered when discretizing a system for the Kalman filter?

When discretizing a system for the Kalman filter, factors such as the system dynamics, sampling rate, and measurement noise should be taken into account. The discretization process involves approximating the continuous system with a discrete one, so it is important to carefully choose the discretization parameters to ensure accurate estimation.

5. Can the Kalman filter be used for non-linear systems?

Although the Kalman filter was originally designed for linear systems, there are extensions and modifications that allow it to be used for non-linear systems as well. These include the Extended Kalman Filter, the Unscented Kalman Filter, and the Particle Filter. However, the filter's performance may be affected by the complexity of the non-linear system and the accuracy of the system model.

Similar threads

  • Electrical Engineering
Replies
2
Views
991
  • Other Physics Topics
Replies
1
Views
1K
  • Special and General Relativity
Replies
15
Views
866
  • General Engineering
Replies
9
Views
5K
  • Mechanical Engineering
Replies
7
Views
21K
Back
Top