大家好!

我使用ADXL345测量物体倾斜角度。测试结果是X、Y、Z三个轴输出倾角跳动比较大。具体情况如下:

1. ADXL345使用3.3伏电源,使用TI的低PSRR LDO单独给ADXL345供电,型号是LP5907-3.3

2. ADXL345与MCU采用4线SPI相连接。

3. ADXL345初始配置:

writeADXL345(BW_RATE,0x09);//正常功耗,速率50Hz

writeADXL345(POWER_CTL,0x08);//测量模式,禁止休眠。

writeADXL345(INT_ENABLE,0x00);//禁止中断

writeADXL345(DATA_FORMAT,0x08);//全分辨率,数据右对齐,±2g

writeADXL345(FIFO_CTL,0x00);//FIFO旁路模式

4. 倾斜角度计算公式参照应用笔记AN-1057.公式代码如下:

x_ang = (uint16)(atan(x_aver/sqrt(y_aver * y_aver + z_aver * z_aver)) * pi_ang * 100 + 0.5);

y_ang = (uint16)(atan(y_aver/sqrt(x_aver * x_aver + z_aver * z_aver)) * pi_ang * 100 + 0.5);

z_ang = (uint16)(atan(sqrt(x_aver * x_aver + y_aver * y_aver)/z_aver) * pi_ang * 100 + 0.5);

pi_ang是180/π,乘100加0.5是为了取两位小数并且四舍五入。

5. 单片机每400ms读取一次数据,并从串口送出,以下是结果:

X轴倾斜角度:+10.69° Y轴倾斜角度:-02.44° Z轴倾斜角度:+10.97°

X轴倾斜角度:+10.91° Y轴倾斜角度:-02.21° Z轴倾斜角度:+11.14°

X轴倾斜角度:+10.91° Y轴倾斜角度:-02.21° Z轴倾斜角度:+11.14°

X轴倾斜角度:+10.91° Y轴倾斜角度:-02.43° Z轴倾斜角度:+11.18°

X轴倾斜角度:+10.69° Y轴倾斜角度:-01.99° Z轴倾斜角度:+10.88°

X轴倾斜角度:+10.91° Y轴倾斜角度:-02.21° Z轴倾斜角度:+11.14°

X轴倾斜角度:+10.69° Y轴倾斜角度:-02.44° Z轴倾斜角度:+10.97°

X轴倾斜角度:+10.69° Y轴倾斜角度:-02.22° Z轴倾斜角度:+10.93°

X轴倾斜角度:+10.69° Y轴倾斜角度:-02.22° Z轴倾斜角度:+10.93°

X轴倾斜角度:+10.69° Y轴倾斜角度:-02.22° Z轴倾斜角度:+10.93°

X轴倾斜角度:+10.52° Y轴倾斜角度:-01.78° Z轴倾斜角度:+10.67°

X轴倾斜角度:+11.13° Y轴倾斜角度:-02.21° Z轴倾斜角度:+11.35°

X轴倾斜角度:+10.73° Y轴倾斜角度:-02.22° Z轴倾斜角度:+10.97°

X轴倾斜角度:+10.74° Y轴倾斜角度:-02.00° Z轴倾斜角度:+10.93°

读取以上数据时,倾角模块是禁止不动,周围也没有人走动,或者振动。从数据中可以看出,小数点后数据变化很大,请帮我看看能用什么办法解决。我的主要用途是测量两轴的倾斜角度,测量范围±15度,测量精度0.02度。

adxl345取出值怎么算角度_ADXL345测量倾斜角度数据跳动相关推荐

  1. adxl345取出值怎么算角度_关于ADXL345做转向灯的角度转换问题

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include < Metro.h > #include //调用arduino自带的I2C库 #include "FastLED ...

  2. adxl345取出值怎么算角度_adxl345角度测量文档

    /* 附: ADXL345 角度测量和 LCD12864 液晶显示程序 AT89S52 单片机 +11.0592M 晶振 STC12C5A60S2 单片机 +12M 晶振 两种型号单片机本人均亲自测试 ...

  3. adxl345取出值怎么算角度_ADXL345测倾斜角(程序)

    #include #include      //Keil library #include     //Keil library #include #define   uchar unsigned ...

  4. adxl345取出值怎么算角度_ADXL345直接输出角度值C51程序.doc

    ADXL345直接输出角度值C51程序 好的开始时成功的一半 --ADXL345测角度 硬件准备 杜邦线 5.1K电阻 最小单片机系统(P1带上拉电阻) 89C51 GY-29-ADXL345加速度计 ...

  5. adxl345取出值怎么算角度_ADXL345角度转换疑问

    回复[14楼]正点原子: ------------------------------- 原子哥 求助  我使用战舰开发板的例程三轴读取ADXL345的例程  模拟串口我改成B0 B1 B6B2  B ...

  6. adxl345取出值怎么算角度_ADXL345直接输出角度值C51程序

    //*************************************** // GY-29 ADXL345 IIC测试程序 // 使用单片机STC89C51 // 晶振:11.0592M / ...

  7. adxl345取出值怎么算角度_adxl345怎样通过想,x,y,z的输出计算出角度值

    匿名用户 1级 2012-07-07 回答 勾股定理求 // 加速的X轴用来算俯仰角;Y轴算横滚角 u16 Gx; u16 Gy; u16 Gz; float Gxangle: float Gyang ...

  8. adxl345取出值怎么算角度_改了别人的程序和一些自己的研究,用ADXL345测量角度成功...

    #include   //调用arduino自带的I2C库 #define Register_ID 0 #define Register_2D 0x2D #define Register_X0 0x3 ...

  9. adxl345取出值怎么算角度_怎么通过adxl345输出值计算出倾角?

    怎么通过adxl345输出值计算出倾角? 传感器常见问题 / 2012-12-23 此方法是通过勾股定理计算的,请参考以下程序: // 加速的X轴用来算俯仰角;Y轴算横滚角 u16 Gx; u16 G ...

  10. STM32测量倾斜角度

    介绍 在本文中,我们将学习如何使用6轴陀螺仪/加速度传感器和STM32F103C8微控制器测量倾斜角度. 这可以通过简单地将6轴陀螺仪/加速度传感器与STM32接口来实现. 加速度计发送X,Y和Z加速 ...

最新文章

  1. C语言中低位存放,C语言 大端小端存储解析以及判断方法
  2. Spring AOP(一):概览
  3. 【专题介绍】视频内容生产与消费创新(Part1)
  4. springboot调用python脚本_Springboot实现上传文件接口,使用python的requests进行组装报文上传文件的方法...
  5. C语言_选择结构的程序设计
  6. 数据库原理--事务(一)
  7. 2019 蓝桥杯省赛 B 组模拟赛(一) 程序设计:后缀字符串 ( STL map 和 substr()函数的应用)
  8. 小米路由器4a千兆版修改sn和关闭电源led灯
  9. oracle报1653解决办法,ORA-1653的问题
  10. 数据库文件放在服务器哪里,服务器上数据库文件存放位置
  11. 英语语法回顾7——状语从句特殊用法
  12. AGI (Analytical Graphics Inc.)
  13. springboot访问下载/resource/static下的静态资源;下载excel文件损坏,打不开
  14. 基于Android的校园二手闲置物品交易系统设计与实现
  15. 项目经理如何开展工作
  16. [USACO2.1]Healthy Holsteins 健康的荷斯坦奶牛 题解(DFS/BFS详解)
  17. DY__ac_signature
  18. python中使用virtualenv库创建虚拟环境的问题
  19. 雅思词汇之万词plan:第1-365天
  20. 快来看,这些心理学家与诺贝尔奖有关系

热门文章

  1. java的重载和重写实例_java中重写和重载的区别
  2. PADS(4)——PADS Logic原理图设计技巧
  3. pdf裁边app_PDF裁剪怎么使用?
  4. 二项分布的期望方差证明_二项分布的期望和方差
  5. JTT808、JTT1078、TJSATL主动安全踩坑记录
  6. 博科Brocade 6505光纤交换机
  7. System进程的启动流程第一部分
  8. 【计算机体系结构】实验4指令调度与分支延迟
  9. 最新:2021年7月全国程序员平均薪资出炉!你还坐得住吗?
  10. ReflectionException: There is no setter for property named ‘createTime‘ in ‘class XXX‘