<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > FPGA實(shí)現的FIR算法在汽車(chē)動(dòng)態(tài)稱(chēng)重儀中的應用

FPGA實(shí)現的FIR算法在汽車(chē)動(dòng)態(tài)稱(chēng)重儀中的應用

作者: 時(shí)間:2016-10-10 來(lái)源:網(wǎng)絡(luò ) 收藏

  引言

本文引用地址:http://dyxdggzs.com/article/201610/311128.htm

  車(chē)輛在動(dòng)態(tài)稱(chēng)重時(shí),作用在平臺上的力除真實(shí)軸重外,還有許多因素產(chǎn)生的干擾力,如:車(chē)速、車(chē)輛自身諧振、路面激勵、輪胎驅動(dòng)力等,給動(dòng)態(tài)稱(chēng)重實(shí)現高精度測量造成很大困難。若在消除干擾的過(guò)程中采用模擬方法濾波,參數則不能過(guò)大,否則將產(chǎn)生過(guò)大的延遲導致不能實(shí)現實(shí)時(shí)處理,從而造成濾波后的信號仍然含有相當一部分的噪聲。所以必須采用數字濾波消除干擾。

  濾波的原理及實(shí)現

  本文采用數字濾波,其原理如公式1所示。

  Y(n)= (1)

  其中h(k)為系統濾波參數,x(n)為采集的信號,Y(n)為濾波后的輸出信號。

  濾波器的h(n)0≤n≤N-1

  H(z)= (2)

  在本文中N=17。由于h(n)具有對稱(chēng)性質(zhì),即:

  h(n)=h(N-1-n) (n=0,1,...,(N-1)/2) (3)

  這樣就可以把FIR濾波器設計成具有線(xiàn)性相位。利用這一情況,可以得到的乘法結構,需要(N+1)/2次乘法,僅是級聯(lián)或并聯(lián)結構所需次數的一半,因此,實(shí)際應用中多采用此方法。

  我們選用17點(diǎn)的FIR濾波算法,這樣實(shí)現一次FIR卷積運算需要執行9次乘法和16次加法。為了實(shí)現數據的實(shí)時(shí)處理,需要在20ms內完成這個(gè)卷積運算,如果選用單片機89C51(12M晶振)則無(wú)法實(shí)現。所以我們選用了Altera公司的FLEX10K20。FLEX10K系列是工業(yè)界第一個(gè)嵌入式的PLD,采用重復可構造的CMOS SRAM工藝,把連續的快速通道互連與獨特的嵌入式陣列結構相結合,同時(shí)也結合了眾多可編程器件的優(yōu)點(diǎn)來(lái)完成普通門(mén)陣列的宏功能。具有高密度、低成本、低功率等特點(diǎn)。

  

 

  圖1 硬件結構框圖硬件設計

  由于我們選用的AD1674芯片轉換時(shí)間為10ms,而所設計的電路每隔20ms啟動(dòng)轉換一次,所以有足夠的時(shí)間完成模數轉換。軸重臺的寬度為40cm,汽車(chē)通過(guò)軸重臺的最大速度為15km/h,通過(guò)計算可知在這段時(shí)間里系統可采集4800個(gè)數據。由于前30ms是傳感器的反應時(shí)間,將剩下的數據進(jìn)行FIR數字濾波后,噪聲會(huì )被有效的抑制。為了進(jìn)一步平滑波形,對每8個(gè)數據做一次平均,這樣就消弱了由于汽車(chē)高速通過(guò)軸重臺時(shí)由于顛簸產(chǎn)生的尖峰信號。的每次濾波包含有FIR運算和8個(gè)數據的平均值運算,完成一次濾波就會(huì )向單片機發(fā)一個(gè)中斷請求,此時(shí)單片機讀取濾波后的數據。由于我們選用的A/D轉換器是12位,而單片機89C51是8位的,所以經(jīng)過(guò)處理后的數據必須分兩次讀入。第一次讀入低8位,第二次讀入高4位,然后對數據處理。此時(shí)我們可以認為單片機接收的數據為濾波后不含有噪聲的數據。根據軸重稱(chēng)量的波形圖可以知道,只要求出此時(shí)的最大值就是汽車(chē)的真實(shí)重量。

  在此儀表中,串行口即用來(lái)顯示也用來(lái)通訊,我們可以通過(guò)很容易實(shí)現切換。如圖1所示,當控制信號為1的時(shí)候RXD、TXD用于顯示,而當控制信號為0的時(shí)候用于和上位機通訊。

  我們選用加海明窗的理想低通濾波器,其歸一化截至頻率為0.25,如圖2所示。汽車(chē)稱(chēng)重信號為含有多種成分噪聲的直流信號如圖3所示,這1000個(gè)數據經(jīng)過(guò)的FIR濾波和8點(diǎn)數據平均后,提供給單片機125個(gè)數據,其波形如圖4所示。

  

 

  圖2

  

 

  圖3

  

 

  圖4

  濾波之前的噪聲的峰峰值在0.1V左右,而此時(shí)的軸重信號為1,這將嚴重影響測量精度。濾波后我們看到情況得到了明顯的改善,噪聲信號的峰峰值被抑制在0.02V的范圍內,大大改善了信噪比,從而提高了測量精度。

  結語(yǔ)

  本設計不但實(shí)現了硬件數字濾波電路,而且減少了許多門(mén)電路和組合邏輯電路。用比較少的器件實(shí)現了比較復雜的功能,減少了故障率。用此方法設計的汽車(chē)動(dòng)態(tài)稱(chēng)重儀表具有良好的實(shí)時(shí)性和較高的精度,現已投入批量生產(chǎn)。



關(guān)鍵詞: FPGA FIR

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>