AiMaster300物联网可编程边缘计算网关:Lua脚本自定义协议转换方案

免费免费技术资料

这篇内容可直接阅读,适合用于基础学习和搜索引流。

本文目录
  1. 1. AiMaster300产品概述
  2. 2. 产品核心特点
  3. 3. 编程环境说明
  4. 4. 编程界面
  5. 5. 工作模式
  6. 6. 虚拟机配置
  7. 7. 内置代码库
  8. 8. 核心功能详解
  9. 9. TCP/IP Server功能
  10. 10. TCP/IP Client功能
  11. 11. 数据库网关功能
  12. 12. Modbus Master功能
  13. 13. 串口通信功能
  14. 14. 系统功能
  15. 15. 典型应用开发示例
  16. 16. 示例1:Modbus数据采集入库
  17. 17. 示例2:TCP透传服务器
  18. 18. 示例3:主动上传至云平台
  19. 19. 示例4:自定义协议轮询
  20. 20. 技术参数
  21. 21. 典型应用场景

AiMaster300产品概述

AiMaster300是深圳市一天广联科技有限公司推出的Lua脚本可编程物联网控制器,集成双Lua虚拟机、丰富的通信接口和强大的数据处理能力,是工业物联网领域实现自定义协议转换、数据采集、边缘计算和云端对接的高性能可编程平台。该控制器支持Lua脚本编程,用户可根据现场需求灵活开发各种应用逻辑,无需修改硬件即可实现复杂的工业通信和数据处理功能。

AiMaster300支持最多4个Lua虚拟机并行运行,每个虚拟机独立执行脚本任务,提供TCP/IP Client/Server、Modbus Master、SQL数据库接口、MQTT接口、串口通信、实时时钟、数据转换等丰富的函数库,内置代码库包含数十种通信示例,可快速开发各类工业物联网应用。

产品核心特点

  • Lua脚本可编程:支持标准Lua脚本语言,灵活开发自定义应用逻辑,无需修改硬件
  • 多虚拟机并行:支持最多4个Lua虚拟机同时运行(VM1目标端口9100,VM2目标端口9101),每个虚拟机独立执行任务
  • 丰富的函数库:提供TCP/IP、Modbus Master、SQL数据库、MQTT、串口、RTC实时时钟、数据转换等完整函数库
  • 内置代码库:预置数十种通信示例代码,包括TCP Client/Server各种模式、Modbus轮询、数据库操作、MQTT上云等,可直接调用生成
  • 数据库网关功能:支持直接连接数据库网关,执行SQL语句、存储过程,断网数据本地存储自动补发
  • 断点续传功能:通讯中断时数据存储在本机Flash,通讯恢复后由后台服务自动补发,无需开发者干预
  • 可视化编程环境:提供Windows编程界面,支持代码编辑、调试、保存上传至控制器运行

编程环境说明

编程界面

AiMaster300提供专用的Windows编程软件,界面包含以下功能:

  • 代码项目管理:创建、打开、保存项目文件
  • 编辑:Lua代码编辑器,支持语法高亮
  • 从代码库生成代码(快捷键Ctrl+D):从内置代码库选择示例代码自动生成
  • 代码库管理:管理用户自定义代码库
  • 设置:配置网络参数、工作模式等
  • 保存并上传至控制器运行(快捷键F9):将代码上传到控制器并运行
  • 保存当前项目至数据库(快捷键Ctrl+S):保存项目文件

工作模式

  • 调试模式:启用DEBUG库及Print功能,适合开发调试阶段使用
  • 成品模式:禁用调试功能,优化运行性能,适合正式部署

虚拟机配置

支持选择Lua虚拟机数量:1、2、3、4个,每个虚拟机独立运行脚本,可分配不同的通信端口和任务。

内置代码库

