相关商品

  • Arduino Leonardo 莱昂纳多控制器 原装进口
  • Arduino 4WD 移动机器人平台 铝合金小车(黑色) 电子大赛
  • Arduino 4WD 移动机器人平台 铝合金小车电子大赛(12V 100R 金属电机)
  • 1602液晶扩展板 v2.0 Arduino LCD 1602 Keypad Shield
  • Arduino 双H桥直流电机驱动板 步进电机驱动板 机器人配件
  • Arduino传感器 HMC5883L 数字电子罗盘 智能小车 机器人配件
  • USB接口连接线 USB转TTL Arduino 数据下载线 USB cable for Arduino
  • Arduino实验连接线 进口优质彩色单芯杜邦线(20CM)单片机
  • Arduino 4WD 移动机器人平台 铝合金小车(12V 200R金属电机)电子大赛
  • Arduino 12864点阵液晶 51单片机 带字库 带教程讲解 液晶显示屏
  • Arduino LCD12864 点阵液晶扩展板 12864液晶屏 送Arduino库文件
  • Arduino IIC/I2C LCD1602 字符液晶显示器 送库文件 电子积木
  • Arduino Serial LCD1602 字符液晶显示器 串行液晶 电子积木
  • Arduino UNO R3 控制器 ATmega328P-PU+ATmega16U2 arduino 原装进口
  • 原装进口 Arduino Mega ADK 2560 开发板 Arduino uno R3 控制器
  • 奥松机器人 Arduino UNO R3 V5.0传感器扩展板 电子积木 正品保障 传感器套件专配 单片机开发
  • Arduino实验连接线 20P杜邦线 单片机
  • 奥松机器人 4WD铝合金移动小车 Arduino开发平台 编程玩具 新品
  • Arduino 4WD 移动机器人平台 铝合金小车(6V金属电机) 电子大赛
  • Arduino 4WD 移动机器人平台 铝合金小车(银色) 电子大赛
  • Serial Controlled Motor Driver 电机驱动板 Sparkfun 原装进口
  • Arduino IIC LCD2004 I2C接口字符液晶显示器 带库文件 电子积木
  • Arduino Mini 05 Sparkfun原装进口 ATmega328 控制器
  • 12V 1A 开关电源适配器 树莓派 Raspberry Pi 液晶屏 适配器
  • Arduino 双路大功率直流电机驱动扩展板 VNH5019 美国Pololu原装
  • Arduino 直流电机驱动板 MiniMoto DRV8830 IIC/I2C Sparkfun原装
  • RoboClaw 2x7A 电机驱动板 (V5) 直流电机控制器 Pololu原装进口
  • RoboClaw 电机驱动板 2x30A 控制器 智能小车 Pololu 原装进口
  • Starduino UNO R3 控制器 ATmega328P-PU+ATmega32U2 (直插) 兼容Arduino
  • 9轴姿态传感器 LSM9DS1 三轴加速度计 陀螺仪 磁力计 Sparkfun
  • AS-2WD 铝合金小车移动平台 移动机器人 【1:48电机版】 电子大赛
  • AS-2WD 铝合金小车移动平台 移动机器人 【1:120电机版】 电子大赛
  • AS-2WD 铝合金小车移动平台 移动机器人【舵机版】电子大赛
  • 学Arduino玩转机器人制作 爱上 Arduino套件 爱上制作图书 机器人制作知识大全 爱上机器人
  • Arduino 9 Axes Motion Shield 9轴运动扩展板 三轴加速度计
  • Arduino UNO R3 配套亚克力外壳 拼装外壳 透明盒子 专用保护盒子
  • Arduino uno 配套 传感器扩展板 Arduino XBee Sensor Shield
  • Arduino Steven 控制器 ATMEGA32U4 Arduino mini 控制器
  • 原装进口 Arduino Mega 2560 控制器板 Arduino uno升级 A000067
  • 原装 Arduino UNO R3 控制器 ATmega328 单片机 官方中文版
  • Arduino LCD 12864液晶摇杆扩展板 液晶屏 Arduino兼容开发板
  • Arduino ADXL345 三轴加速度传感器 三轴加速度计 电子积木
  • 相关文章

    当前位置: 首页 > 产品评测 > 【产品测评】基于 ADXL345 三轴加速度计的角度测试仪

    【产品测评】基于 ADXL345 三轴加速度计的角度测试仪

    编辑:neil2016-09-27 浏览次数:1379

    三轴加速度传感器采用ADXL345芯片,此芯片应用MEMS技术,具有SPI和IIC数字输出功能,芯片小巧轻薄,功耗低,量程可变,分辨率高。外形尺寸仅为3mm×5mm×1mm;在典型电压Vs=2.5V时功耗电流约为25~130μA,最大量程可达±16g,另可选择±2、±4、±8g 量程,可采用固定的4mg/LSB 分辨率模式,该分辨率可测得0.25°的倾角变化。

           ADXL345非常适合移动设备应用。它可以在倾斜检测应用中测量静态重力加速度,还可以测量运动或冲击导致的动态加速度。该器件提供多种特殊检测功能,活动和非活动检测功能。通过比较任意轴上的加速度与用户设置的阈值来检测有无运动发生。敲击检测功能可以检测任意方向的单振和双振动作。自由落体检测功能可以检测器件是否正在掉落。这些功能可以独立映射到两个中断输出引脚中的一个。

    下面我们就使用ADXL345三轴加速度计制作角度测试仪

    在实验前,先对ADXL345三轴加速度计传感器接口做个简单的介绍

    本模块使用ADXL345的IIC通信接口

    共有四个引脚分别是:+、-、SDA、SCL

    其中+、-是模块的供电Vcc和GND,SDA是IIC的时钟引脚、SCL是IIC的数据引脚

    接下来开始进行试验

    * 准备硬件

    1、Carduino UNO R3 控制器 * 1个

    2、LCD12864 液晶扩展板 * 1个

    3、杜邦线 * 4条

    4、USB数据线 * 1条

    * 硬件连接

    如图所示:本实验接线非常简单,LCD12864液晶扩展板接口是与Carduino UNO R3控制器完全兼容的,将他们对应插接在一起即可,然后连接ADXL345模块,+、- 分别连接到液晶扩展板的 Vcc(红色排针)、GND(黑色排针),SDA 连接 A4,SCL 连接 A5

     

    * 示例代码

    #include "U8glib.h"

    #include   //调用arduino自带的I2C

    #define Register_ID 0     //器件ID

    #define Register_2D 0x2D  //静止、活动、休眠、唤醒

    #define Register_X0 0x32  //X轴数据0

    #define Register_X1 0x33  //X轴数据1

    #define Register_Y0 0x34  //Y轴数据0

    #define Register_Y1 0x35  //Y轴数据1

    #define Register_Z0 0x36  //Z轴数据0

    #define Register_Z1 0x37  //Z轴数据1

    int ADXAddress = 0xA7>>1;  //转换为7位地址

    int X0,X1,X_out;

    int Y0,Y1,Y_out;

    int Z1,Z0,Z_out;

    int valx,valy,valz;

    U8GLIB_MINI12864 u8g(5, 6, 2, 4, 3);

    void draw()

    {

      u8g.setFont(u8g_font_unifont);   

      

      u8g.drawStr( 0,11,"x_angle:");

      u8g.setPrintPos(70,11);

      u8g.print(valx);

      

      u8g.drawStr( 0,36,"y_angle:");

      u8g.setPrintPos(70,36);

      u8g.print(valy);

      

      u8g.drawStr( 0,63,"z_angle:");

      u8g.setPrintPos(70,63);

      u8g.print(valz);

      }

      

    int Readx()

    {

     Wire.beginTransmission(ADXAddress);

      Wire.write(Register_X0);//请求X0数据

      Wire.write(Register_X1);//请求X1数据

      Wire.endTransmission();

      Wire.requestFrom(ADXAddress,2);//发送请求

      if(Wire.available()<=2);

      {

        X0 = Wire.read();//收到X0数据

        X1 = Wire.read();//收到X1数据

        X1 = X1<<8;

        X_out = X0+X1;

      }

      valx = map(X_out,-256,256,-90,90);

      return valx;

    }

      

      int Ready()

      {

       Wire.beginTransmission(ADXAddress);

       Wire.write(Register_Y0);

       Wire.write(Register_Y1);

       Wire.endTransmission();

       Wire.requestFrom(ADXAddress,2);

       if(Wire.available()<=2);

      {

        Y0 = Wire.read();

        Y1 = Wire.read();

        Y1 = Y1<<8;

        Y_out = Y0+Y1;

      }

      valy = map(Y_out,-256,256,-90,90);

      return valy;

      }

      

        int Readz()

      {

       Wire.beginTransmission(ADXAddress);

       Wire.write(Register_Z0);

       Wire.write(Register_Z1);

       Wire.endTransmission();

       Wire.requestFrom(ADXAddress,2);

       if(Wire.available()<=2);

      {

        Z0 = Wire.read();

        Z1 = Wire.read();

        Z1 = Z1<<8;

        Z_out = Z0+Z1;

      }

      valz = map(Z_out,-256,256,-90,90);

      return valz;

      }

      

    void setup() {

      Serial.begin(9600); //设置通信波特率

      Wire.begin();  //初始化I2C

      Wire.beginTransmission(ADXAddress);//发送芯片地址

      Wire.write(Register_2D);//特性控制

      Wire.write(8);//关闭休眠模式

      Wire.endTransmission();//结束发送

    }

     

    void loop() {

      valy = Ready();

      valx = Readx();

      valz = Readz();

        u8g.firstPage();

      do  {

        draw();

      }

      while( u8g.nextPage() );

      delay(200);

    }

    注意此程序需要使用到库文件,大家可以点击此处,进入奥松机器人官方技术论坛,下载模块的示例程序及技术文档

           * 程序效果

    如图所示:在LCD12864液晶扩展板上会实时显示当前传感器的X、Y、Z轴角度

     

     

    ----------------------------------------------------------------------------------------------------------------

    奥松机器人官网:www.robotbase.cn

    微信号:搜索公众号“奥松机器人”

    QQ群: 271230889(讨论,解惑)

    微博:@奥松机器人基地

    ----------------------------------------------------------------------------------------------------------------

    温馨提示:予人玫瑰,手留余香;如果你喜欢这篇文章,不妨转发推荐给你身边的朋友!

     

    • 用户评价

    zxczxcgs
    咨询内容:
    很好
    管理员:
    谢谢您的认可,欢迎您咨询问题呢!
    总计 1 个记录,共 1 页。 第一页 上一页 下一页 最末页
    用户名: 匿名用户
    E-mail:
    评价等级:
    评论内容:
    验证码:
    captcha

    Hi,大家好,我是小奥!

    欢迎来到奥松机器人的世界!

    需要咨询服务请点小奥哦!

    • 销售咨询: 销售咨询
    • 销售咨询: 销售咨询
    • 技术支持: 技术支持
    • 咨询电话:
      0451-86628691
    Top