
Premessa:
Accelerometro 3 Assi MMA7361 è un sensore che interfacciato con un Microcontrollore o processore tipo Arduino o Raspberry Pi, può rilevare tramite gli ingressi analogici le varie informazioni di accelerazione per il vostro robot o altri dispositivi.
LISTA DEI MATERIALI:
SCHEMATICO:

CARATTERISTICHE TECNICHE:
- Tensione: 3.3-8V
- Sensibilità selezionabile: ± 1,5 g / 6g
- Bassa potenza: modalità di misurazione @ 500μA, 3μAstandby;
- Alta sensibilità: 800 mV / g @ 1,5 g;
- Interfaccia: Uscita analogica
- Filtro passa basso
- Dimensioni: 37x26mm
Sotto riportato sketch per controllare tramite Arduino le variazioni dell’accelerometro tre assi MMA7361:
#include <math.h>
#include <stdio.h>
#define A_X 5
#define A_Y 4
#define A_Z 3
int val_x,val_y,val_z;
double b;
void setup()
{
pinMode(A_X,INPUT);
pinMode(A_Y,INPUT);
pinMode(A_Z,INPUT);
Serial.begin(9600);
}
void loop()
{
float a;
for (int i=0;i<10;i++)
{
val_x+=analogRead(A_X);delay(2);
val_y+=analogRead(A_Y);delay(2);
val_z+=analogRead(A_Z);delay(2);
}
val_x=val_x/10;
val_y=val_y/10;
val_z=val_z/10;
delay(300);
Serial.print(" X_Axis: ");
Serial.print(val_x);
Serial.print(" Z_Axis: ");
Serial.print(val_z);
Serial.print(" ");
b=(double) (abs(val_x-320))/(abs(val_z-320));
Serial.print(" B: ");
Serial.print(b);
Serial.print(" ");
a=atan(b);
Serial.print(" A: ");
Serial.println(a/3.14*180); //the value of Angle
val_x=0;
val_y=0;
val_z=0;
}




