任意波形发生器(AWG)是一种功能强大且灵活的信号发生器,能够在发生器带宽范围内输出任意波形。拥有AWG之后,您将需要在其中产生波形。创建,捕获,修改和传输测试波形的步骤可以很容易地与发生器的步骤相匹配。 本应用笔记通过提供示例,来简化创建、捕获、修改、传输波形的过程。我们将介绍函数发生器模式,使用方程式创建波形,从数字化仪,示波器和MATLAB等第三方软件传输采集波形。它还包括这些波形的编辑和处理。我们的硬件重点将放在M2i.6xxx和M4i.66xxPCIe AWG上,其示例如图1所示。

这些模块化AWG产品提供16个型号,具有1至4个通道,信号产生速率从20MS/s至1.25GS/s,带宽为10MHz至400MHz,分辨率为8、14或16位。所有AWG产品都使用一组通用的驱动程序和支持软件。

图1基于PCIExpress的M4i.66xx系列AWG提供1、2、4通道,采样率高达1.25GS/s,带宽高达400MHz。

使用AWG的函数发生器模式

每个AWG都可以将其用作简单的函数生成器,可以直接产生和输出正弦波,矩形(正方形),三角形,锯齿形和直流波形,而不需要任何复杂的操作。SBench6软件包中提供EasyGenerator功能。SBench6是一款功能强大且直观的交互式测量软件,用于采集,处理和创建信号。它用于所有Spectrum的数字化仪,AWG以及基于LAN总线的NETBOX系统。

图2

EasyGenerator是SBench6软件的组成部分,如图2所示。EasyGenerator便于选择六种函数发生波形中的任何一种,包括正弦波,矩形,三角形,锯齿形,SINC和DC波形,用户可以调节每个波形的频率,幅度和相位,矩形,三角形和锯齿波的占空比也可以调节。它还可以为每个可用的输出通道选择单独的波形设置,只需按一下开始按钮就可以将所有启用的波形传输到AWG输出。EasyGenerator提供了一种将标准函数发生器波形输出到AWG的简单方法。

使用SBench6中的方程式创建波形。

创建波形的最准确方法是将它们建立在数学方程式的基础上。它们精确且可重复,并提供各种测试信号。SBench6包括一个函数生成器编辑器,支持使用基于文本的方程式生成波形,如图3所示。

图3使用SBench6的函数生成器编辑器基于方程式创建正弦扫描

函数发生器编辑器接受文本格式的方程式,并允许选择采样率,幅度和波形持续时间。

编辑器使用以下运算符:

Operators

+Addition

-Subtraction

*Multiplication

/Division

%Modulo

^Power

&bitwiseAND

|bitwiseOR

<<bitwiseleftshift

>>bitwiserightshift

Italsoacceptsthesepredefinedconstants:

e=Euler’snumber=2.7182...

pi=PI=3.14159...

Thefollowingfunctionsarerecognized:

sin(x)Sine

cos(x)Cosine

tan(x)Tangent

asin(x)ArcSine

acos(x)ArcCosine

atan(x)ArcTangent

sinh(x)HyperbolicSine

cosh(x)HyperbolicCosine

tanh(x)HyperbolicTangent

ln(x)NaturalLogarithm

abs(x)AbsoluteValue

所有函数都需要一个参数。标准参数是x(当前样本),它从0到[length-1],也可以使用另一个表达式修改参数,这需要操纵合成信号的时基。

此外,以下条件函数采用基于参数的值,如说明中所示。

if(x,min,max)ifx>=minandx<=maxtheresultis1.0,otherwisezero

sign(x)is-1.0ifargumentisnegative,+1.0ifargumentispositive

tri(x,d)Trianglewithd%ofoneperiodrising,theother100-d%falling

rect(x,d)Rectanglewithd%ofoneperiodhigh,theother100-d%low

图4显示了使用上述运算符和函数创建正弦扫描波形的示例。Spectrum提供了一个应用笔记,其中展示了24个使用方程创建波形的示例。该注释可在主页上找到。

图4使用SBench6中的方程式创建正弦扫描的示例。

导入波形

我们已经看到,在Spectrum的SBench6软件中可以在本地创建波形,也可以从其他来源创建或获取波形,包括数字化仪和数字示波器以及电子表格,数学程序和系统集成软件等软件工具。这些来源的波形可以导入到SBench6中,并使用以下导入格式之一发送到AWG。

导入SBench6

