misuto
17-04-2017, 01:51 PM
Các nhà sản xuất bộ điều khiển CNC cố gắng làm cho các lệnh chuyển động trong chương trình được thực hiện dễ dàng. Để thực hiện những lệnh chuyển động thường gặp nhất, họ xây dựng các phương pháp nội suy (interpolation) khác nhau.
I. Khái niệm nội suy
Giả sử bạn muốn thực hiện lệnh chạy dao chỉ theo một trục, ví dụ theo trục X từ điểm gốc sang phải 10mm. Lệnh cần dùng là X10 (giả thiết đang làm việc với hệ tọa độ tuyệt đối). Với lệnh này đầu dao sẽ chuyển động chính xác theo đường thẳng vì chỉ có một trục chuyển động).
Bây giờ bạn muốn đưa vào cả chuyển động theo chiều Y một khoảng 10mm, đồng thời với chuyển động theo trục Y nói ở trên. Để điều khiển dao chạy đúng theo đường thẳng tới điểm lập trình, ta phải đồng bộ được hai chuyển động theo trục X và Y. bên cạnh đó, cũng phải thông số tốc độ ăn dao (chạy bàn). Đây là ví dụ nội suy đơn giản nhất: nội suy đường thẳng (tuyến tính).
Trong lệnh nội suy tuyến tính, đường thẳng thực tế bao gồm nhất nhiều zigzag rất nhỏ theo hai trục X, Y gộp lại… Với độ phân giải và độ chính xác của các máy CNC ngày nay, kết quả nhận được giống như máy đã thực hiện chuyển động theo đường thẳng tuyệt đối.
Theo cách tương tự, nhiều ứng dụng của máy CNC cần thực hiện các chuyển động tròn, như vê (bo) tròn đầu của trục khi tiện hay phay cung tròn trên trung tâm gia công. Phép nội suy ở đây sẽ là nội suy cung tròn. Giống như với nội suy tuyến tính, bộ điều khiển sẽ sinh ra quỹ đạo gồm rất nhiều đoạn thẳng gấp khúc bám sát nhất với cung tròn lý thuyết.
Một số ứng dụng khác còn đòi hỏi phép nội suy thứ ba. Chẳng hạn, rất nhiều trường hợp các trung tâm gia công cần phay ren. Khi đó máy phải thực hiện chuyển động tròn theo hai trục, thông thường là X, Y và đồng thời với chúng là chuyển động thẳng theo trục thứ ba (thông thường là Z). Tổ hợp của chuyển động theo cả 3 trục như vậy tạo rãnh xoắn của ren. Chúng ta hình dung giống như đường xoắn trôn ốc, nhưng đường kính xoắn không thay đổi. Để đáp ứng nhu cầu này, các nhà cung cấp bộ điều khiển CNC đưa ra tính năng nội suy xoắn (helical interpolation).
Một dạng nội suy nữa cần cho trung tâm tiện có dao “sống”, tức là dao có thể quay được (giống như phay) trên ụ dao và có trục C quay phôi kẹp trong chấu. Nội suy trong tọa độ cực có thể được dùng để phay các hình bao quanh chu vi của phôi. Nội suy tọa độ cực cho phép người lập trình “trải phẳng” (khai triển) trục quay, xử lý chúng giống như trục thẳng để tiến hành các lệnh chuyển động.
II. Ba dạng chuyển động cơ bản nhất
Mặc dù các máy CNC, nhất là các máy thế hệ mới, có thể có thêm những dạng chuyển động khác nữa, 3 dạng chuyển động trên là phổ biến nhất và về nguyên tắc, đủ để lập trình gia công bất cứ biên dạng hình học nào (nhiều phần mềm CAM thậm chí chỉ dùng 2 chuyển động: nội suy tuyến tính và cung tròn để sinh tất cả các chương trình gia công)
Chúng ta cần lưu ý hai điểm chung cho các lệnh chuyển động. Thứ nhất, chúng làm việc theo chế độ lưu, có nghĩa lệnh chỉ cần viết 1 lần và sẽ có hiệu lực cho tất cả các dữ liệu tọa độ tiếp theo, cho tới khi nó bị thay (một lệnh khác xuất hiện). Thứ hai, chỉ cần đưa vào lệnh tọa độ điểm cuối, còn tọa độ điểm đầu chính là vị trí hiện thời của máy (tức là điểm cuối của lệnh trước nó).
1. Chạy nhanh (hay còn gọi là định vị)
Hầu như tất cả các máy CNC đều dùng lệnh G00 (hoặc G0) để thực hiện chạy nhanh. Trong lệnh phải có tọa độ đích của chuyển động.
Với lệnh này chuyển động tuyến tính của bàn (hoặc đầu dao) sẽ đạt giá trị tối đa có thể có của máy. Chúng được dùng để giảm thiểu thời gian chạy không tải (không cắt) trong quá trình gia công. Các ví dụ của chuyển động nhanh như định vị dao vào và ra khỏi vị trí cắt, chạy tránh đồ kẹp và các chướng ngại khác hay nói chung, các chuyển động không tải trong chương trình.
Các máy CNC hiện đại có thể đạt tốc độ chạy nhanh rất cao, ví dụ có máy tới 250m/ph! Vì vậy khi vận hành máy cần hết sức cẩn trọng và kiểm tra kỹ lưỡng các lệnh nhanh. Nếu không sự cố cũng chẳng khác gì bạn lái xe đâm vào xe khác vậy. Rất may là các bộ điều khiển CNC đều có chức năng giành kiểm soát lệnh này (làm chậm lại) giúp chúng ta kiểm tra chương trình dễ dàng hơn.
2. Chuyển động thẳng
Lệnh G01 (hoặc G1) được dùng để xác định tốc độ cắt (ăn dao hay chạy bàn) theo đường thẳng (feed rate). Trên trung tâm gia công tốc độ cắt (lưu ý phân biệt với vận tốc cắt là vận tốc dài của mũi dao so với phôi) được đo bằng mm/phút (mm/min) hoặc inch/phút (in/min, IPM). Với trung tâm tiện, tốc độ cắt còn được đo bằng mm/vòng hay inch/vòng (mm/rev, in/rev)
3. Chuyển động tròn
Hai lệnh G được dùng cho chuyển động tròn. G02 chỉ chuyển động tròn thuận chiều kim đồng hồ (TCKĐH) và G03 thực hiện chuyển động tròn ngược chiệu kim đồng hồ (NCKĐH). Trong dòng lệnh này, giá trị đi sau R chỉ bán kính cung tròn
Thay vì dùng ký hiệu bán kính R, trên một số bộ điều khiển CNC cũ, các véc tơ hướng (ký hiệu bới I, J, K) cho biết vị trí tâm của cung tròn. Bởi vậy bạn cũng cần kiểm tra các tài liệu hướng dẫn đi cùng máy để biết mình làm việc với hệ thống nào. Ví dụ chương trình với 3 dạng chuyển động Trong chương trình này chúng ta sẽ phay chung quanh biên dạng của phôi. Lưu ý dao được dùng là dao phay mặt đầu đường kinh 1” và để đơn giản, đường chạy dao được lập trình cho điểm tâm dao (ở Bài 4, chúng ta sẽ có chương trình cắt biên dạng thực, chứ không phải đường tâm). O0002 (Số của chương trình) N005 G54 G90 S350 M0 (Chọn hệ tọa độ — ở đây là hệ inch, chọn chế độ tọa độ tuyệt đối, khởi động trục chính TCKĐH ở 350 RPM) N010 G00 X-.625 Y-.25 (Chạy nhanh tới điểm 1) N015 G43 H01 Z-.25 (Đặt bù chiều cao dao, chạy dao nhanh tới gần mặt gia công) N020 G01 X5.25 F3.5 (Cắt theo đường thẳng tởi điểm 2) N025 G03 X6.25 Y.75 R1.0 (Cắt theo cung tròn NCKĐH tới điểm3) N030 G01 Y3.25 (Cắt theo đường thẳng tởi điểm 4) N035 G03 X5.25 Y4.25 R1.0 (Cắt theo cung tròn NCKĐH tới điểm 5) N040 G01 X.75 (Cắt theo đường thẳng tởi điểm 6) N045 G03 X-.25 Y3.25 R1.0 (Cắt theo cung tròn NCKĐH tới điểm 7) N050 G01 Y.75 (Cắt theo đường thẳng tởi điểm 8) N055 G03 X.75 Y-.25 R1.0 (Cắt theo cung tròn NCKĐH tới điểm 9) N060 G00 Z.1 (Nhấc dao nhanh khỏi phôi theo chiều Z) N065 G91 G28 Z0 (Chạy nhanh tới điểm tham chiếu của máy theo chiều Z) N070 M30 (Kết thúc chương trình) Trước mắt, chưa cần bạn hiểu hết ý nghĩa các lệnh khác trong chương trình này mà chỉ cần tập trung vào các lệnh chuyển động (G00, G01, and G02/G03).
Trong quá trình tìm hiểu tiếp theo bạn sẽ dần nắm bắt các lệnh chưa biết đó. Còn ở đây, các chú thích trong ngoặc sẽ giải nghĩa cho từng câu lệnh. Cần luôn ghi nhớ rằng các bộ điều khiển CNC – hầu hết giống nhau ở các lệnh cơ bản – nhưng đều có những điểm khác biệt. Chẳng hạn, có bộ điều khiển hạn chế cung tròn tối đa trong một câu lệnh là bao nhiêu. Một số bộ điều khiển, như đã nói ở trên, lại yêu cầu đưa vào véc tơ hướng thay vì thông số R. một số lại tích hợp với lệnh bo góc hoặc chém cạnh, nhờ đó giảm được số dòng lệnh trong chương trình. Vì vậy bạn cần tìm hiểu kỹ lưỡng tài liệu đi theo máy để nắm cho chắc, tránh để xảy ra sự cố mà có hối cũng không kịp nữa rồi.
I. Khái niệm nội suy
Giả sử bạn muốn thực hiện lệnh chạy dao chỉ theo một trục, ví dụ theo trục X từ điểm gốc sang phải 10mm. Lệnh cần dùng là X10 (giả thiết đang làm việc với hệ tọa độ tuyệt đối). Với lệnh này đầu dao sẽ chuyển động chính xác theo đường thẳng vì chỉ có một trục chuyển động).
Bây giờ bạn muốn đưa vào cả chuyển động theo chiều Y một khoảng 10mm, đồng thời với chuyển động theo trục Y nói ở trên. Để điều khiển dao chạy đúng theo đường thẳng tới điểm lập trình, ta phải đồng bộ được hai chuyển động theo trục X và Y. bên cạnh đó, cũng phải thông số tốc độ ăn dao (chạy bàn). Đây là ví dụ nội suy đơn giản nhất: nội suy đường thẳng (tuyến tính).
Trong lệnh nội suy tuyến tính, đường thẳng thực tế bao gồm nhất nhiều zigzag rất nhỏ theo hai trục X, Y gộp lại… Với độ phân giải và độ chính xác của các máy CNC ngày nay, kết quả nhận được giống như máy đã thực hiện chuyển động theo đường thẳng tuyệt đối.
Theo cách tương tự, nhiều ứng dụng của máy CNC cần thực hiện các chuyển động tròn, như vê (bo) tròn đầu của trục khi tiện hay phay cung tròn trên trung tâm gia công. Phép nội suy ở đây sẽ là nội suy cung tròn. Giống như với nội suy tuyến tính, bộ điều khiển sẽ sinh ra quỹ đạo gồm rất nhiều đoạn thẳng gấp khúc bám sát nhất với cung tròn lý thuyết.
Một số ứng dụng khác còn đòi hỏi phép nội suy thứ ba. Chẳng hạn, rất nhiều trường hợp các trung tâm gia công cần phay ren. Khi đó máy phải thực hiện chuyển động tròn theo hai trục, thông thường là X, Y và đồng thời với chúng là chuyển động thẳng theo trục thứ ba (thông thường là Z). Tổ hợp của chuyển động theo cả 3 trục như vậy tạo rãnh xoắn của ren. Chúng ta hình dung giống như đường xoắn trôn ốc, nhưng đường kính xoắn không thay đổi. Để đáp ứng nhu cầu này, các nhà cung cấp bộ điều khiển CNC đưa ra tính năng nội suy xoắn (helical interpolation).
Một dạng nội suy nữa cần cho trung tâm tiện có dao “sống”, tức là dao có thể quay được (giống như phay) trên ụ dao và có trục C quay phôi kẹp trong chấu. Nội suy trong tọa độ cực có thể được dùng để phay các hình bao quanh chu vi của phôi. Nội suy tọa độ cực cho phép người lập trình “trải phẳng” (khai triển) trục quay, xử lý chúng giống như trục thẳng để tiến hành các lệnh chuyển động.
II. Ba dạng chuyển động cơ bản nhất
Mặc dù các máy CNC, nhất là các máy thế hệ mới, có thể có thêm những dạng chuyển động khác nữa, 3 dạng chuyển động trên là phổ biến nhất và về nguyên tắc, đủ để lập trình gia công bất cứ biên dạng hình học nào (nhiều phần mềm CAM thậm chí chỉ dùng 2 chuyển động: nội suy tuyến tính và cung tròn để sinh tất cả các chương trình gia công)
Chúng ta cần lưu ý hai điểm chung cho các lệnh chuyển động. Thứ nhất, chúng làm việc theo chế độ lưu, có nghĩa lệnh chỉ cần viết 1 lần và sẽ có hiệu lực cho tất cả các dữ liệu tọa độ tiếp theo, cho tới khi nó bị thay (một lệnh khác xuất hiện). Thứ hai, chỉ cần đưa vào lệnh tọa độ điểm cuối, còn tọa độ điểm đầu chính là vị trí hiện thời của máy (tức là điểm cuối của lệnh trước nó).
1. Chạy nhanh (hay còn gọi là định vị)
Hầu như tất cả các máy CNC đều dùng lệnh G00 (hoặc G0) để thực hiện chạy nhanh. Trong lệnh phải có tọa độ đích của chuyển động.
Với lệnh này chuyển động tuyến tính của bàn (hoặc đầu dao) sẽ đạt giá trị tối đa có thể có của máy. Chúng được dùng để giảm thiểu thời gian chạy không tải (không cắt) trong quá trình gia công. Các ví dụ của chuyển động nhanh như định vị dao vào và ra khỏi vị trí cắt, chạy tránh đồ kẹp và các chướng ngại khác hay nói chung, các chuyển động không tải trong chương trình.
Các máy CNC hiện đại có thể đạt tốc độ chạy nhanh rất cao, ví dụ có máy tới 250m/ph! Vì vậy khi vận hành máy cần hết sức cẩn trọng và kiểm tra kỹ lưỡng các lệnh nhanh. Nếu không sự cố cũng chẳng khác gì bạn lái xe đâm vào xe khác vậy. Rất may là các bộ điều khiển CNC đều có chức năng giành kiểm soát lệnh này (làm chậm lại) giúp chúng ta kiểm tra chương trình dễ dàng hơn.
2. Chuyển động thẳng
Lệnh G01 (hoặc G1) được dùng để xác định tốc độ cắt (ăn dao hay chạy bàn) theo đường thẳng (feed rate). Trên trung tâm gia công tốc độ cắt (lưu ý phân biệt với vận tốc cắt là vận tốc dài của mũi dao so với phôi) được đo bằng mm/phút (mm/min) hoặc inch/phút (in/min, IPM). Với trung tâm tiện, tốc độ cắt còn được đo bằng mm/vòng hay inch/vòng (mm/rev, in/rev)
3. Chuyển động tròn
Hai lệnh G được dùng cho chuyển động tròn. G02 chỉ chuyển động tròn thuận chiều kim đồng hồ (TCKĐH) và G03 thực hiện chuyển động tròn ngược chiệu kim đồng hồ (NCKĐH). Trong dòng lệnh này, giá trị đi sau R chỉ bán kính cung tròn
Thay vì dùng ký hiệu bán kính R, trên một số bộ điều khiển CNC cũ, các véc tơ hướng (ký hiệu bới I, J, K) cho biết vị trí tâm của cung tròn. Bởi vậy bạn cũng cần kiểm tra các tài liệu hướng dẫn đi cùng máy để biết mình làm việc với hệ thống nào. Ví dụ chương trình với 3 dạng chuyển động Trong chương trình này chúng ta sẽ phay chung quanh biên dạng của phôi. Lưu ý dao được dùng là dao phay mặt đầu đường kinh 1” và để đơn giản, đường chạy dao được lập trình cho điểm tâm dao (ở Bài 4, chúng ta sẽ có chương trình cắt biên dạng thực, chứ không phải đường tâm). O0002 (Số của chương trình) N005 G54 G90 S350 M0 (Chọn hệ tọa độ — ở đây là hệ inch, chọn chế độ tọa độ tuyệt đối, khởi động trục chính TCKĐH ở 350 RPM) N010 G00 X-.625 Y-.25 (Chạy nhanh tới điểm 1) N015 G43 H01 Z-.25 (Đặt bù chiều cao dao, chạy dao nhanh tới gần mặt gia công) N020 G01 X5.25 F3.5 (Cắt theo đường thẳng tởi điểm 2) N025 G03 X6.25 Y.75 R1.0 (Cắt theo cung tròn NCKĐH tới điểm3) N030 G01 Y3.25 (Cắt theo đường thẳng tởi điểm 4) N035 G03 X5.25 Y4.25 R1.0 (Cắt theo cung tròn NCKĐH tới điểm 5) N040 G01 X.75 (Cắt theo đường thẳng tởi điểm 6) N045 G03 X-.25 Y3.25 R1.0 (Cắt theo cung tròn NCKĐH tới điểm 7) N050 G01 Y.75 (Cắt theo đường thẳng tởi điểm 8) N055 G03 X.75 Y-.25 R1.0 (Cắt theo cung tròn NCKĐH tới điểm 9) N060 G00 Z.1 (Nhấc dao nhanh khỏi phôi theo chiều Z) N065 G91 G28 Z0 (Chạy nhanh tới điểm tham chiếu của máy theo chiều Z) N070 M30 (Kết thúc chương trình) Trước mắt, chưa cần bạn hiểu hết ý nghĩa các lệnh khác trong chương trình này mà chỉ cần tập trung vào các lệnh chuyển động (G00, G01, and G02/G03).
Trong quá trình tìm hiểu tiếp theo bạn sẽ dần nắm bắt các lệnh chưa biết đó. Còn ở đây, các chú thích trong ngoặc sẽ giải nghĩa cho từng câu lệnh. Cần luôn ghi nhớ rằng các bộ điều khiển CNC – hầu hết giống nhau ở các lệnh cơ bản – nhưng đều có những điểm khác biệt. Chẳng hạn, có bộ điều khiển hạn chế cung tròn tối đa trong một câu lệnh là bao nhiêu. Một số bộ điều khiển, như đã nói ở trên, lại yêu cầu đưa vào véc tơ hướng thay vì thông số R. một số lại tích hợp với lệnh bo góc hoặc chém cạnh, nhờ đó giảm được số dòng lệnh trong chương trình. Vì vậy bạn cần tìm hiểu kỹ lưỡng tài liệu đi theo máy để nắm cho chắc, tránh để xảy ra sự cố mà có hối cũng không kịp nữa rồi.