圖2 銑刀截面多邊形
(setq p11 (polar (list 0 0 0) (/ pi 2) 23.5))
(setq p12 (polar p11 0 db))
(setq p13 (polar p12 (/ pi 2 -1) 13.5))
(setq p14 (polar p13 (* pi -1) db))
;定義銑刀截面多邊形各節點P11、P12、P13、P14
(command "pline" p12 p13 p14 p11 "a" "cl" "") ;用多段線繪制銑刀截面多邊形
(command "revolve" "l" "" "x" "" );旋轉生成銑刀體
(setq o1 (entlast));返回圖元名
(command "ucs" "y" "" "" "color" 1);坐標系繞Y軸轉90°,并指定顏色為紅色
(setq p20 (list 0 0 0));設當前坐標原點為P20
(setq p21 (polar p20 0 3.3))
(setq p22 (polar p21 (/ pi 2 ) 5.2))
(setq p23 (polar p22 (/ (* 105 pi )180) 1.3))
(setq p24 (polar p20 (/ pi 2 ) 6))
(setq p25 (polar p20 (/ pi 2 ) 5))
;定義銑刀槽截面多邊形各節點P20、P21、P22、P23、P24及基點P25,如圖3所示

圖3 銑刀槽多邊形
(command "pline" p20 p21 p22 p23 "a" p24 "l" "c" "");用多段線生成銑刀截面多邊形
(command "extrude" "l" "" (* 2 db) "");拉伸形成刀槽體
(setq o2 (entlast));返回該圖元名
(command "move" o2 "" p25 (list 0 -25 -1));以基點P25移動刀槽體到指定點
(command "array" o2 "" "p" p21 20 "" "" );將刀槽體環形矩陣20個
(setq ss (ssget "x" '((62 . 1))));以紅色為過濾器創建選擇集ss
(command "subtract" o1 "" ss "");將銑刀體與刀槽體進行布爾差運算生成銑刀簡化模型
(setq o3 (entlast));返回該圖元名
(command "rotate" o3 "" p21 5);銑刀旋轉5°
(command "move" o3 ""
(list 0 0 0) (list 0 (* -1 (+ 25 (/ (- d db) 2))) 0));將銑刀移動到切削位置
三、螺紋加工三維仿真
1.車削螺紋仿真原理
螺旋線的數學模型是:
其中,p為螺距,
為瞬時角,r為基圓半徑。基圓柱體每旋轉一個步距角
,車刀平行于圓柱體軸線進給一個量
,將車刀復制件與圓柱體布爾差運算,再進行下一個循環。