elec

Páginas: 5 (1058 palabras) Publicado: 23 de febrero de 2014




Unidad Profesional Interdisciplinaria en Ingeniería y Tecnologías Avanzadas


Practica 6: “Acelerómetro"










Objetivo:
Implementar y obtener las curvas de los distintos desplazamientos de cada eje.
Introducción:
-: Es un bus de comunicaciones en serie. Su nombre viene de InterIntegrated Circuit (Inter-Circuitos Integrados). La versión 1.0 data del año 1992 y laversión 2.1 del año 2000, su diseñador es Philips. La velocidad es de 100 kbit/s en el modo estándar, aunque también permite velocidades de 3.4 Mbit/s.
Es un bus muy usado en la industria, principalmente para comunicar microcontroladores y sus periféricos en sistemas integrados (Embedded Systems) y generalizando más para comunicar circuitos integrados entre si que normalmente residen en un mismocircuito impreso.
La principal característica de I²C es que utiliza dos líneas para transmitir la información: una para los datos y por otra la señal de reloj. También es necesaria una tercera línea, pero esta sólo es la referencia.

- MMA8452Q: dispositivo de bajo consumo de energía inteligente, de tres ejes, acelerómetro MEMS capacitivos con 12 bits de resolución. Este acelerómetro estárepleto de funciones integradas con opciones programables de usuario flexibles, configurables a dos pines de interrupción. Funciones de interrupción embebidas que permiten el ahorro de energía en general para aliviar el procesador central de forma continua datos de las encuestas.
El MMA8452Q tiene usuario seleccionables escalas completas de ± 2 g / ± 4g / ± 8g con los datos de paso alto filtrados, asícomo datos no filtrados disponibles en tiempo real. El dispositivo puede ser configurado para generar señales de interrupción de despertador inercial de cualquier combinación de las funciones integradas configurables que permiten la MMA8452Q para supervisar los acontecimientos y permanecer en un modo de bajo consumo durante los períodos de inactividad.



Desarrollo:
Obtención de datos pormatlab:
configurando puerto y dando de alta “s” como objeto asociado al “com1”
s=serial('COM1', 'BaudRate', 9600);

abriendo el puerto
fopen(s);

lee una linea de texto y la almacena en "datos" no incluye terminador
datos = fgetl(s);

escribe datos en el puerto en binario
fwrite (s,datos);

cerrando el puerto
fclose(s);
borrando el objeto de memoria
delete(s)
clear sPrograma en matlab:

function [ ] = leshero(s )

fopen(s);
z=zeros(1,3);%asignación de matrices
a=zeros(1,3);
b=zeros(1,3);

for i=1:1200%1200 muestreos
a=fgets(s);%obtiene datos del 'com'
b=str2num(a);%convierte una cadena en número
z(i,1)=b(1,1);%asignación de datos a una sla matríz
z(i,2)=b(1,2);
z(i,3)=b(1,3);
end
x=zeros(1);%matríces para cada ejey=zeros(1);
w=zeros(1);

for i=1:1200
x(1,i)=z(i,1);%asignación de cada eje a cada martríz
y(1,i)=z(i,2);
w(1,i)=z(i,3);
end
q=1:1200;
subplot(3,1,1)%impresiónes de cada dato
plot(q,x);
subplot(3,1,2)
plot(q,y);
subplot(3,1,3)
plot(q,w);
end



-Programa en Arduino para el acelerómetro:
#include // Used for I2C

// The SparkFun breakout boarddefaults to 1, set to 0 if SA0 jumper on the bottom of the board is set
#define MMA8452_ADDRESS 0x1D // 0x1D if SA0 is high, 0x1C if low

//Define a few of the registers that we will be accessing on the MMA8452
#define OUT_X_MSB 0x01
#define XYZ_DATA_CFG 0x0E
#define WHO_AM_I 0x0D
#define CTRL_REG1 0x2A

#define GSCALE 2 // Sets full-scale range to +/-2, 4, or 8g. Used to calc real gvalues.

void setup()
{
Serial.begin(57600);
Wire.begin(); //Join the bus as a master
initMMA8452(); //Test and intialize the MMA8452
}

void loop()
{
int accelCount[3]; // Stores the 12-bit signed value
readAccelData(accelCount); // Read the x/y/z adc values

// Now we'll calculate the accleration value into actual g's
float accelG[3]; // Stores the real accel...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Elec
  • elec
  • Elec
  • Elec
  • Elec
  • ELEC
  • Elec
  • elec

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS