Làm sao lập trình CNC bằng AutoCad?

N

nvkhanh_CNTN

Cảm ơn anh nhiều em đang ôn thi hôm nao em post một chương trình do em lập trình bù dao bằng tay anh nhận xét hộ em đúng hay sai anh nhé. Em đang học nên thục tế gần nhu không có gì mấy bài viết của anh em đọc thu được nhiều kiến thúc hơn cả kỳ học ở trường
 

TYA

Well-Known Member
Author
4 bước lập trình CNC

Xem hình.
Bước 1 : Từ bản vẽ chi tiết và yêu cầu kĩ thuật, dung sai... chọn máy và tính toán lượng dư cho các bề mặt gia công. Vẽ lại bản vẽ bằng cad
Bước 2 : Offset các mặt cần gia công theo lượng dư tính toán để tạo bản vẽ công đoạn. (lượng dư ở đây là cộng gộp của các công đoạn tiếp theo ) Lập bản vẽ phôi
Bước 3: Lồng bv phôi vào bv công đoạn, vẽ đồ gá tạo thành bản vẽ stock dwg
Chọn hình dáng dao và chế độ cắt phù hợp(S,F)nếu cần, phải tính lực cắt tương ứng khả năng đồ gá
Bước 4: Tạo toolpath.
Offset các mặt cần gia công tinh. Ví dụ bước 3 chọn cắt tinh ap=0.3mm thì offset biên dạng ra 0.3mm. Nên chọn màu khác với màu biên dạng chi tiết cho dễ nhìn.

Ở các góc lượn, côn, vát mép... phải chú ý bù dao bằng tay (xem bài trước)

Sau đó, còn lại là lượng dư cắt thô = khoảng cách giữa đường vừa tạo tới đường bao phôi = 4mm.
,sẽ được chia cho chiều sâu cắt thô, vd 1.2mm
vậy 4/1.2 = 3.3 => làm tròn thành 3 lớp cắt. Mỗi lớp sẽ dày 4/3=1.33mm

Tạo 3 đường cắt thô bằng cách offset biên dạng cắt tinh 3 lần, mỗi lần 1.33mm. Chú ý : đôi khi cũng cần bù dao tại mặt côn, cung tròn....

Các dao khác nhau nên chọn các màu nét khác nhau tránh nhầm.

Sau khi vẽ xong hết toolpath thì dùng lệnh ID (tra tọa độ) và bảng G,M code... để lập trình.

Lệnh ID : "x" là Z còn "y" nhân đôi là X X=2*y trong đó x,y là a.cad còn XZ là tọa độ máy tiện. Tự xác định cho phay.

Thông thường phay đơn giản hơn vì không phải offset, phang thẳng cẳng như a.cad nhưng không lập trình tay được ở mặt 3D

***************
Đó là chút kiến thức cho ai yêu thích CNC và laajp trình tay
 
Last edited:
Nói chung là anh thấy CHƯA BAO GIỜ LẬP TRÌNH CAM CÓ THỂ CHẠY NGAY TỨC THÌ mà không cần sửa.

Tất nhiên là những sửa chữa nhỏ, nhưng đôi khi là sửa rất nhiều đó.
anh TYA nói như vậy là không đúng rồi.
có thể anh đã làm với công việc này rất lâu và chỉ làm cho toàn bộ các công ty của Việt Nam nên không bao giờ mua bản quyền cho phần mềm CAM nên khi xuất chương trình cần phải sữa lại chương trình cho phù hợp với máy CNC. Còn khi mua phần mềm bản quyền thì mỗi dòng máy họ sẽ cho( hoặc bán) chúng ta một post riêng đễ xuất chương trình. Nên chương trình đó không bao giờ có chuyện sửa.
 

TYA

Well-Known Member
Author
anh TYA nói như vậy là không đúng rồi.
có thể anh đã làm với công việc này rất lâu và chỉ làm cho toàn bộ các công ty của Việt Nam nên không bao giờ mua bản quyền cho phần mềm CAM nên khi xuất chương trình cần phải sữa lại chương trình cho phù hợp với máy CNC. Còn khi mua phần mềm bản quyền thì mỗi dòng máy họ sẽ cho( hoặc bán) chúng ta một post riêng đễ xuất chương trình. Nên chương trình đó không bao giờ có chuyện sửa.

anh sẵn sàng chết nếu đúng như vậy. m.cam mà toàn bộ diễn đàn ddang bàn đến đều là lởm... 7000đ/cd

Việc chạy được chẳng liên quan gì cả ! Hoàn toàn chạy được tuốt. "Phải sửa" là vì khi ngồi với cái mcam, mọi khai báo về home point, return point đều có thể khiến va chạm trong máy CNC - đừng nghĩ cái máy chỉ gồm có 1 cái que cắm vào cán dao và cái phôi chơi vơi em ạ.

Nó nhiều cơ cấu lằng nhằng hơn nhiều... làm mới biết được.Đó là ví dụ đơn giản nhất thôi.

Anh làm cho cty nước ngoài.
 
Việc chạy được chẳng liên quan gì cả ! Hoàn toàn chạy được tuốt. "Phải sửa" là vì khi ngồi với cái mcam, mọi khai báo về home point, return point đều có thể khiến va chạm trong máy CNC - đừng nghĩ cái máy chỉ gồm có 1 cái que cắm vào cán dao và cái phôi chơi vơi em ạ.

Nó nhiều cơ cấu lằng nhằng hơn nhiều... làm mới biết được.Đó là ví dụ đơn giản nhất thôi.

Anh làm cho cty nước ngoài.
Thực sự thì em làm về lĩnh vực này cũng chưa được lâu, và với kiến thức của anh thì em biết là em còn thiếu kinh nghiệm nhiều lắm. Nhưng vì diễn đàn là nơi cùng nhau trao đổi và học hỏi nên em muốn tranh luận với anh về phần mà em cho là đúng.
khi anh khai báo về home point thì trước khi dùng đến G28 anh chỉ cần nhất dao lên bề mặt an toàn là ok rồi. ( điều này em nghĩ anh thừa sức biết) còn đối với các thông số khác của máy thì người ta đã có cụ thể cả rồi. Em vẫn biết máy CNC là một sản phẩm rất hiện đại, nó sẽ rất khó cho nhà chế tạo nhưng lại rất đơn giản cho người sử dụng. Không biết cái này em nói có quá không nữa vì em thấy khi đã hiểu rồi thì nó không là trở ngại cho mình.
ở công ty em làm thì điều sửa chương trình sau khi xuất là điều tối kỵ( ở đây em gọi là file.NC cho dễ hiểu). vì sao?
vì file.NC sửa và chương trình trong phần mềm sẽ có sự khác nhau mà người khác khó phát hiện ngoài người sửa file.NC. Như vậy, sau này chi tiết của anh cần thay đổi một số vị trí thì việc sửa chương trình trở nên khó khăn cho người đã sửa file.NC đó ( vì lâu quá chắc gì nhớ là mình đã sửa chổ nào) và càng khó khăn hơn cho người khác.
 
anh TYA nói như vậy là không đúng rồi.
có thể anh đã làm với công việc này rất lâu và chỉ làm cho toàn bộ các công ty của Việt Nam nên không bao giờ mua bản quyền cho phần mềm CAM nên khi xuất chương trình cần phải sữa lại chương trình cho phù hợp với máy CNC. Còn khi mua phần mềm bản quyền thì mỗi dòng máy họ sẽ cho( hoặc bán) chúng ta một post riêng đễ xuất chương trình. Nên chương trình đó không bao giờ có chuyện sửa.
Theo mình thì không phải do phần mềm có bản quyền hay không đâu, mà còn một công đoạn khá quan trọng là chỉnh sửa Post Proccesor. Nếu có công và có thời gian để nghiên cứu và chỉnh sửa cho Post Prossecor thích hợp với chính cái máy cụ thể ta đang làn việc thì sẽ không cần chỉnh sửa sau khi xuất mã G code nữa đâu.
 
Đúng là do Post Prossecor. ý của mình là nếu mua đĩa lậu thì mình phải sửa lại Post Prossecor còn khi mua phần mềm bản quyền thì họ sẽ cung cấp cái Post Prossecor cho máy cụ thể của mình. Nhưng theo mình thì việc sửa Post Prossecor không phải là chuyện đơn giản tý nào.
 
Mình cũng chưa có điều kiện để đi sâu về phần này ,nhưng mình có ý kiến thể này mình đi học khóa mastercam thì các thầy hướng dẫn sau khí post file NC thì phải sửa hoặc bỏ đi 1 số câu lệnh thừa do máy không đọc được mặc dù đã post file NC theo đúng hệ điều khiển của máy đó .Mình thấy các thầy làm vậy ,bạn và anh TYA có điều kiện kiểm chứng thực tế và giải thích lại giúp em .
 
Last edited:
Đúng là do Post Prossecor. ý của mình là nếu mua đĩa lậu thì mình phải sửa lại Post Prossecor còn khi mua phần mềm bản quyền thì họ sẽ cung cấp cái Post Prossecor cho máy cụ thể của mình. Nhưng theo mình thì việc sửa Post Prossecor không phải là chuyện đơn giản tý nào.
Theo mình biết thì việc sứa file NC phải có kinh nghiệm lập trình bằng tay ,như vậy mới hiểu được chương trình từ đó biết được nên bỏ lệnh nào và sửa được lệnh .Anh TYA rất có kinh nghiệm lập trình bằng tay và anh ấy thường lập trình bằng tay khi sử dụng máy tiện CNC trừ những chi tiết quá phức tạp .À mà mình nghe nói có cactyno đi theo máy chứ .
 
Last edited:
bác dũng hiểu nhầm file NC trong mestercam rồi nó được cho nên toàn bộ các lệnh cả phần thiết kế nữa !!!muốn xâm nhập vào được đòi hỏi trình độ cực cao!!! tài liệu này xin thầy THỰC là có!!!
 
thiết kế trên ACAD là dùng làm đồ án !!! theo đúng trình tự các bước theo sách của GS.TRẦN VĂN ĐỊCH đòi hỏi người thiết kế phải thành thạo các ngôn ngữ tiêu chuẩn của cnc !!! theo hãng dùng phiên bản nào!!! các huynh nhớ rằng thực tế ít dùng lam trên acad vì mất nhiều thời gian lắm!!! bảo vệ đồ án xong đệ sẽ pots bài của đệ lên cho các huynh xem và góp ý cho đệ !!!thank
 

TYA

Well-Known Member
Author
Cảm ơn mọi người đã tranh luận và góp ý. Tinh thần học tập lẫn nhau là trên hết. Hãy friendy theo cách Brainstorming.

về việc chỉnh sửa file NC sau khi post, sẽ không có gì phức tạp cả với kiến thức về gia công(1) và 1 catalog "manual programming"(2).
Vấn đề là bạn phải tìm và hiểu nguyên nhân của hiện tượng chứ không phải : "á, vỡ dao, à, ồn quá, a, nhiệt cắt cao quá, cháy phoi rồi...." và
đi sửa này sửa nọ lò mò.
(1) hiểu rõ cái j quyết định chiều sâu cắt ? bước tiến ? vận tốc cắt? nhám bề mặt, rung động cắt...
Hiểu về nguyên công, taro chẳng hạn có bạn băn khoăn đường kính khoan =? sâu bao nhiêu? Như thế có CAM cũng không ra sản phẩm đúng không?
Nhớ rằng các sản phẩm cơ khí ra đời sớm hơn cnc , ta cần cái basic của chuyên nghành đã
(2)manual giải thích cho bạn G0,1,2,3,4...99 là gì chứ không dạy bạn phải áp dụng (1) như thế nào...
Việc sửa xong mà người khác không hiểu, mình thì không nhớ là do không có pp khoa học.Ai cũng hiểu dấu "()" là để comment trong chương trình
Tên chương trình đặt kèm comment về date, 4 con số Oxxxx cũng đạt theo quy luật cho từng chi tiết(1 nhà máy sx hàng chục model)
ví dụ G1X25.318(X25.212)Z10.2F.3(F.4) chạy ngon lành. Bạn hiểu cái () chưa?
Ở trên F.4 làm phoi xoắn lại cào xước mặt gia công => sửa lại thành F.3, X cũng đã sửa
Hỏi bất cứ ai từng làm gia công xem họ có sửa ch tr ?
Thực ra có 1 bài anh đã nói là "phải sửa" nhưng chú ý là "Tất nhiên là những sửa chữa nhỏ, nhưng đôi khi là sửa rất nhiều đó."
(sản phẩm càng easy càng phải sửa nhiều - một số chi tiết tưởng đơn giản nhưng phải lập trình với IQ chứ không phải bằng form và thủ thuật của các pm cam)
Yên tâm là anh sẽ dần dần dẫn ví dụ chứng minh

***
Tuy nhiên với sv, pm cam có thể giúp ta "học ngược". Vẽ linh tinh=> chọn dao, toolpath=>ra ch tr=> mô phỏng và quan sát
*Sẽ nhanh nhớ mã lệnh (vẫn để tham khảo cho 1 số hãng máy)
*Sẽ nắm được các lệnh sub-function(các lệnh không chuyển động) nhanh chóng. Yên chí rằng chúng sẽ phải có trong 1 ch tr, kể cả lập trình tay(còn phải bổ xung thêm nữa ý)
 
Có lẽ do bài trước của anh nên em hiểu nhầm ý. Tức là sau khi xuất chương trình cho một chi tiết mới xong chúng ta cho chạy thử để kiểm tra xem phương pháp và thông số cắt gọt đã đạt với yêu cầu kỹ thuật của sản phẩm chưa để hiệu chỉnh chương trình cho phù hợp. Nhưng việc hiệu chỉnh này ở bên em vẫn hiệu chỉnh bằng phần mềm chứ không tự ý sửa bằng tay trên file.NC. Và những phần nào đã hiệu chỉnh sẽ ghi lại trên tờ phản hồi và được kẹp chung với tập thuyết minh phương pháp cắt. Sau nay muốn sửa chương trình thì ta chỉ cần xem tờ phản hồi là ta biết được phần nào đã được sửa rất tiện lợi. Chứ theo cách như anh thì em e là hơi bị công phu để tìm ra () trong hàng nghìn câu lệnh, chưa nói đến cái () đó là đã hiệu chỉnh để nhằm mục đích gì nên phải tìm hiểu cũng hơi cực nhỉ.
anh có thể giải thích thêm để em được biết tính khoa học chổ nào được không?
 
Vì đã lỡ nói đến Post proccesor nên mình phải nói tiếp( chứ thật tình là cũng không biết gì nhiều để nói đâu).
Tôi lấy ví dụ thực tế của công ty bên này mà nói nhé, để mấy bạn có thể hiểu thêm. Công ty mình có cái máy phay CNC 3 trục( hay gọi là TTGC cũng được nhỉ), dùng HĐH Fanuc 18i( đời mới đàng hoàng nhé), nếu cứ như bình thường thì mình chỉ cần chọn Post là Fanuc là được, phải không. Điều khó khăn ở chỗ cụ thể trên máy này lệnh thay dao cần thêm G90 G30 Z0.( để máy về 2nd Home ). Nếu cứ như bình thường thì chương trình chỉ có M06 TXX gì đó thôi, máy chạy đến đó là đứng cứng ngắc liền. Có một anh kia mới sửa Post Proccesor để sau khi Post ra thì chương trình có đủ 2 dòng:
G90 G30 Z0.
M06 TXX.
Và từ đấy cứ thế mà vô tư.
Nói thêm một chút cho các bạn chưa biết: Cùng sử dụng một HĐH, nhưng máy do các hãng sản xuất khác nhau chế tạo ra vẫn có những khác biệt nho nhỏ, nếu trao quyền cho phần mềm thì nó sẽ không hề để ý đến chuyện này, thành ra sẽ có khả năng chương trình bị lỗi khi sản xuất. Nếu nắm vững được các đểm khác biệt đó và chỉnh sửa lại cho phù hợp thì không bao giờ phải chỉnh sửa chương trình sau khi Post( chính các Post Proccesor được cung cấp từ nước ngoài đã được chỉnh sửa chíng xác như vậy, nên trong trường hợp đó mới không cần phải thay đổi gì nữa như hvthuong05 đã thấy). Nhưng công việc chỉnh sửa Post Proccesor rất thâm sâu bí hiểm, còn ít người biết nên việc này hoàn toàn chưa phổ biến. Hay là nhân đây chúng ta tạo ra một topic về vấn đề này nhỉ? Trong chyuên mục về ProE mình thấy có mấy bác cũng khá am hiểu về vấn đề này đấy.
 

TYA

Well-Known Member
Author
http://ifile.it/r87a3jo

Có 1 hình vẽ a.cad2000 tại địa chỉ trên.

Lập trình cam hay by hand đều được. Coi như là bài tập , bạn nào thử lập trình gửi lên mình test cho.

(lỗi gì, biên dạng có đúng không...). Nếu không phải mcam thì chỉ kiểm chứng được file NC đúng hay sai chứ không hướng dẫn cách sửa được...
 
Last edited:
K
Các anh check hộ em bài tập lập trình này với ạ. Đây là phần lập trình
%
O0001
N005 M22;
N010 G21;
N015 G10 P0 X0. Z0.;
N020 G28 U0 W0 T0;
N025 N01 M22;
N030 T0101 M06;
N035 G50 S4500;
N040 G99 G96 S200 M03 M08;
N045 G00 X100. Z200.;
N050 X53.000 Z75.000
N055 G01 X-0.5 F0.3;
N060 G00 X100. Z200. M05 M09;
N065 M01;
N070 T0202 M06;
N075 G50 S4500;
N080 G99 G96 S200 M03 M08;
N085 G71 P090 Q145 U0.5 W0.5 D0.5 F0.3;
N090 G00 X25.531 Z76.000;
N095 G01 X30.000 Z73.766;
N100 Z51.172;
N105 X29.237 Z50.356;
N110 G02 X28.120 Z50.270 R0.2;
N115 G01 Z50.200;
N120 G02 X28.160 Z50.000 R0.2;
N125 G01 X38.531;
N130 X40.000 Z49.266;
N135 Z34.766;
N140 X52.638 Z28.447;
N145 G00 X100. Z200. M05 M09;
N150 M01;
N155 T0303 M06;
N160 G50 S4500;
N165 G99 G96 S250 M03 M08;
N170 G70 P090 Q145 F0.15;
N175 G28 U0 W0;
N180 M30;
%


Còn đây là file hình vẽ
http://www.4shared.com/file/77773997/637fe3c1/try_prg2.html


Dòng lệnh đỏ sau chu trình tiện thô dùng G00 có được không ạ?

Hình vẽ của bài tập này em lấy từ một phần hình vẽ bài tập anh TYA post lên diễn đàn nhưng có sửa chữa kích thước mong anh thông cảm
 
Last edited by a moderator:

TYA

Well-Known Member
Author
O0001
N005 G21
N010 M22
N015 G10 P0 X0 Z0
N020 M25 M83
N025 G28 U0 W0
N030 T0101 M06
N035 G50 S4500
N040 G99 G96 S200 M03 M08
N045 G00 X100 Z200
N050 X53 Z75
N055 G01 X-0.5 Z75 F0.3
N060 G00 X100 Z200 M05 M09
N065 T0202 M06
......

N170 G28 U0 W0
N175 M69 M82
N180 M30

anh xem file đính kèm, thấy em biết bù dao ở chỗ côn và cung tròn rồi đấy !

còn về chương trình, cần có thời gian anh lập trình theo sự modify của chú mới kiểm được.

Hiện tại có 1 sô lỗi (cú pháp) :

O1111 phải sau dấu %, nghĩa là
%
O1111(ten-chuong-trinh);
...
...
M30
%

Và G0X100.Z200. (dấu chấm !) mới đúng. Một số loại máy nhận 100 là 100mm, nhưng một số nhận 100 là 100 micron = 0.1mm

Để cho đảm bảo, hãy gõ . sau các giá trị chẵn (1,5,200 ....)

Khuyên : thử lập trình phần finish, bằng 1 dao có bán kính 0.4
Kết thúc 1 dao (1 bước g/c ) nên có M01
=============
chi tiết nguyên bản là 1 trục trong xe ga đó

ksnguyen là ai ? anh có quen không nhỉ?
 

TYA

Well-Known Member
Author
nhân tiện vấn đề bù dao khi lập trình tay, anh nêu vài bước option để khi lập trình với mcam ta có thể có profile chính xác sau đây, diễn đạt = hình cho gọn


Khi lập trình tay xong (phải đúng cơ) có thể xài thử mcam xem sao ? sẽ cho kết quả giống nhau 100% (xét về mặt quỹ tích điểm mũi dao, còn thực tế lập trình tay sẽ xử lý kĩ thuật và linh hoạt hơn).
very exciting !
 
K
Anh TYA rất nhiều lần giải đáp thắc mắc của em trên diễn đàn này nên thấy nic của em quen đó, lần trước anh có gửi bản đồ án của anh cho em mà.Em cảm ơn anh nhiều. khi nào có thời gian rảnh rỗi anh bớt chút thời gian xem hộ em với nhé. Em đang là sinh viên kiến thức còn yếu lắm anh bỏ qua nhé.
 
Last edited by a moderator:
Top