Clase 1: Conceptos Generales
Grupo de Desarrollo Lihuen
Agosto 2012
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Clase 1Temario
El proyecto: Entre Robots, juegos y lenguajes: unaexperiencia de aprendizaje real en las aulasConceptos básicos
Introducción al Software LibreLicencias Creative Conmons
GNU/LinuxLos RobotsIntroducción a PythonGuía práctica
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
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 LihuenClase 1: Conceptos Generales
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 LihuenClase 1: Conceptos Generales
Entre Robots, juegos y lenguajes: una experiencia deaprendizaje real en las aulasEl proyecto
Equipamiento en las escuelas20 robots1 netbook1 filmadora
Capacitación para docentes y alumnosAcompañamiento para su implementación
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
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 LihuenClase 1: Conceptos Generales
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 LihuenClase 1: Conceptos Generales
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 LihuenClase 1: Conceptos Generales
Programando con Python y RobotsRecursos Necesario
Plataforma LinuxRobots inalámbricos
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
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 LihuenClase 1: Conceptos Generales
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 LihuenClase 1: Conceptos Generales
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 LihuenClase 1: Conceptos Generales
Entre Robots, juegos y lenguajes: una experiencia deaprendizaje real en las aulasEquipo de Trabajo UNLP
Coordinación General Claudia Banchoff - Javier DíazCoordinación Capacitadores Sofía MartinCoordinación Pedagógica Celeste FelipeCoordinación Administrativa Valeria RivasCapacitadores Andrea Gómez del Mónaco - Antonella Iocco -
Ignacio Rodriguez - Matias Perozo - Leonel Farkas -Damián Mel -
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Software Libre
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Software LibreConceptos Básicos
Propietario/PrivativoSharewareFreewareComercial
Free/Libre Software FLOSSOpen Source Software FLOSS
http://www.gnu.org/philosophy/categories.es.html
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Software LibreConceptos Básicos
Propietario/PrivativoSharewareFreewareComercial
Free/Libre Software FLOSSOpen Source Software FLOSS
http://www.gnu.org/philosophy/categories.es.html
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Software LibreConceptos Básicos
Propietario/PrivativoSharewareFreewareComercial
Free/Libre Software FLOSSOpen Source Software FLOSS
http://www.gnu.org/philosophy/categories.es.html
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Software LibreLibertades ...
Se puede usar concualquier propósitoSe puede estudiar yadaptarSe puede distribuircopiasSe puede mejorar ypublicar
Tener en cuentaNO significa que notenga licencia
Por lo general, la licencia permite todo lo anterior.¿GPL?
http://www.gnu.org/philosophy/free-sw.es.html
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Software LibreLibertades ...
Se puede usar concualquier propósitoSe puede estudiar yadaptarSe puede distribuircopiasSe puede mejorar ypublicar
Tener en cuentaNO significa que notenga licencia
Por lo general, la licencia permite todo lo anterior.¿GPL?
http://www.gnu.org/philosophy/free-sw.es.html
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Compartiendo obrasLicencias Creative Commons
¿Conocen la iniciativa Creative Commons?
Organización sin fines de lucroCreada por James Boyle, Michael Carroll y Lawrence Lessig en2001.Promueve la libertad de compartir creaciones en las cualesel autor puede elegir una licencia para su obra.Basada en la GPL, aunque no está pensada para Software
http://www.gnu.org/philosophy/free-sw.es.html
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Compartiendo obrasLicencias Creative Commons
¿Conocen la iniciativa Creative Commons?
Organización sin fines de lucroCreada por James Boyle, Michael Carroll y Lawrence Lessig en2001.Promueve la libertad de compartir creaciones en las cualesel autor puede elegir una licencia para su obra.Basada en la GPL, aunque no está pensada para Software
http://www.gnu.org/philosophy/free-sw.es.html
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Compartiendo obrasLicencias Creative Commons
¿Conocen la iniciativa Creative Commons?
Organización sin fines de lucroCreada por James Boyle, Michael Carroll y Lawrence Lessig en2001.Promueve la libertad de compartir creaciones en las cualesel autor puede elegir una licencia para su obra.Basada en la GPL, aunque no está pensada para Software
http://www.gnu.org/philosophy/free-sw.es.html
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Licencias Creative Commons
Reconocimiento(Attribution) El material creado puede serdistribuido, copiado y exhibido por terceras personas sise muestra en los créditos.
No Comercial (Non commercial) El material original y los trabajosderivados pueden ser distribuidos, copiados y exhibidosmientras su uso no sea comercial.
Sin Obra Derivada (No Derivate Works) El material creado puedeser distribuido, copiado y exhibido pero no se puedeutilizar para crear un trabajo derivado del original.
Compartir Igual (Share alike) El material creado puede sermodificado y distribuido pero bajo la misma licenciaque el material original.
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
GNU/Linux
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Entorno GNU/Linux¿Qué es GNU/Linux?
Es un sistema operativo libreSe compone del software encargado de la interacción entre lasaplicaciones y el hardware (denominado núcleo -Linux) y unconjunto de aplicaciones para los usuarios tales como editoresde texto, programas multimedia, entornos gráficos, etc.incluidos en el proyecto GNU
Por eso es: GNU/LinuxUn poco de historia:http://www.gnu.org/gnu/gnu-history.es.html
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Entorno GNU/Linux¿Distribuciones Linux?
Hay muchas . . .No todas libres ...
En las netbooks: RxART, Ubuntu, RedHatLihuen: http://lihuen.info.unlp.edu.arLa mayoría, con entornos son muy parecidos ...
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Entorno GNU/LinuxIngresando al sistema
Como están acostumbrados, nos identificamos en el sistemaIngresamos Usuario y Clave
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Entorno GNU/LinuxEl escritorio
Ahora veremos las distintas componentes del escritorio detrabajoLas mostramos sobre Lihuen, pero son generales
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Entorno GNU/LinuxEl manejo de archivos
Algunas consideraciones sobre Linux
El sistema de archivosestá organizado endirectorios.Los discos NO tienenlos nombres A:, C:etc,Se pueden “montar”en un directorioTodo está dentro deldirectorio / raíz
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Los RobotsCaracterísticas Básicas
Los Robots
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Los RobotsCaracterísticas Básicas
Basados en hardware y software libreInalámbricos3 Baterías AAVarios SensoresNacionales - Empresa RobotGroup
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
PythonCaracterísticas Básicas
Introducción a Python
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
PythonCaracterísticas Básicas
Es interactivoMulti plataformaPermite una programación prolija eintuitivaEs posible programar aplicacionescomplejasMuy usadoEs software libre
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
PythonEl Intérprete
Consola
Geany
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Materiales adicionales
http://robots.linti.unlp.edu.ar/
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Primeros PasosInstalando
Primeros pasos
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
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 LihuenClase 1: Conceptos Generales
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 LihuenClase 1: Conceptos Generales
Primeros PasosInstalando
Instalar el paquete ...Ejecutar con privilegios de administrador:apt-get updateapt-get install robot
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Primeros PasosInstalando
Instalar el paquete ...Ejecutar con privilegios de administrador:apt-get updateapt-get install robot
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
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 LihuenClase 1: Conceptos Generales
Primeros PasosIniciando la actividad
from du inobot import ∗boards ( )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 LihuenClase 1: Conceptos Generales
Primeros Pasos¿Movemos el robot?
Hacia Adelanteforward(velocidad, tiempo)Ejemplos:forward()forward(1, 0.5)
Hacia Atrásbackward(velocidad,tiempo)Ejemplos:backward()backward(1, 0.5)
Probemos ...backward(-10)forward(-10)
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Primeros Pasos¿Movemos el robot?
Hacia Adelanteforward(velocidad, tiempo)Ejemplos:forward()forward(1, 0.5)
Hacia Atrásbackward(velocidad,tiempo)Ejemplos:backward()backward(1, 0.5)
Probemos ...backward(-10)forward(-10)
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Primeros Pasos¿Movemos el robot?
Girando a la IzquierdaturnLeft(velocidad, tiempo)Ejemplos:turnLeft()turnLeft(1, 0.5)
Girando a la DerechaturnRight(velocidad,tiempo)Ejemplos:turnRight()turnRight(1, 0.5)
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Primeros PasosGenerando un módulo
¿Cómo guardo mis programas?
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Primeros PasosGenerando un módulo
Un módulo es un archivo de texto cuya extensión en “.py“ ycontiene sentencias Python
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Primeros PasosGenerando un módulo
Generamos el archivo desde cualquier editorLo importamos desde el shellLo ejecutamos desde la consola
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Primer curso de programación usando robots y PythonAhora si..
A trabajar!! ..
Grupo de Desarrollo LihuenClase 1: Conceptos Generales
Top Related