面向信号仪器同步控制方法研究
2016-10-28牛双诚赵秀丽宋振宇
牛双诚,赵秀丽,宋振宇
(1.海军航空工程学院 科研部,山东 烟台 264001; 2.海军航空工程学院 基础部,山东 烟台 264001)
面向信号仪器同步控制方法研究
牛双诚1,赵秀丽2,宋振宇1
(1.海军航空工程学院 科研部,山东 烟台 264001; 2.海军航空工程学院 基础部,山东 烟台 264001)
IEEE 1641标准是IEEE标准委员会制定的新一代面向信号测试标准;首先分析了IEEE 1641标准定义的信号静态模型和事件类信号类型,梳理了可程控测试仪器的常见触发模式;接下来,以任意波形产生器SC53204-J为例,研究了基于IEEE 1641标准的测试仪器信号同步控制方法,并对仪器能力建模、仪器驱动编程、信号资源管理等进行了研究,最后进行了实验验证;该信号同步控制方法已应用在某型自动测试设备的软件平台上;应用结果表明,该方法实现了面向信号的测试仪器同步控制,具有较强的适用性和较广的应用前景。
自动测试系统;面向信号测试;仪器同步控制;事件类信号
0 引言
在复杂装备的测试需求中,被测设备往往对输入的激励信号有着严格的时序要求,其输出的响应信号也经常一瞬即逝。信号的同步与精确定时是自动测试的关键技术,更是大型测控系统的设计和实现难点[1]。
IEEE Std.1641-2010(signal and test definition, STD)是IEEE标准委员会制定的新一代面向信号测试标准。它采用标准的信号模型直接描述被测设备的测试需求,与面向仪器测试方法比,具有面向被测设备、与测试设备无关、测试程序简明可移植性好等优点[2]。同时,它采用严格的数学形式定义信号模型,消除了信号定义上的歧义问题和不一致现象[3]。自发布以来,IEEE 1641标准就获得了广泛的关注,得到了大量的研究和应用[4-6]。
IEEE 1641标准在信号的静态模型中定义了同步属性,用以描述信号的同步产生与测量需求。该标准还定义了事件类信号,作为一类特殊信号类型可以用于信号的同步属性[3]。
不同于面向仪器测试方法直接操作测试仪器实现信号的同步控制。在面向信号测试方法中,对测试仪器的操作是间接完成的。因而,研究基于IEEE 1641标准的测试仪器信号同步控制模型和实现方法具有重要的意义。
本文首先分析了IEEE 1641标准定义的信号静态模型和事件类信号类型,梳理了可程控测试仪器的常见触发模式。接下来,以任意波形产生器SC53204-J为例,研究了面向信号的测试仪器信号同步控制方法,并进行了实验验证。
本文研究的测试仪器信号同步控制方法,已经在我们开发的面向信号软件平台中得到了实现,并应用到某型通用自动测试系统中,获得了较好的应用效果。
1 STD 标准的信号同步
IEEE 1641标准采用信号建模语言(SML)定义了标准化的基本信号类型BSC和常用的复杂信号类型TSF,TSF由BSC信号组合而成[3]。
在图1所示的信号静态模型中,IEEE 1641标准为信号模型定义了同步属性(Sync)用于启动信号的操作(产生或测量等)。同步属性只能使用事件类(Event)信号类型。当同步事件发生时,信号开始工作。当同步事件再次发生时,信号重新启动工作。对于信号源(Source),同步事件可以同步多路信号的产生。对于传感器(Sensor),则可以同步信号的测量。
图1 信号的静态模型
IEEE 1641标准定义了3种事件类信号,可以用于信号的同步属性:
1)基于时间的事件,当特定时间条件满足时,产生事件流输出。该类事件以一定的时间周期产生具有特定时间间隔的事件流,主要包括时钟信号(Clock)和时间性事件信号(TimedEvent)。
2)基于信号的事件,该类事件用于监视一个外部信号,当特定条件满足时产生事件流输出。被监视的信号每满足条件一次,产生一次事件流输出。原则上,任何一个传感器类信号都可以用作事件,但一个事件类信号却不可以用作传感器或信号源。
3)基于事件的事件,IEEE 1641标准允许对事件类信号进行与、或、非、计数等逻辑操作以产生复杂的事件流。
2 可程控仪器的触发模式
现代可程控测试仪器一般提供触发功能用于信号的同步和精确定时,常见的触发模式有手动(面板)触发、软件触发、总线触发、外部触发等。其中,手动触发是通过触摸面板的按键启动仪器操作;软件触发适用于远程控制,仪器在每次接收总线触发命令时启动操作;总线触发是仪器接受来自总线的触发信号输入时启动操作;外部触发则用于仪器接受外部的触发信号输入[7]。
SC53204-J是成都天奥测控技术有限公司的40 M SPS任意波形/数字信号发生器。该仪器是VXI总线仪器,拥有4个模拟信号通道,能够分别独立输出正弦波、方波、三角波、锯齿波和任意波[8]。
SC53204-J提供了以上几种常见的触发模式。如图2所示,该仪器的外部触发是由仪器的外触发系统监视前面板的触发输入信号,当输入信号达到特定条件时触发波形输出。该仪器的外部触发是TTL电平触发,可以选择上升沿或下降沿触发样式。
图2 SC53204-J外触发工作原理
3 解决方案
本文以成都天奥测控技术有限公司的任意信号发生器SC53204-J为例,研究了IEEE 1641标准中面向信号的测试仪器同步控制方法,并进行了实验验证。下面描述其实现方法。
3.1 仪器能力建模
首先对SC53204-J的仪器能力实施建模,其主要思路如下:
1)把外触发系统建模为基于信号事件类型的物理信号资源TrigMonitor,其信号类型定义为Instantaneous(Voltage)。考虑到外触发系统采用的是TTL电平,该信号资源的触发条件设定为电平大于2.4 V(上升沿触发)或小于0.4 V(下降沿触发)。
2)根据4个模拟信号通道提供的信号能力,为其建模物理信号资源。例如,信号资源SinSource_1使用仪器通道1,并提供正弦信号Sinusoid(Voltage)的信号源能力,输出到端口CH1_HI和CH1_LO。
3)4个模拟信号通道所支持的物理信号资源的同步属性设定为TrigMonitor可选。
下面是SC53204-J仪器的INI文件格式的信号能力描述片段:
[TrigMonitor]
Role = "Event"
Module = "外触发系统"
MeasureAttribute = "ampl"
Sync = ""
Gate = ""
[TrigMonitor->Signal]
Type = "Instantaneous(Voltage)"
condition = "GT 2.4V | LT 0.4V"
[TrigMonitor->Port]
Type = "TwoWire"
hi = "TRG_HI"
lo = "TRG_LO"
[SinSource_1]
Role = "Source"
Module = "通道1"
Sync = "TrigMonitor"
Gate = ""
[SinSource_1->Signal]
Type = "Sinusoid (Voltage)"
ampl = "range 0 V to 10 V"
frequency = "range 1 Hz to 40 MHz "
[SinSource_1->Port]
Type = "TwoWire"
hi = "CH1_HI"
lo = "CH1_LO"
[SinSource_2]
Role = "Source"
Module = "通道2"
Sync = "TrigMonitor"
Gate = ""
......
3.2 仪器驱动编程
对仪器物理信号资源的程序控制需要仪器驱动程序的支持。接下来,为SC53204-J开发了面向信号的仪器驱动程序,实现对物理信号资源的编程控制。
在面向信号的仪器驱动程序中,物理信号资源依据其信号角色具有不同的函数接口[6],其设计思路如下。
1)TrigMonitor信号资源具有事件角色的函数接口(IEvent)。其函数接口及功能包括:
(1)Setup函数,根据虚拟信号资源的信号属性设置仪器触发模式(触发源和触发沿);
(2)Run函数,设置外触发系统进入就绪状态,等待触发信号;
(3)Stop函数,外触发系统停止接收触发信号。
2)4个模拟信号通道提供的信号资源,如SinSource_1,具有信号源角色的函数接口(ISource)。其函数接口及功能如下:
(1)Setup函数,设置所在仪器通道的参数配置。如果虚拟信号资源的同步属性是TrigMonitor,则设置该仪器通道为外部触发模式,如果同步属性为空,则设置为立即输出模式;
(2)Run函数,启动所在仪器通道的运行。如果虚拟信号资源的同步属性是TrigMonitor,则进入触发等待模式,如果同步属性为空,则立即输出波形;
(3)Change函数,当虚拟信号资源属性发生改变时,修改所在仪器通道的参数设置;
(4)Stop函数,所在仪器通道停止工作,不再输出波形,也不再接收同步信号。
3.3 信号资源管理
资源管理器是面向信号仪器控制方法的核心软部件,负责管理信号资源,并根据测试程序中的测试需求完成虚拟信号资源与物理信号资源之间的映射。
信号的同步属性设置增加了信号资源管理的难度,尤其当多个信号资源同步到一个事件资源时。资源管理器的工作步骤总结如下:
1)资源管理器启动时,读取系统中所有测试仪器的信号能力描述;
2)资源管理器接收测试程序中的信号需求——虚拟信号资源及其属性设置;
3)完成虚拟信号资源与空闲物理信号资源之间的匹配:
(1)如果虚拟信号资源的信号同步属性为空,资源分配时只考虑其信号能力的符合性及端口的可达性;
(2)如果虚拟信号资源的信号同步属性非空,则需要判断物理信号资源的信号同步属性是否有匹配的可选事件资源,若同步属性是基于信号的事件资源,还需要判断事件资源的端口可达性;
(3)如果多个信号资源同步到同一个事件资源时,需要综合考虑所有信号资源和事件资源信号能力的符合性及端口的可达性。当所有条件都满足时,资源分配成功;
4)资源分配成功时,调用测试仪器的面向信号仪器驱动程序,初始化仪器设置,将物理信号资源的函数接口与虚拟信号资源的句柄绑定并返回给测试程序,最后更新物理信号资源的状态。如果资源分配不成功,则返回错误信息;
5)测试程序释放虚拟信号资源时,资源管理器将测试仪器恢复为默认设置,并标记使用的物理信号资源为空闲状态;
6)资源管理器退出运行时,释放所有虚拟信号资源和物理信号资源,关闭测试仪器会话,卸载内存中的仪器驱动程序。
4 实验验证
我们对上节的测试仪器信号同步控制方法进行了实验验证。如图3所示,定义四路正弦信号的虚拟信号资源source_1~4,并同步到基于信号的事件资源monitor。当信号电平超过2.4 V时,触发四路信号源输出。接下来,我们用DC_SIGNAL信号源作为外部同步信号。
图3 测试程序信号图
在本实验中,采用天奥公司的SC53204-J仪器实现四路信号源和基于信号的事件,采用安捷伦公司的直流电源Ag N6742B模拟外部同步信号。
下面是以TPL(测试过程语言)撰写的测试程序片段:
Setup Voltage inst GT 2.4 V as event monitor;
Setup Sinusoid amplitude 3 V,
frequency 40 KHz
sync to monitor
as source source_1;
Setup Sinusoid amplitude 3 V,
frequency 40 KHz
sync to monitor
as source source_2;
......
Connect source_1 TwoWire to
hi SC53204_J::CH1_HI
lo SC53204_J::CH1_LO;
Connect source_2 TwoWire to
hi SC53204_J::CH2_HI
lo SC53204_J::CH2_LO;
......
Enable monitor TwoWire on
hi SC53204_J::TRG_HI
lo SC53204_J::TRG_LO;
......
Disable monitor;
Disconnect source_1, ..., source_4;
Reset source_1, ..., source_4, monitor;
实验结果显示,SC53204-J仪器的4个模拟信号通道被设置为外部触发模式,外部触发系统被设定为上升沿触发。当直流信号源的输出信号从0 V变为5 V时,四路信号源同步输出正弦波形。
5 结语
本文提出了基于IEEE 1641标准的面向信号测试仪器同步控制方法,并以任意信号产生器SC53204-J为例实现了基于信号的事件和多路信号的同步产生。该方法具有适用性,也可以用于信号的同步测量等场景。
我们在某型自动测试设备的软件平台上实现并应用了本文的测试仪器信号同步控制方法。应用结果表明,该方法实现了面向信号的测试仪器同步控制,具有较强的适用性和较广的应用前景。
[1] 雷振山, 常贵宁. 大规模测试网络的同步采样技术研究与应用[J]. 仪器仪表学报, 2007, 28(4): 748-751.
[2] 杜 里,张其善. 电子装备自动测试系统发展综述[J].计算机测量与控制,2009,17(6):1019-1021.
[3] IEEE Standard Coordinating Committee. IEEE Std 1641-2010 IEEE standard for signal and test definition[S]. USA: IEEE, 2010.
[4] Cornish M, Brown M. Implementing IEEE 1641-a demonstration of portability[C]. Autotestcon,2005. IEEE. IEEE, 2005: 144-152.
[5] Cornish M. Implementing IEEE 1641-compilation techniques (to IVI driver code)[C]. AUTOTESTCON, 2009 IEEE. IEEE, 2009: 317-321.
[6] 牛双诚, 宋振宇, 孙保良. 面向信号的仪器控制模型研究[J]. 计算机测量与控制, 2015, 23(11): 3904-3908.
[7] 赵会兵. 虚拟仪器技术规范与系统集成[M]. 北京:清华大学出版社, 2003.
[8] 成都天奥测控技术有限公司. SC53204-J 40MSPS 任意波形/数字信号发生器用户手册[Z].2003,12.
Research on Signal-oriented Instrument Synchronization Control Method
Niu Shuangcheng1, Zhao Xiuli2, Song Zhenyu1
(1.Department of Scientific Research,Yantai 264001; 2.Department of Basic Sciences, NAEI, Yantai 264001)
IEEE 1641 (STD) is a new standard developed by IEEE SCC20 for signal-oriented test. This paper first analyzes signal static model and event signal definition proposed by the standard, and combs common trigger modes of programmable instruments. Next, illustrated by the example of arbitrary waveform generator SC53204-J, it studies instrument synchronization control methods based on IEEE 1641 standard, and discusses instruments capability modeling, instruments driver programming and signal resource management. Finally, it verifies the method by experiments. The method has been applied on a software platform of an automatic test equipment. Application results show that this method implements signal-oriented instrument synchronization controlling, and has strong applicability and wide application prospect.
ATS; signal-oriented test; instrument synchronization control; event signal
2016-04-13;
2016-05-19。
“泰山学者”建设工程专项经费资助。
牛双诚(1974-),男,河北新河人,博士,主要从事计算机软件、自动测试系统、电子设备故障诊断、可测试性方向的研究。
1671-4598(2016)07-0129-04
10.16526/j.cnki.11-4762/tp.2016.07.034
TP311 文献标识码:A