CPLD在信号滤波和抗干扰中的应用
发布时间:2008/5/27 0:00:00 访问次数:518
     安 敏 黄克初
     来源:《电子技术应用》
     摘要:滤波和抗干扰是任何智能仪器系统都必须考虑的问题。在传统的应用系统中,滤波部分往往要占用较多的软件资源和硬件资源。复杂可编程逻辑器件(cpld)的出现,为解决这一问题开辟了新的途径,条用cpld实现滤是一种高效可靠的方法。介绍了利用max+plus ⅱ对cpld编程来实现对传感器和按键信号滤波和抗干扰。该方法已在产品开发中获得了成功应用。
    
    
     关键词:复杂可编程逻辑器件 滤波 抗干扰
     1 滤波和抗干扰概述
    
    
    
     单片机应用系统的输入信号常含有种种噪声和干扰,它们来自被测信号源、传感器、外界干扰源等。为了提高测量和控制精度,必须消除信号中的噪声和干扰。噪声有两大类:一类为周期性的;另一类为不规则的。前者的典型代表为50hz的工频干扰,一般采用硬件滤波,使用积分时间等于20ms的整数倍的双积分a/d转换器,可有效地消除其对信号的影响。后者为随机信号,它不是周期信号,可用数字滤波方法予以消弹或滤除。所谓数字滤波,就是通过一定的计算或判断程序来减少干扰信号在有用信号中的比重,故实际上它是一种软件滤波。硬件滤波具有效率高的优点,但要增加系统的投资和设备的体积,当干扰的性质改变时我们往往不得不重新搭接电路;软件滤波是用程序实现的,不需要增加设备,故投资少、可靠性高、稳定性好,并且可以对频率很低的信号实行滤波,随着干扰的性质改变只需修改软件即可,具有灵活、方便、功能强的优点,但要占用系统资源、降低系统的作效率。一个传统的实际系统,往往采用软件和硬件相结合的滤波方法,这种结合是在两者的优缺点之间的寻找一个平衡点。
    
     硬件抗干扰主要采用隔离技术、双绞线传输、阻抗匹配等措施抑制干扰。常用的隔离措施有采用a/d、d/a与单片机进行隔离以及用继电器、光电隔离器、光电隔离固态继电器(ssr)等隔离器件对开关量进行隔离。
    
     2 利用cpld实现数字滤波及抗干扰
    
    
     这里介绍的采用cpld实现信号滤波及抗干扰的方法已经在智能仪器泵冲测量仪的开发中得到验证。下面就如何采用cpld对系统的四路外部传感器脉冲信号和四路按键信号实现滤波、锁存、中断申请等功能进行阐述。
    
     2.1 传感器信号滤波
    
    
     由于要对传感器信号进行数字滤波,cpld要引入时钟信号,因而我们对cpld定义一输入端clki,作为数字滤波器的计数脉冲输入端。clki由单片机定时器1定时产生500hz脉冲。以一路为例,泵冲信号滤波部分如图1所示。
    
     oo0为经电平转换后接近开关输出的信号。当oo0为低电平时,说明泵1未动作,封锁三端与门,时钟信号clki无法通过,计数器bcn3n不计数。同理,当aa4为高电平时,亦封三端与门(至aa4如何变化及作用下文有介绍)。故当oo0为高、aa4为低时,clki接通计数器clk端。当oo0和clr端任意一个为低时,计数器清零。计数器ban3n由max+plus ⅱ的文本编程器编程,其文本如下:
    
    
     subdesign bce3n
    
    
    
     ( clk:input;
    
     q[4..0]:output;)
    
     variable
    
     count[4..0]
  &
     安 敏 黄克初
     来源:《电子技术应用》
     摘要:滤波和抗干扰是任何智能仪器系统都必须考虑的问题。在传统的应用系统中,滤波部分往往要占用较多的软件资源和硬件资源。复杂可编程逻辑器件(cpld)的出现,为解决这一问题开辟了新的途径,条用cpld实现滤是一种高效可靠的方法。介绍了利用max+plus ⅱ对cpld编程来实现对传感器和按键信号滤波和抗干扰。该方法已在产品开发中获得了成功应用。
    
    
     关键词:复杂可编程逻辑器件 滤波 抗干扰
     1 滤波和抗干扰概述
    
    
    
     单片机应用系统的输入信号常含有种种噪声和干扰,它们来自被测信号源、传感器、外界干扰源等。为了提高测量和控制精度,必须消除信号中的噪声和干扰。噪声有两大类:一类为周期性的;另一类为不规则的。前者的典型代表为50hz的工频干扰,一般采用硬件滤波,使用积分时间等于20ms的整数倍的双积分a/d转换器,可有效地消除其对信号的影响。后者为随机信号,它不是周期信号,可用数字滤波方法予以消弹或滤除。所谓数字滤波,就是通过一定的计算或判断程序来减少干扰信号在有用信号中的比重,故实际上它是一种软件滤波。硬件滤波具有效率高的优点,但要增加系统的投资和设备的体积,当干扰的性质改变时我们往往不得不重新搭接电路;软件滤波是用程序实现的,不需要增加设备,故投资少、可靠性高、稳定性好,并且可以对频率很低的信号实行滤波,随着干扰的性质改变只需修改软件即可,具有灵活、方便、功能强的优点,但要占用系统资源、降低系统的作效率。一个传统的实际系统,往往采用软件和硬件相结合的滤波方法,这种结合是在两者的优缺点之间的寻找一个平衡点。
    
     硬件抗干扰主要采用隔离技术、双绞线传输、阻抗匹配等措施抑制干扰。常用的隔离措施有采用a/d、d/a与单片机进行隔离以及用继电器、光电隔离器、光电隔离固态继电器(ssr)等隔离器件对开关量进行隔离。
    
     2 利用cpld实现数字滤波及抗干扰
    
    
     这里介绍的采用cpld实现信号滤波及抗干扰的方法已经在智能仪器泵冲测量仪的开发中得到验证。下面就如何采用cpld对系统的四路外部传感器脉冲信号和四路按键信号实现滤波、锁存、中断申请等功能进行阐述。
    
     2.1 传感器信号滤波
    
    
     由于要对传感器信号进行数字滤波,cpld要引入时钟信号,因而我们对cpld定义一输入端clki,作为数字滤波器的计数脉冲输入端。clki由单片机定时器1定时产生500hz脉冲。以一路为例,泵冲信号滤波部分如图1所示。
    
     oo0为经电平转换后接近开关输出的信号。当oo0为低电平时,说明泵1未动作,封锁三端与门,时钟信号clki无法通过,计数器bcn3n不计数。同理,当aa4为高电平时,亦封三端与门(至aa4如何变化及作用下文有介绍)。故当oo0为高、aa4为低时,clki接通计数器clk端。当oo0和clr端任意一个为低时,计数器清零。计数器ban3n由max+plus ⅱ的文本编程器编程,其文本如下:
    
    
     subdesign bce3n
    
    
    
     ( clk:input;
    
     q[4..0]:output;)
    
     variable
    
     count[4..0]
  &