【是德征文】+ 使用MATLAB控制33220函数/任意波形发生器下载仿真波形
[复制链接]
本帖最后由 mars4zhu 于 2017-3-30 15:56 编辑
使用MATLAB控制33220函数/任意波形发生器下载仿真波形 | | | | | 本技术笔记对使用MATLAB控制33220函数/任意波形发生器下载仿真波形进行说明 |
Mars4zhu
目 录
插图索引
错误!未找到目录项。
表格索引
错误!未找到目录项。
1 总述在设计控制原型系统的时候,要求对仿真模型中进行尽量多的噪声和波形模式进行测试,并在实际物理系统中进行同样的测试,实现仿真与实践同步开展,因此需要将仿真的各种波形同样地施加到实际系统上。。 试验采用的的是是德科技keysight(原安捷伦agilent)的33220A 函数/任意波形发生器,采样率为50MSps,最大带宽为20MHz,其自带的波形下载软件Intuilink Waveform Editor支持Excel、VBA等外部软件,由于仿真采用MATLAB/Simulink软件,从Matlab导入到IntuiLink步骤比较繁琐,而且测试中需要不断地修改激励波形,会造成大量的重复性工作。 Matlab的Intrument Control Toolbox支持33220A波形发生器,因而实际测试中也采用Matlab软件来控制仪器产生与仿真同样的激励信号,以便观察实际系统的响应,并与仿真结果进行比较,从而获得与实际物理系统非常接近的仿真模型,更深入地了解系统内部工作原理。
1 MATLAB软件与仪器控制工具箱MATLAB 是由 MathWorks 创建的一个著名的软件环境和编程语言,现在由是德科技作为大部分信号发生器、信号分析仪和频谱分析仪的选件直接提供。 MATLAB 可扩展是德科技信号分析仪和发生器的功能,使它们能够执行定制测量,分析和显示数据,生成任意波形,控制仪器和创建测试系统。 它为数据分析任务(例如信号处理、信号调制、数字滤波和曲线拟合)提供了交互工具和命令行功能。 MATLAB 在不同的行业和学科中拥有超过 100 万的用户,并且是全球 3500 多所高等学府的标准配置。 MATLAB 有三种配置:从能够进行数据采集和分析的基本 MATLAB 功能,到全面支持信号处理、通信、滤波设计和自动测试。 1) MATLAB 扩展了是德信号和频谱分析仪的功能,可分析和显示测量结果、测试调制方案和自动进行测量 2) 使用是德信号发生器利用在 MATLAB 中创建的简单或复杂的波形对电子器件进行激励 3) 通过使用是德仪器执行测量并将结果与 MATLAB 中的已知基线进行比较,测试电子器件的功能 4) 开发 GUI 或应用程序,使用户能够执行数据分析或测试 5) 表征电子器件,以确定其与设计指标的接近程度 6) 使用是德仪器中的实时数据验证新的算法或测量例程 7) 在 MATLAB 中设计定制数字滤波,并将它们应用于是德科技仪器所捕获的信号 使用MATLAB创建的仿真波形信号,需要根据要求修改为各种不同的波形与噪声。 % 时间为 0~1 秒,一共1000个点 t = 0 : 1/(1000) : 1; % 信号频率为10 ^ 6 freq = 100000; % 正弦波信号 wave = sin(2 * pi * freq * t); % 噪声信号,高斯白噪声 noise = 0.2 * randn(1, szieof(wave, 2)); % 实际信号为正弦波信号与噪声信号的叠加 real_wave = wave + noise; 执行后,此时Matlab的workspace中就有了real_wave的变量存储着波形数据。 使用Matlab的Instrument Control Toolbox的函数实现仪器的控制。如图:
在获得了仪器的编号信息后,连接仪器并上传波形数据。 % 指定仪器为GPIB0 myInstrument.Resource = 'GPIB0::10::INSTR'; % 连接仪器并选择输出通道 connect(myInstrument); selectChannel(myInstrument, '1'); % 下载波形到仪器内 myInstrument.WaveForm = 'Arb'; h1 = downloadWaveform(myInstrument, real_wave); selectWaveform(myInstrument, h1); % 开始输出 enableOutput(myInstrument); 其输出的波形在示波器中查看与Matlab中的一致。
1 总结使用Matlab和仪器控制工具箱,可以很方便的在matlab软件中直接使用函数发生器输出仿真波形,从而方便地完成了仿真到实际系统测试的一步到位。 了解到其实matlab还支持示波器、电源等各类一起的操作,然而当时出于快速完成实验没有使用matlab来分析响应的波形数据。
|