aardio 文档

sio.modbus 库模块帮助文档

sio.modbus 成员列表 #

Modbus 协议库

相关库: wsock.tcp.modbusClient ( Modbus TCP 协议 )。
相关库: wsock.udp.modbusClient ( Modbus UDP 协议 )。

sio.modbus.crc16(data) #

计算 Modbus CRC16 校验值,
参数为字符串或 buffer,
返回16位校验值

sio.modbus.exceptionMessages #

Modbus 异常码对照表

sio.modbus.rtu("COM1",1) #

创建 Modbus RTU 客户端,
参数 @1 为串口号(字符串或数值)或已打开的 sio.port 对象,
参数 @2 为从站地址(默认为1),
成功返回客户端对象,失败返回 null,错误信息

sio.modbus.rtu() #

返回对象:SioModbusRtuObject

SioModbusRtuObject 成员列表 #

SioModbusRtuObject.close() #

关闭串口

SioModbusRtuObject.ioctl(波特率,数据位,停止位,校验位) #

设置串口参数,
波特率默认9600,数据位默认8,停止位默认1,校验位可选"even","odd","none"

SioModbusRtuObject.maskWriteRegister(地址,AND掩码,OR掩码) #

掩码写寄存器(功能码0x16),
结果=(当前值 AND 掩码) OR (OR掩码 AND (NOT AND掩码))

SioModbusRtuObject.port #

sio.port 串口对象

返回对象:sioportObject

SioModbusRtuObject.readCoils(起始地址,数量) #

读线圈状态(功能码0x01),
返回布尔值数组,失败返回 null,错误信息

SioModbusRtuObject.readDiscreteInputs(起始地址,数量) #

读离散输入(功能码0x02),
返回布尔值数组,失败返回 null,错误信息

SioModbusRtuObject.readHoldingRegisters(起始地址,数量) #

读保持寄存器(功能码0x03),
返回16位整数数组,失败返回 null,错误信息

SioModbusRtuObject.readInputRegisters(起始地址,数量) #

读输入寄存器(功能码0x04),
返回16位整数数组,失败返回 null,错误信息

SioModbusRtuObject.readWriteMultipleRegisters(读起始地址,读数量,写起始地址,写值数组) #

读写多个寄存器(功能码0x17),
返回读取的16位整数数组

SioModbusRtuObject.responseDelay #

响应延迟(毫秒)

SioModbusRtuObject.sendRaw(数据,期望长度) #

发送原始请求帧(不含CRC),
返回原始响应帧

SioModbusRtuObject.setResponseDelay(毫秒) #

设置响应延迟时间,默认50毫秒

SioModbusRtuObject.setSlaveId(从站地址) #

设置从站地址(1-247)

SioModbusRtuObject.setTimeout(毫秒) #

设置通信超时时间,默认1000毫秒

SioModbusRtuObject.slaveId #

从站地址

SioModbusRtuObject.timeout #

超时时间(毫秒)

SioModbusRtuObject.writeMultipleCoils(起始地址,值数组) #

写多个线圈(功能码0x0F),
参数@2为布尔值数组,成功返回true

SioModbusRtuObject.writeMultipleRegisters(起始地址,值数组) #

写多个寄存器(功能码0x10),
参数@2为16位整数数组,成功返回true

SioModbusRtuObject.writeSingleCoil(地址,值) #

写单个线圈(功能码0x05),
参数@2为布尔值,成功返回true

SioModbusRtuObject.writeSingleRegister(地址,值) #

写单个寄存器(功能码0x06),
参数@2为16位整数,成功返回true

Markdown 格式