下面說說如何對(duì)采集到的數(shù)據(jù)進(jìn)行擬合。通常我們遇到的最小二乘擬合問題的待擬合的函數(shù)都可以表示為:
教你用軟件修正三軸正交型傳感器正交性
發(fā)布時(shí)間:2015-01-21 來源:Ivan 的專欄 責(zé)任編輯:sherryyu
【導(dǎo)讀】如果我們對(duì)測量精度要求非常高,就不能僅僅只是對(duì)單個(gè)傳感器進(jìn)行修正,還要考慮三個(gè)傳感器的敏感軸是否嚴(yán)格的正交。很多時(shí)候我們需要仔細(xì)的調(diào)整三個(gè)傳感器的正交關(guān)系,但是將三個(gè)傳感器調(diào)整到完全正交是很難的,,這里介紹一種基本的軟件修正方法。它對(duì)大多數(shù)類型的傳感器都可以使用。
當(dāng)需要測量的物理量為矢量時(shí),我們需要使用三個(gè)正交放置的傳感器來分別測量物理量的各個(gè)分量,以此來合成一個(gè)完整的矢量。如果我們對(duì)測量精度要求非常高,就不能僅僅只是對(duì)單個(gè)傳感器進(jìn)行修正,還要考慮三個(gè)傳感器的敏感軸是否嚴(yán)格的正交。很多時(shí)候我們需要仔細(xì)的調(diào)整三個(gè)傳感器的正交關(guān)系,但是將三個(gè)傳感器調(diào)整到完全正交是很難的,并且許多時(shí)候,由于設(shè)計(jì)等原因,這種機(jī)械上的調(diào)校是無法進(jìn)行的。這時(shí),軟件修正就成了必不可少的步驟,軟件修正大多數(shù)時(shí)候也比機(jī)械上的調(diào)校更簡單。
這里介紹一種基本的軟件修正方法。它對(duì)大多數(shù)類型的傳感器都可以使用。首先,假設(shè)單獨(dú)的每個(gè)傳感器的測量的值都是準(zhǔn)確的,這可以通過預(yù)先對(duì)每個(gè)傳感器進(jìn)行標(biāo)定來完成。
這里設(shè)三個(gè)傳感器的測量值分別是 x1,x2,x3。這三個(gè)值可以合成一個(gè)列向量X:
所謂軟件修正算法,就是找到從 X到 Y 的映射。由解析幾何知識(shí)我們知道X到 Y 的映射可以通過一個(gè)線性變換C來表示:
寫到這里其實(shí)方法就很明了了,我們只需要求得這個(gè)轉(zhuǎn)換矩陣C就一切都解決了。
轉(zhuǎn)換矩陣C如何求,當(dāng)然是通過大量的測量數(shù)據(jù)來擬合。實(shí)驗(yàn)數(shù)據(jù)的獲得很重要,最好能有個(gè)比較精密的三軸轉(zhuǎn)臺(tái),這樣轉(zhuǎn)各個(gè)角度都比較方便。沒有也沒關(guān)系,但至少要能把裝配好的傳感器組沿三個(gè)已知的方向放置,并且這三個(gè)方向要擺放的很精確。通常,我們選的這三個(gè)方向是相互正交的,這三個(gè)方向上物理量的真實(shí)值就是上面式子中的y1、y2、y3,換句話說這三個(gè)方向是三個(gè)傳感器的名義上的取向,雖然這三個(gè)傳感器可能全都擺歪了。具體如何采集數(shù)據(jù)就不詳細(xì)描述了,由于未知參數(shù)有9個(gè),至少要采集9組數(shù)據(jù)才行,條件允許的話當(dāng)然是數(shù)據(jù)越多越好。
[page]
下面說說如何對(duì)采集到的數(shù)據(jù)進(jìn)行擬合。通常我們遇到的最小二乘擬合問題的待擬合的函數(shù)都可以表示為:
這個(gè)問題已經(jīng)有成熟的算法,各種常見的數(shù)學(xué)軟件,比如 Matlab、Mathematica、scilab、Lingo 等都有現(xiàn)成的程序包來完成這個(gè)計(jì)算。我們現(xiàn)在的問題難點(diǎn)在于 y 也是個(gè)向量,這就需要我們對(duì)上面的方法進(jìn)行一點(diǎn)簡單的變形。簡單的說,我們實(shí)際上是有三個(gè)待擬合函數(shù)的,因此g(C)也要做相應(yīng)的改變:
經(jīng)過這樣轉(zhuǎn)化后就成了一個(gè)普通的最優(yōu)化問題(函數(shù)求極值)了,各種數(shù)學(xué)軟件都可以方便的計(jì)算出結(jié)果。
這里再多說幾句,我個(gè)人喜歡使用 gnuplot,gnuplot中有個(gè) fit 命令,也可以完成多元函數(shù)擬合。Gnuplot的 fit 命令采用非線性最小二乘 (NLLS) Marquardt-Levenberg算法,擬合能力非常強(qiáng)悍,只要擬合參數(shù)的初值給的別太離譜,基本都能夠收斂到最優(yōu)解上。fit命令具體的用法可以參考gnuplot的幫助文件。這里只講講如何處理 y是多個(gè)值的問題,方法很簡單,就是通過多引入一個(gè)自變量,將多值函數(shù)改造成普通的函數(shù):
這里需要注意的是如果a1,a2,a3成為未知數(shù),c11,c22,c33就可以作為已知量了,比如設(shè)c11=c22=c33=1,因?yàn)檫@里的六個(gè)未知數(shù)只有三個(gè)是獨(dú)立的。因此,實(shí)際上只增加了三個(gè)未知數(shù)。
如果將上面的方法和溫度修正一起考慮的話可以這樣處理:
上面式子中的t是溫度,這里的溫度修正算法比較簡單,主要是為了盡量少引入未知的參數(shù)。后面的計(jì)算就沒什么不同的了。
特別推薦
- 利用自動(dòng)化技術(shù)賦能中國基礎(chǔ)設(shè)施現(xiàn)代化
- 三極管電路輸入電壓阻抗
- 晶振怎么用,你真的知道嗎?
- 康佳特推出搭載AMD 銳龍嵌入式 8000系列的COM Express緊湊型模塊
- 村田推出3225尺寸車載PoC電感器LQW32FT_8H系列
- 思特威推出超星光級(jí)系列4MP圖像傳感器SC485SL
- HOLTEK新推出HT32F59045脈搏血氧儀MCU
技術(shù)文章更多>>
- 貿(mào)澤推出針對(duì)基礎(chǔ)設(shè)施和智慧城市的工程技術(shù)資源中心
- “扒開”超級(jí)電容的“外衣”,看看超級(jí)電容“超級(jí)”在哪兒
- DigiKey 誠邀各位參會(huì)者蒞臨SPS 2024?展會(huì)參觀交流,體驗(yàn)最新自動(dòng)化產(chǎn)品
- 提前圍觀第104屆中國電子展高端元器件展區(qū)
- 高性能碳化硅隔離柵極驅(qū)動(dòng)器如何選型,一文告訴您
技術(shù)白皮書下載更多>>
- 車規(guī)與基于V2X的車輛協(xié)同主動(dòng)避撞技術(shù)展望
- 數(shù)字隔離助力新能源汽車安全隔離的新挑戰(zhàn)
- 汽車模塊拋負(fù)載的解決方案
- 車用連接器的安全創(chuàng)新應(yīng)用
- Melexis Actuators Business Unit
- Position / Current Sensors - Triaxis Hall
熱門搜索