Cóż… na dowód, że „this site is still alive”… dziÅ› „maÅ‚e co nieco”.
Dwa przykłady które poniżej zaprezentuję można z przymrożeniem oka nazwać FK domowej roboty. Chodzi o to, że mimo iż jest to przykład wierszowania, to prezentuje on sposób rozwiązana problemu, może nie tyle niekompletnych, co niekompatybilnych danych.
Tyle tytułem wstępu, ponieważ uważam, że listingi są dość klarowne, dodatkowo okraszone rysunkiem.
BEGIN PGM PRZYKLAD-1 MM
BLK FORM 0.1 Z X+0 Y-nn Z-nn
BLK FORM 0.2 X+nn Y+nn Z+0
TOOL CALL nnn Z Snnnn ;FREZ Dn
;-----------------------------
L X+nn Y-nn R0 FMAX M3 M8
Q1 = - ( D - C )
Q2 = B
Q3 = A + R - ( R * SIN alfa )
Q4 = ( Q2 - Q3 ) / ilosc_iteracji
Q5 = Q2 - ( Dn / 2 )
LBL 1
Q1 = Q1 - ( Q4 * ( TAN alfa ) )
Q2 = Q2 - Q4
Q5 = Q5 - Q4
L X+Q5 Y-nn R0 Fnnnn
L Z+Q1 R0 Fnnnn
L X+Q2 Y-nn RL
L Y+nn
DEP LT LENnn
L Z+bezpieczna R0 FMAX
CALL LBL 1 REP(ilosc_iteracji - 1)
Q5 = Q1 - ( R * COS alfa )
Q1 = alfa
LBL 2
Q1 = Q1 + delta_alfa
Q2 = A + R - ( R * SIN Q1 )
Q3 = Q5 + ( R * COS Q1 )
Q4 = Q2 - ( Dn / 2 )
L X+Q4 Y-nn R0 Fnnnn
L Z+Q3 R0 Fnnnn
L X+Q2 Y-nn RL
L Y+nn
DEP LT LENnn
L Z+bezpieczna R0 FMAX
CALL LBL 2 REP(ilosc_iteracji - 1)
;-?
LBL 3
Q3 = Q3 - nn
L X+(A - (Dn / 2)) Y-nn R0 Fnnnn
L Z+Q3 R0 Fnnnn
L X+A Y-nn RL
L Y+nn
DEP LT LENnn
L Z+bezpieczna R0 FMAX
CALL LBL 3 REP(ilosc_iteracji - 1)
;-----------------------------
L Z(home) R0 FMAX M91
L X(home) Y(home) R0 FMAX M91
M5 M9 M30
END PGM PRZYKLAD-1 MM
BEGIN PGM PRZYKLAD-2 MM
BLK FORM 0.1 Z X+0 Y-nn Z-nn
BLK FORM 0.2 X+nn Y+nn Z+0
TOOL CALL nnn Z Snnnn ;FREZ Dn
;-----------------------------
L X+nn Y-nn R0 FMAX
Q1 = - ( D - C )
Q2 = B + ( R * ( 1 - SIN alfa ) ) + ( ( B - ( R * COS alfa ) ) * TAN ( 90 - alfa ) )
Q3 = B + ( R * ( 1 - SIN alfa ) )
Q4 = ( Q2 - Q3 ) / ilosc_iteracji
Q5 = Q2 - ( Dn / 2 )
LBL 1
Q1 = Q1 - ( Q4 * ( TAN alfa ) )
Q2 = Q2 - Q4
Q5 = Q5 - Q4
L X+Q5 Y-nn R0 Fnnnn
L Z+Q1 R0 Fnnnn
L X+Q2 Y-nn RL
L Y+nn
DEP LT LENnn
L Z+bezpieczna R0 FMAX
CALL LBL 1 REP(ilosc_iteracji - 1)
Q5 = Q1 - ( R * COS alfa )
Q1 = alfa
LBL 2
Q1 = Q1 + delta_alfa
Q2 = A + R - ( R * SIN Q1 )
Q3 = Q5 + ( R * COS Q1 )
Q4 = Q2 - ( Dn / 2 )
L X+Q4 Y-nn R0 Fnnnn
L Z+Q3 R0 Fnnnn
L X+Q2 Y-nn RL
L Y+nn
DEP LT LENnn
L Z+bezpieczna R0 FMAX
CALL LBL 2 REP(ilosc_iteracji - 1)
LBL 3
Q3 = Q3 - nn
L X+(A - (Dn / 2)) Y-nn R0 Fnnnn
L Z+Q3 R0 Fnnnn
L X+A Y-nn RL
L Y+nn
DEP LT LENnn
L Z+bezpieczna R0 FMAX
CALL LBL 3 REP(ilosc_iteracji - 1)
;-----------------------------
L Z(home) R0 FMAX M91
L X(home) Y(home) R0 FMAX M91
M5 M9 M30
END PGM PRZYKLAD-2 MM
W każdym z powyższych przykładów wierszowane jest pochylenie alfa, promień R oraz pionowa ścianka przy wymiarze A.
Wyrażenia nn, nnn, nnnn, to po prostu dowolne wartoÅ›ci liczbowe, Dn – Å›rednica nominalna narzÄ™dzia. Home – pozycja spoczynkowa, bezpieczna, maszyny. M91 – wyÅ‚Ä…czenie wszystkich korekcji, przesunięć, skalowania i rotacji ukÅ‚adu współrzÄ™dnych, wymiary zliczane wedÅ‚ug podstawowego ukÅ‚adu odniesienia.
Przykłady nie uwzględniają promienia naroża narzędzia, w razie potrzeby można skorzystać z przykładów zamieszczanych we wpisie Wierszowanie promieni - metoda stałego przyrostu kąta
Dodatkiem do powyższego materiału niech będzie sposób na odczytanie zaawansowanych informacji o narzędziu.
Czytanie parametrów systemowych:
FN 18: SYSREAD Qxx1 = IDxx2 NRxx3 IDXxx4 .xx5
Gdzie:
xx1 - nr Q-parametru pod którym będzie zapisana odczytana wartość
xx2 - identyfikator grupy systemowej (50 - tabela narzędzi)
xx3 - nr danej w grupie ( dla tabeli narzędzi 1-L, 2-R, 3-R2)
xx4 - indeks (dla tabeli narzędzi - nr narzędzia)
xx5 - nr indeksu (dla tabeli narzędzi numer korektora, w przypadku korektora głównego wartość 0)
FN 18: SYSREAD Q1 = ID50 NR3 ID204 .0 - pod parametrem Q1 będzie dostępna wartość promienia R2 dla narzędzia nr 204.
FN 18: SYSREAD Q2 = ID20 NR1 - aktualny numer narzędzia (reszta parametrów zbędna).
Podziękował, ma Pan bardzo dużą wiedzę na temat programowania parametrycznego, od niedawna odwiedzam pańską stronę i pomału zaczynam to ogarniać wcześniej była to dla mnie czarna magia, także gratuluję wiedzy i mam nadzieję że strona będzie jak najdłużej aktualizowana. Pozdrawiam.
OdpowiedzUsuń