劉松斌 王海星 李碩恒
(東北石油大學電氣信息工程學院,黑龍江 大慶 163318)
基于STM32的直流電機PWM調速系統
劉松斌 王海星 李碩恒
(東北石油大學電氣信息工程學院,黑龍江 大慶 163318)
為實現對永磁直流電機轉速準確、快速、穩定地控制,提出積分分離PID與變參數PID相結合的控制算法,設計并實現了直流電機PWM調速系統。詳細闡述了直流電機調速的工作原理、積分分離PID與變參數PID控制算法和系統的軟硬件設計。以STM32為主控芯片搭建控制平臺驗證調速系統的性能,實驗結果表明:該系統達到了優良的調速性能,與經典PID控制算法相比有更快的響應速度和更好的穩定性。
直流電機調速系統 積分分離PID 變參數PID STM32
直流電機以良好的啟動性能和調速性能著稱[1],宜于在寬廣的范圍內平滑調速,在軋鋼機、礦井卷揚機等需要高性能可控電力拖動領域應用廣泛。雖然與交流電機相比成本較高且結構復雜,但從閉環反饋控制角度分析,直流電機控制是交流電機控制的基礎,所以直流電機仍有一定的理論意義和使用價值[2]。對于電機的控制有調速控制、位置隨動控制及張力控制等,本質上都是對轉速的控制[3]。應用最廣的是PWM調速,其優點是響應快、效率高、抗干擾能力強。
PID是最經典的閉環控制算法,隨著微控制器和計算機控制技術的發展,控制算法在微控制器中實現比模擬PID更靈活、穩定[4]。于是產生了一系列的改進PID算法,如積分分離PID、變速積分PID及帶死區的PID等。針對直流電機調速系統的控制目標,提出積分分離和變參數PID相結合的算法,實現電機對給定轉速的快速穩定跟蹤,實現穩態無靜差。
直流電機轉速與電機其他參數的關系如下[5]:

(1)
式中I——電樞電流,A;
ke——電機結構決定的電動勢常數;
n——轉速,r/min;
R——電樞回路總電阻,Ω;
U——電樞電壓,V;
φ——勵磁磁通,Wb。
由此可知有3種方法可以改變直流電機的轉速,即改變U、φ、R,分別稱為調壓調速、改變磁通調速、改變電樞回路電阻調速。對于需要無級平滑調速的系統來說,常用調壓調速。PWM調速是調壓調速的一種[6],即將PWM脈沖直接加在電樞的兩端,通過調節脈沖的寬度來實現調壓。
系統硬件由5部分組成:STM32最小系統作為主控單元、L298N和外圍電路組成驅動模塊、12V直流電機作為控制對象、起到速度反饋作用的霍爾碼盤傳感器、觀察轉速變化的上位機。系統的硬件組成框圖如圖1所示。

圖1 系統硬件組成框圖
STM32是基于Cortex-M3內核的32位ARM處理器,具有價格便宜、功耗低及性能優越等優點。內部還集成了高級定時器,可生成互補含有死區的PWM脈沖,特別適合電力電子變換和電機控制。STM32最小系統由電源電路、時鐘電路、復位電路和程序下載電路組成。由于STM32輸出PWM為3.3V電平,難以驅動12V直流電機,采用電機驅動芯片L298N來提高驅動能力。L298N內部內含兩個H橋,是高電壓大電流全橋式驅動器,可以用來驅動兩個直流電機或步進電機[7,8]。因為L298N為5V邏輯電平,并且工作時功率電路和控制電路需要隔離,所以需要加一些必要的外圍電路,如光耦隔離、電平轉換等,L298N電路如圖2所示,圖中XPWM7連接STM32的PWM輸出引腳,實現對電機M1的驅動。

圖2 L298N電路
為了實現閉環控制必須將速度信號反饋回控制器,選用霍爾碼盤傳感器將速度信號以方波脈沖的形式反饋回控制器,STM32的捕獲單元可以捕獲這些脈沖的頻率,從而根據脈沖頻率與轉速的關系計算出轉速值。
PID是一種線性控制算法,它是基于偏差的控制,將偏差e(t)的比例(P)、積分(I)、微分(D)通過線性組合構成控制量u(t),對控制對象進行控制,PID的控制規律為:

(2)
計算機控制是一種采樣控制系統,它只能根據采樣時刻的偏差值計算控制量,所以連續PID控制算法不能直接在微控制器中使用,需要采用離散化方法,常用的為增量PID,控制規律如下:
Δu(k)=u(k-1)+kp[e(k)-e(k-1)]+kie(k)+
kd[e(k)-2e(k-1)+e(k-2)]
(3)
如果計算機控制系統采用恒定的采樣周期,只要使用前后3次測量的偏差值,就可以由求出控制量。
PID控制中積分部分主要起到消除穩態誤差的作用,在系統剛剛啟動或者大范圍改變給定時系統偏差往往很大,積分作用會產生積累,這時控制量達到最大或者最小的極限輸出即飽和值,系統響應的超調量很大甚至振蕩,因此積分分離PID應運而生。積分分離PID是在經典PID基礎上改進實現的,即當偏差大于設定值ε時使用PD控制,偏差小于ε時使用PID控制。這樣可以充分發揮比例環節提高系統響應的作用,從而快速減少偏差。當偏差進入很小的范圍時再引入積分作用,消除穩態誤差,提高控制精度。執行積分分離PID算法時,比例環節的選擇尤為重要,比例系數太小系統無法進入積分區,太大則使系統有很大的超調甚至使系統不穩定。并且工程上常常在引入積分作用后改變比例系數使它變小,這樣系統會更加穩定,這也就是變參數PID的思想。積分分離PID的算法公式如下:
u(k)=kpe(t)+kd[e(k)-e(k-1)]/T+
(4)
其中,β為是否引入積分作用的標志:

