雙輪自平衡車設(shè)計(jì)報(bào)告_第1頁(yè)
雙輪自平衡車設(shè)計(jì)報(bào)告_第2頁(yè)
雙輪自平衡車設(shè)計(jì)報(bào)告_第3頁(yè)
雙輪自平衡車設(shè)計(jì)報(bào)告_第4頁(yè)
雙輪自平衡車設(shè)計(jì)報(bào)告_第5頁(yè)
已閱讀5頁(yè),還剩11頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、雙輪自平衡車設(shè)計(jì)報(bào)告學(xué)院班級(jí)姓名手機(jī)號(hào)姓名手機(jī)號(hào)姓名手機(jī)號(hào)目錄雙輪自平衡車原理總體方案電路和程序設(shè)計(jì)四、算法分析及參數(shù)確定過(guò)程o>".雙輪自平衡車原理1 .控制小車平衡的直觀經(jīng)驗(yàn)來(lái)自于人們?nèi)粘I罱?jīng)驗(yàn)。一般的人通過(guò)簡(jiǎn)單練習(xí)就可以讓一個(gè)直木棒在手指尖上保持直立。這需要兩個(gè)條件:一個(gè)是托著木棒的手掌可以移動(dòng);另一個(gè)是眼睛可以觀察到木棒的傾斜角度和傾斜趨勢(shì)(角速度)。通過(guò)手掌移動(dòng)抵消木棒的傾斜角度和趨勢(shì),從而保持木棒的直立。這兩個(gè)條,7二I|一行執(zhí)蜘IL控制*去律的|國(guó)-11_,L詼.木樣運(yùn)砌小橋叫I桃一叫洲1件缺一不可,讓木棒保持平衡的過(guò)程實(shí)際上就是控制中的負(fù)反饋控制。圖1木棒控制

2、原理圖2 .小車的平衡和上面保持木棒平衡相比,要簡(jiǎn)單一些。因?yàn)樾≤囀窃谝痪S上面保持平衡的,理想狀態(tài)下,小車只需沿著輪胎方向前后移動(dòng)保持平衡即可。圖2平衡小車的三種狀態(tài)3 .根據(jù)圖2所示的平衡小車的三種狀態(tài),我們把小車偏離平衡位置的角度作為偏差;我們的目標(biāo)是通過(guò)負(fù)反饋控制,讓這個(gè)偏差接近于零。用比較通俗的話描述就是:小車往前傾時(shí)車輪要往前運(yùn)動(dòng),小車往后傾時(shí)車輪要往后運(yùn)動(dòng),讓小車保持平衡。4 .下面我們分析一下單擺模型,如圖4所示。在重力作用下,單擺受到和角度成正比,運(yùn)動(dòng)方向相反的回復(fù)力。而且在空氣中運(yùn)動(dòng)的單擺,由于受到空氣的阻尼力,單擺最終會(huì)停止在垂直平衡位置??諝獾淖枘崃εc單擺運(yùn)動(dòng)速度成正比,

3、方向相反。圖4單擺及其運(yùn)動(dòng)曲線類比到我們的平衡小車,為了讓小車能靜止在平衡位置附近,我們不僅需要在電機(jī)上施加和傾角成正比的回復(fù)力,還需要增加和角速度成正比的阻尼力,阻尼力與運(yùn)動(dòng)方向相反。5平衡小車直立控制原理圖5 .根據(jù)上面的分析,我們還可以總結(jié)得到一些調(diào)試的技巧:比例控制是引入了回復(fù)力;微分控制是引入了阻尼力,微分系數(shù)與轉(zhuǎn)動(dòng)慣量有關(guān)。在小車質(zhì)量一定的情況下,重心位置增高,因?yàn)樾枰幕貜?fù)力減小,所以比例控制系數(shù)下降;轉(zhuǎn)動(dòng)慣量變大,所以微分控制系數(shù)增大。在小車重心位置一定的情況下,質(zhì)量增大,因?yàn)樾枰幕貜?fù)力增大,比例控制系數(shù)增大;轉(zhuǎn)動(dòng)慣量變大,所以微分控制系數(shù)增大。二.總體方案小車總框圖設(shè)定值1

