基于STM32的兩輪自平衡遙控小車設(shè)計(jì)_第1頁(yè)
基于STM32的兩輪自平衡遙控小車設(shè)計(jì)_第2頁(yè)
基于STM32的兩輪自平衡遙控小車設(shè)計(jì)_第3頁(yè)
基于STM32的兩輪自平衡遙控小車設(shè)計(jì)_第4頁(yè)
基于STM32的兩輪自平衡遙控小車設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩2頁(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、    基于stm32的兩輪自平衡遙控小車設(shè)計(jì)    張建強(qiáng)楊標(biāo)劉毅徐建【摘 要】?jī)奢喿云胶庑≤囎鳛橐环N新型的交通工具,其駕駛的方式新穎,深受年輕一族喜愛(ài),且由于是采用的電力驅(qū)動(dòng),屬于清潔能源,對(duì)于緩解日益嚴(yán)重的大氣污染、能源危機(jī)和交通擁堵問(wèn)題,是一種比較好的解決方式,同時(shí)由于兩輪自平衡小車的結(jié)構(gòu)不穩(wěn)定性,給控制的算法提出了很大的挑戰(zhàn),同時(shí)由于這個(gè)原因平衡車也成為了一種檢驗(yàn)控制算法的良好平臺(tái)。本平衡車使用stm32單片機(jī)作為控制核心,通過(guò)電機(jī)編碼器與陀螺儀實(shí)時(shí)獲得小車速度與姿態(tài)數(shù)據(jù),運(yùn)用pid控制算法使得小車能夠保持平衡。【關(guān)鍵詞】?jī)奢喥胶?;stm32單

2、片機(jī);pid【abstract】the two wheeled vehicle is a new type of vehicle,driving the novel,by young people love,and because it is the driving power,a kind of clean energy,to alleviate the increasingly serious air pollution,energy crisis and the problem of traffic congestion,is a relatively good solution at

3、the same time,due to the structure of self balancing the car two rounds of instability,is a great challenge to the control algorithm,and for this reason the balance of the car has become a good platform to test the control algorithm.using stm32 microcontroller as control core,real-time access to veh

4、icle speed and attitude data through the motor encoder and gyroscope using the pid control algorithm makes the car to maintain balance.【key words】two wheel balancing;stm32 single chip microcomputer;pid0 引言隨著我國(guó)工業(yè)化的不斷的推進(jìn),國(guó)民生產(chǎn)力不斷提升,同時(shí)自動(dòng)化控制技術(shù)也在不斷發(fā)展,由于生活節(jié)奏也不斷的加快,人們急需一種能夠在小區(qū),家中,室內(nèi)場(chǎng)館行駛的小型代步工具。同時(shí)又由于化石燃料大量消耗

5、導(dǎo)致是有緊缺的今天,人們也開(kāi)始使用較為清潔的電能。因此在這種情況下,兩輪自平衡小車由于它時(shí)尚、小巧的外形,新穎的駕駛方式,全新的騎行體驗(yàn),受到青年的歡迎。兩輪平衡車具有較大的市場(chǎng)前景,因此研究?jī)奢喿云胶庑≤囈簿陀辛怂谋匾浴? 系統(tǒng)總體設(shè)計(jì)本系統(tǒng)包括了電機(jī)驅(qū)動(dòng)電路、電機(jī)編碼器模塊、供電模塊、陀螺儀模塊、單片機(jī)處理控制模塊等復(fù)雜模塊。系統(tǒng)總體框圖如下圖1所示。小車整體使用stm32f103zet6作為控制核心,使用mpu6050六軸陀螺儀作為姿態(tài)獲取傳感器,由于控制使用的是閉環(huán)算法,所以使用高精度磁編碼器作為小車兩輪速度采取傳感器,該編碼器具有較強(qiáng)的抗干擾能力。電機(jī)驅(qū)動(dòng)選擇是使用東芝半導(dǎo)體生產(chǎn)

