ADXL345用起来很简单的。外围电路很简单,参考数据手册就可以了。连好电路后,直接读寄存器就可以得到三轴的加速度值。做倾角计算呢这个应用也算相对比较简单的应用。简单的说,就是测静止物体的重力,这个重力反映在每个轴上的分量就是:Ax=g*cos(a),Ay=g*cos(b),Az=g*cos(c)。其中a,b,c就是X,Y,Z轴与重力方向的夹角。
楼主说的两轴的情况,也是这样的,Ax=g*cos(a),Ay=g*cos(b)=g*sin(a),所以两个一除就是Ax/Ay=tan(a)。
这里所谓算法就是这么简单,如果主机端可以做反三角函数计算的话,那么算角度就很简单了。
目前ADXL345应该是业内分辨率最高的数字加速度了,所角度测量的精度会比较高。
你要用加速度计测倾角,就只能是假设静止不动。运动情况下是没有办法测的。
最多只能这样,采集三轴加速度,就矢量和,如果矢量和在1g,且三轴加速度在一定时间内保持不变,说明处于静止,那么此时计算出的角度有效。否则,则不处于静止,这时就不要计算角度了,因为算出来也是没有意义的。
ADXL345用起来很简单的。外围电路很简单,参考数据手册就可以了。连好电路后,直接读寄存器就可以得到三轴的加速度值。做倾角计算呢这个应用也算相对比较简单的应用。简单的说,就是测静止物体的重力,这个重力反映在每个轴上的分量就是:Ax=g*cos(a),Ay=g*cos(b),Az=g*cos(c)。其中a,b,c就是X,Y,Z轴与重力方向的夹角。
楼主说的两轴的情况,也是这样的,Ax=g*cos(a),Ay=g*cos(b)=g*sin(a),所以两个一除就是Ax/Ay=tan(a)。
这里所谓算法就是这么简单,如果主机端可以做反三角函数计算的话,那么算角度就很简单了。
目前ADXL345应该是业内分辨率最高的数字加速度了,所角度测量的精度会比较高。
你要用加速度计测倾角,就只能是假设静止不动。运动情况下是没有办法测的。
最多只能这样,采集三轴加速度,就矢量和,如果矢量和在1g,且三轴加速度在一定时间内保持不变,说明处于静止,那么此时计算出的角度有效。否则,则不处于静止,这时就不要计算角度了,因为算出来也是没有意义的。
举报