pętla programowa

Dyskusje na temat systemu Sinumerik

artur235
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 4
Posty: 271
Rejestracja: 09 lut 2010, 19:40
Lokalizacja: SE

#21

Post napisał: artur235 » 09 mar 2013, 14:21

Instrukcje są w internecie, na pewno po angielsku. Jak znajdziesz instrukcje to upewnij się że to do twojej wersji oprogramowania.

Jak zmienisz na while to też powinno być ok.
IF-y dobrze wpisałeś? Wykasuj IF, STOPRE.




rocky_b
Czytelnik forum poziom 1 (min. 10)
Czytelnik forum poziom 1 (min. 10)
Posty w temacie: 3
Posty: 12
Rejestracja: 07 lut 2012, 21:24
Lokalizacja: Warszawa

Pętla

#22

Post napisał: rocky_b » 20 lis 2013, 16:59

Cześć, dopiero wchłaniam tajniki Sinumerika. Powiedzcie jak zrobić pętlę określonego toczonego kształtu tak aby powtarzane były bloki z opisem konturu i przybierał w osi Z inkrementalnie np. 2 mm pięć razy do poziomu Z=-10

Próbowałem zrobić ,jednak zapętlenie powtarza 5 razy na tym samym poziomie.Co zmienić żeby było dobrze?

....
POCZATEK:
G0 X300
G0 Z5
G0 Z0
G1 Z=IC(-2)
G1 X500
G1 Z5
G0 20
KONIEC:

REPEAT POCZATEK KONIEC P5
...

Awatar użytkownika

janale
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 6
Posty: 101
Rejestracja: 25 lis 2004, 13:22
Lokalizacja: Bialystok

#23

Post napisał: janale » 20 lis 2013, 20:58

Witam,
W zakresie instrukcji pętli, aby miała ona sens, powinien wystąpić parametr zwiększający/zmniejszający swoja wartość. W tym przypadku tym parametrem miał być zapis "IC(-2)" - przyrostowo -2, ale ponieważ podczas przebiegu pętli ten zapis się nie zmienia, działanie programu w pętli w każdym przejściu działa tak samo. Należałoby wprowadzić parametr zmienny,np:
;
N10 DEF INT PRZEJSCIE=0
;
N20 Poczatek_petli:
N30 PRZEJSCIE=PRZEJSCIE-2
N40 Z=IC(PRZEJSCIE)
N50 MSG("PRZEJSCIE="<<PRZEJSCIE)
N60 M0
N70 Koniec_petli:
N80 REPEAT Poczatek_petli Koniec_petli P5
;
N90 M30
Instrukcja MSG wyświetli wartość parametru PRZEJSCIE 6 razy od wartości -2 do -12, instrukcja M0 spowoduje bezwarunkowe zatrzymania się programu. Obie instrukcje wprowadzono w celu pokazania działania programu, należałoby je następnie z pętli usunąć.
Pozdrawiam
Technologia CNC od 1979r.
Programowanie technologiczne
SINUMERIK Operate


rocky_b
Czytelnik forum poziom 1 (min. 10)
Czytelnik forum poziom 1 (min. 10)
Posty w temacie: 3
Posty: 12
Rejestracja: 07 lut 2012, 21:24
Lokalizacja: Warszawa

#24

Post napisał: rocky_b » 21 lis 2013, 07:57

Dzięki p. Janie . Wszystko działa jak trzeba :)


rocky_b
Czytelnik forum poziom 1 (min. 10)
Czytelnik forum poziom 1 (min. 10)
Posty w temacie: 3
Posty: 12
Rejestracja: 07 lut 2012, 21:24
Lokalizacja: Warszawa

#25

Post napisał: rocky_b » 14 lut 2014, 08:41

Pętla z powodzeniem działa jednak tylko przy całkowitych wartościach (-1,-2 it ). Problem gdy wpisuje - 0.5 czytana jest wartość -1.
Co zrobić w tej pętli żeby N30 PRZEJSCIE=PRZEJSCIE-0.5 było czytane?


GumiRobot
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 1
Posty: 689
Rejestracja: 21 mar 2005, 18:51
Lokalizacja: Trójmiasto

#26

Post napisał: GumiRobot » 14 lut 2014, 11:11

DEF INT - definiuje zmienną Przejście jako całkowitą a winno być DEF REAL czyli typ rzeczywisty

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Siemens Sinumerik CNC”