Více dotazů na záznam proměnných na MC kartu končily obecným konstatováním "to je jednoduché, zaznamená se to na paměťovou kartu v PLC". Není to ale úplně tak, jak si vyzkoušíme a ukážeme dále s PLC SIMATIC S7-1200.
První dogma které překonáme. Paměťová karta pro vytvoření a záznam dat do csv souboru není potřeba. Soubor se vytváří v Load memory a ta se u S7-1200 rozšiřuje jen MC kartou. Takže pokud není MC karta v PLC, tak se soubor vytvoří v Load paměti PLC, pokud je paměť rozšířena MC kartou, tak na samotné kartě. Dále kartu nelze vyjmout za provozu, takže manipulace s ní je pro uživatele značně omezena. Lze s ní manipulovat jen při vypnutém PLC a to bývá většinou v rozvaděči, kde není volný přístup. Jak na to správně jít uvidíme dále. |
Neměli jsme k dispozici originál kartu Siemens, ale ta od Helmholz udělá také stejnou službu. Jen je potřeba si ověřit, jak velká může být do PLC vložena. Existuje totiž omezení podle typu a firmware jednotlivých PLC. |
Například novější CPU1212C s firmwarem V4x schroustne až 2GB, stejné PLC s firmwarem V3x je omezeno na 24MB. |
Velikost paměti uvedeného PLC online, rozšíření MC kartou 12MB. |
Jen pro zajímavost, taková příprava záznamu dat, když se jedná třeba o operace s plovoucí čárkou, si ze strojového času PLC občas vezme to svoje. |
Pro pochopení celého principu je nejlepší tento seznam instrukcí v PLC. Každý csv soubor, do kterého chceme data (proměnné) zaznamenat, musíme v PLC definovanou posloupností nejprve vytvořit (DatLogCreate), dále otevřít pro záznam, následně zapsat proměnné do souboru a na závěr soubor zavřít. Tohle je klíčový postup, jinak to nepůjde. |
Instrukce pro vytvoření souboru potřebuje ještě kromě vlastního databloku ještě další DB (DB82) s parametry pro csv soubor. Hlavně jméno pro csv soubor a jeho ID. Dále nepovinný text pro hlavičku a oblast dat, odkud se vezmou proměnné pro zápis do csv souboru. Hodnota 1001 v proměnné RECORD pak udává, kolik řádků bude mít csv soubor, než se začnou staré řádky přepisovat novými. Drobná poznámka, vytvoření nového souboru někdy trvá velmi dlouho. Klikněte na obrázek pro zvětšení. |
DB82_datalog s uvedenými parametry pro csv soubor. Tyto data ve struktuře Value, budou zaznamenána do csv, kde vytvoří jeden řádek, viz. předchozí obrázek csv souboru. Datový blok si uděláme "Retain", tedy takový, který si podrží hodnoty i po vypnutí PLC. |
Pokud jsme úspěšně vytvořili csv soubor, musíme jej otevřít pro zápis. Po vytvoření je u některých firmware již automaticky otevřen, ale pro jistotu si jej otevřeme znovu. Informaci o správně vykonané instrukci udává v PLC programu bitový signál DONE, a také ERROR s kódem chyby v proměnné STATUS. |
Zápis dat do csv proběhne na povel od nástupné hrany na REQ vstupu instrukce. Jeden zápis vytvoří jeden řádek v csv. Další povel pro zápis pak přidá další řádek a tak dále. Jakmile soubor naplníme maximálním počtem řádků, další nový řádek přepíše ten nejstarší. Po ukončení zápisu můžeme soubor pro zapisování uzavřít. |
My jsme si povely pro práci s daty vložili na jednu obrazovku HMI včetně signalizace, že se soubor vytváří, je vytvořen, otevřen, zapisuje se do něj a tak dále. Souborů můžeme mít v paměti PLC kolik chceme, respektive kolik se jich nám tam vejde. |
Do vytvořeného souboru se dá zapisovat stále. Jestliže nám tedy vyhovuje, stačí jej vždy jen pro zápis otevřít, není nutné jej vytvářet znovu. Ani to nejde. Při pokusu o vytvoření již existujícího souboru zahlásí instrukce chybu a v kódu chyby najdeme informaci o tom, že soubor již existuje. |
I když je paměťovou kartu se záznamem možné přečíst v běžném PC, tato operace se moc nedoporučuje. PLC v tu dobu totiž nemůže fungovat a existuje riziko, že někdo vymaže z karty důležité soubory. Proto je k přístupu do csv souboru vhodnější využít webový server v PLC. Takže si vytvoříme uživatele "boy" s omezenými právy, který bude moci csv soubor kopírovat do PC. |
V menu PLC prohlížení souborů uvidíme kromě jiného složku DataLogs, kde by mohly být všechny naše csv soubory. |
A jsou skutečně tam. Můžeme je jednoduše kopírovat na PC, mazat a podobně. Například poslední soubor je plný dat v 1000 řádcích, takže lehce zjistíme, kolik takových souborů se nám vleze na kartu. |
Otevřeme uvedený soubor v Excelu a vidíme, že je opravdu plný, záznam probíhá již podruhé dokola. V prvním sloupci je číslo záznamu 1002 a my jsme si na začátku ukázky vytvořili soubor pro 1001 řádků. |
Závěr:
Je potřeba postupovat opravdu krok za krokem a vytvořit si více různých souborů pro vyzkoušení zákonitostí při zápisu. No a samozřejmě si v PLC programu připravit data, vyhodnotit průběhy instrukcí, abychom vždy věděli, co se v PLC událo nebo neudálo a ošetřit poruchové stavy.
Jaroslav Blažek
Doplňující odkazy k článku:
CPU Simatic S7-1200: http://stest1.etnetera.cz/ad/current/index.php?vw=0&ctxnh=5dc8474325&ctxp=home