1. AprusX modbus接口/配置

1.1. config.lua

示例:

Modbus={

    device={
        type="rtu",
        rate=38400,
        databit=8,
        stopbit=1,
        parity="None", -- None/Odd/Even

    },

    node={
        collect={
            {ID=1, reg="1", addr=0, cnt=50, delay=1000},
        },

        variable={
            {ID=1,reg="3",addr=0,dtype="short",pMode={1,5},dStyle={"L1_3_0"},dOffset={{"*",2}}},
        },
    },
}

1.1.1. Modbus - device : 接口属性

参数 说明
type ”rtu” / “tcp” 指定modbus协议类型
rate 2400 ~ 115200 接口波特率
databit 5 / 6 / 7 / 8 数据位
stopbit 1 / 2 停止位
parity “None” / “Odd” / “Even” 校验位(无 / 奇校验 / 偶校验)

1.1.2. Modbus - node - collect : 采集节点属性

参数 说明
ID 整数 Modbus ID
reg “1” / ”2” / ”3” / ”4” / ”5” / ”6” / ”16” 功能码
addr 0 ~ n 采集起始地址
cnt 1 ~ n 采集长度(双字节为单位)
delay (可选) 0 ~ n (该参数不填时 默认值0) 采集延时 单位ms

1.1.3. Modbus - node - variable: 上报节点属性

参数 说明
ID 整数 Modbus ID
reg “1” / ”2” / ”3” / ”4” / ”5” / ”6” / ”16” 功能码
addr 0 ~ n 采集起始地址
dtype “bit”/”byte”/”ubyte”/”short”/”ushort” 上报数据类型
“int”/”uint”/”float”/”bytes” bytes表示字符串格式
len (可选) 0 ~ n 当dtype="bytes "时使用,指定长度
pMode {1, 5} 周期上报模式 周期5s
{2, 0} 改变上报模式
dStyle {"L1_3_0"} 上报名称
dOffset {{"+", 10}} 偏移计算,加10
{{"-", 10}} 偏移计算,减10
{{"*", 10}} 偏移计算,乘10
{{"/", 10}} 偏移计算,除10
{{".", 2}} 偏移计算,保留2位小数

1.2 aprus.lua

1.1.4. modbus.new

功能:创建modubs实例

示例:obj = modbus.new(type)

参数 说明
type “rtu” / “tcp” 指定modbus协议类型
返回值 返回modbus实例

1.1.5. modbus.config

功能:配置modbus实例

示例:modbus.config(obj, rate, databit, stopbit, parity)

参数 说明
obj obj Modbus实例返回对象
rate 2400 ~ 115200 接口波特率
databit 5 / 6 / 7 / 8 数据位
stopbit 1 / 2 停止位
parity “None” / “Odd” / “Even” 校验位(无 / 奇校验 / 偶校验)

1.1.6. modbus.select_rs485

功能:选择modbus采集接口实例

示例:modbus.select_rs485(obj, num)

参数 说明
obj obj Modbus实例返回对象
num “1” / ”2” “1”:对应外壳的-485-1-
“2”:对应外壳的-485-2-
默认不填则对应“1”

注意:此接口函数只针对有两个485采集接口的AprusX适配器。

1.1.7. modbus.add_collectnode

功能:创建添加modbus采集节点实例

示例:modbus.add_collectnode(session, ID, reg, addr, cnt, delay )

参数 说明
session session 消息会话对象
ID 整数 Modbus ID
reg “1” / ”2” / ”3” / ”4” / ”5” / ”6” / ”16” 功能码
addr 0 ~ n 采集起始地址
cnt 1 ~ n 采集长度(双字节为单位)
delay (选填) 0 ~ n (该参数不填时 默认值0) 采集延时 单位ms

1.1.8. modbus.add_varnode

功能:创建添加modbus变量节点实例

示例:modbus.add_varnode(session, ID, reg, addr, dtype, dBit, format, len, pMode, dStyle, dOffset, dExt)

参数 说明
session session 消息会话对象
ID 整数 Modbus ID
reg “1” / ”2” / ”3” / ”4” / ”5” / ”6” / ”16” 功能码
addr 0 ~ n 采集起始地址
dtype “bit”/”byte”/”ubyte”/”short”/”ushort” 上报数据类型
“int”/”uint”/”float”/”bytes” bytes表示字符串格式
dBit 0~15 当dtype=”bit”时使用,采集指定的位
format “ABCD”/”BADC”/”CDAB”/”DCBA” 当dtype=”int”/”uint”/”float”时使用
表示按指定字节序采集
len 0 ~ n 当dtype=”bytes”时使用,指定长度
pMode {1, 5} 周期上报模式 周期5s
{2, 0} 改变上报模式
dStyle {“L1_3\0”} 上报名称
dOffset {{"+", 10}} 偏移计算,加10
{{"-", 10}} 偏移计算,减10
{{"*", 10}} 偏移计算,乘10
{{"\", 10}} 偏移计算,除10
{{".", 2}} 偏移计算,保留2位小数
dExt {{">",100},{0,0}} 附件报文处理,当pMode={2, 0}时使用
表示大于100的数据才会上报

1.1.9. modbus.run

功能:创建modbus启动实例

示例:modbus.run(obj)

参数 说明
obj obj Modbus实例对象

1.1.10. modbus.stop

功能:创建modbus停止实例

示例:modbus.stop(obj)

参数 说明
obj obj Modbus实例对象
© Mixlinker all right reserved,powered by Gitbook文件修订时间: 2021-03-05 17:49:29

results matching ""

    No results matching ""