Znaleziono 5 wyników

autor: kamar
27 maja 2014, 21:49
Forum: LinuxCNC (dawniej EMC2)
Temat: Suby NGCGUI nie działają
Odpowiedzi: 16
Odsłony: 2162

Kod: Zaznacz cały

( ------------------------------ )
(   Frezowanie po obwodzie  )
( ------------------------------ )
( Kamar                          )
( Time-stamp: <2013-07-24 12:40> )
( ------------------------------ )

o<frezowanie_po_obwodzie> sub

#<obr> = #1 (=1500 obroty)
#<liczba_operacji> = #2 (=20 liczba operacji)
#<kat> = #3 (=-17 kąt)
#<predkosc> = #4 (=100 prędkość)
#<a_poczatkowe> = #5 (=0 A początkowe)
#<xpocz> = #6 (=0 X poczatkowy)
#<xkonc> = #7 (=57 X końcowy)
#<ypocz> = #8 (=0 Y początkowy)
#<ykonc> = #9 (=0 Y końcowy)
#<glebokosc> = #10 (=-2 głębokość)
#<skok> = #11 (=0.5 skok)
#<zpocz> = #12 (=0 Z początkowy)
#<woda> = #13 (=1 <> chłodzenie)
#<w_z> = #14 (wyjazd Z)
#<w_x> = #15 (wyjazd X)
#<w_y> = #16 (wyjazd Y)

( ------------------------------ )

#<operacja> = 0
g0 z5
g0 x#<xpocz> y#<ypocz>

m3 s#<obr>
o1 if [#<woda> eq 1]
m8
o1 endif

o100 while [#<operacja> lt #<liczba_operacji>]
  g0 a[#<a_poczatkowe> + [#<operacja> * #<kat>]]
	
( --- tu operacja --- )

#<akt_z> = #<zpocz>
o200 while [#<akt_z> gt #<glebokosc>]
  #<akt_z> = [#<akt_z> - #<skok>]
	o210 if [#<akt_z> lt #<glebokosc>]
	  #<akt_z> = #<glebokosc>
	o210 endif

  g0 z#<akt_z>
	g1 x#<xkonc> y#<ykonc> f#<predkosc>          
  g0 z5
  g0 x#<xpocz> y#<ypocz>
	
o200 endwhile

( --- koniec operacji --- )

  #<operacja> = [#<operacja> + 1]
o100 endwhile

g0 z#<w_z>
g0 x#<w_x>
g0 y#<w_y>

o<frezowanie_po_obwodzie> endsub


[ Dodano: 2014-05-27, 21:51 ]

Kod: Zaznacz cały

( ------------------------------ )
(  O T W O R Y  P O  O K R E G U )
( ------------------------------ )
( Kamar                          )
( Time-stamp: <2013-08-09 13:59> )
( ------------------------------ )
(          USTAWIENIA            )
( ------------------------------ )

(info: Wycinanie otworów po okręgu)
o<otwory_po_okregu> sub

#<obr> = #1 (=1500 obroty)
#<frez> = #2 (=6 frez)
#<sr_otworu> = #3 (=6 średnica otworu)
#<srednica> = #4 (=100 średnica podziału)
#<il_otworow> = #5 (=5 ilosc otworow )
#<kat_poczatkowy> = #6 (=0 kąt początkowy)
#<glebokosc> = #7 (=-10 glebokosc )
#<skok> = #8 (=2 skok)
#<wyjazd> = #9 (=5 wyjazd)
#<predkosc_bok> = #10 (=60 prędkość bok)
#<predkosc_dol> = #11 (=30 prędkosć dół)
#<glebokosc_lba> = #12 (=0 głębokość łba)
#<srednica_lba> = #13 (=0 średnica łba)
#<woda> = #14 (=1 <> chłodzenie)
#<pompowanie> = #15 (=2 pompowanie)
#<wyjazd_wiertla> = #16 (=2 wyjazd wiertła)
#<w_z> = #17 (wyjazd Z)
#<w_x> = #18 (wyjazd X)
#<w_y> = #19 (wyjazd Y)
( ------------------------------ )


#<promien> = [#<srednica> / 2] ( promien )
#<kat> = [360 / #<il_otworow>] ( kat )
#<akt_otwor> = 0 ( aktualny otwor - od 0)
#<przesuniecie> = [[#<sr_otworu > / 2] - [#<frez> / 2]]
#<przesuniecie_lba> = [[#<srednica_lba> / 2] - [#<frez> / 2]]

( ustawiam pozycję startowa )
( G0 X#<promien> Y0 Z#<wyjazd> )

o100 while [#<akt_otwor> LT #<il_otworow>]

#<akt_kat> = [[#<akt_otwor> * #<kat>] + #<kat_poczatkowy>] ( kat * otwor )
#<poz_x> = [COS[#<akt_kat>] * #<promien>] ( X to RcosA )
#<poz_y> = [SIN[#<akt_kat>] * #<promien>] ( Y to RsinA )

g17 G21 G61

G0 Z#<wyjazd>
G0 X#<poz_x> Y#<poz_y> ( ustawiam pozycje )
g0 z1

( ------------------------------ )
(           OPERACJA             )
( ------------------------------ )
m3 s#<obr>
o1 if [#<woda> eq 1]
m8
o1 endif

o105 if [#<sr_otworu> gt #<frez>]
( frezuję )
#<akt_glebokosc> = 0
g0 z[#<akt_glebokosc>+1]
o20 while [#<akt_glebokosc> GT #<glebokosc>]
#<akt_glebokosc> = [#<akt_glebokosc> - #<skok>] ( ustalenie glebokosci )
( jezeli nizej limitu to jade max )
o30 if [#<akt_glebokosc> LT #<glebokosc>] 
#<akt_glebokosc> = #<glebokosc>
o30 endif

g0 x[#<poz_x>] y[#<poz_y> + #<przesuniecie>] 
g1 z[#<akt_glebokosc>] F#<predkosc_dol>
g2 x[#<poz_x>] y[[#<poz_y> + #<przesuniecie>]] i0 j[#<przesuniecie> * -1] F#<predkosc_bok>
(g0 y[#<poz_y>])
o20 endwhile

o105 else

G83 X#<poz_x> Y#<poz_y> Z#<glebokosc> R#<wyjazd_wiertla> Q#<pompowanie> F#<predkosc_dol>

o105 endif

G0 Z#<wyjazd>


( wybieram leb )
#<akt_glebokosc_lba> = 0
o110 if [#<glebokosc_lba> LT 0]
     #<akt_glebokosc_lba> = 0
     g0 z0
     o120 while [#<akt_glebokosc_lba> GT #<glebokosc_lba>]
     	  #<akt_glebokosc_lba> = [#<akt_glebokosc_lba> - #<skok>] ( ustalenie glebokosci )
	  ( jezeli nizej limitu to jade max )
     	  o130 if [#<akt_glebokosc_lba> LT #<glebokosc_lba>] 
     	       #<akt_glebokosc_lba> = #<glebokosc_lba>
     	  o130 endif
     	  g0 x[#<poz_x>] y[#<poz_y> + #<przesuniecie_lba>] F#<predkosc_bok>
				g1 z#<akt_glebokosc_lba> F#<predkosc_dol>
     	  g2 x[#<poz_x>] y[[#<poz_y> + #<przesuniecie_lba>]] i0 j[#<przesuniecie_lba> * -1] F#<predkosc_bok>
     	  (g0 y[#<poz_y>]	 )
     o120 endwhile
(     g0 y[#<poz_y>])
     g0 z#<wyjazd>
o110 endif

( ------------------------------ )
( ------------------------------ )

#<akt_otwor> = [#<akt_otwor> + 1] ( nastepny otwor )


o100 endwhile

g0 z#<wyjazd>
g0 z#<w_z>
g0 x#<w_x>
g0 y#<w_y>

o<otwory_po_okregu> endsub
autor: kamar
27 maja 2014, 21:16
Forum: LinuxCNC (dawniej EMC2)
Temat: Suby NGCGUI nie działają
Odpowiedzi: 16
Odsłony: 2162

Co chcesz z tej listy ? Ja na nich robie , gwarancji nie daje :)

Obrazek
autor: kamar
27 maja 2014, 14:31
Forum: LinuxCNC (dawniej EMC2)
Temat: Suby NGCGUI nie działają
Odpowiedzi: 16
Odsłony: 2162

Ściąg z forum jakieś na pewno działające i na nich ćwicz a nie na jakiś wynalazkach.
np.

Kod: Zaznacz cały

( ------------------------------ )
(         K A N A L E K          )
( ------------------------------ )
( Kamar                          )
( Time-stamp: <2013-11-29 12:31> )
( ------------------------------ )

(info: Frezowanie kanału w osi X)

o<kanalek> sub

#<obr> = #1 (=1500 obroty)
#<frez> = #2 (=8 frez)
#<dlugosc> = #3 (=20 długość kanału)
#<glebokosc> = #4  (=-10 głębokość  )
#<glebokosc_poczatkowa> = #5  (=0 Z poczatkowe )
#<skok> = #6 (=2 skok)
#<sr_kanalu> = #7 (=8 szerokość kanału)
#<predkosc_bok> = #8 (=100 prędkość bok) 
#<predkosc_dol> = #9 (=40 prędkość dół)
#<srednica_lba> = #10 (=0 szerokość łba)
#<glebokosc_lba> = #11 (=0 głębokość łba)
#<woda> = #12 (=1 <> chłodzenie)
#<w_z> = #13 (wyjazd Z)
#<w_x> = #14 (wyjazd X)
#<w_y> = #15 (wyjazd Y)

( ------------------------------ )
( ------------------------------ )

g17 g21 g61
g0 z5
g0 x0 y0
m3 s#<obr>
o1 if [#<woda> eq 1]
m8
o1 endif


#<sr_kanalu> = [[#<sr_kanalu> / 2] - [#<frez> / 2]]
#<akt_glebokosc> = #<glebokosc_poczatkowa> ( aktualna glebokosc )

o99 if [#<dlugosc> gt 0]
  #<znak> = 1
o99 else
  #<znak> = -1
o99 endif

o100 while [#<akt_glebokosc> GT #<glebokosc>]
     #<akt_glebokosc> = [#<akt_glebokosc> - #<skok>] ( ustalenie glebokosci )

     ( jezeli nizej limitu to jade max )
     o110 if [#<akt_glebokosc> LT #<glebokosc>] 
     	  #<akt_glebokosc> = #<glebokosc>
     o110 endif
		 
     g0 z[#<akt_glebokosc> + #<skok> + 0.5]
     G1 Z#<akt_glebokosc> F#<predkosc_dol> ( dobieranie poczatkowe )

     o120 if [#<sr_kanalu> gt 0]
        g1 y[#<sr_kanalu> * #<znak> * -1] F#<predkosc_bok>
        g2 x[#<sr_kanalu> * #<znak> * -1] y0 r#<sr_kanalu>
        g2 y[#<sr_kanalu> * #<znak>] x0 r#<sr_kanalu>
     o120 endif
     G1 x#<dlugosc> F#<predkosc_bok> ( kopanie fasolki )
     o130 if [#<sr_kanalu> gt 0]     
        g2 x[#<dlugosc> + [#<sr_kanalu> * #<znak>]] y0 r#<sr_kanalu>
        g2 y[#<sr_kanalu> * #<znak> * -1] x#<dlugosc> r#<sr_kanalu>
     o130 endif

     g1 x0
     g1 y0
		 
o100 endwhile

g0 z2


#<srednica_lba> = [#<srednica_lba> - #<frez>]
#<akt_glebokosc> = 0
o200 while [#<akt_glebokosc> GT #<glebokosc_lba>]
     #<akt_glebokosc> = [#<akt_glebokosc> - #<skok>] ( ustalenie glebokosci )
     o210 if [#<akt_glebokosc> LT #<glebokosc_lba>] 
     	  #<akt_glebokosc> = #<glebokosc_lba>
     o210 endif
     g0 z[#<akt_glebokosc> + #<skok> + 0.5]
     G1 Z#<akt_glebokosc> F#<predkosc_dol> ( dobieranie poczatkowe )

     g1 y[#<srednica_lba> * #<znak> * -1] F#<predkosc_bok>
     g2 x[#<srednica_lba> * #<znak> * -1] y0 r#<srednica_lba>
     g2 y[#<srednica_lba> * #<znak>] x0 r#<srednica_lba>
     G1 x#<dlugosc> F#<predkosc_bok> ( kopanie fasolki )
     g2 x[#<dlugosc> + [#<srednica_lba> * #<znak>]] y0 r#<srednica_lba>
     g2 y[#<srednica_lba> * #<znak> * -1] x#<dlugosc> r#<srednica_lba>

     g1 x0
     g1 y0
o200 endwhile

g0 z#<w_z>
g0 x#<w_x>
g0 y#<w_y>

o<kanalek> endsub
autor: kamar
27 maja 2014, 13:07
Forum: LinuxCNC (dawniej EMC2)
Temat: Suby NGCGUI nie działają
Odpowiedzi: 16
Odsłony: 2162

Nieczytelne te zrzuty a się nie powiększają. I co to za suby ?
autor: kamar
26 maja 2014, 16:40
Forum: LinuxCNC (dawniej EMC2)
Temat: Suby NGCGUI nie działają
Odpowiedzi: 16
Odsłony: 2162

Najłatwiej to sprawdzisz odpalając suba przez " Custom " Jak odpali to ścieszka skopana.

Wróć do „Suby NGCGUI nie działają”