Crowtail- 3-Axis Digital Gyro

From Elecrow
Jump to navigation Jump to search

Description

Crowtail - 3-Axis Digital Gyro module based on ITG 3200. It is the world’s first single-chip, digital-output, 3-axis MEMS motion processing gyro optimised for gaming, 3D mice, and motion-based remote control applications for Internet connected Digital TVs and Set Top Boxes. The ITG-3200 features three 16-bit analog-to-digital converters (ADCs) for digitising the gyro outputs, a user-selectable internal low-pass filter bandwidth, and a Fast-Mode I2C (400kHz) interface.

Model: CT0058ADG

Crowtail- 3-Axis Digital Gyro (section).JPG

Specification

  • Supply Voltage: 3.3V, 5V
  • Operation Current: 6.5mA
  • Standby current: 5μA
  • Sensitivity: 14 LSBs per °/sec
  • Full scale range: ±2000°/sec
  • Acceleration: 10,000g for 0.3ms
  • On-chip temperature sensor
  • Crowtail compatible interface
  • Three integrated 16-bit ADCs
  • ±2000°/s full scale range and 14.375 LSBs per °/s sensitivity
  • Integrated amplifiers and low-pass filters
  • Hermetically sealed for temp and humidity resistance
  • Dimensions(mm):20.0(L)x20.0(W)x9.8(H)

Usage

Here below we show you how to get data from this digital gyro,the data is in the unit of rad/s.
Crowtail- 3-Axis Digital Gyro

1. Plug it onto the I2C port of your Crowtail- Base Shield.

2. Download the Crowtail- 3-Axis Digital Gyro Program and unpack it into arduino-1.0\libraries in your Arduino installation folder.

3. Open the demo code directly by the path:File -> Example -> 3-Axis_Digital_Gyro -> ITG3200_gyro.

4. Upload the code and open the serial monitor.

#include <Wire.h>
#include "ITG3200.h"

ITG3200 gyro;
void setup()
{
    Serial.begin(9600);
    gyro.init();
    gyro.zeroCalibrate(200,10);//sample 200 times to calibrate and it will take 200*10ms
}

void loop()
{
    Serial.print("Temperature = ");
    Serial.print(gyro.getTemperature());
    Serial.println(" C");

    int16_t x,y,z;
    gyro.getXYZ(&x,&y,&z);
    Serial.print("values of X , Y , Z: ");
    Serial.print(x);
    Serial.print(" , ");
    Serial.print(y);
    Serial.print(" , ");
    Serial.println(z);

    float ax,ay,az;
    gyro.getAngularVelocity(&ax,&ay,&az);
    Serial.print("Angular Velocity of X , Y , Z: ");
    Serial.print(ax);
    Serial.print(" , ");
    Serial.print(ay);
    Serial.print(" , ");
    Serial.print(az);
    Serial.println(" degrees per second");
    Serial.println("*************");
    delay(1000);
}

5. Open the serial monitor to check the result.
3-Axis Digital Gyro.jpg

Resource