Arduino - Balance - Robot de equilibrio - ¿Cómo hacer ?: 6 pasos (con imágenes)
Arduino - Balance - Robot de equilibrio - ¿Cómo hacer ?: 6 pasos (con imágenes)
Anonim
Image
Image

En este tutorial aprenderemos cómo hacer un robot de equilibrio (balance) Arduino que se equilibra a sí mismo. Primero puede ver el video tutorial de arriba.

Paso 1: hardware necesario

Montaje del Robot
Montaje del Robot

Placa Arduino (Uno) -

MPU-6050 GY521 Acc + Gyro -

Juego de motor de engranajes de codificador DC 6V 210RPM -

Controlador de motor L298N -

Botón de cambio:

Juego de tuercas de tornillo espaciador con rosca hexagonal M3 -

Hoja de metacrilato acrílico -

Cargador recargable de iones de litio + 3.7v 18650 -

Batería de 9V -

Cables de puente:

Pistola de pegamento caliente -

Kit de inicio y suministros Arduino (opcional): placa Arduino y suministros SCM # 01 -

Suministros de placa Arduino y SCM # 02 -

Kit de inicio de aprendizaje básico de Arduino # 01 -

Kit de inicio de aprendizaje básico de Arduino # 02 -

Kit de inicio de aprendizaje básico de Arduino # 03 -

Kit de inicio Mega 2560 con tutorial:

Kit de módulo de sensor para Arduino # 01 -

Kit de módulo de sensor para Arduino # 02 -

Paso 2: montaje del robot

Montaje del Robot
Montaje del Robot
Montaje del Robot
Montaje del Robot
Montaje del Robot
Montaje del Robot
  • Taladre las cuatro esquinas de 3 láminas acrílicas. (Imagen 1 y 2)
  • Entre cada hoja de acrílico habrá unos 8 cantímetros / 3,15 pulgadas. (Imagen 3)
  • Dimensiones del robot (aprox.) 15 cm x 10 cm x 20 cm. (Imagen 4)
  • El motor de CC y las ruedas se colocarán en el centro (línea media) del robot. (Imagen 5)
  • El controlador de motor L298N se colocará en el centro del primer piso (línea media) del robot. (Imagen 6)
  • La placa Arduino se colocará en el segundo piso del robot.
  • El módulo MPU6050 se colocará en el piso superior del robot. (Imagen 7)

Paso 3: conexiones

Conexiones
Conexiones
Conexiones
Conexiones

¡Pruebe el MPU6050 y asegúrese de que funcione! Primero conecte el MPU6050 al Arduino y pruebe la conexión usando los códigos en el siguiente tutorial. El daha debe mostrarse en el monitor de serie

Tutorial de Instructables - MPU6050 GY521 Acelerómetro de 6 ejes + giroscopio

Tutorial de YouTube - MPU6050 GY521 Acelerómetro de 6 ejes + giroscopio

El módulo L298N puede proporcionar los + 5 V que necesita el Arduino siempre que su voltaje de entrada sea de +7 V o más. Sin embargo, elegí tener una fuente de alimentación separada para el motor

Paso 4: ¿Cómo funciona el equilibrio?

¿Cómo funciona el equilibrio?
¿Cómo funciona el equilibrio?
¿Cómo funciona el equilibrio?
¿Cómo funciona el equilibrio?
¿Cómo funciona el equilibrio?
¿Cómo funciona el equilibrio?
  • Para mantener el robot equilibrado, los motores deben contrarrestar la caída del robot.
  • Esta acción requiere una retroalimentación y un elemento de corrección.
  • El elemento de retroalimentación es el MPU6050, que proporciona aceleración y rotación en los tres ejes, que es utilizado por Arduino para conocer la orientación actual del robot.
  • El elemento corrector es la combinación de motor y rueda.
  • El robot de autoequilibrio es esencialmente un péndulo invertido.
  • Puede equilibrarse mejor si el centro de masa es más alto en relación con los ejes de las ruedas.
  • Es por eso que coloqué la batería en la parte superior.
  • Sin embargo, la altura del robot se eligió en función de la disponibilidad de materiales.

Paso 5: código fuente y bibliotecas

Código fuente y bibliotecas
Código fuente y bibliotecas
Código fuente y bibliotecas
Código fuente y bibliotecas

El código desarrollado para el robot de equilibrio es demasiado complicado. Pero no hay por qué preocuparse. Solo cambiaremos algunos datos.

Necesitamos cuatro bibliotecas externas para que el robot autoequilibrado funcione

  • La biblioteca PID facilita el cálculo de los valores P, I y D.
  • La biblioteca LMotorController se utiliza para impulsar los dos motores con el módulo L298N.
  • La biblioteca I2Cdev y la biblioteca MPU6050_6_Axis_MotionApps20 son para leer datos del MPU6050.

Descargar Bibliotecas

PID:

LMotorController -

I2Cdev:

MPU6050:

Obtenga el código fuente:

¿Qué es PID?

  • En la teoría del control, mantener estable alguna variable (en este caso, la posición del robot) necesita un controlador especial llamado PID.
  • P para proporcional, I para integral y D para derivada. Cada uno de estos parámetros tiene "ganancias" normalmente llamadas Kp, Ki y Kd.
  • PID proporciona corrección entre el valor deseado (o entrada) y el valor real (o salida). La diferencia entre la entrada y la salida se llama "error".
  • El controlador PID reduce el error al valor más pequeño posible ajustando continuamente la salida.
  • En nuestro robot de autoequilibrio Arduino, la entrada (que es la inclinación deseada, en grados) se establece mediante software.
  • El MPU6050 lee la inclinación actual del robot y la alimenta al algoritmo PID que realiza cálculos para controlar el motor y mantener el robot en posición vertical.

PID requiere que los valores de las ganancias Kp, Ki y Kd estén "sintonizados" a valores óptimos

En su lugar, ajustaremos los valores PID manualmente

  1. Haga que Kp, Ki y Kd sean iguales a cero.
  2. Ajuste Kp. Demasiado poco Kp hará que el robot se caiga (corrección insuficiente). Demasiado Kp hará que el robot vaya y venga salvajemente. Un Kp suficientemente bueno hará que el robot se mueva ligeramente hacia adelante y hacia atrás (u oscile un poco).
  3. Una vez establecido el Kp, ajuste Kd. Un buen valor de Kd reducirá las oscilaciones hasta que el robot esté casi estable. Además, la cantidad correcta de Kd mantendrá al robot de pie incluso si se lo empuja.
  4. Por último, configure el Ki. El robot oscilará cuando se encienda incluso si se configuran Kp y Kd, pero se estabilizará a tiempo. El valor de Ki correcto acortará el tiempo que tarda el robot en estabilizarse.

Sugerencia para mejores resultados

Le recomiendo que cree un marco de robot similar utilizando los materiales utilizados en este proyecto para hacer que el código fuente del Balance Robot funcione de manera estable y eficiente.

Paso 6: para soporte

Para soporte
Para soporte
  • Puede suscribirse a mi canal de YouTube para obtener más tutoriales y proyectos.
  • También puedes suscribirte para recibir soporte. Gracias.

Visita mi canal de YouTube:

Recomendado: