刀具CAD技術資料_第1頁
刀具CAD技術資料_第2頁
刀具CAD技術資料_第3頁
刀具CAD技術資料_第4頁
刀具CAD技術資料_第5頁
已閱讀5頁,還剩106頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

碩士學位論文PAGEPAGE791緒論1.1刀具CAD技術及其發展現狀1.1.1CAD/CAM技術的特點和發展趨勢CAD技術是伴隨著計算機技術的產生和發展而產生并不斷發展的,這門技術從產生到現在,已經歷了半個世紀,從形成、發展、提高到目前的高度集成,已經形成了比較完整的科學技術體系,并在當今高新技術領域中占有很重要的位置[2]。自從1946年出現第一臺計算機開始,人們就不斷地試圖將計算機技術引入到傳統的機械設計和制造領域。特別是1951年美國PARSONS公司麻省理工學院(MIT)研制成了數控三坐標銑床,實現了利用不同數控程序對不同零件的加工,首次出現了現代柔性自動化的原形。隨后,為適應數控銑床加工各種復雜形狀零件的需要,MIT研制數控自動編程系統,于20世紀50年代末研制成功了批處理語言的數控自動編程系統APT(AutomaticallyProgrammingTool),該系統是最初的計算機輔助編程系統,開辟了計算機在制造領域的應用前景。在此基礎上,有人提出能不能不通過APT系統對走刀軌跡的描述而直接描述零件本身的問題,由此產生了CAD的概念[3]。這一時期,美國BarberColman和Fellows公司等,就已應用計算機進行齒輪刀具齒形的設計計算,有效地提高了齒輪刀具的設計速度和精度。60年代初,MIT的研究生I.E.Sutherland首次提出計算機圖形學、交互技術及圖形符號的存儲采用分層的思想,為CAD技術提供了理論基礎。隨后相繼出現了商品化的CAD設備和軟件系統。60年代中期到70年代中期是CAD/CAM技術走向成熟的階段,隨著計算機硬件的發展,以小型機、超小型機為主的CAD/CAM軟件進入市場。出現了面向中小企業的CAD/CAM商品化系統,并在60年代末和70年代初出現了柔性制造系統FMS[5]。80年代是CAD/CAM技術迅速發展的時期,這一階段CAD的主要技術特征是實體造型(SolidModeling)理論和幾何建模(GeometricModeling)方法。實體建模的邊界表示法(B-Rep)和構造實體造型幾何數表示法(CGS)在軟件開發上得到應用,實現了三維造型、自由曲面設計、有限元分析等工程應用。從90年代起,CAD/CAM技術已不再是過去單一模式、單一功能、單一領域的水平,而向標準化、集成化、智能化發展。為了實現系統的集成,資源的共享,和產品生產與組織的高度自動化,需要企業和企業集團內的CAD/CAM系統之間和各個子系統之間進行統一的數據交換。在這種情況下,一些發達國家和國際化標準組織都進行了數據交換接口方面的開發工作,并指定了相應的標準。這一時期的CAD技術基礎理論主要是以PTC公司的Pro/Engineer為代表的參數化造型理論和以SDRC的I-DEAS為代表的變量化造型理論,形成了基于特征的實體建模技術。1.1.2市場上流行CAD系統的技術特點和發展趨勢CAD軟件大致可分為高端UNIX工作站CAD系統,中端Windows微機CAD系統和低端二維微機CAD系統等三類。高端UINX工作站CAD系統這類系統的特點是,UNIX操作系統為支撐平臺,從50年代發展至今,產生了許多著名的軟件,也使許多曾經顯赫一時的軟件在竟爭中落伍,有的被兼并改組,如Appilcon,CADAM,intergraph等。目前,這類系統中比較流行的有:·PTC公司的Pro/Engineer。是一套由設計至生產的機械自動化軟件,是新一代的產品造型系統,是一個參數化、基于特征的實體造型系統,并且具有單一數據庫功能。·SDRC公司的I-DEAS軟件。采用基于特征的實體建模技術,以實體造型和并行相關性為特征。·EDS公司的UGH軟件。采用混合建模方法,主要應用于汽車行業建模造型。在設計分析,加工制造等方面有一定的特色。·CV公司的CADDS5軟件。采用混合建模,提供參數造型,全套工程分析,曲面,并行裝配等強大的功能,統一數據庫,圖形界面,其強項為:企業產品數據管理和并行裝配模形應用。·以色列Cimatron公司的CIMATRON軟件。可提供優良的三維造型,工程繪圖,數控加工,以及集成化的PDM,其強項是CAM。·MatraDatavision公司的Euclid3軟件。采用混合建模方法,曲成設計造型和數控加工編程等功能強大。其強項為詳細設計和CAM。·IBM/Dassualt公司的CATIA軟件,采用混合建模方法,其強項為應用集成和CAM。·日立造船情報系統株式會實社的GRADE/CUBE-NC軟件。有突出的特點是面向制造,具有豐富的實用化曲面造型和加工編程。(2)中端微機的CAD系統隨著計算機技術的發展,尤其是微機的性能和Windows技術的發展,使微機具備了與中低檔UNIX工作站競爭的實力,也使基于Windows技術的微機CAD系統迅速發展起來。目前,國際上最流行的有Solidworks公司的Solidworks軟件,UG公司的SolidEdge軟件和Autodesk公司的MDT軟件等,國內也推出清華CAD工程中心的GEMS,浙大大天公司的GSMASD,北京巨龍騰公司的龍騰CAD,北京愛宜特公司的MicroSolid、江蘇杰必克超人CAD/CAM以及華正公司的CAXA-ME。·Solidworks軟件。包含裝配設計建模,零件設計建模,工程圖與鈑金等模塊,還與高級圖像渲染軟件Photoworks,高級有限元分析軟件Cosmos、機構運動學分析軟件Motionworks,產品數據管理(PDM)軟件SmarTeam,以及數控加工等著名和分析軟件無縫集成。·SolidEdge6.0軟件。采用Parasolid造型內核和STREAM技術,基于Windows操作系統,以及完全與Microsoft產品相兼容的參數化三維實體造型系統,提供了實體造型、鈑金、制圖、裝配、塑料模具和鑄造設計、產品渲染和文檔管理等功能,并能和Cosmos、IPA、SmarEdge無縫集成。·MeshanicalDesktop(MDT)3.0軟件。采用ACIS4.2幾何造型核心系統,提出基于特征為參數化實體造型、曲面造型、裝配相關聯的繪圖和草圖功能,并包含了完整的AutoCAD繪圖工具集,與AutoCAD完全融為一體。·國產的三維CAD軟件中,Microsolid采用ACIS作為系統的內核,GEMS、GS-MCAF、龍騰、超人CAD/CAM三維系統是側重于面向加工的曲面造型系統。(3)低端CAD系統——二維CAD系統·AutoCAD軟件。純二維CAD系統在國外已經不多,真正有名的是Autodesk公司的AutoCAD軟件。AutoCAD2004提高了數據訪問能力,軟件適用性以及更強的定制和開發能力,擴展Internet系統設計信息的溝通,提高文件輸出/輸入、編輯/對象捕捉和制圖的速度,可對多個圖形文件同時進行操作,支持多任務設計環境(MDE)。·國產二維CAD軟件。目前流行的二維CAD軟件是自主開發平臺和自主版的二維CAD系統,如開目CAD、高華CAD、凱達BCAD、浙大ZDDS、中科院PICAD和華正CAXA電子圖板等等。另一類是以AutoCAD為平臺的二維CAD系統,如利瑪CAD、大恒CAD等。國產CAD二維軟件在參數化繪圖、動態導航、明細表BOM等三表生成、公差標準、機械零件設計標準件圖庫和工程圖紙管理等方面有較強的特色。隨著國內外CAD系統的不斷發展和完善,我們可以看到CAD系統的發展趨勢主要有以下幾個方面:(1)建模技術。由線框模形、實體模型和非均勻有理B樣條算法為特征,幾何建模已發展到參數化、變量化和特征建模,以及未來的面向產品生命周期,實現產品生命周期中內部描述信息(產品設計、計劃、制造、加工、裝配、檢驗等信息)和外部過程的集成為特點的產品建模技術。參數驅動、特征造型、動態導航、二/三維雙向相關、STEP標準和動態圖形顯示等UNIX系統的精華已被充分吸收到新一代微機CAD系統中,而特征樹是近年來在CAD軟件中引入的一項非常有效的技術。面向產品生命周期的關系型產品模型技術的研究正在不斷提高。(2)軟件組件技術。可以提高軟件的穩定性和開發效率。Solidworks、Solidedge均采用Parasolid幾何造型器,MDT、Microsolid均采用ACIS幾何造型器等。(3)Windows技術和Internet技術。許多公司,如Autodesk正將其軟件技術的研究開發重心集中于正在蓬勃發展的三大技術領域:對象技術、三維技術和Internet技術,這些核心技術主導著全球設計工業的發展趨向。(4)智能CAD技術。智能技術在CAD系統中將占有重要地位,將專家系統、智能工程等技術,借助領域專家的設計經驗,不斷積累和更新,形成企業產品設計知識庫,是企業開發產品的寶貴資源[12]。1.1.3CAD/CAM技術在刀具行業中的應用八十年代,由于計算機技術的發展,特別是工程工作站的誕生、三維圖形技術的成熟和CAD/CAM支撐軟件的集成化和商品化,而且由于CNC機床和加工中心的廣泛應用,高檔刀具的需求日益提高,促進了刀具生產系統的進現代化,使得刀具CAD/CAM技術的開發應用,無論在廣度上還是在深度上都達到了較高的水平,其中以多品種、小批量的可轉位刀具和數控工具系統生產部門最為活躍,技術水平也較高[5]。在可轉位刀具的實際生產中,復合可轉位孔加工刀具的生產與CAD/CAM的應用較早。除由于結構限制,少數刀具采用整體或焊接刀具外,大多數均采用可轉位刀具。為了適應可轉位刀具的設計與制造要求,提高市場的競爭力,生產復合孔加工刀具的廠家分別從設計與加工上入手,引進了一系列先進的設計與制造手段。為滿足用戶交貨期與使用要求,提高刀具的設計質量與成功率,它們在大量采用NC機床與加工中心的同時,紛紛建立了自己的計算機系統及CAD/CAM軟件支持系統,實現了CAD/CAM一體化,有的甚至建立了小規模的集成制造系統,其中著名的復合孔加工刀具生產廠商美國的Valenite公司(現歸美國Cincinati集團)、德國的Hertel公司、Mapal公司和Komet公司等都分別于七、八十年代開始建立了自己的計算機系統用于CAD/CAM;尤其是德國的Walter公司于近年投資1億多馬克改造了可轉位銑刀刀體生產線,該生產線是一個小型的計算機集成制造系統,設備運行、產品周期、質量監控均由計算機控制并進行CAD/CAM信息處理[6]。我國生產可轉位刀具雖然已有近30年的歷史,但大多數沿用傳統的設計、制造方法。“七五”及“八五”期間,國內的生產可轉位刀具的廠家大多進行了不同規模的技術改造,配備了CNC機床、加工中心及圖形工作站等,推動了國內可轉位刀具生產的發展。但由于沒有CAD/CAM技術上的支持,無法適應新產品開發的非標訂貸的要求,沒有發揮出先進設備應用和潛力[6]。只有少數廠商如哈爾濱工量數控刀具有限責任公司等在推進可轉位刀具的開發和CAD/CAM一體化技術的商用化等方面走在了前面[2]。1.1.4國內外對可轉位淺孔鉆的研究及其CAD系統現狀70年代未,國外出現了硬質合金可轉位鉆頭,這種鉆頭與高速鋼麻花鉆相比,允許采用較高的切削速度和進給速度,可以大大縮短加工時間,故具有效率高、壽命長和經濟性好等優點,因而獲得了廣泛的應用,出現了一種用這種高效短鉆頭替代麻花鉆加工淺孔的趨向[14]。硬質合金可轉位鉆頭是一種淺孔鉆,是SANDVIK公司于1975年首次推出的一種加工淺孔的高效鉆頭,也叫淺孔鉆或U鉆[15]。多年來,由于大量的研究工作和生產實踐,使這種刀具在技術上不斷地得到了完善和發展,在工業發達國家,這種新型刀具不僅在車床、銑床和加工中心等機床上得到廣泛采用,而且在組合機床和自動線上也得到了很好應用,提高了組合機床的生產效率。目前,該產品在國外已得到廣泛應用。瑞典、德國、美國、日本等國都有同類產品,其中以瑞典Sandvik公司和德國KOMET公司的可轉位淺孔鉆較為典型[23]。在現代生產中,硬質合金可轉位孔加工刀具已為人熟知。為加工L/D比值3~5、中等直徑的孔,常常采用有內、外兩個刀片的可轉位淺孔鉆,它是從高速鋼麻花鉆和整體硬質合金鉆頭基礎上發展起來的。利用耐磨性高的硬質合金,并通過選擇合適的刀片牌號(材質)和涂層種類制造的可轉位淺孔鉆,即可適用于一定的加工任務,并大大提高鉆孔效率[16]。對于精密孔加工,前道工序如采用可轉位鉆頭鉆孔,不僅可減少中間工序,縮短加工時間,而且可減少加工工位和設備投資,有著特別明顯的經濟效益[14]。在我國,可轉位鉆頭雖在80年代初己研制成功,但到目前為止尚未進行穩定的批量生產。在汽車工業中,象連桿、轉向節和氣門搖臂等一些零件的鉆孔加工,國外早已采用可轉位鉆頭。而我們至今仍是采用高速鋼麻花鉆這樣的傳統刀具,這在加工工藝上確實存在著很大的差距。可轉位淺孔鉆一般是由兩塊硬質合金刀片(較大直徑淺孔鉆也可有4~5塊刀片)在徑向不對稱分布來構成,兩塊刀片分別切削一段金屬而形成被加工孔。而正由于刀片在鉆頭上的非對稱布置,導致了刀具在加工時要產生徑向合力,從而影響機床的受力與刀具的變形,進而影響被加工孔的質量(主要是孔的形狀精度),制約了該種高效刀具的進一步擴大使用。因此最大限度地減小刀具加工時的徑向合力,就成為淺孔鉆開發的關鍵技術。在以往的國內外研究中一般采用兩種方法:其一是參數采用單位切削力進行近似的計算與分析,得到相應的保持徑向力平衡的鉆頭結構[5][8];其二是采用試驗的辦法對較小范圍內的結構參數與徑向力的關系進行有限的研究[9][10]。但這兩種方法都無法建立結構參數優化的數學模型,且采用試驗的辦法費力費時,不大可能對大范圍的數據進行研究與分析。所以應該對淺孔鉆進行深入系統的研究并建立正確的數學模型,從理論上優化刀具的結構和幾何參數,并根據優化模型,開發智能CAD設計系統,使淺孔鉆的標準和非標準設計,都能在同一程序中完成。1.2本課題的來源本課題來自四川省教育廳的重點科研項目《淺孔鉆鉆削機理及智能化開發系統研究》的智能化開發系統研究部分。1.3主要研究內容及論文的結構安排本論文主要研究了可轉位淺孔鉆智能CAD系統的設計與開發,其主要內容如下:在收集和分析當前國內外有關可轉位淺孔鉆及CAD系統資料的基礎上,提出可轉位淺孔鉆智能CAD系統的基本構架。建立可轉位淺孔鉆幾何參數計算的數學模型,并在此基礎上給出刀體上刀片槽空間位置的數學模型及最優結果。重點進行可轉位淺孔鉆智能CAD系統的開發與研究。確定本系統的軟硬件環境,建立系統的總體框架。完成可轉位淺孔鉆的刀片槽空間位置優化計算模塊、智能推理模塊、三維實體建模模塊、裝配圖模塊和二維工程圖模塊的設計。建立可轉位淺孔鉆的數據庫、知識庫和實例庫。論文包括以下6部分:1緒論綜合分析了CAD技術的特點和發展趨勢,論述了論文的研究背景,提出智能CAD系統的可行性和必要性。2可轉位淺孔鉆幾何建模與分析論述了可轉位淺孔鉆數學模型的建立,并給出了刀體上刀片槽空間位置的優化模型。3可轉位淺孔鉆智能CAD系統的設計主要論述了系統運行的軟硬件環境和系統的整體設計框架。4系統實現的關鍵技術這章是本論文的重點,對系統涉及到的主要技術都做了較詳細的闡述。重點敘述了Pro/Toolkit二次開發技術,matlab與VC的接口技術等。5系統的運行本章通過例子對智能系統的使用方法作了較詳細的介紹,使讀者對本系統的功能有較全面的認識。6總結及展望對全文進行總結,給出了論文的價值與不足之處,展望未來的發展趨勢以及還需進一步研究的內容。2可轉位淺孔鉆的數學模型2.1可轉位淺孔鉆的幾何模型參考文獻[60]對可轉位淺孔鉆數學模型的求解做了較詳細的闡述,在本論文中,給出了刀體上刀片槽五個空間位置參數的計算及其優化模型。2.1.1坐標系的建立以刀桿的端部裝有兩個等邊不等角六邊形硬質合金可轉位刀片的淺孔鉆為例,如圖2.1(a)建立鉆頭坐標系o-xyz,z軸與鉆頭軸線重合;如圖2.1(b)建立刀片坐標系o’-x’y’z’。現將刀片連同其坐標系分別安裝在鉆頭上,首先將刀片系的原點o’與o點重合,并使y’軸與y軸重合,然后使坐標系o’-x’y’z’繞y軸反轉ψ角,使x’軸與x軸重合,z’軸與z軸重合,形成坐標系o-xyz,接著使坐標系o’-x’y’z’繞軸正轉角,使y’軸與y軸重合,z’軸與z軸重合,至此,刀片已安裝在坐標系o-xyz所在的位置上,此位置上的刀片為內刀片,并設為刀片1。將刀片系的原點o’與o點重合,并使z’與z軸重合,然后使坐標系o’-x’y’z’繞z軸正轉(180o-?)角,使x’軸與x軸重合,y’軸與y軸重合,形成坐標系o-xyz;接著使坐標系o’-x’y’z’繞y軸正轉角,使x’軸與x軸重合,z’軸與z軸重合,形成坐標系o-xyz;最后再將坐標系o’-x’y’z’繞x軸正Fig2.1(a)Drillcoordinatesystem轉角,使y’軸與y軸重合,圖2.1(a)鉆頭坐標系z’軸與z軸重合,這樣便將刀片安裝在坐標系o-xyz所在的位置上,此位置上的刀片為外刀片,并設為刀片2。Fig2.1(b)Coordinatesystemforindexabletrigoninsert圖2.1(b)刀片坐標系Fig2.1(c)Settingcoordinatesystemforinnerandouterinserts圖2.1(c)內外刀片安裝坐標系圖2.1(c)表示坐標系o-xyz以及坐標系o-xyz與坐標系o-xyz之間的關系。坐標系o-xyz與坐標系o-xyz中矢徑之間的轉換關系可表示為:(1)式中表示坐標系o-xyz中任意一點的矢徑,表示坐標系o-xyz中同一點的矢徑。,為坐標變換矩陣,可表示為:式中坐標系o-xyz與坐標系o-xyz中矢徑之間的轉換關系可表示為:(2)式中表示坐標系o-xyz中任意一點的矢徑,表示坐標系o-xyz中同一點的矢徑。,,為坐標變換矩陣,可表示為:式中2.1.2刀片坐標系o’-x’y’z’中各矢量方程刀片左切削刃幺矢(3)式中為刀片的余偏角刀片右切削刃幺矢(4)刀片左刃法前角幺矢(5)式中為刀片的法前角刀片右刃法前角幺矢(6)刀片左刃法后角幺矢(7)式中為刀片的法后角刀片右刃法后角幺矢(8)2.1.3刀片上的各矢量在鉆頭坐標系中的表示由于在計算刀具的幾何角度時,刀片上的矢量只與坐標系的旋轉變換有關,而與坐標系的平移變換無關,因此,刀片上的各矢量在鉆頭坐標系中的表示如下所示。刀片安裝在坐標系o-xyz中后各矢量方程:刀片1左切削刃幺矢(9)刀片1右切削刃幺矢(10)刀片1左刃法前角幺矢(11)刀片1右刃法前角幺矢(12)刀片1左刃法后角幺矢(13)刀片1右刃法后角幺矢(14)刀片安裝在坐標系o-xyz中后各矢量方程:刀片2左切削刃幺矢(15)刀片2右切削刃幺矢(16)刀片2左刃法前角幺矢(17)刀片2右刃法前角幺矢(18)刀片2左刃法后角幺矢(19)刀片2右刃法后角幺矢(20)2.1.4內外刀片切削刃上任意一點在鉆頭坐標系中空間位置參數計算設刀片1切削刃上任意一點在刀片坐標系o’-x’y’z’中的矢徑為:同一點在鉆頭坐標系o-xyz中的矢徑為:則由式(1)有:(21)如圖2.2所示,該點在鉆頭坐標系o-xyz中的合成速度幺矢可表示為:Fig2.2Resultantcuttingspeed圖2.2合成切削速度式中主運動速度幺矢進給速度幺矢合成速度幺矢n轉速R刀片1切削刃上所選點處的半徑設刀片2切削刃上任意一點在刀片坐標系o’-x’y’z’中的矢徑為:同一點在鉆頭坐標系o-xyz中的矢徑為:則由式(2)有:(22)該點在鉆頭坐標系o-xyz中的合成速度幺矢可表示為:式中主運動速度幺矢進給速度幺矢合成速度幺矢n轉速R刀片2切削刃上所選點處的半徑2.1.5內外刀片切削刃的幾何角度的計算由參考文獻[48]知:(23)(24)(25)(26)式中合成速度幺矢由上式,分別計算出刀片1與刀片2左右切削刃上任意一點在加工狀態下的刃傾角、法前角、法后角和主偏角如下:對于刀片1左切削刃,由式(9)、式(11)、式(13)及式(23)~式(26)分別求出:(27)(28)(29)(30)對于刀片1右切削刃,由式(10)、式(12)、式(14)及式(23)~式(26)分別求出:(31)(32)(33)(34)對于刀片2左切削刃,由式(15)、式(17)、式(19)及式(23)~式(26)分別求出:(35)(36)(37)(38)對于刀片2右切削刃,由式(16)、式(18)、式(20)及式(23)~式(26)分別求出:(39)(40)(41)(42)2.1.6內外刀片搭接交點的計算為了計算刀片1(內刀片)右刃與刀片2(外刀片)左刃的實際切削長度,必須求得內外刀片搭接時的交點在各刀片坐標系中的坐標。Fig2.3Diagramofdrillingforinnerandouterinsertsofdrillswithindexableinserts圖2.3淺孔鉆內外刀片鉆削示意圖Fig2.4Itersectionpointsbetweentherightcuttingedgeofinsert1andtheleftcuttingedgeofinsert2圖2.4刀片1右刃與刀片2左刃搭接交點示意圖1.不考慮進給量時,內外刀片的搭接交點在鉆頭坐標系中,兩刀片切削刃搭接時的交點其半徑必然相等,Z坐標也必然相等。由式(21)與式(22)可建立如下聯立方程式:(43)

