韓德東 付云忠 韓振宇 劉建康



【摘要】為了提高數(shù)控技術(shù)實(shí)踐課程的教學(xué)效果和學(xué)生的實(shí)踐動手能力,本文結(jié)合數(shù)控技術(shù)課程中的重要知識點(diǎn),開發(fā)了一種基于運(yùn)動控制卡的開放式數(shù)控教學(xué)實(shí)驗(yàn)平臺,并應(yīng)用在數(shù)控技術(shù)實(shí)踐課程教學(xué)中,取得了良好效果。
【關(guān)鍵詞】開放式數(shù)控 ?實(shí)驗(yàn)教學(xué) ?課程研究
【中圖分類號】G424.31 ? ? ? ? ? ? ? ? ? ? ? ?【文獻(xiàn)標(biāo)識碼】A ? ? ?【文章編號】2095-3089(2015)11-0048-03
The Development of an Open CNC Experimental Teaching Platform
HAN De-dong, FU Yun-zhong, HAN Zhen-yu, LIU Jian-kang
(Mechanical Manufacturing and Automation Department, Harbin Institute of Technology, Harbin 150001, China)
【Abstract】To improve the teaching effect of practical course of numerical control technology, and to promote practical ability of students, an open CNC experimental teaching platform based on motion control card was developed combining important knowledge points in the course of numerical control technology. The developed teaching platform was applied in the teaching of practical course of numerical control technology and achieved good effect.
【Keywords】open CNC; experimental teaching; curriculum research
引言
改革開放以來,我國制造業(yè)已經(jīng)取得了顯著的成就,但是仍然處于工業(yè)現(xiàn)代化的進(jìn)程中,與發(fā)達(dá)國家相比還有相當(dāng)大差距[1]。數(shù)控技術(shù)是現(xiàn)代制造業(yè)的核心技術(shù),是機(jī)械制造自動化的重要基礎(chǔ)技術(shù),數(shù)控機(jī)床的品種、水平和生產(chǎn)制造能力,直接反映一個國家工業(yè)的綜合實(shí)力。現(xiàn)階段我國國產(chǎn)數(shù)控機(jī)床基本以低檔經(jīng)濟(jì)型和中檔普及型數(shù)控機(jī)床為主,高檔數(shù)控機(jī)床市場份額的70%~80%、數(shù)控系統(tǒng)(普及型、高級型)的90%都被發(fā)達(dá)國家占領(lǐng)[2]。我國數(shù)控技術(shù)專業(yè)人才的缺乏是導(dǎo)致該現(xiàn)狀的主要原因之一,最新調(diào)查顯示,我國數(shù)控工程技術(shù)人才嚴(yán)重不足,尤其是專業(yè)知識層次較高并且具備一定動手能力的高級工程技術(shù)人才更顯緊缺[3]。
數(shù)控技術(shù)課程是本科教學(xué)中機(jī)械類專業(yè)必不可少的重要課程,是一門多學(xué)科交叉,涉及機(jī)械設(shè)計(jì)、機(jī)械制造、電工電子學(xué)、計(jì)算機(jī)程序設(shè)計(jì)、自動控制原理、力學(xué)等多門學(xué)科知識,是一門理論性和實(shí)踐性要求都很高的課程。其中數(shù)控技術(shù)實(shí)踐課對實(shí)現(xiàn)課程教學(xué)目標(biāo)起著重要的作用,是學(xué)生掌握數(shù)控機(jī)床基本操作技能,了解數(shù)控機(jī)床的基本機(jī)構(gòu)原理,熟悉現(xiàn)代CAD/CAM自動加工技術(shù)的應(yīng)用方法和基本流程的有效途徑。是培養(yǎng)學(xué)生理論聯(lián)系實(shí)際、分析問題和解決問題的能力,以及啟迪學(xué)生的創(chuàng)新思維、發(fā)掘其創(chuàng)新潛力的重要手段[3]。
由于數(shù)控技術(shù)課程的特殊性,目前本科學(xué)校對數(shù)控技術(shù)專業(yè)人才的培養(yǎng),普遍缺乏一個系統(tǒng)的、全面的培養(yǎng)方案,雖然很多高校對數(shù)控技術(shù)課程教學(xué)模式進(jìn)行了一系列改革和創(chuàng)新[4-7],但是僅僅停留在教學(xué)模式或授課方式的調(diào)整創(chuàng)新層面,對于具體的課程內(nèi)容規(guī)劃以及重要專業(yè)知識點(diǎn)如何在教學(xué)中體現(xiàn),相關(guān)的研究則非常少。
本文針對數(shù)控技術(shù)課程中數(shù)控機(jī)床本體結(jié)構(gòu)原理、電氣系統(tǒng)原理、控制系統(tǒng)原理、G代碼譯碼、插補(bǔ)原理、運(yùn)動控制、人機(jī)界面等重點(diǎn)知識點(diǎn)的講授問題,設(shè)計(jì)搭建了基于運(yùn)動控制卡的開放式數(shù)控系統(tǒng)實(shí)驗(yàn)平臺,編寫了相應(yīng)的教學(xué)用數(shù)控軟件系統(tǒng),并應(yīng)用在數(shù)控實(shí)踐課程教學(xué)中。
一、數(shù)控實(shí)驗(yàn)平臺硬件系統(tǒng)設(shè)計(jì)
1.機(jī)床本體結(jié)構(gòu)設(shè)計(jì)
傳統(tǒng)數(shù)控技術(shù)實(shí)驗(yàn)教學(xué)中,大多使用商業(yè)數(shù)控機(jī)床演示給學(xué)生看,但是商業(yè)數(shù)控機(jī)床機(jī)械結(jié)構(gòu)大都有保護(hù)外殼,學(xué)生無法觀看其內(nèi)部結(jié)構(gòu)組成,所以為了將數(shù)控機(jī)床機(jī)械結(jié)構(gòu)展現(xiàn)給學(xué)生,本文自行設(shè)計(jì)了數(shù)控機(jī)床的機(jī)械本體。學(xué)生可以從對機(jī)床機(jī)械本體的參觀和學(xué)習(xí)中,學(xué)習(xí)到數(shù)控機(jī)床坐標(biāo)系的設(shè)置、工作臺驅(qū)動原理、進(jìn)給軸限位和回原點(diǎn)原理等基礎(chǔ)知識。
數(shù)控實(shí)驗(yàn)平臺機(jī)床機(jī)械本體采用傳統(tǒng)三軸銑床結(jié)構(gòu),XY軸工作臺采用雙座標(biāo)工作臺,Z軸工作臺采用單軸工作臺,每個軸都對應(yīng)安裝了限位開關(guān)和原點(diǎn)開關(guān)。工作臺工作行程150mm,滾珠絲杠導(dǎo)程4mm。工作臺滾珠絲杠與伺服電機(jī)之間采用聯(lián)軸器連接。
2. 電氣系統(tǒng)設(shè)計(jì)
PC機(jī)和數(shù)控系統(tǒng)的結(jié)合使數(shù)控技術(shù)有了很大的發(fā)展,給數(shù)控系統(tǒng)提供了更多的軟件工具和硬件資源,目前基于PC的開放式數(shù)控系統(tǒng)的主流結(jié)構(gòu)形式主要有以下幾種:PC嵌入NC板卡、NC板卡嵌入PC、PC+SoftCNC。由于本實(shí)驗(yàn)平臺主要用于本科生和研究生的數(shù)控技術(shù)實(shí)驗(yàn)教學(xué),可以讓學(xué)生認(rèn)識并實(shí)際編程實(shí)現(xiàn)數(shù)控系統(tǒng)特定功能,所以開發(fā)的實(shí)驗(yàn)平臺復(fù)雜程度要易于教學(xué),還應(yīng)該保證平臺安全可靠防止學(xué)生在做實(shí)驗(yàn)時造成事故。結(jié)合這些因素,對上述三種結(jié)構(gòu)進(jìn)行了對比分析,認(rèn)為“NC板卡+PC”結(jié)構(gòu)更適合用來開發(fā)實(shí)驗(yàn)平臺,所以本文選用運(yùn)動控制卡和普通PC機(jī)來搭建實(shí)驗(yàn)平臺的控制系統(tǒng)。實(shí)驗(yàn)平臺電氣系統(tǒng)結(jié)構(gòu)如圖1所示。
圖1 電氣系統(tǒng)框架圖
通過實(shí)際對實(shí)驗(yàn)平臺電氣系統(tǒng)的接線練習(xí),學(xué)生可以真實(shí)地了解到數(shù)控系統(tǒng)的控制系統(tǒng)和電機(jī)驅(qū)動系統(tǒng)的結(jié)構(gòu)組成,從而對數(shù)控系統(tǒng)控制信號的產(chǎn)生到執(zhí)行這一過程有了一個直觀的認(rèn)識,同時鍛煉了學(xué)生的動手能力。
二、實(shí)驗(yàn)平臺數(shù)控系統(tǒng)軟件設(shè)計(jì)
傳統(tǒng)數(shù)控實(shí)驗(yàn)課程中,多使用校友或企業(yè)捐贈的老舊數(shù)控機(jī)床作為實(shí)驗(yàn)平臺,使用FANUC、西門子或華中數(shù)控等商業(yè)數(shù)控系統(tǒng),由于商業(yè)數(shù)控系統(tǒng)的封閉性,只能教學(xué)生學(xué)習(xí)怎樣使用數(shù)控系統(tǒng),而不能對數(shù)控系統(tǒng)底層的基本原理進(jìn)行實(shí)驗(yàn)教學(xué)。針對這一問題,本文開發(fā)了基于運(yùn)動控制卡的數(shù)控實(shí)驗(yàn)平臺控制系統(tǒng),從而使學(xué)生可以從源代碼級別學(xué)習(xí)了解數(shù)控系統(tǒng)程序原理,更加深刻地理解NC代碼譯碼、刀具補(bǔ)償、插補(bǔ)原理、運(yùn)動控制等數(shù)控系統(tǒng)課程的關(guān)鍵知識點(diǎn)。通過基本算法的編程實(shí)驗(yàn),培養(yǎng)學(xué)生的程序思維,在程序編寫中培養(yǎng)發(fā)現(xiàn)問題,解決問題的能力。
1. NC代碼譯碼模塊開發(fā)
NC代碼的譯碼是數(shù)控系統(tǒng)的關(guān)鍵技術(shù)之一,在NC代碼譯碼模塊中將涉及到譯碼方式、代碼格式、譯碼具體流程、錯誤診斷、刀具長度/半徑補(bǔ)償、機(jī)床坐標(biāo)系、系統(tǒng)參數(shù)等數(shù)控系統(tǒng)關(guān)鍵知識。本文以模塊的開放性為指導(dǎo)思想對該模塊進(jìn)行開發(fā),以便于學(xué)生理解和修改,使學(xué)生可以將新的G代碼指令、新的刀具補(bǔ)償算法等新功能添加到模塊中去,提高模塊的可維護(hù)性和升級性。
NC代碼的譯碼方式主要有兩種模式:解釋型和編譯型。解釋型譯碼模式實(shí)時地逐行翻譯、執(zhí)行G代碼,具體流程為譯碼器翻譯完成當(dāng)前行G代碼后將得到的刀具路徑信息送去執(zhí)行,然后再進(jìn)行下一條G代碼的譯碼,如圖2所示;編譯型譯碼模式譯碼器接受G代碼文件后,依次對其每一行進(jìn)行翻譯處理直到文件末尾,最后生成一系列執(zhí)行步,再經(jīng)刀具補(bǔ)償?shù)慕y(tǒng)一處理后,生成最終的一系列執(zhí)行步并傳遞給相應(yīng)模塊進(jìn)行執(zhí)行,如圖3所示。
圖2 解釋型譯碼模式
圖3 編譯型譯碼模式
解釋類型譯碼模式下,如果上一運(yùn)動段已執(zhí)行完畢,但是當(dāng)前段還停留在譯碼階段,則會破壞加工的連續(xù)性,這就要求系統(tǒng)必須有很強(qiáng)的實(shí)時性。編譯類型譯碼模式下,譯碼與任務(wù)執(zhí)行是兩個獨(dú)立的任務(wù),有明確的先后順序,所以譯碼是一個非實(shí)時的任務(wù),由于本文使用的運(yùn)動控制卡提供了連續(xù)插補(bǔ)功能,編譯型更適合本課題的譯碼任務(wù)。
譯碼模塊逐條讀取NC代碼文件,進(jìn)行信息提取,并將提取到的信息壓入緩存中,其信息提取流程圖如圖4所示。首先去掉當(dāng)前行的所有空格,并進(jìn)行大小寫字母轉(zhuǎn)化處理,從而得到格式統(tǒng)一的便于讀取的新代碼行,然后初始化信息存儲結(jié)構(gòu)體,為信息存儲做準(zhǔn)備。下一步是按順序讀取各個由地址符和地址值組成的功能字[4,2],首先讀取當(dāng)前行號,即“n”的讀取,行號讀取結(jié)束后,根據(jù)函數(shù)指針數(shù)組和字地址的ASCII碼值,調(diào)用對應(yīng)的讀取函數(shù),完成功能字的讀取,比如接下來的字母為“x”,則調(diào)用函數(shù)read_x()來讀取該功能字,如此按行號依次執(zhí)行,直到NC代碼文件末尾,將讀取信息存儲到block結(jié)構(gòu)體中,整個過程伴隨著錯誤診斷。
圖4 信息提取流程圖
2.刀具補(bǔ)償模塊開發(fā)
刀具半徑補(bǔ)償和長度補(bǔ)償功能不僅解決了使用不同的刀具加工同一工件、刀具磨損等問題,而且方便了按照工件坐標(biāo)系編制的NC程序的處理執(zhí)行,可以大大提高編程效率和加工效率,所以刀具補(bǔ)償功能是數(shù)控技術(shù)課程中的一個重要知識點(diǎn)。為了讓學(xué)生更好地理解刀具補(bǔ)償功能的基本原理和實(shí)現(xiàn)方法,本文開發(fā)了針對刀具半徑補(bǔ)償?shù)牡毒哐a(bǔ)償模塊。
對當(dāng)前運(yùn)動段進(jìn)行半徑補(bǔ)償時,需要用到下一運(yùn)動段的信息,二者共同決定了補(bǔ)償?shù)霓D(zhuǎn)接類型。如圖5所示,首先從隊(duì)列中提取相鄰兩個運(yùn)動段分別放入緩存器R1、R2中,刀補(bǔ)函數(shù)參考R2中運(yùn)動段對R1中當(dāng)前運(yùn)動段進(jìn)行刀補(bǔ)處理,根據(jù)轉(zhuǎn)接類型,求解轉(zhuǎn)接節(jié)點(diǎn)坐標(biāo),生成新的執(zhí)行步并壓入處理后隊(duì)列尾端,然后再將緩存器R2中的運(yùn)動段移入緩存器R1中,如此循環(huán)直到運(yùn)動段隊(duì)列末尾。
圖5 刀具半徑補(bǔ)償?shù)膶?shí)現(xiàn)方法
3.人機(jī)界面的開發(fā)
人機(jī)界面是將數(shù)控系統(tǒng)各個模塊連接起來的橋梁,是用戶與數(shù)控系統(tǒng)信息交互的窗口,是學(xué)生學(xué)習(xí)過程中感受最為直觀的模塊,為了鍛煉學(xué)生的編程能力,提高學(xué)生對課程的學(xué)習(xí)興趣,本文將數(shù)控系統(tǒng)各個模塊的程序接口都開放出來,使學(xué)生可以利用MFC等工具自行編寫人機(jī)界面,從而實(shí)現(xiàn)數(shù)控系統(tǒng)的控制。本文開發(fā)的人機(jī)界面如圖6所示。
圖6 數(shù)控系統(tǒng)人機(jī)界面
三、結(jié)語
本文緊密結(jié)合我國制造業(yè)在學(xué)校教學(xué)過程中的實(shí)際需要,對數(shù)控技術(shù)課程具體教學(xué)內(nèi)容在實(shí)踐課程中的體現(xiàn)方式進(jìn)行了研究,開發(fā)了基于運(yùn)動控制卡的數(shù)控系統(tǒng)實(shí)驗(yàn)教學(xué)平臺,不僅實(shí)現(xiàn)了教學(xué)模式的創(chuàng)新,更深入到教學(xué)內(nèi)容層面,將數(shù)控技術(shù)重要知識點(diǎn)在本文開發(fā)的實(shí)驗(yàn)平臺上實(shí)際展現(xiàn)出來,給學(xué)生創(chuàng)造了主動參與、自主協(xié)作、探索創(chuàng)新的機(jī)會,提高了學(xué)生的學(xué)習(xí)興趣,鍛煉了學(xué)生的動手、動腦的能力,取得了良好的教學(xué)效果。
參考文獻(xiàn):
[1] 盛斌, 魏方. 中國制造2025[J]. 中國海關(guān), 2014, 8: 053.
[2] 趙秋艷. 2014年數(shù)控機(jī)床需高端發(fā)力穩(wěn)固中端[J]. 裝備制造, 2014, 4: 048.
[3] 鄭德星. 高校本科數(shù)控技術(shù)教學(xué)改革探索[J]. 考試周刊, 2012 (46): 128-129.
[4] 張紹杰. 項(xiàng)目教學(xué)法在數(shù)控教學(xué)中的應(yīng)用[J]. 山東工業(yè)技術(shù), 2014, 18: 217.
[5] 黨寅生. 數(shù)控車一體化教學(xué)方法的應(yīng)用探討[J]. 中國機(jī)械, 2015 (2).
[6] 韓德東. 數(shù)控原理的網(wǎng)絡(luò)教學(xué)系統(tǒng)開發(fā)[J]. 實(shí)驗(yàn)室研究與探索, 2010, 7: 019.
[7] 韓德東, 付云忠, 韓振宇, 等. 基于開源數(shù)控系統(tǒng)的實(shí)驗(yàn)教學(xué)[J]. 課程教育研究, 2014 (33): 172-174.