Programowanie parametryczne

Dyskusje na temat systemu Heidenhaina

marek.jarmuz
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 1
Posty: 1
Rejestracja: 06 paź 2009, 10:26
Lokalizacja: Poznań

#71

Post napisał: marek.jarmuz » 06 paź 2009, 12:50

WItam ,

Jak testować wejscia PLC (HH TNC155) z poziomu programu NC. Niektore parametry Q110-Q113 zwracaja wartosc wybranych funkcji M.
Czy ktoś wie jaki parametr Q pokazuje wartosci binarne wejsc lub ma inny pomysl jak to zrobić?
PS . '[email protected]' niestety nie odpowiada !
W sinumeriku poradziłem sobie za pomocą @code table:
@380 <Var R-param><ValueNoPLC><ValueByte><ValueBit>



Tagi:


tabak
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 1
Posty: 130
Rejestracja: 13 maja 2007, 12:55
Lokalizacja: olsztyn

#72

Post napisał: tabak » 06 paź 2009, 15:35

program wykonuje kanałek cylindryczny frezem kulowym......mam znacznie ulepszoną wersję tego programu, o wiele mniej obciążający procesor, z użyciem cc xz, yz, cp ipa, ale na maszynie.....




0 BEGIN PGM -KANALCYLINDER- MM
1 ;
2 *---------------------------------
3 Q1 = 50 ; PROMIEN CYLINDRA
4 Q2 = 0 ; ŚRODEK PROMIENIA
5 Q3 = 500 ; DLUGOSC KANALKA
6 Q4 = 0,5 ; DOSUW
7 *---------------------------------
8 Q25 = 35 ; NUMER NARZEDZIA
9 Q26 = 3000 ; OBROTY
10 Q27 = 400 ; POSUW
11 *---------------------------------
12 Q5 = 150 ; ILOSC KROKOW
13 *---------------------------------
14 ;
15 ;
16 ;
17 Q20 = Q3 / 2
18 Q21 = Q1 + 2
19 Q22 = Q1 + 0.2
20 BLK FORM 0.1 Z X-Q20 Y-Q21 Z-Q22
21 BLK FORM 0.2 X+Q20 Y+Q21 Z+0
22 ;
23 TOOL CALL Q25 Z SQ26 FQ27
24 M3
25 M8
26 ;
27 Q6 = Q1 - Q108
28 Q7 = Q2 - Q108
29 Q8 = Q2 / Q1
30 Q9 = ASIN Q8
31 Q10 = COS Q9 * Q6
32 Q11 = 90 - Q9
33 Q12 = 270 - Q11
34 Q13 = 270 + Q11 + 1
35 Q14 = ( Q3 / 2 ) + Q108 + ( 2 * Q4 )
36 Q15 = ( Q11 * 2 ) / Q5
37 Q17 = - Q14
38 Q18 = ( Q3 / 2 ) + ( 3 * Q4 )
39 ;
40 L X+Q17 Y-Q10 Z+100 R0 FMAX
41 CC Z+Q7 Y+0
42 LBL 2
43 L X+Q17 Y-Q10 Z+20 R0 FMAX
44 L Z+2 R0 FMAX
45 Q17 = Q17 + Q4
46 Q16 = Q12
47 LP PR+Q6 PA+Q16
48 LBL 1
49 Q16 = Q16 + Q15
50 LP PR+Q6 PA+Q16
51 FN 12: IF +Q16 LT +Q13 GOTO LBL 1
52 L Z+20 R0 FMAX
53 FN 12: IF +Q17 LT +Q18 GOTO LBL 2
54 ;
55 ;
56 L Z+100 R0 FMAX
57 M9
58 M5
59 L Z-2 R0 FMAX M91
60 L X+1040 Y+600 R0 FMAX M91
61 M30
62 END PGM -KANALCYLINDER- MM


napisałem już sporo programów uniwersalnych, działają, ten jest w sumie jeden z łatwiejszych.......


