Part v脚本
图1. 两台吉时利系统源表能用单脚本控制产生3相交流波形。
图2. 吉时利3706型系统开关/DMM是LXI Class B仪器,使用基于IEEE 1588的定时器排列一系列测量的顺序。
这部分包含许多脚本例子说明吉时利支持脚本的仪器的一些特点。图1示出了两台吉时利系统源表如何使用单脚本控制产生3相交流波形。在这个例子中,使用吉时利的TSP-Link技术连接这两台仪器,因而很容易用脚本控制这两台仪器。图2说明了基于LXI Class B技术的定时器如何控制脚本工作。在此脚本中,吉时利3706型LXI Class B仪器使用基于IEEE 1588的计时器排列一系列测量的顺序。LXI Class B的定时特点特别适合避免或最小化由延迟或通信时延导致的系统时延。
Part VI如何开发有效的脚本
如何开发有效的脚本呢?
可以用许多种方法开发脚本。吉时利提供称为测试脚本生成器(TSB)下载文件 的IDE(集成开发环境)用于为吉时利任意一款支持TSP的仪器开发脚本。TSB能用于在测试仪器上编辑、下载和执行脚本。TSB包含内建仿真器用于调试脚本无需传送回仪器,这允许即使在没有硬件的条件下也能开发脚本。
一些LXI仪器含有telnet端口用于远程控制。对于这些仪器,用文本编辑器能提供快速和简单的方法编写和调试脚本。通过telnet应用,用户能直接粘贴脚本文本或下载脚本文件到仪器。
一些用户比较喜欢将脚本直接嵌入他们的测试执行应用。这些用户在开发和调试脚本的同时也能开发和调试测试执行应用。
LXI的网络连接性支持吉时利在3700系列开关/DMM产品中嵌入称为TSB Embeded的脚本开发工具。用户能通过仪器本身提供的Web页面访问此工具,从而用Web浏览器开发和管理他们的脚本,无需在PC上安装任何软件。
当开发带嵌入式脚本处理的产品脚本时,可以采用基于函数或基于对象的方法。应当在任何合适的地方使用函数。这不仅对于最大化代码重用是良好的传统做法,而且还减少了脚本引擎执行环境存储的代码量而且为附加脚本和数据存储留下了更多存储区。嵌入式脚本最主要的优点是它能缩短PC主机和测试仪器之间的通信时间。一种基于函数的方法能最大化这种优点,因为PC主机仅需要发送一条短消息调用存储的程序。如果更多长消息经常需要发送给仪器,那么减少通信的优点也消失了。
无论脚本如何开发,脚本带来一些新的测试管理理念。虽然在某些情况下,在仪器的非易失存储器上保存脚本是有用的,但是这样做并非总是最好。当执行的测试预计测试仪器上将使用特定版本的脚本,当开始运行测试时,最好将脚本下载到仪器上。这样就能完全控制测试运行所采用的脚本代码版本。
Part VII PC控制器和基于脚本的仪器
使用分立的控制器,基于脚本的仪器当然可用于常规测试系统。这样做的详细步骤可能有所不同,这取决于制造商选择如何实现脚本。吉时利支持TSP的仪器能轻松地配合单独的控制器使用。如前面详细介绍的,指令的名称和句法有所不同,就像执行查询获取状态和数据的语句。但总的来说,这种改变很小并且任何熟悉仪器编程的人都能很轻松地适应。
那些习惯于使用仪器驱动程序连接软件与仪器的用户都会发现他们能像使用常规仪器那样继续用仪器驱动程序对待基于脚本的仪器。然而,这样做会去除脚本的很多优点。幸运的是,有方法允许仪器驱动程序作者和用户受益于基于脚本仪器具有的额外灵活性和能力。
当开发基于脚本仪器的驱动程序时,可以从三种通用方法中进行选择:
1. 传统方法:编写驱动程序就好象这台仪器是一台传统仪器。这种方法没有利用脚本的功能。唯一的调整是容纳句法差别。
2. 扩展方法:通过传送脚本至仪器的功能增强了传统风格的驱动程序,并且或许能管理返回数据。这提供了用户利用脚本功能的一种方法,但是驱动程序本身不能这样做。
3. 增强方法:基于脚本仪器的驱动程序可以通过本文描述的许多方法利用脚本。例如,驱动程序可以下载脚本,而脚本能执行通常由仪器本省的驱动程序执行的许多功能。然后,驱动程序执行的调用是发送短而简单的指令而不是发送较长串的典型仪器指令到仪器。像往常一样,这类设计有一些折衷,但是基于脚本的仪器提供了优化系统和软件设计的附加灵活性,以达到指定应用的最佳性能。
同样这三种方法能用于编写软件直接控制基于脚本的仪器,无需使用仪器驱动程序。
结论
脚本是在测试和测量应用中提供仪器可编程性的一种强大、便捷的方法。基于脚本的仪器提供结构上的灵活性、提高性能并且降低了许多应用的成本。脚本增强了LXI仪器具有的优点,而且LXI具有支持和增强脚本的特点。适应传统设备的用户将会发现基于脚本仪器的使用既简单又直观。如果需要,基于脚本的仪器还能像传统仪器那样进行编程。然而,轻微调整系统设计和编程,系统配置就能很容易地实现灵活性和性能的提高以及脚本的其它优点。
关于作者
Paul Franklin是吉时利技术开发组Keithley Labs的经理。在2005~2007年,他担任LXI 联盟技术委员会主席。在2000年加入吉时利之前,他曾在电子控制和工业自动化相关公司担任工程师和经理,在测量和控制行业的工作经验超过20年。Franklin先生获得了美国西储大学B.S.E.E和M.S.E学位,而且他也是IEEE、IEEE计算机学会、IEEE仪器与测量协会,美国计算机协会的会员。440-542-8097,e-mail:pfranklin@keithley.com。
Todd A. Hayes是吉时利高级固件工程师。他在嵌入式固件设计方面拥有15年以上的经验并且是吉时利TSP开发的固件架构领导者。Hayes先生获得了美国阿克伦大学的B.S.E.E和M.S.C.S学位。440-248-0400,e-mail:hayes_todd@keithley.com。
Keithley Instruments, 28775 Aurora Rd., Cleveland, OH 44139