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

Nhờ Viết Lisp: Mặt Bích Trong Kết Cấu Thép

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

Công việc của mình hay vẽ lại các bản mã như thế này, tuy đơn giản nhưng lại mất thời gian. Mình muốn có một lisp chỉ cần nhập kích thước bản mã, khoảng cách lỗ theo 2 phương ( Lỗ chèn bằng block trong File đính kèm).
Xin cảm ơn rất nhiều!

http://www.cadviet.com/upfiles/5/115759_ban_ma.dwg

  • Vote giảm 1

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

Công việc của mình hay vẽ lại các bản mã như thế này, tuy đơn giản nhưng lại mất thời gian. Mình muốn có một lisp chỉ cần nhập kích thước bản mã, khoảng cách lỗ theo 2 phương ( Lỗ chèn bằng block trong File đính kèm).

Xin cảm ơn rất nhiều!

http://www.cadviet.com/upfiles/5/115759_ban_ma.dwg

Hề hề hề,

Không rõ bạn có hiểu hết yêu cầu bạn cần hay không, nhưng với mô tả trên bản vẽ cũa bạn thì các bản mã bạn cần đều là hình chữ nhât và chỉ có 4 lỗ bu lông thôi hay sao??? Các lỗ bu lông này đều đối xưng qua đường tâm bản mã ư??? Các lỗ bu lông đều có chung đường kính ư???

Nếu bạn còn cần tới các dạng bản mã khác thì hãy nói rõ để có thể làm lisp một lần, tránh phải làm đi làm lại nhiều lần bạn ạ.

  • Vote tăng 1

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

Hề hề hề,

Không rõ bạn có hiểu hết yêu cầu bạn cần hay không, nhưng với mô tả trên bản vẽ cũa bạn thì các bản mã bạn cần đều là hình chữ nhât và chỉ có 4 lỗ bu lông thôi hay sao??? Các lỗ bu lông này đều đối xưng qua đường tâm bản mã ư??? Các lỗ bu lông đều có chung đường kính ư???

Nếu bạn còn cần tới các dạng bản mã khác thì hãy nói rõ để có thể làm lisp một lần, tránh phải làm đi làm lại nhiều lần bạn ạ.

Cảm ơn phamthanhbinh! Bản mã của mình luôn là hình chữ nhật, số lượng lỗ có thể 4,6,8.... Các lỗ này đều đối xứng qua tim bản mã và có chung đường kính và chỉ có 2 hàng lỗ theo phương ngang.Trong lệnh có thể hiện dòng G=.. rồi lệnh tự chia đều ra 2 phía chẳng hạn.  :)

  • Vote giảm 1

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

Cảm ơn phamthanhbinh! Bản mã của mình luôn là hình chữ nhật, số lượng lỗ có thể 4,6,8.... Các lỗ này đều đối xứng qua tim bản mã và có chung đường kính và chỉ có 2 hàng lỗ theo phương ngang.Trong lệnh có thể hiện dòng G=.. rồi lệnh tự chia đều ra 2 phía chẳng hạn.  :)

Hề hề hề,

Vậy khi nào thì 4 lỗ, khi nào thì 6 lỗ và khi nào thì 8 lỗ????? Chia đều ra 2 phía theo nguyên tắc nào nhỉ??? Theo khoảng cách tâm lỗ hay theo khoảng cách từ mép bàn mã tới tâm lỗ biên????

  • Vote tăng 1

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

Hề hề hề,

Vậy khi nào thì 4 lỗ, khi nào thì 6 lỗ và khi nào thì 8 lỗ????? Chia đều ra 2 phía theo nguyên tắc nào nhỉ??? Theo khoảng cách tâm lỗ hay theo khoảng cách từ mép bàn mã tới tâm lỗ biên????

Số lượng lỗ không có qui luật nào hết phamthanh binh, tùy theo trường hợp chọn bu long. Giả sử M16 thì 6 con, M20 thì có 4 con chẳng hạn :D. Chia 2 phía  theo nguyên tắc canh từ tim bản bản mã ra. Ví dụ bản mã rộng 150 thì khoảng cách ngay tim sẽ là 80, 2 hàng bu long biên cách mép 35. Bản mã 214 khoang cách tim 100, 2 bên còn lại là 57 chẳng hạn… Ưu tiên chèn lỗ bằng Block trong File mình gởi nha phamthanhbinh , cảm ơn lần nữa!

