我们从2011年坚守至今,只想做存粹的技术论坛。  由于网站在外面,点击附件后要很长世间才弹出下载,请耐心等待,勿重复点击不要用Edge和IE浏览器下载,否则提示不安全下载不了

 找回密码
 立即注册
搜索
查看: 1135|回复: 0

数字示波器在高频信号采集中的应用 - 测试测量 - 电子工程

[复制链接]

该用户从未签到

1万

主题

1292

回帖

2万

积分

管理员

积分
29577

社区居民最爱沙发原创达人社区明星终身成就奖优秀斑竹奖宣传大使奖特殊贡献奖

QQ
发表于 2013-3-30 09:27:12 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区

您需要 登录 才可以下载或查看,没有账号?立即注册

×
1 高频信号的采集

当要对一个高频信号(比如高达100MHz的雷达波形)进行采集和处理的时候。通常会设计一个高速或者超高速硬件采集电路,包括放大部分、滤波部分;A/D和D/A转换部分等,这种电路的要求非常高,要求边采集边存储,电路速度高,而且要考虑各种辐射干扰等,同时,目前市场上成品价格很难承受。并且根据采样定理,一个最高频率为/的连续信号,完全可以用时间上相隔了=1/2f的一系列离散采样值来表示。所以采样频率F应等于或大于被采样信号的最高频率f的2倍,即F≥2f。考虑到实际恢复波形的低通滤波器不可能具有完全理想的特性,为了正确恢复信号,通常取9=(2.5-5)f或更高。当采样的信号高达100MHZ时,就应该达到500MHz的采样率。

2 示波器与计算机的通信

Tektronix公司的TDS系列数字实时示波器早已经在各处得到广泛应用,并且其配套的扩展模块TDS2CM和TDS2MM模块具有与外部设备双向通讯的功能,可直接与打印机、微机连接,使波形的存储打印等工作变得十分方便。其中TDS220数字示波器拥有100MHZ的带宽,以10 倍的扫描方式,达到1GS/s的采样率。当配套的TDS2CM模块采用RS232电缆用串口通信与计算机连接后,利用相应软件(如Matlab等)可以对示波器的数据、波形直接进行读取、处理。

因此可以采用数字示波器与PC机间的通讯,在数字信号处理方面,此时数字示波器相当于一个高速信号采集器,他把数据传输到计算机中,配合Matlab,能实现对高频信号的采集与处理,而且与一般意义上的硬件处理器相比没有了A/D和D/A转换过程,是处理的精度和速度都有了明显的提高,而且价格上示波器配套模块TDSCM2模块也比相应功能的硬件处理器便宜不少。

3 优缺点

数字示波器与PC机的通讯不仅具有一般台式数字存储示波器的功能,而且充分发挥了计算机强大的功能和软件设计的灵活性,他具有4个显著特征:

(1)采用编程语言Matlab和面向对象编程技术,软件开发效率高,可操作性和可维护性好;
(2)为数字存储示波器增加了频域分析功能;
(3)充分利用了计算机的存储与外设连接的能力,测量结果和波形可直接打印输出或通过网络共享;
(4)在相同硬件条件下,可以通过修改或增加软件模块,形成新的仪器功能。

由于要用到示波器,计算机以及RS232的连接,没有单个硬件电路简单明了,是其不足之处。

4 应用情况

4.1 通信原理

Matlab是美国Math Works公司推出的一种以矩阵为基本编程单位的高效数值计算语言,是一个集科学计算、图像处理、声音处理于一体的高度集成系统。他具有强大的数值计算功能,其中的Instrument Control Toolbox提供对GPIB,RS-232,VXI,Centronics等端口进行控制的功能。当用Matlab软件通过RS232与TDS2CM模块串口连接可以实现示波器与计算机之间的数据通讯,同时利用Matlab数值处理、矩阵运算功能对示波器记录的波形数据进行各种分析和处理。

Matlab通过调用M文件函数来创建设备对象,得到设备的文件句柄,这样可以像操作文件一样操作设备,对外设进行相关的读写。原理图如图1所示。


当直接通过RS232进行硬件通信控制时,示波器通过DCD(载波检测),CTS(清除发送),RI(振铃提示)3个控制信号表示当前状态,用RTS(请求发送)发送数据。

4.2 数据传榆

当Matlab以二进制格式对示波器的波形进行数据读写时,读写数据与示波器实际数据换算由式(1)给出:

Xn=Xzero+Xiner·n
Yn=yzero+Ymult(Yn-Yoff) (1)
其中:Yn为输入、输出缓冲区中的数据,
n为数据个数:
Xn,Yn为示波器中实际采样时间与信号幅值,
Xzero是所采集波形第一个点的时间,
Xiner是水平轴上的采样率,
yzero是0dB时的幅值'
Ymul是垂直轴上的比例因子;
Yoff是垂直偏移量。

由式(1)可见,所传输的数据完全按照示波器的采样率,波形真实可靠。

程序流程图如图2所示。


对示波器的命令由fprintf函数以字符串的形式输出。

设置和询问命令由具体的示波器厂商定义。

从示波器读取数据的部分程序如下:

g=serial(′coml′);
g.InputBufferSize=10000;
g.timeout=10;
g.BaudRate=9600;
g.Parity='none';
g.StopBits=1;
g.Terminator='LF'
g.FlowControl='hardware';
fopen(g);
fprintf(g,'select:chl on′);
fprintf(g,'data:source chl′);
fprintf(g,'data:encdg srib′);
fprintf(g,'data:start l′);
fprintf(g,'data:stop 2500′);
fprintf(g,'data:width 2′);
fprintf(g,'wfmpre:xzero? ′);
xzero=fscanf(g,'%f′);
fprintf(g,'curve? ′);
out=fread(g,2500,'intl6′);
fclose(g);
delete(g);
freeserial('coml′);

用上述程序对100MHz雷达波形的读取如图3所示。


4.3 数据分析处理与实例

从示波器读取的数据按式(1)转换后就是实现测量所得的波形数据值,并且可以在计算机中做相应的频谱分析。

5 结 语

在现有的实验条件下,利用数字示波器与计算机之间的通信对高频信号进行采集与处理,能完全满足一般意义上的信号采集工作,可以成为实验室物美价廉的实验工具。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

公告:服务器刚移机,
大家请不要下载东西。
会下载失败


Copyright ©2011-2024 NTpcb.com All Right Reserved.  Powered by Discuz! (NTpcb)

本站信息均由会员发表,不代表NTpcb立场,如侵犯了您的权利请发帖投诉

( 闽ICP备2024076463号-1 ) 论坛技术支持QQ群171867948 ,论坛问题,充值问题请联系QQ1308068381

平平安安
TOP
快速回复 返回顶部 返回列表