dr. Bausz Imre
1. Bevezetés
Napjainkat sokszor az információs társadalom
korszakaként emlitik és természetessé vált,
hogy számítógéppel mindent meg lehet oldani.
Egy adott területen azonban a megoldás részletei (a
„hogyan") a lehetséges változatok miatt még szakemberek
elõtt sem nyilvánvalóak. Mozgásvezérlõk
területén a világon vezetõnek tekintett INDRAMAT
cég különbözõ mozgásvezérlési
feladatokra két komplett, jól átgondolt számítógépes
mozgásvezérlõ rendszert fejlesztett ki:
· az MTC200-ast, és
· a VisualMotion-t,
amelyekhez a szoftverektõl a motorokig minden
rendelkezésre áll. A két rendszerben közös,
hogy a számítógépbe épített kártya
SERCOS (SErial Realtime COmmunications System) kommunikációs
fíber optikus gyûrûn keresztül csatlakozik az intelligens
digitális hajtásvezérlõkhöz. A két
rendszer különbözõsége alkalmazás orientáltságukban
rejlik.
Az MTC200 rendszerben a számítógépbe
építendõ modul CNC kártya, amelynek firmvere
lényegében G-kódban irt programok interpretere. A
PC-n futó GUI (Graphical User Interface) szoftver a rendszer kiépítettségét
megadó paraméterezés után nem csak G-kódú
programok fejlesztõ környezete, de kezelõ felület
is. Az MTC200 rendszerrel épített számítógépes
mozgásvezérlõk egyidejûleg több szerszámgépet
(teljes gyártó sort) képesek vezérelni. A rendszerben
maximálisan 32 intelligens digitális hajtás vezérlõ
(és ugyan ennyi villamos motor) lehet.
A VisualMotion rendszerben a számítógépbe
CLC kártya építendõ, amelynek GPS firmvere
(a kártya operációs rendszere) „CLC nyelv"-en megirt,
s lefordított (compiler-elt) mozgás vezérlõ
programok végrehajtására képes.
A kialakítandó mozgásvezérlõ
konfigurációját tekintve mindkét rendszer rendkívül
flexibilis. Velük nem csak új gépkonstrukció
számára építhetõ gyorsan számítógépes
mozgásvezérlõ, de segítségükkel
korábbi berendezések is a legkorszerûbb szintre emelhetõk.
A rendszerek innovatív alkalmazásával minõségileg
versenyképes termékeket elõállító
termelõegységek hozhatók létre.
A két rendszer közül jelen tanulmányban
a VisualMotion rendszer esetén a „hogyan"-t szeretnénk
megvilágítani. A leírásban a hangsúly
a számítógéppel kapcsolatos részeken
van. A részletek a számítógépek belsejét
kevésbé ismerõk számára riasztónak
tûnhetnek, az elkészült mozgásvezérlõ
kezelése azonban felhasználóbarát. A
VisualMotion minden komponensérõl részletes információt
az INDRAMAT GmbH által kiadott dokumentációkban találhatunk
(ld. irodalom).
A PC-n Windows alatt futó VisualMotion Toolkit
(VMT) szoftver mindazon szolgáltatásokat nyújtja,
amelyek a teljes mozgásvezérlõ rendszer létrehozásához
szükségesek. VisualMotion-nal megmunkáló- és
feldolgozó gépek, automaták, robotok és
még sok más, hajtást igénylõ berendezés
számára építhetõ számítógépes
mozgásvezérlõ. Egy CLC kártya maximálisan
40 intelligens digitális hajtás vezérlõt (és
ugyan annyi villamos motort) képes vezérelni.
2. A VisualMotion rendszer áttekintése
A VisualMotion megnevezés tágabb értelemben
nem csak a mozgásvezérlõ programok létrehozására
alkalmas Windows alapú szoftvert takarja, hanem az összes komponenst,
amelyek a mozgásvezérlõ létrehozásához
szükségesek. E komponensek közé tartozik a számítógépbe
építendõ CLC kártyától kezdve
a kommunikációt megvalósító részeken
át az összes külsõ komponens is.
A VisualMotion rendszerrel létrehozható
alkalmazott mozgásvezérlõ a saját operációs
rendszerrel rendelkezõ CLC vezérlõ kártyából,
a VisualMotion Toolkit programból, DDE Server-bõl (Windows-os
alkalmazások közötti kommunikációs protokoll),
fíber optikus gyûrûn SERCOS protokoll szerint kommunikáló
digitális villamos hajtásokból épül fel.
1. ábra
Az 1. ábra VisualMotion rendszerrel felépített mozgásvezérlõt szemléltet. A rendszerhez opcionálisan kézi vezérlõ is csatlakoztatható.
3. A mozgásvezérlõ rendszer hardver komponensei és kommunikációjuk
A CLC kártyával épített mozgásvezérlõ hardver szempontból két, helyileg is elkülönülõ részét: a számítógépes vezérlõt és a digitális hajtásokkal felszerelt vezérlendõ objektumot fíberoptikus kommunikációs gyûrû kapcsolja egybe. A mozgásvezérlõ számítógépes része hardver szempontból teljesen független a vezérlendõ objektumtól, hajtásvezérlõ részét viszont teljes mértékben a vezérlendõ objektum határozza meg. A hajtásvezérlõ rész megtervezése (a komponensek teljesítmény-igénytõl, nyomatéktól, sebességtõl, pontosság-igénytõl, stb. függõ kiválasztása, összeállítási tervek elkészítése) alkalmazásonként egyedi és munkaigényes.
3.1 A CLC vezérlõ kártya
A CLC kártya a VisualMotion-nal épített
mozgásvezérlõ lelke, négy kiviteli változata
közül kettõ IBM kompatíbilis számítógépekbe
(CLC-P01, CLC-P02), egy VME buszos architektúrájú
gépbe (CLC-V) és egy közvetlenül DDS típusú
Indramat intelligens hajtásvezérlõbe (CLC-D) építhetõ.
A 2. ábrán CLC-P01.1 kivitelû kártya
képe látható.
A kiviteli változat azonban nem érinti
a mûködési elvet, a továbbiakban IBM PC-s környezetet
tételezünk fel, s erre utal az 1. ábra is.
2. ábra
A VisualMotion rendszer felépítését,
mûködését könnyebb megérteni, ha a
CLC kártyára úgy tekintünk, mint egy saját
operációs rendszerrel rendelkezõ önálló
célszámítógépre, amelyet egyszerûbb
mûködtetni, ha van mellette egy kisegítõ hagyományos
számítógép. Ezen a gépen Windows alatt
fut a VisualMotion Toolkit szoftver, amely a CLC-s mozgásvezérlõ
fejlesztõi környezete.
A CLC célszámítógép
processzora a Motorola MC68000-as processzor családhoz tartozik,
rezidens operációs rendszere cserélhetõ
memóriában van. RAM memóriája saját
teleppel védett, egy része duál-portos, amelyhez a
PC is hozzáfér. Az ISA buszos CLC-P01 kivitelû kártya
a PC alaplapjába dugható, ezen keresztül biztosított
tápfeszültség ellátása és a duál-
portos RAM területéhez való hozzáférés.
A RAM területen van a kártya irányításában
fontos szerepet játszó regiszter tömb és egy
kommunikációs puffer terület.
A CLC kártya „szerver - kliens" elven kommunikál
a VisualMotion Toolkit-tal, vagy más külsõ vezérlõvel.
A kapcsolatban a CLC kártya a szerver, kliensei a VisualMotion Toolkit
vagy más vezérlõ.
A CLC kártyának az ISA buszon kívül
további ki- és bemenetei, illetve csatlakoztatási
lehetõségei vannak. Két soros portja (RS-232,422,485)
közül az egyikhez opcionálisan PC, a másikhoz BT06
típusú kézi vezérlõ csatlakoztatható.
SERCOS kommunikációs fíberoptikus ki- és bemeneti
csatlakozója közé fíberoptikus gyûrûre
kell felfûzni a VisualMotion rendszer intelligens digitális
hajtásvezérlõinek SERCOS-os slave moduljait.
A CLC kártya SERCOS master szerepet is betölt.
Amíg a hagyományos számítógép
„számításának eredményét" a képernyõre,
a CLC célszámítógép a „számítási
eredményt" a SERCOS gyûrûre küldi. A CLC
azonban nem csak küld információt a gyûrûre,
de kap is onnan. Minden egyes átviteli ciklus alatt a CLC kártya
és a hajtásvezérlõk információt
cserélnek.
A hagyományos PC-nek egy „vezérlõ
bemenete" van: a billentyûzete. A CLC-nek három bemenete van:
a duál-portos RAM területe, és a két soros portja.
A billentyûzet és a PC között egyirányú
a kommunikáció, a CLC kártya bemenetein kétirányú.
A CLC három bemenete közül mindig csak egyet lehet aktívvá
konfigurálni. A bemenetek „megfejelt" DDE (Dinamic Data Exchange)
protokoll szerint kommunikálnak. Duál-portos RAM területéhez
a WisualMotion Toolkit fér hozzá. A soros portok közül
az elsõ idegen számítógépen futó
WisualMotion Toolkit protokolljára, a második BTC06 távvezérlõ
protokolljára válaszol.
A PC bekapcsolásakor „normál számítógép"
indulás zajlik: minden részegysége tápfeszültséget
kap, kezdõdik a ROMBIOS program végrehajtása, a kijelölt
drájvrõl az operációs rendszer (pl. Windows’98)
töltõdik a PC RAM-jába, a rendszer „feláll".
A képernyõn látható, hogy parancsot vár,
vagy elindítja a kijelölt programot (pl. VisualMotion Toolkit).
Hasonló a CLC célszámítógép
viselkedése is. Mivel a CLC kártya a PC részegysége
is, tápfeszültséget kap, indul operációs
rendszere (a rezidens GPS firmver). Alap helyzetben aktuális bemenetérõl
(pl. VisualMotion Toolkit) várja, hogy a regiszter tömb megfelelõ
bitjeit beállítsák, amelyek meghatározzák
további mûködését. (ld. késõbb
4.3) A kártya SERCOS kimenetén megkísérli
a 0. kommunikációs fázisból a feljutást
a normál kommunikációs fázisba (4. fázis).
Ahhoz, hogy ez megtörténhessen, a mozgásvezérlõ
konfigurációjának megfelelõ, lefordított
(compilerelt) mozgásvezérlõ programot a PC-bõl
a VisualMotion szoftver segítségével át kell
küldeni a CLC-be és a megfelelõ vezérlõ
regiszter bit értékek beállításával
el kell érni, hogy a GPS futtassa azt.
3.2 Intelligens digitális hajtások
A VisualMotionnal épített számítógépes
mozgásvezérlõkhöz csak olyan hajtások
alkalmazhatók, amelyek bemenete SERCOS interfész. Az Indramat
által gyártott ilyen digitális hajtások hajtásvezérlõkbõl,
s a hozzájuk tartozó motorokból állnak. A hajtásvezérlõket
közös hajtás tápegységrõl látják
el villamos energiával. A kiválasztott egységeknek
egymással kompatibiliseknek kell lenniük.
A VisualMotion rendszerben a hajtásvezérlõk
közül a DIAX03, DIAX04 és az ECODRIVE hajtás-család
tagjai használhatók. Ezek helyi intelligenciája képes
értelmezni a CLC mozgásvezérlõ kártya
által SERCOS protokollal átvitt funkciókat. A DIAX03
hajtás család a 3 - 224 kW, a DIAX04 2,5 - 35 kW teljesítmény
tartományt fogja át. A 3. ábra a DIAX04 hajtásvezérlõ
családot, a 4. ábra a hozzájuk választható
motor típusok sematikus képét szemlélteti.
3. ábra
4. ábra
A vezérlendõ objektum tengelyeinek meghajtására
alkalmas kivitelû és teljesítményû motorokat
az Indramat motor sorozataiból lehet választani. A motor
sorozatokban találhatók különbözõ pontosságú
helyzetérzékelõvel felszereltek, (pl. a legnagyobb
pozíció-felbontóképességûek az
MHD sorozatba tartozó motorok: 4 194 304 jel/fordulat a tengelyen).
A kiválasztott motornak illeszkednie kell az intelligens digitális
hajtásvezérlõhöz. DIAX03 hajtásvezérlõhöz
MDD, MKD, 2AD, 1MB, MBW, LAR és LAF sorozat motorjai közül,
míg DIAX04-hez MKE, MHD, MKD, 2AD, 1MB, MBW, LAR és LAF sorozat
motorjai közül lehet választani.
Közös hajtás tápegységet
a DIAX04 hajtásvezérlõkhöz a HVE és HVR
típusú tápegység sorozatból, a DIAX03
hajtásvezérlõkhöz a TVM, TVD, TVR, KDV, és
KDR tápegység sorozatból lehet választani.
Az ECODRIVE hajtásvezérlõ-család tagjai saját
belsõ tápegységgel rendelkeznek, nincs szükségük
külsõ tápegységre.
A digitális hajtásvezérlõk,
a tápegység és a motorok biztonságos mûködése
érdekében villamos összekötéseiket a dokumentációkban
leírtak szerint kell megvalósítani. Ahhoz, hogy a
CLC kártyás mozgásvezérlõvel történõ
együttmûködésük probléma mentes legyen,
a szabványos SERCOS paraméterek mellett a gyártó-specifikusakat
is azonosan kell értelmezniük.
3.3 SERCOS kommunikáció
A CLC vezérlõt – mint már említettük
– az Indramat hajtásokkal fíber optikus SERCOS interfész
kapcsolja össze. A SERCOS interfész nemzetközileg elfogadott
valós-idejû, nagysebességû digitális kommunikációs
szabvány, amely a vezérlõ kártya és
a hajtások között csupán egy egyszerû daisy-chain
típusú fíberoptikus kábelösszekötést
kíván. A válaszidõt a szinkron adatátviteli
protokoll garantálja. A SERCOS lehetõséget teremt
az összes készülék folytonos figyelésére,
hiba diagnosztizálásra, a szabványosított zárt
szabályozási köri funkciók definiálására.
A SERCOS gyûrûben NRZ (No Return to Zero)
kódolású szinkron módú adat átvitel
zajlik.
5. ábra
A SERCOS interfészen zajló kommunikációt
az 5. ábra vázolja. A gyûrûben a CLC a SERCOS
„master", az intelligens digitális hajtások interfészei
„slave"-ek. A kommunikáció részvevõi
„adatcsomagokat" küldenek egymásnak. Minden csomagnak van kezdõ
és lezáró azonosítója, címzése,
valós és nem valós idejû része, vezérlõ
és státusz szava, ellenõrzõ száma (checksum).
A ciklus kezdeteket a master által küldött
szinkronizáló csomag (MST - Master Sincron Telegram) azonosítja.
A master a hajtások számára közös csomagban
(MDT - Master Data Telegram) küldi üzeneteit. A slavek (hajtások)
a bemenetükön megjelenõ információt kimenetükön
továbbadják, a master számára szolgáló
üzeneteiket csomagok formájában (ADT1, ADT2, ... - Amplifier
Data Telegram) a számukra biztosított „idõ-résbe"
fûzik, az MDT csomagból a számukra érkezett
üzeneteket kiolvassák.
Egy SERCOS ciklus ideje (Tcycl) a 4. kommunikációs
fázisban fix (msec nagyságrendû), nagysága a
kommunikációban résztvevõ hajtásvezérlõk
számától és az üzenet-csomagok hosszától
függ. A kommunikációban résztvevõ minden
eszköznek a csomagokon belül két adatrésze (csatornája)
van: egy a teljes üzenetet tartalmazó valós idejû
és egy több ciklus alatt átvitt nem valós idejû.
A kommunikáció a bekapcsolás
pillanatától „fázis állapot"-okon (0.-tól
a 4.-ig) keresztül épül ki. A kiépülés
alatt a master ellenõrzi a gyûrû záródását,
a hajtások címeit, kiküldi kommunikációs
paramétereiket. Az 5. ábra a gyûrû két
szelvényében a 4. fázis ciklusát szemlélteti.
A SERCOS törvényszerûségeit
adatbázis szerûen, paraméterek formájában
nemzetközi szabvány (IEC1491 ill. IEC61491) rögzíti.
Egy paramétert azonosító száma (IDN), megnevezése,
attribútuma, lehetséges legkisebb és legnagyobb értéke,
valamint értéke (adat) jellemez.
4. A VisualMotion rendszer szoftverei
A VisualMotion rendszer fejlesztõ és tesztelõ
környezete a PC-n Windows alatt futó VisualMotion Toolkit (VMT).
A kifejlesztett programokat a CLC operációs rendszere (GPS
firmver) futtatja. A CLC kártya által SERCOS protokoll szerint
a hajtásvezérlõkhöz küldött információt
az intelligens digitális hajtásvezérlõk szoftverei
értékelik, s annak megfelelõen mûködtetik
a motorokat.
Amíg a VisualMotion rendszer mindkét szoftvere
– a VMT és a GPS – a rendszerrel épített mozgásvezérlõk
számára megalkotott „CLC nyelv" koncepcióján
alapul, a hajtásvezérlõk szoftverével való
kapcsolatukat a SERCOS szabvány biztosítja.
A CLC nyelvû programozás a taszk, szubrutin,
esemény, sorrendi végrehajtó (sequencer), táblák
fogalmakra épül:
· A taszk önálló, legfelsõ
szintû program feladat, amelybõl egy mozgásvezérlõ
program négyet, hierarchikus sorrendben A, B, C és D tartalmazhat.
Minden definiálást (táblák memória igénye,
változók, tengelyek, stb.) a taszkban kell elvégezni.
A taszkok egymástól függetlenek. A mozgásvezérlõ
program végrehajtásakor a CLC operációs rendszere
egymás után minden taszkból hierarchikus sorrendjüknek
megfelelõen ciklikusan egy - egy utasítást hajt végre.
· A szubrutin taszkból hívható
olyan rész feladat, amely lehetõséget teremt program
variációkra.
· Az esemény privilegizált szubrutin.
Programból közvetlenül nem hívható, végrehajtása
idõ-, vagy távolságalapú feltétel bekövetkezéséhez,
illetve külsõ interrupthoz kapcsolható.
· A sorrendi végrehajtó lehetõséget
ad a taszk szubrutinjainak listán rögzített sorrendben
történõ végrehajtására. A
szubrutinok
sorrendjének megváltoztatása nem igényli a
program újrafordítását.
· A táblák adatbázisszerûen
tartalmazzák a program végrehajtáshoz szükséges
adatokat. A mozgásvezérlõ programban az adatokra pont-,
illetve esemény-tábla indexekkel lehet hivatkozni. Ez a megoldás
teszi lehetõvé, hogy a program végrehajtáshoz
szükséges adatokat az utasításkódoktól
elkülönítve tárolják. Az abszolút
és relatív ponttábla elemei a pont indexén
kívül: x-, y-, z-koordináta, átvezetõ
sugár, sebesség, gyorsulás, lassulás, lökés,
négy esemény azonosító, elfordulás,
tekeredés, csavarodás, tengely maszk. Az eseménytábla
elemei az esemény indexén kívül: status, tipus,
referencia irány, argumens, az esemény szubrutin neve, üzenet.
A mozgásvezérlõbe beprogramozott
útvonalak egyenes szakaszokból és körívekbõl
állanak. A szakaszokat és köríveket az abszolút
és relatív ponttábla pontjai tûzik ki. A CLC
nyelvben a táblatételek, tétel-elemek jelölése
rögzitett (pl. ABS[01], REL[3].x, EVT[3]).
A programban csak integer és lebegõ pontos
változók szerepelhetnek. Számukra 4 bájt biztosított,
tárolásuk tömbökben történik.
A programban hivatkozni rájuk típusukat megadó karakterrel
(I, F) és indexükkel lehet, a változó globális
voltát a „G" prefix jelöli (pl. I[12], F[6], GI[01],
GF[3]).
6. ábra
4.1 VisualMotion Toolkit (VMT)
A VisualMotion Toolkittel a fejlesztõ a CLC kártyával létrehozott mozgásvezérlõt a vezérlendõ objektumnak megfelelõen konfigurálhatja, paraméterezheti, fejleszthet számára mozgásvezérlõ programot (taszkok), lefordítathatja (compile), a gépi kódú alakot letöltheti a CLC memóriájába, s ott elindíthatja. A VisualMotion Toolkit felülete hasonló az ikonos programozást lehetõvé tevõ fejlesztõ szoftverek környezetéhez (6. ábra). A File, Edit, View, Setup, Tools, Data, Status, Options fõmenü pontokhoz tartozó menürendszer belépési pontjait az 1A és 1B táblázat tartalmazza.
1A táblázat
File | Edit | View | Setup |
New
Open Save Save as Save, compile, download Compile Display code Program Management Archive Transfer Cams Transfer Events Transfer I/O Mapper Transfer Parameters Transfer Points Transfer Variables Transfer Zones |
Current Task
Find, Find Next Add Subroutine Add Event Function Labels User Labels Register Labels Bit Labels Import User Label File Export User Label File
|
Task
Subroutines Event Functions Zoom Out
|
Card Selection
Configuration Drives Drives Help Directories Coordinated Motion I/O Setup Overview Pendant Security CLC Serial Ports VME Configure
|
1B táblázat
Tools | Data | Status | Options |
Breakpoint Control
CAM Builder Jogging Oscilloscope VisualMotion32, CLC_DDE (Release 6 ) Show Program Flow
|
CAM Indexer
Events Field Bus Mapper (CLC-D only) I/O Mapper PID Control Loops PLS Points Registers Sequencer Variables Zones |
Diagnostic Log
Drives Drives on Ring System Tasks
|
Az Options almenüi:
Icon Palette Single Axis Coordinated Motion ELS Utility Icon Labels
|
A mozgásvezérlõ program fejlesztõje egy taszk ikonos fejlesztését a „File/New" úton kezdheti el. A VMT teljes ikonkészlete négy alcsoportra (paletta) van tagolva, a szükséges paletta az „Options/Icon Palette" útvonalon választható ki. A 7. ábra a koordinált mozgások palettáját szemlélteti. A fejlesztõ a taszk munkafelületére „vedd fel és ejtsd" technikával rakhatja fel a szükséges ikonokat és a végrehajtási sorrendnek megfelelõen összekapcsolhatja azokat. A 8. ábra egy egytengelyes hajtás lehetséges taszkját szemlélteti. Az ikonok a CLC nyelv egy, vagy több parancsának felelnek meg, a munkafelületre való felhelyezésükkor dialógus ablakok nyílnak meg, amelyekkel a ikonhoz tartozó argumenseket kell konzekvensen megadni.
A VisualMotion Toolkit menürendszerének néhány
funkciója:
· A „File" „Transfer ..." kezdetû
almenü pontjai Windows-os programok szokásos funkcióin
túl lehetõséget adnak a mozgásvezérlõ
program egyes fogalmait reprezentáló adat csoportok (Cams,
Events, I/O Mapper, Parameters, Points, Variables, Zones) elkülönített
kezelésére.
· A „Edit" menü segítségével
új taszk, szubrutin és esemény függvény
hozható létre, megnevezéseket lehet rendelni
változókhoz, regiszterekhez, bitekhez, a már meglevõket
módosítani, törölni lehet.
7. ábra
8. ábra
· A „View" teszi lehetõvé, hogy kiválasszuk a munkaterületen megjelenítendõ taszkot, szubrutint, eseményt.
· A „Setup" almenüpontjai segítségével lehet a vezérlendõ objektumnak megfelelõre konfigurálni a VMT-t. Pl. a „Card Selection" almenüponttal a duál-portos RAM címet ugyan arra az értékre kell állítani, mint amire a CLC kártya jumpereit állították. A „Setup" további almenüpontjainak helyes értelmezése a [2]-ben található.
· A „Tools" „Breakpoint Control" almenüpontja a fejlesztés közbeni tesztelést segíti.
· A „Data" almenüpontjai rávilágítanak a CLC nyelvnek arra a jellegzetességére, hogy nem kell a programban minden adatot részleteiben „elõre" megadni, elegendõ a hivatkozásnak szerepelnie. A hivatkozáshoz tartozó adatok „Data" almenüpontjaival megadhatók, vagy megváltoztathatók. A „Data" almenüpontjai arra is rávilágítanak, hogy a programfejlesztõknek milyen fogalmakkal kell tisztában lennie, (pl. „CAM Indexer", „Events", „I/O Mapper", „PID Control Loop", „PLS", „Point", „Register", Sequencer", „Variable", „Zone", ld. részleteket a [2]-ben).
· A „Data/Registers" útvonalon érhetõk el a CLC duál-portos RAM területen levõ regiszterei, köztük a CLC mûködését irányító vezérlõ- és status regiszterek, I/O ki - és bemeneti puffer regiszterek.
· A „Data/I/O Mapper" útvonalon adhatók meg azok a logikai utasítások, amelyek az I/O ki - és bemeneti regiszterek bitjei között fennálló relációkat rögzítik. Az utasításokban a „!", „&", „|" operátorok, valamint a „( )" precedencia jelölés használható.A mozgásvezérlõ számára CLC nyelvû szöveges program is irható, amelyet a VMT-vel lehet lefordíttatni. A program írásához olyan editort kell használni, amely nem alkalmaz formázó karaktereket. A CLC nyelv az assembly nyelvhez hasonló, egy sorának általános alakja:
utasítás Cartesi koordináta rendszerben egyenes vonalú pálya mentén történõ mozgás az elõzõ mozgás végpontjától az abszolút pont tábla 5-ös indexû pontjáig.mark: INSTRUCTION/OPTION arg1, arg2, .., argn ;textahol mark – utasítás-sort jelölõ opcionális címke,
INSTRUCTION – a CLC utasítás mnemonikja,
OPTION – utasítás módosító,
arg1, arg2, .., argn – az utasítás argumensei,
text – magyarázó szöveg.
Pl.:
MOVE/LINE ABS[5]
4.2 A CLC kártya operációs rendszere
A CLC kártya operációs rendszere a mozgásvezérlõ mûködtetéséhez a duál-portos RAM területen levõ 512 darab 16 bites regiszter bitjeire támaszkodik. E 8192 bit mindegyikéhez a mozgásvezérlõ mûködéséhez fontos elemi logikai funkció van hozzárendelve. E bitek megfelelõ állításával vezérelhetõ a teljes rendszer. Pl. „Parameter Mode"-ról „Run Mode"-ra lehet áttérni, indítani, megállítani lehet a taszkokat, stb. A mozgásvezérlõ programsorok végrehajtása is e bitekre épül. Az utasítás végrehajtása nem csak a mozgásvezérlõ hajtásaira van hatással, hanem közvetlenül, vagy közvetetten (a hajtásokon keresztül) a regiszter bitekre is. A regiszter bitek egy részének vezérlõ, más részüknek status jelzõ, ismét más részüknek ki- és bemeneti puffer szerepük van. A 2. táblázat a regiszterek funkcióit szemlélteti.
2. táblázat
Regiszter | Funkció |
1 | System Control |
2-5 | Task A-D Control |
6 | System Diagnostic Code |
7-10 | Task Jog Control |
11-18, 209-240 | Axis Control 1-8, 9-40 |
21 | System Status |
22-25 | Task A-D Status |
29 | ELS Control |
30 | ELS Master Status |
31-38, 309-340 | Axis Status 1-8, 9-40 |
40-87 | DEA (4/5/6) I/O |
88 és 89 | Task A Extend Event Control |
90 és 91 | Latch and Unlatch |
95-97 | BTC06 Teach Pendant Status |
98 és 99 | BTC06 Teach Pendant Control, Task A-B, C-D |
100 és 101 | User defined Inputs |
120 és 121 | User defined Outputs |
400-405, 410-415 | DEA (28/29/30) I/O |
Pl. ha a System Control regiszter 1. bitjének
(R1.1), a „Paraméter mode/Run mode" bitnek az értékét
„0"-ról „1"-re állítják, a CLC az összes
taszk végrehajtását megállítja. A SERCOS
kommunikáció a 2. fázisba esik vissza. A rendszer
„paraméter módba" kerül és minden adat változtatható.
A program folytatása viszont nem egyszerûen a bit értékének
visszaállítása által történik,
elõbb még más biteket is állítani kell!
A regiszterek és bitjeik funkcióinak részletes leírása
a „VisualMotion GPS 6.0 Reference Manual"-ben található.
Normál mozgásvezérlõ program
végrehajtása közben a CLC operációs rendszere
egy lefordított CLC nyelvû utasítást hajt végre.
A fenti „MOVE/LINE ABS[5]" utasítás egy útszakasz
megtételét írja elõ. Ennek az egyetlen utasításnak
a végrehajtásához a CLC a ciklus idõnek megfelelõ
gyakorisággal a SERCOS gyûrûre minden hajtás
számára ki kell adja az aktuális útalapjel
értékeket. A vázolt „egy utasítás -
SERCOS kommunikációs folyam" a CLC operációs
rendszerén belüli „útvonal tervezõ" munkájának
eredménye. Az utasítás végrehajtása
akkor fejezõdik be, amikor a rendszer az „5"-ös indexû
pont által kijelölt koordinátájú
helyre ér.
A CLC operációs rendszerének jellemzõje,
hogy a memóriában a végrehajtandó taszkhoz
tartozó adatokat (az utasítások argumenseit) az utasítás
kódoktól elkülönítve tárolja. E tulajdonságot
a VMT menü rendszere is tükrözi, lehetõvé
téve a letöltött programok adataihoz történõ
hozzáférést. A CLC nyelvû programok adatai mezõ,
illetve „adatbázis" struktúrájúak, a CLC memóriájában
táblázatos alakban tároltak.
A CLC operációs rendszerének részfeladata
az „I/O Mapper" listáján szereplõ logikai utasítások
„háttérben történõ" ciklikus végrehajtása
is.
4.3 Alkalmazói (operátori) interfész
A VisualMotion Toolkit segítségével
a fejlesztõ a „Data/Registers" útvonalon a CLC kártyát
vezérlõ regiszterek bitjeit állíthatja, megváltoztathatja,
tehát tesztelheti, mûködtetheti az elkészült
mozgásvezérlõt. A rendszert azonban ily módon
mûködtetni nem csak kényelmetlen, de kockázatos
is. Mozgásvezérlõ irányításáról
lévén szó, helytelen beavatkozás veszélyeztetheti
az irányítandó objektumot és személyi
sérülést is okozhat. Ezért az operátorok
számára célszerû alkalmazói (operátori)
interfész felületet (ember - gép kapcsolatot) kifejleszteni.
A kapcsolatot CLC kártya mint szerver és az alkalmazói
interfész szoftvere mint kliens között egy e célra
fejlesztett CLC_DDE.exe szerver szoftver segítségével
lehet megteremteni. („Tools/VisualMotion32, CLC_DDE Release 6" útvonal.)
A mozgásvezérlõ programmal már
feltöltött CLC kártya második soros portján
keresztül BTC06 távvezérlõvel is mûködtethetõ.
A BTC06 (Teach Pendant) távvezérlõ maga is M68000
családhoz tartozó processzorral és kliens szoftverrel
rendelkezik, amely menürendszert küld a távvezérlõ
LCD ernyõjére. A rendszer operátora e menürendszer
segítségével és a BTC06 funkciós gombjaival
vezérelheti a rendszert. Egy ilyen alkalmazástól független
ember - gép kapcsolat azonban csak program-fogalmakra (taszkok,
táblázati adatok, stb) támaszkodhat.
5. Paraméterek
Adott mozgásvezérlõ alkalmazás
konfigurációs adatait a „paraméterek" rögzítik.
A mozgásvezérlõ akkor válik mûködõképessé,
ha a CLC kártya és a digitális hajtások
alapvetõ kommunikációs és inicializáló
paramétereit megadták. A rendszer-építõnek
a rendszer mechanikai jellemzõit is meg kell adnia. Ezek a paraméterek
specifikálják a gép korlátait, pl. a maximális
sebességet és gyorsulást, vagy a motor fordulatszám
és a tengelyfordulat, illetve haladási sebesség közötti
viszonyt.
A paraméterek egyes csoportjai (típusai)
a CLC kártyával, taszkkal, tengelyekkel, SERCOS kommunikációval
kapcsolatosak, adatbázis szerû struktúrával
rendelkeznek. Azonosítójukon (IDN) kívül megnevezésük,
mértékegységük, adatuk (értékük)
van.
Azonosítójuk alakja: X-s-nnnn, ahol
X a paraméter típusa:
C - CLC rendszer (kártya) paraméter,
T - CLC taszk paraméter,
A - CLC axis (tengely) paraméter,
S - SERCOS hajtás paraméter,
P - gyártó specifikus hajtás
paraméter.
s 0 - 7 közé esõ készlet szám,
nnnn - 1 - 4095 közé esõ paraméter
szám.
A rendszer, taszk és tengely paramétereket
a CLC kártya memóriájában, a SERCOS paramétereket
a digitális hajtásokban tárolják. A paraméterek
kezelését a fenti azonosító rendszer teszi
lehetõvé. Az összes paraméter elemhez hozzá
lehet férni VisualMotion Toolkit-tal, vagy a CLC kártya soros
portján keresztül, ASCII terminállal.
6. Zavarelhárítás
A CLC kártyának és a SERCOS-os hajtásoknak
a
paramétereken alapuló széleskörû belsõ
diagnosztikai rendszere van, amely folyamatosan ellenõrzi a rendszer
mûködését és az eredményrõl
„üzenetkódokkal" tájékoztat. A 600 üzenetkód
· státus üzenetekre,
· figyelmeztetõ üzenetekre és
· hibaüzenetekre
tagolódik. A státus üzenetek a rendszer
állapotáról informálnak. A figyelmeztetõ
üzenetek nem állítják le a programvégrehajtást,
csupán nyugtázást igényelnek. Hibaüzenetek
esetén viszont leállnak a mozgások és a programvégrehajtás
csak a zavarelhárítás után folytatható.
A VisualMotion Toolkit „Status" menüje nyújt segítséget
a hajtások, taszkok és a CLC kártya zavarainak elhárításában.
(ld. [3]) Az elõforduló zavarokról dátummal
és idõponttal ellátott naplózás kérhetõ.
A programvégrehajtás a „Tools/Show Program Flow" úton
figyelhetõ meg.
7. Összefoglalás
A CLC kártyával flexibilis mozgásvezérlõ
hozható létre, amely széleskörûen alkalmazható
az általános mozgásvezérlõtõl
az elektronikus vezérlésû többgépes villamos
tengelyek vezérlõin keresztül a robotok vezérléséig.
A mozgásvezérlõ számítógépes
szoftverkörnyezetét a VisualMotion Toolkit képezi.
A mozgásvezérlõ rendszer részét
képezik digitális szervo hajtások és a SERCOS
fíberoptikus kommunikációs rendszer is. A CLC-vel
létrehozott soktengelyes koordinált és nem-koordinált
mozgásvezérlõhöz szorosan integrálhatók
logikai I/O vezérlõ funkciók.
A CLC nyitott busz architektúrája lehetõséget
ad bármely gyártó PLC-jének és I/O kártyájának
egyszerû csatlakoztatására. Digitális és
analóg ki- és bemenet egyaránt lehetséges.
Külsõ események minimális felismerési
idejét interrupt típusú bemenetek biztosítják.
A VisualMotion rendszer túl bonyolult ahhoz, hogy
egy cikkben lényegének ismertetésénél
többre vállalkozzunk. A fejlõdés számítástechnikában
és alkalmazási területein rohamos, a fentiekben leírtak
a VisualMotion 6.0 verzióra igazak.
8. Irodalom
A VisualMotion rendszer megismerését az INDRAMAT GmbH-tõl beszerezhetõ részletes leírások, dokumentációk segítik, amelyek közül az alábbiakban felsorolunk néhányat (Az anyagok PDF formátumban CD-n is beszerezhetõk.):
[1] VisualMotion 6.0 Startup Guide
[2] VisualMotion GPS 6.0 Reference Manual
[3] VisualMotion 6.0 Trouble Shooting Guide
[4] DIAX04 HVE and HVR 2nd Generation Power supply Units
[5] DIAX03 DDS02.2/03.2 Drive Controller Basic Unit
[6] DIAX04 HDD and HDS Drive Controllers 2nd Generation
[7] DIAX04 Plugin modules for digital intelligent drive
controllers - Projekt Planning Manual
[8] Digitale AC-Motoren, MKD - Projektirung
[9] Digital AC-Motors, MHD - Projekt Planning Manual