StepDirAnalog – Szervó vezérlő kártya

StepDirAnalog V1.00

 

A kártya feladata

A StepDirAnalog kártya Mach3 vagy hasonló Step-Dir kimenetet létrehozó program összekapcsolását biztosítja +/- 10V-os analóg bemenetű szervó erősítővel. Analóg szervó erősítőhöz illesztve zárt pozíció szabályzási kört valósít meg.

szervo_vezerlo_kartya_abra_1

A pozíció alapjel a Step impulzus inkrementálásával vagy dekrementálásával (a Dir-től függően) képződik. Az ellenőrző jel az inkrementális forgó jeladóból keletkezik. Az alapjel és az ellenőrző jel különbségéből keletkező hibajelet egy PID jelformáló tagon és egy DA konverteren átvezetve kapjuk meg a szervó erősítő számára szükséges analóg jelet.

A kártya blokkvázlata

szervo_vezerlo_kartya_abra_2

Csatlakozók bekötése

szervo_vezerlo_kartya_abra_3

J12 – Digitális tápfeszültség. A kártya digitális áramköreinek táplálásához szükséges 5V illetve 3.3V-ot előállításához szükséges. Az áramfelvétel: 60mA

J21 – Segéd tápfeszültség. A külső érzékelők táplálásához szükséges. A zavarérzékenység csökkentése érdekében független a digitális tápfeszültségtől.
Opcionálisan rendelhető a kártyára DCDC konverter, ami a digitális tápfeszültségből előállítja a szükséges 12V-os (vagy 24V) föld-független segédfeszültséget az érzékelők számára, így nem szükséges külső tápegység.

J19 – Analóg tápfeszültség +/- 15V Az analóg áramkörök táplálásához szükséges. A szervó erősítők egy része szolgáltat +/- 15V-ot, ha ez elbírja, akkor ráköthető a szervó erősítőre. Opcionálisan rendelhető a kártyára DCDC konverter, ami a digitális tápfeszültségből előállítja a szükséges szimmetrikus +/- 15V-ot, így nem szükséges külső tápegység. A csatlakozó 4-es pontja szolgáltatja az analóg kimeneti jelet.

J6 – Amennyiben a szervó erősítőnek van engedélyező (vagy tiltó) bemenete, akkor a panelen lévő R33-as jelű relé aktív állapotával engedélyezhető a működés. A relé akkor húz, ha a J22-es bemenet aktív (V1 világít), a szabályzás a megadott tartományon belül működik (nincs Control Error) és a kártya működőképességét a belső „watch dog” is megfelelőnek találja (V4 világít). Control Error állapot akkor keletkezik, ha a pozíció hiba (tényleges és a célpozíció közötti különbség) mértéke meghaladja a beállított értéket (The maximum position deviation), a szintén beállított (The number of allowable position deviation) számú, egymást követő cikluson keresztül.

J26 – Amennyiben a szervó erősítőnek van Ready (vagy Fault) kontaktus kimenete, azzal engedélyezhető a kártya működése. Ha nincs, akkor a csatlakozó 2,3–as pontjait rövidre kell zárni. Az engedélyezést a V6-os LED világítása jelzi.

J18 – Enkóder bemenet. Inkrementális jeladó csatlakoztatható. A jeladó táplálásához a +24V-os kimenet használható, ami a digitális tápfeszültségből származik. A +5V-os tápkimenet szükség esetén használható differenciális kimenetű enkóder jelillesztő áramkörének táplálására. Ha az enkóder 5V-os tápfeszültséget igényel, azt a 24V-ból ajánlott előállítani a nagyobb zavar védelem érdekében.A +5V-os kimenet maximálisan 100mA-al terhelhető.

J22 – Enable bemenet. 5V-os jelszinttel engedélyezhető a szabályzás bekapcsolása. Magasabb feszültség esetén előtét ellenállás szükséges, pl. 12V-nál 1kOhm. A hajtás engedélyezését a V1 jelű kék LED jelzi. A J6-os csatlakozón megjelenő engedélyező kontaktus egyik feltétele, ennek a bemenetnek az aktiválása.

J23 – Direction. A motor mozgásának irányát határozza meg. 5V-os jelszinttel vezérelhető. Az Enable bemenethez hasonlóan, magasabb feszültség esetén előtét ellenállás szükséges.

J24 – Pulse. A pozíció alapjel növelésére vagy csökkentésére (Direcion bemenettől függ) szolgáló impulzus bemenet. 5V-os jelszinttel vezérelhető. Az Enable bemenethez hasonlóan, magasabb feszültség esetén előtét ellenállás szükséges.

J31 – Komplex vezérlő bemenet. Tartalmazza az Enable, Dir, Step bemeneteket és a hiba kimenetet. 10 pólusú szalagkábeles csatlakozóval a saját fejlesztésű jelelosztó panelre (LptInterface3) –ra csatlakozik. A szervó hajtás hibáját a V12-es jelű piros LED is jelzi.

