MPU6050教程(转载)

2023-05-16

如果你想玩四轴,想搞什么空中鼠标,平衡车等待,那么MPU6050真的是太强大了,能做很多东西。但是论坛上MPU6050整个教学过程基本上是没有的,资源共享,不应该只在自己需要资料的时候讲,我向往有一种开发,友好,互相学习的环境。我认识两种人,不分技术,区别在于对待别人问题的态度,一种乐于奉献,一种说多两句都不肯。我看到论坛上面一些帖子只是展示他的成果,下面一大堆评论要看下源程序,楼主都没有理睬,我就无语了,当然商业机密的除外。我知道,如果不是最近在阿莫论坛上面找到的这么多的网友的帮忙,我不可能这么快就搞好MPU6050。但是作为一个初学者,大家还是不要抱着偷懒的心态去学东西,如果你真的是不知道怎么去做,想过,那么你去打扰别人,这样才好,如果你根本不想努力,只想不劳而获,那么我很鄙视你,你也注定没有多大成就。我的QQ:934345073,欢迎有限制的打扰,但是我不会手把手教你,我会给你指明努力的方向。
如果觉得我讲得好,对你有帮助,不要吝啬你的评论,这能让我倍受鼓舞。而且以后多发帖子就好了。
感谢一下各位对我帮助的网友。

玩MPU6050的步骤:
1.学习I2C,I2C就是MPU6050传送数据到单片机的一种协议,类似于USB,当然USB还是比较有难度的。
2.了解MPU6050相关寄存器,有中文版本的,一边学一边看例程就可以获取数据了。
3.然后大概就是姿态融合了吧,把获取的数据进行分析,现在进行到这步。
4.还要学下其他的很多东西??
还是有一段路要走,慢慢来。

I2C

我首先从I2C开始讲起,其实I2C折腾得还挺快的,因为资料很多,那我就在这里告诉大家怎么去下手就好了。你可以去看一些I2C的书籍,例如野火的书,先学会从EEPROM里面写入和读取数据,因为EEPROM写入和读取数据也是根据I2C协议来的。I2C最好的教程我个人觉得是李想的视频,贴上地址:http://v.ku6.com/show/1ZJL4OnYQVq6XAw_ycXvBQ...html,百度一下,很多的。看完之后你绝对懂很多。

I2C有分软件和硬件,软件就你通过对I2C的时钟线和数据线,可能你不知道时钟线和数据线,那还是先去学I2C的基础教程吧,然后再继续看。
软件模拟I2C就是根据下面的图然后再适当的时候给时钟线和数据线高低,具体可以看I2C的协议,这部分李想的视频讲得很好,我就不多讲了。

这是I2C协议的数据手册:
这部分学习的诀窍就是:先写下I2C通讯的一个环节就好了,其他的直接上网找例程就好了,想要用软件模拟出全部的时序当然也可以。

还有一个方式可以用I2C读写数据,就是硬件I2C,硬件I2C就是单片机内部的电路,可以将I2C的时序用硬件电路搞出来,这样子你读写数据就方便很多了。STM32就有硬件I2C,52单片机部分型号应该也有,可以自己去找下,没有试过。STM32硬件I2C可以去看野火的教程。

读取MPU6050原始数据

我学MPU6050的过程受到了论坛上的生来孤独的帮助。他的两篇MPU6050的帖子也很有代表性,静下心来慢慢看吧。其中他的一个很重要的思路就是一步一步,确保每步都对之后就很容易读出正确的数据。

MPU6050读取原始数据:

http://www.amobbs.com/forum.php?mod=viewthread&tid=5574011&highlight=%E6%BA%90%E7%A0%81%2BMPU6050

DMP解析原始数据:

http://www.amobbs.com/thread-5576939-1-1.html

我们对MPU6050进行读写传感器数据就是对MPU6050的寄存器用I2C进行读写。

我们先来认识下MPU6050的硬件吧。

这是MPU6050模块的图片,注意是模块,中间那个才是MPU6050,只有MPU6050是不够的,还要有一些外围电路才行,这就跟52芯片跟最小系统的区别一样。

