Upload
claudio-probando
View
7
Download
0
Embed Size (px)
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.
Citation preview
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