Tại sao? Vì sao? Làm như thế nào? (CNC GRBL)
2017-03-04 22:22
Chào các bạn!
Như đã nói hôm nay mình mạn phép xin giải đáp, hướng dẫn cụ thể từ cụm điều khiển, cách nối, cách thiết lập thông số cho máy CNC sử dụng firmware GRBL.
Trong giới hạn bài viết mình sẽ nói những từ ngữ phổ thông dễ hiểu nhất cho tất cả các bạn đều hiểu, và mình sử dụng máy của mình làm ví dụ cho cả bài viết. (XYZ 10x10x4cm, 3 endstop, dò phôi, tính làm cái đk trục ngoài mà lười quá :D)
Thôi vào vấn đề.
I. Các câu hỏi.
1. Cách tính số bước /mm với vít me và dây đai như thế nào? (Phạm Văn Quang)
TL: *để tính số bước/mm với dây đai ta cần 3 thông số.
1-số bước stepper đi được 1 vòng?
2-số răng puly đai là bao nhiêu?
3-khoảng cách răng đai (khoảng cách từ răng này đến răng kia, thường khi mua đều có thông số cả)?
VD: Ta đã có 3 thông số trên như sau: stepper size 42 - 1,8 độ (tức 200 bước 1 vòng quay)
Puly GT2 20 răng
Dây đai GT2 có thông số: bước đai 2mm - đường kính 6mm
Để tính ta cần hiểu như sau: stepper cần 200 bước đi hết 1 vòng, Puly GT2 20 - 2 răng cách nhau 2mm vậy 1 vòng nó đi được 40mm (20 răng x 2mm), vậy cứ 200 bước (1 vòng) thì đi được 40mm ta lấy 200/40=5
Vậy ta cần 5 bước để đi 1mm.
*Để tính số bước/mm với vít me ta cần 2 thông số:
1-số bước stepper đi được 1 vòng?
2-số bước vít me là bao nhiêu? (tức 1 vòng quay vít me đi được bao nhiêu mm, thường khi mua sẽ có thông số sẵn, với các bạn dùng ti ren M8 có thể tra bước ren trên mạng nó là 1,25mm. Nếu k có thông số ta lấy thước đo, trên đường thẳng song song với vít me, đo từ đỉnh ren này đến đỉnh ren kế tiếp sẽ ra số bước của nó).
VD: Ta đã có 2 thông số trên như sau: stepper size 42 - 1,8 độ (tức 200 bước 1 vòng quay)
Vít me ta dùng ty ren inox M8 có bước ren là 1,25mm
Để tính ta cần hiểu như sau: stepper cần 200 bước đi hết 1 vòng - ti ren 1 vòng thì đi được 1,25mm - ta lấy 200/1,25=160
Vậy ta cần 160 bước để đi được 1mm
*****Chú ý: cách tính trên chỉ là công thức tính tuyệt đối, còn thực tế là tương đối, nên số bước/mm có thể thay đổi một vài đơn vị, sau khi tính toán và điều chỉnh thông số máy ta tiến hành đo thực tế, thiếu thì thêm bước, thừa thì giảm bước - đến khi đạt độ chính xác thì ta dừng lại.
2.Đo dây stepper như thế nào? (Vang lắp bắp)
TL: Những loại stepper ta thường thấy là loại 4 dây và 6 dây. Cách đo như sau:
Với loại 4 dây (2 dây 1 cuộn): ta tạm đánh số thứ tự từ trái qua phải là 1 2 3 4. Đo bằng thang đo điện trở lần lượt theo cặp 1-2, 1-3, 1-4 cặp nào có điện trở sẽ là 1 cặp 2 dây còn lại là 1 cặp.
Với loại 6 dây ( cũng 2 dây 1 cuộn nhưng có thêm dây giữa cuộn nên có tới 6 dây): ta tạm đánh số thứ tự từ trái qua phải là 1 2 3 4 5 6. Đo bằng thang đo điện trở lần lượt theo cặp 1-2, 1-3, 1-4, 1-5, 1-6, sẽ có 2 cặp lên.
VD: ta đo cặp 1-2 và 1-3 có trở. Ta giữ nguyên dây 1, đầu còn lại đo dây 2 và dây 3 để xác định dây giữa, nếu đo cặp 1-3 có điện trở ví dụ là 14 ôm cặp 1-2 có điện trở là 7 thì cặp 1-3 là 1 cuộn dây số 2 là dây giữa cuộn này, ta cắt bỏ dây số 2. 3 dây còn lại đo tương tự.
Sau khi đo xong ta đã cắt bỏ 2 dây giữ của 2 cuộn, lúc này chỉ còn 4 dây, ta sử dụng như stepper 4 dây.
II. Ý nghĩa chân trên board CNC shield V3 và cách kết nối.
Ta đi từ trái sang phải trước nhé!
1. Khối điều khiển trục ngoài bằng phím cứng.
Vùng khoang vàng trên hình là cụm điều khiển trục bên ngoài. Để điều khiển ta cần 3 bộ phận cấu tạo lên mạch điều khiển gồm: 1 mạch tạo xung NE555 và khối phím nhấn gồm 6 nút ( tưng ứng X+ X- Y+ Y- Z+ Z-) và cuối cùng là công tắc bật tắt chế độ điều khiển ngoài.
Các giá trị cài đặt ảnh hướng đến cụm điều khiển trục ngoài gồm: $1, $3.
$1: đây là thiết đặt thời gian tắt động cơ sau mỗi lệnh (ms) nếu đặt giá trị là 255 thì sau khi hết lệnh động cơ stepper sẽ k bao h tắt, nhỏ hơn 255 thì tính bằng ms động cơ sẽ tắt (thường mình dùng vít me thì chỉ cần để từ 50ms trở xuống để sau khi tới vị trí nó sẽ k tắt ngay để giữ vị trí rồi mới tắt, nếu dùng dây đai thì phải để 255 để stepper k đc tắt đê giữ vị trí liên tục) - Thiết đặt này liên quan đến Enable của driver stepper.
$3: đảo chiều động cơ stepper - Thiết đặt này liên quan đến chân Dir của driver stepper.
-Khối điều xung NE555 các bạn có thế xem trên mạng, mạch đơn giản và cơ bản nên k nói nhiều ở đây.
-Khối công tắc bật tắt chế độ điều khiển ngoài - cái này liên quan trực tiếp tới $1, nếu dùng dây đai thì đặt là 255, thì tại chân EN ở trên board ta đo đc là bằng 0V tức đã kích hoạt chân Enable trên driver tất cả các trục, nếu dùng vít me công tắc điều khiển ngoài sẽ bật tắt nốt thông chân EN với GND bên cạnh. Chỉ khi chân EN = 0V thì driver mới nhận xung điều khiển, ngoài ra sẽ k có phải hồi tín hiệu đến stepper.
- 6 nút điều hướng: Ví dụ hình ảnh kết nối điều khiển trục Z như sau:
Trên nút nhân 4 chân, chân 1 và 2 nối chung, chân 3 và 4 nối chung, ví dụ trên ta đo đc khi Z đi lên tức Z+ chân Dir của Z bằng 0V thì k cần điều khiển chân Dir khi Z đi lên. Vậy khi đi xuống chân Dir của Z phải hơn 0V, ta thêm diot phân cực cho nút Z- để khi nhấn Z+ sẽ k có tín hiệu đi xuống Z- vì chân 3 và 4 nối thông, nếu có tín hiệu thì cả 2 chân này đều nhận, nên cần diot phân cực cho chiều đảo của trục.
Các trục khác làm tương tự.
Chân 5V/GND bên dưới khối điều khiển ngoài dùng để cấp nguồn cho khối tạo xung NE555
2. Tín hiệu điều khiển trục tứ 4 (trục A)
Khi cắm hàng X bằng jumper nối thì trục A sẽ chạy theo tín hiệu trục X.
Khi cắm hàng Y bằng jumper nối thì trục A sẽ chạy theo tín hiệu trục Y.
Khi cắm hàng Z bằng jumper nối thì trục A sẽ chạy theo tín hiệu trục Z.
Hoặc chạy độc lập như 1 trục thứ 4 ta cắm jumper và hàng cuối, lúc này chân A.Step sẽ là chân D12 và chân A.Dir sẽ là chân D13 của Arduino UNO R3.
3. Chân dò phôi.
Tại khu vực này ta chỉ cần quan tâm 3 chân SCL - 5V - GND.
Các thiết đặt liên quan: $6: khi cài $6 = 0 mức tín hiệu dò phôi là mức 0, khi cài $6=1 tín hiệu dò phôi là 5V.
Kết nối như sau. $6=0. Một chân ta cắm vào chân SCL chân còn lại ta cắm vào GND, khi 2 chân này chạm nhau thì máy sẽ hiểu là chạm phôi.
$6=1. Một chân ta cắm vào chân SCL chân còn lại ta cắm vào 5V, khi 2 chân này chạm nhau thì máy sẽ hiểu là chạm phôi.
Các câu lệnh liên quan đến dò phôi: G38.2, G92, G0.
G38.2: Dò phôi. cú pháp gồm G38.2 XxYxZx Fxxx (XxYxZx là vị trí sẽ đi, Fxxx là tham số tốc độ tính bằng mm hoặc inches /phút - cái này liên quan đến $13 nhưng thường để $13=0 để chọn cài thông số là mm)
G92: Gắn giá trị cho các trục. cú pháp gồm: G92 XxYxZx
G0: Di chuyển nhanh. Cú pháp gồm: G0 XxYxZx
Như vậy ta có thể xác định mặt phôi bằng tập lệnh sau.
G38.2 Z-5 F20 (dò phôi từ bằng cách di chuyển Z xuống vị trí -5 với tốc độ F=20 đơn vị/phút)
G92 Z0 (Sau khi chạm phôi máy sẽ dừng, ta dùng lệnh này để đưa Z=0)
G0 Z10 (Khi đưa Z=0 ta di chuyển nhanh nó lên đến vị trí Z=10)
4. Khối điều khiển động cơ trục chính (Spindle).
Với firmware GRBL v0.9j hiện tại dùng phổ biến, họ đã thay chân 11 là chân cấp xung tín hiệu tới động cơ trục chính.
Lúc này chân Z+ và Z- sẽ nối thông nhau (các chân hàng bên tay phải là chân GND) ta lấy 1 trong 2 chân này để điều khiển động cơ trục chính. Nếu muốn điều khiển tốc độ thì sử dụng mosfet chẳng hạn, hoặc đơn giản hơn dùng relay 5V là đc rồi.
5. Khối Endstop.
Với firmware GRBL họ hỗ trợ 3 endstop cho cả 3 trục, ta có thể dùng 6 endstop cho 3 trục nhưng điều đó k cần thiết.
Y+ Y- là Endstop Y
X+ X- là Endstop X
SpnEn là Enstop Z
Đế gắn Endstop các bạn cần phải xác định giá trị thiết đặt tại $5. Nếu $5=0 endstop sẽ nhận ở mức 0V. Nếu $5=1 endstop sẽ nhận ở mức 5V. nhưng thường ta nên để $5=0 vì mỗi chân endstop trên board đều đã có 1 chân GND đi kèm bên cạnh.
Các nối: Ta dùng 1 công tắc hành trình:
Công tắc hành gồm 3 chân:
C (COM): chân chung
NC: thường đóng
NO: thường mở
Khi công tắc ở trạng thái bình thường tức không nhấn chân COM nối thông với chân NC. Khi nhấn, chân COM sẽ nối thông với chân NO.
Ta kết nối như sau: hàn 1 dây vào chân COM - dây còn lại hàn vào chân NO. Sau đó cắm vào chân Endstop tương ứng với trục.
6. Làm mát hoặc tưới nguội.
Ta kết nối nó với 1 relay 5V để bật tắt thiết bị làm mát hoặc tưới nguội hay hút bụi gì đó.
Lệnh bật chân CoolEn là M8 lệnh tắt là M9. Khi bắt đầu chạy máy các bạn nhập lệnh M8 tại thanh command, sau khi phay khắc xong nó tự động tắt cho ta.
7. Các nút khẩn bên ngoài.
Các chân này sẽ thực hiện lệnh nếu nối thông với chân GND (chân bên cạnh)
Abort: hủy bỏ lệnh.
Hold: giữ vị trí.
Resume: tạm dừng, nhấn lần nữa tiếp tục chạy.
E-STOP: dừng máy khẩn cấp.
III. Kết
Đây là toàn bộ khả năng mà board CNC shield V3 có thể đạt được, nếu có thắc mắc có thể liên hệ trực tiếp fb của mình: www.facebook.com/trumcuoi.bn
Khắc thử cái mạch in:
Cái này còn phải thay mũi để khoan, và 1 mũi để phay cái mạch ra nữa :D
Một số sản phẩm nghịch đc:
***Chú ý: Trước khi cắm điện cho máy chạy lần đầu, hay đo chân nguồn cấp 12V có bị chạm không? Nguồn 5V có bị chạm không để tránh hư hỏng đáng tiếc hãy đo thử 1 lần.