Вы находитесь на странице: 1из 14

RECURSO DIDÁCTICO: LABORATORIO REMOTO DE ROBÓTICA

MÓVIL BASADO EN PLATAFORMA ARDUINO EN LA UNAD

Laboratorio Remoto de robótica móvil proyecto UNAD - Labsland

ESCUELA DE CIENCIAS BÁSICAS TECNOLOGÍA E


INGENIERÍA
Cadena de Electrónica, Telecomunicaciones y Redes - ETR

Ed. 1.0 (Noviembre/2019)


Autor: Grupo de investigadores
ÍNDICE

1. PROGRAMACIÓN EN ARDUINO................................................................................... 1
2. JUSTIFICACIÓN .......................................................... ................................................ 1
3. INTENCIONALIDAD FORMATIVA.................................................................................. 2
3.1 Objetivos ............................................................................................................... 2
3.2 Contenidos ............................................................................................................ 3
3.3 Competencias ....................................................................................................... 3
4. METODOLOGÍA ........................................................................................................... 4
4.1 Fundamentos metodológicos ................................................................................ 4
4.2 Principios metodológicos....................................................................................... 4
4.3 Instrumentos de validación del laboratorio remoto................................................ 5
4.4 Interfaz del laboratorio remoto de robótica móvil…………………………………… 6
4.5 Sistema de reserva en el uso del laboratorio ......................................................... 7
5. RECONOCIMIENTO DEL ENTORNO DE DESARROLLO............................................ 8
5.1 Introducción a la robótica básica: actuadores y sensores...................................... 9
5.2 ¿Qué es un algoritmo? ........................................................................................ 10
5.3 Nuestro primer programa en el Laboratorio remoto: moviendo el robot ............... 11
6. ACTIVIDAD ....................................... ........................................................................... 12
6.1 Realizar un seguidor de línea en el POLOLU32U4 ............................................. 13
1. PROGRAMACIÓN EN ARDUINO

2. JUSTIFICACIÓN

La adopción de laboratorios remotos está muy alineada con los valores y objetivos de la
UNAD, Además de ser pertinente dadas las ventajas en el desarrollo de prácticas y la
experimentación real, y de permitir el desarrollo de contenidos virtuales de base tecnológica
basados en TIC. Brindando además la cobertura de los tres ejes primordiales de la UNAD
que son:

Inclusión social

Son el reflejo de “La educación para todos en cualquier lugar”, que es parte de
nuestro decálogo de valores, en las áreas científico-tecnológicas. Son la mejor
manera de ofrecer educación práctica de calidad a distancia.

Permiten llegar a dar formación de calidad a estudiantes que no pueden desplazarse


a los CEAD. Tanto por una cuestión de tiempo (horarios), recursos, discapacidades o
por situaciones especiales (como estudiantes en prisiones), con tal de tener un
dispositivo conectado a Internet, el estudiante puede acceder a ellos.

Inclusión institucional

Plan de desarrollo 2015-2019 “UNAD, innovación y excelencia educativa para todos”, está
muy alineado con los siguientes macro proyectos planteados:

OP6 (Innovación tecnológica): especialmente con el proyecto 19 (“Innovación para el


fortalecimiento de los escenarios de práctica en los procesos de formación e
investigación”), dado que este proyecto surge exactamente con ese propósito, en el cual
los procesos de práctica son fortalecidos a distancia, en cualquier momento, cualquier
lugar. Además, precisamente una de las metas es “Certificar un (1) laboratorio para la
venta de servicios externos”, en la cual se podría contribuir con este proyecto.

OP5 (Internacionalización): Con la inclusión de la UNAD en redes internacionales de


laboratorios remotos como LabsLand, ayuda a aumentar la visibilidad de la apuesta de
la UNAD por la excelencia en la educación a distancia y el uso de las últimas
tecnologías al servicio de la educación.

OP4 (Inclusión y permanencia): al ofrecer el acceso al laboratorio a la hora que el


estudiante desee y desde su propio hogar o centro de residencia, es posible. Además,
conlleva un ahorro económico para el estudiante al no tener que ir físicamente a ningún
CEAD. Y normalmente, el uso de este tipo de tecnologías (en las que el estudiante ve
con sus ojos cómo lo que hace funciona en el mundo real) es un factor motivador que
puede ayudar a la disminución de la deserción de alumnos.

