加速度计和陀螺仪的测量范围、测量精度及单位换算方法

01  说在前面的话 
1. 有不少朋友在做项目的时候经常涉及到加速度计和陀螺仪的原始数据转换为其他的单位的问题,这篇文章梳理和推导一下。
1)加速度计的原始数据 在应用时常见的转换单位有: g、m/s^2 、角度
2)陀螺仪的原始数据 在应用时常见的转换单位有:°/s、red/s、角度
2. 是对 《几种常用的加速传感参数比较》 这篇文件更新,在这篇文章中将不同参加的传感器参数对比和精度参数写在一起,本文专讲精度参数和单位换算
02 测量范围和精度 
    在mems 传感的数据手册中都给出了加速度计和陀螺仪的测量范围和测量精度。有测量范围是可以推算出测量精度的。
不论是加速还是陀螺仪,数据寄存器都是16位的,由于最高位是符号位,故而数据寄存器的输出范围是 -7fff~7fff (-32767~32767)。
陀螺仪:
假如,我们选择陀螺仪的测量范围是 ±2000,在数据手册中  16.4 lsb/(°/s)是 32767/2000 = 16.4 计算出来的
那么寄存器的数字和测量范围的对应关系:
-32767 32767
-2000(°/s) 2000(°/s)
比如,通过寄存器读取陀螺仪的值是1000的,那么我们求角速度 x
加速度:
同样假如,我们选择加速度的测量范围是 ±16,在数据手册中  2048 lsb/g 是 32767/16 = 2048 计算出来的
那么寄存器的数字和测量范围的对应关系:
-32767 32767
-16g 16g
比如,通过寄存器读取陀螺仪的值是1000的,那么我们求重力加速度 x x = 1000 / 2048 = 0.49g  
 03  单位换算
1. 不同量程下精度的计算
加速度计量程为:±2g
获取到的加速度计数据 除以16384
加速度计量程为:±4g
获取到的加速度计数据 除以8192
加速度计量程为:±8g
获取到的加速度计数据 除以4096
加速度计量程为:±16g
获取到的加速度计数据 除以2048
2.可以转化为带物理单位的数据,单位:g(m/s^2)
3. 可以通过三角关系转换为角度
float tanalpha = 0,tanbeta = 0,tangamma = 0;tanalpha = (float)data->rawx / sqrt( ((float)data->rawy * (float)data->rawy + (float)data->rawz * (float)data->rawz) );data->anglex = (float)atan(tanalpha)*57.3;tanbeta = (float)data->rawy / sqrt( ((float)data->rawx * (float)data->rawx + (float)data->rawz * (float)data->rawz) );data->angley = (float)atan(tanbeta)*57.3;tangamma = (float)data->rawz / sqrt( ((float)data->rawy * (float)data->rawy + (float)data->rawx * (float)data->rawx) );data->anglez = (float)atan(tangamma)*57.3;
1. 不同量程下精度的计算
陀螺仪量程为:±250 dps
获取到的陀螺仪数据除以131
陀螺仪量程为:±500 dps
获取到的陀螺仪数据除以65.5
陀螺仪量程为:±1000dps
获取到的陀螺仪数据除以32.8
陀螺仪量程为:±2000dps
获取到的陀螺仪数据除以16.4
2.可以转化为带物理单位的数据,单位:rad/s
//原始数据raw_data[axis_x] = (buf[0] << 8) | buf[1];raw_data[axis_y] = (buf[2] << 8) | buf[3];raw_data[axis_z] = (buf[4] y = (float)remap_data[axis_y] * kscale_acc_16g_range;data->z = (float)remap_data[axis_z] * kscale_acc_16g_range;//red/sdata->x = (float)remap_data[axis_x] * kscale_gyro_2000_range;data->y = (float)remap_data[axis_y] * kscale_gyro_2000_range;data->z = (float)remap_data[axis_z] * kscale_gyro_2000_range;


Windows 7免费升级计划1月31日终止
2020最具潜力的智能家居有什么产品
日常使用工控主板时的注意事项都有哪些
爱普特全国产RISC-V内核高可靠性32位MCU助力智能家电高质量发展
欧姆龙变频器过电流的原因及解决方法
加速度计和陀螺仪的测量范围、测量精度及单位换算方法
为什么AI感知和人类的感知很难比较
如何采购ARM六核RK3399安卓工控开发主板
莎朗股份和昀丰科技均已对外发布了股票停牌公告
电容式触摸IC可以应用于哪些产品上?目前都流行哪些功能
开关电源sw引脚的波形介绍
怎样用树莓派和L298电机驱动器控制直流电机
什么样子的eSIM比较适合物联网蜂窝通信
二极管放大电路基本原理
赛灵思深耕通信市场:目标华为中兴FPGA TOP 1供应商
无铅波峰焊温度设置规范及建议
1976年原装苹果计算机解析
总投资12亿元建设非晶硅薄膜电池项目落户双流
国民技术多模多频段TD-LTE芯片大量生产
SMT贴片加工的手工焊接是怎么进行的?