找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開始

搜索
查看: 2411|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

零基礎(chǔ)制作平衡小車【連載】12---平衡小車控制原理

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:223481 發(fā)表于 2020-12-17 22:07 | 只看該作者 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
前言

截止目前,初代小車已經(jīng)調(diào)試完畢,功能上只能直立,后期還會(huì)加上更多功能。

前面關(guān)于pid的內(nèi)容也已經(jīng)更新完畢,如果你是跟著我的教程走的話,那么現(xiàn)在的你最起碼對(duì)PID已經(jīng)有所了解了,那么后面我就主要講解一下平衡小車的控制原理。結(jié)合理論和實(shí)踐,徹底學(xué)會(huì)PID。

一、平衡小車為什么會(huì)倒?

說到這,那就不得不復(fù)習(xí)一下高中的物理知識(shí)-----受力分析。先看看下面一張圖–單擺,來個(gè)受力分析:


受力分析說明:如圖所示,單擺擺長為L,擺球質(zhì)量為m,從平衡位置О運(yùn)動(dòng)到某點(diǎn)A(不是最高點(diǎn))時(shí)的速度為V,此時(shí)擺線拉力為T,擺角為θ。對(duì)擺球所受重力和拉力進(jìn)行受力分析,此時(shí)小球應(yīng)該只受兩個(gè)力,一個(gè)是重力mg,一個(gè)是線的拉力T。把重力進(jìn)行分解為徑向分力F’( = mgcosθ)和切向分力F( = mgsinθ):

徑向:T - mgcosθ = mv’/L(徑向合力充當(dāng)物體做圓周運(yùn)動(dòng)的向心力)切向:F= mgsinθ (切向合力充當(dāng)物體做簡諧運(yùn)動(dòng)的回復(fù)力)

徑向力我們不用管,我們來分析一下切向力。1.假設(shè)空氣沒有阻力由于小球一直受到一個(gè)切向力,那么小球會(huì)一直做自有震蕩運(yùn)動(dòng)2.假設(shè)空氣阻力很小空氣阻力會(huì)慢慢消耗切向力,小球會(huì)停下來,但是時(shí)間會(huì)很長3.假設(shè)空氣阻力很大空氣阻力會(huì)慢慢消耗切向力,小球也會(huì)停下來,但是時(shí)間先對(duì)與2會(huì)縮短

因?yàn)樵诳諝庵羞\(yùn)動(dòng)的單擺,由于受到空氣的阻尼力,單擺最終會(huì)停止在垂直平衡位置?諝獾淖枘崃εc單擺運(yùn)動(dòng)速度成正比,方向相反。阻尼力越大,單擺越會(huì)盡快在垂直位置穩(wěn)定下來。


看到這里,我們?cè)诼?lián)想一下平衡小車,看看有什么區(qū)別。下圖是平衡小車傾斜時(shí)上方某一點(diǎn)的受力分析:

平衡小車有個(gè)現(xiàn)象,當(dāng)你沒有上電時(shí),小車如果機(jī)械結(jié)構(gòu)比較好的情況下,在垂直的時(shí)候是可以單獨(dú)直立不到的。但是只要稍微有點(diǎn)角度,他就會(huì)順著這個(gè)角度加速倒下。因?yàn)樵诖怪钡臅r(shí)候,小車受到的回復(fù)力=mgsinθ,而θ=0,因此回復(fù)力等于0,。此時(shí)只有一個(gè)mg和地面對(duì)小車的支撐力,兩者相抵消,受力平衡,從而直立不到。但是稍微有點(diǎn)角度就會(huì)打破這一受力平衡。因?yàn)樵谒x平衡位置的時(shí)候,所受到的回復(fù)力與位移方向相同,而單擺卻相反!因此,平衡小車便會(huì)加速偏離垂直位置,直到倒下。如何通過控制使得平衡小車能夠像單擺一樣,穩(wěn)定在垂直位置呢?要達(dá)到這一目的,只有兩個(gè)辦法:一個(gè)是改變重力的方向;另一個(gè)是增加額外的受力,使得回復(fù)力與位移方向相反才行。顯然能夠做到的只有第二種方法。

二、平衡小車直立原理

怎么增加一個(gè)額外力使得回復(fù)力與位移方向相反呢?看下圖:

讓電機(jī)旋轉(zhuǎn),使得小車運(yùn)動(dòng)方向和傾倒方向一致。這樣就能產(chǎn)生一個(gè)力F1,使得小車保持平衡。

