Tabla de contenido:

Creación de un robot de equilibrio automático Arduino controlado de forma remota: B-robot EVO: 8 pasos
Creación de un robot de equilibrio automático Arduino controlado de forma remota: B-robot EVO: 8 pasos

Video: Creación de un robot de equilibrio automático Arduino controlado de forma remota: B-robot EVO: 8 pasos

Video: Creación de un robot de equilibrio automático Arduino controlado de forma remota: B-robot EVO: 8 pasos
Video: Compré un ROBOT "INTELIGENTE" que es tu asistente 🤖😱 | ¿Vale la pena? 2024, Noviembre
Anonim
Image
Image
Creación de un robot de equilibrio automático Arduino controlado de forma remota: B-robot EVO
Creación de un robot de equilibrio automático Arduino controlado de forma remota: B-robot EVO
Creación de un robot de equilibrio automático Arduino controlado de forma remota: B-robot EVO
Creación de un robot de equilibrio automático Arduino controlado de forma remota: B-robot EVO

Por jjrobotsjjrobots Siga más por el autor:

Pybot: Python + Brazo robótico impreso en 3D
Pybot: Python + Brazo robótico impreso en 3D
Pybot: Python + Brazo robótico impreso en 3D
Pybot: Python + Brazo robótico impreso en 3D
Pantalla giratoria motorizada simple (basada en Arduino + controlada desde su teléfono inteligente)
Pantalla giratoria motorizada simple (basada en Arduino + controlada desde su teléfono inteligente)
Pantalla giratoria motorizada simple (basada en Arduino + controlada desde su teléfono inteligente)
Pantalla giratoria motorizada simple (basada en Arduino + controlada desde su teléfono inteligente)
Pinza de brazo robótico
Pinza de brazo robótico
Pinza de brazo robótico
Pinza de brazo robótico

Acerca de: Nos encantan los robots, el bricolaje y la ciencia divertida. JJROBOTS tiene como objetivo acercar los proyectos de Open robotic a las personas proporcionando hardware, buena documentación, instrucciones de construcción + código, información de "cómo funciona" … Más sobre jjrobots »

------------------------------------------------

ACTUALIZACIÓN: aquí hay una versión nueva y mejorada de este robot: ¡El B-robot EVO, con nuevas funciones

------------------------------------------------

¿Como funciona?

B-ROBOT EVO es un robot arduino autoequilibrado controlado de forma remota creado con piezas impresas en 3D. Con solo dos ruedas, B-ROBOT puede mantener su equilibrio todo el tiempo utilizando sus sensores internos y accionando los motores. Puedes controlar tu Robot, haciéndolo moverse o girar, enviando comandos a través de un Smartphone, Tablet o PC mientras mantiene su equilibrio.

Este robot de auto equilibrio lee sus sensores inerciales (acelerómetros y giroscopios integrados en el chip MPU6000) 200 veces por segundo. Calcula su actitud (ángulo respecto al horizonte) y compara este ángulo con el ángulo objetivo (0º si quiere mantener el equilibrio sin moverse, o un ángulo positivo o negativo si quiere avanzar o retroceder). Usando la diferencia entre el ángulo objetivo (digamos 0º) y el ángulo real (digamos 3º), maneja un Sistema de Control para enviar los comandos correctos a los motores para mantener su equilibrio. Los comandos a los motores son aceleraciones. Por ejemplo, si el robot se inclina hacia adelante (el ángulo del robot es de 3º), envía un comando a los motores para que aceleren hacia adelante hasta que este ángulo se reduzca a cero para preservar el equilibrio.

Paso 1: un poco más en profundidad …

Un poco más en profundidad …
Un poco más en profundidad …
Un poco más en profundidad …
Un poco más en profundidad …
Un poco más en profundidad …
Un poco más en profundidad …

El problema físico que resuelve B-ROBOT se llama Péndulo Invertido. Este es el mismo mecanismo que necesita para equilibrar un paraguas sobre su mano. El punto de pivote está debajo del centro de masa del objeto. Más información sobre el péndulo invertido aquí. La solución matemática del problema no es fácil, pero no es necesario que la comprendamos para resolver el problema del equilibrio de nuestro robot. Lo que necesitamos saber es cómo se debe hacer para restablecer el equilibrio del robot para que podamos implementar un Algoritmo de Control para resolver el problema.

Un sistema de control es muy útil en robótica (una automatización industrial). Básicamente es un código que recibe información de sensores y comandos de destino como entradas y crea, en consecuencia, señales de salida para accionar los actuadores del Robot (los motores en nuestro ejemplo) con el fin de regular el sistema. Estamos usando un controlador PID (Proporcional + Derivado + Integral). Este tipo de control tiene 3 constantes para ajustar kP, kD, kI. De Wikipedia: “Un controlador PID calcula un valor de 'error' como la diferencia entre una [Entrada] medida y un punto de ajuste deseado. El controlador intenta minimizar el error ajustando [una Salida] ". Entonces, le dice al PID qué medir (la "Entrada"), dónde desea que esté esa medición (el "Punto de ajuste") y la variable que desea ajustar para que eso suceda (la "Salida").

El PID luego ajusta la salida tratando de hacer que la entrada sea igual al punto de ajuste. Como referencia, un tanque de agua que queremos llenar hasta un nivel, la entrada, el punto de ajuste y la salida serían el nivel de acuerdo con el sensor de nivel de agua, el nivel de agua deseado y el agua bombeada al tanque. kP es la parte proporcional y es la parte principal del control, esta parte es proporcional al error. kD es la parte derivada y se aplica a la derivada del error. Esta parte depende de la dinámica del sistema (depende del robot, motores de peso, inercias…). El último, kI se aplica a la integral del error y se usa para reducir errores constantes, es como un recorte en la salida final (piense en los botones de recorte en el volante de un automóvil RC para que el automóvil vaya totalmente recto, kI elimina el desplazamiento entre el objetivo requerido y el valor real).

En B-ROBOT, el comando de dirección del usuario se agrega a la salida de los motores (un motor con signo positivo y el otro con signo negativo). Por ejemplo, si el usuario envía el comando de dirección 6 para girar a la derecha (de -10 a 10), debemos sumar 6 al valor del motor izquierdo y restar 6 al motor derecho. Si el robot no se mueve hacia adelante o hacia atrás, el resultado del comando de dirección es un giro del robot.

Paso 2: ¿Qué pasa con el control remoto?

"loading =" perezoso"

Recomendado: