Ya hemos hablado anteriormente del lenguaje de programación Scratch y de su compatibilidad con el conjunto educativo WeDo. Hoy queremos enseñaros a programar en Scratch un pequeño experimento. Vamos a montar y programar una barrera que responda al sensor de distancia, además, abriremos las barreras (la física y la digital) sólo si el usuario introduce la clave numérica correcta.
Scratch-WeDo: un experimento sencillo
Nuestro montaje es muy sencillo
– El vehículo es opcional –
Scratch nos ofrece un escenario virtual que podemos hacer interaccionar con el mundo físico, vamos a aprovechar esto para representar la llegada del vehículo a la barrera, además presentaremos información por pantalla de las lecturas del sensor de distancia.
Debemos tener en cuenta que, aunque fácil e intuitivo, este lenguaje de programación gráfica tiene muchísimas posibilidades, por lo que tendremos que estar atentos para no perdernos.
Esta es la interfaz de programación de Scratch
A la izquierda los menús de funciones o bloques, en el centro las configuraciones de los objetos (programas, comportamientos, etc…) y a la derecha el escenario virtual y la lista de objetos que forman parte de nuestro proyecto.
Para este proyecto necesitaremos 2 objetos:
- Vehículo
- BarreraCada uno de estos objetos estará controlado por su programa o programas, pero pueden interactuar entre ellos.El programa del vehículo (Objeto 1) es el siguienteNOTA: Las señales Open y Close serán usadas para controlar el Objeto 2
Como veis el programa es relativamente sencillo de seguir, voy a explicar un poco mejor la parte del final (marcada con un óvalo). Mientras que no hayamos llegado a la barrera, si queremos que lo que ocurre en la realidad – se está acercando un objeto a la barrera – quede representado en el escenario virtual, debemos hacer que el vehículo virtual avance en función de las mediciones del sensor de distancia.
Para ello, teniendo en cuenta que el escenario no es más que una representación en coordenadas x, y, dejaremos fija la Y y nos desplazaremos por el eje X en dirección a la barrera.
Como el sensor de distancia mide de 0 a 100 tendremos que movernos a la posiciónX – (100-Medida del Sensor) – restamos porque el coche se mueve hacia la izquierda –
Además de controlar que, si el vehículo se para en la realidad (la medición del sensor no varía), el vehículo virtual no debe moverse.
Para eso utilizamos la condición “Esperar hasta que NO(Valor Anterior= Nuevo Valor)” es decir, esperamos hasta que Valor Anterior y Nuevo Valor son distintosY el programa de la barrera (Objeto 2) es este
Al iniciar el programa nos aseguramos de la barrera sea visible, si recibimos “Open”, la ocultamos, si recibimos “Close” la volvemos a mostrar.
A continuación podéis ver el vídeo del proceso de programación paso a paso.
Esto es lo que muestra el escenario virtual en las distintas fases del programa
Al inicio
Cuando nos pide contraseña
Introducimos contraseña
La barrera desaparece
Espero que os haya resultado útil, ya que este es el primero de una serie de artículos sobre WeDo y Scratch, para cualquier duda, podéis preguntar en el foro.