翁運波,周驥平,李鷺揚
(揚州大學(xué) 機械工程學(xué)院,江蘇 揚州 225127)
模擬運動平臺[1]可以動態(tài)地提供所需的位置和姿態(tài)。在平臺運動過程中,要完成對平臺的運動控制,同時要對大量數(shù)據(jù)進行采集。對于大振幅、高頻率的往復(fù)運動,以往的模擬運動平臺都采用插補算法來實現(xiàn)控制,響應(yīng)速度不夠。另外,若以1 ms為周期對數(shù)據(jù)進行采集[2-4]時,同時要使多種類型數(shù)據(jù)的采集在時間上對應(yīng),如果單純地從硬件上來實現(xiàn),費用會很高。
本文利用ACR9000控制器的電子凸輪模式來實現(xiàn)運動平臺的控制。由于電子凸輪采用時基機制,精度高,響應(yīng)速度快[5],易于實現(xiàn)任意復(fù)雜的曲線運動。
模擬運動平臺控制軟件的客戶需求定義如下:要求完成對運動平臺位姿的手動調(diào)節(jié);運動平臺能夠完成大振幅、高頻率的往復(fù)運動;要求軟件能夠完成對計算數(shù)據(jù)的檢查、對工作空間的判斷,并自動生成執(zhí)行文件并執(zhí)行;能夠?qū)\動平臺運動時的位姿進行模擬。對于數(shù)據(jù)采集,要求能夠?qū)Σ杉ǖ劳瓿尚使δ?;要?個通道的模擬量數(shù)據(jù)和1個數(shù)字量數(shù)據(jù)采集,同時讀取運動平臺的位姿;要求在同一時間對這些數(shù)據(jù)進行采集,采集周期為1 ms。
在對系統(tǒng)的需求進行深入分析后,確定該軟件的主要模塊包括文件管理模塊、顯示模塊、設(shè)置模塊、操作模塊和調(diào)試模塊。運動平臺控制系統(tǒng)的總體結(jié)構(gòu)如圖1所示。
基于用戶需求定義及系統(tǒng)功能分析,采用面向?qū)ο蟮姆椒▽ο到y(tǒng)進行詳細設(shè)計。軟件的設(shè)計包括動作類、機構(gòu)計算類、控制類、定時器類、采集類設(shè)計及用戶交互界面設(shè)計,故在設(shè)計時分為動作類(CAct Class)、機構(gòu)計算類(CMach Para)、控制類(CAcr NCSysInf o)、定時器類(CMMTi mer)和采集類(CDc Data)。各類之間的關(guān)系如圖2所示。
圖1 運動平臺控制系統(tǒng)的總體結(jié)構(gòu)
動作類包含動作名稱、動作類型等參數(shù),具有完成獲取動作信息、起始角度設(shè)置、角度文件輸出等功能。機構(gòu)計算類包含機構(gòu)坐標、長度、角度等參數(shù),能夠完成機構(gòu)的正解和反解等計算??刂祁惏刂平涌诘刃畔?,完成檢查控制器是否連接、連接控制器、斷開與控制器連接、下載文件到控制器等功能。
圖2 各類設(shè)計之間的關(guān)系
ACR9000是Par ker最先進的獨立式運動控制器,可控制1軸~8軸。便利的接口型式和高效的通信能力使ACR9000具有很高的靈活性,可用在不同的高速高精度的自動化設(shè)備上。ACR9000裝有強大的運動功能,包括分段電子凸輪、先進的實時相電子齒輪裝置和高達8軸的線性插補等。
本控制軟件的控制對象為6軸聯(lián)動,這里設(shè)定虛擬軸為主軸,6個軸為從軸。在控制器里設(shè)定一個毫秒定時器,并將該定時器作為主軸。電子凸輪曲線可以采用多種描述方式,常用兩維表格分別描述主軸和從軸的值,也可以采用數(shù)學(xué)公式來描述,這里采用查詢電子凸輪表的方式實現(xiàn)。根據(jù)運動函數(shù),將運動軌跡離散化,并計算在每一個離散點處各軸電機要運動的距離,將這些數(shù)據(jù)生成電子凸輪表,使從軸跟隨主軸運動[6]。電子凸輪控制流程圖如圖3所示。
圖3 電子凸輪控制流程圖
由于對數(shù)據(jù)采集卡和編碼器數(shù)據(jù)的讀取需要在時間上對應(yīng),因此這里采用軟件觸發(fā)方式。同時,每次采集的數(shù)據(jù)較多,包括許多絕對值編碼器數(shù)據(jù),而編碼器數(shù)據(jù)通過串口讀取,花費時間較多,對定時精度影響較大。由于計算機從內(nèi)存中讀取數(shù)據(jù)比從設(shè)備端讀取數(shù)據(jù)的速度要快,因此對于絕對值編碼器數(shù)據(jù),在應(yīng)用程序的主框架程序中通過接口函數(shù)利用控制器本身的高精度定時器定時,每毫秒讀取一次并存放在計算機內(nèi)存中。然后利用Windows自帶的多媒體定時器timeset Event( )函數(shù)來設(shè)定以1 ms為周期進行數(shù)據(jù)采集。對于采集卡數(shù)據(jù)則可直接讀取。
由于對3個絕對值編碼器讀取的數(shù)據(jù)是對應(yīng)的桿長,并不是想要的模型角度,因此需要進行相應(yīng)的計算。但是,由于需要采集的數(shù)據(jù)較多,且采集周期較短,如果每采集完一次就計算一次,對采集周期影響較大。因此,本系統(tǒng)采用的方法是:先采集數(shù)據(jù),等全部數(shù)據(jù)采集完后,在數(shù)據(jù)輸出的時候再進行計算。
本系統(tǒng)測試環(huán)境由工控機、控制器、驅(qū)動器、電機等組成,其中絕對值編碼器的數(shù)據(jù)通過RS-485線由計算機讀取。控制系統(tǒng)框圖見圖4。
圖4 控制系統(tǒng)框圖
系統(tǒng)的測試包括單軸調(diào)試、多軸聯(lián)動調(diào)試、數(shù)據(jù)采集調(diào)試3個部分。單軸測試的目的主要是對單根軸的速度、位置和跟隨誤差進行測試。多軸聯(lián)動測試由用戶設(shè)定運動角度,經(jīng)計算機計算后控制電機運動,對各電機位置和平臺位置進行測量,若符合理論值則測試通過。數(shù)據(jù)采集調(diào)試分為對數(shù)據(jù)采集卡讀取的調(diào)試和對編碼器直接讀取的調(diào)試。對于模擬量采集卡的調(diào)試方法是:給定標準電壓,經(jīng)過放大器后,分別用本軟件和示波器對信號進行采集,若兩組數(shù)據(jù)一致則測試通過。對于經(jīng)過RS-485讀取的絕對編碼器數(shù)據(jù)進行測試,若其跟測量的電機實際位移一致則測試通過。
通過對系統(tǒng)的實際聯(lián)調(diào)測試[7],該模擬運動平臺控制軟件能夠很好地實現(xiàn)各部分功能,同時具有較強的實時性。由于采用了電子凸輪控制模式,可以實現(xiàn)各種復(fù)雜曲線運動,并且具有較好的動態(tài)特性。
[1]賀德馨.風洞天平[M].北京:國防工業(yè)出版社,2001.
[2]鄧福偉,劉振興,周恒.多通道數(shù)據(jù)采集系統(tǒng)的設(shè)計[J].微計算機信息,2008(9):148-150.
[3]梁志遠.多通道數(shù)據(jù)采集系統(tǒng)軟件設(shè)計[J].核電子學(xué)與探測技術(shù),2010,30(3):426-428.
[4]Li S,Luo J R,Wu Y C,et al.Continuous and real-ti me data acquisition embedded system for EAST [J].IEEE Transactions on Nuclear Science,2010,57(2):696-699.
[5]徐宏偉,王龍英,郝發(fā)義.電子凸輪在印刷機中應(yīng)用的前景展望[J].印刷雜志,2005(11):70-72.
[6]趙越錦.基于臺達運動控制型PLC電子凸輪功能的高速繞線機[J].伺服控制,2008(10):63-66.
[7]寧金星,盧京潮,閆建國.基于VC++的無人機飛控地面站軟件的開發(fā)[J].計算機測量與控制,2009,17(3):596.