Python Minimalmodbus发送值

2024-10-06 07:40:50 发布

您现在位置:Python中文网/ 问答频道 /正文

我需要使用Python通过Modbus控制VSD的速度。 我所有的工作都接受一部分,那就是发送VSD的速度。在

如果我发出这个命令,马达就会启动

 vsd.write_register(8192 , 2 , 0)

这个命令会让它停止

^{pr2}$

命令的格式如下所示

Id  code adrsh adrsl   high   low   crc
01  06   20    00      00     06    02 08

VSD的文档将命令寄存器和值显示为十六进制 但是Python库需要Decimal。所以如果我发送简单的命令都能100%工作。在

但是当我想设置速度时,我必须设置高值和低值。 如果我发送0x2710或10000,vsd将返回一个错误。如果我使用VSD附带的工具,将值100.00(10000)拆分为27和10两个字节,那么一切正常。由于0x2710不工作,我如何将该值发送到VSD。在

谨致问候。在


Tags: 命令registerid格式code速度modbuswrite