Informe Robot Final
Informe Robot Final
Resumen – Este informe se centra en la creación y desarrollo Los resultados evidencian el potencial del Raspberry Pi Pico
de un mini brazo robótico controlado por una tarjeta para proyectos más complejos en el ámbito de la robótica y la
microcontroladora Raspberry Pi Pico. El objetivo es demostrar automatización, con un enfoque en la educación y la
las capacidades de este microcontrolador en la manipulación de investigación. El informe concluye evaluando las ventajas y
servomotores, implementando un diseño que incluye varios limitaciones del microcontrolador en la implementación de
grados de libertad para simular aplicaciones de automatización sistemas robóticos, sugiriendo que futuras mejoras podrían
industrial a pequeña escala. incluir el uso de sensores para una mayor precisión y robustez.
Para el control de los servomotores, se utilizó Python como Índice de Términos – Cinemática, directa, grados, inversa,
lenguaje de programación en el entorno de desarrollo Thonny, mini brazo, pick and place, programación, posición, Python,
facilitando la gestión de los pines GPIO del microcontrolador. servos, shield, tarjeta microcontroladora, Thonny.
Se empleó una shield llamada "Pico Servo Driver" para
simplificar la conexión entre el Raspberry Pi Pico y los servos, Abstract - Mini Robotic Arm Development Report Summary
asegurando un flujo estable de energía y un control preciso.
This report focuses on the creation and development of a mini
El proyecto incluyó la impresión 3D de las partes del brazo robotic arm controlled by a Raspberry Pi Pico microcontroller
robótico, con el uso de servomotores MG996R para las board. The objective is to demonstrate the capabilities of this
articulaciones más pesadas (hombro y codo) y SG90 para las microcontroller in servo motor manipulation, implementing a
menos pesadas (muñeca y mano). Se llevó a cabo un proceso design that includes several degrees of freedom to simulate
metódico de ensamblaje y programación, donde se small-scale industrial automation applications.
implementaron tanto la cinemática directa como la cinemática
inversa para el control del movimiento. To control the servomotors, Python was used as programming
language in the Thonny development environment, facilitating
2
the management of the GPIO pins of the microcontroller. A como el desarrollo de la lógica de control, evaluando tanto las
shield called “Pico Servo Driver” was used to simplify the ventajas como las limitaciones de este microcontrolador en la
connection between the Raspberry Pi Pico and the servos, implementación de sistemas robóticos. Los resultados
ensuring stable power flow and precise control. obtenidos demuestran el potencial del Raspberry Pi Pico para
ser utilizado en proyectos más complejos, con un enfoque hacia
The project included 3D printing of the robotic arm parts, with la educación y la investigación en automatización y
the use of MG996R servo motors for the heavier joints robótica. Adicionalmente el desarrollo de este proyecto
(shoulder and elbow) and SG90 for the lighter ones (wrist and fomenta y fortalece la comprensión práctica de conceptos de
hand). A methodical assembly and programming process was robótica industrial y las aplicaciones en la industria como el
carried out, where both direct kinematics and inverse proceso de Pick and Place.
kinematics were implemented for motion control.
II. OBJETIVOS
The results evidence the potential of the Raspberry Pi Pico for
more complex projects in the field of robotics and automation, Objetivo general:
with a focus on education and research. The report concludes Explorar las capacidades de control de movimiento y
by evaluating the advantages and limitations of the programación del Raspberry Pi Pico en el contexto de
microcontroller in the implementation of robotic systems, aplicaciones robóticas, mediante el desarrollo de un mini brazo
suggesting that future improvements could include the use of robótico que simule tareas de automatización industrial a
sensors for greater precision and robustness. pequeña escala y aprender conceptos fundamentales de robótica
industrial.
Keywords – Kinematics, direct, degrees, inverse, mini arm, pick
and place, programming, position, Python, servos, shield, Objetivos específicos:
microcontroller board, Thonny. • Diseñar y ensamblar un mini brazo robótico que imite
las funciones de un brazo humano para realizar tareas
I. INTRODUCCIÓN automáticas de manipulación.
El presente informe se centra en la creación y desarrollo de un • Desarrollar y programar la lógica de control para el
brazo robótico controlado mediante un Raspberry Pi Pico, con movimiento de los servomotores que componen el
el objetivo de demostrar las capacidades de este brazo robótico, utilizando Python en el entorno de
microcontrolador en la manipulación de servomotores. El desarrollo Thonny.
diseño del brazo robótico incluye varios grados de libertad, que • Evaluar el rendimiento y la precisión del brazo
permiten realizar movimientos básicos y simular aplicaciones robótico en la ejecución de tareas de "pick and place",
de automatización industrial a pequeña escala. analizando su efectividad en la manipulación de
objetos.
Para controlar los servomotores, se utilizó Python como • Calibrar los servomotores para asegurar un
lenguaje de programación, debido a su flexibilidad y la funcionamiento adecuado y evitar colisiones durante
simplicidad que ofrece para gestionar los pines GPIO del el movimiento del brazo, mejorando así la precisión y
Raspberry Pi Pico. El entorno de desarrollo Thonny fue elegido el control del sistema.
para facilitar la escritura y ejecución del código, dado que está • Aprender y aplicar conceptos de robótica industrial,
especialmente diseñado para la programación de como cinemática directa e inversa, control de
microcontroladores en Python. servomotores y diseño de sistemas automatizados,
para comprender mejor su aplicación en entornos
Además, se empleó una shield para la conexión eficiente entre industriales.
el microcontrolador y los servomotores, permitiendo un
montaje simplificado del hardware. Esta shield proporciona una III. MARCO TEÓRICO
interfaz práctica para alimentar los servos y conectarlos al
Raspberry Pi Pico, asegurando un flujo estable de energía y un • Brazo robótico
control preciso de los motores. El brazo robótico está Un brazo robótico es un sistema mecánico que consta de una
compuesto por servomotores de rotación continua y de ángulo serie de eslabones conectados por articulaciones, cuyo objetivo
limitado, que permiten la rotación y la articulación del brazo en es realizar tareas automáticas de manipulación o ensamblaje,
diferentes direcciones. El diseño del hardware se complementó entre otras. Los brazos robóticos imitan las funciones de un
con un algoritmo de control básico para regular el movimiento brazo humano, pero con mayor precisión y capacidad para
de los servos, permitiendo el posicionamiento del brazo en trabajar en entornos peligrosos o de alto volumen.
coordenadas predefinidas. Generalmente, los brazos robóticos están equipados con
actuadores y sensores que permiten el movimiento de las
El objetivo principal de este proyecto es explorar las articulaciones y la detección de objetos, lo que les permite
capacidades de control de movimiento y programación del realizar tareas como soldadura, ensamblaje, o pintura en
Raspberry Pi Pico en el contexto de aplicaciones robóticas. Este industrias de manufactura y automatización. Para el control de
informe detalla el proceso de diseño y ensamblaje del brazo, así estos sistemas, se utilizan algoritmos matemáticos que
3
resuelven los problemas de cinemática y dinámica asociados dirección de los servomotores, permitiendo que el brazo
con su movimiento. robótico se mueva de manera precisa y controlada. Además, el
shield facilita la conexión de hasta 16 servomotores, lo que
• Cinemática directa e inversa proporciona una gran flexibilidad para aplicaciones que
La cinemática directa describe la relación entre las requieren un control de múltiples ejes de movimiento.
posiciones de las articulaciones del robot y la posición del
efector final (por ejemplo, la "mano" o herramienta del brazo IV. MATERIALES
robótico) en el espacio tridimensional. A partir de los ángulos Para las partes y articulaciones del brazo robótico, se llevó a
de las articulaciones y las longitudes de los eslabones, es cabo la impresión 3D del diseño propuesto por el docente
posible determinar la ubicación del efector final utilizando utilizando material PLA al 30%. Estos elementos incluyen una
ecuaciones matemáticas. Este proceso es esencial para calcular base, representada en la Fig. 1; la pieza correspondiente al
la posición exacta del brazo robótico en función de los hombro del brazo robótico, mostrada en la Fig. 2; el brazo,
parámetros de entrada. ilustrado en la Fig. 3; el antebrazo, presentado en la Fig. 4; y la
muñeca, que se muestra en la Fig. 5.
Por otro lado, la cinemática inversa es el proceso mediante el
cual, dado un conjunto de coordenadas o un objetivo para el
efector final, se calculan los valores de las articulaciones que
deben adoptarse para alcanzar dicha posición. Este problema
suele ser más complejo que la cinemática directa, ya que
puede involucrar múltiples soluciones o soluciones no reales,
dependiendo de la configuración del robot. La cinemática
inversa es crucial para tareas de control, ya que permite al
robot realizar movimientos precisos hacia objetivos definidos.
Figura 1. Impresión 3D, base.
• Pick and place
2
−𝑙1 2 −𝑟 2 (2)
β = cos −1 ( 𝑙2 )
−2∗𝑙1 ∗𝑟
α = β+ø (4)
con los ángulos calculados. de fuerza que puede hacer que el brazo pierda equilibrio o se
"desmaye". La posición HOME asegura que el brazo regrese a
El mini brazo se moverá primero al ángulo correspondiente al un punto donde la fuerza gravitacional no afecte su estabilidad,
primer segmento, posicionando el segundo en 0° respecto al permitiendo un retorno seguro y controlado a la base.
plano cartesiano. Después de una pausa de dos segundos, el
segundo segmento se ajustará según los cálculos realizados. La programación se llevó a cabo en Thonny utilizando el
Finalmente, la consola mostrará los grados calculados y en que lenguaje Python, como se muestra en la Fig. 26. Para la
se movió cada uno de los servos, representado el segmento uno programación del proceso Pick and Place, se realizó un análisis
como “alpha” y el segmento dos como “beta”, como se ilustra de distancias para generar una línea recta que ubique las piezas
en la Fig. 25. en posiciones específicas. Este análisis permitió establecer las
trayectorias necesarias para que el brazo robótico moviera los
objetos de manera eficiente entre las posiciones de recogida y
colocación. Además, se evaluó la forma más adecuada de
optimizar las líneas de programación, utilizando bucles while y
condicionales for para mejorar la eficiencia y la legibilidad del
código.
TABLA I
Figura 26. Programación pick and place tres objetos, Thonny Ítem Materia prima Valor (COP)
1 Mini servo SG90 x 2 unidades 14.184
2 Servo motor MG996 180° x 3 80.524
Al ejecutar el programa de Pick and Place, el mini brazo unidades
robótico comienza en la posición HOME. A continuación, el 3 Raspberry Pi Pico H x 2 unidades 49.980
sistema solicita al usuario si desea iniciar el proceso. Si la 4 Shield servo-pico-driver 56.000
5 Discos metálicos de aluminio 25T 15.900
respuesta es afirmativa, el brazo toma la primera pieza y la
para MG996 x 3 unidades
posiciona a un ángulo predeterminado respecto a su base. 6 Gripper o pinza plástica 45° 14.000
Luego, el brazo recoge la segunda pieza y la coloca a una
distancia mayor en un ángulo diferente. El tercer objeto se TABLA II
maneja de manera similar, posicionándose a un ángulo aún más TABLA DE COSTOS DE FABRICACIÓN
distante. Una vez completado el movimiento de los tres objetos,
el brazo regresa a su posición HOME. Ítem Materia prima Valor (COP)
1 Impresión 3D del prototipo en PLA 87.000
al 30% 5 piezas
Tras cada ciclo de tres objetos, el sistema vuelve a preguntar al
usuario si desea repetir el proceso, Fig. 27. Si la respuesta es Los costos pueden variar dependiendo de diversos factores,
positiva, el ciclo se repite desde el inicio, repitiendo el proceso como los componentes electrónicos utilizados en el proyecto.
de Pick and Place. Si la respuesta es negativa, el ciclo se detiene Los precios de los componentes, tales como los servomotores y
y el mini brazo robótico queda nuevamente en su posición otros dispositivos electrónicos, pueden fluctuar según la marca,
HOME, listo para futuras tareas. las especificaciones técnicas y la disponibilidad en el mercado.
VII. CONCLUSIONES
VI. PRESUPUESTO
Se realizó el presupuesto del costo de materia prima, elementos El desarrollo del brazo robótico utilizando la Raspberry Pi Pico
y del costo de fabricación de los elementos utilizados en el ha demostrado que este microcontrolador es una herramienta
proyecto del mini brazo robótico. El objetivo de este análisis es eficaz y accesible para el control de sistemas robóticos
determinar los costos asociados al desarrollo del prototipo, lo sencillos. La implementación de servomotores controlados
cual es fundamental para evaluar la viabilidad económica del mediante Python, junto con el entorno de desarrollo Thonny,
proyecto, identificar áreas de posible optimización en el uso de permitió una programación intuitiva y un control preciso del
recursos y facilitar la toma de decisiones en la selección de movimiento del brazo. A lo largo del proyecto, se emplearon
tanto la cinemática directa como la cinemática inversa para
materiales y métodos de fabricación. Además, este presupuesto
gestionar la posición y orientación del brazo, facilitando su
sirve como base para la planificación financiera de proyectos
manipulación en tareas básicas de automatización.
futuros, permitiendo ajustar los costos y maximizar la eficiencia
en el uso de los recursos.
La cinemática directa permitió calcular las posiciones finales de
las distintas articulaciones del brazo en función de los ángulos
A continuación, se presentan los costos discriminados de los
de los servomotores, mientras que la cinemática inversa facilitó
componentes y materia prima utilizados en el proyecto, la determinación de los ángulos necesarios para alcanzar
detallados en la Tabla I, y los costos de fabricación de los posiciones específicas en el espacio. Estas técnicas resultaron
elementos que conforman el mini brazo robótico, presentados fundamentales para mejorar la precisión en el control del brazo,
en la Tabla II. demostrando ser herramientas valiosas en la programación de
sistemas robóticos con múltiples grados de libertad.
12
No obstante, se identificaron algunas limitaciones, como la industrial, preparando a los estudiantes y futuros profesionales
precisión restringida por la resolución de los servomotores y la para afrontar retos mayores y contribuir a la innovación en el
complejidad del algoritmo de control de cinemática inversa campo.
implementado. Estas limitaciones podrían superarse mediante
el uso de motores de mayor precisión y técnicas de control más
avanzadas. A pesar de estos desafíos, la integración del VIII. REFERENCES
hardware y el software fue exitosa, y el proyecto cumplió sus
objetivos de manera satisfactoria. [1] Junior Rativa. “Mini Brazo Robótico Industrial”,
YouTube, 06 de oct, 2024. [Archivo de video]. Disponible:
Este proyecto ha sido una excelente introducción al uso de la [Link]
Raspberry Pi Pico en aplicaciones robóticas, demostrando su [Accedido: oct-06-2024]."
capacidad para controlar sistemas mecánicos complejos
mediante la combinación de técnicas de cinemática y control. [2] E. Medina, " Thonny es un IDE sencillo que te ayudará
Las futuras mejoras podrían incluir la incorporación de sensores a aprender Python", MUY LINUX. [En línea]. Disponible en:
para retroalimentación y el desarrollo de un sistema de control [Link]
más avanzado, lo cual permitiría aumentar la precisión y [Accedido: oct-04-2024].
robustez del brazo robótico.
[3] Waveshare, "Pico Servo Driver," Waveshare. [En
A nivel educativo, el desarrollo del mini brazo robótico línea]. Disponible en: [Link]
proporcionó una comprensión práctica de conceptos Servo-Driver, [Accedido: oct-04-2024].
fundamentales de la robótica industrial, como la cinemática
directa e inversa, el control de servomotores y la programación [4] 3D Market, "PLA Impresión," 3D Market. [En línea].
de sistemas automatizados. Estos conceptos son esenciales para Disponible en: [Link]
el diseño e implementación de soluciones robóticas en entornos impresion/#:~:text=PLA%20ImpresiónEl%20ácido%20polilác
industriales. A través de esta experiencia, fue posible observar tico%2C%20comúnmente,no%20requiere%20una%20cama%
cómo la teoría aprendida en clase se aplica a proyectos reales, 20calentada, [Accedido: oct-04-2024].
lo que refuerza la importancia de la educación práctica en el
ámbito de la robótica. [5] KUKA, "KR 2102 K," KUKA, 2024. [En línea].
Disponible en: [Link]
Además, la programación en Python y el uso del Raspberry Pi downloads/imported/8350ff3ca11642998dbdc81dcc2ed44c/pf
Pico permitieron aplicar la teoría a un proyecto tangible, 0031_kr_2102_k_en.pdf. [Accedido: oct-04-2024].
consolidando conocimientos sobre el funcionamiento y control
de sistemas robóticos, así como sobre la relevancia de la [6] Torres, G., “Pick and Place al alcance de tu industria”,
precisión y calibración en la manipulación de objetos. Este URANY, noviembre 22, 2021. Disponible:
proyecto ha fomentado el desarrollo de habilidades técnicas en [Link]
el diseño, ensamblaje y programación de sistemas robóticos, implementarlo-en-mi-industria [Accedido: nov-13-2024].
competencias que son altamente valoradas en la industria,
donde la capacidad para implementar y mantener sistemas [7] Pelegrí, J., “¿Cómo funciona un brazo robótico?”,
automatizados es crucial para la eficiencia operativa. UNIVERSAL ROBOTS, marzo 29, 2022. Disponible en:
[Link]
A lo largo del proceso, también se destacó la importancia de la brazo-robotico/. [Accedido: nov-13-2024].
proyección de costos en proyectos de robótica industrial. La
selección de componentes, como servomotores y
microcontroladores, debe ser evaluada no solo desde un punto
de vista técnico, sino también económico. Este enfoque implica
considerar el costo-beneficio de cada componente y su impacto
en el presupuesto global del proyecto, lo cual es fundamental
para la viabilidad y sostenibilidad de cualquier iniciativa en el
ámbito industrial.