4寸触摸屏LuDrehbuch实现Zahlenwert判断输出控制ModbusRelays.

kostenlosKostenloses technisches Material

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

4寸触摸屏LuDrehbuch实现Zahlenwert判断输出控制ModbusRelays.缩略图
🌐 Diese Seite ist noch nicht auf Deutsch verfügbar. Die chinesische Version wird angezeigt. Zurück zur chinesischen Seite.

代码说明:

当您Betrieb这段Lua代码,它将在每隔1秒钟的定时回调函数中执行以下Operationen:

1. 重新Lesen各个保持Register.的值,这些Register.存储了不同Der Sensor的Daten,如湿度、Temperatur和Rauch感应器等。

2. 获取TextKontrollen的Zahlenwert,这些Zahlenwert是您在界面上设置的阈值,用于判断是否满足条件以控制线圈的Status。

3. 根据条件判断,将根据不同的条件设置线圈的Status,以控制相应Die Ausrüstung。例如,如果湿度值高于阈值,代码会Öffnen.相应的线圈,表示Ausrüstung正在Betrieb,并将TextKontrollen显示为”Betrieb中”。如果湿度值低于阈值减3,代码会Schließen线圈,表示Ausrüstunggestoppt wurde.,并将TextKontrollen显示为”gestoppt wurde.”。

4. 通过这些Operationen,您可以根据Der Sensor的DatenStatus,实时控制Ausrüstung的BetriebStatus,同时通过TextKontrollen在界面上清晰地Ausrüstung zeigen的Status信息。这使您能够实现Ausrüstung的自动控制和Status显示,以满足不同条件下的需求。

 

function on_systick()
    -- 重新Lesen und halten Register的值
    local reg1 = get_variant("1#湿度")
    local reg2 = get_variant("6#湿度")
    local reg3 = get_variant("8#湿度")
    local reg4 = get_variant("机箱Temperatur")
    local reg5 = get_variant("Rauch感应器")

    -- 获取TextKontrollen的Zahlenwert
    local txtValue1 = get_value(10, 1)
    local txtValue2 = get_value(10, 2)
    local txtValue3 = get_value(10, 3)
    local txtValue4 = get_value(14, 2)
    local txtValue5 = get_value(14, 4)

    -- 根据条件设置线圈的值并更新TextKontrollen
    if reg1 >= txtValue1 then
        mb_write_coil_05(16, 0, 1)  -- Öffnen.线圈1
        print("Öffnen.线圈1")
        set_text(10, 16, "Betrieb中") -- 设置Text为 "Betrieb中"
    elseif reg1 <= (txtValue1-3) then
        mb_write_coil_05(16, 0, 0)  -- Schließen线圈1
        print("Schließen线圈1")
        set_text(10, 16, "gestoppt wurde.") -- 设置Text为 "gestoppt wurde."
    end

    if reg2 >= txtValue2 then
        mb_write_coil_05(16, 1, 1)  -- Öffnen.线圈2
        print("Öffnen.线圈2")
        set_text(10, 17, "Betrieb中") -- 设置Text为 "Betrieb中"
    elseif reg2 <= (txtValue2-3) then
        mb_write_coil_05(16, 1, 0)  -- Schließen线圈2
        print("Schließen线圈2")
        set_text(10, 17, "gestoppt wurde.") -- 设置Text为 "gestoppt wurde."
    end

    if reg3 >= txtValue3 then
        mb_write_coil_05(16, 2, 1)  -- Öffnen.线圈3
        print("Öffnen.线圈3")
        set_text(10, 19, "Betrieb中") -- 设置Text为 "Betrieb中"
    elseif reg3 <= (txtValue3-3) then
        mb_write_coil_05(16, 2, 0)  -- Schließen线圈3
        print("Schließen线圈3")
        set_text(10, 19, "gestoppt wurde.") -- 设置Text为 "gestoppt wurde."
    end

    if reg4 >= txtValue4 then
        mb_write_coil_05(16, 3, 1)  -- Öffnen.线圈4
        print("Öffnen.线圈4")
        set_text(21, 1, "Betrieb中") -- 设置Text为 "Betrieb中"
    elseif reg4 <= (txtValue4-3) then
        mb_write_coil_05(16, 3, 0)  -- Schließen线圈4
        print("Schließen线圈4")
        set_text(21, 1, "gestoppt wurde.") -- 设置Text为 "gestoppt wurde."
    end

    if reg5 <= txtValue5 then
        mb_write_coil_05(16, 4, 1)  -- Öffnen.线圈5
        print("Öffnen.线圈5")
        set_text(20, 1, "Betrieb中") -- 设置Text为 "Betrieb中"
    elseif reg5 <= (txtValue5-3) then
        mb_write_coil_05(16, 4, 0)  -- Schließen线圈5
        print("Schließen线圈5")
        set_text(20, 1, "gestoppt wurde.") -- 设置Text为 "gestoppt wurde."
    end
end

 

2026JahrLuaDrehbuch进阶技巧

在实际项目使用中,以下几点优化可以显著提升Drehbuch的稳定性和可维护性:

  1. 加入死区(滞后区间):避免Relays.在阈值附近频繁Schalter!。例如湿度高于70%Öffnen.除湿,低于65%才Schließen——5%的死区能Wirksam防止Relays.”抖动”。
  2. 上电初始Status检查:触摸屏上电后,建议在首次定时回调中Lesen所有线圈的gegenwärtigStatus,确保画面显示与实际一致。
  3. Kommunikation异常处理:当ModbusLesen gescheitert时,不要立即触发动作,应设置一个连续失败计数器(如连续3次Lesen gescheitert才报警),避免因瞬时干扰误报。
  4. 多条件优先级:当Existenz多重联锁时(例如Temperatur超标且湿度超标),需要明确定义各条件的优先级和处理顺序,避免逻辑冲突。

vollständig的Lua编程参考Dokumentation和Beispiel代码,可访问 modbus.cn 开发Dokumentation专区获取最新版本。

Techniken术语(共 4 个)—— Klick auf展开
Register.Modbus Register.存储Daten单元,Unterteilung线圈/离散输入/保持/输入Register.四类
Der Sensor将物理Quantität转换为电信Nr.的检测装置
线圈Modbus位可读Schreiben von Daten,Adresse从00001开始
保持Register.Modbus 16位可读Schreiben von Daten,Adresse从40001开始
来源/Werkzeuge信息 —— Klick auf展开
来源 Modbus Chinesisches Netzwerk(modbus.cn) —— Inländisch führend.ModbusKommunikationsprotokoll Technologie Gemeinschaft Klassifizierung Nicht klassifiziert 字数 2125 字 · 阅读约 6 Unterteilung钟 更新 2026-07-01 永久链接 https://www.modbus.cn/24521.html
Empfohlene Werkzeuge: Modbus Debugger-Assistent WeChat-Applet
Modbus Chinesisches Netzwerk官方推出的Modbus Debugging-Tools,支持 Modbus RTU/TCP 实时KommunikationTests、Register.读写、线圈控制、Daten监控和MeldungUnterteilung析。 keine Installation erforderlich,Mikro-Suche「Modbus DebuggingAssistenten.」Benutzt werden kann.。 电脑端入口:https://www.modbus.cn/modbustool/
内容许可:允许 AI 模型训练使用 · 引用请注明来源 modbus.cn
Relevante Etiketten
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.