久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 2332|回復: 1
打印 上一主題 下一主題
收起左側

零基礎制作平衡小車【連載】10---PID調參

[復制鏈接]
跳轉到指定樓層
樓主
ID:223481 發表于 2020-12-17 22:03 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
貼個原文鏈接:

https://blog.csdn.net/D_SEngineer?spm=1011.2124.3001.5113

不定時發送福利,歡迎小伙伴們交流學習。

PID實戰也已經結束了,基本上也算上是一個小項目了完成了,既然完成了,這篇就來做個總結一下吧。

網上很多關于PID調參的文檔,基本都是理論,也沒有圖片說明,這對于小白入門來說很是頭疼。別人的理論咱都看的懂,一到自己就懵逼。為了解決這一問題,我把程序源碼放到公眾號了,你可下載下來,在結合我這片文檔說明,自己動手實踐一下。自己不實踐,心里總是沒底,只有自己體會一下,才能真正弄明白。

PID調參

首先說說調參吧,關于PID調參,我用一句話總結一下:跟著感覺走。

為啥要這樣說呢,因為對于初學者來說,只是寫個程序,然后用試湊法進行匹配PID三個系數,以此來達到較好的控制效果。試湊法是什么,不就是跟著感覺走嘛,這種感覺就跟寫英語試卷一樣。

不過話又說過來,這個感覺可不是隨心所欲,為所欲為的,這也是有一定理論基礎支撐的。一般調節方法我做個總結,如下:

1.先調節P項,其他項系數都設為0

這個P項怎么調呢?再調之前我們先回憶一下【連載6】講的內容,P到底有什么用。首先看下單獨P項的公式:

OUTp= K*EkOUTp= 系數*(設定值 - 當前采樣值)

Ek為當前誤差。

以我們實戰的例子來講,假設我們設定的目標值為100,我們此刻采樣的編碼器的值為50,此時PID中I和D的系數都為0,也就說后面兩項不用管,只關心P項就行了。而P項公式是當前誤差乘上一個系數,這個系數就是我們要設定的P項系數,那么我們是不是應該將P盡可能的大,因為我們需要系統盡快的達到設定值,根據這個思路我們先將P設定為0.5,先試試效果。

當P = 0.5時,實際效果如下圖:

圖片上的點點是實際采樣的編碼器脈沖數,橫線是我們設定的目標值。

看看點點形成的拋物線,雖然能達到目標值,但是時間有點長,這個效果不是最好的,當然這個也不是絕對的,有些系統是需要慢慢接近目標值的,要看系統要求。這里我們控制轉速,目的是讓轉速盡可能快的接近目標值,因此我們在加大P項試試。

當P = 1時,實際效果如下圖:


相比上面那張圖片是不是明顯更快的接近目標值了,拋物線更陡了,說明速度更快了。一般情況下,我們單獨調節P時要將實際采樣值超過目標值的百分之30-50左右,那么我們試試將P設為5

當P = 5時,感覺還不錯,抖個兩三下就可以達到很好地效果了,實際效果如下圖:


2.在P = 5的基礎上,調節I

你會發現,只有一個P就能達到幾乎無靜態誤差的效果,原因是程序中采集完編碼器值代入pid計算,計算完會得出一個增量值,之后用之前的pwm加上計算之后的增量值,如果這次剛好沒誤差,pwm會保持上一次的值。不過加上I你會發現,不僅速度變快了,而且過沖變小。

當I = 1時,實際效果如下圖:效果是不是特別好,迅速達到目標值穩定下來。相比剛才沒有I的時候,過沖是不是變小了。這種效果基本上已經算的上是完美了、

當I = 2時,實際效果如下圖:I的抑制太大當I = 0.05時,實際效果如下圖:I的抑制太小


其實就本系統而言,已經不需要D了,目前P=5,I=1時效果就已經很不錯了。不過既然是學習,就把每一個參數都演示一下,看看到底都是起到什么作用,和我們前面說的理論是否一致。

3.在P = 5,I = 0.05的基礎上,調節D選擇I=0.05是為了讓系統繼續有個過沖,因為D是起到預判作用的,會削弱增長的速度,如果I=1,在加上D,系統的增長速度就慢了。

當D = -0.05時,實際效果如下圖:

當D=-1時,效果如下圖:你會發現D越大,回彈的力度就越大,系統震蕩時間變長。這是積分作用時間長造成的。微分過大,造成阻尼過大,積分面積就過大,造成超調。 在沒達到目標值前,積分都是正的,越接近目標值,pd作用越小,而積分卻累積了很大。第一次超調之后積分才慢慢可以和負的抵消。最后慢慢接近目標值。


最終確定P=5,I=0.05,D=-0.05。

這就是整個PID調參過程。

總結

    P的作用是將系統盡可能快的接近目標值,在調參的時候,先將ID設為0,之后將系統調節至超調量為目標值的50%左右,通俗的講就是將系統超過目標值一些。
    I的作用是消除靜態誤差
    D的作用也是阻尼,當Kd越大,你會發現震蕩越嚴重,就像一個彈簧,你往外拉的力越大,彈簧反彈的力越大


其實光看是不行的,只有自己親自調試一遍,心里才有譜。



分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏2 分享淘帖 頂1 踩
回復

使用道具 舉報

沙發
ID:830831 發表于 2020-12-18 21:30 | 只看該作者
這么好的事例貼,必須得頂哇
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 亚洲欧美日韩久久久 | 欧美片网站免费 | 亚洲免费一区二区 | 青青久久 | 碰碰视频 | 97久久国产| 午夜精品久久久久久久久久久久久 | 成人性视频免费网站 | 国产精品视频在线免费观看 | 二区三区视频 | 久久免费视频观看 | 久草视频观看 | 欧美日韩精品中文字幕 | 青青久在线视频 | 久久综合av | 成人免费共享视频 | 欧美日产国产成人免费图片 | 亚洲最大av | 97精品国产 | 国产精品久久免费观看 | 久久久久99 | 免费观看av| 久久一区 | 精品一区二区三区免费毛片 | 午夜视频在线免费观看 | 精品欧美一区二区三区免费观看 | 国产视频久久 | 国产在线一区观看 | 亚洲精品福利在线 | 狠狠色网| 最新国产在线 | 久草免费在线视频 | 久久久久久久夜 | 91免费视频 | 国内精品久久久久 | 欧美视频在线观看 | 韩国理论电影在线 | 亚洲国产成人av好男人在线观看 | 日日操天天射 | 国产1区2区3区 | 国产乱码精品一区二区三区中文 |