4、0直立PD控制器|一平衡小車角度、角速度反饋STXB2I-103RCT0S3IICTimer*2*延檸宴而7Zhlx設(shè)置與調(diào)試sei*1c=AD*2車體£.立車捐運(yùn)行才的控制調(diào)試與鉉WST-LINK調(diào)試計(jì)算機(jī)rawI2V陀螺儀加速度訐速度檢測(cè)L298N電機(jī)驅(qū)動(dòng)JUULe以壓三.電路和程序設(shè)計(jì)1 .主要元器件選型A.STM32F103RCT最小核心板小容量增強(qiáng)型,32位基于ARM核心的帶16或32K字節(jié)閃存的彳控制器USRCAN、6個(gè)定時(shí)器、2個(gè)ADC、6個(gè)通信接口功能。內(nèi)核:ARM32位的Cortex?-M3CPU-最高72MHz工作頻率,在存儲(chǔ)器的0等待周期訪問(wèn)時(shí)可達(dá)1.25DMi

5、ps/MHz(Dhrystone2.1)。-單周期乘法和硬件除法。存儲(chǔ)器-從16K到32K字節(jié)的閃存程序存儲(chǔ)器。-從6K到10K字節(jié)的SRAM,時(shí)鐘、復(fù)位和電源管理- 2.03.6伏供電和I/O引腳。- 上電/斷電復(fù)位(POR/PDR)可編程電壓監(jiān)測(cè)器(PVD)。- 416MHz晶體振蕩器。- 內(nèi)嵌經(jīng)出廠調(diào)校的8MHz的RC振蕩器。- 產(chǎn)生CPU時(shí)鐘的PLL- 帶校準(zhǔn)功能的32kHzRTC振蕩器低功耗- 睡眠、停機(jī)和待機(jī)模式- VBAT為RTC和后備寄存器供電2個(gè)12位模數(shù)轉(zhuǎn)換器,1科s轉(zhuǎn)換時(shí)間(多達(dá)16個(gè)輸入通道)- 轉(zhuǎn)換范圍:0至3.6V- 雙采樣和保持功能- 溫度傳感器DMA:- 7通道

6、DMA控制器- 支持的外設(shè):定時(shí)器、ADCSPII2C和USART- 多達(dá)80個(gè)快速I/O端口-26/37/51個(gè)I/O口,所有I/O口可以映像到16個(gè)外部中斷;幾乎所有端口均可容忍5V信號(hào)B.L298N雙直流電機(jī)驅(qū)動(dòng)模塊 板載一個(gè)L298N馬達(dá)控制芯片和一個(gè)7805穩(wěn)壓芯片。 模塊可以同時(shí)驅(qū)動(dòng)2個(gè)直流電機(jī)或者一個(gè)五線四相式步進(jìn)電機(jī)。 模塊輸入電壓612V 常用的電機(jī)驅(qū)動(dòng)功能夠用切資料也很好找。C.傳感器MPU6050模塊 此六軸模塊采用先進(jìn)的數(shù)字濾波技術(shù)(卡爾曼濾波),能有效降低測(cè)量噪聲,提高測(cè)量精度。模塊內(nèi)部集成了運(yùn)動(dòng)引擎DMP獲取四元數(shù)得到當(dāng)前姿態(tài)。姿態(tài)測(cè)量精度0.01度,穩(wěn)定性極高,性

7、能甚至優(yōu)于某些專業(yè)的傾角儀!采用高精度的陀螺加速度計(jì)MPU6050通過(guò)IIC協(xié)議輸出保證數(shù)據(jù)的準(zhǔn)確性。 電壓:3V6V。電流:10mA。體積:17.8mmX17.8mm重量:1.1g 測(cè)量維度:加速度:3維,角速度:3維,姿態(tài)角:3維 量程:加速度:±16g,角速度:土2000°/s。 分辨率:加速度:6.1e-5g,角速度:7.6e-30/s。 穩(wěn)定性:加速度:0.01g,角速度0.05°/s。 數(shù)據(jù)輸出頻率100Hz(波特率115200)/20Hz(波特率9600)。 波特率115200kps/9600kps。D.HC-05藍(lán)牙主從一體模塊供電電壓3.3V3.