Inclusión en Innovación e Investigación

En este proyecto, además de instalar una infraestructura existente (WebLab-Deusto)


y de instalar un laboratorio existente (García-Zubia, 2017), se va a llevar a cabo la
investigación de qué otros laboratorios remotos serían útiles en las asignaturas de la
UNAD, y se va a obtener experiencia para desarrollar laboratorios propios. Una vez
concluido este proyecto, se podrá poner en marcha otros proyectos para ampliar la
oferta de laboratorios remotos dentro de la UNAD.

1
3. INTENCIONALIDAD FORMATIVA

3.1 Objetivos

Evaluar mediante una prueba piloto de laboratorio de robótica móvil basado en


plataforma Arduino con estudiantes de la UNAD, en las áreas de Ingeniería
Electrónica, Telecomunicaciones y Redes (ETR) los resultados de la implementación
de la incorporación de esta nueva plataforma tecnológica en laboratorios remotos en
la UNAD.

Analizar la influencia educativa de los modelos de educación tradicional llevados a


cabo en aulas de laboratorio con respecto a la incorporación de laboratorios remotos
de robótica con instrumentación real como nueva estrategia de aprendizaje.

Identificar herramientas alternativas de aprendizaje que permitan a los estudiantes


poder acceder a un laboratorio en cualquier momento previa reserva y de esta forma
mejorar los procesos de disponibilidad de los recursos educativos de la UNAD.

3.2 Contenidos

Los contenidos que se trabajarán serán:

1. Conocimiento de un robot y fundamentos básicos de la robótica


2. Interfaz del laboratorio remoto
3. Algoritmos y diagramas de flujo
4. Nuestro primer programa en el Laboratorio remoto: moviendo el robot
5. Unidad LED
6. Bucles
7. Sensores de infrarrojo
8. Condiciones
9. Variables
10. Funciones
11. Robot sigue-línea
12. Laberintos en robótica

3.3 Competencias

Competencia digital
Autoaprendizaje
Sentido de la iniciativa y espíritu emprendedor
Competencia matemática y competencias básicas en ciencia y tecnología

2
4. METODOLOGÍA

4.1 Fundamentos metodológicos

El planteamiento metodológico que se llevará a cabo buscará la integración de contenidos


científicos, tecnológicos y organizativos, desarrollando la capacidad de autoaprendizaje en
el estudiante. Para alcanzar los objetivos propuestos, la metodología que se plantea
perseguirá, principalmente, fomentar la motivación y despertar el interés de los estudiantes
en el uso de nuevas tecnologías basadas en TIC como es el caso de la utilización de
laboratorios remotos en el proceso de aprendizaje.

4.2 Principios metodológicos

La existencia de unos principios metodológicos y unas estrategias se justifica porque


debemos partir de una forma de proceder didáctica, que facilite de manera activa,
significativa, globalizadora, constructivista y socializadora; la funcionalidad del proceso de
enseñanza mediante la incorporación de la tecnología en los procesos de educación a
distancia.

4.3 Instrumentos de validación del laboratorio remoto

Se tendrán en cuenta factores de dos categorías:

a. Humanos: evaluación por parte del profesorado, ya sea en pilotos en


asignaturas para corroborar la opinión de los estudiantes como validación de
su opinión acerca de cada laboratorio y cosas a mejorar.

b. Técnicos: se utilizarán herramientas estándar para llevar a cabo mediciones y


saber cuál es el estado del laboratorio. Las pruebas estándar se basan en:
(aplicación vía Web, lenguaje Java, tecnologías orientadas a objetos
distribuidas, etc.) con la intención de proporcionar un marco genérico que se
adapte a un gran número de situaciones. Dicha metodología proporciona una
arquitectura de referencia que se muestra en la figura 2, en la se describen
los detalles de la arquitectura, así como los módulos involucrados en la
arquitectura del laboratorio remoto.

4.4 Interfaz del laboratorio remoto de robótica móvil

El laboratorio remoto de robótica movil basado en plataforma Arduino de la UNAD esta


provisto de una interfaz gráfica de usuario que le permite al estudiante ingresar al entorno de
trabajo. A continuación se presenta el entorno gráfico de usuario del laboratorio remoto de
robótica móvil basado en Arduino. Para acceder al laboratorio remoto debe tener en cuenta
en el curso aceptar las normas y condiciones para poder trabajar.

