jueves, 4 de junio de 2020

PRÁCTICA 7: PULSADOR Y SERVOMOTOR

Hola de nuevo, estamos en una nueva práctica en el que incluye dos nuevos componentes: el pulsador y servomotor. He hecho dos circuitos de tres, el circuito 1 y 3. 
Se podría decir que el servomotor tiene una barrera de seguridad, entonces el primer circuito consiste en que el pulsador controla el servomotor de manera que al pulsar la barrera se mueve a 90º luego pasan 4 segundos y vuelve a su estado normal. Aquí están las conexiones del primer circuito.
















Aquí está la programación.
















A continuación os pongo el código de la programación.

#include <Servo.h>

int Barrera = 0;

Servo servo_2;

void setup()
{
  servo_2.attach(2);

  pinMode(8, INPUT);
}

void loop()
{
  servo_2.write(0);
  if (digitalRead(8) == 1) {
    servo_2.write(90);
    delay(4000); // Wait for 4000 millisecond(s)
    servo_2.write(0);
  }

}

Finalmente os pongo una demostración del funcionamiento del circuito.



El circuito 3 incluye un potenciómetro y un servomotor. Consiste en que el potenciómetro controla la barrera de seguridad. Estas son las conexiones del tercer circuito.

Aquí está la programación.

A continuación, os pongo el código de la programación.

int barrera = 0;


void setup()
{
  pinMode(A0, INPUT);
  pinMode(11, OUTPUT);
}

void loop()
{
  analogWrite(11, (analogRead(A0) / 4));
  delay(10); // Delay a little bit to improve simulation performance
}

Finalmente os pongo el vídeo que demuestra el funcionamiento de circuito.

viernes, 15 de mayo de 2020

PRÁCTICA 6: LED RGB Y POTENCIÓMETRO

Hola de nuevo, en esta práctica voy a explicar el LED RGB y el potenciómetro. Había dos opciones y he elegido la primera. La primera opción consiste en que hagamos dos circuitos, uno con el potenciómetro y otro con el LED RGB.

EL POTENCIÓMETRO:
La función del potenciómetro es regular la luminosidad LED.
Aquí están las conexiones, los bloques, el código en texto y el vídeo del funcionamiento del circuito.












El LED está conectado al pin 5, el cable derecho del potenciómetro está conectado al GND, el cable del medio del potenciómetro está conectado al pin analógico A0 y el cable izquierdo está conectado a 5V.





void setup()
{
  pinMode(A0, INPUT);
  Serial.begin(9600);

  pinMode(5, OUTPUT);
}

void loop()
{
  Serial.println(analogRead(A0));
  analogWrite(5, (analogRead(A0) / 4));
  delay(10); // Delay a little bit to improve simulation performance
}


EL LED RGB:
He utilizado el LED RGB como si fuera un semáforo. La luz verde tenía que durar 5 seg, la luz ámbar tenía que durar 2 seg y la luz roja 6 seg.
A continuación os voy a mostrar las conexiones, los bloques, el código en texto y el funcionamiento del circuito.













El LED RGB está compuesto de tres colores: rojo, azul y verde. Siempre hay que poner cada color en un pin regulable. He puesto el rojo en el pin 11, el azul en el pin 6 y el verde en el 3.












Hay que tener cuidado, RGB son las siglas de RedGreenBlue, por lo tanto, hay que poner primero el pin en el que está conectado el color rojo, luego el pin del color verde y finalmente el pin del color azul.

void setup()
{
  pinMode(11, OUTPUT);
  pinMode(3, OUTPUT);
  pinMode(6, OUTPUT);
}

void loop()
{
  analogWrite(11, 51);
  analogWrite(3, 204);
  analogWrite(6, 0);
  delay(5000); // Wait for 5000 millisecond(s)
  analogWrite(11, 255);
  analogWrite(3, 255);
  analogWrite(6, 0);
  delay(2000); // Wait for 2000 millisecond(s)
  analogWrite(11, 255);
  analogWrite(3, 0);
  analogWrite(6, 0);
  delay(6000); // Wait for 6000 millisecond(s)

}


Eso es todo por hoy, hasta la próxima.


miércoles, 29 de abril de 2020

PRÁCTICA 5: SENSOR DE INCLINACIÓN

Hola de nuevo, esta nueva práctica consiste en el sensor de inclinación, para ello he tenido que usar Tinkercad otra vez. Había tres dificultades, yo he elegido la tercera dificultad. Para ello teníamos que utilizar dos sensores de inclinación, uno de ellos girado a 180 º. 

Pero antes voy a explicar como funcionan estos sensores. Este tipo de sensores funciona con unas pequeñas bolas metálicas en su interior que al moverse en función de la inclinación, abre o cierra el contacto.













Os voy a poner una imagen de las conexiones.















Como podéis ver he usado dos sensores de inclinación, cada una con su resistencia. El LED verde lo he conectado al PIN 12 y el LED rojo al PIN 11.

Ahora os voy a mostrar la imagen de los bloques.















Recto → Izquierda.
Inclinado→ Derecha.
He creado dos variables que son "derecha" e "izquierda" y los he puesto en leer pasador digital 4 y en leer pasador analógico 2. Si los dos sensores están inclinados cada uno en un lado diferente, no se enciende ningún LED. Sin embargo, si los dos sensores están inclinados a la derecha se enciende el LED rojo y si no pues no se enciende. Y si los dos sensores se inclinan a la izquierda, pues se enciende el LED verde.

