一种基于VB的虚拟数字滤波器的设计

发布者:MysticalGlow最新更新时间:2007-08-17 来源: 现代电子技术关键字:扫描  通道  编程  模拟 手机看文章 扫描二维码
随时随地手机看文章

1 虚拟仪器的构成

从构成要素讲,虚拟仪器系统是由计算机、应用软件和仪器硬件组成的。计算机与仪器硬件又称为VI的通用仪器硬件平台。基于PC机平台的虚拟仪器,不但具有强大的软件开发资源,而且造价低,适合于普通用户。本设计就是采用PC DAQ系统来实现的。本设计的系统构成如图1所示。其采用研华公司的PCL2818LS数据采集卡为主,构建计算机硬件外围电路,实现信号调理和高速数据采集。PCL2818LS数据采集卡有如下的功能和特点:

16路单端或8路差分模拟量输入;40 kHz 12位A/D转换器;可对每个输入通道的增益进行编程;带DMA的自动通道/增益扫描;16个数字量输入和16个数字量输出;一个12位模拟量输出通道(D/A转换);可编程定时触发器/计数器;软件支持包括VisiDAQ 3.1,ActiveDAQ和Windows 3.1/95/NT高速DLL驱动程序。由于测量信号没有经过硬件滤波,因此必须对采集进来的信号进行数字滤波,否则对测量结果产生大的干扰,影响测量精度。

2 数字滤波器的结构

数字滤波器(Digital Filter)是指用来对输入信号进行滤波的硬件和软件。所谓数字滤波器是指输入、输出均为数字信号,通过一定运算关系改变输入信号所含频率成分的器件。与模拟滤波器相比,数字滤波器的主要优点是:

(1) 精度和稳定性高;

(2) 系统函数容易改变,因而灵活性高;

(3) 不存在阻抗匹配问题;

(4) 便于大规模集成;

(5) 可以实现多维滤波,一个数字滤波器可以用系统函数表示为:

直接由H(z)得出,表示输入输出关系的常系数线性差分方程为:


可以用两种方法来实现数字滤波器:一种方法是采用通用计算机,利用计算机的存储器、运算器和控制器把滤波器所完成的运算编成程序通过计算机来执行,也就是采用计算机软件来实现;另一种方法是设计专用的数字硬件来实现。数字滤波器有IIR和FIR两种。从结构上看,IIR数字滤波器采用递归结构,FIR数字滤波器主要采用非递归的结构。由于无限冲激响应滤波器IIR具有无限记忆和运算项数较少的特点,本文将介绍由IIR滤波器满足“终端机”中滤波器技术指标的设计方法与实现。

3 IIR滤波器的设计理论和方法

递归型滤波器的结构及其转移函数的形式决定了他的设计方法,递归滤波器的转移函数一般为式(1)的形式。设计递归滤波器就是确定滤波器的系数ak和bk,使他满足滤波器的技术指标。

3.1 递归滤波器的设计

设计IIR数字滤波器的方法主要有两种。一种利用模拟滤波器的理论来设计;另一种是计算机辅助设计,也就是利用最优技术进行设计。他的设计步骤如下:

(1) 确定满足要求技术指标的模拟滤波器的转移函数H(s);

(2) 把模拟滤波器数字化。利用模拟滤波器来设计数字滤波器,就是要把s平面映射到z平面,使模拟系统函数Ha(s)变换成所需的数字滤波器的系统函数H(z),这种由复变量s到复变量z之间的映射关系,必须满足两条基本要求:

① H(z)的频率响应要能模仿Hz(s)的频率响应,即s平面的虚轴jΩ必须映射到z平面的单位圆ejΩ上,也就是频率轴要对应;

② 因果稳定的Ha(s)应能映射成因果稳定的H(z),也就是s平面Re(s)<0的左半平面必须映射到z平面单位圆的内部|z|<1。

上述两个条件既保持模拟滤波器的频率特性,亦保持模拟滤波器的稳定性,所以,映射关系得到的数字滤波器频率特性和稳定性不变。

3.2 由模拟滤波器得到数字滤波器的方案

从模拟滤波器变换成数字滤波器方案主要有以下3种:

冲激响应不变法:

阶跃响应不变法:

双线性变换法:



设计步骤:按一定技术指标将给出的数字滤波器转换为模拟低通滤波器;根据转换后的技术指标设计模拟低通滤波器H(s)。再将H(s)转换成H(z):对于高通、带通或带阻数字滤波器的设计,先将其技术指标转化为与之相应的作为“样本”的低通模拟滤波器的技术指标,再进行频率变换,然后按上述步骤设计出低通H(s),再将H(s)转换成需要的H(z)。

冲激响应不变法设计IIR数字滤波器的主要缺点是数字滤波器的幅度响应产生混迭失真,双线性变换法可克服这个缺点,但是他却引起频率失真。双线性变换的频率标度的非线性失真可以通过预畸变的方法来补偿,即:


模拟滤波器按这两个预畸变了的频率ΩP和ΩT来设计,这样用双线性变换得到的数字滤波器便具有所希望的截止频率特性,因此,本文讨论的是后一种方法,双线性变换法设计首先找出模拟滤波器的转移函数H(s),然后求出对应的数字滤波器的转移函数H(z):

T为采样周期。

4 虚拟IIR数字滤波器的设计与实现

4.1 软件

在虚拟仪器的概念中,“软件就是仪器”。虚拟仪器系统所用的软件,除了计算机所必须的操作系统等基本软件外,还需要设备驱动软件和用户应用程序。功能强大的、现成的驱动软件是数据采集系统的心脏,他为用户使用不同的编程环境和语言提供了强有力的应用程序编程接口(API)。驱动软件在保留高性能的前提下将底层的、复杂的硬件编程细节隐藏起来,为用户提供一个便于理解的接口。对于设备驱动软件,一般情况下都由硬件设备或接口板的厂家提供,用户编程时只需直接调用这些设备驱动程序,一般都符合VISA(虚拟仪器软件结构)标准。

对于用户应用软件,我们选用了工具软件VB,用他进行开发具有周期短,产品可视性好、可靠性高、可维护性强的特点。软件开发步骤如下:

(1) 根据设计要求建立窗体,然后在代码编辑窗口编辑代码。窗体应包含输入控制信息和输出显示信息。在程序代码中对采集进来的原始信号进行数字滤波,为后面电气参数的测量做好准备。

(2) 使用文件输入输出操作存储数据或从文件中读取数据,以便于存储和显示波形数据,也可用于打印和分析结果。

(3) VB 6.0的调试工具包括断点、中断表达式、监视表达式、逐语句运行、逐过程运行、通过窗口显示变量和属性的值。VB 6.0还包括特别的调试功能,比如在运行过程中进行编辑,设置下一个执行语句以及在应用程序处于中断模式时进行过程测试等。

4.2 IIR数字滤波器的设计与实现

本设计采用数字巴特沃斯滤波器(Butterworth)。巴特沃斯滤波器的幅度响应在通带内具有最平坦的特性,并且在通带和阻带内幅度特性是单调变化的。模拟Butter-worth滤波器的幅度平方函数为:

其中ω为角频率,ωc为截止频率,N是滤波器的阶数。从式(9)看出,随着N的增大,幅度响应曲线在截止频率附近变得更加陡,即在通带内有更多部分的幅度接近于1,而在阻带内以更快的速度下降至零。如果用s代替jω,即经解析延拓,则式(9)可写为:

由此得到极点

从上式看出,Butterworth滤波器的极点分布有如下特点:他在s平面上共有2N个极点等角距地分布在半径为ωc的圆上,这些极点对称于虚轴,而虚轴上无极点。N为奇数时,实轴上有两个极点。N为偶数时,实轴上无极点。各极点间的角度距为π/N,Butterworth其传递函数如下:

当N为偶数时:

当N为奇数时:


根据上述方法,我们编制了IIR数字滤波器的设计程序,采用此程序只需选择模拟低通滤波器原型和目标滤波器种类,输入采样频率ω和目标滤波器截止频率ωc,即可自动完成对IIR数字滤波器的设计,如3阶低通数字滤波器的设计实例如下:

选择归一化的3阶Butterworth低通滤波器作为设计型,采样频率为10 kHz,截止频率为1 kHz,运行设计程序得到低通数字滤波器的传递函数为:

幅频图如图2所示。

选择归一化的3阶Butterworth低通滤波器作为设计型,采样频率为10 kHz,截止频率ωc1为1 kHz,ωc2为2kHz,运行设计程序得到带通数字滤波器的传递函数为:

幅频图如图3所示。

5 结 语

数字滤波器可以通过编程实现各种不同系统,满足不同的需要,又可以随时改动系数,调整滤波器参数,选择最佳方案。使用虚拟仪器逐步代替传统仪器已经成为测试领域发展的趋势。但是在实际应用中,仍需要根据具体情况进行程序的优化和软硬件的结合,使虚拟仪器发挥更高的性能。本文作者创新点是使用了VB软件平台开发电气参数测量仪等,虚拟仪器实现了更高的效率,节省了更多的硬件开销,方便了系统的维护并减轻了仪器更新的负担。

关键字:扫描  通道  编程  模拟 引用地址:一种基于VB的虚拟数字滤波器的设计

上一篇:基于TMS320DM642的MPEG4编码器的设计与实现
下一篇:基于ADSP-BF533的最小系统设计

推荐阅读最新更新时间:2024-05-13 18:37

