CLASE# 1 (ROBÓTICA): 4TA UNIDAD

Individual #1: Monitoreando valores y Conexión motorreductor sin puente h


Materiales

  • Sensor de temperatura y humedad DHT11
  • Cables
  • Arduino
  • Protoboard
  • Led
  • Motorreductor
  • Relé

Conexiones

 

Programación




#include
#include

#include "DHT.h"


// Uncomment whatever type you're using!

#define DHTTYPE DHT11   // DHT 11

//#define DHTTYPE DHT22   // DHT 22  (AM2302), AM2321

//#define DHTTYPE DHT21   // DHT 21 (AM2301)
// Connect pin 1 (on the left) of the sensor to +5V
// NOTE: If using a board with 3.3V logic like an Arduino Due connect pin 1
// to 3.3V instead of 5V!
// Connect pin 2 of the sensor to whatever your DHTPIN is
// Connect pin 4 (on the right) of the sensor to GROUND
// Connect a 10K resistor from pin 2 (data) to pin 1 (power) of the sensor
int DHTPin = 3;     // what digital pin we're connected to
DHT dht(DHTPin, DHTTYPE);
void setup() {
   Serial.begin(9600);
   Serial.println("Moniteroando valores");
   dht.begin();
   pinMode(9,OUTPUT);
}
void loop() {
   // Wait a few seconds between measurements.
   delay(2000);
   // Reading temperature or humidity takes about 250 milliseconds!
   float h = dht.readHumidity();
   float t = dht.readTemperature();
   if (isnan(h) || isnan(t)) {
      Serial.println("Failed to read from DHT sensor!");
      return;
   }
   Serial.print("Humidity: ");
   Serial.print(h);
   Serial.print(" %\t");
   Serial.print("Temperature: ");
   Serial.print(t);
   Serial.print(" *C ");

   if(t>24){
    digitalWrite(9,HIGH);
   }
   else{
    digitalWrite(9,LOW);
   }
 }




Resultado


A mí me quedó la conexión como se presenta en la imagen de muestra que nuestros profesores pusieron en moodle, gracias a las indicaciones y sugerencias dadas la profesora Rosa Coello. Mi resultado fue satisfactorio, pues logré conectar todos los cables y componentes electrónicos correctamente con ayuda de esa imagen de la conexión subida a moodle. Además pude entender y cargar correctamente la programación del mismo en mi placa de Arduino UNO, con la ayuda de la profesora Rosa Coello. 


  

Responder las siguientes preguntas:


Responda: 
¿Cuáles son los pasos para subir un programa a la placa Arduino? 
  1. Verificar o compilar
  2. Herramienta, elegir el tipo de arduino y detectar puerto.
  3. Puerto: COM
  4. Subir o cargar
¿Ha tenido algún inconveniente?, ¿por qué?, ¿cómo se solucionó?
 No he tenido inconvenientes con Arduino.

¿Cuál es la función del programa? 
El programa establece una comunicación tipo serial entre arduino y el ordenador para detectar el valor de temperatura y humedad  del sistema, luego manda a imprimir estos valores y posteriormente compara el valor de temperatura, de acuerdo a esto prende o apaga el pin 9 que está conectado a un motor.

Observe el código y responda: ¿Para qué sirve "Serial.begin()"?, ¿A qué corresponde el número "9600" dentro de los paréntesis de Serial.begin()?, ¿Para qué sirve "Serial.println()"? 


Serial.begin(): Para establecer la velocidad de datos en bits por segundo (baudios) para la transmisión de datos en serie, el nùmero 9600 e la velocidad de transmisión para comunicarse con el equipo.
Serial.println(): Imprime datos al puerto serie como texto ASCII legible por humanos y añade un retorno de carro, es decir, envía un caracter  new line por cada vez que es llamada la función.

Modifique el código para que el mensaje inicial sea: "Aprendiendo a monitorear sensores". ¿Funcionó?, ¿Tuvo alguna dificultad? 

El código quedó como se muestra a continuación, si funcionó no hubo dificultad:



#include
#include
#include "DHT.h"
// Uncomment whatever type you're using!


#define DHTTYPE DHT11   // DHT 11
//#define DHTTYPE DHT22   // DHT 22  (AM2302), AM2321
//#define DHTTYPE DHT21   // DHT 21 (AM2301)
// Connect pin 1 (on the left) of the sensor to +5V
// NOTE: If using a board with 3.3V logic like an Arduino Due connect pin 1
// to 3.3V instead of 5V!
// Connect pin 2 of the sensor to whatever your DHTPIN is
// Connect pin 4 (on the right) of the sensor to GROUND
// Connect a 10K resistor from pin 2 (data) to pin 1 (power) of the sensor
int DHTPin = 3;     // what digital pin we're connected to
DHT dht(DHTPin, DHTTYPE);
void setup() {
   Serial.begin(9600);
   Serial.println("Aprendiendo a monitorear sensores");
   dht.begin();
   pinMode(9,OUTPUT);
}
void loop() {
   // Wait a few seconds between measurements.
   delay(2000);
   // Reading temperature or humidity takes about 250 milliseconds!
   float h = dht.readHumidity();
   float t = dht.readTemperature();
   if (isnan(h) || isnan(t)) {
      Serial.println("Failed to read from DHT sensor!");
      return;
   }
   Serial.print("Humidity: ");
   Serial.print(h);
   Serial.print(" %\t");
   Serial.print("Temperature: ");
   Serial.print(t);
   Serial.print(" *C ");

   if(t>24){
    digitalWrite(9,HIGH);
   }
   else{
    digitalWrite(9,LOW);
   }
 }
Observe el código y complete la siguiente tabla:
Variables ¿Cuál es su utilidad?
DHTTYPE Indica el tipo de sensor, en este caso DTH11
DHTpin Indica el pin digital donde se ha conectado el sensor DHT11 en este caso al pin3 de arduino.
 dht Es la declaración de un objeto dht, el cual permitirá comunicación entre el sensor y arduino.
 h Es una variable tipo float que almacenará el valor leído de humedad.
 t Es una variable tipo float que almacenará el valor leído de temperatura.
 
Modifique el código para que únicamente se impriman (en el Monitor Serie) los valores de temperatura. 
El programa que imprime solo los datos de temperatura será:

#include
#include

#include "DHT.h"


// Uncomment whatever type you're using!

#define DHTTYPE DHT11   // DHT 11

//#define DHTTYPE DHT22   // DHT 22  (AM2302), AM2321
//#define DHTTYPE DHT21   // DHT 21 (AM2301)
// Connect pin 1 (on the left) of the sensor to +5V
// NOTE: If using a board with 3.3V logic like an Arduino Due connect pin 1
// to 3.3V instead of 5V!
// Connect pin 2 of the sensor to whatever your DHTPIN is
// Connect pin 4 (on the right) of the sensor to GROUND
// Connect a 10K resistor from pin 2 (data) to pin 1 (power) of the sensor
int DHTPin = 3;     // what digital pin we're connected to
DHT dht(DHTPin, DHTTYPE);
void setup() {
   Serial.begin(9600);
   Serial.println("Moniteroando valores");
   dht.begin();
   pinMode(9,OUTPUT);
}
void loop() {
   // Wait a few seconds between measurements.
   delay(2000);
   // Reading temperature or humidity takes about 250 milliseconds!
   float h = dht.readHumidity();
   float t = dht.readTemperature();
   if (isnan(h) || isnan(t)) {
      Serial.println("Failed to read from DHT sensor!");
      return;
   }
   Serial.print("Temperature: ");
   Serial.print(t);
   Serial.print(" *C ");

   if(t>24){
    digitalWrite(9,HIGH);
   }
   else{
    digitalWrite(9,LOW);
   }

 }

¿Qué usos le puede dar al sensor de humedad y temperatura dentro de su maqueta domótica? 
En mi maqueta usaré el sensor para que detecte la humedad en el jardín y de acuerdo a esto encienda o apague el sistema de riego de la casa, el cual está representado con un led. También lo usaré para que detecte la temperatura en el dormitorio matrimonial y de acuerdo a esto encienda o apague la calefacción.

Amplíe su conocimiento: 
¿Qué es un sensor DHT11?
El sensor DHT11 es un sensor digital de temperatura y humedad relativa del aire. Utiliza una comunicación digital con Arduino, de forma que no es necesaria la conexión a un pin analógico para realizar las lecturas.


¿Qué es una librería? 
Las librerías son colecciones de código que facilitan la interconexión de sensores, pantallas, módulos electrónicos, etc, y que contienen las herramientas para utilizar dichos dispositivos en un programa.

Conecte una fotocelda y modifique el programa "monitorFoto.ino" para imprimir los valores captados por la fotocelda. 

int pinFoto=A0;


void setup() 

Serial.begin(9600);
{
  pinMode(pinFoto,INPUT);
 }

void loop() {


  int valorFoto=analogRead(pinFoto);
 Serial.print("Fotocelda: ");
   Serial.print(valorFoto);
  {   


CONCLUSIÓN:



En conclusión pude aprender mucho mejor a programar un arduino, gracias a esta práctica que tuvimos en robótica. Además aprendí cómo se conecta un nuevo componente electrónico llamado "Sensor de temperatura y humedad DHT11" y la función que este emplea, la cual es detectar temperatura y humedad. El componente nuevo que aprendimos en esta clase me pareció muy interesante por su función, la cual era muy particular y nueva para mí; yo antes había visto el sensor de humedad, el cual tiene como función detectar cuan húmeda esta alguna superficie, pero nunca había conocido un componente que pudiese detectar dos cosas al mismo tiempo, la temperatura y la humedad. Esta clase me pareció muy atrayente, ya que para mí este tema de usar materiales electrónicos y hacer que algo se prenda o se active por la electricidad, me parece algo emocionante e interesante en todos sus aspectos.




LOGROS Y DIFICULTADES:




Una de las dificultades que tuve fue entender bien cómo conectar al protoboard el componente nuevo que añadimos. Porque yo sabía que si lo ubicaba mal, toda la conexión iba a salir mal y no funcionaría al cargarle la programación al Arduino UNO, hasta se podía dañar algún otro componente al  conectar al Arduino a la computadora y darle corriente a toda la conexión. Uno  los logros fueron que al final pude entender bien, y gracias a eso pude realizar muy bien toda la programación y conexión del mismo. Además logré entender qué es un "Sensor de temperatura y humedad DHT11" y cuál es su funcionamiento. Pude superar todas mis dificultades gracias a la ayuda y sugerencias dadas por la miss Rosa Coello. Pues ella vio lo que tenía mal, me explicó porque estaba haciéndolo mal y me dijo como hacerlo de forma correcta.



¿QUÉ ME PREGUNTO?:



Unas de las cosas que me pregunto, es que, cuando me toque realizar la conexión nuevamente en clase me acordaré de todas las sugerencias dadas por la miss Rosa y el funcionamiento correcto del componente nuevo que aprendimos llamado "Sensor de temperatura y humedad DHT11". Para que el proyecto de la casa domótica, que es una calificación, salga de la mejor forma.



BIBLIOGRAFÍA:





Comentarios

Entradas populares de este blog

CLASE #1 (ROBÓTICA): 4TA UNIDAD

CLASE #4 (MECÁNICA): 3ERA UNIDAD

CLASE #5 (ROBÓTICA): 3ERA UNIDAD