APRUS Lua-Hostlink配置说明
概述
- 本章主要概述 APRUS Lua-Hostlink协议的相关配置说明,该协议主要针对欧姆龙的PLC(支持Hostlink协议)。APRUS适配器可通过Hostlink协议与欧姆龙PLC(Hostlink协议)进行通信。而其中APRUS的Lua包含
apru.lua
和config.lua
两个文件,客户只需配置config.lua
就可以对欧姆龙PLC的数据进行采集。如需修改APRUS.lua
文件的内容时,请咨询相关的技术人员,随意修改会导致适配器不能正常工作,所以此文档主要介绍config.lua
内容。
1 config.lua 示例
APRUS X={
ipmode="manual", -- auto/manual/none
inet_addr="192.168.1.198",
netmask="255.255.255.0",
luaver="V00.R",
devinfo="HostlinkDev",
},
Hostlink={
device={
rate=9600,
databit=8,
stopbit=1,
parity="None", -- None/Odd/Even
},
node={
collect={
{ID=1, reg="C", addr=100,cnt=1},
{ID=1, reg="C", addr=0, cnt=20},
{ID=1, reg="D", addr=0, cnt=20},
{ID=1, reg="W", addr=0, cnt=20},
{ID=1, reg="H", addr=0, cnt=20},
},
variable={
{ID=1,reg="C",addr=100, dtype="bit", dBit=0, pMode={1,5},dStyle={"L1_C_100_0"}},
{ID=1,reg="D",addr=3,dtype="short",pMode={2,0},dStyle={"L1_D_3"},dExt={{"+",10}}},
}
},
}
1 APRUS 属性
1.1 APRUS 属性
参数 |
值 |
ipmode |
“auto”/“manual”/“none” |
inet_addr |
“192.168.1.198” |
netmask |
“255.255.255.0” |
luaver |
“V00.R” |
devinfo |
“HostlinkDev” |
ipmode:ip获取方式
inet_addr:APRUS的IP地址
netmask:子网掩码
luaver:lua版本信息
devinfo:对接设备信息
1.2 Hostlink- device : 接口属性
参数 |
值 |
说明 |
rate |
2400~256000 |
波特率 |
databit |
5/6/7/8 |
数据位 |
stopbit |
1/2 |
停止位 |
parity |
“None”/“Odd”/“Even” |
校验位(无 / 奇校验 / 偶校验) |
rate:波特率
databit:数据位
stopbit:停止位
parity:校验位(无 / 奇校验 / 偶校验)
1.3 Hostlink - node - collect :采集节点属性
参数 |
值 |
说明 |
ID |
0~n |
设备ID |
reg |
“C”/“D”/“W”/“H” |
寄存器 |
addr |
0~n |
采集初始地址 |
cnt |
0~n |
采集长度 |
delay(可选) |
0~n |
采集间隔,单位:ms |
ID:设备ID
reg:寄存器
addr:采集初始地址
cnt:采集长度
delay:采集间隔,单位:ms
1.4 Hostlink - node - variable:上报节点属性
参数 |
值 |
说明 |
ID |
0~n |
设备ID |
reg |
“C”/“D”/“W”/“H” |
寄存器 |
addr |
0~n |
采集起始地址 |
dtype |
“bit”/“byte”/“ubyte”/“short”/“ushort”/“int”/“uint”/“float”/“double”/“bytes” |
上报数据类型,bytes表示字符串格式 |
dBit |
0~15 |
当dtype=”bit”时使用,采集指定的位 |
Len(可选) |
0~n |
当dtype =”bytes”时使用,指定长度 |
pMode |
{1, 5} |
周期上报模式 周期5s |
|
{2, 0} |
改变上报模式 |
format |
“ABCD”/“BACD”/“CDAB”/“DCBA” |
当dtype=”int”/“uint”/“float”时使用,表示按指定字节序采集 |
dStyle |
{“L1_C_100_0”} |
上报名称 |
dOffset |
{{“+”, 10}} |
偏移计算,加10 |
|
{{“-“, 10}} |
偏移计算,减10 |
|
{{“*”, 10}} |
偏移计算,乘10 |
|
{{“/“, 10}} |
偏移计算,除10 |
|
{{“.”, 2}} |
偏移计算,保留2位小数 |
dExt |
{{“>”,100},{0,0}} |
附件报文处理,当pMode={2, 0}时使用,表示大于100的数据才会上报 |
ID:设备ID
reg:寄存器
addr:采集起始地址
dtype:上报数据类型
dBit:采集指定的位
Len:指定长度
pMode:周期上报模式
format:按指定字节序采集
dStyle:上报名称
dOffset:偏移计算
dExt:附件报文处理
2 APRUS.lua
2.1 hostlink.new
- 功能:创建hostlink实例
- 示例:obj = hostlink.new()
- 返回值:返回Ihostlink实例
2.2 hostlink.config
- 功能:配置hostlink实例
- 示例:obj = hostlink.config(obj,rate, databit, stopbit, parity, format, checksum)
参数 |
值 |
说明 |
obj |
obj |
hostlink实例返回对象 |
rate |
2400 ~ 256000 |
接口波特率 |
databit |
5 / 6 / 7 / 8 |
数据位 |
stopbit |
1 / 2 |
停止位 |
parity |
“None” / “Odd” / “Even” |
校验位(无 / 奇校验 / 偶校验) |
format |
0/1 |
CR校验,0:无CR校验 1:有CR校验 |
checksum |
0/1 |
和校验,0:无和校验 1:和校验 |
2.3 hostlink.select_rs485
- 功能:选择hostlink采集接口实例
- 示例:hostlink.select_rs485(obj, num)
- 注意:此接口函数只针对有两个485采集接口的APRUS适配器。
参数 |
值 |
说明 |
obj |
obj |
hostlink实例返回对象 |
num |
“1” |
“1”:对应外壳的-485-1- |
|
“2” |
“2”:对应外壳的-485-2- |
默认 |
默认不填则对应”1” |
|
2.4 hostlink.add_collectnode
- 功能:添加hostlink采集节点
- 示例:hostlink.add_collectnode(session, ID, reg, addr, cnt, unit, delay)
参数 |
值 |
说明 |
session |
session |
消息会话对象 |
ID |
0~n |
设备ID |
reg |
“C”/“W”/“D”/“H” |
寄存器 |
uint |
“b”/“w” |
指定字节长度采集,”b”:单字节 “w”:双字节 |
delay |
0~n |
采集间隔,单位:ms |
2.5 hostlink.add_varnode
- 功能:添加hostlink上报变量节点
- 示例:hostlink.add_varnode(session, ID, reg, addr, dtype, unit, dBit, format, len, pMode, dStyle, dOffset, dExt)
参数 |
值 |
说明 |
session |
session |
消息会话对象 |
ID |
0~n |
设备ID |
reg |
“C”/“D”/“W”/“H” |
寄存器 |
addr |
0~n |
采集起始地址 |
dtype |
“bit”/“byte”/“ubyte”/“short”/“ushort”/“int”/“uint”/“float”/“double”/“bytes” |
上报数据类型,bytes表示字符串格式 |
dBit |
0~15 |
当dtype=”bit”时使用,采集指定的位 |
Len(可选) |
0~n |
当dtype =”bytes”时使用,指定长度 |
pMode |
{1, 5} |
周期上报模式 周期5s |
|
{2, 0} |
改变上报模式 |
format |
“ABCD”/“BACD”/“CDAB”/“DCBA” |
当dtype=”int”/“uint”/“float”时使用,表示按指定字节序采集 |
dStyle |
{“ L1_C_100_0 “} |
上报名称 |
dOffset |
{{“+”, 10}} |
偏移计算,加10 |
|
{{“-“, 10}} |
偏移计算,减10 |
|
{{“*”, 10}} |
偏移计算,乘10 |
|
{{“", 10}} |
偏移计算,除10 |
|
{{“.”, 2}} |
偏移计算,保留2位小数 |
dExt |
{{“>”,100},{0,0}} |
附件报文处理,当pMode={2, 0}时使用,表示大于100的数据才会上报 |
2.6 hostlink.run
- 功能:创建hostlink启动实例
- 示例:hostlink.run(obj)
参数 |
值 |
说明 |
obj |
obj |
hostlink实例返回对象 |
2.7 hostlink.stop
- 功能:创建hostlink停止实例
- 示例:hostlink.stop(obj)
参数 |
值 |
说明 |
obj |
obj |
hostlink实例返回对象 |
文档更新时间: 2025-01-10 16:21 作者:CGL