如何使用Kotlin从XE系列示波器中检索数据?

2024-07-03 鼎阳科技官网
示波器,SDS,SDS1202X-E,鼎阳科技 示波器,SDS,SDS1202X-E,鼎阳科技 示波器,SDS,SDS1202X-E,鼎阳科技 示波器,SDS,SDS1202X-E,鼎阳科技

SDS系列示波器均具有远程编程和数据采集功能。 它们可以轻松集成到许多自动测试环境中,以简化测试期间的设置和数据采集。
我们的一位有用的客户开发了一个很好的编程示例,旨在使用Kotlin设置和检索来自SIGLENT SDS1202X-E示波器的数据,Kotlin是一个免费的开源编码环境(此处更多关于Kotlin)。


该代码使用LAN连接和打开的套接字。


感谢Chris Welty的代码!

代码如下:
**
* License: 3-Clause BSD
*
* Copyright 2018 Chris Welty
*
* Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
* 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
* 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING,
* BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
* EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
* PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
* POSSIBILITY OF SUCH DAMAGE.
*/
package scope
import java.io.BufferedWriter
import java.io.OutputStreamWriter
import java.io.Serializable
import java.net.Socket
/**
* 创建一个从Siglent 1202X-E下载的波形
*/
class Waveform(val vDiv: Double, val vOffset: Double, val tDiv: Double, val tOffset: Double, val data: ByteArray) : Serializable {
val xs: DoubleArray
get() = DoubleArray(data.size, { i -> i * tDiv * 14 / data.size + tOffset – tDiv * 7 })
val ys: DoubleArray
get() = DoubleArray(data.size, { i -> data[i] * vDiv / 25 – vOffset })
companion object {
/**
* 下载在示波器屏幕上显示的波形
*/
fun download(): Waveform {
Socket(“192.168.1.222”, 5025).use { socket ->
println(“connected to ” + socket.inetAddress)
val output = BufferedWriter(OutputStreamWriter(socket.getOutputStream(), Charsets.US_ASCII))
//由于套接字可以返回二进制数据,我们不能使用InputStreamReader
//将字节翻译成字符。SCPI通常使用US ASCII。
val input = socket.getInputStream()
/**
*开始读取,直到遇到\ n。
*字节数字转换为数字(ASCII)。
*/
fun readLine(): String {
val sb = StringBuilder()
while (true) {
val c = input.read()
when (c) {
-1, ‘\n’.toInt() -> return sb.toString()
else -> sb.append(c.toChar())
}
}
}
/**
* 读取字节
* 字节不会转换为字符
*/
fun readBytes(n: Int): ByteArray {
val result = ByteArray(n)
var i = 0
while (i < n) {
i += input.read(result, i, n – i)
}
return result
}
fun writeLine(string: String) {
output.write(string)
output.write(“\n”)
output.flush()
}
/**
* 读取数据响应
* 比如 “C1:VDIV 1.00E+00V”.
* 此函数提取“1.00E + 00”,将其转换为double类型,然后返回。
*/
fun readNumber() = readLine().split(” “)[1].dropLast(1).toDouble()
writeLine(“*IDN?”)
println(readLine())
//将响应格式重置为默认值,以便readNumber()运行
writeLine(“CHDR SHORT”)
writeLine(“C1:VDIV?”)
val vDiv = readNumber()
writeLine(“C1:OFST?”)
val vOffset = readNumber()
writeLine(“TDIV?”)
val tDiv = readNumber()
writeLine(“TRDL?”)
val tOffset = readNumber()
// 请求所有的波形点
writeLine(“WFSU SP,0,NP,0,F,0”)
writeLine(“C1:WF? DAT2”)
// 解析波形响应
val header = String(readBytes(21))
println(“header is $header”)
val length = header.substring(13, 21).toInt()
println(“length is $length”)
val data = readBytes(length)
readBytes(2)
//最后两个无效字节
println(“V/div = $vDiv; offset = $vOffset; t/div = $tDiv; tOffset = $tOffset”)
return Waveform(vDiv, vOffset, tDiv, tOffset, data)
}
}
}
}

技术资料,数据手册,3D模型库,原理图,PCB封装文件,选型指南来源平台:世强硬创平台www.sekorm.com
现货商城,价格查询,交期查询,订货,现货采购,在线购买,样品申请渠道:世强硬创平台电子商城www.sekorm.com/supply/
概念,方案,设计,选型,BOM优化,FAE技术支持,样品,加工定制,测试,量产供应服务提供:世强硬创平台www.sekorm.com
集成电路,电子元件,电子材料,电气自动化,电机,仪器全品类供应:世强硬创平台www.sekorm.com
  • +1 赞 0
  • 收藏
  • 评论 0

本文由中国颜值的半壁江山转载自鼎阳科技官网,原文标题为:编程示例使用Kotlin从XE系列示波器中检索数据,本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

评论

   |   

提交评论

全部评论(0

暂无评论

相关推荐

如何用示波器测试CAN信号?

由于CAN信号是差分信号,在测试过程中一般需要使用差分探头来进行测试,但在研发阶段的板级测试中,确认安全的前提下可以使用普通低压无源探头进行测试。今天给大家介绍鼎阳科技SDS5000X标配的CAN总线触发与解码,了解示波器是如何测试CAN信号。本文将以SDS5054X+STB3演示板+普通无源探头展示CAN的测试,供大家参考。

设计经验    发布时间 : 2024-02-02

如何使用示波器FFT功能测量调幅信号的调制深度?

在幅度调制中,调制深度是指调制信号和载波信号的振幅比。借助快速傅里叶变化,调制深度可以通过测量边带幅度和载波幅度来得到。在这篇应用文档中,我们将要展示一种使用新峰值/标记功能(在鼎阳X-E系列数字示波器的6.1.31版本上可以看到)的便捷方式来测量调制深度。

设计经验    发布时间 : 2024-07-09

示波器如何测量直流电压?

不同型号的示波器在操作上可能会有细微差别,但基本原理与步骤相似,本文鼎阳科技介绍了使用示波器测量直流电压时一般遵循的步骤:连接探头、选择适当的量程、直流耦合、调整垂直设置、调整时间基准、观察波形、测量电压值。

设计经验    发布时间 : 2024-08-24

示波器触发原理及应用介绍

本文使用SDS1204X-E示波器、SDG2122X信号源来模拟不同情况下几种常用的触发模式和触发方式的应用。触发(实际就是隔离出感兴趣的信号)是使用示波器过程中出现频率最高的几个词之一,但对于一部分不是经常使用示波器的工程师来说,他们对触发还没有深刻的了解。

技术探讨    发布时间 : 2023-10-13

解析为什么示波器不能直接测市电220V而要接个隔离变压器

本文鼎阳科技探讨了为什么示波器不能直接测市电220V而要接个隔离变压器,它确实会带来下面的好处:降低电磁干扰、消除共模干扰。

技术探讨    发布时间 : 2024-11-22

示波器的FFT功能怎么调?

一文介绍示波器的FFT功能使用。信号的频率分量对信号的分析十分重要,对于观察信号的特征不仅仅需要观察时域上波形的特征,还需要在频域上观察该信号的频率分量。

技术探讨    发布时间 : 2024-01-05

【软件】鼎阳科技发布PC端示波器软件SigScopeLab 免费版,实现数据共享与远程分析

为了打破物理空间的限制,实现随时随地进行波形分析,鼎阳科技决定推出SigScopeLab软件免费版。它是一款运行于Windows操作系统的专业时域信号分析和示波器控制软件:提供与SDS高级示波器相似的用户交互界面,能够完美避免脱离实体设备的不适感;多种多窗口显示模式可供挑选,各Memory波形的水平时基可单独调节,多条波形下细节观察更清晰。

产品    发布时间 : 2024-03-11

什么是示波器真正的存储深度?

示波器的存储深度指其能保存的采样点个数,是示波器的重要参数,影响信号采集、存储和分析能力。存储深度与采样率和采样时间相互关联,存储深度越大,示波器可记录和回放的波形数据越多。示波器的最大存储深度受物理介质限制,需在菜单中设置。多通道工作时,采样率和存储深度可叠加,但为获最大采样率和存储深度,建议只打开两两叠加模式中的一个通道。使用示波器时,需综合考虑存储深度和采样率之间的平衡。

技术探讨    发布时间 : 2024-10-09

浅析数字示波器对于电子学的重要性——电子工程师的眼睛

数字示波器是电子信息工业的基础设施,是应用最广泛的基础电子测试测量仪器,被誉为电子工程师的眼睛,用于采集电路中的电信号并存储和显示,并对信号进行测量、分析和处理。

技术探讨    发布时间 : 2024-10-09

为什么示波器的探头未连接时会有波形?

介绍示波器为什么探头没接会有波形。

设计经验    发布时间 : 2024-03-18

基于两台SDS3000示波器同步产生“8通道”示波器

在很多应用场合需要4通道以上的示波器,但是市面上极大部分示波器最多只有四通道,而且没有外部输入的同步时钟接口。有什么快捷的方法获得更多通道功能的示波器? 最简便的方法是:将两台示波器的辅助输入信号作为触发源,同时连接到相同的输入信号,每台示波器的另外四个通道都分别连接到不同的待测信号,这样两台示波器就近似于等效的“8通道”示波器。连接示意图如图1所示。

设计经验    发布时间 : 2024-07-12

数字示波器的核心组件与协同工作难点

数字示波器是一个复杂的系统,其难点并非仅仅在于模数转换器(ADC)。数字示波器的难点在于各个系统的协同工作,包括ADC、前端电路和处理系统等。只有这些系统相互配合,才能实现示波器的高精度测量和快速响应。

原厂动态    发布时间 : 2024-09-25

不知道怎么选高分辨率示波器?看懂这五个要素就行

近年来,各大厂商也纷纷开始重点推广高分辨率示波器,这主要是为了迎合当前的发展趋势,比如电源行业,开关频率从几十kHz,到几百KHz,到现在甚至高达几MHz,这对示波器的带宽、采样率、分辨率都提出了更高的要求。那有这么多的品牌,这么多的型号可供选择,用户们该如何挑选呢,所以本文中鼎阳科技聊聊挑选高分辨率示波器的几大要素。

技术探讨    发布时间 : 2024-06-26

【经验】如何用示波器进行安全的市电测量?

在我们使用示波器的过程中,市电测量是许多朋友都会遇到的一个测试项目,但很多朋友在测量中就产生了不少疑问,示波器能测市电吗?示波器如何测量市电?怎么测量才安全呢?等等诸多问题,本篇文章中将为大家一一解答。

设计经验    发布时间 : 2023-10-12

数字电路测试中的示波器应用与鼎阳科技解决方案

数字电路测试是数字电路设计的重要环节,用于验证数字电路功能是否按照所期望的方式工作,通常使用示波器进行数字电路输出信号的检测,从而进行故障查找或确定电路性能和参数。鼎阳科技示波器高带宽、高采样率适合高频信号测量。能捕获瞬态信号、分析异常和特定事件、测量多路信号、解码总线信号,评估信号抖动特性,提升系统性能。

设计经验    发布时间 : 2024-09-24

展开更多

电子商城

查看更多

品牌:鼎阳科技

品类:超级荧光示波器

价格:¥4,380.0000

现货: 20

品牌:鼎阳科技

品类:超级荧光示波器选件

价格:

现货: 30

品牌:鼎阳科技

品类:超级荧光示波器选件

价格:¥2,480.0000

现货: 30

品牌:鼎阳科技

品类:超级荧光示波器选件

价格:¥3,180.0000

现货: 30

品牌:鼎阳科技

品类:智能示波器选件

价格:

现货: 30

品牌:鼎阳科技

品类:超级荧光示波器选件

价格:¥3,180.0000

现货: 30

品牌:鼎阳科技

品类:隔离附件

价格:¥1,480.0000

现货: 30

品牌:鼎阳科技

品类:超级荧光示波器

价格:¥4,880.0000

现货: 30

品牌:鼎阳科技

品类:超级荧光示波器

价格:¥1,699.0000

现货: 30

品牌:鼎阳科技

品类:超级荧光示波器选件

价格:

现货: 30

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

现货市场

查看更多

品牌:KEYSIGHT

品类:Oscilloscope

价格:¥6,255.4404

现货:42

品牌:KEYSIGHT

品类:Oscilloscope

价格:¥2,032.6780

现货:39

品牌:KEYSIGHT

品类:Oscilloscope

价格:¥2,279.0608

现货:34

品牌:KEYSIGHT

品类:Oscilloscope

价格:¥5,964.0270

现货:33

品牌:KEYSIGHT

品类:Oscilloscope

价格:¥5,507.7707

现货:28

品牌:KEYSIGHT

品类:示波器升级软件

价格:¥300.0000

现货:26

品牌:KEYSIGHT

品类:Oscilloscope

价格:¥27,841.4996

现货:24

品牌:KEYSIGHT

品类:Oscilloscope

价格:¥5,642.3160

现货:16

品牌:KEYSIGHT

品类:Oscilloscopes software

价格:¥18,510.7560

现货:12

品牌:KEYSIGHT

品类:Oscilloscope

价格:¥7,943.7870

现货:12

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

品牌:

品类:

价格:

现货:

服务

查看更多

网络分析仪/频谱仪/信号分析仪/无线综测仪/信号发生器租赁

提供是德(Keysight),罗德(R&S)测试测量仪器租赁服务,包括网络分析仪、无线通讯综测仪、信号发生器、频谱分析仪、信号分析仪、电源等仪器租赁服务;租赁费用按月计算,租赁价格按仪器配置而定。

提交需求>

低功耗测试

提供全面表征产品器件耗电特征及功耗波形、快速瞬态效应、电源优化、表征和仿真测试服务,使用直流电源分析仪测量精度达50µV,8nA,波形发生器带宽100kHz,输出功率300W,示波器200kHz,512 kpts

实验室地址: 深圳/苏州 提交需求>

查看更多

授权代理品牌:接插件及结构件

查看更多

授权代理品牌:部件、组件及配件

查看更多

授权代理品牌:电源及模块

查看更多

授权代理品牌:电子材料

查看更多

授权代理品牌:仪器仪表及测试配组件

查看更多

授权代理品牌:电工工具及材料

查看更多

授权代理品牌:机械电子元件

查看更多

授权代理品牌:加工与定制

世强和原厂的技术专家将在一个工作日内解答,帮助您快速完成研发及采购。
我要提问

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

研发客服
商务客服
服务热线

联系我们

954668/400-830-1766(工作日 9:00-18:00)

service@sekorm.com

投诉与建议

E-mail:claim@sekorm.com

商务合作

E-mail:contact@sekorm.com

收藏
收藏当前页面