MPU6050开发 -- 基本概念简介

来源:互联网 发布:内部因素 矩阵分析 编辑:程序博客网 时间:2024/06/07 22:35

上一篇文章简单的介绍了 MPU6050,里面有好多概念不明白,3轴、6轴、9轴、加速度计、磁力针、DMP等等。

都是什么玩意。。。啊!!这道题我不会做,太难了!

带着这些问题,继续看芯片手册。

一、概述

MPU-60X0由以下几个关键块和功能组成:

1、带有16位ADC和信号调理的三轴MEMS速率陀螺仪传感器
2、具有16位ADC和信号调理的三轴MEMS加速度传感器
3、数字运动处理器(DMP)引擎
4、主I2C和SPI(仅MPU-6000)串行通信接口
5、用于第三方磁力计和其他传感器的辅助I2C串行接口
6、时钟
7、传感器数据寄存器
8、FIFO
9、中断
10、数字输出温度传感器
11、陀螺仪和加速度计自检
12、偏见和LDO
13、充电泵

其系统结构图:


接下来就一一的开始看。

二、带有16位ADC和信号调理的三轴MEMS陀螺仪

MPU-60X0由三个独立的振动MEMS速率陀螺仪组成,可检测旋转角度X轴,Y轴和Z轴。 当陀螺仪围绕任何感应轴旋转时,科里奥利效应就会产生电容式传感器检测到的振动。 所得到的信号被放大,解调和滤波产生与角速度成比例的电压。 该电压使用单独的片内数字化16位模数转换器(ADC)对每个轴进行采样。 陀螺仪传感器可以全面范围的被数字编程为每秒±250,±500,±1000或±2000度(dps)。 ADC样本速率可以从每秒8,000个采样点编程到每秒3.9个采样点,并且可由用户选择低通滤波器可实现广泛的截止频率。

三、具有16位ADC和信号调理的三轴MEMS加速度计

MPU-60X0的3轴加速度计为每个轴使用单独的检测质量。 加速沿着一条特定轴在相应的检测质量上引起位移,并且电容式传感器检测到该位移位移有差别。 MPU-60X0的架构降低了加速度计的敏感度制造变化以及热漂移。 当设备放置在平坦的表面上时,将进行测量在X和Y轴上为 0g,在Z轴上为+ 1g。 加速度计的比例因子在工厂进行校准并且在名义上与电源电压无关。 每个传感器都有一个专用的sigma-delta ADC来提供数字输出。 数字输出的满量程范围可以调整到±2g,±4g,±8g或±16g。

四、数字运动处理器(DMP)

嵌入式数字运动处理器(DMP)位于MPU-60X0内部,可从主机处理器中卸载运动处理算法的运算。 DMP从加速度计,陀螺仪以及其他第三方传感器(如磁力计)获取数据,并处理数据。结果数据可以从DMP的寄存器中读取,或者可以在FIFO中缓冲。 DMP可以访问其中的一个MPU的外部引脚,可用于产生中断。
DMP的目的是卸载主机处理器的时序要求和处理能力。通常,运动处理算法应该以高速运行,通常在200Hz左右,以提供低延迟的精确结果。即使应用程序以更低的速率更新,这也是必需的。例如,一个低功率的用户界面可能会以5Hz的速度更新,但运动处理仍然应该以200Hz运行。 DMP可以作为一种工具使用,以最大限度地降低功耗,简化定时,简化软件架构,并在主机处理器上节省宝贵的MIPS,以便在应用中使用。

五、主要 I2C 和 SPI 串行通信接口

MPU-60X0使用 SPI(仅MPU-6000) I2C 串行通信至系统处理器接口。 与系统处理器通信时,MPU-60X0始终充当从属设备 LSB的 I2C 从地址的地址由引脚9(AD0)设置(一般接地)。
MPU-60X0与其主机之间的通信逻辑电平如下:
    MPU-6000:与主机通信的逻辑电平由VDD上的电压设置
    MPU-6050:与主机通信的逻辑电平由VLOGIC上的电压设置

六、辅助I2C串行接口

MPU-60X0 具有一个辅助 I2C 总线,用于与片外3轴数字输出磁力计进行通信或其他传感器。 

两种工作模式:

