100
DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL DEPARTAMENTO DE INGENIERÍA DE CONTROL DE LA FACULTAD DE INGENIERÍA DE LA UNAM Antonio Salvá Calleja Noviembre de 2004

DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

DESARROLLOS CON MICROCONTROLADORES

HECHOS EN EL DEPARTAMENTO DE

INGENIERÍA DE CONTROL DE LA FACULTAD DE INGENIERÍA

DE LA UNAMAntonio Salvá Calleja

Noviembre de 2004

Page 2: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

MICROCONTROLADORDefinición conceptual

• Los microcontroladores son computadoras digitales en un chip; contienen además periféricos de utilidad en Instrumentación y Control; tales como: Puertos binarios de entrada y salida, temporizadores, puerto serie, etc.

• Los fabricantes de circuitos integrados, producen diversas modalidades de este tipo de dispositivos.

Page 3: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

En el Departamento de Ingeniería de Control (DIC) se ha trabajado con Microcontroladores

siguiendo dos vertientes:• 1. Diseño de software y hardware utilizable

para aprendizaje y desarrollo de aplicaciones concretas.

• 2. Diseño de dispositivos basados en microcontroladores, que pudieran servir de apoyo didáctico en la enseñanza de aspectos teóricos y prácticos de Control, Circuitos e Instrumentación.

Page 4: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

En esta presentación se expondrán algunos desarrollos

encabezados por el maestro Antonio Salvá Calleja, profesor

de carrera del Departamento de Ingeniería de Control

Page 5: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

LAS HERRAMIENTAS PARA DESARROLLO CON

MICROCONTROLADORES DEBEN SER DE FACIL EMPLEO

• Estudiante trabajando en su proyecto final de microcontroladoresempleando una herramienta inapropiada.

Page 6: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

Auxiliares para Enseñanza y Desarrollo con Microcontroladores

(hechos en el DIC)• Software y hardware para aprendizaje y

diseño con microcontroladores de la familia 68HC11.

• Software y hardware para aprendizaje y diseño con microcontroladores de la familia 68HC08.

• Software y hardware para aprendizaje y diseño con microcontroladores de la familia 68HC12.

Page 7: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

Software y Hardware para Desarrollo con

Microcontroladores 68HC11• PUMMA_11, software manejador de

microcontroladores de la familia 68HC11.• Tarjeta SIMMP2, en base al 68HC11F1.• Tarjeta FACIL_11, en base al 68HC11F1.• Tarjeta FACIL_11B, en base al 68HC11F1.• Tarjeta MINICON_11, utilizable con las

versiones: 68HC11A1, 68HC11E1, 68HC11E2, 68HC11E9, 68HC11E20, 68HC711E9 y 68HC711E20.

Page 8: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SOFTWARE PUMMA_11

Enlace RS-232

ComputadoraAnfitriona(Host)

Arquitectura Destino basada en una versión del 68HC11

Esquema para desarrollo con el microcontrlador 68HC11 mediante el software PUMMA_11

Page 9: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SOFTWARE PUMMA_11Principales Funciones

• 1. 100% compatible con las tarjetas FACIL_11 y MINICON_11.

• 2. Capacidad para cargar en la AD archivos S19, que pudieran contener datos o programas en lenguaje de máquina, previamente generados por un ensamblador o compilador para el 68HC11.

• 3. Capacidad para ejecutar un programa previamente cargado en la AD.

• 4. Capacidad para escribir datos a memoria o puerto en la AD.

Page 10: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SOFTWARE PUMMA_11Principales Funciones

• 5. Capacidad para examinar memoria o puertos en la AD.

• 6. Capacidad para programar la EEPROM contenida en el microcontrolador 68HC11 de la AD.

• 7. Capacidad para desensamblar código desde memoria del microcontrolador, o bien desde un archivo objeto S19.

• 8. Capacidad para ejecutar paso a paso programas en el microcontrolador.

Page 11: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SOFTWARE PUMMA_11Principales Funciones

• 9. Ensamblador cruzado integrado al sistema, desarrollado especialmente para PUMMA_11 y denominado ENS11, el cual cuenta con su propio editor y capacidad para ejecutar de inmediato el código generado a partir de un determinado programa fuente.

• 10. Panel de observación puntual y repetitiva, del estado de cada uno de los ocho canales de conversión análoga a digital, con las que cuenta el microcontrolador 68HC11.

Page 12: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SOFTWARE PUMMA_11Principales Funciones