Lisp nếu có thể theo mình thứ tự có thể là: Kích thước mặt bích (dài x rộng) -> G=, -> Số hang theo phương dọc-> Khoảng cách từ mép đến tim bu lông  hang 1->  khoảng cách tim bu lông hàng 2 - hàng 3, hàng 3-4…

Thân!

  • Vote giảm 2

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

Số lượng lỗ không có qui luật nào hết phamthanh binh, tùy theo trường hợp chọn bu long. Giả sử M16 thì 6 con, M20 thì có 4 con chẳng hạn :D. Chia 2 phía  theo nguyên tắc canh từ tim bản bản mã ra. Ví dụ bản mã rộng 150 thì khoảng cách ngay tim sẽ là 80, 2 hàng bu long biên cách mép 35. Bản mã 214 khoang cách tim 100, 2 bên còn lại là 57 chẳng hạn… Ưu tiên chèn lỗ bằng Block trong File mình gởi nha phamthanhbinh , cảm ơn lần nữa!

Lisp nếu có thể theo mình thứ tự có thể là: Kích thước mặt bích (dài x rộng) -> G=, -> Số hang theo phương dọc-> Khoảng cách từ mép đến tim bu lông  hang 1->  khoảng cách tim bu lông hàng 2 - hàng 3, hàng 3-4…

Thân!

 

ý trên thì tính từ tim bản mã ra, dưới thì từ mép vào. Bạn yêu cầu không rõ ràng làm cho các lisper không biết đâu mà lần. Đó là lý do tại sao đến bây giờ Bạn vẫn chưa có lisp đúng theo mong muốn

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

ý trên thì tính từ tim bản mã ra, dưới thì từ mép vào. Bạn yêu cầu không rõ ràng làm cho các lisper không biết đâu mà lần. Đó là lý do tại sao đến bây giờ Bạn vẫn chưa có lisp đúng theo mong muốn

Ý của mình là zầy nè tien2005. Khoảng cách theo phương ngang thì tinh theo tim (chỉ nhập 1 lần), còn phương dọc thì tính từ mép trên xuống (nhập nhiều lần)

 115759_ban_ma.png

  • Vote giảm 2

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ản thân mình muốn cái gì thì phải đặt vấn đề cho rỏ, đã có 2 người hỏi để giúp nhưng cách ra đề của bạn vẫn chưa có rò ràng gì cả. Tôi gợi ý để bạn ra đề 1 phát ăn ngay.

-Bạn nhắc đi nhắc lại là dùng block để vẽ lổ bulong nên tôi nghỉ bạn dùng nó để thống kê. Nhưng vấn đề là bạn lại dùng nhiều loại bulong thế thì phải có nhiều block chứ 1 block rồi sửa chú thích thì thống kê kiểu gì?

-Trong bản vẽ có chú thích bulong, kích thước, độ dày thế thì đề ra cần đề cập tất cả các yếu tố này.

 Dựa trên gợi ý trên mà bạn ra đề còn không đầy đủ thì chắc người muốn viết giúp bạn cũng lười hỏi nửa.

  • Vote tăng 1

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ản thân mình muốn cái gì thì phải đặt vấn đề cho rỏ, đã có 2 người hỏi để giúp nhưng cách ra đề của bạn vẫn chưa có rò ràng gì cả. Tôi gợi ý để bạn ra đề 1 phát ăn ngay.

-Bạn nhắc đi nhắc lại là dùng block để vẽ lổ bulong nên tôi nghỉ bạn dùng nó để thống kê. Nhưng vấn đề là bạn lại dùng nhiều loại bulong thế thì phải có nhiều block chứ 1 block rồi sửa chú thích thì thống kê kiểu gì?

-Trong bản vẽ có chú thích bulong, kích thước, độ dày thế thì đề ra cần đề cập tất cả các yếu tố này.

 Dựa trên gợi ý trên mà bạn ra đề còn không đầy đủ thì chắc người muốn viết giúp bạn cũng lười hỏi nửa.

Cảm ơn anh Duy đã nhắc nhở !

