Stożek i kula

Dyskusje dotyczące programowania G-Code

Autor tematu
XisD
Stały bywalec (min. 70)
Stały bywalec (min. 70)
Posty w temacie: 4
Posty: 75
Rejestracja: 09 sty 2013, 20:52
Lokalizacja: słupsk

Stożek i kula

#1

Post napisał: XisD » 24 paź 2013, 20:10

Witam,

Czy da się zrobic kule za pomocą funkcji matematycznych VC1 itp?

I czy mógłby ktoś sprawdzić ten na stożek:

VC1=0.1
VC2=0.1
VC3=50
VC4=0.1
G90 G0 X0.1Y0
G3 I=VC4+VC2
G3 I=VC4+VC2
G2 Z=VC4+VC2
VC1=VC1+VC2
VC4=VC4-VC2
X=-VC1
VC3=VC3-1
IF [VC3 GT 0] N2
M02

G91
.. ITP

WIEM ŻE DA SIĘ ZA POMOCA MASTERCAMA ITP, ALE CHODZI MI CZY SIĘ DA FUNKCJAMI :d



Tagi:


PiRo_man
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 4
Posty: 329
Rejestracja: 23 sie 2010, 21:32
Lokalizacja: Świerklany

#2

Post napisał: PiRo_man » 25 paź 2013, 06:32

Da się. Ze stożkiem jest mniej problemu niż z kulą.


Autor tematu
XisD
Stały bywalec (min. 70)
Stały bywalec (min. 70)
Posty w temacie: 4
Posty: 75
Rejestracja: 09 sty 2013, 20:52
Lokalizacja: słupsk

#3

Post napisał: XisD » 25 paź 2013, 15:35

A czy ten kod jest dobrze napisany na stożek mógłby ktoś zobaczyć w symulatorze?


PiRo_man
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 4
Posty: 329
Rejestracja: 23 sie 2010, 21:32
Lokalizacja: Świerklany

Re: Stożek i kula

#4

Post napisał: PiRo_man » 25 paź 2013, 16:03

XisD pisze:VC1=0.1
VC2=0.1
VC3=50
VC4=0.1
G90 G0 X0.1Y0
G3 I=VC4+VC2
G3 I=VC4+VC2
G2 Z=VC4+VC2
VC1=VC1+VC2
VC4=VC4-VC2
X=-VC1
VC3=VC3-1
IF [VC3 GT 0] N2
M02
Nie masz zejścia w osi Z. Gdzie jest etykieta N2 do której ma być wykonany skok? Po warunku od razu podajesz etykietę do której ma być wykonany skok? Nie powinno być przed etykietą instrukcji GOTO?
XisD pisze:G91
.. ITP
Co to? Najbardziej mnie zaciekawiło to "ITP".
Z frezowaniem stożka jest o tyle mniej problemu że kontakt freza z powierzchnią obrabianą jest zawsze w tym samym punkcie stycznym. Także obliczenia związane z tym punktem ograniczają się tylko do jednego działania. Po jego wykonaniu już nie trzeba ich ponownie przeliczać w pętli. Z kulą jest trudniej ponieważ każde zejście zmienia punkt styku narzędzia z powierzchnią, a co za tym idzie im wyższy kąt styczności względem poziomu, tym promień kontaktu jest mniejszy.


Autor tematu
XisD
Stały bywalec (min. 70)
Stały bywalec (min. 70)
Posty w temacie: 4
Posty: 75
Rejestracja: 09 sty 2013, 20:52
Lokalizacja: słupsk

#5

Post napisał: XisD » 25 paź 2013, 16:34

Oj sorry śpieszyłem się i jeszcze się ucze jestem młody i bez dużego doświadczenia.:


S2000M3
G0Z500
X0YO
Z5
G1 Z0 F500

VC1=0.1
VC2=0.1
VC3=50
VC4=0.1
N1 G90 G0 X0.1Y0
N2 G3 I=VC4+VC2
G2 Z=VC4+VC2
N3 VC1=VC1+VC2

VC4=VC4-VC2
G1X=-VC1
N4 VC3=VC3-1
N5 IF [VC3 GT 0] N2
N6 M02

G91
G0Z500
Y500
M30


PiRo_man
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 4
Posty: 329
Rejestracja: 23 sie 2010, 21:32
Lokalizacja: Świerklany

#6

Post napisał: PiRo_man » 26 paź 2013, 13:53

XisD pisze:N1 G90 G0 X0.1 Y0
Tutaj zamiast X0.1 lepiej jest wpisać X=VC1, wtedy kod będzie bardziej uniwersalny i w przypadku robienia innego stożka wystarczy zmienić jedną zmienną, nie ingerując w resztę programu.
XisD pisze:N2 G3 I=VC4+VC2
Domyślam się, że tutaj biorąc pod uwagę domyślność parametrów wystarczy podać położenie środka okręgu, i program wykona okrąg. W tym przypadku środek okręgu masz na współrzędnych dodatnich od aktualnego położenia narzędzia, czyli stożek który robisz jest poza osią. Nie wiem czy zrobiłeś to umyślnie czy nie, ale jest to mało optymalne.
XisD pisze:G2 Z=VC4+VC2
Nie powinno tu być G1? Poza tym równocześnie z zejściem narzędzia w osi Z musisz odsuwać narzędzie w osi (w tym przypadku) X.
XisD pisze:VC4=VC4-VC2
Tutaj od VC4 odejmujesz VC2, a w bloku między N2 a N3 do pozycji Z dodajesz VC4 do VC2. Bez sensu... Jak operujesz na zmiennych to do ustawiania się na pozycji narzędzia nie wykorzystuj działań bo się pogubisz, oblicz pozycję przed interpolacją, zapisz je do jakiejś jednej konkretnej zmiennej, i później pod tą zmienną się ustaw. Będzie Ci łatwiej ogarnąć kod.
XisD pisze:G1X=-VC1
Dlaczego X ma wartość ujemną skoro zaczynałeś program od pozycji dodatniej? Taki konflikt jest niedopuszczalny - przecinasz w tym momencie tym przejazdem stożek na pół.
XisD pisze:N4 VC3=VC3-1
N5 IF [VC3 GT 0] N2
Rozumiem że to liczba powtórzeń. Bardziej optymalnie jest kontrolować oś zejścia w osi Z, nie trzeba wtedy ręcznie przeliczać ilości zejść. Ale na początku możesz się pobawić i poćwiczyć różne warianty, więc jak najbardziej jest to do zaakceptowania.


Autor tematu
XisD
Stały bywalec (min. 70)
Stały bywalec (min. 70)
Posty w temacie: 4
Posty: 75
Rejestracja: 09 sty 2013, 20:52
Lokalizacja: słupsk

#7

Post napisał: XisD » 26 paź 2013, 15:39

A moge jakimś darmowym symulatorem sprawdzić jak robi ten stożek?


PiRo_man
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 4
Posty: 329
Rejestracja: 23 sie 2010, 21:32
Lokalizacja: Świerklany

#8

Post napisał: PiRo_man » 26 paź 2013, 18:24

Kod: Zaznacz cały

http://www.cnc.info.pl/topics44/symulator-g-kodow-vt37786.htm
Możesz spróbować poszukać. Polecam również przeszukać gOOgle.

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „G-CODE - programowanie”