Real Time Workshop

11
 Laboratorio de Automatización - UNQ Pág. 1 Real Time Workshop (RTW) RTW Laboratorio de Automatizaci ón - UNQ Pág. 2  Simulación de algoritmos en tiempo real. Modelo del Controlador. Modelo de la Planta.  Pasos para crear un algoritmo en tiempo real: en una PC, en un sistema embebido, en un PLC, etc.  Qué es el paquete RTW y para qué sirve?.  Definición de Host y Target .  Tipos de Targets o sistemas destino soportados.  Envío y recepción de señales de campo desde simulink.

description

Resumen de las primeras clases de la materia Laboratorio de Automatización 2 de la Universidad Nacional de Quilmes. En este PDF se dan las bases de la programación del Real Time Workshop de Matlab para programar simulaciones en tiempo real.

Transcript of Real Time Workshop

  • Laboratorio de Automatizacin - UNQ Pg. 1

    Real Time Workshop

    (RTW)

    RTW

    Laboratorio de Automatizacin - UNQ Pg. 2

    Simulacin de algoritmos en tiempo real. Modelo del Controlador. Modelo

    de la Planta. Pasos para crear un algoritmo en tiempo real: en una PC, en un sistema

    embebido, en un PLC, etc. Qu es el paquete RTW y para qu sirve?. Definicin de Host y Target . Tipos de Targets o sistemas destino soportados.

    Envo y recepcin de seales de campo desde simulink.

  • RTW

    Laboratorio de Automatizacin - UNQ Pg. 3

    Pasos en el desarrollo de un algoritmo para control en tiempo real

    Laboratorio de Automatizacin - UNQ Pg. 4

    Diseo del modelo en Simulink. Simulacin del modelo en Simulink (simulink en modo normal). Generacin del cdigo fuente en lenguaje C mediante el RTW. Compilacin, Enlace y descarga del ejecutable al Target. Conexin del Host con el Target para sintona del modelo y ajustes de

    parmetros. (Simulink en modo externo) Iteracin hasta encontrar el modelo y los parmetros adecuados.

    Implementacin del modelo final.

  • REAL TIME WORKSHOP

    Laboratorio de Automatizacin - UNQ Pg. 5

    Funcionamiento del RTW

    Laboratorio de Automatizacin - UNQ Pg. 6

  • Arquitectura del RTW

    Laboratorio de Automatizacin - UNQ Pg. 7

    Etapas en la generacin del RTW

    Laboratorio de Automatizacin - UNQ Pg. 8

    Anlisis del modelo en simulink (modelo.mdl) y generacin de un archivo intermedio llamado modelo.rtw

    El TLC toma el archivo intermedio y lo transforma a lenguaje C u otro lenguaje con la ayuda de los archivos system.tlc, blocks.tlc y libreras tlc

    El proceso de BUILD puede terminar aqu o seguir construyendo el ejecutable dependiendo de la opcin Generate code only. --------------------------------------------------------------------------------------

    El RTW construye un archivo modelo.mk llamado makefile con instrucciones para el compilador de C y el enlazador del target seleccionado. Para la construccin de modelo.mk se utiliza el archivo de configuracin system.tmf.

    RTW llama al comando MAKE, del compilador instalado, y le pasa las instrucciones para la construccin del ejecutable (modelo.mk).

    El programa MAKE construye el ejecutable con el nombre modelo.--- y los deja en el directorio de trabajo.

  • Archivos generados e intermedios

    Laboratorio de Automatizacin - UNQ Pg. 9

    Archivo objeto modelo.rtw. Template make file system.tmf. Ejemplos: grt_vc, drt_watc.tmf,

    grt_deafult.tmf El TLC est constituido por: System Target File, Block Target File,

    Funciones del TLC Archivos Generados por el TLC:

    Modelo.c: Algoritmo del modelo. Modelo.h: Inclusin de cabeceras , declaracin de estructuras a:

    Parmetros, Bloques, Estados, Entradas y Salidas. Modelo_data.c: Inicializa las variables de parmetros con los

    valores iniciales. Modelo_types.h: Declara estructuras como tipos de datos. Modelo_private.c: Definiciones comunes necesarios por el modelo

    y los subsistemas. Directorios de archivos generados

    Opciones del RTW

    Laboratorio de Automatizacin - UNQ Pg. 10

  • Targets incluidos RTW

    Laboratorio de Automatizacin - UNQ Pg. 11

    Utilizando el RTW con cdigo genrico

    Laboratorio de Automatizacin - UNQ Pg. 12

    Aadir seales externas al modelo en simulink.

    Seleccionar el compilador de C.

    El target de cdigo genrico. Para qu sirve?

    Cdigo dentro de modelo.c

  • Estructuras declaradas por el modelo

    Laboratorio de Automatizacin - UNQ Pg. 13

    Estructuras declaradas por el modelo

    Laboratorio de Automatizacin - UNQ Pg. 14

    rtU.entrada_n -> referencia a cada bloque de tipo InPort que se encuentran en la raiz de simulink.

    rtY.salida_n -> referencia a cada bloque de tipo OutPort que se encuentran

    en la raiz de simulink. rtP.bloque_parmetro -> referencia a cada parmetro de cada bloque en

    simulink. rtB.bloque -> referencia a las salida de cada bloque en simulink.

  • Cmo es el cdigo generado en modelo.c

    Laboratorio de Automatizacin - UNQ Pg. 15

    Cmo es el cdigo generado en modelo.c

    Laboratorio de Automatizacin - UNQ Pg. 16

  • Diferentes formas de realizar interfaces al hardware

    Laboratorio de Automatizacin - UNQ Pg. 17

    Utilizar una placa con los drivers para RTW incluidos segn target. Modificar el cdigo C generado. (cdigo en lnea) Escribir una S-Function (cdigo no en lnea) Escribir una librera para el TLC (cdigo en lnea) Utilizar las libreras de Simulink C Custom Code (cdigo en lnea)

    Libreras de Simulink C Custom Code

    Laboratorio de Automatizacin - UNQ Pg. 18

  • Custom Code Inclusin de cdigo en modelo.c

    Laboratorio de Automatizacin - UNQ Pg. 19

    Custom Code Inclusin de cdigo en la funcin MdlOutputs

    Laboratorio de Automatizacin - UNQ Pg. 20

  • Diferentes Targets soportados por RTW y sus caractersticas

    Laboratorio de Automatizacin - UNQ Pg. 21