徐明旭, 呼 燁, 鄒 青, 張 富, 朱曉翠
(吉林大學(xué) 機(jī)械科學(xué)與工程學(xué)院,吉林 長(zhǎng)春 130025)
?
運(yùn)動(dòng)控制技術(shù)實(shí)驗(yàn)教學(xué)平臺(tái)的開(kāi)發(fā)
徐明旭, 呼 燁, 鄒 青, 張 富, 朱曉翠
(吉林大學(xué) 機(jī)械科學(xué)與工程學(xué)院,吉林 長(zhǎng)春 130025)
運(yùn)動(dòng)控制是數(shù)控加工設(shè)備和電子控制設(shè)備的關(guān)鍵技術(shù),為滿足現(xiàn)有運(yùn)動(dòng)控制技術(shù)實(shí)驗(yàn)教學(xué)需求,以XY工作臺(tái)為主要結(jié)構(gòu),采用PC機(jī)+運(yùn)動(dòng)控制卡的控制模式,利用Visual C++ 2010開(kāi)發(fā)了運(yùn)動(dòng)控制技術(shù)實(shí)驗(yàn)教學(xué)平臺(tái)。該實(shí)驗(yàn)平臺(tái)可以完成“直流伺服電機(jī)位置階躍響應(yīng)”、“二維插補(bǔ)原理及實(shí)現(xiàn)”、“單軸電機(jī)運(yùn)動(dòng)控制”等實(shí)驗(yàn)。本實(shí)驗(yàn)系統(tǒng)采用了模塊化設(shè)計(jì)思想和工業(yè)化制造標(biāo)準(zhǔn),具有廣泛應(yīng)用前景。該實(shí)驗(yàn)教學(xué)平臺(tái)還為“卓越工程師教育培養(yǎng)計(jì)劃”班的學(xué)生,預(yù)留了開(kāi)發(fā)系統(tǒng)擴(kuò)展功能的數(shù)據(jù)接口,以便充分發(fā)揮精英人才的自主學(xué)習(xí)和開(kāi)拓創(chuàng)新能力。
運(yùn)控控制;XY工作臺(tái); 數(shù)控; 實(shí)驗(yàn)教學(xué)
數(shù)控機(jī)床作為當(dāng)今制造業(yè)廣泛使用的高科技產(chǎn)品,已成為本科實(shí)踐教學(xué)環(huán)節(jié)不可缺少的一部分。數(shù)控技術(shù)集成了多個(gè)學(xué)科和專業(yè)的知識(shí),如精密/超精密加工、自動(dòng)控制、數(shù)字電路、氣壓與液壓傳動(dòng)、機(jī)械設(shè)計(jì)以及電力電子等[1]。針對(duì)機(jī)械類專業(yè)的實(shí)踐教學(xué),大部分院校開(kāi)設(shè)了金工實(shí)習(xí)、CAD/CAM綜合實(shí)驗(yàn)、數(shù)控加工與編程等實(shí)驗(yàn)課程, 不難看出,其側(cè)重于機(jī)械設(shè)計(jì)、機(jī)械加工本身。另外,在機(jī)械類專業(yè)中也開(kāi)設(shè)了單片機(jī)原理、微機(jī)控制、控制原理等大量非機(jī)械類課程, 但它們?cè)趯?shí)驗(yàn)教學(xué)上普遍缺乏有力的支撐;而且在實(shí)驗(yàn)內(nèi)容設(shè)計(jì)方面,往往只是針對(duì)某一門課程的一個(gè)知識(shí)點(diǎn)進(jìn)行實(shí)驗(yàn)驗(yàn)證[2]。這樣的實(shí)驗(yàn)教學(xué)效果是,學(xué)生只是掌握了每一門課程中知識(shí)點(diǎn),而沒(méi)有將所學(xué)的機(jī)械類課程與非機(jī)械類課程的知識(shí)點(diǎn)綜合起來(lái)。這樣培養(yǎng)出來(lái)的學(xué)生,每個(gè)知識(shí)點(diǎn)都掌握了,但是當(dāng)面對(duì)實(shí)際問(wèn)題時(shí),無(wú)法提供整體的解決方案。
為了滿足機(jī)械類相關(guān)專業(yè)對(duì)機(jī)械運(yùn)動(dòng)和控制實(shí)驗(yàn)教學(xué)的需求,國(guó)內(nèi)很多高校大都采用現(xiàn)有運(yùn)動(dòng)控制教學(xué)產(chǎn)品來(lái)組建實(shí)驗(yàn)平臺(tái)。目前,比較常見(jiàn)的運(yùn)動(dòng)控制教學(xué)產(chǎn)品有美國(guó)LEGO 公司的RCX[3-4]、固高科技(香港)有限公司開(kāi)發(fā)的GXYZ工作臺(tái)[5]、廣州雙龍公司的SL積木式機(jī)器人和上海廣茂達(dá)公司的能力風(fēng)暴智能機(jī)器人等。這些產(chǎn)品的共同特點(diǎn)是屏蔽了底層的硬件細(xì)節(jié)[3], 并對(duì)底層運(yùn)動(dòng)控制系統(tǒng)主要功能及數(shù)控G代碼編譯動(dòng)態(tài)庫(kù)進(jìn)行了封裝,很難在原有基礎(chǔ)上添加新的控制策略或擴(kuò)展新的功能,無(wú)法與我國(guó)高校機(jī)械類專業(yè)開(kāi)設(shè)的機(jī)電傳動(dòng)、單片機(jī)、數(shù)控技術(shù)、控制理論等課程的后續(xù)實(shí)踐環(huán)節(jié)緊密結(jié)合。
為此,我們根據(jù)運(yùn)動(dòng)控制實(shí)驗(yàn)教學(xué)需求,研發(fā)了一種運(yùn)動(dòng)控制技術(shù)實(shí)驗(yàn)教學(xué)平臺(tái)。該實(shí)驗(yàn)平臺(tái)可以完成“直流伺服電機(jī)位置階躍響應(yīng)實(shí)驗(yàn)”、“ 二維插補(bǔ)原理及實(shí)現(xiàn)”,“單軸電機(jī)運(yùn)動(dòng)控制”等實(shí)驗(yàn),同時(shí),還預(yù)留了開(kāi)發(fā)系統(tǒng)擴(kuò)展功能的數(shù)據(jù)接口,可以根據(jù)需要進(jìn)一步開(kāi)發(fā)和升級(jí)。
實(shí)驗(yàn)教學(xué)平臺(tái)采用滾珠絲杠傳動(dòng)的模塊化XY工作臺(tái),用于實(shí)現(xiàn)目標(biāo)軌跡和給定動(dòng)作[6]。工作臺(tái)的執(zhí)行裝置為交流伺服電機(jī),安裝在電機(jī)軸上的增量碼盤充當(dāng)位置傳感器,用于間接測(cè)量工作臺(tái)的移動(dòng)距離(見(jiàn)圖1)。
圖1 實(shí)驗(yàn)教學(xué)平臺(tái)機(jī)械結(jié)構(gòu)
為了演示數(shù)控機(jī)床的直線、圓弧插補(bǔ)原理,實(shí)時(shí)記錄工作臺(tái)的運(yùn)動(dòng)軌跡和動(dòng)作效果,同時(shí)工作臺(tái)上還安裝有繪圖板和筆架裝置,繪圖板可擦寫,筆架可以在程序的控制下抬起或落下,該動(dòng)作通過(guò)電磁鐵通、斷電來(lái)實(shí)現(xiàn),電磁鐵的通斷電信號(hào)由控制卡通過(guò)IO口給出。
2.1 硬件設(shè)計(jì)
該控制系統(tǒng)以PC機(jī)、運(yùn)動(dòng)控制卡和信號(hào)輸入/輸出卡為基礎(chǔ),構(gòu)建實(shí)驗(yàn)教學(xué)控制系統(tǒng)平臺(tái)。該數(shù)控系統(tǒng)的硬件結(jié)構(gòu)組成如圖2所示,運(yùn)動(dòng)控制卡與PC 機(jī)通過(guò)PCI 接口連接,形成PC+運(yùn)動(dòng)控制卡雙CPU 控制模式[7-9]。
圖2 數(shù)控系統(tǒng)硬件結(jié)構(gòu)組成圖
PC 機(jī)主要負(fù)責(zé)人機(jī)交互、實(shí)時(shí)顯示、參數(shù)設(shè)置和發(fā)送指令等系統(tǒng)管理工作,運(yùn)動(dòng)控制卡上專用CPU 負(fù)責(zé)對(duì)x、y軸兩個(gè)運(yùn)動(dòng)方向步進(jìn)電機(jī)的控制,接受PC機(jī)CPU的指令,處理所有運(yùn)動(dòng)控制的細(xì)節(jié),例如:加減速計(jì)算、行程控制、多軸插補(bǔ)、脈沖和方向信號(hào)的輸出等運(yùn)動(dòng)控制,實(shí)現(xiàn)實(shí)驗(yàn)教學(xué)平臺(tái)的運(yùn)動(dòng)控制。信號(hào)輸入/輸出卡主要用于筆架升降裝置的開(kāi)關(guān)控制,同時(shí)完成對(duì)系統(tǒng)的輸出狀態(tài)、XY工作臺(tái)的運(yùn)動(dòng)位置、電氣開(kāi)關(guān)狀態(tài)、原點(diǎn)和限位開(kāi)關(guān)等信號(hào)的檢測(cè);另一方面,將這些信號(hào)及時(shí)反饋給PC機(jī),以完成實(shí)驗(yàn)教學(xué)平臺(tái)控制系統(tǒng)的各種實(shí)時(shí)控制任務(wù)。
2.2 軟件設(shè)計(jì)
該實(shí)驗(yàn)教學(xué)平臺(tái)控制軟件以Visual C++ 2010作為開(kāi)發(fā)工具,采用面向?qū)ο蠛湍K化思想進(jìn)行開(kāi)發(fā)。根據(jù)該實(shí)驗(yàn)平臺(tái)的實(shí)際需求,該軟件適用于多個(gè)實(shí)驗(yàn)內(nèi)容,例如“直流伺服電機(jī)位置階躍響應(yīng)實(shí)驗(yàn)”、“二維插補(bǔ)原理及實(shí)現(xiàn)”、“單軸電機(jī)運(yùn)動(dòng)控制”等實(shí)驗(yàn)[10],同時(shí)為后續(xù)新實(shí)驗(yàn)的開(kāi)發(fā)提供數(shù)了據(jù)接口,軟件控制流程圖如圖3所示。
運(yùn)動(dòng)控制卡在軟件設(shè)計(jì)方面提供了運(yùn)動(dòng)控制DOS庫(kù)函數(shù),及適用于VC、VB、Delphi等Windows開(kāi)發(fā)環(huán)境下的DLL函數(shù)庫(kù),并且底層封裝了兩軸運(yùn)動(dòng)控制系統(tǒng)的主要功能及數(shù)控G代碼編譯動(dòng)態(tài)庫(kù),并可根據(jù)實(shí)際實(shí)驗(yàn)教學(xué)需求,動(dòng)態(tài)配置相關(guān)實(shí)驗(yàn)?zāi)K[11]。在實(shí)際軟件編程過(guò)程中,只需將這些函數(shù)庫(kù)添加到主函數(shù)的頭文件中,并把相應(yīng)的DLL函數(shù)庫(kù)添加到相應(yīng)的文件夾中,這樣可以根據(jù)需求來(lái)調(diào)用這些DLL函數(shù),極大地簡(jiǎn)化了編程過(guò)程和軟件結(jié)構(gòu)[12-13]。
另外,該軟件還提供了開(kāi)放式數(shù)據(jù)接口,學(xué)生可以根據(jù)各自實(shí)驗(yàn)要求,自主編程和開(kāi)發(fā)專用的運(yùn)動(dòng)控制實(shí)驗(yàn),讓學(xué)生了解軟件的底層細(xì)節(jié),真正掌握運(yùn)動(dòng)控制方面的相關(guān)知識(shí)。
圖3 控制軟件流程圖
2.3 控制系統(tǒng)人機(jī)界面設(shè)計(jì)
Visual C++ 2010提供了豐富的控件工具,極大地方便了人機(jī)界面設(shè)計(jì)。該控制系統(tǒng)人機(jī)界面設(shè)計(jì)的關(guān)鍵是控制代碼編寫及窗體設(shè)計(jì)。其中,控制代碼編寫主要是根據(jù)運(yùn)動(dòng)控制類型合理調(diào)用底層的DLL函數(shù),并將運(yùn)動(dòng)參數(shù)傳遞給DLL函數(shù),然后利用Visual C++ 2010編寫可視化圖形界面,實(shí)時(shí)顯示電機(jī)各運(yùn)動(dòng)參數(shù)(速度、加速度、位置)曲線,并通過(guò)坐標(biāo)映射實(shí)時(shí)顯示實(shí)際的運(yùn)動(dòng)軌跡[14]。窗體設(shè)計(jì)的核心是控件的合理選擇及控件事件的響應(yīng),在編寫控件事件的響應(yīng)時(shí),需合理調(diào)用運(yùn)動(dòng)控制卡為用戶提供的DLL函數(shù)庫(kù),以簡(jiǎn)化編程。
運(yùn)動(dòng)控制實(shí)驗(yàn)教學(xué)系統(tǒng)是一套集成的系統(tǒng),包含多個(gè)實(shí)驗(yàn)內(nèi)容,如圖4、5所示。其中,圖4為直流伺服電機(jī)實(shí)驗(yàn)界面,該界面可以完成“直流伺服電機(jī)位置階躍響應(yīng)實(shí)驗(yàn)”、 “單軸電機(jī)運(yùn)動(dòng)控制”等實(shí)驗(yàn)。在“直流伺服電機(jī)位置階躍響應(yīng)實(shí)驗(yàn)”中,通過(guò)設(shè)置PID參數(shù)和電機(jī)運(yùn)動(dòng)目標(biāo)位置,點(diǎn)擊“開(kāi)始”按鈕,電機(jī)開(kāi)始運(yùn)動(dòng),同時(shí)界面中實(shí)時(shí)繪制電機(jī)位置響應(yīng)曲線;根據(jù)所選擇的運(yùn)動(dòng)模式,通過(guò)合理設(shè)置加速度、速度、目標(biāo)位置等參數(shù),獲得相應(yīng)的實(shí)驗(yàn)結(jié)果,通過(guò)對(duì)實(shí)驗(yàn)結(jié)果的分析,得到不同實(shí)驗(yàn)參數(shù)對(duì)運(yùn)動(dòng)模式的影響規(guī)律。
圖4 直流伺服電機(jī)實(shí)驗(yàn)界面
圖5 二維插補(bǔ)實(shí)驗(yàn)界面
圖5為二維插補(bǔ)實(shí)驗(yàn)界面,可以完成“二維插補(bǔ)原理及實(shí)現(xiàn)”實(shí)驗(yàn),根據(jù)計(jì)算機(jī)圖形學(xué)原理,開(kāi)發(fā)了計(jì)算機(jī)屏幕仿真和實(shí)時(shí)動(dòng)態(tài)顯示模塊,可以在實(shí)際插補(bǔ)實(shí)驗(yàn)之前,通過(guò)設(shè)置起點(diǎn)和終點(diǎn)坐標(biāo)、加速度、合成速度、插補(bǔ)方式及x、y坐標(biāo)刻度,預(yù)先在計(jì)算機(jī)上對(duì)實(shí)際插補(bǔ)過(guò)程進(jìn)行仿真,以檢驗(yàn)插補(bǔ)過(guò)程的正確性。另外,通過(guò)控制筆架的起落及x、y軸運(yùn)動(dòng),在繪圖板上繪制插補(bǔ)軌跡,同時(shí),在計(jì)算機(jī)屏幕上實(shí)時(shí)顯示插補(bǔ)過(guò)程,使學(xué)生通過(guò)計(jì)算機(jī)屏幕觀察、監(jiān)控實(shí)際的插補(bǔ)過(guò)程,及時(shí)處理有可能發(fā)生的意外情況,讓學(xué)生更加真實(shí)、直觀地了解數(shù)控插補(bǔ)原理及實(shí)現(xiàn)方法。
該軟件除了可以完成上述實(shí)驗(yàn)以外,還為后續(xù)新實(shí)驗(yàn)的開(kāi)發(fā)提供了開(kāi)放的數(shù)據(jù)接口,例如后續(xù)還可以開(kāi)發(fā)“PID控制器的基本控制作用”、“數(shù)控代碼編程”等實(shí)驗(yàn)。
本文研究和開(kāi)發(fā)的運(yùn)動(dòng)控制技術(shù)實(shí)驗(yàn)教學(xué)平臺(tái)以XY工作臺(tái)為基礎(chǔ),采用PC機(jī)+運(yùn)動(dòng)控制卡的控制模式,控制方式靈活。通過(guò)人機(jī)界面實(shí)現(xiàn)對(duì)XY工作臺(tái)的控制,實(shí)時(shí)顯示電機(jī)的運(yùn)動(dòng)參數(shù)及XY工作臺(tái)的運(yùn)動(dòng)軌跡。實(shí)驗(yàn)教學(xué)平臺(tái)的系統(tǒng)硬件結(jié)構(gòu)簡(jiǎn)單,具有良好的可靠性和開(kāi)放性,具有一定的二次開(kāi)發(fā)功能。所開(kāi)發(fā)的控制軟件具有良好的人機(jī)交互界面及可移植性,便于教師和學(xué)生自主開(kāi)發(fā)不同功能的應(yīng)用程序。這些擴(kuò)展功能為“卓越工程師教育培養(yǎng)計(jì)劃”班級(jí)的學(xué)生創(chuàng)造了有利條件,有助于提高他們的自主學(xué)習(xí)能力及動(dòng)手實(shí)踐能力。
[1] 朱 勝,王 南.運(yùn)動(dòng)控制課程教學(xué)改革研究[J].教育,2013(7):50-51.
[2] 朱藝鋒,鄭 征,余發(fā)山,等.專業(yè)課程“運(yùn)動(dòng)控制系統(tǒng)”的課堂教學(xué)方法探析[J]. 實(shí)驗(yàn)室研究與探索,2013(11):374-377.
[3] 吳 鋼,何嶺松.簡(jiǎn)易運(yùn)動(dòng)控制實(shí)驗(yàn)教學(xué)平臺(tái)的設(shè)計(jì)[J]. 實(shí)驗(yàn)技術(shù)與管理,2007(7):79-85.
[4] 盧 梅,于曉紅,李 威,等.基于LEGO可編程控制器開(kāi)展機(jī)械創(chuàng)新設(shè)計(jì)的教學(xué)改革[J]. 實(shí)驗(yàn)技術(shù)與管理,2004(6):79-85.
[5] 高 煊,何廣平.基于VC++的四軸運(yùn)動(dòng)控制卡軟件系統(tǒng)開(kāi)發(fā)研究[J].機(jī)械制造與機(jī)床,2009(6):24-28.
[6] 朱曉明,徐 巖,趙曉麗,等.基于XY教學(xué)平臺(tái)的漢字書寫系統(tǒng)設(shè)計(jì)[J].實(shí)驗(yàn)室研究與探索, 2010,29(3):70-72.
[7] 邱潤(rùn)生,王惠榮.基于PC+運(yùn)動(dòng)控制卡的開(kāi)放式數(shù)控系統(tǒng)的研究[J].寧夏工程技術(shù), 2006,(4): 350-353.
[8] 蘇仔見(jiàn),倪 攀,許少倫.LabVIEW在運(yùn)動(dòng)控制系統(tǒng)實(shí)驗(yàn)平臺(tái)的應(yīng)用和實(shí)現(xiàn)[J]. 實(shí)驗(yàn)室研究與探索,2011,39(10):38-40.
[9] 胡學(xué)龍,張立新,董 震. 基于PC+運(yùn)動(dòng)控制卡的開(kāi)放式控制系統(tǒng)設(shè)計(jì)[J].農(nóng)業(yè)工程,2012(10):10-12.
[10] Ning Li. The Design and Study of MFC-based Motion Control System[J].Energy Procedia,2012(14):1754-1759.
[11] 王志偉.基于PC+運(yùn)動(dòng)控制卡的雕銑系統(tǒng)開(kāi)發(fā)及銑削仿真研究[D].南京:南京理工大學(xué),2011.
[12] 張 宏,李富平.基于PC+運(yùn)動(dòng)控制卡的開(kāi)放式數(shù)控系統(tǒng)的研究[J].機(jī)械設(shè)計(jì)與制造,2008(6): 171-172.
[13] 柳葉青,鄧振生,陳真誠(chéng),等.基于運(yùn)動(dòng)控制卡的控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].微計(jì)算機(jī)信息,2010(2-1):55-57.
[14] 趙有定,李 英.VC++數(shù)控插補(bǔ)可視化實(shí)現(xiàn)[J]. 機(jī)械工程師,2008(1):29-31.
Development of Motor Control Experiment Platform for Teaching
XUMing-xu,HUYe,ZOUQing,ZHANGFu,ZHUXiao-cui
(School of Mechanical Science and Engineering, Jilin University, Changchun 130025, China)
Motor control plays an important role in CNC machine and electronic controls. In order to meet the demand of experimental teaching of motor control, a platform for experimental teaching of motor control was developed by using Visual C++ 2010.XY-stage is a key part in the platform. The control mode of platform is PC + motion control card synthetic control. Three or more experiment courses can be done using the platform, such as position step response of DC servo motor, the theory and realization of two-dimensional interpolation and motion control of single motor. The system of experiment platform is a good example of modular design and modern manufacturing standards, and has broad applying prospect. Several data interface was reserved for further development of extended functions in the system for students in Excellent Engineer classes, and could arouse them independent learning and innovation.
motor control;XY-stage; numerical control; experiment teaching
2015-09-14
吉林省高等教育教學(xué)研究課題;吉林大學(xué)實(shí)驗(yàn)技術(shù)項(xiàng)目(409020720062)
徐明旭(1984-),男,河南周口人,碩士,助理工程師,從事數(shù)控技術(shù)、光學(xué)曲面加工研究。E-mail:xmx@jlu.edu.cn
TP 206+.1
A
1006-7167(2016)08-0079-03