Entradas

Mostrando entradas de noviembre, 2019

Práctica 11 Última Práctica

Imagen
Nuestro último proyecto consiste en hacer una aplicación real de todos nuestros proyectos anteriores. Se trata de hacer el control de iluminación de una habitación mediante distintos sensores para ahorrar energía. -Un LED simulará una bombilla -El LED será controlado por tres sensores: 1º Un pulsador, 2º Un sensor de movimiento PIR (Sensor infrarrojo pasivo) y 3º Un sensor LDR (Light Dependent Resistor). SU funcionamiento consiste en: si se pulsa el pulsador, se enciende el led de la habitación durante 5 segundos para luego apagarse. Después si el sensor PIR detecta movimiento, la LDR indica si hay o n bastante luz. Esto es una captura del conjunto de bloques de Arduinoblocks: Esto es el código Arduino: double LUZ ; void setup ( ) { pinMode ( A2 , INPUT ) ; pinMode ( 2 , INPUT ) ; pinMode ( 10 , OUTPUT ) ; pinMode ( 6 , INPUT ) ; } void loop ( ) {    LUZ = analogRead ( A2 ) ;    if ( ( ! digitalRead ( 2 ) ) ) {   ...

Práctica 10

Este proyecto comienza partiendo del anterior, y la diferencia consta en que en vez de mostrar la temperatura y humedad en el monitor serie, se debe mostrar en una pantalla LCD externa. Esto es el código Arduino: #include < DHT . h > #include < DHT_U . h >      double Temperatura ; double Humedad ; DHT dht2 ( 2 , DHT11 ) ; #include < Wire . h > #include < LCD . h > #include < LiquidCrystal_I2C . h > LiquidCrystal_I2C lcd ( 0x27 , 2 , 1 , 0 , 4 , 5 , 6 , 7 ) ; void setup ( ) { Serial . begin ( 9600 ) ; pinMode ( 2 , INPUT ) ; dht2 . begin ( ) ; lcd . setBacklightPin ( 3 , POSITIVE ) ; lcd . setBacklight ( HIGH ) ; lcd . begin ( 16 , 2 ) ; lcd . clear ( ) ; } void loop ( ) {    Temperatura = dht2 . readTemperature ( ) ;    Serial . print ( String ( "temperatura" ) ) ;    Serial . print ( Temperatura ) ;    Serial . println ( String ...

Práctica 9

Imagen
La siguiente práctica consiste en utilizar un sensor DHT que mide la temperatura y humedad del ambiente, para que nos lo muestre en pantalla. Esto es una captura del conjunto de bloques de Arduinoblocks: Esto es el código Arduino: #include "ABlocks_DHT.h" double temperatura ; double humedad ; DHT dht2 ( 2 , DHT11 ) ; void setup ( ) {   Serial . begin ( 9600 ) ; pinMode ( 2 , INPUT ) ; dht2 . begin ( ) ; } void loop ( ) {     temperatura = dht2 . readTemperature ( ) ;     Serial . print ( String ( "Temperatura" ) ) ;     Serial . print ( temperatura ) ;     Serial . println ( String ( "ºC" ) ) ;     humedad = dht2 . readHumidity ( ) ;     Serial . print ( String ( "Humedad" ) ) ;     Serial . print ( humedad ) ;     Serial . println ( String ( "%" ) ) ; }       Este vídeo muestra ...

Práctica 8

Imagen
La siguiente practica consiste en imitar un sensor de aparcamiento, el cual controla la distancia a la que se encuentra un objeto emitiendo un pitido a través de un zumbador a su vez. Cuento más cerca se encuentra el objeto, más rápido es el pitido, y cuanto más lejos, mas lento es el pitido. Esto es una captura del conjunto de bloques de Arduinoblocks: Esto es el código Arduino: double distancia ; double fnc_ultrasonic_distance ( int _t , int _e ) {   unsigned long dur = 0 ;   digitalWrite ( _t , LOW ) ;   delayMicroseconds ( 5 ) ;   digitalWrite ( _t , HIGH ) ;   delayMicroseconds ( 10 ) ;   digitalWrite ( _t , LOW ) ;   dur = pulseIn ( _e , HIGH , 18000 ) ;   return ( dur / 57 ) ; } void setup ( ) {   Serial . begin ( 9600 ) ; pinMode ( 2 , OUTPUT ) ; pinMode ( 3 , INPUT ) ; pinMode ( 6 , OUTPUT ) ; } void loop ( ) {     distancia = fnc_ultrasonic_distanc...

Práctica 7

Imagen
Nuestro siguiente proyecto consiste en programar una placa de Arduino para que mida distancias con un sensor de ultrasonidos y lo muestre en pantalla del monitor. Esto es una captura del conjunto de bloques de Arduinoblocks: Esto es el código Arduino: double Distancia ; double fnc_ultrasonic_distance ( int _t , int _e ) {   unsigned long dur = 0 ;   digitalWrite ( _t , LOW ) ;   delayMicroseconds ( 5 ) ;   digitalWrite ( _t , HIGH ) ;   delayMicroseconds ( 10 ) ;   digitalWrite ( _t , LOW ) ;   dur = pulseIn ( _e , HIGH , 18000 ) ;   return ( dur / 57 ) ; } void setup ( ) {   Serial . begin ( 9600 ) ; pinMode ( 2 , OUTPUT ) ; pinMode ( 3 , INPUT ) ; } void loop ( ) {     Distancia = fnc_ultrasonic_distance ( 2 , 3 ) ;     Serial . print ( String ( "Distancia " ) ) ;     Serial . print ( Distancia ) ;     Serial . p...

Práctica 6

Imagen
Nuestro sexto proyecto consiste en controlar el angulo de giro del eje de un servomotor (mini-motor) entre 0º y 180º conectándolo a una salida digital para controlar su movimiento con dos pulsadores. Esto es una captura del conjunto de bloques de Arduinoblocks: Esto es el código Arduino:       #include < Servo . h > Servo servo_3 ; void setup ( ) {   pinMode ( 6 , INPUT ) ; servo_3 . attach ( 3 ) ; pinMode ( 10 , INPUT ) ; } void loop ( ) {     if ( ( ! digitalRead ( 6 ) ) ) {       servo_3 . write ( 180 ) ;       delay ( 0 ) ;     }     if ( digitalRead ( 10 ) ) {       servo_3 . write ( 0 ) ;       delay ( 0 ) ;     } }   Este vídeo muestra el resultado del proyecto:

Práctica 5

Imagen
Nuestro siguiente proyecto consiste en encender y apagar un LED dependiendo de la cantidad de luz que haya con un sensor LDR que mide la cantidad de luz. Con poca luz, el LED se encenderá y con mucha luz el LED se apaga. Esto es una captura del conjunto de bloques de Arduinoblocks: Esto es el código Arduino: nt fnc_dynamic_analogRead ( int _pin ) {   pinMode ( _pin , INPUT ) ;   return analogRead ( _pin ) ; } void setup ( ) {   Serial . begin ( 9600 ) ; pinMode ( A2 , INPUT ) ; pinMode ( 6 , OUTPUT ) ; } void loop ( ) {     luz = analogRead ( A2 ) ;     if ( Luz < 200 ) {       digitalWrite ( 6 , HIGH ) ;     } else {       digitalWrite ( 6 , LOW ) ;     }     Serial . println ( luz ) ; }   Este vídeo muestra el resultado del proyecto:

Práctica 4

Imagen
Nuestro cuarto proyecto consiste en encender otra vez un LED pero con dos pulsadores; pero esta vez, cuando se pulsa un pulsador, el LED se enciende y se mantiene encendido y cuando pulsamos el segundo pulsador, el LED se apaga. Esto es una captura del conjunto de bloques de Arduinoblocks: Esto es el código Arduino: void setup ( ) {   pinMode ( 2 , INPUT ) ; pinMode ( 6 , OUTPUT ) ; pinMode ( 10 , INPUT ) ; } void loop ( ) {     if ( ( ! digitalRead ( 2 ) ) ) {       digitalWrite ( 6 , HIGH ) ;     }     if ( digitalRead ( 10 ) ) {       digitalWrite ( 6 , LOW ) ;     } } Este vídeo muestra el resultado del proyecto:

Práctica 3

Imagen
Nuestro tercer proyecto consiste en encender y apagar un LED con un pulsador pero el LED solo se mantendrá encendido mientras el pulsador este siendo pulsado. Esto es una captura del conjunto de bloques de Arduinoblocks: Esto es el código Arduino: void setup ( ) {   pinMode ( 2 , INPUT ) ; pinMode ( 6 , OUTPUT ) ; } void loop ( ) {     if ( ( ! digitalRead ( 2 ) ) ) {       digitalWrite ( 6 , HIGH ) ;     } else {       digitalWrite ( 6 , LOW ) ;     } } Este vídeo muestra el resultado del proyecto:

Práctica 2

Imagen
Nuestro segundo proyecto, el cual es muy parecido a el primero, consiste en programar Arduino para encender un LED durante 3 segundos para que más tarde se apague y a la vez se active otro LED de otro color el cual dura 2 segundos para más tarde repetir el progreso. Esto es una captura del conjunto de bloques de Arduinoblocks: Esto es el código Arduino: void setup ( ) {   pinMode ( 3 , OUTPUT ) ; pinMode ( 11 , OUTPUT ) ; } void loop ( ) {     digitalWrite ( 3 , HIGH ) ;     delay ( 3000 ) ;     digitalWrite ( 3 , LOW ) ;     digitalWrite ( 11 , HIGH ) ;     delay ( 2000 ) ;     digitalWrite ( 11 , LOW ) ; } Este vídeo muestra el resultado del proyecto:

Práctica 1

Imagen
Vamos a realizar nuestro primer proyecto, el cual consiste en el encendido y apagado de un LED el cual se enciende y se mantiene encendido 3 segundos para luego apagarse durante 2 segundos y viceversa. Esto es una captura del conjunto de bloques de Arduinoblocks: Esto es el código arduino: void setup ( ) {   pinMode ( 7 , OUTPUT ) ; } void loop ( ) {     digitalWrite ( 7 , HIGH ) ;     delay ( 3000 ) ;     digitalWrite ( 7 , LOW ) ;     delay ( 2000 ) ; } Este vídeo muestra el resultado del proyecto: