Vous êtes sur la page 1sur 62

EXPOSITOR :

MC. HERACLIO HEREDIA URETA

Email: heracliohu@gmail.com
Qu es un microcontrolador?

Hubo un tiempo en que los sistemas de control se


hacan exclusivamente con componentes
discretos lgicos, eran cajas grandes, pesadas (antes
incluso eran diseos analgicos ms grandes an y
ms complejos).

Despus se utilizaron microprocesadores y el sistema


de control entero poda encajar dentro de una tarjeta
de circuito impreso. Esto es comn todava, Vd.
puede encontrar muchos sistemas impulsados por
uno de los muchos microprocesadores comunes
(incluso Zilog Z80, Intel 8088, Motorola 6809, y
otros).
Como el proceso de miniaturizacin sigui continuando, todos
los componentes que se requieren para un sistema de
control se construy dentro de un chip, naci el
microcontrolador.

Un microcontrolador es un
circuito integrado que incluye
todos (o casi) los componentes
necesarios para tener un
sistema de control completo.
Los microcontroladores son "la solucin en un
chip", incluyen tpicamente:

CPU
RAM
EPROM/PROM/ROM
I/O (input/output) - serie y paralelo
Temporizadores/Contadores
Sistema de interrupciones.
Los modelos ms potentes incluyen adems
:Sistemas auxiliares (A/D, D/A, dsp ..)
LAS APLICACIONES :

Los microcontroladores frecuentemente se encuentran en:


Aparatos electrodomsticos:
Microondas, Hornos, Frigorficos
Televisin ,Vdeos, Equipos sonido

Equipos informticos
Impresoras, Copiadoras lser,
Mdems, Unidades de disco..
Automviles
Mando de sistemas del automvil
(ABS,Inyeccion,Encendido..),
Diagnsticos,Climatizador
Mando medioambiental
Invernadero, Fbrica, Casa
Instrumentacin, Sistemas aerospaciales ..
Los microcontroladores se usan tpicamente donde
la potencia de procesamiento no es importante.

Los sistemas basados en microprocesador y los


microcontroladores se usan extensivamente en
robtica

Una aplicacin especial de los


microcontroladores es la captura de datos:
Temperatura, humedad, velocidad, etc.
El tamao de los microcontroladores es pequeo
y consumen muy poco, esto los hace ideales para
sistemas porttiles y autnomos.
Tipos de microcontroladores

Los hay de 4, 8, 16, y 32 bits de ancho de palabra.

Existen Microcontroladores/Procesadores
especializados para:

Comunicaciones
Manejo del teclado
Procesamiento de la seal
Proceso vdeo
Otras tareas.
Qu microcontrolador usar?

Para decidir el tipo de dispositivo a utilizar para llevar


a cabo un proyecto, hemos de considerar lo siguiente:
Puedo obtener ayuda cuando tenga problemas?
Qu herramientas de desarrollo estn disponibles
y cuanto cuestan?.
Que clase de documentacin tengo disponible
(manuales de referencia, notas de aplicacin,
libros)
Tiene el fabricante disponibles para ese
microcontrolador dispositivos perifricos
(conversores A/D, memoria, reguladores de
tensin)?
Disponen de microcontroladores OTP, grabables
por mscara, EPROM, de esa misma familia?
Los Fabricantes de uP y uC