具体的电路我没有怎么了解。我只知道AD0决定MPU6050的地址,学过I2C的人都知道I2C通讯中从机是要有地址的,以区别多个从机。当AD0管脚接低电平的时候,从机地址是0x68。这里地址我当初还遇到了一个问题,可以看下我当初发的帖子看你会不会也错在这里:http://www.amobbs.com/thread-5580466-1-1.html

我们还要了解下MPU6050的寄存器,这个过程跟学习52单片机没有什么区别,就是配置寄存器,读取数据。

这个是一个51单片机获取数据后在LCD上显示出来的程序:http://yunpan.cn/Qi3Izk9NWTikv (提取码:5815)
记得要把液晶的那些管脚改下,这个是网上的例程,我也是拿过来,将管脚改下就可以用了。

这是一个用野火STM32板子的程序,接线:IIC_SDA.PB11  IIC_SCL.PB10:http://yunpan.cn/Qi3NW9wdZtn7t (提取码:1f0e)

还要两个文档,一个英文,一个中文是关于MPU6050整体的介绍。

 

 

在写之前我们先要读懂上面两个工程部分内容。怎么阅读呢?举个例子。

看下下面的函数,这个函数是初始化MPU6050。

  1. //**************************************
  2. //初始化MPU6050
  3. //**************************************
  4. void InitMPU6050()
  5. {
  6.         Single_WriteI2C(PWR_MGMT_1, 0x00);        //解除休眠状态
  7.         Single_WriteI2C(SMPLRT_DIV, 0x07);
  8.         Single_WriteI2C(CONFIG, 0x06);
  9.         Single_WriteI2C(GYRO_CONFIG, 0x18);
  10.         Single_WriteI2C(ACCEL_CONFIG, 0x01);
  11. }
复制代码

下面这句为什么可以解除休眠状态呢?至于为什么要接触休眠状态就要看MPU6050的datasheet,其实也可以看别人的程序怎么写就可以。

  1. Single_WriteI2C(PWR_MGMT_1, 0x00);        //解除休眠状态
复制代码

首先Single_WriteI2C();是给MPU6050寄存器写入数据的一个函数,需要有寄存器的地址,关于寄存器的描述,下面上次两个文档。一个是中文版,一个是英文版,中文版看得不是很明白,可能翻译得不好,英语可以的可以看下英文版本的。慢慢学着配合有道词典读下英文版的也好。

 

首先找到PWR_MGMT_1是某个寄存器的地址,其值如下

  1. #define        PWR_MGMT_1                0x6B        //电源管理,典型值:0x00(正常启用)
复制代码我们在文档中找到地址为0x6B的寄存器,看下说明,可以知道为什么发送0x00给这个寄存器。慢慢地这样子去读,配合MPU6050的寄存器文档。获取数据也是差不多的。这个过程自己慢慢去看MPU6050的datasheet就好了,方法已经介绍。

如果整个过程顺利的话,你可以用串口获得类似下面的数据。怎么检验这些数据是不是对的,我直接将手放在MPU6050上面,可以看到温度稍微会升高,而且我移动MPU6050的时候,数据会变化。初步证明数据是对的。

 

MPU6050原始数据分析

我有看过几次在论坛上面有人获取原始数据后不知道这些代表什么,甚至不知道为什么要获取这些数据。为什么要获取这些数据呢?看完下一个小节你就会明白。

下面我们来分析下这些数据代表什么。大家可以去看一个第七实验室的文档:

