Taller de Programaci[PleaseinsertPrerenderUnicode{ó ... · Taller de Programación en Python con...

Preview:

Citation preview

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

Recommended