秋千厂家
免费服务热线

Free service

hotline

010-00000000
秋千厂家
热门搜索:
行业资讯
当前位置:首页 > 行业资讯

虚拟仪器的高精度波形发生器

发布时间:2020-07-21 18:06:50 阅读: 来源:秋千厂家

摘要:一种用于虚拟仪器的高精度数字式的波形发生器。采用了折线近似逼近方法和三角分解实现方法,给出了硬件电路结构。

本文引用地址: 关键词:虚拟仪器 波形发生器 函数发生器 折线近似 三角分解 乘法DAC

随着计算机软硬件技术的迅速发展,20世纪90年代以来出现的虚拟仪器技术正日益成为现代电子测试仪器的主流。基于PC总线的虚拟仪器的出现,使得使用者可以按自己的需要设计和构建各种测试分析仪器和系统。现代电子测试仪器进入了使用者也能设计、开发和构建的个人仪器时代。 虚拟仪器由PC计算机、通用硬件模块和虚拟仪器软件(图形化软件开发环境和控制软件)构成。虚拟仪器的功能和性能主要取决于虚拟仪器软件和通用硬件模块。

虚拟仪器的通用硬件模块主要有:高速数据采集卡、信号发生卡和逻辑分析采集卡等。本文主要讨论虚拟仪器信号发生卡中(任意)波形产生的技术。

采用数字方法或计算机技术逼近任意波形的原理如下:DAC将数据发生器送出的数据转换为模拟信号(电池或电压),扫描频率发生器控制数据发生器送出数据的步长。数据发生器大致分为两类:存储式和实时运算式。存储式是将预先计算的波形采样数据放在存储器中,这种方式适用于周期性的或者预定的波形发生,可以达到很高的重复频率。实时运算式则由计算机或微处理器实时计算波形采样数据,这种方式适用于非周期性的或者无法预定的波形发生。扫描频率发生器通常用数字锁相环或者数字频率合成器构成。

所产生的模拟波形的失真度主要取决于逼近波形的方法、数据点步长(扫描频率、采样周期或数据点密度)、数据的分辨率(DAC的分辨率)。 广泛采用的阶梯被逼近任意波形的原理见图1所示。其中DAC作为零阶保持器(Z.O.H.),产生一个变幅度的阶段波形fo(t),模拟低通滤波器(LPF)滤除DAC在数据变换时产生的高频数字噪声并平滑阶梯波的台阶。这一方法由于数据占计算及实现电路简单而被广泛采用。为平滑台阶,低通滤波器和截止频率与信号波形的变化率必须匹配。在需要大范围改变信号变化率或者改变周期信号的重复频率时,低通滤波器的设计和实现成为问题。需要设计和实现一个跟踪滤波器或者切换滤波器的频带,否则在产生慢变信号时仍有明显的台阶。而大范围的跟踪滤波器的实现极其困难。尽管采用更高分辨纺的DAC可以减少台阶的幅度,然而在产生低频波形或慢变波形时还是有明显的台阶。

改善产生波形的失真度的一个途径是采用高阶的波形逼近方法。本文主要介绍采用折线近似逼近任意波形的方法(一阶波形逼近方法)及其实现。

1 折线近似逼近任意波形方法的原理

连续的时间函数f(t)可以用函数空间的基函数的线性组合逼近:

函数空间的基函数选为自然基组{1,t,t 2,…},则有:

采用计算机技术实现连续时间函数f(t)的逼近时,采用等间隔T(等采样周期)给出数据点的方法,即:

实现时,在(3)式中只能取有限项来逼近。实际上,阶梯波逼近方法只取了零次项,即:

fo(t)→f(t),f0(t)=f(k),kT≤t(k+1)T (4)

近线近似逼近方法取了零次项和一次项,即:

f1(t)→f1(t),f1=f(k)+[f(k+1)-f(k)/T](t-kT),

kT≤t(k+1)T (5)

因此阶梯波逼近方法可以称为零阶逼近方法,折线近似逼近方法可以和为一阶逼近方法。当然还可以构造二阶、三阶逼近方法,达到更高的精度和失真度。但是高阶逼近方法需要更复杂的电路结构,实现起来也更困难。

