Planificación anual del Taller de Informática 2017

Programación y resolución de problemas Scratch para Arduino

Corinne Schoepf y Carolina Alonso

Escuela Provincial de Educación Técnica N° 6 – Neuquén



RESUMEN

El proyecto “Enseñar pensamiento lógico, mediante la programación en la escuela Media” no se quedó en los papeles, como lo muestran Corinne Schoepf y Carolina Alonso. Con “Programación y resolución de problemas Scratch para Arduino”, las docentes lo ponen en marcha y lo actualizan en la planificación anual del Taller de Informática de la EPET N° 6, destinada a la enseñanza de estudiantes de 3er Año, divisiones “A”, “B”, y “C” de la Institución, integrándolo a los contenidos del curso, en miras del perfil de los Técnicos Electrónicos en Comunicaciones. No obstante, se trata de una planificación flexible, que puede ser recreada en otros contextos.

PALABRAS CLAVE

Planificación, taller de informática, programación, Scratch, Arduino


PRESENTACIÓN

El presente proyecto de enseñanza de la programación y resolución de problemas Scratch para Arduino ha sido diseñado por las docentes del Taller de Informática de la Escuela Provincial de Educación Técnica (EPET) N° 6 de Neuquén Capital, para unos destinatarios específicos, las/os estudiantes de 3er Año, divisiones “A”, “B”, y “C” de la Institución, e integra los contenidos de la programación anual de la materia, aunque es flexible y puede adaptarse a otros contextos.

Pone en marcha y actualiza la propuesta generada en la Institución en el año 2015, mediante la cual se incorporó a la currícula de 2do y 3ero del Ciclo Básico la programación básica y Scratch para Arduino, a partir del proyecto “Enseñar pensamiento lógico, mediante la programación en la escuela Media”, que se presenta junto con este programa.

Es propósito principal, entonces, darle continuidad y concreción a la propuesta original y trabajar desde las primeras rotaciones de los 3ros años en la incorporación de estos conceptos, que son propios e inherentes al perfil de egresado de Técnicos electrónicos en comunicaciones. Para ello, se integra la programación a los contenidos que se desarrollarán en el año.

En este sentido, y como la evaluación diagnóstica inicial mostró que un alto porcentaje de los alumnos interactúan corrientemente con las computadoras, ya sea por contar con ellas en su hogar o en la Institución a través del plan Conectar Igualdad, en pos de aprovechar ese capital simbólico, los docentes de Informática decidimos profundizar y actualizar nuestra formación, cursando “Introducción a la Programación y su Didáctica” trayecto de perfeccionamiento organizado por la Fundación Sadosky y la Universidad del Comahue, que nos aportó las herramientas básicas de las Ciencias de Computación.

PROPÓSITOS

Propiciar la reflexión acerca de la utilidad de los programas para representar ideas y resolver problemas.

Incentivar la creación de programas por parte de los alumnos, de manera que no se limiten a ser usuarios de aplicaciones realizadas por terceros.

Estimular la confianza de los alumnos mediante el uso y la ejecución de programas diseñados por ellos mismos.

Promover la reflexión crítica y el trabajo colaborativo a través de la detección y corrección de errores de los programas propios y ajenos.

Fomentar el trabajo con conceptos relacionados con las Ciencias de la Computación para desarrollar habilidades de pensamiento computacional.

Favorecer la apropiación de la noción de que las computadoras sirven para ejecutar programas y realizan lo que el programa indique.

OBJETIVOS

Que el estudiante reconozca los diferentes dispositivos electrónicos que se usan en ensamble de circuitos, conozca cual es la función de cada uno de ellos y sepa cómo se ubican en un circuito (resistencias, leds, potenciómetros, puentes, swiches).

Que el estudiante esté en capacidad de desarrollar un programa lógico que ejecute una acción determinada y se muestra en el mundo físico a través del diseño y montaje de un circuito.

FUNDAMENTACIÓN

La programación es una de las áreas más importantes de las Ciencias de la Computación. Estas abordan el estudio de las computadoras desde los principios lógicos y formales que hacen posible su funcionamiento, es decir, más allá de los detalles que presentan las tecnologías concretas que utilizamos a diario. Como disciplina, la programación está orientada al desarrollo de una serie de habilidades de abstracción y operacionalidad. El primer tipo de habilidades incluye técnicas como la simplificación de problemas, la definición de soluciones generales aplicables a problemas similares y la asignación de nombres significativos a las distintas partes de una solución. El segundo tipo de habilidades, las operacionales, supone la definición de soluciones en términos de un conjunto de pasos que deben ejecutarse en un orden determinado para alcanzar un objetivo.

