MICRO:BIT PRÁCTICA 2 - SENTENCIA IF- SENSORES LUZ Y TEMPERATURA- PYTHON


SENTENCIA IF

Nos permite realizar una serie de acciones cuando se cumple una condición, el editor de Python para Microbit nos ayuda a recordar sus sintaxis con la herramienta Code Snippets en la parte superior de la pantalla






Si seleccionamos if





En pantalla aparecerá :





Donde condition es la condición que debe cumplirse para realizar las instrucciones que escribiremos a continuación.

Estas condiciones pueden ser eventos de la propia tarjeta o operaciones lógicas que nosotros diseñaremos.

Por ejemplo podemos tener como condición si se ha pulsado un botón

button_a.is_pressed()
button_b.is_pressed()


nos indica si a o b están pulsados en ese momento, si queremos saber si ha sido pulsado utilizaremos
button_a.was_pressed()
button_b.was_pressed()

ambos pueden combinarse mediante funciones lógicas como and

if button_a.is_pressed() and button_b.is_pressed():
        display.scroll("AB")
 
 
También podemos utilizar operaciones lógicas con variables que estemos utilizando. En la práctica con Makecode hemos definido la luminosidad y la temperatura, ¿cómo podemos leer estos valores con la tarjeta real?

El nivel de luz se mide desde el display que se utiliza en modo inverso y la función que utilizaremos es:
 display.read_light_level()

en el caso de la temperatura es uno de los sensores asociados a la placa microbit y se obtiene con:
temperature()
nos devuelve la temperatura en grados celsius.

Para asociar el valor del nivel de luz asignaremos a

                               luminosidad= display.read_light_level()

De igual forma podemos asociar el valor de la temperatura

                             Temperatura= temperature()

En este caso debemos tener en cuenta que la placa real nos devuelve un valor superior a la tª ambiente debido al calor disipado por la placa, aprox. 3 grados más y que deberemos corregir así tendremos                              
Temperatura= temperature()-3



  • Si la condición es una expresión lógica debe ir entre paréntesis 




  • La sentencia if puede anidarse con diferentes condiciones

Si se cumple.....
    Sino si se cumple   ......

Esto se lleva a cabo con la sentencia else -if   -à elif
if condition:
    # TODO: write code...
elif condition:
        # TODO: write code...



  • La sentencia else puede no necesitar de una condición adicional

Si color es blanco.....
   Sino .......

En este caso utilizamos
if condition:
    # TODO: write code...
 else:
     # TODO: write code...

Ejercicios

1. Realizar un programa que defina una variable llamada luminosidad al pulsar el botón A lea el dato del “nivel de luz” y lo asocie a la variable  y al pulsar el botón B muestre el valor de la luminosidad  que se había cargado al pulsar A.

Para comprobar el programa variaremos el nivel de luz que llega a la pantalla de display de microbit


2. Realiza un programa de forma que obtenga la tª
  • si la tª es menor que 16º  aparece en pantalla    frio
  • si la  tª está entre 16 y 30 aparece en pantalla    cara sonriente
  • si la tª es mayor que 30  aparece en pantalla    calor 

No podremos comprobar todas las temperaturas, podemos variar ligeramente el valor medido tomando la microbit en nuestras manos