0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

示波器的自动化控制实现

科技绿洲 来源:山羊硬件Time 作者:山羊硬件Time 2023-11-07 14:35 次阅读

有没有这样一种情况,就是通过脚本控制你的测量设备,比如示波器,那是不是就可以不用人为的去分析数据,直接由脚本就可以完成整个操作了。

是的,有这样一种方式就可以,就是利用python中的pyvisa库,实现这样的控制。

pyvisa是什么?

pyvisa中的visa全程是虚拟一起软件结构(Virtual Instrument Software Architecture),是python的一个第三方库,可以用来控制各种测量仪器,比如示波器,万用表,频谱仪等等。并且它支持包括Ethernet(LAN), USB, GPIB(通用接口总线), RS232(一种串行通讯接口)等接口的数据接入。

在python中,可以直接通过”pip install pyvisa”就可以安装这个实用的测量仪器第三方库。

在安装了pyvisa之后,为了保证pyvisa能够正常工作,还需要安装NI-VISA库,然后就可以开始连接相应的设备,也就是通过支持的接口。

LAN:[TCPIP0::192.168.0.1::inst0::INSTR]

GPIB:[GPIB0::1::INSTR]

Serial:[serial('COM1','BaudRate',4800)]

USB:[USB::XXX::XXX::XXX::INSTR]

所以连接示波器的指令就是连接这个接口地址,假设接口是个网口地址

Visa_address=”[TCPIP0::192.168.0.1::inst0::INSTR]”

然后建立管理器,再去连接这个地址

Rm=pyvisa.ResourceManager()

Scope=rm.open_resource(visa_address)

此时建立了一个示波器对象Scope,可以对它进行控制,比如写入和读取,方法分别是write(), query()。

常用的写入项:

“*RST”: 重启示波器

“AUTOSET EXECUTE”: 自动设置示波器

“HORIZONTAL”: 采样率

常用的读取项:

“MEASU:MEAS1: xxx”: 添加测量项

“MEASU:MEAS1: SOU CH1”: 设置测量通道为1

“MEASU:MEAS1: xxx?”: 读取测量结果

获取示波器信息方式有两种,一种是用query(‘*idn?’),一种是先write(‘*idn?’)写入,然后使用read()读的方式。就可以获得示波器的厂家型号,仪器型号,序列号,固件的版本号等等信息。

示波器中最重要的就是所抓取的波形了,那么它的波形数据如何读取。

对于波形数据的抓取,可以利用query_ascii_values去读取ASCII数据,或者读取二进制数据的query_binary_values。

最后就是工具的关闭了,也就是连接上的示波器对象和整个测量仪器管理器。

Scope.close()

Rm.close()

可以看到,python控制示波器的指令中,有很多指令是示波器所固有的,那如何去理解这些指令到底是干什么用的呢?对于这个,其实这些指令都可以叫SCIP命令,它们可以通过去厂家的官方网站进行下载

进入官网之后,找到相应的示波器型号,然后下载它的manual(说明书),一般名字会是编程手册,比如下图:

图片

比如说获取示波器长度的指令“horizontal: recordlength?”就可以从中找到。

获取示波器长度指令:

Record=int(scope.query(‘horizontal: recordlength?’))

Scope.write(‘date:stop {}’.format(record))

在示波器正式连接并调整好参数之后,就可以看是采集了,可以选择单次或多次运行。

Scope.write(‘acquire:stopafter SEQINCE’) #单次运行

Scope.write(‘acquire:stopafter run’) #多次运行

运行之后,如何采集示波器的数据,可以通过诸如指令:scope.query_binary_values(‘curve?’, datatype=’h’,container=np.array)获取到它的数据,如果想具体到某一项,可以在相应示波器manual中寻找。

不过上面采集的数据会比较乱,要通过公式转换,才能得到示波器中我们看到的电压值。

最后,在有是电压值和时间参数之后,就可以得到坐标系的X轴和Y轴,然后就可以绘制出示波器的图像,一般会用到Python中的图形绘制库matplotlib和科学计算库numpy。