Como se adelantó, en el ciclo lectivo 2015 se generó el proyecto “Enseñar pensamiento lógico, mediante la programación en la escuela Media” y se realizaron diversas acciones institucionales tendientes a introducir la enseñanza de la programación en la currícula del Ciclo básico, y su continuación en el Ciclo Superior, entre otras, el curso “Aula Modelo” y el proyecto “Animate a Programar”. El Consejo Provincial de Educación dio su aval a la iniciativa y la declaró de interés educativo mediante resolución Nº 1725 del 17 de septiembre de 2015. Por su parte, el Consejo Federal de Educación, a través de la resolución Nº263/15, declaró de importancia estratégica para el Sistema Educativo Argentino de la enseñanza y aprendizaje de la programación en todas las escuelas argentinas con el objetivo de fortalecer el desarrollo económico y social de la Nación, conforme lo establecido por el artículo 3º de la Ley de Educación Nacional.

Para explicar qué son Scratch y S4A, seguimos el artículo de Álvaro Contreras, “Programación con S4A y Arduino” disponible en http://www.eduteka.org/articulos/arduino1

Contreras explica que “Scratch es un entorno gráfico de programación de computadores” de uso relativamente común en el ámbito escolar, que se destaca por admitir “la conexión de dispositivos externos equipados con sensores”, como la placa Arduino, para la cual se “creó una variante de Scratch […], Scratch Para Arduino (S4A), que permite controlar la tarjeta con ese entorno. Todos estos dispositivos posibilitan enriquecer los ambientes de aprendizaje estimulando el desarrollo del pensamiento computacional mediante la programación de computadores”.

El S4A es un entorno de programación gráfico similar al Scratch que permite interactuar con los periféricos del computador y también permite interactúar con el Arduino, lo que facilita la generación de actividades escolares “con diferentes grados de dificultad, en las cuales los estudiantes pueden construir simulaciones o juegos a partir de la lectura de datos del mundo físico. Por ejemplo, simular el funcionamiento de un semáforo o generar valores aleatorios que simulen tanto el lanzamiento de un dado como los resultados” que se obtienen.

En cuanto al Arduino, se trata de “una plataforma libre, que permite el prototipado de proyectos que requieren un microcontrolador para basar su funcionamiento. Realmente, la aplicación del Arduino puede ir más allá de un simple proyecto, ya que [puede] emplear[se] en muchos ámbitos de la vida cotidiana.” (Diplomatura en Sistemas embebidos, Universidad Nacional de Río Cuarto, Anexo 1 del proyecto, p. 23). Además, desde el punto de vista pedagógico, una “de las principales ventajas del Arduino es que realmente es una tarjeta entrenadora, lo que permite que sólo conectes periféricos o módulos auxiliares a la misma” (23).

METODOLOGÍA

El programa anual del Taller se centra, entonces, en la enseñanza de algunos de los principios básicos de programación y está organizado para abordar conceptos fundamentales del área, a través de actividades ideadas específicamente. La primera parte se enfoca en la forma en que se comportan las computadoras al ejecutar programas y en la manera en que se deben expresar las instrucciones al programar. Además, en esta parte se introducirá el concepto de repetición, que permite reducir de forma considerable el código escrito.

Luego se trata el uso de alternativas condicionales, es decir, instrucciones cuya ejecución esté supeditada al cumplimiento de una condición, lo que posibilita la inclusión de la toma de decisiones en los programas, de manera que el funcionamiento de estos dependa de cierta información sobre el contexto en el que se ejecutan. Posteriormente, se recuperarán y reformularán los conceptos de repetición y condición trabajados en las partes anteriores, a través de un nuevo tipo de repetición: la repetición condicional. Finalmente, se aborda la realización de programas más generales mediante un mecanismo conocido como parametrización. Por último, es importante para motivar y concretizar el aprendizaje de los alumnos, procurar indagar en algunos aspectos de la interactividad por medio de la programación de juegos.

Para facilitar el trabajo en clase, los contenidos del proyecto se presentan insertados en las secuencias didácticas, en las que la realización de actividades se integra con la problematización de los conceptos involucrados en ellas; a esto sigue un grupo de actividades tanto en papel como en la PC que funcionan como ejercicios, que permiten reforzar y profundizar lo aprendido.

En el plan de trabajo anual se planea profundizar en los conceptos tratados en torno de los programas Lightbot, Scratch y Human Resource Machine, además de introducir el Scratch para Arduino, propio del enfoque electrónico. Se establece un desarrollo en espiral, desde los conceptos más generales a los específicos. La determinación de la profundidad de los contenidos debe contemplar la potencial posibilidad de aprendizaje por parte de los alumnos. Las metodologías de trabajo deben ser activas, en equipos y esencialmente prácticas, poniendo énfasis en trabajos que impliquen interacción entre programas. Se prevén:

Actividades individuales y de a pares, con y sin computadoras.

Exposiciones breves del docente.

Resolución de guías de actividades y resolución de problemas matemáticos, geométricos, lógicos y de esquemas en papel y en la PC.

Socialización en clase de las soluciones de los ejercicios.

CONTENIDOS DE LA MATERIA1

Programa sintético

UNIDAD 1: PROGRAMACION

Noción de programa y autómata. Comandos (acciones) y valores (datos).

Estrategia de división en subtareas. Planificación de la solución de un problema de programación. Identificación de subproblemas. Procedimientos.

Denominación y síntesis del objetivo de un procedimiento.

Identificación de patrones.

Parámetros.

Repeticiones simples. Alternativas condicionales. Repeticiones condicionales.

Uso de las herramientas Scratch, Lightbot y Human Resource Machine.

Procesamiento de estructuras lineales y diseño de actividades de programación típicas, incluyendo la selección de operaciones primitivas del sistema de cómputo elemental o autómata.

Metodología para la corrección de errores del programa a partir del análisis de la diferencia entre lo que se espera del programa y lo que este efectivamente hace.

UNIDAD 2: ELECTRONICA Y COMPONENTES ELECTRONICOS

Electrónica Concepto. Voltaje. Voltaje DC y AC. Corriente. Resistencia. Ley de ohm. Sistemas electrónicos. Entradas. Salidas. Procesamiento de señal. Señales electrónicas. Variable analógica y digital. Entrada/salida analógica y entrada/salida digital. Divisor de voltaje. Conversor de señal CAD o ADC. Modulación por ancho de pulso PWM. Comunicación serial.

Componentes electrónicos: Microcontrolador. Protoboard. Resistencias. Tabla de colores de resistencias. Diodo. Transistor. Condensador. Led. Led RGB. Pulsador. Reed Switch. Potenciometro. Fotocelda. Zumbador o Buzzer. Motor DC.

Arduino. Familia Arduino. Expandir Arduino con Shield. Placa Arduino Uno y sus partes.

UNIDAD 3: SCRACHT PARA ARDUINO (S4A)

Entorno Scratch para Arduino (S4A) Estructuras. Variables. Operadores booleanos, de comparación y matemáticos. Estructuras de control. Condicionales. Ciclos. Funciones. Funciones digital y analógica

Tutoriales:

1)Led intermitente. Con y sin temporizador. Repetitivo (por siempre, condicional, repetir determinado)

2)Encender Led con pulsador.Variantes.

Programa analítico



ESTRATEGIAS DE EVALUACIÓN

La evaluación debe ser una instancia de aprendizaje, la valoración debe ser parte de la enseñanza y hacerse continuamente. Vamos a evaluar el proceso que va haciendo el alumno para resolver las actividades propuestas y los resultados obtenidos.

Se fomentará la autoevaluación y la coevaluación que permitirá trabajar con el error rectificándolo o aprendiendo a través de él. Al permitir la autoevaluación los alumnos verifican los productos o resultados, comprobando que su alternativa de solución funciona. Tendremos en cuenta:

Resolución de actividades y problemas matemáticos, lógicos, tablas de doble entrada, etc.

Participación en clase.

Exposición de soluciones de ejercicios.

Resolución de algoritmos y programas de forma eficiente.

HERRAMIENTAS

Scratch (2.0)

Lightbot 1

Human Resource Machine

Scratch para Arduino(S4A)

Componentes electrónicos, placa Arduino Uno

PC o netbook de alumnos

BIBLIOGRAFÍA DE LOS ALUMNOS

Cuadernillo elaborado por la docente con las actividades prácticas.


1 El material básico de este apartado se ha extraído de Factorovich, Pablo Matías. (2015). Actividades para aprender a programar: Segundo ciclo de la educación primaria y primero de la secundaria. CABA: Fundación Sadosky. Disponible en http://www.fundacionsadosky.org.ar/wp-content/uploads/2015/08/Actividades%20para%20aprender%20a%20Programar.pdf y del portal Eduteka, disponible en http://eduteka.icesi.edu.co/proyectos.php/2/32124