• 11. Panel de observación puntual y repetitiva, del contenido de direcciones de memoria o puertos de entrada.

• 12. Capacidad para pasar de modo boot-strap a los modos single-chip y expandido el microcontrolador 68HC11 de la AD.

Page 13: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SOFTWARE PUMMA_11Principales Funciones

• 13. Capacidad para programar las memorias EPROM contenidas dentro de las versiones E9 y E20 del 68HC11 (68HC711E9 y 68HC711E20); esto para la tarjeta MINICON_11.

• 14. Capacidad para operar el programador de las memorias EPROM contenido en lastarjetas FACIL_11 y FACIL11B.

Page 14: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SOFTWARE PUMMA_11(ventana de manejo hexadecimal)

Page 15: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SOFTWARE PUMMA_11(ambiete de edición del ensamblador ENS11)

Page 16: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SOFTWARE PUMMA_11(ventana del desensamblador de línea)

Page 17: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SOFTWARE PUMMA_11(ventana de ejecución paso a paso)

Page 18: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

TARJETA FACIL_11B

Page 19: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

TARJETA FACIL_11BPrincipales Características

• 1. Está basada en el microcontrolador 68HC11F1 y puede operar en cualquiera de los cuatro modos asociados con el 68HC11 en general.

• 2. Contiene firmware interlocutor que permite manejarla, vía enlace serie, desde una computadora PC mediante la ejecución en la misma del software clásico para este fin (PCBUG11), o bien del manejador visual PUMMA_11que corre bajo WINDOWS, que contempla los comandos de manejo más usuales además de algunos otros adicionales asociados con características propias de la tarjeta FACIL_11.

Page 20: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

TARJETA FACIL_11BPrincipales Características

• 3. Puede configurarse para ser energizada tanto con una fuente de laboratorio de cinco volts, como por un eliminador de batería.

• 4. Capacidad para configurar diversos mapas de memoria al operar en modo expandido; por ejemplo: 8k de RAM y 8k de EPROM, o bien, 32k de RAM y 32k de EPROM.

• 5. Puede configurarse para ser energizada tanto con una fuente de laboratorio de cinco volts, como por un eliminador de batería.

Page 21: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

TARJETA FACIL_11BPrincipales Características

• 6. Contiene postes para conexión de unidades desplegadorasalfanuméricas comunes en la industria, así como también postes para conexión de teclados de 4 x 4.

• 7. Contiene dos puertos de entrada y dos puertos de salida visibles al operar en modo expandido, además de líneas de paginación de puerto adicionales, que permiten al usuario experimentar con la conexión de dispositivos externos tales como: puertos serie o paralelos adicionales, chips de reloj, o hardware específico diseñado para una determinada aplicación.

Page 22: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

TARJETA FACIL_11BPrincipales Características

• 8. Contiene circuito para respaldo de RAM externa al MCU( esto requiere una batería de 3V a 4.5V conectada al conector 10 ).

• 9. Programador integrado de memorias EPROM, manejado por opciones especiales del software PUMMA_11. Las memorias que pueden ser programadas son : 27C64, 27C128, 27C256 y 27C512. Esta facilidad permite efectuar el desarrollo de una aplicación desde la prueba y depuración del software asociado con la misma, hasta la programación final de la memoria EPROM requerida para almacenar el código correspondiente para ejecución autónoma, todo en un solo equipo.

Page 23: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

PUMMA_11 OPERANDO SOBRE UNA TARJETA FACIL_11B

Page 24: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

ESTUDIANTES TRABAJANDO CON LA TARJETA FACIL_11B

Page 25: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

TARJETA MINICON_11

Page 26: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

TARJETA MINICON_11Principales Características

• 1. Funciona con versiones del 68HC11 series E y A de empacado PLCC de 52 pines y está proyectada para operar en los modos singlechip o boot – strap; si el usuario lo desea puede funcionar también en los modos, expandido o TEST.

• 2. Puede manejarse, vía enlace serie, desde una computadora PC mediante la ejecución en la misma del software clásico para este fin (PCBUG11), o bien del manejador visual PUMMA_11 que corre bajo WINDOWS, que contempla los comandos de manejo más usuales además de algunos otros adicionales asociados con características propias de la tarjeta MINICON_11.

Page 27: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

TARJETA MINICON_11Principales Características

