Description
Vous êtes-vous déjà demandé comment votre smartphone fait la différence entre le haut et le bas ? C’est l’une des fonctionnalités les plus intéressantes des smartphones d’aujourd’hui. Ils sont tous dotés d’un petit appareil appelé accéléromètre intégré au circuit qui peut détecter lorsque vous l’inclinez d’un côté à l’autre. C’est ainsi que votre smartphone détermine automatiquement quand passer de la disposition de l’écran du mode portrait au mode paysage.
Puce de capteur : ADXL335.
Tension de fonctionnement : 3 V-5 V.
Interface : sortie analogique.
Température de fonctionnement : -40 +85. Module accéléromètre à trois axes
avec sortie X, Y, Z. Champ magnétique.
Prise en main du module ADXL335 Accéléromètre à sortie analogique 3 axes Transducteur angulaire
Ce tutoriel vous montre comment lire l’ accéléromètre ADXL335 et recevoir les valeurs dans le moniteur série du logiciel Arduino (IDE) ou une autre application qui reçoit des données via le port série.
Étape 1 : Matériel requis
Brochage de l’accéléromètre ADXL335
Avant de plonger dans le raccordement et l’exemple de code, examinons d’abord son brochage.
Étape 2 : Connexion du matériel
Les connexions sont assez simples. Commencez par placer l’accéléromètre sur votre plaque d’essai. Connectez la broche VCC à la broche 5 V de l’Arduino et connectez la broche GND à la broche de terre de l’Arduino. Connectez également les sorties X, Y et Z aux broches analogiques A0, A1 et A2 de l’Arduino.
Pour obtenir des résultats précis, nous devons modifier la tension de référence analogique (AREF) de l’Arduino. Cela peut être fait en connectant la broche 3,3 V de l’Arduino à la broche AREF.
Lorsque vous avez terminé, vous devriez avoir quelque chose qui ressemble à l’illustration ci-dessous.
Étape 3 : Téléchargez l’exemple de croquis
/*
ADXL3xx
Reads an Analog Devices ADXL3xx accelerometer and communicates the
acceleration to the computer. The pins used are designed to be easily
compatible with the breakout boards from SparkFun, available from:
http://www.sparkfun.com/commerce/categories.php?c=80
The circuit:
- analog 0: accelerometer self test
- analog 1: z-axis
- analog 2: y-axis
- analog 3: x-axis
- analog 4: ground
- analog 5: vcc
created 2 Jul 2008
by David A. Mellis
modified 30 Aug 2011
by Tom Igoe
This example code is in the public domain.
http://www.arduino.cc/en/Tutorial/ADXL3xx
*/
// these constants describe the pins. They won't change:
const int groundpin = 18; // analog input pin 4 -- ground
const int powerpin = 19; // analog input pin 5 -- voltage
const int xpin = A3; // x-axis of the accelerometer
const int ypin = A2; // y-axis
const int zpin = A1; // z-axis (only on 3-axis models)
void setup() {
// initialize the serial communications:
Serial.begin(9600);
// Provide ground and power by using the analog inputs as normal digital pins.
// This makes it possible to directly connect the breakout board to the
// Arduino. If you use the normal 5V and GND pins on the Arduino,
// you can remove these lines.
pinMode(groundpin, OUTPUT);
pinMode(powerpin, OUTPUT);
digitalWrite(groundpin, LOW);
digitalWrite(powerpin, HIGH);
}
void loop() {
// print the sensor values:
Serial.print(analogRead(xpin));
// print a tab between values:
Serial.print("\t");
Serial.print(analogRead(ypin));
// print a tab between values:
Serial.print("\t");
Serial.print(analogRead(zpin));
Serial.println();
// delay before next reading:
delay(100);
}
REMARQUE : si vous obtenez des « 223 » erronés dans le programme, le problème vient de vos caractères « et ». Remplacez-les par des guillemets ordinaires « . Et tout devrait bien se passer.
Étape 4 : Test du circuit
L’image suivante montre la sortie de l’accéléromètre sur le moniteur série à différentes positions .