我们配置MPU6050的函数:

  1. <font size="2">void MPU6050_Init(void)
  2. {
  3.         PMU6050_WriteReg(MPU6050_RA_PWR_MGMT_1, 0x00);             //解除休眠状态
  4.         PMU6050_WriteReg(MPU6050_RA_SMPLRT_DIV , 0x07);            //陀螺仪采样率
  5.         PMU6050_WriteReg(MPU6050_RA_CONFIG , 0x06);        
  6.         PMU6050_WriteReg(MPU6050_RA_ACCEL_CONFIG , 0x00);          //配置加速度传感器工作在16G模式
  7.         PMU6050_WriteReg(MPU6050_RA_GYRO_CONFIG, 0x18);     //陀螺仪自检及测量范围,典型值:0x18(不自检,2000deg/s)
复制代码主要是看下面这两行,如果你的配置不同的话,要根据寄存器数据手册和第七实验室的文档结合分析数据才行。下面我根据我的配置分析给大家看下。
  1. PMU6050_WriteReg(MPU6050_RA_ACCEL_CONFIG , 0x00);          //配置加速度传感器工作在16G模式
  2.         PMU6050_WriteReg(MPU6050_RA_GYRO_CONFIG, 0x18);     //陀螺仪自检及测量范围,典型值:0x18(不自检,2000deg/s)
复制代码

 

 

查英文寄存器的手册可以知道我配置的陀螺仪的量程是±2000°/s,再查可知灵敏度是16.4LSB°/s。这里还要知道量程越大,测量精度越低。LSB的意思是最小有效位,为数字输出方式下使用;一般我们可以用mg/LSB来表示灵敏度,例如:mpu6050输出的位数为16位(2的16次方共65536个LSB)对应满量程,当量程为±8g时对应灵敏度就为16g/65536LSB=0.244140625mv/g,取倒数为4096LSB/g,因为mpu6050只能16位输出,所以测量范围越大,对应精度就越低。

根据第七实验室的描述一除可以知道我的陀螺仪绕3个轴的角速度最小是不够1°/s,最多是6°/s左右。当时我是保持静止测得的,不知道MPU6050这样子的结果大家是否满意,不知道大神们是否有办法让这几个值接近0呢??

 

接下来是加速度的分析,同样查英文寄存器手册可以知道我设置的加速度例程是±2g,灵敏度是16384LSB/g,这样子下来加速度在y轴上面是1g,这个是重力加速度,说明我放的时候是y轴在竖直方向上的,其他的两周加速度是接近于0,说明我放得很垂直啊,你也可以换其他的轴在竖直方向上,看那个轴显示出来的值是否是16384左右,我试了,结果是。更加说明我们的结果很对啦。

DMP移植

趁现在有空,先上传个视频让大家一睹为快。

http://v.youku.com/v_show/id_XNzEyNjQ3ODEy.html

你如果是初学者,只是获取了原始数据,那只能告诉你,其实原始数据没有处理没有多大的用处。我们还需要找将那些数据根据数学方面的东西转化为姿态有关的四元数和欧拉角,可以搜下融合算法。我顺便上传个文档,是关于这方面的,不过我还没有看。

 

接下来按照我的理解解释先怎么转化这个过程和转化后的四元数和欧拉角大概是什么,个人理解,不准确的话大神们帮忙指导下。

这个过程有两种办法,一种你可以去学下数学,然后编程把我们上面获取的原始数据转化为四元数和欧拉角;另一种是直接用MPU6050内部的DMP。前者我还没有学,到时可能要学下。DMP是什么呢?我学的时候也是一头雾水,老是看见别人在说DMP,好像很厉害的样子。看下面的解释,是我找的。

DMP的概念:
DMP是什么意思? DMP就是指 MPU6050内部集成的处理单元,可以直接运算出四元数和姿态,而不再需要另外进行数学运算。DMP的使用大大简化了四轴的代码设计。DMP是数字运动处理器的缩写,顾名思义mpu9150(mpu6050)并不单单是一款传感器,其内部还包含了可以独立完成姿态解算算法的处理单元。如在设计中使用DMP来实现传感器融合算法优势很明显。首先,invensense官方提供的姿态解算算法应该比像楼主这样的小白要可靠的多。其次,由DMP实现姿态解算算法将单片机从算法处理的压力中解放出来,单片机所要做的是等待DMP解算完成后产生的外部中断,在外部中断里去读取姿态解算的结果。这样单片机有大量的时间来处理诸如电机调速等其他任务,提高了系统的实时性。
直接上E文吧。标准一点。 DMP and DMP features: The DMP is aunique  hardware feature of InvenSenseMPU  devices  which  is  capable  of  computing  quaternion  data  from  sensor  readings,  performing  device  calibration,and also includes application specific features such as pedometerstep-counting. The DMP image (firmware) is held in volatile memory on the MPUand needs to be updated to the DMP every time the chip powers up to leveragethis functionality.

四元数和欧拉角是什么?我简单理解,简单解释。标准的自己去查下概念。四元数就是4个数,经过 DMP 或 数学+软件 你就可以得到四元数,四元数就是4个数,可以表征姿态,经过几个数学公式(下面编程会展示这几个公式)之后就可以的出姿态,姿态包括pitch,roll,yaw。这几个上传几张图片大家就知道是什么了。

摘自:http://blog.163.com/vipwdp@126/blog/static/150224366201281935518196/

Z轴正方向为前进方向

pitch():俯仰,将物体绕X轴旋转(localRotationX)


yaw():航向,将物体绕Y轴旋转(localRotationY)


roll():横滚,将物体绕Z轴旋转(localRotationZ)

下面一段又是别人的解释。

“方向余弦,欧拉角,四元数东西太多,这里只简单说一下四元数,其他的自己找本惯性技术慢慢看吧。四元数是由一个实数单位和三个虚数单位i,j,k组成并具有实元的数,即q(p0,p1,p2,p3)=p0+p1i+p2j+p3k,其中三个虚实单位i,j,k可看做三维空间的单位向量在导航中,一般用的四元数均为特征四元数,形式如下,q=cosθ/2+nsinθ/2=cosθ/2+sin(θ/2)cosαi+sin(θ/2)cosβj+sin(θ/2)cosγk,n为转轴方向单位矢量,第二个等号后面的形式即为特征四元数,其中标量部分cosθ/2表示转角一半的余弦值,矢量部分表示了转角方向,即以原点为旋转中心,旋转的轴是(α, β, γ),( α^2 + β^2 + γ^2 = 1), 转θ角的旋转,用四元数表示就是,Q = (cos(θ/2); α sin(θ/2), β sin(θ/2), γ sin(θ/2)) 。”

MPU移植指的是要使用DMP功能官方已经给出移植的文档和移植的c文件、h文件等

下面先上资料:

。。。。。。。。。。。。。。。。。。

匿名上位机显示姿态

从上面的视频可以看到我用的上位机是匿名最新版本的,痛心的是匿名的前一版本的上位机不知道为什么在我的电脑上面老是出错,不能打开,搞了我半天多,后来下了新版本的就好了。

错误如下图所示,如果有网友跟我一样的话,自己上百度找办法啊。
 

那又办法获取姿态之后怎么像我那样子在视频那样子玩呢?因为匿名上位机是在是有很多功能,所以要掌握他的上位机还是要看下他的教程。必须要先看下如果没有接触过,不然很多设置你都不知道怎么设置。包括匿名上位机,协议的下载,他的视频里面都有说到,不要问我,我也不想上传。http://www.amobbs.com/forum.php?mod=viewthread&tid=5580829&highlight=%E5%8C%BF%E5%90%8D%E5%9B%9B%E8%BD%B4
看完了之后,你就大概可以看得懂为什么在我的过程中有这么一个函数了。我就不讲解了。我自己也是自己根据他协议写的。
  1. /*函数功能:根据匿名最新上位机协议写的显示姿态的程序
  2. *具体原理看匿名的讲解视频
  3. */
  4. void Data_Send_Status(float Pitch,float Roll,float Yaw,int16_t *gyro,int16_t *accel)
  5. {
  6.         unsigned char i=0;
  7.         unsigned char _cnt=0,sum = 0;
  8.         unsigned int _temp;
  9.         u8 data_to_send[50];
  10.  
  11.         data_to_send[_cnt++]=0xAA;
  12.         data_to_send[_cnt++]=0xAA;
  13.         data_to_send[_cnt++]=0x01;
  14.         data_to_send[_cnt++]=0;
  15.         
  16.         _temp = (int)(Roll*100);
  17.         data_to_send[_cnt++]=BYTE1(_temp);
  18.         data_to_send[_cnt++]=BYTE0(_temp);
  19.         _temp = 0-(int)(Pitch*100);
  20.         data_to_send[_cnt++]=BYTE1(_temp);
  21.         data_to_send[_cnt++]=BYTE0(_temp);
  22.         _temp = (int)(Yaw*100);
  23.         data_to_send[_cnt++]=BYTE1(_temp);
  24.         data_to_send[_cnt++]=BYTE0(_temp);
  25.         
  26.         data_to_send[3] = _cnt-4;
  27.         //和校验
  28.         for(i=0;i<_cnt;i++)
  29.                 sum+= data_to_send[i];
  30.         data_to_send[_cnt++]=sum;
  31.         
  32.         //串口发送数据
  33.         for(i=0;i<_cnt;i++)
  34.                 AnBT_Uart1_Send_Char(data_to_send[i]);
  35. }
复制代码

姿态静止的波形:

 

扰动的姿态波形

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MPU6050教程(转载) 的相关文章

  • STM32F4无人机6轴运动处理组件MPU6050

    目的 学习MPU6050的原理 MPU6050初始化方法 原理 MPU6050是9轴运动处理传感器 它集成了3轴MEMS陀螺仪 xff0c 3轴MEMS加速度计 xff0c 以及一个可扩展的数字运动处理器DMP xff08 Digital
  • MPU6050软件姿态解算

    我是勤劳的搬运工 转自 http blog sina com cn s blog c5a00db10102wd7d html http mini eastday com mobile 180306210610472 html 使用MPU60
  • Jetson nano i2c教程(MPU6050 + PCA9685)

    首先介绍nano板子上的i2c相关的硬件信息 xff1a 安装所需要的i2c库 sudo apt get install l y i2c tools 完成nano中io与i2c设备的硬件接线 本次案例使用的是PCA9685和MPU6050
  • arduino 自平衡小车3\对mpu6050获得的X轴角度和角速度进行卡尔曼滤波

    对mpu6050获得的X轴角度和角速度进行卡尔曼滤波 mpu6050得到的角度值有些值的偏差较大 xff0c 为了使平衡小车更加稳定 xff0c 需要对获得的角度进行优化 xff0c 使用 卡尔曼滤波 xff0c 代码如下 xff1a in
  • ROS读取MPU6050数据

    上一篇讲到使用I2C连接Jetson Nano和MPU6050并使用python读取 xff0c 本次基于roscpp连接读取IMU数据 RTIMULib RTIMULib是本次使用的IMU库 xff0c 支持多种常见的IMU模块 xff0
  • 陀螺仪加速度计MPU6050

    转载自 xff1a http www crazepony com wiki mpu6050 html 陀螺仪 陀螺仪 xff0c 测量角速度 xff0c 具有高动态特性 xff0c 它是一个间接测量角度的器件 它测量的是角度的导数 xff0
  • 模块学习(二)——MPU6050

    去年电赛备赛期间 xff0c 学的STM32标准库 xff0c 那一整个繁琐直接给我劝退了 xff0c 当时学习MPU6050时就非常痛苦 xff0c 代码也看不懂 xff0c 无非抄来抄去 xff0c 然后就是编译 xff0c 改错 xf
  • Arduino操作MPU6050模块

    MPU6050是集成三轴陀螺仪 xff0c 三轴加速度计 xff0c 温度传感器于一体的模块 本文档基于Adafruit MPU6050实现MPU6050模块基本操作 Adafruit MPU6050库 xff1a https github
  • MPU6050 简介

    目录 关于MPU6050芯片 关于小板 关于厂家和DATASHEET 关于漂移 关于角加速度还是角速度 关于精度和量程 xff08 可调 xff0c 可选 xff09 关于功耗 xff0c 陀螺仪 43 加速器工作电流 xff1a 3 8m
  • mpu6050 z轴校准_技术科普丨TOF标定校准知多少?

    近年来 xff0c 手机摄像头很大的一项技术革新是3D技术 xff0c 而很大部分的3D技术依托于TOF摄像头模组 关于TOF模组的原理和应用 xff0c 之前科普文有很多介绍 xff0c 此处不予赘述 今天我们来聊聊TOF的校准标定 TO
  • MPU6050 - 陀螺仪 - 技术总结

    博主福利 xff1a 100G 43 电子设计学习资源包 xff01 http mp weixin qq com mp homepage biz 61 MzU3OTczMzk5Mg 61 61 amp hid 61 7 amp sn 61
  • MPU6050介绍及姿态解算

    1 介绍 xff1a MPU6050 是 InvenSense 公司推出的全球首款整合性 6 轴运动处理组件 xff0c 相较于多组件方案 xff0c 免除了组合陀螺仪与加速器时之轴间差的问题 xff0c 减少了安装空间 xff08 1 x
  • MPU6050温度计算公式

    Tem为16位数据 Tem 43 12412 340 61 Tem 340 43 36 5 Tem每340对应1摄氏度 12412代表0摄氏度
  • MPU6050教程(转载)

    如果你想玩四轴 xff0c 想搞什么空中鼠标 xff0c 平衡车等待 xff0c 那么MPU6050真的是太强大了 xff0c 能做很多东西 但是论坛上MPU6050整个教学过程基本上是没有的 xff0c 资源共享 xff0c 不应该只在自
  • Micropython——九轴传感器(MPU6050)的使用及算法(三)

    简介 xff1a 上篇文章中 xff0c 关于九轴传感器 xff08 MPU6050 xff09 xff0c 学习其如何对其生成的数据偏移进行校准 xff0c 这节课我们来将其中的一个问题来进行解决 关于MPU6050地址问题 xff0c
  • 基于MSP432P401R的MPU6050陀螺仪串口输出姿态角程序

    基于MSP432P401R的MPU6050陀螺仪串口输出姿态角程序 目录 基于MSP432P401R的MPU6050陀螺仪串口输出姿态角程序 前言 一 实验器材 二 硬件资源 1 usb转ttl 2 串口1 波特率 9600 P2 2 P2
  • 【STM32】I2C练习,HAL库读取MPU6050角度陀螺仪

    I2C练习 MPU6050简介 寄存器查询表格 STM32CubeMx配置 代码文件 mpu6050 h文件 mpu6050 c文件 main c文件 总结 MPU6050简介 MPU 6000 6050 为全球首例整合性6轴运动处理组件
  • MPU6050 获取角度理论推导(二)---6轴融合算法

    接着上篇文章 https mp csdn net postedit 101777018 姿态角解算 互补滤波算法及理论推导 一般在程序中 姿态解算的方式有两种 一种是欧拉角法 一种是四元数法 这里不介绍欧拉角法 只介绍四元数法 互补滤波算法
  • MPU6050 获取角度理论推导(三)---9轴融合算法

    再接着上一篇 https mp csdn net postedit 101777722 姿态角解算 互补滤波补充 融合磁力计 前面介绍了互补滤波法的算法流程和程序实现 但是仅仅只是融合了三轴加速度计和三轴陀螺仪的数据解算出姿态 由于机体水平
  • MPU6050使用心得(简单分享一下)

    前言 选用MPU6050做 倾斜检测 功能 前期准备 开发板 正点原子STM32F103 精英版 STM32F103ZET6 模块 GY 521 MPU6050 其他 杜邦线若干 烧录线 FlyMcu Keil5 正点原子开发板配套的套件

随机推荐

  • QtCreator+windows崩溃定位分析

    文章目录 一 Qt程序Release版本记录崩溃信息 xff0c 并定位问题代码1 Release版本程序中生成pdb调试信息文件2 添加代码将程序崩溃时的堆栈保存为crash dmp文件3 使用 WinDbg 分析crash dmp文件
  • Qt项目入门

    一个简单的项目 该项目涉及tcp服务端客户端通信 xff0c 数据库操作 xff0c Log4Qt日志打印 xff0c 不过是关于工业与上位机的一个简单项目处理 xff0c 过程不一定容易理解 xff0c 附上通讯协议 Qt5 12 Min
  • delete this注意事项

    参考资料 在类中调用delete this问题
  • c++较常用的库函数

    不知道原创是谁 xff0c 转载自 xff1a https blog csdn net laozhuxinlu article details 51878947 C 43 43 常用库函数 如图1所示 xff0c 常用数学函数 头文件 in
  • 学习c++的50个网站

    原 xff1a http blog chinaunix net uid 20548989 id 2979724 html 大家都说学Java好找工作 xff0c 可是Java我都遗忘好久了 xff0c 大一大二荒废了 xff0c 没好好练编
  • 数据预处理-数据清洗之numpy创建及属性

    什么是数据预处理 xff1f 数据预处理 xff08 data preprocessing xff09 是指在主要的处理以前对数据进行的一些处理 一般我们得到的数据会存在有缺失值 重复值等 xff0c 在使用之前需要进行数据预处理 它是一系
  • 数据预处理-数据清洗之numpy访问与计算

    如何访问numpy数组中的元素 xff1f 采用索引或者切片的方式 span class token comment 导入包 span span class token keyword import span numpy span clas
  • Unity Spine 换图(通过外部图片)

    在spine中 xff0c 如果想通过外部一张单独的来替换动画中的某个部位 xff0c 需要手动创建Attachment using UnityEngine using System Collections using Spine Unit
  • stm32 esp8266 ota升级-hex合并-烧录-bin生成

    stm32 esp8266 ota系列文章 xff1a stm32 esp8266 ota 快速搭建web服务器之docker安装openresty stm32 esp8266 ota升级 tcp模拟http stm32 esp8266 o
  • 字符串与字符数组的大小

    验证字符串与字符数组的大小 xff0c 代码如下 xff1a include lt stdio h gt int main 字符串与字符数组的区别 int data 61 1 2 3 4 5 char cdata 61 39 h 39 39
  • 数据预处理-数据清洗之pandas库的简单使用

    创建一个series span class token comment 导入包 span span class token keyword import span numpy span class token keyword as span
  • Minimum Snap轨迹规划详解(1)轨迹规划

    一 轨迹规划是什么 xff1f 在机器人导航过程中 xff0c 如何控制机器人从A点移动到B点 xff0c 通常称之为运动规划 运动规划一般又分为两步 xff1a 1 路径规划 xff1a 在地图 xff08 栅格地图 四 八叉树 RRT地
  • RealsenseD415/D435深度相机常用资料汇总

    1 Realsense SDK 2 0 Ubuntu 16 04 安装指导网址 https github com IntelRealSense librealsense blob master doc distribution linux
  • C++STL详解三:迭代器

    C 43 43 STL详解三 xff1a 迭代器 文章目录 C 43 43 STL详解三 xff1a 迭代器前言一 迭代器是什么二 迭代器的案例 xff1a List迭代器的简化版代码1 简单分析List的储存方式2 List的迭代器 三
  • cpp-httplib库的简介与工作流程

    A C 43 43 11 single file header only cross platform HTTP HTTPS library It s extremely easy to setup Just include the htt
  • audiowrite函数用法(matlab)

    audiowrite函数用法 xff08 matlab xff09 一 xff0c 语法 1 2 audiowrite filename y Fs audiowrite filename y Fs Name Value 二 xff0c 解释
  • 5G协议 基本架构 专有名词简称和缩写

    1 先来两个5G架构图 专有名词解释 xff1a 5GC 5G generation core Network 5G核心网络 NG RAN Next generation radio access network 下一代无线接入网络 AMF
  • 加速度计和陀螺仪互补滤波(转载)

    简单易懂的理解 xff1a 这么说吧 xff0c 加速度计计算出来的角度干扰比较大 xff0c 波形比较杂乱 xff0c 陀螺仪融合出来的波形比较平稳但是存在积分漂移 xff0c 所以二者结合 陀螺仪测量角速度积分的基础上利用加速度计测量的
  • 关于精度、分辨率、LSB的理解

    1 精度 是用来描述物理量的准确程度的 精度有关的有两个很重要的指标 xff1a DNL INL DNL xff1a Differencial NonLiner 微分非线性度INL xff1a Interger NonLiner 积分非线性
  • MPU6050教程(转载)

    如果你想玩四轴 xff0c 想搞什么空中鼠标 xff0c 平衡车等待 xff0c 那么MPU6050真的是太强大了 xff0c 能做很多东西 但是论坛上MPU6050整个教学过程基本上是没有的 xff0c 资源共享 xff0c 不应该只在自