從牛頓力學來講,假使我們知道一個物體的『加速度』 ,而且如果『初始條件』︰該物位置在原點,速度為零。那麼任意時刻的『速度』是 ,『位置』為 。這麼簡易的算術有什麼重要嗎?若是我們可以『追跡物體 』,舉凡相機拍照的防震、手腳運動之練習、肢體平衡復健的監督﹐…… 實有著不勝枚舉之『用途』。然而『微機電』所作的『慣性感測器』 IMU ,一有免不了的『加速度』之『度量誤差』,此誤差在長『時間』的『積累』下將越來『錯誤』越大!再者那個『量測值』只能是『加速度』的『時間序列』 ,因此 到 時刻間之事也就不得不有『假設』的了!!就像此處問答所說的一樣︰
I am using a miniature car and I want to estimate the position. We can not use GPS modules and most of the tracking systems that I saw, are using IMU senson with the GPS module. In our car we are able to find our exact correct location with image processing but for some parts that dont have enough markings we can not do this. So we want to use the IMU as backup for our positioning. so as long as the positioning is close is good for us.
And we are only interested in our 2D position since the car is on a flat ground.
I am using a IMU 9DOF sensor and I want to calculate my movement. I have seen some amazing works with IMU for tracking body movements but no code or simple explanation is anywhere about it. So basically I have the reading from accelerometer, gyro and magnetometer. I also have orientation in quarternions. From the device I am getting also the linear acceleration but even when I am not moving it in any direction the values are not 0 which is really confusing.
Can you please help me how to approach this?
Thanks in advance
Update :
So right now we are getting the perfect heading from the quaternion values. We also have the delta_time between each heading. So what I believe we need right now is the velocity. either as a vector or as a total value.
|
|
asked Jan 17 ’14 at 10:14
|
───
Non-zero rates are normal for MEMS accelerometers and gyros. This is persistent error. It is eliminated by somehow making sure that the device is stationary for a couple of seconds (so the output can stabilize), then getting a reading. Henceforth, subtracting this steady-state error from all future measurements. Look up the datasheet of your sensor – there will be maximum values for this and other types of measurement tolerances.
Now, the much more complex subject of fusing the accelerometer, gyro and compass data. This can get hugely complicated, using Kalman filter, like Apolo once did. It can, however, be quite simple as well.
The general idea is that the magnetic sensor has slow response, low accuracy, but the error does not increase. On the other hand, a gyro’s output is velocity, which is integrated to get angular position. The error grows very fast – generally you can’t do dead reckoning for more than a minute with only a giro. The accelerometer is worse – it outputs acceleration, which gets integrated twice!
So, a simple fusing filter would be some linear combination of the readings of the accelerometer and compass, with the coefficient in front of the gyro descreasing over tyme.
Here is a discussion by much more knowledgeable people than me on the topic.
Note: What you are trying to do is called dead reckoning.
|
answered Jan 17 ’14 at 10:41
|
───
於是為了能夠更好的『應用』 IMU ,終將走入『數據處理』之路。『卡爾曼濾波』 Kalman filter
Kalman filtering, also known as linear quadratic estimation (LQE), is an algorithm that uses a series of measurements observed over time, containing statistical noise and other inaccuracies, and produces estimates of unknown variables that tend to be more precise than those based on a single measurement alone. The filter is named after Rudolf E. Kálmán, one of the primary developers of its theory.
The Kalman filter has numerous applications in technology. A common application is for guidance, navigation and control of vehicles, particularly aircraft and spacecraft. Furthermore, the Kalman filter is a widely applied concept in time series analysis used in fields such as signal processing and econometrics. Kalman filters also are one of the main topics in the field of robotic motion planning and control, and they are sometimes included in trajectory optimization. The multi-fractional order estimator is a simple and practical alternative to the Kalman filter for tracking targets.
The algorithm works in a two-step process. In the prediction step, the Kalman filter produces estimates of the current state variables, along with their uncertainties. Once the outcome of the next measurement (necessarily corrupted with some amount of error, including random noise) is observed, these estimates are updated using a weighted average, with more weight being given to estimates with higher certainty. The algorithm is recursive. It can run in real time, using only the present input measurements and the previously calculated state and its uncertainty matrix; no additional past information is required.
The Kalman filter does not require any assumption that the errors are Gaussian.[1] However, the filter yields the exact conditional probability estimate in the special case that all errors are Gaussian-distributed.
Extensions and generalizations to the method have also been developed, such as the extended Kalman filter and the unscented Kalman filter which work on nonlinear systems. The underlying model is a Bayesian model similar to a hidden Markov model but where the state space of the latent variables is continuous and where all latent and observed variables have Gaussian distributions.
……
就是早年發展重要的一種『數據處理』方法。也許下面一篇論文的『摘要』
Displacement profile estimation using low cost inertial motion sensors with applications to sporting and rehabilitation exercises
Abstract
This paper investigates two methods of displacement estimation using sampled acceleration and orientation data from a 6 degrees of freedom (DOF) Inertial Measurement Unit (IMU), with the application to sporting training and rehabilitation. Currently, the use of low cost IMUs for this particular application is very impractical due to the accumulation of errors from various sources. Previous studies and projects that have applied IMUs to similar applications have used a lower number of DOF, or have used higher accuracy navigational grade IMUs. Solutions to the acceleration noise accumulation and gyroscope angle error problem are proposed in this paper. A zero velocity update algorithm (ZUPT) is also developed to improve the accuracy of displacement estimation with a low grade IMU. The experimental results from this study demonstrate the feasibility of using an IMU with loose tolerances to determine the displacement. Peak distances of a range of exercises are shown to be measured with accuracies within 5% for the numerical integration methods.
Keywords
estimation, profile, displacement, sporting, applications, sensors, motion, inertial, exercises, cost, rehabilitation, low
Disciplines
Engineering | Science and Technology Studies
Publication Details
J. Coyte, D. A. Stirling, M. Ros, H. Du & A. Gray, “Displacement profile estimation using low cost inertial motion sensors with applications to sporting and rehabilitation exercises,” in 2013 IEEE/ASME International Conference on Advanced Intelligent Mechatronics (AIM), 2013, pp. 1290-1295.
───
將引領我們走得更遠乎??終究莫忘那『微分』與『差分』方程式可以很不相同的耶!!
對於 來講,它的解是
,此處 是『初始條件』參數,可由 來決定。假使 是『有理數』,那麼 這個『周期函數』,多次『迭代』後就可能產生『極限循環』;要是 是『無理數』,它有一個『不循環』的無窮小數成份,這個『符號動力系統』就彷彿是『隨機亂動』一般,因此才說它是『混沌』的啊!假使思考 是一個『有理數』的機會,怕是很渺茫的吧!!
── 引自《【Sonic π】電路學之補充《四》無窮小算術‧中下上》