система уравнений для для неподвижного положения:
Ux = kxGvNxv Ux= kx gx
Uy = kyGvNyv Uy= ky gy
Uz = kzGvNzv Uz=kz gz
Ux,Uy,Uz - сигналы с каналов акселерометра, kx,ky,kz - коэффициент преобразования(скаляры), Gv[gx,gy,gz] - вектор гравитации, Nxv,Nyv,Nzv - вектора базиса всязанного с осями чувствительности акселерометра.
три неизвестных и три уравнения - решаем находим Gv[gx,gy,gz] - тоесть вектор нормалный к горизонту. Из уравнения Gv X = 0 находим выражение для плоскости горизонта - задача решена.
В движении:
Векторной форма в скалярной форме
Ux = kx(Gv+A)Nxv Ux = kx ( gx + ax)
Uy = ky(Gv+A)Nyv Uy = ky ( gy + ay)
Uz = kz(Gv+A)Nzv Uz = kz ( gz + az )
где A[ax,ay,az] - ветор полного ускорения. Появляются 6 неизвестных, а измеряется только 3 величины.
Вся проблема в том что акселерометры измеряют - ускорение СУММУ свободного ускорения и ускорения движения.
Как с этим борются.
А борются имено тем кто и должен мерить горизонт - гироскопы. Теперь гироскоп сам знает положение системы в пространстве:
Ux = kx ( |Gv|cos(alpha)cos(betta) + ax)
Uy = ky ( |Gv|sin(alpha)cos(betta) + ay)
Uz = kz ( |Gv|sin(alpha)cos(gamma) + az )
Вот теперь уже чуток лучше - |Gv| = 9.8 alpha = alpha_0 + I(wi , dt) , betta = betta_0 + I(wj , dt) , gamma = gamma_0 + I(wk , dt) , где wi,wj,wk - сигналы гироскопов, суть угловые скорости. I(.. , dt) интеграл по времени. Таким образом гироскопы позволяют отделить вектор G и измерить собственно перегрузки которые испытывает система!
Но!!! wi = wii + ei, где wii - истинная угловая скорость вокруг оси i гироскопа, ei - шум измерения.
I(wi , dt) = I(wiш , dt) + I(ei , dt)
Второй член растет во времени - суть есть уход горизонта!!
всё ли написанное тут верно?