UCCNC vezérlő program

Indította gaben, 2024 április 09, 16:54

Előző téma - Következő téma

frkdv6dyr

Erre meglátásom szerint ott van a makró. Az anyag keménysége és a szerszám tulajdonságai valamint a munka jellege határoz meg mindent. Nekem viszont az jutott az eszembe, hogy egy makró generátort lehetne írni ha már van programozási felület. Itt egy kis felugró ablakban kilehetne választani az adott munka anyagára, a szerszámra vonatkozó adatokat, na nem a végletekig részletezve, és ebből egy makrót generálna a szükséges beállítások lefuttatásához, amit csak be kellene írni minden G-kód első sorába.  
 
Pl.: M255
 
Erre tegnap este már nézegettem a C# referenciát, meg a meglévő leírásokat. Többek között ezért kérdeztem a kód futtatási lehetőséget lejjebb.
 
Persze ezt a makró vagy kód generátort lehetne használni az egyszerűbb feladatok legenerálására, ahol pár lépést egyszerre lehetne bevinni. Ez nem helyettesítene egy pályagenerátort, de egy egyszerű csapolás mind a két pályakódját elkészíthetné, vagy az előkészítő munkákat lehetne vele megoldani.  

3ztiz2p39

Elküldtem magánban a Mach3 xml file-t és a beimportálás után keletkezett Pro file-t.
 
Így jobban át tudod nézni...
 

3ztiz2p39

Talán nem volt még szó a grafikáról, Toolpath-ról.
 
Az említett  gépen a proci terhelés 25%-körül mozog ha fut az UCCNC.
A G-kód futása közben lehet nyugodtan matatni a Windowst, nem tapasztaltam szaggatást.
 
A toolpath képernyő vagy ablak az UCCNC-nél kiváló!!!
(A Mach3 nézeteit sosem értettem meg, kezelése vacak volt)
 
Itt egyértelműek a nézetek, G-hód futása közben is nyugodtan lehet nézetet váltani, nagyítani-kicsinyíteni mozgatni, forgatni a látómezőt, a CNC gép nem érzékel semmit ezekből.
Ez nagyon jó pont, a kezdők szeretik ha itt is látják mit csinál a gép.
 
lefuttattam egy két régi tesztkódomat, amelyikben minden parancsot ismer ott nem volt gond.
 
Ha már kérdés volt a pályatervező akkor egy pár sor, de pontos munkadarab mérések nélkül.
 
Tibor45 jóvoltából van nekünk az a bizonyos csillagtesztünk.
 
Mach3-ban lefuttatva G61 módban 2.57 perc alatt fut le a gépemen, G64 módban 0.55 alatt.
 
Az UCCNC-vel Exact Stop módban kerek 3.00 perc volt, Constant Velocity módban 1.20.  
 
Mindkét proginál a lockahead 200-ra volt állítva, az UCCNC pályakövetési beállításai a feltelepített gyári értékeken.
 
Az állandó sebbesség módban az idő eltérés gondolom ezen beállítások miatt van.
 
Viszont Exact Stop módban is kissé más hangja van a CNC gépnek a mach3 és az UCCNC alatt, hogy melyik a jobb az majd később fog kiderülni, itt a gyorsulás-lassítások, illetve step jel egyenletességek számítanak inkább.
 

kr97pwss2

Örülök, hogy a megjelenítés tetszik, ebben is sok munka van, és nem volt triviális, hogy minden számítógép grafikus kártyáján és operációs rendszerén ugyanúgy működjön.  
A csillagtesztnél exact stopnál én is hasonló, szinte megegyező időt mértem. Állandó sebességű üzemmódnál (Constant velocity) pedig a különbség az UCCNC-ben beállítható maximálisan megengedett pályakövetési hibával magyarázható. Azaz, ha ez a paraméter kicsi, azaz nagyon szigorúan kell követni a pályát, akkor értelemszerűen tovább tart. Ha viszont nagyobb, akkor gyorsabban végre tudja hajtani az egymás után következő utasításokat. A csillagtesztet amúgy Tibor45 jól kitalálta, sok apró lineáris szakaszból rakja össze a mozgásokat. Ha a kicsi szakaszokat külön külön hajtjuk végre (exact stop) akkor nincs ideje a tengelyeknek maximális sebességre gyorsulnia. Ha viszont előretekintéssel, akkor a pályát lehet optimalizálni, hogy a beállított megengedett max. hibával (programozott pályától való eltéréssel) hajtsa végre sokkal gyorsabban. A Mach3-nál is van ilyen állíthatósági lehetőség, de azzal egy arányt vagy kb. saccolni lehet csak, mert sose annyi. Ezt azért tudom ilyen határozottan állítani, mert kimértem. Tudok pl. egy jó kis tesztet, mely a következő kód:
f10000
g1
X1
x2
x3
x4
x5
x6
x7
x8
x9
x10
x11
x12
x13
M30
Ezt lefuttatva azonos beállításokkal (lépés:50step/mm, 20mm/s2 gyorsulás, constant vel.) mach3-on a következő a jelalak:
http://www.polgardidesign.hu/download/Web/Mach3%20teszt.JPG" border=0>
Az UCCNC-n pedig:
http://www.polgardidesign.hu/download/Web/UCCNC%20teszt.JPG" border=0>
A két ábrát logikai analizátorral készítettem, és látható rajta, hogy a mach3 túlságosan begyorsít és a végén rövidebb idő alatt lelassít. Nem szimmetrikus a gyorsítás/lassítási szakasz. Az UCCNC-nél szimmetrikus.

