Home / Công nghệ CNC / Các phương pháp lập trình

Các phương pháp lập trình

Căn cứ vào mức độ tự động hoá các công  việc lập trình người ta phân biệt hai phương pháp lập trình: lập trình bằng tay và lập trình bằng máy (lập trình có sự trợ giúp của máy tính)

6.7.1. Lập trình bằng tay.

Khi lập trình bằng tay, người lập trình căn cứ vào bản vẽ của chi tiết để nhập các dữ liệu theo các lệnh từ bàn phím của máy vào bộ nhớ. Như vậy việc lập trình bằng tay tốn nhiều thời gian, dễ nhầm lẫn đặc biệt là đối với các chi tiết phức tạp. Do những nhược điểm đó mà phương pháp lập trình bằng tay được dùng cho các chi tiết có quy trình công nghệ đơn giản hoặc để hiệu chỉnh những chương trình sẵn có. Phương tiện hỗ trợ cho người lập trình bằng tay là các bảng tra số liệu, catalô máy và máy tính cá nhân hay máy tính bỏ túi. Các máy tính cá nhân hay máy tính bỏ túi chỉ giúp cho người lập trình tính toán hình học (các điểm trên biên dạng chi tiết) và tính toán công nghệ.

Lập trình bằng tay đòi hỏi người lập trình ngoài việc làm chủ phương pháp lập trình còn phải có kiến thức toán học và kiến thức về công nghệ chế tạo máy.

6.7.2. Lập trình bằng máy.

Khi lập trình bằng máy (lập trình có sự trợ giúp của máy tính) người lập trình mô tả hình dáng hình học của chi tiết gia công, các quỹ đạo của dụng cụ cắt và các chức năng của máy theo một ngôn ngữ mà máy có thể hiểu được. Lập trình bằng máy có ưu điểm là không cần thực hiện các phép tính bằng tay, chỉ cần truy nhập một ít dữ liệu nhưng có thể sản sinh ra một lượng lớn các dữ liệu cho những tính toán cần thiết, đồng thời hạn chế được các lỗi lập trình.

Khi lập trình bằng máy thì máy tính phải có hai chương trình tính toán đặc biệt sau:

– Chương trình xử lý ( Processor ).

– Chương trình hậu xử lý ( Postprocessor ).

Processor là chương trình phần mềm thực hiện các tính toán hình học và công nghệ. Người ta gọi các dữ liệu của bộ chương trình xử lý (Processor) là CLD (Cutter Location Data), các dữ liệu này đưa ra một giải pháp chung về gia công mà không phụ thuộc vào máy công cụ CNC nào. CLD có nghĩa là các dữ liệu xác định vị trí dụng cụ cắt. CLD chứa các lệnh ngắn gọn nhất và các mã trong đó không hợp với hệ CNC nào.

Muốn dùng CLD cho một hệ CNC cụ thể phải dùng một chương trình đặc biệt gọi là Post – processor (bộ hậu xử lý hay chương trình hậu xử lý). Như vậy Post – processor có nhiệm vụ dịch chương trình NC dưới dạng CLD thành các mã để cho hệ CNC có thể hiểu và thực hiện quá trình điều khiển máy gia công.

Cần nhớ rằng khi lập trình bằng máy trong phần hình học người lập trình mô tả hình học của chi tiết như: điểm, đường thẳng, cung tròn, V.V.. còn trong phần công nghệ người lập trình mô tả quá trình gia công chi tiết như: khoan, phay, chế độ cắt, dụng cụ cắt, dung dịch trơn nguội.

V.V.. Cả hai việc mô tả trên đây tạo ra một chương trình nguồn. Từ chương trình nguồn này máy tính tạo ra một chương trình gia công phù hợp với máy CNC nhờ bộ hậu xử lý (Postprocessor).

6.8. Các hình thức tổ chức lập trình.

Để thực hiện việc lập trình gia công, nhà máy có hai hình thức tổ chức lập trình sau đây:

– Lập trình tại phân xưởng.

– Lập trình trong chuẩn bị sản xuất.

6.8.1. Lập trình tại phân xưởng.