J25 – ServoGood. A vezérlő egység fele jelzi a szervó hajtás működő képességét. Ezt a V3-az Zöld LED is jelzi. Open kollektoros kimenet, ami akkor aktív, ha nincs szabályzási hiba (Control Error), a Ready bemenet (J26) aktív (V6 LED világít) és a forgási iránynak (J23) megfelelő végállás kapcsoló nem aktív.

J27 – Index. Amennyiben a kártyát Mach3-mal, főorsó hajtáshoz kívánjuk felhasználni, szükség lesz a főorsó helyzetét jelölő impulzusra. Ezt az enkóder index jelének 10ms-os megnyújtásából kapjuk meg.

J28 – -Limit. Végállás kapcsoló bemenet, ami aktív állapotában a motor CW irányú forgását gátolja. NPN típusú induktív érzékelő is köthető a csatlakozóra. Ha a motor negatív végállásra fut akkor a V5 jelű zöld LED kialszik. Ha nem használt, akkor a csatlakozó 2-es, 3-as pontjait rövidre kell zárni.

J29 – +Limit. Végállás kapcsoló bemenet, ami aktív állapotában a motor CCW irányú forgását gátolja. NPN típusú induktív érzékelő is köthető a csatlakozóra. Ha a motor pozitív végállásra fut, akkor a V8 jelű zöld LED kialszik. Ha nem használt, akkor a csatlakozó 2-es, 3-as pontjait rövidre kell zárni.

J30 – Home. Referencia bemenet. Az aktív állapot bekövetkeztével nullázódik a pozíció értéke.

J5 – TTL- szintű sorosvonali csatlakozás. A szabályzókör paramétereit lehet lekérdezni és beállítani, valamint a kártya 50ms-onként küldi a célpozíció, tényleges pozíció, szervó hiba értékét és a belső állapotinformációkat. Ehhez a StepDirAnalog.exe programot kell használni. Egy saját fejlesztésű illesztő kártya (ModbusInterface) használatával Modbus-ra lehet csatlakoztatni. A Modbuson keresztül össze lehet kapcsolni a MACH3-al is. A PC vel való csatlakozáshoz szükséges egy TTL/RS232 vagy TTL/USB átalakító modul használata.

J11 – Párhuzamos port csatlakozás. Egy másik illesztő kártyával (TuningInterface) ugyanezeket az adatokat 100mikro sec-es gyakorisággal lehet megkapni, ami alkalmas információt ad a PID paraméterek pontos beállítására.

StepDirAnalog.exe használata

A program a Com1-es portot használja. A program elindításával azonnal kész a StepdirAnalog kártyából folyamatosan, 50ms-os gyakorisággal érkező pozíció, hiba és státusz információk vételére.

Bemenetek: A bemeneti csatlakozópontok állapotát a Step, Dir, Ena, Servo Ready In, Neg Limit, Pos Limit, Home jelölő négyzetek mutatják.

Belső hiba-információk a következők:

  • Control Error: A szabályzókör hibája. Ha a hibajel (Xh) kiesik a megengedett tartományból. A megengedett hiba mértékét a The maximum position deviation és a The number of allowable position deviation paraméterek határozzák meg.
  • Inhibit Pos. Dir: A CCW irányú mozgás gátolt. Ez akkor aktív, ha Pos Limit bemenet aktív és a motor CCW az irányba akar mozogni.
  • Inhibit Neg. Dir: A CW irányú mozgás gátolt. Ez akkor aktív, ha Neg Limit bemenet aktív és a motor CW az irányba akar mozogni.
  • Amplifier Not Ok: Ha a Servo Ready In bemenet nem aktív.

Target Position: A pozíció alapjel (Xa). A Step impulzusok hatására, iránytól függően, Step lengths értékkel növekszik vagy csökken. Az Inhibit Pos. Dir és az Inhibit Neg. Dir aktív állapota gátolja a Target Position értékének léptetését.

Real Position: Az ellenőrző jel (Xe), ami az enkóder impulzusainak számolásából keletkezik.

Difference-PID out: A hibajel (Xh) és ebből a PID kontroller által előállított Analóg beavatkozó jel értéke.

Control Mode: A szabályzó belső működési állapota.

  • 0- Controll Off: A szabályzás kikapcsolt állapotban. A külső Ena jel inaktív állapotban van (V1 sötét) vagy a Control Error hiba következtében kapcsolódott ki. Ebben az állapotban a J6-os csatlakozó 2-es, 3-as pontja kikapcsolt állapotban van (R33-as relé ejtett).
  • 1- StepDir Control: A szabályzás bekapcsolt állapotban. Ennek feltétele, hogy külső Ena jel aktív legyen (V1 világít), és ne legyen Control Error hiba. Ebben az állapotban a J6-os csatlakozó 2-es, 3-as pontja bekapcsolt állapotban van (R33-as relé húz).Ha Control Error hiba következik be a szabályzás kikapcsol. Az Ena bemenet inaktívvá tétele törli a Control Error hibát (V1 sötét).
  • 2 – Open Loop: Szerviz célokat szolgál.
  • 3 – Test: Szerviz célokat szolgál.
  • 4 – Tuning – Closed Loop: A Tuning fülön lévő closed Loop measurement gombra kattintva lehet ebbe a módba lépni. Ebben az üzemmódban csak a mérés idejéig (0-1s) tartózkodik a kártya. A mérés végeztével automatikusan a Controll Off – HS komm üzemmódra vált.
  • 5 – Controll Off – HS komm. Ebben az üzemmódban elküldi a mérés ideje alatt összegyűjtött hibajel (Xh) adatokat a soros vonalon a StepDirAnalog.exe program számára, amik a diagramon megjelennek.. Ez idő alatt nem végez szabályzást. A táviratozási folyamat végeztével automatikusan StepDir Control módra vált.

