劉淵,張?zhí)旌?,田彥?/p>
(南京航空航天大學(xué) 江蘇省航空動(dòng)力系統(tǒng)重點(diǎn)實(shí)驗(yàn)室, 南京 210016)
基于DSP的扭矩-轉(zhuǎn)速?gòu)?fù)合信號(hào)模擬器設(shè)計(jì)*
劉淵,張?zhí)旌?,田彥?/p>
(南京航空航天大學(xué) 江蘇省航空動(dòng)力系統(tǒng)重點(diǎn)實(shí)驗(yàn)室, 南京 210016)
介紹一種基于DSP的發(fā)動(dòng)機(jī)控制器實(shí)物在回路仿真的扭矩-轉(zhuǎn)速?gòu)?fù)合信號(hào)模擬器,其將扭矩-轉(zhuǎn)速?gòu)?fù)合信號(hào)的一個(gè)周期信號(hào)分解為包含高-低-高-低4個(gè)時(shí)間段的2個(gè)脈沖,利用DSP的高速定時(shí)中斷精確控制每個(gè)脈沖的高低電平切換時(shí)刻;通過(guò)對(duì)輸出信號(hào)的精確測(cè)量,補(bǔ)償因中斷延遲造成的周期和相位的誤差;通過(guò)串口中斷接收模型計(jì)算機(jī)輸出的扭矩-轉(zhuǎn)速的特征參數(shù),將其存儲(chǔ)于定義的一種先進(jìn)先出緩沖區(qū)結(jié)構(gòu)體中,并在定時(shí)中斷中對(duì)特征時(shí)間參數(shù)進(jìn)行保護(hù)性更新。
DSP;扭矩-轉(zhuǎn)速模擬器;TMS320F28335;先進(jìn)先出緩沖區(qū)
對(duì)于航空渦軸、渦槳發(fā)動(dòng)機(jī),為了進(jìn)行扭矩和功率的匹配控制,會(huì)在其功率輸出軸上安裝一種扭矩-轉(zhuǎn)速?gòu)?fù)合信號(hào)傳感器。該傳感器的旋轉(zhuǎn)件是一個(gè)扭轉(zhuǎn)軸,扭轉(zhuǎn)軸在同一個(gè)截面上布置反映入口軸和出口軸扭轉(zhuǎn)角度大小的輪齒(一般有4個(gè)大致均勻錯(cuò)開(kāi)的齒,其中一對(duì)互成180°的齒對(duì)應(yīng)入口軸,另一對(duì)齒對(duì)應(yīng)出口軸),傳感器的靜止件是一個(gè)磁感探頭,當(dāng)扭轉(zhuǎn)軸旋轉(zhuǎn)時(shí),磁感探頭基于磁電感應(yīng)原理輸出感應(yīng)電動(dòng)勢(shì)信號(hào),該信號(hào)表征了扭矩-轉(zhuǎn)速?gòu)?fù)合信號(hào),即信號(hào)的脈沖頻率反映轉(zhuǎn)速大小,相鄰脈沖信號(hào)的相對(duì)相位的改變反映扭矩大小及其方向。在發(fā)動(dòng)機(jī)控制器實(shí)物回路仿真試驗(yàn)系統(tǒng)中,需要根據(jù)發(fā)動(dòng)機(jī)仿真模型的輸出,動(dòng)態(tài)地模擬輸出軸扭矩-轉(zhuǎn)速的信號(hào)變化,即需要?jiǎng)討B(tài)地模擬脈沖信號(hào)的頻率和相鄰脈沖信號(hào)相對(duì)相位的改變,從而構(gòu)成控制系統(tǒng)的閉環(huán)仿真回路,實(shí)現(xiàn)扭矩和功率的匹配控制。模擬的扭矩-轉(zhuǎn)速?gòu)?fù)合信號(hào)的頻率精度和相位精度將直接決定仿真系統(tǒng)的有效性和置信度。
目前,工程上針對(duì)扭矩-轉(zhuǎn)速信號(hào)模擬問(wèn)題,一般采用以下兩種方法:
① 縮比物理模擬,即使用扭矩縮比的扭矩-轉(zhuǎn)速傳感器,通過(guò)電機(jī)驅(qū)動(dòng)其旋轉(zhuǎn),并通過(guò)測(cè)功器等扭矩加載裝置產(chǎn)生扭矩;
② 基于微控制器的電子模擬,即使用2路頻率信號(hào)發(fā)生器,其中一路頻率信號(hào)以邊沿中斷和可編程的相位延遲觸發(fā)第二路頻率信號(hào),兩路頻率信號(hào)通過(guò)一個(gè)加法器合成電路得到扭矩-轉(zhuǎn)速?gòu)?fù)合信號(hào)。
方法①可提供扭矩縮比的復(fù)合信號(hào),信號(hào)特征與真實(shí)機(jī)載傳感器一致,但需要電機(jī)驅(qū)動(dòng)裝置和扭矩加載裝置,因此過(guò)于復(fù)雜且成本高,違背了硬件在線仿真的便利性原則,而且電機(jī)的轉(zhuǎn)速控制和扭矩加載的精度及實(shí)時(shí)性也難以保證。
方法②采用電子的方式進(jìn)行模擬,因需要2路頻率信號(hào)發(fā)生器和1個(gè)中斷接口而占用較多資源,且需要額外的合成電路,增大了信號(hào)模擬的復(fù)雜程度;由于采用邊沿中斷控制相位延遲大小,中斷延遲等因素會(huì)造成相位精度的誤差;因兩路頻率信號(hào)發(fā)生器的頻率更新不同步會(huì)導(dǎo)致更新點(diǎn)信號(hào)周期不完整,從而可能會(huì)導(dǎo)致控制器測(cè)量錯(cuò)誤。
因此,本文設(shè)計(jì)了一種簡(jiǎn)潔、精確的扭矩-轉(zhuǎn)速模擬器,其不需要額外的合成電路,節(jié)省了控制器的資源。通過(guò)對(duì)輸出信號(hào)的精確測(cè)量補(bǔ)償了因中斷延遲造成的周期和相位誤差,從而有效提高了信號(hào)模擬的精度。此外,該模擬器不存在兩路頻率信號(hào)發(fā)生器頻率更新不同步的問(wèn)題,而且在定時(shí)中斷中對(duì)特征時(shí)間參數(shù)進(jìn)行保護(hù)性更新,從而在保證扭矩-轉(zhuǎn)速?gòu)?fù)合信號(hào)模擬具有較好實(shí)時(shí)性的同時(shí),避免了更新不當(dāng)導(dǎo)致周期信號(hào)不完整的問(wèn)題。該模擬器的成功研制為航空發(fā)動(dòng)機(jī)數(shù)字控制系統(tǒng)的設(shè)計(jì)開(kāi)發(fā)提供了一定幫助,具有較高的工程價(jià)值。
航空發(fā)動(dòng)機(jī)扭矩-轉(zhuǎn)速?gòu)?fù)合信號(hào)模擬器系統(tǒng)原理框圖如圖1所示。扭矩-轉(zhuǎn)速?gòu)?fù)合信號(hào)模擬器首先通過(guò)串口中斷接收模型計(jì)算機(jī)輸出的扭矩-轉(zhuǎn)速的特征時(shí)間參數(shù),當(dāng)接收到一個(gè)完整數(shù)據(jù)幀后,再通過(guò)串口發(fā)送通信成功應(yīng)答消息,然后根據(jù)接收到的特征時(shí)間參數(shù)進(jìn)行數(shù)據(jù)處理,得到目標(biāo)方波信號(hào)的高低電平脈寬值,最后根據(jù)高低電平脈沖寬度,定時(shí)器中斷服務(wù)程序分別置相應(yīng)的端口為高電平和低電平,從而模擬出所需扭矩-轉(zhuǎn)速?gòu)?fù)合信號(hào)并提供給電子控制器。
圖1 系統(tǒng)原理框圖
扭矩-轉(zhuǎn)速模擬器硬件電路采用了核心板加底板架構(gòu),硬件結(jié)構(gòu)框圖如圖2所示。由于該模擬器是航空發(fā)動(dòng)機(jī)數(shù)控系統(tǒng)開(kāi)發(fā)中的一個(gè)重要工具,因此必須選擇運(yùn)算速度快速且可靠性高的處理器。模擬器選擇TI公司的TMS320F28335作為CPU,其具備強(qiáng)大數(shù)據(jù)處理能力和較高的運(yùn)行速度,并且擁有多個(gè)高精度定時(shí)器和多路SCI接口,可滿足定時(shí)和通信要求。模擬器的DSP核心板即為TMS320F28335的最小系統(tǒng),其外設(shè)都以插座的形式預(yù)留給底板。底板電路模塊具備兩路輸出通道,主要包括USB轉(zhuǎn)串口模塊及電平轉(zhuǎn)換模塊。
圖2 硬件結(jié)構(gòu)框圖
本系統(tǒng)的軟件流程如圖3所示。在程序運(yùn)行機(jī)制上,采用前后臺(tái)編程模式,讓后臺(tái)主流程運(yùn)行在一個(gè)無(wú)限循環(huán)當(dāng)中,中斷服務(wù)程序作為前臺(tái)程序運(yùn)行,這樣的運(yùn)行機(jī)制保證了重要中斷事件響應(yīng)速度快,提高了軟件的實(shí)時(shí)性。
圖3 系統(tǒng)軟件流程圖
圖4 輸出扭矩-轉(zhuǎn)速?gòu)?fù)合信號(hào)圖
輸出扭矩-轉(zhuǎn)速?gòu)?fù)合信號(hào)圖如圖4所示。圖中上方表示無(wú)扭矩時(shí)扭矩-轉(zhuǎn)速?gòu)?fù)合信號(hào)模擬器輸出的方波信號(hào),下方則表示相同轉(zhuǎn)速下扭矩偏轉(zhuǎn)角為θ時(shí)所輸出的方波信號(hào)。其中,T為功率輸出軸轉(zhuǎn)動(dòng)半圈時(shí)的方波周期,其反映了轉(zhuǎn)速大?。沪則為相對(duì)于無(wú)扭矩時(shí)的相位偏差,其反映了扭矩大小及方向。在一個(gè)周期信號(hào)內(nèi)包含高-低-高-低4個(gè)時(shí)間段的2個(gè)脈沖,脈沖的高電平周期為一個(gè)相對(duì)于T較小的固定值,低電平脈寬值分別為T1和T2。
3.1 數(shù)據(jù)通信及處理模塊設(shè)計(jì)
扭矩-轉(zhuǎn)速?gòu)?fù)合信號(hào)模擬器通過(guò)串口中斷接收模型計(jì)算機(jī)輸出的扭矩-轉(zhuǎn)速的特征時(shí)間參數(shù)T和ΔT,當(dāng)接收到一個(gè)完整數(shù)據(jù)幀后,通過(guò)串口發(fā)送通信成功應(yīng)答消息。為減少串口通信時(shí)CPU的開(kāi)銷,DSP的SCI支持16級(jí)接收FIFO,但由于扭矩-轉(zhuǎn)速?gòu)?fù)合模擬器在接收模型計(jì)算機(jī)發(fā)送的數(shù)據(jù)時(shí)需要對(duì)數(shù)據(jù)進(jìn)行驗(yàn)證,因此為保證接收數(shù)據(jù)的實(shí)時(shí)檢測(cè),僅使用一級(jí)FIFO,波特率為36 400。共7個(gè)字節(jié),以0x55、0xAA開(kāi)頭,接著是兩個(gè)字節(jié)的T和兩個(gè)字節(jié)的ΔT(低位在前,高位在后),最后為和校驗(yàn)。具體通信協(xié)議如下所示。
01234560x550xAATΔT校驗(yàn)字
區(qū)別于一般的SCI接收算法,本模擬器的軟件首先定義了一個(gè)先進(jìn)先出緩沖區(qū)結(jié)構(gòu)體,SCI接收到的數(shù)據(jù)最初均存儲(chǔ)于其中,在定時(shí)器1的作用下,每20 ms主流程根據(jù)緩沖區(qū)內(nèi)數(shù)據(jù)長(zhǎng)度及特征字,判斷出具有完整數(shù)據(jù)幀的最新有效特征時(shí)間參數(shù),提取該特征時(shí)間參數(shù)并清理緩沖區(qū)。這種方法保證了數(shù)據(jù)的完整性和更新的實(shí)時(shí)性。
在得到T和ΔT值后,還不能直接提供給定時(shí)器中斷服務(wù)程序,必須對(duì)數(shù)據(jù)進(jìn)行處理以得到低電平的周期,計(jì)算公式如下:
T1=T-2+ΔT
T1=T-2-ΔT
高電平脈寬值取一個(gè)相對(duì)于T較小的固定值,此處為100 μs。
3.2 模擬信號(hào)發(fā)生模塊設(shè)計(jì)
明確了方波信號(hào)的高低電平周期值后,將其提供給定時(shí)器0的中斷服務(wù)程序,通過(guò)switch語(yǔ)句對(duì)GPIO進(jìn)行交替置位,從而達(dá)到方波信號(hào)模擬的效果。此外,在定時(shí)器中斷內(nèi),利用兩個(gè)全局變量保護(hù)性更新同一個(gè)周期內(nèi)的兩個(gè)低電平特征時(shí)間參數(shù),防止在一個(gè)周期內(nèi)低電平周期被篡改,從而保證了方波信號(hào)每個(gè)周期的完整性與正確性。
具體程序如下:
interrupt voidcpu_timer0_isr(void){
switch(state1){
case0:
CpuTimer0Regs.PRD.all = 15000-360;
//設(shè)置高電平脈寬,中斷補(bǔ)償
CpuTimer0Regs.TCR.bit.TRB = 1;
//開(kāi)中斷
GPIO_High1; //GPIO口置高
state1=1; //狀態(tài)位置位
T1_box=T1; //數(shù)據(jù)保護(hù)
T2_box=T2;
break;
case1:
CpuTimer0Regs.PRD.all = T2_box-360;
//設(shè)置低電平脈寬,中斷補(bǔ)償
CpuTimer0Regs.TCR.bit.TRB = 1;
//開(kāi)中斷
GPIO_Low1; //GPIO口置低
state1=2; //狀態(tài)位置位
break;
case2:
CpuTimer0Regs.PRD.all = 15000-360;
//設(shè)置低電平脈寬,中斷補(bǔ)償
CpuTimer0Regs.TCR.bit.TRB = 1;
//開(kāi)中斷
GPIO_High1; //GPIO口置高
state1=3; //狀態(tài)位置位
break;
case3:
CpuTimer0Regs.PRD.all = T1_box-360;
//設(shè)置低電平脈寬,中斷補(bǔ)償
CpuTimer0Regs.TCR.bit.TRB = 1;
//開(kāi)中斷
GPIO_Low1; //GPIO口置低
state1=0; //狀態(tài)位重置
break;
default:
break;
}
PieCtrlRegs.PIEACK.all = PIEACK_GROUP1;
//關(guān)中斷
}
當(dāng)扭矩-轉(zhuǎn)速?gòu)?fù)合信號(hào)模擬器輸出模擬方波波形后,利用精密示波器測(cè)量輸出信號(hào)高低電平脈寬值,并將其與目標(biāo)值作比較,在定時(shí)器中斷程序中補(bǔ)償因中斷延遲造成的周期和相位的誤差。由于中斷延遲造成的周期和相位的誤差基本不變,因此只需補(bǔ)償一次。不同目標(biāo)值時(shí),補(bǔ)償前后的脈寬值如表1所列 。
Torque-speed Composite Signal Simulator Based on DSP
Liu Yuan,Zhang Tianhong,Tian Yanyun
(Jiangsu Province Key Laboratory of Aerospace Power System,Nanjing University of Aeronautics and Astronautics,Nanjing 210016, China)
Composite signal simulator of torque-speed used in aero engine controller based on DSP is introduced in this paper.The design decomposes the periodic signal of torque-speed composite signal into two pulses containing high-low-high-low four intervals,and it uses high-speed interrupt timer of DSP to precise control high and low switching time of each pulse.Through precise measurement of its output signals,periodic and phase error caused by interruption delay can also be compensated.The simulator receives characteristic parameters from model computer by serial interrupt,restores them into a defined FIFO structure and protectively updates the parameter of characteristic time in timer interruption.
DSP;torque-speed simulator;TMS320F28335;FIFO buffer
表1 補(bǔ)償前后脈寬值
南京航空航天大學(xué)研究生創(chuàng)新基地(實(shí)驗(yàn)室)開(kāi)放基金資助(kfjj201462),中央高?;究蒲袠I(yè)務(wù)費(fèi)專項(xiàng)資金資助。
TP216.8
A