(5)
算法程序框圖如圖3所示。

圖3 積分分離PID算法程序流程
為了更加直觀地體現轉速的變化和控制效果,將轉速值通過串口發送到PC機中,使用圖形化編程環境LabVIEW編寫上位機顯示軟件[9],顯示界面如圖4所示。

圖4 上位機界面
STM32系列微控制器的開發環境很多,常用的是MDK。Keil公司開發的ARM開發工具MDK,是用來開發基于ARM核的系列微控制器的嵌入式應用程序,可根據程序流程圖在MDK中完成對控制算法的編寫。
結合以上對硬件設計和軟件設計的描述,完成基于STM32的直流電機PWM調速系統設計。
電機轉速從零到給定轉速的啟動過程類似一個階躍響應。由自控原理可知,一個系統的性能可以通過單位階躍響應的特征來定義,所以通過系統對給定轉速的響應過程來分析調速系統的性能,圖5為系統應用普通PID算法的電機啟動過程,給定轉速為6 000r/min。應用積分分離PID和變參數PID結合的改進PID算法電機啟動過程如圖6所示,給定轉速也為6 000r/min。分析可知,采用傳統PID算法系統雖然沒有超調但響應慢;采用改進的PID算法時,系統的響應速度有顯著提高,很快達到給定轉速,穩態無靜差。

圖5 采用PID算法的電機啟動過程

圖6 采用改進PID算法的電機啟動過程
對于電機調速系統來說,除了啟動性能外,系統對給定轉速的跟蹤情況和抵抗負載擾動的能力也是衡量調速系統性能的重要指標。采用改進PID算法,給定轉速由5 000r/min降到4 000r/min時的系統響應如圖7所示,系統快速達到給定轉速,且運行穩定。

圖7 采用改進PID算法的轉速下降過程
圖8為施加負載擾動后系統的響應情況,從圖中可以看到當受到負載擾動后系統轉速下降,在控制算法的作用下,系統快速恢復給定轉速,有效地抵抗了負載的擾動。

圖8 采用改進PID算法施加負載擾動的響應過程
通過軟硬件設計,實現了基于STM32的直流電機PWM調速系統設計。實驗表明:積分分離PID算法和變參數PID結合的算法與經典PID算法相比,直流電機轉速控制效果得到了很大的改善。系統有優良的啟動性能,實現輸出轉速對給定轉速的快速穩定跟蹤,有效抑制外界擾動,系統運行穩定可靠。為直流電機速度控制系統的實現提供了一種新的解決方案。
[1] 陳伯時.電力拖動自動控制系統[M].北京:機械工業出版社,2007:1~2.
[2] 湯蘊璆.電機學[M].北京:機械工業出版社,2014:94~95.
[3] 何忠悅,周小紅.基于PID算法的直流電機PWM調速控制器設計[J].計算機光盤軟件與應用,2011,(20):80~86.
[4] 楊曉嵐.PID算法在智能車中的應用[J].實驗科學與技術,2010,(4):187~189.
[5] 楊晨陽,王舒憬,王剛.基于ARM的直流電機控制系統設計[J].自動化與儀器儀表,2013,(1):57~59.
[6] 趙慶松,蘇敏.基于ARM的直流電機調速系統的設計與實現[J].微計算機信息,2007,23(2):173~175.
[7] 馬瑞卿,劉衛國.自舉式IR2110集成驅動電路的特殊應用[J].電力電子技術,2000,34(1):31~33.
[8] 張明,章國寶.IR2110驅動電路的優化設計[J].電子設計工程,2009,17(12):66~70.
[9] 劉松斌,王海星.基于LabVIEW的單片機與PC機串口通信顯示系統設計[J].化工自動化及儀表,2015,42(7):806~808.
DesignofDCMotorPWMSpeedControlSystemBasedonSTM32
LIU Song-bin, WANG Hai-xing,LI Shuo-heng
(SchoolofElectricalEngineeringandInformation,NortheastPetroleumUniversity,Daqing163318,China)
In order to control PMDC(permanent magnet DC) motor’s speed accurately and rapidly and stably, a control algorithm which integrating integral separation PID with variable parameter PID was proposed and a PWM speed control system for the DC motor was designed. The working principle of this DC motor speed control system was elaborated, including the newly-proposed control algorithm and the design of the system’s hardware and software. Establishing a STM32 chip-cored control platform to verify speed control system’s performance shows that as compared to the classical PID, this speed control system has faster response speed and better stability.
DC motor speed control system, integral separation PID, variable parameter PID, STM32
2015-11-25(修改稿)
TH865
A
1000-3932(2016)08-0834-04