电磁兼容(EMC)设计与整改
直播中

罗振炜

7年用户 177经验值
私信 关注
[问答]

比较SCPI与TSP的指令子系统

SCPI仪器指令子系统分为哪几类?脚本有哪些?
TSP仪器指令子系统分为哪几类?脚本有哪些?

回帖(1)

任青

2021-4-30 09:56:14
  SCPI仪器模型
  某些测量需要直接控制仪器的硬件。为实现这种控制,基于SCPI的仪器包含指令子系统来控制特定的仪器功能和设置。
  SCPI仪器模型在SCPI指令子系统之间分配。对于2700系列而言,指令子系统分为以下几类:
  1.面向信号的测量:获取读数的指令。
  2.计算:用于数学表达式、极限测试和统计数据。
  3.显示:控制Integra仪器的显示。
  4.格式:选择总线传输读数的数据格式。
  5.路由:控制前/后输入或开关。
  6.感测:配置和控制测量功能。
  7.状态:控制状态寄存器。
  8.系统:包含仪器设置的各种指令。
  9.设置:配置和控制数据存储至缓冲区。
  10.触发器:配置触发模型。
  11.装置:配置查询所显示的测量单元
  
  SCPI指令
  注释
  *RST
  恢复GPIB默认值。
  :SENS:FUNC ‘VOLT’, (@101:120)
  用通道列表配置DCV功能
  :ROUT:SCAN(@101:120)
  指定扫描通道
  :SAMP:COUN 20
  样本计数至20
  :TRIG:COUN 1
  触发一次扫描
  :ROUT:SCANSEL INT
  启用扫描模式
  :TRAC:FEED:CONT NEXT
  启用跟踪缓冲器
  INIT
  初始化扫描
  DATA?
  请求缓冲读数
  TSP仪器模型
  测试脚本语言(TSL)是3700系列使用的语言。ICL是该仪器的一组预定义的函数和变量。它们是等效于SCPI仪器SCPI指令的仪器指令。下列指令集适于3700系列:
  1.蜂鸣器:控制内置蜂鸣器的指令。
  2.位:用于对1~2个数字进行逻辑运算。
  3.延时:用于控制数字I/O端口的读/写和触发操作。
  4.数字I/O:选择在总线上传输读数的数据格式。
  5.显示:用于控制3700前面板上显示的消息。
  6.错误队列:用于读取错误队列/事件队列中的记录。
  7.退出:用于终止当前运行的脚本。
  8.格式:适用printnumber和printbuffer指令打印的数据。
  9.GPIB:用于设置GPIB地址。
  10.LocalNode:用于设置电力线频率、控制(开/关)提示并控制(隐藏/显示)显示器上的错误消息。
  11.获取:用于设定和取回属性值。
  12.操作完成:在运行完所有异步指令后,将状态寄存器的OPC比特置位。
  13.PrintBuffer:用于打印数据和数字。
  14.重置:用于恢复3700的默认设置。
  15.设置:用于保存/恢复设置并设定上电设置。
  16.触发器:用于控制触发。
  17.TSPLink:为主机分配节点号并初始化TSP-Link系统。
  18.UserString:用于存储/读取非易失存储器中用户定义的字符串。
  19.等待完成:等待全部异步指令运行完成。
  
  ICL指令脚本
  注释
  Reset()
  恢复GPIB默认值。
  dmm.setconfig(“1001:1020”,“dcvolts”)
  指定扫描通道和相应的功能
  mybuffer=dmm.makebuffer(20)
  建立名为mybuffer的20读数用户缓冲区
  reading=dmm.measure(mybuffer)
  scan.create(“1001:1020”)
  在槽1建立通道1~20的扫描列表
  scan.scancount=1
  触发一次扫描
  scan.execute(mybuffer)
  指定mybuffer为扫描使用的读数缓冲区
  print(printbuffer(1,20, mybuffer))
  打印my buffer(我的缓冲区)的内容
  上面的指令定义清单看起来比2700系列的多一些,却是精简的独立指令集。例如,SCPI“计算”子系统主要通过脚本处理;因此,这些功能不存在ICL指令。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分