Jarek San
Czytelnik forum poziom 3 (min. 30)
Czytelnik forum poziom 3 (min. 30)
Posty w temacie: 1
Posty: 32
Rejestracja: 25 wrz 2009, 09:58
Lokalizacja: Okolice Piły

#73

Post napisał: Jarek San » 10 lis 2009, 15:13

Witam Panowie. Chce napisać program na frezowanie konturu po katem przy pomocy parametru Q. Ale dokładnie to mam problem z zapisaniem formuły" jeśli Q1 zmaleje/lub wzrośnie o dana wartość ( tą wartość będzie wyliczona odpowiednio do katą i wartości kroku w osi Z) to Q2 wzrośnie lub z maleje również o jakąś pewna wartość" Dodam że dosuw w osi roboczej Z mam zamiar napisać przez dosuw inkrementalny.No i jeszcze nie wiem gdzie ma sie znajdować ta formuła, w jakim miejscu program. Sterownik iTNC 530. Aaa!! i proszę o wskazówkę a nie o gotowy kod! :grin: Z góry dziekuje


rafglow
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 2
Posty: 294
Rejestracja: 16 maja 2006, 16:10
Lokalizacja: Trójmiasto

#74

Post napisał: rafglow » 10 lis 2009, 19:35

Przyłączam się do prośby. Mam zamiar frezować otwory po stożku. A swoją drogą może ktoś zerknąć na ten Programik bo coś nie tak z warunkami. W zasadzie połaczyłem 2 programy z forum plus swoje. Program robi sześciokąt z dowolnego punktu deklarując współrzędne początkowe i szerokość klucza, w późniejszym czasie dopisze dowolny kąt obrotu i skośne snianki. A jeszcze jedna sprawa. Jak napisać warunki jakbym chciał frezować na głębokość np. 98 mm przy dosuwie 5mm.
Oto mój programik:

0 BEGIN PGM 01 MM
1 BLK FORM 0.1 Z X+0 Y+0 Z-10
2 BLK FORM 0.2 X+16 Y+16 Z+0
3 CYCL DEF 247 USTAWIENIE PKT.BAZ ~
Q339=+1 ;NR PKT ODNIESIENIA
4 ;
5 ; DANE DO ZMIANY
6 FN 0: Q1 =+1 ;odstep bezpieczenstwa
7 FN 0: Q2 =+0 ;wspolrzedna powierzchni
8 FN 0: Q3 =+500 ;posuw wglebny
9 FN 0: Q4 =+1000 ;posuw roboczy X,Y
10 FN 0: Q5 =+1 ;glebokosc zaglebiania
11 FN 0: Q6 =+10 ;glebokosc frezowania
12 FN 0: Q7 =+6 ;wspolrzedna X srodka
13 FN 0: Q8 =+6 ;wspolrzedna Y srodka
14 FN 0: Q10 =+8.2 ;szerokosc klusza, srednica okregu wpisanego
15 FN 0: Q15 =+30 ;kat "alfa" pomiedzy "r" a "R"
16 FN 0: Q17 =+0 ;obrot ukladu wspolrzednych
17 FN 0: Q19 =+32 ;numer narzedzia
18 ;
19 ; PONIZEJ NIE ZMIENIAC
20 FN 3: Q16 =+Q15 * +2
21 FN 7: Q20 = COS +Q15
22 FN 6: Q21 = SIN +Q15
23 FN 4: Q22 =+Q21 DIV +Q20
24 FN 4: Q9 =+Q10 DIV +Q20 ;srednica okregu opisanego
25 FN 4: Q11 =+Q9 DIV +2
26 FN 4: Q12 =+Q10 DIV +2
27 FN 3: Q14 =+Q12 * +Q22
28 FN 3: Q13 =+Q14 * +2
29 ;
30 ;WARUNKI
31 FN 0: Q18 =+Q5
32 FN 11: IF +Q18 GT +Q6 GOTO LBL 4
33 FN 12: IF +Q18 LT +Q6 GOTO LBL 1
34 LBL 1
35 CALL LBL 2
36 FN 1: Q5 =+Q18 + +Q5
37 FN 11: IF +Q18 GT +Q6 GOTO LBL 4
38 FN 10: IF +Q18 NE +Q6 GOTO LBL 1
39 FN 12: IF +Q18 LT +Q6 GOTO LBL 1
40 LBL 0
41 ;
42 ; PROGRAM NA FREZOWANIE
43 TOOL CALL Q19 Z S10000 FQ4
44 L X+Q7 Y+Q8 Z+100 R0 FMAX M13
45 L Z+Q1 FMAX
46 L Z+Q2 FQ4
47 LBL 2
48 TOOL CALL Q19 Z S10000 FQ4
49 CC X+Q7 Y+Q8
50 L Z-Q5 FQ3
51 L IX+Q12 Y+Q8 RR FQ4
52 LP PR+Q11 PA-30
53 LBL 3
54 LP IPA-60
55 CALL LBL 3 REP4
56 L Y+Q8
57 L X+Q7 Y+Q8 R0
58 LBL 0
59 LBL 4
60 L Z+Q1 R0 FMAX
61 L Z+300 R0 FMAX
62 LBL 0
63 TOOL CALL 0
64 M30
65 ;
66 END PGM 01 MM


