Đến nội dung


Hình ảnh

Lập trình Autolisp vẽ cụm chi tiết trục ra của hộp giảm tốc bánh răng trụ 1 cấp


  • Please log in to reply
6 replies to this topic

#1 Minh Phúc 95

Minh Phúc 95

    Chưa sử dụng CAD

  • Members
  • Pip
  • 1 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 11 March 2015 - 07:23 PM

Anh/ chị nào có thể giúp e phần code lập trình Autolisp vẽ tự động cụm chi tiết trục ra của hộp giảm tốc bánh răng trụ 1 cấp vs ạ? E cảm ơn nhiều 


  • 0

#2 Hoan1111

Hoan1111

    biết lệnh adcenter

  • Members
  • PipPipPipPipPipPipPip
  • 2587 Bài viết
Điểm đánh giá: 692 (tốt)

Đã gửi 11 March 2015 - 09:37 PM

Anh/ chị nào có thể giúp e phần code lập trình Autolisp vẽ tự động cụm chi tiết trục ra của hộp giảm tốc bánh răng trụ 1 cấp vs ạ? E cảm ơn nhiều 

 

Đa số các anh/ chị viết lisp đều không phải là dân cơ khí, nhưng rất nhiệt tình viết lisp cho dân cơ khí! :) :) :)

Các chi tiết lắp trên trục  ra có nhiều loại khác nhau, cả bên trong ổ lẫn bên ngoài ổ....

Anh có thể gửi hình  vẽ cụm chi tiết lắp trên trục ra của hộp giảm tốc bánh răng trụ 1 cấp lên đây được không???


  • 0

66 Câu Phật Học Cho Cuộc Sống : http://ngocchinh.com...-cho-cuoc-song/

Gió đưa cây cải về trời / Rau răm ở lại chịu lời đắng cay...

 

 


#3 nguyenllinh25

nguyenllinh25

    Chưa sử dụng CAD

  • Members
  • Pip
  • 4 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 07 May 2015 - 09:47 AM

 

Đa số các anh/ chị viết lisp đều không phải là dân cơ khí, nhưng rất nhiệt tình viết lisp cho dân cơ khí! :) :) :)

Các chi tiết lắp trên trục  ra có nhiều loại khác nhau, cả bên trong ổ lẫn bên ngoài ổ....

Anh có thể gửi hình  vẽ cụm chi tiết lắp trên trục ra của hộp giảm tốc bánh răng trụ 1 cấp lên đây được không???

anh / chị giúp em viết lisp bánh răng trụ răng nghiêng . Nhập các thông số z ,m ,beta để tính thông số bánh răng.

em cảm ơn nhiều .


  • 0

#4 nguyenllinh25

nguyenllinh25

    Chưa sử dụng CAD

  • Members
  • Pip
  • 4 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 07 May 2015 - 09:53 AM

141989_cam00020_2.jpg


  • 0

#5 nguyenllinh25

nguyenllinh25

    Chưa sử dụng CAD

  • Members
  • Pip
  • 4 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 09 May 2015 - 10:57 AM

em có viết một lisp, nhưng không biết là do lỗi nào. Mong anh chị sửa giúp. 

 

