胡叨福,王凡,趙科杰
(珠海格力電器股份有限公司,廣東珠海,519070)
磁懸浮軸承具有無機(jī)械接觸、無需潤滑油路系統(tǒng)等一系列優(yōu)點(diǎn),轉(zhuǎn)子可以實(shí)現(xiàn)無摩擦高速旋轉(zhuǎn),其轉(zhuǎn)速只受轉(zhuǎn)子材料強(qiáng)度的限制。這些優(yōu)點(diǎn)使磁懸浮軸承廣泛應(yīng)用于暖通壓縮機(jī)、軌道交通、航空航天、高精度主軸等領(lǐng)域。
磁懸浮軸承控制器是磁懸浮軸承系統(tǒng)的核心部分,其中位移信號采集系統(tǒng)又是磁懸浮軸承控制器的關(guān)鍵組成部分之一,控制器通過位移傳感器獲取轉(zhuǎn)子的位置信息,然后通過CPU進(jìn)行分析處理,輸出控制信號到功率放大器。磁懸浮軸承的各項基本性能,如剛度、阻尼、轉(zhuǎn)子懸浮精度和不平衡響應(yīng)都主要取決于它的控制性能。隨著智能化、數(shù)字集成化的發(fā)展,采用數(shù)字控制器是磁懸浮軸承系統(tǒng)發(fā)展的必然趨勢,大部分磁懸浮軸承的位移信號采集系統(tǒng)都由數(shù)字信號處理器來實(shí)現(xiàn)。
本文以項目中的主動磁懸浮軸承為研究對象,采用TI公司高性能DSP芯片TMS320F28335(以下稱F28335)作為控制器的CPU,以16位AD作為模擬數(shù)字轉(zhuǎn)換器,采用FIR濾波器對采集的信號進(jìn)行濾波處理,用VS2010編寫軟件接收并保存采集的數(shù)據(jù),以便對磁懸浮軸承的運(yùn)行數(shù)據(jù)進(jìn)行離線分析。
系統(tǒng)的硬件結(jié)構(gòu)如圖1所示,由信號采樣及預(yù)處理、模數(shù)轉(zhuǎn)換、DSP和上位機(jī)組成,由DSP采集的位移信號經(jīng)處理后可通過以太網(wǎng)通信發(fā)送給上位機(jī),上位機(jī)實(shí)現(xiàn)網(wǎng)絡(luò)接收、顯示程序,可實(shí)時顯示和保存DSP發(fā)送來的數(shù)據(jù)。
圖1 采集系統(tǒng)總體結(jié)構(gòu)框圖
AD976是AD公司的一種高速、低功耗、單通道同步采樣轉(zhuǎn)換,單+5V供電的16位高速并行接口的高性能模數(shù)轉(zhuǎn)換器,內(nèi)部集成2.5V基準(zhǔn)電壓源、高速并行接口和時鐘。它還有一個更重要的特點(diǎn)就是它的模擬信號輸入范圍為-10V到+10V,這是其他很多AD轉(zhuǎn)換芯片所不能及的。REF為外部參考電源輸入,AGND為REF的參考地,無論在是使用內(nèi)部或者外部參考電源,在REF和AGND之間都要跨接2.2μF的鉭電容;CS為片選信號,低電平有效[1]。
F28335是TI公司的一款用于控制的高性能、多功能、高性價比的32位浮點(diǎn)DSP,它具有豐富的IO口、數(shù)據(jù)、地址總線等外設(shè)接口資源[2],由于F28335的IO口電平為3.3V,AD976電平為5V,為提高電路可靠性,兩個芯片之間需要增加電平轉(zhuǎn)換芯片,具體連接原理圖如圖2所示。
圖2 F28335與AD976連接原理圖
本系統(tǒng)采用WIZnet公司的高性能以太網(wǎng)接口芯片W5500作為DSP與上位機(jī)之間的以太網(wǎng)通信橋梁,該芯片集成了硬件TCP/IP協(xié)議棧、以太網(wǎng)數(shù)據(jù)鏈路層和以太網(wǎng)物理層,支持TCP、UDP等協(xié)議[3],還集成了SPI(外設(shè)串行接口)通信接口,可與 F28335無縫對接,實(shí)現(xiàn)DSP與PC機(jī)之間的互聯(lián)網(wǎng)連接,具體通信原理圖如圖3所示。
圖3 F28335以太網(wǎng)通信電路
通過定時中斷能精準(zhǔn)控制AD采樣節(jié)拍,保證采樣頻率固定,AD976的初始化、開始采樣和數(shù)據(jù)讀取均用軟件實(shí)現(xiàn),部分功能程序如下:
void StartSample(void) //啟動AD
{
ADCS=0;
ADRC=0;
delay_ns(t1) ;
while(!ADBUSY);
delay_ns(t2) ;
ADRC=1;
}
void ReadData(void) //讀取數(shù)據(jù)
{
ADRC=1;
ADCS=0;
result=ptrChannel;
}
由于轉(zhuǎn)子位移信號的準(zhǔn)確性在磁懸浮軸承系統(tǒng)中作用非常關(guān)鍵,由于磁懸浮軸承工作在強(qiáng)磁場環(huán)境,采集系統(tǒng)的濾波性能占有非常重要的地位,目前,數(shù)字濾波器是數(shù)字信號處理的常用方法,在下位機(jī)反饋數(shù)據(jù)給上位機(jī)之前,利用數(shù)字濾波器對采集的數(shù)據(jù)進(jìn)行濾波處理,用DSP芯片實(shí)現(xiàn)數(shù)字濾波具有運(yùn)算速度快、穩(wěn)定性好、移植方便等優(yōu)點(diǎn),在程序中通過修改濾波器的相關(guān)系數(shù)可十分方便地改變?yōu)V波器的帶寬、截止頻率等特性。本系統(tǒng)采用有限沖激響應(yīng)(FIR)濾波器,其獨(dú)特的優(yōu)點(diǎn)為:FIR系統(tǒng)只有零點(diǎn),系統(tǒng)總是穩(wěn)定的,另外容易實(shí)現(xiàn)線性相位和允許實(shí)現(xiàn)多通道濾波。FIR濾波器的一個主要特征就是其單位沖激響應(yīng)是有限長的,令x[n]表示時刻n的輸入信號,則n時刻的輸出信號y[n]可以表示為:
其中hi和h[i]等價,即hi=h[i](i= 0 ,1,2,???,N)是濾波器的系數(shù)[5]。
實(shí)際中可采用MATLAB的數(shù)字信號處理軟件包提供的專用函數(shù)來直接計算FIR濾波器系數(shù),也可通過MATLAB工具箱中的FDATool(Filter Design&Analysis Tool)生成相應(yīng)的濾波器系數(shù)[4],本設(shè)計采用FDATool生成的系數(shù)頭文件不要做任何修即可加載到DSP的工程中實(shí)現(xiàn)濾波效果,圖4為DSP對所采集混合信號濾波前后的波形,從圖中可明顯看出所設(shè)計的濾波器有很好的濾波效果。
本文采用VS2010設(shè)計了基于TCP/IP協(xié)議的上位機(jī)界面,使用C#編寫通信及數(shù)據(jù)實(shí)時顯示程序,使用Socket接口與下位機(jī)進(jìn)行以太網(wǎng)連接,在上位機(jī)界面里輸入IP地址和端口號完成與下位機(jī)的匹配連接,部分程序如下:
//建立基于TCP/IP協(xié)議的套接字
SocketClient = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
//識別輸入的IP地址
IPAddress ip = IPAddress.Parse(txtClientIP.Text.Trim());
//將IP地址和端口號映射到endPoint
IPEndPoint endPoint = new IPEndPoint(ip,int.Parse(txtClientPort.Text));
//將套接字連接到endPoint上
SocketClient.Connect(endPoint);
//保留10像素環(huán)繞控件的外部邊緣
zedGraphControlV.Location = new Point(10, 10);
//建立采集數(shù)據(jù)鏈表
PointPairList listPrecisionFX1 = new PointPairList();
//采集緩沖區(qū)
List<double> tempPrecisionFX1 = new List<double>();
//FX1位移曲線顯示
LineItem myCurveFX1 = myPane.AddCurve(“FX_Accu”, listPrecisionFX1, Color.Red, SymbolType.Circle);
控制器作為服務(wù)器,上位機(jī)作為客戶端,建立使用TCP/IP協(xié)議的套接字,用戶通過界面輸入服務(wù)器的IP和端口號, SocketClient.Connect(endPoint)用來建立與服務(wù)器的鏈接,使用zedGraph進(jìn)行波形繪制,通過PointPairList()建立不同的波形繪制窗口,通過myPane.AddCurve()實(shí)現(xiàn)波形數(shù)據(jù)實(shí)時顯示,具體顯示效果如圖5所示。
圖5 VS界面顯示位移曲線效果
本文闡述了基于DSP和網(wǎng)絡(luò)通信的磁懸浮軸承位移信號采集系統(tǒng)設(shè)計與實(shí)現(xiàn),該系統(tǒng)可快速、有效采集轉(zhuǎn)軸在運(yùn)轉(zhuǎn)中的位置信號,實(shí)踐結(jié)果表明,該系統(tǒng)具有實(shí)時性高、抗干擾能力強(qiáng)、傳輸距離遠(yuǎn)等特性,滿足磁懸浮軸承的應(yīng)用要求。