將以上四個方程整理并化簡后,可得到如下一元二次方程:(44)式中:令得出:(45)解此一元二次方程,得到刀片1右刃與刀片2左刃搭接交點在刀片坐標系中的坐標。將代入(21)式可以求出角,將代入(22)式可以求出角。當外刀片逆時針旋轉到內刀片的位置并發生搭接時,轉過的角度為(π--),內刀片逆時針旋轉到外刀片的位置并發生搭接時,轉過的角度為(π++)。2.考慮進給量時,外刀片逆時針轉過(π--)度后與內刀片發生搭接的搭接交點的計算(46)將以上四個方程整理并化簡后,可得到如下一元二次方程:(47)令得出:(48)3.考慮進給量時,內刀片逆時針轉過(π++)度后與外刀片發生搭接的搭接交點的計算(49)將以上四個方程整理并化簡后,可得到如下一元二次方程:(50)令得出(51)2.2可轉位淺孔鉆的力學模型2.2.1切削層斷面尺寸的分析因為任何刀具都可以視為一系列“單元切削刃”的組合,而所有的“單元切削刃”之間都存在某種“局部相似性”,現代形狀復雜刀具的力學建模,正是基于這種“局部相似性”。因此,為了建立淺孔鉆的力學模型,需要將切削刃分成若干等分的細小單元[49]。切削層斷面尺寸即被切削層材料在基面中的尺寸,切削厚度和切削寬度如圖2.5所示:Fig2.5Dimensionsoftheuncutchip圖2.5切削層斷面尺寸的分析圖2.5中,切削刃幺矢為,它在工作基面上的投影方向的單位向量即為;進給方向的幺矢為,它在工作基面上的投影方向的單位向量為;矢量與矢量之間所夾的角為工作主偏角。切削厚度:f-進給量z-刀齒數-主運動速度與合成速度之間的夾角切削寬度:-單元切削刃長度2.2.2內外刀片上的鉆削力及扭矩的計算鉆削力和扭矩的計算采用經典的斜角切削理論和經驗公式相結合的方法來建立鉆削力和扭矩的方程式[50][51]。首先將切削刃分成若干等分的細小單元,鉆削時每一個單元將產生單元切削力和單元扭矩。由于單元很小,因此在該單元內可近似認為其幾何參數和切削速度不變,取該單元起始點的幾何參數和切削速度表示,并用以確定該單元切削力的作用點來計算單元扭矩。然后再將單元切削力和扭矩分解到鉆頭坐標系的x,y,z各坐標軸上,最后將各坐標軸上的單元切削力和單元扭矩疊加起來就得到整個鉆頭所受的主切削力(切向力)、軸向力(進給力)、徑向力(背向力)和扭矩。按單元經典斜角切削理論(Elementalclassicalobliquecuttingapproach)[50][59],在每一個單元上產生的切削力的作用方向如圖2.4所示,圖中:——單元主切削力,刀片左右切削刃均與合成切削速度共線,且方向相反。——垂直于合成切削速度和切削刃方向的單元切削力,刀片左右切削刃均與(切削平面法幺矢)共線,且方向相同。——垂直于和的單元切削力,內刀片左右切削刃均與(主剖面法幺矢)共線,且方向相同,外刀片左右切削刃均與-共線,且方向相同。文獻[50]給出以上各單元切削變形力的表達式如下:式中:Fig2.4Unitcuttingforceandgeometry圖2.4單元切削力與幾何參數 ——剪切面的剪應力(shearstressinshearplane) ——前刀面上的流屑角,當<45°以及切削<0.3mm時,≈。——法向剪切角(normalshearangle) ——前刀面上的摩擦角(frictionangleonrakeface) ——法向摩擦角(normalfrictionangle)另外,單元刃口切削力可寫成[50]:式中——法剖面內平行于合成切削速度方向單位切削寬度的刃口力——法剖面內垂直于合成切削速度方向單位切削寬度的刃口力以上公式所需的基本切削參數、、、、可由試驗公式給出。單元切削力為單元變形力與單元刃口切削力之合,寫成:本論文以刀桿的端部裝有兩個等邊不等角六邊形硬質合金可轉位刀片的淺孔鉆為例進行受力分析,刀片形狀如圖2.1(b)。將實際參與切削的切削刃分成七個部分,如圖2.4所示,包括:刀片2右刃、刀片2左刃bc段及cf段、刀片1右刃ek段及kn段、刀片1左刃no段及過心部分oq段。按定義在鉆頭坐標系o-xyz中,將單元切削力、、三個力寫成矢量表達式,對于刀片2右切削刃有,,。求得小單元上的力沿著x,y,z三個方向上的合力及扭矩:刀片2右切削刃沿著x,y,z三個方向上的合力及扭矩:對于刀片2左切削刃有:(1)段如圖2.4所示,三角形abc區域是由雙刃切削形成的,因此進給量為。不考慮進給量時的搭接點為a點,它在刀片坐標系中的坐標為及;考慮進給量時的搭接點為b點,它在刀片坐標系中的坐標為及。為了簡化計算過程,將段看作一個小單元,求出三角形abc在基面內的面積就等于求出了段的切削面積。利用經驗公式可以求出段上的、、、、、、、、,從而求出段上的力沿著x,y,z三個方向上的合力及扭矩:(2)段如圖2.4所示,平行四邊形acfg區域是由單刃切削形成的,因此進給量為。將段分割成許多小單元,任取一個小單元進行分析,利用經驗公式可以求出這個小單元上的、、。求出小單元上的力沿著x,y,z三個方向上的合力及扭矩:求出段上的力沿著x,y,z三個方向上的合力及扭矩:對于刀片1右切削刃有:(1)段如圖2.4所示,三角形dek區域是由雙刃切削形成的,因此進給量為。不考慮進給量時的搭接點為d點,它在刀片坐標系中的坐標為及;考慮進給量時的搭接點為e點,它在刀片坐標系中的坐標為及。為了簡化計算過程,將段看作一個小單元,求出三角形dek在基面內的面積就等于求出了段的切削面積。利用經驗公式可以求出段上的、、,并將、、三個力寫成向量的形式,就可以求出段上的力沿著x,y,z三個方向上的合力及扭矩:(2)段如圖2.4所示,平行四邊形dknm區域是由單刃切削形成的,因此進給量為。將段分割成許多小單元,任取一個小單元進行分析,利用上面的經驗公式可以求出這個小單元上的、、,寫出、、的向量形式,可以求出小單元上的力沿著x,y,z三個方向上的合力及扭矩:然后求出段上的力沿著x,y,z三個方向上的合力及扭矩:對于刀片1左切削刃的非過心段,如圖4所示,平行四邊形mnoh區域是由單刃切削形成的,因此進給量為。將段分割成許多小單元,任取一個小單元進行分析,利用上面的經驗公式可以求出這個小單元上的、、、、、、、、。進而求出小單元上的力沿著x,y,z三個方向上的合力及扭矩:求出段上的力沿著x,y,z三個方向上的合力及扭矩:2.3過心部分的幾何參數的計算可轉位淺孔鉆內刀片,由于靠近刀具旋轉中心,線速度較低(中心處為零),刀片主要受擠壓作用。因此,為了避免讓強度較弱的刀尖參與切削,增強實際參加切削的切削刃強度,以減小崩刃,使內刀片超過鉆頭中心一定量,稱之為過心部分。設過中心部分切削刃上任意一點在刀片坐標系o’-x’y’z’中的矢徑為:同一點在鉆頭坐標系o-xyz中的矢徑為:則由式(1)有:(52)該點在鉆頭坐標系o-xyz中的合成切削速度矢量可表示為: 式中主運動速度幺矢進給速度幺矢合成速度幺矢n轉速R過中心部分切削刃上所選點處的半徑如圖2.5所示,過中心部分在鉆頭坐標系中的前、后刀面相反,因此過心部分在刀片坐標系o’-x’y’z’中各矢量方程表示如下:切削刃幺矢:法前角幺矢:將過中心部分安裝在坐標系o-xyz中后各矢量方程表示如下:切削刃幺矢:切削刃幺矢:法前角幺矢:切削刃幺矢:Fig2.5Thegeometryofcuttingedgeexceedingthecenterlineofthedrill圖2.5過心部分的幾何參數切削刃幺矢:法前角幺矢:將過中心部分安裝在坐標系o-xyz中后各矢量方程表示如下:切削刃幺矢:法前角幺矢:過中心部分切削刃上任意一點在加工狀態下的刃傾角、法前角和主偏角計算如下:(53)(54)(55)且2.4優化模型與優化結果用最優化方法解決最優化問題的技術稱為最優化技術,它包含兩個方面的內容:=1\*GB3①建立數學模型,即用數學語言來描述最優化問題。模型中的數學關系式反映了最優化問題所要達到的目標和各種約束條件。=2\*GB3②數學求解。數學模型建好以后,選擇合理的最優化方法進行求解。2.4.1淺孔鉆的優化模型由于淺孔鉆內外刀片的非對稱布置,導致刀具在加工時要產生徑向合力,從而影響了被加工孔的質量,因此最大限度地減小淺孔鉆加工時的徑向合力就成為研究的重點。我們知道,對于給定的應用條件(即工件材料的機械物理性能、切削用量及切削狀態等),某種刀片形狀和材質必然存在一種最優的空間刀片布置方案,以形成合理的空間幾何參數,使得徑向合力達到最小。于是,我們將最優化原理和計算機技術應用于淺孔鉆的設計來尋找這種最優的方案,采用多目標非線性約束優化方法。最優化模型可描述為:目標函數:minand∈D式中,,,,邊界約束條件:作者在建立上述優化模型時,綜合考慮了可轉位淺孔鉆的幾何結構及鉆削性能,將刀片1與刀片2的五個安裝位置參數的約束邊界限制在一個較小的范圍內。優化結果表明,在該范圍內可以找到使徑向合力及扭矩為最小的5個最優參數。2.4.2用MATLAB的Fgoalttain求解多目標優化問題利用Fgoalttain函數求解多目標達到問題。假設多目標達到問題的數學模型為:=1,…,m(非線性不等式約束)(非線性等式約束)(線性不等式約束)(線性等式約束)其中為可正可負的標量變量,為第個目標函數,和分別為第個目標函數的加權系數和目標。加權系數控制未達到目標或超過目標的相對程度,在公式中為一弱化量。fgoalttain函數的調用格式為:[x,fval]=fgoalattain(fun,x0,goal,weight,A,b,,,lb,ub)其中,goal變量為目標希望達到的向量值。向量的長度與fun函數返回的目標數相等。weight變量為權重向量,可以控制低于或超過fgoalattain函數指定目標的相對程度。當加權函數weight為正時,fgoalattain函數試圖使對象小于目標值;當權重weight為負時,目標函數大于目標值。優化程序計算流程圖如圖2.6所示:開始開始輸入輸入,的已知值和的初值調用MATLAB優化工具箱中的f調用MATLAB優化工具箱中的fgoalttain函數計算and及對應的值輸出輸出,,結束結束Fig2.6Flowchartforoptimizationcomputerprogram圖2.6優化程序的計算流程圖2.4.3優化計算結果及優化后的鉆頭幾何參數由于兩塊硬質合金刀片在徑向非對稱分布,導致了淺孔鉆在加工時要產生徑向合力,從而影響機床的受力與刀具的變形,進而影響被加工孔的質量(主要是孔的形狀精度)。影響徑向合力的大小和作用方向的主要因素有鉆頭的幾何參數、可轉位刀片在鉆頭上的裝夾位置和鉆頭的橫截面。因此,本論文從理論上優化刀具結構,尋找能使徑向合力及扭矩達到最小,并且優化后的幾何參數有利于改善刀具切削性能的最優的設計方案。下面以Φ25的淺孔鉆為例,對其進行優化,采用多目標達到法,將已知數據與設計參數的初值代入優化模型中,優化結果列于表2.1中。表2.1優化結果Table2.1OptimalResults123參數初值-5-4-1-12優化結果-7.49-5.56-3.01-8.7113.802.4.4鉆頭直徑與優化參數間的關系硬質合金可轉位淺孔鉆的鉆削范圍是Φ17.5~56mm的淺孔,前邊僅對直徑為25mm的鉆頭進行了參數優化。將數學模型及優化模型應用于不同直徑的可轉位淺孔鉆,研究鉆頭直徑與優化參數間的關系。表2.2給出了不同直徑的淺孔鉆經過優化之后的,,1,2,3值。表2.2優化參數/鉆頭直徑Table2.2OptimumParameters/DrillDiameter安裝角度鉆頭直徑12320-7.23-6.58-0.09-9.9714.4822-6.99-5.010.88-9.5612.2425-7.49-5.56-3.01-8.7113.8028-5.99-4.074.81-9.674.0930-8.38-7.460.28-9.7411.1034-4.24-3.268.23-4.150.3842-2.77-1.835.45-6.93-8.1248-3.80-1.687.12-4.31-6.6852-3.35-1.997.87-4.37-8.8256-1.81-1.8010.11-3.97-8.643可轉位淺孔鉆智能CAD系統的設計3.1系統設計的硬件環境CAD系統要求有強大的數據處理能力,選擇好的CPU對于CAD系統是至關重要的,一般要求PentiumIII以上。CAD系統的圖形顯示速度和計算能力也要求有性能良好的顯示適配器(VGA以上)和較大內存(64M以上)[11]3.2系統所選用軟件簡介軟件的更新換代是最快的,開發本系統時,選用的操作系統是WindowsXP系統,在此操作系統下,我們選用了VisualStudioC++6.0,Pro/EWildfire(英文版),Matlab6.0,SQLServer2000等作為開發本系統的軟件。3.2.1圖形支撐軟件Pro/EWildfirePro/Engineer軟件是由美國參數化技術公司(ParametricTechologyCorporation,PTC)開發的新一代CAD/CAM系統,該軟件是一種采用了特征建模技術,基于統一數據庫的參數化的通用CAD系統。自從面世以來,以全參數化尺寸驅動、基于特征、單一全關聯的數據庫等優點深受用戶好評,并成為國際參數化的行業標準。目前Pro/Engineer軟件在我國的機械、電子、家電、模具等行業取得了廣泛的應用,在國內的應用數量大大超過了同類型的其他國外產品。雖然Pro/Engineer軟件功能非常強大,通用性非常好,然而在具體的使用過程中不可能滿足各種要求,特別是國外的CAD/CAE/CAM系統在設計標準、規范及標準件庫等方面和國內存在較大差異,因此,以Pro/Engineer軟件為平臺進行二次開發,使之適合國內外企業設計的要求,更大限度的發揮Pro/Engineer的作用,已成為該軟件應用過程中的一項重要工作。可喜的是Pro/Engineer具有開放的體系結構和優秀的二次開發工具,允許用戶和開發者對其進行擴充和修改。Pro/Engineer常用的二次開發工具有:族表(FamilyTable)、用戶定義特征(UDF)、Pro/Program、J-link、Pro/Toolkit等。Pro/Toolkit是Pro/E自帶的功能最強大的二次開發工具,它是基于C語言的,其主要目的是讓用戶或第三方通過C程序代碼擴充Pro/Engineer系統的功能,開發基于Pro/Engineer系統的應用程序模塊,從而滿足用戶的特殊要求。不僅如此,還可以利用Pro/Toolkit提供的UI對話框、菜單以及VisualC++6.0的可視化界面技術,設計出方便實用的人機交互界面,從而大大提高系統的使用效率。Pro/Toolkit工具包提供了開發Pro/Engineer所需的函數庫文件和頭文件,使用戶編寫的應用程序能夠安全地控制和訪問PE,并可以實現應用程序模塊與Pro/Engineer系統的無縫集成。Pro/Toolkit支持在Windows2000/NT/XP操作系統中使用C和C++語言設計程序,采用MicrosoftVisualC++6.0作為編譯器和連接器,并可以在MicrosoftvisualC++6.0的集成環境下完成程序的設計、調試和編譯[3]。3.2.2應用程序開發軟件MicrosoftVisualC++6.0VisualC++6.0是在C語言的基礎上發展起來的一種面向對象的編程語言。由于C++提供了把數據及數據之上的操作封裝在一起的類、對象和方法的機制,并通過繼承、重載和多態性等特征實現了軟件的重用和程序的自動生成,使軟件的構造、開發和維護變得更為有效,并能更好地反映客觀事物的本質。VisualC++的MFC為面向對象的Windows編程提供了強有力的支持,它與win32緊密相連,是當今Windows系統平臺上最強大的應用程序開發系統,利用VisualC++6.0可以完成各種各樣的程序開發,從界面設計到數據庫訪問,能滿足不同用戶CAD系統要求。在VC++6.0中,主要有三種常用的工程:Win32ConsoleApplication;Win32Application;MFCAppWizard。Win32ConsoleApplication是用于創建DOS控制臺的C/C++程序,簡稱DOS程序。Win32Application用于創建的WindowsC程序或MFCWindows程序。MFCAppWizard用向導創建MFCWindows程序,并生成應用程序框架(即自動生成底層代碼),編程時在原代碼基礎上增加新的應用代碼即可,這樣,即使對C/C++不是很熟悉,根據向導操作也可以很快開發出單文檔或多文檔圖形操作界面,實現一些簡單的WINDOWS功能。但是,應用C++去編制數值處理模塊,特別時涉及到許多矩陣運算和優化算法的情況下,它遠沒有MATLAB方便和簡潔。3.2.3數學計算軟件MATLAB6.0MATLAB是美國MathWorks公司推出的用于數值計算和圖形處理的科學計算環境。MATLAB是英文MATtrixLABoratory(矩陣實驗室)的縮寫。它包括高效的數值運算、矩陣運算、信號處理、公式推倒和圖形生成等。在MATLAB環境下,用戶可以集成地進行程序設計、數值計算、圖形繪制、輸入輸出、文件管理等各項操作。同時MATLAB還有很強的功能擴展能力,與它的主系統一起可以配備各種各樣的工具箱,以完成一些特定的任務。用戶也可以根據自己的工作任務,開發自己的工具箱。MATLAB進行數值計算的基本處理單位是復數數組(或稱陣列)。它擁有一流水平的數值計算函數庫,其所有數值計算算法都是國際公認的、先進的可靠算法,而執行算法的指令形式非常簡單、易讀易用。應用MATLAB進行函數圖形繪制也非常方便,一般來說,不管二元函數多么復雜,它的三維圖形,僅需要10條左右指令,就能得到富于感染力的表現。而且MATLAB有專門的優化工具包,處理優化算法也只要簡單的幾條語句就可以了。淺孔鉆的數學建模過程,最麻煩的是牽涉到大量的矩陣運算,尤其是矩陣相乘和求逆運算,用一般的高級語言編寫建模過程和處理優化結果,就必須花大量的時間去編制相應的子程序模塊處理矩陣運算和優化算法,如果還需要繪制運算曲線圖,那么開發工作量就更是驚人。MATLAB在數值分析和處理上是第一流的,尤其擅長矩陣運算。如方陣A的求逆,只要一個簡單的命令inv(A)就可以了,矩陣A和B的相乘也只要輸入C=A*B就可以實現。在MATLAB中,一個一定格式存儲的數據文件,用load命令就可以直接賦值給一個數值變量,無需象其他高級語言中要求的進行數組循環賦值,而其強大的優化工具箱更為淺孔鉆的優化算法節約了大量的開發時間,從而大大提高了編程效率。但是,MATLAB編程也有它的不足,編制的M文件需要一定的運行環境,而且程序是解釋性運行,這大大降低了其計算速度,而運行的高效率則正是C/C++程序的優勢。另外MATLAB保存的M文件是源程序代碼,不利于算法和數據的保密。所以采用結合其他高級語言(如VC++6.0)實行聯合編程的方法,就可以充分發揮各自的優點。我們只是把一些計算過程留給MATLAB而應用VC++6.0進行函數調用和開發可視化圖形操作界面,提高軟件的開發效率,大大縮短軟件的開發周期[7]。3.2.4數據庫支撐軟件SQLServer2000SQLServer是一種高性能的客戶/服務器型的關系數據庫管理系統,具有極強的操作性。它所包含的管理和開發工具使得數據庫管理者和用戶可以輕松地安裝、配置和使用數據庫,VisualC++6.0的ODBC類就封裝了SQLServer支持的ODBCAPI,因此,在VisualC++6.0中通過調用相應的ODBC類函數就可以實現與SQLServer的連接和交互。3.3系統的總體設計框架本課題重點進行可轉位淺孔鉆智能CAD系統的開發與研究。系統設計了可轉位淺孔鉆的刀片槽空間位置計算模塊、智能推理模塊、三維實體建模模塊、裝配圖模塊和二維工程圖模塊,建立可轉位淺孔鉆的數據庫、知識庫和實例庫,本系統的總體設計框圖如圖3.1所示。裝配實例庫裝配實例庫知識庫數據庫零件實例庫數據庫管理系統參數選擇推理實例推理設計專家系統CAD模塊設計三維實體工程圖裝配實體用戶界面(Pro/E環境)設計環境 Fig3.1FrameworkofIntelligentCADSystem圖3.1智能CAD系統總體框圖對于以上的框圖,我們可以細分出功能模塊,具體如圖3.2所示,現對系統的各功能模塊做一簡要的介紹:用戶界面:完成各項任務之間的調度和信息交流。其主要功能有:系統的登陸;初始設計信息的輸入和管理;人機交互與控制塊配合,使結構面向用戶;工作任務與不同功能模塊的選擇。設計專家系統:根據用戶要求選擇刀具的基本參數,如直徑、材料、進給量、切削速度等,這些數據將存入專家系統作為設計的已知條件,當一個新設計完成后,又可以存入專家系統,作為經驗設計值供以后的設計參考和使用,這樣專家系統就會得到不斷的擴充和完善,從而使設計越來越輕松。淺孔鉆的CAD智能設計和數據管理系統數據管理模塊淺孔鉆的CAD智能設計和數據管理系統數據管理模塊CAD設計模塊專家系統模塊設計檢索和知識庫模塊零件庫、裝配庫管理模塊用戶管理模塊二維工程圖自動生成模塊零件參數化設計模塊產品自動裝配圖參數選擇推理模塊實例推理模塊刀片參數化設計刀體參數化設計Fig3.2ModulesofIntelligentCADSystem圖3.2智能CAD系統模塊構成圖CAD模塊設計:完成零件的三維實體造型和二維工程圖的生成:刀片的三維參數化設計,刀柄的三維參數化設計,刀片的二維工程圖自動輸出,刀柄的二維工程圖自動輸出,裝配圖的自動生成、裝配工程圖的自動生成。在這里,根據專家系統中提供的參數值或者用戶自己輸入的初始值,運用CBR技術進行刀片和刀柄的三維設計,然后再自動生成相應的裝配圖和工程圖等。數據庫管理系統:淺孔鉆數據庫管理系統包括知識庫、實例庫和數據庫。知識庫中存放用于專家推理的各種已知參數、經驗值等,實例庫中存放刀片實例、刀柄實例、裝配實例以及對應的工程圖實例,數據庫中存放各種刀具材料的各種性能參數等。4系統實現的關鍵技術4.1可轉位淺孔鉆智能CAD系統數據庫的建立4.1.1數據庫互聯技術在VisualC++中通過調用相應的ODBC類函數就可以實現與SQLServer2000的連接和交互。建立ODBC連接(以user_pswd為例):CStringCUserRecordSet::GetDefaultConnect(){ return_T("ODBC;DSN=hollowdrill");}獲取數據庫中的表單:CStringCUserRecordSet::GetDefaultSQL(){ return_T("[dbo].[user_pswd]");}4.1.2知識庫的建立(1)鉆削參數表(dforce)該表包括工件材料牌號(dwmnumber)、刀片材料牌號(dtmnumber)、單位切削力(ducutting)、進給量(donset)、修正系數(modikr),切削速度(cutspeed)等字段,如圖4.1所示。Fig4.1DrillingParametersTable圖4.1鉆削參數表設計參數表(design_value)該表包括刀片材料(tmaterial)、直徑(diameter)、刀片邊長(insert_lenght)、切削速度(cutspeed)、轉速(rotate)、進給量(force)、過心量(guoxin),如圖4.2所示。Fig4.2DesignParametersTable圖4.2設計參數表4.1.3實例庫的建立(1)刀柄實例表(bodyfile)這里建立了刀柄實例庫表,包括刀柄ID(body_id)、文件名字(body_file),工程圖文件(body_draw)等字段。存放了已知的和已設計的刀柄實例,供設計時候參考和修改。刀柄ID不允許空,如圖4.3所示。Fig4.3ToolBodyCaseTable圖4.3刀柄實例表(2)刀片實例表(insert_file)刀片實例表中存放有標準刀片和自定義設計的刀片,包括刀片ID(insert_id)、刀片牌號(tmaterial)、刀片邊長(tlength)、文件名字(filename),工程圖文件(insert_draw)。刀片ID不允許空,如圖4.4所示。Fig4.4InsertCaseTable圖4.4刀片實例表裝配實例表(asmtable)裝配實例表中存放了用戶設計的裝配實體圖及其對應的工程圖。包括刀柄ID(asm_id),裝配文件名(asm_file),工程圖名(asm_draw)。刀柄ID不允許空,如圖4.5所示。Fig4.5AssemblyCaseTable圖4.5裝配實例表4.1.4數據庫的建立(1)用戶管理表(user)這個表包括用戶ID(id)、用戶名字(username)、用戶密碼(password),如圖4.6所示,所有字段均不能空。Fig4.6UserManagementTable圖4.6用戶管理表(2)刀具材料表(tmaterial)該表包括刀片材料牌號(tmnumber)、刀片材料名稱(tmname)、密度(ttense)、硬度(thard)、抗彎強度(txbb)、抗壓強度(txs)、沖擊韌性(ttenacity)、彈性模量(te)、應用范圍(trange),如圖4.7所示:Fig4.7ToolMaterialTable圖4.7刀具材料表(3)工件材料表(wmaterial)該表包括工件材料牌號(wmnumber)、工件材料名稱(wmname)、密度(wxb)、彈性模量(we)、硬度(whard)、熱處理(wheat)等字段,如圖4.8所示。Fig4.8WorkpieceMaterialTable圖4.8工件材料表4.2專家系統的建立專家系統是在某一特定領域內,具有大量專門知識與經驗的計算機程序。它是基于知識的智能系統并利用專家的豐富知識進行推理和判斷來求解問題,使計算機的工作過程盡可能地來模擬專家解決實際問題的工作過程。專家的能力往往不只限于公開發表的知識,更重要的是專家的工程實踐經驗知識。專家系統具有許多優良特性,如:啟發性、透明性、靈活性、高效性、準確性等。對于具體的淺孔鉆專家系統,首先對每一類零部件進行特征描述,包括幾何特征和物理特征,如知識庫中存放的刀片的直徑、材料、切削速度、單位切削力、進給量等,實例庫中存放的刀片和刀柄的實例模型等,在設計的過程中,提取這些數據參數,調用封裝的計算方法(本系統將淺孔鉆刀片槽空間位置的建模和優化算法封裝在一個DLL動態鏈接庫里面),完成零件的設計,并將每次設計的參數和結果保存到數據庫中,供下次設計參考和調用。專家系統的推理模型如圖4.9所示。推推理機制實例推理規則推理實例庫知識庫新設計解Fig4.9ReasoningModelofExpertSystem圖4.9專家系統的推理模型4.3動態鏈接庫每種版本的Windows都依賴于存儲在動態鏈接庫(DynamicLinkLibrary,DLL)中的函數和數據。實際上,當查看Windows系統時,看到的幾乎所有內容都由DLL以各種形式所表示的。DLL是建立在客戶程序服務器通訊的概念上的。函數和數據被存儲在一個DLL(服務器)上并由一個或多個客戶程序導出而使用。這些客戶程序可以是應用程序或者是其他DLL。DLL類似于普通的運行時(run-time)庫或靜態庫。在靜態庫情況下,函數和數據被編譯進一個二進制文件(通常擴展名為.LIB)。然后鏈接器從庫中復制這些函數和數據并把它們和應用程序的其他模塊組合起來創建最終的可執行文件(.EXE文件)。鏈接器也負責稱為“修正”的工作。修正時可執行文件中來自其他模塊的調用被映射到庫中的函數的過程。當應用程序鏈接到一個靜態庫時,這個過程稱為“靜態鏈接”。因為應用程序所需的全部內容都要從庫中復制到可執行文件中,庫本身并不與可執行文件一起發行。在動態庫的情況下,一個庫的函數和數據并不復制到可執行文件中,而是創建了兩個文件:一個引入庫和一個DLL。引入庫包含被DLL導出的函數的名稱和位置,DLL包含實際的函數和數據。然后,要使用給定DLL的導出函數的應用程序則鏈接到這個DLL。創建一個DLL的過程非常類似于創建可執行文件的過程。庫的函數被編譯進一個.OBJ文件(模塊),通過把不同的模塊鏈接在一起,鏈接器創建最終的二進制輸出文件。然而,在DLL的情況下,要使用一個特殊的鏈接開關(/DLL),以告訴鏈接器正在創建一個DLL,而不是EXE。這樣加載程序的時候就能把它作為一個DLL來識別[47]。加載DLL有兩種方法:隱式和顯式。DLL客戶程序或者通過鏈接DLL的引入庫,或者通過在客戶程序的“.def”文件中的IMPORT段列出DLL的導出函數來隱式地加載一個DLL。DLL的隱式加載是最常用的DLL加載方式,原因很簡單,隱式加載不需要客戶程序方做額外的工作。編寫應用程序的人只需要簡單地包括所需的(一個或多個)頭文件,進行所需的函數調用并鏈接DLL即可[47]。本論文中對刀片槽的優化計算程序(用MATLAB的MCC編譯器編譯成的force3lib.dll)就是采用隱式調用的。顯示鏈接需要專門告訴客戶程序要加載哪個文件以及何時加載它,僅當客戶程序加載DLL時該DLL才會被加載,而客戶程序在運行時可以有機會選擇加載不同的庫,作者在調試本系統的過程中,Pro/E對本系統的調用,使用的就是顯示鏈接。4.4CBR技術基于實例推理技術(Case-basedReasoning,CBR)是人工智能領域近年來廣泛應用的一項新技術。CBR技術是一種相似推理方法,其核心是通過實例庫方式運用過去已有的經驗來解決新問題。在產品設計中,設計經驗往往起著關鍵作用,設計者可利用以往的設計經驗,通過對已有設計實例進行組合、修改而設計出新產品,因此CBR技術很適合用于解決設計問題。由于大量機械產品的設計是對已有產品進行變型設計,因此現有產品模型就成了設計的出發點,直接利用現有產品就等于利用了以往的設計經驗和知識。因此,將CBR技術應用于機械產品CAD系統具有廣闊發展前景,其設計原理如圖4.10所示:用戶設計要求用戶設計要求基于實例推理實例庫相似實例實例修改新實例實例評價Fig4.10CBRDesignPrinciple圖4.10CBR設計原理采用基于實例推理(CBR)的方法進行淺孔鉆的設計,可充分利用已有的設計經驗,通過對淺孔鉆設計實例庫中最佳實例的修改和優化,設計出新的淺孔鉆,從而大大縮短淺孔鉆的設計周期,顯著提高設計效率。在本課題中,基本的做法是用交互方式創建基于特征和參數的淺孔鉆刀柄和刀片的實例模型,開始設計時,會先把實例特征和設計要求進行相似匹配,從實例庫中提取最相似實例,在對此實例進行修改,從而得到新的符合用戶要求的實例。由于淺孔鉆具有結構相似性的特點,即對于不同種類的淺孔鉆,其主要結構都是相似的,區別主要體現在特征上,而不是參數上。比如,對于刀片的自定義設計來說,等邊不等角六邊形刀片與三角形刀片有很大的差別,而對于六邊形刀片來說,邊長的大小差別很小,可以通過參數化實現不同參數的刀片設計,對于刀柄的設計,同樣是圓柱柄的刀柄,其結構都是相似的,只要設計一部分的參數,通過修改參數,就可以完成刀柄的設計。4.5基于Pro/TOOLKIT的二次開發技術4.5.1Pro/Toolkit簡介(1)Pro/Toolkit的安裝Pro/Toolkit工具包是隨Pro/Engineer安裝盤一起提供的,安裝時在“元件”列表框中選中“APIToolkits”復選框,并在“子元件”列表框中選中“Pro/Toolkit”復選框,它將會在Pro/E系統的默認目錄下自動創建兩個下級目錄:protoolkit和prodevelop。Protoolkit目錄中共有四個子目錄:\i486_nt、\includes、\protk_appls和\protkdoc。頭文件位于protoolkit\includes目錄,庫文件位于protoolkit\i486_nt\obj目錄,這兩種類型的文件是用VC開發Pro/Engineer應用程序必不可少的支持文件。(2)Pro/Toolkit開發環境與Pro/Engineer版本的關系在不同Pro/Engineer版本提供的Pro/Toolkit開發環境中,其函數庫以及頭文件的定義會有些變化,通常在編譯時使用的頭文件和在連接時使用的庫文件最好應與Pro/Toolkit應用程序運行的Pro/Engineer環境的版本相一致。與AutoCAD的ObjectARX開發環境不同的是,使用低版本的Pro/Toolkit的頭文件和函數庫生成的Pro/Toolkit應用程序可以在高版本的Pro/Engineer環境中運行,反之則不行。本論文是在Pro/EngineerWildfire版本中開發的,所以它只能在Pro/EngineerWildfire或更高的版本中運行。(3)Pro/Toolkit語法Pro/Toolkit采用面向對象的程序設計方法(Object-OrientedProgramming)。在Pro/Engineer和應用程序之間主要是通過特定的數據結構來傳遞信息,對應用程序來說,這種數據結構并不是直接訪問的,而只能通過Pro/Toolkit提供的函數來訪問。在設計Pro/Toolkit程序時,要涉及到大量的由Pro/Toolkit函數庫提供的C函數,正確理解和使用這些函數是非常重要的。對象(Object)和動作(Action)是Pro/Toolkit中最基本的概念。Pro/Toolkit的對象實質上是一種類型為結構體的數據,結構體中的成員描述了該對象的屬性。Pro/Toolkit定義的對象分成兩類:第一類對象本身是Pro/Engineer數據庫中的一個,如ProFeature和ProSurface;另一類對象是抽象或臨時對象,如調用有關選擇操作時用來保存選擇結果的數據對象。對特定的Pro/Toolkit對象執行的某種操作稱為動作,動作的執行是通過調用Pro/Toolkit函數庫提供的C函數來實現的。Pro/Toolkit函數庫提供的庫函數均有相應的ANSI函數原型,并在相應的頭文件中定義,在調用函數之前必須將頭文件包含在C或C++程序中。大多數Pro/Toolkit函數的返回值類型為ProError,用來表示調用函數執行狀態,其中最常用的返回值是PRO_TK_NO_ERROR表示函數調用成功。在程序中通過檢查函數的返回值不僅便于在調試時找出錯誤,更重要的是可以避免在執行時出現異常情況,提高了程序的可靠性。4.5.2Pro/Toolkit的開發模式使用Pro/Toolkit對Pro/e進行二次開發主要有兩種模式:同步模式(SynchronousMode)和異步模式(AsynchronousMode)。同步模式分為動態鏈接庫(DynamicallyLinkedLibrary)模式(DLLMode)和多進程模式(MultiprocessMode)或稱為派生模式(SpawnedMode)。異步模式分為簡單異步模式(SimpleAsnchronousMode)和全異步模式(FullAsynchronousMode),如下所示:在同步模式下,Pro/Toolkit應用程序和Pro/E產生各自的進程,每個進程都能發送消息,請求執行某個操作,每個進程都在等待返回消息,以報告操作的完成,控制權在兩個進程之間交換,總有一個進程處于等待狀態。(1)多進程模式包含比DLL模式更多的交換過程,當Pro/Toolkit應用程序頻繁調用庫函數時,情況更是這樣;在多進程模式下,信息交換是由進程間消息系統完成的,該系統模擬直接函數調用,在兩個進程之間傳遞函數的識別信息及其參數,多進程模式能夠用源代碼調試運行Pro/Toolkit應用程序,不必將整個Pro/e執行程序加載到調試器中。(2)在DLL模式下,Pro/Toolkit應用程序與Pro/E的信息交換是通過直接的函數調用實現的,這需要用戶編譯C應用程序,與Pro/Toolkit庫鏈接,生成一個庫文件(*.lib文件),之后需要再加載到Pro/E中,DLL模式性能較好,在為客戶安裝應用程序時一般都要轉化為DLL模式。因此,在程序開發階段以采用多進程模式,這有利于程序調試,當程序開發完之后,以采用DLL模式,這可以提高程序運行的速度。在異步模式下,Pro/Toolkit應用程序和Pro/E進程之間能夠并行,能夠同時進行自己的操作,在應用程序和Pro/E的通信方面,異步模式采用遠程程序調用(RemoteProcedureCalls,RPC)方式。(1)在簡單異步模式下,Pro/Toolkit應用程序包含自己的主函數,定義程序的控制流,并能在程序中調用函數ProEngineerStart()來啟動Pro/E進程。這使得應用程序可以開發自己風格的界面,而且獨立于Pro/E界面。在簡單異步模式中Pro/E不能激活Pro/Toolkit中的函數,但是,當Pro/E運行時可以交互使用Pro/E。(2)全異步模式可以實現Pro/Toolkit和Pro/E之間信息的雙向交互,但是必須在Pro/Toolkit程序中建立事件處理函數,定義事件處理函數需要在調用ProEngineerStart()之前調用函數ProInterruptSet(),此外為了對Pro/E的消息作出回應,需要調用函數ProEventProcess()。因此,Pro/Toolkit程序與Pro/E進程之間只存在單向消息傳遞時,也就是當只有Pro/Toolkit應用程序往Pro/E發送消息時宜采用簡單異步模式;當存在雙向通信時宜采用全異步通信模式。異步模式和同步模式的一個主要區別是Pro/Toolkit應用程序的啟動:在異步模式下,應用程序有自己的main()函數,能夠獨立于Pro/E而啟動,然后啟動或連接到Pro/E的進程中;在同步模式下,Pro/E根據注冊文件中的信息啟動Pro/Toolkit應用程序。另外,異步模式較之同步模式,具有代碼復雜、執行速度慢的缺點,因此,除非特別需要,一般建議不要采用異步模式[24]。在本系統中,采用的是同步DLL模式,Pro/E根據注冊文件HollowDrill.dat來啟動HollowDrill.dll進程。4.5.3用VC開發Pro/Toolkit應用程序的主要步驟利用

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論