• 3. Compatibilidad con otras herramientas de software asociadas con el HC11, permitiendo esto la ejecución en la tarjeta de programas originalmente escritos en lenguaje C o ensamblador, lográndose esto mediante la carga y ejecución del archivo objeto S19 que haya sido generado por el software de ensamble o compilación respectivo.

• 4. Puede configurarse para ser energizada tanto con una fuente de laboratorio de cinco volts, como por un eliminador de batería.

Page 28: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

TARJETA MINICON_11Principales Características

• 5. Contiene postes para conexión de unidadesdesplegadoras alfanuméricas comunes en la industria, así como también postes para conexión de teclados de 4 x 4.

• 6. Programador integrado de las memorias EPROM internas, contenidas en las versiones 68HC711E9 y 68HC711E20, efectuándose esto mediante opciones especiales del software PUMMA_11.

Page 29: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

Software y Hardware para Desarrollo con

Microcontroladores 68HC08• AMIGO_08, software manejador de

microcontroladores de la familia 68HC908 mediante la interfaz de IP_ASC_08B.

• Tarjeta IP_ASC_08B, interfaz entre AMIGO_08 y una arquitectura destino basada en un miembro de la familia 68HC908.

• Tarjeta FACIL_08_JK, arquitectura destino utilizable por las versiones: 68HC908JK1 y 68HC908JK3 de la familia 68HC908.

Page 30: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SOFTWARE AMIGO_08Ambiente Manejador Interactivo Genérico Operativo

Page 31: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SOFTWARE AMIGO_08Principales Funciones

• 1. Capacidad para examinar la memoria de la arquitectura destino.

• 2. Capacidad para programar la memoria FLASH del HC908 de la AD.

• 3. Capacidad para borrar la memoria FLASH del HC908 de la AD.

• 4. Ensamblador cruzado básico incluido, denominado ENS08.

Page 32: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SOFTWARE AMIGO_08Principales Funciones

• 5. Ejecución inmediata en memoria RAM o FLASH del 68HC908 de la AD, a partir del código fuente de ensamblador contenido en la ventana de edición del ensamblador ENS08.

• 6. Ejecución inmediata en memoria RAM o FLASH del 68HC908 de la AD a partir de archivos objeto S19, generados por ensambladores externos o bien compiladores cruzados de lenguaje “C”.

Page 33: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SOFTWARE AMIGO_08(ventana de manejo hexadecimal)

Page 34: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SOFTWARE AMIGO_08(ambiete de edición del ensamblador ENS08)

Page 35: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

INTERFAZ DE PROGRAMACIÓN IP_ASC_08B

Page 36: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

INTERFAZ DE PROGRAMACIÓN IP_ASC_08B

Características principales• 1. Conector de 6 hilos al MCU de la arquitectura destino,

compatible con especificaciones de hardware del fabricante para operación del MCU de la AD en modo monitor.

• 2. Compatible con el software manejador AMIGO_08, mediante el cual se puede hacer depuración y cargado de programas y/o datos en la memoria RAM o Flash de un microcontrolador destino 68HC908, ligado a la interfaz por medio de seis hilos.

• 3. A la fecha ( octubre de 2004 ) se ha verificado la operación sobre las siguientes versiones de la familia HC08: 68HC908JK1, 68HC908JK3, 68HC908JL3, 68HC908GP32, 68HC908QY1, 68HC908QT2, 68HC908QY2, 68HC908QT4 y 68HC908QY4.

Page 37: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

INTERFAZ DE PROGRAMACIÓN IP_ASC_08B

Page 38: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

INTERFAZ DE PROGRAMACIÓN IP_ASC_08B

Conexionado a arquitectura destino alambrada en protoboard

Page 39: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

TARJETA DESTINO FACIL_08_JK

Page 40: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

TARJETA FACIL_08_JKPrincipales Características

• 1. Utilizable con las versiones:68HC908JK1CP y 68HC908JK3CP.

• 2. Compatible con la interfaz de programación IP_ASC_08B.

• 3. Contiene LEDS de auxilio didáctico en el nibble alto del puerto D.

• 4. Contiene headers y postes de acceso y prueba, para diversos puntos de interés del microcontrolador residente.

Page 41: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SISTEMA SD_908 OPERANDO

Page 42: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

Software y Hardware para Desarrollo con

Microcontroladores 68HC(9)12• SD_912, sistema para desarrollo integrado

por:• AMIGO_12, software manejador de

microcontroladores de la familia 68HC(9)12.

• Tarjeta MINICON_12, basada en el 68HC912B32CFU8.

Page 43: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

COMPONENTES DEL SISTEMA SD_912

• Tarjeta destino MINICON_12, basada en el MCU MC68HC912B32CFU8.

• Computadora PC donde se ejecuta el software manejador AMIGO_12.

Page 44: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

TARJETA MINICON_12

Page 45: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

TARJETA MINICON _12(características principales)

• Está basada en el MCU 68HC912B32CFU8.• Contiene Firmware Interlocutor Residente (FIR)

compatible con el software manejador AMIGO_12, mediante el cual se puede hacer depuración y cargado de programas y/o datos en memoria RAM, EEPROM o FLASH del MCU presente en la tarjeta.

• Contiene postes (headers) que acceden diversos puntos de interés, como pueden ser líneas de entrada y/o salidas de puertos, puntos de prueba, etc.

Page 46: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

TARJETA MINICON _12(características principales)

• Incluye auxiliares didácticos tales como LEDS testigo para el puerto A.

• Contiene postes para conexión de PODS, ya sea desarrollados por MOTOROLA o bien algún tercero, esto por si el usuario deseara trabajar con otro medio para desarrollo que no fuera AMIGO_12.

Page 47: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

AMIGO_12

La interfaz de usuario del SD_912 la realiza el software AMIGO_12 el cual es unAmbiente Manejador Interactivo Genérico Operativopara el manejo de microcontroladores de la familia 68HC912, los cuales deben contener el firmware interlocutor antes mencionado.

Page 48: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

AMIGO_12Características principales

(octubre de 2004)• A) Capacidad para cargar, en la AD, archivos

S19 que pudieran contener datos o programas en lenguaje de máquina.

• B) Capacidad para ejecutar un programa previamente cargado en la AD.

• C) Capacidad para escribir datos a memoria o puerto en la AD.

• D) Capacidad para examinar memoria o puertos en la AD.

Page 49: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

AMIGO_12Características principales

(octubre de 2004)• E) Capacidad para programar la EEPROM

contenida en el microcontrolador de la AD.• F) Capacidad para programar la FEEP

contenida en el microcontrolador de la AD.• G) Ensamblador cruzado integrado al sistema,

desarrollado especialmente para AMIGO_12, denominado ENS12, el cual cuenta con su propio editor y capacidad para ejecutar de inmediato el código generado a partir de un determinado programa fuente.

Page 50: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

AMIGO_12Ensamblador ENS12

(Características principales)• Soporta las directivas: ORG, EQU, FCC,

FCB, INCLUDE, RMB y RMW.• Maneja operaciones de suma y resta entre

etiquetas y números explícitos en decimal.• Desde su ambiente de edición puede

ejecutarse de inmediato el programa fuente presente, esto en memoria RAM o EEPROM de la AD.

Page 51: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

AMIGO_12Ensamblador ENS12

(Aspecto del ambiente de edición)

Page 52: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

AMIGO_12Ambiente de manejo hexadecimal(ejemplo de examen de memoria)

Page 53: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

DISPOSITIVOS PARA AUXILIO DIDÁCTICO BASADOS EN MICROCONTROLADORES DISEÑADOS Y CONSTRUIDOS EN EL DIC

• Entre los dispositivos desarrollados, en esta presentación se presentarán aspectos de dos de ellos:

• 1. SIMULADOR DIGITAL DE SISTEMAS LINEALES E INVARIANTES ( SDSLI ) Y SU SOFTWARE MANEJADOR. Éste fue un subproyecto PAPIME clave EN120303, patrocinado por la Dirección General de Asuntos del Personal Académico de la UNAM, en el periodo octubre de 2003 a octubre de 2004.

• 2. PROGRAMADOR LÓGICO MODULAR (PLM), el cual es un Controlador Lógico Programable (PLC) prototipo, que puede realizar diversas funciones de control lógico básico; tiene 32 entradas y 16 salidas binarias y cuenta con su propio lenguaje de programación y ambiente para desarrollo y depuración de aplicaciones.

Page 54: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SIMULADOR DIGITAL DE SISTEMAS LINEALES E INVARIANTES ( SDSLI ) Y

SU SOFTWARE MANEJADOR• Este dispositivo está basado en la tarjeta

FACIL_11B y en otra denominada SDSLI_B, que contiene el hardware de entrada/salida del SDSLI y la fuente de alimentación del mismo.

• Fundamentalmente, el SDSLI realiza en tiempo real, la función de transferencia He(z) asociada con la propia G(s) del sistema analógico lineal e invariante que se pretenda simular.

Page 55: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SIMULADOR DIGITAL DE SISTEMAS LINEALES E INVARIANTES ( SDSLI ) Y

SU SOFTWARE MANEJADOR• El software requerido, ejecutable en el

microcontrolador de la tarjeta FACIL_11B, se generó empleando un compilador cruzado de lenguaje C para el 68HC11.

• El software manejador, ejecutable en la PC anfitriona, se realizó empleando VisualBasic V6.0, basándose en aspectos fundamentales del funcionamiento del manejador PUMMA_11.

Page 56: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

ESQUEMA DE TRABAJO CON EL SDSLI

Page 57: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

Tarjeta FACIL_11B

• Computadora monotablilla (SBC) basada en el microcontrolador 68HC11F1, en base a la cual se desarrollo el SDSLI.

Page 58: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

Tarjeta SDSLI_B

• Tarjeta SDSLI_B, que contiene el hardware de entrada/salida del SDSLI y la fuente de alimentación del mismo.

Page 59: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

HARDWARE DEL SDSLI

• Vista del hardware del SDSLI donde se aprecia su panel frontal

Page 60: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

PANEL FRONTAL DEL HARDWARE DEL SDSLI

Page 61: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

MONTAJE DEL HARDWARE DEL SDSLI

• Vista del interior del hardware del SDSLI, apreciándose a la izquierda a la tarjeta FACIL_11B, cerebro del mismo, a la derecha puede verse la tarjeta SDSLI_B

Page 62: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SOFTWARE MANEJADOR DEL SDSLI

• Ventana de entrada del software manejador del SDSLI

Page 63: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SOFTWARE MANEJADOR DEL SDSLI

• Ventana principal del software manejador, donde un usuario a introducido los datos de una función de transferencia de primer orden a simular

Page 64: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SOFTWARE MANEJADOR DEL SDSLI

• Ventana de interfaz de usuario, que permite introducir los datosasociados con una función de transferencia H(z) de un sistema discreto lineal e invariante

Page 65: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SOFTWARE MANEJADOR DEL SDSLI

• Osciloscopio virtual del software manejador, mostrando la respuesta a escalón de un sistema con función de transferencia G(s) = 4/(s+2)

Page 66: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

PROGRAMADOR LÓGICO MODULAR (PLM)

Conceptos Fundamentales• El PLM es un PLC prototipo que cuenta

con 32 entradas y 16 salidas binarias, las cuales se asocian con sendas variables binarias de entrada (VBE) y salida (VBS); además el dispositivo puede manejar 168 variables binarias de interloc denominadas como intermediarias (VBI). Las variables aquí mencionadas están agrupadas en conjuntos de ocho de ellas.

Page 67: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

PROGRAMADOR LÓGICO MODULAR (PLM)

Conceptos Fundamentales• Las variables se denotan con una letra (“e”

para entrada, “s” para salida e “i” para intermediaria) seguida por dos números que designan al grupo y número de variable implicada. Así, “E10” denotaría a la variable binaria cero del grupo de entradas uno, “I37”designaría a la variable siete del grupo tres de variables intermediarias y “S24” denotaría a la variable cuatro del grupo de salidas dos.

Page 68: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

PROGRAMADOR LÓGICO MODULAR (PLM)

Diagrama de bloques del primer prototipo

Page 69: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

MODULOS LÓGICOS

• Como es sabido los PLC realizan la lógica de control asociada con la automatización de un proceso mediante la realización virtual de bloques lógicos funcionales tales como: compuertas lógicas, contadores de eventos, temporizadores, secuenciadores y latches solo por mencionar algunos; para el caso del PLM a esos bloques se les denomina como módulos lógicos (ML).

Page 70: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

MÓDULO LÓGICO GENERAL• Los módulos lógicos que

puede realizar el PLM constituyen los bloques funcionales elementales para la realización de aplicaciones de control lógico y pueden ser representados como “caja negra” como se ilustra en la imagen, donde se muestra un ML que presenta “n”entradas y “m” salidas; n y m varían de acuerdo con el tipo de función que un determinado ML realice.

Page 71: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

PROGRAMACIÓN DEL PLM

• Una determinada aplicación de automatización realizada con el PLM, requerirá del concurso de diversos módulos lógicos interconectados, estando las entradas de algunos de ellos asociadas con los sensores binarios empleados, habiendo además módulos cuyas salidas estarían asociadas con los actuadores binarios utilizados.

Page 72: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

Características básicas del Lenguaje SIIL1

• Al desarrollar una aplicación con el PLM, cada módulo lógico debe ser declarado por medio de uno o varios renglones de texto que expresan en alguna forma el tipo de módulo y características del mismo.

• Al conjunto de instrucciones mencionadas en el párrafo anterior se le denomina programa fuente en lenguaje SIIL1,asociado con la aplicación que se desea realice el PLM.

Page 73: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

Formato de instrucción en SIIL1• A excepción de los módulos tales como los

secuenciadores de estado que requieren datos adicionales que no cabrían en un renglón, la forma sintáctica de las declaraciones asociadas cabe en un renglón, ésta se ilustra a continuación:

•• CODM#N E1,.. En,..S1,..Sm, D1,..Dq, CADBI;

Page 74: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

Elementos de instrucción• CODM#N E1,.. En,..S1,..Sm, D1,..Dq, CADBI;

• CODM es una cadena de caracteres que simboliza la función efectuada por el módulo.

• N es el número asociado con el módulo.• E1 a En son las designaciones asociadas con

las n variables de entrada que el módulo requiera.

• S1 a Sm son las designaciones asociadas con las m salidas que pudiera tener el módulo.

Page 75: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

Elementos de instrucción• CODM#N E1,.. En,..S1,..Sm, D1,..Dq, CADBI;

• D1 a Dq son datos auxiliares que pudieran ser requeridos por algunos módulos, estos podrían ser entre otros: el tiempo asociado con la duración de un pulso generado por un temporizador o bien el número de estados que ha de presentar un secuenciador, etc.

• Para los módulos que requieren de estos datos, q es un número que está comprendido entre cero y tres.

Page 76: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

Elementos de instrucción• CODM#N E1,.. En,..S1,..Sm, D1,..Dq, CADBI;

• CADBI es una cadena formada por unos y ceros que especifica diversas características de funcionamiento como podrían ser:

• Cuales entradas a una compuerta van a tener negación implícita, a que tipo de flanco responde una entrada de algún otro tipo de módulo, etc.

Page 77: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

Ejemplo de instrucción en SIIL1• Compuerta AND de dos entradas, para la cual se

desea que las entradas E0 y E1 y la salida S sean respectivamente las VB E01, I24, y S13; requiriéndose que la entrada E0 tenga preinversión y que el número de asignación sea 2, la declaración asociada es:

• AND2#2 E01, I24, S13, 10;

Page 78: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

Secuencia de ejecución de un programa en SIIL1

• Al correr un programa en SIIL1 en el procesador del PLM, el código asociado con cada ML es ejecutado cíclicamente siguiendo la siguiente secuencia:

• 1.- Se copian en un buffer de entrada (BE) en RAM el estado que guardan los cuatro puertos asociados con las 32 entradas físicas VBE.

• 2.- Se ejecuta uno a uno el código asociado con cada uno de los ML que el usuario haya declarado en el programa fuente correspondiente, actualizándose un buffer de salida (BS).

• 3.- Se copia el estado del BS en los puertos físicos asociados con las VBS.

• 4.- Se regresa al paso uno.

Page 79: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

Secuencia de ejecución de un programa en SIIL1

• Existen módulos que requieren que el periodo de repetición de la ejecución de su código asociado sea constante (10 ms), tal es el caso por ejemplo de los temporizadores, para hacer esto posible el código asociado es colocado en una rutina de servicio de interrupción que es invocada con una periodicidad de 10 ms, empleándose para ello facilidades de temporización con que cuenta el microcontrolador que realiza el procesador del PLM.

Page 80: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

Secuencia de ejecución de un programa en SIIL1

• El código asociado con un programa en SIIL1 está dividido en dos partes, una de ellas es la que se ejecuta de acuerdo con los cuatro pasos descritos anteriormente, a ésta se le llama subprograma principal (SPP).

• La otra parte está constituida por el código cuya ejecución es temporizada y se denomina subprograma temporizado (SPT).

Page 81: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

Formato de programas fuente en SIIL1

• De acuerdo a lo explicado en la diapositiva anterior, un programa fuente en SIIL1 deberá estar integrado por una serie de sentencias, varias de ellas serán declaraciones asociadas con los módulos lógicos que la aplicación requiera y otras serán simplemente delimitadores del código fuente de los subprogramas principal y temporizado.

Page 82: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

Formato de programas fuente en SIIL1

• En general el formato de un programa fuente en SIIL1 deberá presentar la siguiente forma:

• INPROG; delimitador de inicio del SPP.• Sentencias asociadas con declaraciones• de módulos que deben estar en el SPP.• FINPP; delimitador de fin de SPP.• INMODI; delimitador de inicio de SPT.• Sentencias asociadas con declaraciones• de módulos que deben estar en el SPT.• FINMODI; delimitador de fin de SPT.

Page 83: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

Ejemplo de programa en SIIL1• INPROG;• AND2#1 E00, E01, I00, 11;• FINPP;• INMODI;• TEMPOC#1 I00, E03, S00, 00:02:00.00, 100;• FINMODI;

Page 84: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

AMBIENTE INTEGRADO PARA DESARROLLO

• Empleando VisualBasic se desarrollóun ambiente integrado para desarrollo con el PLM, se le llamó SD_PLM y el mismo integra en un solo programa las facilidades de edición, generación de código objeto y carga y ejecución de éste en el procesador del PLM.

Page 85: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

AMBIENTE INTEGRADO PARA DESARROLLO

SD_PLM

Page 86: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

AMBIENTE INTEGRADO PARA DESARROLLOPantalla de entrada

Page 87: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

AMBIENTE INTEGRADO PARA DESARROLLOVentana de editor

Page 88: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

AMBIENTE INTEGRADO PARA DESARROLLOPrograma con un error de sintaxis

Page 89: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

AMBIENTE INTEGRADO PARA DESARROLLOVentana de reporte de errores de sintaxis

Page 90: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SEGUNDO PROTOTIPO DEL PLM

• El primer prototipo funcional del PLM se desarrollo en base a la tarjeta SIMMP2, las tarjetas periféricas con el hardware de entrada y salida se alambraron a mano en paneles experimentales.

• Posteriormente, con la colaboración entusiasta de una tesista de Ingeniería en Computación, se diseñóy construyó un segundo prototipo funcional, basado en la tarjeta FACIL_11, para las tarjetas periféricas asociadas se diseñaron los circuitos impresos correspondientes.

Page 91: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SEGUNDO PROTOTIPO DEL PLM

• Tarjeta FACIL_11, empleada para realizar la computadora central del segundo prototipo funcional del PLM.

Page 92: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SEGUNDO PROTOTIPO DEL PLM

• Tarjeta PERIFÉRICA 1 del PLM, contiene el hardware de interfaz de tres de los cuatro grupos de entradas y circuitos auxiliares.

Page 93: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SEGUNDO PROTOTIPO DEL PLM

• Tarjeta PERIFÉRICA 2 del PLM, contiene el hardware de interfaz de los dos grupos de salidas y el correspondiente a uno de los cuatro grupos de entradas.

Page 94: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SEGUNDO PROTOTIPO DEL PLM

• Hardware de la fuente de alimentación.

Page 95: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SEGUNDO PROTOTIPO DEL PLM

• Vista del gabinete, antes del montaje de las tarjetas: FACIL_11 y PERIFERICAS 1 y 2.

Page 96: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SEGUNDO PROTOTIPO DEL PLM

• Vista del gabinete, con las tarjetas: FACIL_11 y PERIFERICAS 1 y 2 colocadas en su lugar.

Page 97: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SEGUNDO PROTOTIPO DEL PLM

• Vista posterior del gabinete cerrado, se aprecian los bloques de conexiones correspondientes a los cuatro grupos de entradas.

Page 98: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

SEGUNDO PROTOTIPO DEL PLM

• Vista frontal del gabinete cerrado, se aprecian los bloques de conexiones correspondientes a los dos grupos de salidas.

Page 99: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

Para más información acerca de lo descrito en esta presentación, pueden bajarse de la dirección

http://dctrl.fi-b.unam.mx/salva/ los siguientes archivos:

• Infosdmc.zip y espf11b.zip, contienen información acerca de los sistemas para desarrollo con microcontroladores aquí presentados.

• Infosim.zip, contiene información acerca del simulador de sistemas lineales e invariantes SDSLI.

• Infoplm.zip, contiene información acerca del PLM.

Page 100: DESARROLLOS CON MICROCONTROLADORES HECHOS EN EL

GRACIAS POR SU

ATENCIÓN