Taller de Programaci[PleaseinsertPrerenderUnicode{ó ... · Taller de Programación en Python con...
Transcript of Taller de Programaci[PleaseinsertPrerenderUnicode{ó ... · Taller de Programación en Python con...
Taller de Programación en Python con Robots
Grupo de Desarrollo Lihuen
Agosto 2012
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Taller de Programación en Python con RobotsTemario
El proyecto: Entre Robots, juegos y lenguajes: unaexperiencia de aprendizaje real en las aulasLos RobotsIntroducción a PythonGuía práctica
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Primer curso de programación usando robots y Python
ObjetivosIncentivar el interés de los niños y jóvenes en el uso de latecnología con fines educativosTrabajar en mecanismos de resolución de problemas
Más específicamente ...Difundir y trabajar con Software LibreEnseñar aspectos de programación utilizando Python
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Primer curso de programación usando robots y Python
ObjetivosIncentivar el interés de los niños y jóvenes en el uso de latecnología con fines educativosTrabajar en mecanismos de resolución de problemas
Más específicamente ...Difundir y trabajar con Software LibreEnseñar aspectos de programación utilizando Python
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Entre Robots, juegos y lenguajes: una experiencia deaprendizaje real en las aulasEl proyecto
2012: Subsidiado por la Fundación YPFEquipamiento en las escuelas
20 robots1 netbook1 filmadora
Capacitación para docentes y alumnosAcompañamiento para su implementación
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Entre Robots, juegos y lenguajes: una experiencia deaprendizaje real en las aulasCapacitación UNLP
Dos cursosPrimer curso de programación Python con robots (2012)Programación de juegos sencillos con Python (2013)
Objetivos comunes: Iniciar a docentes y alumnos en elmundo de la programación usando software librePlataforma Linux con PythonTrabajo colaborativo entre docentes y alumnosAcompañamiento para su implementaciónLibro con actividades
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Entre Robots, juegos y lenguajes: una experiencia deaprendizaje real en las aulasMetodología de Enseñanza
En principio....Seis (6) clases teórico-prácticas de cinco (5) horas cada una enlas escuelas.Cada clase es quincenal, con lo cual, se dará un soporte virtualentre cada claseTrabajos individuales y/o grupales, de acuerdo a las actividadesa resolver.Encuentro final en donde participarán todas las escuelas en laFacultad de Informática
El cronograma se adapta en cada escuela
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Entre Robots, juegos y lenguajes: una experiencia deaprendizaje real en las aulasMetodología de Enseñanza
En principio....Seis (6) clases teórico-prácticas de cinco (5) horas cada una enlas escuelas.Cada clase es quincenal, con lo cual, se dará un soporte virtualentre cada claseTrabajos individuales y/o grupales, de acuerdo a las actividadesa resolver.Encuentro final en donde participarán todas las escuelas en laFacultad de Informática
El cronograma se adapta en cada escuela
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Programando con Python y RobotsRecursos Necesarios
Plataforma LinuxRobots inalámbricos
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Programando con Python y RobotsContenidos Mínimos
Conceptos básicos de programaciónImplementación de algoritmos sencillos.Introducción al lenguaje Python.Funciones para manipulación del robot
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Programando con Python y RobotsActividades
Se organizan actividades lúdicas (juegos, carreras, obras de teatro,bailes, etc.)
Donde se intenta que los alumnos presenten sus trabajos en unajornada (interna o externa)
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Programando con Python y JuegosContenidos Mínimos
A trabajar en el año 2013..Revisión de los conceptos básicos de programación y de lasintaxis básica de Python.Uso de una API para la construcción de Juegos (Pygame)Desarrollo de juegos sencillos
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Los RobotsCaracterísticas Básicas
Los Robots
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Los RobotsCaracterísticas Básicas
Basados en hardware y software libreInalámbricos3 Baterías AAVarios SensoresNacionales - Empresa RobotGroup
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
PythonCaracterísticas Básicas
Introducción a Python
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
PythonCaracterísticas Básicas
Es interactivoMulti plataformaPermite una programación prolija eintuitivaEs posible programar aplicacionescomplejasMuy usadoEs software libre
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
PythonEl Intérprete
Desde el shell de Python Utilizando un IDE: Geany
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Características Generales del Lenguaje PythonFunciones
Una función agrupa un conjunto de sentencias.Puede tener argumentosSintaxis:
def nombre(parametros)sentencia1sentencia2sentencia3
El cuerpo de la funcióndebe estar indentado!
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Características Generales del Lenguaje PythonEstructuras de Control
Sentencia if
if expresion:sentencia1sentencia2
Sentencia while
while expresion:sentencia1sentencia2
Sentencia for
for var in lista:sentencia1sentencia2
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Materiales adicionales
http://robots.linti.unlp.edu.ar/
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Primeros PasosInstalando
Primeros pasos
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Primeros PasosConectando el robot y la computadora
Debemos conectar el módulo de comunicaciones a un puertoUSB de la computadoraEncender el robot
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Primeros PasosInstalando
Descargamos desde...En Linux....
Desde el Gestor de paquetesDesde la consola
Instalar el paquete ...Repositorio oficial:deb http://repo.lihuen.linti.unlp.edu.ar/lihuen squeeze/lihuen4main contrib non-free
El paquete se llama: robot.Para instalar, agregar el repositorio al archivo /etc/apt/source.list
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Primeros PasosInstalando
Instalar el paquete ...Ejecutar con privilegios de administrador:apt-get updateapt-get install robot
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Primeros PasosInstalando
Instalar el paquete ...Ejecutar con privilegios de administrador:apt-get updateapt-get install robot
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Primeros PasosConectando el robot y la computadora
Importamos la librería para trabajar con el robot:from duinobot import *Encender el robot
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Primeros PasosIniciando la actividad
from du inobot import ∗b = Board ( "/dev / ttyUSB0 " )b . r e p o r t ( )mi_robot = Robot (b , 0)mi_robot . s e t I d (3 )
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Primeros Pasos¿Movemos el robot?
Hacia Adelante
forward(velocidad, tiempo)Ejemplos:forward()forward(1, 0.5)
Hacia Atrás
backward(velocidad, tiempo)Ejemplos:backward()backward(1, 0.5)
Probemos ...backward(-10)forward(-10)
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Primeros Pasos¿Movemos el robot?
Hacia Adelante
forward(velocidad, tiempo)Ejemplos:forward()forward(1, 0.5)
Hacia Atrás
backward(velocidad, tiempo)Ejemplos:backward()backward(1, 0.5)
Probemos ...backward(-10)forward(-10)
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Primeros Pasos¿Movemos el robot?
Girando a la Izquierda
turnLeft(velocidad, tiempo)Ejemplos:turnLeft()turnLeft(1, 0.5)
Girando a la Derecha
turnRight(velocidad, tiempo)Ejemplos:turnRight()turnRight(1, 0.5)
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Primeros PasosUsando los sensores
¿Cómo obtenemos los valores de los sensores?senses()ping()getObstacle()
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Primeros PasosGenerando un módulo
¿Cómo guardo mis programas?
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Primeros PasosGenerando un módulo
Un módulo es un archivo de texto cuya extensión en “.py“ ycontiene sentencias Python
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Primeros PasosGenerando un módulo
Generamos el archivo desde cualquier editorLo importamos desde el shellLo ejecutamos desde la consola
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots
Primer curso de programación usando robots y PythonAhora si..
A trabajar!! ..
Grupo de Desarrollo LihuenTaller de Programación en Python con Robots