pitch和roll角由重力加速度计可得,物体倾斜补偿时要注意pitch(俯仰角)和roll(横滚角)的方向,否则补偿误差消除不了。
如何得到罗盘的方位角
磁阻传感器为建立罗盘导航系统提供了固态有效的解决办法!但是我们怎么才能够从简单的3轴数据得到罗盘的方位角呢?
下面就将一步步告诉你如何去实现!
1)当 3 轴磁力计工作时可以读到 XYZ 三轴的磁场强度,此时的数值并不能直接用作方位角的计算!因为此时的读数可能受到器件版面上其他
一些含磁材料的影响,形成圆心坐标的硬铁漂移!
用作方位角计算的XYZ数值必须将此漂移值移除,使圆心回到原点上.
具体的办法是:
1,水平匀速旋转,收集 XY轴的数据
2,转动器材90 度(此时 Z轴水平)匀速旋转以收集 Z轴数据
3,将读取到的各轴数据的最大值加上最小值除以2,就得到一个各轴的offset 值
Xoffset=(Xmax+Xmin)/2
Yoffset=(Ymax+Ymin)/2
Zoffset=(Zmax+Zmin)/2
4,然后将磁力计读取的各轴的裸值减去前面计算所得的 offset值,就可以得到用作角度计算的 Heading 值
XH=X裸-Xoffset
YH=Y裸-Yoffset
ZH=Z裸-Zoffset
如果只用作水平测量,则此时的方位角为
方位角=arctanYH/XH
如果在测量时,我们的器件不是处在水平位置,套用以上公式,罗盘的方位角将出现偏差,此时就需要使用加速度传感器对磁力计进行倾角补偿。
要对电子罗盘进行倾角的补偿,首先要计算出横滚角(θ)Roll 以及俯仰角(φ)Pitch
代入以下公式, 计算 Heading 值
Xh=X*cos(φ)+Y*sin(θ)*sin(φ)-Z*cos(θ)*sin(φ)
Yh=Y*cos(θ)+Z*sin(θ)
考虑到角度的4 个象限,航向角的计算公式可变为以下公式
for(Xh<0)=180-[arctan(Yh/Xh)*180/π]
for(Xh>0,Yh<0)=-[arctan(Yh/Xh)*180/π]
for(Xh>0,Yh>0)=360-arctan(Yh/Xh)*180/π
for(Xh=0,Yh<0)=90
πfor(Xh=0,Yh>0)=270
完整的pdf格式文档51黑下载地址:
电子罗盘方位角计算公式.pdf
(336.86 KB, 下载次数: 303)
|