# Phần mềm CAD, CAM, CNC > Phần mềm CNC control >  Cần giúp đỡ về sử dụng lệnh m7 và m9 trong mach3

## nguyenan0803

Chào các anh.
Mình mới chế máy để sử dụng phun sơn. 
Hiện tại mình gặp vấn đề với lênh m7 (phun sơn) và m9 (tắt phun)
Ví dụ chạy theo đoạn code như sau:
g0x0y0z0
x10y10
m7
y50
m9
x15
m7
y10
m9

Mình gặp hiện tượng sơn bị dày tại điểm m7 và m9, vì khi bắt đầu tới vị trí x10y10 các trục dừng lại ->bật vòi phun sau đó mới chạy tới y50.
Khi bật m7 thì các trục chưa chạy ngay mà có độ trễ, lúc này sơn đã phun ra rồi nên tại vị trí x10y10 đó sơn dày hơn.
Tương tự khi chạy tới y50 ->các trục dừng lại nhưng vòi phun vẫn đang phun, sau đó mới tới m9 để tắt. nên tại điểm y50 cũng bị dày sơn.

Mình đã thử viết x10y10 m7 nhưng m7 nó chỉ bật lên và tắt ngay lập tức tại vị trí đó chứ ko giữ lệnh m7.
Viết thêm lệnh m7 tiếp theo nữa nó cũng ko nhận m7.
Mình đã kiểm tra trong mach 3 phần ploor &fit gì đó, delay là 0s. nhưng thực tế nó ko xảy ra đồng thời.

Có cách nào để thực hiện việc bật m7 và m9 đồng thời cùng lúc với vị trí trục xy ko các anh? 
hoặc là mình có thể định vị việc bật m7 và m9 gắn với 1 tọa độ xy riêng ko? (tách biệt 2 lớp tọa độ : 1 lớp để chạy trục xy điều khiển vị trí vòi phun, lớp còn lại là tọa độ bật m7, m9)

Mong các anh giúp đỡ. Cảm ơn các anh.

----------


## lekimhung

Nếu bạn không dùng đến truc Z thì có thể lấy tính hiệu DIR của Z mà đóng mở có lẽ sẽ nhanh đáp ứng hơn M7 M9. Nếu đã đang sử dụng Z thì thử gắn 1 công tắc hành trình cho Z, khi nào hạ xuống độ cao đụng công tắc thì bật, kéo Z lên thì đóng. 
M7 M8 M9 thì thiết kế cho bơm nước hoặc Fan thôi, bị delay là bình thường, có khi mach3 phải đợi chạy xong 1 dòng lệnh rồi mới thực hiện lệnh M7 được.

----------

cnclaivung

----------


## ngocbh2001

Sao bạn không lấy DIR của trục Y để đống cái modul rele 5v có cách ly quang luôn ?như thế sẽ ok thôi là

----------


## nguyenan0803

Hi các a.
Mình đã tìm ra lệnh phù hợp với nhu cầu của mình.
Mình sử dung lệnh m10 và m11 trong mach3 và kết nối relay điều khiển sung phun vào cổng tưởng ứng trên board với lệnh m10-m11

Cấu trúc lệnh như sau

x0y0x0
x100y100z100 (điểm muốn bắt đầu phun) - toạ độ 1
m11
x200y100z100 (điểm muốn kết thực phun)- toạ độ 2
m10
x300y100 - toạ độ 1
m11
x400y100 - toạ độ 2
m10

Hành trình mà sơn sẽ phun ra là từ x100 ->x200; x300 ->x400

Tức là sau khi chạy tới toạ độ 1 máy sẽ hơi dung lại (độ trễ cực thấp)
nó sẽ nhận lệnh phun sơn tại toạ độ 1 và kích cho di chuyển đến toạ độ 2 thì sẽ kết thực.
lệnh phun và kết thực xuất ra đồng thời cùng tín hiếu kích cho đồng cơ chạy đến toạ độ tiếp theo viết sau lệnh m10-m11.

Cần chú ý khoảng cách từ vòi phun cho đến bề mặt cần sơn. Vì khi kích chạy trục thì đến khi sơn bay ra chajm đến bề mặt thì trục đã di chuyển dc 1 chút rồi, nên tại vị trí mong muốn bắt đầu sẽ bị thiếu sơn
=> cách xử lý là cho điểm toạ độ 1 lùi lại 1 chút trước điểm cần phun.


Chia sẻ lại cho ae nào cần có thể áp dung  :Big Grin:

----------

duonghoang

----------


## anhcos

Bác sơn bề mặt hay sơn cạnh bên vậy.

----------


## nguyenan0803

Mình sơn bề mặt bác ơi. Theo vùng chỉ định

----------


## phuongvu0147

> Hi các a.
> Mình đã tìm ra lệnh phù hợp với nhu cầu của mình.
> Mình sử dung lệnh m10 và m11 trong mach3 và kết nối relay điều khiển sung phun vào cổng tưởng ứng trên board với lệnh m10-m11
> 
> Cấu trúc lệnh như sau
> 
> x0y0x0
> x100y100z100 (điểm muốn bắt đầu phun) - toạ độ 1
> m11
> ...


Bạn sử dụng Board CNC gì thế bạn?
Sử dụng lệnh M10 M11 thì viết Macro lại hay sao bạn?
Bạn hướng dẫn mình cụ thể được không?
Mình cũng đang làm cái này.
Cám ơn bạn!

----------


## phuongvu0147

Bạn sửa dụng board CNC gì vậy?
Sử dụng M10 M11 là viết macro lại hả bạn?
Bạn post cụ thể được không?
Cám ơn bạn!

----------

