Está en la página 1de 9

TALLER DE ROBÓTICA

PORTADA

Nombre de la universidad : Universidad Alvart


Materia: Microcontroladores
Alumno: Víctor Manuel Márquez Villanueva
Nombre y número de Práctica: Sensor de temperatura
Lugar y fecha: Puebla, Puebla, 26 de noviembre de 2022

CONTENIDO

Objetivo:
Se trata de construir un sensor de temperatura que arroje el resultado en grados Celcius, Kelvin y
Farenheit

Lista de material y equipo:


- Arduino uno
- Protoboard
- Sensor de temperatura TMP36
- Una resistencia
- Un potenciómetro
- Una pantalla LCD
- Jumpers

Antecedentes
Arduino es una placa electrónica de hardware libre que utiliza un microcontrolador reprogramable con
una serie de pines que permiten establecer conexiones entre el controlador y los diferentes sensores, es
decir el "cerebro" de algún circuito o maquinaria. En un circuito se suele utilizar como fuente de
alimentación y “puente” entre los diferentes componentes para lograr que interactúen entre ellos.

Desarrollo experimental
Se propone realizar un ejercicio de hacer unsensor de temperatura.

Análisis de resultados
Los resultados fueron los esperados, aunque al principio la lectura de la temperatura era rara. Despues de
hacer algunos ajustes, logró funcionar.

Cálculos
Tablas de mediciones
Gráficas de resultados
Simulaciones y código de programación.

#include <LiquidCrystal.h>
LiquidCrystal Pantalla (12,11,5,4,3,2);
#define PINTEMPERATURA A1
float F_Centigrados (int pinSensor){
float lectura=analogRead(pinSensor);
float centi=(500*lectura)/(1023);
return centi;
}
float F_Farenheit(float Cen){
return(1.8*Cen)+32;
}
void F_Imprime(float centing,float far){
Pantalla.setCursor(0,0);
Pantalla.print("hola hola");
Pantalla.setCursor(0,1);
Pantalla.print(centing);
Pantalla.setCursor(5,1);
Pantalla.print('C');
Pantalla.setCursor(10,1);
Pantalla.print(far);
Pantalla.setCursor(15,1);
Pantalla.print('F');
}
int setpoint=28;
void setup() {
Pantalla.begin(16,2);
pinMode (PINTEMPERATURA, INPUT);
pinMode(13,OUTPUT);

void loop() {
float valCentig=F_Centigrados(PINTEMPERATURA);
float valFarenheit=F_Farenheit(valCentig);
F_Imprime(valCentig,valFarenheit);
if(valCentig>setpoint)
{
digitalWrite(13,HIGH);
delay(100);
digitalWrite(13,LOW);
delay(100);
}
else if (valCentig<setpoint)
{
digitalWrite(13,HIGH);
delay(2000);
digitalWrite(13,LOW);
delay(2000);
}
}
Conclusiones individuales:
La practica sirvió para sacarle mayor provecho al sensor de temperatura.

Bibliografía:
TALLER DE ROBÓTICA

PORTADA

Nombre de la universidad : Universidad Alvart


Materia: Microcontroladores
Alumno: Víctor Manuel Márquez Villanueva
Nombre y número de Práctica: Carrito Seguidor de línea
Lugar y fecha: Puebla, Puebla, 2 de diciembre de 2022

CONTENIDO

Objetivo:
El objetivo es construir un carrito seguidor de línea con el funcionamiento de Arduino y el puente H
L298N. Se utilizo la programación de una función, la carga del programa al microcontrolador, el armado
del circuito sobre el protoboard, y comprobar el funcionamiento del circuito.

Lista de material y equipo:


-Arduino Uno
-Puente H L298N
-Protoboard
-Jumpers
-2 motores reductores
-2 llantas
-Rueda Loca
-2 sensores CNY70
-Power Bank

Antecedentes
Arduino es una placa electrónica de hardware libre que utiliza un microcontrolador reprogramable con
una serie de pines que permiten establecer conexiones entre el controlador y los diferentes sensores, es
decir el "cerebro" de algún circuito o maquinaria. En un circuito se suele utilizar como fuente de
alimentación y “puente” entre los diferentes componentes para lograr que interactúen entre ellos.

Desarrollo experimental
Se propone realizar un ejercicio de hacer un carrito seguidor de linea con sensores CNY70, teniendo una
salida positiva y una salida negativa.

Análisis de resultados
Los resultados fueron los esperados, aunque requirio de varias pruebas, logrando que los sensores CNY70
detecten cuando es negro y cuando es blanco y así poder completar su función de seguir la línea.

Cálculos
Tablas de mediciones
Gráficas de resultados
Simulaciones y código de programación.
int Sen1 = 11; //Punta izquierda
int Sen2 = 10; //Izquierda
int Sen3 = 9; //Derecha
int Sen4 = 6; //Punta Derecha
int V1 = 0; //Lectura Sen1
int V2 = 0; //Lectura Sen2
int V3 = 0; //Lectura Sen3
int V4 = 0; //Lectura Sen4
int IN1 = 8; //Motor Izquierdo Giro Atras
int IN2 = 7; //Motor Izquierdo Giro al Frente
int IN3 = 13; //Motor Derecho Giro al Frente
int IN4 = 12; //Motor Derecho Giro Atras

void setup()

{
Serial.begin(9600);
pinMode (Sen1, INPUT);
pinMode (Sen2, INPUT);
pinMode (Sen3, INPUT);
pinMode (Sen4, INPUT);
pinMode (IN1, OUTPUT);
pinMode (IN2, OUTPUT);
pinMode (IN3, OUTPUT);
pinMode (IN4, OUTPUT);

void loop()

{
V1=digitalRead(Sen1);
Serial.print("Sen1 ");
Serial.println(V1);

V2=digitalRead(Sen2);
Serial.print("Sen2 ");
Serial.println(V2);

V3=digitalRead(Sen3);
Serial.print("Sen3 ");
Serial.println(V3);

V4=digitalRead(Sen4);
Serial.print("Sen4 ");
Serial.println(V4);

if(V2==0)

if(V3==0)

digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);

else

digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);

else

{
if(V3==0)

digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, HIGH);

else

digitalWrite(IN1, HIGH);
digitalWrite(IN2, LOW);
digitalWrite(IN3, LOW);
digitalWrite(IN4, HIGH);

if(V1==0)

if(V2==0)

digitalWrite(IN1, LOW);
digitalWrite(IN2, HIGH);
digitalWrite(IN3, LOW);
digitalWrite(IN4, LOW);

if(V4==0)

if(V3==0)

{
digitalWrite(IN1, LOW);
digitalWrite(IN2, LOW);
digitalWrite(IN3, HIGH);
digitalWrite(IN4, LOW);

}
Conclusiones individuales:
La practica funciono para poner en practica todo lo aprendido anteriormente durante las clases.

Bibliografía:

También podría gustarte