Lập trình tại phân xưởng được thực hiện trực tiếp trên máy thông qua bảng điều khiển. Màn hình của hệ điều khiển giúp cho người lập trình quan sát được các dữ liệu đưa vào và tránh được các lỗi của chương trình. Sau khi lập trình xong người ta có thể cho chạy chương trình mô phỏng bằng đồ họa trên màn hình (tất cả những chuyển động cần thiết khi gia công đều được mô phỏng trên màn hình). Như vậy qua màn hình người ta có thể phát hiện xem dụng cụ cắt có va chạm vào chi tiết hoặc chuyển động có sai quỹ đạo hay không. Nếu xảy ra những trường hợp đó, có nghĩa là chương trình có lỗi và người lập trình phải sửa lại chương trình.

Đối với hình thức lập trình tại phân xưởng người vận hành máy (đồng thời cũng là người lập trình) phải có trình độ tay nghề cao.

6.8.2. Lập trình trong chuẩn bị sản xuất.

Khi một nhà máy có quy mô sản xuất lớn, tức là có sử dụng nhiều máy CNC khác nhau, gia công nhiều loại chi tiết khác nhau và số lượng chi tiết trong từng loại cũng lớn thì cần phải lập trình tập trung trong chuẩn bị sản xuất. Công việc lập trình này được thực hiện tại phòng công nghệ hoặc tại trung tâm lập trình của nhà máy.

Như vậy, nhà máy cần có đội ngũ lập trình viên được đào tạo chuyên môn hoá và ứng dụng thành thạo các phương pháp lập trình.

Ưu điểm của hình thức lập trình tập trung (lập trình trong chuẩn bị sản xuất) là năng suất lập trình cao và người lập trình tuy chưa vận hành máy thành thạo vẫn có thể lập trình gia công cho nhiều loại chi tiết khác nhau.

Chương trình được lập tại trung tâm được chuyển tới các máy CNC dưới hai hình thức sau:

– Nếu các máy CNC được nối mạng trực tiếp với trung tâm lập trình thì các máy CNC nhận chương trình trực tiếp qua mạng.

– Nếu các máy CNC chưa được nối mạng với trung tâm lập trình thì chương trình phải được ghi vào đĩa mềm hoặc viết bằng băng đục lỗ rồi chuyển tới các máy CNC để gia công.

Tuy nhiên, hình thức lập trình tập trung có nhược điểm là các lỗi chương trình chỉ được phát hiện khi chạy mô phỏng hoặc gia công thử cũng giống như lập trình trực tiếp tại phân xưởng (trực tiếp trên máy) nhưng quá trình xảy ra chậm hơn.

 6.9. Chương trình chính và chương trình con.

Một chi tiết có thể có nhiều bề mặt khác nhau hoặc nhiều phần khác nhau cần phải gia công. Chương trình để gia công toàn bộ chi tiết đó được gọi là chương trình chính, còn chương trình gia công từng bề mặt hoặc từng phần của chi tiết được gọi là chương trình con. Như vậy, chương trình con thể hiện các quá trình gia công được lặp lại nhiều lần, có thể được truy nhập và lưu trữ trong bộ nhớ của chương trình (ở dạng chương trình con) và có thể được gọi ra tại các vị trí của chương trình chính (chương trình gia công chi tiết).

Khi gia công chi tiết trên hình 6.11 ta có một chương trình gia công (chương trình chính). Chương trình chính này gồm 3 chương trình con để gia công 3 lỗ 1; 2; 3. Thông thường người ta sử dụng chữ L và các chữ số  tuỳ ý để bắt đầu chương trình con (ví dụ, L50).

Trong chương trình con, các câu lệnh cũng có cấu trúc như các câu lệnh của chương trình chính. Khi kết thúc một chương trình con (ví dụ, khi kết thúc chương trình con để gia công lỗ 1 trên hình 6.11) sẽ lại trở lại chương trình chính. Lúc này để gia công lỗ 2 ta gọi chương trình con (L50) thứ hai từ chương trình chính. Sau đó ta lại gọi chương trình con để gia công lỗ thứ 3. Tuỳ theo hệ điều khiển người ta chọn chức năng M17, G99 hay ký hiệu LF để kết thúc một chương trình con.

6.10. Các ví dụ về lập trình.

6.10.1. Lập trình gia công trên máy tiện.

Hình 6.12 là một chi tiết được gia công trên máy tiện theo chương trình. Chương trình gia công chi tiết trên hình 6.12 được viết lại như sau:

N01 G50 X250 Z200 (G50 là chỉnh dao ở vị trí 0 có tọa độ X = 250: z = 200).

G96 S500 M03 (chọn tốc độ cắt s = 500 vòng/phút; M03 là chi tiết quay theo chiều kim đồng hồ).

N02 G00 X50 Z80 (dao chạy nhanh tới điểm có tọa độ X = 50 và z = 80).

