31组数字存储示波器.docx
《31组数字存储示波器.docx》由会员分享,可在线阅读,更多相关《31组数字存储示波器.docx(14页珍藏版)》请在冰豆网上搜索。
31组数字存储示波器
简易数字存储示波器
组员:
冷春林、范林刚、李金金
指导老师:
黄根春
摘要:
本系统基于示波器原理,以单片机为控制核心,结合FPGA的数据处理能力,辅以必要外围电路,实现了对被测周期信号和单次非周期信号的双踪显示。
系统采用高速A/D对被测信号进行采集,并采用内触发方式,既有普通示波器实时采样和实时显示的功能,能够实现波形的单次和多次触发存储和实时连续显示,又具有锁存功能,能通过操作“移动”键显示被存储波形的任一部分。
本系统不仅完成了题目中基本部分和发挥部分的要求,而且增加了AUTOSET功能和垂直移动的功能,并且能够在点阵液晶上显示当前波形的频率、峰峰值和有效值,还增加了光标的显示,能在液晶上显示两光标的时间差,从而可读出双踪波形的相位差,更符合实际示波器的功能要求。
整个系统操作简便,界面友好,达到了较好的性能指标。
关键字:
示波器、触发、高速A/D、单片机
一、题目分析2
二、方案论证与选择2
1.控制系统方案比较与选择2
2.采样方式2
3.触发方式3
4.数据存储4
5.双踪显示4
6.水平和垂直位置的调节5
6.1.水平移动的调节5
6.2.垂直移动的调节6
三、系统设计6
四、理论分析与芯片的选择7
1.ADC芯片的选取7
2.存储器的选择8
3.垂直灵敏度和前端放大倍数的实现8
4.波形数据的处理8
五、主要模块电路设计9
1.程控放大电路9
2.数据采集电路9
3.触发信号产生电路10
六、软件设计11
七、系统测试与数据分析12
1.系统仪器12
2.测试数据及结果分析12
八、结论12
一、题目分析
题目的要求是将待测信号进行数字存储,并通过普通示波器将被测信号显示出来。
由于待测信号为模拟信号,存储过程为数字方式,故应该将模拟信号进行量化处理,然后存储到存储器中。
当需要显示的时候,从存储器读出数据并恢复为模拟信号,并送往普通示波器Y输入端,在X输入端加入相应的扫描信号,采用X-Y方式观察信号的波形。
因此,设计的重点是模拟信号的处理与采样、数字信号的存储、普通示波器的显示控制和系统的控制四个方面。
二、方案论证与选择
1.控制系统方案比较与选择
方案一:
纯单片机方式。
即由单片机、A/D转换器、D/A转换器及存储器等组成系统。
这种方式下单片机除了完成基本处理分析外,还需要完成信号的采集、存储显示等控制工作与变换。
其优点在于系统规模小,有一定的灵活性,但是受到单片机本身指令速度的影响,A/D采样速率受到限制,实时采样性差,示波器的带宽受到限制,不适宜于观察高速信号和复杂信号,难以达到题目要求。
方案二:
FPGA/CPLD或带有IP核的FPGA/CPLD方式。
即用FPGA/CPLD完成数据的采集、存储、显示及A/D、D/A等功能,由IP核实现人机交互及信号测量分析等功能。
这种方案的优点在于系统结构紧凑、可以实现复杂测量与控制、操作方便;缺点是调试过程繁琐,而且控制难度大,可视化效果也较差。
方案三:
单片机与CPLD结合方式。
即用单片机完成人机界面、系统控制、信号分析、处理、变换功能,用CPLD完成采集控制逻辑及显示控制逻辑功能。
此方案由可编程逻辑器件CPLD和单片机构成主要控制部件,在CPLD内部构造DMA控制单元和地址计数器,可实现高带宽、高速度的要求,在此方案中,示波器的带宽不会受到C51的指令速度的限制,可达到A/D最大采样速率的一半;系统可以对任意波形进行实时采样,实现波形的存储回放。
这种方案兼有前两个方案的优点,且避开了它们的缺点,所以我们采用方案三。
2.采样方式
方案一:
实时采样。
实时采样是在信号存在期间对其采样,如图2.2.1所示。
根据采样定理,采用速率必须高于信号最高频率分量的两倍。
对于周期的正弦信号,一个周期内应该有两个采样点。
为了不失真的恢复原被测信号,通常一个周期内就需要采样八个点以上。
为了配合高速模数转换器,必须用FPGA代替单片机准确的定时控制ADC的采样速率。
以实现高速实时采样。
方案二:
等效时间采样法。
采用中高速模数转换器,对于频率较高的周期性信号采用等效时间采样的方法,即对每个周期仅采样一个点,经过若干个周期后就可对信号各个部分采样一遍。
而这些点可以借助步进延迟方法均匀地分布于信号波形的不同位置。
其中步进延迟是每一次采样比上一次样点的位置延迟△t时间。
只要精确控制从触发获得采样的时间延迟,就能够准确地恢复出原始信号,如图2.2.2所示。
图2.2.2等效时间采样示意图
图2.2.1实时采样示意图
等效时间采样虽然可以对很高频率的信号进行采样,可是步进延迟的采样技术与电路较为复杂。
再者,它只限于处理周期信号,而且对单次触发采样无能为力。
实时采样可以实现整个频段的全速采样,因此本设计采用方案二。
3.触发方式
按照题目要求,本系统采用内触发方式,即触发信号为被测信号。
方案一:
采用数字触发方式。
对波形信号进行采集,将采集到的波形数据和触发电平(可由键盘设置)进行比较,找到波形在上升过程中大于或等于该触发电平的点,即得到触发,此时开始对波形进行存储。
因为本来就需要对波形信号进行采集,使用这种方法无需要增加额外的硬件电路,实现方便。
但是,对波形每个周期只采集有限个点,不可能每次都能采集到等于触发电平的点(这时不得不以大于该电平的值为触发电平),从而使触发位置不稳定,连续触发时输出波形会有抖动现象。
方案二:
采用模拟触发方式。
通过比较器LM311将被测波形信号和触发电平进行比较,大于触发电平时输出为高电平,小于触发电平时则输出低电平,即可得到信号被整形后的脉冲序列,再在该脉冲序列的上升沿开始存储波形即实现了触发存储的功能。
将LM311的反向输入端接上电位器分压即可实现触发电平可调的功能。
这种方法可实现触发电平连续可调的功能,但LM311对低频信号的比较效果很差,输出波形会有较大的振荡,会产生错误的上升沿,从而导致错误的触发。
方案三:
改进型的模拟触发方式。
依然使用LM311,但根据施密特触发器原理,接成一个滞回电路(具体电路见后面的模块设计部分)。
将采集到的波形数据和触发电平进行比较,当高于触发电平时输出高电平,而当低于触发电平△V时才输出低电平,如图2.3所示。
在输出脉冲Vt的上升沿开始存储波形即得到触发。
这个△V称为“噪声容限”,适当调节△V的取值,可以消除波形上叠加的噪声点的影响,从而消除振荡。
这种方法解决了比较器输出波形振荡的问题,可得到较稳定的触发。
图2.3触发电路工作波形
综上所述,我们选择方案三,在实际应用中效果确实不错。
4.数据存储
方案一:
采用外接的双口RAM,或者通用的静态RAM,同时配合FPGA控制RAM的地址线,从而达到波形数据的存储。
双口RAM可以同时进行读和写操作,很适合题目的要求,但控制要求比较复杂,成本也比较高。
而SRAM是常用的存储器,使用方法简单,价格便宜。
也可以用到本设计中。
方案二:
充分利用FPGA的逻辑阵列和嵌入式阵列,将双口RAM写入到FPGA内部,这样可以免除外接RAM,既可以减少硬件电路的复杂,又可以提高简易数字示波器的可靠性。
两种方案均可以实现对数据存储。
但很明显,方案二可靠简单,本设计采用方案二。
5.双踪显示
方案一:
采用两片模数转换器、两片存储器和一片数模转换器,分别的对两路信号采样量化和存储。
双踪显示时,先显示通道A,再选择通道B的数据,轮流输出不同的波形,选择合适的屏幕刷新频率就可以实现两路波形的双踪显示。
如框图2.5.2所示。
该方案简单可行,但付出了两块模数转换器的代价,而且由于该设计采用高速模数转换器,两块一起工作时难免引入很大的干扰。
图2.5.2双踪显示实现方案一
方案二:
只用一片模数转换器、一片存储器、一片数模转换器和一片模拟开关,以高速切换模拟开关,分别选通两路信号进入采样电路,两路波形数据被存放在同一个存储器的奇、偶地址位。
如框图2.5.1所示。
双踪显示时,先扫描奇地址的数据,在扫描偶地址的数据位,从而实现双踪显示。
该方案用一片模拟开关的节省了一片模数转换器,但是控制信号的设计十分烦琐,在数据写入RAM以及信号恢复时的读出顺序都必须周密的考虑,同时模拟开关也难免引入噪声。
图2.5.1双踪显示实现方案二
方案三:
仍然只用一片模数转换器、一片存储器、一片数模转换器和一片模拟开关,但开关的切换频率可以降低,即采样时先采一路波形,待一路采完后(1KB)再采集另一路。
这种方式实现更加简单,不过会带来一定的延时,但由于采样速度很快,这种延时在视觉上可以忽略。
方案三明显优于以上两种,能够较好地实现本设计的目的,故我们选择方案三。
6.水平和垂直位置的调节
6.1.水平移动的调节
方案一:
由FPGA内地址累加器的输出控制数模转换器不断地输出锯齿波。
在后级加一个加法器,调节滑动变阻器R的阻值,可以实现对锯齿波波形的直流电平叠加,从而达到调节显示器上波形左右位置的平移功能。
其简易电路如图2.6.1。
图2.4.1行偏移调节
方案二:
通过对双口RAM读出数据的起始地址的偏移控制来控制波形的左右移动。
其具体方法是:
将滑动变阻器R上的电平通过模数转换器化为数字信号传给FPGA,通过与初始电平数字信号(显示位置复位时对滑动变阻器R上的电平的采样值)的比较来决定起始地址ADRx偏移值。
如图2.4.2所示:
图2.4.2地址偏移示意图
方案一实现左右平移,电路简单,效果明显。
但是一页屏幕的波形通过这样的平移,就必然会将一部分的波形移动到示波器屏幕以外,同时将示波器的另一边变成空白。
这样不符合实际数字示波器的功能要求。
再者,它也实现不了auto的功能。
而方案二方法新颖,对于波形在屏幕的满屏显示和auto的功能都可以轻易处理和简单实现。
于是本设计采用方案二。
6.2.垂直移动的调节
方案一:
通过一片模数转换器DAC0800,一片模拟开关和加法器构成列扫描电路。
双口RAM的数据输入DAC0800,后级是两个电平叠加电路,调节滑动变阻器R的阻值,可以实现对A和B两通道输出波形的上下平移。
模拟开关实现单、双踪功能。
电路和水平移动电路相似。
方案二:
利用FPGA强大的数字处理功能,直接对双口RAM的数据进行处理。
譬如向上平移,可将波形的所有数据都加上一个偏移值,然后送到DAC0800,直接将输出的模拟信号加在y轴上。
而偏移值的大小也是通过采样滑动变阻器R上的电平,通过模数转换器化为数字信号传给FPGA,与初始电平数字信号(开机时对滑动变阻器R上的电平的采样值)的比较来决定的。
方案一需要较复杂的偏移电路,而且对auto的功能无能为力。
方案二方案简单新颖,而且电路简单,复用列扫描所用的DAC,进一步发挥了以数字化代替了模拟化的新思路,而且实现了auto功能,于是本设计采用方案二。
三、系统设计
整个系统由前级信号处理与采集单元、控制系统、存储模块、输出显示模块和控制面板等组成。
A、B通道的模拟信号首先经过阻抗变换、通道切换电路和程控放大器电路,再进入ADC进行采样(程控放大器的放大倍数由键盘输入的垂直灵敏度值来确定)。
AD9220以固定的采样率对该模拟信号进行采样,当满足触发条件进FPGA以下抽样的方式对AD转换得到的数据进行存储,这个抽样率由键盘输入的扫描速度值来确定,并通过FPGA分频得到。
显示控制模块则以固定的频率读取存储单元的内容,不断刷新模拟示波器上的波形,单片机对存储的波形数据进行分析和处理,得到被测波形的频率和幅度信息,并在点阵液晶上显示出来。
FPGA配合从MAX118采样的控制水平位置和垂直位置的电位器上的电平采样值,来对RAM的数据和对RAM的数据起始地址进行加减。
从而实现波形在模拟示波器上的上下平移和左右平移。
键盘的扫描和显示的驱动都是由FPGA完成的。
系统总体框图如下所示:
图3.1系统总体框图
四、理论分析与芯片的选择
1.ADC芯片的选取
ADC的选取涉及以下两个参数,ADC的位宽和转换速率。
根据题目要求,应该根据垂直分辨率来选取位宽,根据扫描速度选择采样频率。
垂直分辨率为32级/div,垂直刻度为8div,则要求信号的量化级数
N=32×8=256
则ADC的位宽为8位。
因此,应采用至少8位的ADC。
扫描速度最大要求为20
,而水平分辨率为20点
,另我们用一片ADC实现两路的采样,因此最大采样速率
即ADC的采样频率应至少为2MHz。
本设计中我们采用了AD公司的12位A/D转换芯片,而且只取其高8位数据,该芯片可提供最高10MSPS的转换速率,所以我们可以将题目要求的3个档细分并扩展到16个档,设定扫描速度从2μs到200ms。
根据上面公式,可以计算出对应的采样率如下表:
表4.1扫描时间和采样率关系表
T
2μs
5μs
10μs
20μs
50μs
100μs
200μs
500μs
Fs
10MHz
4MHz
2MHz
1MHz
400KHz
200KHz
100KHz
40KHz
T
1ms
2ms
5ms
10ms
20ms
50ms
100ms
200ms
Fs
20KHz
10KHz
4KHz
2KHz
1KHz
400Hz
200Hz
100Hz
2.存储器的选择
存储器的位宽根据ADC的位宽来选取,因此应该选用8位的RAM。
存储器的容量也就是示波器的存储深度,与水平分辨率有关,本题要求水平分辨率为20点/div,显示屏水平刻度为10div,那么满屏显示的点数为N=20×10=200点。
再考虑到题目中水平移动扩展功能的需要,我们将存储容量选取为1024个点,即1KB。
这样就可以通过操作“移动”键显示被存储波形的任意一部分。
存储器写入的最大速度即为ADC最大转换速率,由于ADC的最大转换速率为10MHz,因此,RAM的最大写入速度也应为10MHz。
由于我们将RAM集成在FPGA内部,FPGA的工作时钟为40MHz,可以达到10MHz的要求。
3.垂直灵敏度和前端放大倍数的实现
垂直灵敏度和前端放大倍数成反比例关系,垂直灵敏度的调整可以通过调整前端程控增益放大器的增益来实现。
题目要求垂直灵敏度为1V/div,0.1V/div,发挥部分要求为0.01V/div,垂直刻度为8div,垂直分辨率为32级/div。
对于不同的垂直灵敏度,示波器满度显示时输入信号的幅度为
由于ADC的输入电压的峰峰值
,因此需要通过程控放大器将输入电压调整到ADC的输入电压范围内。
我们用模拟开关AD7501、AD844及精密电位器来构成程控放大电路,并在题目要求的基础上将垂直灵敏度细分为8档,如下表所示:
表4.2垂直灵敏度量程
垂直灵敏度(V/div)
0.01
0.02
0.05
0.1
0.2
0.5
1
2
放大倍数
25
12.5
5
2.5
1.25
0.5
0.25
0.125
4.波形数据的处理
1)峰-峰值的测量用单片机扫描RAM中的波形数据,查找数据的最大值和最小值。
在根据如下公式计算波形的峰-峰值:
Vpp=[(Dmax-Dmin)/(255/8)]×A
其中,Dmax为波形数据的最大值;Dmin为波形数据的最小值;A为垂直分辨率,单位为V/div。
2)平均值的测量先扫描RAM的数据值。
用方案一测量频率的方法找到一个周期的地址间隔N,然后用如下公式计算信号的平均值:
Varg=∑u(n)/N
3)AUTO功能单片机先以1V/div和20MHz的采样频率进行采样,然后对采样的数据进行分析比较,计算出符合屏幕显示的波形所需要的放大倍数的挡和扫描时间的挡,然后显示出稳定的波形。
五、主要模块电路设计
1.程控放大电路
采用模拟开关AD7501,宽带运放AD844,配合精密电位器实现从10mv/div到2v/div的多挡垂直分辨率。
P2口的3条数据线(CH1,CH2共需要6条地址线)控制模拟开关选通不同的接入电阻,从而实现不同的放大倍数,达到题目中不同垂直灵敏度的要求,具体的电路如图5.1.1所示:
图5.1.1程控放大电路
2.数据采集电路
本设计采用了AD公司的12位高速模数转换芯片,它采用一种带有宽带输入采样-保持放大器的的四级流水结构,使其在指定采样率的情况下为12位数据精确提供了数字输出错误修正,保证了在整个操作温度范围内没有误码,如图5.2.1所示。
该芯片采用单电源供电,最高可达到10MSPS的采样率。
它的参考电压配置有内部和外部两种,我们采用内部参考电压,如图5.2.2所示。
将VREF和SENSE短接时,参考电压为1V;而将SENSE和REFCOM短接时可产生2.5V的参考电压,我们选择第二种方式,即2.5V参考电压。
由于芯片是单电源供电,输入信号电压范围为0~2×VREF,故需要将双极性输入信号加上偏置,使其变为单极性输入。
具体应用电路见附件。
图5.2.1AD9220功能块图
图5.2.2参考电压配置图
图5.2.3输入连接图
3.触发信号产生电路
要使屏幕上显示稳定的波形,则需将被测信号本身或者与被测信号有一定时间关系的触发信号加到触发电路。
触发源选择确定触发信号由何处供给。
通常有三种触发源:
内触发(INT)、电源触发(LINE)、外触发(EXT)。
根据题目要求,本设计采用内触发方式。
内触发使用被测信号作为触发信号,是经常使用的一种触发方式。
由于触发信号本身是被测信号的一部分,在屏幕上可以显示出非常稳定的波形。
双踪示波器中通道A或者通道B都可以选作触发信号。
边沿触发信号产生电路的核心是比较电路。
比较器采用LM311,该芯片的一般应用电路在处理低频信号时会在输出端形成很明显的振荡,不能达到良好的效果,我们将其加以改进,引入正反馈,接成一个滞回电路。
如图5.3所示,施密特触发器为了将比较器出来的方波整形得更加完美(减少毛刺)。
在电路中,上比较电平用
表示,下比较电平用
表示,设LM311的输出高低电平分别为
和
,则有如下关系:
滞回电压由R1、R2进行调节,只要
选择合适,就能有效地消除比较电路输出的振荡现象,从而大大提高了抗干扰的能力。
但由于滞后电平的存在,会使检测灵敏度变差,故
不宜取得过大。
六、软件设计
图6.1软件流程图
七、系统测试与数据分析
1.系统仪器
PC机:
清华同方P1.7G,128M
SG1733SB3A直流稳压稳流电源
FLUKE17B数字万用表
泰克TDS1002双踪示波器
E51/S伟福仿真机
2.测试数据及结果分析
略。
八、结论
本设计完成了题目的基本部分和发挥部分的要求,成功的实现了如下功能:
1.垂直灵敏度的多挡步进(8挡);
2.水平分辨率的多挡步进(17挡);
3.幅度、频率及平均值波形参数的测量;
4.实现了DC-50KHz波形的AUTO功能及左右上下平移功能;
5.实现了实时显示的功能,和对某段波形进行及时存储和连续显示。
6.实现了光标的显示,并且能在液晶上显示两光标的时间差,从而可读出双踪波形的相位差;
7.采用点阵显示,界面美观友好。