李 嵩,周建平,許 燕
(新疆大學機械工程學院,烏魯木齊 830047)
我國是一個農業大國,絕大部分水資源用于農業灌溉,傳統的粗放管理方式導致水資源大量浪費;同時,我國也是世界上第一化肥消費大國,由于施肥方式不恰當,導致國內化肥的平均利用率為30%左右[1]。為了提高水肥的利用率,急需一種智能化精量水肥灌溉系統,通過智能算法來提高水肥控制精度。
精量水肥灌溉技術是將灌溉和施肥一起進行,徹底顛覆傳統的灌溉和施肥方式,選擇可溶性或液體肥料,通過水肥配比機配兌成作物生長所需的肥液,然后隨水一起通過管道系統輸送到作物根系,可以有效的節水、節肥,提高水肥利用率,實現作物增質增產[2]。由于大棚灌溉環境存在非線性、時變性和滯后性等問題,精確數學模型難以建立,并且傳統PID控制精度達不到要求;而模糊控制是一種非線性控制,根據專家知識和操作人員經驗可以制定有效的控制策略,但其抗干擾能力欠佳,并且控制誤差較大[3]。基于傳統控制方法和模糊控制方法的優點,進行PSO優化Fuzzy-PID控制,通過對Ke、Kec(量化因子)和Kp、Ki、Kd(比例因子)尋優,可以有效解決傳統PID控制和模糊PID控制的不足,并在SIMULINK圖形仿真環境下進行仿真試驗,證明其具有更優越的動態響應性能和控制效果。
精量水肥灌溉控制系統能夠根據作物生長所需求的營養水分,實現按量灌溉、定時灌溉、手動和自動灌溉以及遠程控制等功能,實現用最少的水肥量獲得最大的純收益,真正意義上實現傳統農業向現代智慧農業的轉變。系統總體設計方案如圖1所示。

圖1 系統總體設計框架
系統包括:STM32F103單片機核心控制板;觸摸顯示屏采用廣州大彩組態串口屏;A/D采樣模塊和D/A輸出模塊;傳感器;電磁閥等。
針對大棚環境所搭建精量水肥灌溉機,能夠通過手動和自動控制實現水肥的定時、定量灌溉,并成功應用于新疆西山大棚和塔城額敏縣農場。該精量水肥灌溉機結構圖和實物圖如圖2所示。

圖2 精量水肥灌溉機結構圖
其工作原理:針對大棚灌溉環境,由土壤溫濕度傳感器、空氣溫濕度傳感器以及EC、pH傳感器來獲取農作物水肥狀態,通過首部控制器對水肥需求情況下達指令,打開電磁閥門進行灌溉[4]。該灌溉機根據專家知識系統配兌農作物所需營養液濃度,從而實現精量灌溉。
PID控制器是一種線性控制器[5],其原理框圖見圖3。

圖3 PID控制原理框圖
其控制偏差e(t)由給定值yd(t)與實際輸出值y(t)構成:
e(t)=yd(t)-y(t)
(1)
PID的控制規律為:
(2)
式中:Kp為比例系數;Ki為積分系數;Kd為微分系數。
針對一個非線性、時變性和滯后性的大棚灌溉系統,雖然傳統PID控制結構簡單、工作穩定可靠,但Kp、Ki、Kd三個參數難以整定,不能滿足控制系統的需求[5]。
Fuzzy-PID控制器由模糊控制器和PID控制器兩大部分組成,其基本原理框圖如圖4所示。該Fuzzy-PID控制器的輸入量誤差e和誤差變換率ec經過模糊化和模糊推理后得出模糊控制器的輸出值,PID控制器會對參數Kp、Ki、Kd進行調節,最終實現對系統的控制[6]。

圖4 Fuzzy-PID基本原理框圖
其中,PID控制器的Kp、Ki、Kd、e和ec5個參數的關系如下[7]:
(1)當|e|較大時,為了提高系統的響應速度和調節精度,且避免系統產生過大的超調量,應適當加大Kp,同時減小Ki、Kd,常取Ki=0。
(2)當|e|處于中等大小時,適當減小Kp來減小系統的超調量,同時為了提高系統的調節精度和消除穩態誤差,應適當增大Ki。
(3)當|e|較小時,選取較大的Kp和Ki,使系統保持穩定;同時選取適當的Kd對偏差變化進行提前預報,抑制偏差向任何方向變化,使系統不會在平衡點出現振蕩。
根據控制系統的精度要求,對偏差和偏差率的量化等級采用7段式模糊論域,記作{-3、-2、-1、0、1、2、3}。對于大棚控制對象,把水肥流量的誤差e和誤差變化率ec作為輸入量,修正參數ΔKp、ΔKi、ΔKd作為輸出量。其中, 5個參數的模糊集定義為{負大、負中、負小、零、正小、正中、正大},表示為{NB、NM、NS、ZO、PS、PM、PB},論域的范圍定義為{-3,3},隸屬度函數采用形狀簡單、計算方便、靈敏度較強的三角形隸屬度函數曲線,e、ec的隸屬度函數如圖5、圖6所示。根據專家知識和操作人員經驗,得出輸出參數Kp、Ki、Kd整定的模糊控制表,如表1~3所示。
根據PID參數整定規則,得到自調整PID三個參數的修正公式:
Kp=Kp0+ΔKp,Ki=Ki0+ΔKi,Kd=Kd0+ΔKd
式中:Kp0、Ki0、Kd0為整定前參數;Kp、Ki、Kd為整定后參數。
Fuzzy-PID控制是一種非線性控制方式,不需要建立精確數學模型,根據專家知識或操作人員經驗制定合適的控制策略,響應速度快,但控制誤差大。

圖5 誤差e的隸屬度函數

圖6 誤差變化率ec的隸屬度函數

表1 ΔKp模糊控制規則

表2 ΔKi模糊控制規則

表3 ΔKd模糊控制規則
3.3.1 基本粒子群優化算法
粒子群優化(PSO)算法是一種經典的群智能算法,由初始化、適應度計算、極值更新、位置和速度更新4部分構成,該算法是受生物界鳥群覓食原理啟發而提出的優化算法,即最優解的一種方法[8]。
假設在一個N維空間區域中搜索,其中種群中每個粒子的位置可表示為xi=(xi1,xi2,…,xin),(i=1,2,…,n),即優化問題的一個可能的解;其速度表示為vi=(vi1,vi2,…,vin)(i=1,2,…,n)。種群中的每個粒子可以根據以下公式來更新速度和位置:
(3)
(4)
式中:ω、k為慣性權重和迭代次數;c1、c2為局部加速常數和全局加速常數;r1、r2為[0,1]區間內均勻分布隨機數;Pij為粒子i個體最優位置;Pgj為整個粒子群全局最優位置,j=1,2,…,N。
3.3.2 PSO優化Fuzzy-PID控制
Fuzzy-PID控制是根據專家知識或操作人員的經驗制定合適的控制策略,這樣會因為過于依賴專家知識和操作人員經驗無法滿足特殊條件下的抗干擾能力,同時控制誤差較大,降低了其自適應能力,為了彌補模糊控制算法存在的不足,本文提出了一種基于PSO優化Fuzzy-PID控制算法,其原理圖如圖7所示。

圖7 PSO優化模糊PID控制器原理框圖
通過粒子群算法對模糊控制器的Ke、Kec(量化因子)和Kp、Ki、Kd(比例因子)尋優,以積分性能指標(ITAE)作為尋優目標[9]。其中,采用ITAE指標可以保證系統的快速響應性、超調量、調節時間以及穩態誤差等[10]。ITAE是時間乘以誤差絕對值積分的性能指標,即:

該PSO優化Fuzzy-PID控制流程圖如圖8所示。

圖8 PSO優化Fuzzy-PID控制流程圖
文中的粒子群算法仿真是通過MATLAB中的M函數實現的。將粒子群算法應用到Fuzzy-PID控制器參數優化中要將算法的M函數轉化為S函數,并將其封裝為以e、ec為輸入,Kp、Ki、Kd為輸出的子系統,如圖9所示。

圖9 粒子群算法S-Function
為了驗證PSO優化Fuzzy-PID控制的優越性,對其在SIMULINK圖形仿真環境下進行仿真試驗,建立常規PID和Fuzzy Logic Controller模型,并把建好的模糊邏輯(.fis文件)添加到模型中,同時借助SIMULINK圖形仿真環境中的模塊庫建立PSO優化Fuzzy-PID控制模型,并對模型進行封裝。其中,對于大棚水肥灌溉流量的控制,采用階躍輸入信號進行PID、Fuzzy-PID和PSO優化Fuzzy-PID控制仿真試驗。仿真試驗結果如圖10所示。

圖10 MATLAB 仿真曲線圖
根據MATLAB仿真曲線圖,對性能進行分析,得到控制系統的主要性能指標如表4所示。從仿真曲線圖和性能指標得出:PSO優化Fuzzy-PID控制系統與傳統PID控制相比,上升時間減少了4.10 s,超調量降低了14.57%,調節時間減少了27.4 s;相比于Fuzzy-PID控制,上升時間減少了4.30 s,超調量降低了0.37%,調節時間減少了20 s。表明采用PSO優化Fuzzy-PID精量灌溉控制系統具有更好的控制效果和魯棒性。

表4 主要性能指標
對于搭建的精量水肥灌溉機,加入PSO優化Fuzzy-PID控制算法進行水肥配比實驗。其中,設置水路流量為1 000 mL,肥路流量為50 mL,得到的水肥配比效果如圖11所示。

圖11 水肥配比效果
實驗結果表明:采用PSO優化Fuzzy-PID控制使得系統在4 s左右達到水肥的預設配比值,配比精度高,響應快。
(1)針對大棚灌溉控制系統,搭建了精量水肥灌溉機,并對PSO優化Fuzzy-PID控制算法進行了研究,結果表明采用該算法能夠有效解決傳統PID控制不確定性、非線性和滯后性,也解決了Fuzzy-PID控制過于依賴專家知識和操作人員經驗以及控制誤差較大的問題,驗證了該算法具有很好的控制效果和魯棒性。
(2)該灌溉系統能夠精準地控制水肥比例,實現精準灌溉,同時完成N、P、K和微量元素的配比灌溉,提高了水肥利用率,具有很好的推廣應用價值。