- 相關(guān)推薦
RTLinux構(gòu)建的磁懸浮軸承控制器實(shí)驗(yàn)平臺
摘要:介紹了一種全新的基于PC機(jī)與RTLinux構(gòu)建的磁懸浮控制器實(shí)驗(yàn)平臺。與基于DSP構(gòu)建的控制平臺進(jìn)行比較,證明此平臺在成本、開發(fā)效率、性能等方面具有優(yōu)越性。最后介紹了新平臺的實(shí)際應(yīng)用情況。關(guān)鍵詞:RTLinux 磁懸浮軸承 飛輪 控制平臺
磁軸承(Magnetic Bearing,簡稱MB),又稱為磁懸浮軸承,是利用磁力作用將轉(zhuǎn)子懸浮于空中,使轉(zhuǎn)子與定子之間沒有機(jī)械接觸的一種新型、高性能軸承。與傳統(tǒng)的滾珠軸承、滑動軸承以及油膜軸承相比,磁軸承不存在機(jī)械接觸,轉(zhuǎn)子可以運(yùn)行到很高的轉(zhuǎn)速,具有機(jī)械磨損小、能耗低、噪聲小、壽命長、無需潤滑、無油污染等優(yōu)點(diǎn),特別適用于高速、真空、超凈等特殊環(huán)境中[1]。
隨著控制理論的發(fā)展以及對磁懸浮軸承系統(tǒng)性能要求的不斷提高,磁懸浮系統(tǒng)控制器需要實(shí)現(xiàn)的控制算法的復(fù)雜程度日漸加大。傳統(tǒng)的模擬控制器雖然具有成本低、速度快、性能穩(wěn)定、對PID控制算法適應(yīng)良好等優(yōu)點(diǎn),但卻難以滿足用戶日益增高的需求。于是數(shù)字控制成為磁軸系統(tǒng)控制的主流趨勢。(范文先生網(wǎng)www.gymyzhishaji.com收集整理)
在磁軸承系統(tǒng)控制中,普遍采用了基于DSP構(gòu)建的數(shù)控平臺。此平臺難以克服其硬件成本高、開發(fā)周期長、延續(xù)性差、對用戶軟硬件能力要求高等缺點(diǎn)。開發(fā)一種低成本、高效率、易開發(fā)、易維護(hù)的控制器實(shí)驗(yàn)平臺便成為迫切的需要。
基于PC機(jī)與RTLinux構(gòu)建的控制平臺恰恰能滿足這一需求,其強(qiáng)大的數(shù)值運(yùn)算與實(shí)時(shí)處理功能,為磁懸浮系統(tǒng)性能的提高提供了可靠的保障。事實(shí)上,國外已有將基于PC機(jī)一RTLinux構(gòu)建的控制平臺應(yīng)用于高階磁軸承控制器的成功實(shí)例[2]。
1 數(shù)字控制系統(tǒng)的硬件結(jié)構(gòu)簡介
一個(gè)典型的磁軸承數(shù)字控制系統(tǒng)結(jié)構(gòu)如圖1所示。圖中的電磁轉(zhuǎn)子與轉(zhuǎn)子屬機(jī)械裝置。傳感器采用清華大學(xué)機(jī)電與控制實(shí)驗(yàn)室自行研制的高精度、高穩(wěn)定度電渦流傳感器。功放采用大功率電流控制開關(guān)功放。系統(tǒng)工作時(shí),由傳感器檢測轉(zhuǎn)子各自由度位移信號,并由數(shù)字系統(tǒng)對此信號進(jìn)行采樣。位移信號與轉(zhuǎn)速信號作為控制器的輸入,控制算法對輸入信號進(jìn)行解算,得出控制信號;輸出的控制信號通過D/A轉(zhuǎn)換器輸出,控制功放輸出電流,此電流流過電磁鐵線圈使電磁鐵產(chǎn)生電磁力,實(shí)現(xiàn)轉(zhuǎn)子的懸浮。
2 DSP數(shù)控平臺
前一代實(shí)驗(yàn)室數(shù)控平臺為DSP平臺,采用TI的第三代浮點(diǎn)DSP即TMS320C32構(gòu)建。在采用DSP平臺進(jìn)行磁懸浮系統(tǒng)控制的過程中,筆者發(fā)現(xiàn)此平臺具有一些難以克服的缺點(diǎn):
(1) 資源有限影響性能。此DSP芯片為40MHz時(shí)鐘驅(qū)動,總線速度只有20MHz,且由于其提供的內(nèi)部存儲空間太。▋H有512字節(jié)),必須使用外部擴(kuò)展內(nèi)存,于是控制算法需要對外部存儲器頻繁地進(jìn)行訪問。在訪問外部存儲器時(shí),會頻繁地遇到流水線沖突,此時(shí)的運(yùn)算速度實(shí)際上會降為原先的1/4。這樣,有限的DSP運(yùn)算資源無法提供足夠的處理速度。實(shí)際使用時(shí)發(fā)現(xiàn),即使僅采用PID算法進(jìn)行控制,在控制通道中加上二階陷波器算法后,數(shù)據(jù)處理周期(包括完成一次A/D采樣、控制數(shù)據(jù)生成、D/A模擬輸出)也不得不降低。由此帶來的直接影響是控制器時(shí)間延遲的上升。若要實(shí)現(xiàn)更復(fù)雜的算法,則系統(tǒng)延遲會繼續(xù)增加。另外,512字節(jié)的片內(nèi)RAM也對程序的長度限制很大,雖然可以采用僅將中斷處理程序加載到片內(nèi)RAM,而其余程序放到擴(kuò)展RAM的方法來緩解。但是一旦程序長度進(jìn)一步增加,這種權(quán)宜的辦法也難以滿足需求,系統(tǒng)性能會進(jìn)步下降?傊,DSP有限的運(yùn)算資源與有限的存儲器資源對控制算法的實(shí)現(xiàn)造成了很大的影響。
(2) 不菲的軟硬件成本、人力成本、時(shí)間成本。雖然DSP技術(shù)也在快速發(fā)展,但DSP軟件要求有很強(qiáng)的匯編語言編程能力(DSP的C編譯器效率一直不高),硬件開發(fā)需要較高的硬件設(shè)計(jì)與調(diào)試水平,且由選型到最終實(shí)現(xiàn)控制平臺的功能,要經(jīng)歷一個(gè)比較長的周期。另外其更新?lián)Q代具備的向下兼容性并不強(qiáng),當(dāng)新版的DSP推出后,又要求一個(gè)與之適應(yīng)的全新的開發(fā)平臺的支持。一般而言,這樣的開發(fā)系統(tǒng)價(jià)格是非常昂貴的。而且,這樣的新開發(fā)平臺與前一代的軟硬件差異不小,再開發(fā)的人力成本與時(shí)間成本也很高。本實(shí)驗(yàn)室的DSP平臺由選型到成功應(yīng)用,楊作興博士在上邊的工作持續(xù)了兩年的時(shí)間。
(3) 基于DSP的軟件資源稀缺。DSP平臺上缺乏好的C編譯器(造成代碼的開發(fā)效率很低、代碼的可重用性并),沒有通用的操作系統(tǒng)(開發(fā)時(shí)必須自己編寫任務(wù)調(diào)度程序,難于實(shí)現(xiàn)多任務(wù)能力)。雖然國外有研究人員曾經(jīng)實(shí)現(xiàn)了DSP上的多任務(wù)調(diào)度磁懸浮軸承控制[3],但其針對的是某一型號的DSP硬件,并且代碼及相關(guān)資料難于獲取,難以形成標(biāo)準(zhǔn)、廣泛推廣。
3 PC機(jī)作為控制器實(shí)驗(yàn)平臺的優(yōu)越性
選擇PC機(jī)作為控制器實(shí)驗(yàn)平臺是考慮到它有如下的優(yōu)勢:
(1) 可以使用C語言進(jìn)行開發(fā),不必?fù)?dān)心效率問題(PC機(jī)平臺下優(yōu)秀的C編譯器可以達(dá)到匯編語言效率的90%以上)。程序具有移植性,不依賴于硬件。軟件的可重用性好,后續(xù)的開發(fā)工作不必從頭開始。
(2) 軟件資源豐富,尤其在RTLinux下,所需開發(fā)軟件均為免費(fèi)軟件,不存在軟件開發(fā)成本問題。能在圖形界面下進(jìn)行開發(fā),充分利用PC機(jī)平臺的開發(fā)優(yōu)勢。有強(qiáng)大的實(shí)時(shí)操作系統(tǒng)支持,可輕松實(shí)現(xiàn)多任務(wù)調(diào)度。通過多任務(wù)編程,能實(shí)時(shí)改變控制參數(shù)和控制算法,實(shí)時(shí)監(jiān)控控制器的輸入、輸出及內(nèi)部變量。
(3) A/D、D/A板卡可從專業(yè)廠商處獲取,價(jià)格不高,不需自行開發(fā),硬件平臺可以很快構(gòu)建完畢。且這一部分投資不會因PC機(jī)的升級而作廢。
(4) 易于實(shí)現(xiàn)網(wǎng)絡(luò)編程,必要時(shí)可通過局域網(wǎng)進(jìn)行遠(yuǎn)程監(jiān)控。
(5) 運(yùn)算速度以及實(shí)時(shí)性能隨PC機(jī)的升級而自然升級,升級成本低,性能提升迅速。
當(dāng)然,PC機(jī)平臺在體積、抗環(huán)境干擾的穩(wěn)定性上,相對DSP平臺有其劣勢。但是,就研究階段作為控制器實(shí)驗(yàn)平臺而言,它無疑是比DSP平臺更好的選擇。
4 軟件平臺選擇
軟件平臺的選取,應(yīng)對DOS、Windows及RTLinux進(jìn)行比較評估,最后確定選擇何種平臺。
圖5 采用PC機(jī)與RTLinux開發(fā)的控制平臺的基本結(jié)構(gòu)
由于磁懸浮軸承的控制要求很高的實(shí)時(shí)性,因而軟件平臺必須是實(shí)時(shí)平臺。這里先對實(shí)時(shí)系統(tǒng)進(jìn)行簡單的介紹。實(shí)時(shí)性是一個(gè)相對的概念,其標(biāo)準(zhǔn)常用“系統(tǒng)響應(yīng)時(shí)間”來衡量。對實(shí)時(shí)平臺的評估主要用到兩個(gè)指標(biāo),即“任務(wù)切換時(shí)間”、“中斷響應(yīng)時(shí)間”。
事實(shí)上,DOS在“中斷響應(yīng)時(shí)間”上無可挑剔,便考慮到其不具備任務(wù)調(diào)度能力(除非另行開發(fā)任務(wù)調(diào)度代碼),并且沒有圖形開發(fā)環(huán)境,將來軟件開發(fā)成本會很高,故不予考慮。
Windows為一多任務(wù)操作系統(tǒng),其多任務(wù)的特性不可避免地對其實(shí)時(shí)性造成不利影響。有相關(guān)資料表明,Winodws的中斷響應(yīng)時(shí)間會在幾百微秒到幾百毫秒的范圍內(nèi)波動。Windows下,系統(tǒng)在“任務(wù)切換時(shí)間”、“中斷響應(yīng)時(shí)間”方面,表現(xiàn)均很差。
RTLinux是一硬實(shí)時(shí)系統(tǒng),作為一新興的實(shí)時(shí)平臺,可從網(wǎng)上免費(fèi)獲取,并且基源碼是完全公開的。它是由美國新黑西哥理工學(xué)院開發(fā)的基于標(biāo)準(zhǔn)Linux的嵌入式操作系統(tǒng)。到目前為止,RTLinux已成功應(yīng)用于從航天飛機(jī)的空間數(shù)據(jù)采集、科學(xué)儀器測控到電影特技圖像處理等廣泛的應(yīng)用領(lǐng)域[4]。
RTLinux提供了一個(gè)精巧的實(shí)時(shí)內(nèi)核,并把標(biāo)準(zhǔn)的Linux核心作為實(shí)時(shí)核心的一個(gè)進(jìn)程,同用戶的實(shí)時(shí)進(jìn)程一起調(diào)度。這樣做的好處是好Linux的改動量最小,充分利用了Linux平臺現(xiàn)有的豐富的軟件資源。其系統(tǒng)結(jié)構(gòu)如圖2所示。
這樣的結(jié)構(gòu),一方面保證了它的穩(wěn)定性,另一方面由于它將實(shí)時(shí)進(jìn)程的優(yōu)先級設(shè)為高于標(biāo)準(zhǔn)的Linux進(jìn)程,從而保證了系統(tǒng)的實(shí)時(shí)性。并且RTLinux的實(shí)時(shí)特性與硬件密切相關(guān),只要硬件速度得到提升,它的實(shí)時(shí)特性將相應(yīng)提升。這就能保證充分發(fā)揮微機(jī)平臺硬件速度上的優(yōu)勢及硬件升級的便利性。
下面介紹如何對RTLinux的中斷響應(yīng)時(shí)間進(jìn)行測試。測試前將打印機(jī)并口的腳2與腳10(中斷腳)短接,測試程序每隔100μs在地址0X378上輸出0X03,用以在打印機(jī)并口腳2、3上獲得周期性的+5V觸發(fā)信號;腳2由低電平變?yōu)楦唠娖綍r(shí)會觸發(fā)中斷,編制中斷處理程序,在程序中將2、3腳上電平拉低,通過示波器觀察腳3上的周期信號即可知系統(tǒng)的中斷響應(yīng)時(shí)間。測試原理如圖3所示。在CPU為PIII800的PC機(jī)平臺上的實(shí)測表明,系統(tǒng)中斷響應(yīng)時(shí)間平均為5μs,最壞響應(yīng)時(shí)間小于10μs,完全能夠滿足磁軸承控制系統(tǒng)的實(shí)時(shí)要求。
5 控制平臺構(gòu)建
磁軸承各種數(shù)字控制算法的實(shí)現(xiàn)從根本上看要依賴于所使用的硬件平臺,因此要求其平臺具備強(qiáng)大的運(yùn)算能力與AD/DA吞吐能力。
PC機(jī)采用了PIII800 CPU,其強(qiáng)大的浮點(diǎn)運(yùn)算能力、高速的系統(tǒng)總線能很好滿足系統(tǒng)需求。A/D卡可以采用ISA總線,也可采用PCI總線與CPU交換數(shù)據(jù)。與ISA總線相比,PCI總線速度要高得多。所用PC機(jī)上的PCI總線為32位/33MHz,可提供每秒132M字節(jié)的突發(fā)(Burst)數(shù)據(jù)傳輸率。PCI2.1規(guī)范已定義了64位/66MHz的PCI總線標(biāo)準(zhǔn),因此未來可提供每秒512M字節(jié)的突發(fā)(Burst)數(shù)據(jù)傳輸率
。而ISA總線的時(shí)鐘頻率率是8MHz,最多實(shí)現(xiàn)0.5M字節(jié)左右的數(shù)據(jù)傳輸率。另外,與ISA總線比較,PCI總線增加了奇偶校驗(yàn)(PERR)、系統(tǒng)錯(cuò)(SERR)、從設(shè)備結(jié)束(STOP)等控制信號以及超時(shí)處理等可靠性措施,使數(shù)據(jù)傳輸?shù)目煽啃源鬄樵黾印?/p>
考慮到系統(tǒng)要求很高的數(shù)據(jù)吞吐能力,以盡量減少A/D采樣帶來的數(shù)據(jù)延遲,最終選取了商用高速PCI數(shù)采卡。此PCI卡采用ADS7819作為數(shù)據(jù)采集芯片,最大數(shù)采率可達(dá)800kHz,支持32路單端或16路差動模擬輸入,另配有16路開關(guān)量輸入,16路開關(guān)量輸出。磁懸浮控制系統(tǒng)要求5路傳感器信號采集,另外需要監(jiān)測轉(zhuǎn)子速度,此卡提供的硬件完全能夠滿足需求。而且,它在板上設(shè)置了4K的高速FIFO,具有專門的邏輯控制電路,采樣時(shí)可實(shí)現(xiàn)通道的自動切換。這樣就為編程時(shí)盡可能減少CPU對采樣的干預(yù),從而為CPU計(jì)算能力的充分利用提供了基礎(chǔ)。其結(jié)構(gòu)簡圖如圖4所示。
D/A部分選用了AD公司的高速D/A芯片AD7537,電流建立時(shí)間僅1.5μs。D/A板上共放置了5片AD7537,它們可同時(shí)進(jìn)行10路控制信號的D/A轉(zhuǎn)換輸出,能達(dá)到系統(tǒng)的速度要求。
基于以上選取的硬件,采用了PC機(jī)與RTLinux開發(fā)的控制平臺的基本結(jié)構(gòu)如圖5所示。
硬件選擇完畢之后,需進(jìn)行相應(yīng)的軟件編制以實(shí)現(xiàn)完整的控制谷倉中。文獻(xiàn)[1]中,美國維吉尼亞大學(xué)的Hilton提供了一整套的基于RTLinux的軟件解決方案——“RTiC”開發(fā)平臺。但“R-TiC”平臺的一些圖形功能會影響系統(tǒng)的運(yùn)行速度,同時(shí)考慮到系統(tǒng)的靈活性、高效性、安全性及對軟件代碼完全有效的控制,因而對軟件平臺進(jìn)行了完全自主的開發(fā)。
軟件在RTLinux下用C語言進(jìn)行開發(fā),主要完成以下幾個(gè)功能:(1)數(shù)據(jù)采集,采樣位移傳感器信號;(2)轉(zhuǎn)速監(jiān)測,監(jiān)測轉(zhuǎn)子轉(zhuǎn)速,向控制算法提供實(shí)時(shí)轉(zhuǎn)數(shù)據(jù);(3)算法實(shí)現(xiàn),完成位移與轉(zhuǎn)速數(shù)據(jù)到控制量的解算,實(shí)時(shí)生成控制量;(4)D/A輸出,控制D/A卡輸出電流控制量,驅(qū)動功放輸出控制電磁力。與之相適應(yīng)的軟件結(jié)構(gòu)如圖6所示。
6 平臺應(yīng)用
平臺搭建完成后,對系統(tǒng)性能進(jìn)行了評測。采用的方式如下:
令系統(tǒng)工作周期為10kHz,每一周期,PC機(jī)完成A/D采樣、數(shù)據(jù)處理、D/A輸出等功能。A/D、D/A部分所用時(shí)間是固定的(與所采用的硬件水平有關(guān)),控制算法所能利用的時(shí)間(即數(shù)據(jù)處理部分)可達(dá)50μs以上。在評測時(shí),數(shù)據(jù)處理代碼段循環(huán)進(jìn)行如下工作:計(jì)數(shù)器累加、浮點(diǎn)乘法運(yùn)算、譯碼并存儲結(jié)果到目的數(shù),循環(huán)次數(shù)可達(dá)3000次以上。此評測雖然簡單,卻很好地反映了系統(tǒng)對磁懸浮數(shù)字控制(需要進(jìn)行大量的譯碼與浮點(diǎn)乘法運(yùn)算)的優(yōu)越性能。
在隨后的實(shí)驗(yàn)中,使用此平臺對一力矩陀螺磁懸浮系統(tǒng)進(jìn)行了有效控制。PIII800強(qiáng)大的處理能力使復(fù)雜的控制算法得以輕松實(shí)現(xiàn),并最終使系統(tǒng)轉(zhuǎn)速超過了20000rpm。
本文介紹了基于PC機(jī)與RTLinux構(gòu)建的新一代磁懸浮系統(tǒng)數(shù)控平臺相對于DSP控制平臺的優(yōu)越性,并詳細(xì)說明了構(gòu)建此系統(tǒng)的情況。此平臺的成功構(gòu)建及實(shí)際投入使用,有力地推動了磁懸浮系統(tǒng)研究的深入開展,最終使力矩陀螺轉(zhuǎn)速超20000rpm的目標(biāo)得以順利實(shí)現(xiàn)。
【RTLinux構(gòu)建的磁懸浮軸承控制器實(shí)驗(yàn)平臺】相關(guān)文章:
論虛擬實(shí)驗(yàn)平臺構(gòu)建的必要性08-05
機(jī)械工程虛擬仿真實(shí)驗(yàn)平臺如何構(gòu)建論文07-21
構(gòu)建互動平臺 開啟交際窗口08-17
構(gòu)建服務(wù)平臺 打造和諧社區(qū)08-12
智能天線實(shí)驗(yàn)平臺研究08-06
用TestStand構(gòu)建通訊產(chǎn)品并行測試平臺08-06