Strona 1 z 1

Program na pętle z przesunięciem o współrzędne XY

: 09 lip 2020, 13:34
autor: ZenQ_18
Witam forumowiczów,
Mam mały problem. Mam program na wykonanie gwintu w łbie śruby czyli planowanie, wiercenie, gwintowanie. Jak zrobić aby zapętlić jedną operację, np. planowanie, z przesunięciem o współrzędne X a potem Y a potem kolejna operacja? Przyrząd w którym to mocuję jest na 16 szt. Nie zawsze przychodzi taka sama ilość sztuk do wykonania i chciałbym aby program był elastyczny tzn, oparty na parametrach. Pętla obejmowała by daną operację z przesunięciem X lub Y - coś jak szyk prostokątny. Pomoże ktoś jak ogarnąć strukturę programu i doda jakiś przykład na którym mógłbym się za wzorować? Od razu nadmienię, że moja znajomość Heidenhaina jest słaba - dosłownie kilka cykli znam wiertarskich czy do gwintowania.

Re: Program na pętle z przesunięciem o współrzędne XY

: 09 lip 2020, 14:04
autor: Steryd
Możesz to zrobić przy pomocy wielu baz po prostu. W cycl def 247 wpisujesz kolejne bazy, albo nawet parametr Q i przyrost. A program wywolujesz jako podpropgram, albo zapisujesz w lblu po M30 i wywołujesz lbla. Jeśli masz stałe przesunięcia, to możesz użyć parametrów do przesunięcia (cykl 7) jak Ci wygodniej.

Re: Program na pętle z przesunięciem o współrzędne XY

: 09 lip 2020, 14:21
autor: ZenQ_18
Mógłbyś mi taki szkielet programu napisać np na wiercenie z pętla i przesunięciem po X Y np. o 20 mm na parametrach np.Q ? Resztę sobie dostosuję sam.

Re: Program na pętle z przesunięciem o współrzędne XY

: 27 wrz 2020, 21:08
autor: VOYTAX
Zamiast każdorazowego przenoszenia baz, możesz używać współrzędnych przyrostowych w pętli, jeśli kolejne detale są w jednakowych odstępach.
L X+0 Y+0 FMAX
LBL 1
  ;cykle planowania, wiercenia i gwintowania
  L IX+10 IY+10 FMAX
CALL LBL1 REP15
gdzie ilość powtórzeń to liczba detali -1.

Dla dwóch rzędów analogicznie
L x+0 Y+0 FMAX
LBL1
 LBL2
  ;cykle planowania, wiercenia i gwintowania
  L IX+10 FMAX
 CALL LBL2 REP 7
 L X+0 IY+10 FMAX
CALL LBL1 REP1
Ilość powtórzeń możesz przypisać do parametru Q na początku programu aby nie szukać ich w kodzie.