yago44
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 2
Posty: 198
Rejestracja: 15 wrz 2007, 21:43
Lokalizacja: glogów

#75

Post napisał: yago44 » 10 lis 2009, 23:02

FN 0:Q3=0,2 (ap)
póżniej dajesz
LBL1
FN0:Q2=0,089 (przyrost razy tg kąta)
FN 0;Q5=+Q4
CC X0 Y0
LX+Q5 Y0
CX+Q5 Y0
FN2 Q4=Q4-Q2
L IW-Q3
CALL LBL 1REP ... (ilość powtórzeń(głębokość fazy podzielić przez przyrost))
to jest kawałek programu na frezowanie fazy w otworze.może coś z tego ci pomoże
Ostatnio zmieniony 11 lis 2009, 18:40 przez yago44, łącznie zmieniany 1 raz.
alkohol niszczy skórę-szczególnie na dłoniach i kolanach.


rafglow
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 2
Posty: 294
Rejestracja: 16 maja 2006, 16:10
Lokalizacja: Trójmiasto

#76

Post napisał: rafglow » 11 lis 2009, 12:32

Ok. Dzięki. W tygodniu sprawdzę. Możesz jeszcze napisać co oznaczają poszczególne parametry:
Q5 średnica
Q4 ?

Pozdrawiam.


yago44
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 2
Posty: 198
Rejestracja: 15 wrz 2007, 21:43
Lokalizacja: glogów

#77

Post napisał: yago44 » 11 lis 2009, 18:38

Q4 promień zewnętrzny
zrobiłem mały błąd ale już poprawiłem FN0:Q5=+Q4
alkohol niszczy skórę-szczególnie na dłoniach i kolanach.


bartek.obal
Czytelnik forum poziom 2 (min. 20)
Czytelnik forum poziom 2 (min. 20)
Posty w temacie: 2
Posty: 21
Rejestracja: 18 mar 2019, 17:33
Lokalizacja: Brzesko / Tarnów

Re: Programowanie parametryczne

#78

Post napisał: bartek.obal » 13 paź 2020, 20:04

Witam,
od jakiegoś czasu interesuję mnie temat programowania parametrycznego, byłby mi ktoś w stanie wytłumaczyć co w poniższym przykładzie robię źle?

O ile dobrze to rozumuję linia 24 powinna wykonywać lbl1 aż do osiągnięcia q3=-10 , natomiast sprawdzając grafikę w symulatorze wnioskuję że zatrzymuje się na q3=-9.9 :P




