Herunterladen Inhalt Inhalt Diese Seite drucken

Siemens SINUMERIK 840Di 3 Funktionsbeschreibung Seite 1259

Inhaltsverzeichnis

Werbung

10.00
7.2.1
Verwendung von POINTER und ANY im FC, wenn POINTER
bzw. ANY als Parameter vorliegt
Funktions–
Der FC 99 hat Eingangsparameter, die als POINTER bzw. ANY definiert sind. In
beschreibung
dem Beispiel wird ein Rumpfprogramm gezeigt um auf die Teilkomponenten des
POINTER bzw. ANY zuzugreifen. Hierbei wird der über den POINTER, ANY
parametrierte DB aufgeschlagen und der Adressoffset als bereichsübergreifen-
der Zeiger im Adressregister AR1 hinterlegt. Somit kann auf Datenelemente der
Variable (in der Regel Strukturen, Arrays) zugegriffen werden, die über den
POINTER, ANY adressiert sind. Dieser Zugriff ist im Beispiel am Ende der je-
weiligen Programmsequenz dargestellt. Bei dem Datentyp ANY besteht zusätz-
lich die Möglichkeit, anhand des Datentyps und der Anzahl von Elementen eine
Überprüfung bzw. Verzweigung beim Zugriff der Variablen durchzuführen.
FUNCTION FC 99: VOID
VAR_INPUT
END_VAR
VAR_TEMP
END_VAR
BEGIN
NETWORK
TITLE =
//POINTER
//ANY
 Siemens AG 2003 All Rights Reserved
SINUMERIK 840D/840Di/810D Funktionsb. Grundmaschine (FB1) – Ausgabe 11.2003
Row : BYTE ;
Convert : BOOL ; //Zahlenwandlung aktivieren
Addr : POINTER ; //Zeigt auf Variable
Addr1 : ANY;
dbchr : WORD ;
Anzahl : WORD ;
typ : BYTE;
L
P##Addr;
LAR1 ;
L
W [AR1,P#0.0]; //DB–Nummer holen
T
#dbchr;
L
D [AR1,P#2.0]; //Offsetteil des Pointers
LAR1 ;
AUF DB [#dbchr]; //Db der Variablen aufschlagen
L
B [AR1,P#40.0];
L
P##Addr1;
LAR1 ;
L
B [AR1,P#1.0];
T
#typ;
L
W [AR1,P#2.0];
T
#Anzahl;
L
W [AR1,P#4.0];
T
#dbchr;
L
D [AR1,P#6.0];
LAR1 ;
AUF DB [#dbchr];
L
B [AR1,P#0.0];
PLC–Grundprogramm (P3)
7.2 ANY und POINTER
//Pointer holen
//hole Byte–Wert über Pointer mit dem
//Adressoffset 40
//ANY holen
//Typ hole
//Anzahl holen
//DB–Nummer holen
//Offsetteil des Pointers
//Db der Variablen aufschlagen
//hole Byte–Wert über ANY
1/P3/7-259

Quicklinks ausblenden:

Werbung

Inhaltsverzeichnis
loading

Diese Anleitung auch für:

Sinumerik 840dieSinumerik 810dSinumerik 840d 6Sinumerik 810deSinumerik 840deSinumerik 840d powerline ... Alle anzeigen

Inhaltsverzeichnis