亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        硅壓阻式壓力傳感器誤差修正算法的FPGA實現(xiàn)

        2017-02-18 06:16:03華振宇徐大誠
        傳感器與微系統(tǒng) 2017年2期
        關(guān)鍵詞:校正補償傳感器

        華振宇, 徐大誠

        (蘇州大學(xué) 微納傳感器研究中心,江蘇 蘇州 215100)

        硅壓阻式壓力傳感器誤差修正算法的FPGA實現(xiàn)

        華振宇, 徐大誠

        (蘇州大學(xué) 微納傳感器研究中心,江蘇 蘇州 215100)

        針對現(xiàn)場可編程門陣列(FPGA)的輸入輸出(I/O)資源豐富、并行執(zhí)行特點對設(shè)計大規(guī)模硅壓阻式壓力傳感器補償系統(tǒng)以及提高其補償效率有一定的意義,提出了一種FPGA補償系統(tǒng)設(shè)計方案并對傳感器輸入輸出存在的非線性誤差,設(shè)計了32位單精度浮點運算單元實現(xiàn)曲線擬合法中的多項式擬合算法,使用Verilog語言在Xilinx ISE中實現(xiàn)FPGA的邏輯設(shè)計、仿真和綜合。結(jié)果證明:設(shè)計的可在FPGA中綜合實現(xiàn)的多項式擬合算法效果顯著,可以對非線性系統(tǒng)進(jìn)行校正,有較高的應(yīng)用價值。

        硅壓阻式壓力傳感器; 非線性校正; 現(xiàn)場可編程門陣列; 曲線擬合

        0 引 言

        硅壓阻式壓力傳感器是利用半導(dǎo)體的壓阻效應(yīng)制成的壓力傳感器件,其特點是靈敏度高、線性度好、穩(wěn)定性好,容易實現(xiàn)批量生產(chǎn),易于利用標(biāo)準(zhǔn)的集成電路(IC)技術(shù)實現(xiàn)集成化等,被廣泛應(yīng)用于電力、石化、汽車電子等領(lǐng)域[1]。但用半導(dǎo)體材料作為敏感元件的壓阻式壓力傳感器的溫度特性不穩(wěn)定,溫度漂移現(xiàn)象明顯,而且它特殊的加工工藝又使其非線性誤差也具有隨機(jī)性[2,3]。溫度漂移特性和非線性誤差,使得壓阻式壓力傳感器在出廠使用之前必須要經(jīng)過非線性誤差的校正。在對壓阻式壓力傳感器溫度補償方案中,傳統(tǒng)的補償方法可分為硬件補償和軟件補償兩大類。由于軟件補償技術(shù)實現(xiàn)相對簡單,補償效果明顯,是提高壓力傳感器精度的重要途徑[4]。所以,在現(xiàn)代流行的壓力傳感器溫度補償中大都采用軟件補償。

        1 基于現(xiàn)場可編程門陣列的補償系統(tǒng)方案

        現(xiàn)場可編程門陣列(FPGA)因其良好的并行運算能力,以及無與倫比的可重配置性、可擴(kuò)展性能,已經(jīng)成為現(xiàn)代電子通信產(chǎn)品中不可或缺的組成部分,尤其在數(shù)字信號處理領(lǐng)域中得到了十分廣泛的應(yīng)用[5]。從以往設(shè)計的補償系統(tǒng)來看,硅壓阻式壓力傳感器軟件補償系統(tǒng)是將傳感器和微處理器結(jié)合起來,充分利用微處理器豐富的軟件功能,通過一定的補償算法對壓阻式壓力傳感器因溫度而產(chǎn)生的誤差進(jìn)行修正來實現(xiàn)。但在多路數(shù)據(jù)補償系統(tǒng)設(shè)計中會不免遇到單片機(jī)輸入輸出(input/output,I/O)口資源緊張,且單片機(jī)程序執(zhí)行串行特點等會影響數(shù)據(jù)采集系統(tǒng)設(shè)計的難度以及補償效率的降低;而FPGA 動輒數(shù)百I/O,可以方便連接外設(shè)實現(xiàn)大規(guī)模系統(tǒng)的設(shè)計,且FPGA不同邏輯可以并行執(zhí)行,可以同時處理不同任務(wù),這就使得FPGA實現(xiàn)補償系統(tǒng)效率更高[6]。因此本文提出了用FPGA來實現(xiàn)補償?shù)囊环N硬件設(shè)計方案,在整個系統(tǒng)中FPGA處理系統(tǒng)是關(guān)健,它接收A/D采集到的數(shù)據(jù)后運行補償算法,最后把校正系數(shù)寫入EEPROM中存儲起來;FPGA處理系統(tǒng)通過UART接口可以和上位機(jī)進(jìn)行通信。系統(tǒng)框圖如圖1所示。

        圖1 系統(tǒng)設(shè)計框圖

        2 算法分析與實現(xiàn)

        目前,軟件補償方法主要有插值法、曲線曲面擬合法、查表法和BP神經(jīng)網(wǎng)絡(luò)法等[7]。在插值法中,數(shù)據(jù)假定是正確的,要求以某種方法描述數(shù)據(jù)之間所發(fā)生的情況。曲線擬合方法就是設(shè)法找出某條光滑曲線,它是最佳的擬合數(shù)據(jù),但不必要經(jīng)過任何數(shù)據(jù)點。查表法是預(yù)先將一系列參數(shù)裝入一個參數(shù)表內(nèi),獲得測量數(shù)據(jù)后,根據(jù)相應(yīng)的參數(shù)進(jìn)行處理。查表法需要占用很大的RAM空間,而FPGA中RAM資源寶貴,因此,這種方法不適用于FPGA中實現(xiàn)。神經(jīng)網(wǎng)絡(luò)方法通過建立人工神經(jīng)網(wǎng)絡(luò)模型,并通過樣本訓(xùn)練確定網(wǎng)絡(luò)參數(shù),最大的缺點是網(wǎng)絡(luò)不穩(wěn)定、訓(xùn)練時間較長、實現(xiàn)難度大等,不適合FPGA中實現(xiàn),本文采用多項式擬合算法。

        2.1 多項式擬合

        多項式擬合方法數(shù)據(jù)處理的基本思想與熟知的最小二乘法一致。由于壓阻式壓力傳感器的待補償量是非線性的,采用最小二乘法會遺漏較多細(xì)節(jié);而采用高次方的多項式擬合,可以在一定程度上彌補這一不足,在一定次數(shù)范圍內(nèi),多項式次數(shù)越高越能反映傳感器受溫度影響的輸出情況。設(shè)傳感器擬合模型可表示為n階多項式

        W=φ(U)=k0+k1U+k2U2+k3U3+…+knUn+ε

        (1)

        式中W為被測壓力;U為傳感器的電壓輸出;ε為高階無窮小,k0~kn為常系數(shù)。這里選擇n=2,由式(1)可以看出,確定模型的關(guān)健在k0~k2的求解。由曲線擬合多項式計算得到的值Wk(U)值與實驗標(biāo)定值Wk之間誤差的平方為

        式中k=1,2,…,N,N為標(biāo)定點的個數(shù),其均方誤差R可表示為

        (2)

        將函數(shù)R(k0,k1,k2)分別對k0~k2求偏導(dǎo),令各偏導(dǎo)數(shù)等于零,整理后得

        2.2 FPGA處理單元組成

        FPGA處理單元由傳感器輸入I2C接口模塊、校正算法多項式擬合模塊、同步FIFO模塊、UART發(fā)送模塊、用戶按鍵輸入模塊。FPGA處理單元如圖2所示。下面介紹I2C模塊和多項式擬合模塊。

        圖2 FPGA處理單元框圖

        2.2.1 I2C采集模塊設(shè)計

        I2C(Inter-Intergrated Circuit)總線是一種由Philips公司開發(fā)的一種用于內(nèi)部IC控制的雙向串行總線。1988年,推出I2C總線協(xié)議2.0版本時,I2C協(xié)議實際上已經(jīng)成為一個國際標(biāo)準(zhǔn)。通常高精度壓阻式壓力傳感器帶有I2C接口。I2C有標(biāo)準(zhǔn)、快速、高速三種工作模式[8]。本文采用標(biāo)準(zhǔn)模式,數(shù)據(jù)傳輸速率高達(dá)100 kbit/s。由于FPGA系統(tǒng)外部時鐘輸入為50 MHz,所以設(shè)計中進(jìn)行了時鐘分頻處理。本文設(shè)計的I2C控制器模塊結(jié)構(gòu)框圖3。

        圖3 I2C總線控制器模塊結(jié)構(gòu)圖

        2.2.2 多項式擬合模塊

        幾乎所有的數(shù)字計算機(jī),包括FPGA在內(nèi)的數(shù)字信號處理器件,數(shù)字和信號量都是用二進(jìn)制來表示的。數(shù)有定點數(shù)和浮點數(shù)之分,為了提高擬合的精度本文設(shè)計一律采用浮點數(shù)并且符合IEEE 754標(biāo)準(zhǔn),由于幾乎所有的計算機(jī)都支持該標(biāo)準(zhǔn),所以大大改善了設(shè)計代碼的可移植性。在FPGA中實現(xiàn)信號處理算法的途徑就是把它分解為基本的代數(shù)運算[6]。本文設(shè)計中使用了大量的乘加運算,為了提高擬合的精度,本文設(shè)計32位單精度浮點乘法模塊以及32位單精度浮點加減模塊。下面給出設(shè)計代碼可在Xilinx spantan 6XC6SLX9器件中實現(xiàn)的浮點乘法器在Xilinx 14.6 ISE中的仿真結(jié)果如圖4所示。

        圖4 32位單精度浮點乘法器仿真圖

        3 實驗過程與結(jié)果分析

        為了對本文設(shè)計的FPGA擬合算法實現(xiàn)進(jìn)行驗證,實驗對壓阻式壓力傳感器進(jìn)行了3次標(biāo)定,每次標(biāo)定取6個標(biāo)定量。本文對這3組不同的標(biāo)定數(shù)據(jù)進(jìn)行擬合,為了使擬合后的表達(dá)式能直接應(yīng)用于后期的測試實驗中,3組標(biāo)定量全部以電壓作為輸入量,壓力作為輸出量,用擬合后的壓力值與實際添加壓力標(biāo)準(zhǔn)值來做比較,得出FPGA中實現(xiàn)多項式擬合的非線性校正效果,并與在Matlab中實現(xiàn)多項式擬合的非線性校正效果做對比。

        表1 傳感器標(biāo)定數(shù)據(jù)

        W′k/kPa012345020406080100Uk/V0.4781.2502.1012.9523.8024.6460.3641.1101.9242.7363.5484.3590.3121.0281.8212.6143.4074.196

        使用Matlab R2012b軟件求出該數(shù)據(jù)擬合多項式的系數(shù)和擬合后的值,程序如下:

        x1=[0.478,1.250,2.101,2.952,3.802,4.646];

        x2=[0.364,1.110,1.924,2.736,3.548,4.359];

        x3=[0.312,1.028,1.821,2.614,3.407,4.196];

        y=[0,20,40,60,80,100];

        p1=polyfit(x1,y,2);

        p2=polyfit(x2,y,2);

        p3=polyfit(x3,y,2);

        yy1=polyval(p1,x1);

        yy2=polyval(p2,x2);

        yy3=polyval(p3,x3)。

        得到的擬合多項式系數(shù)值和擬合值分別為

        p1=[-0.212 8,24.936 1,-11.484 2]

        p2=[-0.216 3,25.925 5,-9.079 0]

        p3=[-0.269 6,26.800 9,-7.936 5]

        yy1=[0.386 6,19.353 3,39.967 0,60.272 3,80.246 2,

        99.774 7]

        yy2=[0.329 2,19.431 8,40.001 1,60.234 3,80.182 4,

        99.821 2]

        yy3=[0.399 2,19.329 9,39.974 0,60.278 9,80.244 7,

        99.773 3]。

        為了方便在FPGA中驗證Verilog多項式擬合算法,首先將把給定的標(biāo)定數(shù)據(jù)轉(zhuǎn)化為32位單精度的浮點格式。使用Matlab轉(zhuǎn)換數(shù)據(jù)為32位十六進(jìn)制表示,程序如下

        xx1=num2hex(single(x1));

        xx2=num2hex(single(x2));

        xx3=num2hex(single(x3));

        yy=num2hex(single(y))。

        實驗數(shù)據(jù)在Xilinx14.6 ISE中仿真結(jié)果如圖5所示。

        圖5 實驗數(shù)據(jù)仿真結(jié)果圖

        從仿真結(jié)果中分別得到3組待擬合實驗數(shù)據(jù)用FPGA實現(xiàn)的多項式擬合算法擬合的校正系數(shù)如下

        將上面得到的32位單精度浮點形式的校正系數(shù)轉(zhuǎn)換為十進(jìn)制數(shù)如下

        用Matlab R2012b分別得到3組數(shù)據(jù)的曲線擬合對比圖如圖6所示。

        圖6 Matlab實現(xiàn)和FPGA實現(xiàn)對比

        通過圖6可以看出,本文用FPGA實現(xiàn)的多項式擬合算法和Matlab中多項式擬合結(jié)果基本一致,可以算出兩種擬合結(jié)果的線性度(如表2)。擬合系統(tǒng)的線性度可由式(3)求得

        (3)

        式中δL為線性度;YFS為量程(100 kPa);ΔLmax為最大偏差。

        表2 兩種擬合的線性度

        組數(shù)Matlab擬合/%FPGA擬合/%10.64670.641520.56820.557130.67010.6595

        4 結(jié) 論

        通過Matlab和FPGA算法實現(xiàn)的線性度相差不大,誤差主要在于Matlab默認(rèn)采用雙精度浮點數(shù)據(jù)進(jìn)行擬合和數(shù)據(jù)轉(zhuǎn)化時小數(shù)點的保留上,說明FPGA實現(xiàn)了和Matlab相媲美的多項式擬合運算。因此,本文設(shè)計的多項式擬合算法能夠達(dá)到理想的結(jié)果,可以被工程實際應(yīng)用。

        [1] Chen G,Sun T,Wang P,et al.Design of temperature compensation system of pressure sensors[C]∥2006 IEEE International Conference on Information Acquisition,IEEE,2006:1042-1046.

        [2] Akbar M,Shanblatt M.A fully integrated temperature compensation technique for piezoresistive pressure sensors[J].IEEE Transactions on Instrumentation and Measurement,1993,42(3):771-775.

        [3] Otmani R,Benmoussa N,Benyoucef B.The thermal drift characteristics of piezoresistive pressure sensor[J].Physics Procedia,2011,21:47-52.

        [4] Perraud E.Theoretical model of performance of a silicon piezoresistive pressure sensor[J].Sensors and Actuators A:Physical,1996,57(3):245-252.

        [5] 杜 勇.數(shù)字濾波器的Matlab與FPGA實現(xiàn)[M].北京:電子工業(yè)出版社,2014.

        [6] 田永強(qiáng).基于FPGA的多路礦用氣體傳感器智能調(diào)校系統(tǒng)[J].傳感器與微系統(tǒng),2014,33(11):69-72.

        [7] 彭基偉,呂文華,行鴻彥,等.基于改進(jìn)GA-BP神經(jīng)網(wǎng)絡(luò)的濕度傳感器的溫度補償[J].儀器儀表學(xué)報,2013,34(1):153-160.

        [8] 周 鵬.數(shù)字電路的FPGA設(shè)計與實現(xiàn)[M].北京:機(jī)械工業(yè)出版社,2013.

        華振宇 (1989-),男,碩士,主要研究方向為慣性傳感器。

        Realization of error correction method by FPGA for Si piezoresistive pressure sensor

        HUA Zhen-yu, XU Da-cheng

        (Micro-nano Sensor Research Center,Soochow University,Suzhou 215100 ,China)

        Aiming at abundent input/output(I/O)resource and parallel processing characters of field programmable gate array(FPGA)is of meaning for large-scale compensating system for Si piezoresistive pressure sensor and increasing its compensation efficiency is significative,a compensated system design scheme is proposed and aiming at nonlinear error of sensor input and output,design 32 bit single-precision floating point unit(FPU) for realizing the polynomial curve fitting methods,Verilog language is used in Xilinx ISE to implement logic design,simutation and synthesis of FPGA.The results show that the polynomial fitting algorithm which can be realized in FPGA is effective,and it can be used for calibration of nonlinear system and has application value.

        Si piezoresistive pressure sensor; nonlinear correction; field programmable gate array(FPGA); curve fitting

        2016—03—18

        10.13873/J.1000—9787(2017)02—0101—03

        TP 212

        A

        1000—9787(2017)02—0101—03

        猜你喜歡
        校正補償傳感器
        康奈爾大學(xué)制造出可拉伸傳感器
        劉光第《南旋記》校正
        國學(xué)(2020年1期)2020-06-29 15:15:30
        簡述傳感器在物聯(lián)網(wǎng)中的應(yīng)用
        電子制作(2019年22期)2020-01-14 03:16:52
        無功補償電容器的應(yīng)用
        山東冶金(2019年5期)2019-11-16 09:09:38
        “傳感器新聞”會帶來什么
        傳媒評論(2019年5期)2019-08-30 03:50:18
        跟蹤導(dǎo)練(三)2
        一類具有校正隔離率隨機(jī)SIQS模型的絕滅性與分布
        機(jī)內(nèi)校正
        解讀補償心理
        植物補償和超補償作用
        美女视频黄a视频全免费网站色| 亚洲男人的天堂网站| 99久久国产亚洲综合精品| 大又黄又粗又爽少妇毛片| 国产亚洲精品av一区| 欧美午夜刺激影院| 亚洲羞羞视频| 久久婷婷国产五月综合色| 国产在线91精品观看| 成人毛片av免费| 亚洲熟妇20| 亚洲国产精品国自产拍av在线| 国产精品国产三级野外国产| 亚洲AV无码久久久久调教| 欧美色色视频| 蜜桃在线观看视频在线观看| 色呦呦九九七七国产精品| 国产亚洲真人做受在线观看| 人妻在线中文字幕| 一区二区三区在线观看高清视频| 91久久精品国产综合另类专区| 久久国产精品精品国产色婷婷| 亚洲色欲Aⅴ无码一区二区| 久久久人妻丰满熟妇av蜜臀| 色偷偷色噜噜狠狠网站30根| 又湿又黄裸乳漫画无遮挡网站| 97久久综合区小说区图片专区| 蜜桃在线高清视频免费观看网址| 国产精品久久久久久福利| 国产内射合集颜射| 久久精品国产亚洲精品色婷婷| 中文字幕亚洲乱码熟女1区| 国产一区二区在线视频| 日韩久久久黄色一级av| 一本色道久久综合亚洲精品不| 国产精品久久成人网站| 亚洲人成网站77777在线观看| 日本看片一区二区三区| 亚洲一区二区三区内裤视| 亚洲欧美成人一区二区在线电影| AV无码免费不卡在线观看|