999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于MPU6050的陀螺儀測控系統設計

2015-07-30 13:58:05葉俊明馬海琴
中國高新技術企業 2015年27期

葉俊明 馬海琴

摘要:文章所述系統采用ARM Cortex微處理芯片STM32F103ZET6設計陀螺儀測控系統,采用Clinux操作系統對測量的數據進行濾波后用于控制用戶電壓輸出,采用Microwindows的上位機圖形界更好地顯示陀螺儀的參數波形,在傳輸上使用串口通信對數據進行打包發送,系統穩定,有實用意義。

關鍵詞:數字陀螺儀;測控系統;人機交互界面;?Clinux;電壓輸出 文獻標識碼:A

中圖分類號:TP242 文章編號:1009-2374(2015)27-0026-02 DOI:10.13535/j.cnki.11-4406/n.2015.27.014

1 系統設計方案

本設計選用系統Clinux和ARM Cortex主控器作為本設計的操作測控裝置,采用MPU-6050傳感器芯片可準確地采樣物體角速度變化。由于溫度及陀螺儀本身存在的偏差,采樣得到的數據會有偏差,采用濾波算法來校正。本設計采用多次平均算法和卡爾曼濾波算法校正。

測控的硬件系統由兩部分構成。ARM采用IIC總線對MPU6050F進行訪問,也可采用MPU6050自帶的IIC程序進行設計。對得到的數據進行校正后可用于對用戶輸出電壓、頻率進行控制,顯示采用五寸彩色屏和電腦上位機編寫的Microwindows的圖形界進行顯示。

2 系統硬件設計

本設計的硬件平臺采用STM32F103ZET6為核心的嵌入式系統。STM32F103ZET6具有豐富的硬件資源和可靠的穩定性,其與陀螺儀芯片MPU6050通過IIC總線連接即構成通用的檢測系統。電路如圖1所示:

圖1 MPU-6050電路

3 系統軟件設計

系統軟件框架包括設備驅動程序、操作系統運行環境、根據用戶需要自定義的控制程序、高級應用程序算法、底層驅動的與操作系統的接口程序。

3.1 底層驅動的串行口接口程序

串行口通信模塊建立在操作系統驅動程序的基礎上,采用多進程技術將串口驅動接收到的數據緩沖,切割成自定義的協議封裝形式后,組裝成高級應用程序(幀字節),為高級應用程序提供程序接口函數。

Struct unsigned char DataFrames_Mangae

{

Char StartFlag;Char Index;Char Dealed;Char Type;

Char Data_A[DATA_CONTROL_SIZES];Char Reserved;char EndFlag;

}

程序接口函數為高級應用程序提供了串口、IIC程序初始化(也可以是MPU6050F自帶的I2C總線程序)、接收發送函數。高級應用接口程序把底層結構體變量的指針傳遞到串行口模塊,再按先后發送給下一級程序進行處理。

3.2 基于卡爾曼濾波程序的濾波算法

對于MPU-6050本身存在的誤差,可采用多次測量取平均值的算法來校正,采用卡爾曼濾波算法有效地使得采樣的輸出平穩。

void Kalmana_Filters(float Aol,Gyrol)

{Pdota[3]=Q_gyro;Pdota[2]=Pdota[2]-PPa[1][1];

Pdota[1]=Pdota[1]-PPa[1][1];Pdota[0]=Q_angle-PPa[0][1]-PPa[1][0];

Angle1=Angle1+(Gyro-Q_bias)*dt1;Angle_err=Accel-Angle1;

PPa[1][1]=PPa[1][1]+Pdota[3]*dt1;PPa[1][0]=PPa[1][0]+Pdota[2]*dt1;

PPa[0][0]=PPa[0][0]+Pdota[0]*dt1;PPa[0][1]=PPa[0][1]+Pdota[1]*dt1;

Et=R_angle+C_0*PCt_0;PCt_0=C_0*PPa[0][0];PCt_1=C_0*PPa[1][0];

if(Et!=0){K_0=PCt_0/Et;K_1=PCt_1/Et;}

Angle1=K_0*Angle_err+Angle1;t_0=PCt_0;

t_1=C_0*PP[0][1];PPa[0][0]-=K_0*t_0;

PPa[0][1]=PPa[0][1]-K_0*t_1;PPa[1][0]=PPa[1][0]-K_1*t_0;

PPa[1][1]=PPa[1][1]-K_1*t_1;Qbias=K_1*Angle_err+Qbias;}

