基于ADXL345的指控小車_第1頁
基于ADXL345的指控小車_第2頁
基于ADXL345的指控小車_第3頁
基于ADXL345的指控小車_第4頁
基于ADXL345的指控小車_第5頁
已閱讀5頁,還剩1頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

-.z---.--總結資料分數(shù):分數(shù):創(chuàng)新實驗學院實踐報告研究室名稱:傳感器與人機交互研究室:機電專題研究〔一〕立項題目:基于傳感器的飛行器姿態(tài)控制系統(tǒng)院系:創(chuàng)新實驗學院班級:創(chuàng)電0901學生**:王瑜敏學號:200901207完成日期:2011年12月10日**理工大學創(chuàng)新實驗學院基于傳感器的飛行器姿態(tài)控制系統(tǒng)設計內(nèi)容綜述四旋翼飛行器是一種電動的、能夠垂直起降的、多旋翼式飛行器。由于具有廣闊的軍事和民用前景,使其成為了當前的研究熱點。四旋翼飛行器有兩個關鍵問題:飛行器姿態(tài)解算和飛行控制。姿態(tài)解算的精度將直接影響飛行控制算法的穩(wěn)定性、可靠性和實現(xiàn)的難易程度,所以姿態(tài)解算是飛行控制實現(xiàn)的前提。隨著MEMS技術以及計算機技術的開展,小型飛行器航姿測量普遍采用低本錢的捷聯(lián)慣性導航技術測量單元〔IMU〕,其主要由低本錢的陀螺儀、加速度傳感器和電子羅盤組成。陀螺儀具有溫度漂移特性,加速度傳感器會受到飛行器飛行過程中機體振動的影響,同時電子羅盤是一種磁阻傳感器,容易受到外部磁場的干擾。因此,如何融合IMU多傳感器的數(shù)據(jù),濾除外部干擾,得到高可靠性、高精度的姿態(tài)數(shù)據(jù),是一項非常具有挑戰(zhàn)性的工作。擴展卡爾曼濾波器算法是一種高精度,在飛行器中應用非常廣泛的姿態(tài)解算算法,但是建立其穩(wěn)定可靠的更新方程是比較困難的,而且其計算量很大,對處理器的運算速度和精度要求很高,不適合小型飛行器的嵌入式微控制器。互補濾波器算法以其簡單可靠的優(yōu)點,在飛行器姿態(tài)解算中的應用愈加廣泛?;パa濾波器對慣性器件的精度要求較低,特別適合于廉價的IMU。本文基于互補濾波器算法,設計了適合四旋翼飛行器的姿態(tài)解算算法。實驗結果說明,本算法能夠長時間輸出高精度姿態(tài)數(shù)據(jù),完全滿足飛行控制的要求??傮w架構小型四旋翼飛行器涉及到飛行器設計、傳感器技術、機器人技術、嵌入式系統(tǒng)開發(fā)、自動控制理論和應用的等諸多技術領域。如右圖圖一所示為小型四旋翼飛行器的整體框架:圖一總體框架在飛行器航姿參考系統(tǒng)中,根據(jù)三軸陀螺儀的角速度輸出,使用斱向余弦矩陣法解算小型四旋翼飛行器的姿態(tài),采用高效的單位正交化算法對斱向余弦矩陣進展校正;根據(jù)陀螺儀和加速度傳感器、數(shù)字羅盤的測量結果在頻域上的特點,使用互補濾波器對多傳感器結算結果進展數(shù)據(jù)融合,有效提高了姿態(tài)測量的精度。圖2飛行器姿態(tài)控制系統(tǒng)我們設計通過使用如下的傳感器對飛行器的飛行姿態(tài)進展測量:雖然陀螺儀動態(tài)響應良好,但是測量姿態(tài)時會產(chǎn)生積累誤差。相比陀螺儀,數(shù)字羅盤和加速度傳感器最大的優(yōu)點就是輸出丌會隨時間發(fā)生漂移,沒有積累誤差,但是動態(tài)響應較差。兩者在頻域上具有互補特性,滿足互補濾波器的使用條件,可以采用互補濾波器對三種傳感器的姿態(tài)數(shù)據(jù)進展融合,以提高測量精度各模塊原理、方法及實現(xiàn)飛行器的偏航角不會影響重力加速度矢量的方向,而且滾轉(zhuǎn)角和俯仰角也不會影響飛行器的航向,所以兩路校正之間是解耦的,不會相互干擾,分為兩路的策略是合理的。四旋翼飛行器大局部時間處于懸停、勻速飛行階段,此時加速度傳感器只受機體高頻振動的干擾,而且在起飛、降落和加減速階段,其加速度相對重力加速度較小,而且持續(xù)時間很短,最終會被互補濾波器濾除。因此,可以將加速度傳感器的數(shù)據(jù)作為機體重力加速度的測量結果。由互補濾波器估計的重力加速度矢量為旋轉(zhuǎn)矩陣R的第3行,其與加速度傳感器測量的重力加速度的單位矢量的偏差,即為俯仰和滾轉(zhuǎn)角誤差,其值為兩個矢量的叉乘。以上小型四旋翼飛行器的動力學模型,使用加速度斱程描述飛行器的位移,使用角加速度斱程描述飛行器的姿態(tài)角,因此飛行控制算法需要完成對位置和姿態(tài)兩個環(huán)節(jié)的控制。在動力學模型的根底上,將小型四旋翼飛行器實時控制算法分為兩個控制回路,即位置控制回路和姿態(tài)控制回路。討論和方案通過大三上學期的學習與制作,我們對基于傳感器的飛行器姿態(tài)控制系統(tǒng)有了整體的設計框架,學習了傳感器:加速度傳感器、陀螺儀和數(shù)字羅盤,在本學期也制作了一個基于AD*L345加速度傳感器的指控小車,運用操作簡單的89C51單片機進展控制,通過對AD*L345的控制讀取*,y,z軸的加速度數(shù)值,一方面顯示到1602液晶屏上進展實時的監(jiān)測控制,另一方面通過單片機控制小車遙控模塊,實現(xiàn)手拿加速度傳感器便可以如實的模擬控制小車向前、向后、左轉(zhuǎn)、右轉(zhuǎn),設計獨特新穎。通過實物的設計與調(diào)試,我學會了熟練使用的AD*L345加速度傳感器,并能夠通過II2C總線模式控制傳感器。如下是我們的設計框圖:圖3基于AD*L345加速度傳感器的指控小車原理框圖在上學期學習了工程所需的硬件知識后,我們將會按照如下分工進展實物的制作與調(diào)試:組長:惠明通負責硬件電路的設計與制作組員:王瑜敏負責相關傳感器的操作,學習ARM32的使用組員:羅進負責軟件編程這學期學會了使用AD*L345加速度傳感器后,我會在下學期的時候努力學習陀螺儀、數(shù)字羅盤的使用,與組員們團結協(xié)作,將實物在下學期的時候制作出來并進展調(diào)試與檢測。附錄:〔原理圖、PCB、源代碼等,不超過3頁〕1、利用AD*L345傳感器制作的指控小車的實物圖2、以下代碼為使用AD*L345加速度傳感器獲取*,y,z軸的加速度值,通過89SC51單片機控制液晶屏顯示的局部程序://********AD*L345.C*include<REG51.H> *include<math.h>//Keillibrary *include<INTRINS.H>*include<dingyi.h>*include<1602.h>*include<Reluctance.h>*include<*ianshi.h>voidmain(){unsignedinti;delay(500); init_();Init_AD*L345();while(1)//循環(huán){delay(100);Multiple_read_SHEBEI(0*A6,0*32);display_*();//---------顯示*軸display_y();//---------顯示Y軸display_z();//---------顯示Z軸 delay(100);}}//************************ianshi.H}//**********************Reluctance.h*****voidSingle_Write_SHEBEI(ucharSlaveAddress,ucharREG_Address,ucharREG_data){IIC_Start();//起始信號SHEBEI_SendByte(SlaveAddress);//發(fā)送設備地址+寫信號SHEBEI_SendByte(REG_Address);//內(nèi)部存放器地址,請參考中文pdfSHEBEI_SendByte(REG_data);//內(nèi)部存放器數(shù)據(jù),請參考中文pdfIIC_Stop();//發(fā)送停頓信號}//******************************************************voidMultiple_read_SHEBEI(ucharSlaveAddress,ucharaddress){uchari;IIC_Start();//起始信號SHEBEI_SendByte(SlaveAddress);//發(fā)送設備地址+寫信號SHEBEI_SendByte(address);//發(fā)送存儲單元地址,從0*32開場 IIC_Start();//起始信號SHEBEI_SendByte(SlaveAddress+1);//發(fā)送設備地址+讀信號 for(i=0;i<6;i++)//連續(xù)讀取6個地址數(shù)據(jù),存儲中BUF{BUF[i]=SHEBEI_RecvByte();//BUF[0]存儲0*32地址中的數(shù)據(jù)if(i==5){SHEBEI_SendACK(1);//最后一個數(shù)據(jù)需要回NOACK}else{SHEBEI_SendACK(0);//回應ACK}}IIC_Stop();//停頓信號Delay5ms();}voidInit_AD*L345(){Single_Write_SHEBEI(0*A6,0*31,0*0B);//測量*圍,正負16g,13位模式Single_Write_SHEBEI(0*A6,0*2C,0*08);//速率設定為12.5參考pdf13頁Single_Write_SHEBEI(0*A6,0*2D,0*08);//選擇電源模式參考pdf24頁Single_Write_SHEBEI(0*A6,0*2E,0*80);//使能DATA_READY中斷Single_Write_SHEBEI(0*A6,0*1E,0*00);//*偏移量根據(jù)測試傳感器的狀態(tài)寫入pdf29頁Single_Write_SHEBEI(0*A6,0*1F,0*00);//Y偏移量根據(jù)測試傳感器的狀態(tài)寫入pdf29頁Single_Write_SHEBEI(0*A6,0*20,0*05);//Z偏移量根據(jù)測試傳感器的狀態(tài)寫入pdf29頁}//*****************************dingyi.h*defineucharunsignedchar*defineuintunsignedint *defineDataPortP0 //LCD1602數(shù)據(jù)端口sbit SCL=P1^0;//IIC時鐘引腳定義sbit SDA=P1^1;//IIC數(shù)據(jù)引腳定義sbitRS=P2^0;//LCD1602命令端口 sbitRW=P2^1;//LCD1602命令端口 sbitE=P2^2;//LCD1602命令端口//*define SlaveAddress0*3C //定義器件在IIC總線中的從地址//ucharSlaveAddress;typedefunsignedcharBYTE;typedefunsignedshortWORD;BYTEBUF[8];//接收數(shù)據(jù)緩存區(qū) ucharge,shi,bai,qian,wan;//顯示變量intdis_data;float*1;floatY1;floatZ1;int*;inty;intz;intH*;intHy;voidDisplayOneChar(uchar*,ucharY,ucharDData){ Y&=1; *

溫馨提示

  • 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論