Jste zde

řízení motorů (Motion Control)

řízení motorů je jedna z důležitých oblastí průmyslové automatizace, která dovoluje řídící výstupy převést na konkrétní pohyb. Tento článek obecně popisuje současný stav v této oblasti a stručně vysvětluje některé užívané pojmy.

řízení pohybu motorů (Motion Control) je rozšířený termín pro ovládání akčních pohybových členů. V průmyslu se často vyskytuje nutnost přesného řízení natočení, rychlosti otáčení a točivého momentů krokových motorů a servomotorů prostřednictvím průmyslových počítačů, PLC či HMI (Human-Machine Interface).

Celý systém řízení motorů se skládá ze sériového zapojení 4 bloků dle následujícího obrázku:

  • Host PC + programovací software
  • Inteligentní motion controller
  • Jednotka výkonového budiče motoru (Motor drive amplifier)
  • Motor (servomotor nebo krokový motor), případně se zpětnou vazbou

V některých případech může být motion controller součástí PC jako například PCI zásuvná karta do PC a výkonový budič motoru může tvořit pevnou součást se samotným blokem motoru.

Host PC a programovací software

Tato část řetězce je potřebná pro navržení samotného pohybu (směr, rychlost, akcelerace, brždění, pozice či úhel natočení apod.) a pomocí nějakého programovacího jazyka či softwaru jej popsat pro další bloky. PC zde vlastně tvoří tzv. HMI (Human-Machine Interface). Může ho být využito jen jako zařízení pro jednorázové vytvoření řídícího programu, který po odladění a překladu je přes rozhraní nahrán do inteligentního motion controlleru, který pak pohyb již sám řídí, nebo pracovat společně s motion controlerem jako tzv. Real-Time systém, který zprostředkovává přímou interakci s uživatelem v reálném čase a tedy mu umožňuje měnit parametry pohybu za chodu motoru.

Motion Controler (řadič pohybu)

Motion controler je jednotka, která slouží ke generování potřebných řídících signálů pro pohyb motoru dle uživatelem napsaného programu nebo právě zadaných příkazů.


 

Dnešní controllery obsahují architekturu tvořenou jedním či více CPU (Central Procesor Unit) nebo DSP (Digital Signal Procesor) a FPGA (Field Programmable Gate Array). Využívá se od jednoduchých 8-bitových nebo 16-bitových mikrokontrolérů (např. Atmel) až po 32-bitové embedded CPU nebo DSP dle složitosti controleru. Ty zajišťují od jednoduchého cyklického vykonávání nahraných programů až po běh tzv. RTOS (Real-Time Operating System), který poskytuje přímé řízení a monitorování v čase. Pro tento účel firmy poskytují buï vlastní software běžící na Host PC nebo knihovny pro víceúčelové programy jakými jsou například LabVIEW. Někteří poskytují i knihovny pro programovací jazyky Visual C++, Visual Basic atd.

Pro samotný návrh řídícího programu se využívá vlastních, obvykle jednoduchých programovacích jazyků nebo univerzálních programovacích jazyků jako je C. často se využívá i vývojových diagramů nebo kreslení křivky v rastru, která udává závislost změny souřadnic pohybu na čase.

Definice pohybových funkcí (Motion Function)

Různé motion controlery nabízejí uživateli různé funkce pro zjednodušení nastavení řízení pohybu a vylepšení některých vlastností. Vyskytují se funkce :

 

  • Point-to-Point Motion

    V tomto módu se obvykle dá specifikovat rychlost, akcelerace, S-křivka a pozice pro každou osu individuálně.

  • 2D and 3D Linear Vector Interpolation

    Zde se osám přiřadí prostorový vektor, kterým se pak koordinuje pohyb všech os zároveň. Pohyb pak tedy následuje požadovaný naprogramovaný směr, rychlost, akceleraci a zpomalování vektoru. Vektorový prostor může obsahovat 1, 2 nebo 3 osy.

  • Circular/Spherical/Helical Interpolation

    Zde se může použít kruhová, sférická nebo heliocentrická funkce k jednoduchém vytvoření potřebné cesty v 2D nebo 3D prostoru.

  • Velocity Profiling

    Profilování rychlosti pohybu je často možné prostřednictvím nastavení cílové rychlosti, která je udržována až do nastavení nové rychlosti.

  • Blending

    V tomto módu lze nastavit hladký přechod z jednoho pohybového profilu na jiný bez zastavení otáčení motoru.

  • Contouring

    Zde lze specifikovat body, kterými motion controler hladce proloží cestu pohybu těmito body.

  • Electronic Gearing

    Funkce elekronického zpřevodování nabízí možnost odstupňovat určeným poměrem rychlost jednotlivých os pohybu ( u více osového, tj. více motorového, řízení pohybu) k jedné hlavní ose nebo analogovému signálu .

  • S-CURVE Acceleration/Deceleration

    Využitím s-křivky lze dosáhnout hladkého přechodu od nulové akcelerace k zadané rychlosti akcelerace a naopak brždění a tím omezit trhavé pohyby.

  • Capture

    Tato funkce dovoluje zachycení pozice, ve kterém se právě motor, resp. trajektorie pohybu nalézá, při příchodu vnějšího digitálního pulsu.

  • Sinusoidal Commutation

    Toto je speciální typ komutace pro bezkartáčové servomotory k zajištění hladkého (netrhavého) pohybu.

