【十七届恩智浦智能车】平衡单车——控制篇(串级)
【十七屆恩智浦智能車】有刷平衡單車——控制篇(串級)
- 寫在前面
- 有刷平衡單車全控制
- 單車平衡穩定
- 陀螺儀姿態解算
- 增量式PID和位置式PID
- 電機串級調試
- ==角速度環==
- ==角度環==
- ==速度環==
- 調試方法
- 舵機環——動態零點
- 單車行走直立
- 行走姿態受力分析
- 向心力環處理方式
- 部分代碼
- 補充
- ==寫得不好僅供參考,如有意見以你為準,希望大家取得好成績(沖無刷)==
寫在前面
大二第一次參加智能車競賽,u1s1這比賽是真滴燒幣,(不排除是我老弄炸東西的可能),花了少說4個月,學到的東西不多,心態倒是好了不少,總體還算是有收獲,還是遺憾占大頭,現在已經想找別的東西做了,就把所學分享給大家吧!;有不少人剛接觸動輪,對有刷不是很熟悉,如果按照Lq官方開源代碼調不成功十有八九是電機出事了,按照以下方向調串級,可以達到不抖且中度抗干擾。希望龍邱品控能更好一點(Lq的驅動做的還不錯- =),希望逐飛的方案能更早一點(狗頭保命)
有刷平衡單車全控制
單車平衡穩定
陀螺儀姿態解算
增量式PID和位置式PID
詳見https://blog.csdn.net/as480133937/article/details/89508034
侵刪
簡單來說,增量式和位置式本質相同,對位置式來說,PID分別進行比例、積分、微分對應現在、過去、未來,而增量式的I在形式上則恰好與位置式P等同,其他兩個參數同理,并且有運算量少的優點。
電機串級調試
串級框架方面,由于角速度的響應快速以及動量輪平衡所根據的動量守恒原理,將角速度環作為內環輸出,而中間是角度環,外面則是速度環,淺圖示一下:
角速度環
角速度環方面使用的是增量式PD,看到有人是使用位置式的,其實兩種基本一樣,只不過增量式計算量較小,對算力壓力不大,另外在單車這種高速振動的系統中,實測增量式中加入積分環節效果一般,很容易因各種問題導致飽和,當然也有看到使用位置式PID調的很好的,這可能和陀螺儀的漂移有關,也就要大家自己來選取一款合適的陀螺儀了,這里就拋磚引玉一下。
角度環
在Lq所開源的Lqr算法當中是以角度環作為主輸出,其中用一個D來處理角速度,實際上加速度才是真正要考慮的點,這也是不耐造的原因之一,(或許加一個角速度環會更好???)在調試過程中,角度環主要是用來補償速度環帶來的溢出或者延遲,因此角度環我只采用了簡單的位置式P進行處理,并且調試過程中是粗調的。
速度環
速度環雖然作為最外環,我卻認為是很重要的一環,因為他決定了你單車受到干擾后保持穩定的能力,采用的是位置式PID進行精調。很多人不理解速度環到底是怎么作為輸入的???????很簡單的例子,假設單車往左倒需要動輪逆時針轉動(車屁股視角),通過編碼器的極性你就可以判斷出此時車身的姿態到底是往哪邊倒的,此時為了讓車往右的方向歸,便需要不斷加速來平衡,這中間就涉及到了溢出的問題,也就是車子會向右倒,這時候就需要粗調角度環來抑制這個影響。(當車身右倒,角度環大就抵消了)
調試方法
先精調角速度環,到往一個方向倒開始覺得困難了就可以調速度環,加上了速度環以后,車子能立2s左右倒下后開始調速度環,一開始建議大家三個環都只進行普通的P控制,實測效果也非常好,能立且抗干擾能力比Lqr好太多。調參過程中盡可能大的增加速度環,外界干擾姿態,觀察歸正情況,若有過沖則增大角度環,而角速度環更像是一個比例系數(如果是純P),所有的修正均可通過修正速度環處理,調好以后加上D值精調。
舵機環——動態零點
調好了平衡以后就該引入舵機輸入了,舵機打角以后車身姿態是顯而易見的會變的,我們可以通過關閉電機后手扶單車測量中點的角度變化,通過一個簡單的比例系數P,對舵機PWM輸入進行處理并輸出疊加到零點上。
4.27補充:有關于舵機對于姿態平衡的影響,其實是分兩個方面的,首先是舵機打角后零點的改變,第二個比較容易忽視的地方是舵機打角過程中與地面的作用力,該點影響因素較多,因此直接上上位機進行滿打角對角度進行觀測,結果發現兩個因素極性相反,但是后者很快會被抵消,但是處理不好也是調試過程中倒地的重要因素之一,以下是上位機測試
單車行走直立
行走姿態受力分析
暫時懶得寫了,同樣是動態零點,轉哪邊零點就往哪邊,處理好了就可以壓彎。
向心力環處理方式
暫時懶得寫了,同樣是簡單P,別問為啥不用F=(m*v^2)/2,實測調好了能用,當然也可以嘗試一下,算法總能找到更好的,調好了無差別壓彎,至少1m的速度可以流暢控制轉向。(前提是前面所有參數調試好藍牙控制飛一般的感覺)
部分代碼
完成以上的調試步驟,基本上完賽速度就能上0.7以上了,當然這肯定不是最完美的控制系統,只是給大家一個思路,也沒必要無腦沖LQ的開源代碼。(最近逐飛剛出無刷新方案,真的猛,建議大家可以嘗試用該套路嵌入無刷中控制,無刷存的力比有刷大得多,主要是不容易燒,但是他的穩態轉速沒那么好控制叭)
補充
增量式PI中并不是不能用I,純角速度PI效果甚至比角速度P與速度P耦合更加好,其中作出的對積分的限制決策大家可以自己決定,可以貼上幾個思路供大家參考,其中思路3實測可行。
寫得不好僅供參考,如有意見以你為準,希望大家取得好成績(沖無刷)
總結
以上是生活随笔為你收集整理的【十七届恩智浦智能车】平衡单车——控制篇(串级)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 可视化在线编辑器架构设计
- 下一篇: C语言题目:5-7 购物(二) (25