Chuyển đến nội dung
Diễn đàn CADViet
tuoichuot84

Ghi tọa độ các lỗ cho tấm gia công CNC (lỗ khoan)

Các bài được khuyến nghị

E hiện đang phải vẽ rất nhiều chi tiết có liên quan đến việc ghi tọa độ của tâm các lỗ khoan CNC. Với 1 tấm có khoảng 100 lỗ khoan thì e phải đo và ghi chắc muốn rụng ngón tay mất. Bác nào có Lips của cái thằng này post cho e thì e xin làm đệ tử đến "đầu bạc răng long". Yêu cầu của e như sau:

- E có 1 tấm thép đã có tọa độ của gốc 0 và tâm các lỗ khoan trên đó.

- E muốn có lệnh để ghi tọa độ các tâm lấy theo gốc 0, tọa độ hiện lên có định dạng X/Y (vd: 297/210) và có thể hiện lên như lệnh LE thì thật là quý hoá.

E xin cảm ơn các bác nhiều!

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
E hiện đang phải vẽ rất nhiều chi tiết có liên quan đến việc ghi tọa độ của tâm các lỗ khoan CNC. Với 1 tấm có khoảng 100 lỗ khoan thì e phải đo và ghi chắc muốn rụng ngón tay mất. Bác nào có Lips của cái thằng này post cho e thì e xin làm đệ tử đến "đầu bạc răng long". Yêu cầu của e như sau:

- E có 1 tấm thép đã có tọa độ của gốc 0 và tâm các lỗ khoan trên đó.

- E muốn có lệnh để ghi tọa độ các tâm lấy theo gốc 0, tọa độ hiện lên có định dạng X/Y (vd: 297/210) và có thể hiện lên như lệnh LE thì thật là quý hoá.

E xin cảm ơn các bác nhiều!

Bạn dùng tạm cái này, lệnh CC:

 

