<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 數控制碼系統中的數據處理新方法

數控制碼系統中的數據處理新方法

作者: 時(shí)間:2012-05-23 來(lái)源:網(wǎng)絡(luò ) 收藏

摘要:分析了數的特點(diǎn),討論了數控中兩種傳統的及三種改進(jìn)。綜合分析各種的優(yōu)缺點(diǎn),結合制碼的特點(diǎn),提出了一種更適用的數據處理新方法。該方法即節約了系統資源,又提高了制碼速度和工作效率。

本文引用地址:http://dyxdggzs.com/article/149012.htm

關(guān)鍵詞:數據處理數控譯碼制碼系統

數控系統的數據處理是指NC程序送入零件緩沖區之后、插補之前的準備工作,主要包括譯碼、運動(dòng)軌跡計算、進(jìn)給速度計算三部分。選用合理的數據處理方法將大幅提高編程的正確性和工作效率,且便于數據校對,尤其適合批量零件和有規律零件程序加工。數據處理方法是否合理主要取決于其連續性、時(shí)間效率和資源占用情況。目前,對傳統數據處理方法改進(jìn)的數據處理方法主要有:資源重疊流水處理的解釋方法、目標碼編譯方法、解釋一編譯方法。它們各有優(yōu)點(diǎn)和不足,如在不同的環(huán)節加快了處理速度,減少了等待時(shí)間,但就整體的連續性和時(shí)間效率而言,還不夠完善。為了進(jìn)一步提高加工連續性和加工效率,本文針對各算法的優(yōu)缺點(diǎn)提出了一種新的數據處理方法,更加適用于制碼系統的加工處理。

1數碼系統

制碼系統由三個(gè)步進(jìn)電機驅動(dòng),在圓形小零件上制碼。零件圓面上需以環(huán)形刻兩組對稱(chēng)的、由字母和數字組成的標記碼。規定每個(gè)零件上的標記碼字符個(gè)數相同(取6位字符為例),即每個(gè)零件加工時(shí)編譯的目標碼大小一樣,所占內存空間相同。標記碼主要有兩部分:整批零件的代號(相同)和每個(gè)零件單獨的標記碼(不同)。刀具上固定需要用到的字母刀和數字刀,根據轉動(dòng)刀架和轉動(dòng)零件對準零件上需要刻碼的位置。所以這三個(gè)步進(jìn)電機分別用來(lái)刀架的轉動(dòng)、零件的位置和刀架的深淺。其數據處理就是對固定位數的標記碼進(jìn)行譯碼,主要特點(diǎn)是:每個(gè)零件的標記碼可作為一個(gè)代碼段來(lái)處理;可以針對標記碼中整批零件代號相同和各零件代碼不同的特點(diǎn)進(jìn)行相應的處理;零件上刻的是兩組完全相同的標記碼,即處理的數據相同,只是改變了位置;每個(gè)零件加工的銜接速度很快,數據處理需要有很好的連續性。針對制碼系統中數據處理的特點(diǎn),結合各數據處理方法,研究出一種建立在已有數據處理方法基礎之上、更適用于制碼系統數據處理的方法。

2傳統的數據處理方法

傳統的數據處理方法有解釋方法和編譯方法兩種。

(1)解釋方法

解釋方法是將加工程序整理成某種形式,在加工時(shí)由主控程序順序取出,分析判斷后,進(jìn)行譯碼處理,并對零件加工程序逐條進(jìn)行解釋、插補和控制。這種方法占用內存少、操作簡(jiǎn)單,但存在難以克服的缺點(diǎn):各模塊問(wèn)的控制是順序的,如果對一個(gè)程序的解釋過(guò)程較慢而使機床具有一定的等待時(shí)間,則加工出來(lái)的工件就會(huì )出現明顯的粗糙度;不易處理各程序間的轉接,易形成停頓與過(guò)切。

(2)編譯方法

編譯方法是先對加工程序全部編譯,將結果放到緩沖區中,當開(kāi)始加工時(shí),直接啟動(dòng)插補中斷程序。從緩沖區中取出編譯好的數據,進(jìn)行計算并控制加工。這種加工方法的優(yōu)點(diǎn)是加工速度快、效率高;缺點(diǎn)是編譯與加工之間存在時(shí)間間隔。

3改進(jìn)的數據處理方法

3。1資源重疊漉水處理的解釋方法

針對傳統方法的缺點(diǎn),對傳統的解釋控制進(jìn)行改進(jìn),即資源重疊流水處理的解釋控制方法。時(shí)間重疊是流水處理的關(guān)鍵。它不僅是CNC裝置處在NC工作方式時(shí),程序輸入、譯碼、插補和位控加工四個(gè)處理過(guò)程的時(shí)間資源重疊,而且譯碼過(guò)程所包含的各子過(guò)程,即程序裝入、語(yǔ)法檢查、解釋和刀具補償四個(gè)子過(guò)程之間也運用了時(shí)間資源重疊。

在NC工作方式下。若用t1、t2、t3、t4分別表示程序輸入、譯碼、插補和位控加工四個(gè)子過(guò)程的處理時(shí)間,則加工一個(gè)零件程序段的數據轉換時(shí)間將是t=tl+t2+t3+t4;在數據處理的譯碼過(guò)程中,tl、t2、t3、t4分別表示程序裝入、語(yǔ)法檢查、解釋和刀具補償四個(gè)子過(guò)程的處理時(shí)間,則數據處理的總時(shí)間將是t=t1+t2+t3+t4。如果以傳統的解釋方式順序處理,即第一個(gè)數據處理完后再處理第二個(gè)數據,則在兩個(gè)程序段的輸出之間將有一個(gè)時(shí)間長(cháng)度t的時(shí)間間隔,其時(shí)空關(guān)系如圖1(a)所示。這種時(shí)間間隔反映在電機上就是電機時(shí)轉時(shí)停,反映在刀具上就是刀具時(shí)走時(shí)停。不管這種時(shí)間間隔多么小,時(shí)走時(shí)停在數控加工中都是不允許的。

采用重疊流水處理技術(shù)可以消除這種間隔,重疊流水處理后的時(shí)間空間關(guān)系如圖1(b)所示。其關(guān)鍵是時(shí)間重疊,即在一段時(shí)間間隔內不是處理一個(gè)過(guò)程,而是處理兩個(gè)或更多的子過(guò)程。經(jīng)過(guò)時(shí)間重疊流水處理后,每個(gè)零件程序段的輸出之間、每個(gè)數據處理之間不再有間隔,從而保證電機轉動(dòng)和刀具移動(dòng)的連續性,加快數控加工的速度。

該方法節約了系統資源,有效防止了內存碎片的形成,適應大程序譯碼和復雜數據處理。

3。2目標碼編譯方法

目標碼編譯是執行一個(gè)零件的加工程序,只需在開(kāi)機后首次運行時(shí)進(jìn)行編譯,然后將得到的目標碼存放在RAM中,下次加工同樣的零件時(shí),無(wú)需再次對原零件程序進(jìn)行編譯,直接執行目標碼即可,從而減少了每次重新編譯所占用的時(shí)間。

3。3解釋一編譯方法

單純使用傳統的解釋方法或編譯方法都有不可避免的缺點(diǎn),解釋一編譯方法是將兩種方法相結合進(jìn)行數據處理的方法。在開(kāi)始加工前先開(kāi)辟一段內存作為緩沖區(根據具體情況分配),接著(zhù)一次性編譯若干程序段,直到緩沖區滿(mǎn)。然后,從緩沖區中取出已編譯好的程序段進(jìn)行加工處理。這里必須給加工處理完的程序置一標志,例如,定義一標志位bufflag,初始為False,程序加工處理完后置為T(mén)rue,則當所有程序的標志位都為T(mén)rue時(shí)清空緩沖區,繼續裝入下一批編譯的程序段。譯碼緩沖區在譯碼進(jìn)程初始化時(shí)被開(kāi)辟,在譯碼進(jìn)程被殺死時(shí)釋放。在譯碼緩沖區的生命期間,數據被不斷地寫(xiě)入、修改、讀出與清除。對于某一個(gè)緩沖區,它不斷地接收新的零件程序段,不斷地被各子進(jìn)程輪流處理。這種將大量加工程序分成若干程序段進(jìn)行編譯加工的方法,可有效減少編譯等待時(shí)間,增加加工效率。

4適用于制碼系統數據處理的新方法

上述幾種數據處理方法都有其不足,如資源重疊流水處理解釋方法只是縮短了進(jìn)程間的等待時(shí)間,其解釋階段不如目標碼編譯方法效率高,整個(gè)譯碼處理效率不如解釋一編譯方法;目標碼編譯方法只是優(yōu)化了編譯階段的數據處理;解釋一編譯方法結合解釋方法和編譯方法,提高了整體數據處理效率,但數據解釋送緩沖區階段不如資源重疊流水處理解釋方法效率高,緩沖區編譯階段又不如目標碼編譯方法效率高。

綜合分析上述各方法的優(yōu)缺點(diǎn),為制碼系統研究出一種更優(yōu)的數據處理方法。主要思想是:總體運用解釋一編譯方法,開(kāi)辟一段內存作為緩沖區,先一次性編譯若干代碼段存入緩沖區,直到緩沖區滿(mǎn)。然后,從緩沖區中取出已編譯好的代碼段進(jìn)行加工處理。而在一次性編譯若干代碼段中各條代碼時(shí),采用資源重疊流水處理的解釋方法進(jìn)行編譯處理。并且在編譯處理時(shí)綜合采用目標碼編譯方法,先判斷各標志位,如具有相同代碼段,就將該段相同代碼編譯后的目標碼存入RAM中,下次處理相同數據時(shí)直接調用RAM中的目標碼即可。其數據處理過(guò)程如下:

(1)定義緩沖區數據格式

根據零件標記碼的固定長(cháng)度分配一定內存空間作為緩沖區,需兩個(gè)一樣大小的緩沖區,一個(gè)用來(lái)存放若干程序殷(一個(gè)零件的6個(gè)標記碼);另一個(gè)用來(lái)存放譯碼結果。緩沖區的數據結構定義如下:

每個(gè)緩沖區設置6小塊緩沖區BUF0~BUF5,用來(lái)存放每個(gè)零件的6位標記碼,并置相應的bufflag為1;6塊緩沖區滿(mǎn)后,再依次進(jìn)行數據譯碼處理,處理結果放入另一緩沖區,同時(shí)置相應的bufflag為2;當6塊緩沖區全部準備好(bufflag為2),則進(jìn)行加工,加工完的標記碼所對應的緩沖區就置bufflag為O,繼續存放下一個(gè)零件標記碼。

(2)采用資源重疊流水處理的解釋方法進(jìn)行譯碼

①從第一個(gè)緩沖區取出第一個(gè)零件標記碼進(jìn)行編譯并將結果放入第二個(gè)緩沖區中,同時(shí)輸入第二個(gè)零件的標記碼。

②從第二個(gè)緩沖區中取出第一個(gè)零件的編譯結果對第一個(gè)零件進(jìn)行加工,這時(shí)編譯第二個(gè)零件的標記碼放入已空的第二個(gè)緩沖區中,同時(shí)輸入第三個(gè)零件的標記碼。

③第一個(gè)零件加工完畢,繼續加工第二個(gè)零件,并編譯第三個(gè)零件的標記碼,同時(shí)輸入第四個(gè)零件的標記碼。

采用重疊流水數據譯碼處理,直到加工完成整批零件。數據譯碼處理過(guò)程如圖2。

(3)編譯緩沖區的數據

數據編譯階段,即從第一個(gè)緩沖區取出數據進(jìn)行編譯的階段,編譯結果存入第二個(gè)緩沖區,采用目標碼編譯方法對數據進(jìn)行編譯。由于零件上標記碼是兩組對稱(chēng)的相同代碼且整批零件的代號相同,為了避免重復編譯相同代碼,在緩沖區格式中定義了兩個(gè)標志位accessorynuml和accessorynum2。accessorynuml是某個(gè)零件單獨標記碼編譯后的目標碼標志位,為0表示該碼還未編譯或已重復使用一次;為1表示已編譯存儲,且還未重復使用。accessorynum2是整批零件代號編譯后的目標碼標志位,為0表示還未編譯或已重復使用n次;為n表示第一次編譯存儲,且未重復使用;為i表示已重復使用了n-i次(n為整批零件數,i為1~n間的整數)。當acccssorynum1為1時(shí)說(shuō)明該零件單獨標記碼還要被使用,應先保存,下次使用時(shí)可以直接加工而無(wú)需再去編譯;由于加工零件是對稱(chēng)的。所以第二次加工就無(wú)需重新編譯而直接加工即可。當accessorynum2的值大于O小于n時(shí),說(shuō)明該代碼需保存。由于整批零件的代號相同,因此加工每個(gè)零件時(shí)都可以直接調用第一次編譯好的代號數據直接加工。通過(guò)accessorynum1和accessorynum2兩個(gè)標志位,可以加快數據編譯處理速度,有效提高數據處理的效率。

當一個(gè)零件加工完換下一個(gè)零件時(shí),繼續進(jìn)行下一個(gè)零件標記碼的數據處理,直到加工完整批零件。只有在輸入或編譯下一個(gè)零件,即需要占用兩緩沖區之一、而上一零件的編譯或加工還沒(méi)有處理完時(shí)需要等待,但這種等待是極其短暫的。

經(jīng)實(shí)驗可知,數控制碼系統中運用資源重疊流水解釋方法實(shí)現數據處理時(shí),一個(gè)零件的制碼時(shí)問(wèn)需要2。4s;運用解釋一編譯方法實(shí)現數據處理時(shí),需要2。3s;而運用這種新數據處理方法實(shí)現數據處理時(shí),只需要2。0s,比運用前兩種方法的教率分別提高了16。7%和13。04%,有效地提高了數控制碼的速度和效率,且使用至今一直很穩定。

這種新的數據處理方法適合大量有規律或程序段較短的數控程序的譯碼。它能節約系統資源,加快數據處理速度,且譯碼緩沖區是靜態(tài)分配的,可有效防止內存碎片的形成。該方法還能很好地利用Windows系統本身提供的基于線(xiàn)程的搶先式多任務(wù)機制。



關(guān)鍵詞: 方法 數據處理 系統 控制

評論


相關(guān)推薦

技術(shù)專(zhuān)區

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>