基于DSP的三相無刷直流電機系統(tǒng)
從理論上來看,直流無刷電動機的速度和轉矩控制主要依據(jù)如下的轉矩和反電動勢工程計算方程
其中,N為直流無刷電動機定子每相線圈數(shù), 為轉子的長度,r為轉子的內(nèi)徑,B為轉子的磁通密度, 為電動機的角速度,i為相電流,L為相感抗, 為轉子的位置,R為相阻抗。
從方程可以看到,反電動勢與電動機的轉速成比例,而轉矩與相電流也幾乎勢成比例的。根據(jù)這些特點,在方案中采用了圖3所示的控制策略。給定轉速與速度反饋形成偏差,經(jīng)速度調(diào)節(jié)后產(chǎn)生電流參考量,它與電流反饋量的偏差經(jīng)電流調(diào)節(jié)后形成PWM占空比的控制量,實現(xiàn)電動機的速度控制。電流的反饋是通過檢測電阻上的壓降來實現(xiàn)的。速度反饋是通過霍爾傳感器輸出的位置量,經(jīng)過計算得到的。位置傳感器輸出的位置量還用于控制換相。
圖3 三相無刷直流電動機的速度和電流控制
4 軟件控制
系統(tǒng)采用PWM控制算法,電機輸入直流電流且每一時刻只有兩個功率管導通,從2407來的PWM控制信號直接連至驅動器,驅動器的輸出再連至功率MOSFET管的控制極。2407的CPU時鐘頻率是20MHz,PWM頻率是20kHz。
4.1相電流檢測
TMS320LF2407A接受到電阻上放大的壓降信號后,經(jīng)由A/D轉換后得到電流信號。在轉換結束時,A/D模塊向CPU發(fā)送一個中斷請求信號,等待CPU處理。每隔50us,DSP控制器對相電流進行采樣,從而實現(xiàn)20kHz的電流調(diào)節(jié)環(huán)。根據(jù)電流誤差,PID控制器在每個PWM周期開始時對PWM脈沖的占空比進行調(diào)節(jié)。
4.2轉子位置和速度檢測
掌握好恰當?shù)膿Q相時刻,可以減小轉矩的波動。位置檢測不但用于換相控制,而且還用于產(chǎn)生速度控制量。
位置信號是通過3個霍爾傳感器得到的。他們的輸出信號相差1200。每個機械轉有6次換相,通過將DSP設置為雙沿觸發(fā)捕捉中斷功能,可以獲得正確的換相時刻。通過將DSP的捕捉口CAP1~CAP3設置為I/O口,并檢測該口的電平狀態(tài),來的到具體的捕捉中斷。
位置信號還可以用于產(chǎn)生速度控制量。只要測得兩次換相的時間間隔 ,就可以根據(jù)下式計算出兩次換相時間的平均角速度。
兩次換相的時間間隔可以通過捕捉中斷發(fā)生時讀定時器2的T2CNT寄存器的值來獲得。
4.3電流和速度調(diào)節(jié)
相電流的調(diào)節(jié)可以通過調(diào)節(jié)載頻為20kHz的PWM信號的脈沖寬度來實現(xiàn)。
Ierror=Iref - Imea
cyclenew=cycleold+IerrorK
如果cyclenew>=Timer_period, 那么cyclenew=Timer_period
如果cyclenew>Timer_period,那么cyclenew=0
其中Iref—用戶想要的參考電流;
Imea——實際測得的相電流;
Ierror——要調(diào)節(jié)的相電流誤差;
速度調(diào)節(jié)采用PI算法,以獲得最佳的動態(tài)效果。計算公式如下:
式中Iref-速度調(diào)節(jié)輸出;
ek -第k次速度偏差;
Kp -速度比例系數(shù);
Ki -速度積分系數(shù);
T -速度調(diào)節(jié)周期;
試驗證明能產(chǎn)生很好的三相PWM控制波形。圖5為產(chǎn)生的PWM波形。
圖5 利用DSP控制三相無刷直流電動機產(chǎn)生的PWM波形
前面所敘述的系統(tǒng)初始化、位置信號檢測、PWM信號輸出等軟件模塊,可以實現(xiàn)一個基本的具有位置傳感器的三相直流無刷電動機速度控制系統(tǒng)。然而為了建立一個更完善的系統(tǒng),還需要增加一些功能模塊,如調(diào)節(jié)電動機轉速的控制模塊、保存系統(tǒng)運行數(shù)據(jù)的數(shù)據(jù)記錄模塊等,TMS320LF2407與pc機之間采用的通訊是采用RS-485進行半雙工的接口電路。由于pc機提供的是RS233接口,需要RS-32和RS-85間進行接口轉換。
5 結束語
本文作者創(chuàng)新點:將工業(yè)控制中普遍使用的PI算法在DSP上實現(xiàn)PWM波形輸出,由于單片機自身性能的限制,已難以滿足高速度,高精確的電機控制要求,而用DSP則很好的實現(xiàn)用于直流無刷電機控制的PWM波形輸出。
評論