Aquí tenéis el código de los bloques.

int derecha = 0;

int izquierda = 0;

void setup()
{
  pinMode(3, INPUT);
  pinMode(2, INPUT);
  pinMode(11, OUTPUT);
  pinMode(12, OUTPUT);
}

void loop()
{
  derecha = digitalRead(3);
  izquierda = digitalRead(2);
  if (derecha == izquierda) {
    digitalWrite(11, LOW);
    digitalWrite(12, LOW);
  } else {
    if (derecha == 0) {
      digitalWrite(11, HIGH);
    } else {
      digitalWrite(11, LOW);
    }
    if (izquierda == 0) {
      digitalWrite(12, HIGH);
    } else {
      digitalWrite(12, LOW);
    }
  }
  delay(10); // Delay a little bit to improve simulation performance
}

Ha sido todo por hoy, hasta la próxima.

martes, 21 de abril de 2020

PRÁCTICA 4: SENSOR DE ULTRASONIDO.

Hola de nuevo, en esta práctica he vuelto a usar Tinkercad para hacer el sensor de ultrasonido.
Había dos opciones, yo he elegido la opción "No tan sencilla". Consiste en que el sensor nos va avisando a medida que el objeto se va alejando o acercando y para avisarnos encienden diversos LEDS.






He puesto el LED 1(el de la izquierda) en el PIN 11, el LED del medio lo he puesto en el PIN 10 y el de la derecha en el PIN 5.












int DIstancia = 0;

long readUltrasonicDistance(int triggerPin, int echoPin)
{
  pinMode(triggerPin, OUTPUT);  // Clear the trigger
  digitalWrite(triggerPin, LOW);
  delayMicroseconds(2);
  // Sets the trigger pin to HIGH state for 10 microseconds
  digitalWrite(triggerPin, HIGH);
  delayMicroseconds(10);
  digitalWrite(triggerPin, LOW);
  pinMode(echoPin, INPUT);
  // Reads the echo pin, and returns the sound wave travel time in microseconds
  return pulseIn(echoPin, HIGH);
}

void setup()
{
  pinMode(5, OUTPUT);
  pinMode(10, OUTPUT);
  pinMode(11, OUTPUT);
}

void loop()
{
  DIstancia = 0.01723 * readUltrasonicDistance(3, 2);
  if (DIstancia < 50) {
    digitalWrite(5, HIGH);
  } else {
    digitalWrite(5, LOW);
  }
  if (DIstancia > 50 && DIstancia < 100) {
    digitalWrite(10, HIGH);
  } else {
    digitalWrite(10, LOW);
  }
  if (DIstancia > 100 && DIstancia < 150) {
    digitalWrite(11, HIGH);
  } else {
    digitalWrite(11, LOW);
  }
  delay(10); // Delay a little bit to improve simulation performance

}
He puesto como variable "Distancia". Si la variable está por debajo de los 50 cm, se enciende el LED 5 y si no, pues no se enciende. En los demás LEDS siguen el mismo mecanismo.

Os voy a poner un vídeo del funcionamiento de la práctica.

Ha sido todo por hoy. Hasta la próxima.

sábado, 28 de marzo de 2020

PRÁCTICA 2: TINKERCAD, EL SENSOR DE MOVIMIENTO

Hola de nuevo, en esta práctica he vuelto a usar la aplicación tinkercad. Esta vez para probar el sensor de movimiento también llamado PIR.

Hice una captura de las conexiones del sensor de movimiento a la placa.













También hice una captura de los bloques que han llevado a cabo el funcionamiento de este sensor.
















Y finalmente hice un vídeo para demostrar que el sensor de movimiento funciona.




Ha sido todo por hoy, hasta la próxima.

martes, 24 de marzo de 2020

PRÁCTICA 1: TINKERCAD

En esta práctica voy a explicar qué es Tinkercad, para qué sirve y cómo la he utilizado.

Tinkercad es un programa gratuito de modelado 3D en línea que se ejecuta en un navegador web. Desde que estuvo disponible en 2011, se ha convertido en una plataforma popular para crear modelos para impresión 3D , así como una introducción de nivel básico a la geometría sólida constructiva en las escuelas. 







Y ahora voy a poner capturas que he realizado y os lo voy a explicar un poco por encima.




Es una captura de las conexiones en Tinkercad.









Y en esta captura se puede ver los bloques que he utilizado para que funcione. Lo bueno que tiene esta página web es que puedes simularlo sin necesitar una placa.

Es todo por hoy y hasta la próxima.

lunes, 2 de marzo de 2020

PRÁCTICA 2: CÓDIGO CON EL SENSOR INFRARROJO

En esta publicación realizaremos una propuesta en el que consiste que si hay una superficie blanca se enciende el led y si es una superficie negra se apaga el led.

/***   Included libraries  ***/




/***   Global variables and function definition  ***/
const int sensor_infrarrojos = 7;
const int led = 3;

float INFRARROJO = 0;



/***   Setup  ***/
void setup() {
    pinMode(sensor_infrarrojos, INPUT);
    pinMode(led, OUTPUT);

    Serial.begin(9600);

}


/***   Loop  ***/
void loop() {
    INFRARROJO = digitalRead(sensor_infrarrojos);
    switch (int(INFRARROJO)) {
        case 0:
            digitalWrite(led, LOW);
            break;
        case 1:
            digitalWrite(led, HIGH);
            break;
    }
}



























Y esta es mi propuesta. Es todo por hoy. Hasta la próxima.