我得从Vacom VAX控制器那里得到压力信息。手册中有一个获取通道2压力的例子,你可以在Vacom的主页上下载。该示例不适用于python中的pyserial。
我已经下载了Vacom的VVD.exe,一个小演示程序。它起作用了。我知道了控制器的波特率,我看到了通道2的压强。
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()之外,还有其他选择吗?或者错误是什么?谢谢你的帮助!
发布于 2019-08-08 01:20:05
我不能给你一个完整的答案(我没有任何这些压力控制器,我从来没有使用过这个协议),但这可能会带你走上正确的道路。
此VVD.exe软件似乎在端口上发送此帧:
0a30313a32383a20a550000002000000000000000000000000000000000099ab也许你可以试一试,看看会发生什么。乍一看,它对我来说没有任何意义,至少它不像手册上说的那样。

为了获得它,我使用了this procedure。你可能想在连接设备的情况下试一试,并试图弄清楚到底是怎么回事。
编辑:重读我的答案我只是连接了几个点,框架似乎有一个前缀:
{0a30313a32383a20}{a550000002000000000000000000000000000000000099ab}我不知道这个前缀是否被仪器丢弃了。我在手册中没有看到任何这样的东西,但它没有仔细阅读。
https://stackoverflow.com/questions/57397002
复制相似问题