N03 G01 XO F0,2 (nội suy đường thẳng tới đường tâm chi tiết có tọa độ X = 0; z vẫn giữ nguyên giá trị cho nên không cần ghi lại; ■ lượng chạy dao F = 0,2 mm/vòng ).

N04 W1 (vẫn nội suy đường thẳng để dao lùi ra cách mặt đầu chi tiết một khoảng w = 1 mm).

N05 G00 X50 (dao chạy nhanh về vị trí có tọa độ X = 50).

N06 G01 Z55 (nội suy đường thẳng, dao tiện đoạn bậc nhỏ có đường kính phi = 50 mm và dao dịch chuyển đến điểm có tọa độ z =55).

N07 G02 X100 Z30 R25 (nội suy cung tròn theo chiều kim đồng hồ tới điểm có tọa độ X = 100; z =30 và bán kính R =25).

N08 G01 Z0 (nội suy đường thẳng, dao cắt phần còn lại của chi tiết và dịch chuyển đến tận trục X có tọa độ z =0).

N09 GOO X250 Z200 (dao lùi nhanh về điểm 0 có tọa độ X =250; z =200).

N10 M30 LF (kết thúc chương trình, tuy nhiên có thể không cần N10).

Trên đây là một ví dụ đơn giản, chúng ta sẽ nghiên cứu sâu phương pháp tiện ở chương 8 và 9 trong tài liệu này.

6.10.2. Lập trình gia công trên máy phay.

Hình 6,13 là một chi tiết được gia công theo chương trình trên máy phay đứng. Trong trường hợp này ta chọn mặt gia công XY (G17), dùng dao phay ngón, quỹ đạo chạy dao theo đường chấm chấm từ 1 cho đến O Chương trình gia công chi tiết trên hình 6.13 được viết như sau (có kèm giải thích):

G92 x0 y0 z0 (đặt dao tại điểm 0).

N01 G90 G I7 G41 GOO X250 Y55O (G90 là lập trình với kích thước tuyệt đối, G17 là chọn mặt phẳng gia công XY, G41 là hiệu chỉnh dao ở bên trái profit của chi tiết, G00 là chạy dao nhanh đến điểm p, có tọa độ X = 250, Y = 550).

N02 G01 Y900 Fl50 (nội suy đường thẳng tới điểm P2 có tọa độ Y = 900, lượng chạy dao F = 150 mm/phút, tọa độ X vẫn giữ nguyên).

N03 X450 (tiếp tục nội suy đường thẳng tới điểm P3 có tọa độ X = 450).

N04 G03 X500 Y 1150 R650 (nội suy cung tròn ngược chiều kim đồng hồ tới điểm P4 có tọa độ X = 500, Y =1150, bán kính cung tròn R = 650).

