Está en la página 1de 19

UNIVERSIDAD POLITÉCNICA DE TULANCINGO

PRACTICA 3
PRACTICAS CON ARDUINO.

Nombre de los alumnos:

U
Luis Eugenio López Flores

Carrera:
Ing. Robótica

P
Nombre de la Asignatura:
Estancia 1.

Nombre del Docente:


Ing. Elvis Aguilar Huerta.

T Cuatrimestre: 4to
Septiembre-diciembre 2021

GRUPO:
IR41
Tulancingo de Bravo, Hidalgo a 01 de noviembre del 2021.
Índice.

............................................................................................................................................................. 1
Introducción. ................................................................................................................................... 3
Objetivos. ......................................................................................................................................... 4
Resumen: ......................................................................................................................................... 5
Marco Teórico. ................................................................................................................................ 6
Practica. .......................................................................................................................................... 10
Conclusión. .................................................................................................................................... 18
Referencias. ................................................................................................................................... 19
Introducción.
Siempre el ser humano ha querido tener el control de todo ya sea para obtener
buena productividad en algún rublo o simplemente para satisfacer alguna
necesidad.
Un ejemplo muy claro en la industria automotriz: Nosotros queremos controlar la
velocidad del carro y esto se hace gracias a un sistema de control.
Un ejemplo en el sector alimenticio: Cuando nosotros queremos servirnos un
poco de refresco de las maquinas despachadoras apretamos un botón el cual nos
va a permitir el control de cuanto líquido queremos consumir.
Un ultimo ejemplo en el sector de automatización de robótica hay un sistema
Mecatrónico o Robótico el cual nos permite el control de ciertos elementos para la
producción.
Todo esto funciona gracias a un sistema electrónico-Informático-Mecánico que,
mediante microcontroladores, dispositivos receptores como motores,
leds…Dispositivos emisores como transistores, resistencias… Mecanismos y
programación.
Objetivos.

• Saber ser: Estaremos apegado a los valores universales y a la ética


profesional al momento de redactar y realizar la práctica.
• Saber saber: Aplicaremos conocimientos adquiridos durante el primer
ciclo de formación como lo es: Programación, electricidad y electrónica.
• Saber saber: Adquiriremos conocimientos nuevos acerca del
funcionamiento individual y conjunto de transistores, motores, sensores,
Arduino, resistencias, circuito…
• Saber hacer: Practicaremos conocimientos mediante la utilización de
software de simulación de circuitos y al mismo tiempo la realización de
prácticas físicas.
Resumen:

Esta investigación estamos continuando los trabajos que realizamos como:


Arduino, Hola mundo de Arduino, Trabajando con Arduino, Microcontroladores,
Características de Arduino, Señales PWM y practicas que hicimos como: Practica
de estructuras de secuencias con diodos led, practicas de estructuras condicionales
con diodos led.
En base a los conocimientos que ya hemos adquirido lo siguiente que debemos
de tener como requisito para la práctica es conocer los siguientes temas.
• Transistores.
• Motores.
• Sensores.
• Algoritmos para control de motores y manejo de sensores.
Posteriormente se realizará una práctica que abarcará algunas de las ramas del
conocimiento que hemos adquirido durante esta presente practica y el primer ciclo
de formación.
Marco Teórico.
Primeramente, recordemos los siguientes conceptos Importantes.
• ¿Qué es un microcontrolador y microprocesador?
Es un dispositivo capaz de realizar procesos mediante la informática y la
electrónica. El microcontrolador es mas compacto debido a que tiene todo
en un solo dispositivo sin embargo sus posibilidades de aplicación no son tan
especificas y el microprocesador es aquel que tiene un tamaño mayor, pero
este tiene unas grandes posibilidades de usos Estos se componen por
Memorias CPU, RAM Y memorias ROM.
• ¿Qué es Arduino?
Es un software el cual nos permite programar con un lenguaje de
programación de alto nivel similar al c++ este nos da la facilidad de programar
el hardware el cual consta de una placa con un microcontrolador el cual
posee entradas y salidas digitales y analógicas al igual que señales PWM.
• ¿Qué es un circuito?
Un circuito es aquel que tiene dispositivos tanto eléctricos como
electrónicos los cuales nos permiten controlar, transmitir o generar
corriente eléctrica. Estos se componen por El generador, Dispositivos de
recepción, emisión y manipulación.
• ¿Cuáles son los algoritmos básicos y fundamentales para Arduino?
En la siguiente tabla se definirán algunos algoritmos que se han aprendido
durante el transcurso de este curso. En la tabla 1 se puede ver los algoritmos
que hemos aprendido hasta el momento.
Tabla 1
Algoritmo. Descripción.
Void setup (){ Este nos permite iniciar y registrar
datos primarios.
Void loop (){ Este nos permite indicar las tareas
que debe de realizar Arduino.
Int, float, short, long, long long Este nos permite definir variables
enteras flotantes, cortas, grandes y
enormes (Hablando en bits)
pinMode() Este nos permite definir una variable
de entrada o salida.
Delay () Este nos permite asignar tiempos
con una razón de milisegundos.
digitalWrite() Este nos permite enviar señales
digitales.
digitalRead() Lectura de pines digitales.
If () Estructura condicional
AnalogRead() Lectura de datos analógicos.
AnalogWrite() Envio de señales analógicas PWM
Marco teórico.
¿Qué es un transistor?
Un transistor es un dispositivo de tipo “tripolar” este realiza la función similar a la
de un “potenciómetro” el cual varia una resistencia esta va dependiendo de la
señal la cual reciba este mismo. Este se compone de tres pines los cuales se
definen como lo siguiente: Base, emisor y colector. En la figura 1.1 Se verá una
imagen de un transistor 2N222
Este se compone principalmente de una resistencia y un diodo. Este tiene capas
que se dividen de tipo Cátodo y Ánodo o NPN O PNP Estos tienen un
funcionamiento similar solamente cambia la forma de conexión de cada uno de
estos. En la figura 1.2 veremos los símbolos del NPN Y PNP.
Su funcionamiento consta de una configuración colector base o emisor base.
Igualmente se puede utilizar el transistor como un cuatripolo el cual genera un
comportamiento en especifico en la tabla 2 se verán estos comportamientos.
Tabla 2.
Comportamiento. Descripción
Activo-Directo Este permite Amplificar Tensiones.
Corte Este actúa como un interruptor abierto.
Saturación. Este actúa como un interruptor cerrado.
Activo-Indirecto. Este permite amplificar corrientes, pero
no tensiones.

Veremos las siguientes ecuaciones fundamentales para entender el análisis de un


circuito relacionado con transistores.
V=𝐼 ∗ 𝑅……………………………………………….....(1).
𝑉
I=𝑅……………………………………………………….(2).
𝑉
R= 𝐼 ……………………………………………………....(3).

Ic= β*Ib……………………………………………..…..(4).
𝑅2−𝑉
Vb=𝑅1+𝑅2…………………………………………….….(5).
Figura 1.1 Transistor 2N222

Figura 1.2 Simbología


Marco Teórico.
¿Qué es y cómo funciona un motor?

1800 1822 1824


Actualidad
Figura 2.1

Un motor es un dispositivo eléctrico-magnético el cual a partir de energía eléctrica


genera energía mecánica.
Esto fue gracias a grandes Científicos como Volta el cual en 1800 Creo la primera
pila, posteriormente en 1820 se descubrió que al someter una electricidad a un
material conductor generaba un campo magnético posteriormente se crearon 2
modelos que dieron pie al motor de corriente directa que conocemos hoy en día.
Tuvieron dificultades con los modelos debido a su funcionamiento, pero
posteriormente en 1824 se creo el modelo con conmutador el cual quitaba varias
desventajas de los modelos anteriores. Este modelo es el que mas se parece al que
tenemos actualmente.
En la figura 2.1 se puede ver una línea del tiempo de los motores DC hasta la
actualidad.
El motor de corriente directa (DC) Trabaja con voltaje constante y tiene ciertos
rangos los cuales no deben de variar para no dañar el motor. Este básicamente
funciona de la siguiente manera: Se alimenta el motor, el voltaje llega a los
conmutadores los cuales llegan al arreglo de alambres de cobre los cuales generan
el campo magnético y hace que gire siempre y cuando cambie los conmutadores.

Figura 2.2 Funcionamiento del Motor.


Marco Teórico
¿Qué es el sensor ultrasónico cómo funciona?
Un sensor es un dispositivo de control el cual sustituye los sentidos humanos para
medir la temperatura, humedad, distancia, objetos, movimiento, sonido… Esto con
el objetivo de tener señales de entrada los cuales activaran dispositivos de salida
como los motores. El sensor de proximidad sirve para detectar objetos en una zona
delimitada puede realizarlo mediante señales ópticas o acústicas.
El sensor Ultrasónico: Es un tipo de sensor acústico el cual se considera de
proximidad ya que es usado para la detección de objetos o personas. Este funciona
mediante señales Acústicas es decir mediante señales de sonido que las emite un
emisor (TRIGGER) y un Receptor (ECO) el cual mediante una formula analítica y
programada puede medir la distancia en el cual detecte. Este tiene un rango de 4
Metros y una zona angular de detección de 30 grados, esta señal que envía es un
sonido ultrasónico que tiene una frecuencia de 40 Khz el cual tiene una velocidad
de 343 m/s.
Hay algunas medidas que pueden variar las mediciones como lo es: El tipo de
material con el que choca el sonido, la presión, la temperatura y el rango angular el
cual puede tener variaciones a los 30 grados.
La forma de funcionamiento del mismo es la siguiente:
• El sensor envía una señal de sonido ultrasónica mediante el pin TRIGGER.
• El sensor recibe la señal de sonido mediante un rebote el cual la recepta con
ECO.
• El sensor mide la distancia mediante fórmulas.
1
𝑑 = 𝑣 ∗ 𝑡 … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … . . (1)
2
𝑡
𝑑= … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … … (2)
58.2
d= Distancia.
v= Velocidad del sonido.
t= Tiempo de recepción en (Micro segundos).
Algoritmos fundamentales.
Algoritmos. Descripción
pulseIn Este nos generara un tiempo en
micro.
Serial.begin(9600) Inicio de monitor serial
Serial.println() Imprimir la lectura de… en monitor
Practica.
Planteamiento del problema:
Realizar un programa que permita el control de un motor mediante 2 botones
pulsadores, el primero debe de encenderlo, mientras que el segundo debe de
apagarlo.
Materiales:
• 2 push botton de cuatro pines.
• 3 resistencias de 1 KΩ
• 1 tiristor NPN 2A2222N
• 1 motor DC
• Una batería de 9V.
• 1 Arduino UNO O Mega.
Equipo:
• Laptop o Computadora.
• Multímetro.
Software.
• Arduino IDE.
• Thinkercad.
Procedimiento del circuito.
• Debemos de colocar primeramente el transistor.
• Debemos de conectar el positivo del motor al colector.
• Conectamos una resistencia al pin base del transistor el cual ira a un pin
digital del Arduino.
• Conectamos a tierra el pin emisor.
• Conectamos el negativo de la pila al riel de alimentación negativa de la
protoboard.
• Conectamos el positivo de la pila al extremo positivo de la pila.
• Conectamos los push botons.
• Conectamos en uno de sus polos una resistencia a la corriente positiva
de la protoboard.
• Conectamos uno de sus polos a la parte negativa de la protoboard.
• Conectamos el pin que sobra a los pines digitales de Arduino.
• Conectamos tierra y voltaje de Arduino a la protoboard.
En la figura 3.1 se vera la practica realizada.
En la figura 3.2 se vera la conexión realizada
Practica.

Figura 3.1

Figura 3.2 Conexión de control de motor mediante dos botones.


Proceso de programación.
int MOTOR= 3; //Se declaran los dispositivos que vamos a utilizar.

int BOTONON=0;

int BOTONOFF=1;

void setup() { //Se le da datos Secundarios al programa.

// put your setup code here, to run once:

pinMode(MOTOR,OUTPUT); //Se declaran que dispositivos son entradas o salidas.

pinMode(BOTONON,INPUT);

pinMode(BOTONOFF,INPUT);

Serial.begin(9600); //Se inicia la comunicación serial .

void loop() { //Se le asignan una serie de instrucciones al programa.

// put your main code here, to run repeatedly:

if(digitalRead(BOTONON)==0){ //Se pone la condicional del botón de encendido.

digitalWrite(MOTOR,HIGH); //Si lee que se apretó entonces

Serial.println(BOTONON); //Encendera el motor.

if(digitalRead(BOTONOFF)==0){ //Si se aprieta el botón dos.

digitalWrite(MOTOR,LOW); //Se apagara el motor.

Serial.println(BOTONOFF);

}
Practica.
Planteamiento del problema:
Realizar un programa que permita el control de un motor mediante un sensor
ultrasónico, el cual va a controlar la velocidad “PWM” mediante la distancia, entre
más cerca esta menos velocidad tendrá y entre mas lejos esta más velocidad
tendrá el motor.
Materiales:
• 1 resistencia de 1 KΩ o 22Ω
• 1 tiristor NPN 2A2222N
• 1 motor DC
• Una batería de 9V.
• 1 Arduino UNO O Mega.
• 1 sensor Ultrasonico.
Equipo:
• Laptop o Computadora.
• Multímetro.
Software.
• Arduino IDE.
• Thinkercad.
Procedimiento del circuito.
• Debemos de colocar primeramente el transistor.
• Debemos de conectar el positivo del motor al colector.
• Conectamos una resistencia al pin base del transistor el cual ira a un pin
digital del Arduino.
• Conectamos a tierra el pin emisor.
• Conectamos el negativo de la pila al riel de alimentación negativa de la
protoboard.
• Conectamos el positivo de la pila al extremo positivo de la pila.
• Conectamos tierra y voltaje de Arduino a la protoboard.
• Conectamos el sensor con su respectiva tierra, voltaje, trig y eco.
En la figura 4.1 se vera la conexión realizada.
En la figura 4.2 Se vera la practica realizada
Practica.

Figura 4.1 Conexión de control de motor mediante dos botones.

Evidencias de practica.

Figura 4.2
Proceso de programación.
int MOTOR = 3;

int TRIG = 9;

int ECCO= 10; //Se declara cada componente que vamos a utilizar.

int DURACION; //Se declara la variable duración. (Tiempo)

int DISTANCIA; //Se declara la variable de distancia. (Cm)

int VELOCIDAD1; //Se declaran los diferentes tipos de velocidades que tendrá el motor.

int VELOCIDAD2;

int VELOCIDAD3;

int VELOCIDAD4;

int VELOCIDAD5;

int VELOCIDAD6;

int VELOCIDAD7;

int VELOCIDAD8;

int VELOCIDAD9;

int VELOCIDAD10;

int VELOCIDAD11;

int VELOCIDAD12;

int VELOCIDAD13;

void setup() { //Se agregan datos secundarios al programa.

// put your setup code here, to run once:

pinMode(ECCO,INPUT); //Se declaran las entradas o salidas de los dispositivos.

pinMode(MOTOR,OUTPUT);

pinMode(TRIG,OUTPUT);

}
Serial.begin(9600); //Se inicia la comunicación serial de Arduino.

void loop() { //Se ingresan instrucciones que va a ejecutar el programa.

// put your main code here, to run repeatedly:

digitalWrite(TRIG,1); //Se genera una señal de sonido el cual va a duar solamente un

delay(1);//Milisegundo

digitalWrite(TRIG,0); //Se apagara la señal.

DURACION= pulseIn(ECCO,1); //En ese momento la duración va a ser en micro segundos por lo que se
//obtendrá con pulseIn ese cálculo de segundos.

DISTANCIA= DURACION / 58.2; //Se aplica la formula de distancia con la variable obtenida.

Serial.println(DISTANCIA); //Se imprime la distancia calculada.

if(DISTANCIA==10){ //Si la distancia es 10

VELOCIDAD1=0; //La velocidad1 valdra cero.

analogWrite(MOTOR,VELOCIDAD1);

if(DISTANCIA==20){ //Si la distancia es 20

VELOCIDAD2=40//La velocidad 2 valdra 40.;

analogWrite(MOTOR,VELOCIDAD2);

if(DISTANCIA==30){ //Si la distancia es 30

VELOCIDAD3=60;//La velocidad valdra 60.

analogWrite(MOTOR,VELOCIDAD3);

if(DISTANCIA==40){ ////////////////////////Va a ir aumentando o disminuyendo dependiendo la distancia que se


//tenga

VELOCIDAD4=80;

analogWrite(MOTOR,VELOCIDAD4);

if(DISTANCIA==50){

VELOCIDAD5=100;

analogWrite(MOTOR,VELOCIDAD5);

}
if(DISTANCIA==60){

VELOCIDAD6=120;

analogWrite(MOTOR,VELOCIDAD6);

if(DISTANCIA==70){

VELOCIDAD7=140;

analogWrite(MOTOR,VELOCIDAD7);

if(DISTANCIA==80){

VELOCIDAD8=160;

analogWrite(MOTOR,VELOCIDAD8);

if(DISTANCIA==90){

VELOCIDAD9=180;

analogWrite(MOTOR,VELOCIDAD9);

if(DISTANCIA==100){

VELOCIDAD10=200;

analogWrite(MOTOR,VELOCIDAD10);

if(DISTANCIA==110){

VELOCIDAD11=220;

analogWrite(MOTOR,VELOCIDAD11);

if(DISTANCIA==120){

VELOCIDAD12=240;

analogWrite(MOTOR,VELOCIDAD12);

if(DISTANCIA==130){

VELOCIDAD13=255;

analogWrite(MOTOR,VELOCIDAD13);

}
Conclusión.
En base a los resultados que obtuvimos de la practica que fue satisfactorio podemos
decir que la aplicación de estos conocimientos de electrónica y programación
que estamos aprendiendo lo podemos aplicar en nuestras futuras prácticas y en
nuestro proyecto final, además podemos por primera vez implementar de manera
satisfactoria la aplicación de sensores en este caso de proximidad denominado
ultrasónico que mediante señales de salidas nos da una señal de entrada que son
traducidos como distancia. Además, aprendimos que no solamente se implementa
en nuestra vida escolar o estudiantil, sino que también se aplica en la vida real como
los sistemas de seguridad automotrices que se basan con sensores ultrasónicos
para mecanismos de seguridad ante situaciones donde el ser humano sus sentidos
no son suficientes,
Podemos implementar este sistema de proximidad para nuestro carro zumobot o
inclusive un sistema automatizado.
Se cumplieron con los objetivos planteados durante este presente documento.
En la siguiente figura 5.1 se puede visualizar una aplicación del sistema de
proximidad.

Figura 5.1 Sistemas de proximidad en el sector automotriz.


Referencias.
[1] IPN, Escuela superior de ingeniería mecánica y eléctrica, Sistemas de
proximidad ultrasónico, Xicohtencalt Cuamatzy Flores, Miguel Adfolfo Jimjenez
Muñiz, Francisco Javier Navarrete Gonzalez.
[2] Virtual Brain, Youtube, How Works a DC Motor.
[3]UPT, Facultad de Ingenieria, Transistores BJT, , Luis Eugenio López Flores.
[4] Vt en línea, Como funciona un sensor Ultrasonico, Youtube.
Enlaces para prácticas.
[1]https://www.tinkercad.com/things/8pT3MqBTcLL-powerful-jofo-
wolt/editel?sharecode=rpbG8Jb41ZGX1PzBsG1MNzeUONv7xah8M7W1iEu3ilo
[2]https://www.tinkercad.com/things/gx5tfOFJBQJ-glorious-
turing/editel?sharecode=-7Xh6U0UEeiQHQGyici-3EUn-vPLPmo8r2sk-YPey9Q

También podría gustarte