版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、<p> 兩輪自平衡小車的設計</p><p><b> 摘要</b></p><p> 最近這幾年來,自平衡電動車的研發(fā)與商用獲得了快速發(fā)展。自平衡車具有 體積小,運動十分靈活,便利,節(jié)能等特點。本文提出了一種雙輪自平衡小車的設計方案,機械結(jié)構采用了雙輪雙馬達驅(qū)動;控制主要采用的是反饋調(diào)節(jié),為了使車體更好的平衡,使用了PID調(diào)節(jié)方式;硬件上采用陀螺儀
2、GY521 MPU-6050來采集車體的旋轉(zhuǎn)角度以及旋轉(zhuǎn)角加速度,同時采用了加速度傳感器來間接測量車體旋轉(zhuǎn)角度。采用意法半導體ST公司的低功耗控制器芯片stm32作為主控,采集上述傳感器信息進行濾波,分析等操作后進而控制馬達的驅(qū)動,從而達到反饋調(diào)節(jié)的閉環(huán),實現(xiàn)小車的自動平衡。系統(tǒng)設計,調(diào)試完成后,能夠?qū)崿F(xiàn)各個功能部件之間協(xié)調(diào)工作,在適度的干擾情形下仍然能夠保持平衡。同時,也可以使用手機上的APP通過藍牙與小車通信控制小車的前進和后退以及
3、轉(zhuǎn)彎。</p><p> 關鍵詞:自平衡小車 陀螺儀傳感器 濾波 APP </p><p> Design of Two-Wheel Self-Balance Vehicle</p><p><b> Abstract</b></p><p> In the last few years, with
4、 the development of commercial self balancing electric vehicle was developed rapidly. Self balancing vehicle has the advantages of small volume, the movement is very flexible, convenient, energy saving etc.. This paper p
5、resents a two wheeled self balancing robot design, mechanical structure adopts double motor drive; controlled mainly by the feedback regulation, in order to make the balance of the body better, with the PID regulation; h
6、ardware using gyroscope GY521 mpu</p><p> Key Words: Self balancing car gyroscope sensor filter APP</p><p><b> 目 錄</b></p><p><b> 1.緒論1</b><
7、/p><p> 1.1研究背景與意義1</p><p> 1.2自平衡小車的設計要點1</p><p> 1.2.1整體構思1</p><p> 1.2.2姿態(tài)檢測系統(tǒng)2</p><p> 1.2.3控制算法2</p><p> 1.3本文主要研究目標與內(nèi)容2</p&g
8、t;<p> 1.4論文章節(jié)安排3</p><p> 2. 系統(tǒng)原理分析4</p><p> 2.1控制系統(tǒng)要求分析4</p><p> 2.2平衡控制原理分析4</p><p> 2.3自平衡小車數(shù)學模型5</p><p> 2.3.1兩輪自平衡小車受力分析5</p>
9、<p> 2.4 PID控制器設計7</p><p> 2.4.1 PID控制器原理7</p><p> 2.4.2 PID控制器設計8</p><p> 3.系統(tǒng)硬件電路設計8</p><p> 3.1硬件電路整體框架:8</p><p> 3.2系統(tǒng)運作流程介紹:9</p
10、><p> 3.3下面分各個部分進行介紹:9</p><p> 3.3.1電源供電部分:9</p><p> 3.3.2主控制器部分:9</p><p> 3.3.3陀螺儀傳感器部分:11</p><p> 3.3.4馬達驅(qū)動電路:12</p><p> 3.3.5測速部分:
11、12</p><p> 3.3.7藍牙通信部分:ZK-0713</p><p> 3.4本章小結(jié)14</p><p> 4.系統(tǒng)軟件設計14</p><p> 4.1軟件系統(tǒng)總體結(jié)構14</p><p> 4.2系統(tǒng)初始化過程15</p><p> 4.2.1模數(shù)轉(zhuǎn)換模塊(
12、AD)初始化設置15</p><p> 4.2.2通用串行通信USART初始化15</p><p> 4.2.3光柵法測速模塊初始化15</p><p> 4.3平衡PID控制軟件實現(xiàn)16</p><p> 4.4兩輪自平衡車的運動控制17</p><p> 5. 總結(jié)與展望18</p>
13、;<p><b> 5.1 總結(jié)18</b></p><p><b> 5.2 展望18</b></p><p><b> 參考文獻19</b></p><p><b> 附 錄20</b></p><p><b>
14、; 1.緒論</b></p><p> 1.1研究背景與意義</p><p> 隨著科技的發(fā)展與進步,最近這些年來,移動機器人產(chǎn)業(yè)的發(fā)展和創(chuàng)新日新月異,人們的生活也越來越離不開各式各樣的機器人。小到家里使用的掃地機器人,全自動洗衣機,生產(chǎn)線上的自動點焊機,以及現(xiàn)在炙手可熱的無人駕駛汽車。這些都得益于移動機器人機器人的使用領域愈來愈多,以及機器人行業(yè)的基礎技術也越來越成熟。
15、</p><p> 本文提出的自平衡車就是眾多機器人中的一種。由于只有兩個輪子,所以體積相對其他移動機器人可以做的很小,能夠適應比較狹窄的空間。同時,由于采用雙輪驅(qū)動,移動起來也十分靈活,甚至可以做到原地旋轉(zhuǎn)。由于其輕便,運動靈活,適應面廣,節(jié)約能源,環(huán)保等種種優(yōu)點使得它的發(fā)展和應用前景非常地廣闊。</p><p> 同時在理論研究方面,平衡車,作為一個控制系統(tǒng),由于重力的存在,自平衡
16、小車原本是不能自主保持站立的,需要依靠對輪的合適的控制來實現(xiàn)車身的平衡。通過馬達的驅(qū)動來控制車輪的旋轉(zhuǎn)狀態(tài),陀螺儀 加速度計等MEMS 傳感器,算法,微控制器以及車體的機械結(jié)構裝置聯(lián)動的協(xié)調(diào)來控制小車的平衡,是一個集合了傳感器測量,干擾去除,數(shù)據(jù)分析,實時處理,行為操作與執(zhí)行的多個環(huán)節(jié)的綜合控制系統(tǒng)。</p><p> 系統(tǒng)的動態(tài)響應要求較高,傳感器的數(shù)據(jù)要進行濾波和分析后才能作為控制信息。因此對自動控制系統(tǒng)要
17、有比較深刻的認識,具有很強的學習探究價值。</p><p> 1.2自平衡小車的設計要點</p><p><b> 1.2.1整體構思</b></p><p> 平衡車整體設計包括的內(nèi)容有:車體結(jié)構設計,硬件電路設計,軟件算法設計和實現(xiàn)。在小車的結(jié)構設計上,應該盡可能的保證車體重心在車體的中央,同時重心盡可能的低,這樣能夠增加車體本身的
18、本征穩(wěn)定性,減輕后面系統(tǒng)算法和調(diào)試的難度。</p><p> 在小車的硬件設計上,電源必須要能夠穩(wěn)定的輸出,并且滿足馬達驅(qū)動對功率的需求。同時,為了后期方便調(diào)試,應該留出一些比如電位器以及程序燒錄的調(diào)試接口,可大大簡化后期調(diào)試過程和節(jié)約大量調(diào)試時間。為了后期方便更換器件,將主板設計成了接插口的方式。</p><p> 在小車的軟件設計上,主要的難度在于對傳感器數(shù)據(jù)的濾波和融合分析以及P
19、ID調(diào)試上。</p><p> 1.2.2姿態(tài)檢測系統(tǒng)</p><p> 雙輪自平衡小車通過陀螺儀GY521 MPU-6050,加速度傳感器,stm32控制器,以及雙輪馬達驅(qū)動構成了閉環(huán)控制,而當前姿態(tài)檢測環(huán)節(jié)則是反饋源,如同人的眼睛,耳朵等器官,是環(huán)境感知的入口。通過陀螺儀GY521 MPU-6050可以直接檢測到當前車身的角速度以及角加速度;同時由于重力會在小車車身傾斜的角度上產(chǎn)生
20、一個分量,由此借助于加速度傳感器測出該分量,從而也就能夠間接的得出自平衡小車的車身傾斜角度。</p><p> 在陀螺儀傳感器和加速度傳感器的選用上面,由于是用于動態(tài)實時檢測,所以對它的實時性的要求比較高。另外,靈敏度和準確性也是比較重要的參考因素。綜合考慮下來,本方案陀螺儀傳感器 選用的是MPU-6050,加速度傳感器選用的是 </p><p> 雖然有了上述傳感器可以用來測出自平衡
21、小車車體的當前姿態(tài),但是由于慣性傳感器自身的一些特性,所測的值會受外界環(huán)境的溫度、震動等影響,繼而產(chǎn)生不同程度的誤差與噪聲。所以需要在采集傳感器數(shù)據(jù)后,在軟件中采用一些算法對這些傳感器測得的數(shù)據(jù)進行分析二次處理,同時對陀螺儀傳感器和加速度計傳感器采集的數(shù)據(jù)進行融合分析后,再計算出當前小車的姿態(tài),此時的結(jié)果將更加準確和穩(wěn)定。</p><p><b> 1.2.3控制算法</b></p&
22、gt;<p> 自平衡小車由于重力原因自身沒法保持平衡,需要根據(jù)反饋來調(diào)整自身的狀態(tài)達到平衡。控制系統(tǒng)中陀螺儀GY521 MPU-6050傳感器和加速度傳感器,stm32微控制器,馬達驅(qū)動構成了閉環(huán)的控制系統(tǒng)。加速度傳感器,陀螺儀GY521 MPU-6050傳感器采集當前自平衡小車姿態(tài),微控制器對傳感器數(shù)據(jù)進行濾波和分析,進而控制馬達驅(qū)動,調(diào)整自平衡小車當前姿態(tài)??刂扑惴ú捎昧斯I(yè)中常用的反饋調(diào)節(jié)算法:PID。PID算法
23、在工業(yè)控制類的場合中有著廣泛的應用,在應用中充分驗證了算法的可行性可優(yōu)越性。</p><p> 1.3本文主要研究目標與內(nèi)容</p><p> 本設計設計了一種雙輪的自平衡車,在適度的環(huán)境不利因素下也能夠保持自主站立。同時也能夠在Android手機端的App通過藍牙控制小車前進,后退,轉(zhuǎn)彎。</p><p> 在設計的過程中探究了陀螺儀傳感器和加速度傳感器的互
24、補特性,并用融合算法將兩者所測數(shù)據(jù)結(jié)合起來進行分析,獲得了更為準確的車身姿態(tài)。</p><p><b> 設計具體包括:</b></p><p> (1) 車體的機械結(jié)構:包括車輪驅(qū)動,重心調(diào)整,傳感器安裝,為后期開發(fā)提供良好的物理基礎;</p><p> (2) 小車硬件電路:電源必須要能夠穩(wěn)定的輸出,并且滿足馬達驅(qū)動對功率的需求。馬達
25、的驅(qū)動十分重要,它是能夠及時調(diào)整小車姿態(tài)的關鍵因素;同時,為了后期方便調(diào)試,留出了一些比如電位器以及程序燒錄的調(diào)試接口,可大大簡化后期調(diào)試過程和節(jié)約大量調(diào)試時間。為了后期方便更換器件,將主板設計成了接插口的方式。</p><p> (3) 小車軟件算法:通過陀螺儀GY521 MPU-6050傳感器和加速度傳感器檢測當前小車姿態(tài)數(shù)據(jù),微控制器獲取傳感器數(shù)據(jù)進行分析,通過PID算法得出相應的控制力度,從而調(diào)節(jié)自平衡
26、小車馬達驅(qū)動驅(qū)動下的小車轉(zhuǎn)速,最終修正當前小車姿態(tài)。但是,由于陀螺儀GY521 MPU-6050傳感器所測的角速度和角加速度以及加速度傳感器所測的加速度會受環(huán)境噪聲的影響,角速度只在很短的時間內(nèi)穩(wěn)定,而加速度傳感器所測數(shù)據(jù)的白噪聲十分嚴重,因此最好采用兩者的互補特性來設計卡爾曼濾波器來算出穩(wěn)定準確地傳感器數(shù)據(jù)。</p><p> (4) PID調(diào)節(jié)算法:系統(tǒng)分為兩路閉環(huán)控制:一路是自平衡小車的傾斜角度的閉環(huán)控制
27、,用來保持車體平衡;另一路是自平衡小車的速度閉環(huán)控制,用來維持車體在一個指定的速度運動。</p><p><b> 2. 系統(tǒng)原理分析</b></p><p> 2.1控制系統(tǒng)要求分析</p><p> 根據(jù)設計目標,自平衡小車能夠自主保持平衡,并且能夠抵抗一定程度的外部環(huán)境的干擾。而且能夠在Android手機端App的控制下,實現(xiàn)向前運
28、動,向后運動,以及轉(zhuǎn)彎等動作。結(jié)合系統(tǒng)分析可以知道,維持自平衡小車站立和前后運動的動力都來自于自平衡小車的兩個車輪,而車輪是由兩個直流馬達驅(qū)動的。所以,可以將自平衡小車作為一個調(diào)控對象,自平衡小車的兩個車輪的作為控制系統(tǒng)的控制量。整個系統(tǒng)分為3個部分:</p><p> (1)自平衡小車的站立控制:小車的傾斜角度作為輸入?yún)?shù),通過控制馬達的轉(zhuǎn)速來保持小車的自平衡。</p><p> (
29、2)自平衡小車的速率控制:在能夠自主站立的基礎上,通過改變自平衡小車的傾斜角度來完成對車體運動速率的調(diào)節(jié),其實仍是經(jīng)過對馬達的調(diào)控來完成小車車體運動速率的修改。</p><p> (3)自平衡小車轉(zhuǎn)向調(diào)節(jié):通過調(diào)節(jié)自平衡小車兩個車輪的轉(zhuǎn)速,構成差速從而實現(xiàn)小車的轉(zhuǎn)向調(diào)節(jié)。</p><p> 2.2平衡控制原理分析</p><p> 維持小車自主站立的直接靈感來
30、自于我們的平時經(jīng)歷。人可以通過控制身體以及手的移動方向和速度,來保持手指尖撐住的直桿屹立不倒。在保持直桿平衡的過程中,人需要完成兩個操作:一是人眼可以實時并準確地觀測到直桿當前的姿態(tài),二是手指能夠根據(jù)當前直桿的姿態(tài)來迅速調(diào)整自身位置和速度。這實際上就是本方案中的平衡車站立閉環(huán)負反饋控制。</p><p> 圖2-1 維持直桿站立的負反饋調(diào)節(jié)系統(tǒng)</p><p> 自平衡小車的自主站立也
31、是經(jīng)過負反饋的調(diào)節(jié)來完成的,與在指尖維持直桿站立原理基本一致。</p><p> 由于車體只有兩個車輪與地面接觸,自身穩(wěn)定能力極差,在重力的作用下極容易傾倒。小車上的放置的陀螺儀GY521 MPU-6050傳感器和加速度傳感器能夠?qū)π≤嚨漠斍白藨B(tài)進行實時測量,微控制器分析后控制車輪的旋轉(zhuǎn),抵消傾斜力矩則可以達到維持小車平衡的目的。如圖2-2所示。</p><p> 圖2-2 通過車輪旋
32、轉(zhuǎn)保持小車平衡</p><p> 2.3自平衡小車數(shù)學模型</p><p> 2.3.1兩輪自平衡小車受力分析</p><p> 為了更好地實現(xiàn)小車的平衡,需要準確地得出小車當前姿態(tài)與馬達輸出之間的數(shù)學模型。</p><p> 重力環(huán)境下繩索掛著物體可以被抽象成為理想的倒立擺模型,本文中的兩輪自平衡車可以被看做為倒立擺模型來進行分析,
33、如圖2-3所示。</p><p><b> 圖2-3倒立擺模型</b></p><p> 對單擺進行如下的受力分析 如下圖所示。</p><p> 圖2-4 單擺受力分析</p><p> 當重物偏離中心的平衡位置后,就會受到重力與線的張力的合作用力,迫使重物回到中心處。這股合力被稱為回復力,它的值為:</
34、p><p><b> (式2-1)</b></p><p> 停止的倒立擺受力情況如下,如圖2-5所示。</p><p> 圖2-5倒立擺受力分析圖</p><p> 由該受力分析可知,其回復力大小為:</p><p><b> ?。ㄊ?-2)</b></p>
35、<p> 對于處于平衡位置的單擺而言,當它離開中心位置時,它所受的合力與它的位移相反,所以合力能夠驅(qū)使它回到原處;但是對于倒立擺,當它離開中心位置時,所受到的合力與位移卻剛好是同向的,所以此時會加速遠離中心位置,最終傾倒。</p><p> 通過判斷可以知道,要使倒立擺能夠有與偏離方向相反的回復力,則必須施加另一種力與偏移方向相反,從而使倒立擺所受合力與偏移方向相反,也即回復力總是指向中心位置,
36、達到能夠平衡的目的。</p><p> 通過調(diào)節(jié)自平衡小車底部車輪轉(zhuǎn)速,使其做加速運動。在此情形下再來分析倒立擺的受力情況,如下圖2-6所示。</p><p> 圖2-6 非慣性系中的倒立擺受力分析</p><p> 由于自平衡小車車輪做加速運動,倒立擺會受到慣性力。設車輪運動導致倒立擺產(chǎn)生的加速度的值為α.若以地面作為參考系,可以得知倒立擺受到的慣性力為:&
37、lt;/p><p><b> ?。ㄊ?-3)</b></p><p> 所以,倒立擺受到的合力為:</p><p><b> (式2-4)</b></p><p> 在實際控制系統(tǒng)當中,偏離角度θ很小,可以對其進行簡化處理。系統(tǒng)中小車加速度α與偏離角度θ為正比關系,令比例系數(shù)為,則式2-4可變換為
38、:</p><p><b> ?。ㄊ?-5)</b></p><p> 則小車的車輪的加速度應該為:</p><p><b> ?。ㄊ?-7)</b></p><p> 式中為傾斜角度,為傾斜角速度,、為比例系數(shù)。</p><p> 2.4 PID控制器設計</p
39、><p> 2.4.1 PID控制器原理</p><p> 反饋調(diào)節(jié)系統(tǒng)一般包含三個環(huán)節(jié):檢測,比較和輸出。檢測的值與預期值相比較,根據(jù)誤差量來控制輸出糾正系統(tǒng)偏量。PID控制器是當前工業(yè)系統(tǒng)中應用十分廣泛的一種反饋控制系統(tǒng),在這里十分適用于小車的平衡反饋控制。PID由比例控制,積分控制,線性控制三個部分線性疊加而成。PID調(diào)節(jié)具有可靠性好,算法簡單,穩(wěn)定性高,調(diào)試起來簡單很多優(yōu)點。因此P
40、ID控制器自被采用以來,,在工業(yè)中被廣泛應用。</p><p> PID控制器由比例控制單元(P)、積分控制單元(I)和微分控制單元(D)三個部分組成。它的輸入e (t)與輸出u (t)的模型為:</p><p><b> (式2-11)</b></p><p> 其中為比例控制的系數(shù)參數(shù);為積分的時間固定參數(shù);為微分時間的固定參數(shù)。&l
41、t;/p><p> 2.4.2 PID控制器設計</p><p> 在本系統(tǒng)的反饋調(diào)節(jié)中,與角度成比例的控制量采用比例控制,與角速度成比例的控制量采用微分控制,因而</p><p> 自平衡小車在采用PID控制模型胡的輸出方程可寫為:</p><p><b> (式2-14)</b></p><p
42、> 式2-14中,為PID控制輸出量,Angle為反饋傾角值,Angle_dot為反饋角速度值,Kp和Kd分別為比例系數(shù)及微分系數(shù)。</p><p> 3.系統(tǒng)硬件電路設計</p><p> 3.1硬件電路整體框架:</p><p> 硬件電路是整個系統(tǒng)可行性和可靠性的基礎。既要能夠滿足需求,也要能夠穩(wěn)定,高效的工作。系統(tǒng)硬件框架如下:</p&g
43、t;<p> 3.2系統(tǒng)運作流程介紹:</p><p> 電源供電部分給各個器件按對應所需電壓進行供電,陀螺儀GY521 MPU-6050和加速度傳感器采集小車當前姿態(tài)數(shù)據(jù)通過IIC接口發(fā)送給主控STM32F103RB,主控對數(shù)據(jù)分析后作出相應反應控制馬達驅(qū)動改變馬達轉(zhuǎn)速修正小車姿態(tài)。馬達測速部分將所測速度反饋給主控制器STM32F103RB,主控對數(shù)據(jù)分析后作出相應反應控制馬達驅(qū)動改變馬達轉(zhuǎn)速
44、修正小車速度與期望值一致。同時,主控STM32F103RB也可接收從手機端APP通過藍牙發(fā)送過來的指令,進而根據(jù)指令控制小車作出相應操作。</p><p> 3.3下面分各個部分進行介紹:</p><p> 3.3.1電源供電部分:</p><p> 系統(tǒng)采用航模電池進行供電,輸出電壓12V;</p><p> 12V電壓經(jīng)過低壓差線
45、性穩(wěn)壓器LM2940 后可輸出5V電壓給藍牙模塊和陀螺儀GY521 MPU-6050供電。</p><p> 5V電壓經(jīng)過低壓差線性穩(wěn)壓器LT1117后可輸出3.3V電壓給主控stm32、測速模塊等供電。</p><p> 3.3.2主控制器部分:</p><p> 本方案采用的主控制器是意法半導體公司的高性價比控制器芯片:STM32F103RB。它是一個32
46、位的處理器,采用的是ARM 的thumb精簡指令集,使用低功耗的CORTEX-M3 的 3 2位ARM核心??刂破髯陨韼в?56KByte的flash,和40KByte的SRAM。含有2個12位的模數(shù)轉(zhuǎn)換器,3個通用的16位TIMER,一個PULSE寬度調(diào)制器,多達2個IIC串行通信接口,以及2個SPI串行通信接口,3個USART串行通信接口,1個USB傳輸接口和一個控制器局域網(wǎng)絡接口。它的供電的電壓為2.6伏~3.3伏,工作
47、的溫度范圍為-40°C到+85°C,而且擁有一些列的低功耗模式,可以極大的減少系統(tǒng)在非工作模式下的功耗。</p><p> 該款控制器一共擁有六十四個引腳,可以充分支持本方案所需要的各種外設模塊。既可以使用內(nèi)部時鐘也可以使用外部時鐘源,外部的晶振頻率推薦頻率為12兆赫茲。</p><p> 電源供電電壓范圍為3.0伏~3.7伏:電源供電引腳為通用輸入輸出引腳和內(nèi)部的
48、各類器件進行供電。 </p><p> 模擬地,模擬供電 電壓范圍為3.0伏~3.7伏:為模數(shù)轉(zhuǎn)換器、RST電路、內(nèi)部時鐘源和鎖相環(huán)等部分提供電源。使用模數(shù)轉(zhuǎn)換器時,模擬供電的電壓不能夠小于3.0伏。模擬供電 電壓和模擬地必須分別連接到電源供電電壓和地。 </p><p> 備份電源電壓范圍為 2.0~3.7伏:當關閉電源供
49、電電壓輸入時,(通過內(nèi)部電源切換器)為實時時鐘、EXTERN 32k赫茲晶振和BKP寄存器進行供電。</p><p> STM32F103RB采用的是可嵌套的VECTOR INTERRUPT ,該低功耗控制器嵌入一個嵌套INTERRUPT VECTOR控制器可以支持不同的優(yōu)先級中斷進入。</p><p> ?緊密耦合的NVIC提供低延遲中斷處理</p><
50、;p> ?中斷入口向量表地址直接傳遞到核心</p><p> ?緊密耦合的NVIC核心接口</p><p> ?允許早期處理中斷</p><p> ?處理遲到的高優(yōu)先級中斷</p><p><b> ?支持尾鏈</b></p><p> ?處理器狀態(tài)自動保存</
51、p><p> ?中斷入口恢復中斷出口沒有指令的開銷</p><p> 在本方案中用到了STM32F103RB控制器的如下外設:</p><p> 內(nèi)部FLASH:用來存儲程序和靜態(tài)數(shù)據(jù);</p><p> 內(nèi)部SRAM:用來存放程序運行過程中的動態(tài)數(shù)據(jù),比如堆,棧等。</p><p> GPIO: 通用串行輸入
52、輸出引腳,用來驅(qū)動LED作為指示功能。</p><p> USART:通用串行通信設備,用來與藍牙模塊連接,與藍牙模塊進行通信,設置藍牙模塊工作方式,接收藍牙模塊發(fā)來的控制命令。</p><p> SPI:串行通信設備,用來與陀螺儀GY521 MPU-6050等傳感器進行通信,接收傳感器發(fā)來的數(shù)據(jù),進行后續(xù)數(shù)據(jù)分析。</p><p> AD:模數(shù)轉(zhuǎn)換器,主要用
53、于方便后期功能調(diào)試,通過電位器就可以了修改程序運行的相關參數(shù),大大簡化開發(fā)步驟和節(jié)約調(diào)試時長。</p><p> JTAG: 標準芯片調(diào)試接口,主要用來下載程序和調(diào)試程序。</p><p> 主控制器stm32f103RB最小系統(tǒng)電路設計:</p><p> 本設計采用意法半導體公司32位單片機stm32f103RB為控制器,其最小系統(tǒng)的電路如圖3-3,主要有
54、控制器供電部分、復位電路部分、外部時鐘部分,啟動選擇部分。由于控制器內(nèi)部集成了FLASH、SRAM、PWM、SPI、IIC、USART、TIMER、AD等模塊,因此使用起來特別方便。</p><p> 3.3.3陀螺儀傳感器部分:</p><p> 本方案中采用的陀螺儀傳感器的型號為MPU-6050,它的內(nèi)部同時帶有陀螺儀傳感器和加速度傳感器的功能,內(nèi)部還有可自定義進行功能拓展的協(xié)處理
55、器。除此之外,還可以利用MPU-6050的IIC 通用串行數(shù)據(jù)傳輸接口來連接一個額外的DIGITAL傳感器,比如溫度傳感器。</p><p> MPU-6050分別對它的陀螺儀傳感器和加速度傳感器使用了一個16位精度的模數(shù)轉(zhuǎn)換器,將它的模擬信號量轉(zhuǎn)化為可以輸出的數(shù)字信號量。為了在不同的情形下使用不同的測量范圍和測量速度,該SENSOR的檢測精度和速度是可以通過程序進行自主設置的,陀螺儀傳感器的可測量范圍為-25
56、0dps到+250dps,-500dps到+500dps,-1000dps到+1000dps,-2000dps到+2000dps。加速度計可測量范圍為:-2g到+2g,-4g到+4g,-8g到+8g,-16g到+16g。MPU-6050上有1KByte的緩沖區(qū)域,有助于增加系統(tǒng)節(jié)能效率。和所有設備之間通信采用400K赫茲的IIC接口或者1M赫茲的SPI接口。MPU-6050的供電電源電壓范圍為2.8伏~4.0伏。MPU-6050有一個可
57、用來編程的中斷體系,可以采用在中斷的引腳產(chǎn)生中斷信號,狀態(tài)標志寄存器可以說明中斷信號的來源。本方案中采用IIC接口與MPU-6050進行通信,IIC硬件連接相對比較簡單,只需要兩根線(SDA數(shù)據(jù)線、SCL時鐘線)即可完成數(shù)據(jù)的傳輸,并且速度也能滿足本方案的需求。</p><p> 3.3.4馬達驅(qū)動電路: </p><p> 本方案采用的驅(qū)動電路方案為:</p><
58、p> 文件夾中有電路圖 需要截圖使用。</p><p> 3.3.5測速部分:</p><p> 對于檢測自平衡小車小車車輪的旋轉(zhuǎn)速率有這下面幾種方案:</p><p> 光反射法。運用不相同色彩物體對光的吸收結(jié)果不同的原理,在馬達軸上安裝的轉(zhuǎn)盤上繪制一條反光較強的線,然后在同一端用光源照射并采用光-電感應器件采樣轉(zhuǎn)盤的反射光,形成PULSE信號,通
59、過對單位時長段內(nèi)的PULSE數(shù)量統(tǒng)計,就可以計算出馬達的旋轉(zhuǎn)的速率。</p><p> 光柵法。在馬達軸上安裝一個轉(zhuǎn)盤,轉(zhuǎn)盤上均勻分布有扇形槽孔,在轉(zhuǎn)盤的兩端分別放置紅外發(fā)射端和紅外接收端,在馬達旋轉(zhuǎn)時,紅外接收端則會產(chǎn)生相應的PULSE信號,通過對單位時長內(nèi)的PULSE記錄,就可以計算出馬達的旋轉(zhuǎn)的速率。</p><p> 霍爾開關檢測法。同樣也是在馬達旋轉(zhuǎn)軸徑上安裝一個轉(zhuǎn)盤,轉(zhuǎn)盤上
60、同時安裝一個帶有磁性的塊狀物體,在它的旋轉(zhuǎn)路徑環(huán)外部安裝一個霍爾檢測器件開關,在馬達旋轉(zhuǎn)時,霍爾檢測器件開關則可以響應定期的電磁信號,形成PULSE信號,通過對單位時長內(nèi)的PULSE記錄,就可以計算出馬達的旋轉(zhuǎn)的速率。</p><p> 對于上述三種方案,光束在反射的過程中容易受環(huán)境光的干擾,而第二種方案光柵法相對于第三種方案霍爾開關檢測法實施起來更為方便。所以本設計中采用的測速方案為光柵法來測量馬達的轉(zhuǎn)速。測
61、速的電路如下:</p><p> 3.3.6調(diào)試部分AD JTAG:</p><p><b> 有原理圖 需要截圖</b></p><p> 為了方便調(diào)試,在硬件結(jié)構上增加了如下調(diào)試接口:</p><p> JTAG接口:JTAG是一種標準的芯片調(diào)試接口,一共有20個引腳。其中主要引腳功能分別如下所述:<
62、/p><p> TRST:芯片復位的引腳,用來在調(diào)試或者下載程序時對相應芯片進行復位操作。</p><p> TDI: JTAG測試數(shù)據(jù)通過串行通訊的傳輸引腳。</p><p> TMS:JTAG的測試調(diào)試模式的選擇。</p><p> TCK: JTAG的測試的時鐘輸入引腳。</p><p> TDO:測試數(shù)據(jù)
63、經(jīng)過串行通信數(shù)據(jù)輸出的引腳。</p><p> VCC: 電源正極引腳。</p><p> VSS: 電源負極引腳。</p><p> 將其置于電路板上,主要用于程序的在線下載和調(diào)試,可以極大的加快開發(fā)效率。</p><p> 同時,也在電路板上放置了4個電位器調(diào)試接口,可以在程序運行時方便的修改一些系統(tǒng)參數(shù),而不需要每次重新更改程序
64、,然后下載程序再次上電測試。這樣也是極大的簡化了調(diào)試環(huán)節(jié),節(jié)約了開發(fā)時長。</p><p> 3.3.7藍牙通信部分:ZK-07</p><p> 為了更加方便的實現(xiàn)控制自平衡小車的前進、后退和轉(zhuǎn)向,有如下幾種方案可供選擇:</p><p> 1 通過在小車上放置按鍵來控制小車的運動方式。這種方式雖然實現(xiàn)起來十分簡單,但是在操控的時候十分不便,而且也不夠?qū)崟r。
65、所以放棄此方案。</p><p> 2通過紅外遙控。在自平衡小車上安裝一個紅外接收器,在另一端持有一個紅外發(fā)送裝置,可以實時的向自平衡小車發(fā)送控制命令,實現(xiàn)對小車靈活的控制。但是紅外的信息發(fā)送和接收必須要求兩端接口方向基本一致,對于移動中的小車來說,顯然不太適合。</p><p> 通過433頻段的電磁波遙控模塊進行命令的發(fā)送和接收,此種方案既能實現(xiàn)實時遠程控制,也沒有對發(fā)送過程中方向
66、的限制,是一種比較好的方案,但是這要求額外制作一個發(fā)送器。</p><p> 通過手機的藍牙與自平衡小車進行通信,除了第三種方案的優(yōu)勢以外,還能夠簡化系統(tǒng)結(jié)構。最終選用第四種方案。</p><p> 本方案選用的藍牙模塊為ZK-07,它是眾多藍牙透傳模塊中的一種。ZK-07藍牙模塊可以通過通用串行傳輸USART與各類控制器進行數(shù)據(jù)傳輸。通信傳輸過程中,采用AT命令來調(diào)整藍牙模塊各種參數(shù)
67、,比如通信測試,修改藍牙模塊名稱,修改串口傳輸波特率,修改藍牙配對密碼等。ZK-07的串口初始 BAUD是9600bps, 藍牙模塊中所有設置好的參數(shù)在斷電之后依然不會丟失。通過AT指令對藍牙模塊進行適當設置之后,就可以發(fā)送命令使藍牙模塊進入透傳模式,與手機端的藍牙進行通信。透傳是指,兩端傳輸數(shù)據(jù)時不用了解中間傳輸?shù)倪^程,實現(xiàn)所發(fā)即所得。在本方案中,主控芯片通過USARTA1接口與藍牙模塊進行通信,小車上的藍牙模塊與手機端的藍
68、牙配對成功后,即可進行數(shù)據(jù)通信,在手機端給自平衡小車發(fā)送相應的命令,小車接收相應命令后調(diào)整自身向前行進,向后行進,以及左右轉(zhuǎn)向等操作。</p><p><b> 3.4本章小結(jié)</b></p><p> 本章節(jié)主要說明了系統(tǒng)硬件電路部分的設計,包括控制器STM32F103RB最小系統(tǒng)電路,供電部分模塊設計,陀螺儀傳感器MPU-6050電路設計,加速度計傳感器電路設
69、計,基于H橋的馬達驅(qū)動模塊的設計,光柵法側(cè)馬達旋轉(zhuǎn)速率模塊的設計,輔助調(diào)試電位器、JTAG模塊設計,藍牙模塊通信部分模塊設計。至此,本設計中硬件電路的設計環(huán)節(jié)完成。</p><p><b> 4.系統(tǒng)軟件設計</b></p><p> 4.1軟件系統(tǒng)總體結(jié)構</p><p> 前面說明了自平衡小車體系的原理部分,建模部分,硬件電路設計部分
70、。本章將介紹本設計中的軟件系統(tǒng)設計部分,控制過程的構思和實現(xiàn)是最重要的部分。</p><p> 軟件設計主要包括如下內(nèi)容:各類外設驅(qū)動,其中包括USART驅(qū)動,IIC驅(qū)動,PWM外設驅(qū)動,定時器驅(qū)動,陀螺儀MPU6050傳感器、加速度傳感器驅(qū)動,AD驅(qū)動。以及各外設及模塊的初始化,小車姿態(tài)數(shù)據(jù)的獲取以及濾波,小車車輪速度測量,以及適配本系統(tǒng)的PID算法??刂葡到y(tǒng)的運作流程框圖如圖4-1所示。</p>
71、<p> 圖4-1系統(tǒng)總體軟件流程圖</p><p> 4.2系統(tǒng)初始化過程</p><p> 軟件系統(tǒng)初始化主要包括如下這幾部分:中斷初始化、模數(shù)轉(zhuǎn)換部分(AD)、通用串行通信模塊(USART),定時器(TIMER)及PWM模塊等。</p><p> 4.2.1模數(shù)轉(zhuǎn)換模塊(AD)初始化設置</p><p> 為了在
72、后期更好的調(diào)試,利用四個模數(shù)轉(zhuǎn)換器對外提供了四個系統(tǒng)參數(shù)調(diào)節(jié)接口。也就是說,不需要重新修改程序再次下載上電,就可以在程序運行中修改系統(tǒng)參數(shù)來對系統(tǒng)進行調(diào)試。STMF103RB的模數(shù)轉(zhuǎn)換器外設AD有16個通道,最高精度可達12位,單次采樣時間最短可至1.17微秒。初始化過程如下:</p><p> 4.2.2通用串行通信USART初始化</p><p> 通用串行通信USART模塊的初始
73、化中主要設置如下參數(shù):串口波特率,工作模式,停止位,中斷允許標志位,DMA是否開啟,校驗模式。初始化過程如下:</p><p> 4.2.3光柵法測速模塊初始化</p><p> 在本設計中,通過光柵法來獲取小車速度。光柵接收端的PULSE數(shù)量與自平衡小車移動的距離成正比。根據(jù)光柵測量的PULSE數(shù)量來計算小車轉(zhuǎn)速有以下兩種方案:</p><p> 在單位時間
74、內(nèi)計數(shù)光柵產(chǎn)生的PULSE個數(shù)來計算小車速率,稱為M法測速;</p><p> 計算兩個相鄰光柵接收PULSE的時間差來測量小車速度,稱為T法測速;</p><p> 在上述兩種測速方法中,第一套措施用于高速的應用效果更好,第二套措施用于低速的應用效果更好。在本設計中如果采用前者測速,馬達旋轉(zhuǎn)一圈會產(chǎn)生400個PULSE,高頻的中斷會影響控制系統(tǒng)的精度,因此本設計中采用第一套方法來測量
75、小車速度。</p><p> 4.3平衡PID控制軟件實現(xiàn)</p><p> 自平衡小車在采用PID控制模型的輸出方程可寫為:</p><p><b> (式2-14)</b></p><p> 式2-14中,為PID控制輸出量,Angle為反饋傾角值,Angle_dot為反饋角速度值,Kp和Kd分別為比例系數(shù)及
76、微分系數(shù)。在本設計中,采用的調(diào)節(jié)自平衡小車車速的方法是調(diào)節(jié)小車馬達電壓,輸出電壓與PWM驅(qū)動的占空比成正比。相應公式如下:</p><p> Uout=Kp*angle+Kd*angle_dot (式4-8)</p><p> 式中:Kp、Kd為比例系數(shù)和微分系數(shù),angle為車身傾角,angl
77、e_dot為車身傾斜的角速度。</p><p> 在調(diào)試的過程中發(fā)現(xiàn),當自平衡小車偏移角度很小的時候,馬達的輸出量很小,但是由于馬達由靜止狀態(tài)轉(zhuǎn)為運動狀態(tài)時,需要克服一個靜態(tài)摩擦力,所以在此階段就存在一個調(diào)節(jié)死區(qū):PWM有輸出,但是馬達并沒有旋轉(zhuǎn)。為了克服這種情況,需要對馬達的輸出在低輸出區(qū)域增加一個死區(qū)補償,增加系統(tǒng)在靜態(tài)時的穩(wěn)定性。</p><p> 圖4-4 馬達死區(qū)補償<
78、/p><p><b> 有</b></p><p> 圖4-5 自平衡PD控制軟件流程圖</p><p> 4.4兩輪自平衡車的運動控制</p><p> 車速PID控制程序如下:</p><p><b> 5. 總結(jié)與展望</b></p><p&g
79、t;<b> 5.1 總結(jié)</b></p><p> 在本次畢業(yè)設計的過程中,經(jīng)歷了一個完整的設計過程:自平衡車的自平衡原理探究和論證,整體功能設計,機械結(jié)構設計,硬件電路設計,軟件設計以及最后的實物制作和調(diào)試,最終完成本作品。</p><p> 自平衡車的自平衡原理探究和論證主要包含物理模型分析,數(shù)學建模,PID原理分析部分;整體功能設計部分主要包括了功能實現(xiàn)
80、方案的選擇,各個功能模塊開發(fā)可行性分析;機械結(jié)構設計主要包括小車機械主體搭建,整體重心調(diào)整,傳感器裝置的安裝等;硬件電路設計部分主要包括電源供應模塊的設計,主控制器STM32F103RB最小系統(tǒng)模塊的設計,傳感器數(shù)據(jù)采集模塊的設計,兩輪馬達轉(zhuǎn)速測量模塊的設計,藍牙模塊數(shù)據(jù)傳輸模塊的設計,輔助調(diào)試模塊的設計,馬達驅(qū)動模塊的設計;軟件系統(tǒng)設計主要包括各類模塊驅(qū)動的開發(fā),傳感器數(shù)據(jù)的采集和濾波,馬達的轉(zhuǎn)速測量,馬達的轉(zhuǎn)速控制,主控制器以及各外
81、設的初始化,藍牙模塊通信的開發(fā)以及PID控制器算法的設計;最后進行整個系統(tǒng)的調(diào)試和完善。</p><p> 本方案最終實現(xiàn)了雙輪自平衡小車的自主站立,能夠抵抗一定程度的外界環(huán)境干擾。同時,能夠在保持平衡的基礎上,通過Android手機控制小車的前進、后退、和轉(zhuǎn)彎等操作。</p><p><b> 5.2 展望</b></p><p> 由
82、于時間和能力有限,本設計只是完成了一個簡單地自平衡小車運動模型,還有如下方面可以繼續(xù)提高:</p><p> (1)改進機械結(jié)構,提高系統(tǒng)穩(wěn)定性;</p><p> (2)采用更高精度的陀螺儀傳感器和加速度計傳感器,提升系統(tǒng)姿態(tài)測量的精度。</p><p> (3)使用工作頻率更高的主控制器,提高系統(tǒng)運算速度。</p><p><
83、b> 參考文獻</b></p><p> [1]張培仁.基于16/32位DSP機器人控制系統(tǒng)設計與實現(xiàn)[M].北京:清華大學出版社, 2006:911.</p><p> [2]李紅美,李智,高飛.平衡的杰作——賽格威FIT兩輪平臺電動車[J].電器工業(yè). 2002, (6):19-21.</p><p> [3]屠運武,徐俊艷,張培
84、仁.自平衡控制系統(tǒng)的建模與仿真[J].系統(tǒng)仿真學報.2004(04).</p><p> [4]Ren Yafie,Ke Xizheng,Liu Yijie.MEMS Gyroscope Performance Estimate Based on Allan Variance[A].In Proceedings of 2007 8th International Conference on Electroni
85、c Measurement & Instruments[C]. Xi'an China.Vol.1, 260-263.</p><p> [5]王曉宇,閆繼宏,臧希喆等.兩輪白平衡機器人多傳感器數(shù)據(jù)融合方法研究[J].傳感器技術學報.2007,(3):668~672 </p><p> [6] 趙杰,王曉宇,秦勇等.基于UKF的兩輪自平衡機器人姿態(tài)最優(yōu)估計研究[J].
86、機器人. 2006: (11),605—609.</p><p> [7] 耿延睿,崔中興.組合導航系統(tǒng)卡爾曼濾波衰減因子自適應估計算法研究[J].中國慣性技術學報.2001(04).</p><p> [8 秦永元,張洪鉞,汪叔華.卡爾曼濾波與組合導航原理[M].西安:西北工業(yè)大學出版社, 1998.</p><p> [9] 付夢印,鄧志紅,張繼偉.Kal
87、man濾波理論及其在慣性導航系統(tǒng)中的應用[M].第二版.北京:科學出版社,2010. </p><p> [10] 周豐,王南山,陳卉.C語言教程[M].武漢:華中科技大學出版社,2008.</p><p> [11] 譚浩強.C程序設計[M].北京:清華大學出版社,2005.</p><p> [12] 康華光.電子技術基礎[M]..北京:高等教育出版社,2
88、006.1.</p><p><b> 附 錄</b></p><p> 附錄一 系統(tǒng)電路原理圖</p><p><b> 致謝</b></p><p> 不知不覺,大學生活已經(jīng)接近尾聲,畢業(yè)設計的工作也即將結(jié)束。回顧大學四年的心路歷程,感慨良多。</p><p>
89、 在這里,我首先要感謝我的指導老師盧仕老師。在大學的學習過程中,感謝他教給了我扎實的基礎知識,讓我至今十分受用。同時,也給我們提供了機會讓我們能夠較早的接觸電子行業(yè)各種各樣有趣的東西,正是有了這些興趣,才使我們在電子行業(yè)里越學越有勁。不僅如此,也感謝他帶領我們參加了各種各樣的比賽,讓我們在比賽實戰(zhàn)中學習,成長,認識自己的不足,然后加以修正。在畢業(yè)設計制作的過程中,也感謝他在百忙之中還能夠細心的指導我,從畢業(yè)課題的選擇,到畢業(yè)作品的設計
90、和制作,到畢業(yè)論文的編撰,期間的每一步都有老師認真的指導。他對待工作的嚴謹態(tài)度和對學生無微不至的關心,給我以后的工作、學習和生活樹立了良好的榜樣。</p><p> 另外,十分感謝王曉臨老師,。無論是在平時的學習和生活中,還是在這次的畢業(yè)設計過程中,老師總是能夠細心和我們探討和解決問題。當我們遇到挫折時,總是能夠給予我們信心,悉心指導,帶著我們戰(zhàn)勝困難。在這次畢業(yè)設計的過程中,給了我們莫大的幫助。</p&
91、gt;<p> 我也要感謝和我一起學習電子的朋友。因為興趣,我們聚到一起;因為夢想,我們互相攙扶合作,在電子行業(yè)的海洋中不斷學習新的知識,挑戰(zhàn)困難,戰(zhàn)勝困難,最終收獲良多。</p><p> 同時,我要感謝我的母校—湖北大學,是母校給我們提供了完善的學習環(huán)境和優(yōu)良的學習氛圍;也感謝每個曾經(jīng)教我課的老師,是你們教給了我專業(yè)的知識和技能。</p><p> 最后,我還要感謝
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 兩輪自平衡小車畢業(yè)設計
- 兩輪自平衡小車畢業(yè)設計
- 兩輪自平衡小車畢業(yè)設計!!-修改
- 兩輪自平衡小車的設計畢業(yè)設計
- 兩輪自平衡小車的設計畢業(yè)設計
- 畢業(yè)設計--兩輪自平衡小車的設計
- 低成本兩輪自平衡小車設計畢業(yè)論文
- 兩輪自平衡小車系統(tǒng).pdf
- 體感控制兩輪自平衡小車
- 基于msp430的兩輪自平衡小車設計
- 基于單片機的兩輪自平衡小車系統(tǒng)設計
- 兩輪自平衡小車建模及其姿態(tài)平衡控制方法研究.pdf
- 兩輪自平衡小車平衡控制系統(tǒng)的品質(zhì)研究.pdf
- 兩輪自平衡小車大范圍鎮(zhèn)定方法研究.pdf
- 兩輪自平衡小車的控制技術研究.pdf
- 兩輪自平衡小車的設計與變結(jié)構控制研究.pdf
- 基于DSP的兩輪自平衡小車的設計與研究.pdf
- 基于DSP的兩輪自平衡小車的設計及實現(xiàn).pdf
- 基于LQR算法兩輪自平衡小車的系統(tǒng)設計與研究.pdf
- 兩輪自平衡小車的神經(jīng)網(wǎng)絡PID控制.pdf
評論
0/150
提交評論