N05 G02 X900 R-250 (nội suy cung tròn theo chiều kim đồng hồ tới điểm P5 có tọa độ X = 900, bán kính cung có dấu trừ ( – ) và R = 250.

N06 G03 X950 Y900 R650 (nội suy cung tròn ngược chiều kim đồng hồ tới điểm P(1 có tọa độ X = 950, Y = 900, bán kính cung tròn R = 650).

N07 G01 X1150 (nội suy đường thẳng tới điểm P7 có tọa độ x = 1150).

N08 Y550 (nội suy đường thẳng tới điểm P8 có tọa độ Y = 550).

N09 X700 Y650 (nội suy đường thẳng tới điểm P9 có tọa độ X – 700, Y = 650).

N10 X250 Y550 (nội suy đường thẳng tới điểm Pl0 có X = 250, Y = 550).

N 11 GOO G40 X0 Y0 Z0 (G40 là hủy bỏ lệnh hiệu chỉnh dao và chạy nhanh về điểm 0 theo lệnh G00).

Phương pháp phay sẽ được nghiên cứu sâu ở chương 8 và chương 10.

6.10.3. Lập trình khoan.

Hình 6.14 là chi tiết được khoan 4 lỗ phi 10, chiều sâu là 10 mm. Chương trình gia công theo thứ tự từ lỗ thứ 1 đến lỗ thứ 4 được viết như sau:

N80 T1 M06 (tên chương trình, thay dao hiện có bằng dao T1).

N01 G81 R2 Z-10 F200 S2500 M03 (G81 là chu kỳ khoan, R2 là khoảng cách từ mũi khoan tới bề mặt gia công, z = -10 là chiều sâu khoan, F = 200 mm/phút, s = 2500 vòng/phút, M03 là trục chính quay theo chiều kim đồng hồ).

N02 G79 X20 Y10 Z-10 (G79 là gọi chu kỳ kkhoan, lỗ thứ nhất có tọa độ X = 20, Y = 10, z = -10).

N03 G79 X40 (lỗ thứ hai có tọa độ X = 40, Y = 10).

N04 G79 Y30 (lỗ thứ ba có tọa độ X = 40, Y = 30).

N05 G79 X20 (lỗ thứ tư có tọa độ X = 20, Y = 30).

Phương pháp khoan sẽ được nghiên cứu sâu ở các chương 8 và 10.

6.11. Lập trình gia công bề mặt đối xứng kiểu hình ảnh qua gương.

Khi lập trình gia công các bề mặt đối xứng kiểu hình ảnh qua gương chỉ cần đổi dấu các tọa độ. Nếu ta đổi dấu tọa độ X sẽ có bề mặt đối xứng qua trục Y, còn nếu đổi dấu tọa độ Y sẽ có bề mặt đối xứng qua trục X.

Ta thấy ở góc phần tư thứ nhất điểm P1 có tọa độ X, Y dương. Nếu ta đổi dấu tọa độ X thành X-l, ta có điểm P2 đối xứng qua trục Y. Từ điểm P2 nếu ta đổi dấu tọa độ Y ta được điểm P3 có tọa độ X. Y âm (tọa độ Y thành Y-1). Từ điểm P3 nếu ta đổi dấu tọa độ X ta được điểm P4 đối xứng qua Y (điểm P4 có tọa độ X dương và Y âm, hình 6.15).

Hệ CNC – 432 của hãng MAHO giới thiệu chương trình gia công bề mặt này như sau:

%PM (chương trình chi tiết).

N900 (ký hiệu chương trình).

N01 G17 S400 T1 M06 (bề mặt gia công XY, s = 400vòng/phút, thay dao hiện có bằng dao số T1).

N02 G54 (xác định điểm gốc phôi).

N03 G98 X-l 30 Y-75 Z-20 1260 J150 K30 (xác định cửa sổ phôi theo G98; I, J, K là kích thước cửa sổ: 120+10= 130; 65+10=75).

N04 G99 X-120 Y-65 Z-20 I240 J130 K20 (xác định biên dạng chi tiết theo G99).

N05 GOO X55 Y45 Z2 M03 (chạy dao nhanh tới điểm có tọa độ X = 55; Y = 45; z = 2. dao quay theo chiều kim đồng hồ ).

N06 G01 Z-5 F50 (ăn dao xuống chiều sâu z = -5, F = 50 mm/phút).

N07 G43 Y55 F100 (hiệu chỉnh dao dương tới điểm có Y = 55; F = 100 mm/phút).

N08 G42 XI05 (hiệu chỉnh dao bên phải tới điểm có X = 105).

N09 Y 10 (tiếp tục G42 tới điểm có Y = 10).

N10 X75 (tiếp tục G42 tới điểm có X = 75).

N11 Y30 (tiếp tục G42 tới điểm có Y = 30).

N12 X35 (tiếp tục G42 tới điểm có X = 35).

N13 Y10 (tiếp tục G42 tới điểm có Y = 10).

N14 X I5 (tiếp tục G42 tới điểm có X = 15).

N15 Y55 (tiếp tục G42 tới điểm có Y = 55).

N16 X55 (tiếp tục G42 tới điểm có X =55).

N17 G40 (huỷ bỏ hiệu chỉnh kích thước dao).

N18 G73 X-l (chức nàng gia công đối xứng kiểu gương ảnh qua Y).

N19 G14 (JI) Nl=5 N2=17 (G14 là chức năng nhắc lại; (Jl) là một lần nhắc lại, N 1 = 5 là bắt đầu nhắc lại từ câu lệnh 5 và kết thúc ờ câu lệnh N2 = 17).

N20 G73 x -l Y-l (đối xứng qua X).

N21 G14 (Jl) NI =5 N2=17 (lặp lại câu lệnh N I9).

N22 G73 x + l Y-l (đối xứng qua Y).

N23 G14 (Jl) NI =5 N2=17 (lặp lại câu lệnh N I9).

N24 G72 (cho các trục đồng thời đã được cấp lệnh đối xứng).

N25 GOO Z50 (chạy dao nhanh lên trên tới điểm có z = 50).

N26 M30 (kết thúc chương trình).