那么問題來了,新手都會(huì)遇到一個(gè)問題,為啥讓電機(jī)旋轉(zhuǎn),會(huì)使得小車保持平衡?知其然,更要知其所以然

解決這一問題只有一個(gè)辦法----還是受力分析、在這之前呢,先給大家說一個(gè)現(xiàn)象,幫助大家理解。

老司機(jī)當(dāng)然還是要開車呀,當(dāng)你坐在車?yán),腳踩油門加速的時(shí)候,你會(huì)發(fā)現(xiàn),你的上半身會(huì)向后仰,仿佛有個(gè)人坐在你的大腿上想放倒你。不巧的是后面有個(gè)座椅支撐著你,座椅對(duì)你產(chǎn)生推背感。

這一現(xiàn)象從物理的角度怎么解釋呢?汽車發(fā)動(dòng)的瞬間你的身體因?yàn)閼T性會(huì)保持靜止?fàn)顟B(tài),但因?yàn)槟愕南掳肷硌恳韵拢ㄗr(shí))都直接接觸汽車,因?yàn)槟Σ亮Φ木壒蕰?huì)伴隨車子向前移動(dòng)。于是見證奇跡的時(shí)刻到了,你下半身隨著車子移動(dòng),上半身因?yàn)閼T性保持不動(dòng),結(jié)果就變成了下身拉動(dòng)上身即出現(xiàn)了你所謂的身體后仰狀態(tài)。類比我們的平衡小車,當(dāng)電機(jī)旋轉(zhuǎn)時(shí),會(huì)產(chǎn)生一個(gè)力使得小車下半身向傾倒方向加速,這個(gè)力會(huì)使得上半身產(chǎn)生一個(gè)回復(fù)力與位移方向相反,這樣就能保持平衡了。

下圖為受力分析圖,圖中省略一部分受力,比如摩檫力、輪子對(duì)上半身的支持力等等,主要是F和-F1COSθ。


受力分析之后就能列出回復(fù)力Y的關(guān)系式了:


又因?yàn)樵趯?shí)際運(yùn)用當(dāng)中,平衡小車擺動(dòng)角度很小,因此進(jìn)行線性化簡化。并假設(shè)負(fù)反饋控制是車輪加速度 a 與偏角 θ 成正比,比例為 k。代入公式得出:

如果比例k>g ,( g是重力加速度)那么回復(fù)力的方向便于位移方向相反了,這樣就能使小車直立了。

為了使得倒立擺能夠盡快地在垂直位置穩(wěn)定下來,還需要增加阻尼力。雖然存在著空氣和摩擦力等阻尼力,相對(duì)阻尼力比較小。因此需要另外增加控制阻尼力。增加的阻尼力與偏角的速度成正比,方向相反。最終得出下圖公式:

綜上所述可得控制車輪加速度的控制算法:式中 θ 為小車傾角,θ’ 為角速度,k 、k1 均為比例系數(shù)。

這就是小車直立環(huán)的推導(dǎo)過程,乍一看這個(gè)公式其實(shí)就是PD控制器。

三、速度環(huán)的引入

平衡小車的最高境界是什么?一個(gè)字:穩(wěn)怎么穩(wěn)?立在那不動(dòng)。怎么不動(dòng)?保持直立并且速度為0(保持直立也有可能是勻速運(yùn)動(dòng))。怎么速度為0?加入速度環(huán)。加入速度環(huán)的原因還有以下兩點(diǎn):1.配合直立環(huán),讓小車更加穩(wěn)定2.為后面遠(yuǎn)程遙控做基礎(chǔ)

四、串級(jí)PID

由于速度環(huán)和直立環(huán)都是控制小車電機(jī)的轉(zhuǎn)速,因此兩者需串在一起。又因?yàn)槠胶庑≤囎钪饕氖侵绷,因(yàn)樗俣拳h(huán)的輸出作為直立環(huán)的輸入,直立環(huán)的輸出最終作用到小車電機(jī)上。最終形成下圖框圖的形式:


總結(jié)

重點(diǎn)理解直立原理,受力分析圖。知識(shí)點(diǎn)都不難,回憶回憶高中物理就能分析出來了。至此,理論部分已經(jīng)差不多了,把理論部分理解透徹,代碼部分也就好理解了。代碼實(shí)現(xiàn)見下一節(jié)。



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

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表