;;;-------------------------------------------------------
(defun wtxt (txt p / sty d h) ;;;Write txt on graphic screen, defaul setting
(setq
   sty (getvar "textstyle")
   d (tblsearch "style" sty)
   h (cdr (assoc 40 d))
)
(if (= h 0) (setq h (cdr (assoc 42 d))))
(entmake
   (list (cons 0 "TEXT") (cons 7 sty) (cons 1 txt) (cons 10 p) (cons 40 h) (assoc 41 d))
)
)
;;;-------------------------------------------------------
(defun C:CC( / ss e p) ;;;Coordinate of Circles
(setq ss (ssget '((0 . "CIRCLE"))))
(while (setq e (ssname ss 0))
   (setq p (cdr (assoc 10 (entget e))))
   (wtxt (strcat (rtos (car p)) "/" (rtos (cadr p))) p)
   (ssdel e ss)
)
(princ)
)
;;;-------------------------------------------------------

 

Ghi kết quả dạng leader không khó nhưng ssg chưa biết quy cách leader bạn thường dùng: dài, ngắn, thẳng, xiên, mũi tên hay dấu chấm... Bạn post 1 file *.dwg mẫu lên có ghi leader theo quy cách bạn muốn, ssg sẽ sửa chương trình một chút là OK.

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Bác SSG hỡi, e AP vào cad nhưng nó ra tọa độ không biết theo gốc ở đâu? E làm theo của bác nhưng gốc của nó nằm ở chỗ khó hiểu quá. E post bản Cad của e lên bác kiểm tra và viết lại cho e nhé!

 

http://www.cadviet.com/upfiles/CNC1.dwg

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
E hiện đang phải vẽ rất nhiều chi tiết có liên quan đến việc ghi tọa độ của tâm các lỗ khoan CNC. Với 1 tấm có khoảng 100 lỗ khoan thì e phải đo và ghi chắc muốn rụng ngón tay mất. Bác nào có Lips của cái thằng này post cho e thì e xin làm đệ tử đến "đầu bạc răng long". Yêu cầu của e như sau:

- E có 1 tấm thép đã có tọa độ của gốc 0 và tâm các lỗ khoan trên đó.

- E muốn có lệnh để ghi tọa độ các tâm lấy theo gốc 0, tọa độ hiện lên có định dạng X/Y (vd: 297/210) và có thể hiện lên như lệnh LE thì thật là quý hoá.

E xin cảm ơn các bác nhiều!

 

Chú có cần viết luôn thành file mã GCODE không?

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác
Bác SSG hỡi, e AP vào cad nhưng nó ra tọa độ không biết theo gốc ở đâu? E làm theo của bác nhưng gốc của nó nằm ở chỗ khó hiểu quá. E post bản Cad của e lên bác kiểm tra và viết lại cho e nhé!

 

http://www.cadviet.com/upfiles/CNC1.dwg

Bạn thường làm việc với CNC mà không suy luận để hiểu ra vấn đề à? Bạn thử gõ lệnh ucs - w chắc sẽ hiểu gốc toạ độ của các con số nằm ở đâu.

Lần trước, nếu khi nêu yêu cầu, bạn post luôn cái bản vẽ *.dwg minh hoạ thì sẽ không có sự nhầm lẫn này.

 

Đây là trình lisp mới:

;;;-------------------------------------------------------
(defun C:CC( ) ;;;Coordinate of Circles
(setq
   ss (ssget '((0 . "CIRCLE")))
   oldos (getvar "osmode")
)
(setvar "osmode" 0)
(while (setq e (ssname ss 0))
   (setq
       d (entget e)
       p1 (trans (cdr (assoc 10 d)) 0 1)
       r (cdr (assoc 40 d))
       p2 (polar p1 (* 0.5 pi) (* r 6))
       S (strcat (rtos (car p1)) "/" (rtos (cadr p1)))
   )
   (command "leader" p1 p2 "a" "" "m" S "")
   (ssdel e ss)
)
(setvar "osmode" oldos)
(princ)
)
;;;-------------------------------------------------------

 

Lưu ý:

1. Chương trình sẽ ghi kết quả dạng leader như ý bạn, với các thiết lập có sẵn trong Dimstyle hiện hành.

2. Khi bạn ghi leader thủ công, bạn nhìn trực tiếp vào màn hình và chủ động điều khiển để các yếu tố của leader này không đè lên leader kia. Với chương trình, nó không làm được điều đó, nó ghi hàng loạt và nhất quán theo một kiểu định trước. Đúng hơn là cũng có thể làm được một cách linh hoạt hơn (không có gì là không thể), nhưng chương trình sẽ phức tạp lên rất nhiều, có khi nằm ngoài khả năng của ssg! Tóm lại, sau khi chạy lệnh CC, bạn quan sát toàn bộ, thấy cái nào đè lên nhau thì kéo dãn nó ra (select vào text của leader, bấm vào nút grip của nó mà kéo)

 

Góp ý thêm:

1. Ssg không rõ quy trình làm việc của Cty bạn như thế nào. Không lẽ in bản vẽ ra giấy rồi nhập tay các giá trị toạ độ vào hệ điều khiển CNC à? Theo ssg, các bản vẽ dạng này chẳng cần ghi toạ độ, và thậm chí cũng không cần in ra giấy, cứ xuất sang một trình CAM bất kỳ, nó sẽ cho ra chương trình gia công NC hoàn chỉnh.

2. Nếu Cty bạn thuộc dạng "chính quy", không dám dùng CAM "chùa", có thể đặt hàng người ta làm các chương trình CAM đơn giản (như gợi ý của bạn Flex chẳng hạn). Các vật thể 3D phức tạp thì chào thua, chứ chỉ khoan, đột, cắt plasma, cắt dây CNC... thì trình độ lập trình amateur cỡ như ssg làm tuốt!

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Bác SSG ạ, ko phải e ko hiểu về UCS mà với cái lips cũ thì khi e chuyển gốc tọa độ đi chỗ khác nó vẫn hiện lên tọa độ cũ nên e mới bó tay. Cái lips mới của bác thì trên cả tuyệt vời rồi, e xin chân thành cảm ơn.

Cty e thì chưa có máy CNC nên e phải vẽ và gửi bvẽ đi gcông chỗ khác chứ ko làm sao e phải khổ sở thế này...huhuhu.

Cảm ơn bác nhiều lắm!

Thân ái và quyết thắng!

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Tạo một tài khoản hoặc đăng nhập để nhận xét

Bạn cần phải là một thành viên để lại một bình luận

Tạo tài khoản

Đăng ký một tài khoản mới trong cộng đồng của chúng tôi. Điều đó dễ mà.

Đăng ký tài khoản mới

Đăng nhập

Bạn có sẵn sàng để tạo một tài khoản ? Đăng nhập tại đây.

Đăng nhập ngay

×