AiMaster300内置丰富的代码库,用户可通过”选择代码”功能直接调用示例代码,快速开发应用:

  • Lua基础:Lua函数定义及使用、基本语法、基本例子、脚本调试
  • 网络通信:Lua网络服务例子、TCP/IP Client各种模式、TCP/IP Server各种模式
  • 工业协议:ModbusMaster终端函数库、Modbus虚拟机接口
  • 数据库:Sql数据库接口函数、数据库操作例子
  • 物联网:mqtt虚拟机接口、云平台例子
  • 串口通信:串口函数、串口轮询下位机例子
  • 系统功能:动态生成代码、定时器输入、基本输出、数据转换、实时时钟
  • 应用示例:通用TCP控制远程IO模块、无阻塞连续读取TCP/IP Server读写数据等

核心功能详解

TCP/IP Server功能

AiMaster300可作为TCP/IP Server运行,支持多客户端同时连接:

  • startserver:启动TCP/IP Server,可设置支持10个客户端同时连接
  • 递增端口模式:监听端口范围7000-7009,接收超时可配置(如20秒)
  • 透传模式:支持透传模式启动,实现串口数据透明传输到网络
  • srvwaitrec:等待TCP/IP Server触发接收消息,代码一直停止在此函数,收到数据时被触发
  • srvreadrecstr:从Server TCP/IP缓冲读取客户端数据,数据已被保存至缓冲
  • srvresp:通知Server此客户端数据处理已经完成
  • 多客户端管理:支持关闭指定客户端连接、多客户端字符串通讯、多客户端轮询、多客户端透传等模式

TCP/IP Client功能

AiMaster300可作为TCP/IP Client主动连接远程服务器:

  • startclient:启动客户端服务,以直读直写模式连接指定服务器IP和端口
  • cliwriteastr:向服务器发送string数据
  • clireadastr:从服务器接收string数据
  • cligetrhost:读取指定索引的客户服务的远程服务器IP和端口
  • 应用模式:支持16进制数据主动上传、直接读写模式、模拟量通讯、主动上传字符串、主动轮询服务器等多种模式

数据库网关功能

AiMaster300支持直接连接数据库网关,实现工业数据入库:

  • connectodb:与数据库网关建立TCP/IP连接,可配置连接参数
  • 数据类型设置
    • setval_string:设置字符串数据
    • setval_float:设置浮点数据,支持保留指定小数位
    • setval_int:设置整数数据
    • setval_dt:设置日期时间数据
  • datachanged:判断数据是否发生变化,仅在数据变化时更新数据库,减少无效写入
  • sql_insert:调用SQL insert向数据库插入一条数据,添加失败时数据存在本机Flash中,通讯恢复后自动补发
  • sql_execproc:执行指定的存储过程,数组接收存储过程返回的结果集
  • execsql:执行标准SQL语句,支持update、select、select count等操作
  • 断点续传:断网时数据存储在本机Flash,通讯恢复后由后台服务自动补发,无需开发者干预

Modbus Master功能

AiMaster300内置Modbus Master功能,可主动轮询Modbus RTU设备:

  • modmaster.readrtu:通过串口读取Modbus RTU数据,支持设置读取的串口、Modbus下位机站号、读取的寄存器数量、数据格式等参数
  • 返回数据解析:支持浮点数解析,可将读取的原始数据转换为工程值
  • 多设备轮询:支持循环轮询多个下位机设备,每个设备可配置不同的站号和寄存器

串口通信功能

AiMaster300提供灵活的串口通信函数:

  • lib_uart.queryuart:用串口执行一次轮询,queryuart为串口轮询函数,可发送任意数据并接收下位机返回数据
  • lib_uart.uart_rxnw:非阻塞式接收串口数据,支持设置超时时间,达到超时未收到数据则返回第一个字节后继续执行后续命令
  • 自定义协议:支持发送任意数据,可以为任意数据,但需要符合下位机的通讯协议规范
  • 数据打印:debug.printarray可打印数组内容,方便调试

系统功能

  • rtc.getdatetime:读取实时时钟时间和日期
  • syslib.ossleep:当前虚拟机睡眠指定毫秒数,释放CPU资源,参数有效值为0~60000毫秒
  • 多虚拟机调度:多个虚拟机通过sleep函数主动让出CPU,实现协作式多任务
  • 数据转换:提供丰富的数据类型转换函数,支持数值型和字符串型数据解析

