首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >来自R&S rto示波器的流式数据- UnicodeDecodeError python3.6 3.6

来自R&S rto示波器的流式数据- UnicodeDecodeError python3.6 3.6
EN

Stack Overflow用户
提问于 2020-10-12 16:44:46
回答 1查看 177关注 0票数 0

我正在尝试获取Rhode和Schwarz RTO示波器上特定通道的信号数据。我使用vxi11 python(3.6)库与作用域进行通信。

在我第一次尝试时,我能够提取我正在查询的范围通道的所有数据,没有任何错误(使用这个查询命令CHAN1:WAV1:DATA?),但是很快我就得到了这个错误消息。

代码语言:javascript
复制
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc7 in position 10: invalid continuation byte

奇怪的是,我仍然能够毫无问题地获取数据的头部。只有当我请求发送整个数据时,我才会看到这个错误。

我尝试在REAL(二进制)和ASCii之间更改数据格式,但是没有效果。

另一件奇怪的事情是,当我将接收到的数据的数据编码转换为‘latin 1’时,它工作了一阵子(给了我一个奇怪的字符串,我假设它就是我想要的数据-只是以另一种格式),然后崩溃了。

整个输出如下所示:

代码语言:javascript
复制
****IDN : Rohde&Schwarz,RTO,1329.7002k04/100938,4.20.1.0
FORM[:DATA]ASCii : None
CHAN1:WAV1:DATA:HEAD? : -0.2008,0.1992,10000000,1
'utf-8' codec can't decode byte 0xc7 in position 10: invalid continuation byte
'utf-8' codec can't decode byte 0xc7 in position 10: invalid continuation byte
Traceback (most recent call last):
  File "testing_rtodto.py", line 21, in ask_query
    logger.debug(print(query+" :",str(conn._ask(query))))
  File "../lib_maxiv_rtodto/client.py", line 187, in _ask
    response = self.instrument.ask(data)#, encoding="latin-1")
  File "/usr/lib/python3.6/site-packages/vxi11/vxi11.py", line 743, in ask
    return self.read(num, encoding)
  File "/usr/lib/python3.6/site-packages/vxi11/vxi11.py", line 731, in read
    return self.read_raw(num).decode(encoding).rstrip('\r\n')
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc7 in position 10: invalid continuation byte
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-10-12 17:16:00

好了,我找到了一个解决方法。多亏了这个帖子https://github.com/pyvisa/pyvisa/issues/306

虽然我没有使用与他们相同的通信库,但问题似乎是我查询数据的方式,而不是库如何读取数据。事实证明,你必须非常非常密切地遵循R&S的仪器说明(尽管他们的文档非常混乱,很难找到-更不用说缺乏重要查询函数的示例查询字符串了)

从本质上讲,有效的查询命令是FORM ASC;:CHAN1:DATA?。这会在将数据返回到通信库之前显式地将数据转换为ASCii格式。

我还找到了R&S提供的一些示例python脚本(https://cdn.rohde-schwarz.com/pws/service_support/driver_pagedq/files_1/directscpi/DirectSCPI_PyCharm_Python_Examples.zip)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64314469

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档