肖東岳,李英堂,周 強,陳居現(xiàn)
(1.南陽理工學院,南陽 473004;2.中國科學院 近代物理研究所,蘭州 730000;3.山東省勝利油田 勝利發(fā)電廠,東營 257087)
應(yīng)用于工程領(lǐng)域的設(shè)備必須先經(jīng)過較長時間的各種工作模式的測試,以便及早發(fā)現(xiàn)設(shè)備故障,避免造成工程中的重大損失,本文針對將應(yīng)用于工程領(lǐng)域的多臺一體化步進電機,需要設(shè)計在實驗室環(huán)境下的自動化測試系統(tǒng),該測試系統(tǒng)需要滿足多設(shè)備、多模式、長時間、自動化的測試要求。
MATLAB軟件具有文本編程模式和GUI圖形化編程模式,編程方便,功能強大,雖然在矩陣計算和系統(tǒng)仿真中使用普遍,但在設(shè)備測試領(lǐng)域卻鮮有應(yīng)用,該軟件所具有的強大測試功能并未得到充分認識和發(fā)掘,本文嘗試將MATLAB軟件應(yīng)用于步進電機的測試系統(tǒng)中,構(gòu)建相應(yīng)的自動化測試系統(tǒng),完成測試任務(wù)。
步進電機作為一種重要的運動執(zhí)行機構(gòu)逐漸出現(xiàn)了與編碼器和控制器融合為一體化的形式,如圖1所示。其中,控制器為基于DSP的嵌入式控制裝置,通過串口控制,該一體化系統(tǒng)自身構(gòu)成了閉環(huán)控制系統(tǒng)。隨著系統(tǒng)的復雜化,出現(xiàn)故障的環(huán)節(jié)增加,所以測試工作變得更為重要。本文所測試的一體化步進電機,電機型號為FL110STH99-5504A,控制器型號為UIM24108,編碼器型號為HKT2510-201。
該一體化步進電機可以實現(xiàn)準確的位置控制功能,接口為RS232串行口,操作命令為簡潔的ASCII碼指令,使用方便。
圖1 一體化步進電機外形圖
為了構(gòu)建可同時測試4臺一體化步進電機的測試系統(tǒng),采用串口服務(wù)器E8008將4臺一體化步進電機連接到測試計算機上,見圖2所示。與測試計算機的接口為以太網(wǎng),在計算機中通過驅(qū)動軟件的映射,將出現(xiàn)4個新加入的串口,分別對應(yīng)于4臺一體化步進電機的驅(qū)動串口,可以發(fā)送命令和讀入電機的狀態(tài)信息。
串口服務(wù)器是一種將RS-232/422/485串行接口轉(zhuǎn)換為以太網(wǎng)接口的設(shè)備,它一端帶有8個串行口,可接RS-232或RS422或RS485,另外一端的以太網(wǎng)接口可以連接電腦等以太網(wǎng)設(shè)備,實現(xiàn)串行設(shè)備和以太網(wǎng)數(shù)據(jù)互相傳輸。
圖2 步進電機測試系統(tǒng)框圖
串行接口應(yīng)用廣泛,MATLAB也提供了一組用于串行通信的函數(shù)[5],能夠方便地與計算機外部的設(shè)備通過串行設(shè)備交換數(shù)據(jù),本項目正是采用串行通信的方式實現(xiàn)對步進電機的測試的。主要使用了MATLAB相關(guān)函數(shù)功能,通過串行通信實現(xiàn)對一體化步進電機的實時操作,一體化步進電機有一套完整的操作指令集可供使用。
圖3 測試軟件流程圖
MATLAB的編程方式由文本方式(Command Mode)和圖形用戶接口方式(Graphical User Interface:GUI)兩種主要的模式,前者編程快捷,后者操作直觀,本項目分別使用了這兩種方式開發(fā)了測試軟件。文本方式下的軟件流程圖如圖3所示,GUI方式下開發(fā)的操作界面如圖4所示。
本測試軟件根據(jù)設(shè)定的參數(shù)操作步進電機,使其按規(guī)定的方式運動,直到完成所設(shè)定的操作次數(shù)為止,如圖3所示的流程圖。
圖4 測試軟件的GUI界面
串口的一旦打開之后就一直被占用,在完成測試退出時必須關(guān)閉,否則下次不能打開。在MATLAB中有2個函數(shù)實現(xiàn)串口的關(guān)閉和刪除功能,分別是是fclose()和delete()函數(shù),在程序結(jié)束時最好先后調(diào)用這2個函數(shù)關(guān)閉并刪除相應(yīng)串口。
在MATLAB中還有時鐘函數(shù)clock,可以根據(jù)功能需要使用。
本文基于MATLAB構(gòu)建了針對多臺步進電機的測試系統(tǒng),完成了測試任務(wù),相應(yīng)工程經(jīng)驗表明基于MATLAB本測試系統(tǒng)具有如下優(yōu)點:
1)本測試系統(tǒng)整體方案簡潔,構(gòu)建靈活,快速。
2)本測試系統(tǒng)能對多臺設(shè)備進行長時間自動化測試,工作效率高。
3)基于MATLAB的測試系統(tǒng)具有文本編程方式和圖形化編程方式,便于滿足多種測試場合。
[1] 王益全, 張炳義.電機測試技術(shù)[M], 科學出版社, 2008.
[2] 武建文, 李德成.電機現(xiàn)代測試技術(shù)[M], 機械工業(yè)出版社, 2006.
[3] 施曉紅, 周佳.精通GUI圖形界面編程[M], 北京大學出版社, 2003.
[4] 王玲, 王正林, 毛濤濤, 等.精通MATLAB GUI設(shè)計(第2版) [M], 電子工業(yè)出版社, 2011.
[5] 趙云鵬.MATLAB串口通信在數(shù)據(jù)采集中的應(yīng)用[J], 微計算機信息, 2006, 22(1).
[6] 周黎, 楊世洪, 高曉東.步進電機控制系統(tǒng)建模及運行曲線仿真[J], 電機與控制學報.2011, 15(1).
[7] 李英堂, 顧逸東, 王連澤.旋成體飛艇艇體的MATLAB輔助設(shè)計工具箱[J], 科學技術(shù)與工程, 2010, (6).
[8] Rusu, C.Model based design controller for the stepper motor[C], IEEE International Conference on Automation,Quality and Testing, Robotics, 2008.AQTR 2008.May22-252008.Volume: 2: 175-179.
[9] Singh, P.LabVIEW-based cost effective Multi-Axis Motion Control System [C], 2011 Annual IEEE India Conference, Dec.16-182011: 1-5
[10] Sheng Yang.Position control system design based on LabVIEW[C], International Conference on Electric Information and Control Engineering (ICEICE), 2011.April 15-172011: 602 - 604