Intel Mitsibishi
Microchip Philips
AMD Matsushita
Motorola AT&T
IBM Toshiba
TI
Cyrix
Hitachi
NEC
LSI
IDT
CARACTERISTICAS DE LOS
MICROCONTROLADORES
Tcnicas de fabricacin
CMOS - Semiconductor de Oxido de Metal
Complementario
Este es el nombre de la tcnica con que se fabrican
la mayora (sino todos) los microcontroladores.
Los dispositivos CMOS tienen las siguientes
caractersticas:
Consumen muy poca corriente y pueden ser
alimentados por bateras durante mucho tiempo.
El reloj del sistema puede detenerse y ponerse el
dispositivo "en modo sueo" para bajar ms an
su consumo.
CMOS tiene una alta inmunidad al ruido elctrico
Las CPUs atendiendo al tipo de instrucciones que utilizan pueden clasificarse en:
CISC: (Complex Instruction Set Computer) Computadores de juego
de instrucciones complejo, que disponen de un repertorio de
instrucciones elevado (unas 80), algunas de ellas muy sofisticadas y
potentes, pero que como contrapartida requieren muchos ciclos de
mquina para ejecutar las instrucciones complejas.
RISC: (Reduced Instruction Set Computer) Computadores de juego
de instrucciones reducido, en los que el repertorio de instrucciones es
muy reducido (en nuestro caso 35), las instrucciones son muy simples
y suelen ejecutarse en un ciclo mquina. Adems los RISC deben
tener una estructura pipeline y ejecutar todas las instrucciones a la
misma velocidad.
SISC.(Specific Instriction Set Computer) Computadores de juego de
instrucciones especfico.
Tipos de arquitectura
Arquitectura Von-Neuman
Los uC. Von-Neuman tienen un solo bus de datos por el
cual circulan instrucciones y datos.
Las instrucciones del programa y los datos se guardan
conjuntamente en una memoria comn.
Cuando la CPU se dirige a la memoria principal, primero
saca la instruccin y despus saca los datos necesarios
para ejecutarla, esto retarda el funcionamiento de la CPU.

Arquitectura segn el modelo de Von Neumann


Arquitectura Harvard
Dispone de dos memorias:
Memoria de datos
Memoria de Programa
Adems cada memoria dispone de su respectivo bus, lo que
permite, que la CPU pueda acceder de forma independiente y
simultnea a la memoria de datos y a la de instrucciones. Como
los buses son independientes stos pueden tener distintos
contenidos en la misma direccin .
Opciones avanzadas de Memoria

EEPROM - Memoria (solo de lectura) Programable y Borrable


Elctricamente.
Muchos microcontroladores tienen incorporada una cantidad
limitada de memoria EEPROM dentro del chip, el objetivo es
tener una pequea cantidad de memoria donde poner una serie
de parmetros que puedan ser cambiados si la aplicacin lo
necesita.
Este tipo de memoria es relativamente lenta, y el nmero de
veces que se puede borrar/grabar est limitado.
FLASH (EPROM)
Las memorias FLASH son mejores que las EEPROM
cuando tenemos que almacenar el programa de control en
una memoria no voltil.
Estas memorias son ms rpidas que las memoria
EEPROM y permiten ms ciclos de borrado/grabacin.
Memoria RAM con pila
Son tiles cuando tenemos un programa de gran tamao, es
mucho ms rpida que la memoria no voltil, no hay lmite en
el nmero de veces que puede ser grabada, as, es perfecta en
aplicaciones donde se cambien cantidades grandes de datos
frecuentemente.
Memoria "Field programming/reprogramming"
Este tipo de memoria no voltil permite ser reprogramada en
el sitio sin quitar el microcontrolador del sistema que
controla.
Una aplicacin tpica de esta memoria es el sector del
automvil, pues podemos reprogramar el microcontrolador
"in situ". Por ejemplo cambiando los parmetros de la
inyeccin electrnica para adaptar el motor a normas de
emisin de humos, o ponerlo a punto despus de un periodo
de desgaste.
Se podra remotamente actualizar su mdem de Vfast a V.34.
Memoria OTP - One Time Programmable
Un OTP es una memoria PROM (memoria programable de
solo lectura). Una vez la grabamos con un grabador de
EPROM normal, esta no puede modificarse ni borrarse.
Este tipo de memorias se utiliza para hacer series pequeas de
produccin (para probar el cdigo de programa) antes de
fabricar grandes tiradas de microcontroladores con memorias
ROM de mscara.
Como los ciclos de desarrollo de productos son cada vez ms
cortos, es interesante para los fabricantes de
microcontroladores ofrecer OTPs como una opcin.
Las memorias de ROM de mscara son interesantes cuando
se necesitan un gran nmero de unidades y estemos seguros
de que el programa va a ser el definitivo, pero el tiempo de
entrega es de 8 a 44 semanas (una eternidad en algunos
sectores).
Proteccin del software
O por encriptacion o proteccin del fusible, el software
programado es protegido contra personal desautorizado
(ingeniera inversa, modificaciones, piratera, etc.).
sta es slo una opcin en OTPs y dispositivos de ventana
(EPROM).
En Dispositivos ROM de mscara, la seguridad no se necesita
- la nica manera de leer su cdigo sera rasgar el
microcontrolador, y examinar con un microscopio
electrnico.
Cuando le encargamos a un fabricante de microcontroladores
nuestro microcontrolador de ROM de mscara ellos tienen
que probarlo para asegurarse que se programa correctamente.
Para ello deben poder leer desde fuera de la ROM y
compararlo al cdigo que Vd. les envi. Este modo de
funcionamiento es conocido como modo de prueba.
En modo de prueba se puede leer cualquier dispositivo.
Los microcontroladores vienen ahora con una series de
caractersticas que son de una gran ayuda al ingeniero de
control:

Temporizadores.
Cronmetros "perro guardin".
Circuitos para "dormir/despertar" al
microcontrolador.
Modos potentes de direccionamiento de
entrada/salida.
Circuitos conversores analgico/digital etc.

Estas nuevas caractersticas especficas para control


son cada vez ms numerosas y vienen incorporadas
sin aumento de precio en los nuevos dispositivos.
RECURSOS DE LOS MICROCONTROLADORES

Proteccin de Brownout
Proteccin de Brownout normalmente es un circuito
que protege contra sobretensiones de alimentacin

SLEEP
El dispositivo puede ponerse en el modo de Ocioso/Parada
(IDLE /HALT) por medio del software.
En estos modos de funcionamiento, en la memoria RAM
no se pierde ni ningn otro dato.
En modo sleep (ocioso), todas las actividades se detienen
excepto:
La circuitera de oscilador de asociada
La lgica del perro guardin
El amonestador del reloj
El cronmetro ocioso (un cronmetro corriente libre)
Temporizador Watchdog ("Perro guardian")
Un temporizador perro guardin soluciona de una
manera elegante la recuperacin del sistema ante un
problema.
Por ejemplo si un programa entra en un bucle infinito, o
si un fallo de hardware le impide funcionar, entonces el
temporizador de perro guardin resetear el sistema en
un intervalo predeterminado.
El problema puede continuar existiendo, pero al menos
tenemos una va de solucin (podriamos reiniciar el
sistema en un modo de funcionamiento mnimo o
auxiliar).
Esta caracterstica es muy til para sistemas
desatendidos.
ENTRADAS y SALIDAS
UART
Un UART (Unidad Universal de Transmisin Recepcin
Asncrona) es un dispositivo adaptador del puerto serie
para comunicaciones asncronas.
USART
Un USART (Unidad Universal de Transmisin Recepcin
Sncrona y Asncrona) es un adaptador del puerto de serie
para comunicaciones asncronas o sncronas.Los
dispositivos que usan un USART son tpicamente ms
rpidos (tanto como 16 veces) que con un UART.
SPI (Motorola)
Un SPI (interface perifrica de serie) es un puerto de serie
sncrono.
SCI (serial communications interface)
Un SCI es un UART reforzado (puerto de serie asncrono).
Conversin Analgica Digital (A/D)
Ha sido un componente tpicamente externo, convierten tensin
analgica a su valor digital, se utiliza para adquisicin de datos
del mundo analgico, (temperatura, humedad, etc.)
dependiendo del tipo de sensor conectado.