0 BEGIN PGM skoki MM
1 BLK FORM 0.1 Z X-40 Y-40 Z-10
2 BLK FORM 0.2 X+40 Y+40 Z+0
3 CYCL DEF 247 USTAWIENIE PKT.BAZ ~
Q339=+1 ;NR PKT BAZOWEGO
4 ;
5 FN 0: Q1 =+35 ;BOK KWADRATU
6 FN 0: Q2 =+5 ;PROMIEN NARZEDZIA
7 Q1 = Q1 + Q2 ;KOREKCJA PROMIENIOWA
8 FN 0: Q3 =-0.1 ;INKREMENTACJA Z
9 ;
10 TOOL CALL 5 Z S3200
11 L Z+200 FMAX M3
12 L X-Q1 Y-Q1 FMAX
13 L Z+0 FMAX
14 ;
15 LBL 1
16 L Z+Q3 FMAX
17 L Y+Q1 F1000
18 L X+Q1
19 L Y-Q1
20 L X-Q1
21 LBL 0
22 ;
23 Q3 = Q3 - 0.1
24 FN 10: IF +Q3 NE -10 GOTO LBL 1
25 ;
26 L Z+200 FMAX M2
27 ;
28 ;
29 END PGM skoki MM



niżej wklejam program bez skoku który wykonuję tę samą operacje poprawnie.


0 BEGIN PGM skoki2 MM
1 BLK FORM 0.1 Z X-40 Y-40 Z-10
2 BLK FORM 0.2 X+40 Y+40 Z+0
3 CYCL DEF 247 USTAWIENIE PKT.BAZ ~
Q339=+1 ;NR PKT BAZOWEGO
4 ;
5 FN 0: Q1 =+35 ;BOK KWADRATU
6 FN 0: Q2 =+5 ;PROMIEN NARZEDZIA
7 Q1 = Q1 + Q2 ;KOREKCJA PROMIENIOWA
8 FN 0: Q3 =-0.1 ;INKREMENTACJA Z
9 ;
10 TOOL CALL 5 Z S3200
11 L Z+200 FMAX M3
12 L X-Q1 Y-Q1 FMAX
13 L Z+0 FMAX
14 ;
15 LBL 1
16 L Z+Q3 FMAX
17 L Y+Q1 F1000
18 L X+Q1
19 L Y-Q1
20 L X-Q1
21 Q3 = Q3 - 0.1
22 CALL LBL 1 REP99
23 ;
24 L Z+200 FMAX M2
25 ;
26 ;
27 END PGM skoki2 MM

Awatar użytkownika

JacekBelof
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 2
Posty: 526
Rejestracja: 02 gru 2018, 22:25
Lokalizacja: Tarnów MP
Kontakt:

Re: Programowanie parametryczne

#79

Post napisał: JacekBelof » 13 paź 2020, 22:42

FN 10: IF +Q3 NE -10 GOTO LBL 1 oznacza - skocz do etykiety nr 1 gdy Q3 nie jest równe -10... oznacza to, że w chwili gdy Q3=-10 program opuszcza pętlę, dodatkowo, jeśli Q3 na początku byłby równy np. 0.01 to pętla nigdy by się nie skończyła
W twoim przykładzie albo dać -10.1, albo inkrementację przenieść na początek pętli (tuż pod LBL1)
15 LBL 1
16 Q3 = Q3 - 0.1
17 L Z+Q3 FMAX
18 L Y+Q1 F1000
19 L X+Q1
20 L Y-Q1
21 L X-Q1
22 FN 10: IF +Q3 NE -10 GOTO LBL 1
Seria, w moim wykonaniu, to dwie sztuki, w tym jedna w odbiciu lustrzanym. :lol:


capt.d.
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 1
Posty: 387
Rejestracja: 25 lut 2016, 19:23
Lokalizacja: Tarnowskie Góry

Re: Programowanie parametryczne

#80

Post napisał: capt.d. » 14 paź 2020, 07:34

Aloha

Można też zmienić warunek skoku na "większy niż", wtedy nie będzie trzeba pamiętać o konieczności przesunięcia granicy zakończenia pętli.

Pozdrawiam.
Live long and prosper.

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „Heidenhain”