Está en la página 1de 6

Universidad Panamericana Campus Guadalajara

Facultad de ingeniería

1238-LG0037 CONTROL DIGITAL LCD1

Control para un robot (carrito) direccional de Lego para la


clase de Robótica

Integrantes:
● Santiago Vázquez Chau - 0214117
● Diego Alonso Velázquez Ramírez - 0225144
● Iván Salas Villarreal - 0217418
● Ian Alejandro Gutierrez Naranjo - 0215293
● David Hernán Sánchez Rodríguez - 0202405

Profesor: José Santiago Elvira Ceja


Para este proyecto se buscó programar un controlador diferencial para un robot hecho con
bloques de Lego. Dicho robot fue construido como un carrito para qué fuera más sencillo su
desplazamiento y armado. El mismo constaba de dos llantas delanteras y una trasera más
pequeña pues es así como es el modelo diferencial.

Fig 1. Carro armado

El código se hizo en el software Visual Studio Code, por lo qué hubo qué instalarlo ya qué
no contábamos con él, así mismo instalamos otro software llamado Balena Etcher qué nos
permite “flashear” la memoria micro SD qué se requería para mandar al robot los códigos
qué fuéramos agregando o probando. Cabe destacar qué el flasheo solo se hizo la primera
vez y todo se fue haciendo según las indicaciones del profesor Michel Emanuel López
Franco.

De esta manera los códigos los enviamos desde la computadora a dicha memoria qué ya
estaba en el carro y todo mediante un cable USB - micro USB. Se tuvo qué programar en
Python qué es el lenguaje qué hemos estado usando a lo largo del semestre en la clase de
Robótica, además para poder conectar y hacer funcionar los aparatos del kit del EV3 Lego
Mindstorms hubo qué instalar varias extensiones en Visual Studio Code.

Fig 2. Carro armado (otro ángulo)


La ventaja es qué los kits de Lego Mindstorms ya vienen con sensores qué simplemente
podíamos conectar y mandarlos llamar en el código puesto qué ya venían en la librería de
Lego EV3 qué instalamos podíamos hacerlos funcionar. Como es posible notar en la figura
de arriba colocamos hasta adelante del carrito un sensor de color qué apuntara al suelo.

Fig 3. Modelo diferencial


Fig 4. Ecuaciones de movimiento del modelo diferencial

Fig 5. Restricciones del modelo diferencial


El código programado se muestra a continuación:
El código anterior ya incluye el controlador y todas las ecuaciones qué conlleva. En dado
caso de qué al compilar y enviar el código al carrito y este no respondiera ante dicho código,
es decir, no hiciera nada significaba qué no estábamos mandando la información correcta y
había qué modificar el código.
Por otra parte, si al mandar el código aparecia un mensaje de error significaba qué
habíamos hecho algo incorrecto en la parte de flashear la memoria y debía hacerse de
nuevo. Afortunadamente esto último no fue nuestro caso así qué nos enfocamos de lleno a
programar.

Conclusión: En conclusión, el programar un robot diferencial y verlo moverse y funcionar


nos permitió ver de primera mano los resultados de un proyecto hecho en físico y no solo
ver resultados en una pantalla tras una simulación, esto es enriquecedor para comprobar
las aplicaciones qué tienen los temas de Robótica. Además el poder hacer uso de un control
diferencial bien podría ser solo en comienzo pues de ahí es posible pasar fácilmente a otros
tipos de controladores o bien a otros tipos de robots o modelos de movimiento pues todo
parte del mismo concepto básico implementado en este proyecto.

También podría gustarte