波形(波动)分析库

E5071C

波形(波动)分析库

有关VBA编程的其他主题

概述

COM对象(为E5071C提供)和波动分析库的结合使波形的波动分析非常容易。

利用波动分析库的编程流程

下表显示利用波动分析库开发程序的流程。首先,利用波动分析程序设置分析范围和峰值定义。

  1. 使用波动分析库之前的条件设置

    • 指定分析范围

    • 设置峰值定义 

  2. 使用波动分析库

利用波动分析库之前的条件设置

由于未在波动分析库中指定分析条件,所以利用波动分析程序之前,先用COM对象设置分析范围和峰值定义。

指定分析范围

用下列COM对象指定波动分析范围。

设置峰值定义

用下列COM对象设置波动分析的峰值定义。

波动分析库列表

使用为波动分析提供的程序分析波形的波动并输出结果。所有程序都只在指定通道的激励范围内进行分析。

函数名称

说明

MaxPeakToPeak(Chan)

 

返回正峰值和负峰值之间的最大差值

MaxRightGap(Chan)

返回正峰值与其右边相邻的负峰值之间的最大差值。

MaxLeftGap(Chan)

 

返回正峰值与其左边相邻的负峰值之间的最大差值。

MaxGap(Chan)

 

返回正峰值与其相邻的负峰值之间最大差值。

MaxEnvelopeGap(Chan)

返回连接2个相邻正峰值的线段之间垂直距离的最大值,和2个相邻负峰值的线段之间垂直距离的最大值

GapMean(Chan)

 

返回负峰值与其左右相邻的正峰值之间平均差值。

MaxRippleValue(Chan)

返回负峰值与其左右相邻的正峰值之间差值总和的最大值。

MaxRipplePoint(Chan,Stim)

返回负峰值与其左右相邻的正峰值差值总和的最大值和波谷的激励值(StimD

Pole(Chan,D,LeftStim,LeftValue,
RightStim,RightValue)

返回值(左侧值右侧值)和左负峰右负峰值检测到的第一个低于指定值(D)。

FirstRightGap(Chan)

返回第一个检测到的正峰值(从左向右搜索时)与其右边相邻的负峰值之间的差值。

FirstLeftGap(Chan)

 

返回第一个检测到的正峰值(从右向左搜索时)与其左边相邻的负峰值之间的差值。

FirstRightInterval(Chan)

返回第一个检测到的正峰值(从左向右搜索时)与其右边相邻的负峰值之间激励值的差值。

FirstLeftInterval(Chan)

返回第一个检测到的正峰值(从左向右搜索时)与其左边相邻的负峰值之间激励值的差值。

样本程序

这是使用波动分析程序的简单样本程序。

Sub Sample()

Dim Val As Double      (1)

SCPI.CALCulate(1).SELected.FUNCtion.PEXCursion = 1.5      (2)
SCPI.CALCulate(1).SELected.FUNCtion.PPOLarity = "BOTH"      (2)
SCPI.CALCulate(1).SELected.FUNCtion.DOMain.STARt = 935E6      (3)
SCPI.CALCulate(1).SELected.FUNCtion.DOMain.STOP = 960E6      (3)
SCPI.CALCulate(1).SELected.FUNCtion.DOMain.STATe = True      (3)
   
?span style="font-family: 'Times New Roman'; font-size: 7.0pt;">   
   
?span style="font-family: 'Times New Roman'; font-size: 7.0pt;">   
Val = MaxPeakToPeak(1)       (4)

End Sub

将编码分解为多个块,观察块的执行情况。

  1. 定义变量Val为Double。

  2. 设置峰值搜索的峰偏移值下限设置为1.5,并将峰值搜索的极性分别设置为正峰值和负峰值。

  3. 设置通道1的分析范围为935 MHz至960 MHz。

  4. 对于通道1,用Val变量替代波动分析库中的MaxPeakToPeak函数(程序)的返回值。