kilka podstawowych komend G-CODE

Dyskusje dotyczące programowania G-Code

Autor tematu
korinsj
Znawca tematu (min. 80)
Znawca tematu (min. 80)
Posty w temacie: 6
Posty: 80
Rejestracja: 08 wrz 2004, 18:20
Lokalizacja: Miłoszyce
Kontakt:

kilka podstawowych komend G-CODE

#1

Post napisał: korinsj » 02 lip 2012, 11:56

Witam,

Napisałem program graficzny/wektorowy który generuje mi kod dla frezarki CNC. Program używa tylko kilka podstawowych komend G-CODE.

Ponieważ nie mam możliwości przetestowania, mam prośbę do speców od G-CODE - czy mógłby ktoś rzucić okiem na poniższy tekst - czy jest on poprawny. Czy tak wygenerowany program zostanie poprawnie wykonany przez frezarkę.

Nie jestem pewien czy znaki '%' powinny być na końcu i początku, czy punkt dziesiętny to ',' czy '.'. Oczywiście komentarze po ';' to mój dopisek odręczny.

%
N1 G21 ; jednostki w [mm]
N2 G90 ; koordynaty bezwzględne
N3 G94 ; jednostki na [min]
N4 G0 Z10 ; szybki dojazd osi Z do pozycji górnej 10mm
N5 G97 S1000 ; ustawienie prędkości obrotowej wrzeciona na 1000 obr/min
N6 G0 X10 Y10 ; szybki dojazd XY do pozycji 10mm/10mm
N7 M7 ; włączenie chłodziwa
N8 G4 P0,5 ; zwłoka 0,5sek
N9 M3 ; włączenie wrzeciona
N10 G4 P0,5 ; zwłoka 0,5sek
N11 G0 Z1 ; szybki dojazd osi Z do pozycji 1mm (tuż nad materiał)
N12 G1 Z-1 F500 ; robocze zagłębienie osi Z w materiał na głębokość -1mm z szybkościa 500mm/min
N13 G1 X10 Y30 F1000 ; roboczy przejazd XY z prędkościa 1000mm/min
N14 G1 X30 Y30 F1000 ; roboczy przejazd XY z prędkościa 1000mm/min
N15 G1 X30 Y10 F1000 ; roboczy przejazd XY z prędkościa 1000mm/min
N16 G1 X10 Y10 F1000 ; roboczy przejazd XY z prędkościa 1000mm/min
N17 G0 Z10 ; szybki dojazd osi Z do pozycji górnej 10mm
N18 M5 ; wyłączenie wrzeciona
N19 M9 ; wyłączenie chłodziwa
N20 M30 ; koniec i przewinięcie na początek
%

Pozdrawiam,
SM



Tagi:


rc666
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 2
Posty: 1244
Rejestracja: 27 cze 2011, 14:48
Lokalizacja: Chrząszczyżewoszyce

#2

Post napisał: rc666 » 02 lip 2012, 12:29

Z tego co mi wiadomo to do wlaczenia chlodziwa uzywa sie M08, chyba ze cos sie zmienilo w ostatnim czasie.
Druga sprawa to szybki dojazd osi Z. Najpierw zrob szybki dojazd na osi X i Y a potem na Z.
Nie ma wywolania narzedzia typu T1 M6. Wrzeciono wlaczaj na samym poczatku.
Sam poczatek programu powinien wygladac tak:
N1 G40 G80 G90 G94 G17 M09;
Punkty dziesietne to sa kropki a znak ";" daje sie na koncu linii.
Nie ma głupich pytań, są tylko głupcy którzy ich nie zadają...

Awatar użytkownika

WZÓR
Moderator
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 2
Posty: 7977
Rejestracja: 01 sty 2009, 20:01
Lokalizacja: Oława

Re: kilka podstawowych komend G-CODE

#3

Post napisał: WZÓR » 02 lip 2012, 13:18

korinsj pisze:...
Nie jestem pewien czy znaki '%' powinny być na końcu i początku, czy punkt dziesiętny to ',' czy '.'. Oczywiście komentarze po ';' to mój dopisek odręczny.
Znak ,,%'' powinien znajdować się na początku i na końcu programu.
Na początku programu pod znakiem ,,%'' brak numeru programu (np.)
%
O12345
......
, a komentarze wpisuj w nawiasach (....) , np.
...
N4 G0 Z10 ; (szybki dojazd osi Z do pozycji górnej 10mm)
N5 G97 S1000 ; (ustawienie prędkości obrotowej wrzeciona na 1000 obr/min)
N6 G0 X10 Y10 ; (szybki dojazd XY do pozycji 10mm/10mm)
....

M7 - mgła olejowa (opcja).

Mariusz.
Pomagam w:
HAAS - frezarki, tokarki


Autor tematu
korinsj
Znawca tematu (min. 80)
Znawca tematu (min. 80)
Posty w temacie: 6
Posty: 80
Rejestracja: 08 wrz 2004, 18:20
Lokalizacja: Miłoszyce
Kontakt:

#4

Post napisał: korinsj » 02 lip 2012, 14:14

Dziękuję bardzo za odpowiedzi. Przerobiłem program wg. wskazówek.

Mam nadzieję, że tak będzie poprawnie. (Czyli że po T01 M06 pozycja Z jest w bezpiecznym miejscu i mogę wykonać ruch XY. Czy wrzeciono załączam zaraz po T01 M06, czy dopiero po N8 G00 X10 Y10?).

%
O1
N1 G21 G40 G80 G90 G94 G17 M09
N2 T01 M06
N3 G97 S1000
N4 M08
N5 G04 P0.5
N6 M03
N7 G04 P0.5
N8 G00 X10 Y10
N9 G00 Z1
N10 G01 Z-1 F500
N11 G01 X10 Y30 F1000
N12 G01 X30 Y30 F1000
N13 G01 X30 Y10 F1000
N14 G01 X10 Y10 F1000
N15 G00 Z10
N16 M05
N17 M09
N18 M30
%

Mam jeszcze pytanie - czy jeżeli maszyna nie wymienia sama narzędzi, mogę wpisać coś takiego:

%
O1
N1 G21 G40 G80 G90 G94 G17 M09
N2 T01 M06
N3 (MSG: Załóż frez do metalu.)
N4 M01
N5 G97 S1000
N6 M08
...

Pozdrawiam,
SM


MoldMichal
Specjalista poziom 2 (min. 300)
Specjalista poziom 2 (min. 300)
Posty w temacie: 4
Posty: 307
Rejestracja: 03 mar 2012, 12:04
Lokalizacja: Częstochowa

#5

Post napisał: MoldMichal » 02 lip 2012, 14:37

cz G97 nie jest przypadkiem kodem na uruchomienie stałych obrotów w tokarce ?
a kolega pyta o frezowanie.. czyli M3
M30 wyłączy i chłodziwo i obroty wiec i M9 iM5 niepotrzebne na końcu programu..


no i brakuje mi odniesienia do bazy (G54 G55 .... )
wymiana narzędzia na początku programu i zaraz po nim włączenie wrzeciona :)
w trybie memory i tak nie wymienisz oprawki wiec jak maszyna nie zmienia sama to darował bym sobie wywoływanie narzędzi :)


Autor tematu
korinsj
Znawca tematu (min. 80)
Znawca tematu (min. 80)
Posty w temacie: 6
Posty: 80
Rejestracja: 08 wrz 2004, 18:20
Lokalizacja: Miłoszyce
Kontakt:

#6

Post napisał: korinsj » 02 lip 2012, 14:52

> cz G97 nie jest przypadkiem kodem na uruchomienie stałych obrotów w tokarce ?
> a kolega pyta o frezowanie.. czyli M3

stąd:

http://masters.ckp.pl/plecyk/cnc_sinumerik.htm

wynika że G97 to komenda dla frezarki ("stałe obroty"),
więc miałem nadzieję że tyczy się to prędkości
obrotowej wrzeciona.

... z tej strony wynika także że M3 jest dla tokarki.

> M30 wyłączy i chłodziwo i obroty wiec i M9 iM5 niepotrzebne na końcu programu..

no to wycinam.

> no i brakuje mi odniesienia do bazy (G54 G55 .... )

a tutaj to już nie wiem o co chodzi.
czy po prostu wkleić te komendy na początku programu?
a może umożliwić użytkownikowi, aby jeśli chce, sam
zdefiniował ciąg komend do wywołania na początku programu?

> wymiana narzędzia na początku programu i zaraz po nim włączenie wrzeciona :)

czyli tak jak mam w tej chwili.

