Methoden und Properties
Mit der Version 1.12 besteht die Möglichkeit, auf PLC-Properties im HMI zuzugreifen und PLC-Methoden im HMI aufzurufen.
PLC Properties
Die Properties müssen in der PLC mit einem Attribut-Pragma per ADS sichtbar geschaltet werden.
{attribute 'monitoring' := 'call'}
PROPERTY Prop : BOOL
Anschließend können Sie im TwinCAT HMI auf das Property zugreifen.
![Methoden und Properties 1:](Images/jpg/10740063371__Web.jpg)
![]() | PLC-Properties können im HMI nur explizit verwendet werden, indem das Property einzeln auf ein Control-Attribut verknüpft wird. Wird der gesamte Funktionsbaustein mit einem Control-Attribut verknüpft, wird das Property nicht aufgerufen. Dies ist der Fall, wenn ein Funktionsbaustein als Source-Data des DataGrids oder als User Control-Parameter verwendet wird. |
PLC Methoden
Die Methoden müssen in der PLC mit einem Attribut-Pragma per ADS sichtbar geschaltet werden.
{attribute 'TcRpcEnable'}
METHOD MyMethod : BOOL
VAR_INPUT
bInput : BOOL;
END_VAR
Anschließend sind Sie die Methoden im TwinCAT HMI sichtbar. Innerhalb des TwinCAT HMI Configuration Windows können Sie diese explizit aufrufen.
![Methoden und Properties 3:](Images/jpg/10740065931__Web.jpg)
Zur Laufzeit im Client können Sie die Methoden mit Hilfe einer JavaScript-/TypeScript-Funktion und der Framework API aufrufen. Nachfolgend finden Sie ein Beispiel für den Aufruf via Framework API.
// call of method without parameter
TcHmi.Symbol.readEx2("%s%PLC1.MAIN.fbTest.MethodWithoutParam%/s%", function (data) {
console.log(data);
});
// call of method with parameter
TcHmi.Symbol.writeEx("%s%PLC1.MAIN.fbTest.MyMethod%/s%", { bInput: true }, function (data) {
console.log(data);
});
Wenn die Methode einen Rückgabewert hat, können Sie innerhalb der Callback-Funktion in dem Result-Objekt auf den Rückgabewert zugreifen.
![Methoden und Properties 4:](Images/jpg/10740068491__Web.jpg)
In einer zukünftigen Version des TwinCAT HMIs wird es möglich sein, die Methoden direkt über den Actions and Conditions Editor ohne die Verwendung von JavaScript/TypeScript aufzurufen.
![]() | Methoden müssen immer explizit aufgerufen werden und können nicht als Control-Attribut verwendet werden. Beachten Sie, dass das Aufrufen einer Methode vom HMI die Ausführung von SPS-Code zur Folge hat. |
![]() | Verfügbar ab der Version 1.12. |