VYSOKÁ ŠKOLA POLYTECHNICKÁ JIHLAVA Katedra elektrotechniky a informatiky Obor Počítačové systémy
M o d e l s e s y n c h ro n n í m i s e r v o - m o t o r y, ř í z e n ý průmyslovým počítačem bakalářská práce
Autor: Jiří Filandr Vedoucí práce: Ing. Michal Bílek Jihlava 2012
ABSTRAKT Bakalářská práce se zabývá výukovým modelem se synchronními servo-motory. Zaměřuje se na jeho oživení pomocí průmyslového počítače. Práce dále obsahuje popis způsobu řízení modelu a tvorby řídících aplikací.
KLÍČOVÁ SLOVA TwinCAT, EtherCAT, synchronní servo-motor, průmyslový počítač
ABSTRACT This bachelor thesis deals with educational model with synchronous servomotors. It is focused on its revival via industrial computer. Thesis also includes description of ways of controlling model and writting control applications.
KEYWORDS TwinCAT, EtherCAT, synchronous servomotor, industrial computer
Poděkování Na tomto místě bych rád poděkoval mému vedoucímu práce Ing. Michalu Bílkovi za vedení práce a jeho odborné rady. Dále bych rád poděkoval zaměstnancům společností Dyger s.r.o. a RWetc s.r.o. za pomoc při řešení problémů a za jejich odborné rady.
Prohlašuji, že předložená bakalářská práce je původní a zpracoval/a jsem ji samostatně. Prohlašuji, že citace použitých pramenů je úplná, že jsem v práci neporušil/a autorská práva (ve smyslu zákona č. 121/2000 Sb., o právu autorském, o právech souvisejících s právem autorským a o změně některých zákonů, v platném znění, dále též „AZ“). Souhlasím s umístěním bakalářské práce v knihovně VŠPJ a s jejím užitím k výuce nebo k vlastní vnitřní potřebě VŠPJ. Byl/a jsem seznámen s tím, že na mou bakalářskou práci se plně vztahuje AZ, zejména § 60 (školní dílo). Beru na vědomí, že VŠPJ má právo na uzavření licenční smlouvy o užití mé bakalářské práce a prohlašuji, že s o u h l a s í m s případným užitím mé bakalářské práce (prodej, zapůjčení apod.). Jsem si vědom/a toho, že užít své bakalářské práce či poskytnout licenci k jejímu využití mohu jen se souhlasem VŠPJ, která má právo ode mne požadovat přiměřený příspěvek na úhradu nákladů, vynaložených vysokou školou na vytvoření díla (až do jejich skutečné výše), z výdělku dosaženého v souvislosti s užitím díla či poskytnutí licence. V Jihlavě dne 31. 5. 2012
.............................................. Podpis
Obsah 1
Úvod ............................................................................................................................ 10
2
Použité technologie ..................................................................................................... 11 2.1 2.1.1
Definice ....................................................................................................... 11
2.1.2
Historie ........................................................................................................ 12
2.1.3
Použití.......................................................................................................... 12
2.1.4
Výrobci ........................................................................................................ 12
2.1.5
Beckhoff ...................................................................................................... 12
2.1.6
Operační systém WINDOWS CE................................................................ 13
2.2
Základní popis ............................................................................................. 14
2.2.2
System Manager .......................................................................................... 14
2.2.3
PLC Control................................................................................................. 14
5
Průmyslová sběrnice EtherCAT .......................................................................... 16
2.3.1
Základní popis ............................................................................................. 16
2.3.2
Vztah EtherCATu a Ethernetu..................................................................... 16
Popis modelu ............................................................................................................... 17 3.1
4
TwinCAT............................................................................................................. 14
2.2.1
2.3
3
IPC ....................................................................................................................... 11
Použité synchronní servo-motory........................................................................ 19
3.1.1
Definice ....................................................................................................... 19
3.1.2
použitý motor ILA2E .................................................................................. 19
3.2
Koncové a referenční spínače.............................................................................. 23
3.3
Energetický řetěz ................................................................................................. 23
Použité řídící a komunikační prvky............................................................................. 25 4.1
Použité IPC .......................................................................................................... 25
4.2
Použitý Coupler a I/O moduly............................................................................. 26
4.2.1
Coupler ........................................................................................................ 26
4.2.2
Bus Terminály ............................................................................................. 27
Implementace............................................................................................................... 30 5.1
Instalace souborů a knihoven .............................................................................. 30
5.2
Nastavení System Manageru ............................................................................... 32
5.2.1
Základní konfigurace................................................................................... 32
5.2.2
Nastavení scaling factoru............................................................................. 34
5.2.3
Popis manuálního ovládání.......................................................................... 35
5.2.4
Popis manuálního spouštění funkcí ............................................................. 36
5.2.5
Popis manuálního provedení couplingu ...................................................... 37
5.2.6 5.3
PLC Project, použití knihovny TcMc2................................................................ 41
5.3.1
Funkční blok MC_Power ............................................................................ 41
5.3.2
Funkční blok MC_Stop ............................................................................... 42
5.3.3
Funkční blok MC_MoveVelocity................................................................ 42
5.3.4
Funkční blok MC_MoveAbsolute............................................................... 43
5.3.5
Funkční blok MC_MoveRelative ................................................................ 44
5.3.6
Funkční blok MC_GearIn............................................................................ 45
5.3.7
Funkční blok MC_GearOut ......................................................................... 46
5.4 5.4.1 6
Připojení PLC projektu k System Manageru............................................... 38
PLC Project, použití knihovny TcFlyingSaw...................................................... 47 Funkční blok MC_GearInPos...................................................................... 47
Závěr............................................................................................................................ 49
Literatura ............................................................................................................................. 50
Seznam Obrázků Obrázek 1.1 IPC Siemens, zdroj [39] .................................................................................. 11 Obrázek 3.1 Model se synchronními servo-motory, zdroj: vlastní fotografie..................... 17 Diagram 3.1 Schéma propojení zařízení.............................................................................. 18 Obrázek 3.2 Rozbor označení motoru, zdroj [25] ............................................................... 20 Obrázek 3.3 Schéma vnitřních PINů a konektorů motoru, zdroj [25]................................. 21 Obrázek 3.4 Znázornění vyřazení STO ochrany, zdroj [25] ............................................... 21 Obrázek 3.5. Součásti a rozhraní motoru, zdroj [25]........................................................... 22 Obrázek 3.5 Energetický řetěz, zdroj [17]........................................................................... 23 Obrázek 4.1 IPC, zdroj [18]................................................................................................. 25 Obrázek 4.1 Coupler, zdroj [19].......................................................................................... 26 Obrázek 4.2 Schéma komunikace coupleru, zdroj [19]...................................................... 27 Obrázek 4.3 Terminál EL1008, zdroj [22] .......................................................................... 28 Obrázek 4.4 Terminál EL2008, zdroj [23] .......................................................................... 29 Obrázek 5.1 Připojení knihoven, zdroj: screenshot aplikace TwinCAT ............................. 31 Obrázek 5.2 Náhled knihovny, zdroj: screenshot aplikace TwinCAT ................................ 31 Obrázek 5.3 Připojení k IPC, zdroj: screenshot aplikace TwinCAT................................... 32 Obrázek 5.4 Konfigurace připojení, zdroj: screenshot aplikace TwinCAT ........................ 33 Obrázek 5.5 Scan zařízení, zdroj: screenshot aplikace TwinCAT ...................................... 33 Obrázek 5.6 Nastavení modu: screenshot aplikace TwinCAT............................................ 34 Obrázek 5.6 Nastavení scaling faktoru, zdroj: screenshot aplikace TwinCAT................... 35 Obrázek 5.7 Povolení osy, zdroj: screenshot aplikace TwinCAT....................................... 36 Obrázek 5.8 Ovládání funkcí, zdroj: screenshot aplikace TwinCAT.................................. 37 Obrázek 5.9 Ovládání couplingu, zdroj: screenshot aplikace TwinCAT ............................ 38 Obrázek 5.10 Připojení PLC projektu, zdroj: screenshot aplikace TwinCAT .................... 38 Obrázek 5.11 Konfigurace PLC projektu, zdroj: screenshot aplikace TwinCAT ............... 39 Obrázek 5.12 Přiřazení proměnných, zdroj: screenshot aplikace TwinCAT ...................... 39 Obrázek 5.13 Práce s vstupy a výstupy , zdroj: screenshot aplikace TwinCAT ................. 40 Obrázek 5.13 Funkční blok MC_Power , zdroj [26] ........................................................... 41 Obrázek 5.13 Funkční blok MC_Stop , zdroj [27] .............................................................. 42 Obrázek 5.14 Funkční blok MC_MoveVelocity , zdroj [28] .............................................. 42 Obrázek 5.15 Funkční blok MC_MoveAbsolute , zdroj [29].............................................. 43
Obrázek 5.16 Funkční blok MC_MoveRelative , zdroj [30]............................................... 44 Obrázek 5.17 Funkční blok MC_GearIn , zdroj [31] .......................................................... 45 Obrázek 5.18 Funkční blok MC_Stop , zdroj [32] .............................................................. 46 Obrázek 5.19 Funkční blok MC_GearInPos , zdroj [33] .................................................... 47
1
Úvod
Tato bakalářská práce se zabývá oživením výukového modelu se synchronními servomotory. Model je zaměřen na práci s pohybovými úlohami. Ve světě průmyslu jsou podobná zařízení velmi často používána na výrobních a montážních linkách. Mohou přesouvat výrobky, či materiál, nebo ovládat pohyb částí výrobních strojů. Dnes již je nepředstavitelné, že by podnik vyrábějící sériové díly nevyužíval automatizace provozu. Naopak, míra automatizace stoupá. Hlavními důvody jsou spolehlivost a stálost výrobního procesu, problémy jsou totiž často způsobeny lidskou chybou, kterou automatizace provozu výrazně snižuje. Tento model je řízen takzvaným průmyslovým počítačem, což je zařízení, které se postupně prosazuje v oblasti řízení vedle klasických PLC automatů. průmyslový počítač je dále popsán v kapitole 2. Hlavním cílem této práce je naučit se model ovládat a tyto znalosti přenést do výukových zadání a programů, které budou sloužit budoucím studentům. Dalším cílem je demostrativní řídící úloha, která má ukázat schopnosti modelu a možnosti jeho řízení. Ovládací programy jsou napsány v jazyce strukturovaného textu s využitím funkčních bloků. Jako vývojové prostředí slouží program TwinCAT, respektive jeho modul PLC Control. Pro nastavení periferií a konfiguraci modelu slouží modul System Manager. Model je vybaven dvojicí ozubených kol. Dalším úkolem tedy bylo provést synchronizaci ozubených kol tak, aby běžela společně. Implementační část práce má sloužit i jako návod pro budoucí studenty. Ti v této stati naleznou popis použitých funkčních bloků s ukázky kodu. To by mělo studentům pomoci rychleji se zorientovat v použité technologii a umožnit efektivní řešení vzorových úloh, popř. realizaci vlastních řídících aplikací. .
10
2
Použité technologie
V této kapitole jsou popsány použité technologie, jak hardware, tak i software, které jsou využity v ovládací, nebo konstrukční části výukového modelu. Z oblasti hardware jsou nejdůležitější průmyslový počítač a průmyslová sběrnice EtherCAT, zatímco v oblasti software je klíčovou aplikací TwinCAT, konkrétně jeho moduly PLC Control a System Manager.
2.1
IPC
2.1.1 Definice IPC tedy Industrial PC(průmyslový počítač) je ve své podstatě osobní počítač, obvykle postavený na nejrozšířenější PC platformě x86. Tento počítač je konstruován pro přímé použití v průmyslu, a proto musí být odolný vůči vnějším vlivům, jako jsou prach, teplota, i vlhkost a zároveň by měl odolat i nešetrnému zacházení, proto zde namísto pevných disků s mechanicky citlivým částmi nacházejí uplatnění pamětové karty a SSD disky. Díky této odolnosti a podpoře výrobce lze očekávat spolehlivé zařízení, jehož cena je nicméně až několikanásobkem cen běžných PC.
Obrázek 1.1 IPC Siemens, zdroj [39]
11
IPC je ideální pro splnění úkolů, jejichž komplexnost se stále zvyšuje, při požadované vysoké spolehlivosti a nízkých nákladech. Požadavkem je HW a SW inovativní a zároveň s budoucností (a s výhledem na plánovanou dlouhodobou dostupnost). IPC může být obvykle osazeno běžně rozšířenými typy vstupních/výstupních periferií. Přenos video-signálu je tedy řešen konektorem VGA i DVI. Zařízení obsahují alespoň jeden USB port a pro komunikaci bývajími obvyklými porty jako je Ethernet, či sériová linka, ať už běžná RS232, i její průmyslový sourozenec RS485. V současnosti jsou pro IPC využívány procesory Intel Atom, či Intel Core (i3,i5,i7, dual Core), DDR3/DDR2 paměti a výkonné HD grafiky integrované do CPU. Osazení IPC v podstatě kopíruje vývoj hardwaru pro osobní počítače. To sebou nese samozřejmě výhodu ve formě snížení nákladů, neboť se používají součástky, které jsou masově vyráběny v řádech milionů kusů. [1],[2]
2.1.2 Historie „Prvním průmyslovým počítačem byl pravděpodobně IBM 5531 Industrial Computer, který se objevil v roce 1984. V následujícím roce byl 21. května společností IBM představen model 7531 průmyslová verze IBM.“ (překlad z Wikipedia.org, 2011)
2.1.3 Použití Průmyslové počítače jsou v hlavní řadě použity pro řízení procesu, nebo sběr dat. V některých připadech jsou použity jako “předsunutý pěšák” v systému distribuovaného zpracování dat. Mohou v plné míře nahradit v otázce řízení běžný PLC automat.
2.1.4 Výrobci IPC vyrábí řada společností, neboť v moderním automatickém řízení výroby a stále zvyšující se automatizací provozů je po zařízeních tohoto typu poptávka. Mezi společnosti produkující IPC patří například Siemens, Beckhoff a řada menších výrobců.
2.1.5 Beckhoff „Beckhoff vyrábí otevřené řídící systémy založené na platformě PC. Sortiment produktů zahrnuje průmyslové PC, komponenty průmyslových sítí, servopohony a automatizační software. Výrobky mohou být použity jako samostatné komponenty nebo mohou být 12
integrovány do kompletního řídícího systému. Komponenty a systémová řešení z Beckhoffu jsou využívány v široké řadě aplikací po celém světě. Divize průmyslové elektroniky Beckhoff Automation byla založena v roce 1980 a patří do skupiny firem Beckhoff založené v roce 1953. Základem firemního úspěchu je důsledný vývoj nových produktů. Výzkumné a vývojové oddělení vytváří inovace produktů a systémů. V roce 1986 byl dodán první real-timový PC řídící systém. Následující pojetí a řešení reagující na skutečné potřeby trhu zaručují světový úspěch ve všech oborech automatizačních technologií. V hlavním sídle firmy Beckhoff ve Verlu v Německu jsou umístěny centrální oddělení jako je administrativa, prodej, marketing, vývoj, výroba, technická podpora a servis. Zastoupení na
mezinárodním
trhu
jsou
zajištěna
prostřednictvím
dceřinných
společností
a partnerských firem. Společnost Beckhoff je takto prezentována ve více než 50 zemích na celém světě.” (Dyger s.r.o., 2011)
2.1.6 Operační systém WINDOWS CE Operační systém použitý v IPC je Windows Embedded CE, což je operační systém reálného času (RTOS) firmy Microsoft. Specifikace je 32 bitový, vícevláknový a víceúlohový operační systém. Výhodou jsou nízké nároky na operační pamět zařízení, systém je schopen pracovat v paměťovém prostoru menším než 1 MB. Zařízení využívací tento systém spadají do kategorií embedded zařízení, mobilní telefony, tzv. Handheld PC, či PDA. V současnosti jsou podporovány procesory rodiny x86, ARM a MIPS. [5],[6],[7]
13
2.2
TwinCAT
2.2.1 Základní popis „The Windows Control and Automation Technology TwinCAT system je řídící systém založený na HW operačního počítače s operačním systémem Windows. Poskytuje tak na PC platformě plnohodnotný řídící systém pracující v reálném čase, s možnostmi komunikace s využitím široké škály průmyslových sběrnic a protokolů, moduly pro řízení a synchronizaci pohybů. V neposlední řadě ve spolupráci s hostitelským operačním systémem poskytuje široké uživatelské možnosti ve sběru, zálohování, archivaci, zpracování a vizualizaci procesním dat spolu s provozními údaji. Jako další přínos lze uvést škálovatelnost danou velkou rezervou výpočtového výkonu soudobých počítačů i jednoduchou migrací aplikace na počítač poskytující vyšší výkon.“(Kašpárek, 2011)
2.2.2 System Manager TwinCAT System Manager funguje jako hlavní centrum pro nastavení systému. Toto zahrnuje od nastavení připojených PLC programů a jejich proměnných k hardware, nastavení řízení os, nastavení vstupních a výstupních periferií, až po přímé manuální řízení os. Je také jakousi komunikační bránou, například mezi PLC programem a NC osou. Lze jej použít pro diagnostické účely. Umožňuje připojení ke všem průmyslovým sběrnicím ( EtherCAT, PROFIBUS, CANopen, SERCOS, Ethernet, atd.). [9]
2.2.3 PLC Control Modul TwinCAT PLC Control je vývojové prostředí určené pro programování řídících programů pro PLC dle standartu IEC 61131.To znamená, že výsledný program je nezávislý na výrobci PLC. Jedná se fakticky o program CoDeSys, zapouzdřený do prostředí TwinCAT. TwinCAT PLC Control obsahuje všechny programovací jazyky definované standartem IEC 61131-3. [10]
14
•
LD – Ladder diagram - jazyk releových schémat
•
ST – Structured text - strukturovaný text
•
FBD – Function block diagram – jazyk funkčních bloků
•
IL – Instruction list – jazyk mnemokodů
•
SFC – Sequential function chart – jazyk sekvenčního programování
Po spuštění aplikace nám PLC Control umožňuje sledovat hodnoty a logické stavy proměnných, které jsme si buď definovali sami v našem kodu, nebo jsou definovány v použitých funkčních blocích. Stejně tak nám umožňuje tyto stavy měnit a přímo za chodu zapisovat do běžícího programu. To nám umožňuje program ovládat bez vizualizace, nebo jiného ovládacího prvku. Toto prostředí také indikuje syntaktické i funkční chyby při zápisu programu. Aplikaci je možné otestovat na chyby, před nahráním do řídícího prvku. [11]
15
2.3 Průmyslová sběrnice EtherCAT 2.3.1 Základní popis Průmyslová ethernetová sběrnice, vyvinutá firmou Beckhoff v roce 2003. EtherCAT je sběrnice s otevřenou specifikací, založená na mezinárodních standardech (ISO, IEC, SEMI) a o správu a rozvoj této technologie se stará konsorcium EtherCAT technology group s přispěním desítek významných společností, například Texas Instruments, FESTO, Fuji electric, BMW Group, Bosch atd. [12]
2.3.2 Vztah EtherCATu a Ethernetu EtherCAT tedy vychází principielně z Ethernetu, s nímž sdílí použitou kabeláž, konektory i síťové karty (což jsou faktory snižující cenu). Maximální délka kabeláže mezi jednotlivými prvky je tedy 100 m, stejně jako u standartního Ethernetu. Maximální počet stanic je 65535, což je počet dostačující snad pro jakýkoliv reálný provoz. Možnosti užitých topologií jsou široké (star, bus, line), v případě zapojení do kruhové topologie nemá přerušení vodiče vliv na siťový provoz. Funkčně se jedná vlastně o realtime Ethernet s vlastním upraveným protokolem, který je zapouzdřen do běžného ethernetového rámce. Stejně jako obdobné konkurenční sběrnice, které jsou také postaveny na Ethernetu, EtherCAT využívá standarty komunikace pro fyzickou a linkovou vrstvu, tedy dvě nejnižší vrstvy referenčního modelu ISO/OSI. Lze využívat v Ethernetu běžných protokolů např. IP, TCP, HTTP a FTP a stejně tak i služeb jako například webserver. EtherCAT je považován v současnosti za nejrychlejší průmyslovou ethernetovou sběrnici.Výhodou EtherCATu je i vlastnost hot connect, kdy lze zařízení odpojovat i připojovat za plného provozu a tato jsou okamžitě po připojení plně funkční. [37],[38] “EtherCAT využívá metodu FMMU (Fieldbus Memory Management Unit): v každé vstupní a výstupní jednotce se extrahují data adresovaná pouze této jednotce, zatímco telegram pokračuje se zpožděním pouze několika nanosekund k dalšímu zařízení. Vstupní data jsou vkládána na vyhrazená místa v datovém telegramu.” (Stloukal, 2007)
16
3
Popis modelu
Výukový model s motory byl vytvořen firmou RWetc s.r.o. Obsahuje čtyři synchronní servo motory Schneider Electric ILA2E571TB1A0. Dva motory tvoří vždy společný pár, přičemž jeden z motorů má vždy za úkol pohybovat se základnou druhého motoru po šroubovici. Druhý motor ovládá pohyb ozubeného kola. Motory jsou připojeny pomocí sběrnice EthetCAT na PLC Beckhoff, které je řízeno průmyslovým počítačem. Další možností ovládání motoru je připojení přes sériovou průmyslovou sběrnici RS 485. Model je dále vybaven referenčními spínači, které jsou umístěny v pracovním prostoru šroubovic a slouží k nastavení referenční polohy. Za oběma z nich je umístěn dále i bezpečnostní koncový spínač, který motor zastaví a nedovolí mu pokračovat dále ve směru gumových dorazů. Ozubená kola jsou vyrobena z tvrzeného polystyrenu a jsou výměnná. Tento lehce deformovatelný materiál, kol spolu s ochranným krytem z průhledného plastu, zajištují bezpečnost při práci s modelem.
Obrázek 3.1 Model se synchronními servo-motory, zdroj: vlastní fotografie
17
Diagram 3.1 Schéma propojení zařízení
18
3.1 Použité synchronní servo-motory 3.1.1 Definice „Servomotor zkráceně servo je motor pro pohony (většinou elektrické, ale existují také hydraulická, pneumatická či dokonce parní serva), u kterých lze na rozdíl od běžného motoru nastavit přesnou polohu natočení osy. Ovládají se jím například posuvy u CNC strojů, nastavení čtecí hlavičky u pevného disku. Všechny RC (Radio control) modely používají malá modelářská serva. Servo také často pracuje na podstatně menších otáčkách, než je pro daný typ stroje obvyklé. V širším slova smyslu je servomotorem jakýkoli
motor
sloužící
k
motorickému
řízení
polohy
nahrazující
práci
člověka.“(Wikipedia.org, 2011)
3.1.2 použitý motor ILA2E V modelu jsou použity motory Schneider Electric ILA2E 571TB1A0. Toto označení lze rozklíčovat dle manuálu výrobce a tento motor tedy identifikujeme jako: •
servo motor
•
napájení stejnosměrným napětím 24 - 48V
•
komunikační sběrnice EtherCAT
•
velikost 57 mm
•
délka motoru
•
vinutí pro vysokou rychlost a nízký kroutící moment
•
konektor na plošném spoji
•
jednootáčkový encoder
•
bez zádržné brzdy
•
bez převodovky
19
Obrázek 3.2 Rozbor označení motoru, zdroj [25]
Důležité je, že se nejedná o pouhý synchronní motor, ale o takzvaný Lexium Integrated Drive. To znamená, že se jedná o zařízení, které obsahuje nejen servo motor, ale i integrovaný pohon. Integruje v sobě tedy komunikační interface, řídící elektroniku, napájecí část a volitelně i zádržnou brzdu. „Smyslem integrace elektroniky pohonu do pláště motoru je úspora kabeláže, snížení nároků na rozvaděčový prostor a snížení nákladů na montáž. Tyto pohony jsou určeny pro decentralizované pohonné systémy na strojích a zařízeních ve všech průmyslových oborech.“ (regulacni-pohony.cz, 2011)
20
Motor je vybaven integrovanou bezpečností funkcí STO (IEC 61800-5-2), umožňující pro kategorii 0 zastavení obdobně jako pro IEC 60204-1 bez externího napětového (napájecího) stykače. Pro kategorii 0 není tedy nutné přerušit napájecí napětí pro zastavení motoru. To snižuje systémové náklady a zároveň zkracuje dobu odezvy. [25]
Obrázek 3.3 Schéma vnitřních PINů a konektorů motoru, zdroj [25]
•
Pin CN5.1 a CN5.2 - funkce STO („Safe Torque Off“, IEC/EN 61800-5-2)
•
Pin CN6 - pokud je zasunut Jumper, mechanicky zabraňuje připojení STO vodiče do konektoru CN5 a STO ochrana je v tomto případě vyřazena
Obrázek 3.4 Znázornění vyřazení STO ochrany, zdroj [25]
21
Obrázek 3.5. Součásti a rozhraní motoru, zdroj [25]
(1)
AC synchronní servo motor
(2)
zádržná brzda (volitelná)
(3)
encoder
(4)
pouzdro pro elektroniku
(5)
gumová krytka s těsněním
(6)
gumová krytka s těsněním a vstupem pro kabely
(7)
vstupně/výstupní krytka s průmyslovými konektory
(8)
přepínače pro nastavení
(9)
boční kryt
(10)
horní kryt
(11)
horní kryt s průmyslovými konektory pro napájecí napětí a vstupně/výstupním připojením pro průmyslovou sběrnici
(12)
konektory elektrického rozhraní 22
3.2 Koncové a referenční spínače Koncové spínače jsou bezpečnostní opatření, kdy po sepnutí spínače nastane předem nastavená událost, nejčastěji zastavení, popřípadě úplné vypnutí zařízení. Referenční spínač je indikátor tzv. referenční polohy. Využívá se například pro nastavení nulové (nebo libovolně jiné) polohy. Tím dá systému informaci, že se motor fyzicky nachází na určité zadané poloze, nastaví tuto polohu jako nulovou (či eventuelně libovolnou jinou) a ten potom může vykonávat například dané pohybové úlohy.
3.3 Energetický řetěz Pro ochranu vodičů vedoucích mezi jednotlivými servomotory, zde tedy ethernetových kabelů, byl výrobcem modelu zvolen tzv. energetický řetěz. „Pro svou jednoduchost, originalitu a snadnou montáž se tyto řetězy stávají mezi konstruktéry stále oblíbenějšími.“(Beneš, 2006)
Obrázek 3.5 Energetický řetěz, zdroj [17]
Jedná se o vzájemně propojené plastové články, které mají dutý vnitřní prostor. V tomto prostoru jsou umístěny vodiče, které jsou takto chráněny od vnějších mechanických vlivů. Druhou funkcí energetického řetězu je umístění vodičů v prostoru. Běžnou manipulaci, zde např. změnou polohy motoru, by docházelo k neřízenému pohybu vodičů. Vedením v energetickém kabelu je zajištěno, že se vodiče tažením nedostanou na místa, kde by 23
mohly být způsobeny problémy, jako zaseknutí, nebo i perforace obalu kabelu, která by vedla k přerušení vodiče a nefunkčnosti modelu, respektive přerušení komunikace s jedním, nebo více motory, popř. snímači.
24
Použité řídící a komunikační prvky
4
4.1 Použité IPC Pro řízení modelu bylo použito IPC od německého výrobce Beckhoff. Jedná se konkrétně o model C6915-0000. Tento model je v konfiguraci: •
procesor Intel Atom o frekvenci 1,1 GHz
•
operační pamět RAM 1GB DDR2
•
integrovaná grafická karta Intel GMA 500 s DVI-D konektorem
•
dva Ethernetové adaptéry specifikace 10/100/1000BASE-T connector
•
diskový prostor 64 MB Compact Flash card
•
4 porty USB 2.0
•
stejnosměrné napájení 24V
•
operační systém Microsoft Windows CE
[18]
Obrázek 4.1 IPC, zdroj [18]
25
4.2 Použitý Coupler a I/O moduly 4.2.1 Coupler Pro sestavu s IPC a modelem byl použit Coupler značky Beckhoff. Hlavním účelem jeho použití je možnost připojení dalších ovládacích prvků, nebo výstupních indikátorů k modelu pomocí I/O modulů. Model použitého Coupleru je Beckhoff EK1100.
Jedná se o Coupler pro sběrnici
EtherCAT.
Obrázek 4.1 Coupler, zdroj [19]
Toto zařízení je jakýmsi komunikačním mostem mezi zařízeními v síti používající EtherCAT a terminály k němu připojenými. Je vybaven dvěma RJ45 konektory. Tyto jsou je určeny pro komunikaci po sběrnici EtherCAT. Horní konektor je vstupem, zatímco spodní výstupem. Data tedy po příchodu na EtherCATový vstup pokračují dále na E-BUS sběrnici a terminály na ní připojené a z nich se vrací na EtherCATový výstup a z něj případně dále pryč. 26
Obrázek 4.2 Schéma komunikace coupleru, zdroj [19]
S terminály komunikuje Coupler pomocí sběrnice E-Bus. Připojit k němu lze tedy libovolný terminál vybavený E-bus konektorem. [19]
4.2.2 Bus Terminály Základní funkce modelu je možno ovládat pomocí jednoduchého připravku s přepínači a stavovými diodami. Avšak k tomu, aby se dal model takto ovládat, je potřeba zařízení, které zajisté propojení modelu s připravkem. Za tímto účelem jsou ke coupleru připojeny Bus Terminály společnosti Beckhoff. Jednotlivé terminály i coupler jsou namontovány na liště (standart DIN EN 50022). Tato lišta má výhodu v jednoduché instalaci zařízení, nevyžadující nářadí. Coupler, či terminál jednoduše nacvakneme na lištu. [20] Pro ovládání digitálních vstupů je použit model EL1008. Jedná se o modul s osmi vstupy, z toho každý je vybaven vlastní stavovou diodu, která je umístěna ve vrchní části terminálu. Vodič do vstupu připojíme jednoduše stlačením jazýčkovité západky v otvoru na vstupem. Úroveň krytí je IP20. Napětová úroveň pro logické hodnoty “1“ a “0“ následuje standart IEC 61131-2 [21]. Pro logickou 0 se tedy jedná o rozsah -3 až +5V,
27
zatímco pro logickou 1 jde o +15 až +30V. Na každý z těchto vstupů je připojen jeden přepínač z ovládacího přípravku. [22]
Obrázek 4.3 Terminál EL1008, zdroj [22]
Pro možnost indikace je stavů, nebo změny proměnné je použit terminál EL2008. Jedná se o modul s osmi výstupy, z toho každý je vybaven vlastní stavovou diodu, která je umístěna ve vrchní části terminálu. Připojení vodiče do výstupu jsou spolu s úrovní krytí IP20 shodné s terminálem EL1008. Z vnějšího pohledu jsou totiž oba terminály totožné. Liší se tedy samozřejmě funkcí vstup/výstup, ale manipulace s oběma moduly je shodná. Maximální výstupní proud je 0,5A, přičemž každý výstup odolný vůči zkratu. Na každý z těchto výstupů je připojena jedna LED z ovládacího přípravku.[23]
28
Obrázek 4.4 Terminál EL2008, zdroj [23]
Dále jsou nebo na liště kromě coupleru a těchto dvou digitálních terminálů ještě terminály EL3058 (analogový vstup), EL4008 (analogový výstup) a EL7041 (terminál pro krokové motory). Tyto terminály jsou použity pro aplikaci na jiný model v učebně, nebudu je tedy blíže popisovat, neboť s mou prací nesouvisí. Celou sestavu terminálů je nutné zakončit záslepkou, která funguje jako zakončení sběrnice. V našem případě je použit model EL9011.[24]
29
5
Implementace
Tato kapitola popisuje vlastní vývoj aplikací pro řízení. Podrobně uvádí nastavení nutná pro korektní funkci zařízení. Následuje popis komponent využívaných v řešených aplikacích a jejich konfigurace pro použití v konkrétních řešeních.
5.1 Instalace souborů a knihoven
Před započnutím vlastní práce musíme zjistit, které knihovny a další soubory budeme potřebovat. Tyto musíme naistalovat, popř. nakopírovat do daných adresářů. Uváděné cesty platí pro standartní instalaci TwinCATu na disk C:\. V případě, že z nějakého důvodu nastavíme jinou cestu pro instalaci TwinCATu, je také nutné pochopitelně přizpůsobit cesty pro instalace souborů a knihoven. V našem případě je nutné zkopírovat .xml soubor od výrobce servomotorů Schneider. Tento soubor umožní TwinCATu rozpoznat dané zařízení a provést jeho prvotní konfiguraci, dle dat z .xml souboru. Tento soubor je ke stažení na adrese [34]. Po stažení rozbalíme archiv a přidáme .xml soubory do složky C:/TwinCAT/IO/EtherCAT. Pro řešené příklady dále potřebujeme knihovny TcMc2 a TcFlyingSaw. Knihovnu TcMc2 pro ovládání pohybu přidáme do složky C:\TwinCAT\Plc\Lib. Knihovna TcFlyingSaw pro využití funkce letmé pily je do TwinCATu nahrána přes její instalátor. Vybereme tedy cestu pro instalaci, v případě standartní instalace (TwinCAT ve složce C:/TwinCAT) je již cesta předpřipravena a pouze ji potvrdíme. Po instalaci knihoven je možné je přidat do PLC projektu, což provedeme na záložce Resources-Library manager, kde je po klikutím pravým tlačítkem myši nad seznamem připojených knihoven vyvolána nabídka. Zvolíme tedy první položku Addional Library, vybereme požadovanou knihovnu a volbu potvrdíme. Tímto postupem připojíme všechny potřebné knihovny.
30
Obrázek 5.1 Připojení knihoven, zdroj: screenshot aplikace TwinCAT
Pokud chceme zjistit jaké funkce a funkční bloky knihovna obsahuje, jednoduše na ní poklepeme levým tlačítkem myši. Poté vybereme např. funkční blok z knihovny a v pravém okně je nám zobrazen schémat vstupů a výstupu. V horním okně potom krátký popis a datové typy jednotlivých vstupních a výstupních proměnných.
Obrázek 5.2 Náhled knihovny, zdroj: screenshot aplikace TwinCAT
31
5.2 Nastavení System Manageru 5.2.1 Základní konfigurace Při tvorbě nového konfiguračního souboru začneme v našem případě vyhledáním zdrojového zařízení. Zvolíme položku SYSTEM – Configuration a pomocí tlačítka Choose target vybereme poté ve vyvolaném dialogovém okně zdroj, nebo vyhledáme nový pomocí tlačítka Search(Ethernet).
Obrázek 5.3 Připojení k IPC, zdroj: screenshot aplikace TwinCAT
Při hledání nového zdroje se nám otevře dialog, který umožní vyhledání všech zařízení v dané síti. Je tedy nutné nastavit ethernetový adaptér daného zdrojového zařízení do stejné sítě. Pokud máme správně nastavenou síťovou konfiguraci, tak se po prohledání sítě, vyvolané stiskem tlačítka Broadcast Search zobrazí v tabulce všechna nalezená zařízení. V našem případě se jedná o IPC, které je identifikováno názvem CP_0DE44C, další možností je identifikace podle IP adresy zařízení. Po uložení daného konfiguračního souboru nám zústane vybraný zdroj uložen jako výchozí. V případě potřeby jej však můžeme kdykoliv změnit, například v případě změny jména zařízení, nebo výměny za jiný kus. Z tohoto vyplývá přenositelnost konfigurace.
32
Obrázek 5.4 Konfigurace připojení, zdroj: screenshot aplikace TwinCAT
Po připojení ke zdroji rozbalíme záložku I/O - Configuration a pravým tlačítkem zvolíme na položce I/O Devices volbu Scan Devices.
Obrázek 5.5 Scan zařízení, zdroj: screenshot aplikace TwinCAT
System manager poté projde vybranou sběrnici a upozorní na nalezená zařízení. V případě motorů se nás zeptá, zda chceme přiřadit k nalezeným motorům osy v NC konfiguraci. 33
Toto potvrdíme a poté máme již základní konfiguraci hotovou. V případě, že chceme provádět nastavení a změny položek, pohybujeme se v režimu Config Mode. Pro ovládání os volíme režim Run Mode. Pokud provedeme změnu v konfiguraci, nebo otevřeme novou, je třeba ji pomocí položky Activate configuration zapsat do motorů.
Obrázek 5.6 Nastavení modu: screenshot aplikace TwinCAT
5.2.2 Nastavení scaling factoru Pro účely přesného ovládání je třeba nastavit v konfiguraci tzv. scaling factor, tedy měřítko. Jeho hodnotu vypočteme podle vztahu scaling factor = 1 D position scaling D mechanical system b
c
kde position scaling reprezentuje počet kroků (impluzů) na jednu otáčku pro daný typ motoru. Mechanical system potom reprezentuje míru nějaké reálné hodnoty (délka, úhel, apod.) na jednu otáčku. V našem konkrétním případě odpovídá pro motor ILA2E position scaling 32768 krokům na jednu otáčku. Mechanical system je roven 360˚ na jednu otáčku (odpovídá počtu stupňů na jednu kružnici). [25] Vztah potom v našem případě vypadá takto scaling factor = 1 D 32768 D 360 `
a
což nám ve výsledku určí
scaling factor = 0,010986328125
34
Tuto hodnotu zapíšeme do nastavení konkrétního motoru. Použijeme k tomu záložku pro ovládání NC os, kde vybereme osu a nastavení jejího encoderu – položku Axis číslo_Enc.
Obrázek 5.6 Nastavení scaling faktoru, zdroj: screenshot aplikace TwinCAT
V tomto případě se jedná o motory, které mají na starost otáčení s koly.
5.2.3 Popis manuálního ovládání System Manager umožňuje po konfiguraci ovládat osu manuálně, bez přítomnosti ovládacího programu. Zvolíme tedy záložku NC Configuration, vybereme danou NC úlohu, rozklikneme položku Axis a nakonec zvolíme danou osu, kterou chceme manuálně ovládat. Ovládání je na záložce Online. První co musíme udělat je povolení dané osy. Toho docílíme kliknutím na tlačítko Set v části Enabling. Zde můžeme nastavit povolení osy a povolení pohybu vpřed a vzad.
35
Obrázek 5.7 Povolení osy, zdroj: screenshot aplikace TwinCAT
5.2.4 Popis manuálního spouštění funkcí Na stejné kartě kde jsme využívali záložku Online se nachází záložka Functions. Tato nám umožňuje používat funkce pro řízení pohybu, obdobné, jako lze použít v tvorbě PLC programu. Můžeme tedy osu například pootočit na danou absolutní, relativní, či modulo pozici. Další možností je spustit nekonečný pohyb osy v kladném i záporném směru.
36
Obrázek 5.8 Ovládání funkcí, zdroj: screenshot aplikace TwinCAT
5.2.5 Popis manuálního provedení couplingu Na další záložce pojmenované Coupling nalezneme rozhraní pro manuální coupling. To znamená, že vybereme jednu osu jako Master (řídící osa) a jednu či více os jako Slave (řízená osa/osy). Coupling v podstatě znamená to, že Slave osa se chová v návaznosti na Master osu. Například kopíruje její rychlost, nebo polohu podle zvoleného algoritmu. Chování Slave osy vůči Master ose lze dále nastavit řadou parametrů, např. převodovým poměrem. Takže funkcionalita je opět obdobná s funkčními bloky v PLC programu.
37
Obrázek 5.9 Ovládání couplingu, zdroj: screenshot aplikace TwinCAT
5.2.6 Připojení PLC projektu k System Manageru Program vyvinutý v prostředí PLC Control se velmi jednoduše připojí ke konfiguraci TwinCAT System manageru pomocí volby Append PLC project. Před připojením musí být daný PLC projekt zkompilován a tím vytvořen soubor s příponou .tpy.
Obrázek 5.10 Připojení PLC projektu, zdroj: screenshot aplikace TwinCAT
Pokud již máme připojený projekt, můžeme jej samozřejmě upravit. V případě, že provedeme např. změny související s proměnnými jako hardwarová tlačítka, nebo přidání 38
další osy v projektu, je nutno projekt překontrolovat a aplikovat tím provedené změny na vstupech a výstupech. K tomuto slouží položka Rescan project, kterou vyvoláme pravým kliknutím myši na na název projektu. Stejná nabídka obsahuje i volbu pro odstranění projektu, nebo změnu cesty, kde je projekt umístěn.
Obrázek 5.11 Konfigurace PLC projektu, zdroj: screenshot aplikace TwinCAT
Po připojení projektu jsou načteny a zobrazeny proměnné definované v PLC projektu a v dalším kroku je třeba připojit je k reálným vstupům a výstupům.
Obrázek 5.12 Přiřazení proměnných, zdroj: screenshot aplikace TwinCAT
39
Po stisku tlačítka Linked to.. na kartě Variable se nám otevře dialogové okno s nabídkou možných vstupů, či výstupů, které se vyskytují na daném hardware. System Manager nám sám nabízí jednotlivé vstupy, resp. výstupy. Pokud je již vstup, resp. výstup prolinkován s proměnou z PLC projektu, zmizí z nabídky. Na kartě Online jednotlivých vstupů, či výstupů můžeme sledovat změnu proměnné v reálném čase. Toho lze využít například pro test správného spárování hardwarových tlačítek a softwarových proměnných. Hodnoty lze i zapisovat, nejen pasivně číst. Toto můžeme využít například pro kontrolu zda jsme spárovali proměnnou se správným LED indikátorem.
Obrázek 5.13 Práce s vstupy a výstupy , zdroj: screenshot aplikace TwinCAT
40
5.3 PLC Project, použití knihovny TcMc2 Tato knihovna je nástupcem knihovny TcMc. Je založena na PLCopen specifikaci-funkční bloky pro řízení pohybu V2.0. Pomocí této knihovny je tedy realizováno řízení osy, což znamená v tomto případě ovládání motoru pomocí využití funkčních bloků v knihovně obsažených.
5.3.1 Funkční blok MC_Power Základním funkčním blokem je blok MC_Power.
Obrázek 5.13 Funkční blok MC_Power , zdroj [26]
Pomocí tohoto funkčního bloku lze danou osu softwarově povolit (Enable). Lze osu povolit například jenom v jednom směru (Enable_Positive/Enable_Negative). Tento funkční blok umí také indikovat chybový stav(Error) a zároveň i přinést označení chyby (ErrorID), pro identifikaci problému. Pomocí nastavení BufferMode lze nastavit chování při resetování vstupu Enable. Základní nastavení je mod MC_Aborting, který okamžitě ukončí ostatní procesy.Další možností je použití modu MC_Buffered, který čeká na provedení ostatních příkazů a až poté provede svou činnost. [26] Axis1_Power(
(*název instance FB MC_Power *)
Enable:= Axis1_Enable,
(*proměnná typu BOOL*)
Enable_Positive:= TRUE, (*povolení pohybu v + směru*) Enable_Negative:= TRUE, (*povolení pohybu v - směru*) Override:= 100.0,
(*override nastaveno na 100%*)
BufferMode:= MC_Aborting, Axis:= Axis1);
(*řízená osa*)
41
5.3.2 Funkční blok MC_Stop Pro zastavení osy je určen funkční blok MC_Stop.
Obrázek 5.13 Funkční blok MC_Stop , zdroj [27]
Tento funkční blok zastaví osu dle nastavené brzdící rampy, ale také ji zablokuje pro jakékoliv pohybové příkazy. Hlavní užití tohoto funkčního bloku jsou případy použití, kde je vyžadováno odstavení osy a zabránění jakéhokoliv jejího dalšího pohybu. V případě os propojených couplingem má samozřejmě spuštění MC_Stop na Master ose za následek stejnou akci na ose Slave. Alternativou je funkční blok MC_Halt, který osu pouze zastaví, ale nezablokuje. [27] Axis1_Stop( Execute:= Vbtn_stop1 OR btn03, Axis:= Axis1);
(*spouštěcí proměnná*) (*řízená osa*)
5.3.3 Funkční blok MC_MoveVelocity
Obrázek 5.14 Funkční blok MC_MoveVelocity , zdroj [28]
Pomocí tohoto funkčního bloku můžeme nastavit rychlost na dané ose. Jakmile dosáhne osa nastavené rychlosti, funkčnost bloku je dokončena. Při nastování zvolíme spouštěcí impuls – proměnnou a požadovanou rychlost. Tato rychlost je vždy bezrozměrným číslem, 42
musíme si tedy dát pozor, abychom zvolili hodnotu odpovídající jednotkám rychlosti pro naší aplikaci. Lze také nastavit celou řadu volitelných parametrů, jako např. akcelerace na rychlost, decelerace z rychlosti vyšší na požadovanou, nebo směr pohybu osy.[28] Axis1_MoveVelocity( Execute:= Vbtn_start1,
(*spouštěcí proměnná *)
Velocity:= AxisVel1,
(*rychlost - proměnná*)
Direction:= MC_Positive_Direction, (směr pohybu +) BufferMode:= MC_Aborting, Axis:= Axis1);
(*řízená osa*)
5.3.4 Funkční blok MC_MoveAbsolute
Obrázek 5.15 Funkční blok MC_MoveAbsolute , zdroj [29]
Funkční blok MC_MoveAbsolute používáme pro nastavení osy do absolutní polohy. Absolutní polohou rozumíme polohu, která se v systému vyskytuje unikátně a odpovídá jí jedna jediná fyzická pozice. Například chceme otočit kolo a dostat bod na jeho obvodu na určité místo. Toto místo definujme jako absloutní pozici o hodnotě 30. Použijeme tedy tento funkční blok a jako parametr Position zadáme hodnotu 30. Po provedení tohoto funkčního bloku se kolo nastaví na pozici odpovídající absolutní pozici 30 a tam se zastaví. Pokud bychom zavolali tento funkční blok znovu (se stejnou hodnotou Position = 30), nic se neprovede, neboť činnost, kterou má provést, nelze vykonat. Již byla totiž vykonána. Zjednodušeně se tedy jedná o přesun “na” pozici, na rozdíl od funkčního bloku MC_MoveRelative, který provádí přesun “o”.
43
Dokončení činnosti funkčního bloku signalizuje proměnná Done typu BOOL, která v případě úspěchu nabyde hodnoty TRUE. V případě neúspěchu vrátí Error s kodem chyby.[29] Axis3_MoveAbsolute( Execute:= Vbtn_start3,
(*spouštěcí proměnná *)
Position:=AxisPos3 ,
(*cílová pozice - proměnná*)
Velocity:= 5,
(*rychlost*)
BufferMode:= MC_Aborting, Axis:= Axis3,
(*řízená osa*)
);
5.3.5 Funkční blok MC_MoveRelative
Obrázek 5.16 Funkční blok MC_MoveRelative , zdroj [30]
Na rozdíl od MC_MoveAbsolute operuje funkční blok MC_MoveRelative s relativní pozicí, respektive vzdáleností. Funkčnost je na první pohled podobná, avšak samotná práce s tímto funkčním blokem se liší. Ukažme si to na příkladu, jenž je obdobou příkladu popsaného v MC_MoveAbsolute. Chceme tedy opět otočit kolo a dostat bod na jeho obvodu na určité místo. Při použití tohoto funkčního bloku můžeme postupovat podobně jako u MC_MoveAbsolute, ale místo paramentru Position zadáme hodnotu 30 parametru Distance. Po provedení tohoto funkčního bloku se kolo pootočí o vzdálenost danou hodnotou Distance a zastaví se. Na první pohled je tedy funkce stejná jako u MC_MoveAbsolute. Pokud bychom ale zavolali tento funkční blok znovu, provede se opět stejná činnost. Kolo se tedy otočí znovu o hodnotu 30. [30] Stejně jako u MC_MoveAbsolute se po dokončení nastaví hodnota výstupu Done, nebo Error. Podle toho zda bylo dokončení úspěšné, či nikoliv. 44
Axis1_MoveRelative( Execute:= Vbtn_start4,
(*spouštěcí proměnná *)
Distance:= 30,
(*vzdálenost*)
Velocity:= 45,
(*rychlost*)
BufferMode:= MC_Aborting , Axis:=Axis1 ,
(*řízená osa*)
);
5.3.6 Funkční blok MC_GearIn
Obrázek 5.17 Funkční blok MC_GearIn , zdroj [31]
Funkční blok MC_GearIn se používá pro lineární coupling slave osy k master ose. Slave osa může být připojena k master ose pouze v případě, že master osa nevykonává pohyb. V případě potřeby připojit slave osu za chodu master osy je třeba použít funkční bloky knihovny letmé pily MC_GearInPos, nebo MC_GearInVelo. [31] Axis1_GearIn( Execute:= Vbtn_GearIn,
(*spouštěcí proměnná *)
RatioNumerator:= 1,
(*převodový poměr*)
RatioDenominator:=2 ,
(*převodový poměr*)
Acceleration:= 60 ,
(*akcelerace*)
BufferMode:= MC_Aborting, Master:=Axis1 ,
(*master osa*)
Slave:= Axis2,
(*slave osa*)
); 45
5.3.7 Funkční blok MC_GearOut
Obrázek 5.18 Funkční blok MC_Stop , zdroj [32]
Funkční blok MC_GearOut odpojí slave osu připojenou k master ose. Slave osa se po odpojení nezastaví, ale pokračuje nadále v pohybu. Osa se tedy chová od tohoto okamžiku nezávisle. Zachovává sice například rychlost, kterou získala nastavenou při připojení k master ose, ale nadále již reaguje bez vazby k master ose. Lze ji tedy například zastavit pomocí funkčního bloku MC_Stop, či alternativně MC_Halt. Je ji možno přímo ovládat, což je obvykle při připojení k master ose zakázáno. Lze nicméně nastavit, aby slave osa reagovala na příkazy i po připojení k master ose, ale toto není příliš vhodné. [32] Axis2_GearOut( Execute:= (btn06 AND Axis2.Status.Coupled) OR (Vbtn6 AND Axis2.Status.Coupled) , Slave:= Axis2);
(*spouštěcí proměnná *) (*slave osa*)
46
5.4 PLC Project, použití knihovny TcFlyingSaw
Tato knihovna je určena pro práci s funkcí tzv. letmé pily (flying saw). Tato funkce se využívá v řadě průmyslových aplikací. Její použití nalezneme všude tam, kde je třeba například synchronizovat pohyb materiálu s nástrojem, který s materiálem pracuje (obrábění, řezání, apod.). Příkladem je například stroj na dělení dřevotřískových desek.[36] „V tomto stroji se konstantní rychlostí pohybují rozměrné desky, které je třeba řezat za pohybu materiálu. Pohyb saní s pilou musí být tudíž při řezání synchronizován s pohybem děleného materiálu.“ (Gude, 2000)
5.4.1 Funkční blok MC_GearInPos
Obrázek 5.19 Funkční blok MC_GearInPos , zdroj [33]
MC_GearInPos je funkční blok umožnující připojení slave osy k master ose, v případě, že se master osa pohybuje. Je implementací funkce letmé pily. Slave osa je připojena k master ose přesně v okamžiku kdy dosáhne synchronizační pozice. Od tohoto okamžiku kopíruje pohyb master osy. V našem případě tedy udržuje otáčky slave motoru synchronně s master motorem. Využití této funkce nám zajistí bezpečnou realizaci zaklesnutí zubů do sebe. Nezáleží na tom, zda jsou zuby zaklesnuty, nebo zda jsou od sebe ozubená kola vzdálena na libovolnou vzdálenost. V okamžiku, kdy dojde k synchronizování je jejich běh propojen, až do okamžiku, kdy pomocí funkčního bloku MC_GearOut dojde k ukončení závislosti slave osy na master ose. [33]
47
Při použití MC_GearInPos musíme provést nastavení pozic pro synchronizaci. Proměnou MasterSyncPosition definujeme polohu pozici pro synchronizaci pro master osu. Pokud chceme provést synchronizaci po spuštění funkčního bloku nastavíme do této proměnné pozici, na které se právě master osa nachází. Hodnotu aktuální polohy nám předá volání Axis1.NcToPlc.ActPos. To znamená, že synchronizace bude provedena na libovolné aktuální pozici, není zde tedy závislost např. na konkrétní absolutní pozici. Pomocí proměnné SyncLength můžeme nastavit požadovanou polohu pro přesazení kol vůči sobě, za účelem zaklesnutí kol do sebe.SlaveSyncPosition opět získá aktuální pozici pomocí Axis2.NcToPlc.ActPos. Proměnnou SyncLength odečítáme, osa se pohybuje vůči master ose v záporném směru. Ze stejného důvodu odečteme i součet aktuálních modulo pozic ((Axis1.NcToPlc.ModuloActPos + Axis2.NcToPlc.ModuloActPos). MasterSyncPosition := Axis1.NcToPlc.ActPos + SyncLength; SlaveSyncPosition:=Axis2.NcToPlc.ActPos - SyncLength (Axis1.NcToPlc.ModuloActPos + Axis2.NcToPlc.ModuloActPos);
Vzorový kod: Axis_GearInPos( Execute:= btn05 OR Vbtn5 AND NOT Axis2.Status.Coupled, (*spouštěcí proměnná *)
RatioNumerator:= -1,
(*převodový poměr*)
RatioDenominator:= 1,
(*převodový poměr*)
MasterSyncPosition:= MasterSyncPosition, (*synchronizační pozice master*) SlaveSyncPosition:= SlaveSyncPosition, (*synchronizační pozice master*) Acceleration:=180, (*akcelerace*) SyncMode:= SyncMode,
(*mod synchronizace*)
Master:= Axis1,
(*master osa*)
Slave:= Axis2);
(*slave osa*) 48
6
Závěr
Cílem této bakalářské práce bylo prostudovat a popsat průmyslový počítač a sběrnici EtherCAT. Dále bylo cílem oživení modelu a příprava pro jeho použití ve výuce za pomoci vzorových programů. Model byl úspěšně oživen a na základě konzultací s vedoucím práce byla vypracována sada vzorových úloh včetně vzorového řešení. Tyto okomentované vzorové úlohy jsou uloženy na CD, které je přiloženo k práci. Stejně tak jsou na CD uloženy zadání úloh. Podařilo se úspěšně zprovoznit synchronizovaný běh ozubených kol, což je využito v demostrativní řídící úloze. Dále byl vytvořen program s vizualizací, přes kterou je model možné ručně ovládat. S vedoucím práce Ing. Bílkem jsme úspěšně zprovoznili přistup přes vzdálenou laboratoř LABLINK. Studenti budou tedy moci model ovládat i z domova. Zpětnou vazbu jim bude poskytovat kamera přenášející obraz modelu. Implementační část práce jim poskytuje informace potřebné pro jejich samostatnou práci. Studenti tedy budou moci pracovat na modelu, který se blíží zařízením používaným v technické praxi a zároveň se prací s průmyslovým počítačem seznámí s posledními trendy v řídící technice. Úspěšným oživením modelu a vytvořením řídících úloh byly cíle bakalářské práce splněny.
49
Literatura [1]
Overview Siemens Simatic IPC. [online]. Automation Siemens [cit. 2012-05-28]. Dostupné z: http://www.automation.siemens.com/mcms/pc-basedautomation/en/industrial-pc/highlights/Pages/home.aspx
[2]
Beckhoff Industrial PC. BECKHOFF [online]. [cit. 2012-05-28]. Dostupné z: http://www.beckhoff.com/english/industrial_pc/default.htm?id=344315987734
[3]
Industrial PC. [online]. [cit. 2012-05-28]. Dostupné z: http://en.wikipedia.org/wiki/Industrial_PC
[4]
Beckhoff. [online]. DYGER [cit. 2012-05-28]. Dostupné z: http://www.dyger.cz/czech/dyger/beckhoff.htm
[5]
Windows CE. [online]. Wikipedia [cit. 2012-05-28]. Dostupné z: cs.wikipedia.org/wiki/Windows_CE
[6]
Windows CE. [online]. Wikipedia [cit. 2012-05-28]. Dostupné z: http://en.wikipedia.org/wiki/Windows_CE
[7]
Systém Windows CE otázky a odpovědi. [online]. Microsoft [cit. 2012-05-28]. Dostupné z: http://support.microsoft.com/kb/158182/en-us]
[8]
KAŠPÁREK, Ladislav. DYGER S.R.O. TWINCAT SYSTEM: instalace, konfigurace, základy tvorby programů [CD]. 2011. vyd. [cit. 2012-05-28].
[9]
TwinCAT System Manager. BECKHOFF [online]. [cit. 2012-05-28]. Dostupné z: http://www.beckhoff.com/english/twincat/SysMang.htm?id=159876032042705
[10]
URBAN, Luboš. Programování PLC podle normy IEC EN 61131-3 – víc než jednotné jazyky. Automa:časopis pro automatizační techniku [online]. roč. 2005, číslo 02 [cit. 2012-05-28]. Dostupné z: http://www.odbornecasopisy.cz/index.php?id_document=30310
[11]
TwinCAT PLC – IEC 61131-3 Multi-PLC on the PC. BECKHOFF [online]. [cit. 2012-05-28]. Dostupné z: http://www.beckhoff.com/english.asp?twincat/twincat_plc.htm 50
[12]
Member area. EtherCAT Technology group: [online]. [cit. 2012-05-28]. Dostupné z: http://www.ethercat.org/en/members.php
[13]
STLOUKAL, Jiří. Beckhoff na veletrhu Amper 2007: EtherCAT. Automa: časopis pro automatizační techniku [online]. roč. 2007, číslo 03 [cit. 2012-05-28]. Dostupné z: http://www.odbornecasopisy.cz/index.php?id_document=34076
[14]
Servomotor. Wikipedia [online]. [cit. 2012-05-28]. Dostupné z: http://cs.wikipedia.org/wiki/Servomotor
[15]
Kompaktní servopohony ILA (IFA). [online]. [cit. 2012-05-28]. Dostupné z: http://www.regulacni-pohony.cz/data/komp_ifa.html
[16]
BENEŠ, Jaroslav. Energetické řetězy – správné navrhování systému (1). Elektro: odborný časopis pro elektrotechniku [online]. roč. 2006, číslo 01 [cit. 2012-05-28]. Dostupné z: http://www.odbornecasopisy.cz/index.php?id_document=26602
[17]
Easy Chain SÉRIE E03 [online]. Heinnlich [cit. 2012-05-28]. Dostupné z: http://www.hennlich.cz/produkty/flexibilni-privody-energii-medii-a-datenergeticke-retezy-easy-chain-145/serie-e03.html
[18]
C6915 | Control cabinet Industrial PC with Intel® Atom™. BECKHOFF [online]. [cit. 2012-05-28]. Dostupné z: http://www.beckhoff.com/english.asp?industrial_pc/c6915.htm
[19]
Dokumentace: Coupler EK1100. BECKHOFF [online]. [cit. 2012-05-28]. Dostupné z: http://download.beckhoff.com/download/Document/BusTermi/BCoupler/EK110x_ EK15xxen.chm
[20]
DIN rail. [online]. Wikipedia [cit. 2012-05-28]. Dostupné z: http://en.wikipedia.org/wiki/DIN_rail
[21]
Introduction into IEC 61131-2 Equipment Requirements and Tests. PLCOpen [online]. [cit. 2012-05-28]. Dostupné z: http://www.plcopen.org/pages/tc1_standards/iec_61131_2/
51
[22]
EL1008 | 8-channel digital input terminal 24 V DC, 3 ms. BECKHOFF: information system [online]. [cit. 2012-05-28]. Dostupné z: http://www.beckhoff.com/english/ethercat/el1008.htm?id=1989211831288
[23]
EL2008 | 8-channel digital output terminal 24 V DC, 0.5 A. BECKHOFF: information system [online]. [cit. 2012-05-28]. Dostupné z: http://www.beckhoff.com/english/ethercat/el2008.htm?id=1989811845011
[24]
EL9011 | End cap. [online]. BECKHOFF: information system [cit. 2012-05-28]. Dostupné z: http://www.beckhoff.com/english/ethercat/el9011.htm?id=1994211655908
[25]
LA2E EtherCAT Lexium Integrated Drive Product manual V2.02, 03.2012. [online]. [cit. 2012-05-28]. Dostupné z: http://www.schneiderelectric.cn/downloads//8525773E00058BDC/All/288C558D89DE06AC8525776E0 06BF2C1/$File/ILA2E_EtherCAT_Manual_V202_EN.pdf
[26]
FUNCTION_BLOCK MC_Power. BECKHOFF: information system [online]. [cit. 2012-05-28]. Dostupné z: http://infosys.beckhoff.com/content/1033/tcplclibmc/html/tcplclibmc_mc_power.ht m?id=13594
[27]
TwinCAT PLC Library: MC Library 2: MC_Stop. BECKHOFF: information system [online]. [cit. 2012-05-28]. Dostupné z: http://infosys.beckhoff.com/content/1034/tcplclibmc2/html/blocks/tcplclibmc_stop. htm?id=13786
[28]
TwinCAT PLC Library: MC Library 2: MC_MoveVelocity. BECKHOFF: information system [online]. [cit. 2012-05-28]. Dostupné z: http://infosys.beckhoff.com/content/1034/tcplclibmc2/html/blocks/tcplclibmc_mov evelocity.htm?id=13782
52
[29]
TwinCAT PLC Library: MC Library 2: MC_MoveAbsolute. BECKHOFF: information system [online]. [cit. 2012-05-28]. Dostupné z: http://infosys.beckhoff.com/content/1033/tcplclibmc2/html/blocks/tcplclibmc_mov eabsolute.htm?id=13670
[30]
TwinCAT PLC Library: MC Library 2: MC_MoveRelative. BECKHOFF: information system [online]. [cit. 2012-05-28]. Dostupné z: http://infosys.beckhoff.com/content/1033/tcplclibmc2/html/blocks/tcplclibmc_mov erelative.htm?id=13671
[31]
TwinCAT PLC Library: MC Library 2: MC_GearIn. BECKHOFF: information system [online]. [cit. 2012-05-28]. Dostupné z: http://infosys.beckhoff.com/content/1033/tcplclibmc2/html/blocks/tcplclibmc_geari n.htm?id=13689
[32]
TwinCAT PLC Library: MC Library 2: MC_GearOut. BECKHOFF: information system [online]. [cit. 2012-05-28]. Dostupné z: http://infosys.beckhoff.com/content/1033/tcplclibmc2/html/blocks/tcplclibmc_gear out.htm?id=13691
[33]
TwinCAT PLC Library: Flying Saw - Function Blocks: MC_GearInPos. BECKHOFF: information system [online]. [cit. 2012-05-28]. Dostupné z: http://infosys.beckhoff.com/content/1033/tcplclibflyingsaw/html/tcplclibncflyingsa w_mc_gearinpos.htm?id=13558
[34]
Lexium ILA2E EtherCAT - EDS file. [online]. [cit. 2012-05-28]. Dostupné z: http://www.global-download.schneiderelectric.com/852577A4005D7372/all/BD29692C6AB02FCC852578000066EF9E? OpenDocument&L=DE&p=2228&idxUrl=repositoryGermany\\index.nsf&XID=22 5305&XHOST=http://logi5.xiti.com/&HOSTIP=http://www.globaldownload.schneider-electric.com/&OTrSer=http://www.download.schneiderelectric.com/
[35]
GUDE, Ulrich. Regulátor pohonu plní funkce PLC: Servoměnič 9300 Servo-PLC v aplikacích. Automa:časopis pro automatizační techniku [online]. roč. 2000, číslo 06 [cit. 2012-05-28]. Dostupné z: http://www.odbornecasopisy.cz/index.php?id_document=27747 53
[36]
TwinCAT PLC Library: Flying Saw: Overview. BECKHOFF: information system [online]. [cit. 2012-05-28]. Dostupné z: http://infosys.beckhoff.com/content/1033/tcplclibflyingsaw/html/tcplclibncflyingsa w_intro.htm?id=13556
[37]
EtherCAT zůstává nejrychlejší průmyslovou ethernetovou sběrnicí. Automa: časopis pro automatizační techniku [online]. roč. 2008, číslo 07 [cit. 2012-05-28]. Dostupné z: http://www.odbornecasopisy.cz/index.php?id_document=37529
[38]
EtherCAT Technology Group [online]. [cit. 2012-05-28]. Dostupné z: http://www.ethercat.org/
[39]
SIEMENS AG. SIMATIC IPC: The More Industrial PC Brochure [online]. 2011 [cit. 2012-05-29]. Dostupné z: http://www.automation.siemens.com/salesmaterialas/brochure/en/brochure_simatic_industrial_pc_en.pdf
54