基于UG的數控機床原位檢測系統研究_第1頁
基于UG的數控機床原位檢測系統研究_第2頁
基于UG的數控機床原位檢測系統研究_第3頁
基于UG的數控機床原位檢測系統研究_第4頁
基于UG的數控機床原位檢測系統研究_第5頁
已閱讀5頁,還剩89頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

PAGE\*ROMANPAGE\*ROMANII摘要數控機床和原位檢測,實現產品設計—加工—檢測的閉環生產結構已成為振興制造業的重要手段。為提高數控機床的原位檢測精度、實現可視化效果以及原位檢測與CAD/CAMUG二次開發技術對數控機床原位檢測系統進行了研究。首先,本文針對計算機與數控機床之間如何交換數據信息的問題,進行了基于UGVisualC++優點、工作方式及通訊協議;介紹了串口通訊系統硬件,RS-232協議標準,RS-232RS232USBUGUG的數控機床原位檢測串口通訊系統模塊。其次,為了實現數控機床原位檢測的可視化效果和工作效率的提高,本文進行UGMFCUGUfunUG/OpenAPI、MFC開發了基于UG的數控機床原位檢測系統仿真模塊。UG位檢測系統誤差補償的研究。分析了測頭檢測誤差產生原理,針對通常檢測誤差補償算法繁瑣,精度不高的問題,提出了對待檢測點的預行程進行逐一標定的方法;為了減少人為誤差的引入,提出了運用數控系統宏程序實現工件檢測坐標系的自動建立的方法,提高檢測精度。此外,為了驗證本系統開發方法的執行效果,本文進行了曲面零件的設計—加工—檢測的實驗驗證,實驗表明本文所研究的系統是可行的。關鍵詞:UG二次開發;數控機床;原位檢測;串口通訊;檢測仿真;宏程序AbstractWiththeintelligent,digitalandnetworkingtrendofmodernmanufacturingindustry,thedevelopmentofintegratedthree-dimensionaldesignsoftware,CNCmachinetoolsandinsituinspection,toachieveproductdesign-processing-inspectionofclosed-loopindustrialstructurehasbecomeanimportantmeansofrevitalizingthemanufacturingindustry.InordertoimprovetheprecisionofNCmachinetoolsinsituinspection,visualeffectsandtheseamlessconnectionbetweeninsituinspectionandCAD/CAMsoftware,thisthesisstudiestheNCmachinetoolinsituinspectionsystembyusingUGsecondarydevelopmenttechnology.Firstofall,inordertosolvetheproblemofhowtoexchangethedatabetweenacomputerandanumericalcontrolmachinetool,thisthesisstudiestheserialcommunicationsystemoftheinsituinspectionofthenumericalcontrolmachinetoolbasedonUG.ThereisanoverviewoftheadvantagesoftheVisualC++,serialcommunication,workingmode,communicationprotocol,thehardwareserialcommunicationmodule,RS-232protocolandbasicwiringmethodofRS-232serialcommunication.Currently,forthemajorityofcomputerscannotbedirectlyconnectedtotheRS232interface,themethodsofUSBserialconversionandjudgingwhethertheoperationinterfaceworkswellornotareintroduced,whichcompletedthedesignoftheoverallstructureofthecommunicationsystem,theconstructionofthedynamiclinklibraryanddevelopedCNCmachinetoolsinsituinspectionserialcommunicationsystembasedonUGbyUGplatformandC++language.Secondly,inordertoachievethevisualeffectandimprovetheefficiencyofthenumericalcontrolmachinetoolinsituinspection,thisthesiscarriesontheresearchoftheinsitusimulationsystemofNCmachinetoolbasedonUG.Theadvantagesanddisadvantagesofthetwokindsofparametricdesignmethodsareanalyzedwhicharecommonlyusedinthedetectingprobe.ThedesignoftheprobeisrealizedbycombiningtheUGintheMFCinterface.Then,byusingtheUfunmotionfunctionandthesurfaceinformationacquisitionfunction,basedontheprincipleofNCmachinetoolin-situdetection,thisthesisachievedthesimulationofsurfaceinspectionmovementwhichwasbasedonUG/OpenAPI,MFCinterface,thusthesimulationmoduleofCNCmachinetoolinsituinspectionsystembasedonUGwasdeveloped.Finally,inordertoimprovetheinspectionaccuracyandsimplifytheinspectionofresearchmethods,thisthesismakesresearchonerrorcompensationofCNCmachinetoolsinsituinspectionsystembasedonUG.FortheproblemthattheerrorinspectionalgorithmPAGE\*ROMANPAGE\*ROMANIIIiscumbersomeandtheaccuracyisnothigh,theprincipleofdetectingtheerroroftheprobeisanalyzedandthemethodofcalibratingthepretraveloftheinspectionpointsonebyoneisputforward.Inordertoreducetheinvolvementofhumanerrorsandimprovetheinspectionaccuracy,thisthesisprovidesamethodofusingCNCsystemmacroprogramstoachieveautomaticallyinspectionoftheworkpiececoordinatesystem.Inaddition,inordertoverifytheperformanceofthesystem,thisthesiscarriedontheexperimentalverificationofthesurfacepartsfromdesign,machiningandinspection.Theexperimentshowedthatthedevelopedsystemisfeasible.Keywords:UGsecondarydevelopment;CNCmachinetool;Insituinspection;Serialcommunication;Simulation;Macroprogram目錄摘要 IAbstract II第一章緒論 1課題的研究背景 1課題來源及研究的目的和意義 1課題來源 1課題研究的目的和意義 2國內外原位檢測的研究現狀和發展趨勢 2原位檢測系統方面 2原位檢測仿真方面 3原位檢測系統的檢測誤差及補償方面 4論文章節結構 4第二章基于UG的數控機床原位檢測系統的搭建 6基于UG的數控機床原位檢測系統整體介紹 6基于UG的數控機床原位檢測系統的硬件組成 6數控加工中心 7測頭系統的硬件組成 8計算機系統 8基于UG的數控機床原位檢測系統的開發方法 9基于UG的數控機床原位檢測系統軟件的開發語言 10基于UG的數控機床原位檢測系統的總體結構和軟件工作流程11本章小結 13第三章基于UG的數控機床原位檢測系統串口通訊模塊的開發 14VisualC++與串口通訊 14VisualC++簡介 14串口通訊 14串口通訊的工作方式 15串口通訊的協議 16基于UG的數控機床原位檢測系統串口通訊硬件 17數據終端設備和數據通訊設備 173.2.2RS-232協議標準 18RS-232串口通訊的基本接線方法 20USB與RS232連接 20判斷USB轉串口驅動是否正常 22基于UG的數控機床原位檢測系統串口通訊的整體設計 22動態鏈接庫的UG界面開發 23開發環境的設置 23動態鏈接庫的搭建 24基于UG的數控機床原位檢測串口通訊的實現 25基于UG的數控機床原位檢測系統串口通訊模塊簡介 25基于UG的數控機床原位檢測系統串口通訊的結構 26基于UG的數控機床原位檢測系統串口通訊模塊的主界面介紹27主界面的設計及串口通訊編程 29多線程串口的應用 29自定義消息函數 31軟件操作總體流程 31基于UG的數控機床原位檢測系統串口通訊模塊實驗驗證 31本章小結 33第四章基于UG的數控機床原位檢測系統仿真模塊的研究 34基于UG的數控機床原位檢測系統仿真模塊簡介 34基于UG的數控機床原位檢測仿真測頭的參數化設計 34UG的參數化設計的比較 35檢測測頭參數化設計主要程序的編寫 36檢測測頭的運動 37UG中三維圖形的幾何變換 37UG中測頭移動函數的原理 38UG中曲面模型數據信息獲取的實現 42UG環境下各坐標系的意義 42坐標系轉換的實現函數 43實體曲面信息的提取的整體思路 44基于UG的數控機床原位檢測系統仿真模塊的實現 49基于UG的數控機床原位檢測系統仿真模塊的主界面介紹 49基于UG的數控機床原位檢測系統仿真部分的模塊結構 51軟件操作總體流程 52基于UG的數控機床原位檢測系統仿真模塊的實例測試 53待檢測曲面信息的獲取驗證 53曲面檢測仿真過程的驗證 54標準球測點信息生成驗證 56本章小結 57第五章基于UG的數控機床原位檢測系統誤差補償的研究 58基于UG的數控機床原位檢測系統測頭檢測誤差分析及補償 58檢測測頭的工作原理 58檢測測頭的探測誤差的產生原理 59檢測測頭的探測誤差的補償 62工件坐標系宏程序的編寫 63基于UG的數控機床原位檢測系統宏程序的主要變量 64基于UG的數控機床原位檢測系統工件坐標系宏程序創建的主命令 65基于UG的數控機床原位檢測系統的實驗驗證 70基于UG的數控機床原位檢測系統實驗前調試 70基于UG的數控機床原位檢測系統預行程誤差標定實驗 72基于UG的數控機床原位檢測系統復雜曲面實驗 73本章小結 80第六章 總結與展望 81工作總結 81研究展望 82參考文獻 83PAGEPAGE10第一章緒論課題的研究背景產品檢測是制造業的重要組成部分2025所謂的原位檢測,實際上是指在完成產品的加工后,在不拆卸工件的情況下對工件進行質量檢測,從而避免了二次裝夾誤差的引入,提高了工作效率。擁有自主知識產權的原位檢測技術可以使我國制造企業檢測設備的購買成本大幅度降低。同時,隨著計算機技術、傳感技術、精密測量技術的飛速發展以及開放式數控系統的逐漸普及,原位檢測技術的發展擁有了更好的條件。原位檢測技術既能實現加工現場質量數據的自動采集,為原位工序質量控制提供了依據,還可以對加工現場采集的質量數據進行處理,為工件空間曲面的最優成型提供實時的修正定量數據,在數[2]之,原位檢測系統的廣泛應用,將縮短制造周期,降低生產成本,大大提高我國的制造水平,使我國制造業具備更強的國際競爭力。UG的原位檢測系統,發展面向集成的CAD/CAMUG中增加串口通信模塊,檢測仿真模塊,檢測誤差補償模塊,為提高原位檢測零件的效率,保課題來源及研究的目的和意義課題來源-研究,項目編號:51565006,2016.01-2019.12廣西自然科學基金項目,基于加工中心的機械零件在線檢測與加工誤差修正研究,項目編號:2014GXNSFAA118337,2014.06-2017.05廣西教育廳重點科研項目,復雜零件加工精度在線檢測關鍵技術與系統的研發,項目編號:2013ZD048,2013.01-2015.12課題研究的目的和意義數控加工中心的自動化程度和加工精度的不斷提高,以及計算機集成制造系統中質量監控的發展都離不開原位檢測技術[67]。目前,數控系統的發展使數控機床具有了用戶宏程序和存儲等功能,為實現其原位自動檢測提供了有利條件;并且檢測[4]傳統的檢測一般是手工檢測為主,所用的工具一般是卡尺、萬能檢測工具等。現在這些工具越來越不能夠滿足現代檢測業的快速發展,這些工具效率低下,檢測精度不夠,而且需要大量人員勞動力資源,進而增加了企業的生產成本。然而相對上面所述的人工檢測,有些企業自主買來昂貴三坐標測量機,可以在很大程度上擺脫對人力的依靠而且檢測精度非常高,效率也比人工檢測高。但加工后的零件搬送到三坐標機后產生裝夾誤差,重復定位誤差,費用高昂,對于絕大部分企業也無能為力購買這樣的大型檢測設備。相反,原位檢測技術,可以通過采樣策略和擬合算法,使工件的加工余量均勻分布,提高加工質量和檢測效率,降低對檢測技術人員的經驗要求,更好地實現加工-檢測-補償的一體化[22]。因此,對于大量、復雜的曲面類零件檢測需要通過數控機床原位檢測技術來實現。自動、高效、精度是數控檢測技術所要研究的主要方向,對確保產品質量,提高產品合格率,提高企業勞動生產率和效益有著非常重要的意義。原位檢測系統方面零部件是數字化制造與檢測的主要研究對象之一,在交通、國防等行業應用廣[1]為了提高原位檢測的精度,從源頭即測頭部分入手,研究新型的測頭誤差補償方法。提出了高精度測頭誤差補償修正算法——偏置面加小平面算法,進一步提高了接觸式[2]三角面片法矢的高斯映射規律為基礎,結合快速聚類與Gauss-Newton法,提出了STL出了基于CVT結構的可展曲面采樣取點的思想。通過對各種采樣策略的采樣結果CVTDelcam(測頭)和檢測軟件的原位測量系統,并在企業得到了商業化的推廣和應用。DelcamPowerINSPECTOMV[3]的“原位檢測”方案為機床操作者提供了在機床上全程監控產品加工質量,實時監控機床的生產等多方面的功能,但該方案在數控系統的通用[4]研究了三軸加工中心在線檢測系統的構成并提出了系統的總體結構方案。從原位檢測發展趨勢上看,數控機床原位檢測技術大大提高了數控加工的效率和精度,節約了成本,提高了經濟效益,數控加工過程中自動化、智能化、高效化是數控在線檢測的必然趨勢。原位檢測仿真方面原位檢測仿真是通過計算機模擬實際的原位檢測過程,驗證數控原位檢測程序[2]IGES并實現了人機交互,如圖形的平移、旋轉、縮放等視圖變換,以及功能交互,如曲[6]OpenGL開發了在線檢測仿真的軟件,提供一套可視化的工具,該軟件解決NCG31等指令問題,有利于測量路徑的優化和運動干涉校驗,提高測頭等設備的可靠性,避免碰撞。南京航空航天大學的吳一凡根據整CMM測量點以及測量路徑的選擇規則,構造了CMMCMM智能檢測DMIS文件[7]的生成。廣東工業大學高健教授研發FCOMIS在線檢測系統[8],雖實現了圖形可視化,完成了面向復雜曲面零件原位檢測系統整體結構的搭建,開發了檢測路徑規劃、檢測仿真以及誤差補償等模塊,STL格式對復雜曲面進行描述,其精度不高。大連海事大學的張常鑫[9]STL的文件格式,雖具有碰撞檢測、誤差匹配等功能,但其精度也不高。原位檢測系統的檢測誤差及補償方面原位檢測系統的誤差主要由數控機床的本體誤差(也稱機床幾何誤差)和檢測測頭系統的誤差組成。由于原位檢測時要將刀具換成檢測測頭,原位檢測精度就一定會受到機床幾何誤差的影響[10]。檢測測頭系統的誤差主要由檢測測頭半徑誤差和觸發式測頭預行程誤差[11-13]組成。Kyung-DonKim[14]研究了原位檢測過程中的機床幾何誤差補償技術。Myeong-Woo[15]等人通過對OMM(On-machinemeasurement)系統所測得的實時數據PNN(Polynomialneuralnetwork)21原位檢測系統的觸發式測頭系統的誤差主要包括預行程誤差和檢測測頭半徑誤差等方面。目前,國內外學者對這方面做了大量的研究。楊德一等人強調了測頭標定誤差[19]的重要性,推導出了數控車床的檢測測頭誤差標定的計算公式,詳細描述C.Bulter[20]Y.Shen等[21]BP神經網絡算法對不在測量點方向的法矢進行預測,建立起誤差補償模型。廣東工業大學的文章[22]GM(1,1)ARIMA由原位檢測的實際操作可知,對于高精密零件的檢測,為了能夠獲得較高精度探索原位檢測系統檢測誤差及補償的新方法,促進原位檢測系統檢測精度的提高。論文章節結構本論文的主要章節內容安排如下:第一章:緒論。主要介紹課題的相關背景及國內外研究現狀,闡述課題的研究意義、論文的主要研究內容等。第二章:基于UG的數控機床原位檢測系統的搭建。首先概述基于UG的數控機床原位檢測系統整體組成;其次介紹本系統硬件及軟件組成;最后重點詳述系統軟件的開發語言以及系統的總體結構和軟件工作流程。UG的數控機床原位檢測系統串口通訊模塊的開發。首先概述了VisualC++RS232USB建并基于G+語言開發了基于GUGUGUfun數,按照數控機床原位檢測的原理實現曲面檢測運動的仿真;最后基于UG/OpenAPI、MFCUG的數控機床原位檢測系統仿真模塊。UG差產生原理進行分析,針對通常檢測誤差補償算法繁瑣,精度不高的問題,提出了對待檢測點的預行程進行逐一標定的方法;其次,為了減少人為誤差的引入以及降低觸測速度對預行程誤差的影響,提出了運用數控機床宏程序實現工件檢測坐標系的自動建立,從而提高檢測精度。第六章:總結與展望。第二章基于UG的數控機床原位檢測系統的搭建數控機床原位檢測系統的搭建分為硬件部分和軟件部分,其中軟件的搭建方式有兩種。第一種方式,充分發揮數控機床自身的條件,通過宏程序完成檢測程序的編寫,實現數控加工中心系統的調用;第二種方式,數控機床與計算機協同使用,利用編程語言,如:C++,C#等,開發出適合原位檢測的系統,實現檢測程序的生CNC高,智能化效果更好。故本文的研究采用的是后者,其中軟、硬件部分將在下文做詳細介紹。UG的數控機床原位檢測系統整體介紹UG的數控機床原位檢測系統[57]主要由計算機系統(UG軟件)、測2-1所示。2-1UG的數控機床原位檢測系統組成圖Figure2-1CompositiondiagramofinsituinspectionsystemforCNCmachinetoolbasedontheUGUG的數控機床原位檢測系統的硬件組成數控機床原位檢測系統的硬件主要由數控加工中心、計算機、檢測測頭、測頭接收器以及聯系機床與計算機的通訊電纜組成。數控加工中心數控加工中心(CNCmachiningcenter)是集成了自動化與機械為一體的適用于加工復雜零件的高效率機床。本系統采用的機床本體是由沈陽機床股份有限公司生產VMCE2-2FANUC0iMFXYZ軸分別為:650mm400mm500mm;XYZ32m/mim30m/min;24直線運動坐標的重復定位精度:X:0.007mmY:0.005mmZ:0.004mm。此外,該RS232端口,方便機床與計算機之間的通訊,為本文的通訊系統的開發研FANUC0iMF圖2-2VMCE系列立式加工中心Figure2-2VMCEseriesverticalmachiningcenter測頭系統的硬件組成非接觸式測頭和接觸式測頭,如激光測頭就屬于非接觸式測頭,而非接觸式測頭適用的環境要求遠遠高于接觸式測頭,因為其應用的是光學檢測技術或者是機器視覺識別技術,當所測工件達不到其工作要求時,就會影響檢測精度甚至無法工作。故RP600接觸式測頭,該測頭測量方XZ1μ2-3所示。2-3RP600接觸式測頭Figure2-3PioneerelectromechanicalRP600contactprobe在接觸式測頭的測頭系統中,據信號傳輸的方式,可分為:感應耦合式、紅外傳輸式、有線傳輸式、無線電波傳輸式。有線傳輸式是測頭與機床有固定的連接方式大多在普通機床上使用;而無線電波傳輸式,因為其信號傳輸工作范圍大,常常應用于大型數控加工中心。本文選擇的是紅外傳輸方式,測頭內部配有蓄電池作為RSI-102-4所示。計算機系統UGUGUG6.0軟件,其控制系統硬件如2-5所示。其中,輸入、輸出通道的信號類別有:模擬量、數字量(開關量)、脈沖量;接口類別有:RS232/485、ISA、PCI等,而本文機床本體配有RS232接口,符合計算機要求。2-4RSI-10和接收器內部結構電路Figure2-4PioneerelectromechanicalwirelesssignalreceiverRSI-10andreceiverinternalstructurecircuit2-5計算機控制系統硬件組成Figure2-5ThehardwarecompositionofcomputercontrolsystemUG的數控機床原位檢測系統的開發方法軟件是數控機床原位檢測系統重要組成部分,它提高了檢測系統的自動化、智UG的數控機床原位檢測系統軟件可以實UG的界面下,CAD模型上待檢測點的智能選取、檢測程序的生成、檢測仿真的運行、與數控加工中心的串口通訊、檢測誤差補償運算以及測量數據處理等系列UGMicrosoftWindowXP操作Win7VisualC++UGMFC做人機交互界面,動態鏈接庫(DLL)作為接口,實現了UG的數控機床原位檢測系統的軟件的開發。UG的數控機床原位檢測系統軟件的開發語言UG(Unigraphics是由美國EDS公司[54]推出的高端軟件,該軟件集成了CAD/CAM/CAE是當今世界上最先進的三維軟件之一。因其集成化程度高,被廣泛應用于航空航天、車輛、機械、船舶等軍工和民用設備的生產中。但隨著該軟件的UGEDSUG提供了二次開發接口,即:UG/OpenUG一起發布,因而用戶UGUG的二次開發主要由2-6所示。圖圖2-6 UG二次開發工具四種應用程序Figure2-6 UGsecondarydevelopmenttoolsoffourapplicationsUG/OpenAPI是一個允許程序訪問并影響UGObjectModle模型創建的開發工具UG/OpenAPIMenuScriptUIStylerAPIUG/Open二次開發的關鍵。根據不同的程序運行環境,UG/OpenAPI程序可分為內部程序模式和外部程序模式[37]。其中,內部程序模式下的程序在編譯鏈接后得到的可執行文件只能在UG環境中運行,而外部程序模式下的程序在編譯鏈接后得到的可執行文件是可以獨立UG之外運行。UG/OpenAPI2-7所示。圖圖2-7 UG/OpenAPI例程的組成Figure2-7CompositionofUG/OpenAPIroutinesUIStylerUG2-8圖2-8UIStyler生成的可視化編輯器Figure2-8VisualeditorgeneratedbyUIStylerMenuScriptASCIIUG的菜單[45],可對快捷菜單的菜單項或主菜單進行裁剪、移動,或為開發的應用程序創建專用的菜單UG2-9所示。圖2-9 MenuScript生成的UG菜單Figure2-9UGmenugeneratedbyMenuScriptUG/OpengripCAD/CAM/CAEUG的數控機床原位檢測系統的總體結構和軟件工作流程1、基于UG的數控機床原位檢測系統的總體結構原位檢測系統的人機交互界面是計算機和操作者之間進行交流的平臺。操作者通過它進行系統的測量參數設置、測量仿真參數設置等形成測量主要程序,通過通訊模塊將測量主程序等信息輸入數控系統,使數控系統按照程序的要求進行測量。數控系統則通過它將本檢測系統當前的狀態、位置等信息反饋給操作者。根據實際2-10UG的數控機床原位檢測系統分為:檢測設置模塊、檢測仿真模塊、通訊模塊等,用戶可根據自己的實際需求進行模塊組合的選擇,從而節約了軟件系統運行時間,提高工作效率。基于UG的數控機床原位檢測軟件系統檢測設置模塊檢測仿真模塊通訊模塊檢測模塊檢測數據處理模塊2-10UG的數控機床原位檢測系統總體架構Figure2-10OverallstructureofCNCmachinetoolinsituinspectionsystembasedonUG各模塊主要功能如下:檢測設置模塊檢測設置模塊主要進行數控系統、測頭類型等參數的設置。檢測仿真模塊仿真模塊實現計算機的圖形化檢測過程,模擬真實檢測過程。通訊模塊通訊模塊的建立主要包括RS-232硬件通訊協議和軟件支持部分。主要功能是完成測量程序的發送及測量點坐標信息的接收。檢測模塊檢測模塊依據實際檢測中預行程誤差補償的需要,增加標準球處理參數設置,豐富圖形化檢測過程。檢測數據處理模塊主要功能是對測頭預行程誤差和測頭半徑誤差的補償。通過計算機后臺應用程序進行相應的補償運算,得到測量數據的修正值,并根據測量數據的修正值對典型型面和自由曲面進行重新擬合,與原模型對比后得到加工誤差,生成評定報告。2、基于UG的數控機床原位檢測系統的工作流程2-11UGCADCADCAD圖2-11基于UG的數控機床原位檢測系統的工作流程Figure2-11TheworkflowofCNCmachinetoolinsituinspectionsystembasedonUG本章小結UG選擇、自動生成測量程序、檢測仿真、數據通訊、生成測量報告等功能,為數控機UG硬件部分和軟件部分。硬件組成部分主要對數控加工中心,檢測系統,計算機系統做了詳細的介紹;在軟件組成部分介紹了編寫軟件的編程語言、總體結構、工作的流程圖以及軟件的設計內容,對軟件各個模塊分別進行了詳細的介紹,說明了每個模塊實現的目的和意義。第三章基于UG的數控機床原位檢測系統串口通訊模塊的開發數控機床的效率發揮與程序的傳輸方式密切相關。目前,隨著以“先進制造技術[23]”為主題的制造業興起,數控機床依靠傳統的數控程序傳輸方式已無法滿足需求。同時,隨著原位檢測技術的快速發展,原位測量的高速高精度化,發展面向集CAD/CAM系統的無縫連接已成必然趨勢。UG6.0進行二次開發,增加基于加工檢測集成的數控CAD/CAM的有效集成。VisualC++與串口通訊VisualC++簡介如文獻[37]VisualVisualC++MSVCVC++VC)是微軟公司推出的一種面向對象的可視化集成編程工具,是目前最受歡迎的開發工C語言,C++VC++Windows(WindowsDirectXAPI,Microsoft.NETMFC(MicrosoftFundationClass)庫。因此,該開發工具應用層次廣泛、編寫所得程序代碼尺寸小、移植能力強、運行速度快。串口通訊計算機通常有兩種方式傳輸數據。一種是并行通信,另外一種是串行通信。并左圖30m圖)所示。此外,與并行通信相比,串口通信傳輸距離長,可以是幾米甚至幾千公里,在長距離內的傳輸速率比并行通信的要快。更重要的是串行通信的抗干擾能力很強,信號間的互相干擾可以完全不計。故本文將串口通訊的應用于原位檢測數控機床通訊系統中,可實現邊傳輸邊加工,邊傳輸邊檢測,促進數控程序傳輸的快捷和可靠性的提高。發送端1100發送端11001101接收端3-1并行通信和串行通信Figure3-1Parallelcommunicationandserialcommunication串口通訊的工作方式3-23-33-4所示。單工方式的只能單方向的傳輸數據。通信雙方,只能一方固定為發送NC作方式。圖圖3-2單工方式半雙工方式,發送數據和接收數據均可,只是兩者不可同時進行。任3-3個收/發切換電子開關,通過此開關可以決定數據流的方向。但因為有切換就會式。全雙工方式,可將數據雙向傳輸同時進行,有兩條傳輸線,每一端都方式。3-3半雙工方式Figure3-3Half-duplexmode圖3-4全雙工方式Figure3-4Full-duplexmode串口通訊的協議異步傳輸(bit)是(0),地電位的停止位(數字電路中的1),當發送端開始傳輸數據的那一刻,(即上升沿出現(下降沿出現1.52同步傳輸過兩端中的任意一端定期地在每個位(bit)時間周期中對該時鐘線路發送一個短脈沖信號,另一端將該信號視為時鐘。10Hz,并且在長距離的傳輸中,定時脈沖可能會出現基于UG的數控機床原位檢測系統串口通訊硬件數據終端設備和數據通訊設備DTE(DataTerminalEquipment),即在數據通訊系統中,用DTE。DTE-DCE接口,即通訊接口,本文所用的RS-232接口。數據通訊設備DCE(DatacommunicationsEquipment),是用來連接與數據通訊網絡的設備,實現數字信號與模擬信號之間的相互轉換,如圖3-5所示。DTE-DCERS-2323-6所示。電纜、電話線等。3-5數據通訊系統的基本組成Figure3-5ThebasiccompositionofthedatacommunicationsystemRS2323-6RS-232RS-232接口Figure3-6CNCmachinetoolRS-232interfaceandcomputerRS-232interfaceRS-232協議標準USBRS-232RS-422RS-485R-S232CDTEDCEPC與3-6所示。由于RS-232CDB-25DB-15DB-9DB-25DB-9,如圖3-7和圖3-8所示。連接器不同,其引腳信息自然也不相同,各引腳信息如表3-1所示。3-7DB-25連接器引腳示意圖Figure3-7DB-25connectorpindiagram3-8DB-9連接器引腳示意圖Figure3-8DB-9connectorpindiagram表3-1DB-25和DB-9的常用連接器引腳說明Table3-1CommonConnectorPinDescriptionsforDB-25andDB-925針串口(DB25) 9針串口(DB9)引腳號縮寫功能說明引腳號縮寫功能說明8DCD數據載波檢測1DCD數據載波檢測3RXD接收數據2RXD接收數據2TXD發送數據3TXD發送數據20DTR數據終端設備4DTR數據終端設備7GND信號地5GND信號地6DSR數據準備好6DSR數據設備準備好4RTS請求發送7RTS請求發送5CTS清除發送8CTS清除發送22DELL振鈴指示9DELL振鈴指示RS-232串口通訊的基本接線方法RS-232C3-2GPS(線(線交叉,信號地對應相接。RS485RS-232C電的,否則串口很容易損壞。表3-2RS-232C串口通訊的接線方法Table3-2RS-232Cserialcommunicationwiringmethod9針—9針 25針—25針 9針—25針233222322333557757USBRS232連接3-7USBFANUCSIMENSRS-232USBRS-232設備與計算機之間的數據傳輸。圖3-9USB與RS-232通信串口通信外觀結構示意圖Figure3-9USBandRS-232communicationserialportcommunicationappearancestructurediagram1、標準USBA類接口公頭2、濾波磁環3、黑色帶屏蔽標準USB2.0通信線4、精美外殼(黑色)5、標準公頭6、主芯片RS-232RS-232RS-232RS-232圖3-10USB與RS-232通信引腳連接示意圖Figure3-10USBandRS-232communicationpinconnectiondiagramUSBUSBRS-232串口轉換設備RS-232圖3-11USB與RS-232通信引腳連接實物圖Figure3-11USBandRS-232communicationpinconnectionphysicalmapUSB轉串口驅動是否正常3.2.3可知,只要發送數據引腳(線)與接收數據引腳(線)3-13-2DB-9型23USBRS-232串口轉換設備插入USBUSB轉串口驅動是正常的。3-12USBRS-232串口轉換器正常Figure3-12JudgeUSBandRS-232serialconverternormal基于UG的數控機床原位檢測系統串口通訊的整體設計UG五部分組成3-13UGPC端與NC端的數據傳輸,可實現邊傳輸邊加工,邊傳輸邊檢測的操作。3-13UG的數控機床串口通訊模塊的組成Figure3-13CompositionofserialcommunicationmodulebasedonUGCNCmachinetoolsUG界面開發目前,用戶對UG的二次開發主要還是依靠UG/OpenAPI,也稱UserFunction24]UG/OpenUIStylerWindowsStylerUG的應用程序采MicrosoftVisualC++6.0(VC)UG/OpenAPI的限UG/OpenAPIMicrosoftFundationClass(MFC)。的紅寶石觸碰工件時(實際上統中記錄的坐標值就轉化成工件上檢測點的坐標值了MFCWindowsUG/OpenAPIMFCUG的數控機床原位檢測系統串口通訊模塊。開發環境的設置UGUFUGUGMicrosoftVisualStudioUGMicrosoftVisualStudio\Common\MSDev98\Templateugopen.awx和ugopen.hlpl兩個文件。3-14系統添加用戶變量Figure3-14AddingUserVariablestoSystem3-14applicationstartup文件夾[5]UG軟件中看到用戶定制的功能模塊。動態鏈接庫的搭建圖3-15 DLL的調用過程Figure3-15DLLCallingProcedure在VisualC++6.0的開發環境中, UG/OpenAppWizard、Win32Dynamic-LinkLibrary和均可作為UG二次開發的工程向導[35]。然而,這三者中只有MFCWizard(DLL)可充分調用MFC類庫中的資源創建(dll)。另外,對于MFC本身,因包含應用程序框架并以C++類的形式封裝WindowsAPI,實現人機交互可大大減少程序開發人員的工作量故本文通過調用MFC類庫的方式進行基于UG的數控機床串口通訊系統的開發。UG可通過DLL實現UG系統內部與自身圖形界面的通信[26],并且該執行方式運行速度快,故本文選用MFCWizard(DLL)作為工程向導。DLL3-15所示。本文接口[46,47]3-16DLLUGMFC的集成MFC豐富的函數資源,實現與數據庫的通信。圖圖3-16 接口實現方案Figure3-16ImplementationSchemeofInterface具體實現過程如下:VisualC++6.0MFCRegularDLLusingsharedMFCDLL。設置UG應用開發環境。在Project--Setting--Link中,Object/librarymodulesUGlibufun.1iblibugopenint.1ib。Tools--OptionsFilesIncludeFilesUGUGOPEN文件夾所在的路徑。編寫應UGufusr()。建立MFC對話框并添加調用MFC函數。在菜單命令中選擇Insert--Resource,選擇Dialog,創建Windows風格對話框。ufusr_ask_unload()PrintErrorMessage()錯誤處理函數代碼,編譯,連接,生成動態連接庫文件(*.dll)UGMenuScript編輯的菜單完成調用。基于UG的數控機床原位檢測串口通訊的實現UG的數控機床原位檢測系統串口通訊模塊簡介NCRS-232串行通訊NCRS-232串行通訊接口傳輸給G31RS-232對系統測量結果進行分析計算以及后續處理等工作以提高零件的加工精度。基于原位檢測的數控機床串口通訊系統適用于各類需要通過機床提供工作方式及串行接口(RS-232)際的意義。UG的數控機床原位檢測系統串口通訊的結構本文所研究的串口通訊包括以下幾個模塊:1、配置串口模塊口參數一般包括串口、波特率、校驗位、數據位、停止位。2、選擇文件模塊以在狀態欄中看到當前所選擇的文件。3、發送文件模塊了發送對話框對發送內容容量大小的限制。4、發送檢測程序模塊應設備中。5、清空發送區模塊現。6、測量的結果[XYZ]接收模塊該模塊可以接收到每一個測點坐標值,并以XYZ對應值以及該點的在對應檢測實驗中的序號顯示,讓用戶對測點值一目了然。7、保存結果模塊作的使用。8、小程序的粘貼發送模塊送對話框中,對其進行發送傳輸。UG的數控機床原位檢測系統串口通訊模塊的主界面介紹UG3-17所示。圖中3-17UG的數控機床原位檢測系統的串口通訊模塊主界面Figure3-17ThemaininterfaceofserialcommunicationmodulebasedonUGinCNCmachinetoolinsituinspectionsystemUG的數控機床原位檢測系統串口通訊模塊菜單及主界面按鈕系UG6.0欄如圖3-18所示:3-18系統菜單欄Figure3-18Systemmenubar基于原位檢測的數控機床串口通訊系統的主界面各按鈕介紹:命令圖標功能描述打開配置串口參數對話框在串口通道打開的情況下此按鈕呈暗灰色保存接收到的測量結果數據發送檢測代碼對話框中的程序到數控機床系統選擇需要發送的程序文件發送程序文件呈現于檢測代碼對話框中在串口通道關閉的情況下此按鈕呈暗灰色3-19主界面按鈕Figure3-19Maininterfacebuttons串口打開信息提示框串口打開信息提示框將操作者正在操作的通訊系統的基本信息顯示在圖形框中,如圖3-20所示。3-20串口打開信息提示框Figure3-20Messageboxofopeningtheserialport保存測量結果對話框3-21所示。3-21保存測量結果對話框Figure3-21Savingmeasurementresultsdialogbox主界面的設計及串口通訊編程使用動態鏈接庫開發UG環境下的界面對話框,并添加控件,如圖3-22所示。VisualC++MSComm(MicrosoftCommunicationControl)WinAPI。UG/Open中,部分控件的函數處16個串口;相反,后者功能強大,編程靈活且I/O方式以及事件驅動方式。考慮到數控機床用戶使用的靈活性和通用性,采用了WinAPII/OI/O請求創建線程多線程串口的應用WinAPI[27]AfxBeginThread()息機制,只是進行程序的后臺工作。與之相反,用戶界面線程是由CWinThread類派生出,主要用于處理用戶的中斷輸入并響應各種對應的消息和事件。因此,本文采用用戶接口線程。有了線程,可由主界面調用串口配置對話框,完成串口參數的配置,即通信協議的設定,如圖3-23所示。圖3-22UG環境下主界面對話框圖Figure3-22MainInterfaceDiagramoftheDialogueBasedonUG3-23配置串口參數Figure3-23ConfigurationofSerialPortParameters自定義消息函數定義消息函數,可由以下步驟完成。(1)聲明自定義消息#defineWM_RECEIVEWM_USER+101#defineWM_SENDWM_USER+102(2)聲明消息處理函數afx_msgLRESULTOnReceive(WPARAMwParam,LPARAMlParam);afx_msgLRESULTOnSend(WPARAMwParam,LPARAMlParam);將消息處理函數添加到類實現文件中LRESULTCCommDlg::OnReceive(WPARAMwParam,LPARAMlParam)LRESULTCCommDlg::OnSend(WPARAMwParam,LPARAMlParam)軟件操作總體流程本文所開發的通訊軟件SCSOCMTBOIAOS軟件的操作流程如圖3-24所示。基于UG的數控機床原位檢測系統串口通訊模塊實驗驗證系統設計好后,通過正確配置環境變量后,可在UG軟件的菜單欄中看到如圖2-9所示的數控機床串口通訊系統模塊。FANUCSeriesOi-MD數控系統,進行了數控機床串口通訊實驗,主要步驟如下:(1)設置好計算機及機床端參數,如圖3-23所示。(2)數控系統面板的操作a)MODEEDITb)NC鍵盤上按下[PROG]鍵顯示裝置:[列表+]→[操作]→[F輸入]→設定文件名→[執行]→SKP閃爍等待計算機端發送選擇待發送的檢測程序文件(*.txt),如圖3-22所示。點擊[發送檢測程序],在機床控制面板顯示裝置上可以查看到發送的程序,如圖3-25所示。配置串口參數傳輸檢測程序至數控機床機床進行零件的檢測RS232配置串口參數傳輸檢測程序至數控機床機床進行零件的檢測RS232開始UG6.0 開始UG6.0結束保存測量結果SCSOCMTBOIAOS接收檢測結果SCSOCMTBOIAOS接收檢測結果數控機床調置為接收程序狀態選擇加工程序文件復制加工程序數控機床調置為接收程序狀態選擇加工程序文件復制加工程序RS232發送加工程序文件 發送加工程序文件數控機床設置為接收程序狀態程序在發送對話框中顯示RS232傳輸加工程序至機床設備 機床進行零件的加工傳輸加工程序至機床設備機床進行零件的加工圖3-24SCSOCMTBOIAOS軟件操作流程圖Figure3-24TheflowchartofSCSOCMTBOIAOSsoftwareoperationRS2323-22所示。圖3-25 數控機床端接收到的檢測程序Figure3-25ReceivingInspectionProgramforCNCMachineTool本章小結UGVisualC++UG的數控機床原位檢測串口通訊RS232USBUG/OpenAPIMicrosoftFundamentClass(MFC)MFC來編寫UGUGUG的數控機床原位檢測系統仿真模塊的研究基于UG的數控機床原位檢測系統仿真是為了方便檢測員在實際檢測前就發生干涉等問題。[40,41,44]UG數控機床原位檢測提供便利,可以幫助檢測人員在實驗室即可檢查檢測中的問題。UG的數控機床原位檢測系統仿真模塊簡介U、VU和V測點布置,以文本形式輸出測點信息。此外,本系統還可以導入文本格式UG的數控機床原位檢測仿真測頭的參數化設計目前,可進行參數化設計的三維建模軟件有很多,如:Proe、CATIA、SolidWorksUGNXProeCATIA原有的市場份額,在電子產品、精密制造等領域已成為主流軟件。與此SolidWorksUGNX簡單,功能更強大,又集成了CAD/CAM/CAE,實際的建模設計中可以選擇參UG為平臺進行數控機床原位檢測系統仿真模塊的研究。UG的參數化設計的比較對實體進行參數化建模通常有兩種方法[28],一種是用三維軟件自身提供開2.3.1UG的自身的幾何屬性,運用相關函數,通過代碼編程來實現模型的創建。等幾何特征,通過實體建模工具將草圖轉化為實體模型[29]。建模設計員只要將運用此法一樣可以完成實體模型的參數化設計。程序具有專用性,使用范圍相對較窄,編程需要花費一定的間和精力。綜合兩種方法的優缺點[39]MFCWizard(DLL)作為工程向導,開4-14-2所示。4-1檢測測頭參數化設計界面Figure4-1Parametricdesigninterfacefortheprobe圖4-2參數化設計的檢測測頭Figure4-2Parametricdesignoftheprobe檢測測頭參數化設計主要程序的編寫檢測測頭的參數設計程序主要用到的函數有:創建球體函數:intUF_MODL_create_sphere1(UF_FEATURE_SIGNsign,doublecenter[3],char*diam,tag_t*sphere_obj_id)創建柱體函數:intUF_MODL_create_cyl1(UF_FEATURE_SIGNsign,doubleorigin[3],char*height,char*diam,doubledirection[3],tag_t*cyl_obj_id)UG的體特征函數:intUF_MODL_ask_feat_body(tag_tfeature_obj_id,tag_t*body_obj_id)具體程序如下://————————————————創建測頭——————//創建測球(Sphere)UF_MODL_create_sphere1(UF_NULLSIGN,sphere_center,sphere_diam,&sphere_obj_id);UF_MODL_ask_feat_body(sphere_obj_id,&solid_sphere_obj_id);entities[0]=solid_sphere_obj_id;//創建測桿(Cylinder)UF_MODL_create_cyl1(UF_NULLSIGN,cyl_origin,cyl_height,cyl_diam,cyl_direction,&cyl_obj_id);UF_MODL_ask_feat_body(cyl_obj_id,&solid_cyl_obj_id);entities[1]=solid_cyl_obj_id;檢測測頭的運動UG中三維圖形的幾何變換UG等三維模型軟件環境下,只要涉及到圖形、實體、坐標系等的變換,為了簡化計算,本文應用了三維圖形變換矩陣[30],如公式(4-1)所示。a11

a14T3D

aaa31

a22a32

a23a33

a24a34

(4-1)a41

a42

a43

a44

a11

a1321該矩陣可劃分為四個子矩陣,即:旋轉、比例變換矩陣a21

a22

a23a14

a31

a32

a33影變換矩陣a24,整體比例變換矩陣a44,平移變換矩陣a

a42

a43。 a34某個坐標軸旋轉的角度為X軸、Y軸、Z軸的變換關系如下:

1 00

0 0sin 0Xx

y' z'

x y z 1000sin0

cos0

(4-2)011cos 0 sin 0Y

y' z

1

y z 0

0 0(4-3)sin 0 cos 01000 1000

cossin

sincos

0 00 0Zx

y' z'

x y z 1

(4-4)0 1 0110 0 1100001000010TxTyTz1x'

y' z

1

y z

y

z

1(4-5)這里的Tx 量。

Tz實際上是運動過程中,測頭單步x

y z三個方向的增UG中測頭移動函數的原理1、直線運動函數表達式的原理4-3ABFigure4-3LinearmotionAtoB1

y1

,Bx

y2

AB

b c,nnABt由空間直線參數化方程

x2x1a*ty2y1y

b*

(4-5)z2z1c*ttranslation[0]x2x1a*t可知,

translation[1]yyb*t(4-6)212translation[2]z2z1c*t2、數控機床原位檢測測頭運動的原理 4-4數控機床原位檢測測頭運動的原理簡化圖Figure4-4Schematicdiagramfortheprincipleofprobe’smovementinsituinspectionofCNCmachinetools檢測點M的坐標為point[0]M單位法矢為unit_norm[0]M

point[1]Munit_

point[2]M,unit_norm[2]M;N的坐標為point[0]N單位法矢為unit_norm[0]N

point[1]Nunit_

point[2]N,unit_norm[2]N;點P1和點P2分別為檢測點M和檢測點N在單位法矢方向上的點,且

P2N

t,即:本文所開發的基于UG的數控機床原位檢測仿真系統檢測距離和回退距離相同均為t。如圖4-4所示,檢測測頭從檢測點M運動到檢測點N,完成該兩點的檢測檢測測頭需要分五步進行運動。第(1)步:P1M由公式(4-6)推導可知,translation[3]unit_norm[0]Mt,unit_norm[1]M*t,unit_norm[2]M*t第(2)步:MP1同 理 ,translation[3]unit_norm[0]M*t,unit_norm[1]M*t,unit_norm[2]M*t第(3)步:P1P2同理,point[0]Npoint[0]Munit_norm[0]Nunit_norm[0]M*ttranslation[3]popoN M

unit_unit_*tpoint[2]Npoint[2]Munit_norm[2]Nunit_norm[2]M*t第(4)步:P2N同理,translation[3]unit_norm[0]Nt,unit_norm[1]N*t,unit_norm[2]N*t第(5)步:NP2同 理 ,translation[3]unit_norm[0]N*t,unit_norm[1]N*t,unit_norm[2]N*t3、UG中平移運動函數的應用從圖4-4可知數控機床原位檢測測頭的每一步運動都可以簡化為直線運動也稱平移運動[53]在UG中可以通過平移運動函數來驅動測頭的運行本文所用的函數為:平移矩陣函數uf5943(translation,matrix) 和平移運動函數UF_MODL_transform_entities(2,entities,matrix)。voiduf5943(doubletranslation[3],doublematrix[16])4-1uf5943的參數描述Table4-1Parameterdescriptionoffunctionuf5943類型參數輸入/輸出參數描述doubletranslation[3]輸入三個元素,X、Y、Z單步平移的增量doublematrix[16]輸出16intUF_MODL_transform_entities(intnum_entities,tag_t*entities,doublematrix[16])4-2函數UF_MODL_transform_entities的參數描述Table4-2ParameterdescriptionoffunctionUF_MODL_transform_entities類型參數輸入/輸出參數描述intnum_entities輸入數組中實體的數量tag_t* entities 輸入 平移實體數組double matrix[16] 輸入 定義平移變換的矩陣4-5檢測測頭平移運動前的坐標Figure4-5Coordinatesoftheprobebeforetranslation本文所開發的仿真系統中檢測測頭平移運動的部分函數代碼如下:{UF_MODL_create_sphere1(UF_NULLSIGN,sphere_center,sphere_diam,&sphere_obj_id);UF_MODL_ask_feat_body(sphere_obj_id,&solid_sphere_obj_id);translation[3]={50,100,150};doublematrix[16]={0};uf5943(translation,matrix);entities[0]=solid_sphere_obj_id;}運行程序,可得測頭平移運動前后的坐標對比,如圖4-5和圖4-6所示。4-6檢測測頭平移運動后的坐標Figure4-6ThecoordinatesoftheprobeaftertranslationalmotionUG中曲面模型數據信息獲取的實現測點進行檢測。此目的顯然對待檢測曲面檢測點信息的獲取提出了要求。UG環境下各坐標系的意義UGufun函數的參考坐標系都是絕對坐標系(ABS),ABS為基準的。此外,在實際建還會引入參考坐標系RCSUG二次UG中各坐標系的含義非常重要。WCSABS1、ABS:在進行繪制圖形之前,軟件要提供一個唯一且固定的點和坐標系ABSABS4-7WCSABS圖4-7 UG中ABS和WCSFigure4-7ABSandWCSinUG2、WCS:指當前使用的繪圖坐標系,可以據具體使用環境進行變換,無固定位置,但此坐標系若處在激活狀態下則通常只有一個。3、MCS:在進行數控加工仿真過程中,刀具運動的坐標系位置。4、RCS:僅僅是參考,無其它實際意義。坐標系轉換的實現函數4.3.1UGufun函數的參考ABSABS作坐標系下的曲面信息。intUF_CSYS_map_point(intinput_csys,doubleinput_point[3],intoutput_csys,doubleoutput_point[3]),將絕對坐標系下的點信息直接映4-3所示。表4-3UF_CSYS_map_point的參數描述Table4-3UF_CSYS_map_pointparameterdescriptions類型參數輸入/輸出參數描述intinput_csys輸入待變換的坐標系doubleinput_point[3]輸入待變換的點信息intoutput_csys輸入變換后的坐標系doubleoutput_point[3]輸出變換后到的點信息43PAGEPAGE44本文所開發的系統仿真模塊中將ABS下的點信息映射到WCS下的部分函數代碼如下:{UF_CSYS_map_point(UF_CSYS_WORK_COORDS,point,UF_CSYS_ROOT_WCS_COORDS,point);//坐標點的坐標值變換到工作坐標系下的輸出OOT_WCS_COORDS,unit_norm);// 坐標點的向量值變換到工作坐標系下的輸出}實體曲面信息的提取的整體思路1、曲面信息的提取的整體思路,如圖4-7所示。4-7待檢測曲面信息及其待檢測點信息的獲取流程圖Figure4-7Flowchartofthesurfaceandpointinformationtobedetected2、曲面抓取函數在導入CAD幾何模型后,要獲取待檢測曲面的信息,則需要抓取所要檢測的曲面實體。本文選用的獲取曲面函數為:intUF_UI_set_sel_mask(UF_UI_selection_p_t select_, UF_UI_sel_mask_action_t action, int UF_UI_mask_t*mask_triples)4-4UF_UI_set_sel_mask的參數描述Table4-4FunctionsofUF_UI_set_sel_maskparameterDescription類型參數輸入/輸出參數描述UF_UI_selection_p_tselect_輸入選擇的指針UF_UI_sel_mask_action_taction輸入執行選擇面的類型intnum輸入所選面的類型數量UF_UI_mask_t*mask_triples輸入所選面的類型數組本文所開發的仿真系統中抓取所要檢測的曲面實體的部分函數代碼如下:{staticintinit_proc(UF_UI_selection_p_tselect,void*user_data){int errorCode=0;int num_triples1;//選擇類型數量UF_UI_mask_tmask_triples[]={UF_face_type,0,0,};//定義選擇類型errorCode=UF_UI_set_sel_mask(select,UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC,num_triples,mask_triples);if(errorCode==0){uc1601("選擇待檢測面",1);returnUF_UI_SEL_SUCCESS;}else{returnUF_UI_SEL_FAILURE;}UF_UI_select_with_single_dialog(message,title,scope,init_proc,NULL,&respoe,&object_tag,cursor,&view); //單對象選擇對話框UF_DISP_set_highlight(object_tag,1);//1高亮顯示0不高亮顯示UF_OBJ_set_color(object_tag,20); //改顏色UF_MODL_update();}}運行程序,可得待檢測曲面被抓取前后的對比,如圖4-8所示。4-8待檢測曲面被抓取前(左圖)后(右圖)的對比Figure4-8 Thecontrastofdetectedsurfacegrabbingbefore(left)andafter(right)3、據U、V值對曲面進行劃分Z列Z列方向(v)nrvrur(u,v)行方向(u)OY4-9UV的概念圖Figure4-9ConceptualdiagramofcomplexsurfacesUandVUGBezierNURBSUV4-9示。UVUV引導線方向,VV參數相同,U位置改變而變化。4、獲取曲面點信息在抓取待檢測曲面后,本文運用函數intUF_MODL_ask_face_uv_minmax(tag_tface_tag,doubleuv_min_max[4])獲取待檢測曲面的U、V參數的最大和最小值,如圖4-10所示。4-5函數UF_MODL_ask_face_uv_minmax的參數描述Table4-5FunctionsUF_MODL_ask_face_uv_minmaxofparameterDescription類型 參數 輸入/輸出 參數描述tag_t face_tag 輸入 指向曲面的指針double uv_min_max[4] 輸出 [0]-umin[1]-umax[2]-vmin[3]-vmax4-10U、V參數值Figure4-10U,Vparametervaluesofthesurfacetobedetected在獲得待檢測曲面的U、V參數值后,本文運用函數[31]intUF_MODL_

溫馨提示

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

評論

0/150

提交評論