(defun c:brang ()
 ;; tao cac lop (layer)
  (setq clay (getvar "clayer"))
  (command "-layer" "m" "_mss.bao" "c" 7 "" "lt" "continuous" "" "")
  (command "-layer" "m" "_mss.dut" "c" 6 "" "lt" "hidden" "" "")
  (command "-layer" "m" "_mss.tam" "c" 1 "" "lt" "center" "" "")
  (command "-layer" "m" "_mss.ren" "c" 1 "" "lt" "continuous" "" "")
  (command "-layer" "m" "_mss.cat" "c" 8 "" "lt" "continuous" "" "")
  (command "-layer" "m" "_mss.phantom" "c" 9 "" "lt" "phantom" "" "")
  (command "-layer" "m" "_mss.pro" "c" 5 "" "lt" "continuous" "" "")
  (command "-layer" "m" "_mss.text" "c" 1 "" "lt" "continuous" "" "")
  (setvar "clayer" clay)
  
  (setvar "cecolor" "white")
  (setvar "osmode" 0)
  (setq g0   0
g45 (* pi 0.25)
g90 (* pi 0.5)
g135 (* pi 0.75)
g180 pi
g270 (* pi 1.5)
  )
  ;;nhap cac thong so can thiet
  (setq dt (getreal "\n nhap duong kinh truc lap banh rang:<30> "))
  (initget 6)
  (if (null dt)
    (setq dt 30)
  )  
  (setq m 2)
  ;|(setq lst '((1.25) (1.5) (2) (2.5) (3) (4) (5) (6) (8) (10) (12)
   )
)
  (initget 6)
  (setq m2 (getreal "\nNhap vao modun:<2> "))
  (if (null m2)
    (setq m2 2)
  )
  (setq m1 (assoc m2 lst))
  (while (null m1)
    (prompt
      "\nNhap modun chua theo tieu chuan, yeu cau nhap lai!"
    )
    (setq m2 (getreal "\nNhap lai:"))
    (setq m1 (assoc m2 lst))
    (setq m (nth 0 m1))
  )
  (setq z (getreal "\nNhap so rang >=17 <20>:"))
  (if (null z)
    (setq z 20)
  )
  (while (< z 17)
    (setq z (getreal "\n nhap lai so rang:"))
  )
  (setq beta (getreal "\nNhap goc nghieng rang <=20 <15>:"))
  (if (null beta)
    (setq beta 15)
  )
  (while (> beta 20)
    (setq beta (getreal "\n nhap lai goc nghieng rang:"))
  )|;
  ;;Thong so banh rang nghieng
  (setq d1 (fix (/ (* m z) (cos (/(* beta pi) 180)))) ;duong kinh vong chia
ddr (fix (+ d1 (* 2 m))) ;duong kinh dinh rang
dcr (fix (- d1 (* 2.5 m))) ;duong kinh chan rang
lm (fix (* 1.5 dt)) ;chieu dai mayo so bo
  )
  ; Ve banh rang nghieng
  (setq p1 (getpoint "\nChon diem tam banh rang:")
        p2 (polar p1 g180 lm)
)
  (command "-layer" "m" "_mss.tam" "")
  (command ".pline" p1 p2"")
  (setq p3 (polar p2 g90 (* dt 0.5))
p4 (polar p2 g90 (* dcr 0.5))
p5 (polar p2 g90 (* d1 0.5))
p6 (polar p5 g45 (/(* 2 (- (* ddr 0.5) (* d1 0.5))) (sqrt 2))
p10 (polar p1 g90 (* dt 0.5))
p9 (polar p1 g90 (* dcr 0.5))
p8 (polar p1 g90 (* d1 0.5))
p7 (polar p8 g135 (/(* 2 (- (* ddr 0.5) (* d1 0.5))) (sqrt 2))
)
  (command "-layer" "m" "_mss.bao" "")
  (command ".pline" p2 p3"")
  (command ".pline" p1 p10"")
  (setq ss (ssadd))
  (command ".pline" p3 p4 p9 p10"")
  (ssadd (entlast) ss)
  (command ".pline" p9 p8"")
  (command ".pline" p8 p7"")
  (command ".pline" p4 p5"")
  (command ".pline" p5 p6"")
  (command ".pline" p6 p7"")
  (command "-layer" "m" "_mss.tam" "")
  (command ".pline" p5 p8"")
  
  ; ve mat cat
  
  (command "-layer" "m" "_mss.cat" "")
  (command "-hatch" "s" ss "" "p" "ansi31" 35 0 "")  
       (princ) 
)

  • 0

#6 nguyenllinh25

nguyenllinh25

    Chưa sử dụng CAD

  • Members
  • Pip
  • 4 Bài viết
Điểm đánh giá: 0 (bình thường)

Đã gửi 09 May 2015 - 11:00 AM

http://www.cadviet.c...xt_document.txt


  • 0

#7 phamthanhbinh

phamthanhbinh

    biết lệnh adcenter

  • Moderator
  • PipPipPipPipPipPipPip
  • 6009 Bài viết
Điểm đánh giá: 3113 (tuyệt vời)

Đã gửi 09 May 2015 - 04:09 PM

Hề hề hề,

File lisp của bạn có khá nhiều lỗi.

Một số lỗi mình phát hiện được như sau:

1/-  ;|(setq lst '((1.25) (1.5) (2) (2.5) (3) (4) (5) (6) (8) (10) (12)

Dòng code này có dấu " ; "đầu dòng nên đã bị vô hiệu hóa. Như vậy các dòng code có chứa các ngoặc đóng của các hàm quote và setq sẽ là bị thừa do chưa vô hiệu hóa nó.

Giả sử không vô hiệu hóa dòng code này, tứ là không có dấu "; " thì dòng code này cũng sai vì trong lisp không có hàm nào là (1.25) (1.5) ...... cả.

Nếu bạn muốn tạo một list gồm các giá trị số này thì nó sẽ phải là (list 1.25 1.5 2 .........) Các phần tử trong đó cách nhau một khoảng trắng.

Nếu bạn muốn có một list dạng ((1.25) (1.5) (2).....) thì bạn cần có thêm các hàm quote hoặc hàm (list 1.5) ( list 1.25) bên trong cái hàm quote của bạn.

2/- Do bạn đã vô hiệu hóa dòng code này nên biến lst chưa hình thành. vậy nên các hàm (assoc m2 lst) là vô nghĩa. Bạn cũng nên xem lại định nghĩa hàm (assoc ....) bởi theo mình nghĩ thì hàm (assoc ...) không áp dụng được với trường hợp biến lst của bạn cấu tạo như vậy.

3/- Bạn lưu ý việc nhập giá trị biến m2. Theo đó biến này là một số thực chứ không phải số nguyên. Do đó dù bạn nhập là 2 lisp vẫn hiểu đó là 2.0 và như vậy hàm (assoc m2 lst) sẽ hoạt động không đúng.

4/- Những chỗ khác mình chưa check được hết nên bạn hãy chỉnh sửa lại những điều trên rồi chạy thử lisp xem có còn bị lỗi nữa không nhé,


  • 0
Chúc các quý Anh trên diễn đàn luôn khỏe, đẻ thêm được nhiều thứ để mót.