AiMaster300 IoT programmierbares Edge-Computing-Gateway: Lua-Skript benutzerdefinierte Protokollkonvertierung

kostenlosKostenloses technisches Material

Dieser Inhalt ist direkt lesbar und eignet sich für das Grundlagenlernen und die Suche.

AiMaster300 Produktübersicht

AiMaster300是Lua-Skript programmierbarer IoT-Controller von Shenzhen Yitian Guanglian Technology Co., Ltd.,集成双Lua虚拟机、丰富的通信接口和强大的数据处理能力,是工业物联网领域实现自定义协议转换、Datenerfassung、边缘计算和云端对接的高性能可编程平台。该控制器支持Lua脚本编程,用户可根据现场需求灵活开发各种应用逻辑,无需修改硬件即可实现复杂的工业通信和数据处理功能。

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

Wichtige Produktmerkmale

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

Programmierumgebungsbeschreibung

编程界面

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

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

工作模式

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

虚拟机配置

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

Integrierte Code-Bibliothek

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

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

Kernfunktionen im Detail

TCP/IP ServerFunktion

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

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

TCP/IP ClientFunktion

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

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

数据库网关功能

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

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

Modbus MasterFunktion

AiMaster300内置Modbus MasterFunktion,可主动轮询Modbus RTUAusrüstung:

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

串口通信功能

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

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

系统功能

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

Typische Anwendungsentwicklungsbeispiele

Beispiel1:Modbus数据采集入库

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

Beispiel2:TCP透传服务器

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

Beispiel3:主动上传至云平台

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

Beispiel4:自定义协议轮询

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

Technische Daten

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

Typische Anwendungsbereiche

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

Gehen Sie zum Tool Center, um Nachrichten zu analysieren, CRC-Prüfungen und Geräte-Debugging zu erledigen, oder senden Sie Anforderungen für Auswahl - und Zugangsvorschläge.

Ingenieur Mitglied

Verwandeln Sie diesen Artikel in ein umsetzbares Debuggermaterial

Erweiterte Nachrichtenanalyse, Paket-Downloads, Codebeispiele, Engineering-Szenarien und Priority-Technischer Support sind für die Real-Projekt - Bereitstellung möglich.

Unbegrenzte Werkzeuge
Datenpaket und Codepaket
Vollständige Engineering Case-Basis
Vorrangiger Zugang zum technischen Support

Antwort veröffentlichen

Ihre E-Mail - Adresse wird nicht öffentlich gemacht. Erforderliche Elemente wurden verwendet * markiert.