




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、精選優(yōu)質文檔-傾情為你奉上自平衡小車設計報告摘要:本作品采用STM32單片機作為主控制器,用一個陀螺儀傳感器來檢測車的狀態(tài),通過TB6612控制小車兩個電機,來使小車保持平衡狀態(tài),通過手機藍牙與小車上藍牙模塊連接以控制小車運行狀態(tài)。關鍵字:智能小車;單片機;陀螺儀;藍牙模塊。一、系統(tǒng)完成的功能根據(jù)老師的指導要求,在規(guī)定的時間內,由團隊合作完成兩輪自平衡小車的制作,使小車在一定時間內能夠自助站立并且自由行走,以及原地轉圈,上坡和送高處躍下站立。二、系統(tǒng)總體設計原理框架圖USART3藍牙模塊STM32TB6612陀螺儀傳感器電機兩路PWMIIC編碼器圖2.1 系統(tǒng)總體框圖三.系統(tǒng)硬件各個組成部分介
2、紹3.1.STM32單片機簡介(stm32rbt6)主控模塊的STM32單片機是控制器的核心部分。該單片機是ST意法半導體公司生產(chǎn)的32位高性能、低成本和低功耗的增強型單片機,它的內核采用ARM公司最新生產(chǎn)的CortexM3架構,最高工作頻率可達72MHz,256K的程序存儲空間、48K的RAM,8個定時器計數(shù)器、兩個看門狗和一個實時時鐘RTC,片上集成通信接口有兩個I2C、3個SPI、5個USART、一個USB、一個CAN、兩個和一個SDIO,并集成有3個ADC和一個DAC,具有80個I0端口。 STM32單片機要求2.03.6V的操作電壓(VDD),本設計采用5.0V電源通過移動電源給單片
3、機供電。3.2. 陀螺儀傳感器陀螺儀可以用來測量物體的旋轉角速度。本設計選用MPU-6050。MPU-60X0 是全球首例9 軸運動處理傳感器。它集成了3 軸MEMS 陀螺儀,3 軸MEMS加速度計,以及一個可擴展的數(shù)字運動處理器DMP(Digital Motion Processor),可用I2C接口連接一個第三方的數(shù)字傳感器,比如磁力計。擴展之后就可以通過其I2C 或SPI 接口輸出一個9 軸的信號(SPI 接口僅在MPU-6000 可用)。MPU-60X0 也可以通過其I2C 接口連接非慣性的數(shù)字傳感器,比如壓力傳感器MPU-60X0 對陀螺儀和加速度計分別用了三個16 位的ADC,將其
4、測量的模擬量轉化為可輸出的數(shù)字量。為了精確跟蹤快速和慢速的運動,傳感器的測量范圍都是用戶可控的,陀螺儀可測范圍為±250,±500,±1000,±2000°/秒(dps),加速度計可測范圍為±2,±4,±8,±16g。 一個片上1024 字節(jié)的FIFO,有助于降低系統(tǒng)功耗。和所有設備寄存器之間的通信采用400kHz 的I2C 接口或1MHz 的SPI 接口(SPI 僅MPU-6000 可用)。對于需要高速傳輸?shù)膽?,對寄存器的讀取和中斷可用20MHz 的SPI。 另外,片上還內嵌了一個溫度傳感器和在工作環(huán)
5、境下僅有±1%變動的振蕩器。芯片尺寸4×4×0.9mm,采用QFN 封裝(無引線方形封裝),可承受最大10000g 的沖擊,并有可編程的低通濾波器。關于電源,MPU-60X0 可支持VDD 范圍2.5V±5%,3.0V±5%,或3.3V±5%。另外MPU-6050 還有一個VLOGIC 引腳,用來為I2C 輸出提供邏輯電平。VLOGIC 電壓可取1.8±5%或者VDD。 圖3.2.1 陀螺儀外觀圖圖3.2.2 陀螺儀電路圖3.3.電機驅動 3.3.1.TB6612由于TB6612相對于傳統(tǒng)的L298N效率上提高很多,體積上也
6、大幅度減少,在額定范圍內,芯片基本不發(fā)熱,所以我們設計的時候選擇了這款芯片。圖3.3.1 TB6612外觀圖3.3.2.PWM原理PWM即脈沖寬度調制,它是指將輸出信號的基本周期固定,通過調整基本周期內工作周期的大小來控制輸出功率的方法。在PWM驅動控制的調整系統(tǒng)中,按一個固定的頻率來接通和斷開電源,并根據(jù)需要改變一個周期內“接通”和“斷開”時間的長短。因此,PWM又被稱為“開關驅動裝置”。如圖7所示,在脈沖作用下,當電機通電時,速度增加;電機斷電時,速度逐漸減少。只要按一定規(guī)律,改變通、斷電的時間,即可讓電機轉速得到控制。圖3.3.2 PWM波形圖設電機始終接通電源時,電機轉速最大為Vmax
7、,設占空比為D=tT,則電機的平均速度為:Vd = Vmax·D (1)式中:Vd表示電機的平均速度;Vmax表示電機全通電時的速度(最大);D=tT表示占空比。由公式(1)可見,當改變占空比D時,就可以得到不同的電機平均速度,從而達到調速的目的。3.4藍牙模塊藍牙模塊可以讓原來使用串口的設備擺脫線纜的束縛在10米范圍內實現(xiàn)無線串口通信。使用該模塊無需了解復雜的藍牙底層協(xié)議,只要簡單的幾個步驟即可享受到無線通信的便捷。藍牙透傳模塊只有4個AT指令,分別是測試通訊,改名稱,改波特率,改配對密碼,AT指令必須從TXD,RXD信號腳設置,不能通過藍牙信道設置。發(fā)送AT指令的設備可以是各種類
8、型的MCU(比如51,avr,pic,msp430,arm等),也可以是電腦通過串口(PC串口接MAX232以后或者USB轉串口)發(fā)送。由于HC-06有低功耗,低成本的特性,所以我們選擇了這款芯片。圖3.4 藍牙模塊外觀圖3.5編碼器編碼器是將信號(如比特流)或數(shù)據(jù)進行編制、轉換為可用以通訊、傳輸和存儲的信號形式的設備。編碼器把角位移或直線位移轉換成電信號,前者稱為碼盤,后者稱為碼尺。按照讀出方式編碼器可以分為接觸式和非接觸式兩種;按照工作原理編碼器可分為增量式和絕對式兩類。增量式編碼器是將位移轉換成周期性的電信號,再把這個電信號轉變成計數(shù)脈沖,用脈沖的個數(shù)表示位移的大小。絕對式編碼器的每一個
9、位置對應一個確定的數(shù)字碼,因此它的示值只與測量的起始和終止位置有關,而與測量的中間過程無關。四、軟件設計軟件部分實現(xiàn)的主要功能是:傳感器的數(shù)據(jù)采集、PWM信號的輸出、車??刂疲喊ㄖ绷⒖刂疲俣瓤刂?。軟件流程如下:初始化完成以后,首先進入車模直立檢測子程序。該程序通過讀取陀螺儀傳感器的數(shù)值判斷車模是否處于直立狀態(tài)。在中斷程序中不斷的讀取編碼器數(shù)據(jù),獲取車模狀態(tài)信息,然后通過讀取的數(shù)據(jù)控制車模。1.藍牙控制程序:if(uart_receive=0x00)Flag_Qian=0,Flag_Hou=0,Flag_Left=0,Flag_Right=0; /剎車if(uart_receive=0x01
10、)Flag_Qian=1,Flag_Hou=0,Flag_Left=0,Flag_Right=0; /前進if(uart_receive=0x05)Flag_Qian=0,Flag_Hou=1,Flag_Left=0,Flag_Right=0; /后退else if(uart_receive=0x02|uart_receive=0x03|uart_receive=0x04)Flag_Qian=0,Flag_Hou=0,Flag_Left=0,Flag_Right=1; /右轉彎else if(uart_receive=0x06|uart_receive=0x07|uart_receive=0x
11、08)Flag_Qian=0,Flag_Hou=0,Flag_Left=1,Flag_Right=0; /左轉彎2. 控制程序:直立PD控制:float balance(float angle,float Gyro) static float Bias,angle_i; float balance; Bias=angle-5; angle_i+=angle; balance=p*Bias+d*Gyro+i*angle_i; if(Turn_Off(Angle_Balance)=1) angle_i=0; return balance;速度PI控制:int velocity(int encode
12、r_left,int encoder_right) static int Velocity,Encoder_Least=0,Encoder,Movement; static long Encoder_Integral;if(1=Flag_Qian)Movement=5; else if(1=Flag_Hou) Movement=-5; else Movement=0; Encoder_Least =(encoder_left*0.5+encoder_right*0.5)*0.9; Encoder *= 0.7; Encoder += Encoder_Least*0.3; Encoder_Int
13、egral +=Encoder; Encoder_Integral=Encoder_Integral-Movement; if(Encoder_Integral>15000) Encoder_Integral=15000; if(Encoder_Integral<-15000)Encoder_Integral=-15000; if(Encoder=0) Encoder_Integral=Encoder_Integral*0.9965;if(Encoder=0) Encoder_Integral=0;Velocity=Encoder*vp+Encoder_Integral*vi; if(Turn_Off(Angle_Balance)=1) Encoder_Integral=0; return Velocity;void PID_INIT() p=60; d=0.15; i=0; vp=36; vi=1.2;五、制作困難本作品制作過程中遇到了很多困難。在硬件方面,STM32燒壞好幾個,造成了經(jīng)濟損失,后來經(jīng)過檢查電路和改進,能夠穩(wěn)定安全運行。設計初期我們試驗L298N作為電機驅動,發(fā)現(xiàn)反映過慢,后來改用TB6612,效果非常好。PID參數(shù)的調試花費了大量的時間。六.總結自平衡小車制作過程
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 花卉購銷協(xié)議書
- 調整宅基協(xié)議書
- 配送保密協(xié)議書
- 贓款退還協(xié)議書
- 建材業(yè)務員合同協(xié)議書
- 旅行社地接合同協(xié)議書
- 竹筍合作協(xié)議書
- 租房轉手協(xié)議書
- 職工外住協(xié)議書
- 現(xiàn)貨會員協(xié)議書
- LY/T 2581-2016森林防火視頻監(jiān)控系統(tǒng)技術規(guī)范
- GB/T 1735-2009色漆和清漆耐熱性的測定
- 2022年上海蓬萊中學高二政治下學期期末試卷含解析
- 中印邊境爭端
- 單病種管理匯總
- 第六單元作文訓練:“批判與觀察”高一語文教材同步作文 素材拓展+范文展示(統(tǒng)編版必修下冊)
- 心肺聽診課件
- 中小學生環(huán)境教育專題教育大綱
- 商務禮儀之辦公室禮儀課件
- 綠色施工策劃書(模板)
- 肺癌生活質量量表
評論
0/150
提交評論