函数将加载先前存储的SBench6数据文件,包括所有包含的信号。

导入SBench5

此函数将导入SBench5格式的数据文件,数据格式由SBench产品的先前版本使用。

导入ASCII

此函数将导入一个ASCII文件,其中包含基于列的信号数据。该函数将尝试确定数据格式,然后将数据转换为有效信号。

导入波

此函数将导入由全球标准文件扩展名.wav标识的标准波形音频文件。从波形文件派生一个或多个信号,并显示在SBench6中。不包含在波形文件中的数据信息被设置为标准值。

导入二进制

函数导入纯二进制文件,该文件仅包含信号数据而没有标题信息。该函数将查找由SBench6编写的附加头,并使用此处存储的信息。如果在基本信息SBench6中没有找到头文件

将提示输入所需的信息。

下表显示了各种信号源的最常见导入格式:

波形源

传输文件格式

SpectrumDigitizer

.sb6dat,ASCII,Binary

SpectrumAWG

.sb6dat,ASCII,Binary

SpectrumdigitizerNETBOX

.sb6dat,ASCII,Binary

Digitizer(Non-Spectrum

ASCII

DigitalOscilloscope

ASCII

Spreadsheet(Excel)

ASCII

MathProgram(MATLAB)

ASCII,Binary

SystemIntegrationSoftware(LabVIEW)

ASCII,Binary

Audio Recording

Wave

从频谱数字化仪导入波形

使用SBench6可以轻松地从Spectrum数字化仪导入波形,每个Spectrum设备(数字化仪和AWG)都有一个SBench6实例。使用数字转换器捕获所需的波形,确保信号幅度,带宽和采样率在AWG范围内。捕获波形后,使用文件下拉菜单以SBench6格式(.sb6dat)导出采集的波形。注意保存导出的波形文件的路径和文件名。

打开SBench6的AWG实例。图5显示了将波形导入AWG的步骤。

图5使用“文件”下拉菜单下的“导入”功能将数字化仪中的波形导入到SBench6AWG实例中的过程。

从文件下拉菜单中选择导入/加载。选择SBench6格式,使用“选择要导入的文件”导航。

对于所需的文件(从SBench6的数字化仪实例导出的),然后按“Open”。所选文件中存储的波形将出现在SBench6左上角的“输入通道”窗格的import标题下。右击所需的波形,然后选择“AddtoDisplay”以查看波形。

在SBench6的AWG实例的左下角找到“OutputChannels”窗格。注意所需的输出通道。单击并将所需的输入通道拖到所需的输出通道。现在,输出通道的指定数据字段应指示导入波形的名称。

右击输出通道,然后选择“设置”选项。设置通道将弹出显示输出通道的配置,包括新分配的数据文件。选中“输出启用框”以从选定的AWG通道输出波形,如图6所示。

图6将波形传输到所需的输出通道并启用AWG输出

应当注意,可以使用“设置通道”弹出窗口将所需波形分配给选定的输出通道。还要注意,可以从此弹出窗口控制输出通道幅度范围和相关的配置项。

信号处理后将波形传输到AWG。

如图7所示,使用数字化仪的多重采集模式采集了5个超声波波形,这些波形集合被导入AWGSBewnch6的实例中。模拟此操作所需的波形是五个波形的平均值。该计算可以在SBench6中进行,方法是右击导入的波形,然后从弹出窗口中选择“计算”。下一个弹出窗口提供了计算选择,选择“信号平均”,然后从下一个弹出窗口中选择平均倍数。平均多重设置允许输入平均段数。在该示例中,所有段均设置为取平均值。单击“开始”启动计算,结果显示在“输入通道”窗格中,显示轨迹MAV_Ch-1。将此波形添加到显示器中进行检查,并确认它是否是所需的仿真波形。如果波形正确,则拖动MAV_Ch-1到输出通道。现在,平均的超声波波形将是AWG输出。这可以通过计算得到的任意时域波形来实现。

图7将平均波形转换成AWG输出通道的步骤。

从数字示波器或数字化仪导入波形

有一种专门用于内部存储的二进制格式,还有基于文本的格式,包括ASCII,MATLAB(.dat)和spreadsheet(.csv)格式。使用SBench6的导入功能,这些基于文本的格式最容易引入AWG的格式。

SBench6可以处理单列幅度(Y)数据或包含幅度(Y)和时间(X)数据的双列的ASCII导入。它扫描文件并自动尝试确定数据格式,包括文件的长度,时钟速率和幅度范围。

信号应该通过与AWG.Save兼容的振幅范围、采样率和内存长度等设置来获取,将波形另存为单列幅度数据或双列时间和幅度格式。要注意存储波形文件的格式和文件名。

使用文件下拉导入/加载选择将波形文件导入SBench6,如图8所示。

图8将ASCII文件从数字示波器导入SBench6的步骤。

选择ASCII导入,将弹出一个对话框,提示选择导入源文件名,选择源文件名后,弹出“基本文件设置”对话框。输入您正在使用的ASCII文件格式的详细信息以及相关的设备设置。图8中的覆盖图显示了示波器屏幕以及部分保存的ASCII文件。DSO文件头提供了文件长度和采样周期,SBench6已经捕获了这些信息。数据被列为两列,第一列是时间信息,第二列是幅度信息,使用科学数字格式,分隔符是逗号,换行控件使用回车和换行。最后的设置是要跳过的行数,以防止包含标头。在这种情况下,标题包含10个项目。在“基本文件设置”对话框中输入或验证此数据后,请按“确定”按钮导入波形。

导入波形后,可以将源波形从通道窗格中的“导入”字段拖动到所需的输出通道,如之前的频谱数字化仪导入示例中所述。

从第三方软件导入波形

波形也可以在第三方数学,电子表格和系统集成程序(例如MATLAB,Excel或LabVIEW)中生成。一般过程是相同的,波形数据存储为ASCII文件并导入到SBench6中。图9提供了使用MATLAB的示例,波形的采样率和幅度范围应在使用AGW的范围内。光学测量中常见的一个Volt SINC2函数是使用100MS/s的采样率计算并保存为ASCII文件的。使用文件下拉菜单再次调用ASCII导入函数,选择源波形,并使用基本设置选择合适的ASCII设置。接受ASCII设置时,波形将被导入并显示在SBench6左上角的输入通到窗格中。此时,可以将其拖动到所需的输出通道或模拟显示。SBench6中的波形也可以使用计算工具进行处理,然后传输到输出通道中。

图9通过ASCII导入,显示从MATLAB(MATLAB编辑器和显示的绘图窗口)将波形导入到SBench6的步骤的合成图像。从文件下拉列表开始,选择ASCII,选择源文件,验证基本文件设置,然后按OK导入。

MATLAB和LabVIEW具有强大的文件格式化工具。借助一些编程技巧,用户可以以二进制格式输出数据。他们还可以使用适当的频谱驱动器将波形直接加载到AWG中。

导入.wav格式的波形文件

波形音频或.wav文件用于编码声音,音乐和相关波形。SBench6也可以导入这些文件,如图10所示。

图10使用文件下拉菜单,选择Wave以WaveformAudio或wav.file.All导入,示例为1.2秒的“喇叭声”,一旦导入,即可通过AWG输出播放波形。

使用“文件”下拉菜单再次到导入功能。SBench6将提示输入文件名和幅度范围。与其他波形导入过程一样,单击并拖动导入的波形可以将其拖动到所需的输出端口或模拟显示之一。

结论

SBench6是一款功能非常强大的波形创建工具,可支持Spectrum的全系列任意波形发生器。其操作范围从简单的函数发生器操作,复杂的波形创建,高级信号处理到快速导入多种波形格式。它是AWG和其他波形源之间的桥梁,无需任何编程即可将波形直接加载到AWG中。

使用SBench 6为任意波形发生器创建,捕获和传输波形相关推荐

  1. 单片机课设基于51单片机的波形发生器(公开资源)(四种波形)(同时输出两种波形)

    单片机课设-波形发生器 前言 一.课设任务是什么? 二.如何解决这几个任务? 三.仿真原理图 四.代码 4.1 LCD1602代码 4.2 波形输出以及8*8点阵显示代码 4.3 波形选择 五.仿真源 ...

  2. 89c51汇编语言波形发生器,51单片机汇编语言实现波形发生器

    组织0000小时 LJMP启动 组织0050H 开始3330 JNB 1.0,J100 JNB P1.1,J101 JNB P1.2,J102 JNB P1.3,J103 LJMP启动 J100: m ...

  3. 画时域随机信号波形_【鼎阳硬件智库原创︱测试测量】任意波形发生器的基本输出波形及其相关参数...

    方浩 鼎阳硬件设计与测试智库专家组成员 传统的函数发生器可以输出正弦波.方波.三角波等标准波形,但是在实际的测试场景中,为了模拟产品在实际使用过程中的复杂情况,往往需要人为地去制造一些"不规 ...

  4. 74ls390设计任意进制计数器_利用数字频率合成技术设计高速任意波形发生器(上)...

    波形发生器为常用器件,正因如此,波形发生器具备较强现实意义.对于波形发生器,诸多朋友均存在一定兴趣.此外,小编在往期带来诸多波形发生器相关文章,热爱波形发生器的朋友可翻阅哦.本文中,小编对于波形发生器 ...

  5. 波形发生器的工作原理

    当下很多电子电路装置中都有波形发生器,在调试硬件时,常常需要加入一些信号,以观察电路工作是否正常.这些装置拥有丰富多样的功能,为人们的生活提供了方便.对此,很多用户对于波形发生器并不了解,今天这篇文章 ...

  6. 33220a 编程C语言,基于AT89C51单片机的数字式波形发生器(非常完整).doc

    摘要 本系统是基于AT89C51单片机的数字式波形发生器.采用AT89C51单片机作为控制核心,外围采用数字/模拟转换电路(DAC0832).运放电路(LM324).按键和LCD(1602)等.通过按 ...

  7. 已调信号波形是怎样的_【鼎阳硬件智库原创 | 测试测量】初识任意波形发生器...

    方浩 鼎阳硬件设计与测试智库专家组成员 在产品调试的过程中,大多数的电路需要输入某种幅度随时间变化的信号,在这样的应用场景中,一个完整的测试测量系统一般会包含激励源,被测件和采集仪器三个部分.采集仪器 ...

  8. 高速数据采集卡与AWG任意波形发生器在量子计算中的应用现状

    量子计算的现状与发展 自21世纪初以来,量子科学,特别是量子信息科学这个领域,研究活动正在迅速增加. 这一研究领域有望取得巨大的技术进步,这可能对我们未来计算和通信得运营方式产生深远影响. 科学家们正 ...

  9. npn三种波形失真_【鼎阳硬件智库原创 | 测试测量】初识任意波形发生器

    方浩 鼎阳硬件设计与测试智库专家组成员 在产品调试的过程中,大多数的电路需要输入某种幅度随时间变化的信号,在这样的应用场景中,一个完整的测试测量系统一般会包含激励源,被测件和采集仪器三个部分.采集仪器 ...

最新文章

  1. Linux shell 学习笔记(4)— linux 环境变量(全局变量、局部变量及变量持久化)
  2. 萌新发问:MyBatis日志到底是如何做到兼容所有常用日志框架的?
  3. c语言for循环说课稿,C语言FOR循环说课稿.docx
  4. go语言值得学习的开源项目推荐
  5. php 正则表达式验证金额,php 正则表达式验证数字
  6. JDK 8功能的可疑方面
  7. git指令如何葱master转到dev_小姐姐用动画图解Git命令,一看就懂!
  8. 全方位打造最强终端(iterm2 + oh my zsh)
  9. windows c++ cjson 使用_cJSON源码剖析
  10. 6-3 断言与防御式编程
  11. delphi java jni 互通_编程应用实例:Java通过JNI与Delphi交互
  12. ECshop sina
  13. flume与kafka的整合
  14. Hosts 文件切换工具
  15. 月薪3万Java优秀简历模板
  16. ASCII码转HEX与HEX转ASCII码
  17. Jenkins定时构建与轮询SCM
  18. 惠普磁带备份机支持备份几台服务器,HP 磁带机和 Tapeware 备份软件
  19. HTML与CSS如何创建悬停折角纸叠效果
  20. LeetCode114--词典中最长的单词、最短补全词、宝石与石头

热门文章

  1. 西门子s7 200smart与台达伺服电机 运动控制的学习,目标:用触摸屏和西门子smart 控制
  2. Reg Organizer(注册表文件清理器) v8.30.2中文绿色便携版
  3. C语言控制台输入中的复制粘贴
  4. 【备忘】2016年【极限班培训】大数据(尚学堂)
  5. 如何定义结构体变量及如何使用
  6. Linux操作系统各版本ISO镜像下载(包括oracle linux\redhat\centos\ubuntu\debian等)
  7. 3D数学之方位与角位移、欧拉角与四元数
  8. 算法提高 聪明的美食家
  9. VFP视频教程计划启动
  10. 在Ubuntu系统上安装Windows 10(真实有效)