3
Figura 1. Bienvenida al laboratorio remoto de robótica móvil. Fuente autores.

Figura 2. Acceso al laboratorio remoto de robótica móvil. Fuente autores.

4
Figura 3. Entorno de desarrollo integrado (IDE) de Arduino para el laboratorio remoto de
robótica móvil. Fuente autores.

Herramientas o módulos de la interfaz

Nuevo: esta opción le permite crear un archivo de extensión “.ino”, “.c”, “.h”,
“.hpp”, “.cpp”. Con dichas extensiones puede crear su propio archivo, que luego de
ser compilado en el IDE del Arduino, podrá enviarlo al robot.
Añadir: con esta opción puedes cargar un archivo que ya tengas editado en tu PC.
Descargar: esta opción le permite descargar los archivos que tenga cargados en la
plataforma del IDE de Arduino, como por ejemplo para este caso el archivo
“main.ino”
Información: con esta opción podrá acceder a un tour donde se explica todos las
herramientas del entorno de desarrollo integrado (IDE) de Arduino.
Verificar / Compilar: permite realizar la compilación del programa que realizaste y
verificar los resultados vía consola en la parte inferior de la misma ventana de
programación.
Enviar al robot: en esta opción podemos enviar nuestro código previamente
compilado al robot.

Compilación de un programa en el entorno de desarrollo integrado (IDE) Arduino


dentro de la plataforma de laboratorio remoto de robótica móvil

A continuación realizamos la compilación del programa de ejemplo que se encuentra en el


entorno de desarrollo integrado de Arduino, en la ventana de programación. Dicho programa
permite mover los dos motores DC del Pololu32U4, hacia la derecha, hacia la izquierda,
hacia delante y enviar un mensaje por el serial.

5
Primero compilamos el programa

Figura 4. Ventana de programación en el entorno de desarrollo integrado (IDE) de Arduino


para el laboratorio remoto de robótica móvil. Fuente autores.

Arduino Robot Lab

Si hacemos click en esta opción, accederemos a la página de reserva de esta sección del
Laboratorio Remoto. Haciendo click en el botón “reservar” podremos visualizar el
comportamiento del robot al ejecutar distintos programas.

Figura 5. Ventana de programación en el robótica móvil. Fuente autores.

6
En la parte central de la interfaz podemos ver al robot mientras ejecuta el código con el que
lo hemos programado. En la esquina superior izquierda vemos el tiempo que nos queda en
la reserva del robot.

En la parte izquierda está la sección de los programas que podemos cargar en el robot. En el
bloque superior está la lista de programas que hemos creado nosotros. En el bloque inferior
se muestra una serie de programas demostrativos diseñados para mostrar las distintas
funcionalidades del robot. Debajo de este bloque está el botón “programar”, con el que
podremos programar el robot con el programa seleccionado.

En la parte inferior de la interfaz vemos tres botones rojos, “A”, “B” y “C”, con los que
podremos interactuar con el robot. También hay dos iconos que representan los LEDs del
robot y que se iluminan cuando lo hacen los LEDs reales.

4.5. Sistema de reserva en el uso del laboratorio remoto

El ingreso al laboratorio se realiza a través de la plataforma del campus de UNAD en


Moodle, opción mis cursos virtuales. Se realizará una actividad práctica y el tiempo de uso
de la herramienta e aproximadamente 3 minutos de duración, luego de que el código es
enviado al robot. Se busca que el participante primero elabore el programa que se le
plantea realizar, y cuando lo tenga listo lo compile para verificar su funcionamiento y luego
lo envíe al robot, momento en el cual comenzara un temporizador a contabilizar el tiempo.
Mientras que el participante se encuentre en la ventana de programación no se le
contabiliza el tiempo, y puede estar programando su código.

Figura 5. Ingreso al curso piloto de laboratorio remoto de robótica móvil en plataforma


Arduino en la UNAD. Fuente autores.

7
5. RECONOCIMIENTO DEL ENTORNO DE DESARROLLO

5.1. Introducción a la robótica básica: actuadores y sensores

Objetivos específicos:

● Conocer los componentes internos del Robot y su correspondiente uso.


● Conocer las diferencias entre los dos tipos principales de Robots.

Contenidos específicos:

● Definición de Robot
● Origen del término Robot
● Sistemas que componen un Robot (control, sensorial, actuación)
● Tipos principales del Robot (manipulativos, móviles)

Definición de Robot

Se conoce como "robot" a toda máquina programable capaz de realizar una o más
actividades de forma autónoma. Debe tener la capacidad de recoger información e
interactuar hasta cierto punto con su entorno, para modificar su conducta y así tomar
decisiones sobre las funciones a realizar.

La palabra "robot" proviene del checo "robota", que significa "trabajo duro o forzado". Fue
creada por el escritor Karel Čapek en su obra de teatro "Robots Universales Rossum"
(1920), aunque su uso se extendió gracias a las obras de ciencia ficción del escritor
estadounidense Isaac Asimov.

Sistemas principales del Robot

Todo robot consta de tres sistemas principales:

- El sistema de control, generalmente en forma de ordenador auxiliar, que le permite


interpretar los datos percibidos y tomar las acciones pertinentes en función de los mismos,

- El sistema sensorial, que engloba todos aquellos dispositivos anexos que le permitan
recabar información acerca de su entorno y su propio estado,

- El sistema de actuación, al que pertenecen todos aquellos elementos físicos del


robot que le permiten realizar acciones sobre su entorno o sobre sí mismo.

Figura 5. sistemas principales de un robot. Fuente autores.

8
Por simplicidad, la estructura general y el comportamiento de un robot pueden compararse
con los de un ser humano. Así, el sistema de control de una persona correspondería a su
cerebro, que procesaría la información del sistema sensorial (los sentidos, receptores de
dolor, niveles hormonales, etc.) y controlaría la actividad del sistema actuador (movimiento
de las articulaciones y todas las funciones naturales de los órganos del cuerpo). En temas
posteriores se observará que los métodos de recogida de información y toma de decisiones
de los robots son igualmente similares a los de un ser humano.

Tipos principales de Robot

Existen dos tipos principales de robots:

- Los robots manipuladores se encuentran normalmente anclados a una superficie,


pero están formados por una cadena de articulaciones que les permite alcanzar y realizar
acciones en puntos concretos de sus proximidades. Estos son los robots que suelen
encontrarse en las cadenas de montaje de las fábricas. El elemento final de un robot
manipulador, conocido como "efector final", es con frecuencia intercambiable para poder
realizar distintas acciones, tales como recoger objetos, pintar o soldar.

- Los robots móviles no disponen de efectores finales, pero tienen la capacidad de


desplazarse por su entorno, generalmente mediante ruedas. Normalmente necesitan un
sistema sensorial más preciso y exhaustivo que los manipuladores, ya que su área de
trabajo puede resultar menos predecible que la correspondiente a una cadena de montaje.

Por supuesto, ambos tipos de robots podrían combinarse entre sí para producir una
máquina más compleja, pero desde el punto de vista de la programación, cada parte sería
independiente.

Figura 6. Izquierda: robot manipulador. Derecha: robot móvil Fuente autores.

5.2 Definición de Algoritmo y Diagramas de Flujo

Se conoce como "algoritmo" a un conjunto de instrucciones concretas que, ejecutadas en


orden, permiten la realización de una tarea. Una receta de cocina o las instrucciones de
montaje de un mueble son ejemplos cotidianos de algoritmos.

Aunque los algoritmos deben codificarse en algún lenguaje de programación para que
pueda un ordenador pueda ejecutarlos, existen formas alternativas de representarlos para
facilitar su comprensión por parte de las personas. Los diagramas de flujo sirven para tal fin
y los elementos más importantes que los componen son los siguientes:

9
● El inicio y el final de un algoritmo se representan
mediante cápsulas,
● Las acciones individuales, tales como cálculos y tomas de
decisiones, mediante rectángulos,
● Los datos de entrada y de salida a usar por las acciones,
mediante romboides,
● Los puntos en los que la ejecución puede tomar distintos
caminos en función de cierta condición, mediante rombos,
● Los elementos se conectan entre sí en orden mediante flechas.

A la hora de escribir un programa en un ordenador, es muy recomendable crear primero un


guión o diagrama de flujo que permita recordar qué acciones hay que implementar y en qué
orden se ejecutan.

Por ejemplo, supongamos que disponemos de las piezas necesarias para construir una silla
o taburete. Las instrucciones de montaje, junto a un posible código de programa y su
correspondiente diagrama de flujo, serían las siguientes:

1. Tómese el asiento del revés montar una silla:

2. Fíjese cada una de las patas al asiento dar la vuelta (asiento)

3. Dese la vuelta a la estructura para (cada pata de la silla):

4. Si la silla tiene respaldo, fíjese al asiento fijar (pata, asiento)

dar la vuelta (asiento)

si (la silla tiene respaldo):

fijar (respaldo, asiento)

Figura 7. Ejemplo de diagrama de flujo del algoritmo propuesto. Fuente autores.

10
5.3 Nuestro primer programa en el Laboratorio remoto: moviendo el robot

Objetivos específicos:

● Identificar cómo se relaciona el movimiento de las ruedas del robot con el


movimiento del robot completo
● Aprender a programar el movimiento del Robot

Contenidos específicos:

● Definición de motor de corriente continua


● Programación del movimiento de un Robot

Definición de motor de corriente continua

Un motor de corriente continua (conocido también como


motor CC o DC) es un componente que convierte la energía
eléctrica en energía mecánica, provocando un movimiento de
rotación continua en su eje.

Este tipo de motores son muy utilizados en un amplio rango de


electrodomésticos y aparatos además de en robótica. En
nuestro caso utilizaremos este tipo de motores para dotar de
movimiento el Robot disponible en el Pololu32U4.

Programando el movimiento del robot

Una característica básica de nuestro robot es su capacidad de moverse. Imaginemos que


queremos programar nuestro robot para que sea capaz de realizar cinco tipos de
movimientos: avanzar, retroceder, girar hacia la derecha, girar hacia la izquierda y girar
sobre sí mismo. Debemos tener en cuenta que estos movimientos deben darse utilizando
únicamente dos motores y por lo tanto dos ruedas. La configuración de velocidad para cada
rueda en función del movimiento que queremos realizar la podemos ver en la siguiente
imagen:

Ejemplo Pololu32U4

En el siguiente ejemplo se evidencia como mover los dos motores del robot pololu32U4
mediante el uso de botones.

// Arduino reference: https://www.arduino.cc/reference/en/


// Zumo32U4 reference: http://pololu.github.io/zumo-32u4-arduino-library/
#include <Wire.h>
#include <Zumo32U4.h>

Zumo32U4Motors motors;
Zumo32U4ButtonA buttonA;
Zumo32U4ButtonB buttonB;
Zumo32U4ButtonC buttonC;
// Zumo32U4ProximitySensors proxSensors;
// Zumo32U4LineSensors lineSensors;
int wasAnyPressed;
11
void setup() {
Serial.begin(9600);
wasAnyPressed = 0;
// proxSensors.initThreeSensors();
// lineSensors.initFiveSensors();
}

void loop() {

if (buttonB.isPressed()) {
motors.setSpeeds(100, 100); // Max. 400; Min -400
wasAnyPressed = 1;
} else if (buttonA.isPressed() ) {
motors.setSpeeds(-100,100); // Max. 400; Min -400
wasAnyPressed = 1;
} else if (buttonC.isPressed() ) {
motors.setSpeeds(100,-100); // Max. 400; Min -400
wasAnyPressed = 1;
} else {
motors.setSpeeds(0, 0);
if (wasAnyPressed == 1) {
Serial.println("Bienvenidos estudiantes unadistas al laboratorio remoto de robótica
movil de la UNAD!");
}
wasAnyPressed = 0;
}

// proxSensors.read();
// proxSensors.countsLeftWithLeftLeds(); // See pololu reference
// lineSensors.read(values, QTR_EMITTERS_ON); // See pololu reference
// ledBlue(HIGH);
// ledRed(HIGH);
// ledBlue(LOW);

6. ACTIVIDAD

6.1 Realizar un seguidor de línea en el POLOLU32U4.

Señor estudiante como actividad práctica en el laboratorio remoto y después de haber


revisado el tutorial: “Códigos ejemplo para el robot Pololu Zumo 32U4”, así como
realizar lectura del “Material didactico_Lab_Remoto_Leccion_Demo”, se le solicita que
realice un seguidor de línea en el entorno de desarrollo integrado (IDE) de Arduino de la
plataforma del laboratorio remoto de robótica móvil basado en plataforma Arduino y lo
compile, posteriormente después de verificar en la consola de esta misma ventana que su
código no tenga errores use el botón: “Enviar al robot” y prográmelo directamente en
robot.

12

Вам также может понравиться