Documentos de Académico
Documentos de Profesional
Documentos de Cultura
PRACTICA 6
MICROCONTROLADORES 2
INGENIERIA EN AERONAUTICA
6AV2
1
CRUZ HERNÁNDEZ AXEL 6AV2 SISTEMAS ELECTRÓNICOS DIGITALES
Tabla de contenidos
RESUMEN .........................................................................................3
MARCO TEORICO ..............................................................................4
OBJETIVO ..........................................................................................8
DESARROLLO.....................................................................................8
CALCULOS .......................................................................................14
RESULTADOS ...................................................................................15
CONCLUSION ..................................................................................21
REFERENCIAS ..................................................................................21
2
CRUZ HERNÁNDEZ AXEL 6AV2 SISTEMAS ELECTRÓNICOS DIGITALES
RESUMEN
Los microcontroladores están presentes en nuestro trabajo, en nuestra casa y en nuestra vida, en
general, estos se pueden encontrar controlando el funcionamiento de los ratones y teclados de los
computadores, en los teléfonos y en los hornos microondas y los televisores de nuestro hogar, etc.
Un microcontrolador es un circuito integrado programable que contiene todos los componentes de
un computador. Se emplea para controlar el funcionamiento de una tarea determinada y, debido a
su reducido tamaño, suele ir incorporado en el propio dispositivo al que gobierna. El
microcontrolador es un computador dedicado. En su memoria sólo reside un programa destinado a
gobernar una aplicación determinada; sus líneas de entrada/salida soportan el conexionado de los
sensores y actuadores del dispositivo a controlar, y todos los recursos complementarios disponibles
tienen como única finalidad atender sus requerimientos. Una vez programado y configurado el
microcontrolador solamente sirve para gobernar la tarea asignada.
Un microcontrolador es un circuito integrado programable, capaz de ejecutar las órdenes grabadas
en su memoria. Está compuesto de varios bloques funcionales que cumplen una tarea específica.
Un microcontrolador incluye en su interior las tres principales unidades funcionales de una
computadora: unidad central de procesamiento, memoria y periféricos de entrada/salida.
Combina memoria ROM, memoria RAM, microprocesador y reloj en un chip y estaba destinada a
los sistemas embebidos. En la actualidad los microcontroladores son baratos y fácilmente
disponibles para los aficionados, con grandes comunidades en línea para ciertos procesadores.
Actualmente los principales fabricantes de microcontroladores son los siguientes:
Atmel es una compañía de semiconductores, tiene una extensa línea de productos como lo
son los microcontroladores (incluyendo derivados del 8051, el AT91SAM basados en ARM,
y sus arquitecturas propias AVR y AVR32), dispositivos de radiofrecuencia, memorias
EEPROM y Flash, ASICs, WiMAX, y muchas otras.
Freescale Semiconductor es una compañía global líder en la industria de semiconductores
enfocada en proveer procesamiento embebido y productos de conectividad.
Intel empresa dedicada a la fabricación de microcontroladores y microprocesadores,
aunque no trabajaba sola obtuvo un logro en abril de 1974. donde pone en el Mercado el
microprocesador bajo el nombre 8080 con capacidad de direccionar 64kb de memoria, con
75 instrucciones.
Microchip Technology Inc. es una compañía que se basa en la fabricación de
microcontroladores, memorias y semiconductores analógicos, su producto más conocido
son los microcontroladores PIC de 8 bits.
Motorola compañía dedicada a fabricar microprocesadores y microcontroladores entre
otros productos, su mayor aporte en la industria fue poner al Mercado un microprocesador
de 8 bits, llamado 6800
Texas Instruments o TI, es una compañía norteamericana que desarrolla y comercializa
semiconductores. TI es el tercer mayor fabricante de semiconductores del mundo tras Intel
y Samsung y es el mayor suministrador de circuitos integrados para teléfonos móviles.
ZiLOG Inc, es un fabricante de microprocesadores y microcontroladores. Su producto más
conocido es el Zilog Z80 de 8 bits.
3
CRUZ HERNÁNDEZ AXEL 6AV2 SISTEMAS ELECTRÓNICOS DIGITALES
MARCO TEORICO
4
CRUZ HERNÁNDEZ AXEL 6AV2 SISTEMAS ELECTRÓNICOS DIGITALES
y llevan encima una ventanita de vidrio desde la cual puede verse la oblea de silicio del
microcontrolador. Se fabrican así porque la memoria EPROM es reprogramable, pero antes
debe borrarse, y para ello hay que exponerla a una fuente de luz ultravioleta, el proceso de
grabación es similar al empleado para las memorias OTP. Al aparecer tecnologías menos
costosas y más flexibles, como las memorias EEPROM y FLASH, este tipo de memoria han
caído en desuso, se utilizaban en sistemas que requieren actualizaciones del programa y
para los procesos de desarrollo y puesta a punto.
EEPROM (Electrical Erasable Programmable Read Only Memory). Fueron el sustituto natural
de las memorias EPROM, la diferencia fundamental es que pueden ser borradas
eléctricamente, por lo que la ventanilla de cristal de cuarzo y los encapsulados cerámicos
no son necesarios. Al disminuir los costos de los encapsulados, los microcontroladores con
este tipo de memoria se hicieron más baratos y cómodos para trabajar que sus equivalentes
con memoria EPROM. Otra característica destacable de este tipo de microcontrolador es
que fue en ellos donde comenzaron a utilizarse los sistemas de programación en el sistema
que evitan tener que sacar el microcontrolador de la tarjeta que lo aloja para hacer
actualizaciones al programa.
Memoria Flash. En el campo de las memorias reprogramables para microcontroladores, son
el último avance tecnológico en uso a gran escala, y han sustituido a los microcontroladores
con memoria EEPROM. A las ventajas de las memorias flash es su gran densidad respecto a
sus predecesoras lo que permite incrementar la cantidad de memoria de programas a un
costo muy bajo. Pueden además ser programadas con las mismas tensiones de alimentación
del microcontrolador, el acceso en lectura y la velocidad de programación es superior,
disminución de los costos de producción, entre otras.
Es un circuito integrado programable, capaz de ejecutar ordenes programadas en su memoria, ya
que incluye las tres principales unidades funcionales de una computadora, unidad central de
procesamiento, memoria y periféricos de entrada/salida.
A diferencia de una computadora que controlas con la ayuda de un ratón o un teclado, los
microcontroladores tienen formas únicas de interactuar con los humanos a través de entradas y
salidas, los dispositivos de entrada y salida típicos de los microcontroladores incluyen pantallas LED,
LCD, interruptores y sensores que determinan los niveles de humedad, temperatura y luz.
La mayoría de los sistemas integrados no cuentan con pantallas o teclados para interacciones
directas de persona a computadora, en cambio, los microcontroladores cuentan con una amplia
gama de pines de entrada y salida o GPIO que están configurados para diferentes dispositivos de
entrada y salida.
Temporizadores y contadores: Son circuitos sincrónicos para el conteo de los pulsos que llegan a su
poder para conseguir la entrada de reloj. Si la fuente de un gran conteo es el oscilador interno del
microcontrolador es común que no tengan un pin asociado, y en este caso trabajan como
temporizadores. Por otra parte, cuando la fuente de conteo es externa, entonces tienen asociado
un pin configurado como entrada, este es el modo contador.
Los temporizadores son uno de los periféricos más habituales en los microcontroladores y se utilizan
para muchas tareas, por ejemplo, la medición de frecuencia, implementación de relojes, para el
trabajo de conjunto con otros periféricos que requieren una base estable de tiempo entre otras
funcionalidades. Es frecuente que un microcontrolador típico incorpore más de un
5
CRUZ HERNÁNDEZ AXEL 6AV2 SISTEMAS ELECTRÓNICOS DIGITALES
Conversor analógico/digital: Como es muy frecuente el trabajo con señales analógicas, estas deben
ser convertidas a digital y por ello muchos microcontroladores incorporan un conversor analógico-
digital, el cual se utiliza para tomar datos de varias entradas diferentes que se seleccionan mediante
un multiplexor.
Las resoluciones más frecuentes son 8 y 10 bits, que son suficientes para aplicaciones sencillas. Para
aplicaciones en control e instrumentación están disponibles resoluciones de 12bit, 16bit y 24bit.6
También es posible conectar un convertidor externo, en caso de necesidad
Conversor analógico/digital: Como es muy frecuente el trabajo con señales analógicas, estas deben
ser convertidas a digital y por ello muchos microcontroladores incorporan un conversor analógico-
digital, el cual se utiliza para tomar datos de varias entradas diferentes que se seleccionan mediante
un multiplexor, las resoluciones más frecuentes son 8 y 10 bits, que son suficientes para aplicaciones
sencillas. Para aplicaciones en control e instrumentación están disponibles resoluciones de 12bit,
16bit y 24bit.6 También es posible conectar un convertidor externo, en caso de necesidad
También conocidos como de corriente directa, se inventaron antes que los de corriente alterna, sin
embargo, actualmente se usan con menos frecuencia. Este tipo de motor convierte la energía
eléctrica en mecánica por medio de un movimiento rotatorio, dicho movimiento es generado como
consecuencia del campo magnético.
Por otro lado, debido a su velocidad variable, los motores eléctricos de corriente continua se pueden
utilizar tanto para aplicaciones de baja y alta potencia. Sin embargo, debido a su alto costo y la
necesidad de piezas de repuesto, normalmente sólo se utilizan para alimentar dispositivos que
requieren una entrada de potencia variable.
6
CRUZ HERNÁNDEZ AXEL 6AV2 SISTEMAS ELECTRÓNICOS DIGITALES
El funcionamiento del micro paso consiste en alimentar al mismo tiempo varias fases a la vez con
corrientes medias distintas, de modo que la posición media de flujo en el entrehierro se puede fijar
en cualquier posición. Con este funcionamiento se consigue una resolución inmejorable y existen
en el mercado distintas tarjetas de control basadas en microprocesador.
El control de posición de motores paso a paso se puede efectuar en lazo abierto siempre que se
tomen las precauciones necesarias para no perder ningún paso. Indicaremos que utilizando las
técnicas de PWM para el control de la corriente, asegurando de esta manera un aprovechamiento
máximo de par y con la programación adecuada de aceleración y desaceleración, se puede trabajar
perfectamente en lazo abierto siempre que las variaciones que el par de carga sean conocidas de
antemano. Es en estas aplicaciones de carga conocida donde el motor paso a paso tiene sus
posibilidades industriales. En el caso de tener que accionar cargas desconocidas, su funcionamiento
en lazo cerrado seria del todo perfecto, pero el coste del transductor de retroalimentación
generalmente no justifica esta aplicación.
Se tienen varias clasificaciones de los motores paso a paso, ya que dependiendo de su estructura
física se puede hacer una clasificación en función del principio de funcionamiento.
Aceleración y desaceleración
Con el objeto de no perder el sincronismo se alcanza la velocidad final tras un breve periodo de
aceleración. La aceleración y desaceleración es lineal, el algoritmo se basa en el que se expone en
“embedded systems programing” en enero del 2005 “generate stepper-motor speed profiels in real
time”, un artículo de D. Austin. Este algoritmo permite una parametrización y calculo en tiempo real
mediante la utilización aritmética de punto fijo, sin la necesidad de tablas, adaptado
específicamente al PIC.
Aplicaciones de los motores de corriente directa:
Grúas.
Vehículos de tracción
Prensas
Máquinas de papel
Industrial química y petroquímica
Industrias siderúrgicas
7
CRUZ HERNÁNDEZ AXEL 6AV2 SISTEMAS ELECTRÓNICOS DIGITALES
OBJETIVO
DESARROLLO
Para el circuito 1
El código del primer ejercicio de dos motores con diferentes sentidos de giro:
#include <16F84.H> /*LIBRERIA DEL PIC A UTILIZAR*/
#fuses XT /*TIPO DE OSCILADOR*/
#use delay( clock = 4000000 ) /* Especifica reloj de 4 MHz */
void main(void)
{
int32 x = 0; /*DECLARACION DE VARIABLE*/
int *p_puertaa= 0x05; /* Puntero a PuertaA */
int *p_puertab= 0x06; /* Puntero a PuertaB */
SET_TRIS_A (0xff); /* 0xff --> TRISA */
SET_TRIS_B (0x00); /* 0x00 --> TRISB */
pregunta:
x = *p_puertaa; /*Leemos la puertaa*/
switch(x)
{
case 1:
x = 5; /* SIMULAMOS QUE AMBOS MOTORES GIRAN CW */
*p_puertab = x;
goto pregunta2;
case 2:
x = 6; /* SIMULAMOS QUE MOTOR-1 GIRA CCW Y MOTOR-2 GIRA CW */
*p_puertab = x;
goto pregunta3;
case 3:
x = 10; /* SIMULAMOS QUE AMBOS MOTORES GIRAN CCW */
*p_puertab = x;
goto pregunta4;
case 4:
x = 9; /* SIMULAMOS QUE MOTOR-1 GIRA CW Y MOTOR-2 GIRA CCW */
*p_puertab = x;
goto pregunta5;
case 5:
8
CRUZ HERNÁNDEZ AXEL 6AV2 SISTEMAS ELECTRÓNICOS DIGITALES
9
CRUZ HERNÁNDEZ AXEL 6AV2 SISTEMAS ELECTRÓNICOS DIGITALES
Para el circuito 2
Para la segunda parte de la práctica se usó el siguiente código:
#include <16F84.H> /*lIBRERIA DEL PIC A UTILIZAR*/
#fuses XT /*TIPO DE OCILADOR*/
#use delay( clock = 4000000 ) /* Especifica reloj de 4 MHz */
void main(void)
{
int32 x = 0; /*DECLARACION DE VARIABLE*/
int32 z = 0; /*DECLARACION DE VARIABLE*/
int *p_puertaa= 0x05; /* Puntero a PuertaA */
int *p_puertab= 0x06; /* Puntero a PuertaB */
SET_TRIS_A (0xff); /* 0xff --> TRISA */
SET_TRIS_B (0x00); /* 0x00 --> TRISB */
pregunta:
x = *p_puertaa; /*Leemos la puertaa*/
switch(x)
{
case 1: /*PRIMERA VELOCIDAD*/
PWM1:
/* MOTOR 1*/
z = 1;
*p_puertab = z;
delay_MS(8);
/* MOTOR 2 */
z = 4;
*p_puertab = z;
delay_MS(10);
/* MOTOR 3 */
z = 16;
*p_puertab = z;
delay_MS(10);
/* MOTOR 4 */
z = 64;
*p_puertab = z;
delay_MS(8);
goto pregunta2;
case 2: /*SEGUNDA VELOCIDAD*/
PWM2:
/* MOTOR 1*/
z = 1;
*p_puertab = z;
delay_MS(6);
/* MOTOR 2 */
10
CRUZ HERNÁNDEZ AXEL 6AV2 SISTEMAS ELECTRÓNICOS DIGITALES
z = 4;
*p_puertab = z;
delay_MS(7);
/* MOTOR 3 */
z = 16;
*p_puertab = z;
delay_MS(8);
/* MOTOR 4 */
z = 128;
*p_puertab = z;
delay_MS(9);
goto pregunta3;
case 3: /*TERCERA VELOCIDAD*/
PWM3:
/* MOTOR 1*/
z = 1;
*p_puertab = z;
delay_MS(8);
/* MOTOR 2 */
z = 4;
*p_puertab = z;
delay_MS(7);
/* MOTOR 3 */
z = 32;
*p_puertab = z;
delay_MS(6);
/* MOTOR 4 */
z = 128;
*p_puertab = z;
delay_MS(5);
goto pregunta4;
case 4: /*CUARTA VELOCIDAD*/
PWM4:
/* MOTOR 1*/
z = 1;
*p_puertab = z;
delay_MS(4);
/* MOTOR 2 */
z = 8;
*p_puertab = z;
delay_MS(6);
/* MOTOR 3 */
z = 32;
*p_puertab = z;
11
CRUZ HERNÁNDEZ AXEL 6AV2 SISTEMAS ELECTRÓNICOS DIGITALES
delay_MS(5);
/* MOTOR 4 */
z = 128;
*p_puertab = z;
delay_MS(7);
goto pregunta5;
case 5: /*QUINTA VELOCIDAD*/
PWM5:
/* MOTOR 1*/
z = 2;
*p_puertab = z;
delay_MS(8);
/* MOTOR 2 */
z = 8;
*p_puertab = z;
delay_MS(8);
/* MOTOR 3 */
z = 32;
*p_puertab = z;
delay_MS(5);
/* MOTOR 4 */
z = 128;
*p_puertab = z;
delay_MS(5);
goto pregunta6;
default:
z = 0; /* CUALQUIER OTRO PB NO SE MUEVEN LOS MOTORES */
*p_puertab = z;
break;
}
goto pregunta;
pregunta2:
x = *p_puertaa; /*Leemos la puertaa*/
switch(x)
{
case 14:
z = 0; /* SI ES TERCER PB PARAR MOTOR 1*/
*p_puertab = z;
goto pregunta;
default:
goto PWM1; /* SI NO, MANTENER GIRO CW DEL MOTOR 1 */
break;
}
pregunta3:
12
CRUZ HERNÁNDEZ AXEL 6AV2 SISTEMAS ELECTRÓNICOS DIGITALES
13
CRUZ HERNÁNDEZ AXEL 6AV2 SISTEMAS ELECTRÓNICOS DIGITALES
Para poder ver cuanto voltaje va en cada motor, se puede observar que hay dos osciloscopios, en
la parte de arriba se encuentran los giros positivos a manecillas del reloj y la pantalla de
osciloscopio inferior corresponde a las de contrario a las manecillas del reloj.
CALCULOS
o Un Microprocesador PIC16F84A
o 5 resistencias 10 Kohm
o Resistencia 1 Kohm
o 6 switches
o Fuente de 5 volts
o 1 cristal
o 2 capacitores 22p
o 2 motores
o L293D
14
CRUZ HERNÁNDEZ AXEL 6AV2 SISTEMAS ELECTRÓNICOS DIGITALES
o Un Microprocesador PIC16F84A
o 5 resistencias 10 Kohm
o Resistencia 1 Kohm
o 6 switches
o Fuente de 5 volts
o 1 cristal
o 2 capacitores 22p
o 4 motores
o x2 L293D
o 2 osciladores
RESULTADOS
Para el circuito 1
Cuando se coloca el valor de 1 ambos motores giran sentido a las manecillas del reloj:
15
CRUZ HERNÁNDEZ AXEL 6AV2 SISTEMAS ELECTRÓNICOS DIGITALES
Cuando se coloca el valor de 2 el motor 1 gira al contrario de las manecillas y el 2 a sentido de las
manecillas:
Cuando se coloca el valor de 3 ambos motores giran sentido contrario a las manecillas del reloj:
16
CRUZ HERNÁNDEZ AXEL 6AV2 SISTEMAS ELECTRÓNICOS DIGITALES
Cuando se coloca el valor de 4 el motor 1 gira sentido de las manecillas y el 2 en sentido contrario
de las manecillas:
17
CRUZ HERNÁNDEZ AXEL 6AV2 SISTEMAS ELECTRÓNICOS DIGITALES
Para el circuito 2
Cuando el valor es de 1, se puede observar que el motor 1 y 4 giran a la misma velocidad mientras
que el 2 y 3 giran a la misma velocidad, todos en sentido horario.
Cuando el valor es de 2, se puede observar que todos menos el 4 giran en sentido horario y las
velocidades van en valor ascendente siendo el 4 el de mayor velocidad y el 1 de menor velocidad.
18
CRUZ HERNÁNDEZ AXEL 6AV2 SISTEMAS ELECTRÓNICOS DIGITALES
19
CRUZ HERNÁNDEZ AXEL 6AV2 SISTEMAS ELECTRÓNICOS DIGITALES
Cuando el valor es de 4, se puede observar que todos los motores menos el 1 giran en sentido
antihorario aquí todos giran a diferentes velocidades, ordenando las velocidades de menor a
mayor queda como 1,3,2,4.
Cuando el valor es de 5, se puede observar que todos los motores giran en sentido antihorario y
las velocidades del motor 1 y 2 son las mismas mientras que el 3 y 4 también tienen las mismas.
Las velocidades del conjunto 1 y 2 son mayores que las del conjunto 3 y 4.
20
CRUZ HERNÁNDEZ AXEL 6AV2 SISTEMAS ELECTRÓNICOS DIGITALES
CONCLUSION
Esto se pudiera implementar para un control de temperatura en donde sea necesario que la
temperatura se encuentre en un rango de valores, donde el motor gire en su máxima potencia
cuando sobrepase los 30 grados de temperatura, al hacer girar el motor se puede disminuir el
valor de temperatura, en caso de que esté la temperatura entre 20-30 grados el motor gira a
mitad de su potencia, permitiendo que la temperatura disminuya mucho más lento, y si alcanza
los 20 grados el motor se detiene alcanzando el valor de temperatura deseado. En este mismo
orden de ideas, la utilización de un motor DC y su aplicabilidad también son muy diversas.
La elaboración de esta práctica nos sirve para comprender un poco más la teoría de los
microcontroladores y su aplicación; de ahí la importancia de este, pues a través de él se puede
apreciar lo interesante que es la programación en nuestra vida cotidiana.
REFERENCIAS
21