Motor drive power device (Výkonový budič motoru)

Jednotka výkonového budiče motoru přímá řídící signály od motion controlleru a přeměňuje je na výkonové signály. Ty jsou okamžitě vysílány připojenému motoru. Samozřejmě, že typ výkonového budiče se liší v závislosti na typu připojeného motoru (například proudy až 5A). Někdy jsou výkonové budiče již součástí motorů.

Motor

Pro řízení pohybu se nejčastěji využívají tzv. krokové motory nebo tzv. servomotory.

Stepper motor (krokový motor)

Krokové motory jsou určeny pro diskrétní pohyb, kdy se motor pootočí na pozici danou určitým počtem kroků (steps). Ty jsou dány počtem vstupních řídících impulsů. Rychlost otáčení motoru je pak daná pulse rate. Pro kontinuální pohyb se často využívá zpětnovazebních signálů pro kontrolu a řízení aktuální pozice.

Důležitým parametrem je počet plných kroků na jednu celou otáčku motoru (full steps per revolution), případně na jednotku délky u lineárních motorů. Tento parametr udává základní rozlišení pohybu, tedy o jaký úhel se motor pootočí při jednom řídícím impulsu.

Microstepping - technologie vyspělých krokových motorů daná jejich budící jednotkou, která poskytuje vydělení plného kroku motoru (full step) na tzv. mikrokroky (microsteps). To se provádí dimenzováním velikosti proudu jednotlivých cívek motoru tak, že dochází vyvážení polohy elektromagnetického pole v motoru mezi plnými kroky. Tím lze zvýšit počet kroku v pohybu motoru a tím i rozlišení pohybu a získat hladší pohyb (tzn. redukovat trhavé pohyby) v kontinuálním pohybu.

Servomotor

Pojem servomotory zahrnuje velmi široký rozsah typů motorů, ale nejčastěji se využívá stejnosměrných kartáčových (DC brushes) a bezkartáčové (brushless) motory. Protože tyto motory jsou určené pro kontinuální pohyb, využívá se zde zpětné vazby k určení aktuální pozice a rychlosti pohybu. Bez využití zpětné vazby lze pozici jen odhadovat.

Zpětná vazba pro řízení v uzavřené smyčce

Zpětná smyčka od motoru se využívá k přesnému řízení pozice a rychlosti motoru. Zatímco pro krokový motor je zpětná vazba jen volitelná ( pozici a rychlost se určuje pulsy), pro servo motory je nutná pro spolehlivé řízení. Nejvíc se využívá dvou metod :

 

  • analogová zpětná vazba - využívá A/D převodník pro vyhodnocení v controlleru. Rozlišení je dáno A/D převodníkem
  • zpětná vazba s kvadraturním kodérem - kvadraturní kódování zajišťuje určení pozice, rychlosti a směru pohybu. Tato zpětná vazba generuje dva pulsy. Tyto pulsy jsou o 90° posunuty ve fázi.

Příklady systémů v praxi

Mezi mnoha firem zabývající výrobou modulů a součástek pro řízení motorů bych zmínil firmy Trinamic Microchips a National Instruments.

 

První z nich, firma Trinamic, kterou na českém trhu distribuuje firma SE Spezial Electronic, se přímo specializuje na tuto problematiku a nabízí širokou nabídku od samotných řídících integrovaných obvodů vlastní výroby, přes vestavné osazené moduly, jejichž vzájemnou kombinací lze vytvořit potřebnou řídící a budící jednotku, až po robustní plně zapouzdřené jednotky k okamžitému použití a řízení až v 6 osách. Trinamic nabízí programovací software i pro operační systém Windows.

 

Druhá zmíněná, firma National Instruments, poskytuje hlavně řídící jednotky a karty pro vestavbu do PLC systémů a PC pro řízení až v 8 osách. Dále pak i výkonové budící jednotky pro různé typy motorů. Nabízí i různý software pro programování a vizualizaci pohybu, včetně knihoven pro programování v jazykách Visual Basic a Visual C/C++ a pro univerzální program LabVIEW.

řídící moduly firmy Trinamic

Závěr

řízení pohybu, resp. motorů, je významná oblast pro převod elektrických signálů na mechanický pohyb, kterého se využívá v mnoha oblastech průmyslu i spotřební techniky . Se současným i budoucím rozvojem robotizace se jistě bude význam této oblasti zvyšovat. Cílem tohoto článku bylo stručně a obecně popsat současný stav a krátce vysvětlit některé pojmy.

 

 


Odkazy :

[1] http://www.trinamic.com - firemní stránky v angličtině, distributor v čR: SE Spezial Electronic - http://www.spezial.cz
[2] http://www.ni.com - firemní stránky National Instruments v angličtině
[3] National Instruments: The Measurement and Automation Catalog 2004

 

Antonín Vojáček
vojaceka1@ seznam.cz

Hodnocení článku: