AGVPID自動控制調(diào)試小結(jié)_第1頁
AGVPID自動控制調(diào)試小結(jié)_第2頁
AGVPID自動控制調(diào)試小結(jié)_第3頁
AGVPID自動控制調(diào)試小結(jié)_第4頁
AGVPID自動控制調(diào)試小結(jié)_第5頁
已閱讀5頁,還剩7頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、*AGV PID 調(diào)試在 AGV 控制算法中,PID 算法是最基礎(chǔ)也是最重要的一環(huán)。PID 算法運用起來其實非常簡單,幾行代碼就能實現(xiàn),困難的地方就是參數(shù)整定了,需要不斷的嘗試找到最佳參數(shù)。.PID 控制算法的基本思想PID 算法是一種具有預見性的控制算法,其核心思想是:1) PID 算法不但考慮控制對象的當前狀態(tài)值(現(xiàn)在狀態(tài)),而且還考慮控制對象過去一段時間的狀態(tài)值(歷史狀態(tài))和最近一段時間的狀態(tài)值變化(預期)由這 3 方面共同決定當前的輸出控制信號;2) PID 控制算法的運算結(jié)果是一個數(shù),利用這個數(shù)來控制被控對象在多種工作 狀態(tài)(比如加熱器的多種功率,閥門的多種開度等)工作,一般輸出形式

2、為 PWM,基本上滿足了按需輸出控制信號,根據(jù)情況隨時改變輸出的目的。PID 控制算法的基本思想大致如上, 但要針對不同的場景做出相應調(diào)整。 比如針對 AGV 的方向控制,我們就需要著重考慮 AGV 的當前狀態(tài)-位置偏差值和角度偏差值(比例調(diào)節(jié)), 預期狀態(tài)輔助調(diào)控(微分調(diào)節(jié)),對于歷史狀態(tài)則不用考慮(積分調(diào)節(jié)) 。在實際調(diào)控中會發(fā)現(xiàn), 一般情況下只要比例控制得當, 車體本身運行就很平穩(wěn)了, 加入 微分調(diào)節(jié)是為了處理 AGV 受到外力撞擊時的突發(fā)情況。這里不考慮積分調(diào)節(jié)是因為,AGV方向控制是實時動態(tài)調(diào)控的,歷史誤差在次情況下沒有太多意義。*二.PID 算法分析:PID 算法從其字面理解是:P

3、-比例控制、I-積分控制和 D-微分控制。下面根據(jù) T3 實際 調(diào)試過程注解下:1 、比例控制設(shè)某控制系統(tǒng):用戶設(shè)定值為 SV(也就是希望通過 PID 控制算法使被控制對象的狀態(tài)值保持在 SV 的附件)。1從系統(tǒng)投入運行開始,控制算法每隔一段時間對被控制對象的狀態(tài)值進行采樣。由此,可得到開機以來由各個采樣時間點被控制對象的狀態(tài)值所形成的數(shù)據(jù)序列:X1,X2, X3, X4, . Xk-2,Xk-1,Xk說明:X1 :開機以來的第一次采樣值Xk:目前的采樣值(最近一次的采樣值)2從這個采樣值序列中提取出三方面信息:當前采樣值 Xk 與用戶設(shè)定值 SV 之間的差值:EkEk =Sv - Xk分析

4、Ek:L AO說明當前狀態(tài)值未達標Ek T =0 :說明當前控制狀態(tài)值正好滿足要求-0 :說明當前狀態(tài)值已經(jīng)超標結(jié)論:Ek 反應了控制對象當前值與設(shè)定值的偏差程度,可以根據(jù)Ek 的大小對輸出信號 OUT 進行調(diào)整:偏差程度大 OUT 增大,偏差程度小 OUT 減小。即輸出信號的強弱與當前偏差程度的大小成比例,所以根據(jù)Ek 的大小來給出控*制信號 OUT 的當前值的算法稱為比例控制(Proportion )。用數(shù)學模型可以表示為:POUT=( Kp*Ek)+ OutOKp: 一般稱之為比例系數(shù),可以理解為硬件上的放大器(或衰減器) ,適當選取 Kp 將當前誤差值 Ek按一定的增益放大或縮小,以提

5、高控制算法的相應速度。OutO:是一個常數(shù),目的是為了當 Ek 為 0 時,確保輸出信號不為 0,以不至 于在當前值與設(shè)定值相等時控制器輸出信號 OUT 為 0,系統(tǒng)處于無控制信號的 失控狀態(tài)。陀螺儀循跡時,上電后采集一個角度數(shù)據(jù)作為SV (此時車身與軌道無角度偏差),此后采集的角度數(shù)據(jù)均為 Xk,Ek =Sv - Xk 。但實現(xiàn) AGV 導航僅有角度偏差數(shù)據(jù)無法形成閉 環(huán)控制,我們還需要攝像頭確定 AGV 的位置偏差數(shù)據(jù)。 使用 OPEM-MV3 進行調(diào)試時,可以 直接從攝像頭模塊獲取出 AGV 角度偏差值 EK_A 和距離偏差值 EK_D(相對于軌跡中心), 注意在此時獲取的數(shù)據(jù)本身就是偏

6、差值。為了實現(xiàn)閉環(huán)控制,數(shù)學模型如下:Pout= ( KP_A * EK_A ) + ( KP_D * EK_D ) + Out調(diào)整 KP_A 和 KP_D 實現(xiàn)對車身導航的比例控制。2、積分控制將投入運行以來的各個采樣值都與設(shè)定值相減,可得到開機以來每個采樣時刻的偏差序列數(shù)據(jù):E1,E2,E3 .Ek-2,Ek-1,Ek說明:E1:開機的第一個采樣點與設(shè)定值的偏差E 仁 SV-X1 ;E2=SV-X2 ;EK-2=SV-XK-2 ;EK-仁 SV-XK-1 ;Ek:當前的采樣值與設(shè)定值的偏差EK=SV-XK分析開機以來的誤差序列:每個偏差值可能有:0, 0, =0 這三種可能的值,因為從開機

7、到現(xiàn)在, 控制算法不斷輸出控制信號對被控對象進行控制,導致了過去這段時間有時候超標(Ex0),有時候正好滿足要求(Ex=0)如果將這 些偏差值進行累加求代數(shù)和得到 Sk,即:Sk=E1+E2+E3+.+Ek-2+Ek-1+Ek分析 Sk:- 0:過去大多數(shù)時候未達標Sk -=0 :過去控制效果較理想-o:說明從上一采樣時刻到當前誤差有增大趨勢Dk =0:說明從上一采樣時刻到當前誤差平穩(wěn)-0Dk=0Dkpid.DCmax)/計算出的理論輸出數(shù)據(jù)過大pid .Io ut=pid.DCmax;else if(pid.lout-pid.DCmax)/計算出的理論輸出數(shù)據(jù)過小pid .Io ut=-pi

8、d.DCmax;DelEk=pid.Ek-pid.Ek_1;/最近兩次偏差之差*pid.Dout=pid.Kd*DelEk;/ 微分輸出*附錄二:PID.h#ifndef _PID_H#defi ne _PID_H#in elude mai n.htypedef structfloat Sv; II 初始角度值float Pv; II 反饋角度值float Kp; II 比例系數(shù)float Ki; II 比例系數(shù)float Kd; II 比例系數(shù)float T; IIPID 計算周期-采樣周期float DST;IIDisappears shakes time 消抖時間float Ek;II 本次偏差float Ek_1;II 上次偏差float SEk;II 歷史偏差之和float Pout;float Iout;float Dout;float OUTO;II 常數(shù)float OUT;II 輸出u16 OpTime;IIPID 作用時

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論