1? 引言
??? 數(shù)字信號處理器(Digital Signal Processor,簡稱DSP), 是一種適合于數(shù)字信號處理運算的微處理器,能夠實現(xiàn)實時快速的數(shù)字信號處理算法。通常,由一個以DSP為基礎的內核,配以測量控制所需的外圍功能電路,集成在單一芯片內,使芯片價格大大降低,體積縮小,結構緊湊,使用便捷,可靠性提高。因此,集成DSP芯片的多功能板是電機應用、勵磁脈沖控制系統(tǒng)、電力保護系統(tǒng)的理想選擇。本文采用了超拓工控的CS4U9813可編程智能多功能板作為伺服電機的控制器來實現(xiàn)汽車后輪轉向功能,該板集成有TI公司的高性能 DSP芯片TMS320F2812。
2? TMS320F2812的結構特點[1][4]
??? TMS320F2812是TI公司最新推出的目前市場上最先進、功能最強大的32位定點DSP芯片。它既具有數(shù)字信號處理能力,又具有強大的事件管理能力和嵌入式控制功能,特別適用于工業(yè)自動化、電機、馬達伺服控制系統(tǒng)。TMS320F2812芯片結構采用改進的程序與數(shù)據存儲分開的哈佛結構,8級流水線作業(yè),128位的密匙保護,幾乎所有指令都在6.67ns(150MHZ)內完成,高達1MB的外部存儲器接口,最多有56個獨立的可編程、多用途的輸入 /輸出(GPIO)引腳,是實現(xiàn)運動控制系統(tǒng)的最佳選擇。功能框圖如圖1所示,其主要性能如下:
圖1???? 功能框圖
(1) 高性能的32位中央處理器
l 主頻150MHZ(時鐘周期6.67ns),低功耗(核心低壓1.8V,I/O口3.3V)
l 16位×16位和32位×32位乘且累加操作以及16位×16位的兩個乘且累加
l 統(tǒng)一的寄存器編程模式,可達4M字的線性程序地址和數(shù)據地址
(2) 片內存儲器
l 8Kx16位的Flash存儲器
l 1Kx16位的OTP型只讀存儲器
l L0和L1:兩塊4Kx16位的單口隨機存儲器(SARAM)
l H一塊8Kx16位的單口隨機存儲器
l M0和M1:兩塊1Kx16位的單口隨機存儲器
(3) 時鐘與系統(tǒng)控制
l 支持動態(tài)的改變鎖相環(huán)的頻率(PLL)
l 片內振蕩器
l 看門狗定時器模塊
l CPU級和外設級中斷相結合的控制系統(tǒng)
(4) 豐富的外圍設備
l 兩個事件管理器(EVA、EVB)
l 串行外圍接口(SPI)
l 兩個串行通信接口(SCI),標準的UART
l 改進的控制器局域網絡(ECAN)
l 多通道緩沖串行接口(MCBSP)
l 16通道12位的數(shù)模轉換器(ADC)
3? 四輪轉向控制系統(tǒng)的實現(xiàn)
四輪轉向(Four-Wheel Steering,簡稱4WS) 系統(tǒng)是指車輛在轉向過程中,前后兩組四個車輪都能夠根據需要起轉向作用,能有效改善車輛的機動靈活性和操縱穩(wěn)定性,正在得到不斷發(fā)展和應用。4WS汽車在低速轉彎時,前后車輪逆相位轉向,可以減小車輛的轉彎半徑;在高速轉彎時,前后輪主要作同相位轉向,能夠減少車輛質心側偏角β,降低車輛橫擺率的穩(wěn)態(tài)超調量等,進一步提高車輛操縱穩(wěn)定性。
??? 本文搭建的四輪轉向平臺是由一個帶有渦輪蝸桿減速機構的直流伺服電機,電磁離合器和普通的前輪轉向機構組成。其中電機電源為DC12V,減速比設定10: 1(可調),電磁離合器電源:DC48V,實驗平臺如圖2所示??刂撇呗圆捎们梆伜头答佅嘟Y合的直接橫擺率閉環(huán)控制,其中由絕對式角位移傳感器采集前輪轉角信號;后輪轉角由精度較高的增量式光電編碼器得到;車速由五輪儀獲得;后輪轉向由直流伺服電機經過電磁離合器連接機械轉向機構實現(xiàn);ECU硬件電子系統(tǒng)核心由TMS320F2812構成,結構框圖如圖3所示:
圖2???? 實驗平臺
圖3???? 結構框圖
4? 控制系統(tǒng)硬件設計與仿真
??? 根據上文設計的控制策略,ECU單元要采集前輪轉角信號、后輪轉角信號、輪速信號并經過CPU運算輸出電機的驅動電壓,實現(xiàn)后輪自動轉向。本文用C語言編制程序來實現(xiàn)設計的控制算法,并在仿真器連接的情況下,在CCS(Code Compose Studio)環(huán)境下完成硬件在環(huán)仿真調試。CCS2000是TI公司針對TMS320C2000系列DSP提供了一套基于Windows的DSP集成開發(fā)環(huán)境,也是目前最優(yōu)秀的DSP開發(fā)軟件。在CCS環(huán)境下,可進行程序開發(fā)、調試、編譯、鏈接,支持匯編及C/C++進行軟件開發(fā),強大的調試工具如斷點、探針、剖析及圖形顯示等,并最終可以進行輸出目標文件的燒錄。
4.1? 前輪轉角信號采集
??? 前輪轉角由絕對式角位移傳感器得到,輸出電壓與前輪轉角成線性正比例關系,范圍0~12V。本文采用CS4U9806板的ADCHA0引腳采集,采樣外圍電路DSP芯片內部集成。此板單通道采樣時間200nS,輸入信號范圍可通過跳線選擇-5~+5V,0~10V,0~20V,默認-5~+5V。由于前輪轉角范圍有限,故跳線選擇0~10V,采樣頻率設為96HZ。部分程序設計過程如下:
AdcRegs.ADCMAXCONV.all=0x0002;
// 設置最大轉換通道寄存器為2; AdcRegs.ADCCHSELSEQ1.bit.CONV00 = 0x0;??
// 設置ADCHAO通道連續(xù)采樣3次;
AdcRegs.ADCCHSELSEQ1.bit.CONV01 = 0x0;
AdcRegs.ADCCHSELSEQ1.bit.CONV02 = 0x0;
EvaRegs.T2CMPR=0x0080;????
// 設置定時器2的比較寄存器;
EvaRegs.T2PR=0xFFFF;
// 設置定時器2的周期寄存器;
EvaRegs.GPTCONA.bit.T2TOADC=3;??
// 使能比較中斷來啟動采樣模塊;???
EvaRegs.T2CON.all=0x1442;?
// 使能比較單元,采樣頻率為96HZ;
interrupt void? adc_isr(void)?????
// 采樣中斷服務子程序;
{ voltf0 = AdcRegs.ADCRESULT0/16;?
// 對三次連續(xù)采樣求均值,提高精度;
? voltf1=AdcRegs.ADCRESULT1/16;
? voltf2=AdcRegs.ADCRESULT2/16;
? averagef=(voltf0+voltf1+voltf2)/3.0;
? deltaf=(averagef-2970.0)*3.2133/(4096-2970.0); } //計算前輪轉角,取弧度;4.2? 后輪轉角信號采集
??? 后輪轉角信號由高精度的增量式光電編碼器獲得。它將蝸桿轉動的角度根據轉動的方向變?yōu)橄鄳脑觥p計數(shù)脈沖,每轉一圈產生2048個脈沖,輸出量為一時鐘信號和一方向信號。本文采用DICH0(CAP2)引腳捕捉時鐘信號,輸入引腳DICH19(GPIOF12)取得方向信號。帶光耦的開關量輸入電路設計如圖4,捕獲單元電路DSP芯片內部集成。
圖4???? 輸入電路框圖
部分程序設計過程如下:
EvaRegs.CAPFIFO.all=0x0400;???
// 設置捕獲FIFO狀態(tài)寄存器的初值;
EvaRegs.CAPCON.bit.CAPQEPN=0x1;?????
// 使能捕獲單元2;
EvaRegs.CAPCON.bit.CAP12TSEL=1;?????
// 選擇定時器1為基準;
EvaRegs.CAPCON.bit.CAP2EDGE=0x1;????
// 檢測上升沿有效;
EvaRegs.T1CMPR=0x0080;??
// 為捕獲單元2設置定時器1;
EvaRegs.T1PR = 0xFFFF;????
EvaRegs.T1CON.all = 0x1042;?
interrupt void? cap2_int(void)??
// 捕獲中斷服務子程序;
{ if(GpioDataRegs.GPFDAT.bit.GPIOF12==1)PositivePulsecount++;
? else? NegativePulsecount++;
? deltar=(PositivePulsecount-NegativePulsecount)*pi/1024.0;
}
// 根據I/O引腳來計算后輪轉角,取弧度;
4.3? 算法設計與D/A輸出
??? 算法的基本思路是:4WS啟動時,輸入一前輪轉角,通過橫擺率反饋,將其與速度相關的理想橫擺率穩(wěn)態(tài)響應增益G0進行比較,然后經控制器G1控制后輪轉角,實現(xiàn)四輪轉向,輸出質心側偏角、橫擺率、側向加速度用于監(jiān)測,控制框圖如圖5所示。電機的驅動電壓由DSP的比較寄存器產生PWM信號,在通過D/A 轉換電路輸出。本文采用定時器4產生PWM,由DA4引腳輸出,一級放大的D/A轉換電路如圖6所示。
圖5???? 控制框圖
圖6???? D/A轉換電路
部分程序設計過程如下:
EvbRegs.T4PR=0x3FF;???
// 設置定時器2的周期寄存器;
EvbRegs.T4CMPR=0x0080;
// 設置定時器4的比較寄存器初值;
EvbRegs.T4CON.all=0x1042;???
//? 使能比較單元;??
EvbRegs.GPTCONB.bit.TCOMPOE=1;????
//? 驅動定時器4的PWM輸出;
EvbRegs.GPTCONB.bit.T4PIN=1;
//? 定時器4的比較輸出低電平有效;
y0[0]=c[0][0]*x0[0]+c[0][1]*x0[1]+d[0][0]*u[0]+d[0][1]*u[1]; //? 輸出量質心側偏角;
y0[1]=c[1][0]*x0[0]+c[1][1]*x0[1]+d[1][0]*u[0]+d[1][1]*u[1]; //? 輸出量橫擺角速度;
y0[2]=c[2][0]*x0[0]+c[2][1]*x0[1]+d[2][0]*u[0]+d[2][1]*u[1]; //? 輸出量側向加速度;
Dutycycle=volt_out/10.0*1024;?
//? 計算占空比;
EvbRegs.T4CMPR=Dutycycle;????
//? 重載定時器4的周期寄存器;
5? 結束語
??? 本文應用上面設計的控制算法對4WS車輛進行了基于TMS320F2812型DSP硬件在環(huán)仿真,車輛參數(shù)選為:m=1740kg;I= 3214kg.m2;a=1.058m;b=1.756m;K1=29000N/rad;K2=60000N/rad;同時為簡便起見,截取速度u= 30m/s,結果如圖7所示,結果表明橫擺率跟蹤控制的4WS車輛在高速范圍的轉向操控時其質心橫擺率、側偏角和側向加速度響應相比兩輪轉向能夠保持較好動態(tài)和穩(wěn)態(tài)性能,同時采用CCS2000進行調試開發(fā),周期短、成本低。因此,基于DSP的硬件控制系統(tǒng)在工業(yè)控制和汽車控制領域具有廣闊前景。
圖7???? 仿真結果
評論
查看更多