8、6V;支持AT指令集配置模塊;采用CSR主流藍(lán)牙芯片,藍(lán)牙V2.0協(xié)議標(biāo)準(zhǔn);8位數(shù)據(jù)位、1位停止位、無(wú)奇偶校波特率最高為1382400bps;配對(duì)以后當(dāng)全雙工串口使用,無(wú)需了解任何藍(lán)牙協(xié)議,但僅支持驗(yàn)的通信格式,這也是最常用的通信格式,不支持其他格式。2電路設(shè)計(jì)STM32核心板原理圖PCI承mo;riM0|一maSMCE*R1U,U-PhIiiVB丁WDJKtJjNMJLJlK1M-14*05(PB9TOHCM4KJSC6CJ2!?BSTIM4CH3WMCHCTNB6OTD皿ofic.nre;12CI5QAWIKl拿LKXAIXIOi呻KlADC11.paj'ixTRsrKIAIX12

9、PBJJTDOPCSADCLJFU2KI2PTSClAKltAL中KVfMC(hzidTAIADOPAiEMM2vzt丁二TXADCPAI*JTCKWCLKMJ1MWT7RX皿門VW:TO2、1JD*P44SPTI科,mtfHITF虻KAAuimm汜鼻亡GPUNCRRMdEUm注mg。PAfIAAXJ1X:M4Ape14FAX'l'UfLrCXK:A1XHPC5HWiAHCIPCSPfilADC'SPC7ffl;KJOTiPC。TOIULART?TIGPBhSPf2MOSTWillVUJUJhXPMlq*PL:息心心¥55ran-spiwTCVDO1?fi.L

10、25PI2、苗iaJilt*;闿IS1:K二KvtLiW3立必I$H1>己一帆V4BEk4'='ARX1-W0用1二電機(jī)驅(qū)動(dòng)原理圖嚷機(jī)tae*用口C20電機(jī)場(chǎng)總&限口4-11|v&NDYd*,£TiK名HJ步22Z3b>za2W<u-hAi_£二N£L-sis篁Ei-m一是L9MPU6050原理圖(rNI>I?附15HVDDALTCDASQMdg3<u方ci>'4SB丫質(zhì)一藍(lán)牙模塊原理圖四.算法分析及參數(shù)確定小車直立環(huán)使用PD(比例微分)控制器,其實(shí)一般的控制系統(tǒng)單純的P控制或者PI控制就

11、可以了,但是那些對(duì)干擾要做出迅速響應(yīng)的控制過(guò)程需要D(微分)控制。直立控制的PD代碼intbalance(floatAngle,floatGyro)(floatBias,kp=300,kd=1;intbalance;Bias=Angle-0;計(jì)算直立偏差balance=kp*Bias+Gyro*kd;/計(jì)算直立PWMreturnbalance;/返回直立PWM參數(shù)是平衡小車傾角和Y軸陀螺儀(這個(gè)取決于MPU6050的安裝),調(diào)試過(guò)程包括確定平衡小車的機(jī)械中值、確定kp值的極性(也就是正負(fù)號(hào))和大小、kd值的極性和大小等步驟。在調(diào)試直立環(huán)的時(shí)候,我們要在定時(shí)中斷服務(wù)函數(shù)里面屏蔽速度環(huán)和轉(zhuǎn)向環(huán)。

12、確定平衡小車的機(jī)械中值把平衡小車放在地面上,繞電機(jī)軸旋轉(zhuǎn)觀察小車什么時(shí)候平衡用量角器量大概中值在哪。本小車為2度。 確定kp值的極性(令kd=0)首先我們估計(jì)kp的取值范圍。我們的PWM設(shè)置白是7200代表占空比100%,假如我們?cè)O(shè)定kp值為720,那么平衡小車在土10。的時(shí)候就會(huì)滿轉(zhuǎn)。根據(jù)我們的感性認(rèn)識(shí),這顯然太大了,那我們就可以估計(jì)kp值在0720之間,首先大概我們給一個(gè)值kp=-200,我們可以觀察到,小車往哪邊倒,電機(jī)會(huì)往那邊加速讓小車到下,就是一個(gè)我們不愿看到的正反饋的效果。說(shuō)明kp值的極性反了,接下來(lái)我們?cè)O(shè)定kp=200,這個(gè)時(shí)候可以看到平衡小車有直立的趨勢(shì),雖然響應(yīng)太慢,但是,我

13、們可以確定kp值極性是正的。具體的數(shù)據(jù)接下來(lái)再仔細(xì)調(diào)試。 確定kp值的大?。頺d=0)確定參數(shù)的原則是:kp一直增加,直到出現(xiàn)大幅度的低頻抖動(dòng)。定kp=200,這個(gè)時(shí)候我們可以看到,小車雖然有平衡的趨勢(shì),但是顯然響應(yīng)太慢了。定kp=680,這個(gè)時(shí)候我們可以看到,小車的響應(yīng)明顯加快,而且來(lái)回推動(dòng)小車的時(shí)候,會(huì)有大幅度的低頻抖動(dòng)。說(shuō)明這個(gè)時(shí)候kp值已經(jīng)足夠大了,需要增加微分控制削弱p控制,抑制低頻抖動(dòng)。 確定kd值的極性(令kp=0)我們得到的MPU6050輸出的陀螺儀的原始數(shù)據(jù),通過(guò)觀察數(shù)據(jù),我們發(fā)現(xiàn)最大值不會(huì)超過(guò)4位數(shù)(正常應(yīng)用在平衡小車上的時(shí)候),再根據(jù)7200代表占空比100%,所以我們

14、估算kd值應(yīng)t在03之間,我們先設(shè)定kd=-0.5,當(dāng)我們拿起小車旋轉(zhuǎn)的時(shí)候,車輪會(huì)反向轉(zhuǎn)動(dòng),并沒(méi)有能夠?qū)崿F(xiàn)跟隨效果。這說(shuō)明了kd的極性反了。接下來(lái),我們?cè)O(shè)定kd=0.5,這個(gè)時(shí)候我們可以看到,當(dāng)我們旋轉(zhuǎn)小車的時(shí)候,車輪會(huì)同向以相同的速度跟隨轉(zhuǎn)動(dòng),這說(shuō)明我們實(shí)現(xiàn)了角速度閉環(huán),至此,我們可以確定kd的極性是正的。具體的數(shù)據(jù)接下來(lái)再仔細(xì)調(diào)試。 確定kd值的大?。頺p=500)確定參數(shù)的原則是:kd一直增加,直到出現(xiàn)高頻抖動(dòng)。設(shè)定kd=0.5,這個(gè)時(shí)候我們可以看到,低頻大幅度頻抖動(dòng)已經(jīng)基本消除。設(shè)定kd=1,這個(gè)時(shí)候我們可以看到,整體性能已經(jīng)非常棒。設(shè)定kd=3.8,這個(gè)時(shí)候我們可以看到,小車開(kāi)始

