一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

STM32入門學(xué)習(xí)筆記之MPU6050傳感器解析實(shí)驗(yàn)1

jf_78858299 ? 來源:滑小稽筆記 ? 作者:電子技術(shù)園地 ? 2023-02-16 14:53 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

19.1 MPU6050簡(jiǎn)介

19.1.1 芯片概述

MPU6050是InvenSense公司推出的一款6軸運(yùn)動(dòng)處理芯片,內(nèi)置3軸陀螺儀及3軸速度傳感器,內(nèi)置兩組I2C接口,其中一組用于通信,另一組則用于連接外部磁力傳感器,采用自帶的數(shù)字運(yùn)動(dòng)處理器DMP(Digital Motion Processor),通過主I2C接口,直接讀取完整的9軸融合演算數(shù)據(jù)。MPU6050檢測(cè)軸及其檢測(cè)方向如下圖所示。

圖片

19.1.2 引腳介紹

圖片

MPU6050采用QFN-24封裝,端口描述如下表所示。

引腳編號(hào) 引腳名稱 功能
1 CLKIN 外部參考時(shí)鐘輸入,如果不使用直接接地
2 NC 空引腳
3 NC 空引腳
4 NC 空引腳
5 NC 空引腳
6 AUX_DA 從I2C接口數(shù)據(jù)口,用于連接磁傳感器的SDA組成九軸傳感器
7 AUX_CL 從I2C接口時(shí)鐘口,用于連接磁傳感器的SCL組成九軸傳感器
8 VLOGIC IO口邏輯電平,最低可以設(shè)置1.8V,默認(rèn)連接VDD
9 AD0 I2C接口地址控制端,端口為高電平默認(rèn)地址0x69,端口為低電平默認(rèn)地址0x68
10 REGOUT 外接穩(wěn)壓器的濾波電容
11 FSYNC 幀同步數(shù)字輸入,如果不使用直接接GND
12 INT 中斷信號(hào)輸出(可以配置為開漏輸出)
13 VDD 電源正極,供電范圍0.5V~6VDC
14 NC 空引腳
15 NC 空引腳
16 NC 空引腳
17 NC 空引腳
18 GND 電源地
19 RESV 保留
20 CPOUT 外部電荷泵電容
21 RESV 保留
22 RESV 保留
23 SCL 主I2C接口時(shí)鐘
24 SDA 主I2C接口數(shù)據(jù)

19.1.3 硬件電路

圖片

由于MPU6050內(nèi)部是可以自動(dòng)計(jì)算X,Y和Z軸的方向及加速度的,使用者可以不考慮實(shí)際的數(shù)據(jù)轉(zhuǎn)換問題,但是為了詳細(xì)的了解MPU6050的計(jì)算過程,使用者最好還是應(yīng)該具備了解原始數(shù)據(jù)如何轉(zhuǎn)換為我們需要的角度與加速度值。

19.2 姿態(tài)解算與融合算法基礎(chǔ)概念

19.2.1 方向矩陣

設(shè)有一個(gè)三位直角坐標(biāo)系Oxyz,如下圖所示。

圖片

19.2.2 方向余弦矩陣

圖片

19.2.3 歐拉角

歐拉角是用于確定定點(diǎn)轉(zhuǎn)動(dòng)缸體位置的3個(gè)1組的獨(dú)立角參量,由章動(dòng)角θ,旋轉(zhuǎn)角(進(jìn)動(dòng)角)ψ和自轉(zhuǎn)角φ組成,歐拉角有多種取法,下面是比較常見的一種。

圖片

如上圖所示,由定點(diǎn)O做出固定坐標(biāo)系Oxyz以及固定連在剛體的坐標(biāo)系Ox’y’z’,以軸Oz和Oz’為基本軸。其垂直面Oxy和Ox’y’為基本平面,由軸Oz量到Oz’的角度θ稱為章動(dòng)角,平面zOz’的垂線ON稱為節(jié)線,同時(shí)ON又是基本平面Ox’y’和Oxy的交線,在右手坐標(biāo)系中,由ON的正端看,角θ應(yīng)按照逆時(shí)針方向計(jì)算,由固定軸Ox到節(jié)線ON的角度ψ稱為進(jìn)動(dòng)角,也叫作旋轉(zhuǎn)角,由節(jié)線ON到動(dòng)軸Ox’的角度φ稱為自轉(zhuǎn)角,有Oz和Oz’正端看,進(jìn)動(dòng)角ψ與自轉(zhuǎn)角φ也應(yīng)該按照逆時(shí)針方向計(jì)算。

從上面的描述過程可以發(fā)現(xiàn),歐拉角實(shí)際是可以分解成三步來計(jì)算的:

第1步:繞z軸旋轉(zhuǎn)α,使得x軸與N軸重合

第2步:繞x軸旋轉(zhuǎn)β,使z軸與旋轉(zhuǎn)后的z軸重合

第3步:繞z軸旋轉(zhuǎn)y,是坐標(biāo)系與旋轉(zhuǎn)后的完全重合

根據(jù)上面的三個(gè)步驟,我們來通過以下實(shí)例來說明歐拉角與方向余弦矩陣的轉(zhuǎn)換過程。

圖片

19.2.4 四元數(shù)與歐拉角的轉(zhuǎn)換

四元數(shù)是一個(gè)簡(jiǎn)單的超復(fù)數(shù),是由實(shí)數(shù)加上三個(gè)虛數(shù)單位i,j,k組成,每個(gè)四元數(shù)都是1,i,j,k的線性組合,四元數(shù)是愛爾蘭數(shù)學(xué)家哈密頓在1843年發(fā)明的數(shù)學(xué)概念,四元數(shù)的乘法不符合交換律。

四元數(shù)姿態(tài)表達(dá)式是一個(gè)四參數(shù)的表達(dá)式,它的基本思路是一個(gè)坐標(biāo)系轉(zhuǎn)換到另一個(gè)坐標(biāo)系可以通過繞一個(gè)定義在參考系中的矢量μ的單次轉(zhuǎn)動(dòng)來實(shí)現(xiàn),四元數(shù)用符號(hào)q表示,是一個(gè)具有4個(gè)元素的矢量,這些元素是該矢量方向和轉(zhuǎn)動(dòng)大小的函數(shù)。定義四元數(shù)如下所示。

圖片

這里直接給出結(jié)論,不作證明。會(huì)用即可。四元數(shù)與歐拉角的轉(zhuǎn)換公式為:

圖片

用方向余弦表示歐拉角,這里歐拉角不允許等于90度。

圖片

用四元數(shù)表示歐拉角

圖片

在姿態(tài)解算中常用的算法由歐拉角法,方向余弦法和四元數(shù)法,歐拉角在求解姿態(tài)時(shí)存在奇點(diǎn),無法用于全姿態(tài)結(jié)算,方向余弦沒有奇點(diǎn),但是計(jì)算量大,無法滿足實(shí)時(shí)性要求,四元數(shù)法,計(jì)算量小,無奇點(diǎn)可以滿足飛行器運(yùn)動(dòng)過程中姿態(tài)的實(shí)時(shí)解算,姿態(tài)解算的原理是對(duì)于一個(gè)確定的向量,用不同的坐標(biāo)系表示時(shí),他們所表示的大小和方向一定是相同的。但是由于這兩個(gè)坐標(biāo)系的旋轉(zhuǎn)矩陣存在誤差,那么當(dāng)一個(gè)向量經(jīng)過一個(gè)有誤差存在的旋轉(zhuǎn)矩陣后,在另一個(gè)坐標(biāo)系中肯定和理論值是有偏差的,我們通過這個(gè)偏差來修正這個(gè)旋轉(zhuǎn)矩陣。這個(gè)旋轉(zhuǎn)矩陣的元素是四元數(shù),我們修正的就是四元數(shù),以此來修正姿態(tài)。