> w trybie memory i tak nie wymienisz oprawki wiec jak maszyna nie zmienia sama to darował bym sobie > wywoływanie narzędzi :)

w programie mam zdefiniowane czy chce się wywołać tę komendę, czy też
napis+stop dla użytkownika czy też ani to, ani to

SM


rc666
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 2
Posty: 1244
Rejestracja: 27 cze 2011, 14:48
Lokalizacja: Chrząszczyżewoszyce

#7

Post napisał: rc666 » 02 lip 2012, 14:59

MoldMichal pisze: M30 wyłączy i chłodziwo i obroty wiec i M9 iM5 niepotrzebne na końcu programu.
Potrzebne, potrzebne.
Nie ma głupich pytań, są tylko głupcy którzy ich nie zadają...

Awatar użytkownika

WZÓR
Moderator
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 2
Posty: 7977
Rejestracja: 01 sty 2009, 20:01
Lokalizacja: Oława

#8

Post napisał: WZÓR » 02 lip 2012, 15:49

korinsj pisze:Dziękuję bardzo za odpowiedzi. Przerobiłem program wg. wskazówek.

Mam nadzieję, że tak będzie poprawnie. (Czyli że po T01 M06 pozycja Z jest w bezpiecznym miejscu i mogę wykonać ruch XY. Czy wrzeciono załączam zaraz po T01 M06, czy dopiero po N8 G00 X10 Y10?).

%
O1
N1 G21 G40 G80 G90 G94 G17 M09
N2 T01 M06
N3 G97 S1000
N4 M08
N5 G04 P0.5
N6 M03
N7 G04 P0.5
....
%

....
G97 nie jest potrzebne ...... na cholerę te G04 P0.5 ? :roll:

Nie widzę w programie G43 i (np.) G54 .... :razz:

przykład;


%
O1
G17
G40
G80
G90
G54
T2 M6 (Tool # 2 : 12. Endmill )
G43 H2
M8
S2100 M3
G0 X-6. Y0
....
....

Mariusz.
Pomagam w:
HAAS - frezarki, tokarki


Autor tematu
korinsj
Znawca tematu (min. 80)
Znawca tematu (min. 80)
Posty w temacie: 6
Posty: 80
Rejestracja: 08 wrz 2004, 18:20
Lokalizacja: Miłoszyce
Kontakt:

#9

Post napisał: korinsj » 02 lip 2012, 16:53

> G97 nie jest potrzebne ...... na cholerę te G04 P0.5 ?

Wstawienie zwłoki po załączeniu chłodziwa i wrzeciona (np. czas aby się rozpędziło)

> Nie widzę w programie G43

Kompensacja długości narzędzia - jak to działa?

> i (np.) G54 .... :razz:

przesunięcie układu współrzędnych - jaki jest tego cel? ja zadaje przecież komendami do jakich współrzędnych frez ma dojechać.

SM

[ Dodano: 2012-07-02, 17:06 ]
Tak wygląda program jeśli w programie wyzeruje czasy opóźnień i obroty wrzeciona też dam na zero - wtedy program pomija generowanie tych komend.

%
O1
N1 G21
N2 G40
N3 G80
N4 G90
N5 G54
N6 G94
N7 G17
N8 T01 M06
N9 M08
N10 M03
N11 G00 X10 Y10
N12 G00 Z1
N13 G01 Z-1 F500
N14 G01 X10 Y30 F1000
N15 G01 X30 Y30 F1000
N16 G01 X30 Y10 F1000
N17 G01 X10 Y10 F1000
N18 G00 Z10
N19 M05
N20 M09
N21 M30
%

SM

Awatar użytkownika

clubber84
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 2
Posty: 1191
Rejestracja: 28 sie 2011, 10:34
Lokalizacja: Zach-Pom

#10

Post napisał: clubber84 » 02 lip 2012, 17:59

korinsj pisze:> no i brakuje mi odniesienia do bazy (G54 G55 .... )

a tutaj to już nie wiem o co chodzi.
czy po prostu wkleić te komendy na początku programu?
a może umożliwić użytkownikowi, aby jeśli chce, sam
zdefiniował ciąg komend do wywołania na początku programu?
G54 i G55 to są odwołania dla maszyny, wstawiane na końcu programu przed % w celu wyzerowania pozycji osi X, Y i Z po skończeniu programu (tzw. powrót na pozycję wyjściową).

Pozdrawiam

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „G-CODE - programowanie”