15、出現(xiàn)劇烈抖動(dòng)至此,我們可以確定得到kp=500,kd=1.7是P、D參數(shù)的最大值。然后我們進(jìn)行最關(guān)鍵的一步,對(duì)每個(gè)系數(shù)乘以0.6,取整得到kp=680,kd=2,這就是最終我們需要的參數(shù),這樣做的原因是,我們之前得到的參數(shù)是kp、kd最對(duì)每個(gè)數(shù)據(jù)乘以0.6得到。這個(gè)時(shí)候我們可以看到,小車沒(méi)有任何的抖動(dòng),非常平穩(wěn),但是依然無(wú)法保持長(zhǎng)時(shí)間的直立,直立很短一段時(shí)間后會(huì)往一個(gè)方向加速倒下。這個(gè)等我們下面加上速度環(huán)才能得到更好的性能。只有直立環(huán)是很難讓小車達(dá)到很好的直立效果的。平衡小車速度控制調(diào)試平衡小車速度環(huán)使用PI(比例積分)控制器,這也是速度控制最常使用的控制器。PI控制器是一種線性控制器,它根據(jù)

16、給定值與實(shí)際輸出值構(gòu)成控制偏差,將偏差的比例(P)和積分(I)通過(guò)線性組合構(gòu)成控制量對(duì)被控對(duì)象進(jìn)行控制。計(jì)算速度偏差根據(jù)公式偏差=測(cè)量值-目標(biāo)值測(cè)量值我們使用左右編碼器之和表示,我們沒(méi)有必要糾結(jié)于是否要除以2,因?yàn)檫@樣就引入舍去誤差,我們需要的其實(shí)是一個(gè)可以表示速度變化的變量。另外,我們的目標(biāo)速度設(shè)置為零。所以,可以得到Encoder_Least=(Encoder_Left+Encoder_Right)-0;然后,我們對(duì)速度值進(jìn)行低通濾波,具體的系數(shù)由工程經(jīng)驗(yàn)得到。這樣做的目的是為了減緩速度值的變化,防止速度控制對(duì)直立造成干擾,因?yàn)槠胶庑≤囅到y(tǒng)里面,直立控制是主要的,其他控制對(duì)于直立來(lái)說(shuō)都是一

17、種干擾。確定kp與ki值的極性為了調(diào)試方便,接下來(lái)我們先關(guān)閉之前已經(jīng)調(diào)試好的直立控制部分,積分項(xiàng)由偏差的積分得到,所以積分控制和比例控制的極性是相同的。的平衡小車速度控制系統(tǒng)里面,一般我們可以把ki值設(shè)置為ki=kp/200;這樣,只要我們可以得到kp值的大小和極性,就可以完成速度控制部分的參數(shù)整定了。顯然,這樣大大縮短了PID參數(shù)整定的時(shí)間。另外要說(shuō)明的是,雖然這里的PI控制器是速度控制常用的一種控制器,但是和普通的調(diào)速系統(tǒng)不一樣,這里的速度控制是正反饋的,當(dāng)小車以一定的速度運(yùn)行的時(shí)候,我們要讓小車停下來(lái),小車需要行駛更快的速度去“追”,小車運(yùn)行的速度越快,去“追”的速度也就越快,所以這是一

18、個(gè)正反饋的效果。如果使用常規(guī)的速度負(fù)反饋,當(dāng)小車以一定的速度運(yùn)行的時(shí)候,我們通過(guò)減速讓小車慢下來(lái),小車會(huì)因?yàn)閼T性向前倒下。下面介紹一種確定速度控制是正反饋還是負(fù)反饋的方法。根據(jù)之前的估計(jì),先設(shè)定kp=-50,ki=kp/200,當(dāng)我們拿起小車,旋轉(zhuǎn)其中一個(gè)小車輪胎的時(shí)候,根據(jù)我們?cè)O(shè)定的速度偏差Encoder_Least=(Encoder_Left+Encoder_Right)-0;另外一個(gè)車輪會(huì)反向轉(zhuǎn)動(dòng),讓偏差趨向于零。這就是常規(guī)的速度控制里面的負(fù)反饋,不是我們需要的效果。接下來(lái)設(shè)定kp=165,ki=kp/200,此時(shí),當(dāng)我們旋轉(zhuǎn)其中一個(gè)小車輪胎的時(shí)候,兩個(gè)輪胎會(huì)往相同的方向加速,直至電機(jī)的

19、最大速度,這是典型的正反饋效果,也是我們期望看到的。至此,我們可以確定kp,ki的符號(hào)應(yīng)該是正的。確定kp與ki的大小(開(kāi)啟直立控制)我們進(jìn)行平衡小車速度控制kp與ki值的整定,此時(shí)需要打開(kāi)直立環(huán),因?yàn)槲覀冃枰Y(jié)合直立環(huán)觀察速度環(huán)對(duì)直立環(huán)的影響。衡小車速度控制系統(tǒng)里面,一般我們可以把ki值設(shè)置為ki=kp/200,所以我們只需要對(duì)kp值進(jìn)行整定即可。在調(diào)試的過(guò)程中設(shè)定速度控制的目標(biāo)為零,所以,調(diào)試的理想結(jié)果應(yīng)該是:小車保持平衡的同時(shí),速度接近于零。實(shí)際上,小車存在比較大的轉(zhuǎn)動(dòng)慣量和慣性,并且齒輪減速器存在死區(qū),很難調(diào)試到讓小車完全保持靜止的,我們調(diào)試平衡小車只是為了學(xué)習(xí)PID控制算法,所以,并

20、在這個(gè)過(guò)程對(duì)PID有進(jìn)一步的了解即可。kp=40,ki=kp/200這個(gè)時(shí)候我們可以看到,小車的速度控制比較弱,很難讓速度恒定。kp=60,ki=kp/200這個(gè)時(shí)候我們可以看到,小車的速度控制的響應(yīng)有所加快,但是來(lái)回?cái)[動(dòng)還是有點(diǎn)大,還是不足以讓小車保持接近于靜止的狀態(tài)。此處略去好多手寫的數(shù)據(jù)。kp=80,ki=kp/200這個(gè)時(shí)候我們可以看到,小車已經(jīng)性能很完美了,我們接下來(lái)嘗試加大kp值看一下效果。kp=165,ki=kp/200這個(gè)時(shí)候我們可以看到,小車雖然回正力度增大了,而且響應(yīng)更加快了,但是稍微加入一點(diǎn)的干擾都會(huì)讓小車大幅度擺動(dòng),抗干擾能力明顯不足,所以這組參數(shù)不可取。此處經(jīng)過(guò)大量的

21、實(shí)驗(yàn)大量的測(cè)試數(shù)據(jù)的都是手寫。至此,我們可以確定得到kp=165,kd=0.789是速度控制P、I參數(shù)的理想值。我們?cè)賮?lái)體檢一下速度控制負(fù)反饋在平衡小車?yán)锩娴男Ч<尤脒b控前進(jìn)后退功能的話,速度PI控制函數(shù)應(yīng)該改成如下所示(其中加粗部分為是實(shí)現(xiàn)遙控功能的代碼):intvelocity(intencoder_left,intencoder_right)(staticfloatVelocity,Encoder_Least,Encoder,Movement;staticfloatEncoder_Integral;floatkp=80,ki=0.4;if(1=Flag_Qian)Movement=-9

22、0;/如果前進(jìn)標(biāo)志位置1位移為負(fù)elseif(1=Flag_Hou)Movement=90;/如果后退標(biāo)志位置1位移為正elseMovement=0;Encoder_Least=(Encoder_Left+Encoder_Right)-0;/獲取最新速度偏差二邛1|量速度(左右編碼器之和)-目標(biāo)速Encoder*=0.7;/一階低通濾波器Encoder+=Encoder_Least*0.3;/一階低通濾波器Encoder_Integral+=Encoder;/積分出位移積分時(shí)間:10msEncoder_Integral=Encoder_Integral-Movement;/接收遙控器數(shù)據(jù),控制

23、前進(jìn)后退if(Encoder_Integral>10000)Encoder_Integral=10000;/積分限幅if(Encoder_Integral<-10000)Encoder_Integral=-10000;/限制遙控最大速度Velocity=Encoder*kp+Encoder_Integral*ki;/速度控制if(Turn_Off(Angle_Balance,Voltage)=1)Encoder_Integral=0;/電機(jī)關(guān)閉后清除積分returnVelocity;關(guān)于這個(gè)包括了遙控前進(jìn)后退的速度控制函數(shù),做如下解析:1 .在usart3.c中的串口3接收中斷函數(shù)

24、,改變Flag_Qian和Flag_Hou,進(jìn)而遙控小車。2 .Encoder_Integral=Encoder_Integral-Movement;遙控的速度通過(guò)積分融入速度控制器,減緩了速度突變對(duì)直立控制的影響。3 .積分限幅是增加了遙控之后必不可少的,如果沒(méi)有積分限幅,就無(wú)法限制小車的最大前進(jìn)速度。這樣在遙控的過(guò)程中,小車很容易倒下。換句話說(shuō)積分的最大賦值決定了小車的最大前進(jìn)速度,而Movement值決定了小車的給定速度。平衡小車轉(zhuǎn)向控制調(diào)試 小車轉(zhuǎn)向環(huán)使用P(比例)控制器或者P(比例)D(微分)控制器,我們前面說(shuō)過(guò),一般的控制系統(tǒng)單純的P控制或者PI控制就可以了,轉(zhuǎn)向環(huán)就是這種“一般的

25、控制系統(tǒng)”,對(duì)響應(yīng)要求不高,所以我們只使用P控制即可。其實(shí)轉(zhuǎn)向信息可以通過(guò)編碼器和陀螺儀獲取,所以轉(zhuǎn)向環(huán)有多種控制方式??偨Y(jié)如下: 用左右輪編碼器數(shù)據(jù)之差的積分值作為偏差,以Z軸陀螺儀作為微分控制的輸入進(jìn)行PD控制,目標(biāo)是保持轉(zhuǎn)向角為設(shè)定值。優(yōu)點(diǎn)是算法比較科學(xué),引入微分控制可以增大比例控制系數(shù)以提高系統(tǒng)的響應(yīng)。缺點(diǎn)是較復(fù)雜,積分項(xiàng)影響用戶體驗(yàn)、編碼器對(duì)車輪滑動(dòng)無(wú)法檢測(cè)、陀螺儀存在漂移。 Z軸陀螺儀的數(shù)據(jù)積分得到轉(zhuǎn)向角作為偏差,以Z軸陀螺儀作為微分控制的輸入進(jìn)行PD控制,目標(biāo)是保持轉(zhuǎn)向角為設(shè)定值。優(yōu)點(diǎn)是避免了編碼器對(duì)車輪滑動(dòng)無(wú)法檢測(cè)現(xiàn)象,引入微分控制可以增大比例控制系數(shù)以提高系統(tǒng)的響應(yīng)。缺點(diǎn)是陀

26、螺儀的漂移長(zhǎng)時(shí)間積分導(dǎo)致系統(tǒng)誤差增大。 使用左右輪編碼器數(shù)據(jù)之差作為轉(zhuǎn)向速度偏差進(jìn)行P控制,目標(biāo)是保持轉(zhuǎn)向速度為設(shè)定值。優(yōu)點(diǎn)是簡(jiǎn)單,缺點(diǎn)是編碼器對(duì)車輪滑動(dòng)無(wú)法檢測(cè),對(duì)編碼器精度有較高要求。 使用Z軸陀螺儀的數(shù)據(jù)作為轉(zhuǎn)向速度偏差進(jìn)行P控制,目標(biāo)是保持轉(zhuǎn)向速度為設(shè)定值。優(yōu)點(diǎn)是算法簡(jiǎn)單、避免了編碼器對(duì)車輪滑動(dòng)無(wú)法檢測(cè)現(xiàn)象、陀螺儀漂移等問(wèn)題,缺點(diǎn)是陀螺儀對(duì)高頻信號(hào)采樣失真。我們本次調(diào)試使用了簡(jiǎn)單可靠的第4套方案。在平衡小車?yán)锩?,相比于直立環(huán)和速度環(huán),轉(zhuǎn)向環(huán)是最不重要的,如果缺少了直立環(huán)和速度環(huán),小車無(wú)法長(zhǎng)時(shí)間保持直立。轉(zhuǎn)向環(huán)的作用是使小車行駛的過(guò)程中,跟隨我們給定的Z軸角速度,具體來(lái)說(shuō),如果我們?cè)O(shè)定的

27、Z軸目標(biāo)角速度為零,那么小車應(yīng)該走一個(gè)直線,這也是我們本次實(shí)驗(yàn)需要完成的目標(biāo)。調(diào)試過(guò)程包括確定kp極性和大小。確定kp的極性為了方便本小節(jié)的實(shí)驗(yàn),我們先關(guān)閉之前調(diào)試好的直立環(huán)和速度環(huán)。我們得到的MPU6050輸出的陀螺儀的原始數(shù)據(jù),通過(guò)觀察數(shù)據(jù),我們發(fā)現(xiàn)最大值不會(huì)超過(guò)4位數(shù)(正常應(yīng)用在平衡小車上的時(shí)候),再根據(jù)7200代表占空比100%,所以我們估算kp值應(yīng)t在02之間。先設(shè)定kp=-0.6,我們可以看到,當(dāng)我們把小車掘在地上旋轉(zhuǎn)的時(shí)候,我們可以很輕易的轉(zhuǎn)動(dòng)小車,說(shuō)明目前小車沒(méi)有通過(guò)負(fù)反饋把目標(biāo)角速度控制在零附近,而是通過(guò)正反饋幫助我們旋轉(zhuǎn)小車,說(shuō)明了這個(gè)時(shí)候小車的轉(zhuǎn)向系統(tǒng)是正反饋的。然后我們?cè)O(shè)定kp=0.6,這個(gè)時(shí)候我們把小車掘在地上旋轉(zhuǎn)會(huì)發(fā)現(xiàn)使用很大的力也難以轉(zhuǎn)動(dòng)小車,小車會(huì)反抗我們,并通過(guò)電機(jī)保持角速度為零,這就是典型的角速度負(fù)反饋效果,也是我們需要看到的效果。確定kp的大小下面我們進(jìn)行平衡小車轉(zhuǎn)向控制kp值的整定,此時(shí)需要打開(kāi)直立環(huán)和速度環(huán)。首先設(shè)定kp=0.2,這個(gè)時(shí)候我們可以看到,小車的轉(zhuǎn)向控制比

溫馨提示

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

評(píng)論

0/150

提交評(píng)論