亚洲国产日韩欧美在线a乱码,国产精品路线1路线2路线,亚洲视频一区,精品国产自,www狠狠,国产情侣激情在线视频免费看,亚洲成年网站在线观看

數(shù)控體系的數(shù)值解決措施

時(shí)間:2023-03-19 15:53:17 數(shù)控機(jī)床 我要投稿
  • 相關(guān)推薦

數(shù)控體系的數(shù)值解決措施

  編輯預(yù)處理與譯碼分離傳統(tǒng)的數(shù)據(jù)系統(tǒng)都提供了一個(gè)程序編輯器,它的功能只是對(duì)數(shù)控源程序進(jìn)行編輯和修改,且操作不方便,而NC程序格式分析及詞、語(yǔ)法分析(這些工作通常稱為預(yù)處理)均由譯碼模塊處理。在譯碼過(guò)程中,無(wú)論程序是否有錯(cuò),都必須進(jìn)行分析,浪費(fèi)了CPU的時(shí)間。因此,我們?cè)陂_(kāi)發(fā)數(shù)據(jù)處理模塊時(shí),把預(yù)處理功能從譯碼子模塊中分離出來(lái),且融入編輯器子模塊,使編輯器既能輸入和編輯NC程序,又能對(duì)整個(gè)源程序一次性分析查錯(cuò)。當(dāng)發(fā)現(xiàn)錯(cuò)誤后及時(shí)修改,避免了加工過(guò)程中出現(xiàn)錯(cuò)誤不得不停機(jī)的情況發(fā)生。微軟的VisualC++5.0中的MFC提供一個(gè)文本編輯類(lèi)CEditView,利用它幾乎不用編寫(xiě)什么代碼,便能生成一個(gè)類(lèi)似Windows中WordPad的文本編輯器,雖然它沒(méi)有Word的文字處理功能強(qiáng)大,但用來(lái)編輯數(shù)控系統(tǒng)清單已經(jīng)足夠。文本編輯器主要由兩個(gè)子窗口組成,一個(gè)為編輯窗口,數(shù)控程序的所有編輯操作均在此進(jìn)行;另一個(gè)為信息窗口,顯示預(yù)處理過(guò)程中各種信息(包括各種錯(cuò)誤信息),大大方便了程序的修改。

  由于NC是以ASCII碼形式存放,讀入緩沖區(qū)前必須進(jìn)行一定轉(zhuǎn)換。另外,為加速預(yù)處理,要求源程序一次性讀入內(nèi)存。為此我們定義一種數(shù)據(jù)結(jié)構(gòu)和一個(gè)數(shù)組:structNCFormat{LPTSTRNCLineS;程序段存放的數(shù)組UINTNCLength;預(yù)處理過(guò)程中,每個(gè)程序段均要經(jīng)過(guò)兩次掃描。第一次掃描是進(jìn)行格式分析和詞法分析,第二次掃描是進(jìn)行語(yǔ)法分析。在兩次掃描過(guò)程中每當(dāng)發(fā)現(xiàn)錯(cuò)誤,輸出出錯(cuò)信息到信息窗口。其中出錯(cuò)信息是一種數(shù)據(jù)結(jié)構(gòu),其定義如下:structErrorInfo{UINTNCLineNO;出現(xiàn)錯(cuò)誤的行charNOChar;出現(xiàn)錯(cuò)誤的字符CStringLineStr;錯(cuò)誤所在的程序段UINTErrorKind;錯(cuò)誤種類(lèi)編譯與解釋方法相結(jié)合單純使用編譯方法或解釋方法都有不可避免的缺點(diǎn),因此,我們把兩種方法結(jié)合起來(lái),取長(zhǎng)補(bǔ)短。在開(kāi)始加工前首先開(kāi)辟一段內(nèi)存作為緩沖區(qū)(一般不宜過(guò)大,如256K),然后一次性編譯若干程序段,直到緩沖區(qū)滿。在這里,編譯的結(jié)果并不是機(jī)器能識(shí)別的最終代碼,而是另外一種數(shù)據(jù)結(jié)構(gòu),其定義如下:structNCTemp{UINTNCLineNO;程序段行號(hào)CstringArrayModeAddress;存放模態(tài)字CstringArrayNoModeAddress;存放非模態(tài)字BOOLAbsReCord;絕對(duì)坐標(biāo)或相對(duì)坐標(biāo)標(biāo)志UINTInterpG0123;插補(bǔ)類(lèi)型CuterComG4012;刀具半徑補(bǔ)償類(lèi)型LenthComG434;刀具長(zhǎng)度補(bǔ)償類(lèi)型EntMsgWorkPiece;零件實(shí)體坐標(biāo)信息BOOLDowithFlag;程序被解釋處理過(guò)的標(biāo)志;緩沖區(qū)滿后,啟動(dòng)解釋處理程序,每次從緩沖區(qū)中取出一個(gè)用上述數(shù)據(jù)結(jié)構(gòu)存放的程序段,并將其處理成系統(tǒng)能識(shí)別的目的程序,再依次進(jìn)行運(yùn)動(dòng)軌跡計(jì)算、進(jìn)給速度計(jì)算、插補(bǔ)和位控。每個(gè)被解釋處理過(guò)的程序段必須置標(biāo)志DowithFlag為T(mén)RUE。

  消息驅(qū)動(dòng)是Windows95的根本運(yùn)行機(jī)制,而多任務(wù)多線程操作又是其最大優(yōu)點(diǎn)。在這里把編譯定義成一個(gè)線程;解釋、運(yùn)動(dòng)軌跡計(jì)算、進(jìn)給速度計(jì)算定義成一個(gè)線程;插補(bǔ)、位控定義為一個(gè)線程。編譯線程優(yōu)先級(jí)最低,三個(gè)線程通過(guò)消息交互。一旦CPU空閑,且緩沖區(qū)中有被解釋處理過(guò)的程序段,則啟動(dòng)編譯線程,從源程序中讀入程序段來(lái)刷新這些被解釋處理過(guò)的程序段。如此交替,直至整個(gè)數(shù)控程序執(zhí)行完畢,從宏觀上看構(gòu)成了時(shí)間上的資源重疊。

【數(shù)控體系的數(shù)值解決措施】相關(guān)文章:

餐廳開(kāi)業(yè)期間的常見(jiàn)問(wèn)題及解決措施02-27

最新質(zhì)量管理體系怪象及解決方案06-17

企業(yè)資本運(yùn)作存在問(wèn)題和解決措施08-01

游戲數(shù)值策劃的工作內(nèi)容03-08

數(shù)控機(jī)床電源的常見(jiàn)故障及抗干擾措施03-04

ERP企業(yè)沙盤(pán)模擬教學(xué)存在問(wèn)題和解決措施11-23

建筑設(shè)計(jì)過(guò)程中的150個(gè)問(wèn)題及解決措施01-23

數(shù)控機(jī)床的電器故障分類(lèi)和解決方法介紹03-26

常用的PS處理圖像手法和參數(shù)值03-26

臨床執(zhí)業(yè)醫(yī)師必背數(shù)值考點(diǎn)匯總02-26