首 页电子文章电子资料客户留言最新文章最新下载繁體中文
设为首页
加入收藏
联系我们
您当前的位置:中国电子前沿 -> FPGA/PLD -> FPGA应用 -> 电子文章内容 退出登录 用户管理
栏目导航
· CPLD应用 · FPGA应用
· VHDL学习 · EDA软件
广告专栏
热门电子文章
· [51系列] 单片机c语言学..
· [linux移植] Linux 嵌入式..
· [linux移植] YAFFS文件系..
· [USB技术] USB接口研究与..
· [ucos相关] uC/OS-II 初级..
· [无线开发] 收发一体超声..
· [TI DSP综合] DSP环境下C..
· [ARM入门] ARM体系结构和..
· [VHDL学习] 数字电压表的..
· [linux移植] cs8900a驱动..
· [TI6000应用] 基于DSP的实..
· [51系列] 基于AT89C51单..
相关电子文章
· [组图] 基于FPGA和EP..
· [组图] 利用Virtex-5..
· [组图] 在汽车娱乐电..
· [图文] 基于DSP和FPG..
· [组图] 基于DSP+FPG..
· [图文] 使用一个FPGA..
· [组图] 使用FPGA和IP..
· [组图] 基于FPGA的DD..
· [组图] 基于FPGA的TC..
· [组图] WCDMA速率适配..
FPGA实现的FIR算法在汽车动态称重仪中的应用
作者:佚名  来源:不详  发布时间:2007-2-4 13:57:47  发布人:zangyl
减小字体 增大字体

摘 要:本文介绍了用FPGA实现的FIR算法,并对这种算法应用于汽车动态称重仪表中的结果做了分析。实践证明此算法用于动态称重具有良好的效果。
关键词: FPGA;FIR;动态称重

引言
    车辆在动态称重时,作用在平台上的力除真实轴重外,还有许多因素产生的干扰力,如:车速、车辆自身谐振、路面激励、轮胎驱动力等,给动态称重实现高精度测量造成很大困难。若在消除干扰的过程中采用模拟方法滤波,参数则不能过大,否则将产生过大的延迟导致不能实现实时处理,从而造成滤波后的信号仍然含有相当一部分的噪声。所以必须采用数字滤波消除干扰。

FIR滤波的原理及实现
    本文采用FIR数字滤波,其原理如公式1所示。
    Y(n)= (1)
    其中h(k)为系统滤波参数,x(n)为采集的信号,Y(n)为滤波后的输出信号。
    FIR滤波器的h(n)0≤n≤N-1
    H(z)= (2)
   
    在本文中N=17。由于h(n)具有对称性质,即:
    h(n)=h(N-1-n) (n=0,1,...,(N-1)/2) (3)

    这样就可以把FIR滤波器设计成具有线性相位。利用这一情况,可以得到的乘法结构,需要(N+1)/2次乘法,仅是级联或并联结构所需次数的一半,因此,实际应用中多采用此方法。

    我们选用17点的FIR滤波算法,这样实现一次FIR卷积运算需要执行9次乘法和16次加法。为了实现数据的实时处理,需要在20ms内完成这个卷积运算,如果选用单片机89C51(12M晶振)则无法实现。所以我们选用了Altera公司的FLEX10K20。FLEX10K系列是工业界第一个嵌入式的PLD,采用重复可构造的CMOS SRAM工艺,把连续的快速通道互连与独特的嵌入式阵列结构相结合,同时也结合了众多可编程器件的优点来完成普通门阵列的宏功能。具有高密度、低成本、低功率等特点。



图1 硬件结构框图


图2


图3


图4

硬件设计
    由于我们选用的AD1674芯片转换时间为10ms,而所设计的电路每隔20ms启动转换一次,所以有足够的时间完成模数转换。轴重台的宽度为40cm,汽车通过轴重台的最大速度为15km/h,通过计算可知在这段时间里系统可采集4800个数据。由于前30ms是传感器的反应时间,将剩下的数据进行FIR数字滤波后,噪声会被有效的抑制。为了进一步平滑波形,对每8个数据做一次平均,这样就消弱了由于汽车高速通过轴重台时由于颠簸产生的尖峰信号。FPGA的每次滤波包含有FIR运算和8个数据的平均值运算,完成一次滤波就会向单片机发一个中断请求,此时单片机读取滤波后的数据。由于我们选用的A/D转换器是12位,而单片机89C51是8位的,所以经过处理后的数据必须分两次读入。第一次读入低8位,第二次读入高4位,然后对数据处理。此时我们可以认为单片机接收的数据为滤波后不含有噪声的数据。根据轴重称量的波形图可以知道,只要求出此时的最大值就是汽车的真实重量。

    在此仪表中,串行口即用来显示也用来通讯,我们可以通过FPGA很容易实现切换。如图1所示,当控制信号为1的时候RXD、TXD用于显示,而当控制信号为0的时候用于和上位机通讯。

    我们选用加海明窗的理想低通滤波器,其归一化截至频率为0.25,如图2所示。汽车称重信号为含有多种成分噪声的直流信号如图3所示,这1000个数据经过FPGA的FIR滤波和8点数据平均后,提供给单片机125个数据,其波形如图4所示。

    滤波之前的噪声的峰峰值在0.1V左右,而此时的轴重信号为1,这将严重影响测量精度。滤波后我们看到情况得到了明显的改善,噪声信号的峰峰值被抑制在0.02V的范围内,大大改善了信噪比,从而提高了测量精度。

结语
    本设计不但实现了硬件数字滤波电路,而且减少了许多门电路和组合逻辑电路。用比较少的器件实现了比较复杂的功能,减少了故障率。用此方法设计的汽车动态称重仪表具有良好的实时性和较高的精度,现已投入批量生产。

参考文献
1 徐爱钧.单片机高级语言C51应用程序设计,电子工业出版社,1998.6
2 杨德华.汽车检测与诊断技术,江苏科学技术出版社,1994.10
3 曾繁泰等.VHDL程序设计,清华大学出版社,2001.1

[] [返回上一页] [打 印] [收 藏]
∷相关电子文章评论∷    (评论内容只代表网友观点,与本站立场无关!) [更多评论…]
关于本站网站帮助广告合作下载声明友情连接网站地图 ┆ 在线客服: 点这里与管理员交谈
Copyright © 2006-2008 EMB-CN.com. All Rights Reserved .鲁ICP备06032441号