Elaborar: Un gimnasio interactivo motivación sistema (9 / 10 paso)

Paso 9: Programación tu ropa | Código completo de acelerómetro

Abajo está el código completo de Arduino para el acelerómetro:

/*
Resolver!
Aquí está el código utilizado para crear un sistema usable que un acelerómetro se utiliza para contar el número de
pasos que un usuario toma. El sistema almacena este valor en una variable y salidas de una presentación visual basada en la
número.
A continuación es el código utilizado. */

a continuación establece las variables y los pernos utilizados en el código

las siguientes describen los pasadores utilizados para las almohadillas de luz

int led = 5;
int led2 = 9;
led3 int = 11;
/ / int pasos = 7;

estas constantes describen los pines utilizados para el acelerómetro:
const int xpin = A5; / / eje x del acelerómetro
const int ypin = A2; / / eje
const int zpin = A3; / / eje z (sólo en modelos de 3-ejes)

número de milisegundos entre las lecturas
int sampleDelay = 500;
/ / la variable global "pasos" describe la variable utilizada para determinar la salida de luces:

pasos de int = 0;

SoftwareSerial xbee(5,6);

la configuración «comienza» todo:

void setup() {}

inicializar la comunicación serial:
Serial.Begin(9600);
/ / configurar lo Xbee serie a 9600
XBee.Begin(9600);
/ / inicializar los pines digitales como salida y los pernos del acelerómetro como entradas:
pinMode (led, salida);
pinMode (led2, salida);
pinMode (led3, salida);
pinMode (xpin, entrada);
pinMode (ypin, entrada);
pinMode (zpin, entrada);

}

una y otra vez funciona para siempre la rutina bucle:

void loop() {}

código de acelerómetro para determinar la variable 'pasos'

se utilizan las siguientes variables de flot para ayudar a determinar el umbral de "pasos":

oldy flotador = 0;
umbral de flotador = 0;
//read el valor de xbee
sensorValue = xbee.read();
Puerto de //serial de que imprime a lo que fue leído para confirmar que ha recibido
Serial.Print("; Valor del sensor = ");
Serial.Write(senorValue);
/ / pin lecturas para x, y, z:
int x = analogRead(xpin);
Delay(1); //add un pequeño retardo entre lecturas de pin. He leído que debería hacer esto pero no han probado la importancia
int y = analogRead(ypin);
Delay(1); //add un pequeño retardo entre lecturas de pin. He leído que debería hacer esto pero no han probado la importancia
int z = analogRead(zpin);

/ * zero_G es la lectura que esperamos del sensor cuando no detecta ninguna aceleración. Reste este valor del sensor de lectura para obtener un sensor cambiado de puesto de lectura. */
Float zero_G = 512;

/ * escala es el número de unidades que esperamos que la lectura del sensor para cambiar cuando cambia la aceleración a lo largo de un eje de 1G. Dividir el sensor cambiado de puesto de lectura en la escala para obtener aceleración en Gs. * /
escala de flotador = 102.3;

para este proyecto, no estamos imprimiendo los valores de 'x', pero si quieres imprimir:
Serial.Print (((float) x - zero_G) / escala);
Serial.Print("\t");

para este proyecto, estamos imprimiendo los valores de 'y', esto le ayudará a determinar el umbral:
umbral = oldy - ((float) y - zero_G) / escala;
Serial.Print ("y =");
Serial.Print (((float) y - zero_G) / escala);
Serial.Print("; umbral = ");
Serial.println(THRESHOLD);

para este proyecto, no estamos imprimiendo los valores de 'z', pero si quieres imprimir:
Serial.Print("\t");
Serial.Print (((float) z - zero_G) / escala); Serial.Print("\n");

Si (umbral > 1.3)
pasos ++;
Serial.Print ("pasos =");
Serial.Print(STEPS);

código utilizado para determinar qué conjunto de luces a la salida:
Si (pasos < = 5) {}
digitalWrite (led, alto); Encienda el primer LED pantalla (alto es el nivel de voltaje)
/ / delay(1000); / / espera por un segundo
digitalWrite (led, baja); Apague la primera pantalla de LED por lo que la tensión baja
Delay(1000); Espere un segundo

SoftwareSerial.println("A");
}
else if ((steps > 5) & & (pasos < 10)) {}
digitalWrite (led2, HIGH); a su vez el segundo LED Mostrar en (alto es el nivel de voltaje)
/ / delay(1000); / / espera por un segundo
digitalWrite (led2, LOW); Apague la segunda pantalla de LED por lo que la tensión baja
Delay(1000); Espere un segundo

SoftwareSerial.println("B");

}
else if (pasos > 10) {}
digitalWrite (LED 3, alto); a su vez el tercer indicador LED en (alto es el nivel de voltaje)
/ / delay(1000); / / espera por un segundo
digitalWrite (LED 3, bajo); Apagar la pantalla de LED tercer haciendo que la tensión baja
Delay(1000); Espere un segundo

SoftwareSerial.println("C");
}

Else {}
return 0;
}
/ retardo antes de la lectura siguiente:
Delay(sampleDelay);
}

Artículos Relacionados

Dibujar-MIDI controller con tinta conductora

Dibujar-MIDI controller con tinta conductora

'Draw It Yourself' es un controlador MIDI que utiliza tinta conductora como botones. Está basado en Arduino y utiliza un sensor capacitivo (dos, en realidad) para determinar si los botones dibujados son ser tocados o no.http://sanidanz.tumblr.com/dra
Niño pequeño sistema interactivo de LED (en progreso)

Niño pequeño sistema interactivo de LED (en progreso)

Estoy trabajando en dos proyectos en paralelo y quiero organizar lo que tengo en este proyecto antes de empezar a documentar el proyecto.Niño pequeño sistema interactivo de LED (en curso)Estimado: completa el 50%.Una vez terminada la voluntad del pro
Modelo de Sistema Solar mecánico un Orrery de madera contrachapada

Modelo de Sistema Solar mecánico un Orrery de madera contrachapada

Este proyecto explora el uso de madera contrachapada para hacer mecánica, decorativos y piezas estructurales.Este instructable es sobre cómo construir un escritorio orrery. Un orrery es un modelo mecánico del movimiento y posición de los planetas de
Sistema de alerta ambiental

Sistema de alerta ambiental

¿Qué es ese olor? Es gas nocivo por supuesto! Si estás en un ambiente donde hay una posibilidad de liberación gaseosa que sería algo no respiras, ¿por qué no construir un sistema automático de detección y alerta? El diseño para el sistema de alerta a
Modelo interactivo cometa 67P/Churyumov-Gerasimenko 67P/C-G

Modelo interactivo cometa 67P/Churyumov-Gerasimenko 67P/C-G

Cómo hacer un modelo interactivo del cometa 67P/C-G.Lo que me conduce loco es que si vas a cualquier tienda de juguetes en la sección educativa de la misma, usted puede encontrar todo lo relacionado con lo planetas/satélites/estrellas que pertenecen
S.Alt ciudad: Código QR Mural interactivo

S.Alt ciudad: Código QR Mural interactivo

Ciudad de S.Alt es un mural para el centro de Syracuse que se celebra simultáneamente el pasado industrial de Siracusa y su estado actual como un centro artístico. A primera vista, la imagen es histórica, que representa a un centro de distribución de
Sistema de energía solar con los componentes de un ciclo de arriba.

Sistema de energía solar con los componentes de un ciclo de arriba.

Alcance del proyecto.El objetivo de este proyecto es montar e instalar un sistema de energía solar solo de soporte (foto fotovoltaicas o PV). Mi objetivo es correr 2 bombillas de LED en accesorios en mi banco de trabajo y carga/mantener mis pilas de
Sistema de transferencia del baño

Sistema de transferencia del baño

ResumenEste proyecto es un sistema de transferencia simple y de bajo costo que permite a un usuario de silla de ruedas (o cualquier persona con problemas de movilidad) transferir fácilmente desde su silla de ruedas a un baño para bañarse de la fines
Ganancias gimnasio fácil

Ganancias gimnasio fácil

Ganancias gimnasio fácilPaso 1: La roca¿Que siempre quisiste ver como los tíos en un revista Sports Illustrated? Por supuesto tienes! Bueno aqui les dejo un Instructable que es perfecto y hecho sólo para ti! En este Instructable te puede y será encon
Domo geodésico de arcrylic con sistema de iluminación de la LDR

Domo geodésico de arcrylic con sistema de iluminación de la LDR

Domo geodésico - IntroEs una de las estructuras más fuertes del mundo.Inventado por un hombre americano llamado R.Buckminister Fuller.Se define como el más ligero, más fuerte y más rentable estructura jamás ideado. Está formado por una red de triángu
Médico interactivo que Quiz ordenador.

Médico interactivo que Quiz ordenador.

Doctor Who video de prueba para dispositivos móviles.Bienvenida.En este Instructable le mostrará cómo hacer tu propio interactivo juego de preguntas opción múltiple que utiliza reconocimiento de voz, síntesis de voz, archivos .exe, una paz de softwar
Espejo de Halloween interactivo

Espejo de Halloween interactivo

hemos hecho un espejo interactivo de Halloween.Es un simbolos con un módulo de reconocimiento de rostro. Usar una webcam para tomar un video en vivo y poner máscaras de Halloween divertidos en el rostro en la pantalla.Paso 1: Necesita un par de cosas
Juego de Simon Says interactivo

Juego de Simon Says interactivo

no recuerdo bien cómo es este juego evolucionado pero la principal motivación detrás de él mejorar el procesamiento cognitivo y la atención por que los jugadores se centran en una secuencia de golpes de tambor y luego repetir esa secuencia. Los jugad
Móvil infantil interactivo

Móvil infantil interactivo

¿qué se puede hacer con acrílico fluorescente como la inspiración?  Decidimos hacer un resplandor en la oscuridad bebé móvil, con un juguete que lo acompaña.  Este proyecto se completó como parte de la clase de arte y Computación Universidad de Olin