câu hỏi về G code !

  • Thread starter nguyenhuydu
  • Ngày mở chủ đề
N

nguyenhuydu

Author
xin chào mọi ngừoi !
Sắp tới mình có công việc liên quan tới CNC ! mình đang ngâm cứu xem thế nào ! nhưng mình gặp một đoạn code thấy rất lạ ! không hiểu ý nghĩa ra sao !
G10L10P1X...Y..Z..
Xin được mọi ngừoi chỉ dạy !
và còn một vấn đề nữa không biết trên diễn đàn mình có ai biết sử dụng IMSpost không nhỉ ?
nếu biết có thể hướng dẫn cho mình làm sao để post ra được đoạn code kiểu như vậy nhé ! thank a lot !
 
Ðề: câu hỏi về G code !

Mình không rành CNC lắm nhưng xin trả lời bạn theo những gì mình tìm hiểu:
Lệnh G10 trong một số hệ điều khiển thông dụng như fanuc, yasnac... gọi là lệnh "Programable parameter entry" hoặc "Data setting command" - hiểu nôm na là thay đổi các thông số trực tiếp từ chương trình gia công (không cần can thiệp thông qua bảng điều khiển). Bạn có thể xem kỹ lại code của bạn xem là L2 hay L10 được không.

Vì trong hệ điều khiển fanuc, lệnh G10L10 thường có cú pháp: G10L10P_R_ để hiệu chỉnh thông số chiều dài dao, với P là tool number còn R là giá trị hiệu chỉnh, như trong code bạn đưa thì là dao số 1. Còn cú pháp G10L10 mà có X,Y,Z như bạn đưa thì mình chỉ thấy ở phần mền điều khiển LinuxCNC.


Lệnh G10L2 dùng để khai báo các gốc tọa độ gia công: VD: G10L2P1X_Y_Z (P1=G54, p2=G55....)
Ngoài ra lệnh G10 còn dùng đề thay đổi các thông số khác như: Bán kính, giá trị bù mòn dao...và L50 dùng để thay đổi parameter của máy.
 
N

nguyenhuydu

Author
Ðề: câu hỏi về G code !

Cảm ơn bạn ! mình xin ghi lại đầy đủ cú pháp của nó nhé :
G10L21P1X..Y..Z...A..B..C
G54.2P1
đó cú pháp của nó như vậy !
minh đã tìm hiểu được nó là Dynamic fixture offset để thay đổi các ccị trí của gốc chương trình gia công nhưng thônng số L21 là gì ?mình ko biết ý nghĩa ! và không sao post ra được cú pháp này và không biêt trong imspost có cái [FONT=&amp]Mode Variables[/FONT]
nào thiết lập mặc định không ? Xin cảm ơn !
 
Ðề: câu hỏi về G code !

Cảm ơn bạn ! mình xin ghi lại đầy đủ cú pháp của nó nhé :
G10L21P1X..Y..Z...A..B..C
G54.2P1
đó cú pháp của nó như vậy !
minh đã tìm hiểu được nó là Dynamic fixture offset để thay đổi các ccị trí của gốc chương trình gia công nhưng thônng số L21 là gì ?mình ko biết ý nghĩa ! và không sao post ra được cú pháp này và không biêt trong imspost có cái [FONT=&amp]Mode Variables[/FONT]
nào thiết lập mặc định không ? Xin cảm ơn !
Lấu lắm mới thấy có mấy bài về Dynamic work offset
G10L2P1X...Y...Z... tự động ad G54 vào CNC mà không cần đo đạc.
tương tự P1-P6 sẽ là G54-G59.
G10L20P1X...Y...Z... tự động add P1 có tọa độ đó vào bảng work offset mở rộng trong máy CNC
tương tự P1-P48 cho ta G54.1P1-G54.1P48.
Ta có các work offset cơ bản là 6 vị trí và mở rộng thên 48 vị trí tổng cộng là 54 vị trí.
NHư vậy trong máy CNC ta có thể Post ra dồng thời trong cùng 1 chương trình là 54 vị trí nhé.
 
N

nguyenhuydu

Author
Ðề: câu hỏi về G code !

cảm ơn chimen_bka nhiều ! bạn có thể chỉ cho mình cái thông số L20 chữ số " 20 " đó là thông số gì không ? mà mình xem trên chữ ký của bạn thấy bạn sử dụng IMSpost ! mình đang dùng imspost 7.4b bạn có thể hướng dẫn thêm cho mình về cái macro để out ra được các đoạn code như trên không ? cảm ơn bạn !
 
Ðề: câu hỏi về G code !

L20 nó chỉ là một địa chỉ phân biệt L21 L50 ... chứ nó ko phải là tham số chứa đựng cái thông tin gì cả.
 
Last edited:

iPumpkin

<center><b>CAM Programmer</b></center>
Ðề: câu hỏi về G code !

Anh chàng chímèn khẳng định chắc nịch - ghê ghớm quá, không biết chìmèn có rờ cái nút Start của máy CNC thường xuyên không ? :21: Đầy đủ về G10 nè: [h=2]11. G10 L1 Set Tool Table[/h]

G10 L1 P- axes <R- I- J- Q->


  • P - tool number
  • R - radius of tool
  • I - front angle (lathe)
  • J - back angle (lathe)
  • Q - orientation (lathe)

G10 L1 sets the tool table for the P tool number to the values of the words.

A valid G10 L1 rewrites and reloads the tool table.

G10 L1 Example Line

G10 L1 P1 Z1.5 (set tool 1 Z offset from the machine origin to 1.5)G10 L1 P2 R0.015 Q3 (lathe example setting tool 2 radius to 0.015 and orientation to 3)

It is an error if:


  • Cutter Compensation is on
  • The P number is unspecified
  • The P number is not a valid tool number from the tool table
  • The P number is 0

For more information on cutter orientation used by the Q word, see the Lathe Tool Orientation diagram.


[h=2]12. G10 L2 Set Coordinate System[/h]

G10 L2 P- <axes R->


  • P - coordinate system (0-9)
  • R - rotation about the Z axis

G10 L2 offsets the origin of the axes in the coordinate system specified to the value of the axis word. The offset is from the machine origin established during homing. The offset value will replace any current offsets in effect for the coordinate system specified. Axis words not used will not be changed.

Program P0 to P9 to specify which coordinate system to change.


Table 1. Coordinate System
[TH="align: center"]P Value [/TH]
[TH="align: center"]Coordinate System [/TH]
[TH="align: center"]G code[/TH]


[TD="align: center"][/TD]
[TD="align: center"]Active
[/TD]
[TD="align: center"]n/a
[/TD]


[TD="align: center"]1
[/TD]
[TD="align: center"]1
[/TD]
[TD="align: center"]G54
[/TD]


[TD="align: center"]2
[/TD]
[TD="align: center"]2
[/TD]
[TD="align: center"]G55
[/TD]


[TD="align: center"]3
[/TD]
[TD="align: center"]3
[/TD]
[TD="align: center"]G56
[/TD]


[TD="align: center"]4
[/TD]
[TD="align: center"]4
[/TD]
[TD="align: center"]G57
[/TD]


[TD="align: center"]5
[/TD]
[TD="align: center"]5
[/TD]
[TD="align: center"]G58
[/TD]


[TD="align: center"]6
[/TD]
[TD="align: center"]6
[/TD]
[TD="align: center"]G59
[/TD]


[TD="align: center"]7
[/TD]
[TD="align: center"]7
[/TD]
[TD="align: center"]G59.1
[/TD]


[TD="align: center"]8
[/TD]
[TD="align: center"]8
[/TD]
[TD="align: center"]G59.2
[/TD]


[TD="align: center"]9
[/TD]
[TD="align: center"]9
[/TD]
[TD="align: center"]G59.3
[/TD]



Optionally program R to indicate the rotation of the XY axis around the Z axis. The direction of rotation is CCW as viewed from the positive end of the Z axis.

All axis words are optional.

Being in incremental distance mode (G91) has no effect on G10 L2.

Important Concepts:


  • G10 L2 Pn does not change from the current coordinate system to the one specified by P, you have to use G54-59.3 to select a coordinate system.
  • When a rotation is in effect jogging an axis will only move that axis in a positive or negative direction and not along the rotated axis.
  • If a G92 origin offset was in effect before G10 L2, it will continue to be in effect afterwards.
  • The coordinate system whose origin is set by a G10 command may be active or inactive at the time the G10 is executed. If it is currently active, the new coordinates take effect immediately.

It is an error if:


  • The P number does not evaluate to an integer in the range 0 to 9.
  • An axis is programmed that is not defined in the configuration.

G10 L2 Example Line

G10 L2 P1 X3.5 Y17.2

In the above example the origin of the first coordinate system (the one selected by G54) is set to be X=3.5 and Y=17.2. Because only X and Y are specified, the origin point is only moved in X and Y; the other coordinates are not changed.

G10 L2 Example Line

G10 L2 P1 X0 Y0 Z0 (clear offsets for X,Y & Z axes in coordinate system 1)

The above example sets the XYZ coordinates of the coordinate system 1 to the machine origin.

The coordinate system is described in the Coordinate System Section.


[h=2]13. G10 L10 Set Tool Table[/h]

G10 L10 P- axes <R- I- J- Q->


  • P - tool number
  • R - radius of tool
  • I - front angle (lathe)
  • J - back angle (lathe)
  • Q - orientation (lathe)

G10 L10 changes the tool table entry for tool P so that if the tool offset is reloaded, with the machine in its current position and with the current G5x and G92 offsets active, the current coordinates for the given axes will become the given values. The axes that are not specified in the G10 L10 command will not be changed. This could be useful with a probe move as described in the G38 section.

G10 L10 Example

T1 M6 G43 (load tool 1 and tool length offsets)G10 L10 P1 Z1.5 (set the current position for Z to be 1.5)G43 (reload the tool length offsets from the changed tool table)M2 (end program)


  • See T & M6, and G43/G43.1 sections for more information.

It is an error if:


  • Cutter Compensation is on
  • The P number is unspecified
  • The P number is not a valid tool number from the tool table
  • The P number is 0


[h=2]14. G10 L11 Set Tool Table[/h]

G10 L11 P- axes <R- I- J- Q->


  • P - tool number
  • R - radius of tool
  • I - front angle (lathe)
  • J - back angle (lathe)
  • Q - orientation (lathe)

G10 L11 is just like G10 L10 except that instead of setting the entry according to the current offsets, it is set so that the current coordinates would become the given value if the new tool offset is reloaded and the machine is placed in the G59.3 coordinate system without any G92 offset active.

This allows the user to set the G59.3 coordinate system according to a fixed point on the machine, and then use that fixture to measure tools without regard to other currently-active offsets.

It is an error if:


  • Cutter Compensation is on
  • The P number is unspecified
  • The P number is not a valid tool number from the tool table
  • The P number is 0


[h=2]15. G10 L20 Set Coordinate System[/h]

G10 L20 P- axes


  • P - coordinate system (0-9)

G10 L20 is similar to G10 L2 except that instead of setting the offset/entry to the given value, it is set to a calculated value that makes the current coordinates become the given value.

G10 L20 Example Line

G10 L20 P1 X1.5 (set the X axis current location in coordinate system 1 to 1.5)

It is an error if:


 
Ðề: câu hỏi về G code !

Tìm hiểu lại đi nhé P1 to P48 chắc tìm hiểu chưa đầy đủ !

Mình cá là IPUM mới tìm về vụ này chưa được mấy ngày ! chứ không lý gì thiếu thông tin vậy !

9943
0 00000001 SEQUENCE NUMBER COLLATE & STOP
1 00000010 INCLINATION AXIS CONTROL
2 00000100 CONTINOUS DRESSING FUNCTION
3 00001000 CONTROLLABLE AXES EXPANSION
4 00010000 SIMULTANEOUS CONTROL AXES EXPANSION
5 00100000 1000 REGISTERED PROGRAMS
6 01000000 PROGRAM MEMMORY 1200m
7 10000000 G54.1 P1-P48 ADDITIONAL WORK OFFSETS
Added support for G10 to most of the included machine configurations. This is done by means of a G10 macro that supports G54-G59 and G54.1 P1-P48 work offset setting.
Cái work offset mở rộng này nói thật trên mạng khá ít thông tin và chưa chắc chính xác nhưng mình làm va chạm nhiều nên biết về nó, ban đầu làm trên Mastercam và thấy việc Post ra cái này khá dễ ràng nhưng sang Catia thì thách thức thực sự.
Mình Post IMS ra rất nhiểu works offset và chạy ầm ầm ! :D

IPUM xem con mazak đời cao một chút sẽ có.
 
Last edited:
N

nguyenhuydu

Author
Ðề: câu hỏi về G code !

Cảm ơn các anh nhé ! anh chimen có thể chỉ cho em cách để post trong imspost ra được code như vậy được không ? Em dùng imspost 7.4b ! rất cảm ơn !
 

iPumpkin

<center><b>CAM Programmer</b></center>
Ðề: câu hỏi về G code !

Mình sẽ xét cho máy Mill.

Thông thường khi lập trình cho một chi tiết thì mình chọn 1 gốc Zero, gốc đó có thể là G54-->G59 (Siemen). Sau khi mình lập trình --> xuống máy đo đạc G54 và chạy chương trình.

/Khi mình lập trình cho hai (hay nhiều) chi tiết, gá kẹp trên máy ở các vị trí khác nhau và mình chưa biết vị trí tương đối của chúng như thế nào trên bàn máy (vì mình chưa kẹp lên và chưa đo gốc Zero)

/ Hoăc khi mình gia công tinh 1 kích thước rồi mình mới từ đây lấy nó làm chuẩn để mà set đặt chuẩn Zero gia công tiếp theo (khi tính chuổi kích thước theo dung sai chẳng hạn)

/ hoặc gia công cho trung tâm Turn-Mill, chạy xong nguyên công này - đo - rồi set Zero cho nguyên công tiếp theo


Thì mình lập trình mổi chi tiết 1 gốc tọa độ (hay mỗi mặt chuẩn 1 gốc tọa độ) ( Trên phần mềm CAD/CAM mình có thể để chúng cách xa tương đối nhau 1 khoảng cách ĐÃ BIẾT TRƯỚC) => rồi mình xuất ra trong 1 chương trình.

Trong Catia sẽ thiết đặt như sau để IMS xuất ra G-Code:

Machining Axis Change (Chọn hệ trục này cho chi tiết thứ 2 trở đi, chi tiết đầu ví dụ mặc định là G54)

INSERT G55
;(Đoạn chương trình cho chi tiết số 2)
Machining Axis Change (Chọn hệ trục này cho chi tiết thứ 2)
/ G-Code sẽ được tính với gốc là G55

INSERT G56
;(Đoạn chương trình cho chi tiết số 3)
Machining Axis Change (Chọn hệ trục này cho chi tiết thứ 3)
/ G-Code sẽ được tính với gốc là G56
------

Machining Axis Change (Chọn hệ trục này cho chi tiết thứ 9)

INSERT G59.3
;(Đoạn chương trình cho chi tiết số 9)
/ G-Code sẽ được tính với gốc là G59.3
/Từ gốc thứ 10 trở đi liên hệ Chimen

Trong các chương trình từ 1-->9, vì một lý do nào đó muốn bù dao (cho dao -G10 L1 (L10, L11)), bù gốc tọa độ (cho G54--G59.3) thì gọi G10 L2 (L20) mà không phải thay đổi chương trình. Cú pháp trong Catia và để xuất ra trong IMS làm như sau:

/ Tại ví trí đoạn chương trình muốn bù / offset:

INSERT G54 (gọi gốc đang hiện hành)
INSERT G10 L2 X Y (X, Y) là giá trị muốn bù / offset
/Chương trình sẽ được tính với gốc G54, sau đó được dịch chuyển đi 1 đoạn X, Y
INSERT G54 (hủy bù G10)


-------------------

INSERT G5x (gọi gốc đang hiện hành) (x: 4-59.3)
INSERT G10 L2 X Y (X, Y) là giá trị muốn bù / offset
/Chương trình sẽ được tính với gốc G5x, sau đó được dịch chuyển đi 1 đoạn X, Y
INSERT G5x (hủy bù G10)

