Kúpos zseb paraméteres megmunkálása

Minden, amit a vezérlésekről tudni lehet...
Avatar
go98admin
Adminisztrátor
Hozzászólások: 376
Csatlakozott: 2016.08.18. 23:17

Kúpos zseb paraméteres megmunkálása

HozzászólásSzerző: go98admin » 2016.08.21. 23:43

A #3-ban bemutatott módszerrel most egy kúpos oldalú zsebet munkálunk meg. A jellemző méreteket a program elején paramétereken adjuk meg: a zseb kezdő sugarát és mélységét, az oldal meredekségét (szögét) és a (maximális) fogásmélységet. A program módosíthatja (csökkentheti) a fogásmélységet annak érdekében, hogy végig egyenletes legyen.
0 BEGIN PGM inverz_kup MMprogram kezdete
1 BLK FORM 0.1 Z X-50 Y-50 Z-30szerszám tengelye (Z), nyersdarab minimum pontja
2 BLK FORM 0.2 X+50 Y+50 Z+0nyersdarab átlós pontja
3 Q0 = 40 ;kezdo sugarzseb kezdő sugara
4 Q1 = - 25 ;melysegzseb mélysége
5 Q2 = 20 ;szogzseb oldalának a szöge
6 Q3 = 1.3 ;fogaskörülfordulásonkénti fogásmélység (maximuma)
7 Q4 = - Q1 / Q3fogások számának meghatározása:
8 Q5 = INT Q4fogások számának egészrésze
9 FN 9: IF +Q4 EQU +Q5 GOTO LBL 2ha nincs törtrésze a fogások számának, ugrás a 2-es címkére
10 Q5 = Q5 + 1fogások számának növelése
11 LBL 22-es címke
12 Q3 = 0.5 * Q1 / Q5félkörönkénti fogásmélység értékének meghatározása
13 Q6 = 0.5 * Q3 * TAN Q2félkörönkénti középpont eltolás értékének meghatározása
14 TOOL CALL 14 Z S910Z tengelyű 14-es szerszám hívása, fordulatszám beállítása
15 L Z+20 R0 FMAXpozícionálás a gyorsjárati síkra
16 L X+0 Y+0 R0 FMAX M13munkadarab középpontjára állás, főorsó és hűtővíz indítása
17 CCpóluspont (körközéppont) kijelölése az aktuális pozícióban
18 APPR LCT X+0 Y-Q0 Z+0 R2 RL F500rágördülés kontúrkövetéssel a kezdő körívre
19 C X+Q0 Y+0 DR+kezdő körív, a kontúrkövetés bekapcsolásakor még nem lehet Z mozgás
20 LBL 11-es címke
21 CC X-Q6 Y+0póluspont eltolása
22 CP IPA+180 IZ+Q3 DR+félkörív közben süllyed
23 CC X+Q6 Y+0póluspont eltolása ellenkező irányba
24 CP IPA+180 IZ+Q3 DR+félkörív közben süllyed
25 Q5 = Q5 - 1fogások számának csökkentése
26 FN 11: IF +Q5 GT +0 GOTO LBL 1ha van még fogás, ugrik az 1-es címkére
27 CC X+0 Y+0póluspont visszaállítás a középpontba
28 CP IPA+360 DR+zseb aljának besimítása
29 DEP LCT X+0 Y+0 R2legördülés a kontúrról, konturkövetés kikapcsolva
30 L Z+20 R0 FMAX M5 M9kiemelés biztonsági magasságra, főorsó, hűtővíz állj
31 END PGM inverz_kup MMprogram vége
Fontos észrevenni, hogy a Q5 paraméterben a fogások száma csak egész szám lehet, amit 1-el csökkentünk minden fogás után. Ciklusváltozónak csak egyész számokat használjunk. Ellenkező esetben a kerekítési hibák halmozódása miatt az összehasonlító műveleteknél nem várt eredményt kaphatunk.
Programteszt a vezérlés képernyőjén:
Kép

veldon
Hozzászólások: 7
Csatlakozott: 2018.02.06. 10:39

Re: Kúpos zseb paraméteres megmunkálása

HozzászólásSzerző: veldon » 2018.05.14. 10:08

Szervusztok!

Nagyon tetszik ez a program, szépen ki van dolgozva.
Kérdésem, hogy hogyan tudom több pozícióra alkalmazni, pl. nullpont eltolás?

Üdv.:Szabó

Avatar
GO98
Hozzászólások: 57
Csatlakozott: 2016.08.18. 23:31

Re: Kúpos zseb paraméteres megmunkálása

HozzászólásSzerző: GO98 » 2018.05.16. 20:46

A kúpos zseb középpontja a munkadarab koordináta-rendszerének origója. Ha több más pozícióban is szeretnénk ezt a megmunkálást elvégezni, akkor a 15-30 sorokat egy alprogramba rakva, az alprogram hívása előtti nullapont eltolással a kívánt pozícióban fogja a kúpos zsebet kialakítani a program. Annyi nullapont eltolás és alprogram hívás kell, ahány különböző helyen akarunk egy-egy zsebet. Az alprogram elé ne felejtsünk el kirakni egy M30-at is tartalmazó mondatot, különben az alprogram újra végrehajtódik.

veldon
Hozzászólások: 7
Csatlakozott: 2018.02.06. 10:39

Re: Kúpos zseb paraméteres megmunkálása

