www.久久久久|狼友网站av天堂|精品国产无码a片|一级av色欲av|91在线播放视频|亚洲无码主播在线|国产精品草久在线|明星AV网站在线|污污内射久久一区|婷婷综合视频网站

當前位置:首頁 > 嵌入式 > 嵌入式軟件
[導讀]基于Windows CE的數(shù)控軟件開發(fā)與實現(xiàn)

摘要:本文介紹了嵌入式Windows CE 系統(tǒng)在數(shù)控加工應(yīng)用領(lǐng)域的平臺定制,提出了在Windows CE 下的嵌入式數(shù)控加工系統(tǒng)的軟件架構(gòu),探討了嵌入式數(shù)控軟件主要功能模塊及其關(guān)鍵實現(xiàn)技術(shù)。

0 引言

傳統(tǒng)的數(shù)控系統(tǒng)是一種專用的、封閉體系結(jié)構(gòu)的CNC系統(tǒng)。各數(shù)控廠家出于商業(yè)利益的需要,在數(shù)控系統(tǒng)的設(shè)計上形成各自獨立的標準和體系,造成數(shù)控系統(tǒng)硬件平臺的專用性,軟件結(jié)構(gòu)的不可移植性。這種封閉型和單一性嚴重影響了數(shù)控技術(shù)的發(fā)展和普及。嵌入式設(shè)備及其操作系統(tǒng)的出現(xiàn),有利于打破現(xiàn)有數(shù)控系統(tǒng)的封閉性,形成開放式數(shù)控

系統(tǒng)設(shè)計模式。嵌入式系統(tǒng)的種類有很多,應(yīng)用較廣的有Windows CE、Linux等。WinCE 是一種為多種嵌入式系統(tǒng)和產(chǎn)品設(shè)計的緊湊、高效、可升級的操作系統(tǒng)。WinCE 采用標準模式,其最主要的特征是為有限的硬件資源提供了多線程、多任務(wù)和完全優(yōu)先級的計算環(huán)境 [1]。本文探討了在Windows CE系統(tǒng)下,如何開發(fā)高效穩(wěn)定的嵌入式數(shù)控系統(tǒng)。

1 Windows CE系統(tǒng)內(nèi)核的定制

嵌入式系統(tǒng)上應(yīng)用軟件的開發(fā)離不開底層系統(tǒng)的支持,Windows CE 系統(tǒng)下應(yīng)用程序架構(gòu)如圖1 所示。

 

 

圖1 Windows CE系統(tǒng)下應(yīng)用程序架構(gòu)

由于應(yīng)用環(huán)境的多樣性,需要對Windows CE 系統(tǒng)做不同的內(nèi)核定制??刹捎梦④浌镜腜latform. Builder 集成開發(fā)環(huán)境,針對數(shù)控加工應(yīng)用的特點,添加、刪除和修改某些系統(tǒng)模塊,包括添加串口通信支持,F(xiàn)AT 文件支持(以支持U 盤快速傳送G 代碼文件),ActiveSync 支持(與PC 宿主機的通信支持)等。此外,還應(yīng)將注冊表模式修改為HIVE 模式,以備掉電后將數(shù)據(jù)存放到FLASH 中保存。

2 嵌入式數(shù)控系統(tǒng)軟件結(jié)構(gòu)

采用模塊化設(shè)計有助于構(gòu)建清晰的程序框架,提高協(xié)同開發(fā)能力和編程效率,增強代碼的復用率。嵌入式數(shù)控系統(tǒng)軟件模塊劃分如圖2所示。

 

 

圖2 上/下位機軟件模塊劃分

數(shù)控系統(tǒng)使用者首先在PC 機上完成零件模型建立和編輯,生成加工代碼文件。然后將NC 代碼文件傳輸至嵌入式數(shù)控平臺。在嵌入式平臺上完成對NC 代碼的數(shù)據(jù)挖掘,提取數(shù)控加工信息并傳送至下位機處理器。下位控制器利用其高速運算的能力,完成插補運算和伺服電機控制。

Windows CE 系統(tǒng)在上位機運行。Windows CE 系統(tǒng)非強實時性系統(tǒng),因此實時性要求較高的任務(wù)(如刀補運算,插補運算),均放在下位機運行。而像人機交互這種實時性要求不高,但事件機制較復雜的任務(wù),則放在上位機實現(xiàn),以Windows CE 系統(tǒng)的內(nèi)核支持來降低交互式操作開發(fā)的難度。

3 主要功能模塊及其關(guān)鍵實現(xiàn)技術(shù)

3.1 人機界面模塊

人機界面模塊是用戶與數(shù)控加工平臺交互的接口。人機界面包括如下操作:加工代碼的編輯和保存;各種系統(tǒng)參數(shù)的設(shè)定;加工過程的同步動態(tài)仿真;獲取數(shù)控設(shè)備的位置,速度,故障信息,反饋給用戶;文件操作等。

Windows CE出于精簡內(nèi)核的需要,對傳統(tǒng)的WIN32 圖形庫改動較大,較多圖形類API被移除。在實際開發(fā)中為滿足圖形顯示需要,需要自寫繪圖函數(shù)。數(shù)控仿真用到的繪圖函數(shù)主要有:曲線繪圖類(圓弧,拋物線繪制)、繪圖區(qū)動態(tài)縮放、圖形的保存與重繪??蓪⒁陨虾瘮?shù)通過測試后封裝成庫,在主程序中調(diào)用。

3.2 加工指令編譯模塊

數(shù)控加工指令主要是由完成各種準備功能的G 代碼和輔助功能的M 代碼組成。譯碼器的作用是讀入已編輯好的數(shù)控代碼,對指令進行詞法和語法檢查,提取刀位特征,生成刀位文件,最終轉(zhuǎn)換為驅(qū)動加工模型運動的數(shù)據(jù)。譯碼的方式可分為兩類:解釋模式和編譯模式。

解釋模式:將G 代碼分割為若干小段,每段包括3-4行。以段為單位,解釋完本段G代碼后,隨即調(diào)用刀具補償模塊,完成刀具補償。之后把這段經(jīng)過處理的代碼發(fā)送下位機,進行插補控制。解釋模式具有簡單、易行的特點,能夠方便地在加工過程中動態(tài)插入指定代碼。其不足之處在于譯碼效率較低,代碼的串行發(fā)送又極大地限制了加工效率,而且人為地分割G 代碼也破壞了代碼原有的統(tǒng)一性。

編譯模式:預(yù)先對整個G代碼文件進行編譯,生成臨時代碼文件。之后將整個代碼文件發(fā)送到下位機。在下位機上調(diào)用刀具補償模塊,對代碼進行刀具補償。編譯模式能夠較好地解決固定循環(huán)指令,子程序以及各種跳轉(zhuǎn)指令的問題,維護代碼自身的統(tǒng)一性[2]。由于是統(tǒng)一編譯,統(tǒng)一執(zhí)行,加工效率也比解釋模式高,故譯碼器的設(shè)計上采用編譯模式。譯碼器的編譯流程如圖3 所示。

(1)詞法分析:掃描NC 程序,判別是否有不可識別字符。如果有,則給出錯誤信息。

 

 

圖 3 譯碼器編譯流程圖

(2)語法分析:規(guī)則與匹配的問題。針對數(shù)控程序特點,檢查輸入代碼合理性。若檢查出錯誤組合,則給出錯誤信息。若檢查出無效組合,則設(shè)定其無效。例如:F 指令只對G01,G02,G03有效,對G00 無效。

(3)語義分析和譯碼:設(shè)計一個加工信息類CDrawInfo,用于保存譯碼得到的數(shù)據(jù)。為了保存整個代碼信息,還需要設(shè)計一個鏈表類CListInfo。CDrawInfo 類的設(shè)計如下:

class CDrawInfo: public CObject{

public:

CDrawInfo();

virtual ~CDrawInfo();

UINT m_SerialNum; //加工序號

CPoint m_ptPrev; //前一點坐標

CPoint m_ptNext; //后一點坐標

CPoint m_ptCenter; //圓心坐標

UINT m_gcodeFun; //G 代碼類型

CDrawInfo& perator=(CDrawInfo&); //賦值運算符重載

};

譯碼程序執(zhí)行時,首先建立一個CDrawInfo 類的臨時對象drawtemp。而后逐行提取代碼的數(shù)據(jù)信息,并將其賦值到drawtemp 對象中。本行讀取完畢,再把drawtemp保存到鏈表CListInfo。CListInfo 的聲明如下:[!--empirenews.page--]

CList listinfo;

如此循環(huán)操作,直至所有的NC代碼都被提取出來并添加到鏈表listinfo中。

3.2 刀具補償模塊

單純經(jīng)過譯碼處理之后的加工代碼,并不能直接用作插補加工,還需要經(jīng)過刀具補償計算。刀具補償包括刀具長度補償和刀具半徑補償。刀具長度補償是為了使刀具頂端到達編程位置而進行的刀具位置補償。刀具半徑補償是因為數(shù)控加工代碼通常是按照刀具中心軌跡編輯的,但在實際加工中參與切削的是刀具的外緣,為此需要補償一個半徑值。

3.3 插補模塊

無論選用哪種控制芯片做插補器,插補的原理都是相同的。為滿足實時、動態(tài)輸出控制脈沖的需要,一般都是利用硬件定時器做定時中斷,中斷后即輸出控制脈沖。通過修改定時寄存器數(shù)值,即可改變輸出脈沖頻率,實現(xiàn)轉(zhuǎn)速控制。再通過對輸出脈沖個數(shù)的計數(shù),實現(xiàn)位移控制[3]。以橢圓插補為例,采用逐點比較插補法。該方法的核心是通過逐點地比較刀具與所需插補曲線的相對位置,確定刀具的坐標進給方向,從而加工出零件的輪廓[4]。插補循環(huán)包括如下四步:偏差判別、進給、新偏差計算和終點判別。

 

 

其中,r、t 為開關(guān)變量。r 為正負進給量判斷,只取1 或-1 值;t 為進給與否判斷,只取0或1。對于不同象限,進給方向及進給軸的選取都不一樣。通過設(shè)定進給開關(guān)量,即可控制插補點位置。單一象限內(nèi)插補運算較容易實現(xiàn)。對于多象限插補,需要在過象限時做特殊處理。相應(yīng)的算法處理如下:

(1)判斷起始點、終止點所在象限。

(2)結(jié)合轉(zhuǎn)向(順/逆時針),規(guī)劃進給路徑,即穿越象限編號。

(3)結(jié)合路徑中的象限編號,逐象限插補運算。

程序?qū)崿F(xiàn)部分源代碼如下:

//路徑規(guī)劃函數(shù)

bool CrossQuadrant(int quad_bgn, int quad_end, int direction, int x_s, int y_s, int x_e, int y_e,

int* pCrossQuad){

int CrossPart[5]; //穿越象限編號數(shù)組

…………

for(i=0;i<5;i++){ //初始化為-1

CrossPart[i]= -1; }

nCurPart= quad_bgn; //起始象限編號

if(nCurPart== quad_end){ //起始點、終止點在同一象限

if((nCurPart==0) || (nCurPart==2)){ //若在第1,3象限

if(fSlope_bgn>fSlope_end){ //斜率判斷

if(direction== ClkWs){ //這種情況下,只走過本象限

blnCross= FALSE; //置標志位

}}}

……..

else{ //起始點在不同象限

do{

j++;

if(direction== ClkWs){ //順時針

nCurPart--;}

else{ //逆時針

nCurPart++; }

if(nCurPart <0){ //若前一象限為第一象限,且順時針轉(zhuǎn)

nCurPart=3; } //則后一象限換為第四象限

if(nCurPart >3){ //若前一象限為第四象限,且逆時針轉(zhuǎn)

nCurPart=0; } //則后一象限換為第一象限

CrossPart[j]= nCurPart;

}while(nCurPart!= quad_end); }}

4 小結(jié)

本文介紹的嵌入式數(shù)控軟件已成功應(yīng)用于數(shù)控玻璃雕刻機系統(tǒng)中,現(xiàn)場生產(chǎn)試驗表明,系統(tǒng)運行效果良好。Windows CE嵌入式操作系統(tǒng)的出現(xiàn)為數(shù)控系統(tǒng)的應(yīng)用開辟了新的領(lǐng)域,但由此也帶來了軟件開發(fā)上的復雜性。在嵌入式數(shù)控系統(tǒng)軟件的開發(fā)過程中,必須針對數(shù)控加工的特點,對Windows CE 系統(tǒng)內(nèi)核進行裁減定制,同時結(jié)合嵌入式硬件的具體情況,對代碼進行合理優(yōu)化,減少內(nèi)存開支和不合理的CPU 占用,完成在嵌入式硬件上的編程。本論文在數(shù)控軟件結(jié)構(gòu)的合理構(gòu)建以及開發(fā)的關(guān)鍵實現(xiàn)技術(shù)上做了有益的探討。

本文作者創(chuàng)新點:在對數(shù)控平臺應(yīng)用進行Windows CE 系統(tǒng)定制的基礎(chǔ)上,提出了嵌入式數(shù)控開發(fā)的軟件架構(gòu)。并對傳統(tǒng)插補算法加以改進,解決插補數(shù)據(jù)過象限突變問題。本系統(tǒng)已成功應(yīng)用于作者所在數(shù)控實驗室的玻璃雕刻機中。與傳統(tǒng)雕刻系統(tǒng)相比,本系統(tǒng)能節(jié)省設(shè)備成本30%-40%,加工時間縮短20%左右,已累計產(chǎn)生經(jīng)濟效益數(shù)十萬元。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