jueves, 3 de mayo de 2018

Arduino Practica 8




Este artilugio es otro tipo de mecanismo al anteriormente citado para la opbtencion de la cantidad de humedad y temperatura. La pieza clave es un pequño dispositivo de color azul, con digerentes artilugios de pequeño tamaño.








Su cofigo es:
include <DHT11.h>

int pin=2;
DHT11 dht11(pin);

void setup()
   {
       Serial.begin(9600);
   }

void loop()
   {
       int err;
       float temp, hum;
       if((err = dht11.read(hum, temp)) == 0)    // Si devuelve 0 es que ha leido bien
          {
             Serial.print("Temperatura: ");
             Serial.print(temp);
             Serial.print(" Humedad: ");
             Serial.print(hum);
             Serial.println();
          }
       else
          {
             Serial.println();
             Serial.print("Error Num :");
             Serial.print(err);
             Serial.println();
          }
       delay(1000);            //Recordad que solo lee una vez por segundo
   }

Arduino Practica 7



Esta practica recive el nombre de sensor de ultrasonidos, ya que su sensor percive sonidos por debajo de 20000 Hz.  Es una practica muy interesante y divertida









Su codigo es:

const int EchoPin = 5;
const int TriggerPin = 6;
const int LedPin = 13;
void setup() {
   Serial.begin(9600);
   pinMode(LedPin, OUTPUT);
   pinMode(TriggerPin, OUTPUT);
   pinMode(EchoPin, INPUT);
}
void loop() {
   int cm = ping(TriggerPin, EchoPin);
   Serial.print("Distancia: ");
   Serial.println(cm);
   delay(1000);
}
int ping(int TriggerPin, int EchoPin) {
   long duration, distanceCm;
   
   digitalWrite(TriggerPin, LOW);  //para generar un pulso limpio ponemos a LOW 4us
   delayMicroseconds(4);
   digitalWrite(TriggerPin, HIGH);  //generamos Trigger (disparo) de 10us
   delayMicroseconds(10);
   digitalWrite(TriggerPin, LOW);
   
   duration = pulseIn(EchoPin, HIGH);  //medimos el tiempo entre pulsos, en microsegundos
   
   distanceCm = duration * 10 / 292/ 2;   //convertimos a distancia, en cm
   return distanceCm;
}

sábado, 21 de abril de 2018

Arduino practica 6



Esta practica es una practica muy divertida, la cual consiste en en recrear las luces de el coche fantatico, con la necesidad de un gran numero de leds en cadena, se programa para que se enciendo, recreando el efecto domino. Muy recomendable.










Su codigo es:


nt pinArray[] = {2, 3, 4, 5, 6, 7};
// PINs
int count = 0;
// Contador
int espera = 30;
// Temporizador
void setup(){
for (count=0;count<6;count++) { // Configuramos todas los PINs de golpe
pinMode(pinArray[count], OUTPUT);
}
}
void loop() {
for (count=0;count<5;count++) { // Enciende los LEDs creando una estela visual
digitalWrite(pinArray[count], HIGH);
delay(espera);
digitalWrite(pinArray[count + 1], HIGH);
delay(espera);
digitalWrite(pinArray[count], LOW);
delay(espera*2);
}
for (count=5;count>0;count--) {
digitalWrite(pinArray[count], HIGH);
delay(espera);
digitalWrite(pinArray[count - 1], HIGH);
delay(espera);
digitalWrite(pinArray[count], LOW);
delay(espera*2);
}
} 

Arduino practica 5




Esta es una practica que aparenta ser dificil, pero s todo o contrario, es muy simple y divertida, ademas es muy buena para el dia a dia ya que te da iformacion acerca de la atmosfera en la que te encuetres, ( humedad, temperarutra..), En esta ocasion la fuente de aliemtacion es una pila alcalina.









Su codigo es




#include <DHT11.h>

int pin=2;
DHT11 dht11(pin);

void setup()
   {
       Serial.begin(9600);
   }

void loop()
   {
       int err;
       float temp, hum;
       if((err = dht11.read(hum, temp)) == 0)    // Si devuelve 0 es que ha leido bien
          {
             Serial.print("Temperatura: ");
             Serial.print(temp);
             Serial.print(" Humedad: ");
             Serial.print(hum);
             Serial.println();
          }
       else
          {
             Serial.println();
             Serial.print("Error Num :");
             Serial.print(err);
             Serial.println();
          }
       delay(1000);            //Recordad que solo lee una vez por segundo
   }

Arduino practica 4





Esta es una practica simple en la cual se utiliza un pulsador y un led, cuando se pulse el led se enciende.
Dependiendo de la programación, el pulsador puede o no puede tener memoria, Lo que es clave para conseguir dos proyectos completamente diferentes.



su codigo es:




#define PIN_BOTON 5 
#define PIN_LED 8
byte estado_anterior = 0;
byte estado_nuevo;
byte estado_led = LOW;

void setup() {

  pinMode(PIN_BOTON, INPUT);
   pinMode(PIN_LED, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {

  estado_nuevo = digitalRead(PIN_BOTON);
  if ((estado_anterior == 0) && (estado_nuevo == 1)){
    cambiar_estado_led();
  }
  estado_anterior = estado_nuevo;
  delay(10);
 }

void cambiar_estado_led() {
  if (estado_led == LOW) {
    digitalWrite(PIN_LED, HIGH);
    estado_led = HIGH;
  }
  else {
    digitalWrite(PIN_LED, LOW);
    estado_led = LOW;
  }
}

Arduino practica 3


En este caso lo que se intenta realizar la el parpadeo programado de un solo led, con la ayuda de una placa boar con  una resistencia, unos cables y unos minimos conociemitos en la materia





Este es su codigo:


void setup() {
  // put your setup code here, to run once:
  pinMode(13, OUTPUT); // DECLARAMOS EL PIN 13 COMO SALIDA

}

void loop() {
  // put your main code here, to run repeatedly:
digitalWrite(13, HIGH); //ENCENDER EL LED
delay(2000); // esperar 1 segundo
digitalWrite(13, LOW); //apagar el led
delay(2000); //esperar medio segundo 
}

Arduino Pactica 2






En este caso, lo que se ha echo con la placa arduino es un duelo de reflejos, en el cual el que pulse mas rapido el pulsador, cuando el led del medio se encienda, se debe de puldas el pulsador , a continuacion se encendera el led del lado del vencedor












Su código es el siguiente




#define PIN_BOTON 5 
#define PIN_LED 8
byte estado_anterior = 0;
byte estado_nuevo;
byte estado_led = LOW;

void setup() {

  pinMode(PIN_BOTON, INPUT);
   pinMode(PIN_LED, OUTPUT);
}

// the loop function runs over and over again forever
void loop() {

  estado_nuevo = digitalRead(PIN_BOTON);
  if ((estado_anterior == 0) && (estado_nuevo == 1)){
    cambiar_estado_led();
  }
  estado_anterior = estado_nuevo;
  delay(10);
 }

void cambiar_estado_led() {
  if (estado_led == LOW) {
    digitalWrite(PIN_LED, HIGH);
    estado_led = HIGH;
  }
  else {
    digitalWrite(PIN_LED, LOW);
    estado_led = LOW;
  }
}