Cómo graficar un acelerómetro con Arduino

Escrito por rupinder dhillon | Traducido por enrique pereira vivas
  • Comparte
  • Twittea
  • Comparte
  • Pin
  • E-mail
Cómo graficar un acelerómetro con Arduino
Grafica los datos utilizando cualquier color que desees. (Ryan McVay/Photodisc/Getty Images)

Los acelerómetros son componentes electrónicos que miden la aceleración, inclinación o vibración de un objeto cuando se conecta a otro dispositivo. Puedes interpretar los datos proporcionados por un acelerómetro al conectarlo a un microcontrolador Arduino. Arduino lee los valores de los pines de salida del acelerómetro y los transmite a una computadora. La computadora muestra los datos en forma numérica. También puedes representar gráficamente los datos mediante la transmisión a una aplicación de programación, tales como Max/MSP o Processing, donde se pueden trazar en tiempo real.

Nivel de dificultad:
Moderadamente difícil

Otras personas están leyendo

Necesitarás

  • Placa de pruebas
  • Cable
  • Cable USB

Lista completaMinimizar

Instrucciones

    Conecta el acelerómetro al Arduino

  1. 1

    Coloca el acelerómetro en la placa de pruebas con sus patas en pistas separadas.

  2. 2

    Conecta las pines del eje del acelerómetro a las entradas analógicas o digitales del Arduino con un cable. Utiliza una entrada por cada pin. La hoja de datos del acelerómetro te indica qué pines proporcionan los datos del eje y si el dato es analógico o digital.

  3. 3

    Conecta el pin de tensión de alimentación del acelerómetro a la salida de voltaje adecuado en el Arduino con un cable. La hoja de datos del acelerómetro te indica la cantidad de energía que necesita.

  4. 4

    Conecta el pin de tierra del acelerómetro al terminal de tierra del Arduino con el cable.

  5. 5

    Conecta un cable USB al conector USB del Arduino.

  6. 6

    Conecta el otro extremo del cable USB a un puerto USB de una computadora.

    Escribe el código de Arduino

  1. 1

    Asigna variables a las entradas de Arduino conectadas a las salidas del acelerómetro. El código podría tener el siguiente aspecto: int xPin = 2; int yPin = 3; Las variables "xPin" y "yPin" se asignan a los pines conectados a las salidas X y Y del acelerómetro.

  2. 2

    Inicia la comunicación en serie entre la computadora y el Arduino. Tu código podría tener el siguiente aspecto: void setup() { Serial.begin(9600);
    La primera línea de código es necesaria para todos los programas. El corchete rizado marca el comienzo de "setup". "Serial.begin (9600)" establece la comunicación a 9.600 bits por segundo.

  3. 3

    Define los pines de entrada del Arduino bajo "Configuración". El código podría tener el siguiente aspecto: pinMode (xPin, INPUT); pinMode (yPin, INPUT); } Los pines 2 y 3 en el Arduino están configurados ahora como entradas. El corchete rizado marca el final de "setup".

  4. 4

    Asigna variables para almacenar el eje de entrada y los datos de aceleración. El código podría tener el siguiente aspecto: void loop(){ int pulseX, pulseY; int accelerationX, accelerationY; La primera línea de código indica al Arduino que el código se compone de las funciones que debe realizar en un bucle. El primer conjunto de números enteros almacena los datos procedentes de los terminales de entrada, mientras que el segundo conjunto almacena los resultados de los cálculos que convierten los datos entrantes en valores que representan la aceleración del acelerómetro.

  5. 5

    Lee los datos de las entradas del Arduino y almacénalos en las variables correspondientes. El código podría verse como este si tu acelerómetro proporciona datos digitales: pulseX = pulseIn(xPin,HIGH); pulseY = pulseIn(yPin, HIGH); El código "PulseIn(xPin,HIGH)" le indica al Arduino que espere a que el pasador lea "HIGH" y empiece a cronometrar. Cuando el pin dice "LOW", el Arduino detiene el tiempo y almacena el valor en "pulseX". La segunda línea de código funciona de la misma manera.

    Tu código podría ser como este si el acelerómetro proporciona datos analógicos: pulseX = analogRead(xPin); pulseY = analogRead(yPin); Este código lee los valores de las entradas del Arduino y los almacena en "pulseX" y "pulseY".

  6. 6

    Convierte los datos almacenados en "pulseX" y "pulseY" en aceleración. El fabricante del acelerómetro debe proporcionar una ecuación o tabla de valores que se utiliza para la conversión.

  7. 7

    Imprime los datos de aceleración en el monitor de serie y envíalo a un programa compatible para la representación gráfica. Tu código podría tener el siguiente aspecto: Serial.print("X"); Serial.print(accelerationX); Serial.println(); Serial.print("Y"); Serial.print(accelerationY); Serial.println(); Las líneas que comienzan con "Serial.print" imprime los valores almacenados en las variables asignadas o las letras que aparecen entre comillas. "Serial.println()" añade retornos de carro entre las variables impresas, por lo que no aparecen en la misma línea.

  8. 8

    Añade un retraso antes de que el Arduino se remonte a la primera línea de código. El código podría tener el siguiente aspecto: delay(50); } La primera línea de código establece el retardo a 50 milisegundos. El corchete rizado marca el final del "loop" y le dice al Arduino para volver a la primera línea de código.

  9. 9

    Haz clic en el botón "Subir" para cargar el código para el Arduino.

    Graficar la aceleración

  1. 1

    Ejecuta un entorno de programación como Max/MSP, Processing o Pure Data, que acepta datos en serie.

  2. 2

    Escribe un código que le indique al programa supervisar y aceptar la entrada de datos en serie a partir del Arduino. El código que escribas depende del entorno de programación que estés utilizando. Especifica la velocidad de transmisión que utilizaste en el código Arduino al configurar la comunicación serie.

  3. 3

    Escribe un código que configure un gráfico con un eje X e Y. Dibuja y rotula los ejes con los valores correspondientes a tu acelerómetro. Es posible que desees utilizar los valores máximos y mínimos proporcionados por el acelerómetro para definir la longitud de cada eje.

  4. 4

    Escribe un código que separe los datos procedentes del Arduino en los valores apropiados del eje X y el eje Y. Por ejemplo, puedes asignar el valor numérico recibido después de "X" para el eje X en tu gráfico y el valor recibido después de "Y" para el eje Y.

  5. 5

    Escribe un código que apunte parcelas en el gráfico con los datos proporcionados por el Arduino.

  6. 6

    Escribe un código que dibuje líneas entre los puntos trazados.

Consejos y advertencias

  • Modifica el código para que funcione con tu Arduino.
  • Si tu Arduino no emite valores lo suficientemente rápido, cambia la velocidad de transmisión.
  • Si tu acelerómetro proporciona más de dos ejes de datos, modifica el código de Arduino para aceptar los datos adicionales mediante la asignación de las variables apropiadas y la impresión de los datos.
  • Conectar el Arduino con el acelerómetro mientras está encendido podría dañar los componentes electrónicos.

No dejes de ver

Filtrar por:
  • Mostrar todos
  • Artículos
  • Galerías de fotos
  • Videos
Ordenar:
  • Más relevante
  • Más popular
  • Más reciente

No se encuentran artículos disponibles

No se encuentran slideshows disponibles

No se encuentran videos disponibles