clase10y11cursoca2010 [modo de...
TRANSCRIPT
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
Control Aplicado20102010
D t
Carrera: Ing. ElectrónicaGrupo: 5N2Eo
Docente:Alejandro A Méndez TProf. Titular Dpto. Electrónica FEC - UNI
http://docentes.uni.edu.ni/Fec/
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
Unidad II: Microcontroladores
A Méndez Dpto. Electrónica
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
A few years ago, system control functions were implemented using logic
WHAT IS A MICROCONTROLLER?
components and were usually large, heavy boxes. Later on, microprocessorswere used and the entire controller could fit onto a small circuit board. As theprocess of miniaturization continued, all of the components needed for acontroller were built right onto one chip. By only including the featurescontroller were built right onto one chip. By only including the featuresspecific to the task, cost is relatively low.
Microcontrollers come inmany varieties. Dependingon the power and featureson the power and featuresthat are needed, customersmight choose a 4, 8, 16, or32 bit microcontroller.
A Méndez Dpto. Electrónica
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
A Méndez Dpto. Electrónica
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
Diagrama de bloques de un microcontrolador
A Méndez Dpto. Electrónica
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
A Méndez Dpto. Electrónica
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
A Méndez Dpto. Electrónica
A Méndez Dpto. Electrónica
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
A Méndez Dpto. Electrónica
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
A Méndez Dpto. Electrónica
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
A Méndez Dpto. Electrónica
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
Procedimiento de diseño - microcontroladores
1. Entendimiento total de lo requerido por el cliente (sistema nuevo/existente). Dividir elsistema en áreas y dibujar un esquema o elaborar un diagrama de bloques.
2. Determinar los sensores/transmisores y actuadores requeridos. Dibujar el circuito delsistema, incluido el panel de control.
3 D ibi l f i i t d l i t Có l f i i t t áti ó3. Describir el funcionamiento del sistema. Cómo es el funcionamiento automático, cómo sepasa de automático a manual, cómo se gestionan las alarmas, panel de control, etc.
4. Elaborar tabla de entradas y salidas, periféricos, requerimientos de comunicación, etc.
5 S l ió d l i t l d ( i ifé i i i I/O t )5. Selección del microcontrolador (memoria, periféricos, comunicaciones, I/O, etc.)
6. Descripción del programa mediante PDL (diagrama de flujo, diagrama de estados,etc.)
7 E ibi l d Mik C7. Escribir el programa usando Mikro C.
8. Simular el sistema usando PROTEUS (otros)
9. Implementar el sistema (si es posible conseguir los componentes)
A Méndez Dpto. Electrónica
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
Cuando vamos a diseñar unprograma que debe realizar tareas
Diagrama de Flujo
p g qno pequeñas, es importanteplanificar su estructura antes decomenzar a escribir el código.
Una técnica gráfica muy bienestablecida es el diagrama de flujo.Mientras el mismo tiene muchossímbolos que pueden ser usados,podemos desarrollar buenospodemos desarrollar buenosdiagramas de flujo con sólo dos! –rectángulo para procesos oacciones y diamantes paradecisiones..
A Méndez Dpto. Electrónica
El uso de diagrama de flujo es considerado por algunos como una técnica vieja como el lenguaje ensamblador mismo, el mismo no promueve programas estructurados.
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
Diagrama de estados
El diagrama de flujo ve laEl diagrama de flujo ve lavida como una serie deacciones o eventos loscuales son rápidamentedesarrollados. Muchosproductos, sin embargo, sep , g ,comportan en una maneramuy diferente. Tienden amoverse desde un estado aotro, probablementeinvirtiendo un tiempo
fsignificante en dicho estadoy dejando el mismo cuandodicho tiempo ha transcurridoo cuando un eventoespecifico ocurre. Estos sonmejor representadosmejor representadosmediante diagramas deestado, la cual es unaalternativa al diagrama deflujo.
A Méndez Dpto. Electrónica
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
Desde el punto de vista de la programación, los diagramas de estado son más abstractos que losdiagramas de flujo y no pueden ser traducidos fácilmente a código ensamblador. De hecho, es más fácilconvertir cada estado en un diagrama de flujo. Para retener la claridad de la estructura para asegurarna b ena práctica de programación cada estado debe tener claramente definidos los p ntos deuna buena práctica de programación, cada estado debe tener claramente definidos los puntos de
entrada y salida.
A Méndez Dpto. Electrónica
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
Program Description Language
Es un texto de formato libre el cual describe el flujo de control en un programa. PDL no es un lenguajede programación, es una herramienta que ayuda al programador a pensar acerca de la lógica delprograma antes de que el mismo sea desarrollado.
START - END
La descripción del programa usando PDL debel l b l START t icomenzar con la palabra clave START y terminar
con la palabra clave END.
1. Las palabras claves deben ser escritas ennegrillas para hacer el código más claro.g p g
2. También es una buena práctica indentar losenunciados entre palabras claves para mejorarla legibilidad del código.
A Méndez Dpto. Electrónica
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
SECUENCIAS
Para secuencias normales en un programa, escribir los enunciados en textos cortos como si estuvieradescribiendo el programadescribiendo el programa.
Encender el LEDEsperar 1 segundoApagar el LEDApagar el LED
IF – THEN – ELSE - ENDIF
Usar las palabras claves IF, THEN, ELSE, y ENDIF para describir el flujo de control en un programa.p y p j p g
IF switch = 1 THENEncender LED 1
ELSEELSEEncender LED 2Encender el motor
ENDIF
A Méndez Dpto. Electrónica
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
DO – ENDO
Usar las palabras claves DO y ENDDO para mostrar iteraciones en el código PDL.
Encender el LED
IncondicionalEncender el BUZZERIF switch = 1 THEN
Condicional
Encender el LEDDO 10 veces
Setear el reloj a 1Esperar 10 msSetear el reloj a 0
ENDDO
IF switch = 1 THENDO UNTIL Puerto 1 = 1
Encender el LEDEsperar 10 msLeer Puerto 1
ENDDO ENDDOENDIF
Encender el BUZZERDO FOREVER
Lazo infinito
DO FOREVERLeer dato del puerto 1Enviar dato al puerto 2 Esperar 1 segundo
ENDDO
A Méndez Dpto. Electrónica
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
REPEAT – UNTIL
REPEAT – UNTIL es otra construcción de control usada en los PDLs.
REPEATEncender el BUZZERLeer el valor del switch
UNTIL switch = 1
Se debe observar que el lazo REPEAT – UNTIL es ejecutado, siempre, al menos una vez, y más dena e si la condición al final del la o no se c mpleuna vez si la condición al final del lazo no se cumple.
En general, el vocabulario usado en el PDL debe ser el vocabulario del dominio del problema,no el dominio de la implementación. El PDL es una narración para alguien que conoce losrequerimientos (dominio del problema) y está tratando de aprender como la solución estáorganizada.
A Méndez Dpto. Electrónica
BACK
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
A Méndez Dpto. Electrónica
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
LED Dice
A Méndez Dpto. Electrónica
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
A Méndez Dpto. Electrónica
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
Tarea para el Sábado 10 de mayo del 2010
Descripción del programa (DF, DE, PDL) para el control del ascensor discutido enclase. Además de lo planteado, se debe garantizar el encendido de señalizadores quep , g qpermitan conocer en que piso se encuentra el ascensor.
I1 Pulsador de llamada de la 1ra plantaI2 Pulsador de llamada de la 2da plantapI3 Pulsador de llamada de la 3ra planta
I4 Final de carrera de la primera plantaI5 Final de carrera de la segunda plantaI6 Final de carreta de la tercera planta
Q1 Salida activa el contactor para subirQ2 Salida activa el contactor para bajar
A Méndez Dpto. Electrónica
UNIVERSIDAD NACIONAL DE INGENIERIAFacultad de Electrotecnia y Computación
Departamento de Electrónica
A Méndez Dpto. Electrónica