Em nghĩ trong Lisp có thể Scale Block theo kích thước bu lông, nếu không được thì có thể giữ nguyên, chỉ cần lấy vị trí tim bu lông là được.

Em chỉ cần hình vẽ bản mã, các ghi chú, DIM kích thước thì không cần. Mục đích của em chỉ là có được cái chi tiết bản mã một cách nhanh nhất. 

Yêu cầu của em : Lisp vẽ bản mã, Nhập kích thước bản mã (dài x rộng), Nhập số lượng bu lông, Nhập đường kính bu lông (nếu có thể ), Nhập khoảng cách 2 hàng bu lông tính tại tim theo phương ngang, Nhập các khoảng cách 1, khoảng cách 2, khoảng cách 3… theo phương dọc như trong hình. Các kích thước, ghi chú không cần chỉ cần cái chi tiết bản mã là được.

 Không biết còn thiếu thông tin gì nữa không  :D

  • Vote giảm 1

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

Cảm ơn anh Duy đã nhắc nhở !

Em nghĩ trong Lisp có thể Scale Block theo kích thước bu lông, nếu không được thì có thể giữ nguyên, chỉ cần lấy vị trí tim bu lông là được.

Em chỉ cần hình vẽ bản mã, các ghi chú, DIM kích thước thì không cần. Mục đích của em chỉ là có được cái chi tiết bản mã một cách nhanh nhất. 

Yêu cầu của em : Lisp vẽ bản mã, Nhập kích thước bản mã (dài x rộng), Nhập số lượng bu lông, Nhập đường kính bu lông (nếu có thể ), Nhập khoảng cách 2 hàng bu lông tính tại tim theo phương ngang, Nhập các khoảng cách 1, khoảng cách 2, khoảng cách 3… theo phương dọc như trong hình. Các kích thước, ghi chú không cần chỉ cần cái chi tiết bản mã là được.

 Không biết còn thiếu thông tin gì nữa không  :D

Hề hề hề,

Vậy nếu có 40 hàng lỗ thì cũng nhập 39 lần khoảng cách ư????

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

Hề hề hề,

Vậy nếu có 40 hàng lỗ thì cũng nhập 39 lần khoảng cách ư????

Mình chỉ cần 1 lisp đơn giản như zậy, vì mình không hiểu gì về viết lisp nên không hình dung Lisp có thể làm được tới đâu. Nêu phamthanhbinh thấy được thì có thể giúp luôn. Giả sử có 3 khoảng cách theo phương dọc đều bằng 100 thì có thể nhập luôn 3*100 giống Tekla zậy đó. 

Giả sử trường hợp nhiều khoảng cách như: 50- 100-100-100-65 thì nhập lần lượt là 50,  3*100,  65.  :)

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

Mình chỉ cần 1 lisp đơn giản như zậy, vì mình không hiểu gì về viết lisp nên không hình dung Lisp có thể làm được tới đâu. Nêu phamthanhbinh thấy được thì có thể giúp luôn. Giả sử có 3 khoảng cách theo phương dọc đều bằng 100 thì có thể nhập luôn 3*100 giống Tekla zậy đó. 

Giả sử trường hợp nhiều khoảng cách như: 50- 100-100-100-65 thì nhập lần lượt là 50,  3*100,  65.  :)

 

Bạn có thể dùng lệnh copym

Xác định trước bu lông đầu tiên góc trái dưới -> Copym

Bạn xem qua video

https://www.youtube.com/watch?v=XKUAA1vrgC8&feature=youtu.be

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