HozzászólásSzerző: veldon » 2018.05.17. 14:31

Köszönöm a választ. Nekem valamiért nem sikerül. A sorokat beágyaztam egy alprogramba(cimke), M30 alá. Az elsőt elkészíti, de a következőnél már csak belekezd. Hogy néz ki egy ilyen program?

Avatar
GO98
Hozzászólások: 57
Csatlakozott: 2016.08.18. 23:31

Re: Kúpos zseb paraméteres megmunkálása

HozzászólásSzerző: GO98 » 2018.05.19. 08:09

Valóban nem ilyen egyszerű a dolog, hiszen ha a Q5 paraméter értékét a program egyszer már lecsökkentette nulláig, akkor csak egy lépést fog végrehajtani a következő alkalommal. A kiszámított fogásszámot egy másik "munka" változóba kell rakni, amivel az alprogram minden hívásnál végigszámolhatja a fogások számának csökkentését.
0 BEGIN PGM inverz_kup MMprogram kezdete
1 BLK FORM 0.1 Z X-55 Y-70 Z-30szerszám tengelye (Z), nyersdarab minimum pontja
2 BLK FORM 0.2 X+95 Y+50 Z+0nyersdarab átlós pontja
3 Q0 = 40 ;kezdo sugarzseb kezdő sugara
4 Q1 = - 25 ;melysegzseb mélysége
5 Q2 = 20 ;szogzseb oldalának a szöge
6 Q3 = 1.3 ;fogaskörülfordulásonkénti fogásmélység (maximuma)
7 Q4 = - Q1 / Q3fogások számának meghatározása:
8 Q5 = INT Q4fogások számának egészrésze
9 FN 9: IF +Q4 EQU +Q5 GOTO LBL 2ha nincs törtrésze a fogások számának, ugrás a 2-es címkére
10 Q5 = Q5 + 1fogások számának növelése
11 LBL 22-es címke
12 Q3 = 0.5 * Q1 / Q5félkörönkénti fogásmélység értékének meghatározása
13 Q6 = 0.5 * Q3 * TAN Q2félkörönkénti középpont eltolás értékének meghatározása
14 TOOL CALL 14 Z S910Z tengelyű 14-es szerszám hívása, fordulatszám beállítása
15 CYCL DEF 7.0 NULLAPONTELTOLASelső zseb pozíciója
16 CYCL DEF 7.1 X+5X koordináta
17 CYCL DEF 7.2 Y+0Y koordináta
18 CALL LBL 33-as alprogram hívása
19 CYCL DEF 7.0 NULLAPONTELTOLASmásodik zseb pozíciója
20 CYCL DEF 7.1 X+45X koordináta
21 CYCL DEF 7.2 Y-20Y koordináta
22 CALL LBL 33-as alprogram hívása
23 L Z+150 FMAX M30kiemelés biztonsági magasságra, program vége
24 LBL 33-as címke az alprogramhoz
25 Q7 = Q5fogások számának átrakása egy másik változóba
26 L Z+20 FMAXpozicionálás a gyorsjárati síkra
27 L X+0 Y+0 R0 FMAX M13munkadarab középpontjára állás, főorsó és hűtővíz indítása
28 CC X+0 Y+0póluspont (körközéppont) kijelölése az aktuális pozícióban
29 APPR LCT X+0 Y-Q0 Z+0 R2 RL F500rágördülés kontúrkövetéssel a kezdő körívre
30 C X+Q0 Y+0 DR+kezdő körív, a kontúrkövetés bekapcsolásakor még nem lehet Z mozgás
31 LBL 11-es címke
32 CC X-Q6 Y+0póluspont eltolása
33 CP IPA+180 IZ+Q3 DR+félkörív közben süllyed
34 CC X+Q6 Y+0póluspont eltolása ellenkező irányba
35 CP IPA+180 IZ+Q3 DR+félkörív közben süllyed
36 Q7 = Q7 - 1fogások számának csökkentése
37 FN 11: IF +Q7 GT +0 GOTO LBL 1ha van még fogás, ugrik az 1-es címkére
38 CC X+0 Y+0póluspont visszaállítás a középpontba
39 CP IPA+360 DR+zseb aljának besimítása
40 DEP LCT X+0 Y+0 R2legördülés a kontúrról, konturkövetés kikapcsolva
41 LBL 0alprogram vége
42 END PGM inverz_kup MMprogram vége
Valószínűleg egyszerűbb lenne a program, ha programrész ismétléssel lenne megoldva az adott számú fogás elkészítése.

veldon
Hozzászólások: 7
Csatlakozott: 2018.02.06. 10:39

Re: Kúpos zseb paraméteres megmunkálása

HozzászólásSzerző: veldon » 2018.05.31. 06:21

Köszönöm a segítséget, abszolút jól fut, ajánlom mindenkinek.

veldon
Hozzászólások: 7
Csatlakozott: 2018.02.06. 10:39

Re: Kúpos zseb paraméteres megmunkálása

HozzászólásSzerző: veldon » 2018.06.04. 13:09

Szervusztok!

Hasonlatos parméteres programotok van esetleg csak négyszögzsebre.
Pl.: 360x360 zseb 85 mély 5fok kúpossággal. A sarkok le vannak fúrva, de van olyan is ahol a rádiusszal van ellátva, és az is kúpos.
Variánsként ugyanez, annyi különbséggel, hogy a sarokrádiuszok kúpossága eltérőek.

Üdv.: