LabVIEW 环境下TSP与SCPI 指令对比分析

news2026/4/10 7:28:49
TSPTest Script Processor是泰克吉时利面向高端自动化测试系统推出的仪器端嵌入式脚本处理引擎基于 Lua 语法支持本地逻辑运算、多模块协同与后台运行SCPIStandard Commands for Programmable Instruments是行业通用的文本式可编程仪器指令集以标准化、跨平台为核心特点。在LabVIEW控制Keithley 3700A/3706系列开关万用表场景中TSP为原生、唯一、高性能控制方式SCPI不被该系列硬件支持无法直接使用二者在运行架构、通信机制、执行效率、编程模型、系统集成性上存在本质差异直接决定自动化测试系统的速度、精度与可靠性。详细专业对比1. 指令架构与运行位置TSP仪器内置 MCU 脚本处理器指令与脚本下载至仪器内存运行具备独立运算、循环、判断、触发、时序控制能力。运行时无需上位机持续干预实现真正意义上的分布式测试。SCPI纯文本指令运行位置在上位机仪器仅作为执行端无任何逻辑处理能力。必须依靠上位机LabVIEW逐条下发、等待响应、解析结果。2. LabVIEW 中的实现方式TSP使用官方 ke37xx 专用驱动 VI图形化配置无需手写指令支持字符串脚本拼接直接下发一段 TSP 脚本至仪器支持脚本存储、后台扫描、异步触发、事件响应多通道扫描、通道模式、高速测量均由 TSP 原生实现。SCPI依赖 VISA 节点手动拼接字符串指令*IDN?, :MEAS:VOLT?需自行处理同步、超时、错误捕获、数据解析无高级触发、无后台运行、无本地逻辑3700A/3706不支持SCPI无法使用。3. 通信机制与执行效率TSP一次握手批量执行减少总线交互多通道扫描速度提升550倍触发延迟可控制在微秒级适合高速数据采集、多通道巡检、自动化产线。SCPI指令 - 响应 一对一交互总线开销巨大多通道场景下延迟明显、速度受限触发延迟高一般为毫秒级适合低速、单通道、通用仪器控制。4. 脚本与逻辑能力TSP支持变量、数组、循环、条件、函数、定时器支持数字 I/O 触发、后台扫描、事件同步支持 TSP-Link 多机组网、同步测量可实现脱离 PC 的全自动测试序列。SCPI无任何逻辑能力仅执行单条指令无循环、无判断、无变量、无存储所有逻辑必须在上位机LabVIEW实现。5. 硬件兼容性TSP专属指令集支持3700A / 3706 / 3706A2600B 系列源表4200A 半导体分析仪通用仪器不支持。SCPI全行业通用万用表、电源、电子负载、示波器、数据采集卡等。吉时利 3700A/3706不支持。6. 系统稳定性与抗干扰TSP上位机仅负责启动与读取结果通信量极小抗干扰强系统更稳定。SCPI频繁通信易受总线延迟、干扰、丢包影响复杂系统易超时、崩溃。7. 工程开发成本TSP初期需学习脚本语法但系统搭建简洁、维护简单、扩展性极强。SCPI入门简单但复杂系统需编写大量解析、同步、异常处理代码。总结吉时利3700A/3706在LabVIEW中只能使用TSP不支持SCPI。TSP是高端自动化测试的最优架构速度更快、时序更准、稳定性更强、支持本地逻辑与后台运行。SCPI 通用性强但不具备 TSP 的分布式运行能力无法满足高速多通道测量需求。工程应用建议3700A/3706系统100%使用TSP 专用驱动通用仪器使用 SCPI混合系统TSP 负责高速测量SCPI 负责辅助设备如何将代码从 SCPI 迁移到 TSP简介多年来仪器厂商一直使用 ** 可编程仪器标准命令SCPI** 在测试系统中控制可编程测试测量设备。SCPI 的目标是为测试测量仪器提供统一、一致的指令集。无论厂商或仪器类型如何相同的命令与查询均可控制 SCPI 设备中的对应仪器功能。不过尽管 SCPI 旨在成为通用指令集但随着每一代仪器都会加入新功能这一事实也导致不同仪器之间的 SCPI 指令集存在差异。主动改用另一套指令集之前需要克服的主要障碍是学习新指令但实际上每次更换不同仪器时用户都必须适应新仪器 SCPI 实现上的细微差别因此这种学习成本对用户而言并不陌生。本文旨在介绍吉时利 ** 测试脚本处理器TSP®** 指令集与脚本语言作为 SCPI 及传统仪器编程的替代方案。本文将首先概述 SCPI 与 TSP再通过多个并排示例展示两种指令集之间的等效命令。什么是 TSP吉时利测试脚本处理器TSP是一套灵活的软硬件架构它支持类似 SCPI 的基于消息的编程方式同时在测试时序 / 流程控制、逻辑判断与仪器自主运行能力上提供增强功能。支持 TSP 的仪器可像传统 SCPI 仪器一样工作响应控制器发送的一系列指令。你可以像对其他仪器发送 SCPI 指令一样向支持 TSP 的仪器逐条发送指令。切换到 TSP 后你将获得更高的测试吞吐率、更丰富的 PC 与其他仪器的接口选项以及在需要时实现仪器自主运行的便利。板载测试脚本处理器的使用让 “智能仪器” 成为可能仪器内置判断能力大幅减少与外部控制器的频繁通信。这种测试系统设计方式使智能仪器系统远比基于标准 SCPI 编程的系统高效。随着基于 TSP 的仪器数量不断增加测试系统开发人员将拥有更大灵活性能够在不牺牲测量完整性的前提下构建吞吐率更高的测试系统。TSP 同时包含TSP指令集与TSP脚本语言。TSP 脚本语言基于 Lua 5.0与 TSP 指令集配合使用时可让原本运行在 PC 上的逻辑与子程序在仪器内部执行从而显著减少通信总线上传输的数据量与消息数量。为什么使用 TSP虽然 2600 系列 SMU 等部分仪器只能通过TSP进行接口控制但许多吉时利仪器允许用户在远程控制应用中选择 SCPI 或 TSP。这就引出一个问题如果可以使用SCPI为什么还要用TSP选择 TSP 指令集进行远程操作的主要原因是它能够将大部分流程与计算卸载到仪器端从而提升吞吐率。将计算操作放在通信链路的仪器一侧可以在测试序列中消除总线上大量的读写交互显著减少主机 PC 与测试设备之间的往来通信。这在扫频或大量重复测量时尤其具有优势。仪器无需将整组数据发回 PC 处理而是可以直接处理并返回单个计算结果。TSP 还比 SCPI 指令集提供高得多的灵活性与可扩展性。尽管将部分数据处理与计算卸载到仪器是 TSP 的主要优势之一但使用 TSP 指令集并不强制要求使用该特性。TSP 可以像 SCPI 一样使用由 PC 控制器发送指令数据返回 PC 后由你习惯的软件工具解析。测试设备之间配合越紧密你需要花费在实现变通方案或技巧上的时间就越少因此建议适时尝试 TSP 的更多高级功能并使用 TSP 编写脚本。与 SCPI 指令类似TSP 指令也可由控制器通过 Python、C 等编程语言下发。但与 SCPI 不同的是TSP 提供许多嵌入式功能让你能够扩展测试系统的功能。如果你选择使用 TSP 编写脚本将能够在仪器上加载、存储、运行大量自定义测试函数并将其广播到所有其他已连接仪器同时通过更优的编程实践显著提升通信吞吐率。有关 TSP 脚本及其他高级功能的更多信息请参考应用笔记《如何为测试脚本处理器TSP编写脚本》。SCPI 与 TSP 指令系统对比SCPI 指令格式设计为自描述每条指令都用于描述自身功能。所有 SCPI 指令都有长格式与短格式。长格式更易读字符更多能更清晰地定义指令执行的动作短格式的优势则是发送字符更少效率更高。每个 ASCII 字符的收发都需要传输时间因此字符越少意味着通信时间越短。SCPI 示例plaintext:ROUTe[:CHANnel]:CLOSe()与:ROUT:CLOS()TSP 示例plaintextchannel.close(channelList)使用缩写 SCPI 指令时用户以可读性换取吞吐率。TSP 语言没有短格式指令。但借助脚本指令可以直接在仪器上运行不再有总线通信带来的延迟因此无需缩写指令。即便不使用完整脚本功能也可以为 TSP 指令自定义别名实现比 SCPI 短指令更短的指令串。相比之下基于 PC 的 TSP 控制程序在拥有更高可读性的同时还能实现比 SCPI 更好的吞吐率。SCPI 与 TSP 指令系统的主要区别之一是读数获取方式。在 SCPI 中必须发送:READ? 指令启动测量读数被放入仪器输出队列等待读取。控制程序必须从仪器取回读数才能完成流程。这是因为 SCPI 查询必须遵守消息交换协议在上一条查询结果完全取回之前不能向仪器发送新的查询或指令否则会出现 “查询中断” 错误。这种僵化的消息协议限制了仪器控制方式在某些应用中可能造成问题。TSP 指令集则不存在这种限制。由于 TSP 专为脚本设计读数可存入变量并可在任意时间以任意数量返回。对于万用表与数据采集系统测量执行指令为plaintextREADING dmm.measure.read()对于源表SMU则为plaintextREADING smu.measure.read()两种情况下测量结果都存入变量READING。除非需要否则不必将测量结果返回控制器如需返回使用print(READING) 指令即可。READING 变量可在 TSP 脚本内部用于其他操作例如限值判断、数学运算或作为整体测试策略的一部分。这正是 TSP 功能强大之处。SCPI 仪器模型SCPI 仪器模型将仪器功能划分为多个 SCPI 子系统。某些子系统仅在特定类型仪器上可用。例如ROUTe 子系统仅在具有切换功能或前后端子的设备上可用。指令子系统通常分为以下类别CALCulate数学表达式、限值测试、统计CALibration校准配置与控制DIGital数字 I/O 控制DISPlay仪器显示控制INITiate启动触发模型、启用 / 禁用连续触发FORMat总线读数传输格式OUTPut源输出控制与设置ROUTe前 / 后端子与通道切换控制SCRipt宏或仪器配置脚本控制SENSe测量功能配置与控制SOURceSMU 与电源的电流 / 电压源配置STATus状态寄存器控制SYSTem密码、蜂鸣器、时间等系统设置TRACe缓存数据存储配置与控制TRIGger触发模型配置与触发操作TSP 指令分类TSP 指令集是一组用于控制仪器的预定义函数与属性其使用方式与 SCPI 仪器的 SCPI 指令类似。与 SCPI 一样TSP 指令也可分类并非所有分类适用于所有仪器。例如 SMU 指令仅源表可用。主要分类包括蜂鸣器、位操作、缓存、通道、延时、数字 I/O、显示、DMM、错误队列、事件日志、退出、文件、格式、GPIB、LAN、本地节点、操作完成、打印、打印缓存、复位、扫描、脚本、串口、插槽、SMU、状态、定时器、触发、用户字符串、等待完成等。相比 SCPI 子系统TSP 的分类列表更长其中许多分类提供了 SCPI 不具备的功能。TSP 相对于 SCPI 的一个优势是对仪器流程包括底层流程的精细化控制而 SCPI 仅开放仪器高层功能。分类数量多也源于更直观的组织结构。例如 SCPI 的SYSTem 类别对应 TSP 中的蜂鸣器、插槽、LAN、错误队列、事件日志、GPIB 等多个独立分类。通用公共指令公共指令具有相同的通用含义与仪器无关用于复位、等待、状态等操作始终以星号* 开头。尽管这些指令与 IEEE 488.2 定义基本相同但兼容 TSP 的仪器不一定严格遵循该标准。在 SCPI 中可使用分号组合多条指令plaintext*RST; *CLS;*ESE 32; *OPC?公共指令也可用于仅支持 TSP 或处于 TSP 模式的仪器例如发送*IDN? 仍会返回 ID 字符串。但公共指令不能用于TSP脚本内部。如何从 SCPI 切换到 TSP示例从 SCPI 切换到 TSP 只需替换等效指令虽然看起来复杂但与学习不同型号仪器的 SCPI 差异并无本质区别。DAQ6510 示例本例配置基础扫描通道 101~109 测量直流电压1 个电网周期自动量程4.5 位分辨率扫描次数 10。TSP 可将多条通道设置合并为单条指令而 SCPI 必须逐条设置。2450 SMU 示例本例使用 2450 SourceMeter 进行太阳能电池 I‑V 扫描电压从 0V 到 0.55V共 56 步测量电流存入默认缓存最后返回增量缓存。更进一步可以结合 TSP 完整脚本能力让仪器本地处理数据而不是由 PC 端如 Excel远程处理。仪器可计算关键数据点显示在前面板或返回外部计算机。下面是典型 TSP 脚本结构Lualuanum 56reset()smu.measure.func smu.FUNC_DC_CURRENTsmu.source.func smu.FUNC_DC_VOLTAGEsmu.measure.terminals smu.TERMINALS_FRONTsmu.measure.sense smu.SENSE_4WIREsmu.measure.autorange smu.ONsmu.measure.nplc 1smu.source.highc smu.OFFsmu.source.range 2smu.source.readback smu.ONsmu.source.ilimit.level 1smu.source.sweeplinear(SolarCell,0, 0.55, num, 0.1)trigger.model.initiate()waitcomplete()voltage defbuffer1.sourcevaluescurrent defbuffer1isc current[1]mincurr current[1]imax current[1]voc voltage[1]vmax voltage[1]*current[1]pmax voltage[1]*current[1]for i 1, numdoprint(voltage[i], current[i],voltage[i]*current[i])if (voltage[i]*current[i] pmax) thenpmax voltage[i]*current[i]imax current[i]vmax voltage[i]endif math.abs(current[i]) math.abs(mincurr) thenvoc voltage[i]endendpmax math.abs(pmax)imax math.abs(imax)display.changescreen(display.SCREEN_USER_SWIPE)display.settext(display.TEXT1,string.format(Pmax %.4fW, pmax))display.settext(display.TEXT2,string.format(Isc %.4fA, Voc %.2fV, isc, voc))结论无论你是将 TSP 指令集作为 SCPI 的替代方案还是将完整 TSP 语言用作强大的脚本工具TSP 都有助于提升测试吞吐率并增强仪器整体功能。TSP 相比 SCPI 具有诸多优势包括一次返回多个读数、更高吞吐率、更佳可读性等。灵活性是 TSP 指令集的核心优势允许用户根据具体需求定制使用方式。TSP 可以像 SCPI 一样由控制器 PC 运行也可编写在仪器本地运行的脚本或管理大规模联网仪器系统。深入学习 TSP 脚本能让兼容 TSP 的仪器发挥最大性能。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2502118.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…

IDEA运行Tomcat出现乱码问题解决汇总

最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…

利用最小二乘法找圆心和半径

#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明&#xff1a;假设每台服务器已…

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…

接口测试中缓存处理策略

在接口测试中&#xff0c;缓存处理策略是一个关键环节&#xff0c;直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性&#xff0c;避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明&#xff1a; 一、缓存处理的核…

龙虎榜——20250610

上证指数放量收阴线&#xff0c;个股多数下跌&#xff0c;盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型&#xff0c;指数短线有调整的需求&#xff0c;大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的&#xff1a;御银股份、雄帝科技 驱动…

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…