DATOVÝ BLOK
Charakteristika
Datový blok je oblast, která je začleněna v uživatelském programu jako blok, a obsahuje uživatelská data, proměnné. Hodnoty datových bloků jsou dostupné z
ostatních programových bloků. Obecné datové bloky jsou společné, dostupné, ze všech programových bloků. Datové bloky neobsahují programový kód.
|
Datový blok
Strukturovaná datová paměť, tj. datové bloky (Data Block) poskytují lepší možnosti využití paměti pro ukládání dat. Datový blok se ukládá do paměťové
oblasti určené pro program jako vyhrazený blok stejně jako jiné programové bloky. Samotné vytvoření datového bloku již vytváří strukturu, například jeden
datový blok je určen pro uložení analogových hodnot, další datový blok pro regulaci nebo pracovní stanice 1, 2 atd... .
Základní fyzickou jednotkou položky datového bloku je zpravidla Word, a to z toho důvodu, že datové bloky jsou
určeny pro ukládání hodnot. Starší systémy nevyžadovaly určení typu ukládané hodnoty co bylo nevýhodné při vytváření bloku a při kombinaci proměnných
velikosti Word a Double Word. Pro specifikaci toho, jakou proměnnou konkrétní slovo nebo položka
datového bloku obsahuje, se novějších typů PLC provádí definice typu položky. Položky datového bloku mohou obsahovat všechny typy deklarace proměnných (viz. Typy
dat) a položkám je možno přiřadit i symbolické názvy proměnných.
Mimo struktury a pojmenování položek mají datové bloky i výhodu v tom, že je možno do již hotového datového bloku přidávat další položky i vkládat další
položky mezi již existující nebo položky odebírat. Podle toho datový blok mění automaticky i svoji velikost. Při těchto změnách je ale nutno brát v úvahu, že
při vložení nebo odebrání položky se změní adresy položek za místem provedené změny, což vyžaduje přeadresování adresace (obecně odkazů) těchto položek.
Pokud se nepoužívá přímá adresace ale používá se symbolická adresace, programátorské vývojové prostředí se dokáže s touto změnou vypořádat a přeadresování
provede automaticky.
Upozornění |
Po změně velikosti datového bloku je nutno nahrát do paměti CPU nejen upravený datový blok, ale i všechny programové bloky odkazující na položky
upraveného datového bloku. |
Poznámka |
Nahrání datového bloku i programových bloků je nutné i v případě, že se změní deklarace typu položky, např. Word na DWord,
Integer na Real a podobně. |
|
Instanční datový blok
Instanční datový blok obsahuje data stejně jako obecný datový blok, ale je přiřazen ke konkrétnímu funkčnímu
bloku pro ukládání dat během zpracování. V jednoduchém případě je jeden instanční datový blok přiřazen k jednomu funkčnímu bloku.
Multiinstanční datový blok
Multiinstanční datový blok je principielně instanční datový blok, jehož struktura je ale rozdělena tak, aby každá část struktury odpovídala použití při
jiném volání funkčního bloku. Tedy, není nutno při každém volání funkčního bloku vytvářet (přiřazovat) další instanční datový blok, ale je možno použít
jeden multiinstanční datový blok a při volání funkčního bloku specifikovat část struktury (dat), která jsou přiřazena konkrétnímu volání.
Poznámka |
Není podmínkou, že každý systém musí podporovat multiinstanční datové bloky. |
|