TSP工具包软件的应用说明

描述

引言

在一个需要快速开发测试的行业中,有效的自动化和便捷代码的开发需求比以往任何时候都显得更加突出。企业在努力提高产品质量的同时,更需要寻求更短的上市时间,合适的工具正是实现这一目标的关键。Keithley TSP Toolkit程控开发辅助工具,是一种新的脚本开发环境,采用Keithley的TSP 指令并利用设备端可内置脚本能力,使得程控软件开发变得比以往更加简单和高效。

在本应用说明中,我们将定义TSP和TSP Toolkit,并分享一些技巧和建议,帮助您利用这些工具来提高测试的吞吐量。

什么是TSP?

TSP是一种独特的仪器自动化命令集和编程语言。支持TSP的仪器配备了一个嵌入式脚本引擎,能够执行设备控制命令和基本的编程功能。

每台支持TSP的设备都具有一套命令集,涵盖设备的所有功能。除了像传统的命令集一样运行,TSP也作为一种编程语言,提供了对设备控制的两大重要优势:

■ 命令本身的语法类似于高级语言,例如C#或Python。

■ 设备能够在不依赖设备专有命令集的情况下执行for循环和while循环等基本的编程结构。

借助TSP进行测试自动化,我们可以创建一个名为TSP脚本的文件,该文件包含部分或全部的测试流程。TSP脚本可以直接在设备上运行,例如执行扫描并进行数据收集,而不需要从远程通过指令控制,也不需要手动配置前面板。与只能兼容SCPI命令的设备不同,支持TSP的设备可以将完整的脚本、函数或变量存储在设备内存中,从而在加载脚本后能够独立运行。在编写这些脚本时,TSP Toolkit显然是不二之选。

TSP Toolkit

TSP Toolkit是以Microsoft Visual Studio Code (VS Code) 扩展形式提供的一种新的脚本开发环境,支持Keithley TSP设备(如源表 (SMU)、数字万用表 (DMM) 和数据采集系统 (DAQ)等),并提供了许多改进脚本开发体验的功能。TSP Toolkit取代了之前的Keithley Test Script Builder (TSB),在保留其所有功能的同时,还增加了更多的扩展功能。

TSP Toolkit采用了基于Microsoft Visual Studio Code编辑器的现代化用户界面 (UI),。并配备了针对TSP语法的高亮显示,从而提高代码的可读性。借助VS Code的扩展功能,用户还可以在多种编程语言之间进行无缝切换,将TSP脚本的开发集成到现有的工作流中。

此外,TSP Toolkit还提供了TSP命令的自动补全功能、行内帮助和悬浮帮助,用户不必再手动查阅庞杂的参考手册来确认命令用法和语法。

Keithley

图1:TSP Toolkit命令悬浮帮助功能的使用示例

TSP Toolkit还配备了一个设备面板,用户可以通过该面板轻松连接到TSP支持的设备上。设备面板支持设备自动加载功能。在设备面板中,查找并加载上的设备可以展开,查看其型号、序列号、VISA地址、IP地址和端口号。

右键单击已发现的设备,即可访问以下选项:

■ 固件升级

■ 重命名设备

■ 连接或断开设备

连接后,仪器终端将启动。这个终端的功能与Test Script Builder中的命令行终端类似,用户可以一次连接多个设备,并与多个设备的终端同时交互。

Keithley

图2:TSP Toolkit设备面板右键菜单选项

Keithley

图3:TSP Toolkit仪器终端的使用示例

仪器终端可用于向设备发送单独的TSP命令,甚至可以从预加载的脚本中调用函数。终端也是设备返回任何错误信息或查询响应的地方。

Keithley

图4:TSP Toolkit脚本编辑器窗口右键菜单选项

要运行您的脚本,则可以在脚本编辑器窗口的任意位置右键单击,然后选择“Send Script to Terminal”。如果您已与多个设备连接,并希望在所有已连接的设备上运行该脚本,请选择“Send Script to All Terminals”。

将脚本发送到设备并直接在设备上运行,这种方法减少了总线上的交互次数,并将处理负荷从PC上转移到了设备本身,从而提高了测试吞吐量。

从Test Script Builder (TSB) 中保存示例脚本

如果原先是Keithley Test Script Builder (TSB) 的用户,那么会很熟悉其中包含了一个TSP示例脚本库。TSP Toolkit允许用户轻松迁移这些示例脚本以及已经在TSB中开发的脚本。

可以在计算机上找到TSB工作区域的文件,并将其复制到计算机的本地目录中,将TSB示例脚本加载到TSP Toolkit中。可以通过在导航选项卡中右键单击任意示例脚本,然后选择“属性”来找到TSB工作区域文件在计算机上的路径。

Keithley

图5:Keithley Test Script Builder (TSB) 示例工作区域文件的路径

在VS Code中,单击“文件” -> “打开文件夹”,然后打开存储的本地目录。则能够通过VS Code的资源管理器选项卡访问目标目录中的所有文件。

Keithley

图6:Microsoft Visual Studio Code资源管理器选项卡的使用示例

除了从TSB中导出示例脚本外,用户还可以从Keithley官方的GitHub账号资源中下载示例脚本。

TSP脚本编写的提示和技巧

脚本规则

当脚本被加载到运行时环境中时,会创建一个与脚本名称相同的全局变量,用于引用该脚本。

1. 脚本名称必须是唯一的,且不能以数字开头。

2. 脚本名称不能包含空格。

3. 脚本名称的长度必须少于27个字符。

4. 如果加载的脚本与现有脚本同名,则会生成一条错误事件消息。在使用相同名称创建新脚本之前,必须先删除现有脚本。

