Strona 1 z 1

zagwozdka z makro w iso

: 10 lis 2011, 09:24
autor: krukow123
N1930 ( )
N1932 X150.Y-365.
N1934 Z0.
( 1)WHILE[#2LT14]DO 1
#1=1
#2=ABS[#5003]
G91G0 Z-#1.
G90G40G1 X150.Y-365.F400.
G42 X134.95
Y-189.5,R8.
X165.05,R8.
Y-365.
G40 X150.
END1
N1936 G0Z10.

mógłby ktoś zerknąć na to i powiedzieć mi jak w miarę prosto rozpisać kanał głęboki na 15, tak żeby przed wykonaniem frezowania sprawdzało na jaką głębokość ma zjechać frez, oraz naprowadzić mnie jak wyzerować #1 po wykonaniu makro, bo jak użyję w następnym kanale, to mi widzi już jako warunek spełniony i jedzie do następnego... mam 8 kanałów do wykonania i wprowadzanie 8 zmiennych jest odrobinę nonsensowne. Proszę o wyrozumiałość bo to w końcu matrix ;) (centrum frezarskie pionowe).
ewentualne propozycje w formie gotowca mile widziane, nie to żebym szedł na łatwiznę, ale coś mi nie idzie myślenie po japońsku... :D

: 10 lis 2011, 13:18
autor: artur235
Może to coś pomoże (FANUC 0):
(wybranie było przelotowe wiec nie było konieczności wykonania dokładnie na KONCOWA GLEMB. )
Z5.
#100=-5.(PIERWSZA GLEMB.)
#101=-25.(KONCOWA GLEMB.)
#102=-1.3(KROK)
WHILE[#100GT#101]DO1
G0X216.Y10.15
Z#100
#100=#100+#102
G1X187.38F220
G3Y-10.15R10.15
G1X216.
G0Z5.
END1
G0G69Z70.


Te zmiany powinny spowodować że ostatnie przejście będzie na gł. końcowa #101. Trzeba by przetestować.
...
WHILE[#100NE#101]DO1
G0X216.Y10.15
Z#100
#100=#100+#102
IF[#100LT#101]GOTO1000
#100=#101
N1000

...

: 10 lis 2011, 23:58
autor: krukow123
zastosowałem coś takiego...
N32 X150.Y-365.
N34 Z0.
#1=1.5
( 1) WHILE[#1LE15]DO1
G1 Z-#1 F400.
G42 X134.95
Y-189.5,R8.
X165.05,R8.
Y-365.
G40 X150.
#1=#1+1.5
END1
N36 G0Z10.
po długim namyśle stwierdziłem, że nie będę sobie życia komplikował, więc nauczyłem się dodawać i odejmować... zamiast sczytywać aktualną pozycję osi Z (#5003)... tak, że WIELKIE DZIĘKI Panie artur235 za naprowadzenie na poprawny tok myślenia.
Poza tym u mnie nie idzie połączenie while z if, poprostu się nie zapętli... no to czas na tabliczkę mnożenia i dzielenie. hehehe :D

: 11 lis 2011, 00:32
autor: artur235
krukow123 pisze: Panie
Jaki tam Pan :)

krukow123 pisze:połączenie while z if, poprostu się nie zapętli.
Powinno (musi), jeśli warunek jest odpowiedni i N1000 (z przykładu) jest wewnątrz WHILE END