I2C Master Mode,此时MPU-60X0作为主设备与外接传感器通信; 

Pass-Through Mode, 此时仅用作连接, 允许MPU和外接传感器同时和芯片通信。

因为我没有用到磁力针,这部分不详讲。


到此就搞清楚了:

GY-521MPU6050 是三维角度传感器,为全球首例集成六轴传感器的运动处理组件。

这里的六轴,代表的是它内置了一个三轴 MEMS 陀螺仪、一个三轴 MEMS 加速度计,一个数字运动处理引擎(DMP)。它还有用于第三方的数字传感器接口的辅助 I2C 串行接口,比如当辅助 I2C 串行接口连接到一个三轴磁力计MPU6050 能提供一个完整的九轴融合输出到其主 I2C 端口。 


下图标明了传感器的参考坐标系( XYZ组成右手系)以及 3个测量轴和旋转方向。

旋转的正向可用右手螺旋定则判断

        

七、内部时钟生成

MPU-60X0具有灵活的时钟方案,允许多种内部或外部时钟源用于内部同步电路。这个同步电路包括信号调理和
ADC,DMP以及各种控制电路和寄存器。片内PLL提供了灵活性允许输入产生这个时钟。
产生内部时钟的允许的内部源是:
    内部张弛振荡器
    任何X,Y或Z陀螺(在整个温度范围内变化±1%的MEMS振荡器)
允许的外部时钟源是:
    32.768kHz方波
    19.2MHz方波

生成内部同步时钟源的选择取决于外部的可用性来源以及对功耗和时钟精度的要求。这些要求将是最多的可能因操作模式而异。例如,在一种模式中,最关心的是电量消耗,用户可能希望操作MPU-60X0的数字运动处理器进行处理加速计数据,同时保持陀螺仪关闭。在这种情况下,内部张弛振荡器是一个好时钟选择。但是,在另一种陀螺仪激活的模式下,选择陀螺仪作为时钟源提供更精确的时钟源。时钟精度非常重要,因为时序误差直接影响数字运动处理器(以及任何处理器的扩展)执行的距离和角度计算。还有启动条件要考虑。当MPU-60X0首次启动时,设备使用其内部时钟,直到编程从另一个来源操作。这允许用户例如等待使MEMS振荡器在被选为时钟源之前稳定下来。

八、传感器数据寄存器

传感器数据寄存器包含最新的陀螺仪,加速度计,辅助传感器和温度测量数据。 它们是只读寄存器,可通过串行接口访问。 这些寄存器的数据可以随时读取。 但是,可以使用中断函数来确定新数据何时可用。

九、FIFO

MPU-60X0包含一个可通过串行接口访问的1024字节FIFO寄存器 FIFO配置寄存器决定哪个数据写入FIFO。 可能的选择包括陀螺仪数据,加速计数据,温度读数,辅助传感器读数和 FSYNC 输入。 FIFO 计数器跟踪 FIFO 中包含的有效数据字节数。 FIFO寄存器支持突发读取。 中断功能可用于确定新数据何时可用。

十、中断

中断功能通过中断配置寄存器进行配置。 可配置的项目包括INT引脚配置,中断锁存和清除方法以及中断触发器。 可触发中断的项目有:

(1)时钟发生器锁定到新的参考振荡器(用于切换时钟源); 

(2)可以读取新数据(来自FIFO和数据寄存器); 

(3)加速度计事件中断; 

(4)MPU-60X0 没有收到辅助传感器的确认I2C总线。 

中断状态可以从中断状态寄存器读取。

十一、数字输出温度传感器

片上温度传感器和ADC用于测量MPU-60X0芯片温度。 ADC的读数可以从FIFO或传感器数据寄存器读取

十二、偏压和LDO

偏压和LDO部分产生MPU-60X0所需的内部电源和参考电压和电流。 其两个输入是一个2.375至3.46V的未调整VDD和一个1.71V至VDD(仅MPU-6050)的VLOGIC逻辑参考电源电压。 在REGOUT,LDO输出被一个电容旁路。

十三、电荷泵

板载电荷泵产生MEMS振荡器所需的高电压。 其输出在CPOUT旁边被一个电容旁路。



原创粉丝点击