田德永
(貴州職業(yè)技術(shù)學(xué)院信息工程學(xué)院,貴州貴陽,550024)
基于雙PID的風(fēng)板控制系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
田德永
(貴州職業(yè)技術(shù)學(xué)院信息工程學(xué)院,貴州貴陽,550024)
設(shè)計(jì)了一種風(fēng)板控制系統(tǒng),該系統(tǒng)采用增量式雙PID算法,采用STC單片機(jī)作為控制核心,用重力加速度傳感器實(shí)時(shí)采集風(fēng)板角度,利用單片機(jī)的PWM信號(hào)調(diào)節(jié)風(fēng)機(jī)速度,控制風(fēng)板運(yùn)動(dòng)軌跡,最終使風(fēng)板平穩(wěn)達(dá)到規(guī)定的動(dòng)作。
風(fēng)板控制; PWM;雙PID
本設(shè)計(jì)源于2015 年全國大學(xué)生電子設(shè)計(jì)大賽高職組控制類題目,要求設(shè)計(jì)并制作一種風(fēng)板控制系統(tǒng),通過控制風(fēng)機(jī)的風(fēng)速來控制風(fēng)板完成規(guī)定動(dòng)作,并能發(fā)出相應(yīng)的聲光提示。風(fēng)板具體動(dòng)作要求,可參考競(jìng)賽題目《風(fēng)板控制裝置》。
本系統(tǒng)采以控制模塊為核心,運(yùn)用雙PID算法,并利用控制模塊產(chǎn)生兩路PWM信號(hào),提供給兩個(gè)風(fēng)機(jī)驅(qū)動(dòng)模塊。輔助電路由角度測(cè)量模塊、按鍵模塊、顯示模塊、左右風(fēng)機(jī)驅(qū)動(dòng)模塊、聲光提示模塊等組成。通過按鍵的操作設(shè)定風(fēng)板的預(yù)置角度和預(yù)設(shè)規(guī)定的動(dòng)作,控制模塊通過角度傳感器實(shí)時(shí)獲取風(fēng)板角度,進(jìn)行PID算法后并調(diào)整PWM信號(hào)的占空比,實(shí)現(xiàn)對(duì)風(fēng)機(jī)轉(zhuǎn)速控制,并將風(fēng)板角度顯示模塊上??刂葡到y(tǒng)方案框圖如圖1所示。
圖1 系統(tǒng)方案框圖
2.1控制模塊的選擇
現(xiàn)在流行的控制器有ARM、STM32、51單片機(jī)系列,ARM、 STM32運(yùn)行速度快,且運(yùn)行資源比較多,可進(jìn)行復(fù)雜的運(yùn)算,但價(jià)格比較貴。而根據(jù)系統(tǒng)要求及本設(shè)計(jì)采取的方案,控制器主要的是進(jìn)行PID算法的運(yùn)算以及輸出PWM控制,不需要進(jìn)行更復(fù)雜的運(yùn)算,因此從性價(jià)比角度看,控制模塊采用51單片機(jī)即可。本設(shè)計(jì)中采用宏晶公司的STC15F2K61S2單片機(jī)作為控制模塊。STC15F2K61S2屬于增強(qiáng)型51單片機(jī),速度比普通8051快8~12倍,具有8通道10位高速A/D,3路PWM。
2.2驅(qū)動(dòng)模塊
風(fēng)機(jī)驅(qū)動(dòng)采用L298N 芯片控制。L298N是SGS公司出產(chǎn)的4通道邏輯驅(qū)動(dòng)電路芯片,該芯片是專用的電機(jī)驅(qū)動(dòng)芯片,其內(nèi)部含有H 橋的高電壓、大電流全橋驅(qū)動(dòng)器,可以用來驅(qū)動(dòng)兩個(gè)直流電機(jī),或一個(gè)兩相步進(jìn)電機(jī),采用標(biāo)準(zhǔn)邏輯電平控制,具有兩個(gè)使能控制端,在不受輸入信號(hào)影響下允許或禁止。其中4腳接電源電壓,電壓范圍為+2.5~46 V,最大工作電流2.5A,額定功率25W,可驅(qū)動(dòng)電感性負(fù)載。
2.3 角度傳感器模塊
角度傳感器可采用旋轉(zhuǎn)編碼器、變阻器式角位移傳感器、及加速度傳感器等。旋轉(zhuǎn)編碼器精度高、安裝工藝復(fù)雜,且容易受震動(dòng)影響,需要進(jìn)行濾波處理。變阻式角位移傳感器原理簡單,它是將角度變化量的測(cè)量變?yōu)殡娮枳兓康臏y(cè)量,但是精度不高,且容易燒壞。本設(shè)計(jì)采用ADX335型號(hào)的角度傳感器,它是低功耗及單一的IC芯片加速度傳感器,質(zhì)量比較輕巧,容易和風(fēng)板軸銜接,經(jīng)過適當(dāng)算法后,可得到比較高精度的角度。其電壓在1.8V至3.6V之間,在-55°C 到125°C溫度范圍內(nèi),采用5×5×2 mm的LCC的封裝。
2.4 按鍵輸入及顯示模塊
按鍵可采用4×4矩陣模塊和獨(dú)立按鍵方式??紤]到需要輸入的量不是很多,且采用的單片機(jī)也有足夠的端口可供使用,所以采用了獨(dú)立的按鍵方式。在進(jìn)行防抖處理后,在軟件設(shè)計(jì)時(shí)比較容易獲得按鍵的值。顯示模塊采用常用的LCD1602液晶模塊,它能顯示32個(gè)字符,使用方便,基本能地滿足系統(tǒng)需要顯示信息的要求。
本控制系統(tǒng)的設(shè)計(jì)的核心是控制算法的設(shè)計(jì)和實(shí)現(xiàn)。由于在風(fēng)板控制系統(tǒng)中的被控對(duì)象具時(shí)變不確定性、純滯后等特征,采用了PID控制算法。通過對(duì)檢測(cè)到的角度進(jìn)行PID運(yùn)算,控制PWM占空比而控制風(fēng)機(jī)的速度,而使風(fēng)板能穩(wěn)定達(dá)到任意預(yù)置角度。
3.1PWM及風(fēng)力的控制
顯而易見,風(fēng)力的大小,由風(fēng)機(jī)轉(zhuǎn)速?zèng)Q定。轉(zhuǎn)速越大,則風(fēng)力越大。調(diào)節(jié)風(fēng)力,就是調(diào)節(jié)風(fēng)機(jī)的轉(zhuǎn)速。直流調(diào)速系統(tǒng)中,都是以變壓調(diào)速來實(shí)現(xiàn)的。其中,在變壓調(diào)速系統(tǒng)中,大體上又可分為可控整流式調(diào)速系統(tǒng)和直流脈寬調(diào)制(PWM)調(diào)速系統(tǒng)兩種。PWM控制技術(shù)中,要改變等效直流電壓的大小,可以通過改變脈沖幅度和占空比來實(shí)現(xiàn),因?yàn)樵趯?shí)際系統(tǒng)設(shè)計(jì)中脈沖幅度一般是恒定的,所以通常通過控制占空比的大小實(shí)現(xiàn)等效直流電壓調(diào)節(jié),從而達(dá)到利用PWM控制技術(shù)實(shí)現(xiàn)對(duì)直流風(fēng)機(jī)轉(zhuǎn)速進(jìn)行調(diào)節(jié)的目的。本設(shè)計(jì)中,充分利用控制模塊STC單片機(jī)能產(chǎn)生PWM信號(hào)功能,使用其中自帶的兩路PWM對(duì)風(fēng)機(jī)進(jìn)行速度的調(diào)節(jié)。對(duì)兩邊風(fēng)機(jī)速度的控制和調(diào)節(jié),即是對(duì)輸出的PWM占空比的控制。占空比又由風(fēng)板的角度進(jìn)行數(shù)字PID算法實(shí)現(xiàn),從而達(dá)到控制風(fēng)板運(yùn)動(dòng)的軌跡。
3.2PID控制算法
3.2.1位置式數(shù)字PID算法。該控制算法提供了執(zhí)行機(jī)構(gòu)的具體位置,輸出公式為:
由此可見,該P(yáng)ID輸出與整個(gè)過去的狀態(tài)有關(guān),這種算法每次輸出均與過去的狀態(tài)有關(guān),計(jì)算時(shí)要對(duì)e(k)進(jìn)行累加,容易產(chǎn)生大的累加誤差,且造成積分飽和,控制器運(yùn)算量很大。
3.2.2增量式數(shù)字PID算法。該P(yáng)ID輸出只是控制量的增量Δu(k)。輸出表達(dá)式為:
可見,采用增量式算法時(shí),控制量Δu(k)對(duì)應(yīng)的是本次執(zhí)行機(jī)構(gòu)位置的增量,而不是對(duì)應(yīng)執(zhí)行機(jī)構(gòu)的實(shí)際位置,算式中不需要累加??刂圃隽喀(k)的確定僅與最近3次的采樣值有關(guān),容易通過加權(quán)處理獲得比較好的控制效果,因此,本設(shè)計(jì)中,采用增量式PID算法。
3.2.3雙PID控制。雙PID常常采取串級(jí)PID控制,串級(jí)PID原理如圖2所示。
串級(jí)控制系統(tǒng)具有主、副兩個(gè)控制回路,從信號(hào)的傳遞方式來看,主、副控制器是串聯(lián)地進(jìn)行工作,主回路的輸出是通過副回路起作用;從回路閉合方向來看,副回路被包括在主回路中,可以看成一個(gè)具有精確跟蹤能力的控制環(huán)節(jié),它以主回路的輸出作為自己的輸入,并始終跟隨其變化而變化,即:主回路為定值控制,副回路為隨動(dòng)控制,這就是串級(jí)控制系統(tǒng)的最重要的特征。在本設(shè)計(jì)中,主PID是對(duì)風(fēng)板實(shí)際角度進(jìn)行PID運(yùn)算,副PID主要是對(duì)從風(fēng)板右邊看去的角度進(jìn)行PID運(yùn)算。由于加速度傳感器獲得并不是直接角度,需要經(jīng)過單片機(jī)進(jìn)行算法運(yùn)算,算出角度。具體控制原理圖如圖3所示。
3.2.4PID參數(shù)的整定。
所謂PID 參數(shù)的整定,就是按照已定的控制方案,求取使控制質(zhì)量最好時(shí)的PID 參數(shù)值,確定最合適的控制器比例度P、積分時(shí)間Ti 和微分時(shí)間Td 。PID參數(shù)的整定方法工程上最常用的有臨界比例度法、衰減曲線法和經(jīng)驗(yàn)湊試法。本設(shè)計(jì)中,采用試湊法。試湊法就是根據(jù)控制器各參數(shù)對(duì)系統(tǒng)性能的影響程度,邊觀察系統(tǒng)的運(yùn)行,邊修改參數(shù),直到滿意為止。在試湊時(shí),一般可根據(jù)以上參數(shù)對(duì)控制過程的影響趨勢(shì),對(duì)參數(shù)實(shí)行先比例、后積分、再微分的步驟進(jìn)行整定。在采用雙PID中,先整定內(nèi)環(huán)PID,再整定外環(huán)PID。
3.3控制系統(tǒng)預(yù)定動(dòng)作的實(shí)現(xiàn)
參數(shù)整定好之后,風(fēng)板基本達(dá)到預(yù)設(shè)的任意期望的角度。這為后面的風(fēng)板的動(dòng)作打好基礎(chǔ)。風(fēng)板第一個(gè)動(dòng)作要求是由起點(diǎn)開始啟動(dòng)裝置,控制風(fēng)板達(dá)到預(yù)置角度,過渡過程時(shí)間不大于10s,在預(yù)置角度上的穩(wěn)定停留時(shí)間為5s,動(dòng)作完成后風(fēng)板平穩(wěn)停留在終點(diǎn)位置。完成這一動(dòng)作,實(shí)際上只要調(diào)節(jié)期望角度。起點(diǎn)時(shí),期望角為0度,終點(diǎn)時(shí),期望角為180度。期望角隨時(shí)間變化
圖2 串級(jí)PID
圖3 控制原理
用坐標(biāo)圖如圖4所示。期望角按圖變化,便能基本實(shí)現(xiàn)第一個(gè)動(dòng)作。Θ(t)表示期望角,θ即預(yù)定停留角度,其中,t1<10s,t2-t1=5s。同理,風(fēng)板的第二個(gè)動(dòng)作,也是控制期望角變化而實(shí)現(xiàn)的,其變化如圖5所示。
圖 4 動(dòng)作一角度的變化圖
圖5 動(dòng)作二角度的變化圖
風(fēng)板的控制,其核心還是在控制算法上。在算法上還可以采取模糊算法,自適應(yīng)算法等。本設(shè)計(jì)采用了雙PID控制算法,不需要復(fù)雜的編程就容易實(shí)現(xiàn),且比較精準(zhǔn),能達(dá)到預(yù)設(shè)的動(dòng)作。難點(diǎn)是PID參數(shù)的整定,本設(shè)計(jì)采用了試湊法進(jìn)行PID的整定,需反復(fù)修改參數(shù)。為了減少工作復(fù)雜度,可進(jìn)一步優(yōu)化算法,采取自整方法來實(shí)現(xiàn)。
[1]李莉,曹紅英.基于單片機(jī)的風(fēng)板控制裝置設(shè)計(jì)與實(shí)現(xiàn)[J].工業(yè)控制計(jì)算機(jī),2016,29(3):143-144
[2]雷慧杰.基于STM32的直流電機(jī)PID調(diào)速系統(tǒng)設(shè)計(jì)[J].現(xiàn)代電子技術(shù),2016,39(8):165-167
[3]李強(qiáng),張靈.雙PID 控制在煤氣鼓風(fēng)機(jī)壓力調(diào)節(jié)中的應(yīng)用[J].山西煤炭,2015,35(1):76-78
[4]劉二林,姜香菊.基于雙PID的旋轉(zhuǎn)倒立擺控制系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].制造業(yè)自動(dòng)化,2015,37(3):139-140
[5]常建東,虎恩典,趙文賢等.基于PID參數(shù)自整定的液位控制系統(tǒng)設(shè)計(jì)及其實(shí)現(xiàn)[J].現(xiàn)代電子技術(shù),2016,39(5):252-253
[6]晗悅,丁嘉毅等.基于PID及PWM的無線傳能系統(tǒng)研究[J].新型工業(yè)化,2014,4(9):56-61
田德永(1978.09-)男,貴州天柱人,碩士研究生,高級(jí)實(shí)驗(yàn)師,研究方向:控制與測(cè)量。
Design and Implementation of Wind Board Control System Based on Dual PID
Tian Deyong
(Guizhou Vocational and Technical Institute,Guizhou Guiyang,550024)
A kind of wind board control system was designed.The incremental dual PID was used in the control system which the STC MCU was taken as control core.The gravity acceleration sensor is used to collect the angle of the wind board in real time and the PWM signal generated with the MCU is used to adjust the speed of the fan which can control the movement of the wind board.the system makes the wind board meet the conditions which are required.
wind board control;PWM;dual PID