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

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

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

a14T3D

aaa31

a22a32

a23a33

a24a34

(4-1)a41

a42

a43

a44

a11

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

a22

a23a14

a31

a32

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

a42

a43。 a34某個坐標(biāo)軸旋轉(zhuǎn)的角度為X軸、Y軸、Z軸的變換關(guān)系如下:

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中測頭移動函數(shù)的原理1、直線運動函數(shù)表達式的原理4-3ABFigure4-3LinearmotionAtoB1

y1

,Bx

y2

AB

b c,nnABt由空間直線參數(shù)化方程

x2x1a*ty2y1y

b*

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

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

point[1]Munit_

point[2]M,unit_norm[2]M;N的坐標(biāo)為point[0]N單位法矢為unit_norm[0]N

point[1]Nunit_

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

P2N

t,即:本文所開發(fā)的基于UG的數(shù)控機床原位檢測仿真系統(tǒng)檢測距離和回退距離相同均為t。如圖4-4所示,檢測測頭從檢測點M運動到檢測點N,完成該兩點的檢測檢測測頭需要分五步進行運動。第(1)步:P1M由公式(4-6)推導(dǎo)可知,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中平移運動函數(shù)的應(yīng)用從圖4-4可知數(shù)控機床原位檢測測頭的每一步運動都可以簡化為直線運動也稱平移運動[53]在UG中可以通過平移運動函數(shù)來驅(qū)動測頭的運行本文所用的函數(shù)為:平移矩陣函數(shù)uf5943(translation,matrix) 和平移運動函數(shù)UF_MODL_transform_entities(2,entities,matrix)。voiduf5943(doubletranslation[3],doublematrix[16])4-1uf5943的參數(shù)描述Table4-1Parameterdescriptionoffunctionuf5943類型參數(shù)輸入/輸出參數(shù)描述doubletranslation[3]輸入三個元素,X、Y、Z單步平移的增量doublematrix[16]輸出16intUF_MODL_transform_entities(intnum_entities,tag_t*entities,doublematrix[16])4-2函數(shù)UF_MODL_transform_entities的參數(shù)描述Table4-2ParameterdescriptionoffunctionUF_MODL_transform_entities類型參數(shù)輸入/輸出參數(shù)描述intnum_entities輸入數(shù)組中實體的數(shù)量tag_t* entities 輸入 平移實體數(shù)組double matrix[16] 輸入 定義平移變換的矩陣4-5檢測測頭平移運動前的坐標(biāo)Figure4-5Coordinatesoftheprobebeforetranslation本文所開發(fā)的仿真系統(tǒng)中檢測測頭平移運動的部分函數(shù)代碼如下:{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;}運行程序,可得測頭平移運動前后的坐標(biāo)對比,如圖4-5和圖4-6所示。4-6檢測測頭平移運動后的坐標(biāo)Figure4-6ThecoordinatesoftheprobeaftertranslationalmotionUG中曲面模型數(shù)據(jù)信息獲取的實現(xiàn)測點進行檢測。此目的顯然對待檢測曲面檢測點信息的獲取提出了要求。UG環(huán)境下各坐標(biāo)系的意義UGufun函數(shù)的參考坐標(biāo)系都是絕對坐標(biāo)系(ABS),ABS為基準(zhǔn)的。此外,在實際建還會引入?yún)⒖甲鴺?biāo)系RCSUG二次UG中各坐標(biāo)系的含義非常重要。WCSABS1、ABS:在進行繪制圖形之前,軟件要提供一個唯一且固定的點和坐標(biāo)系A(chǔ)BSABS4-7WCSABS圖4-7 UG中ABS和WCSFigure4-7ABSandWCSinUG2、WCS:指當(dāng)前使用的繪圖坐標(biāo)系,可以據(jù)具體使用環(huán)境進行變換,無固定位置,但此坐標(biāo)系若處在激活狀態(tài)下則通常只有一個。3、MCS:在進行數(shù)控加工仿真過程中,刀具運動的坐標(biāo)系位置。4、RCS:僅僅是參考,無其它實際意義。坐標(biāo)系轉(zhuǎn)換的實現(xiàn)函數(shù)4.3.1UGufun函數(shù)的參考ABSABS作坐標(biāo)系下的曲面信息。intUF_CSYS_map_point(intinput_csys,doubleinput_point[3],intoutput_csys,doubleoutput_point[3]),將絕對坐標(biāo)系下的點信息直接映4-3所示。表4-3UF_CSYS_map_point的參數(shù)描述Table4-3UF_CSYS_map_pointparameterdescriptions類型參數(shù)輸入/輸出參數(shù)描述intinput_csys輸入待變換的坐標(biāo)系doubleinput_point[3]輸入待變換的點信息intoutput_csys輸入變換后的坐標(biāo)系doubleoutput_point[3]輸出變換后到的點信息43PAGEPAGE44本文所開發(fā)的系統(tǒng)仿真模塊中將ABS下的點信息映射到WCS下的部分函數(shù)代碼如下:{UF_CSYS_map_point(UF_CSYS_WORK_COORDS,point,UF_CSYS_ROOT_WCS_COORDS,point);//坐標(biāo)點的坐標(biāo)值變換到工作坐標(biāo)系下的輸出OOT_WCS_COORDS,unit_norm);// 坐標(biāo)點的向量值變換到工作坐標(biāo)系下的輸出}實體曲面信息的提取的整體思路1、曲面信息的提取的整體思路,如圖4-7所示。4-7待檢測曲面信息及其待檢測點信息的獲取流程圖Figure4-7Flowchartofthesurfaceandpointinformationtobedetected2、曲面抓取函數(shù)在導(dǎo)入CAD幾何模型后,要獲取待檢測曲面的信息,則需要抓取所要檢測的曲面實體。本文選用的獲取曲面函數(shù)為: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的參數(shù)描述Table4-4FunctionsofUF_UI_set_sel_maskparameterDescription類型參數(shù)輸入/輸出參數(shù)描述UF_UI_selection_p_tselect_輸入選擇的指針UF_UI_sel_mask_action_taction輸入執(zhí)行選擇面的類型intnum輸入所選面的類型數(shù)量UF_UI_mask_t*mask_triples輸入所選面的類型數(shù)組本文所開發(fā)的仿真系統(tǒng)中抓取所要檢測的曲面實體的部分函數(shù)代碼如下:{staticintinit_proc(UF_UI_selection_p_tselect,void*user_data){int errorCode=0;int num_triples1;//選擇類型數(shù)量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、據(jù)U、V值對曲面進行劃分Z列Z列方向(v)nrvrur(u,v)行方向(u)OY4-9UV的概念圖Figure4-9ConceptualdiagramofcomplexsurfacesUandVUGBezierNURBSUV4-9示。UVUV引導(dǎo)線方向,VV參數(shù)相同,U位置改變而變化。4、獲取曲面點信息在抓取待檢測曲面后,本文運用函數(shù)intUF_MODL_ask_face_uv_minmax(tag_tface_tag,doubleuv_min_max[4])獲取待檢測曲面的U、V參數(shù)的最大和最小值,如圖4-10所示。4-5函數(shù)UF_MODL_ask_face_uv_minmax的參數(shù)描述Table4-5FunctionsUF_MODL_ask_face_uv_minmaxofparameterDescription類型 參數(shù) 輸入/輸出 參數(shù)描述tag_t face_tag 輸入 指向曲面的指針double uv_min_max[4] 輸出 [0]-umin[1]-umax[2]-vmin[3]-vmax4-10U、V參數(shù)值Figure4-10U,Vparametervaluesofthesurfacetobedetected在獲得待檢測曲面的U、V參數(shù)值后,本文運用函數(shù)[31]intUF_MODL_

溫馨提示

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

評論

0/150

提交評論