Thử xem sao: Lệnh là VMB

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(Defun duy:xd_listngngancach<kytu (chuoi kytu / chuoi kytu ckq) 
(setq lkq nil)
(setq bdd 1) 
(setq b 1)
(setq l (fix (strlen chuoi)))
(repeat l
(setq a (substr chuoi b 1))
(cond
((= a kytu) 
(setq dkt (substr chuoi bdd (- b bdd)))
(setq lkq (append lkq (list dkt)))
(setq bdd (+ b 1)) 
)
)
(setq b (+ b 1))
)
(setq dkt (substr chuoi bdd (+ (- l bdd) 1)))
(setq lkq (append lkq (list dkt)))
lkq)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun c:vmb ()
(setq matbich (getstring "\nNhap kich thuoc mat bich <Cao * Rong>"))
(setq daimatbich (atoi (car (duy:xd_listngngancach<kytu matbich "*"))))
(setq rongmatbich (atoi (cadr (duy:xd_listngngancach<kytu matbich "*"))))
(setq diemve (getpoint "Diem tren ben trai mat bich"))
(command ".RECTANG" "_non" diemve "_non" (list (+ (car diemve) rongmatbich) (- (cadr diemve) daimatbich)) )
(or canhngang (setq canhngang 100))
(setq canhngang (cond ((getreal (strcat "\nKhoang cach ngang giua 2 cot bolon < " (rtos canhngang 2 2) " >:")))(canhngang)))
(setq bulong (getstring "\nNhap khoang cach doc tinh tu tren xuong <khoang1 + khoang2 +...+ khoangn"))
(setq khoangbulong (duy:xd_listngngancach<kytu bulong "+"))
(setq khoangvebulong 0.0)
(foreach khoangbulonghh khoangbulong 
(setq khoangvebulong (+ khoangvebulong  (atoi khoangbulonghh)))
(command ".insert" "BU LONG" "_non"  (list (+ (+ (car diemve) (/ rongmatbich 2)) (/ canhngang 2)) (- (cadr diemve) khoangvebulong)) 0.01 0.01 0)
(command ".insert" "BU LONG" "_non"  (list (- (+ (car diemve) (/ rongmatbich 2)) (/ canhngang 2)) (- (cadr diemve) khoangvebulong)) 0.01 0.01 0)
)
(princ)
)
  • Vote tăng 1

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

Ghi kích thước như của anh chủ thớt được gọi là ...siêu định vị, vì phôi dùng cho nguyên công khoan lỗ có kích thước không đồng nhất, do có sai số chế tạo .  Kích thước lắp ghép của chi tiết là khoảng cách tâm giữa các lỗ. Khoan trên đồ gá khoan có thể sai số  về kích thước khoảng cách lỗ có thể đạt được là  ±0.1 mm . Cách ghi kích thước chế tạo dùng cho bản mã với các hàng lỗ  đối xứng và không đối xứng với kích thước bản mã:

 

39678_kol.png

Quy ước vẽ kỹ thuật cũng cho phép khi  số lỗ cách đều nhau nhiều,  chỉ cần ghi đại diện 1 kích thước khoảng cách cho đỡ tốn mực/

Không biết anh chủ thớt có nhầm nhọt gì không khi viết: "Nhập số lượng bu lông, Nhập đường kính bu lông (nếu có thể )"???

Khi bản mã có từ 2 lỗ trở lên phải khoan lỗ rộng hơn đường kính bu lông ít nhất là 1 mm. Thí dụ cần xỏ bu lông M10 thì phải dùng mũi khoan Φ11 để khoan lỗ.

  • Vote tăng 1

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

 

Thử xem sao: Lệnh là VMB

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(Defun duy:xd_listngngancach<kytu (chuoi kytu / chuoi kytu ckq) 
(setq lkq nil)
(setq bdd 1) 
(setq b 1)
(setq l (fix (strlen chuoi)))
(repeat l
(setq a (substr chuoi b 1))
(cond
((= a kytu) 
(setq dkt (substr chuoi bdd (- b bdd)))
(setq lkq (append lkq (list dkt)))
(setq bdd (+ b 1)) 
)
)
(setq b (+ b 1))
)
(setq dkt (substr chuoi bdd (+ (- l bdd) 1)))
(setq lkq (append lkq (list dkt)))
lkq)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun c:vmb ()
(setq matbich (getstring "\nNhap kich thuoc mat bich <Cao * Rong>"))
(setq daimatbich (atoi (car (duy:xd_listngngancach<kytu matbich "*"))))
(setq rongmatbich (atoi (cadr (duy:xd_listngngancach<kytu matbich "*"))))
(setq diemve (getpoint "Diem tren ben trai mat bich"))
(command ".RECTANG" "_non" diemve "_non" (list (+ (car diemve) rongmatbich) (- (cadr diemve) daimatbich)) )
(or canhngang (setq canhngang 100))
(setq canhngang (cond ((getreal (strcat "\nKhoang cach ngang giua 2 cot bolon < " (rtos canhngang 2 2) " >:")))(canhngang)))
(setq bulong (getstring "\nNhap khoang cach doc tinh tu tren xuong <khoang1 + khoang2 +...+ khoangn"))
(setq khoangbulong (duy:xd_listngngancach<kytu bulong "+"))
(setq khoangvebulong 0.0)
(foreach khoangbulonghh khoangbulong 
(setq khoangvebulong (+ khoangvebulong  (atoi khoangbulonghh)))
(command ".insert" "BU LONG" "_non"  (list (+ (+ (car diemve) (/ rongmatbich 2)) (/ canhngang 2)) (- (cadr diemve) khoangvebulong)) 0.01 0.01 0)
(command ".insert" "BU LONG" "_non"  (list (- (+ (car diemve) (/ rongmatbich 2)) (/ canhngang 2)) (- (cadr diemve) khoangvebulong)) 0.01 0.01 0)
)
(princ)
)

