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.