在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

四軸PID算法:單環和串級,你搞懂了嗎?

lPCU_elecfans ? 來源:未知 ? 作者:肖冰 ? 2019-06-10 11:34 ? 次閱讀

這里主要講解的PID算法屬于一種線性控制器,這種控制器被廣泛應用于四軸上。要控制四軸,顯而易見的是控制它的角度,那么最簡單,同時也是最容易想到的一種控制策略就是角度單環PID控制器,系統框圖如圖所示:

或許有些朋友看得懂框圖,但是編程實現有一定困難,在這里筆者給出了偽代碼:

上述角度單環PID控制算法僅僅考慮了飛行器的角度信息,如果想增加飛行器的穩定性(增加阻尼)并提高它的控制品質,我們可以進一步的控制它的角速度,于是角度/角速度-串級PID控制算法應運而生。在這里,相信大多數朋友已經初步了解了角度單環PID的原理,但是依舊無法理解串級PID究竟有什么不同。

其實很簡單:它就是兩個PID控制算法,只不過把他們串起來了(更精確的說是套起來)。那這么做有什么用?答案是,它增強了系統的抗干擾性(也就是增強穩定性),因為有兩個控制器控制飛行器,它會比單個控制器控制更多的變量,使得飛行器的適應能力更強。為了更為清晰的講解串級PID,這里筆者依舊畫出串級PID的原理框圖,如圖所示

同樣,為了幫助一些朋友編程實現,給出串級PID偽代碼:

而筆者在整定串級PID時的經驗則是:先整定內環PID,再整定外環P。

內環P:從小到大,拉動四軸越來越困難,越來越感覺到四軸在抵抗你的拉動;到比較大的數值時,四軸自己會高頻震動,肉眼可見,此時拉扯它,它會快速的振蕩幾下,過幾秒鐘后穩定;繼續增大,不用加人為干擾,自己發散翻機。

特別注意:只有內環P的時候,四軸會緩慢的往一個方向下掉,這屬于正常現象。這就是系統角速度靜差。

內環I:前述PID原理可以看出,積分只是用來消除靜差,因此積分項系數個人覺得沒必要弄的很大,因為這樣做會降低系統穩定性。從小到大,四軸會定在一個位置不動,不再往下掉;繼續增加I的值,四軸會不穩定,拉扯一下會自己發散。

特別注意:增加I的值,四軸的定角度能力很強,拉動他比較困難,似乎像是在釘釘子一樣,但是一旦有強干擾,它就會發散。這是由于積分項太大,拉動一下積分速度快,給 的補償非常大,因此很難拉動,給人一種很穩定的錯覺。

內環D:這里的微分項D為標準的PID原理下的微分項,即本次誤差-上次誤差。在角速度環中的微分就是角加速度,原本四軸的震動就比較強烈,引起陀螺的值變化較大,此時做微分就更容易引入噪聲。因此一般在這里可以適當做一些滑動濾波或者IIR濾波。從小到大,飛機的性能沒有多大改變,只是回中的時候更加平穩;繼續增加D的值,可以肉眼看到四軸在平衡位置高頻震動(或者聽到電機發出滋滋的聲音)。

前述已經說明D項屬于輔助性項,因此如果機架的震動較大,D項可以忽略不加。

外環P:當內環PID全部整定完成后,飛機已經可以穩定在某一位置而不動了。此時內環P,從小到大,可以明顯看到飛機從傾斜位置慢慢回中,用手拉扯它然后放手,它會慢速回中,達到平衡位置;繼續增大P的值,用遙控器給不同的角度給定,可以看到飛機跟蹤的速度和響應越來越快;繼續增加P的值,飛機變得十分敏感,機動性能越來越強,有發散的趨勢。

如何做到垂直起飛、四軸飛行時為何會飄、如何做到脫控?

這三個問題一眼看上去是三個不同的問題,其實就原理上講,他們的原因在絕大多數情況下都是由于加速度計引起的。如果飛機可以垂直起飛,說明你的加速度計放置地很水平,同時也說明你的PID控制算法參數找的不錯,既然可以垂直起飛,那么飛行過程中,只要無風,四軸幾乎就不會飄,自然而然就可以脫控飛行。由此可見,加速度計是個十分重要的器件。

在姿態解算中,或者說在慣性導航中,依靠的一個重要器件就是慣性器件,包括了加速度計和陀螺儀。陀螺儀的特性就是高頻特性好,可以測量高速的旋轉運動;而加速度計的低頻特性好,可以測量低速的靜態加速度。無論是何種算法(互補濾波、梯度下降、甚至是Kalman濾波器),都離不開對當地重力加速度g的測量和分析。

慣性導航利用的就是靜態性能好的加速度計去補償動態性能好的陀螺儀漂移特性得到不飄并且高速的姿態跟蹤算法,因此基于慣性器件的姿態解算,加速度計是老大,它說了算。

下面,我給大伙推理一下四軸如何平穩飛信的思路,歡迎各位批評指出:

首先,為了讓四軸平穩的懸停或飛行在半空中,四個電機必須提供準確的力矩->假設力矩與電機PWM輸出呈線性關系,也就是必須提供準確的4路PWM->4路PWM由遙控器輸入(期望角度)、PID算法及其參數和姿態解算輸出(當前角度)組成,假設遙控器輸入不變(類似脫控)、PID算法及其參數也較為準確(PID參數無需十分精確,但只要在某個合理的范圍內,控制品質差不了多少),也就是姿態解算的輸出必須是十分準確的,可以真實反應飛行器的實際角度->姿態解算的結果由加速度計和陀螺儀給出,根據前述慣性導航的描述,加速度計補償陀螺儀,因此要得到精確的姿態解算結果,務必要求加速度輸出精確的重力加速度g->這里僅討論懸停飛行,因此忽略掉額外的線性加速度(事實證明,在四軸強機動飛行過程中,線性加速度必須要考慮并消除),假設加速度計輸出重力加速度g,這個重力加速度g必須十分“精確”。

總結一下:精準力矩->精準PWM->精準姿態->加速度計輸出“精確”重力加速度g。

這里的“精確”打了引號,意思不是說加速度的性能十分好,要輸出精確的當地加速度g,而是說它能夠準確反應機架的角度。為了達到懸停、平穩的飛行效果,控制算法輸出的PWM會讓加速度計輸出的重力加速度g在XOY平面內的分量就可能少,也就是說:PID控制算法控制的不是機架水平,而是加速度計水平,PID不知道機架是什么東西,它只認加速度計。

上圖中,加速度計(紅線)與四軸機架的水平面(虛線)呈30°。起飛后,PID控制算法會嘗試將加速度計調整至水平位置,因此四軸就會往圖中左邊飄,傾斜角度也為30°。這就是為什么飛機無法垂直起飛,或者飛行過程中往一個方向飄的原因:加速度計和機架沒有水平。因此在加速度計的機械安裝時,盡量保證加速度計與機架水平。如果有些朋友已經將加速度計固定在飛控板上,可以通過遙控器的通道微調功能設置懸停時的期望角度,軟件上校正這種機械不水平。

除了上述討論的加速度計安裝水平問題,也需要對加速度計進行零偏置校正,具體的方法叫做6位置標定法:即將加速度計沿著6個方向放置,分別記錄重力加速度計g在6個方向上的最大輸出值,然后取平均,得到圓球的中心點(這里假設g投影為球,實際上為橢球,需要進行最小二乘法擬合求三軸標定系數)。

最后提一點,如果加速度計和遙控器均做了調整,飛機可以做到垂直起飛,并且飛行效果還行,但是飛機的回中速度較慢,感覺就像是在抬轎子一樣。具體描述:懸停時,猛往一個方向打搖桿后立即放手,飛機會往搖桿方向走很遠才停下。這是因為飛機過于穩定,也就是內環的作用過強或者外環作用過弱導致,解決方法是降低內環P或者加大外環P。


聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • PID
    PID
    +關注

    關注

    35

    文章

    1472

    瀏覽量

    85514
  • 四軸飛行器
    +關注

    關注

    55

    文章

    206

    瀏覽量

    51148

原文標題:四軸PID算法:單環和串級,你搞懂了嗎?

文章出處:【微信號:elecfans,微信公眾號:電子發燒友網】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    什么是PID? 簡單PIDPID的優劣對比

    什么是PID? 什么是PID?顧名思義就是兩個串起來的
    的頭像 發表于 02-26 15:21 ?2w次閱讀
    什么是<b class='flag-5'>串</b><b class='flag-5'>級</b><b class='flag-5'>PID</b>? 簡單<b class='flag-5'>PID</b>和<b class='flag-5'>串</b><b class='flag-5'>級</b><b class='flag-5'>PID</b>的優劣對比

    【集合貼】5種常用的飛行器PID算法講解集合

    舵跟隨效應差。2. 三角函數直接解算歐拉角+卡爾曼濾波+PID版本效果:卡爾曼濾波噪聲偏大,滯后略微嚴重,
    發表于 06-05 11:07

    飛行器的PID算法

    飛行器的PID算法 飛行器采用的是雙閉環PID
    發表于 01-15 17:03

    PID控制算法

    PID控制-角度PID控制
    發表于 04-07 22:40

    無人機PID控制算法詳解(PIDPID)

    :這篇文章分為三個部分:PID原理普及常用的兩種PID算法講解(
    發表于 07-14 14:34

    飛行器控制器的秘密——PID算法大解析

    常用的兩種PID算法  這里主要講解的PID算法屬于一種線性控制器,這種控制器被廣泛應用于
    發表于 05-30 10:08

    PID算法細談:的區別

    這里主要講解的PID算法屬于一種線性控制器,這種控制器被廣泛應用于上。要控制,顯而易見的
    發表于 06-11 10:08

    請問調PID時,內環的輸入是什么?

    調PID時,內環的輸入是什么?是外環的偏差,還是直接是遙控器的輸入。
    發表于 06-17 04:33

    PID調試心得分享!

    算法的介紹。最終我們決定用PID。單純的位置型還是模模糊糊,剛開始來個
    發表于 07-23 22:10

    什么是PID

    什么是PIDPID的偽算法
    發表于 03-07 08:11

    角度PID/PID的原理圖

    角度PID的原理圖PID的原理圖
    發表于 03-07 06:42

    PID控制算法詳解(PIDPID)

    飛行器的PID控制算法介紹
    發表于 08-29 14:57 ?52次下載

    PID算法

    從小到大,拉動越來越困難,越來越感覺到在抵抗的拉動;到比較大的數值時,
    的頭像 發表于 11-26 11:32 ?3169次閱讀
    <b class='flag-5'>四</b><b class='flag-5'>軸</b><b class='flag-5'>PID</b><b class='flag-5'>算法</b>:<b class='flag-5'>單</b><b class='flag-5'>環</b>和<b class='flag-5'>串</b><b class='flag-5'>級</b>

    角度PID偽代碼資料下載

    電子發燒友網為提供角度PID偽代碼資料下載的電子資料下載,更有其他相關的電路圖、源代
    發表于 03-30 08:46 ?26次下載
    角度<b class='flag-5'>單</b><b class='flag-5'>環</b>與<b class='flag-5'>串</b><b class='flag-5'>級</b><b class='flag-5'>PID</b>偽代碼資料下載

    PID算法搞懂了嗎

    上述角度PID控制算法僅僅考慮了飛行器的角度信息,如果想增加飛行器的穩定性(增加阻尼)并提高它的控制品質,我們可以進一步的控制它的角速度,于是角度/角速度-
    的頭像 發表于 12-11 17:35 ?1402次閱讀
    <b class='flag-5'>四</b><b class='flag-5'>軸</b><b class='flag-5'>PID</b><b class='flag-5'>算法</b>:<b class='flag-5'>單</b><b class='flag-5'>環</b>和<b class='flag-5'>串</b><b class='flag-5'>級</b>,<b class='flag-5'>你</b><b class='flag-5'>搞懂</b><b class='flag-5'>了嗎</b>?
    主站蜘蛛池模板: 美女被上视频| 992tv国产精品福利在线| 亚洲一区二区中文字5566| 羞羞爱爱| 国产一级特黄高清免费大片| 欧美午夜性春猛交bbb| 久99热| 欧美成人精品一区二三区在线观看| 91成人在线播放| 黄色高清视频网站| 三级国产| 天天拍夜夜爽| 求av网址| 久久都是精品| 国产v精品成人免费视频400条| 在线播放色| 国内一级特黄女人精品片| 国产香蕉一区二区精品视频| 伊人网亚洲| 成年网站在线播放| 91中文字幕视频| 日本特黄特色大片免费看| 天天综合天天| 狠狠色噜噜狠狠狠狠999米奇| 免费高清特级毛片| 四虎影视网站| 成人国产日本亚洲精品| 丁香五月情| 啪啪色视频| 美女和美女| 亚1州区2区3区4区产品乱码| 777人体粉嫩u美图| 男男h啪肉np文总受| 久久久噜噜噜久久| 在线网站黄| 青草午夜精品视频在线观看| 欧美色惰aⅴ| 四虎影院精品在线观看| 天天想天天干| 亚洲无线视频| 亚洲爽视频|