Thanks a PHẠM QUỐC DUY rất nhiều, Lisp này rất đúng ý của e. Nêu được a có thể gom luôn nhiều khoảng cách giống nhau thành 1 bước. Ví dụ 3 khoảng 100 thì nhập là 3*100 . Được voi đòi 2 Bà Trưng  :lol:

  • Vote giảm 1

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

Ghi kích thước như của anh chủ thớt được gọi là ...siêu định vị, vì phôi dùng cho nguyên công khoan lỗ có kích thước không đồng nhất, do có sai số chế tạo .  Kích thước lắp ghép của chi tiết là khoảng cách tâm giữa các lỗ. Khoan trên đồ gá khoan có thể sai số  về kích thước khoảng cách lỗ có thể đạt được là  ±0.1 mm . Cách ghi kích thước chế tạo dùng cho bản mã với các hàng lỗ  đối xứng và không đối xứng với kích thước bản mã:

 

39678_kol.png

Quy ước vẽ kỹ thuật cũng cho phép khi  số lỗ cách đều nhau nhiều,  chỉ cần ghi đại diện 1 kích thước khoảng cách cho đỡ tốn mực/

Không biết anh chủ thớt có nhầm nhọt gì không khi viết: "Nhập số lượng bu lông, Nhập đường kính bu lông (nếu có thể )"???

Khi bản mã có từ 2 lỗ trở lên phải khoan lỗ rộng hơn đường kính bu lông ít nhất là 1 mm. Thí dụ cần xỏ bu lông M10 thì phải dùng mũi khoan Φ11 để khoan lỗ.

Đúng là có sự nhầm lẫn ở đay hoan2182, đúng ra phải ghi là Nhập đường kính lỗ .

Còn về cách ghi kích thước, trước giờ mình không hề biết đến điều hoan2182 vừa nói. Mình sẽ coi lại điều này. Nhưng mình nghĩ DIM kiểu của mình chắc sẽ dễ gia công hơn đổi với bản mã nhiều hàng lỗ.

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

 

Thử xem sao: Lệnh là VMB

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(Defun duy:xd_listngngancach<kytu (chuoi kytu / chuoi kytu ckq) 
(setq lkq nil)
(setq bdd 1) 
(setq b 1)
(setq l (fix (strlen chuoi)))
(repeat l
(setq a (substr chuoi b 1))
(cond
((= a kytu) 
(setq dkt (substr chuoi bdd (- b bdd)))
(setq lkq (append lkq (list dkt)))
(setq bdd (+ b 1)) 
)
)
(setq b (+ b 1))
)
(setq dkt (substr chuoi bdd (+ (- l bdd) 1)))
(setq lkq (append lkq (list dkt)))
lkq)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun c:vmb ()
(setq matbich (getstring "\nNhap kich thuoc mat bich <Cao * Rong>"))
(setq daimatbich (atoi (car (duy:xd_listngngancach<kytu matbich "*"))))
(setq rongmatbich (atoi (cadr (duy:xd_listngngancach<kytu matbich "*"))))
(setq diemve (getpoint "Diem tren ben trai mat bich"))
(command ".RECTANG" "_non" diemve "_non" (list (+ (car diemve) rongmatbich) (- (cadr diemve) daimatbich)) )
(or canhngang (setq canhngang 100))
(setq canhngang (cond ((getreal (strcat "\nKhoang cach ngang giua 2 cot bolon < " (rtos canhngang 2 2) " >:")))(canhngang)))
(setq bulong (getstring "\nNhap khoang cach doc tinh tu tren xuong <khoang1 + khoang2 +...+ khoangn"))
(setq khoangbulong (duy:xd_listngngancach<kytu bulong "+"))
(setq khoangvebulong 0.0)
(foreach khoangbulonghh khoangbulong 
(setq khoangvebulong (+ khoangvebulong  (atoi khoangbulonghh)))
(command ".insert" "BU LONG" "_non"  (list (+ (+ (car diemve) (/ rongmatbich 2)) (/ canhngang 2)) (- (cadr diemve) khoangvebulong)) 0.01 0.01 0)
(command ".insert" "BU LONG" "_non"  (list (- (+ (car diemve) (/ rongmatbich 2)) (/ canhngang 2)) (- (cadr diemve) khoangvebulong)) 0.01 0.01 0)
)
(princ)
)