3.3 基于Microwindows的多線程控制圖形界實現

采用Microwindows的圖形設計可以方便地加入外部設備,如按鍵、顯示器等。在圖形界面高級應用程序中,消息事件循環里可以從消息隊列里面提取消息PeckMessages()。串行口接收通信數據以及按鍵函數在應用程序中初始化后,將獲得的消息傳輸到執行消息處理函數中。圖2是陀螺儀芯片采集的數據在上位機上的顯示:

圖2 陀螺儀數據數據采集顯示圖

4 調試心得

MPU6050上電后是為睡眠狀態的,上電啟動設備后MPU6050會以主身份進行操作,如使用I2C等對MPU6050F讀寫會顯示busy的狀態,所以MPU6050的時序是很嚴格的。對陀螺儀采樣的數據進行多次平均、卡爾曼濾波會大大降低干擾。

5 結語

本作品主要在于研究一種基于MPU6050的陀螺儀測控系統,該系統在以STM32F103ZET6微處理器和?Clinux操作系統上完成了對陀螺儀采樣數據的多次平均測值量算法和濾波、基于Microwindows的GUI多線程控制、串行通信數據傳輸處理和底層AD控制等功能,具有良好的顯示界面,便于監控和操作。

參考文獻

[1] 李善平,陳文智,等.LINUX內核指導[M].杭州:浙江大學出版社,2002.

[2] 周立功,陳明計,陳渝,等.ARM嵌入式Linux系統構建與驅動開發范例[M].北京:北京航空航天大學出版社,2006.

[3] [美]Charlie Calvert.21天學通Windows編程[M].北京:電子工業出版社,1995.

(責任編輯:周 瓊)

主站蜘蛛池模板: 国产一区二区福利| 亚洲国产亚综合在线区| 亚洲高清在线播放| 免费女人18毛片a级毛片视频| 看国产毛片| 老司机精品一区在线视频| 国产成人精品一区二区免费看京| 日韩中文字幕亚洲无线码| 亚洲一级毛片在线观播放| 成人午夜网址| 在线国产91| 成人国内精品久久久久影院| 99无码熟妇丰满人妻啪啪| 成AV人片一区二区三区久久| 精品国产网站| 欧美日韩在线第一页| 欧美第一页在线| 日韩毛片免费观看| 中文字幕在线播放不卡| a级毛片视频免费观看| 亚洲国产中文综合专区在| 亚洲娇小与黑人巨大交| 国产精品自在在线午夜| 91精品最新国内在线播放| 日韩精品一区二区三区免费在线观看| 国产精品护士| 国产美女在线观看| 亚洲综合二区| 精品无码日韩国产不卡av| 在线国产资源| 国产丝袜精品| 亚洲国产亚综合在线区| 国产欧美日韩在线在线不卡视频| 福利在线不卡| 日韩区欧美国产区在线观看| 特级aaaaaaaaa毛片免费视频| 四虎免费视频网站| 国产成人高清在线精品| 国产成人精品在线1区| 精品国产乱码久久久久久一区二区| 无码专区国产精品一区| 国产女人在线视频| 亚洲AⅤ无码国产精品| 日韩欧美国产区| 伊人色在线视频| 成人在线观看不卡| 精品视频第一页| 伊在人亚洲香蕉精品播放| 热这里只有精品国产热门精品| 国产精品久久久久久久久| 老司国产精品视频91| 综合成人国产| 亚洲欧洲日产国产无码AV| 毛片在线看网站| 人与鲁专区| 国产精品人成在线播放| 毛片三级在线观看| 成人综合久久综合| 亚洲人成网站日本片| 亚洲 欧美 日韩综合一区| 国产精品人成在线播放| 成人国产免费| 国产丝袜精品| 色综合天天综合中文网| 美女视频黄又黄又免费高清| 国产成人精品2021欧美日韩| 亚洲一道AV无码午夜福利| 日韩欧美中文在线| 亚洲AV无码不卡无码| 国产在线观看人成激情视频| 久草视频中文| 夜夜爽免费视频| 女人18毛片久久| 啊嗯不日本网站| 国产成人精品一区二区免费看京| 国产精品乱偷免费视频| 欧美在线天堂| 婷婷伊人久久| 色婷婷成人网| 三级国产在线观看| 色偷偷综合网| 国产精女同一区二区三区久|