A Set fülön az alábbi paramétereket lehet beállítani:

  • The maximum output voltage (mV): A kimenő analóg feszültség maximális értékét lehet beállítani.
  • The maximum position deviation: Ez határozza meg a legnagyobb megengedett eltérést (hibajel (Xh)) a célpozíció (pozíció alapjel (Xa)) és a tényleges pozíció (ellenőrző jel (Xe)) között.
  • The number of allowable position deviation: Azért, hogy egy kiugró hiba ne okozzon leállást, ebben a paraméterben meghatározott számú egymást követő ciklusokban kell a hibajelnek (Xh) a megengedett érték fölött lenni, hogy ControlError következzen be.
  • Step lengths: Ez a paraméter határozza meg, hogy egy Step impulzus hány Enkóder szerinti impulzusnak feleljen meg.

szervo_vezerlo_kartya_abra_4

A Version fülön az alábbi információkat lehet lekérdezni:

  • HW Structure: A hardver kiépítés a StepDirAnalog1-24-12-K-24-0 példában az alábbiak szerint értelmezendő:
  • StepDirAnalog1 a nyomtatott áramkör verziója, 24 a tápfeszültség (J12) értéke, 12 a segéd tápfeszültség (J21) értéke, K a +/-15V-os analóg tápfeszültséget külsőleg kell biztosítani a J19-es csatlakozón keresztül, A J18.6-os csatlakozó ponton az enkóder számára szolgáltatott tápfeszültség értéke, 0 normál kiépítés.
  • SW Version: A kontrollerben futó szoftver verzió száma.
  • Serial Number: A kártya egyedi azonosító száma.

PID tuning

A program Tuning fülön található closed loop measurement funkció segítségével mérhető a szabályzás egységugrásra adott válasza. A mérés két szakaszból áll. Az elsőben a mozgás és a hibajel adatok tárolása történik. Ez a 4-es Control Mode. A soros vonali kommunikáció és grafikus megjelenítés lassabb folyamat ezért ez a mozgás lezajlása után elkülönülten az 5-ös Control Mode-ban történik. A grafikonon a cél és a tényleges pozíció különbsége (hibajel (Xh)) jelenik meg. A képen látható grafikonon négy mérés eredménye látható egymás után, különböző beállításokkal. Az egységugrás mértéke 200 lépés és 4000 cikluson keresztül történik a mérés. A szabályzó ciklusideje 100 mikrosec, így 400 milisec ideig tart egy mérés.

A példában szereplő diagramok az alábbi beállításokkal készültek:

A diagram első szakasza (0-4000):
Prop-Gain = 100000, Diff-Gain = 0 Int-Gain = 1
Enyhén csillapodó rezgéssel áll be a kívánt pozícióba.

A diagram második szakasza (4000-8000):
Prop-Gain = 100000, Diff-Gain = 5000000 Int-Gain = 1
Erősen csillapodó rezgéssel, Kb. 2000 ciklus alatt áll be a kívánt pozícióba, így a beállási idő 200 milisec.

A diagram harmadik szakasza (8000-12000):
Prop-Gain = 100000, Diff-Gain = 20000000 Int-Gain = 1
Kis túllövéssel, kb. 120 milisec. alatt áll be a kívánt pozícióba.

A diagram negyedik szakasza (12000-16000):
Prop-Gain = 100000, Diff-Gain = 100000000 Int-Gain = 1
Az előzőhöz képest lomhábban, kisebb túllövéssel, kb. 120 milisec. alatt áll be a kívánt pozícióba.

A tuningoláshoz a Ziegler-Nichols módszert vesszük alapul

A szabályzási paraméterek beállításának lépései:
1. A Diff-Gain és Int-Gain paramétereket 0-ra kell állítani.
2. A Prop-Gain értékét addig kell növelni, amíg a szabályzás, a stabilitás határához érkezik és a tengely rezegni kezd. Ez az érték a kritikus erősítés.
3. A Prop-Gain értékét a kritikus erősítés 60%-ára vesszük.
4. A. Diff-Gain értékét a Prop-Gain értékével megegyezőre állítjuk.
5. Végrehajtunk egy mérést a closed loop measurement funkcióval.
6. A Prop-Gain növelésével addig ismételjük a mérést, amíg a mintában szereplő negyedik szakaszra nem kezd hasonlítani.