freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

虛擬數(shù)控車削加工系統(tǒng)探討-資料下載頁

2025-06-22 08:24本頁面
  

【正文】 控程序內(nèi)容轉(zhuǎn)存到動(dòng)態(tài)二維數(shù)組中; for(i=0。irow。i++) //對(duì)二維數(shù)組分行處理。 { while(本行未結(jié)束) //針對(duì)每行提取指令及參數(shù)數(shù)值; { 讀取G指令參數(shù); 讀取X指令參數(shù); 讀取Z指令參數(shù); 讀取R指令參數(shù); 讀取I指令參數(shù); 讀取K指令參數(shù); 讀取F指令參數(shù); ...... }//while語句結(jié)束。 若為G00指令執(zhí)行G00()子程序; 若為G01指令執(zhí)行G01()子程序; 若為G02指令執(zhí)行G02()子程序; 若為G03指令執(zhí)行G03()子程序; 若為G04指令執(zhí)行G04()子程序; 若為G32指令執(zhí)行G32()子程序; 若為G28指令執(zhí)行G28()子程序; 若為G90指令執(zhí)行G90()子程序; 若為G92指令執(zhí)行G92()子程序; 若為G94指令執(zhí)行G94()子程序; ...... }// for循環(huán)結(jié)束,數(shù)控程序執(zhí)行完畢. } 系統(tǒng)實(shí)現(xiàn)車削加工仿真時(shí)需要逐行翻譯數(shù)控程序,調(diào)用相應(yīng)的指令實(shí)現(xiàn)方法,對(duì)每一數(shù)控程序段分析后需要保存讀取的各個(gè)參數(shù),為此我們?cè)O(shè)計(jì)了以下數(shù)據(jù)結(jié)構(gòu): typedef struct Run_Data { int Gcode。 //G指令 int Mcode。 //M指令 float Xnum。 //X值 float Znum。 //Z值 float Inum。 //I 值 float Knum。 //K值 float Pnum。 //P值 float Rnum。 //R值 float Fnum。 //F值 int Tnum。 //刀具號(hào) }Rundata。 由于數(shù)控加工指令有模態(tài)和非模態(tài)之分,其中模態(tài)指令一旦執(zhí)行就一直保持有效,直到同一模態(tài)組的另一個(gè)代碼替代為止,而非模態(tài)指令只在它所在的程序段有效,所以每次執(zhí)行非模態(tài)指令程序段后都要需要作出相應(yīng)處理,使提取的G指令值只在本程序段有效。 本章小結(jié) 本章首先介紹數(shù)控程序結(jié)構(gòu),分析了數(shù)控代碼的特點(diǎn),然后引入編譯技術(shù),選取FANUC0TD數(shù)控系統(tǒng)對(duì)數(shù)控語言進(jìn)行了詞法分析、語法分析、語義分析,最后設(shè)計(jì)了用于執(zhí)行翻譯的數(shù)據(jù)結(jié)構(gòu)。第4章 虛擬加工過程實(shí)現(xiàn) 虛擬加工過程的實(shí)現(xiàn)是運(yùn)用計(jì)算機(jī)圖形學(xué)及虛擬現(xiàn)實(shí)技術(shù)對(duì)真實(shí)加工過程的仿真過程。目前對(duì)加工過程的仿真包括幾何仿真和物理仿真,幾何仿真以建立刀具和工件幾何模型為基礎(chǔ),用以驗(yàn)證數(shù)控代碼的正確性,物理仿真由于影響因素復(fù)雜而難于實(shí)現(xiàn)。另外從本系統(tǒng)開發(fā)的目的來看,以檢驗(yàn)和驗(yàn)證數(shù)控代碼的正確性為目的,并不片面強(qiáng)調(diào)其真實(shí)性。因此,本章主要討論基于幾何模型的虛擬加工過程的實(shí)現(xiàn)。 幾何建模技術(shù) 幾何模型是為了表示物體在計(jì)算機(jī)中的表達(dá)形式而建立的模型,幾何建模一直是CAD/CAM系統(tǒng)發(fā)展的核心內(nèi)容。虛擬加工系統(tǒng)的主要功能就是實(shí)現(xiàn)加工過程的動(dòng)態(tài)圖形仿真,從而驗(yàn)證數(shù)控程序的加工效果,因而需要選用合適的幾何建模方法。 目前用于實(shí)現(xiàn)虛擬數(shù)控加工過程的幾何建模方法有三類:直接三維實(shí)體建模、基于圖像空間建模、離散矢量建模[24]。 三維實(shí)體建模 三維實(shí)體建模也稱體素建模,是表達(dá)和處理三維物體的一種完整表達(dá)形式,其研究的重點(diǎn)是如何利用簡單幾何體構(gòu)造復(fù)雜組合實(shí)體,如何方便地定義形狀簡單的幾何體,如何經(jīng)過適當(dāng)?shù)牟紶柤线\(yùn)算構(gòu)造出所需的復(fù)雜幾何體,并最終在圖形設(shè)備上輸出各種視圖。應(yīng)用較為廣泛的三維實(shí)體造型方法有構(gòu)造實(shí)體幾何法(CSG)、邊界表示法(Brep)、單元分解法等: (1)構(gòu)造實(shí)體幾何法(CSG) 是將簡單的實(shí)體進(jìn)行一定的集合運(yùn)算構(gòu)成所需要設(shè)計(jì)的復(fù)雜物體。利用這種方法實(shí)現(xiàn)實(shí)體建模的過程就是集合運(yùn)算的過程,這一過程可以形象地用一顆二叉樹-CSG樹表示。但CSG樹只是定義了所表示物體的構(gòu)造方式,既不反映物體的面、邊、頂點(diǎn)等有關(guān)邊界信息,也不顯示說明三維點(diǎn)集與所表示的物體在實(shí)際空間的一一對(duì)應(yīng)關(guān)系。 (2)邊界表示法(Brep) 是通過描述物體的表面邊界來表示一個(gè)物體的方法。物體的邊界是物體內(nèi)部點(diǎn)和外部點(diǎn)的分界線,要用實(shí)體的邊界信息表示一個(gè)實(shí)體,必須包含兩類信息:幾何信息和拓?fù)湫畔?。其中幾何信息是物體幾何元素的尺寸數(shù)據(jù),拓?fù)湫畔⒅肝矬w上頂點(diǎn)、棱邊、表面間的連接關(guān)系。邊界表示法中最為重要的兩種數(shù)據(jù)結(jié)構(gòu)是翼邊結(jié)構(gòu)和半邊數(shù)據(jù)結(jié)構(gòu)。邊界表示法強(qiáng)調(diào)實(shí)體的外表細(xì)節(jié),有利于邊和面的運(yùn)算,但其數(shù)據(jù)量大,數(shù)據(jù)關(guān)系復(fù)雜,對(duì)幾何特性整體描述能力弱不能反映實(shí)體的構(gòu)造過程和特點(diǎn)。 (3)單元分解法 單元分解法是將形體按某種規(guī)則分解為小的、更易于描述的部分,每一小部分又可分為更小的部分,直至每一小部分都能夠直接描述為止。分解表示的一種特殊形式是每一個(gè)小的部分都是一種固定形狀(正方形、立方體等)的單元,形體被分解成這些分布在空間網(wǎng)格位置上的具有鄰接關(guān)系的固定形狀單元的集合,單元的大小決定了單元分解形式的精度。根據(jù)基本單元的不同形狀,常用四叉樹、八叉樹和多叉樹等表示方法。 在加工仿真過程中,零件的形成過程實(shí)質(zhì)是不斷從零件實(shí)體減去刀具掃描體切入零件內(nèi)部材料部分的過程,因此可以用實(shí)體間的布爾運(yùn)算來描述零件切削過程。但這種實(shí)體間的布爾運(yùn)算計(jì)算量也是驚人的,大大降低了加工過程的實(shí)時(shí)性,很難直接應(yīng)用于動(dòng)態(tài)仿真。 基于圖像空間建模 圖像空間建模方法是使用類似圖形消隱的Zbuffer,將工件和刀具按屏幕的象素離散為Zbuffer結(jié)構(gòu),切削過程簡化為沿視線方向的一維布爾運(yùn)算。利用圖像空間離散思想,Van Hook提出了一種利用擴(kuò)展的Z緩沖區(qū)數(shù)據(jù)結(jié)構(gòu)來進(jìn)行加工過程仿真的方法[25]:將實(shí)體按圖像空間的象素離散,在每一個(gè)屏幕象素點(diǎn)上,將刀具和毛坯表示為一個(gè)長方體單元,稱為Dexel結(jié)構(gòu)。刀具和毛坯之間的關(guān)系有七種,此時(shí)刀具切削毛坯的過程就變成兩套Dexel結(jié)構(gòu)的比較問題,具體運(yùn)算過程用以下算法表示[26]: CASE 1:只有刀具,顯示刀具;break; CASE 2:毛坯遮擋刀具,顯示毛坯;break; CASE 3:刀具切削毛坯后部,顯示毛坯;break; CASE 4:刀具切削毛坯內(nèi)部,顯示毛坯;break; CASE 5:刀具切削毛坯前部,顯示刀具;bread; CASE 6:刀具遮擋毛坯,顯示刀具;break; CASE 7:只有毛坯,顯示毛坯;break; 這種算法計(jì)算量小,實(shí)時(shí)性好,但由于是基于起始視向來進(jìn)行計(jì)算,如果用戶想改變觀察視向,需要重新運(yùn)行整個(gè)系統(tǒng)進(jìn)行數(shù)據(jù)計(jì)算,導(dǎo)致無法對(duì)仿真結(jié)果進(jìn)行旋轉(zhuǎn)、平移、縮放等操作。另外Dexel網(wǎng)格的密度也決定了仿真顯示的精度,所以若采用均勻分布的Dexel結(jié)構(gòu)可能導(dǎo)致因象素劃分而形成的工件表面不均勻,影響加工仿真的結(jié)果。 離散矢量建模 由于實(shí)體建模方法需要大量的布爾運(yùn)算,而基于圖像空間的方法無法對(duì)加工進(jìn)行旋轉(zhuǎn)、放縮等操作也無法進(jìn)行精確的誤差檢驗(yàn)。針對(duì)以上缺陷提出了離散矢量建模方法,這種方法最早源于Chappel提出的“點(diǎn)-矢量”法[27]。離散矢量建模的原理是[28]:將零件表面按照一定的方式以一定精度進(jìn)行離散,利用這些離散點(diǎn)來代替原曲面,計(jì)算每一個(gè)離散點(diǎn)在原曲面處的法矢,從該點(diǎn)沿法矢方向的直線與所定義的毛坯邊界或零件別的表面相交,交點(diǎn)與原離散點(diǎn)之間距離的最小值為該離散點(diǎn)法矢的初始長度。仿真計(jì)算時(shí),從該離散點(diǎn)出發(fā)并沿該點(diǎn)法矢方向的直線與刀具運(yùn)動(dòng)形成的刀具包絡(luò)體相交,如果交點(diǎn)到離散點(diǎn)的距離小于原來的法矢長度,則用交點(diǎn)距離替代原來法矢長度,否則保留。這樣重復(fù)直到刀具切削加工完成,通過離散點(diǎn)的矢量值不斷減少來模擬仿真加工過程中刀具切削毛坯體的材料去除過程。 采用離散矢量建模方法的仿真加工過程實(shí)際上就是刀具掃描體與毛坯的求交及毛坯體的數(shù)據(jù)更新過程。離散矢量模型中常用的離散求交方法是采用均勻離散方式,這樣對(duì)仿真精度和仿真速度的要求無法同時(shí)得到滿足,若采用非均勻離散的優(yōu)化模型則可以有效解決此不足[29]。 在離散矢量建模方法中,離散矢量與刀具掃描體的求交算法是影響運(yùn)行速度的關(guān)鍵因素。從應(yīng)用來看,離散矢量建模方法主要用于曲面加工的誤差檢測。 總體來說,基于實(shí)體造型的方法中幾何模型的表達(dá)與實(shí)際加工過程相一致,使得仿真的最終結(jié)果與設(shè)計(jì)產(chǎn)品間的精確比較成為可能;但實(shí)體造型的技術(shù)要求高,計(jì)算量大,在目前的計(jì)算機(jī)實(shí)用環(huán)境下較難應(yīng)用于實(shí)時(shí)檢測和動(dòng)態(tài)模擬?;趫D像空間的方法速度快得多,能夠?qū)崿F(xiàn)實(shí)時(shí)仿真,但由于原始數(shù)據(jù)都已轉(zhuǎn)化為像素值,不易進(jìn)行精確的檢測。離散矢量求交法基于零件的表面處理,能精確描述零件面的加工誤差,主要用于曲面加工的誤差檢測。 本系統(tǒng)中的三維車削加工仿真部分采用了簡化的單元分解法進(jìn)行三維實(shí)體建模,并對(duì)顯示算法進(jìn)行了改進(jìn),大大降低了計(jì)算量,后面將詳細(xì)介紹。 插補(bǔ)算法 插補(bǔ)計(jì)算就是數(shù)控系統(tǒng)根據(jù)輸入的基本數(shù)據(jù)(起點(diǎn)、終點(diǎn)、進(jìn)給速度等),通過計(jì)算,將工件輪廓的特征描述出來,邊計(jì)算邊根據(jù)計(jì)算結(jié)果向各坐標(biāo)發(fā)出進(jìn)給命令,可見在數(shù)控加工過程中插補(bǔ)算法是系統(tǒng)控制的核心內(nèi)容。數(shù)控機(jī)床加工的零件的輪廓一般由直線、圓弧組成,對(duì)于非圓曲線也可以用直線或圓弧去逼近,因此插補(bǔ)計(jì)算主要進(jìn)行直線插補(bǔ)和圓弧插補(bǔ)。目前應(yīng)用的插補(bǔ)算法主要有兩類:脈沖增量插補(bǔ)和數(shù)字增量插補(bǔ)。脈沖增量插補(bǔ)的特點(diǎn)是每次插補(bǔ)結(jié)束只產(chǎn)生一個(gè)行程增量,以一個(gè)個(gè)脈沖的方式輸出給步進(jìn)電機(jī)。數(shù)字增量插補(bǔ)的特點(diǎn)是插補(bǔ)運(yùn)算分兩步完成:粗插補(bǔ)和精插補(bǔ)。在普通的CNC裝置中,逐點(diǎn)比較法和數(shù)字積分法獲得廣泛應(yīng)用。 在虛擬加工系統(tǒng)中,加工仿真的過程,也就是根據(jù)數(shù)控程序要求運(yùn)用插補(bǔ)算法改變毛坯幾何模型的過程。下面詳細(xì)介紹本系統(tǒng)開發(fā)中使用的逐點(diǎn)比較法。 所謂逐點(diǎn)比較法,即每走一步都要和給定軌跡上的坐標(biāo)值進(jìn)行一次比較,視該點(diǎn)在給定軌跡的上方或下方,或在給定軌跡的里面或外面,從而決定下一步的進(jìn)給方向,使之趨近加工軌跡。在逐點(diǎn)比較法中,每進(jìn)給一步都要完成以下四個(gè)工作節(jié)拍(見圖41):偏差判別進(jìn)給偏差計(jì)算終點(diǎn)判別圖41逐點(diǎn)比較法的工作節(jié)拍 下面以第一象限直線插補(bǔ)為例介紹逐點(diǎn)比較直線插補(bǔ)算法。如圖42,直線的起點(diǎn)為坐標(biāo)原點(diǎn),終點(diǎn)為,設(shè)點(diǎn)為加工動(dòng)點(diǎn)。 XY0.圖42直線方程(1)偏差判別: 若點(diǎn)正好處在直線上,則有,即 若點(diǎn)位于直線上方,有: 若點(diǎn)位于直線下方,有: 設(shè)則有:時(shí),點(diǎn)在直線上;時(shí)點(diǎn)在直線上方;時(shí)點(diǎn)在直線下方。(2)坐標(biāo)進(jìn)給: 坐標(biāo)進(jìn)給是向使偏差縮小的方向。當(dāng)向X正方向進(jìn)給一步;當(dāng)時(shí)向Y正方向進(jìn)給一步;可任意走X正向或Y的正向,但通常按處理。這樣走一步算一次直到終點(diǎn)。(3)偏差計(jì)算: 為避免繁雜的計(jì)算,在插補(bǔ)運(yùn)算的新偏差計(jì)算中,通常采用遞推公式進(jìn)行。 當(dāng)時(shí)可得如下遞推公式: 當(dāng)時(shí)同理得: (4)終點(diǎn)判別: 終點(diǎn)判別方法一般有兩種:1)根據(jù)X、Y兩向坐標(biāo)總步長判斷,每走一步x或y,均使總步長減1,總步長為零時(shí)到終點(diǎn)。2)比較和,取其中大值為步長,當(dāng)沿該方向進(jìn)給一步時(shí),步長減1,直到步長為零。 根據(jù)上述插補(bǔ)原理,可以得到第一象限逐點(diǎn)比較直線插補(bǔ)的程序流程(見圖43):YNY初始化,F(xiàn)=0,求出總步長B+X方向進(jìn)給+Y方向進(jìn)給B=0 結(jié)束N開始圖43第一象限直線插補(bǔ)流程 在圓弧加工過程中,是用動(dòng)點(diǎn)到圓心的距離來反映刀具位置與被加工圓弧之間的相對(duì)關(guān)系,現(xiàn)仍以第一象限圓弧插補(bǔ)為例進(jìn)行說明。 如圖44所示,設(shè)弧是要加工的第一象限逆圓,為圓弧起點(diǎn),為圓弧終點(diǎn),為加工動(dòng)點(diǎn)。X0Y.圖44圓弧與動(dòng)點(diǎn)的關(guān)系與直線插補(bǔ)類似,圓弧插補(bǔ)每進(jìn)給一步也要經(jīng)過四個(gè)節(jié)拍的工作:(1)偏差判別: 若點(diǎn)在圓弧上,則下式成立: 取偏差函數(shù)為 則根據(jù)動(dòng)點(diǎn)所在區(qū)域不同,有下列三種情況:,動(dòng)點(diǎn)在圓弧外;,動(dòng)點(diǎn)在圓弧上;,動(dòng)點(diǎn)在圓弧內(nèi)。(2)坐標(biāo)進(jìn)給: 把和合在一起考慮,按如下原則,就可以實(shí)現(xiàn)第一象限逆圓的圓弧插補(bǔ):當(dāng)時(shí),向進(jìn)給一步;當(dāng)時(shí),向進(jìn)給一步。(3)偏差與坐標(biāo)計(jì)算: 為簡化計(jì)算,也導(dǎo)出便于計(jì)算的偏差遞推公式:當(dāng)時(shí),向進(jìn)給一步,加工點(diǎn)由移動(dòng)到則新加工點(diǎn)的偏差 當(dāng)時(shí),向進(jìn)給一步,則新加工點(diǎn)的偏差為 (4)終點(diǎn)判別: 圓弧插補(bǔ)的終點(diǎn)判別常用方法有兩種:一種是用X,Y方向應(yīng)走總步長之和,每進(jìn)給一步,總步長減1,直到為零;另一種是用圓弧末端來選取,如末端離Y(X)軸近,則選取X(Y)的坐標(biāo)做總步長,每在該坐標(biāo)進(jìn)給一步,總步長減1,直到為零。 根據(jù)上述圓弧插補(bǔ)原理,可以得到第一象限逐點(diǎn)比較法逆圓弧插補(bǔ)流程圖(見圖45):YN初始化,F(xiàn)=0,求出總步長B-X方向進(jìn)給+Y方向進(jìn)給YB=0 結(jié)束N開始圖45第一象限圓弧插補(bǔ)流程 前面討論了逐點(diǎn)比較法在第一象限進(jìn)行直線插補(bǔ)和圓弧插補(bǔ)的算法,由此可推廣可得出其他象限的直線和不同象限、不同走向的圓弧插補(bǔ)計(jì)算公式和進(jìn)給方向,在此不再詳述。逐點(diǎn)比較法使用簡單方便,但因其以垂直折線逼近給定軌跡,插補(bǔ)誤差只能小于或等于一個(gè)進(jìn)給單位。如果在全象限中進(jìn)給方向由四個(gè)變?yōu)榘藗€(gè),以45176。折線逼近給定軌跡,誤差就會(huì)小于半個(gè)進(jìn)給單位,得到較高質(zhì)量的插補(bǔ)數(shù)據(jù)[30]。 在虛擬加工系統(tǒng)中利用上述插補(bǔ)算法得到的數(shù)據(jù)控制刀具運(yùn)動(dòng)和毛坯的切除,就能實(shí)現(xiàn)對(duì)加工過程的仿真。 二維仿真 由于車削編程屬于二維編程,所以車削加工仿真可以在二維進(jìn)行。二維仿真由于其建模簡單,運(yùn)算量小而更容易實(shí)現(xiàn)實(shí)時(shí)仿真。 MFC圖形編程方法 1 GDI基礎(chǔ)知識(shí) 圖形設(shè)備接口(GDI)是Windows提供的圖形編程接口,它接收應(yīng)用程序的繪圖請(qǐng)求,將它們傳給相應(yīng)的設(shè)備驅(qū)動(dòng)程序,完成特定硬件的輸出。GDI通過設(shè)備描述表(DC)來實(shí)現(xiàn)設(shè)備的無關(guān)性,DC實(shí)際上是一個(gè)關(guān)于如何繪制圖形的集合,不僅可以繪制各種圖形,而且還可以確定在應(yīng)
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號(hào)-1