Softwarový přístup k pohonům je nezbytný pro jejich řádné řízení. Vývojové prostředí Automation studio má své nástroje pro ovládání pohonů a především pro nastavování jejich inicializačních parametrů, které lze použít při počáteční inicializaci stroje. Pro řízení pohonů není tento nástroj dostačující a stroj je vhodnější řídit pomocí programů.
Tato kapitola popisuje nastavení parametrů pohonů v Automation studiu, jejich řízení softwarem MACOS a představuje model reálných a virtuálních os.
3.1 Reálná a virtuální osa
Pohyb a ovládání každého pohonu je řízen pomocí dvou os, reálné a virtuální. Reálná osa přesně reprezentuje reálné parametry pohonu, ke kterému je přiřazena. Určuje její rychlost, zrychlení, polohu, polohu koncových referenčních softwarových spínačů i referenčního spínače, nastavuje se regulace osy atd. Je tedy přímým softwarovým popisem hardwarových možností a parametrů osy.
Virtuální osa má omezení pouze na rychlost, zrychlení a polohu, koncové spínače má v nekonečnu, referenční se nastaví vždy na nulu či požadovanou hodnotu a regulace není potřeba, neboť její řízení je „ideální“. Při zapnutí stroje jsou obě dvě části osy samostatné a nezávislé. Po nalezení referenční polohy (dále jen referování) osy spolu vytvoří vazbu tak, že virtuální osa je typu master a reálná typu slave. Problematika referování a vytváření vazeb je více rozvedena v kapitole 4.
Parametry a příkazy pro manuální pohyb a řízení os se posílají do virtuální osy a reálná osa kopíruje její pohyb. Skutečná výstupní rychlost a poloha se odečítá z reálné osy.
Tohoto spojení os se dá využít pro podmínky a vazby mezi jednotlivými osami, nástroji a funkčními prvky stroje. V tomto softwaru se virtuální osy používají především k zavedení relativního souřadného systému pro vykonávání NC programů.
3.2 Parametry a nastavení pohon ů
Každý pohon má v Automation studiu vlastní inicializační (Acopos) tabulku se základními parametry a informacemi o ose. Acopos tabulka se do PLC přehraje vždy při restartu a po té už je za chodu PLC poměrně náročné tyto parametry v tabulce měnit.
Parametry jsou seřazeny v ucelených skupinách, jejich přehled je zobrazen v Tab. 10.
Tab. 10: Inicializační tabulka pohonů
Skupina parametrů Popis
dig_in digitální vstupy (např. HW koncové a referenční spínače) encoder_if nastavení enkodéru (unit/otáčky)
limit limitní parametry pro rychlost, zrychlení a SW koncové spínače controller nastavení polohového a rychlostního regulátoru a feed forward move nastavení typu referování, rychlostní parametry pro řízení osy message zprávy o chybách a upozorněních při řízení pohonu
Parametry se dají nastavovat přímo v tabulce nebo v NC_Testu. NC_Test je součást Automation studia, která umožňuje ovládat, testovat a manipulovat s osami přímo z Automation studia. Je možné v něm nastavovat a testovat různé limitní parametry, encoder, testovat různé typy referování a nastavit regulační parametry pro pohony.
Všechny takto nastavené parametry se dají uložit přímo do Acopos tabulky.
Další funkcí NC_Testu je sledování reálných parametrů osy. Sledované parametry se zobrazí v grafech. Užitečné je tak sledovat rozdíl mezi zadanou a reálnou rychlostí osy, výkon, proud v ose a nebo lag error. Také je možné přidat různé spouštěče, od kdy se mají parametry sledovat. Sledování je velmi užitečné k řešení problému regulace pohonů.
Pro většinu aplikací je tato sada parametrů Acopos tabulky pro řízení dostačující. Přesto je někdy potřeba využít nadstandardních parametrů. Tyto parametry lze vyhledat v helpu Automation studia podle jejich identifikačního čísla ParID. Po té je přidat do inicializační tabulky a nastavit podle potřeby. Každý parametr pohonu, ať už je v Acopos tabulce či není, má tedy vlastní ParID a je možné jej dohledat a ovládat i po jejich nahrání a inicializaci. Podrobněji se tím zabývá kapitola 3.4 Parametrizace pohonů programem UC_ACP .
3.3 Program pro ř ízení pohonu MC_Basis
Program s datovou strukturou, která řídí stavový automat MC_Basis, je volně dostupná součást Automation studia. Slouží ke komunikaci s funkčními bloky knihovny PLCopen, která dále komunikuje s řídicí jednotkou os (hardwarem). MC_Basis je tedy program, který dokáže přímo ovládat a sledovat stav pohonů.
MC_Basis sám o sobě nice nevykonává, dokud nedostane příkaz z nadřazených automatů (UC_Motion, MC_Automatic a MC_Start). Každou reálnou a virtuální osu řídí vlastní MC_Basis. V řídicím softwaru je MC_Basis pro virtuální osy pojmenován
jako Axis_a01 až a03, pro reálné osy Axis_g01 až g03. Stavy automatu, který řídí MC_Basis, jsou popsány v Tab. 11.
Tab. 11: Přehled stavů automatu MC_Basis
Stav Popis
STATE_READY počáteční stav, čeká na příkaz k napájení osy
STATE_POWER_ON napájení osy
STATE_MOVE_ABSOLUTE přímý pohyb
STATE_WAIT čeká na příkaz k pohybu
STATE_STOP zastaví jakýkoliv pohyb a resetuje funkční bloky STATE_MOVE_ADDITIVE krokový pohyb
STATE_HOME referování osy
STATE_ERROR_RESET resetování chyb a funkčních bloků STATE_ERROR_AXIS chyba na pohonu
STATE_ERROR chyba funkčního bloku
STATE_JOG_POSITIVE hrubý pohyb v kladném směru STATE_JOG_NEGATIVE hrubý pohyb v záporném směru
Kromě přímého přístupu k ovládání pohonů má MC_basis další velice důležitou funkci.
Zajišťuje definici stavů pohonu a povolených příkazů v daných stavech dle norem PLCOpen. To znamená, že by měl být funkční pro řízení pohonů na všech řídicích modulech a PLC, které tyto normy podporují. Pokud je spuštěn příkaz, který v daném stavu není povolen, pak se tento příkaz nevykoná. Při vývoji ostatních částí softwaru MACOS se musely tyto vazby a podmínky zohledňovat. Stavový diagram s povolenými příkazy je zobrazen v příloze A, popis stavů pohonu je v Tab. 12.
Tab. 12: Přehled stavů pohonu
Stav Popis
Disabled pohon je odpojen od proudu
Standstill pohon je v klidovém stavu, čeká na příkaz Homing pohon referuje se zadanými parametry reference Stopping ukončování pohybu pohonu
Errorstop zastavení pohybu, protože na pohonu vznikla chyba Discrete Motion přímý a krokový typ pohybu pohonu
Continuous Motion hrubý pohyb pohonu
Synchronized Motion pohon je spojen s jiným pohonem typu master
3.4 Parametrizace pohon ů programem UC_ACP
Parametry pohonů jsou při spuštění softwaru MACOS načteny z Acopos tabulky. Ta obsahuje základní sadu parametrů a může obsahovat další nadstandardní parametry.
Všechny tyto parametry lze identifikovat pomocí jejich hodnoty ParID a nastavovat za chodu softwaru. Tyto funkce umožňují funkční bloky Read_ParId (načtení parametru) a Write_ParID (zapsání parametru). Manipulaci s parametry zajišťuje v softwaru MACOS program UC_ACP.
Pro načítání a ukládání parametrů je nutno splnit několik podmínek. Hlavní podmínkou je vypnutý proud v pohonech, s jejichž parametry chceme manipulovat. Funkční blok zvládne v jednu chvíli načíst nebo uložit jeden parametr. Pro změnu více parametrů je nutné použít FOR cyklus. V softwaru MACOS lze měnit několik parametrů (viz Tab.
13) ze tří skupin Acopos tabulky.
Stavový automat programu UC_ACP (viz příloha B.7) je složen ze dvou FOR cyklů.
Jeden FOR cyklus slouží k načtení parametrů z Acopos tabulky do struktury parametrů lACP. Parametry lACP jsou propojené s grafickým prostředím, ve kterém jdou měnit.
Po příkazu Save se spustí druhý FOR cyklus, který nahraje změněné parametry do pohonů. Uživatel má možnost příkazu Default, který změní parametry na jejich tovární hodnotu. Pro jejich nahrání do pohonu je také nutné spustit příkaz Save. Popis stavů automatu UC_ACP je v Tab. 14.
Tab. 13: Nastavitelné parametry v softwaru MACOS
Skupina/ parametr Popis
Encoder parametry nastavení enkodéru - Units počet jednotek (částí) v jedné otáčce - Revolutions počet otáček
- Direction směr otáčení
Basis nastavení základních rychlostních parametrů pohonu - Velocity rychlost (units/revolution)
- Acceleration zrychlení (units/revolution2) - Deceleration zpomalení (units/revolution2) Limits nastavení limitních hodnot pohonu - Velocity limity rychlosti (units/revolution) - Acceleration limity zrychlení (units/revolution2) - Deceleartion limity zpomalení (units/revolution2) - T-Jolt omezení rázů
- Pos_SW kladný softwarový koncový spínač (units) - Neg_SW záporný softwarový koncový spínač (units)
Tab. 14: Stavy automatu UC_ACP
Stav Popis
ACP_INIT inicializační stav
ACP_WAIT klidový stav, čeká na příkaz (Save, Default) ACP_START načítání parametrů z Acopos tabulky do parametrů
struktury lACP
ACP_START_RESET resetování funkčního bloku pro načítání parametrů po každém načtení
ACP_SELECT výběr změněného parametru pro uložení do pohonu ACP_WRITE_RESET resetování funkčního bloku pro ukládání parametrů po
každém uložení
ACP_WRITE ukládání parametrů do pohonu
ACP_NO_ERROR signalizace pro stavový automat ErrorHandling ACP_ERROR nastala chyba v systému nebo ve funkčních blocích