Chú thích thêm về code
Zmove = Zs + (-5)
Zs là toạ độ của sensor, nhưng khi chạm sensor có thể cần đi thêm một quảng đường nữa. Do đó để đảm bảo cần di chuyển thêm một đoạn nhỏ.
Ngoài ra còn lưu ý thêm chiều dài dao, tool holder v.v...
Code "G53 Z0 F5000" là cú pháp để macro thi hành một lệnh G-code có nội dung là G53 Z0 F5000, bên trong dấu "" là một chuổi lệnh (ký tự). Tương tự với các dòng khác
Code "G53 X" & Xs & " Y" & Ys & " F5000" dòng này có điểm đặt biệt là có xuất hiện dấu &. Chức năng của nó là ghép các đoạn lại với nhau. Cụ thể là trích giá trị của các biến Xs, Ys và ghép lại thành một chuổi. Dòng này sẽ tương đương
Code "G53 X0 Y0 F5000"
While IsMoving 'Cho cho den khi dung lai
Wend
Là đoạn code bắt buộc để máy tạm dừng và chờ kết quả của dòng lệnh phía trên nó.
Khác biệt của việc chạy lệnh G-code trong môi trường macro khác với việc chạy lệnh G-code trong file G-code hay MDI. Trong môi trường macro các lệnh thực thi như di chuyển các trục sẽ thông được dừng lại chờ mà sau khi phát lệnh sẽ thực hiện lệnh kế tiếp. Do đó, muốn máy tạm dừng lại để chờ kết quả thì việc dùng cú pháp While IsMoving - Wend là cần thiết.
* Ghi chú:
Việc tách một số giá trị và lưu thành biến giúp ta dễ dàng thay đổi giá trị theo thực tế, đơn giản và giảm rủi ro lỗi trong quá trình hiệu chỉnh code.
Trong quá trình di chuyển có thay đổi hệ toạ độ tuyệt đối/tương đối để đơn giản quá trình tính toán.
Đến đây tạm kết thúc. Quá trình thực tế sẽ
1. Di chuyển lên vị trí cao nhất, ứng với tạo độ gốc máy Z = 0
2. Di chuyển đến vị trí đặt sensor, Xs Ys
3. Di chuyển xuống cho đến khi sensor bị tác động. Di chuyển nhanh
4. Di chuyển ngược lên 5mm
5. Di chuyển xuống cho đến khi sensor bị tác động. Di chuyển chậm
6. Kết thúc chương trình
Sau khi sensor bị tác động lần 2 thì dừng lại chờ xử lý tiếp theo. Cách thức thực hiện tiếp theo tuỳ theo ý đồ người dùng mà khác nhau. Có thể
- Zero Z
- Bù trừ chiều cao và Zero Z
- Bù trừ vào bẳng tool lengh offset
- V.v....



để chia sẻ bài viết lên facebook

.
Trả lời kèm Trích dẫn