19.3 實(shí)驗(yàn)例程

實(shí)驗(yàn)內(nèi)容:利用MPU6050采集到數(shù)據(jù)獲取歐拉角顯示在TFTLCD上。

19.3.1 MPU6050內(nèi)部相關(guān)寄存器

(1) 電源管理寄存器1 (地址0x6B)

7 6 5 4 3 2 1 0
DEVICE_RST SLEEP CYCLE - TEMP_DIS CLKSEL[2:0]

Bit 7:軟件復(fù)位

0:不復(fù)位MPU6050

1:復(fù)位MPU6050

Bit 6:休眠模式

0:正常工作模式

1:睡眠模式

Bit 5:循環(huán)模式

0:默認(rèn)狀態(tài)

1:睡眠模式與喚醒模式交替運(yùn)行

Bit 3:溫度傳感器使能

0:使能溫度傳感器

1:禁用溫度傳感器

Bit 2~Bit 0:選擇系統(tǒng)時(shí)鐘源

000:內(nèi)部8M RC時(shí)鐘源

001:PLL,使用X軸陀螺作為參考

010:PLL,使用Y軸陀螺作為參考

011:PLL,使用Z軸陀螺作為參考

100:PLL,使用外部32.768kHz作為參考

101:PLL,使用外部19.2MHz作為參考

110:保留