5. 如果将修订后的脚本以新名称保存到设备中,则原始脚本仍会保留。

6. 用户可以将脚本保存到设备的非易失性内存中,以确保在设备关闭电源后不会丢失脚本。

注意

这些规则主要适用于那些通过USB或其他脚本语言(如Python)传输到设备内存中的脚本。

当在TSP Toolkit中运行脚本时,该扩展通常会自动为我们管理大部分规则,但脚本名称的字符限制仍然适用。

命令别名 (Aliasing)

如果您不喜欢传统TSP命令的命名方式,或者希望对命令进行缩写,可以使用别名 (aliasing) 功能。TSP命令是层级机构,使用“.“分隔。可以将这些层级的部分或全部命令存储为一个变量,然后通过变量来调用命令。为每一层创建别名都将改善脚本的性能,并且提高命令的处理速度。

示例:如何为TSP命令创建别名

Keithley

注意:在上面的示例中

第一行将两层命令作为别名,dmm.measure被简化为dm。

第二行为一个枚举值 (enum) 创建了别名,将dmm.FUNC_DC_CURRENT存储为current。

第三行将前两步创建的别名结合使用,将dm. func设置为current,即dmm. measure. func = dmm. FUNC_DC_CURRENT。

当为函数命令(例如trigger.model.abort())创建别名时,在定义别名时不包含括号。而是在调用别名函数(例如stop())时,再添加括号。这种行为适用于任何作为函数的命令。

本地存储和运行脚本

TSP脚本还可以保存到仪器的内存中。这使得脚本可以通过远程控制方案进行访问,甚至可以在不依赖上位机程控的情况下,直接从仪器的前面板调用和运行。

可以使用“loadscript”和“endscript”关键字,将脚本发送并保存到仪器中。这在需要自动交付脚本或通过现有的远程连接发送脚本时特别有用。

注意

在TSP Toolkit中运行脚本时,不需要使用loadscript和endscript关键字。

这些关键字的用途是将脚本发送到仪器的内存中并进行存储,但不立即执行。

脚本将被保存到设备的非易失性内存中,即使设备关机重启,脚本也不会丢失。

Keithley

如果使用TSP Toolkit,脚本可以在不使用loadscript和endscript关键字的情况下保存到仪器中。只需与目标仪器建立连接,然后在仪器终端中输入以下命令:

.script “path/to/scriptname.tsp” –save

此命令会将脚本保存在设备的非易失性内存中,使其即使在关机后也能保留在设备中。

另一种方法,更适合小型安装环境,是将TSP脚本保存在U盘中。支持TSP的仪器在前面板控制时,允许直接从U盘上运行脚本,或将脚本保存到设备的内存中。如果U盘中的脚本名为“autoinstall.tsp”,那么当U盘插入设备时,该脚本会自动复制到设备的内部脚本列表中,不需要手动操作。

自动执行脚本

保存在U盘或设备内存中的脚本可以被复制到设备的启动项中,添加到启动项中的脚本将在设备上电启动过程中自动加载运行。以下是一个示例脚本,该脚本会更改缓冲区大小,并将Keithley DMM6500( 6½位台式/系统数字万用表)的测量功能设置为电流测量。

Keithley

通过TSP Toolkit将脚本保存到设备的启动序列中,可以将脚本命名“autoexec.tsp”。当设备启动时,设备将始终在启动过程中自动运行该脚本,无需手动操作。

应用示例:使用Keithley 2450源表 (SMU) 进行扫描

如前所述,在TSP Toolkit中打开或开发的脚本可以发送到终端,以便在连接的仪器上运行。在图7中,显示了一个从Test Script Builder导入的示例脚本,该脚本在TSP Toolkit中被打开并执行。这个示例脚本的名称为“2450_SweepI_MeasV.tsp“,亦可以从GitHub泰克官方账号的示例库页面找到并进行下载。该脚本控制2450表(SMU),以101个步进在-100 mA到100 mA的电流范围内进行扫描。并且测量被测(DUT) 上的电压,记录相应的电压和电流数据。

电流和电压的测量结果将被打印到终端。用户可以将这些数据复制并粘贴到电子表格中,以便进行进一步的分析和绘制图表。

Keithley

图7:在TSP Toolkit中运行的2450_SweepI_MeasV.tsp示例脚本

在本应用说明中,测试的是一个带有20 mΩ电阻的LED。下图是脚本执行完成后2450前面板的屏幕截图,显示了以图表形式呈现回测到的数据。

Keithley

图8:在2450 SMU前面板的图形视图中显示的测试数据曲线

由于Visual Studio Code具有高度的可扩展性,TSP Toolkit作为扩展之一与其他编程语言的扩展并存。这意味着我们可以使用TSP Toolkit来编写TSP脚本,然后在Python或其他框架中运行该TSP文件。

下面的示例是一个Python脚本,它通过VISA驱动程序连接到仪器,并使用for循环将“2450_SweepI_MeasV.tsp“脚本加载到仪器中。一旦脚本被加载到仪器的内存中,用户可以通过Python使用*.run()函数在仪器上执行该脚本。

Keithley

 

Keithley

结论

使用TSP作为强大的脚本工具,可以增强仪器的整体功能,并通过更加快捷地创建和运行测试脚本来提高工作效率。脚本允许用户使用单个程序控制多个仪器,并显著减少了总线上的通信。将逻辑操作与远程命令紧密结合,为实现多种新型的测试提供了更多的可能性,而TSP Toolkit使其入门变得比以往更加简单和高效。了解更多信息和获取下载该工具,请访问TSP Toolkit产品页面。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分