SYS2

Systemregister für Koppelbereich einstellen

Der Koppelbereich wird festgelegt durch die Systemregister 40-47 (bei der FP0R, FP-S 32k, FP-X außerdem 50-57).

Mit SYS2 können die Systemregisterwerte im Koppelbereich im RUN-Modus geändert werden. s_Start beinhaltet die neuen Werte für die Systemregister, die mit d_Start und d_End begrenzt werden.

Anmerkungen

  • Wenn dieser Befehl ausgeführt wird, wird der Inhalt des System-ROMs in der CPU nicht überschrieben. Das heißt, der Inhalt der Systemregister richtet sich beim Aus- und Wiedereinschalten nach den Software-Einstellungen.

  • Sie sollten einen Wert zwischen 40 und 47 für d_Start oder d_End festlegen. Darüber hinaus sollte d_Start£d_End.

  • Da Systemregister-Einstellungen geändert werden, kann es sein, dass ein Fehler ausgegeben wird, wenn die Systemregister mit FPWIN Pro verglichen werden.

Parameter

Eingang

s_Start (WORD, INT, UINT)

Beinhaltet die neuen Werte für die Systemregister, die von den anderen beiden Variablen begrenzt werden.

d_Start (WORD, INT, UINT)

Erstes Systemregister (von 40-47), dem ein neuer Wert zugewiesen wird.

muss eine Konstante sein
d_End (WORD, INT, UINT)

Letztes Systemregister (von 40-47), dem ein neuer Wert zugewiesen wird.

muss eine Konstante sein

Fehleralarmmerker

sys_bIsOperationErrorHold (wird auf TRUE gesetzt und bleibt TRUE)
  • wenn d_Start > d_End

  • wenn die festgelegten Werte außerhalb der Bereiche liegen, die für die einzelnen Systemregister definiert sind

sys_bIsOperationErrorNonHold (wird für einen Zyklus auf TRUE gesetzt)
  • wenn d_Start > d_End

  • wenn die festgelegten Werte außerhalb der Bereiche liegen, die für die einzelnen Systemregister definiert sind

Beispiel

SDT

Mit einem strukturierten Datentyp (SDT) können zusammengesetzte Datentypen definiert werden. Ein SDT wird zunächst im SDT-Pool angelegt und dann wie die Standardtypen (BOOL, INT usw.) in der globalen Variablenliste oder im POE-Kopf verarbeitet.

POE-Kopf

Im POE-Kopf werden alle Ein- und Ausgangsvariablen deklariert, die für die Programmierung dieser Funktion verwendet werden. Für alle Programmiersprachen wird der gleiche POE-Kopf verwendet.

	VAR
		LinkAreas: @'LINK_AREAS':=RelayArea := 64, RegisterArea := 128;
		SetLinkAreas: BOOL:=FALSE;
	END_VAR

POE-Rumpf

Die Werte für den Koppelbereich in den Systemregistern 40 bis 45 werden entsprechend LinkAreas geändert, wenn SetLinkAreas auf TRUE gesetzt wird.

KOP-Rumpf

BODY
    WORKSPACE
        NETWORK_LIST_TYPE := NWTYPELD ;
        ACTIVE_NETWORK := 0 ;
    END_WORKSPACE
    NET_WORK
        NETWORK_TYPE := NWTYPELD ;
        NETWORK_LABEL :=  ;
        NETWORK_TITLE :=  ;
        NETWORK_HEIGHT := 6 ;
        NETWORK_BODY
B(B_F,SYS2!,Instance,10,0,16,6,,?DEN?Ds_Start?Hd_Start?Hd_End?AENO);
B(B_VARIN,,SetLinkAreas,8,1,10,3,);
B(B_VARIN,,LinkAreas.RelayArea,8,2,10,4,);
B(B_VARIN,,40,8,3,10,5,);
B(B_VARIN,,45,8,4,10,6,);
L(1,0,1,6);
        END_NETWORK_BODY
    END_NET_WORK
END_BODY

Letzte Änderung: 2024-03-07Feedback zu dieser SeitePanasonic Hotline