111:關(guān)閉時(shí)鐘,保持時(shí)序產(chǎn)生電路復(fù)位狀態(tài)

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 傳感器
    +關(guān)注

    關(guān)注

    2564

    文章

    52792

    瀏覽量

    765395
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    19852

    瀏覽量

    234175
  • MPU6050
    +關(guān)注

    關(guān)注

    39

    文章

    310

    瀏覽量

    72923
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    STM32控制MPU6050使用說明

    STM32 控制MPU6050使用說明 mpu6050是陀螺儀、加速計(jì)和一個(gè)可擴(kuò)展的傳根RM-MPU
    發(fā)表于 07-02 08:05

    STM32控制MPU6050使用說明

    STM32 控制MPU6050使用說明 mpu6050是陀螺儀、加速計(jì)和一個(gè)可擴(kuò)展的傳根RM-MPU
    發(fā)表于 07-06 02:25

    基于stm32mpu6050傳感器實(shí)驗(yàn) 精選資料推薦

    @TOCMPU6050+STM32學(xué)習(xí)筆記學(xué)習(xí)了差不多兩天的mpu6050,參考了很多篇博客還有看一些資料,今晚終于把這個(gè)東西在我的串口顯示
    發(fā)表于 08-17 09:23

    如何對(duì)基于stm32mpu6050傳感器進(jìn)行測(cè)試呢

    如何對(duì)基于stm32mpu6050傳感器進(jìn)行測(cè)試呢?有哪些測(cè)試步驟呢?
    發(fā)表于 11-18 06:59

    基于STM32單片機(jī)+MPU6050傳感器做的載人平衡車

    基于STM32單片機(jī)+MPU6050傳感器做的載人平衡車
    發(fā)表于 01-20 15:54 ?236次下載

    mpu6050六軸傳感器模塊驅(qū)動(dòng)程序源代碼分享

    本文為大家分享了mpu6050六軸傳感器模塊驅(qū)動(dòng)程序源代碼,STM32F1讀取MPU6050的加速度和角度傳感器數(shù)據(jù)的初始化步驟,以及
    發(fā)表于 12-11 14:26 ?3.8w次閱讀
    <b class='flag-5'>mpu6050</b>六軸<b class='flag-5'>傳感器</b>模塊驅(qū)動(dòng)程序源代碼分享

    使用STM32單片機(jī)讀取MPU6050傳感器數(shù)據(jù)的程序免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是使用STM32單片機(jī)讀取MPU6050傳感器數(shù)據(jù)的程序免費(fèi)下載。
    發(fā)表于 07-26 17:35 ?64次下載
    使用<b class='flag-5'>STM32</b>單片機(jī)讀取<b class='flag-5'>MPU6050</b><b class='flag-5'>傳感器</b>數(shù)據(jù)的程序免費(fèi)下載

    MPU6050六軸傳感器實(shí)驗(yàn)的程序和工程文件免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是MPU6050六軸傳感器實(shí)驗(yàn)的程序和工程文件免費(fèi)下載。
    發(fā)表于 09-20 08:00 ?16次下載
    <b class='flag-5'>MPU6050</b>六軸<b class='flag-5'>傳感器</b><b class='flag-5'>實(shí)驗(yàn)</b>的程序和工程文件免費(fèi)下載

    MPU6050傳感器的電路原理圖

    本文檔的主要內(nèi)容詳細(xì)介紹的是MPU6050傳感器的電路原理圖免費(fèi)下載。
    發(fā)表于 05-29 08:00 ?42次下載
    <b class='flag-5'>MPU6050</b><b class='flag-5'>傳感器</b>的電路原理圖

    MPU6050六軸陀螺儀傳感器實(shí)驗(yàn)的資料合集免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是MPU6050六軸陀螺儀傳感器實(shí)驗(yàn)的資料合集免費(fèi)下載。
    發(fā)表于 06-02 08:00 ?29次下載
    <b class='flag-5'>MPU6050</b>六軸陀螺儀<b class='flag-5'>傳感器</b><b class='flag-5'>實(shí)驗(yàn)</b>的資料合集免費(fèi)下載

    基于stm32mpu6050傳感器實(shí)驗(yàn)

    @TOCMPU6050+STM32學(xué)習(xí)筆記學(xué)習(xí)了差不多兩天的mpu6050,參考了很多篇博客還有看一些資料,今晚終于把這個(gè)東西在我的串口顯示
    發(fā)表于 12-06 11:36 ?9次下載
    基于<b class='flag-5'>stm32</b>的<b class='flag-5'>mpu6050</b><b class='flag-5'>傳感器</b><b class='flag-5'>實(shí)驗(yàn)</b>

    STM32獲取MPU6050數(shù)據(jù)

    STM32獲取MPU6050數(shù)據(jù)
    發(fā)表于 12-06 13:06 ?55次下載
    <b class='flag-5'>STM32</b>獲取<b class='flag-5'>MPU6050</b>數(shù)據(jù)

    STM32入門學(xué)習(xí)筆記MPU6050傳感器解析實(shí)驗(yàn)2

    MPU6050是InvenSense公司推出的一款6軸運(yùn)動(dòng)處理芯片,內(nèi)置3軸陀螺儀及3軸速度傳感器,內(nèi)置兩組I2C接口,其中一組用于通信,另一組則用于連接外部磁力傳感器,采用自帶的數(shù)字運(yùn)動(dòng)處理
    的頭像 發(fā)表于 02-16 14:54 ?1487次閱讀

    STM32入門學(xué)習(xí)筆記MPU6050傳感器解析實(shí)驗(yàn)3

    MPU6050是InvenSense公司推出的一款6軸運(yùn)動(dòng)處理芯片,內(nèi)置3軸陀螺儀及3軸速度傳感器,內(nèi)置兩組I2C接口,其中一組用于通信,另一組則用于連接外部磁力傳感器,采用自帶的數(shù)字運(yùn)動(dòng)處理
    的頭像 發(fā)表于 02-16 14:54 ?1471次閱讀

    STM32入門學(xué)習(xí)筆記MPU6050傳感器解析實(shí)驗(yàn)4

    MPU6050是InvenSense公司推出的一款6軸運(yùn)動(dòng)處理芯片,內(nèi)置3軸陀螺儀及3軸速度傳感器,內(nèi)置兩組I2C接口,其中一組用于通信,另一組則用于連接外部磁力傳感器,采用自帶的數(shù)字運(yùn)動(dòng)處理
    的頭像 發(fā)表于 02-16 14:54 ?1884次閱讀