xfg6v697j

Régebben emlékszem,hogy felmerült többekben,hogy a cnc vezérlő szoftwerek,gyorsíthatnálk a motorokat nem lineárisanis.
A gyorsulás eleje erőteljesebb is lehet,mig a végefelé már kevésbé gyorsulna a motor.
Ez előnyökkel járhat.
Gyorsabb munkavégzés,nagyobb végsebesség.
Esetleg nem merült fel bennetek,hogy opcionálisan lehessen választani a két gyorsulástipus között?

2h0y3p4wh

Szia Balázs!
A progi nagyon tetszik.
Letisztul felület, jól konfigurálhatóság.
Nem igen van felesleges, vagy éppen hiányzó ikon.
A dolognak ez a része úgy is egyéni ízlés dolga.
Mindenkinek tetsző felületet úgy is szinte lehetetlen megalkotni.
A hiányosságok (javítani valók) jelentős részét már az előttem szólók megtették.
A gyors módosításokért maximális elismerésem.
Egyenlőre csak egy dolgot szeretnék megemlíteni...(talán ezt még nem lett megemlítve...)  
Step módba 0,01 0,1 és 1mm-es lépés választható.
Ez szükség esetén módosítható-e valahol?
Lehet, csak bénaságból nem találom ezt az opciót...(?)
 
Ha kiegészül a G kódok teljes listája és Csewe által említett paraméterezhető funkcióval,
akkor szerintem jó páran "félre teszik" a Mach3-at.
 
Az eszterga támogatás már csak hab lenne a tortás a szinkron menetvágás lehetőségével,  
mert akkor a Linuxcnc is "veszélybe" kerülne.(nem kicsit)
 
További sok sikert a fejlesztéshez.

y9au2mspr

Értem és köszönöm a válaszodat.

3ztiz2p39

Megmentettél egy méréssorozattól, pedig már készítettem elő a MiniLA analizátoromat.
 
Anno a Mach3 jeleit felvettem és a kiértékeléskor egyértelműen látszott a jitter a jalalakban.

3ztiz2p39

Igazából az "S" alakú gyorsulási pálya a használatos, ami annyit tesz hogy az induláskor lassabban gyorsít, illetve a kívánt pozíció elérése előtt kissé visszavesz, hogy kisebb legyen a túllövés. Illetve így kevésbé rángatja a mechanikát.
 
A másik amit még szoktak használni a léptetős vezérlés4eknél, az un. start-stop frekvencia.
a léptetőmotorok bizonyos step jel frekvenciát gyorsítási szakasz nélkül képesek lépésvesztés nélkül felvenni.
Ezzel is lehet növelni a dinamikát.
 
Ezeket az extra funkciókat a végtelensékig lehetne növelni, pl. az is jó lenne, ha a vezérlő kiadna egy jelet, hogy épp G0 vagy G1 (2,3) parancs van érvényben.
Ennek a szervoknál lenne jelentősége, miszerint G0-ban lazábbra lehet engedni a visszacsatolást, mert nincs szükség hű pályakövetére.

3ztiz2p39

Lehet félreértem, de úgy olvasom az írásodból, hogy az ExactStop-nál is van pályaoptimalizálás.
Ez így helyes?
Én úgy gondoltam volna, hogy csak az állandó sebesség módban nyúl(hat) bele a pályába a vezérlőszoftver.

xfg6v697j

Én még csak kérdezgetek,de javaslatokat nem teszek,mert magam nem próbáltam,még vezérlőáramkör hiányában.
 
Viszont Balázs alább kérdezte,hogy próbálta e balaki a sebességváltozás lekövetését megfigyelni,ha valakinek van UC100-a,és diódalézere,vagy pirográf feje,akkor égethetne képet a G-ray által generál Gkóddal,mert akkor ez kiderülne,mivel sebességváltozásokal operál.
Én magam is kiváncsi lennék,hogy bírja e ezeket a változásokat.

3ztiz2p39

Az Initalization String -hez tartozik, hogy valahol csak van benne már ilyesmi, mert ha MDI-ban F-érték nélkül kiadom a G1 X100 parancsot, akkor 6 mm/min-el elindul a tengely.

s7manbs8

A nem szimmetrikus gyorsulás lassulás nem azért van, mert gyorsuláskor a mechanika fékezi, az negatívan hat rá, lassításkor meg segíti és amiatt több megengedhető ? Nem rossz az szerintem.

kr97pwss2

Lehet félreérthetően írtam, de Exact Stop-nál nincs pályaoptimalizálás, akkor mindig pontosan azt hajtja végre, ami a feladat. A pályaoptimalizálás jelentősége akkor mutatkozik meg, ha állandó sebességű üzemmódban például két lineáris szakasz szöget zár be egymással. A két mozgást pontosan csak akkor tudja végrehajtani a programozott pályán, ha a saroknál lelassít, majd irányt vált és újra felgyorsít. Az optimalizáláskor a pályakövető kiszámolja a beállított rádiuszhibát figyelembe véve, hogy mennyire kell lelassítani, hogy a kanyart kicsit levágva vegye be, de még a hibán belül. Persze a lassítás/gyorsítási beállításokat az összes tengelyen figyelembe veszi. Az alábbi ábrán látható a lekerekítés:  
http://www.polgardidesign.hu/download/Web/Corner%20error.JPG" border=0>

kr97pwss2

Egyenlőre a program indulásakor az F-nek egy fix kis értéket adunk, hogy ne legyen nulla.