COMEDOR INTELIGENTE

OBJETIVO

Construimos la maqueta Comedor Inteligente LOG 1427 y la conectamos a la placa microbit con el objetivo de medir la cantidad de sonido de la sala y si éste supera un umbral establecido encenderá una luz de aviso

Para utilizar la placa Micro:bit con el comedor inteligente recomendamos el uso de adaptadores como el LOG 8102 Conector Micro:bit.

CONEXIONES

 

  • Conectamos el cable VCC del circuito a cualquier pin rojo del zócalo
  • Conectamos el cable GND del circuito a cualquier pin negro del zócalo
  • Pin 0: conectamos el zumbador
  • Pin 1: conectamos la LDR
  • Pin 4: conectamos el sensor de sonido
  • Pin 6: conectamos el LED blanco
  • Pin 9: conectamos el LED blanco
  • Pin 8: conectamos el LED rojo
  • Pin 16: conectamos el LED verde

SENSOR DE SONIDO

El sensor de sonido dispone de 4 pines:

  • VCC
  • GND
  • Pin analógico
  • Pin digital

Utilizaremos el pin analógico o el pin digital para leer la señal de sonido que está detectando el sensor. El sensor dispone de dos pequeños potenciómetros asociados a cada uno de los pines. Utilizaremos esos potenciómetros para regular la sensibilidad del sensor.

Si decidimos hacer la lectura a través del pin digital, éste nos devolverá el valor 1 si no detecta sonidos de alto volumen, y 0 cuando detecte sonidos elevados. 

Si realizamos la lectura a través del pin analógico nos devolverá un valor de 0 a 1024. Cuanto mayor sea este valor menor ruido estará detectando

BLOQUES

Lectura analógica

El sensor de sonido lo conectamos aun pin analógico. Un pin analógico puede devolver un valor desde 0 hasta 1024. Para saber la intensidad del sonido que está detectando el sensor, utilizaremos este bloque. Lo introducimos en un condicional y lo comparamos con el umbral de ruido que nos hemos marcado. En función del ruido detectado encenderemos el led verde o rojo.

PROGRAMACIÓN

El led verde se enciende en un ambiente silencioso y el led rojo se enciende cuando se detecta mucho ruido

CRUCE DE SEMÁFOROS

OBJETIVO

Programar la secuencia de 2 semáforos de forma que gestionen el tráfico de dos calles que se cruzan, evitando la colisión de los coches

LISTA DE MATERIALES

LÓGICA DE PROGRAMACIÓN

Antes de empezar a programar, es conveniente tener clara la lógica del programa.

Cada semáforo gestionará el tráfico de una calle en el punto de cruce de ambas calles, de tal forna que siempre que el semáforo de una calle esté en verde, la otra estará en rojo. La secuencia de colores de un semáforo es «Verde – Amarillo – Rojo». El semáforo de una calle pasará a estar verde cuando el de la calle cortante esté en rojo

Lo más recomendable para planificar la lógica del programa es olvidarnos de la placa y la programación y tratar de pensar cómo funciona un cruce de semáforos en la realidad. Lo mejor es coger papel y lápiz.

CIRCUITO

Hemos asignado los siguientes pines:
    • P0 verde semáforo 1
    • P1 amarillo semáforo 1
    • P2 rojo semáforo 1
    • P5 verde semáforo 2
    • P8 amarillo semáforo 2
    • P11 rojo semáforo 2

Realizamos las conexiones en la placa board. Los positivos de los diodos LED van a su correspondiente pin del zócalo de la placa microbit (conector amarillo) y los negativos a GND (conector negro) (sólo utilizamos un latiguillo para los negativos).

PROGRAMACIÓN

Utilizamos los bloques escritura digital pin para encender o apagar cada uno de los leds del semáforo y el bloque pausa para mantener el led encendido o apagado un tiempo

  •  
 
Más información en: https://micrologt.blogspot.com/

LED PARPADEANDO

OBJETIVO

Conectar un led a microbit (pata positiva al pin 0 y pata negativa a GND) y microbit hará que parpadee

BLOQUES

Sección Avanzado

