轻量应用
轻量应用是一款专为灵活业务开发设计的基于 Lua 的扩展脚本系统,致力于简化开发流程,提高工作效率。系统以 Lua 轻量级编程语言为核心,提供了一个简洁、高效的脚本编写和执行环境。
轻量应用的优势在于其轻量级、跨平台的特点,使得工程师可以在不同的系统环境下高效地完成开发任务。此外我系统还提供了丰富的 API 接口,助力您轻松实现与第三方系统的集成。
Lua 规范
RHILEX 使用了 Lua 虚拟机作为规则执行引擎,可以很方便的扩展 RHILEX 的功能。目前支持的函数以及其示例均包含在该站点,方便用户查阅使用。RHILEX Lua 使用标准标准 Lua 5.3
,没有对 Lua 标准语法做任何修改,所以为了尽快掌握 RHILEX Lua 扩展,建议大家先提前学习标准 Lua 的语法,下面给出几个常用的学习网站。
- Lua 官网:https://www.LUA.org/pil/1.html (opens in a new tab)
- 菜鸟 Lua:https://www.runoob.com/LUA/LUA-tutorial.html (opens in a new tab)
简单示例
HellloWorld
Lua
function Main(arg)
Debug("helloWorld")
return 0
end
数据转发 MQTT
Lua
function Main(arg)
for i = 1, 10, 1 do
local data, err1 = applib:ReadDevice("uuid", 0, "192.168.1.1:502")
if err1 ~= nil then
applib:log(err1)
return 0
end
local err2 = applib:DataToMqtt('UUID', applib:T2J({
temp = i,
humi = 13.45
}))
if err2 ~= nil then
applib:log(err1)
return 0
end
time:Sleep(1000)
end
return 0
end
GPIO 控制
Lua
function Main(arg)
while true do
rhilexg1:DO1Set(0)
time:Sleep(1000)
rhilexg1:DO1Set(1)
time:Sleep(1000)
rhilexg1:DO2Set(0)
time:Sleep(1000)
rhilexg1:DO2Set(1)
end
return 0
end
更多示例
更多示例请参考详细开发文档。