Nếu bù gốc tọa độ với G10 L khác 2, 20 và gốc khác G54-->G59 và xài máy Mazak thì liên hệ chí mèn.
 
Last edited:
Ðề: câu hỏi về G code !

ims không cần insert G5x can thiệp vào PPtable chút công với ims nó tự ra khi thay hệ toạn độ trong CAM soft.
Tương tự Mastercam lại còn đơn giản hơn nhiều Catia của chúng ta:
Mastercam Post nó viêt :
gốc 0 là G54
gốc 1 là G55
gốc 2 là G56
gốc 3 là G57
gốc 4 là G58
gốc 5 là G59

Gốc 6 là G54.1 P1
Gốc 7 là G54.1 P2
Gốc 8 là G54.1 P3
Gốc 9 là G54.1 P4
Gốc 10 là G54.1 P5
....
Gốc 53 là G54.1 P48
tự động output code nhé không insert nhé.
Chiêu insert mình sài nhưng đã là quá khứ :D
rất là hay !
[video=youtube;rcPMyU2AII8]http://www.youtube.com/watch?v=rcPMyU2AII8[/video]
 
Last edited:
N

nguyenhuydu

Author
Ðề: câu hỏi về G code !

khong ngờ trên diễn đàn mình lại có nhiều bác sử dụng tốt IMSpost đến vậy ! mình thấy trên forum tụi tây họ bàn luận rất hay ! nhất là các mảng về 5 axis ! bác chimen có thể hướng dẫn một cách về can thiệp vào pptable của catia được không ? xin cảm ơn rất nhiều !
 
Re: Ðề: câu hỏi về G code !

khong ngờ trên diễn đàn mình lại có nhiều bác sử dụng tốt IMSpost đến vậy ! mình thấy trên forum tụi tây họ bàn luận rất hay ! nhất là các mảng về 5 axis ! bác chimen có thể hướng dẫn một cách về can thiệp vào pptable của catia được không ? xin cảm ơn rất nhiều !
Cách đơn giản nhất mà không tốn công cách này giống như IPUM ( Bác Bí ) đã nói :
- Sau mỗi thay đổi Axis chương trình thì dùng Post-Processor Instruction thêm dòng lệnh :
INSERT G55 vậy là xong




Sau đó dùng IMS POST sẽ ra OK và kết quả như ý luôn.
Muốn G5x nào thì thay vào dòng insert ở trên nhé.

khong ngờ trên diễn đàn mình lại có nhiều bác sử dụng tốt IMSpost đến vậy !
IMS không phải là PM khó mà cái khó của anh em ta đa phần chưa hiểu về sâu CODE, chế độ cắt gọt và quan trọng là Bản thân máy CNC và controler đã muốn giỏi Post. Theo mình chưa hiểu những cái trên mà đụng vào Post thì chỉ có mà tảu hỏa nhập ma theo đúng nghĩa còn hiểu sâu những cái mình đã đề cập thì IMS và ICAM dễ ràng hơn các bạn nghĩ nhiều.

chúc thành vui vẻ.
 
Last edited:
N

nguyenhuydu

Author
Ðề: câu hỏi về G code !

Đúng là hay ! mình đã tìm đọc những bài của bác chimenbk ! đúng là mọt cao thủ ! và theo hơn 1 tuần học nghiên cứu về catia thì mình kết luận ! nó đúng là mọt cad cam toàn diện nhất hiện nay ! trước đó thì mình dùng nx6 thấy mức độ linh hoạt của nx thì thua xa và khả năng tính toán toolpath của NX cũng thua catia ( so về toolpath 5 axis )... khả năng tạo toolpath của catia có vẻ cho người dùng thỏa thích sáng tạo ! rất hay ! rất đồng tình với bác chimen ! mình cũng mới tìm ra được cái pptable ims trong ổ cài của catia ! nhưng mình mở nó thấy nó có vẻ không theo một cú pháp nào cả ? không biết cái pptabe này có phải dùng để định bố cục cho data output không ? rất mong bác chimenbk có thể hướng dẫ một bài về cách can thiệp hay cú pháp thường dùng của pptable ! rất cảm ơn !
 
Ðề: câu hỏi về G code !