6、的直流電機(jī)驅(qū)動(dòng)tn6612fng,相對(duì)于傳統(tǒng)的l298n電機(jī)驅(qū)動(dòng),tb6612fng具有外圍電路簡(jiǎn)單,且支持的pwm調(diào)速頻率更高,同時(shí)也有利于減小系統(tǒng)的尺寸。2 系統(tǒng)硬件設(shè)計(jì)兩輪平衡車采用mpu-6050來(lái)獲取小車實(shí)時(shí)姿態(tài)信息,將信息上傳給單片機(jī),由單片機(jī)處理數(shù)據(jù),通過(guò)超聲波模塊可以讓小車與障礙物一直保持在一定的距離,以實(shí)現(xiàn)超聲波跟隨功能。通過(guò)藍(lán)牙接受遙控小車的運(yùn)動(dòng)。2.1 最小系統(tǒng)的設(shè)計(jì)本兩輪平衡車采用控制最小系統(tǒng)控制芯片是使用的stm32f103zet6單片機(jī),芯片的所有引腳全部引出,有利于其他功能的擴(kuò)展,下載程序采用了uart與sw調(diào)試接口,便于程序的調(diào)試。并且在制作的過(guò)程中預(yù)留了藍(lán)牙模

7、塊接口與超聲波接口,既方便安裝固定,也增加系統(tǒng)的重心的穩(wěn)定性,最小系統(tǒng)負(fù)責(zé)將電機(jī)編碼器和mpu-6050所傳來(lái)的數(shù)據(jù)進(jìn)行處理,并根據(jù)得到的結(jié)果控制電機(jī)做出相應(yīng)的動(dòng)作。2.2 供電模塊的設(shè)計(jì)系統(tǒng)使用12v鋰電池供電,工作時(shí)的電流能夠滿足直流減速電機(jī)電流需求,由于單片機(jī)等其他的器件采用5v供電而且功耗較小,所以使用lm2596可調(diào)降壓模塊將12v電壓轉(zhuǎn)化為5v,供單片機(jī)、mpu-6050、藍(lán)牙模塊等傳感器使用。以保證系統(tǒng)的正常運(yùn)行。3 系統(tǒng)軟件設(shè)計(jì)3.1 軟件設(shè)計(jì)流程軟件設(shè)計(jì)主要包含:電機(jī)編碼器與陀螺儀信號(hào)的采集與處理,調(diào)節(jié)pwm輸出改變電機(jī)狀態(tài),使得小車達(dá)到平衡、行走、轉(zhuǎn)彎等功能。軟件主要是傾角

8、pid與速度pid。軟件設(shè)計(jì)流程如圖2所示。首先是各個(gè)傳感器的初始化,初始化完成后,通過(guò)iic通信協(xié)議從mpu-6050讀取姿態(tài)數(shù)據(jù),以10ms為一個(gè)周期讀取mpu-6050角速度寄存器中的值,同時(shí)對(duì)讀到的數(shù)據(jù)進(jìn)行互補(bǔ)濾波,然后進(jìn)一步進(jìn)行姿態(tài)結(jié)算,從而得到小車實(shí)時(shí)的姿態(tài)信息。對(duì)于電機(jī)編碼器得到的脈沖使用stm32的輸入捕獲模式,捕獲周期為60ms,從而得到電機(jī)速度。通過(guò)pi,pd算法結(jié)合,對(duì)電機(jī)轉(zhuǎn)速進(jìn)行脈寬調(diào)制,從而達(dá)到讓小車原地平衡、行走平衡的目的。并且當(dāng)小車傾斜的角度大于30度時(shí),由于角度太大小車難以平衡,這時(shí)會(huì)讓電機(jī)停止轉(zhuǎn)動(dòng)。3.2 互補(bǔ)濾波算法 互補(bǔ)濾波就是通過(guò)不同的濾波器(高通或低通

9、),然后相加得到整個(gè)頻帶的信號(hào)。對(duì)于陀螺儀互補(bǔ)濾波就是在短時(shí)間內(nèi)采用陀螺儀得到的角度認(rèn)為最準(zhǔn)確,利用定時(shí)對(duì)加速度獲得的角度進(jìn)行取平均值來(lái)校正陀螺儀的得到的角度。簡(jiǎn)言之,短時(shí)間內(nèi)角度使用陀螺儀;長(zhǎng)時(shí)間用加速度計(jì)比較準(zhǔn)確,隨著時(shí)間的增多加大加速得到的數(shù)據(jù)的比重,這就是對(duì)于陀螺儀的互補(bǔ)濾波了。3.3 pid控制算法在本小車中控制pid控制算法分為角度環(huán)(pd)和速度環(huán)(pi)。程序設(shè)計(jì)中,控制pwm輸出的角度環(huán)的方程為:out_pwm1=angle_p×angle_q+angle_d×angle_s式中的out_pwm1為pd控制計(jì)算得到的控制pwm,angle_q為反饋得到的角

10、度值,angle_s為反饋角速度。angle_p與angle_d分別為比例系數(shù)與微分系數(shù)。程序設(shè)計(jì)中,控制pwm輸出的速度環(huán)的方程為:out_pwm2=speed_p×speed_s+speed_i×speed_e式中的out_pwm2為pi控制計(jì)算得到的控制pwm,speed_s為電機(jī)速度,speed_e為反饋速度誤差的累積值。speed_p與speed_i分別為比例系數(shù)與積分系數(shù)。最后通過(guò)pi與pd計(jì)算得到的便是電機(jī)需要的pwm值,其方程為:out_pwm=out_pwm1+ou_pwm23.4 pid參數(shù)調(diào)整在讓i,d輸出為0的情況下,去調(diào)節(jié)p,選擇適當(dāng)?shù)膒值讓車體基

11、本保持平衡,保證沒(méi)有較大的晃動(dòng)或。然后調(diào)整d,適當(dāng)?shù)膁值,合適的d值能夠增加小車的穩(wěn)定性,d可以很小,如果d值較大會(huì)導(dǎo)致小車劇烈的抖動(dòng)導(dǎo)致電機(jī)驅(qū)動(dòng)燒毀。i參數(shù)的調(diào)節(jié)相當(dāng)于是對(duì)p值很小誤差下的一個(gè)補(bǔ)償,若i值過(guò)大,補(bǔ)償過(guò)多會(huì)導(dǎo)致小車前后大幅度晃動(dòng),導(dǎo)致小車無(wú)法維持平衡。4 結(jié)語(yǔ)系統(tǒng)使用stm32f103zet6單片機(jī)作為控制芯片,使用mpu-6050為姿態(tài)獲取傳感器(iic通信協(xié)議),通過(guò)電機(jī)編碼器獲得小車速度(stm32輸入捕獲模式),通過(guò)單片機(jī)使用pid算法得到pwm值從而達(dá)到控制電機(jī)轉(zhuǎn)速的目的,使得小車達(dá)到平衡,并且使用藍(lán)牙模塊使得單片機(jī)能夠與手機(jī)通信,使用手機(jī)可以控制小車運(yùn)動(dòng)。在姿態(tài)獲取濾波方面沒(méi)有采用卡爾曼濾波而是采用較為簡(jiǎn)單的互補(bǔ)濾波。由于使用了pid算法,擁有速度反饋,能夠使小車在一定的干擾下能夠保持平衡?!緟⒖嘉墨I(xiàn)】1季鵬飛.基于stm32的兩輪自平衡小車控制系統(tǒng)設(shè)計(jì)j.電子科技,2014,27(11):96-1052徐升.全數(shù)字直流脈寬調(diào)速系統(tǒng)及其模糊控制算法j.華中科技大學(xué),2006.3林忠海.基于單片機(jī)的兩輪自動(dòng)平衡小車設(shè)計(jì)j.科技創(chuàng)新與生產(chǎn)力,2013(2):90-92.4陳波.基于神經(jīng)網(wǎng)絡(luò)pid控制的兩輪自平衡小車研究d.西南交

溫馨提示

  • 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)論