版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、分類(lèi)號(hào) 密級(jí) 編號(hào) 本科畢業(yè)論文(設(shè)計(jì)) 題目題目 單軸雙輪自平衡機(jī)器人的設(shè)計(jì)與制作單軸雙輪自平衡機(jī)器人的設(shè)計(jì)與制作 系 別 專(zhuān) 業(yè) 名 稱(chēng) 電子信息科學(xué)與技術(shù) 年 級(jí) 學(xué) 生 姓 名 學(xué) 號(hào) 指 導(dǎo) 教 師 二一六年四月目 錄1. 緒論緒論.11.1 引言.11.2 本文研究的內(nèi)容.22.理論分析理論分析.32.1 自平衡小車(chē)的物理建模.22.2 PID 控制技術(shù).82.3 簡(jiǎn)易對(duì)稱(chēng)互補(bǔ)濾波技術(shù).93.系統(tǒng)設(shè)計(jì)系統(tǒng)設(shè)計(jì).133.1 硬件設(shè)計(jì)方案論證.93.2 軟件設(shè)計(jì)方案論證.94. 綜合調(diào)試綜合調(diào)試.145. 總結(jié)總結(jié).13參考文獻(xiàn)參考文獻(xiàn).15附錄附錄 部分程序代碼部分程序代碼.16摘要
2、:摘要:?jiǎn)屋S雙輪自平衡機(jī)器人是一個(gè)極不穩(wěn)定的系統(tǒng),常用來(lái)檢驗(yàn)控制算法的有效性。本文主要綜述了單軸雙輪自平衡系統(tǒng)的研究現(xiàn)狀,以及單軸雙輪自平衡系統(tǒng)的研究?jī)r(jià)值。然后通過(guò)物理建模得到了單軸雙輪自平衡系統(tǒng)的運(yùn)動(dòng)學(xué)特性,并結(jié)合傳感器技術(shù)和自動(dòng)控制理論提出了一個(gè)單軸雙輪自平衡小車(chē)的設(shè)計(jì)方案。采用了陀螺儀和加速度傳感器分別對(duì)車(chē)體傾角進(jìn)行檢測(cè),利用對(duì)稱(chēng)互補(bǔ)濾波算法對(duì)檢測(cè)到的數(shù)據(jù)進(jìn)行融合得到精確的車(chē)體傾角,再引入 PID 技術(shù)對(duì)車(chē)體姿態(tài)進(jìn)行精確控制。最后對(duì)論文所做的工作進(jìn)行了總結(jié),對(duì)未來(lái)的研究和發(fā)展做出了展望。關(guān)鍵詞:關(guān)鍵詞:自平衡 電機(jī)驅(qū)動(dòng) PID 技術(shù) 陀螺儀 簡(jiǎn)易對(duì)稱(chēng)互補(bǔ)濾波器Abstract:The u
3、niaxial two-wheeled self-balancing robot is a very unstable system, so often used to test the effectiveness of the control algorithm.In recent years many experts from home and abroad have had a deep research on the theory of uniaxial two-wheeled self-balancing,and the theory was greatly promoted. Th
4、en through the physical modeling the kinematic characteristics was found,and Combined with sensor technology and automatic control theory a design was Presented. The gyroscope and accelerometer sensors are respectively on robot inclination detection, complementary symmetry filtering algorithm was us
5、ed to deal with data and get the precise body inclination ,Then introduce PID technology on vehicle attitude control. Finally the paper makes a conclusion, implications for future research and development prospects.Key words: self-balance motor-drives PIDtechnology gyroscope simple complementary fil
6、tering1.緒論緒論1.1 引言引言近年來(lái),隨著人工智能理論和傳感器技術(shù)的發(fā)展,機(jī)器人理論得到了很大的發(fā)展。做為移動(dòng)機(jī)器人中的一個(gè)重要分支,單軸雙輪自平衡系統(tǒng)也引起了國(guó)內(nèi)外的科研機(jī)構(gòu)和企業(yè)以及一些機(jī)器人 DIY 愛(ài)好者的關(guān)注。它是一個(gè)絕對(duì)不穩(wěn)定系統(tǒng),必須施加強(qiáng)有力的控制手段才能保重其平衡,所以它可以用于檢驗(yàn)控制算法的有效性。由于引入了人工智能技術(shù)和傳感器技術(shù)所以可以完成復(fù)雜環(huán)境下的復(fù)雜任務(wù),只需要在硬件上做很少的改動(dòng)就可以增加載人功能,成為單軸雙輪自平衡代步車(chē)。2002 年瑞士聯(lián)邦技術(shù)學(xué)院工業(yè)電子實(shí)驗(yàn)室的研究人員研制的名為 JOE 的基于倒立擺的小型自平衡兩輪車(chē)模型,是由 DSP 芯片進(jìn)行
7、控制的。它由車(chē)架上方所附的重物模擬實(shí)際車(chē)中的駕駛者。研究人員通過(guò)陀螺儀和光電編碼器測(cè)量的數(shù)據(jù),用線(xiàn)性狀態(tài)反饋控制器控制整個(gè)系統(tǒng)的平衡穩(wěn)定1。同年,美國(guó) kgo 公司的 SteveHassenplug 設(shè)計(jì)了兩輪自平衡傳感式機(jī)器人Lcgway。這個(gè)設(shè)計(jì)引入了電機(jī)的差動(dòng)驅(qū)動(dòng)方式,它可以工作在傾斜面甚至不規(guī)則表面上,可遙控操作。通過(guò)對(duì)電動(dòng)機(jī)進(jìn)行遙控,Legway 可以在前行,后退和轉(zhuǎn)彎時(shí)保持平衡,可以實(shí)現(xiàn)零半徑轉(zhuǎn)彎和 U 型回轉(zhuǎn)。同年三洋電機(jī)展示了可依靠上體倒立來(lái)保持平衡的雙輪行走機(jī)器人“FLATHRU” ,大小為602463564mm,重 20Kg。移動(dòng)速度方面,平地行走時(shí)最大 30cm/s,可搬
8、運(yùn)重量最大為 10Kg,運(yùn)行時(shí)間約為 1 小時(shí)。車(chē)輪中嵌有一個(gè)輸出功率為 90W的直流電動(dòng)機(jī),頭部則嵌入了兩個(gè)相同的電動(dòng)機(jī)。為了檢測(cè)上體的平衡情況,使用了 3 個(gè)陀螺儀和 1 個(gè) 3 軸加速度傳感器。同年,美國(guó) Segway 公司開(kāi)發(fā)了世界上第一部能夠自平衡的兩輪電動(dòng)車(chē),時(shí)速高達(dá) 20Km/h。該電動(dòng)車(chē)把人們從傳統(tǒng)的“三點(diǎn)平衡”和以低重心、大而穩(wěn)的底盤(pán)設(shè)計(jì)來(lái)避免傾斜的束縛中解脫出來(lái)。通過(guò)檢測(cè)車(chē)體的角度和角速度,用適當(dāng)?shù)幕貜?fù)轉(zhuǎn)矩來(lái)避免傾斜摔倒。Segway 使用的是航空級(jí)陀螺儀、一組傾斜傳感器、一套復(fù)雜的“直覺(jué)軟件” 、一個(gè)加速度計(jì)、十個(gè)微處理器、兩個(gè)鎳氫電池組、一臺(tái)電動(dòng)機(jī)和每秒檢測(cè)一百多次駕駛
9、者重心的傳感器。2007 年,日本早稻田大學(xué)的 RyoWatanabe 在 Legway 的啟發(fā)下設(shè)計(jì)制作了NXTway,美國(guó)麻省理工學(xué)院的幾名學(xué)生設(shè)計(jì)制作出了一臺(tái)自平衡小車(chē),中心處理器采用 PIC 單片機(jī)2。 以上是國(guó)內(nèi)外兩輪自平衡機(jī)器人和自平衡代步車(chē)的研究現(xiàn)狀。這些機(jī)器人和代步車(chē)對(duì)本課題的研究提供了很好的指導(dǎo)作用。為下面的研究工作提供了很好的參考。1.2 本文研究的主要內(nèi)容本文研究的主要內(nèi)容本文研究主要的內(nèi)容包括:1)雙輪自平衡機(jī)器人的物理建模;2)對(duì)幾種常用的直流有刷電機(jī)驅(qū)動(dòng)電路進(jìn)行分析對(duì)比,選取一款合適的電機(jī)驅(qū)動(dòng)電路;3)對(duì)幾種常用的測(cè)量電機(jī)轉(zhuǎn)速的方法進(jìn)行分析和對(duì)比,選取一種合理的測(cè)量
10、電機(jī)轉(zhuǎn)速的方案;4)仔細(xì)研究系統(tǒng)中使用的多個(gè)不同電壓值的電源,對(duì)常用的穩(wěn)壓電路進(jìn)行分析和對(duì)比,選取一種合適的電源方案;5)研究 PID 算法的基本原理,并將 PID 算法應(yīng)用在直流有刷電機(jī)的控制中;6)對(duì)幾種常用的陀螺儀和加速度計(jì)等慣性元件的性能進(jìn)行分析對(duì)比,并深入研究互補(bǔ)對(duì)稱(chēng)濾波數(shù)據(jù)融合技術(shù),選出合適的陀螺儀和加速度計(jì);7)采用 Altium Designer 軟件繪制電路原理圖和 PCB 板,搭建 STM32 最小硬件系統(tǒng),利用 RVMDK V4.2 編譯調(diào)試軟件,以及 STM32 固件庫(kù)完成 STM32 的軟件開(kāi)發(fā);8)仔細(xì)研究系統(tǒng)中各個(gè)模塊之間的通信協(xié)議以及實(shí)現(xiàn)方法,選取合適的通信方案
11、。2.理論分析理論分析2.自平衡小車(chē)的物理建自平衡小車(chē)的物理建模模圖 2-1 單軸雙輪自平衡機(jī)器人的受力示意圖機(jī)器人受力分解圖如圖 2-1 所示。其中規(guī)定質(zhì)心為,水平方向?yàn)榇怪監(jiān)x方向?yàn)?,機(jī)器人支架中心軸線(xiàn)規(guī)定為軸,與其垂直方向的軸線(xiàn)規(guī)定為,ymn為機(jī)器人的偏角。機(jī)器人本質(zhì)不穩(wěn)定,車(chē)體傾斜的原因源于重力在水平方向的分量。為了保持平衡, 機(jī)器人方向的驅(qū)動(dòng)力必須等于或大于重力沿著水平xf方向軸的分力。當(dāng)機(jī)器人實(shí)現(xiàn)動(dòng)態(tài)平衡時(shí),水平方向的推力3。xHf)()(tftfHF由圖 2-1 得,重力沿著水平方向的分量為: (2-( )() tanHftMm g1)電機(jī)產(chǎn)生的水平方向的驅(qū)動(dòng)力為:)(tf (2
12、-2( )( )gKf ttR)其中,為車(chē)輪半徑,減速比,電機(jī)扭矩。RgK)(t如果已知電機(jī)的最大扭矩,可求得單軸雙輪自平衡機(jī)器人達(dá)到動(dòng)態(tài)平衡時(shí)MgxymnOgsingHf的傾角為: (2-3gmMtf)()(arctan)將電機(jī)的最大扭矩代入式 2-2,可以得到最大驅(qū)動(dòng)力,再將代maxmaxfmaxf入式 2-3 可得到單軸雙輪自平衡機(jī)器人的最大可控角度。上面的計(jì)算是在max系統(tǒng)沒(méi)有動(dòng)能損失的情況下, 即小車(chē)在調(diào)整平衡過(guò)程中沒(méi)有運(yùn)動(dòng), 如果考慮這些因素, 系統(tǒng)的控制范圍要小一些, 因此可以最終確定系統(tǒng)的控制范圍為: (2-4)maxmax5454以上的物理建模完成了對(duì)單軸雙輪自平衡機(jī)器人的受
13、力分析和最大可控角度推導(dǎo),旨在為 PID 控制提供理論指導(dǎo)。.PID 控制技術(shù)控制技術(shù)PID 是比例(Proportion)、積分(Integration)、微分(Differentiation)的英文縮寫(xiě)。PID 控制技術(shù)是工程應(yīng)用中最為廣泛的調(diào)節(jié)器控制規(guī)律,簡(jiǎn)稱(chēng) PID 控制或 PID調(diào)節(jié)。PID 控制器問(wèn)世至今已有近 70 年歷史,其結(jié)構(gòu)簡(jiǎn)單、穩(wěn)定性好、工作可靠、調(diào)整方便,因而成為工業(yè)控制的主要技術(shù)之一。當(dāng)被控對(duì)象的結(jié)構(gòu)和參數(shù)不能完全掌握,或得不到精確的數(shù)學(xué)模型時(shí),控制理論的其它技術(shù)難以采用時(shí),系統(tǒng)控制器的結(jié)構(gòu)和參數(shù)必須依靠經(jīng)驗(yàn)和現(xiàn)場(chǎng)調(diào)試來(lái)確定,這時(shí)應(yīng)用 PID 控制技術(shù)最為方便。即當(dāng)我
14、們不完全了解一個(gè)系統(tǒng)和被控對(duì)象,或不能通過(guò)有效的測(cè)量手段來(lái)獲得系統(tǒng)參數(shù)時(shí),最適合用 PID 控制技術(shù)。當(dāng)被控對(duì)象的結(jié)構(gòu)和參數(shù)不能完全掌握,或得不到精確的數(shù)學(xué)模型時(shí),控制理論的其它技術(shù)難以采用時(shí),系統(tǒng)控制器的結(jié)構(gòu)和參數(shù)必須依靠經(jīng)驗(yàn)和現(xiàn)場(chǎng)調(diào)試來(lái)確定,這時(shí)應(yīng)用 PID 控制技術(shù)最為方便。而本系統(tǒng)是一個(gè)復(fù)雜的非線(xiàn)性系統(tǒng),其約束條件不確定,很難通過(guò)物理建模直接得到系統(tǒng)的精確數(shù)學(xué)模型。因此本系統(tǒng)中選用的控制策略為 PID 算法。 比例積分微分+被控對(duì)象)( r t+)( e t)(u t)(ty-圖 3-1 PID 控制系統(tǒng)原理圖如圖 3-1 所示 PID 控制器就是根據(jù)系統(tǒng)的誤差,利用比例、積分、微分計(jì)
15、算出控制量進(jìn)行控制的。其中為給定值,為系統(tǒng)的實(shí)際輸出值,給定)(tr)(ty值與實(shí)際輸出值構(gòu)成控制偏差)( e t (3-1))()()( etrtyt作為 PID 控制的輸入,作為 PID 控制器的輸出和被控對(duì)象的輸入。所)( e t)(ty以模擬 PID 控制器的控制規(guī)律為: (3-2))()(1)()(u0dttdeTddtteTiteKptt其中:控制器的比例系數(shù)Kp 控制器的積分時(shí)間,也稱(chēng)積分系數(shù)Ti控制器的微分時(shí)間,也稱(chēng)微分系數(shù)Td將偏差的比例(Proportion) 、積分(Integral)和微分(Differential)通過(guò)線(xiàn)性組合構(gòu)成控制量,用這一控制量對(duì)被控對(duì)象進(jìn)行控制
16、,這樣的控制器稱(chēng) PID控制器。由于計(jì)算機(jī)的出現(xiàn),計(jì)算機(jī)進(jìn)入了控制領(lǐng)域。人們將模擬 PID 控制規(guī)律引入到計(jì)算機(jī)中來(lái)。對(duì)式 3-2 的 PID 控制規(guī)律進(jìn)行適當(dāng)?shù)淖儞Q,就可以用軟件實(shí)現(xiàn) PID 控制,即數(shù)字 PID 控制。數(shù)字 PID 可分為:位置式 PID 算法和增量式PID 算法。本系統(tǒng)是一個(gè)基于嵌入式微處理器的數(shù)字控制系統(tǒng),因此引入的PID 為數(shù)字式 PID,再結(jié)合本系統(tǒng)的特性,最終選取了增量式 PID 算法為本系統(tǒng)的核心控制策略。所謂增量式PID是指數(shù)字控制器的輸出只是控制量的增量4。當(dāng)執(zhí)行機(jī)ku構(gòu)需要的控制量是增量,而不是位置量的絕對(duì)數(shù)值時(shí),可以使用增量式PID控制算法進(jìn)行控制。增量
17、式PID可以表達(dá)為: (3-321212111)21 ()1 ()2(kkkkkkkkkkkkkkkCeBeAeeTTdKpeTTdKpeTTdTiTKpTeeeTdeTiTeeKpuuu)其中 ;)1 (TTdTiTKpA;)21 (TTdKpBTTdKpC 由式 3-3 可以看出,如果計(jì)算機(jī)控制系統(tǒng)采用恒定的采樣周期 T,一旦確定 A、B、C,只要使用前后三次測(cè)量的偏差值,就可以由式求出控制量。增量式 PID 控制算法與位置式 PID 算法相比,計(jì)算量小的多,因此在實(shí)際中得到廣泛的應(yīng)用。而位置式 PID 控制算法也可以通過(guò)增量式控制算法推出遞推計(jì)算公式: (3-4)kkkuuu1式 3-4
18、 就是目前在計(jì)算機(jī)控制中廣泛應(yīng)用的數(shù)字遞推 PID 控制算法。有了控制算法后最主要的就是控制器參數(shù)整定,即決定調(diào)節(jié)器的比例系數(shù)、積分時(shí)間、微分時(shí)間和采樣周期的具體數(shù)值。整定的實(shí)質(zhì)是通過(guò)改變TiTdTs調(diào)節(jié)器的參數(shù),使其特性和過(guò)程特性相匹配,以改善系統(tǒng)的動(dòng)態(tài)和靜態(tài)指標(biāo),取得最佳的控制效果。整定調(diào)節(jié)器參數(shù)的方法很多,歸納起來(lái)可分為兩大類(lèi),即理論計(jì)算整定法和工程整定法。理論計(jì)算整定法有對(duì)數(shù)頻率特性法和根軌跡法等;工程整定法有湊試法、臨界比例法、經(jīng)驗(yàn)法、衰減曲線(xiàn)法和響應(yīng)曲線(xiàn)法等。工程整定法特點(diǎn)不需要事先知道過(guò)程的數(shù)學(xué)模型,直接在過(guò)程控制系統(tǒng)中進(jìn)行現(xiàn)場(chǎng)整定方法簡(jiǎn)單、計(jì)算簡(jiǎn)便、易于掌握。本系統(tǒng)的建模十分復(fù)
19、雜,無(wú)法得出一個(gè)精確的物理模型,所以在本系統(tǒng)的PID 算法參數(shù)選取采用工程整定法。通過(guò)實(shí)驗(yàn)調(diào)試來(lái)不斷的優(yōu)化控制參數(shù),提高單軸雙輪自平衡機(jī)器人的穩(wěn)定度。2.3 簡(jiǎn)易對(duì)稱(chēng)互補(bǔ)濾波簡(jiǎn)易對(duì)稱(chēng)互補(bǔ)濾波為進(jìn)行實(shí)時(shí)控制,單軸雙輪自平衡機(jī)器人系統(tǒng)的主控制器必須對(duì)工作環(huán)境和任務(wù)有足夠的了解,這樣就離不開(kāi)相應(yīng)的傳感器。機(jī)器人姿態(tài)檢測(cè)系統(tǒng)中通常使用的傳感器為慣性傳感器,本系統(tǒng)用到的慣性傳感器有加速度傳感器和陀螺儀,另外還要用到光電碼盤(pán)測(cè)速模塊,他們分別用于檢測(cè)車(chē)身傾斜角、傾斜角速度和車(chē)體實(shí)時(shí)速度。這三種信號(hào)主要反應(yīng)了機(jī)器人的位姿和運(yùn)動(dòng)狀態(tài)。本節(jié)主要討論如何對(duì)來(lái)自慣性傳感器的數(shù)據(jù)進(jìn)行融合處理,以得到最優(yōu)的車(chē)體姿態(tài)信息
20、。2.3.1 加速度傳感器數(shù)據(jù)處理加速度傳感器數(shù)據(jù)處理加速度傳感器可以測(cè)量動(dòng)態(tài)和靜態(tài)的線(xiàn)性加速度,靜態(tài)加速度的一個(gè)典型例子就是重力加速度,用加速度傳感器來(lái)直接測(cè)量物體靜態(tài)重力加速度可以確定傾斜角度。當(dāng)加速度出于靜止?fàn)顟B(tài)時(shí),加速度傳感器的輸出為其三個(gè)敏感軸上的重力加速度分量。 圖 3-2 加速度傳感器加速度分解圖當(dāng)我們選取加速傳感器的 X 敏感軸作為測(cè)量主軸,如圖 所示,則 X 敏感軸上的加速度為: (3-5sinagx)所以,求得車(chē)體傾角: (3-6gaxarcsin)X 軸g加速度計(jì)動(dòng)態(tài)響應(yīng)慢,不適合跟蹤動(dòng)態(tài)角度運(yùn)動(dòng);如果期望快速的響應(yīng),又會(huì)引入較大的噪聲。再加上其測(cè)量范圍的限制,使得單獨(dú)應(yīng)
21、用加速度計(jì)檢測(cè)車(chē)體傾角并不合適,需要與其它傳感器共同使用。2.3.2 陀螺儀數(shù)據(jù)處理陀螺儀數(shù)據(jù)處理單軸雙輪自平衡控制系統(tǒng)除了需要實(shí)時(shí)的傾角信號(hào),還要用到角速度以給出控制量。理論上可以對(duì)加速度計(jì)測(cè)得的傾角求導(dǎo)得到角速度,但實(shí)際上這樣求得的結(jié)果往往偏差很大。陀螺儀具有動(dòng)態(tài)性能好測(cè)量精度高等優(yōu)點(diǎn),但是由于溫度變化、摩擦力和不穩(wěn)定力矩等因素,陀螺儀會(huì)產(chǎn)成漂移誤差。兩輪自平衡機(jī)器人控制系統(tǒng)除了需要實(shí)時(shí)的傾角信號(hào),還要用到角速度以給出控制量。理論上可以對(duì)加速度計(jì)測(cè)得的傾角求導(dǎo)得到角速度,但實(shí)際上這樣求得的結(jié)果遠(yuǎn)遠(yuǎn)低于陀螺儀測(cè)值的精度,陀螺儀具有動(dòng)態(tài)性能好的優(yōu)點(diǎn)。陀螺儀的直接輸出值是相對(duì)靈敏軸的角速率,角速
22、率對(duì)時(shí)間積分即可得到圍繞靈敏軸旋轉(zhuǎn)過(guò)的角度值。由于系統(tǒng)采用微控制器循環(huán)采樣程序獲取陀螺儀角速率信息,即每隔一段很短的時(shí)間采樣一次,所以采用累加的方法實(shí)現(xiàn)積分的功能來(lái)計(jì)算角度值: (3-7)dtgyroangleanglennn1為陀螺儀采樣到第 n 次的角度值;為陀螺儀第 n-1 次采樣時(shí)nangle1nangle的角度值;為陀螺儀的第 n 次采樣得到的瞬時(shí)角速率值;為主循環(huán)程ngyrodt序運(yùn)行一遍所用時(shí)間??梢?jiàn),用陀螺儀輸出值積分計(jì)算角度,要求處理器運(yùn)算速度足夠快,采樣程序應(yīng)盡量簡(jiǎn)練,程序循環(huán)一遍所用時(shí)間越小,采樣頻率dt越高,最后積分得到的角度值才能越精確。陀螺儀是用來(lái)測(cè)量角速度信號(hào)的,
23、通過(guò)對(duì)角速度積分,能得到角度值。但由于溫度變化、摩擦力和不穩(wěn)定力矩等因素,陀螺儀會(huì)產(chǎn)成漂移誤差。而無(wú)論多么小的常值漂移通過(guò)積分都會(huì)得到無(wú)限大的角度誤差。因而,也不能單獨(dú)使用陀螺儀作為本機(jī)器人傾角傳感器。綜上所述,對(duì)于姿態(tài)檢測(cè)系統(tǒng)而言,單獨(dú)使用陀螺儀或者加速度計(jì),都不能提供有效而可靠的信息來(lái)保證車(chē)體的平衡。陀螺儀雖然動(dòng)態(tài)性能良好,能夠提供瞬間的動(dòng)態(tài)角度變化,不受加速度變化的影響,但是由于其本身固有的特性、溫度及積分過(guò)程的影響,存在累積漂移誤差,不適合長(zhǎng)時(shí)間單獨(dú)工作;加速度計(jì)靜態(tài)響應(yīng)好,能夠準(zhǔn)確提供靜態(tài)的角度,但受動(dòng)態(tài)加速度影響較大,不適合跟蹤動(dòng)態(tài)角度運(yùn)動(dòng)。為了克服這些困難,采用一種簡(jiǎn)易互補(bǔ)濾波方
24、法來(lái)融合陀螺儀和加速度計(jì)的輸出信號(hào),補(bǔ)償陀螺儀的漂移誤差和加速度計(jì)的動(dòng)態(tài)誤差,得到一個(gè)更優(yōu)的傾角近似值。2.3.3 傳感器數(shù)據(jù)融合傳感器數(shù)據(jù)融合經(jīng)過(guò)融合的多傳感器系統(tǒng)能完善地、精確地反映檢測(cè)對(duì)象特性,消除信息的不確定性,提高傳感器的可靠性5。針對(duì)于陀螺儀數(shù)據(jù)噪聲小,短時(shí)間內(nèi)誤差小,溫度漂移大,積分積累誤差較大的特性,加速度傳感器對(duì)震動(dòng)敏感,無(wú)積累誤差,長(zhǎng)時(shí)間穩(wěn)定的特性。加速度傳感器需要采用濾波算法濾除短時(shí)性快速變化的信號(hào),保留長(zhǎng)時(shí)性緩慢變化的信號(hào),所以對(duì)加速度計(jì)應(yīng)用低通濾波算法。對(duì)于陀螺儀,情況正好相反,應(yīng)用高通濾波方法處理陀螺儀數(shù)據(jù),來(lái)抑制陀螺儀積分的漂移。針對(duì)加速度計(jì)和陀螺儀的姿態(tài)檢測(cè)系統(tǒng)
25、濾波器結(jié)構(gòu)如圖 3-3所示 圖 3-3 簡(jiǎn)易互補(bǔ)濾波器設(shè)計(jì)框圖簡(jiǎn)易互補(bǔ)濾波器可表示為: (3-8)acceaccenngyronadtgyroangleaangle1式中為陀螺儀的高通濾波系數(shù),為加速度計(jì)的低通濾dtgyroadtdtaacce波系數(shù)。 為濾波器的時(shí)間常數(shù)。對(duì)于低通濾波而言,變化周期大于時(shí)間常數(shù)的信號(hào)可以完整的通過(guò);變化周期小于時(shí)間常數(shù)的信號(hào)被過(guò)濾掉;高通濾波剛陀螺儀加速度傳感器積分器低通濾波器高通濾波器數(shù)據(jù)融合角速度角度值好相反。 這個(gè)時(shí)間常數(shù),是更相信陀螺儀還是更相信加速度計(jì)的一個(gè)界限值。變化周期比 短的,陀螺儀積分的角度更讓人相信,而加速度計(jì)噪聲被過(guò)濾掉;變化周期比 長(zhǎng)的
26、,加速度計(jì)測(cè)定的角度值比陀螺儀更重要,因?yàn)榇藭r(shí)陀螺儀會(huì)發(fā)生漂移了。針對(duì)陀螺儀的高通濾波和針對(duì)加速度計(jì)的低通濾波兩部分恰好可組成一個(gè)互補(bǔ)濾波器??梢钥吹?,兩個(gè)濾波系數(shù)相加結(jié)果為 1,所以濾波結(jié)果是一個(gè)比較精確的、線(xiàn)性的角度估計(jì)值。濾波器設(shè)計(jì)完成后,時(shí)間常數(shù) 的選取是十分重要的,通過(guò)對(duì)陀螺儀和加速度傳感器的輸出特性的分析,結(jié)合實(shí)驗(yàn)法選取一個(gè)合適的 值就完成了濾波器的設(shè)計(jì)。3.系統(tǒng)設(shè)計(jì)系統(tǒng)設(shè)計(jì)根據(jù)以上對(duì)單輪自平衡機(jī)器人運(yùn)動(dòng)學(xué)特性的分析,提出三種可行性較大的實(shí)現(xiàn)方案:方案一:使用一個(gè)型號(hào)為 STC12C5A60S2 的單片機(jī)和兩個(gè)型號(hào)為 E18-D30NK的紅外傳感器實(shí)現(xiàn)的簡(jiǎn)易單軸雙輪自平衡機(jī)器人。
27、圖 3-1 基于紅外傳感器的雙輪自平衡機(jī)器人E18-D30NK 紅外傳感器是一種開(kāi)關(guān)式的紅外傳感器,它由一個(gè)紅外的發(fā)射電路發(fā)射調(diào)制的紅外光,經(jīng)地面反射后進(jìn)入接收光敏傳感器電路,利用發(fā)射光的強(qiáng)度來(lái)測(cè)傳感器和地面之間的距離。它測(cè)距的方式是一種比較式的測(cè)距方式,即開(kāi)始通過(guò)調(diào)節(jié)電位器來(lái)為傳感器設(shè)定一個(gè)閾值,當(dāng)傳感器與地面之間的距離大于閾值時(shí)傳感器輸出高電平,當(dāng)傳感器與地面之間的距離小于閾值時(shí)傳感器輸出低電平。如圖 4-1 所示,將兩個(gè) E18-D30NK 紅外傳感器裝在車(chē)的兩臂上,當(dāng)車(chē)體向左傾斜的時(shí)候 H1小于閾值,紅外傳感器 A 將輸出低電平,當(dāng)主控單片機(jī) STC12C5A60S2 檢測(cè)到此低電平的
28、時(shí)候會(huì)通過(guò)電機(jī)驅(qū)動(dòng)電路驅(qū)動(dòng)電機(jī)使車(chē)體向左運(yùn)動(dòng),以維持平衡。車(chē)體向右傾斜時(shí)有類(lèi)似的控制過(guò)程。方案一的優(yōu)點(diǎn):結(jié)構(gòu)簡(jiǎn)單,成本低,控制算法也相對(duì)簡(jiǎn)單,而且可以反應(yīng)單軸H1H2紅外傳感器A紅外傳感器B雙輪自平衡的動(dòng)力學(xué)過(guò)程。方案一的缺點(diǎn):紅外傳感器 E18-D30NK 為反射式的紅外傳感器,測(cè)量的結(jié)果受地面的顏色、平整度等各種因素的影響。紅外傳感器 E18-D30NK 為二值化得信號(hào)輸出,導(dǎo)致在對(duì)電機(jī)的控制時(shí)無(wú)法引入 PID 控制技術(shù)。方案二:使用 STC12C5A60S2 單片機(jī)和兩個(gè)超聲波測(cè)距模塊實(shí)現(xiàn)的單軸雙輪自平衡機(jī)器人。圖 3-2 基于超聲波傳感器的單軸雙輪自平衡機(jī)器人超聲波傳感器由超聲波的發(fā)射
29、頭和發(fā)射電路以及接收頭和接受電路構(gòu)成,超聲波傳感器的測(cè)距原理是聲波在均勻的介質(zhì)中的傳播速度是一個(gè)常數(shù)(在V25時(shí)為 340m/s),只要知道了聲波從發(fā)出到接收到回波的時(shí)間就可以用 (4-1)2tVS求的距離。利用 STC12C5A60S2 單片機(jī)對(duì)超聲波傳感器發(fā)出超聲波到接收到S回波的時(shí)間進(jìn)行計(jì)時(shí),就可以得到圖 4-2 中的和的值,從而就可以推算1H2H出車(chē)體的傾角 (4-2LHH12sinarc)H1H2超聲波傳感器A超聲波傳感器BL這個(gè)計(jì)算的過(guò)程可以由 STC12C5A60S2 單片機(jī)完成,在求得傾角后單片機(jī)可以根據(jù)傾角的大小按編程時(shí)指定的 PID 算法再結(jié)合 PWM 技術(shù)使電機(jī)產(chǎn)生不同速
30、度的轉(zhuǎn)動(dòng),來(lái)維持車(chē)體的平衡。方案二的優(yōu)點(diǎn):超聲的波長(zhǎng)很大,在經(jīng)過(guò)地面反射的時(shí)候?qū)Φ孛娴念伾推秸纫蟛桓撸床捎眠@種方案能適應(yīng)更一般性的場(chǎng)合;通過(guò)連續(xù)測(cè)量到地面的距離,可以比較精確的得到車(chē)體的傾角,從而在控制電機(jī)的轉(zhuǎn)動(dòng)時(shí)可以引入PID 算法,使車(chē)體平衡的調(diào)整變得更精確。方案二的缺點(diǎn):超聲波在空氣中的傳播容易受到擾動(dòng),因?yàn)楸鞠到y(tǒng)是一個(gè)運(yùn)動(dòng)的系統(tǒng),所以受到擾動(dòng)的概率更大。在傾斜的路面上,比如上坡,這種方案就顯得心有余而力不足了。方案三:使用 STM32 微處理器和陀螺儀以及加速度傳感器實(shí)現(xiàn)的單軸雙輪自平衡機(jī)器人。圖 3-3 基于陀螺儀和加速度傳感器的雙輪自平衡機(jī)器人ENC-03 陀螺儀是一種應(yīng)用
31、科氏力原理的角速度傳感器,它輸出一個(gè)和角速度成正比的模擬電壓信號(hào),通過(guò)對(duì)角速度的積分可以得到角位移,即角度值。MMA7361QR 3 軸小量程加速傳感器是檢測(cè)物件運(yùn)動(dòng)和方向的傳感器,它根據(jù)物件運(yùn)動(dòng)和方向改變輸出信號(hào)的電壓值,通過(guò) AD 變換就可以直接得到角度值。陀螺儀數(shù)據(jù)噪聲小,短時(shí)間內(nèi)誤差小,溫度漂移大,積分積累誤差較大;加速陀螺儀和加速度傳感器度傳感器對(duì)震動(dòng)敏感,無(wú)積累誤差,長(zhǎng)時(shí)間穩(wěn)定。鑒于陀螺儀和加速度傳感器的對(duì)稱(chēng)互補(bǔ)特性,本方案中用陀螺儀 ENC-03 和 3 軸小量程加速傳感器MMA7361QR 進(jìn)行傳感器數(shù)據(jù)融合得到車(chē)體傾角,這種方法獲得的角度值很精確,并且可以最大程度的降低車(chē)體抖
32、動(dòng)對(duì)車(chē)體傾角檢測(cè)的影響。為了方便對(duì)參數(shù)的調(diào)整,本方案中的互補(bǔ)對(duì)稱(chēng)濾波使用軟件實(shí)現(xiàn),因此需要一個(gè)高性能的微處理器做為核心處理器。出于性?xún)r(jià)比的考慮最終選擇了意法半導(dǎo)體的 STM32 微處理器做為核心處理器。陀螺儀和加速度傳感器分別得到車(chē)體傾角值,經(jīng) STM32 的處理后得到數(shù)據(jù)融合后的精確車(chē)體傾角值,STM32 根據(jù)此角度值通過(guò) PID 算法和 PWM 技術(shù)來(lái)精確的控制電機(jī)轉(zhuǎn)動(dòng),使車(chē)體保持平衡。方案三的優(yōu)點(diǎn):車(chē)體的傾角的獲取不依賴(lài)于單軸雙輪自平衡小車(chē)所處的環(huán)境,具有普遍的適用性。采用了多傳感器的數(shù)據(jù)融合技術(shù),減小了單一傳感器的固有缺陷對(duì)測(cè)量精度的影響,提高了測(cè)量精度。方案三的缺點(diǎn):使用多組傳感器和
33、高性能的控制器,成本上有所增加。通過(guò)對(duì)以上三種方案的理論分析和實(shí)驗(yàn)對(duì)比,最終確定使用方案 3 來(lái)實(shí)現(xiàn)單軸雙輪自平衡機(jī)器人。3.硬件設(shè)計(jì)方案硬件設(shè)計(jì)方案論證論證如圖 3-4 所示,采用模塊化的設(shè)計(jì)思想,將系統(tǒng)分為,電源模塊,主控制器模塊,角度與加速度傳感器模塊,電機(jī)驅(qū)動(dòng)模塊,電機(jī)測(cè)速模塊,人機(jī)交互模塊。人機(jī)交互模塊完成各種用戶(hù)參數(shù)的輸入和自平衡機(jī)器人的當(dāng)前狀態(tài)參數(shù)的顯示,其主要由一塊液晶屏和一片 STC12C5A60S2 單片機(jī)組成,人機(jī)交互模塊獲得的用戶(hù)輸入?yún)?shù)由 STC12C5A60S2 通過(guò)串口傳送給主控制器 STM32,人機(jī)交互模塊要顯示的信息由 STM32 通過(guò)串口傳送給 STC12C
34、5A60S2;陀螺儀得到的角速度模擬量由 STM32 自帶的 12 位高精度,高采樣率的 AD 轉(zhuǎn)換器將其轉(zhuǎn)化為數(shù)字信號(hào),加速度傳感器輸出的角度值由 STM32 通過(guò) IIC 總線(xiàn)讀取,在此之后 STM32 對(duì)這兩路傳感器的數(shù)據(jù)進(jìn)行對(duì)稱(chēng)互補(bǔ)濾波融合,得到準(zhǔn)確的車(chē)體傾角,根據(jù)這個(gè)傾角值以及光電碼盤(pán)測(cè)速模塊返回電機(jī)轉(zhuǎn)速參數(shù),STM32 按照PID 算法得電機(jī)轉(zhuǎn)動(dòng)的速度和角度,再通過(guò)串口給電機(jī)驅(qū)動(dòng)模塊發(fā)送相應(yīng)的命令,使其轉(zhuǎn)動(dòng)來(lái)維持單軸雙輪自平衡系統(tǒng)的穩(wěn)定。電機(jī)驅(qū)動(dòng)模塊中運(yùn)用了PWM 技術(shù)對(duì)電機(jī)的速度進(jìn)行控制。同時(shí)光電碼盤(pán)測(cè)速模塊對(duì)電機(jī)的轉(zhuǎn)速進(jìn)行測(cè)量,并反饋到系統(tǒng)中,輔助系統(tǒng)完成 PID 控制算法。圖
35、 3-4 單軸雙輪自平衡機(jī)器人的原理框圖3.1 電源設(shè)計(jì)電源設(shè)計(jì)本系統(tǒng)是一個(gè)移動(dòng)的系統(tǒng),又有電機(jī)等大功率器件,因此采用四塊 6V 10Ah 的鉛酸電池做為系統(tǒng)的電源,接法為兩串兩并,形成一個(gè) 12V 20Ah 的直流電源。由于系統(tǒng)中存在著多種微控制器,需要 5V 和 3.3V 的電壓源。這兩個(gè)電壓源用 12V 直流電源通過(guò)穩(wěn)壓模塊獲得。目前比比較常用的電源穩(wěn)壓芯片從工作原理上分為兩種,一種為線(xiàn)性穩(wěn)壓,另一種為開(kāi)關(guān)穩(wěn)壓。如圖 5-1、圖 5-2 所示是兩種典型的穩(wěn)壓電路。 圖-2576 開(kāi)關(guān)穩(wěn)壓芯片應(yīng)用電路圖 4-2 7805 線(xiàn)性穩(wěn)壓芯片應(yīng)用電路從電路中很明顯可以看出他們之間的差別,開(kāi)關(guān)電源穩(wěn)
36、壓芯片的外圍電路器件相對(duì)較多,比較復(fù)雜;而線(xiàn)性穩(wěn)壓電源的外圍電路相對(duì)簡(jiǎn)單,更節(jié)省 PCB板空間。開(kāi)關(guān)穩(wěn)壓芯片的輸出紋波系數(shù)一般比較大,而線(xiàn)性穩(wěn)壓芯片的輸出紋波系數(shù)一般比較小。但是線(xiàn)性穩(wěn)壓芯片的轉(zhuǎn)換效率很低,特別是當(dāng)需要降低的電壓范圍比較大的時(shí)候,往往低于 50%;而開(kāi)關(guān)穩(wěn)壓芯片的轉(zhuǎn)換效率通常可以達(dá)到 95%。轉(zhuǎn)換效率低還帶來(lái)了一個(gè)問(wèn)題就是穩(wěn)壓芯片自身會(huì)發(fā)熱,使其穩(wěn)壓性能迅速惡化。以上分析并不能說(shuō)明開(kāi)關(guān)穩(wěn)壓芯片就一定好,要根據(jù)具體的應(yīng)用場(chǎng)合合理的選取。在本系統(tǒng)中 5V 的電壓源負(fù)載比較重,對(duì)電壓紋波也不是很敏感,所以 12V 到 5V 的穩(wěn)壓模塊采用開(kāi)關(guān)電源穩(wěn)壓芯片,電路如圖 4-1 所示。3.
37、3V 電壓源的負(fù)載很輕,主要給加速度傳感器供電,對(duì)電壓紋波敏感,所以選用線(xiàn)性穩(wěn)壓芯片 ASM1117,電路如圖 5-3 所示。 圖 5-3 系統(tǒng)中 3.3V 電源穩(wěn)壓電路3.1.2 主控模塊設(shè)計(jì)主控模塊設(shè)計(jì)主控模塊采用意法半導(dǎo)體的 STM32F103ZET6 芯片搭建的一個(gè)硬件平臺(tái)。STM32F103ZET6 是一款 ARM 32 位的 Cortex-M3 內(nèi)核的微處理器,512K 字節(jié)的閃存程序存儲(chǔ)器,高達(dá) 64K 字節(jié)的 SRAM,最高時(shí)鐘頻率為 72MHz,三個(gè)12 為模數(shù)轉(zhuǎn)換器,多達(dá) 21 通道,支持 12 通道的 DMA ,多達(dá) 13 個(gè)通信接口其中有 5 個(gè) USART,多達(dá) 11
38、2 各通用 IO 口。由于本系統(tǒng)涉及到了一些數(shù)字信號(hào)處理,使用專(zhuān)用的 DSP 芯片成本會(huì)很高,而且開(kāi)發(fā)難度也很大。所以采用了一種折中的芯片選型方案,選擇了一款高性?xún)r(jià)比的嵌入式微處理器做主控板。從 STM32F103ZET6 的指令的吞吐量和存儲(chǔ)空間上看,此款芯片很適合做為本系統(tǒng)的主控芯片。通其豐富的外部設(shè)備,如ADC 為陀螺儀的輸出模擬信號(hào)的 AD 轉(zhuǎn)換提供了方便,5 個(gè) USART 為各模塊和主控電路之間的通信提供了方便的接口6。圖 5-5 STM32 主控板原理圖(部分)圖 5-6 為 STM32F103ZET6 的時(shí)鐘電路,OS1 為高速時(shí)鐘,為STM32F103ZET6 內(nèi)核和外部設(shè)備
39、提供工作時(shí)鐘。OS2 為一個(gè)低頻晶振,為STM32F103ZET6 提供實(shí)時(shí)時(shí)鐘。圖 5-7 為 STM32F103ZET6 的復(fù)位電路,采用積分型復(fù)位電路,復(fù)位為低電平有效,此電路具有上電復(fù)位和按鍵復(fù)位的功能8。 圖 5-6 STM32 主控板時(shí)鐘電路 圖 5-7 STM32 復(fù)位電路 圖 5-8 STM32 JTAG 仿真接口電路圖 5-8 為 STM32 的 JTAG 仿真接口電路,在一個(gè)復(fù)雜系統(tǒng)中,軟件調(diào)試往往很花費(fèi)時(shí)間,如果系統(tǒng)上留有 JTAG 接口,可以通過(guò) JTAG 對(duì)系統(tǒng)進(jìn)行在線(xiàn)調(diào)試,可以讓程序單步執(zhí)行,從而可以查看程序的運(yùn)行路徑,很容易定位軟件中的邏輯錯(cuò)誤,提高開(kāi)發(fā)效率。3.
40、1.3 電機(jī)驅(qū)動(dòng)模塊電機(jī)驅(qū)動(dòng)模塊通過(guò)近一段時(shí)間的研究,直流有刷電機(jī)的正反轉(zhuǎn)驅(qū)動(dòng)電路常用的有以下四種9,下面就對(duì)他們的特性進(jìn)行分析。方案一:繼電器搭建的 H 橋電路; 圖 5-9 繼電器 H 橋電路在大功率電機(jī)驅(qū)動(dòng)中繼電器實(shí)現(xiàn)的 H 橋電路是一種性?xún)r(jià)比很高的設(shè)計(jì)方案,它能承受的電流很大,同時(shí)能實(shí)現(xiàn)編程控制電機(jī)的正反轉(zhuǎn)。但是繼電器動(dòng)作過(guò)程中有機(jī)械運(yùn)動(dòng),所以其能達(dá)到的響應(yīng)速度不高,繼電器的典型響應(yīng)時(shí)間為2ms,不適合高速的應(yīng)用場(chǎng)合。同時(shí)繼電器的觸點(diǎn)容易產(chǎn)生火花,影響繼電器的壽命。方案二:L298 搭建的直流電機(jī)驅(qū)動(dòng)電路L298N 是 SGS 公司的產(chǎn)品,內(nèi)部包含 4 通道邏輯驅(qū)動(dòng)電路。是一種二相和四
41、相電機(jī)的專(zhuān)用驅(qū)動(dòng)器,內(nèi)含二個(gè) H 橋的高電壓大電流雙全橋式驅(qū)動(dòng)器,接收標(biāo)準(zhǔn) TTL 邏輯電平信號(hào),可驅(qū)動(dòng) 46V、2A 以下的電機(jī)。用 L298 搭建的電機(jī)驅(qū)動(dòng)電路的穩(wěn)定性很好,但是其能承受的電流比較小。 圖 5-10 L298 直流電機(jī)驅(qū)動(dòng)電路方案三:大功率 MOS 管搭建的 H 橋電路 圖 5-11 大功率 MOS 管 H 橋電路這個(gè)電路是在研究單軸雙輪自平衡小車(chē)的時(shí)候自行設(shè)計(jì)的電機(jī)驅(qū)動(dòng)電路,兩個(gè) PMOS 和兩個(gè) NMOS 管搭建了一個(gè) H 橋,為了防止 PMOS 和 NMOS 同時(shí)導(dǎo)通形成短路現(xiàn)象,利用 LM324 形成互鎖的驅(qū)動(dòng)機(jī)制,使沒(méi)一邊的 PMOS 和NMOS 始終只有一個(gè)處于
42、導(dǎo)通狀態(tài)。但是在測(cè)試的時(shí)候發(fā)現(xiàn) MOS 管還是發(fā)燙,經(jīng)過(guò)仔細(xì)分析發(fā)現(xiàn),原因是 LM324 的輸出端得電平變化沿不是陡峭,既兩個(gè)MOS 管存在同時(shí)導(dǎo)通的現(xiàn)象,雖然這個(gè)過(guò)程十分的短暫,但是短路電流很大,所以 MOS 管發(fā)燙。改進(jìn)辦法是在 NMOS 管和地之間插入一個(gè) NMOS 管。在LM324 電平轉(zhuǎn)變的時(shí)候先是插入的 NMOS 管截至。這樣就防止了短路發(fā)生,MOS 也不發(fā)燙了。方案四: 基于 BTS7960 的 H 橋驅(qū)動(dòng)電路 圖 5-12BTS7960 H 橋驅(qū)動(dòng)電路智能功率芯片 BTS7960 是應(yīng)用于電機(jī)驅(qū)動(dòng)的大電流半橋高集成芯片,它帶有一個(gè) P 溝道的高邊 MOSFET、一個(gè) N 溝道的
43、低邊 MOSFET 和一個(gè)驅(qū)動(dòng) IC,集成的驅(qū)動(dòng) IC 具有邏輯電平輸入、電流診斷、斜率調(diào)節(jié)、死區(qū)時(shí)間產(chǎn)生和過(guò)溫、過(guò)壓、欠壓、過(guò)流及短路保護(hù)的功能。BTS7960 通態(tài)電阻典型值為 16m,驅(qū)動(dòng)電流可達(dá) 43A。上圖是由四個(gè) BTS7960 搭建的一個(gè)雙電機(jī)驅(qū)動(dòng)電路,可同時(shí)驅(qū)動(dòng)兩個(gè)直流有刷電機(jī)。通過(guò)對(duì)上面四個(gè)電路特性分析和對(duì)比后發(fā)現(xiàn),繼電器 H 橋電路的響應(yīng)速度太慢無(wú)法滿(mǎn)足本系統(tǒng)的實(shí)時(shí)性要求;L298 電機(jī)驅(qū)動(dòng)電路其電流驅(qū)動(dòng)那能力太差,無(wú)法滿(mǎn)足本系統(tǒng)功率要求;大功率 MOS 管 H 橋電路,性能很不錯(cuò),但是體積過(guò)大,不利于潛入到本系統(tǒng)中;本系統(tǒng)選取了性能穩(wěn)定的基于 BTS7960 的 H 橋驅(qū)
44、動(dòng)電路作為電機(jī)的驅(qū)動(dòng)電路。BTS7960 的 H 橋驅(qū)動(dòng)電路采用了模塊化設(shè)計(jì),將 STC12C5A60S2 單片機(jī)集成到驅(qū)動(dòng)板上,四個(gè) BTS7960 芯片直接受 STC12C5A60S2 的控制,STC12C5A60S2E 通過(guò)串口從 STM32 主控板接收到電機(jī)控制命令后,產(chǎn)生相應(yīng)的電機(jī)驅(qū)動(dòng)電路控制時(shí)序。電機(jī)調(diào)速采用脈沖寬度調(diào)制(PWM)方式實(shí)現(xiàn),PWM 是利用微處理器的數(shù)字輸出來(lái)對(duì)模擬電路進(jìn)行控制的一種非常有效的技術(shù),廣泛應(yīng)用在從測(cè)量、通信到功率控制與變換的許多領(lǐng)域中。本系統(tǒng)中,PWM 主要用于電機(jī)調(diào)速,屬于 PWM 在功率控制中的應(yīng)用。STC12C5A60S2 單片機(jī)含有兩路硬件 PW
45、M 發(fā)生器,可以產(chǎn)生最高頻率為 150KHz 的 PWM 調(diào)制輸出。STC12C5A60S2 的PWM 輸出引腳為 P1.3 和 P1.4,將這兩引腳連接到 BTS7960 芯片的 INH 引腳上,只需在軟件中設(shè)置比較寄存器 CCAP0H、CCAP0L 進(jìn)行設(shè)置就可以完成PWM 調(diào)制。3.1.4 碼盤(pán)測(cè)速模塊碼盤(pán)測(cè)速模塊為了精確地控制電機(jī)的轉(zhuǎn)動(dòng),為 PID 控制算法提供反饋信號(hào),必須對(duì)電機(jī)的轉(zhuǎn)速進(jìn)行測(cè)量。常用的非接觸轉(zhuǎn)速的測(cè)量方法有兩種,一種是利用霍爾傳感器,另一種方案是利用光電碼盤(pán)10。霍爾傳感器感應(yīng)的是磁場(chǎng)強(qiáng)度的變化,需要和磁鋼配合使用才能完成對(duì)轉(zhuǎn)速的測(cè)量;它的優(yōu)點(diǎn)是能工作于灰塵多等惡劣的
46、環(huán)境中,它的不足之處是做高精度的測(cè)量時(shí),需要大量的磁鋼,安裝麻煩。光電碼盤(pán)利用反射式紅外傳感器進(jìn)行測(cè)量,碼盤(pán)的制作和傳感器安裝都比較容易,但是涉及到了光電器件,在多灰塵等惡劣環(huán)境中無(wú)法正常工作??紤]到本系統(tǒng)是用于實(shí)驗(yàn)室環(huán)境,所以選取光電碼盤(pán)方式對(duì)電機(jī)的轉(zhuǎn)速進(jìn)行測(cè)量。 圖 4-13 光電測(cè)速碼盤(pán)根據(jù)控制精度的要求,采用 60 線(xiàn)的碼盤(pán)作為測(cè)速碼盤(pán),如圖 5-13 所示,碼盤(pán)的基板采用 ABS 板制作,作用黑色記號(hào)筆畫(huà)上線(xiàn)條。圖 5-14 為光電碼盤(pán)測(cè)速模塊的電路原理圖,反射式紅外傳感器 ST188 的發(fā)射管發(fā)射出紅外光進(jìn)過(guò)碼盤(pán)的反射后進(jìn)入 ST188 的紅外接收管,接收管按上圖中的接法偏置后,在
47、接收到紅外光信號(hào)時(shí) ST188 的 C 管腳上的電壓將會(huì)降低,當(dāng)沒(méi)有接收到紅外光信號(hào)時(shí),ST188 的 C 管腳呈現(xiàn)高電平。一般的情況下按圖 5-14 中電路配置,ST188 的 C 管腳輸出的低電平可以直接觸發(fā)單片機(jī)的中斷,但是為了增加系統(tǒng)的穩(wěn)定性,在紅外傳感 ST188 和 STC11F04E 之間加入了一個(gè)電壓比較器LM324 對(duì) ST188 的 C 管腳輸出的信號(hào)進(jìn)行二值化,得到一個(gè)脈沖序列。當(dāng)碼盤(pán)轉(zhuǎn)動(dòng)的時(shí)候就可以形成如圖 5-15 所示的脈沖序列,用單片機(jī)對(duì)脈沖序列進(jìn)行計(jì)數(shù),將該數(shù)值除以對(duì)應(yīng)的時(shí)間就可以求的電機(jī)的轉(zhuǎn)動(dòng)速度。單片機(jī)完成每次的速度檢測(cè)后通過(guò)串口把速度數(shù)據(jù)發(fā)送給主控微處理器
48、。圖 4-1 光電碼盤(pán)測(cè)速模塊電路圖 圖 4-15 二值化紅外傳感器測(cè)速信號(hào)3.1.5 傾角檢測(cè)模塊傾角檢測(cè)模塊MEMS 傳感器是采用微電子和微機(jī)械加工技術(shù)制造出來(lái)的新型傳感器。與傳統(tǒng)的傳感器相比,它具有體積小、重量輕、成本低、功耗低、可靠性高、適于批量化生產(chǎn)、易于集成和實(shí)現(xiàn)智能化的特點(diǎn)7。本系統(tǒng)中采用了 MEMS 類(lèi)型的加速傳感器和陀螺儀兩個(gè)傳感器構(gòu)成,以下是對(duì)它們的詳細(xì)介紹:1.加速度傳感器加速度傳感器Freescale 公司的 MMA8451Q 是 14 位/8 位智能低功耗三軸數(shù)字加速度計(jì),工作電壓 1.95V-3.6V,接口電壓 1.6V-3.6V,動(dòng)態(tài)可選擇滿(mǎn)刻度為2g/4g/8g
49、,輸出數(shù)據(jù)速率(ODR)從 1.56 Hz 到 800 Hz, 噪音為 99 ug/Hz,14 位和 8 位數(shù)字輸出, MMA8451 使用 I2C 串行通信和外部交換數(shù)據(jù), 由于 MMA7260 加速度傳感器可準(zhǔn)確測(cè)量三軸向下降、傾斜、移動(dòng)、定位、撞擊和震動(dòng),因此主要用在電子羅盤(pán),靜態(tài)姿態(tài)、運(yùn)動(dòng)檢測(cè),筆記本電子書(shū)等便攜設(shè)備的翻滾、自由落體檢測(cè),實(shí)時(shí)的方向檢測(cè)可用于虛擬現(xiàn)實(shí)設(shè)備或 3d 游戲中的位置檢測(cè),便攜設(shè)備的節(jié)能應(yīng)用中的運(yùn)動(dòng)檢測(cè)等等。表 5-1 引腳定義如下:引腳編號(hào)引腳名稱(chēng)引腳描述引腳狀態(tài)1VDDIO內(nèi)部電源供電(1.623.6v)輸入2BYP旁路電容輸入3NC懸空引腳開(kāi)路4SCLI2
50、C 串行時(shí)鐘漏極開(kāi)路5GND接地輸入6SDAI2C 串行數(shù)據(jù)漏極開(kāi)路7SA0I2C 最低有效位地址輸入8NC懸空引腳開(kāi)路9INT2中斷請(qǐng)求引腳 2輸出10GND接地輸入11INT1中斷請(qǐng)求引腳 1輸出12GND接地輸入13NC懸空引腳開(kāi)路14VDD電源(1.953.6v)輸入15NC懸空引腳開(kāi)路16NC懸空引腳開(kāi)路MMA8451Q 有四種可選加速度范圍,分別對(duì)應(yīng)不同的靈敏度,以適應(yīng)不同的應(yīng)用環(huán)境和系統(tǒng)要求,配置參數(shù)表 5-2 所示。設(shè)置方法通過(guò) IIC 總線(xiàn)接口想XYZ 數(shù)據(jù)設(shè)置寄存器 XYZ_DATA_CFG 寫(xiě)入相應(yīng)的值。MMA8451Q 的寫(xiě)操作器件地址為 0011100,讀操作器件地址
51、為 0011101。FS1FS0量程002g014g108g11保留表 5-2 MMA8451Q 模式配置參數(shù):2.陀螺儀陀螺儀ENC03RC,是日本村田公司(murata)開(kāi)發(fā)生產(chǎn)的一款以陶瓷材料為主要原料的角速度傳感器,又名陀螺儀,該產(chǎn)品是一種應(yīng)用科氏力原理的角速度傳感器,它輸出一個(gè)和角速度成正比的模擬電壓信號(hào)。芯片特性:1)供電電壓:2.75.25V2)最大角速度 deg./sec.+/-3003)輸出(當(dāng)角速度=0): 1.35 V4)比例系數(shù):0.67 mV/deg./sec5)線(xiàn)性度:+/-5%FS6)響應(yīng)頻率:50 Hz 7)重量:0.4g如圖 5-17 所示,左側(cè)的三個(gè)為 EN
52、C03RC,其輸出的角速度信號(hào)經(jīng)過(guò)濾波和放大后被引到了模塊的輸出引腳上,由主控模塊對(duì)此信號(hào)進(jìn)行 AD 轉(zhuǎn)換,得到數(shù)字化的加速度值,對(duì)角速度積分就可以求取角度。右側(cè)的為電源穩(wěn)壓電路和 AMM4851Q 加速度傳感器。AMM4851Q 加速度傳感器是數(shù)字接口器件,可以通過(guò) IIC 總線(xiàn)協(xié)議設(shè)置 AMM4851Q 的工作模式和讀取角度值。 圖 5-17 加速度傳感器和陀螺儀構(gòu)成的傾角檢測(cè)模塊電路原理圖 3.1.6 人機(jī)交互模塊人機(jī)交互模塊圖 5-18 人機(jī)交互模塊原理圖如圖 5-18 所示,人機(jī)交互模塊由 STC12C5A60S2 單片機(jī)、Nokia 5110 液晶、矩陣鍵盤(pán)構(gòu)成。Nokia 511
53、0 液晶用于顯示系統(tǒng)當(dāng)前的狀態(tài),如當(dāng)前時(shí)間、速度、傾角、電量等信息;矩陣鍵盤(pán)用于時(shí)間等用戶(hù)初始化信息的調(diào)整。用戶(hù)輸入信息先有單片機(jī)緩存,在用戶(hù)確定之后通過(guò)串口發(fā)送給主控模塊 STM32;液晶屏顯示的數(shù)據(jù)是 STM32 通過(guò)串口發(fā)送給單片機(jī)的。單片機(jī)完成了液晶屏的驅(qū)動(dòng)14、矩陣鍵盤(pán)的掃描,這樣不會(huì)消耗主處理器的資源,減輕了主控制器的程序設(shè)計(jì)難度。 3.1.7 通信模塊通信模塊本系統(tǒng)采用了模塊化設(shè)計(jì)方案,將整個(gè)單軸雙輪自平衡小車(chē)自頂向下的劃分為主控器 STM32 模塊,人機(jī)交互模塊,陀螺儀模塊、加速度傳感器模塊、電機(jī)驅(qū)動(dòng)模塊、光電碼盤(pán)測(cè)速模塊。主控模塊采用了 STM32 微處理器,其他的模塊都采用
54、宏晶公司的 51 內(nèi)核的單片機(jī)實(shí)現(xiàn)。在設(shè)計(jì)通信協(xié)議的時(shí)候?yàn)榱朔奖闫鹨?jiàn),加速度傳感器和 STM32 主控板之間的通信采用了 IIC 通信協(xié)議??紤]到本系統(tǒng)使用的宏晶公司的 51 內(nèi)核單片機(jī)基本上都有硬件串口,而且 STM32 有 5 個(gè)USART 所以人機(jī)交互模塊、電機(jī)驅(qū)動(dòng)模塊、光電碼盤(pán)測(cè)速模塊與 STM32 主控模塊之間的數(shù)據(jù)交換全部采用串口通信方式進(jìn)行,波特率設(shè)置為 9600,數(shù)據(jù)位為 8 位,無(wú)奇偶校驗(yàn)。3.2 軟件設(shè)計(jì)方案軟件設(shè)計(jì)方案軟件部分也采用模塊化設(shè)計(jì)方法,先在各個(gè)硬件模塊上完成相應(yīng)功能的程序模塊的設(shè)計(jì),之后再添加通信模塊,并將各子模塊掛在 STM32 上進(jìn)行聯(lián)調(diào)。人機(jī)交互模塊,光
55、電碼盤(pán)測(cè)速模塊,電機(jī)驅(qū)動(dòng)模塊所使用的微控制器都是STC12C5A60S2 單片機(jī),主要就是驅(qū)動(dòng)一些常用的外部設(shè)備,所以編程相對(duì)來(lái)說(shuō)比較容易。而 STM32 要進(jìn)行互補(bǔ)對(duì)稱(chēng)濾波數(shù)據(jù)融合以及 PID 控制算法的實(shí)現(xiàn),編程較為復(fù)雜,但是 STM32 微處理器的生產(chǎn)商意法半導(dǎo)體公司提供了友好的固件庫(kù), ;里面封裝了很多好用的 API 函數(shù),降低了頂層模塊的編程難度。這也是為什么選擇 STM32 這款微處理器的一個(gè)原因。3.2.1 STM32 主控制器程序模塊主控制器程序模塊如圖 6-1 所示 STM32 主控制器先調(diào)用 STM32 固件庫(kù)中啟動(dòng)代碼和初始化函數(shù)完成的對(duì)其自身的初始化,完成初始化之后,對(duì)
56、陀螺儀和加速度傳感器的輸出信號(hào)進(jìn)行采樣,同時(shí)從光電碼盤(pán)測(cè)速模塊中讀出單軸雙輪自平衡機(jī)器人的實(shí)際速度。之后再計(jì)算出當(dāng)前的角度值和設(shè)置參考值(0)之間的偏差和偏差的變化率,再調(diào)用 PID 算法子程序模塊,算出要輸出的控制量大小,最后形成電機(jī)驅(qū)動(dòng)的控制命令來(lái)控制電機(jī)的轉(zhuǎn)動(dòng)。傾 傾傾 傾 傾 傾 傾傾 傾 傾 傾 傾傾 傾 傾 傾 傾傾 傾 傾 傾 傾 傾傾 傾 傾 傾 傾 傾 傾 傾 傾 傾PI D 傾 傾 傾 傾傾 傾 傾 傾傾 傾 傾傾 傾Y YN N圖 6-1 STM32 主控制器程序模塊流程圖3.2.2 人機(jī)交互程序模塊人機(jī)交互程序模塊人機(jī)交互模塊采用 STC12C5A60S2 單片機(jī)為微控
57、制器,程序設(shè)計(jì)的主要流程為 STC12C5A60S2 單片機(jī)接收到頂層主控處理器 STM32 發(fā)過(guò)來(lái)命令,產(chǎn)生串口中斷,再根據(jù)命令的內(nèi)容,如果是顯示更新命令就調(diào)用 Nokia 5110 液晶驅(qū)動(dòng)程序,顯示主控器要求更新的顯示信息;如果接收到的是用戶(hù)信息輸入命令,STC12C5A60S2 單片機(jī)就通過(guò)串口將緩存的用戶(hù)輸入信息傳送給主處理器STM32。3.2.3 光電碼盤(pán)測(cè)速程序模塊光電碼盤(pán)測(cè)速程序模塊光電碼盤(pán)測(cè)速模塊也是采用了 STC12C5A60S2 單片機(jī)為微控制器,紅外傳感器 ST188 的輸出脈沖觸發(fā)單片機(jī)的外部中斷,在中斷服務(wù)程序中對(duì)脈沖進(jìn)行計(jì)數(shù),每隔 100ms 取出計(jì)數(shù)器中的值計(jì)算
58、車(chē)輪當(dāng)前的速度,并對(duì)計(jì)算器進(jìn)行清零處理,準(zhǔn)備進(jìn)入下一次測(cè)速11。假設(shè)計(jì)數(shù)器當(dāng)前的值為,則車(chē)輪轉(zhuǎn)速為:n (6-1)1 . 060n每完成一次測(cè)速以后,就通過(guò)串口將轉(zhuǎn)速值發(fā)送給主處理器 STM32。3.2.4 傾角檢測(cè)程序模塊傾角檢測(cè)程序模塊因?yàn)榧铀俣葌鞲衅鞯臄?shù)據(jù)通信接口是 IIC 總線(xiàn)協(xié)議,陀螺儀為電壓模擬量輸出,而 STM32 含有高精度的 AD 轉(zhuǎn)換器和硬件 IIC 接口,所以直接將這兩個(gè)傳感器掛接在主處理器 STM32 上。軟件主要完成的是調(diào)用 STM32 固件庫(kù)中的IIC 接口函數(shù)完成對(duì) MMA8451 的配置和從 MMA8451 中讀取加速度傳感器的數(shù)據(jù);調(diào)用 AD 接口函數(shù)完成對(duì)陀
59、螺儀輸出的 AD 轉(zhuǎn)換;再將它們分別轉(zhuǎn)化成角度值。最后選取合適的時(shí)間常數(shù)和采樣時(shí)間,用簡(jiǎn)易的互補(bǔ)對(duì)稱(chēng)濾波算法dt對(duì)角度值進(jìn)行處理,以得到最優(yōu)的車(chē)體姿態(tài)信息。簡(jiǎn)易對(duì)稱(chēng)互補(bǔ)濾波器的軟件設(shè)計(jì)只要是有 C 語(yǔ)言完成對(duì)式 3-8 的描述。3.2.5 電機(jī)驅(qū)動(dòng)程序模塊電機(jī)驅(qū)動(dòng)程序模塊電機(jī)驅(qū)動(dòng)模塊的微控制器為 STC12C5A60S2 單片機(jī),STC12C5A60S2 具有硬件 PWM 所以軟件編寫(xiě)變的比較容易,主要是接收來(lái)自主處理器 STM32 的電機(jī)控制命令,在接收到控制命令之后裝載 PWM 比較寄存器,控制 BTS7960 引腳電平,完成電機(jī)正反轉(zhuǎn)。3.2.6 PID 算法程序模塊算法程序模塊選取合適的比例系數(shù)、積分時(shí)間、微分時(shí)間和采樣周期的具體數(shù)TiTdTs值。用 C 語(yǔ)言程序完成對(duì) 3
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030年中國(guó)經(jīng)濟(jì)型酒店行業(yè)全國(guó)市場(chǎng)開(kāi)拓戰(zhàn)略制定與實(shí)施研究報(bào)告
- 新形勢(shì)下人力資源服務(wù)行業(yè)轉(zhuǎn)型升級(jí)戰(zhàn)略制定與實(shí)施研究報(bào)告
- 2025-2030年中國(guó)中醫(yī)藥服務(wù)貿(mào)易行業(yè)并購(gòu)重組擴(kuò)張戰(zhàn)略制定與實(shí)施研究報(bào)告
- 2025-2030年中國(guó)老年護(hù)理服務(wù)行業(yè)商業(yè)模式創(chuàng)新戰(zhàn)略制定與實(shí)施研究報(bào)告
- 2025-2030年中國(guó)家庭服務(wù)機(jī)器人行業(yè)資本規(guī)劃與股權(quán)融資戰(zhàn)略制定與實(shí)施研究報(bào)告
- 市政道路工程竣工監(jiān)理質(zhì)量評(píng)估報(bào)告
- 旅行套裝問(wèn)卷調(diào)查
- 2025年中國(guó)口罩行業(yè)市場(chǎng)調(diào)查研究及投資前景預(yù)測(cè)報(bào)告
- 白皮紙行業(yè)行業(yè)發(fā)展趨勢(shì)及投資戰(zhàn)略研究分析報(bào)告
- 母嬰零食知識(shí)培訓(xùn)課件
- 微型消防站消防員培訓(xùn)內(nèi)容
- 大一中國(guó)近代史綱要期末考試試題及答案
- (完整版)鋼筋加工棚驗(yàn)算
- 安徽省合肥市廬陽(yáng)區(qū)2023-2024學(xué)年三年級(jí)上學(xué)期期末數(shù)學(xué)試卷
- 概念方案模板
- 西南交大畢業(yè)設(shè)計(jì)-地鐵車(chē)站主體結(jié)構(gòu)設(shè)計(jì)
- 2024年山東傳媒職業(yè)學(xué)院高職單招(英語(yǔ)/數(shù)學(xué)/語(yǔ)文)筆試歷年參考題庫(kù)含答案解析
- 江蘇省南通市崇川區(qū)2023-2024學(xué)年三年級(jí)上學(xué)期期末語(yǔ)文試卷
- crtd植入術(shù)護(hù)理查房
- 掃雪鏟冰安全教育培訓(xùn)
- 人教版三年級(jí)下冊(cè)必讀書(shū)目《中國(guó)古代寓言故事》
評(píng)論
0/150
提交評(píng)論