Bí này !
Trên diễn đàn rất nhiều người liên hệ với mình và được mình bỏ thời gian chỉ bào và hướng dẫn hoàn toàn Free và không vụ lợi !
Bạn bí nhìn các Project của mình là biết nó chuyên nghiệp hay nghiệp dư và có khả năng ứng dụng hay không.

Mình giúp trên tinh thần anh em không tính toán và vụ lợi thế mà Bí nói quảng cáo gì đó, một vài đồng kiếm của anh em nhất là sinh viên thì khônthooin, có nhiều buổi tối mình mất cả tối giúp đỡ họ.
Có nhiều anh em ý kiến là bí hay quảng bá bản thân nghe nói bí còn định dạy cả vericut gì đó trong khi bí mới học 3 ngày !

Chém tí thôi !
 
Last edited:
Ðề: câu hỏi về G code !

Em thì kém về kiến thức nên không dám tranh luận về ý kiến này nhưng em đã đọc và gom được rất nhiều kiến thức ở đây ! đặc biệt nhưng bài viết của anh Chimen , em thấy kiến thức thực sự chuyên sâu và đặc biệt hơn nữa là lòng nhiệt tình của anh ! em nghĩ diễn đàn mes nhà mình nên có nhiều các bậc thầy như vậy ! và cũng không phải ai khoe mẽ gì cả ạ ! vì tất cả những kiến thức chuyên sâu đó không phải ai cũng có dược , có khi phải bỏ cả tháng mới được mọt 2 dòng ! nên đáng tự hào mới đúng ! ạ ! hihi ! em vẫn đang theo dõi pic này xin anh Chimen có thể chia sẻ thêm kiến thức về pptable cho mọi ngừoi cùng học tập nghiên cứu ạ ! cảm ơn anh rất nhiều ! :D
 
Ðề: câu hỏi về G code !

Bí vẫn cao ngạo như ngày nào ! đọc tất cả các bài của bí thấy rất cao ngạo tai sao lại vậy ? không lẽ giỏi bắt buộc phải vậy ????
Bí chỉ cần làm một gái G54 G55 G56 trên máy 4 axis với gốc không nằn trên đường tâm của trục xoay là được làm giống như Vericutt trên của chim là được.
Tưởng bí vẫn mắc chỗ điểm Pivot cơ mà :D
 
Last edited:

TYA

Well-Known Member
G10 : lệnh system coordinate shift.
Khi gán lệnh này thì ngay cả các lệnh tọa độ khác như G54, G55... cũng bị nó xê dịch đi luôn.
Chẳng hạn như này : Khi bạn Home return thì máy báo X600 Z400 khi về tới home. Một cách căn bản thì nó là chiều dài các slideway, và fixed bởi nhà sx máy.
Rồi. Bây giờ chạy lệnh G10P0Z10. thì bạn thấy ngay là X600Z390 tại vị trí Home.

Cả mill và turn mình đều dùng lệnh này (G10) ngay đầu.
 
Ðề: câu hỏi về G code !

Mình có quyển tài liệu lập trình về OKUMA ( toàn tiếng nhật ko hiểu gì hết ) thì có thấy G10 với G11 giống nhau cấu trúc và chức năng giống mấy sư huynh , còn P đó là góc nghiêng so với toạ độ ban đầu ( G54,..) mình thấy trong sách nó ghi vậy thôi :D. Tiện đây cho em hỏi mấy cái lệnh khoan G71,G73, G74, G76,G81, G82, G83, G84, G86, G87, G89 nó khác nhau như thế nào vậy. Cũng là khoan hết mà.
 
Ðề: câu hỏi về G code !

mình có quyển tài liệu lập trình về okuma ( toàn tiếng nhật ko hiểu gì hết ) thì có thấy g10 với g11 giống nhau cấu trúc và chức năng giống mấy sư huynh , còn p đó là góc nghiêng so với toạ độ ban đầu ( g54,..) mình thấy trong sách nó ghi vậy thôi :d. Tiện đây cho em hỏi mấy cái lệnh khoan g71,g73, g74, g76,g81, g82, g83, g84, g86, g87, g89 nó khác nhau như thế nào vậy. Cũng là khoan hết mà.
google.com :1:
 
Top