图片

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

    关注

    113

    文章

    6169

    浏览量

    184350
  • 软件
    +关注

    关注

    69

    文章

    4719

    浏览量

    87094
  • 自动化控制
    +关注

    关注

    4

    文章

    234

    浏览量

    20391
  • 测量仪器
    +关注

    关注

    3

    文章

    778

    浏览量

    42079
收藏 人收藏

    评论

    相关推荐

    招聘自动化、电气自动化自动化控制工程师

    招聘自动化、电气自动化自动化控制工程师,挂证,不坐班,要求持有相关专业的中级职称证,用于我司资质申报工作上,凑资质人员申报资质,不存在风险。联系电话***,Q1580479594李经
    发表于 10-24 18:06

    自动化控制装置

    ,那么现代世界中许多我们想当然的便利将不复存在。自动化依赖于许多不同电子元件和机械元件,其代替了人类操作员。自动化控制装置都有哪些类型?全世界有许多不同种类的自动化设备,因此几乎不可
    发表于 02-05 11:11

    数字示波器NSAT-3010自动化计量软件系统设计与实现

    、FLUKE5502)和被测数字示波器组成了一套自动检定装置,使用LabWindows/​CVI程序语言编写的软件来控制被测数字示波器按照国家检定规程的规定进行
    发表于 10-19 15:42

    浅析自动化控制系统的设计与实现

    。但是,人们往往只看到了功能实现,对系统整体设计并没有进行太多的关注,从而自动化控制系统在通信、系统集成、数据交互以及后期升级改造等方面表现不足,严重影响了基于系统进行信息建设的进程
    发表于 07-02 06:02

    家庭自动化控制如何实现

    家庭自动化控制系统怎么样才能普及
    发表于 08-21 15:36

    LabVIEW与Tektronix示波器实现电源测试自动化

    和Tektronix示波器解决了电源测试中的实际问题,实现了测试过程的自动化、高效和精确。这不仅显著提高了产品测试的效率和质量,也为电子
    发表于 12-09 20:37

    自动化控制设计

    自动化控制设计
    发表于 04-29 18:19 13次下载
    <b class='flag-5'>自动化</b><b class='flag-5'>控制</b>设计

    PLC怎么实现自动化控制功能

    PLC是可编程逻辑控制器的简写,它是进行自动化控制的核心设备。那PLC怎么实现自动化控制功能呢?
    的头像 发表于 06-06 09:56 9792次阅读

    工业自动化如何实现

    当前全球制造业正在经历数智转变,大数据、人工智能、5G,机器视觉等技术有望成为新的增长引擎。工业自动化主要涵盖了控制、驱动、执行、反馈及网络五个层面,反馈层和网络层作为数据基础,对于自动化
    发表于 09-22 16:41 1117次阅读

    精密运动控制实现自动化

    精密运动控制实现自动化
    的头像 发表于 01-05 09:43 1129次阅读
    精密运动<b class='flag-5'>控制</b><b class='flag-5'>实现</b><b class='flag-5'>自动化</b>

    工厂自动化控制的典型实现方式

    工厂自动化控制是现代制造业的关键组成部分,它通过应用先进的信息技术、自动化技术和控制技术,实现生产过程的
    的头像 发表于 06-06 15:51 916次阅读

    如何实现PLC的自动化控制逻辑

    在工业自动化领域,PLC(Programmable Logic Controller,可编程逻辑控制器)扮演着至关重要的角色。PLC通过编程实现自动化
    的头像 发表于 06-15 16:44 1030次阅读

    工业自动化中的控制方式

    工业自动化是现代工业发展的重要标志,它极大地提高了生产效率,降低了生产成本,并改善了产品质量。在工业自动化中,控制方式作为实现自动化
    的头像 发表于 06-17 11:41 680次阅读

    机械自动化自动化的一种吗

    引言 自动化技术是指利用控制装置对生产过程进行控制,以实现生产过程的自动化。机械自动化
    的头像 发表于 07-01 09:32 1495次阅读

    机械自动化和电气自动化区别是什么

    机械自动化和电气自动化是现代工业生产中两个重要的领域,它们在许多方面有着密切的联系,但也存在一些明显的区别。 一、基本概念 机械自动化 机械自动化是指利用机械设备、传感器、
    的头像 发表于 07-01 09:33 3526次阅读