因为新抄板,也是改板涉及到了陀螺仪的使用,所以这里就开始再研究一下陀螺仪的使用了。之前设计擦玻璃机器人时候用过,不过那会只用到了2个方向,这会用到了3个方向,又去找,不过好像原先设计资料不知道丢哪里去了,这里再新查找一下。并顺便贴过来。下面全部是从网上扒过来的,暂时在忙于改电路,也就不深入分析了。
MPU-6050
MPU-60X0是世界上第一款集成 6 轴MotionTracking设备。它集成了3轴MEMS陀螺仪,3轴MEMS加速度计,以及一个可扩展的数字运动处理器 DMP( DigitalMotion Processor),可用I2C接口连接一个第三方的数字传感器,比如磁力计。扩展之后就可以通过其 I2C或SPI接口输出一个9轴的信号( SPI接口仅在MPU-6000可用)。 MPU-60X0也可以通过其I2C接口连接非惯性的数字传感器,比如压力传感器。
MPU-60X0对陀螺仪和加速度计分别用了三个16位的ADC,将其测量的模拟量转化为可输出的数字量。为了精确跟踪快速和慢速的运动,传感器的测量范围都是用户可控的,陀螺仪可测范围为±250, ±500, ±1000, ±2000°/秒( dps),加速度计可测范围为±2, ±4,±8, ±16g。
一个片上1024字节的FIFO,有助于降低系统功耗。和所有设备寄存器之间的通信采用 400kHz的 I2C接口或 1MHz的 SPI接口( SPI仅MPU-6000可用)。 对于需要高速传输的应用, 对寄存器的读取和中断可用 20MHz的SPI。另外,片上还内嵌了一个温度传感器和在工作环境下仅有±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。
我们打算使用stm32,所以这里就使用单片机的3.3V作为供电电压,选用就是3.3V了。
数字输出6轴或9轴的旋转矩阵、四元数(quaternion)、欧拉角格式(EulerAngleforma)的融合演算数据。
具有131 LSBs/°/sec 敏感度与全格感测范围为±250、 ±500、 ±1000与±2000°/sec 的3轴角速度感测器(陀螺仪)。
可程式控制,且程式控制范围为±2g、 ±4g、 ±8g和±16g的3轴加速器。
移除加速器与陀螺仪轴间敏感度,降低设定给予的影响与感测器的飘移。
数字运动处理(DMP:DigitalMotion Processing)引擎可减少复杂的融合演算数据、 感测器同步化、 姿势感应等的负荷。 运动处理数据库支持 Android、 Linux与Windows 内建之运作时间偏差与磁力感测器校正演算技术,免除了客户须另外进行校正的需求。
以数位输出的温度传感器
以数位输入的同步引脚(Syncpin)支援视频电子影相稳定技术与GPS
可程式控制的中断(interrupt)支援姿势识别、摇摄、画面放大缩小、滚动、快速下降中断、 high-G中断、零动作感应、触击感应、摇动感应功能。
VDD供电电压为2.5V±5%、 3.0V±5%、 3.3V±5%; VDDIO为1.8V±5%
陀螺仪运作电流: 5mA, 陀螺仪待命电流: 5uA; 加速器运作电流: 500uA, 加速器省电模式电流: 40uA@10Hz
高达 400kHz 快速模式的 I2C,或最高至 20MHz 的 SPI 串行主机接口(serial hostinterface)
内建振荡器在工作温度范围内仅有±1%频率变化。 可选外部时钟输入 32.768kHz或19.2MHz
下面是管脚定义:
下面是电路原理设计:
这里图也是别人的,我目前暂时在弄自己的电路图,至于之后需要的等编程之后再说。