首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何通过pyserial与24字节的Vacom VAX控制器进行通信?

如何通过pyserial与24字节的Vacom VAX控制器进行通信?
EN

Stack Overflow用户
提问于 2019-08-07 22:43:43
回答 1查看 58关注 0票数 0

我得从Vacom VAX控制器那里得到压力信息。手册中有一个获取通道2压力的例子,你可以在Vacom的主页上下载。该示例不适用于python中的pyserial。

我已经下载了Vacom的VVD.exe,一个小演示程序。它起作用了。我知道了控制器的波特率,我看到了通道2的压强。

代码语言:javascript
复制
import serial.tools.list_ports as serial_ports
from serial import Serial


ports = serial_ports.comports()
for each in ports:
    if each.manufacturer[:12] == 'VACOM Vakuum':
        ser = Serial(port=each.device, baudrate=19200, timeout=1, bytesize=8, parity='N', stopbits=1)
        print(each)

command='A5500000200802000000000000000000000000000000357A'
ser.write(command.encode())
print(ser.readline())

#answer:
#COM3 - VaX Serial Port (COM3)
#b''

我想得到压力,但我什么也得不到,而且我不知道如何转换命令。除了encode()之外,还有其他选择吗?或者错误是什么?谢谢你的帮助!

EN

回答 1

Stack Overflow用户

发布于 2019-08-08 01:20:05

我不能给你一个完整的答案(我没有任何这些压力控制器,我从来没有使用过这个协议),但这可能会带你走上正确的道路。

此VVD.exe软件似乎在端口上发送此帧:

代码语言:javascript
复制
0a30313a32383a20a550000002000000000000000000000000000000000099ab

也许你可以试一试,看看会发生什么。乍一看,它对我来说没有任何意义,至少它不像手册上说的那样。

为了获得它,我使用了this procedure。你可能想在连接设备的情况下试一试,并试图弄清楚到底是怎么回事。

编辑:重读我的答案我只是连接了几个点,框架似乎有一个前缀:

代码语言:javascript
复制
    {0a30313a32383a20}{a550000002000000000000000000000000000000000099ab}

我不知道这个前缀是否被仪器丢弃了。我在手册中没有看到任何这样的东西,但它没有仔细阅读。

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

https://stackoverflow.com/questions/57397002

复制
相关文章

相似问题

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