基于模糊pid算法的船舶航向控制器的制造方法
【專利摘要】本發(fā)明公開了一種基于模糊PID算法的船舶航向控制器,控制器包括:輸入單元,用于根據(jù)船舶需要的舵向偏角和步進電機驅(qū)動單元的輸出,獲得理想的舵角偏轉(zhuǎn);模數(shù)轉(zhuǎn)換單元,用于數(shù)模轉(zhuǎn)換與模數(shù)轉(zhuǎn)換;模糊參數(shù)校正單元,用于根據(jù)步進電機驅(qū)動單元的輸出與理想的舵角偏轉(zhuǎn)進行模糊參數(shù)校正;PID調(diào)節(jié)單元,根據(jù)模糊參數(shù)校正單元和步進電機驅(qū)動單元的輸出進行PID調(diào)節(jié);PWM信號輸出單元,用于根據(jù)PID調(diào)節(jié)單元的輸出,輸出控制步進電機工作的PWM波形;步進電機驅(qū)動單元,用于驅(qū)動步進電機控制船舶航向,并實時反饋船舶的位置、速度和舵偏角。本發(fā)明針對采用模糊PID控制算法,實現(xiàn)船舶舵機的自適應(yīng)調(diào)控。
【專利說明】
基于模糊PID算法的船舶航向控制器
技術(shù)領(lǐng)域
[0001] 本發(fā)明設(shè)及船舶控制技術(shù),尤其設(shè)及一種基于模糊PID算法的船舶航向控制器。
【背景技術(shù)】
[0002] 隨著世界金融貿(mào)易行業(yè)的發(fā)展,各國海上貿(mào)易的往來日益頻繁,整個船舶市場節(jié) 節(jié)攀高,出現(xiàn)了空前旺盛的勢頭。目前,對商船的航向控制無法滿足現(xiàn)實的需求,航向控制 技術(shù)尤為低劣,使得船舶運輸效率不高,海上貿(mào)易受到阻礙。艙機作為船舶航向控制的被控 對象,是船舶航行的重要設(shè)備。對一些普通的艙機控制系統(tǒng),很多存在系統(tǒng)采集精度低、系 統(tǒng)反應(yīng)不夠迅速、艙機偏轉(zhuǎn)精度不夠理想W及艙機傳動不夠協(xié)調(diào)等問題。
[0003] 本世紀20年代,美國的Sperry和德國的Ansuchz在巧螺羅徑研制工作取得實質(zhì)進 展后分別獨立地研制出機械式的自動艙,它的出現(xiàn)是一個里程碑,使人們看到了在船舶操 縱方面擺脫體力勞動實現(xiàn)自動控制的希望,運是第一代自動艙.機械式自動艙只能進行簡 單的比例控制,為了避免振蕩,需選擇低的增益,它只能用于低精度的航向保持控制。
[0004] 本世紀50年代,隨著電子學(xué)和伺服機構(gòu)理論的發(fā)展及應(yīng)用,集控制技術(shù)和電子器 件的發(fā)展成果于一體的、更加復(fù)雜的第二代自動艙問世了,運就是著名的PID艙.。自然PID 艙比第一代自動艙有長足進步,但缺乏對船舶所處的變化著的工作條件及環(huán)境的應(yīng)變能 力,因而操艙頻繁,操艙幅度大,能耗顯著。
[0005] 到了 60年代末,由于自適應(yīng)理論和計算機技術(shù)得到了發(fā)展,人們注意到將自適應(yīng) 理論引入船舶操縱成為可能,瑞典等北歐國家的一大批科技人員紛紛將自適應(yīng)艙從實驗室 裝到實船上,正式形成了第=代自動艙。自適應(yīng)艙在提高控制精度、減少能源消耗方面取得 了一定的成績,但物理實現(xiàn)成本高,參數(shù)調(diào)整難度大,特別是因船舶的非線性、不確定性,控 制效果難W保證,有時甚至影響系統(tǒng)的穩(wěn)定性。
[0006] 從80年代開始,人們就開始尋找類似于人工操艙的方法,運種自動艙就是第4代的 智能艙。目前,已提出巧巾智能控制方法,即專家系統(tǒng)、模糊控制和神經(jīng)網(wǎng)絡(luò)控。此外,80年代 前船舶上安裝的自動艙一般只能進行航向控制,它可把船舶控制在事先給定的航向上航 行。隨著全球定位系統(tǒng)(GPS)等先進導(dǎo)航設(shè)備在船舶上裝備,人們開始設(shè)計精確的航跡控制 自動艙,運種自動艙能把船舶控制在給定的計劃航線上。
[0007] 本發(fā)明針對W上問題采用模糊-PID控制算法,實現(xiàn)船舶艙機的自適應(yīng)調(diào)控。通過 對外界環(huán)境的識別與反饋信號,控制系統(tǒng)自動作出反應(yīng),完成在精度上采集、靈敏度上校 準(zhǔn)、實時操縱,W實現(xiàn)輪船轉(zhuǎn)向的低誤差,保證了轉(zhuǎn)動的適時與平滑。
【發(fā)明內(nèi)容】
[000引本發(fā)明要解決的技術(shù)問題在于針對現(xiàn)有技術(shù)中的缺陷,提供一種基于模糊PID算 法的船舶航向控制器。
[0009]本發(fā)明解決其技術(shù)問題所采用的技術(shù)方案是:基于模糊PID算法的船舶航向控制 器,包括:
[0010] 輸入單元,用于根據(jù)船舶需要的艙向偏角和步進電機驅(qū)動單元的輸出,獲得理想 的艙角偏轉(zhuǎn)并輸出;
[0011] 模數(shù)轉(zhuǎn)換單元,用于將PID調(diào)節(jié)單元的輸出進行數(shù)模轉(zhuǎn)換后發(fā)送給PWM信號輸出單 元,也用于將步進電機驅(qū)動單元的輸出進行模數(shù)轉(zhuǎn)換后發(fā)送給輸入單元;
[0012] 模糊參數(shù)校正單元,用于根據(jù)步進電機驅(qū)動單元的輸出與理想的艙角偏轉(zhuǎn)進行模 糊參數(shù)校正;
[0013] PID調(diào)節(jié)單元,根據(jù)模糊參數(shù)校正單元的結(jié)果對PID調(diào)節(jié)單元的輸出量進行調(diào)節(jié), 其中
[0014] PID控制算法為:
[0015]
[0016] 式中:U(n)為第n個采樣時刻PID調(diào)節(jié)單元的輸出量;e(n)為第n個采樣時刻輸入單 元獲得的實際偏差量;Kp、Ki、Kd分別為比例、積分和微分系數(shù);
[0017] PWM信號輸出單元,用于根據(jù)PID調(diào)節(jié)單元的輸出,輸出控制步進電機工作的PWM波 形;
[0018] 步進電機驅(qū)動單元,用于根據(jù)PWM波形脈沖來將電脈沖信號轉(zhuǎn)變?yōu)榻俏灰苹蚓€位 移,驅(qū)動步進電機控制船舶航向,并實時反饋船舶的位置、速度和艙偏角。
[0019] 按上述方案,所述模糊參數(shù)校正單元進行模糊參數(shù)校正時,遵循的規(guī)則如下:
[0020] 設(shè)IE I為偏差變量,IECI為偏差變化率;
[0021 ] (1)當(dāng)I E I較大,即系統(tǒng)響應(yīng)處于線性上升階段,為了使系統(tǒng)響應(yīng)具有較好的快速 跟蹤性能,并避免因開始時偏差瞬間變大,可能引起微分過飽和,而使控制作用超出許可范 圍,應(yīng)取較大的Kp和較小的Kd,同時為避免系統(tǒng)響應(yīng)出現(xiàn)較大超調(diào),需對積分作用加 W限制, 通常取Ki = O;
[0022] (2)當(dāng)IeI為中等大小時,即系統(tǒng)處于線性平緩狀態(tài)下,為使系統(tǒng)具有較小的超調(diào), 應(yīng)取較小的Kp,適當(dāng)?shù)腒i、Kd,W保證系統(tǒng)響應(yīng)速度,其中Kd的取值對系統(tǒng)的響應(yīng)速度影響較 大;
[0023] (3)當(dāng)IeI較小時,即系統(tǒng)處于趨于穩(wěn)定的階段,為使系統(tǒng)具有良好的穩(wěn)態(tài)性能,應(yīng) 取較大的Kp、Ki,同時為避免系統(tǒng)在設(shè)定值附近值出現(xiàn)振蕩,并考慮系統(tǒng)的抗干擾性能。當(dāng) ECI較小時,Kd值可取大些,通常取為中等大??;當(dāng)IEC I較大時,Kd值應(yīng)取小些。
[0024] 按上述方案,所述模糊參數(shù)校正單元在校正前需要將模糊量轉(zhuǎn)變?yōu)榍逦?,具體 如下:
[0025] 先計算輸出量模糊集化中各元素 XiQ = I, 2,3...)與其隸屬度iii的乘積,再計算該
化 乘積和E縱I?誤的平均值,即 平均值Xo便是加權(quán)平均法所得模糊集合的判決結(jié) 赫 果;
[0026] 根據(jù)上述得到的檔數(shù)Xo,其變化范圍為[Zmin,Zmax],實際控制量的變化范圍為 [Umin , Umax],米用線性變換,貝[J
[0027]
[0028] I控制執(zhí)行機構(gòu)的實際控制量,即PID參 數(shù)。
[0029] 本發(fā)明產(chǎn)生的有益效果是:本發(fā)明輪船艙機控制系統(tǒng)采用模糊-PID控制算法,控 制更加精確,輸出誤差減小,保持了系統(tǒng)良好的自適應(yīng)性,在自動控制的同時,保證了輸出 精度,使得系統(tǒng)更加穩(wěn)定。
【附圖說明】
[0030] 下面將結(jié)合附圖及實施例對本發(fā)明作進一步說明,附圖中:
[0031 ]圖1是本發(fā)明實施例的船舶航向控制器結(jié)構(gòu)示意圖;
[0032]圖2是本發(fā)明實施例的四相反應(yīng)式步進電機工作原理圖;
[0033 ]圖3是本發(fā)明實施例的控制步進電機工作的PWM波形;
[0034] 圖4是本發(fā)明實施例的模糊-PID控制算法結(jié)構(gòu)圖;
[0035] 圖5是本發(fā)明實施例的隸屬函數(shù)圖形;
[0036] 圖6是本發(fā)明實施例的模糊規(guī)則表;
[0037] 圖7是本發(fā)明實施例的模糊PID控制器輸入角度5度仿真結(jié)果圖形。
【具體實施方式】
[0038] 為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,W下結(jié)合實施例,對本發(fā)明 進行進一步詳細說明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅用W解釋本發(fā)明,并不用于限 定本發(fā)明。
[0039] 如圖1所示,船舶航向控制器主要輸入單元,用于根據(jù)船舶需要的艙向偏角和步進 電機驅(qū)動單元的輸出,獲得理想的艙角偏轉(zhuǎn)并輸出;
[0040] 模數(shù)轉(zhuǎn)換單元,用于將PID調(diào)節(jié)單元的輸出進行數(shù)模轉(zhuǎn)換后發(fā)送給PWM信號輸出單 元,也用于將步進電機驅(qū)動單元的輸出進行數(shù)模轉(zhuǎn)換后發(fā)送給輸入單元;
[0041] 模糊參數(shù)校正單元,用于將步進電機驅(qū)動單元的輸出進行模糊參數(shù)校正,具體如 下:
[0042] (1)當(dāng)Ie I較大,即系統(tǒng)響應(yīng)處于線性上升階段,為了使系統(tǒng)響應(yīng)具有較好的快速 跟蹤性能,并避免因開始時偏差瞬間變大,可能引起微分過飽和,而使控制作用超出許可范 圍,應(yīng)取較大的Kp和較小的時,同時為避免系統(tǒng)響應(yīng)出現(xiàn)較大超調(diào),需對積分作用加則良制, 通常取Ki = O;
[0043] (2)當(dāng)IeI為中等大小時,即系統(tǒng)處于線性平緩狀態(tài)下,為使系統(tǒng)具有較小的超調(diào), 應(yīng)取較小的Kp,適當(dāng)?shù)腒i、Kd,W保證系統(tǒng)響應(yīng)速度,其中Kd的取值對系統(tǒng)的響應(yīng)速度影響較 大;
[0044] (3)當(dāng)IeI較小時,即系統(tǒng)處于趨于穩(wěn)定的階段,為使系統(tǒng)具有良好的穩(wěn)態(tài)性能,應(yīng) 取較大的Kp、Ki,同時為避免系統(tǒng)在設(shè)定值附近值出現(xiàn)振蕩,并考慮系統(tǒng)的抗干擾性能。當(dāng) ECI較小時,Kd值可取大些,通常取為中等大??;當(dāng)IEC I較大時,Kd值應(yīng)取小些。
[0045] 其中|E|為偏差變量,|EC|為偏差變化率;
[0046] PID調(diào)節(jié)單元,根據(jù)模糊參數(shù)校正單元對PID調(diào)節(jié)單元輸出量進行PID調(diào)節(jié),其中
[0047] PID控制算法為:
[004引
[0049] 式中:U(n)為第n個采樣時刻PID調(diào)節(jié)單元輸出量;e(n)為第n個采樣時刻輸入單元 輸入的偏差量;Kp、Ki、Kd分別為比例、積分和微分系數(shù);
[0050] PWM信號輸出單元,用于根據(jù)PID調(diào)節(jié)單元的輸出,輸出控制步進電機工作的PWM波 形;
[0051 ]步進電機驅(qū)動單元,用于根據(jù)PWM波形脈沖來將電脈沖信號轉(zhuǎn)變?yōu)榻俏灰苹蚓€位 移,驅(qū)動步進電機控制船舶航向;并反饋船舶的位置、速度、艙偏角。
[0052] 將上述單元組合,即可得到如圖1所示的示意圖,該圖反映本次發(fā)明的整個控制系 統(tǒng)結(jié)構(gòu)。
[0053] 其中被控制對象為步進電機,如圖2所示。步進電機的轉(zhuǎn)動能實現(xiàn)輪船艙機的轉(zhuǎn) 動,從而實現(xiàn)輪船的航向改變。
[0054] 通過微處理器發(fā)出控制步進電機各相的Pmi波,如圖3所示,即可控制步進電機的 轉(zhuǎn)動角度、轉(zhuǎn)動速率。步進電機的工作方式從左至右依次為單四拍、雙四拍、八拍。
[0055] 下面結(jié)合圖4,圖5,圖6來說明本次控制系統(tǒng)的模糊PID控制算法。
[0056] 圖4描述了模糊-PID控制算法的結(jié)構(gòu),通過對輸入量與反饋量(輸出量)比較,得出 現(xiàn)存誤差,然后進行模糊-PID控制,即可減小誤差。若不斷重復(fù)上述步驟,誤差將會進一步 減小,甚至變?yōu)榱恪W罱K輸出量與理想值接近相等。
[0057] 確定模糊控制的語言變量是設(shè)計模糊控制的第一步,在選擇語言變量值時,既要 考慮到控制規(guī)則的靈活與細致性,又要兼顧其簡單與易行的要求。一般在設(shè)計模糊控制時, 對于偏差、偏差變化率和控制量的變化等語言變量,通常綜合采用"正大(PB)","正中 (PM)","正小(PS)","零(Z)","負小(NS)","負中(MO"和"負大(NB)"7個語言變量值來描 述。
[005引偏差變量論域{-6,-5,-4,... 0,+ 1,... +6}形式,偏差變化率論域為{-6,-5,... 0, + 1...+6},虹、陸、1(1論域均為{-6,-4...+6},為更好線性化系統(tǒng),采用^角形隸屬函數(shù),因論 域相同,隸屬函數(shù)相同,所W可用同一圖形描述,其隸屬函數(shù)如圖5所示。
[0059] Km(m = P、I、D)的語言變量選取與偏差及偏差變化率的語言變量相同,運便于實現(xiàn) 模糊控制規(guī)則敘述,而并不影響實際輸出量的大小。
[0060] 模糊控制的輸入量一般為測量變量,首先需要進行尺度變換,把測量量轉(zhuǎn)換成離 散論域中的量值,變換后通過向新的離散域中每個特定術(shù)語賦予隸屬度來定義模糊集。
[0061] 對于模糊控制而言,無論是偏差還是偏差變化率,它們都是精確量的輸入,要采用 模糊控制技術(shù)的話就必須把它們轉(zhuǎn)換成模糊集合的隸屬函數(shù)。在實際應(yīng)用中采用離散精確 量的方法將其轉(zhuǎn)化。方法介紹如下:
[0062] 設(shè)有輸入精確量x,x的實際變化范圍為[a, b],將[a, b]區(qū)間的精確量轉(zhuǎn)換為每個 隸屬函數(shù)所在論域上的區(qū)間[-6,6]變化的變化量y,其變換公式為:
[0063]
[0064] 若由上式計算出的y值不是整數(shù),可W把他歸入最接近y的整數(shù),通過對應(yīng)隸屬函 數(shù),如圖5所示,從而決定模糊集合,該模糊集合代表了精確量X的模糊化。
[0065] 模糊控制規(guī)則集是由一組模糊條件語句來表達的模糊控制規(guī)則,模糊狀態(tài)控制表 是模糊控制規(guī)則的一種表達形式,它所表達的控制規(guī)則與模糊條件語句組表達的控制規(guī)則 是等價的。本發(fā)明的雙輸入單輸出模糊控制規(guī)則的模糊條件語句為:If E and EC then Km。其中E為輸入的偏差變量e模糊化的模糊集合,EC為偏差變化率ec模糊化的模糊集合,Km (m = P、I、D)為輸出變量模糊化的模糊集合。
[0066] 根據(jù)自整定的思想及模糊控制規(guī)則,設(shè)計出本發(fā)明Km的參數(shù)模糊控制規(guī)則狀態(tài) 表,如圖6所示。
[0067] 模糊控制系統(tǒng)最終輸送給執(zhí)行機構(gòu)的是一個精確量,因此,需要將模糊量轉(zhuǎn)變?yōu)?清晰量,而清晰化基本算法有很多,本發(fā)明采用加權(quán)平均法。先計算輸出量模糊集化中各元 '謀' 素 Xi(i = l,2,3...)與其隸屬度iii的乘積,再計算該乘積和^縱|||的平均值,即
平均值Xo便是加權(quán)平均法所得模糊集合的判決結(jié)果。 123456 判決結(jié)果僅僅是一個檔數(shù),不能作為直接控制執(zhí)行器的實際控制量,還要將運變 量進行最后一次變換。根據(jù)上述得到的檔數(shù)Xo,其變化范圍為[Zmin,Zmax],實際控制量的變 化范圍為[Umin,Umax],采用線性變換,貝U 2
[0069]
稱為比例因子, U為控制執(zhí)行機構(gòu)的實際控制量,即PID參數(shù)。 3 通過整定PID參數(shù),即可得到按如下公式計算得到的輸出控制電壓信號U, 4
[0071 ] u(n) =Kpe(n)+KiEe(n)+KD[e(n)-e(n-l)]。 5 模糊PID控制器輸入角度5°仿真結(jié)果如圖7所示。從仿真結(jié)果可W看出,模糊-PID 控制器的響應(yīng)速度快,平滑性好,輸出穩(wěn)定度高,且具有良好的動態(tài)響應(yīng),基本無超調(diào)。由此 可知,基于模糊-PID控制的船舶艙機控制器的控制精度高,實用性較強,有著廣泛的應(yīng)用前 景。 6 應(yīng)當(dāng)理解的是,對本領(lǐng)域普通技術(shù)人員來說,可W根據(jù)上述說明加 W改進或變換, 而所有運些改進和變換都應(yīng)屬于本發(fā)明所附權(quán)利要求的保護范圍。
【主權(quán)項】
1. 一種基于模糊PID算法的船舶航向控制器,其特征在于,包括: 輸入單元,用于根據(jù)船舶需要的舵向偏角和步進電機驅(qū)動單元的輸出,獲得理想的舵 角偏轉(zhuǎn)并輸出; 模數(shù)轉(zhuǎn)換單元,用于將PID調(diào)節(jié)單元的輸出進行數(shù)模轉(zhuǎn)換后發(fā)送給PWM信號輸出單元, 也用于將步進電機驅(qū)動單元的輸出進行模數(shù)轉(zhuǎn)換后發(fā)送給輸入單元; 模糊參數(shù)校正單元,用于根據(jù)步進電機驅(qū)動單元的輸出與理想的舵角偏轉(zhuǎn)進行模糊參 數(shù)校正; ID調(diào)節(jié)單元,根據(jù)模糊參數(shù)校正單元的結(jié)果對PID調(diào)節(jié)單元的輸出量進行調(diào)節(jié),其中 PID控制算法為:式中:U(n)為第η個米樣時刻PID調(diào)節(jié)單元的輸出量;e(n)為第η個米樣時刻的輸入單元 獲得的實際偏差量;Kp、Ki、Kd分別為比例、積分和微分系數(shù); PWM信號輸出單元,用于根據(jù)PID調(diào)節(jié)單元的輸出,輸出控制步進電機工作的PWM波形; 步進電機驅(qū)動單元,用于根據(jù)PWM波形脈沖來將電脈沖信號轉(zhuǎn)變?yōu)榻俏灰苹蚓€位移,驅(qū) 動步進電機控制船舶航向,并實時反饋船舶的位置、速度和舵偏角。2. 根據(jù)權(quán)利要求1所述的基于模糊PID算法的船舶航向控制器,其特征在于,所述模糊 參數(shù)校正單元進行模糊參數(shù)校正時,遵循的規(guī)則如下: 設(shè)IE |為偏差變量,| EC |為偏差變化率; (1) 當(dāng)I E |較大,即系統(tǒng)響應(yīng)處于線性上升階段,為了使系統(tǒng)響應(yīng)具有較好的快速跟蹤 性能,并避免因開始時偏差瞬間變大,可能引起微分過飽和,而使控制作用超出許可范圍, 應(yīng)取較大的Kp和較小的K D,同時為避免系統(tǒng)響應(yīng)出現(xiàn)較大超調(diào),需對積分作用加以限制,通 常取Ki = 0; (2) 當(dāng)|Ε|為中等大小時,即系統(tǒng)處于線性平緩狀態(tài)下,為使系統(tǒng)具有較小的超調(diào),應(yīng)取 較小的Kp,適當(dāng)?shù)腒〗、KD,以保證系統(tǒng)響應(yīng)速度,其中Kd的取值對系統(tǒng)的響應(yīng)速度影響較大; (3) 當(dāng)| E |較小時,即系統(tǒng)處于趨于穩(wěn)定的階段,為使系統(tǒng)具有良好的穩(wěn)態(tài)性能,應(yīng)取較 大的&、!(:,同時為避免系統(tǒng)在設(shè)定值附近值出現(xiàn)振蕩,并考慮系統(tǒng)的抗干擾性能。當(dāng)| EC |較 小時,Kd值可取大些,通常取為中等大小;當(dāng)| EC |較大時,Kd值應(yīng)取小些。3. 根據(jù)權(quán)利要求1或2所述的基于模糊PID算法的船舶航向控制器,其特征在于,所述模 糊參數(shù)校正單元在校正前需要將模糊量轉(zhuǎn)變?yōu)榍逦?,具體如下: 先計算輸出量模糊集山中各元素 XKiilJJ...)與其隸屬度yi的乘積,再計算該乘積 和的平均值,即ζ均值Χ〇便是加權(quán)平均法所得模糊集合的判決結(jié)果; 根據(jù)上述得到的檔數(shù)Χ〇,其變化范圍為[Zmin,Zmax],實際控制量的變化范圍為[u min, umax],采用線性變換,則式Η稱為比例因子,U為控制執(zhí)行機構(gòu)的實際控制量,即PID參數(shù)。
【文檔編號】G05D1/02GK105955269SQ201610315782
【公開日】2016年9月21日
【申請日】2016年5月12日
【發(fā)明人】許湘蓮, 安蒙強
【申請人】武漢理工大學(xué)