Đây là lsp được ứng dụng nhiều trong lĩnh vực cơ khí, tuy nhiên nếu ứng dụng lsp trong trong  bv bất kì(không có block "bulong" sẵn) thì lsp không chạy được. Nếu bạn thêm chọn luôn chọn đường kính nữa thì tuyệt lắm! 

 
 
 

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

Ý của mình là zầy nè tien2005. Khoảng cách theo phương ngang thì tinh theo tim (chỉ nhập 1 lần), còn phương dọc thì tính từ mép trên xuống (nhập nhiều lần)

 115759_ban_ma.png

 

 

Chủ thớt cho em hỏi:

 

Khoảng cách ngang (từ bolt->mép bản mã=65) và Khoảng cách dọc (từ bolt->mép bản mã=60)l à tính toán ra hay lấy theo cấu tạo ạ.Nếu lấy theo cấu tạo thì nên lấy >=1,5D và 2 k/c 2 mép này bằng nhau luôn cho dễ chế tạo?

Khi đó,thì khoảng cách dọc cũng chỉ cần nhập các giá trị ở giữa thôi ạ (các giá trị này >=2.5D),hơn nữa các k/c này phải bằng nhau mới đúng chứ ạ?

 

Còn trường hợp k/c ngang viết luôn cho trường hợp nếu có >2 hàng bulong cho tổng quá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

Thêm phần nhập khoảng cách nhân theo ý chủ thớt (ko chỉnh sửa gì nửa đâu nhé) có thề nhập hổn hợp như sau 100+200+3*150+200+4*60+300. Lưu ý là đoạn nhân thì nhập số lần nhân khoảng cách nhé.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(Defun duy:xd_listngngancach<kytu (chuoi kytu / chuoi kytu ckq) 
(setq lkq nil)
(setq bdd 1) 
(setq b 1)
(setq l (fix (strlen chuoi)))
(repeat l
(setq a (substr chuoi b 1))
(cond
((= a kytu) 
(setq dkt (substr chuoi bdd (- b bdd)))
(setq lkq (append lkq (list dkt)))
(setq bdd (+ b 1)) 
)
)
(setq b (+ b 1))
)
(setq dkt (substr chuoi bdd (+ (- l bdd) 1)))
(setq lkq (append lkq (list dkt)))
lkq)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun c:vmb ()
(setq matbich (getstring "\nNhap kich thuoc mat bich <Cao * Rong>"))
(setq daimatbich (atoi (car (duy:xd_listngngancach<kytu matbich "*"))))
(setq rongmatbich (atoi (cadr (duy:xd_listngngancach<kytu matbich "*"))))
(setq diemve (getpoint "Diem tren ben trai mat bich"))
(command ".RECTANG" "_non" diemve "_non" (list (+ (car diemve) rongmatbich) (- (cadr diemve) daimatbich)) )
(or canhngang (setq canhngang 100))
(setq canhngang (cond ((getreal (strcat "\nKhoang cach ngang giua 2 cot bolon < " (rtos canhngang 2 2) " >:")))(canhngang)))
(setq bulong (getstring "\nNhap khoang cach doc tinh tu tren xuong <khoang1 + khoang2 +solan * khoang nhan +...+ khoangn>"))
(setq khoangbulong (duy:xd_listngngancach<kytu bulong "+"))
(setq khoangvebulong 0.0)
(foreach khoangbulonghh khoangbulong 
(themnhan)
)
(princ)
)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(defun themnhan ()
(setq khoangbulongnhan (duy:xd_listngngancach<kytu khoangbulonghh "*"))
(cond
((= (cadr khoangbulongnhan) nil) 
(setq khoangvebulong (+ khoangvebulong  (atoi khoangbulonghh)))
(command ".insert" "BU LONG" "_non"  (list (+ (+ (car diemve) (/ rongmatbich 2)) (/ canhngang 2)) (- (cadr diemve) khoangvebulong)) 0.01 0.01 0)
(command ".insert" "BU LONG" "_non"  (list (- (+ (car diemve) (/ rongmatbich 2)) (/ canhngang 2)) (- (cadr diemve) khoangvebulong)) 0.01 0.01 0)
 )
((/= (cadr khoangbulongnhan) nil)
(setq sonhan   (atoi (car khoangbulongnhan)))
(setq khoangnhan  (cadr khoangbulongnhan))
(repeat (fix sonhan)
(setq khoangvebulong (+ khoangvebulong  (atoi khoangnhan)))
(command ".insert" "BU LONG" "_non"  (list (+ (+ (car diemve) (/ rongmatbich 2)) (/ canhngang 2)) (- (cadr diemve) khoangvebulong)) 0.01 0.01 0)
(command ".insert" "BU LONG" "_non"  (list (- (+ (car diemve) (/ rongmatbich 2)) (/ canhngang 2)) (- (cadr diemve) khoangvebulong)) 0.01 0.01 0)
)
 )
)
(princ)
)
  • Vote tăng 1

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

