# 2. Circuitos sencillos # Un LED ### **Circuito un led directo** Para las siguientes propuestas, el montaje es colocar un diodo LED, en este caso no es necesario complicarse, podemos montarlo directamente en el Arduino uno colocando el ánodo (pata más larga) en el pin13 y el cátodo (pata más corta) en masa GND, elegimos el pin 13 por estar al lado de GND  
No es una buena práctica conectar un diodo directamente sin pasar por una resistencia, pues en teoría es un cortocircuito, PERO si se hace no pasa nada pues Arduino tiene una limitación interna de 20mA
Luego lo recomendable es hacerlo pasar por una resistencia, usando la placa PROTOBOARD  Para el cálculo de la resistencia, debemos de tener en cuenta que la máxima corriente es 20mA, que la tensión de salida es 5V y que el diodo tiene una tensión Vd de funcionamiento, que depende de su color: Rminima = (5V-Vd)/20mAColor | Vd | Resistencia mínima Ohm |
---|---|---|
Rojo | 1.8V | 160 |
Amarillo | 3.2V | 140 |
Verde | 3.2V | 90 |
Nota: Se podría hacer un SI - SINO pero programando de esta forma abrimos la posibilidad de ampliar si el mensaje encendido es por ejemplo = 2
Con mBlock3  # Condensador ## Propuesta Realizar un programa que cargue y descargue el condensador y que lo visualice en un objeto. La propuesta es con un condensador de 10μF y dos resistencias de centenares de k, según lo visto en el módulo M1 esto nos dará un tiempo de carga y descarga de varios segundos**OJO CONECTAR EL PIN (-) DEL CONDENSADOR A GND peligro de explosión si se conecta al revés**
Las resistencias colocarlos de tal manera que uno sea para la carga y otro para la descarga. Un cable suelto, en uno extremo el terminal (+) del condensador y el otro suelto preparado para tocar la resistencia de carga o la de descarga. Esta misma conexión que lo lea Arduino, por ejemplo por A0 C Visualizar la carga en un objeto Scratch que aumente de volumen: ##### **Solución** Es muy sencillo, fija el tamaño de la pelota al valor del pin A0 Lo hemos hecho a través de una variable auxiliar "carga" para poder visualizar numéricamente su valor. Con mBlock 5.0 lo tienes aquí [https://planet.mblock.cc/project/3265873](https://planet.mblock.cc/project/3265873) En el dispositivo ARDUINO [](https://libros.catedu.es/uploads/images/gallery/2023-12/arduino-condensador1.png) En el objeto PELOTA [](https://libros.catedu.es/uploads/images/gallery/2023-12/arduino-condensador2.png) Con mBlock 3.0  ### **AMPLIACIÓN** Se puede aprovechar esta experiencia para: - Calcular el tiempo de carga, si coincide con la fórmula T = 5RC - Visualizar que la pelota se carga o aumenta de volumen muy rápidamente al principio y luego lentamente, tal y como indica la teoría vista en el módulo 1 - Igualmente en la descarga # LDR Realizar un programa que visualice en un objeto Scratch la cantidad de luz El circuito es el siguiente: el LDR conectado a A0 y a una resistencia (la resistencia PULL UP para que la tensión que mida A0 sea la del LDR) y un objeto que aumente de tamaño según el valor de A0  Y el vídeo ##### **Solución** El programa es el siguiente: Lo hemos hecho a través de una variable auxiliar "carga" para poder visualizar numéricamente su valor. Con mBlock 5.0 lo tienes aquí [https://planet.mblock.cc/project/3265873](https://planet.mblock.cc/project/3265873) En el dispositivo ARDUINO [](https://libros.catedu.es/uploads/images/gallery/2023-12/arduino-condensador1.png) En el objeto PELOTA [](https://libros.catedu.es/uploads/images/gallery/2023-12/arduino-condensador2.png) ##### Y en mblock 3.0 [](https://libros.catedu.es/uploads/images/gallery/2023-12/image.png) OOOPAAAA !!! ¡¡ Pero si es el mismo que el que acabamos de ver !!! El condensador ¡¡¡ vaya tontería !!! Simplemente la variable **carga** no es el condensador sino la oscuridad ¿Que quieres cambiar el nombre de la variable **carga** por **oscuridad**? pues vale...  # Ultrasonidos Pues ya que estamos con la pelota, pues también seguimos: Hacer un programa que se hinche la pelota según la distancia. En este caso, como la el sensor de ultrasonidos va desde 2 cm a 40cm, nuestra propuesta es que el tamaño se cambie multiplicado x50 ese valor, es decir "cambiar tamaño 50xdistancia", de no hacer esto, la pelota sale demasiado pequeña, o el objeto tendría que estar muy lejos para que se vea a un tamaño razonable. La configuración la explicada en el módulo 1 es decir: - Trigger en el pin 4 - Echo en el pin 3  ##### **Solución** Pues el programa es muy parecido a los anteriores: Con mBlock 5 Opción sin instalar extensión lo tienes aquí https://planet.mblock.cc/project/3266117 [](https://libros.catedu.es/uploads/images/gallery/2023-12/arduino-pelotahinchadistancia6.png)Estas funciones SOLO FUNCIONAN EN MODO CARGA
Opción instalando extensión lo tienes aquí [https://planet.mblock.cc/project/3266063](https://planet.mblock.cc/project/3266063) Pulsamos abajo al + [](https://libros.catedu.es/uploads/images/gallery/2023-12/arduino-pelotahinchadistancia3.png) Buscamos extensiones para el sensor de ultrasonidos HC-SR04, nosotros hemos elegido esta [](https://libros.catedu.es/uploads/images/gallery/2023-12/arduino-pelotahinchadistancia4.png) Que instala estas instrucciones [](https://libros.catedu.es/uploads/images/gallery/2023-12/arduino-pelotahinchadistancia5.png)Esta extensiones (como suele pasar cuando instalamos una extensión) SOLO FUNCIONAN EN MODO CARGA
Luego para transmitir la distancia al objeto pelota, utilizamos la técnica de **BROADCAST** que vimos en [https://libros.catedu.es/books/programa-arduino-con-mblock-scratch/page/programacion-mblock](https://libros.catedu.es/books/programa-arduino-con-mblock-scratch/page/dos-formas-de-programar-con-mblock) Al dispositivo ARDUINO el programa es sin la extensión [](https://libros.catedu.es/uploads/images/gallery/2023-12/arduino-pelotahinchadistancia7.png) Con la extensión [](https://libros.catedu.es/uploads/images/gallery/2023-12/arduino-pelotahinchadistancia1.png) En el objeto PELOTA el programa es [](https://libros.catedu.es/uploads/images/gallery/2023-12/arduino-pelotahinchadistancia2.png) Con mBlock3 