VisualHMI-Alarmfilter: on _ filter _ warning Multi-Gerät - Alarm-Umleitung

kostenlosKostenloses technisches Material

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

Warnfilter Rückrufon_filter_warning(warning_id)(anpassbarer Firmware-exklusiv): Entscheidet, obeine Warnung angezeigt wird oder nicht angezeigt wird。0 wird nicht angezeigt und 1 wird angezeigt. Typisches Szenario: Ein HMI verwaltet zwei Geräte, Gerät 1 Alarm (ID 1 ~ 100) in Bild 0 zu sehen, Gerät 2 Alarm (ID 101 ~ 200) in Bild 2 zu sehen - ohne zu filtern, müssen Sie zwei Sätze von Alarm erstellen.

1. Aktivieren Sie Filter

auf _ init Aktivieren Sie:

function on_init()
  set_uint16(VT_LW, 0x0115, 1)   -- 启用告警过滤
end

function on_filter_warning(warning_id)
  local cur = get_uint16(VT_LW, 0x0114)   -- 当前画面/设备号
  if cur == 0 then
    return (warning_id >= 1 and warning_id = 101 and warning_id <= 200) and 1 or 0
  end
  return 1
end

2. Multi-Slaven - Szenario in Kombination mit Warning_set: Warndaten werden von Modbus gelesen, mit Warning_set ausgelöst, nur die aktuellen Gerätbezogenen ausgelöst werden:

Multi-slave - Szenario: Warndaten werden von Modbus gelesen, mit warning _ set ausgelöst in Massen, filtern Rückrufe nur die aktuellen Gerät-bezogenen freigeben:

-- 读回告警后逐个触发
function on_cmd_resp(slave, vtype, addr, count, ret, wr)
  ...
  for j = 0, 15 do
    local bitv = (val >> j) & 0x01
    warning_set(idx + slave * 100, bitv, 1)   -- 设备号编码进告警ID
  end
end

-- 过滤:只显示当前选中设备的告警
function on_filter_warning(warning_id)
  local dev = get_uint16(VT_LW, 0x0114)      -- 当前设备号
  local wdev = math.floor(warning_id / 100)  -- 告警所属设备
  return (wdev == dev) and 1 or 0
end

Aktualisieren Sie die Anzeige: Schreiben Sie 0x0022 nach dem Umschalten des Geräts auf 0x0114 eine Aktualisierung der Warnliste auslösen (siehe das Firmware-Handbuch für verschiedene Versionen des Aktualisierungsmechanismus).

Zwei Gruben:1on_filter_warning Rückgabe 0 ist versteckt, 1 ist angezeigt, nicht umgekehrt;2 Filterung und Warnsteuerung ist eine Verknüpfung- Filterung wirkt sich nur auf die Anzeige, Warndaten selbst sind noch vorhanden, um die Liste nach dem Wechsel der Bedingungen aktiv aktualisieren, um Änderungen zu sehen.

Aus dem VisualHMI-Entwicklungsdokument von Guangzhou Dacai Technology (hmi-doc.gz-dc.com) LUA-Tutorial "Alarmfilter" zusammengestellt, das Urheberrecht liegt bei Dacai Technology.

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.