APRUS Lua-Hostlink配置说明

概述

  1. 本章主要概述 APRUS Lua-Hostlink协议的相关配置说明,该协议主要针对欧姆龙的PLC(支持Hostlink协议)。APRUS适配器可通过Hostlink协议与欧姆龙PLC(Hostlink协议)进行通信。而其中APRUS的Lua包含apru.luaconfig.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