Skip to content

Lua 库总表 ​

设备上能被脚本调用的全部 Lua 库:共 50 个库、413 个库级函数 + 161 个对象方法。

有没有、叫什么、在哪个机型能用,以本页为准; 参数怎么填、返回什么、怎么用,点进各库页看。同一个库在不同机型上的可调用集合并不相同,「可用机型」只写"哪里有"。

  • 签名怎么读:括号内按顺序列全参数,方括号里的可以省略(不传就走默认值),... 表示还可继续传同类参数;参数位上写的是类型名(integer 整数、string 字符串、table 表…)表示该处要传这个类型的值。各库页尾部的「函数速查表」直接给出每个函数的完整签名,如 com.setup(com_num, [baud, parity, databits, stopbits]) = 最少传 1 个、最多 5 个。
  • 两种调用形态:plc.get(...) 这类库级函数直接点调用;先拿回对象的要冒号调用方法(h:read_u16(...)),h 就是拿回的对象。

逐函数的调用形态与机型可用性另见 D. API 全集与机型可用性。

库作用函数方法常量库页可用机型
base内建基础函数库(print、pcall、type 等)2400去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
string字符串处理库(格式化、查找、替换、匹配)1900去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
table表库(插入、删除、排序、拼接)800去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
math数学库3504去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
io文件与流 I/O 库(4G 真机与模拟器/上位机可用;ESP32 真机里 io 为 nil)1100去软 PLC 模拟器 / 上位机 · 4G 机型
os操作系统库(时间、日期、文件名分隔等)1100去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
system系统功能701去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
timer定时器210去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
task后台任务(与 event 配套,见 3.4 / 3.5)300去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
event事件订阅与发布(与 task 配套,见 3.5)600去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
coroutine协程库(本项目协作式多任务的基石)800去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
plcPLC 数据交互61010去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
httpHTTP 客户端650去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
mqttMQTT 客户端1096去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
tcp_clientTCP 客户端873去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
tcp_serverTCP 服务器543去ESP32 机型 · 软 PLC 模拟器 / 上位机
net网络工具24140去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
udpUDP 通信431去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
websocketserverWebSocket 服务器100去ESP32 机型 · 软 PLC 模拟器 / 上位机
com串口通信11103去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
com_modbus串口 Modbus 主站8722去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
com_fx串口三菱 FX 协议4316去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
com_dlt645DLT645 电表4335去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
modbusModbus TCP 主站(自动轮询)121119去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
pipe统一管道通信1180去ESP32 机型 · 软 PLC 模拟器 / 上位机
mc_server三菱 MC 协议从站服务器100去ESP32 机型 · 软 PLC 模拟器 / 上位机
modbus_tcp_serverModbus TCP 从站服务器100去ESP32 机型 · 软 PLC 模拟器 / 上位机
bacnetBACnet 楼宇自控(MS/TP 与 BACnet/IP)11514去ESP32 机型 · 软 PLC 模拟器 / 上位机(仅 ESP32-S3)
opcuaOPC UA11421去ESP32 机型 · 软 PLC 模拟器 / 上位机(仅 ESP32-S3)
water水务遥测(SZY206-2016 / SL/T 427)11123去ESP32 机型 · 软 PLC 模拟器 / 上位机(仅 ESP32-S3)
pidPID 闭环控制760去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
encoder编码转换600去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
crypto加密模块904去ESP32 机型
data共享数据对象440去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
jsonJSON 编解码202去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
fdb数据存储700去ESP32 机型 · 软 PLC 模拟器 / 上位机
iniINI 配置文件1100去ESP32 机型 · 软 PLC 模拟器 / 上位机
bit3232 位位运算库(Lua 自带扩展)1200去ESP32 机型
com2模拟器第二串口通道库(设备固件无此库)803去软 PLC 模拟器 / 上位机
com2_dlt645模拟器第二串口上的 DLT645 电表1011去软 PLC 模拟器 / 上位机
com2_fx模拟器第二串口上的三菱 FX 协议106去软 PLC 模拟器 / 上位机
com2_modbus模拟器第二串口上的 Modbus 主站2014去软 PLC 模拟器 / 上位机
debug调试库(Lua 自带,正式脚本慎用)1700去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
dog看门狗库(仅模拟器/上位机)190去ESP32 机型 · 软 PLC 模拟器 / 上位机
miniz压缩与解压库(仅软 PLC 模拟器 / 上位机,设备固件里没注册)200去软 PLC 模拟器 / 上位机
package包与模块加载库(require 的底层)803去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
pahomqttPaho 风格 MQTT 兼容库(仅模拟器/上位机)156去软 PLC 模拟器 / 上位机
thread线程库(仅模拟器/上位机)620去软 PLC 模拟器 / 上位机
utf8UTF-8 字符处理库(Lua 自带)601去ESP32 机型 · 软 PLC 模拟器 / 上位机 · 4G 机型
xmlXML 解析库(仅软 PLC 模拟器 / 上位机,设备固件里没注册)400去软 PLC 模拟器 / 上位机

「4G 机型」指哪几台:LP8910 / LP8913 / LP8916 / LP8922(RDA8910 平台,见 3.4 LP8910)。这一列在 2026-10-10 之前只写了 ESP32 机型与模拟器, 所以 4G 的客户在这张「以本页为准」的表里查不到自己有什么库 —— 现已逐库按 4G 固件的库注册表补齐; 判"某台机器上有没有这个库",看的都是那台机器固件里的注册表,不是磁盘上有没有对应的源文件。

4G 机型上的 net 与 ESP32 差三处(写脚本前先看这条,否则同一份程序烧进 4G 会踩空):

差异表现怎么办
少 net.ping_stats上面 24 个函数在 4G 上是 23 个(ping_stats 只在 DEBUG 构建里注册)那条本来也不是给客户用的,忽略
net.localip 恒返回 nil4G 的出口地址是运营商现场分配的,机器上没有"网口"可查要拿本机地址:net.socket 连一个外网地址后用 sock:sockname()
setoption 没有组播三个分支multicast_join / multicast_ttl / multicast_loop 在 4G 上返回错误码组播/广播是局域网的事,4G 上用不了;跨网段发现设备请改用「平台侧下发」或 tcp_client

另有一条不是差异而是前提:4G 上的套接字总额度只有 8 个,且与云服务、MQTT、HTTP 用的是同一份池子, 所以 net.socket 一次开太多会把云连接一起挤掉(返回错误码,不报错崩溃)。 逐函数的说明见 net — 网络工具。

只有模拟器与上位机有的两个库(xml、miniz):下表里它们的「可用机型」只写 「软 PLC 模拟器 / 上位机」—— 设备固件里没注册这两个名字,同一句脚本烧进真机会取到 nil。 在模拟器里先验通解析/压缩逻辑没问题,要上设备就得换写法。 调用形态、参数边界与实测过的失败形状见 附录 F 内建扩展与模拟器专有库。

LPPLC 工业物联网云平台 · 软硬件与云平台全栈自研