Wie können wir helfen?

Print

Lesen und Extrahieren von Daten aus einem ASCII-Frame, der über die RS232/485-Schnittstelle des ACE PLC gesendet wird

 

Hier wird gezeigt, wie man Daten aus einem ASCII-Frame extrahiert. In diesem Beispiel werden wir sehen, wie man Daten aus einem Frame mit fester Länge extrahiert. Beispiel: Beginnen wir mit einem Frame wie diesem: *ST,0000,01,9876,5432,1722,0268,01,1377# Wir wollen den fett gedruckten Wert extrahieren:

  • 9876 der Flüssigkeitsstand
  • 5432 der Flüssigkeitsstand in Echtzeit
  • 01 der Alarmstatus

Wir werden eine Unterroutine einrichten, um diese Ablesung und Extraktion zu verwalten.

Öffnen Sie ein neues Unterprogramm mit den folgenden Eingangs-/Ausgangsdaten

  • flüssigkeitsstand
  • flüssigkeitsstand in Echtzeit
  • alarmzustand
  • Öffnen des COM-Ports zum Abhören
  • Prüfen, ob eine Meldung vorliegt oder nicht
    • Wenn ja, gehen wir zu Schritt 2
Aufruf des Unterprogramms zur Umwandlung des ASCII-Strings in eine Zahl

  • Wir übertragen den gesamten ASCII-Frame/String
  • Wir geben die Position des Wertes in der Zeichenkette an
  • dann wird der Wert im Tag „Zahl“ abgerufen

Das müssen wir für jeden Wert tun.

Vergessen Sie nicht, Ihren ACE RS232/485-Port als „custom“ und nicht als „Modbus“ zu deklarieren. Das Unterprogramm für die ASCII-zu-Wert-Konvertierung finden Sie im Projekt. Sie können das Projekt und die Unterprogramme hier herunterladen