Pulsando sobre la sección avanzado aparecerán nuevas secciones para avanzar con la programación de microbit utilizando funciones más complejas.

Sección Pines

Entre las secciones que aparecen tras pulsar la sección avanzado, encontramos la sección pines.

Contiene los bloques necesarios para programar los 20 pines para conexiones externas que contiene microbit.

Bloque escritura pin digital

La placa microbit contiene 18 pines digitales que podemos utilizar para conectar dispositivos digitales. Estos pines están enumerados: de P0 a P16, p19 y P20.

Si conectamos por ejemplo un Led al pin 0, si escribimos en el pin el bit 0, apagaremos el LED y si escribimos en el pin el bit 1, encenderemos el LED.

Así, podemos decir que escribir un bit 0 en un pin digital equivale a apagar el dispositivo que tengamos conectado a ese pin y escribir un pin 1 equivale a encender el dispositivo conectado

0 - Apagar
1 - Encender

CIRCUITO

Para programar el parpadeo de un Led conectado a los pines de la placa, empezaremos por la construcción del circuito. Utilizaremos latiguillos cocodrilo para conectar el LED a Microbit.

Los Leds tienen una pata positiva (larga) y una negativa (corta). La pata negativa la conectamos con un latiguillo cocodrilo al conector GND y la pata positiva al pin0

PROGRAMACIÓN

Para programar el parpadeo de un led permanente, introducimos los bloques dentro del bucle para siempre. Daremos la orden de encender el led, enviando el bit 1. Mantenemos el led encendido realizando una pausa de medio segundo antes de proceder a apagar. Para apagar el led escribimos el bit 0 y realizamos otra pausa de medio segundo con el led apagado.

CONEXIONES EXTERNAS

Microbit en su base tiene un conjunto de 20 conexiones que podemos utilizar para conectar operadores y circuitos: leds, motores, sensores… etc. Se dividen en pines analógicos y digitales como se muestra en la siguiente imagen:

Algunas de estas conexiones están compartidas con leds de la matriz que incorpora Micro:bit. 

Para poder utilizar estos pines es necesario desconectar la matriz de leds. Para ello necesitarás el bloque acivar leds falso que encontrarás en la sección led, pulsando en …more.

Arrastra el bloque activar leds falso dentro del bloque al iniciar y al conectar la placa lo primero que hará es desconectar la matriz de leds, pudiendo así utilizar todos los pines del conector de 20 pins de la placa microbit.

Para facilitar la identificación y conexión de estos pines, podemos utilizar zócalos como este, donde tenemos serigrafiados cada uno de los pines de conexión.

MUEVE EL LED

OBJETIVO

Mover un led por la matriz de leds utilizando la inclinación de la placa micro:bit

PROGRAMACIÓN

Creamos dos variables (X e Y) para controlar la posición del Led que vamos a mover por la pantalla. Al inicio del programa, el led estará encendido y colocado en el centro de la matriz (2,2)

Si movemos la placa microbit colocando el logotipo hacia arriba, el led debe bajar en su columna actual. La primera posición dentro de una columna se corresponde con Y=0 y la última con Y=4. Si la posición Y actual es inferior a 4, el led puede seguir bajando sin salir de la matriz, así procedemos a apagar el led actual, aumentar en un posición la Y y encender el led. Así veremos en el led ha bajado una posición en su columna

Si movemos la placa colocando el logotipo hacia abajo, el efecto será el contrario. El led subirá un puesto, siempre que no esté ya en la posición 0.

Si movemos la placa hacia la derecha o la izquierda, el código será similar a los anteriores pero modificando la coordenada X.

El programa completo quedaría así:

PIEDRA PAPEL O TIJERA

Vamos a programar la placa Micro:bit para que de forma aleatoria, al agitarla, nos muestre el icono de una piedra, un papel o una tijera.

Asignamos a cada icono un número, de tal forma que al agitar la placa, ésta elegirá un número aleatorio entre 0 y 2. En función del número elegido nos mostrará un icono:

0 – Piedra

1 – Papel

2 – Tijera

Creamos una variable llamada «icono», a la que asignamos el valor aleatorio.

Número aleatorio

A continuación en función del número aleatorio que haya salido, mostraremos un icono u otro

ACELERÓMETRO

OBJETIVO

La matriz de leds muestra un ángulo en la dirección hacia la que se inclinó la placa.

BLOQUES

Bloque aceleración

Se encuentra dentro de la sección Entradas.

El bloque aceleración proporciona las coordenadas X, Y, Z de la posición de la placa microbit.

En función del valor de cada una de las coordenadas podremos saber si la placa está inclinada en algún sentido

PROGRAMACIÓN

Comprobamos las coordenadas x e y. 

Si el valor de X es inferior a 0, estará inclinada a la izquierda.

Si el valor de X es superior a 0, estará inclinada a la derecha.

Si el valor de Y es mayor que 20, estará inclinada hacia abajo.

Si el valor de Y es menor que 20, estará inclinada hacia arriba.

CONDUCTIVIDAD

OBJETIVO

Conectamos a microbit 3 objetos de diferentes materiales, uniéndolos con un latiguillo a los pines 0, 1 y 2. Al tocar sobre ellos, microbit mostrará una cara contenta si el material es conductor de electricidad.

BLOQUES

Para realizar esta práctica no necesitamos ningún bloque que no hayamos visto hasta ahora.

La lógica de esta práctica consiste en visualizar una cara contenta si detectamos que se ha tocado alguno de los pines 0, 1 y 2. 

Con una mano tocaremos el pin GND, y con la otra mano el material. Si el material no es conductor, la corriente no pasará desde el pin hasta GND, no detectándose la pulsación

PROGRAMACIÓN

Para mejorar la programación podemos utilizar el operador lógico O

Operador Lógico O

Se encuentra en la sección Lógica y se utiliza para unir varias condiciones en un bloque condicional.

La condición será cierta si alguna de las condiciones unidas por el operador O lo es. Si queremos unir más de dos condiciones, basta con introducir un nuevo bloque O en alguno de los hexágonos de otro bloque O

Cuando programes recuerda ¡No hay una única solución válida!

SALIDAS

OBJETIVO

Conectar un latiguillo al pin 0 y otro al pin GND. Cuando toquemos los extremos de ambos latiguillos a la vez, la matriz de leds muestra un corazón.

BLOQUES

Bloque pin está presionado

Dentro de la sección entradas, localizamos este bloque. Lo utilizaremos dentro de un bloque condicional para leer una entrada digital de la placa microbit. Cuando juntamos los extremos de dos latiguillos conectados a los pines 0 y GND, este bloque devolverá el valor verdadero, igual que si hubiésemos conectado un pulsador y lo hubiésemos presionado.

Borrar la pantalla

Dentro de la sección básicos, localizamos este bloque, cuya función es apagar todos los leds de la matriz de leds

PROGRAMACIÓN

PULSADORES

OBJETIVO

Al presionar el pulsador A microbit muestra una cara contenta y al presionar el pulsador B muestra una cara triste.

BLOQUES

Sección Entrada

Contiene los bloques relacionados con los elementos que generan una entrada en la placa Micro:bit.

Bloque botón presionado

Se utiliza dentro de instrucciones condicionales. Realiza la lectura de los pulsadores A o B que incluye la propia placa Micro:bit y devolverá un valor verdadero cuando se presione el pulsador, y un valor falso cuando no se haya presionado

Sección lógica

Contiene los bloques relacionados con la lógica de programación de los programas: Bloques condicionales, comparadores y booleanos

Bloque Si... Entonces... Si no...

En el hexágono "verdadero" introduciremos la condición a evaluar, en función de cuyo resultado, si es verdadera se realizarán las acciones indicadas en los bloques justo debajo de entonces y si es falsa, se realizarán las acciones de los bloques que hay bajo si no

Bloque Si...

Similar al bloque anterior pero no dispone de rama si no. No obstante si una vez hecho el programa queremos modificarlo y agregar bloques en caso de que la condición sea falsa, basta con pulsar en + y aparecerá el grupo si no

PROGRAMACIÓN