问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

SCPI程控信号源和频谱仪的连接方法详解

创作时间:
作者:
@小白创作中心

SCPI程控信号源和频谱仪的连接方法详解

引用
CSDN
1.
https://m.blog.csdn.net/qq_44353292/article/details/142565098

本文将详细介绍如何使用MATLAB通过SCPI(Standard Commands for Programmable Instruments)协议控制安捷伦信号源E4438C和频谱仪N9020A。文章分为概述和正文两部分,概述部分提供了快速连接的代码示例,正文部分详细介绍了连接过程中的每一步,包括下载驱动、配置环境、连接仪器等。

0.如何连接

以程序语言matlab为例,以安捷伦信号源E4438C和安捷伦频谱仪N9020A为例,分为2部分:概述,正文
概述:学习笔记,有经验的人可根据概述快速复现结果
正文:繁琐,多图,完全面向小白的全流程复现

概述

网线或串口线物理连接
下载NI-visa驱动
配置编程环境运行以下代码尝试连接

clc;
clear;
delete(instrfind)%关闭所有com口和ip连接,在命令窗口输入instrfind可查询所有使用中串口
YiqiPinPu=visa('ni','TCPIP0::169.254.80.214::INSTR');%选择ni驱动,通过visa和频谱仪N9020A建立ip连接
set(YiqiPinPu,'InputBufferSize',10e6);%设置读取缓冲区,可省略
idn=query(YiqiPinPu,'*IDN?\n')%发送scpi命令'*IDN?\n'询问仪器信息,有如下返回即程控该频谱仪成功。
YiqiXinHao=visa('ni','ASRL4::INSTR');%选择ni驱动,通过visa和信号源E4438C建立com串口连接,com4,E4438C即有网口又有RS232这里以RS232为例
set(YiqiXinHao,'InputBufferSize',10e6);%设置读取缓冲区,可省略
idn=query(YiqiXinHao,'*IDN?\n')%发送scpi命令'*IDN?\n'询问仪器信息,有如下返回即程控该信号源成功。

正文

引用安捷伦仪器仪表 - 程控总结_c++连接频谱仪-CSDN博客

1.通过安捷伦官网下载Keysight IO libraries Suite

通过官方软件连接仪器可初步判定一个仪器是否可用远程控制,可以直接通过RS232或网线连接大多较新的安捷伦仪器。(开始编程后基本用不到)

2.通过安捷伦官网下载Keysight Command Export(该软件已被集成到Keysight IO libraries Suite中,下载第一步的软件后更新即可)

查询具体的SCPI命令,该软件可联网同步大多数安捷伦仪器scpi,且英文文档详尽和仪器型号同步,使用简单,在编程中需要多次查阅这个软件了解仪器的指令。

3.NI-visa库

在NI官网直接搜索NI-visa驱动下载,适配自己的编程语言。(初步配置,连接成功后保存环境就用不到了)

4.仪器的文档
调试仪器时必须有精确到型号的SCPI指令文档,在安捷伦官网上搜索关键字“型号”+“Programming Reference”或"Programming Compatibility Guide "一般可以下载到

开始连接仪器

按照以下顺序可以和我同步顺利编写第一份连接脚本

连接

  • 观察仪器背后接口,网口最佳,较老的仪器有可能仅有RS232或GPIB,连接电脑,保证能ping通。以安捷伦信号源E4438C和安捷伦频谱仪N9020A为例,观察发现这2个仪器背后有网口(lan),9孔口(DB9-RS232母口),长条形口(GBIP口)。网线可直连,旧的仪器可能没有网口,使用RS232需要rs232转usb串口,GBIP线太贵,没有速度要求一般不考虑。打开信号源,点击面板UNITY,(例:这里电脑ip为192.168.1.1),更改ip地址为主机同网段(例192.168.1.2)。使用rs232通讯保持默认值即可(波特率9600)。这里将对E4438C使用rs232连接,对N9020A使用网线。
  • 官网 是德科技(安捷伦即是德科技) 搜索Keysight IO libraries Suite下载并打开。
    一般初次打开软件就会尝试查找网口和串口已连接的设备(仅限安捷伦设备),如果没有成功则尝试刷新和手动连接,成功则不需要。
    手动连接频谱仪(网线):win+r,输入cmd打开命令窗口,输入ping 192.168.1.2(之前更改的频谱仪ip),是否连通。软件点击Add,选择lan instrument。
    输入完ip后点击test此ip,如果返回设备型号字样则成功通讯,点击ok保存设置。
    手动连接信号源(rs232串口):硬件连接情况下,右键我的电脑-管理-设备管理器-com口,查看com口。软件点击Add-添加串口ASRL,com几则添加ASRLl几。
  • 下载NI-visa,选择使用的语言,配置环境
    推荐:python(网上答案多,ai准确)
    c#(语法优雅,学习简单)
    matlab(没有学习成本,可实时debug)
  • 尝试程控连接,以matlab为例
clc;
clear;
delete(instrfind)%关闭所有com口和ip连接,在命令窗口输入instrfind可查询所有使用中串口
YiqiPinPu=visa('ni','TCPIP0::169.254.80.214::INSTR');%选择ni驱动,通过visa和频谱仪N9020A建立ip连接
set(YiqiPinPu,'InputBufferSize',10e6);%设置读取缓冲区,可省略
idn=query(YiqiPinPu,'*IDN?\n')%发送scpi命令'*IDN?\n'询问仪器信息,有如下返回即程控该频谱仪成功。
YiqiXinHao=visa('ni','ASRL4::INSTR');%选择ni驱动,通过visa和信号源E4438C建立com串口连接,com4,E4438C即有网口又有RS232这里以RS232为例
set(YiqiXinHao,'InputBufferSize',10e6);%设置读取缓冲区,可省略
idn=query(YiqiXinHao,'*IDN?\n')%发送scpi命令'*IDN?\n'询问仪器信息,有如下返回即程控该信号源成功。

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号