Conversores D/A (Digitales/Analgicos)


Sirven para sacar una tensin analgica a partir de un
valor digital, un ejemplo
En un sistema de 8 bits alimentado con una tensin de
5 voltios, el nmero 50 sera convertido a una tensin
analgica de 0.9765 voltios
(50/256 * 5 voltios)= 0.9765 voltios
Interrupciones.
Al contrario de la tcnica (Polling) en la que el
procesador est continuamente preguntando a los
perifricos (temporizadores /UARTS / Conversores
A/D / Componentes externos) cuando tienen un dato
disponible para hacer la transferencia de entrada
salida (y perdiendo la mayora del tiempo en
preguntar), una tcnica ms eficiente es dejar a los
perifricos comunicar cuando deben ser atendidos:
El procesador puede estar ejecutando su programa
principal, y solo responder a los perifricos cuando
ellos lo necesiten. Cuando el procesador recibe una
interrupcin, abandona el programa principal,
identifica al perifrico que ha producido la
interrupcin y ejecuta la subrutina de atencin a la
interrupcin adecuada, para despus volver al
programa principal.
LENGUAJES DE PROGRAMACIN PARA
MICROCONTROLADORES

LENGUAJE ENSAMBLADOR
El lenguaje mquina es la representacin del programa
tal como la entiende el microcontrolador.
El lenguaje ensamblador es una representacin
alfanumrica del lenguaje mquina, lo que facilita su
lectura.Cada instruccin en lenguaje ensamblador
corresponde a una instruccin en cdigo mquina (sin
tener en cuenta macros ni directivas).
Un programa en lenguaje ensamblador es rpido y corto.
Esto es porque el programador genera el cdigo ms
ptimo posible, el programador se adapta al
microcontrolador. Programando en ensamblador Vd.
aprender la arquitectura y estructura del chip
Intrpretes
Un Intrprete es un lenguaje traductor de alto nivel
(prximo al lenguaje natural) a cdigo mquina.
El Intrprete est residente en el microcontrolador.
Ejecuta el programa leyendo cada sentencia en alto
nivel una a una y traducindolas y ejecutndolas
(traduce y ejecuta al mismo tiempo).
Los dos intrpretes ms populares que hay para
microcontroladores son el BASIC y el FORTH.
El BASIC es conocido por su sencillez,
legibilidad y por supuesto porque todo el mundo
ha programado en BASIC alguna vez que otra..
Una idea comn es que el BASIC (interpretado) es
lento, esto puede ser mejorado usando diferentes
tcnicas.
El FORTH tiene muchos fans debido a su velocidad (se
aproxima al lenguaje ensamblador) y su afinidad para
construir un sistema con partes reemplazables de software.
Muchos sistemas FORTH vienen con un programa
monitor que transforma su PC en un sistema de
desarrollo.
Puede ser difcil escribir en FORTH (sino se tiene
experiencia con l) e incluso es duro de leer. Sin embargo,
es muy til y productivo como lenguaje para control de
sistemas y para robtica.
Una cosa interesante de los Intrpretes es que se puede
construir y desarrollar un programa interactvamente. Vd.
escribe primero un trozo pequeo de programa y a
continuacin puede probarlo para ver inmediatamente cmo
funciona. Cuando los resultados son satisfactorios, vd. puede
agregar entonces las partes adicionales que necesite y as
consecutivamente.
Los Compiladores
Un compilador es un lenguaje de alto nivel que combina la
programacin fcil de un intrprete con una grn
velocidad de proceso. Esto se hace traduciendo todo el
programa de alto nivel directamente a cdigo mquina. El
cdigo mquina se pasa a una memoria EPROM o se carga
en la memoria RAM del microcontrolador. El
microcontrolador entonces ejecuta el programa traducido
directamente, sin haberlo interpretado primero.

Los compiladores ms conocidos para microcontroladores


son "C", BASIC compilado y el "PL/M" de Intel,
Mdula-2 tiene tambin un seguimiento relativo debido a
su eficiente cdigo y alta productividad. Para grandes
chips algunos programadores siguen programando en
ADA (16 bits o ms).
HERRAMIENTAS DE DESARROLLO
Simuladores
Un simulador ejecuta su programa de
microcontrolador en un ordenador (como su PC).
Se puede ejecutar el programa paso a paso y ver
exactamente qu pasa segn el programa se
ejecuta
Vd. puede ver y modificar el contenido de los
registros, memoria, variables y ver como responde
el programa. Elimina (o al menos retarda) el ciclo
borrado/programado de la EPROM en el
desarrollo de programas de microcontrolador.
Se puede aprender experimentando con pequeos
trozos de cdigo y observar en pantalla los
resultados.
Debuggers residentes
Un debbuger residente corre su programa dentro
del propio microcontrolador, al mismo tiempo
muestra el progreso de depuracin en una mquina
host (como por ejemplo un PC).
Tiene las mismas caractersticas que un simulador
normal, con la ventaja adicional de que el
programa corre en un microcontrolador real.
Un debbuger residente, roba los siguientes recursos
al microcontrolador:
Un puerto de comunicaciones, para
comunicarse con el host.
Una interrupcin, para generar programas paso
a paso.
Una cierta cantidad de memoria para almacenar
el programa residente.
Emuladores
Si se dispone de dinero, este es el equipo para
desarrollar su sistema.
Un emulador es un sofisticado dispositivo que
sustituye al microcontrolador al mismo tiempo que
est captando informacin.
Hemos de retirar el microcontrolador de la placa y
poner en su lugar el emulador.
Hemos de retirar el microcontrolador de la placa y
poner en su lugar el emulador.
Nos d total informacin sobre lo que est pasando
en la realidad, y no roba ningn recurso a la tarjeta
que est analizando.
El emulador puede venir con su propio display o
conectado a un PC.
HERRAMIENTAS DE DESARROLLO

ADAPTADOR

PRG16PRO
SOFTWARE

PICBASIC PROCOMPILER
PIC START MLAB-C, MPLAB
PIC (MicroChip)
La mayora de la gente cree que la lnea de
microcontroladores PIC es de reciente introduccin en el
mercado. Sin embargo eran populares hace 20 aos.
Los microcontroladores PIC fueron los primeros
microcontroladores RISC, RISC generalmente implica
que la simplicidad de diseo permite aadir ms
caractersticas a bajo precio y la lnea PIC n es una
excepcin.
Aunque tiene pocas instrucciones (33 instrucciones el
16C5X mientras que el Intel 8048 tiene ms de 90), la
lnea PIC tiene las caractersticas siguientes:
Buses de instrucciones y datos separados (arquitectura
Harvard) lo que permite el acceso simultneo a las
instrucciones y a los datos, y el solapamiento de algunas
operaciones para incrementar las prestaciones de proceso
PIC (MicroChip) continuacin I
El beneficio de su diseo tan sencillo es que :
El chip es pequeo
Pocas patillas.
Muy bajo consumo.
Los microcontroladores PIC estn ganando popularidad
debido a su bajo costo, pequeo tamao y a su bajo
consumo pueden ser usados en reas en las que antes se
pensaba que eran inapropiados.
Existen 4 lneas
PIC16C5X
PIC16CXX
PIC17CXX
PIC18CXX
La linea 16C5X es la lnea descendiente del diseo
original PIC, est limitada y se ha quedado obsoleta con
la lnea 16CXX.
APLICACIONES
DETECTOR DE PROXIMIDAD POR ULTRASONIDO
VOLTIMETRO SERIAL
Usado en jvenes amputados entre 5 a 9 aos
Los amputado controlan estas manos
mediante la contraccin de los msculos de
sus brazos
El sistema posee unos electrodos y amplifica
seales en microvoltios de estas
contracciones
El Stamp fue elegido por su pequeo tamao,
y controla los servos y solenoides para la
articulacin de la mano.
Usados en un episodio de los X-File
Se crearon complejos movimientos laterales y adelante-
atrs via servos y solenoides

Se eligieron por ser fciles de construir, unir y programar


Se utlizaron Stamp I y bsicamente el comando pulsout
El gato padece Lipodsis heptica
(Requiere de dieta lquida a travs de
cnula).
El Stamp controla un diminuto motor
bomba, a travs de de switchs sensores.
El switch enva un pulso por cada
vuelta del motor hacia el Stamp.
El Stamp est programado para nueve
diferentes volmenes de alimentacin,
adems posee un sistema de alarma por
cualquier interrupcin del flujo
CARACTERISTICAS DEL SISTEMA

Medicin de 4 temperaturas al mismo tiempo a intervalos de


un segundo
Grficas en tiempo real de 4 temperaturas de diferentes
procesos
Base de datos (archivos ordenados por fecha del proceso).
Reportes tipo Termo Registrador de hasta 4 procesos diferentes
Registros histricos de diferentes procesos ordenados por fechas
Sistema de alarmas para la supervisin del proceso
Comunicacin serial con la PC mediante interfaz RS232 o
RS485.
PANTALLA PRINCIPAL DEL
SISTEMA DE MONITOREO Y
SUPERVISION

GRAFICA DE LA BASE
DE DATOS DEL SISTEMA
DE MONITOREO Y
SUPERVISION
CURVAS DE LA TEMPERTURA EN EL TIEMPO
FOTOS DEL SISTEMA DE MONITOREO DE TEMPERATURAS
VENTILADOR VAR PORTD.7

DEFINE OSC 4
' Definir los registros y bits del LCD
DEFINE LCD_DREG PORTB 'D0,D1,D2,D3-4,5,6,7
DEFINE LCD_DBIT 4
DEFINE LCD_RSREG PORTE 'E0-RS
DEFINE LCD_RSBIT 0
DEFINE LCD_EREG PORTE 'E1-E
DEFINE LCD_EBIT 1

' Definir los parametros del ADCIN


DEFINE ADC_BITS 8 ' Setear el numero de bits del resultado
' Definir variables de los resultados de la conversin
adc1 VAR BYTE

TRISA = %11111111 ' Setear el puerto A como entrada


ADCON1 = %00000100 ' Setear el puerto A como analgico
Pause 500 ' Espera de .5 segundos
LCDOut $fe,1,"SENATI CHICLAYO"
LCDOut $fe,$c0, "Z.L.C.N"
Pause 1500
LCDOut $fe,1, " ELECTROTECNIA"
LCDOut $fe,$c0," INDUSTRIAL"
Pause 1500
LCDOut $fe,1, " VI "
LCDOut $fe,$c0," SEMESTRE"
Pause 1500
LCDOut $fe,1, " CONTROL DE"
LCDOut $fe,$c0," TEMPERATURA"
Pause 1000
INICIO:
LCD:
IF adc1>=28 Then
High VENTILADOR
Else

Low VENTILADOR

EndIF

LCDOut $fe, 1 ' Limpiar el LCD


ADCIN 0, adc1 ' Leer el primer canal del ADC
adc1=adc1*2
LCDOut $fe,1, " sensores"
LCDOut $fe,$c0, " T1=",#adc1
PAUSE 100

GOTO INICIO
VISTA DE FRENTE
VISTA SUPERIOR
CARACTERISTICAS DEL SISTEMA

Medicin de 2 temperaturas al mismo tiempo a intervalos de


un segundo
Grficas en tiempo real de 2 temperaturas de diferentes
procesos
Comunicacin serial con la PC mediante interfaz RS232 .
PANTALLA DE SUPERVISION Y CONTROL
Diagrama Esquemtico del Circuito Control de Temperatura

Vous aimerez peut-être aussi