Đúng là có sự nhầm lẫn ở đay hoan2182, đúng ra phải ghi là Nhập đường kính lỗ .

Còn về cách ghi kích thước, trước giờ mình không hề biết đến điều hoan2182 vừa nói. Mình sẽ coi lại điều này. Nhưng mình nghĩ DIM kiểu của mình chắc sẽ dễ gia công hơn đổi với bản mã nhiều hàng lỗ.

 

Lần đầu tiên em thấy anh ghi kích thước bảng mã  kiểu như ghi kích thước mặt bằng xây dựng nhà cửa. Vì đây chỉ có chi tiết bảng mã lắp ghép lên 1 chi tiết khác, các kích thước bao ngoài không đòi hỏi chính xác,  nên  cách ghi kích thước không ảnh hưởng gì đến quy trình công nghệ gia công lỗ. Nhưng chắc chắn là  không có chuyện  "dễ gia công hơn đối với bản mã nhiều hàng lỗ"  như anh nói.

 

Nếu cả thế giới này cùng ghi kích thước bản mã như anh, thì chắc chắn là phải xây dựng thêm vài tỉ nhà máy sản xuất mực in mới đáp ứng đủ nhu cầu in bản vẽ.

 

Khi một chi tiết có nhiều chi tiết lắp ghép lên nó, việc ghi kích thước tùy hứng qua cầu sẽ ảnh hưởng lớn đến công nghệ chế tạo, thí dụ:

 

ghi11.jpg

ghi22.jpg

ghi33.jpg

 

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

Chủ thớt cho em hỏi:

 

Khoảng cách ngang (từ bolt->mép bản mã=65) và Khoảng cách dọc (từ bolt->mép bản mã=60)l à tính toán ra hay lấy theo cấu tạo ạ.Nếu lấy theo cấu tạo thì nên lấy >=1,5D và 2 k/c 2 mép này bằng nhau luôn cho dễ chế tạo?

Khi đó,thì khoảng cách dọc cũng chỉ cần nhập các giá trị ở giữa thôi ạ (các giá trị này >=2.5D),hơn nữa các k/c này phải bằng nhau mới đúng chứ ạ?

 

Còn trường hợp k/c ngang viết luôn cho trường hợp nếu có >2 hàng bulong cho tổng quát ^^ .

Cái này chỉ là hình vẽ minh họa thôi Tr.CongSon :D. Mà các khoảng cách đó thì người thiết kế tính, mình chỉ ra bản vẽ Shop thôi.

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

×