从原理从,一阶逼近方法比零阶逼近方法有更好的精度和失真度,如图2所示。显然,用折线f1(1)逼近所需波形f(t)比用阶梯波f0(t)逼近所需波形有更好的失真度。但折线f1(t)不能直接实现,常用的方法是分解为矩形和斜坡(对应(5)式中的零次项和一次项)f10(t)和f11(t),分别由阶梯波发生器和锯齿波发生器产生,再合成为折线逼近波形f1(t)。这种方法在每一时钟分点(采样点)需要两个数据,实际电路中容易在采样点出现波形衔接间断的现象。

曾经提出过一种如图3所示的锯齿分解方法来实现折线逼近波形,将每一采样周期的波形分解为两个直角三角形(锯齿波),分别由两个齿波发生器产生再合成为折线逼近波形。由于需要其中一个锯齿波发生器产生倒锯齿波,涉及到积分器的初值问题,电路实现存在困难。这种方法至今未见实际应用。

本文提出一种新的三角分解和实现方法来实现任意波形的折线近似逼近。该方法简述如下:首先用等距分点的折线逼近所需波形,将每一采样周期内的梯形分解为两个三解形;然后用两个峰值分别为所需波形奇数分点值和偶数分点值的三角波f11(t)和f12(t)叠加形成折线逼近波形f1(t)。两个三角波分别由数字式三角波发生器产生。由于在每一时间分点上只需输入一个新数据,因此该方法即可用于存储式数字波形发生器又可用于实时运算式数字式波形发生器。由图4可见该方法的正确性,本文不再作繁琐的数字推导和证明了。

该方法具有以下明显的优点:

(1)数据量小,每一时间分点只需一个数据。矩形一斜坡法则需要两个数据。

(2)数字噪声小,一般无需后接滤波器。2 折线近似逼近任意波形的实现

本文实现折线近似逼近的波形发生器电路结构如图5所示。图5中DAC1、OP1、CMP1与CMP2、RS触发器、模拟开关MS1构成一个可编程重复频率的等幅三角波发生器,所产生的等幅三角波(幅度为VREF)与经倒相器OP2产生的倒相等幅三角波分别供给DAC3和DAC2作为参考电压。波形发生器的采样频率是等幅三角波重复频率的两倍,DAC1的编程数据就是波形发生器的采样频率数据,RS触发器产生的同频率方波供给时序逻辑控制单元作为参考信号以产生波形发生器所需要的各个控制脉冲。乘法DAC3和DAC2(Multiplying DAC)分别产生前述的奇数分点值三角波和偶数分点值三角波,输出三角波的幅值由其编程数据决定,它们分别在奇数采样点和偶数采样点更新编程数据。两三角波经加法器OP3叠加后形成所需波形。输出波形的幅度最终由后接数字编程增益放大器(DPGA)(图中未画出)的编程数据决定。

图5中DAC3和DAC2采用两级数据锁存以减小采样时刻数据转换所产生的数字噪声。

波形发生器的实现应当注意一个重要问题:时间比例尺设置和幅度比例尺设置的独立性和分离性,即二者的设置(或编程)应当不相关联。阶梯波逼近方法中不存在这个问题,而在折线近似逼近方法中,由于产生波形在两个采样数据点间的幅度与实际时间相关(见(5)式),需要采用比较特殊的电路解决这个问题。本文折线近似逼年的电路比较好解决了时间比例尺和幅度比例尺设置(编程)的独立性问题。时间比例尺由DAC1的编程数据决定。幅度比例尺由后接数字编程增益放大器的编程数据决定。DAC3和DAC2的编程数据只依赖于所需波形的标化数据(波形各采样点幅值的相对比值),而与时间比例尺和幅度比例尺无关。加法器输出的合成波形是标化波形。 直接用参考电压为常值的积分型三角波发生器也可以产生前述的奇数分点值三角波和偶数分点值三角波,但这样产生的三角波。其幅值不单单取决于编程数据,还与采样频率有关,其合成波形不是标化波形。换句话讲,其编程数据与时间比例尺和幅度比例尺有关。因此,这样的电路结构不能用于通用波开发生器。

本文提出的采用新的三角分解方法实现任意波形的折线近似逼近及其电路结构已在所研制的虚拟仪器通用信号发生卡中得到应用。样机测试结果表明,基于该方法的波形发生器具有较高的精度和良好的噪声性能。 linux操作系统文章专题:linux操作系统详解(linux不再难懂)

25 Markdown 甘特图

01 Python 的对象和类

Java 继承

Android 拖动条 SeekBar