產(chǎn)品中心 應(yīng)用方案 技術(shù)文摘質(zhì)量保證產(chǎn)品選型 下載中心業(yè)內(nèi)動(dòng)態(tài) 選型幫助 品牌介紹 產(chǎn)品一覽 聯(lián)系我們
- 加速度傳感器檢測(cè)物體傾角的原理
- 來源:賽斯維傳感器網(wǎng) 發(fā)表于 2020/7/28
檢物體傾角的一種常用方法是對(duì)陀螺儀輸出的角速度進(jìn)行積分。雖然這種方法直截了當(dāng),但誤差會(huì)隨著積分時(shí)間的增加而快速累積。在某些應(yīng)用中,若整個(gè)時(shí)間范圍內(nèi)物體運(yùn)動(dòng)緩慢(忽略慣性力等因素的影響,物體只受重力作用),那么可以使用加速度計(jì)來測(cè)量物體的傾斜角度。該方法利用重力矢量及其在加速度計(jì)軸上的投影來確定傾斜角度。
以兩輪平衡小車(倒立擺模型)為例,當(dāng)檢測(cè)到傾角存在時(shí)要控制小車以一定的加速度運(yùn)動(dòng),才能維持平衡而不至于倒下。因此傾角的測(cè)量成為控制小車直立的關(guān)鍵。而在實(shí)際小車運(yùn)動(dòng)過程中,由于小車本身的運(yùn)動(dòng)所產(chǎn)生的加速度會(huì)產(chǎn)生很大的干擾信號(hào)疊加在上述測(cè)量信號(hào)上,使得輸出信號(hào)無法準(zhǔn)確反映車模的傾角(加速度計(jì)輸出值除了重力加速度的部分也可能會(huì)將小車前進(jìn)的加速度也包含在內(nèi),導(dǎo)致難以區(qū)分哪一部分是重力加速度)。
小車運(yùn)動(dòng)產(chǎn)生的加速度使得輸出電壓在實(shí)際傾角電壓附近波動(dòng),雖然可以通過數(shù)據(jù)平滑濾波將其濾除。但是平滑濾波也會(huì)使得信號(hào)無法實(shí)時(shí)反映小車傾角的變化,從而減慢對(duì)于車輪的控制,使得小車無法保持平衡,這種情況就需要結(jié)合使用陀螺儀來測(cè)量。而在其他要求不高的情況下則可以對(duì)原始加速度信號(hào)進(jìn)行處理,移除信號(hào)中的高頻成分,因此一定程度的交流分量也是可以接受的。
在使用慣性傳感器檢測(cè)物體運(yùn)動(dòng)姿態(tài)時(shí),最直觀的想法是通過加速度傳感器直接測(cè)量角度,通過陀螺儀測(cè)量角速度,但實(shí)際使用中由于傳感器本身的特性會(huì)存在很多干擾。
常用的解決方法是結(jié)合加速度計(jì)和陀螺儀各自的優(yōu)勢(shì)進(jìn)行互補(bǔ)濾波(陀螺儀:動(dòng)態(tài)特性好,積分計(jì)算姿態(tài)有累積誤差;加速度計(jì):動(dòng)態(tài)響應(yīng)差,但沒有累積誤差)。它們?cè)陬l域上特性互補(bǔ),可以采用互補(bǔ)濾波提高測(cè)量精度和系統(tǒng)的動(dòng)態(tài)性能。另一種常見的方法是采用卡爾曼濾波。
使用單軸數(shù)據(jù)計(jì)算傾角
如下圖所示,假設(shè)X軸上測(cè)到的加速度值為ax,則傾角α的值為:α = arcsin(ax/g). 如果傾角只在很小的范圍內(nèi)變化,則可以使用近似公式sinα≈α,于是α ≈ k·(ax/g),比例系數(shù)k用于傾角的線性近似計(jì)算。
X軸指向旋轉(zhuǎn)360°,ax讀數(shù)將在-1g~1g變化。從曲線可以看出,在接近±90°的位置處,輸出值靈敏度很低(同樣角度變化引起的讀數(shù)改變較。0°附近靈敏度最高。另外也可以看出正弦曲線在[0° 45°], [135° 225°]和[315° 360°] 的線性度較好。
使用單軸數(shù)據(jù)測(cè)量傾角除了靈敏度問題外,另一個(gè)限制是僅使用單軸數(shù)據(jù)無法進(jìn)行360°的測(cè)量。因?yàn)樵趦A角N°時(shí)加速度計(jì)的讀數(shù)與傾角180°?N°時(shí)的加速度讀數(shù)相同。
使用雙軸數(shù)據(jù)計(jì)算傾角
如下圖所示,加速度傳感器在X-Y平面內(nèi)旋轉(zhuǎn),由于X軸與Y軸正交,X軸檢測(cè)到重力加速度的正弦分量,Y軸檢測(cè)到重力加速度的余弦分量。旋轉(zhuǎn)時(shí)隨著一條軸的靈敏度下降,另一條軸的靈敏度將會(huì)上升。
這時(shí)傾角可以通過計(jì)算X軸和Y軸比值的反正切來得到:
如果操作數(shù)ax/ay為正值,反正切函數(shù)會(huì)返回第一象限中的值;如果操作數(shù)為負(fù)值,則反正切函數(shù)會(huì)返回第四象限中的值(標(biāo)準(zhǔn)反正切函數(shù)atan的值域是-90°~90°,也就是它只處理第一、四象限)。而通過使用C語言標(biāo)準(zhǔn)庫中的另一個(gè)反正切函數(shù)atan2(ax , ay),可以計(jì)算出原點(diǎn)至點(diǎn)(ax,ay)的方位角,可以理解為復(fù)數(shù)ax+ayi的輻角,取值范圍為(-180°,180°]。因此,增加一個(gè)軸的好處之一是,能夠區(qū)分各個(gè)象限并在整個(gè)360°范圍內(nèi)測(cè)量傾角。
使用雙軸數(shù)據(jù)計(jì)算傾角的另一個(gè)優(yōu)勢(shì)是:與單軸解決方案不同,增加一個(gè)軸后,即使第三個(gè)軸上存在傾斜,也可以測(cè)出精確值。通過下圖來進(jìn)行說明:如果XY平面不是嚴(yán)格的平行于重力方向,而存在一個(gè)較小的偏差角β(β角無法準(zhǔn)確測(cè)出),此時(shí)第三根軸即Z軸將承受一部分重力的分力。如果只是用單軸數(shù)據(jù)來測(cè)量,則根據(jù)公式有α = arcsin(ax/(g·cosβ)),β較小時(shí)cosβ接近1。由此看出,只是用單軸數(shù)據(jù)會(huì)造成一定的誤差。如果運(yùn)用X和Y軸的數(shù)據(jù),通過反正切來求α,則可以消除偏差角β的影響。
使用3軸數(shù)據(jù)計(jì)算傾角
假設(shè)傳感器的X軸與水平面xy之間的夾角為α(稱為俯仰角,pitch),Y軸與水平面間的夾角為β(稱為滾轉(zhuǎn)角,roll),Z軸與重力方向夾角為γ。
重力加速度在XYZ三個(gè)軸上的投影即為三個(gè)軸傳感器的讀數(shù),因此可計(jì)算出:
根據(jù)三個(gè)軸加速度的矢量和等于重力加速度,即:
可以推導(dǎo)出計(jì)算三個(gè)角度的另一種表達(dá)式:
由于采用反正切函數(shù)和加速度之比,因此具有雙軸示例中提及的優(yōu)勢(shì)。
- 如果本文收錄的圖片文字侵犯了您的權(quán)益,請(qǐng)及時(shí)與我們聯(lián)系,我們將在24內(nèi)核實(shí)刪除,謝謝!