现在的数字示波器都能供给令人形象深入的收集、丈量和剖析东西套件给工程师和技能人员展开测验。即便这样,也存在你想要批量设置和主动操作的状况,特别是对那些只需简略或重复性丈量的人来说。示波器能够让你定制它们的操作,将仪器功用约束为一些有挑选的测验或使这些测验半主动化。下面便是运用定制用户界面或测验主动化功用协助完结这一意图的一些比如。
●你需求简化示波器操作,以便答应没有经历的用户展开重复性测验。
●你需求主动完结一系列测验,但不必将仪器连接到操控器或主动测验体系。
●你需求运用专门的程序或算法去剖析或丈量收集到的数据。
●收集到的波形需求得到比将数据发送给外部核算机更快速的处理。
简化的设置和测验流程
不同的示波器制造商或许供给不同的定制途径。我运用的Teledyne LeCroy HDO6054示波器运用了一种叫做CustomDSO的功用,它能够在显现器上显现用户可装备的按钮用于调用想要的操作,或许用定制的图形用户界面(GUI)替代默许用户界面。别的一个示波器制造商则供给编程现有用户界面的才能,经过编程能够删去或约束选中的一些功用,然后简化仪器操作。还有些制造商供给在一系列存储的面板设置基础上进行宏编程的才能。你能够编程组成方针测验要素的一系列设置。在某些状况下,你乃至能够编程动态操作。
一切数字示波器都有存储和调用面板设置的功用。这个功用能够让你设置好仪器后将设置参数保存下来供日后运用,或供经历较少的用户运用。这些存储的设置能够根据需求随时调用。基本形式的CustomDSO(在有些类型中是可选项)扩展了这个功用,它能让你将多个设置文件链接成一个有序测验序列,按一下用户界说的按钮就调用一个测验。所调用的设置自身还能够包括对其它设置的调用,因而答应你创立多层次的测验。图1显现了基本形式CustomDSO运用的一个比如,它完结了SPI低速串行接口测验的设置主动化。
图1:挑选了SPI测验的CustomDSO按钮条比如。最多能够界说8个按钮,每个按钮调用一个特定的测验设置。
坐落显现器底部的8个按钮每1个都是用CustomDSO创立的,每个按钮都能够设置一个特定的测验。操作员提示信息能够用盯梢标签刺进。在图1中,只分配了5个按钮。按下任一按钮都能够调出额定的类似按钮组,用于辅导用户完结整个测验。
图2显现了CustomDSO的设置菜单。在基本形式中,多达8个CustomDSO按钮中的每个按钮都与一个示波器设置文件相相关。文件姓名的根部分被分配为按钮标签。在这个比如中,按钮3将调用名为“SPI Decode Table.lss”的设置文件,该按钮的标签便是SPI Decode Table。这个示波器中的面板设置文件实际上是界说仪器状况的VB(Visual Basic)脚本。这些设置文件每个都包括额定的CustomDSO按钮界说,因而多个设置文件能够链接起来,并在多种拓扑中被调用。
图2:CustomDSO设置文件显现设置文件“SPI Decode Table”相关到了按钮3。按下这个按钮将履行对应的设置文件,将示波器设置为想要的设置值。它也能调出其它CustomDSO按钮用于额定测验。
此外,面板设置文件能够包括使示波器操作主动化的动态操作。
留意,在图2所示的CustomDSO描绘框中CustomDSO有两种操作形式(显现在左面)。第2种形式是“刺进(plug-In)”,是一种功用更强壮的形式,能够让你在设置文件中添加自己的ActiveX控件。这些控件由VB、Visual C++或其它ActiveX兼容编程言语编写的例程加以界说。有了ActiveX控件后,你就能够创立你自己的定制用户界面。有很多交互式组件可用,包括按钮、复选框、单选按钮、列表框、图片框和一般对话框。图3显现了运用两个按压按钮的刺进式GUI比如。第1个按钮是Single Trigger,发动单次收集。第2个按钮将通道1(C1)中的波形发送到波形存储器M1,再顺次从M1传送到M2、M2到M3以及M3到M4,高效地将曾经存储的波形移过已有的波形存储器。这后一种功用如果是人工完结的话简直需求按12次按钮。
图3:用于创立用户界说的图形用户界面的CustomDSO PlugIn比如。该界面中包括了按钮、复选框、单选按钮、列表框、图片框和一般对话框。
VB脚本
在这种示波器中,设置文件是ASCII文本文件,其间包括一个完好的VB脚本“程序”,当该程序履行时,会将仪器康复到曾经记载的状况。实际上,每次保存面板时,仪器都会帮你编写一个程序,当该程序履行时会使仪器回来到保存的状况。
除了调用的设置状况外,VB脚本还能够用来创立用规范长途指令操控示波器的程序。你能够从内部运转的设置文件中完结示波器操作的“主动化”。
举例来说,你能够写一个VB脚本,将缩放波形的中心移动到由光标确认的方位。事实上,缩放波形将跟从光标方位。清单1显现了这个脚本。保存的脚本文件后缀与设置文件相同(.lss),并由调用面板设置或将它链接到一个CustomDSO按钮加以运转。经过运用VB脚本再结合CustomDSO就能够编写出极具交互性的测验。图4显现了用于运转VB脚本的CustomDSO。
清单1:缩放波形中心盯梢光标的VB脚本(zoom_trac.lss)。
set app = CreateObject(LeCroy.XStreamDSO)
‘在显现器上显现一条音讯
app.SystemControl.PersistentMessage = Script running; turn off cursor to stop.
‘将触发形式改为中止
app.Acquisition.TriggerMode = Stopped
‘将光标类型设为水平肯定值
app.Cursors.Type =HorizAbs
‘翻开光标
app.Cursors.View = True
‘将缩放1波形水平扩展系数设为10:1
app.Zoom.Z1.Zoom.HorZoom = 10
‘翻开缩放1波形
app.Zoom.Z1.View = True
‘循环让缩放中心盯梢光标水平方位,当光标封闭时退出
While app.Cursors.View = True
‘强制当即触发
‘将参数设为0,False,等候可触发的事情
app.Acquisition.Acquire -1,True
‘读取光标水平方位
curtime=app.Cursors.XPos1
‘将Zoom Z1中心设为光标方位
app.Zoom.Z1.Zoom.HorCenter=curtime
Wend
‘铲除屏幕上的音讯
app.SystemControl.PersistentMessage =
‘断开主动链接
Set app = Nothing
图4:运用CustomDSO运转VB脚本“zoom_Track.lss”。当脚本运转时,缩放波形的中心将盯梢水平的光标肯定方位。从图中能够看出,光标将永久坐落缩放波形Z1的中心。
面板规划文件、CustomDSO和根据VB脚本的设置文件为操控示波器丈量流程供给了很多灵活性。经过让没有经历的用户遵从根据CustomDSO按钮的脚本,它还供给了简化示波器操作的简略途径。
定制处理和丈量
定制还能够向示波器的东西集添加专用的处理功用,让你在已有的示波器上展开专门的剖析和丈量。下面咱们评论能够运用于中档台式示波器的这些技能和其它定制技能。
一切首要制造商出产的中高档示波器都有这个可选功用,即在示波器处理途径中刺进第三方程序的基础上供给某类数学定制操作。一切示波器都支撑MATLAB。本文说到的示波器支撑MATLAB、VB、C/C++、Excel或Java。这个功用根据COM架构,可供给高层定制功用。用户界说算法能够被创立并刺进示波器的处理途径中,回来成果能够当作处理过的数学函数或丈量,并像任何其它示波器波形或丈量相同显现出来。这些波形还能够被内部或用户界说算法加以进一步处理。
示波器运用微软主动操控指令用于长途操控,而这些指令也能够嵌入用户界说的算法完结“智能算法”,然后就像咱们用VB脚本时现已见到的那样,在核算进程中完结实时判定。
作为一个比如,考虑图5中的示波器丈量设备。其间一个100MHz的正弦载波被一个10kHz的方波进行频率调制。波形用一个简略的MATLAB脚本进行解调,解调后的波形显现为数学曲线F1。修正框答运用户不离开示波器环境就完结脚本的创立、修正或加载,因而创立或修正脚本十分便利。
图5:这个嵌入式MATLAB脚本用于解调调频载波,并显现调制波形。修正框答运用户不离开示波器环境就能完结脚本的创立或修正。
调频信号的模仿解调是用图5中修正框榜首行所示的MATLAB“解调”功用完结的。这个功用将源波形、载波频率、采样频率宽和调类型别离作为参数。解调功用的输出有必要被滤波,代码的下面两行是用MATLAB完结的二阶巴特沃斯低通滤波器。相同技能还能够用于创立定制丈量以及数学函数,进程是相同的。
快速定制处理
这种示波器的定制选项中有个高档功用,便是对示波器的数据供给内存映射式拜访,首要用于根据用户的波形或丈量运算。这个功用被称为快速多波端口(FMWP),支撑将C/C++言语编写的定制处理算法刺进示波器处理流。FMWP经过运用同享的内存窗口最大极限地添加了从收集体系到你的处理部分的数据吞吐量。成果能够被送回示波器,或进行独立的处理。这个功用能够支撑多达4个波形输入和输出,以及最多8个参数输出。
图6所示比如是运用FMWP从示波器收集两个波形,一起输出两个处理后的波形,并把一个参数送回示波器。输出由一个经过内存映射数据拜访输入波形的C++程序进行核算。F1输出是输入C1的简略反相。F2是输入C2的肯定值。参数P1是两个输入的相关系数。FMWP的最大长处是,它答应工程师创立他自己的专属代码,并以最大或许的处理速度将它运用于示波器数据。
图6:P1中的FMWP参数设置以及输出F1(输入C1的反相)和F2(输入C2的肯定值),它们都是用处理来自输入信号的内存映射数据的C++程序创立的。