模拟卡拉ok伴唱放大器原理及电路
工作原理:本电路可以把立体声中的歌唱声去掉,仅留下伴奏音乐。立体声信号中的歌曲从IC1(LM386)的2(反相输入端)脚、3(同相输入端)脚以相同电平信号输入,则信号会在LM386中互相抵消,没有输出,而伴奏音乐以立体声形式分别由2、3脚输入,因左右声道电平有差别不会互相抵消。本电路的电压增益为40~46dB(约相当于100~200倍)。话筒信号经IC2放大后加到IC1的同相输入端,经IC1放大和伴奏音乐同时由扬声器放出声音。
[模拟电子]
<font color='red'>模拟</font>卡拉ok伴唱放大器原理及电路
从零开始51单片机教程 —— 24 LED数码管静态显示接口与编程
LED数码管静态显示接口与编程 在单片机系统中,常常用LED数码数码管显示器来显示各种数字或符号。由于它具有显示清晰、亮度高、使用电压低、寿命长的特点,因此使用非常广泛。 引言:还记得我们小时候玩的“火柴棒游戏”吗,几根火柴棒组合起来,能拼成各种各样的图形,LED数码管显示器实际上也是这么一个东西。 八段LED数码管显示器 单片机静态显示接口 八段LED数码管显示器由8个发光二极管组成。基中7个长条形的发光管排列成“日”字形,另一个贺点形的发光管在数码管显示器的右下角作为显示小数点用,它能显示各种数字及部份英文字母。LED数码管显示器有两种不一样的形式:一种是8个发光二极管的阳极都连在一起的,称之为共阳极
[单片机]
从零开始51单片机教程 —— 24 LED数码管静态显示接口与<font color='red'>编程</font>
ARM 系列 -- FS2410 开发板上的串口通信编程
一、目的 串口通信我们并不陌生,我们经常用串口来进行数据传输,可并不清楚它是如何工作的。那这一节我们就来揭开 ARM S3c2410 UART(Universal Asynchronous Receiver and Transmitter) 串口通信的神秘面纱。 二、代码 我们先来分析文件 crt0.s @ 文件 crt0.s @ 作用:设置堆栈指针 .text .global _start _start: ldr sp, =1024*4 bl main halt_loop: b halt_loop 你可能会有疑问,这个汇编文件有什么用?呵呵,这是因为我们的串口通信代码要用 C编写(用汇编可
[单片机]
6.2 µA静态电流双通道,同步降压型Silent Switcher2稳压器介绍
LT8653S是一款输入电压范围为3 V至42 V的双通道、2 A、同步降压型稳压器。基于Silent Switcher® 2技术,能够使LT8653S在高频下实现高效运行,并且具有出色的EMI性能,可以满足汽车、工业、计算和通信环境的严苛要求。 LT8653S将两个独立稳压器通道集成到一个散热增强型3 mm × 4 mm封装中。每个通道可同时提供2 A连续输出电流,在脉冲负载应用中可提供高达3 A的电流。LT8653S支持突发工作模式(Burst Mode®),两个输出均处于稳压状态时仅需要6.2µA的静态电流,这是电池供电系统的一个关键特性。 LT8653S还提供强制连续模式和展频(SSFM)操作。SSFM模式通过将能
[电源管理]
6.2 µA静态电流双<font color='red'>通道</font>,同步降压型Silent Switcher2稳压器介绍
A4980:汽车可编程步进驱动器
     A4980 是一款灵活的微步电动机驱动器,带有内置转换器,易于操作。它采用单芯片解决方案,能够以全步进、半步进、四分之一及十六分之一步进模式驱动双极步进电动机,工作电压和电流可达 28 V 和 ±750 mA。A4980 可使用简单的步进和方向输入或通过 SPI 兼容型接口控制,而且还能用于设置多种整合功能及读取诊断信息。   电流调整器通过编程,能以固定停机时间或固定频率 PWM 工作,并可通过多种衰减模式降低电动机的可闻噪音和提高步进准确性。而且,相电流表可以通过串行接口编程,为特定应用建立适用的微步进电流分布,进一步提高电动机的性能。   电动机的所有相电流均通过 DMOS 全桥式装置控制,使用同步整流,减
[嵌入式]
51单片机选择模拟(AD)量输入接口
在51单片机的设计中经常会接触到模拟量输入,下面为模拟(AD)量输入接口选择源程序。 //-----------------------模拟(AD)量输入接口选择函数声明,变量定义-------------------------------------------------------- #include reg51.h #include intrins.h sbit sel_A = P1^1; sbit sel_B = P1^2; sbit sel_C = P1^3; unsigned char ABC; void timer_set(); //51单片机定时器初始化函数 void coll
[单片机]
2440裸机编程之六 实时时钟
实时日历时钟(RTC)单元作为S3C2440A 内部一个独立的功能单元,能够像钟表和日历一样保存并自动计算时间。它还具有定时报警和产生节拍的功能。RTC 单元仅需要通过外接一个32. 768 kHz 的晶振来提供时钟源。 RTC 可以通过备用电池供电,因此,即使系统电源关闭,也可以继续工作。RTC 的寄存器保存了一些表示时间的8 位BCD 码数据,包括:秒、分、时、日期、星期、月和年。 下面分四部分分别介绍:RTC的显示,RTC的设置,RTC的节拍中断,RTC的报警中断 一、RTC的显示 RTCCON用于RTC的控制,其中RTCCON 用于控制使能,所以在操作RTC的任何寄存器之前,要使这一位使能,这样才使操作有效 rB
[单片机]
2440裸机<font color='red'>编程</font>之六 实时时钟
安捷伦新型模拟信号发生器提供优良近端相位噪声性能
安捷伦科技公司日前宣布,推出一款能够提供最佳近端相位噪声性能的模拟信号发生器,其频率范围高达3.2或9GHz。高精确度和优良性能使其成为设计和制造业测试工程师的理想工具,适用于宽带信号测试或制造雷达、电子对抗及人造卫星或陆地无线电系统。 Agilent E8663B模拟信号发生器的近端相位噪声性能,使得轻松测试高分辨率雷达和电子战系统及元器件成为了可能。出色的电平精度确保了所有测量的可重复性和精确性。另外,为保护用户的长期投资,安捷伦还将在其停产后继续提供支持长达10年的支持服务。 Agilent E8663B模拟信号发生器取代了已停产的HP或Agilent 8662A和8663A信号发生器 ——它们曾是自1981年以来低噪声
[新品]
小广播
最新应用文章
换一换 更多 相关热搜器件

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 安防电子 医疗电子 工业控制

词云: 1 2 3 4 5 6 7 8 9 10

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved