Parametertypen in Step7

siehe auch Timer S7

Im Step7 System werden aus elementaren und zusammengesetzten Datentypen noch besondere Datentypen verwendet die man unter dem Oberbegriff Parametertypen zusammenfasst.

Parametertypen in Step7 sind z.B. Bausteinparameter mit den Datentypen BLOCK_FC, BLOCK_FB, BLOCK_DB und BLOCK_SDB, dann Zeitgliederparameter und Zählerparameter mit den Datentypen TIMER und COUNTER und sogenannte Zeiger mit den Datentypen ANY und POINTER.

Mit Parametertypen werden Parameter definiert die an Funktionsbausteine (FB) und Funktionen (FC) übergeben werden sollen.

BLOCK

BLOCK_FC, BLOCK_FB, BLOCK_DB und BLOCK_SDB: Der Parametertyp BLOCK legt in Verbindung mit den Deklarationen den Baustein fest der als Eingang oder Ausgang verwendet werden soll. Durch die Deklaration von BLOCK wird die Bausteinart (FB, FC, DB, SDB) bestimmt die benutzt wird.

TIMER / COUNTER

Mit den Parametertypen TIMER oder COUNTER wird eine bestimmte Zeit oder ein bestimmter Zähler festgelegt, der bei der Bearbeitung verwendet werden soll. Versorgt man einen Formalparameter vom Parametertyp TIMER bzw. COUNTER, muss der zugehörige Aktualparameter als Zeit oder Zähler definiert sein. Dies erreicht man durch ein vorangestelltes "T" für TIMER oder "Z" für COUNTER denen eine positive Ganzzahl folgt.

Grundlegende Informationen zu Timer/Zeiten in Step7.

ANY

Den Datentyp ANY verwendet man wenn der Datentyp eines Aktualparameters unbekannt ist oder wenn ein beliebiger Datentyp eingesetzt werden kann. In Step7 ist eine Variable vom Datentyp ANY 80 Bits lang. Deshalb kann ANY nicht in AWL-Anweisungen verwendet werden weil er die Akkubreite von 32 Bits übersteigt. Ordnet man ANY Aktualparameter zu, wird in Step7 die Startadresse, der Datentyp und die Länge des Aktualparameters in diesen 80 Bits codiert. Diese 80 Datenbits werden durch den aufgerufenen Baustein analysiert. Dadurch erhält man die Informationen die für die weitere Bearbeitung verwendet werden sollen.

Deklariert man einen Formalparameter für den Datentyp ANY, kann diesem Formalparameter ein Aktualparameter mit beliebigem Datentyp zugeordnet werden. Aktualparametern können in Step7® folgende Datentypen zugeordnet werden:

  • mit elementaren Datentypen gibt man die absolute Adresse oder den symbolischen Namen eines Aktualparameters an
  • mit zusammengesetzten Datentypen gibt man den symbolischen Namen von Daten mit zusammengesetzten Datentyp wie Feldern und Strukturen an
  • TIMER, COUNTER und Bausteine durch angeben der Nummer wie T10, Z12 oder FB1.

Einem Parameter vom Typ ANY können aber nicht nur individuelle Operanden wie zum Beispiel Merkerwörter (MW) zugeordnet werden. Man kann mit ANY auch Datenbereiche angeben. Aktualparameter, die einem Datenbereich zugeordnet sind, werden im Format einer Konstanten übergeben welche die zu übergebenden Datenmengen enthält. Dieses Format hat dann folgende Form:

p# Bereichskennung Byte.Bit Datentyp Wiederholfaktor

Mit dem Element Datentyp können alle elementaren Datentypen und der Datentyp DATE AND TIME angegeben werden. Werden im Datentypen keine Booleschen Variablen übergeben so muss die Bitadresse mit 0 (x.0) angegeben werden.

Beispiele für das Format zur Angabe von Speicherbereichen für die Übergabe an einen Parameter vom Typ ANY:

Aktualparameter Beschreibung
p# M 50.0 BYTE 10 Gibt 10 Bytes im Speicherbereich Merker an:
MB50 bis MB59.
p# DB10.DBX5.0 S5TIME 3 Gibt 3 Einheiten von Daten vom Datentyp S5TIME an, die in DB10 gespeichert sind:
DB Byte 5 bis DB Byte 10.
p# A 10.0 BOOL 4 Gibt 4 Bits im Speicherbereich Ausgänge an:
A 10.0 bis A 10.3.