Ir al contenido principal

Competencia 2: Prácticas

 


Practica 1: Sensor Ultrasónico

El objetivo de está practica es comprender como es que funciona el sensor ultrasónico, principalmente la función de este sensor ultrasónico es poder calcular la distancia a la que se encuentra un objeto como en este caso se puede acercar una mano o ponerse enfrente para que pueda reconocer el objeto y esta distancia la podemos ver en el monitor en serie que es en la aplicación de arduino IDE.

Código:

const int trigger=8;
const int echo=7;
float dist;

void setup(){
  Serial.begin(9600);
  pinMode(trigger,OUTPUT);
  pinMode(echo,INPUT);
}

void loop(){
  digitalWrite(trigger,LOW);
  delayMicroseconds(5);        
  digitalWrite(trigger,HIGH);  
  delayMicroseconds(10);      
  digitalWrite(trigger,LOW);
  dist=pulseIn(echo,HIGH);      
  dist = dist/58;              
  Serial.print ("Distancia = ");
  Serial.print (dist);        
  Serial.print (" cm");        
  Serial.write (10);            
  delay (200);                
}  



Evidencias:






Practica 2: Servomotor

La principal función del servomotor es poder mover el motor que tiene junto con la hélice que tiene en la parte de arriba, este servo puede moverse de 0 a 180° y en está practica lo que se hará es que el servomotor se mueva poco a poco hasta llegar a esos 180° como se puede ver en las siguientes imágenes donde se muestra como se movió de posición.

Código: 

#include <Servo.h>

int pos = 0;

Servo servo_9;

void setup()
{
  servo_9.attach(9, 500, 2500);
}

void loop()
{

  for (pos = 0; pos <= 180; pos += 1) {
   
    servo_9.write(pos);
   
    delay(100);
  }
  for (pos = 180; pos >= 0; pos -= 1) {
   
    servo_9.write(pos);
   
    delay(5);
  }
}



Evidencias:




Practica 3: Encender un led utilizando el teclado

En está practica el objetivo es encender un led con el teclado, en está practica se puede observar que el led se puede encender de diferentes maneras y en este caso pudimos observar y hacer que se encienda cada vez que presionamos alguna tecla y el resultado quedó de la siguiente manera.

Código: 

int input;

void setup(){

  pinMode(13, OUTPUT);

  Serial.begin(9600);
}

void loop(){
  if (Serial.available()>0){

    input=Serial.read();

    if (input=='1'){

      digitalWrite(13, HIGH);

    }

    else

    {

      digitalWrite(13, LOW);

    }

  }
}



Evidencias:






Practica 4: Encender un servomotor con ayuda de un sensor ultrasónico

En está practica nos ayudó a ver el funcionamiento de 2 componentes en funcionamiento para hacer una acción que en este caso fue el de mover a 180° el servomotor si un objeto se encontraba a una distancia corta y que regresará a su posición 0 si es que un objeto estaba mas lejos.


Código: 

#include <Servo.h>


int led=8;
int cm=0;
long distancia,duracion;
int posicion1= 0;
int posicion2= 180;
Servo miServo;
#define Pecho 6
#define Ptrig 7


void setup() {
 pinMode(led, OUTPUT);
 Serial.begin (9600);
 pinMode(Pecho, INPUT);
 pinMode(Ptrig, OUTPUT);
 miServo.attach(13);

}

void loop() {
 
digitalWrite (Ptrig,LOW);
  delayMicroseconds(2);
  digitalWrite(Ptrig,HIGH);
  delayMicroseconds(10);
  digitalWrite(Ptrig,LOW);

  duracion= pulseIn(Pecho, HIGH);
  distancia =(duracion/2)/29;

  if (distancia >=500){  
    Serial.println("---");                
  } else if( distancia <=10) {
    Serial.print(distancia);              
    Serial.println("cm");                        
  }

  if (distancia <=10 && distancia >=1){
    miServo.write(posicion1);
    Serial.println("Obstaculo");  
  } else {
    miServo.write(posicion2);
  }
  delay(400);                        
}

Evidencias:






Practica 5: Sensor de temperatura LM35

Código:

El sensor de temperatura nos ayuda a poder saber la temperatura de un objeto y en está practica pudimos hacer que uno funcioné y tambien pudimos observar la temperatura que marca si lo tapamos con la mano o si está en el aire libre, como se muestra a continuación

const int sensorPin = A0;
 
void setup()
{
  Serial.begin(9600);
}
 
void loop()
{

  float valueAdc = analogRead(sensorPin);
  Serial.println(valueAdc);


  float volts = (valueAdc / 1023.0) * 5;
  Serial.println(volts);


  float celsius = volts * 100.00;

  Serial.print(celsius);
  Serial.println(" C");
  delay(1000);
}



Evidencias:






Practica 6: Mover un servomotor con un sensor ultrasonico y un Led

Aquí fusionamos 3 componentes para hacer una sola función la cual es que cuando detecte un objeto a una distancia corta, entonces que se encienda el led y si está fuera del rango que el led se apague, aquí pudimos observar el funcionamiento de estos 3 componentes que pueden servir como por ejemplo en un puente con un semáforo

Código: 
#include <Servo.h>


int led=8;
int cm=0;
long distancia,duracion;
int posicion1= 0;
int posicion2= 180;
Servo miServo;
#define Pecho 6
#define Ptrig 7


void setup() {
 pinMode(led, OUTPUT);
 Serial.begin (9600);
 pinMode(Pecho, INPUT);
 pinMode(Ptrig, OUTPUT);
 miServo.attach(13);

}

void loop() {
 
digitalWrite (Ptrig,LOW);
  delayMicroseconds(2);
  digitalWrite(Ptrig,HIGH);
  delayMicroseconds(10);
  digitalWrite(Ptrig,LOW);

  duracion= pulseIn(Pecho, HIGH);
  distancia =(duracion/2)/29;

  if (distancia >=500){  
    Serial.println("---");                
    digitalWrite(led, LOW);
  } else if( distancia <=10) {
    Serial.print(distancia);              
    Serial.println("cm");              
    digitalWrite(led,HIGH);            
  }

  if (distancia <=10 && distancia >=1){
    miServo.write(posicion1);
    Serial.println("Obstaculo");  
    digitalWrite(led,HIGH);
  } else {
    digitalWrite(led, LOW);
    miServo.write(posicion2);
  }
  delay(400);                        
 
}


Evidencias: 







Comentarios

Entradas más populares de este blog

Competencia 5: PA1 - Buses de comunicación

  Los puertos de comunicación son las interfaces que utilizan las aplicaciones para conectarse con otros elementos, ya sean hardware o software, para enviar y recibir paquetes de datos. En cierta manera, es como decir el buzón de correos de nuestro edificio aplicado a un ordenador. El edificio – que equivaldría al ordenador-, tiene muchas viviendas – que podrían ser las aplicaciones -. Cada vivienda tiene su propio buzón para recibir mensa jes – que serían los puertos -. De esta manera, cada aplicación en un ordenador puede tener asignado su propio puerto para comunicarse con el exterior. Puertos de software y puertos de hardware Vale, además, tenemos dos grandes tipos de puertos, podemos encontrar dos grandes categorías: el puerto de comunicación de hardware, y el de software. Los de hardware, tienen como finalidad establecer comunicaciones entre dispositivos físicos (por ejemplo, módems, mouse, teclado…). Un ejemplo típico es el USB. En un ordenador cualquiera, normalmente tenemo...

Proyecto

Proyecto: carrito con sensor de movimiento. Introducción La robotica y la inteligencia artificial son campos que en los últimos año han tomado importancia en la actualidad, los podemos encontrar aplicados en distintas áreas de investigación como brazos robóticos que toman objetos sin la necesidad de que alguien los controle o en procesos de en las empresas como en las líneas de empaquetado, inclusive en la vida cotidiana con aspiradoras que recorren toda la casa hasta que detectan que ya limpiaron todas las áreas previamente configuradas . Objetivo Construir un robot que avance en línea recta mientras no detecte un obstáculo en un rango de 20 cm, en caso de detectar un obstáculo el robot retrocederá y girará sobre sí mismo hasta que detecte que ya no hay obstáculos en su camino. Objetivos específicos Construir un robot que identifique obstáculos, usando componentes básicos de electrónica y Arduino. Conocer conceptos básicos de inteligencia artificial para automatizar el proceso de...

PA1 - Competencia 6: Mapa mental clasificación de las interfaces en los módulos de adquisición de datos.