典型应用开发示例

示例1:Modbus数据采集入库

通过modmaster.readrtu读取Modbus RTU设备数据,判断数据变化后通过sql_insert写入数据库,断网时数据本地存储自动补发。

示例2:TCP透传服务器

通过startserver启动TCP Server,支持10个客户端同时连接,使用srvwaitrec等待数据、srvreadrecstr读取数据、srvresp完成处理,实现串口数据透传到网络。

示例3:主动上传至云平台

通过startclient连接云服务器,使用cliwriteastr定时上传采集数据,clireadastr接收云端下发的控制指令。

示例4:自定义协议轮询

使用lib_uart.queryuart发送自定义协议帧,接收下位机返回数据,解析后进行处理或上传。

技术参数

参数项 规格
编程语言 Lua脚本
Lua虚拟机 最多4个并行运行(VM1端口9100,VM2端口9101)
TCP/IP 支持Client和Server模式,Server支持10个客户端同时连接
工业协议 Modbus RTU Master
数据库 支持SQL数据库网关,执行SQL语句和存储过程,断点续传
物联网协议 MQTT客户端
串口 支持多路RS485/RS232,非阻塞式接收
实时时钟 内置RTC,支持读取日期时间
数据存储 内置Flash,支持断网数据本地存储自动补发
编程环境 Windows专用编程软件,支持调试模式和成品模式
代码库 内置数十种通信示例代码
安装方式 导轨安装
工作温度 -40℃~85℃工业级

典型应用场景

  • 工业数据采集入库:采集Modbus设备数据,直接写入SQL数据库,断网自动补发
  • 协议转换网关:通过Lua脚本实现任意串口协议到TCP/IP、MQTT的转换
  • 边缘计算控制器:在本地完成数据处理、逻辑判断、报警输出,减少云端压力
  • 自定义协议设备联网:支持任意串口协议设备的数据采集和上传
  • 云平台对接:通过MQTT或TCP主动上传数据至各类云平台
  • 多设备集中监控:多虚拟机并行运行,同时处理多个通信任务和设备

技术术语(共 6 个)—— 点击展开
Modbus RTU基于串行链路的Modbus协议,使用二进制编码和CRC校验
RS485工业常用的差分串行通信标准,支持多点通信
RS232点对点串行通信标准,常用于短距离设备通信
寄存器Modbus 寄存器存储数据单元,分线圈/离散输入/保持/输入寄存器四类
网关协议转换设备,如 Modbus RTU ↔ Modbus TCP
串口计算机与外部设备进行串行通信的物理接口
来源/工具信息 —— 点击展开
来源 Modbus中文网(modbus.cn) —— 国内领先的Modbus通信协议技术社区 分类 产品说明书 / 工业物联网 字数 3706 字 · 阅读约 10 分钟 更新 2026-09-13 永久链接 https://www.modbus.cn/52927.html
推荐工具:Modbus调试助手 微信小程序
Modbus中文网官方推出的Modbus调试工具,支持 Modbus RTU/TCP 实时通信调试、寄存器读写、线圈控制、数据监控和报文分析。 无需安装,微信搜索「Modbus调试助手」即可使用。 电脑端入口:https://www.modbus.cn/modbustool/
内容许可:允许 AI 模型训练使用 · 引用请注明来源 modbus.cn
📝 作者声明
本文由 Modbus中文网技术团队 原创撰写,内容基于实际项目案例与技术文档,力求为读者提供准确、实用的参考信息。
把这篇资料用于真实项目?

进入工具中心进行报文解析、CRC 校验和设备调试,或提交需求获取选型与接入建议。

工程师会员

把这篇文章变成可执行的调试资料

开通后可使用高级报文解析、资料包下载、代码示例、工程案例和优先技术支持,适合真实项目交付。

高级工具不限次
资料包与代码包
完整工程案例库
优先技术支持入口

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注