找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 16573|回復(fù): 8
收起左側(cè)

電子羅盤HMC5883物體傾斜時(shí)的補(bǔ)償問題-方位角計(jì)算公式

  [復(fù)制鏈接]
ID:100290 發(fā)表于 2017-8-22 14:18 | 顯示全部樓層 |閱讀模式
pitch和roll角由重力加速度計(jì)可得,物體傾斜補(bǔ)償時(shí)要注意pitch(俯仰角)和roll(橫滾角)的方向,否則補(bǔ)償誤差消除不了。

如何得到羅盤的方位角
磁阻傳感器為建立羅盤導(dǎo)航系統(tǒng)提供了固態(tài)有效的解決辦法!但是我們?cè)趺床拍軌驈暮?jiǎn)單的3軸數(shù)據(jù)得到羅盤的方位角呢?
下面就將一步步告訴你如何去實(shí)現(xiàn)!
1)當(dāng) 3 軸磁力計(jì)工作時(shí)可以讀到 XYZ 三軸的磁場(chǎng)強(qiáng)度,此時(shí)的數(shù)值并不能直接用作方位角的計(jì)算!因?yàn)榇藭r(shí)的讀數(shù)可能受到器件版面上其他
一些含磁材料的影響,形成圓心坐標(biāo)的硬鐵漂移!
0.png
用作方位角計(jì)算的XYZ數(shù)值必須將此漂移值移除,使圓心回到原點(diǎn)上.

具體的辦法是:
1,水平勻速旋轉(zhuǎn),收集 XY軸的數(shù)據(jù)
2,轉(zhuǎn)動(dòng)器材90 度(此時(shí) Z軸水平)勻速旋轉(zhuǎn)以收集 Z軸數(shù)據(jù)
3,將讀取到的各軸數(shù)據(jù)的最大值加上最小值除以2,就得到一個(gè)各軸的offset 值
Xoffset=(Xmax+Xmin)/2
Yoffset=(Ymax+Ymin)/2
Zoffset=(Zmax+Zmin)/2
4,然后將磁力計(jì)讀取的各軸的裸值減去前面計(jì)算所得的 offset值,就可以得到用作角度計(jì)算的 Heading 值
XH=X裸-Xoffset
YH=Y裸-Yoffset
ZH=Z裸-Zoffset
如果只用作水平測(cè)量,則此時(shí)的方位角為
方位角=arctanYH/XH
0.png
如果在測(cè)量時(shí),我們的器件不是處在水平位置,套用以上公式,羅盤的方位角將出現(xiàn)偏差,此時(shí)就需要使用加速度傳感器對(duì)磁力計(jì)進(jìn)行傾角補(bǔ)償。
要對(duì)電子羅盤進(jìn)行傾角的補(bǔ)償,首先要計(jì)算出橫滾角(θ)Roll 以及俯仰角(φ)Pitch
代入以下公式, 計(jì)算 Heading 值
Xh=X*cos(φ)+Y*sin(θ)*sin(φ)-Z*cos(θ)*sin(φ)
Yh=Y*cos(θ)+Z*sin(θ)
考慮到角度的4 個(gè)象限,航向角的計(jì)算公式可變?yōu)橐韵鹿?br /> 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黑下載地址:
電子羅盤方位角計(jì)算公式.pdf (336.86 KB, 下載次數(shù): 303)


評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

回復(fù)

使用道具 舉報(bào)

ID:190698 發(fā)表于 2017-12-20 13:17 | 顯示全部樓層
這個(gè)資料很好,感謝分享!
回復(fù)

使用道具 舉報(bào)

ID:276104 發(fā)表于 2018-1-15 11:44 | 顯示全部樓層
很想下載這個(gè)資料,第一次來到這個(gè)論壇。不知道資料實(shí)用不實(shí)用
回復(fù)

使用道具 舉報(bào)

ID:276104 發(fā)表于 2018-1-17 16:47 | 顯示全部樓層
請(qǐng)教樓主,我不分四象限,直接用公式
Xh=X*cos(φ)+Y*sin(θ)*sin(φ)-Z*cos(θ)*sin(φ)
Yh=Y*cos(θ)+Z*sin(θ)
航向角也能在 360度范圍內(nèi)轉(zhuǎn)得很好,就是pitch和roll有點(diǎn)不太對(duì),不知什么原因
回復(fù)

使用道具 舉報(bào)

ID:283248 發(fā)表于 2018-2-9 09:47 | 顯示全部樓層
好,支持,我在學(xué)習(xí)這個(gè),還想請(qǐng)問下,我們的數(shù)據(jù)比如說現(xiàn)在是90°,它磁力計(jì)數(shù)據(jù)在90±10之間不停的跳動(dòng)(我設(shè)備放著沒有動(dòng)),這種情況是電路設(shè)計(jì)有問題嗎?還是說軟件需要濾波?±10跳的有點(diǎn)夸張啊。
回復(fù)

使用道具 舉報(bào)

ID:324936 發(fā)表于 2018-5-8 12:14 | 顯示全部樓層
非常感謝樓主的分享
回復(fù)

使用道具 舉報(bào)

ID:447929 發(fā)表于 2018-12-17 13:49 | 顯示全部樓層
謝謝樓主分享
回復(fù)

使用道具 舉報(bào)

ID:360864 發(fā)表于 2020-3-19 16:05 | 顯示全部樓層
最近在研究這個(gè),下載下來看看
回復(fù)

使用道具 舉報(bào)

ID:879896 發(fā)表于 2021-1-23 11:26 | 顯示全部樓層
最近在研究這個(gè),下載下來看看
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表