PLC-AUTOMATIZACE - DATA - FORMÁLNÍ PARAMETRY Provoz webu zajišťuje:

www.hapesoft.cz

DATOVÉ TYPY PRO FORMÁLNÍ PARAMETRY

Charakteristika

Datové typy pro formální parametry jsou doplňkem k elementárním a komplexním typům, mohou být definovány jako formální parametry pro přenos mezi programovými bloky.

TIMER, COUNTER

Parametr TIMER nebo COUNTER určuje konkrétní časovač nebo čítač, který bude použit při volání podprogramu. Parametr má znak T nebo C a celé kladné celé číslo v rozsahu 0 až maximální dostupný počet objektů.

BLOCK

Parametr BLOCK specifikuje konkrétní blok, který bude použit při volání podprogramu, je nutno určit o jaký blok se jedná (funkční blok, funkce, podprogram, datový blok, ...). Parametr má znak(y) podle přiřazeného bloku a celé kladné celé číslo v rozsahu 0 až maximální dostupný počet objektů. 

POINTER

Parametr POINTER odkazuje na konkrétní adresu proměnné. Pointer obsahuje adresu nikoliv hodnotu. Při zadání hodnoty do typu formálního parametru, zadáváte adresu jako skutečný parametr. Pointer používá specielní syntaxi zápisu P# "adresa". Parametr POINTER má velikost 6 Byte (48 bitů) paměti a může obsahovat následující informace:

  • číslo DB nebo 0 v případě, že data nejsou uložena v DB
  • oblast paměti v CPU
  • adresu proměnné
struktura parametru POINTER
  bit  
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Byte 0 číslo DB nebo 0 Byte 1
Byte 2 paměťová oblast 0 0 0 0 0 B B B Byte 3
Byte 4 B B B B B B B B B B B B B x x x Byte 5

Typy ukazatele POINTER

V závislosti na informacích, je možno parametr POINTER použít k deklaraci až čtyř typů:

  • Area-internal pointer: obsahuje informace o adrese proměnné (P#20.0)
  • Cross-area pointer: obsahuje informace o oblasti paměti a adrese proměnné (P#M20.0)
  • DB pointer: obsahuje informace o proměnné v datovém bloku včetně čísla datového bloku a adrese proměnné (P#DB10.DBX20.0)
  • Zero pointer: nulový ukazatel znamená špatnou hodnotu, což může znamenat, že hodnota neexistuje nebo že hodnota není známa, nula indikuje chybějící hodnotu ale nula sama může být také hodnotou (P#0.0, ZERO)

ANY (datový typ)

Parametr ANY se používá tehdy, když je datový typ aktuálního parametru neznámý nebo pokud je možno použít libovolný typ dat. ANY, jako libovolný parametr typu ukazuje na začátek datové oblasti a určuje délku oblasti. Parametr ANY zabírá délku 10 Byte paměti a může obsahovat následující informace:

  • Datový typ: datový typ prvků konkrétní (určené) datové oblasti
  • Faktor opakování: počet prvků (elementů) v datové oblasti
  • DB číslo: datový blok, který obsahuje deklaraci údajů o oblasti prvků (elementů)
  • Oblast paměti: oblast paměti CPU, kde jsou uloženy prvky (elementy) datové oblasti
  • Počáteční adresa dat ve formátu "Byte.bit": začátek datová oblasti identifikované ANY ukazatelem (v tabulce struktury parametru B = Byte, x = bit)
  • Ukazatel nula (ZERO): nulový ukazatel znamená špatnou hodnotu, což může znamenat, že hodnota neexistuje nebo že hodnota není známa, nula indikuje chybějící hodnotu ale nula sama může být také hodnotou

struktura parametru ANY
  bit  
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Byte 0 identifikátor prostředí datový typ Byte 1
Byte 2 faktor opakování Byte 3
Byte 4 číslo DB nebo 0 Byte 5
Byte 6 paměťová oblast 0 0 0 0 0 B B B Byte 7
Byte 8 B B B B B B B B B B B B B b b b Byte 9

ANY (parametr typu)

Parametr ANY se používá pro specifikaci typu parametru jako je čítač, časovač nebo blok programu.

Poznámka
Použití pouze pro SIEMENS SIMATIC S7-300/400, ne pro S7-1200/1500.
 
struktura parametru ANY
  bit  
15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0
Byte 0 identifikátor prostředí datový typ Byte 1
Byte 2 faktor opakování =1 Byte 3
Byte 4 0 Byte 5
Byte 6 datový typ 0 0 0 0 0 0 0 0 Byte 7
Byte 8 číslo časovače, čítače, bloku programu Byte 9

VARIANT

Parametr VARIANT je ukazatel, který může ukazovat na proměnné různých typů dat, jiných než instančních. Ukazatel VARIANT může odkazovat na elementární proměnné (například tpu INT nebo REAL, STRING, DTL, pole STRUCT a další ...) Ukazatel VARIANT rozpoznává strukturované proměnné a jejich složky. VARIANT nezabírá prostor v instančním DB nebo v oblasti lokálních proměnných L ale místo v paměti CPU.

VARIANT není objekt, ale odkaz na jiný objekt. Jednotlivé prvky typu VARIANT mohou být deklarovány pouze v rámci rozhraní bloku proto nemůže být deklarován v datovém bloku, nebo ve statické části lokálních proměnných. Důvodem je i to, že velikost parametru VARIANT je proměnná podle odkazovaných objektů. Typ VARIANT může být definován pouze jako formální parametr v rozhraní programového bloku.


PLC-AUTOMATIZACE - DATA - FORMÁLNÍ PARAMETRY
 
Publikovaný obsah je určen pouze pro individuální studium.
Není povolena distribuce, prodej, přetisk a použití textu a/nebo vyobrazení (úplný, dílčí a/nebo částečný), použití ke školení a/nebo výuce (hromadné, skupinové nebo zadávané), veřejné a/nebo skupinové prezentace a ani jiné formy šíření v hmotné a/nebo nehmotné podobě.