Está en la página 1de 292

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/283733868

Modelado y simulación de sistemas. Aplicación al buque.

Book · January 1997


DOI: 10.13140/RG.2.1.3400.5843

CITATIONS READS
3 4,343

3 authors:

Manuel J Lopez Agustin Consegliere


Universidad de Cádiz Universidad de Cádiz
122 PUBLICATIONS   176 CITATIONS    39 PUBLICATIONS   32 CITATIONS   

SEE PROFILE SEE PROFILE

Julio Terron
Universidad de Cádiz
27 PUBLICATIONS   19 CITATIONS   

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

Command and Control, Integration and Training for Interoperable Unmanned Systems (CITIUS). Path Planning Algorithms with Robust and Adatptive Controller for USV.
View project

Unmaned surphace marine vehicles control and methods for obstacle avoidance systems View project

All content following this page was uploaded by Manuel J Lopez on 05 December 2015.

The user has requested enhancement of the downloaded file.


MODELADO Y SIMULACIÓN
DE SISTEMAS

APLICACIÓN AL BUQUE

Manuel Jesús López Sánchez

Agustı́n Consegliere Castilla

Julio Terrón Pernı́a


UNIVERSIDAD DE CÁDIZ

DEPARTAMENTO DE INGENIER ÍA DE SISTEMAS Y AUTOM ÁTICA,


TECNOLOG ÍA ELECTR ÓNICA Y ELECTR ÓNICA

MODELADO Y SIMULACIÓN
DE SISTEMAS
APLICACIÓN AL BUQUE

Manuel Jesús López Sánchez

Agustı́n Consegliere Castilla

Julio Terrón Pernı́a


i

Primera edición en 1997


editada por la Sección Departamental de
Ingenierı́a de Sistemas y Automática,
Tecnologı́a Electrónica y Electrónica.
C.A.S.E.M., Universidad de Cádiz.

Modelado y Simulación de Sistemas.


Aplicación al Buque

Copyright:
Manuel Jesús López Sánchez
Agustı́n Consegliere Castilla
Julio Terrón Pernı́a

Copyright de la edición:
Sección Departamental de Ingenierı́a de
Sistemas y Automática, Tecnologı́a
Electrónica y Electrónica.
C.A.S.E.M., Universidad de Cádiz.

Reservados todos los derechos.


Ni la totalidad ni parte de este libro
puede reproducirse o transmitirse
por procedimiento electrónico o
mecánico, incluyendo fotocopia,
grabación magnética o cualquier
almacenamiento de información y
sistema de recuperación sin el
permiso previo y por escrito de los autores.

Tlf.: (956) 470842 - 470844


Fax: (956) 470803 - 470843
ii

Agradecimientos

Deseamos expresar nuestro agradecimiento a aquellas personas que de una u otra forma
nos han ayudado a la realización de este libro.

En primer lugar a los doctores Kallstrom, Zuidweg, Astrom, Othsu y Amerongen, por
su ayuda en los primeras fases del estudio de la dinámica del buque, ya que nos enviaron
artı́culos y trabajos de gran interés para la comprensión, desarrollo y aplicación de los
modelos matemáticos de los buques.

Al personal de la Biblioteca Central de la Universidad de Cádiz, por su eficacia en la


búsqueda y ejecución de los préstamos interbibliotecarios.

A los compañeros del Dpto. de Ingenierı́a de Sistemas y Automática de la Facultad


de Ciencias Náuticas de Cádiz, por su colaboración.

A los compañeros del Dpto. de Ingenierı́a de Sistemas y Automática de la Escuela


Superior de Ingenieros de Sevilla, por su colaboración, por la ayuda con los formatos y
estilos para el procesador Latex, y por el acceso al material de la biblioteca del Dpto.

A los compañeros del Dpto. de Matemáticas de la Universidad de Cádiz, F. Benı́tez y


J. M. Moreno por su ayuda en la elaboración de documentos con los procesadores Emtex
y Pctex.

A nuestras respectivas familias.


Prólogo

Una de las formas de conocer y explicar el comportamiento dinámico de un sistema es


mediante la utilización de las técnicas de modelado y simulación por ordenador. Ésto
puede implicar desde el modelado matemático de un sistema relativamente simple, co-
mo pueden ser por ejemplo la caı́da de un cuerpo por gravedad, o un motor de corriente
contı́nua; pasando por el estudio del comportamiento de un buque entre olas, o el mode-
lado de la economı́a de una región, que conllevan una complicación relativamente mayor
que los dos primeros casos; ası́ como la formulación de las complejas leyes de la Mecánica
Cuántica y de la Relatividad General. Todos estos ejemplos requieren un proceso de ab-
stracción y sı́ntesis que lleva a un modelo matemático útil para explicar en cada caso un
determinado aspecto de la realidad. En particular, en este libro se trata el modelado y
simulación por ordenador de la dinámica de un buque.

En los últimos veinte años se han desarrollado potentes paquetes de programas de


modelado y simulación de sistemas. Algunos ejemplos de los cuales son: Matlab, ACSL,
Simnon, Simulink, VisSim y Dymola. Sin embargo, el alumno que trata por primera
vez con la simulación de sistemas se ve inundado por multitud de programas, métodos
y conocimientos requeridos para abordar el tema de forma adecuada, que exceden la
mayorı́a de las veces de los conocimientos que realmente pueden llegar a adquirir con
el tiempo que normalmente se le dedica a ello, sobre todo si se trata de temas dentro
de algunas asignaturas, o asignaturas que son no troncales y/o optativas que disponen de
poca cantidad de créditos a la largo del curso.

En nuestra labor docente como profesores del Área de Ingenierı́a de Sistemas y Au-
tomática en la Facutad de Ciencias Náuticas, ası́ como en diferentes cursos de postgrado
de la Universidad de Cádiz, detectamos este problema y empezamos a realizar activi-
dades encaminadas a crear un sustrato sobre el modelado y la simulación, de forma que
ello repercutiera positivamente en la formación de los alumnos.

Sin ser nada pretenciosos, son varios los objetivos perseguidos en este trabajo. Primor-
dialmente se quiere reflejar en él las ideas fundamentales del modelado y la simulación

iii
iv

de sistemas. Por otro lado, al ser nuestra actividad docente colaboradora en la formación
de los estudiantes de Ciencias Náuticas, se pretende complementar los conocimientos
cualitativos que adquieren los alumnos en: a) otras asignaturas, b) en las sesiones de
aprendizaje a bordo de un buque real, o c) con el simulador de navegación del C.A.S.E.M
(Centro Andaluz Superior de Estudios Marinos), con un estudio cuantitativo más pro-
fundo de la influencia de los distintos parámetros y factores que influyen en la dinámica
del buque. Ası́ se le facilita al alumno un enfoque multidisciplinar e integrador de los
conocimientos, además de tratar de motivarlos por los temas relacionados con el modela-
do y la simulación.

Para que el ámbito de aplicación del trabajo sea lo más amplio posible se ha con-
cebido de forma general en cuanto a su estructura y contenido, si bien los ejemplos y
modelos matemáticos que se emplean a lo largo del texto corresponden al buque en di-
ferentes condiciones de navegación y con diversos problemas de control. Sin embargo,
el planteamiento y métodos descritos son generales, por lo que puede servir como texto
de introducción a quienes estén interesados por las técnicas de modelado y simulación de
sistemas. Para ello, el texto se ha estructurado de la siguiente forma:

En el capı́tulo I se presentan de una forma general algunos de los conceptos rela-


cionados con el modelado y la simulación de sistemas. Se analiza su utilidad en diversos
campos como el técnico, económico, social, etc. Se analizan los distintos enfoques para
la obtención de un modelo matemático y las condiciones que hacen necesario la simu-
lación para el estudio del comportamiento de un sistema. También se describen las carac-
terı́sticas fundamentales de algunos lenguajes o programas de simulación tales como son:
Simnon, ACSL, CC, VisSim, Matlab y Simulink; ilustrando su utilización con algunos
ejemplos prácticos.

El capı́tulo II se dedica a la caracterización de la dinámica del buque desde el punto de


vista cualitativo, empleando en ocasiones expresiones y terminologı́a propias del entorno
marino, a fin de utilizar el propio lenguaje con el que está familiarizado el alumno de
Náutica, y que le sirva como puente de unión para los temas siguientes donde se pasa a
una descripción matemática. A la vez, le puede servir al lector, no conocedor del tema
marino, como introducción a algunos aspectos relacionados con la dinámica del buque.

La descripción matemática de la dinámica del buque se realiza en el capı́tulo III, pre-


sentado diversos modelos matemáticos, tanto lineales como no lineales, que sirven para
caracterizar su comportamiento en diversas condiciones.

En el capı́tulo IV se presentan los modelos matemáticos de las perturbaciones ambi-


entales que actuan sobre el buque: viento, olas y corrientes.
v

En el capı́tulo V se presentan algunos métodos para la identificación de sistemas, y su


aplicación al buque. Se describen técnicas de identificación tanto paramétricas como no
paramétricas, las que trabajan en el dominio temporal y las que se basan en el dominio de
la frecuencia; ası́ como algunas técnicas particulares empleadas en canales de experien-
cias hidrodinámicas, o en buques reales, y que sirven para obtener ciertos parámetros del
modelo matemático del buque.

En el capı́tulo VI se presentan algunas simulaciones realizadas con los modelos matemáticos


correspondientes a dos buques, y con objetivos diferentes. En un caso para analizar las
caracterı́sticas de su dinámica frente a determinadas maniobras y/o pruebas a las que se
somete un buque real. Y en el otro, para evaluar las posibilidades de la simulación para el
análisis y el diseño de sistemas de control.

Finalmente se incluyen unos apéndices que pueden ser útiles para el lector, y que
tratan sobre la deducción de las ecuaciones del movimiento de un buque en el plano
horizontal, el cálculo de funciones de transferencia, el empleo de métodos numéricos
para resolver ecuaciones diferenciales ordinarias, y sobre el análisis orientado a objetos
(AAO). Se incluye un apéndice sobre el análisis orientado a objetos, a fin de que sirva de
introducción al lector que no tenga conocimiento sobre temas basados en la filosofı́a de
la orientación a objetos, y que le pueda servir para el empleo posterior de herramientas de
simulación que se basen en la metodologı́a orientada a objetos.
vi
Índice General

1 Introducción al Modelado y la Simulación 1

1.1 Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.2 Algunas definiciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1.3 Una clasificación de los modelos . . . . . . . . . . . . . . . . . . . . . . 4

1.4 Fases de un proyecto de modelado y simulación . . . . . . . . . . . . . . 6

1.5 Dinámica de sistemas . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12

1.6 Modelado con Bond-Graph . . . . . . . . . . . . . . . . . . . . . . . . . 13

1.7 Simnon . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

1.8 ACSL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

1.9 VisSim . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

1.10 Program CC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

1.11 Matlab y Simulink . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

1.12 Comparación entre lenguajes de simulación . . . . . . . . . . . . . . . . 40

1.13 Otros lenguajes para simulación . . . . . . . . . . . . . . . . . . . . . . 54

2 Descripción del comportamiento dinámico de un buque 57

vii
viii ÍNDICE GENERAL

2.1 Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

2.2 El buque en navegación . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

2.3 Efectos de las olas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59

2.4 Efectos del viento sobre el buque . . . . . . . . . . . . . . . . . . . . . . 60

2.5 Efectos de la corriente sobre el buque . . . . . . . . . . . . . . . . . . . 62

2.6 Efectos de otras perturbaciones sobre el buque . . . . . . . . . . . . . . . 65

2.7 Elementos de la toma de decisión humana . . . . . . . . . . . . . . . . . 67

3 Modelado Matemático de la Dinámica de un Buque 71

3.1 Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71

3.2 Modelo matemático de un buque . . . . . . . . . . . . . . . . . . . . . . 71

3.3 Modelos matemáticos lineales . . . . . . . . . . . . . . . . . . . . . . . 81

3.4 Función de transferencia de un buque . . . . . . . . . . . . . . . . . . . 86

3.5 Estabilidad y capacidad de maniobra . . . . . . . . . . . . . . . . . . . . 91

3.6 Modelo multivariable linealizado . . . . . . . . . . . . . . . . . . . . . . 95

3.7 El modelo de Bech . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

3.8 El modelo simplificado de Norrbin . . . . . . . . . . . . . . . . . . . . . 99

3.9 El modelo de van Leeuwen . . . . . . . . . . . . . . . . . . . . . . . . . 100

3.10 El modelo de De Keizer . . . . . . . . . . . . . . . . . . . . . . . . . . . 102

3.11 Modelo no lineal de Abkowitz . . . . . . . . . . . . . . . . . . . . . . . 103

3.12 Simulador de navegación de altas prestaciones . . . . . . . . . . . . . . . 105

3.12.1 Caracterı́sticas del Simulador de Navegación . . . . . . . . . . . 106


ÍNDICE GENERAL ix

3.12.2 Diferentes aspectos para su aprovechamiento . . . . . . . . . . . 108

4 Modelos Matemáticos de las Perturbaciones 111

4.1 Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

4.2 Un método general para modelar las perturbaciones . . . . . . . . . . . . 111

4.3 Efecto del viento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

4.4 Efecto de las olas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

4.4.1 El espectro de ola de Pierson-Moskowitz . . . . . . . . . . . . . 119

4.4.2 El espectro de ola del ITTC . . . . . . . . . . . . . . . . . . . . 120

4.4.3 El espectro de ola del ISSC . . . . . . . . . . . . . . . . . . . . . 120

4.4.4 El espectro de ola de Darbyshire . . . . . . . . . . . . . . . . . . 122

4.4.5 El espectro de ola del BTTP . . . . . . . . . . . . . . . . . . . . 123

4.4.6 El espectro de ola como respuesta de un filtro . . . . . . . . . . . 123

4.4.7 Altura y perı́odo de olas en función del viento . . . . . . . . . . . 124

4.5 Efecto de la corriente . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125

5 Identificación de Sistemas. Aplicación al Buque 127

5.1 Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

5.2 Selección de las señales de entrada . . . . . . . . . . . . . . . . . . . . . 132

5.3 Maniobra de Espiral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

5.4 Métodos tipo Curva de Reacción . . . . . . . . . . . . . . . . . . . . . . 135

5.5 Métodos en Canales de Experiencias . . . . . . . . . . . . . . . . . . . . 141


x ÍNDICE GENERAL

5.6 Respuesta impulsional finita (FIR) . . . . . . . . . . . . . . . . . . . . . 142

5.7 Respuesta a escalón finita (FSR) . . . . . . . . . . . . . . . . . . . . . . 145

5.8 Análisis de correlación . . . . . . . . . . . . . . . . . . . . . . . . . . . 147

5.9 Modelos de sistemas estocásticos . . . . . . . . . . . . . . . . . . . . . . 148

5.10 Validación del modelo identificado . . . . . . . . . . . . . . . . . . . . . 150

5.11 Método de mı́nimos cuadrados . . . . . . . . . . . . . . . . . . . . . . . 154

5.12 Métodos recursivos de identificación . . . . . . . . . . . . . . . . . . . . 156

5.13 Identificación de modelo no lineal . . . . . . . . . . . . . . . . . . . . . 160

5.14 Proceso con acción integral . . . . . . . . . . . . . . . . . . . . . . . . . 161

5.15 Estimación de los valores de continua . . . . . . . . . . . . . . . . . . . 163

5.16 Identificación en el dominio de la frecuencia . . . . . . . . . . . . . . . . 165

5.17 Aplicaciones de identificación . . . . . . . . . . . . . . . . . . . . . . . 172

5.18 Observador del vector de estado . . . . . . . . . . . . . . . . . . . . . . 178

5.19 Filtro Kalman extendido . . . . . . . . . . . . . . . . . . . . . . . . . . 184

6 Simulaciones por Computador 187

6.1 Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187

6.2 Análisis de la dinámica . . . . . . . . . . . . . . . . . . . . . . . . . . . 188

6.3 Control de rumbo y balance . . . . . . . . . . . . . . . . . . . . . . . . . 195

A Ecuaciones del Movimiento en el Plano 207

B Funciones de transferencia 213


ÍNDICE GENERAL xi

B.1 Transformadas de Laplace y Z . . . . . . . . . . . . . . . . . . . . . . . 213

B.2 Función de transferencia . . . . . . . . . . . . . . . . . . . . . . . . . . 217

B.3 Representación de estados . . . . . . . . . . . . . . . . . . . . . . . . . 220

B.4 Discretización de sistemas de tiempo continuo . . . . . . . . . . . . . . . 226

C Métodos numéricos para simulación 229

C.1 Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 229

C.2 Método de Euler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230

C.3 Método trapezoidal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 232

C.4 Métodos de Runge-Kutta . . . . . . . . . . . . . . . . . . . . . . . . . . 233

C.5 Precisión, estabilidad y rigidez . . . . . . . . . . . . . . . . . . . . . . . 235

D Términos marinos 239

E Nociones del Análisis Orientado a Objetos 245

E.1 Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 245

E.2 Conceptos de la orientación a objetos . . . . . . . . . . . . . . . . . . . 246

E.3 Métodologı́a del análisis orientado a objetos . . . . . . . . . . . . . . . . 249


xii ÍNDICE GENERAL
Índice de Figuras

1.1 Fases de un proyecto de simulación . . . . . . . . . . . . . . . . . . . . 7

1.2 Modelado teórico y experimental . . . . . . . . . . . . . . . . . . . . . . 9

1.3 Elementos del diagrama de Forrester . . . . . . . . . . . . . . . . . . . . 14

1.4 Ejemplo de diagrama de Forrester . . . . . . . . . . . . . . . . . . . . . 15

1.5 Elementos de diagramas Bond-Graph . . . . . . . . . . . . . . . . . . . 17

1.6 Ejemplo de diagrama con Bond-Graph . . . . . . . . . . . . . . . . . . . 18

1.7 Bucle algebraico con Simulink . . . . . . . . . . . . . . . . . . . . . . . 22

1.8 Angulo de balance en función del tiempo (ejemplo con ACSL) . . . . . . 26

1.9 Sistema de gobierno del buque con VisSim . . . . . . . . . . . . . . . . . 27

1.10 Ejemplo de simulación con VisSim . . . . . . . . . . . . . . . . . . . . . 28

1.11 Respuesta a cambio de rumbo (Program CC) . . . . . . . . . . . . . . . 31

1.12 Evolución del ángulo de balance de un buque (Matlab) . . . . . . . . . . 34

1.13 Sistema de control de buque para Simulink . . . . . . . . . . . . . . . . 35

1.14 Simulación con Simulink, control fuzzy de un buque . . . . . . . . . . . . 36

1.15 Set-Point y cambio de rumbo con Simulink . . . . . . . . . . . . . . . . 37

xiii
xiv ÍNDICE DE FIGURAS

1.16 Trayectoria en el plano del buque con Simulink . . . . . . . . . . . . . . 38

1.17 Modelado de sistema multivariable con Simulink . . . . . . . . . . . . . 39

1.18 Diagrama de simulación para Tutsim . . . . . . . . . . . . . . . . . . . . 43

1.19 Diagrama y simulación con VISSIM . . . . . . . . . . . . . . . . . . . . 47

1.20 Respuestas temporales de la simulación . . . . . . . . . . . . . . . . . . 49

2.1 Sistema de referencia con origen en el c.d.g. del buque . . . . . . . . . . 58

2.2 Cambios de la vertical aparente a lo largo del perfil de la ola . . . . . . . 60

2.3 Asimetrı́a longitudinal debido a la escora . . . . . . . . . . . . . . . . . 61

2.4 Perfil de una ola trocoidal . . . . . . . . . . . . . . . . . . . . . . . . . . 62

2.5 Elementos de la estructura del buque . . . . . . . . . . . . . . . . . . . . 63

2.6 Viento real y viento aparente . . . . . . . . . . . . . . . . . . . . . . . . 63

2.7 Planos transversal y longitudinal del buque . . . . . . . . . . . . . . . . 64

2.8 Efectos evolutivos asociados a la escora . . . . . . . . . . . . . . . . . . 64

2.9 Buque navegando en un canal . . . . . . . . . . . . . . . . . . . . . . . . 66

2.10 Buque en aguas restringidas . . . . . . . . . . . . . . . . . . . . . . . . 67

2.11 Deformaciones de arrufo y quebranto . . . . . . . . . . . . . . . . . . 68

2.12 Elementos para la toma de decisiones . . . . . . . . . . . . . . . . . . . 69

3.1 Sistema con 6 grados de libertad . . . . . . . . . . . . . . . . . . . . . . 73

3.2 Variables: δ, ψ, u, v, U . . . . . . . . . . . . . . . . . . . . . . . . . . . 74

3.3 Variables: α, φ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75
ÍNDICE DE FIGURAS xv

3.4 Diagrama de bloques de la máquina del timón . . . . . . . . . . . . . . . 77

3.5 Problemas de control del movimiento de un buque . . . . . . . . . . . . . 80

3.6 r(t), V (t), φ(t), p(t) para δ = 20◦ , (15 nudos) . . . . . . . . . . . . . . 81

3.7 r(t), V (t), φ(t), p(t) para δ = 10◦ , (15 nudos) . . . . . . . . . . . . . . 82

3.8 Tipos de estabilidad en ruta . . . . . . . . . . . . . . . . . . . . . . . . . 93

3.9 Sistema multivariable . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

3.10 Respuesta temporal de sistema multivariable . . . . . . . . . . . . . . . . 98

3.11 Diagrama del modelo de Bech . . . . . . . . . . . . . . . . . . . . . . . 99

3.12 Diagrama del modelo simplificado de Norrbin . . . . . . . . . . . . . . . 100

3.13 Diagrama del modelo de van Leewen . . . . . . . . . . . . . . . . . . . . 101

3.14 Diagrama del modelo de De Keizer . . . . . . . . . . . . . . . . . . . . . 103

3.15 Integración de pruebas reales y simulación por computador . . . . . . . . 110

4.1 Perturbación actuando sobre el buque . . . . . . . . . . . . . . . . . . . 114

4.2 Parámetros de olas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

4.3 Densidad espectral de altura de olas . . . . . . . . . . . . . . . . . . . . 121

4.4 Porcentajes observados de altura de olas y perı́odos (Atlántico Norte) . . 126

5.1 Proceso de identificación . . . . . . . . . . . . . . . . . . . . . . . . . . 128

5.2 Metodologı́a de la identificación . . . . . . . . . . . . . . . . . . . . . . 131

5.3 Señales de prueba para realizar la identificación . . . . . . . . . . . . . . 133

5.4 Velocidad angular estacionaria para diferentes angulos de timón . . . . . 135


xvi ÍNDICE DE FIGURAS

5.5 Velocidad angular estacionaria para diferentes angulos de timón . . . . . 136

5.6 Respuesta al escalón: curva de reacción del sistema . . . . . . . . . . . . 138

5.7 Respuesta de sistema subamortiguado . . . . . . . . . . . . . . . . . . . 140

5.8 Sistema estocástico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149

5.9 Ruido con espectro dado . . . . . . . . . . . . . . . . . . . . . . . . . . 172

5.10 Respuesta del buque (rumbo) para señal binaria (timón) . . . . . . . . . . 174

5.11 Controlador adaptativo autoajustable para autopiloto . . . . . . . . . . . 177

5.12 Control para MODNL . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178

5.13 Control para MODNL con perturbaciones . . . . . . . . . . . . . . . . . . 179

5.14 Control de MODNL para cambio de ±90◦ . . . . . . . . . . . . . . . . . 179

5.15 Controlador fijo para cambio en el sistema . . . . . . . . . . . . . . . . . 180

5.16 Parámetros estimados en lazo cerrado (RLS) . . . . . . . . . . . . . . . . 180

5.17 Controlador adaptativo de rumbo . . . . . . . . . . . . . . . . . . . . . . 181

5.18 Filtro de Kalman para un buque . . . . . . . . . . . . . . . . . . . . . . 186

6.1 Simulación de la curva de evolución a estribor . . . . . . . . . . . . . . . 188

6.2 Simulación de la curva de evolución a babor . . . . . . . . . . . . . . . . 189

6.3 Maniobra de espiral directa . . . . . . . . . . . . . . . . . . . . . . . . . 190

6.4 Maniobra de zig-zag . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191

6.5 Buque con el timón a la vı́a y en ausencia de perturbaciones . . . . . . . 193

6.6 Buque con el timón a la vı́a y bajo los efectos de la mar . . . . . . . . . . 194

6.7 Buque con el timón a la vı́a y bajo los efectos de la mar . . . . . . . . . . 196
ÍNDICE DE FIGURAS xvii

6.8 Buque con el timón a la vı́a y bajo los efectos del viento . . . . . . . . . . 197

6.9 Buque con el timón a la vı́a y bajo los efectos de la corriente . . . . . . . 198

6.10 Factores que afectan a un buque . . . . . . . . . . . . . . . . . . . . . . 201

6.11 Componentes de entrada-salida del problema multivariable . . . . . . . . 202

6.12 Respuesta MODNL controlador multivariable (LTR-i) . . . . . . . . . . . 203

6.13 Respuesta MODNL controlador escalar (LTR-i) . . . . . . . . . . . . . . . 204

6.14 Diagrama de bloques de sistema de control con estabilizadores . . . . . . 204

6.15 Ángulo de balance (regulador IMC 1) . . . . . . . . . . . . . . . . . . . 205

6.16 Ángulo de balance (regulador IMC 2) . . . . . . . . . . . . . . . . . . . 205

A.1 Sistemas de referencia fijo y móvil . . . . . . . . . . . . . . . . . . . . . 208

E.1 Objeto buque genérico . . . . . . . . . . . . . . . . . . . . . . . . . . . 248

E.2 Estructura de clases, atributos y comunicación entre objetos . . . . . . . . 250

E.3 Diferentes objetos que componen el sistema buque . . . . . . . . . . . . 251

E.4 Red de asociación entre los objetos del buque . . . . . . . . . . . . . . . 253

E.5 Estructura de ensamblaje del sistema buque . . . . . . . . . . . . . . . . 254

E.6 Diagrama de flujo de eventos . . . . . . . . . . . . . . . . . . . . . . . . 255

E.7 Diagrama de flujo de objetos . . . . . . . . . . . . . . . . . . . . . . . . 256


xviii ÍNDICE DE FIGURAS
Índice de Tablas

1.1 Caracterı́sticas deseables de un modelo matemático . . . . . . . . . . . . 3

1.2 Utilidades de la simulación . . . . . . . . . . . . . . . . . . . . . . . . . 4

1.3 Empleo de la simulación . . . . . . . . . . . . . . . . . . . . . . . . . . 12

3.1 Parámetros de modelos lineales para diferentes buques . . . . . . . . . . 88

3.2 Valores de coeficientes para tres tipos de buques . . . . . . . . . . . . . . 90

3.3 Polos y constantes de tiempo de modnl linealizado (15 nudos) . . . . . 96

4.1 Escala Beaufort . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

E.1 Algunos atributos del objeto buque . . . . . . . . . . . . . . . . . . . . . 257

E.2 Algunos atributos del objeto timón . . . . . . . . . . . . . . . . . . . . . 257

E.3 Algunos atributos del objeto olas . . . . . . . . . . . . . . . . . . . . . . 258

E.4 Algunos atributos del objeto viento . . . . . . . . . . . . . . . . . . . . . 258

xix
Capı́tulo 1

Introducción al Modelado y la
Simulación

1.1 Introducción

En este capı́tulo se definen algunos de los conceptos relacionados con el modelado y la


simulación, se describen algunas formas de clasificación de los tipos de modelos, se pre-
sentan las ventajas y utilidad de la simulación y el modelado, se dan las fases lógicas de un
proyecto de simulación, y se describen los rasgos fundamentales de algunas herramientas
software de utilidad para la simulación, el modelado y la identificación de sistemas.

1.2 Algunas definiciones

Para entender los estudios comprendidos y objetivos perseguidos en este trabajo hay que
detenerse en la comprensión y alcance de una serie de conceptos fundamentales e inter-
relacionados como son los conceptos de sistema, experimento, modelo y simulación.

Sistema

Se define un sistema como un objeto complejo, compuesto de las partes o elementos


que lo forman (composición C del sistema) y de las relaciones que ligan entre sı́ a estos
elementos (estructura S del sistema). Sobre los elementos que forman C pueden actuar

1
2 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

otros elementos externos (entorno E del sistema). Según este planteamiento, a un sistema
se le puede asociar la terna { C,S,E } (Bunge, 1979; Aracil y Toro, 1993).

Experimento

Un experimento consiste en el proceso de extraer datos de un sistema mediante la


activación de sus entradas. Es decir, aplicar un conjunto de condiciones externas a las
entradas accesibles y observar su reacción, registrando la conducta de las variables de
salida u observables.

A veces el experimentar tiene los problemas de que:

• El sistema está sometido a la influencia de entradas adicionales (perturbaciones).

• Las variables realmente útiles no son medibles.

• Puede ser caro.

• Puede ser peligroso.

• No se dispone del proceso.

Las razones anteriores motivan el empleo de las técnicas de modelado y simulación


de sistemas.

Modelo

Un modelo va a ser una representación simplificada de la realidad, útil para el propósito


con el que se estudia el sistema concreto; y por tanto, supone una visión o perspectiva par-
ticular del sistema real.

Hay que tener en cuenta que un modelo está siempre relacionado con el par sistema -
experimento. Ası́ cuando se dice: ”el modelo de ese sistema es válido”, hay que interpre-
tar que el modelo es adecuado para un determinado experimento, pero para otro diferente
puede que no lo sea. Ésto implica que el concepto de validación de un modelo siempre
hay que relacionarlo con un experimento o conjunto de ellos a realizar sobre un sistema.
Ningún modelo de un sistema es válido para todos los posibles experimentos, ya que
serı́a una repreducción exacta del sistema real, y por tanto tan complejo con él, en con-
traposición con el principio básico del modelado: la simplificación. Se puede decir que
existen dos términos o palabras claves asociadas al modelado de sistemas: simplificación
y utilidad.
1.2. ALGUNAS DEFINICIONES 3

CARACTERÍSTICAS
DESEABLES COMENTARIOS
DE UN MODELO
1 Simplicidad Debe ser la simplificación del sistema real representado
2 Flexibilidad Se podrán modificar las entradas y someterle
a diferentes experimentos
3 Robustez Las conclusiones deben ser válidas en un amplio
rango alrededor del punto de funcionamiento habitual
4 Adaptabilidad Debe ajustarse a nuevas informaciones de su entorno
5 Totalidad Debe representar todos los aspectos importantes del
sistema, sin dejar de ser simple
6 Accesibilidad Buena comunicabilidad con el usuario
7 Útil El mejor modelo es el más util

Tabla 1.1: Caracterı́sticas deseables de un modelo matemático

Modelado

El modelado es el proceso de obtención de modelos, en concreto modelos matemáticos


que son los que se tratan en este texto. Para ello se pueden emplear técnicas basadas en
el conocimiento teórico de las leyes que gobiernan la dinámica del sistema en estudio, o
mediante la utilización de métodos experimentales como las técnicas de identificación de
sistemas. En general, ambos procedimientos son complementarios, y se suelen emplear
métodos mixtos. Como ejemplo de ello se tiene el modelado de la dinámica del buque,
que se basa en las leyes de la Fı́sica de un sólido rı́gido con seis grados de libertad, pero
que necesita de ciertas pruebas experimentales para ajustar las ecuaciones y parámetros de
éstas para que se tenga una aproximación adecuada entre el comportamiento del buque re-
al y de la simulación realizada con el modelo matemático. Como caracterı́sticas deseables
de un modelo matemático pueden considerarse las que se dan en la tabla 1.2.

Simulación

Se puede decir que la simulación consiste en un experimento realizado sobre un mo-


delo. En la tabla 1.2 se resumen algunas de las principales utilidades de la simulación.
4 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

APLICACIONES FINALIDAD
1 Experimentación Utilizando los modelos matemáticos
2 Predicción Para predecir el comportamiento de un sistema cuando
se somete a determinados estı́mulos
3 Enseñanza y Obtener experiencia en la toma de decisiones. Adquirir
”training” ciertas rutinas o hábitos (simuladores)
4 Ayuda al Considera los múltiples elementos y relaciones que
pensamiento aparecen en un sistema, los cuales permiten concentrar
la atención sucesivamente en subconjuntos reducidos de
éstos, y ayudar ası́ al análisis de dicho sistema
5 Etapa previa Evaluar las prestaciones del sistema simulado referidas
al diseño a los objetivos a priori
6 Comparación de Estudio de comportamiento bajo diversas situaciones
estrategı́as

Tabla 1.2: Utilidades de la simulación

1.3 Una clasificación de los modelos

Es posible obtener diferentes modelos para un sistema concreto, según el propósito que
se persiga con el modelado. En este apartado se hace una clasificación particular aten-
diendo al conjunto de ecuaciones que caracterizan al modelo matemático del proceso;
también se describen algunas de las caracterı́sticas de los modelos de tipo simbólico (cual-
itativo, basado en reglas, funcionales y causales); y se consideran los modelos fı́sicos y
analógicos.

• Modelo estático y dinámico.


Dependiendo de si las variables entrada-salida varı́an con el tiempo o no. Ası́ se
habla de modelo de un sistema dinámico como aquel que describe de forma cuanti-
tativa la evolución temporal de las variables analizadas del sistema.

• Modelo lineal y no lineal.


El modelo es lineal si cumple el principio de superposición (el efecto o respuesta
resultante de un conjunto de causas o entradas, equivale a la suma de los efectos
particulares de cada causa, en caso de que cada una de ellas pudieran analizarse por
separado). La no linealidad además se puede determinar a partir de las ecuaciones
que describan al modelo, si éstas contienen términos o funciones no lineales entre
las variables del modelo (entrada y salida) y/o de sus derivadas.
1.3. UNA CLASIFICACIÓN DE LOS MODELOS 5

• Modelo determinista y estocástico.


Si sobre el sistema actuan señales aleatorias, o si ciertas magnitudes del modelo
se conocen con una cierta función de probabilidad, se dice que el modelo es es-
tocástico.

• Modelo invariante y variable en el tiempo.


Esta división hace referencia a la constancia o no de los parámetros del modelo.
Ası́ un modelo que representa a un sistema dinámico puede ser lineal e invariante
en el tiempo, indicando que las ecuaciones que lo representan son lineales y los
parámetros o coeficientes de dichas ecuaciones son constantes.

• Modelo de parámetros concentrados y distribuidos.


Si el modelo consta de ecuaciones en derivadas parciales será de tipo distribuido, y
será de parámetros concentrados si se puede modelar mediante ecuaciones diferen-
ciales ordinarias.

• Modelo de tiempo continuo, de tiempo discreto y discretizados.


Básicamente el modelo de tiempo continuo emplea ecuaciones diferenciales ordi-
narias, y el tiempo es una variable que cambia de forma continua; mientras que
el modelo de tiempo discreto utiliza ecuaciones en diferencias (relaciones de recur-
sividad), y se considera que sólo cambia el estado del proceso de ciclo de muestreo a
ciclo de muestreo, cambiando el tiempo de forma discreta con unidad el perı́odo de
muestreo. Un caso particular son los sistemas de tiempo continuo que se modelan
empleando algún método de discretización para un perı́odo de muestreo constante.

• Modelos de sistemas de eventos discretos.


En este tipo de sistema la descripción del comportamiento se realiza mediante even-
tos, por lo que se les suele denominar también sistemas de eventos discretos. Los
eventos son los que producen los cambios en el estado del proceso, por ejemplo
la llegada de una pieza a una cola en una célula de fabricación. Para caracteri-
zar el concepto y función del término evento se puede decir que: un evento puede
provocar un cambio en el valor de algún atributo de alguna entidad, puede crear o
destruir una entidad, puede iniciar o detener alguna acción; por lo que un proceso
estará constituido por una secuencia de eventos (Banks et al., 1996).
La estructura del modelo se compone de entidades, relaciones y acciones. Las
entidades son los elementos que componen el proceso, por ejemplo en una célula
de fabricación serı́an las colas de entrada y salida de la célula, los robots, los al-
macenes intermedios, etc. Cada entidad tendrá una serie de atributos que serán las
variables de estado del sistema, por ejemplo en una cola un atributo serı́a el número
de elementos. Las relaciones ligan las entidades aisladas para formar un conjunto,
6 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

por ejemplo una cierta cola de entrada alimenta de piezas a un determinado ma-
nipulador. Los cambios en el estado del proceso se generan por las acciones que
realiza cada entidad.

• Modelado simbólico
Este tipo de modelado se caracteriza por alguna de las siguientes caracterı́sticas: a)
algunas variables del proceso no corresponden a magnitudes fı́sicas, b) los valores
que toman las variables no son valores numéricos, sino simbólicos (por ejemplo:
términos del tipo medio, bajo, muy bajo ...), c) las relaciones entre variables se
expresan por medio de mecanismos basados en la lógica más que en el cálculo
matemático (por ejemplo: si aumenta la temperatura entonces subirá la presión).
Algunos tipos de modelos simbólicos son los siguientes: 1) modelos basados en
reglas, 2) modelos cualitativos, 3) modelos funcionales, y 4) modelos causales. La
modelización simbólica surge fundamentalmente en el ámbito de la inteligencia
artificial.
Las técnicas de modelado y simulación cualitativa tienen una especial utilidad en
los sistemas de control, supervisión y diagnóstico de sistemas complejos (Kuipers,
1986; de Kleer, 1984 ; Forbus, 1984; Moreno, 1992). El programa QSIM imple-
menta en PC un algoritmo de simulación cualitativa propuesto por Kuipers.

• Modelado fı́sico y analógico


Se construye un sistema fı́sico cuyo comportamiento represente el del sistema en
estudio, por ejemplo un modelo a escala de un buque. El modelo analógico puede
ser también un sistema fı́sico pero que puede no guardar ningún parecido con el
sistema real, sin embargo va a existir una analogı́a de elementos y/o variables en-
tre el sistema real y el modelo; como ejemplo se tiene un simulador analógico
(Fernández, 1980).

1.4 Fases de un proyecto de modelado y simulación

Debido a razones económicas, experimentales y/o de complejidad de un proceso real, se


hace difı́cil y a veces inviable la experimentación con el sistema real en su medio, por lo
que se plantea el desarrollo de un proyecto de modelado y simulación. En todo proyecto
de este tipo hay una serie de etapas (ver figura 1.1):

1. Definición del proyecto

2. Desarrollo del modelo


1.4. FASES DE UN PROYECTO DE MODELADO Y SIMULACIÓN 7

Figura 1.1: Fases de un proyecto de simulación


8 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

3. Evaluación y actualización

4. Simulación

Definición del proyecto

A partir de: a) el conocimiento que se tenga del sistema, b) de una serie de hipótesis de
trabajo, c) de los medios de que se dispongan y d) de los objetivos que se desean cumplir
(definiendo las condiciones de aplicabilidad y limitaciones), se plantea el problema de
modelado y posterior simulación. Para caracterizar esta primera etapa del proyecto, se
puede utilizar una frase de Einstein: Üna formulación adecuada de un problema es inclu-
so más importante que su solución ”.

Desarrollo del modelo

Consiste en llegar a la obtención de un modelo matemático útil para la simulación. Existen


dos procedimientos complementarios entre sı́ para obtenerlo (ver figura 1.2):

1. Análisis teórico.
Se realiza al principio, con un estudio de las leyes que gobiernan al sistema y que
caracterizan su comportamiento dinámico y estático. La aplicación de las leyes
conduce al tipo de ecuaciones que definirán el modelo teórico del proceso (ecua-
ciones algebraicas, diferenciales ordinarias y en derivadas parciales). Tal modelo
suele ser complicado por lo que para ser utilizado puede necesitar de algún tipo de
simplificación. Una vez obtenido el modelo teórico simplificado, se procede a su
validación.

2. Análisis experimental
Este emplea las técnicas de identificación de sistemas, basadas en la toma de datos
experimentales de pruebas a las que se somete al proceso real. Supone un tratamien-
to inductivo del problema, y como tal, en general se obtienen como soluciones un
conjunto de posibles modelos que satisfacen las relaciones entre las variables ob-
servadas. Se necesita la colaboración de un análisis deductivo para decidir cual
de todos los posibles modelos es el que más se asemeja en su comportamiento al
sistema real.
1.4. FASES DE UN PROYECTO DE MODELADO Y SIMULACIÓN 9

Figura 1.2: Modelado teórico y experimental


10 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

Entre las ventajas que el modelo experimental tiene sobre el teórico, la más importante
es que permite obtener el modelo de un sistema o proceso del que no se tiene que conocer
necesariamente su fundamentación teórica, es decir: se obtiene un modelo tipo de ”caja
negra”. Otra ventaja es que permite, en sistemas muy complejos, obtener un modelo de
una forma mas económica y rápida, También constituyen una forma de comprobación del
modelo teórico. Las desventajas principales son: 1) el sistema debe ya existir y funcionar,
2) debe someterse el sistema a ensayos que perturben sus condiciones normales de trabajo,
y 3) no proporciona un conocimiento profundo sobre el proceso real.

El modelo matemático obtenido mediante el método teórico establece las relaciones


funcionales entre las variables, a la vez que los parámetros tienen un significado fı́sico.
El modelo obtenido mediante el análisis experimental o identificación, al contrario puede
incluir parámetros con determinados valores numéricos, cuya conexión funcional con los
aspectos fı́sicos del problema resulte desconocida. Sin embargo, puede definir con más
exactitud el comportamiento del proceso para unas condiciones determinadas.

La acción fundamental en el análisis teórico se centra en el estudio de los fundamentos


del comportamiento fı́sico del sistema; utilizándose el análisis experimental, casi exclu-
sivamente, para comprobar la validez y precisión del modelo obtenido, o para determinar
algunos parámetros que no se pueden calcular teóricamente con suficiente exactitud. En
el análisis experimental, la acción básica se centra en la realización de los experimentos y
las medidas, utilizándose el análisis teórico casi exclusivamente, para obtener a priori un-
os buenos conocimientos del comportamiento dinámico del sistema; ya que éstos pueden
mejorar en gran medida la precisión del modelo obtenido experimentalmente.

De lo expuesto se deduce que el modelado de un sistema no supone, en general tal co-


mo se ha indicado, una realización puramente teórica o experimental, sino mas bien una
combinación apropiada de ambos métodos cuyas etapas sucesivas vienen determinadas
por el fin al que va a ser destinado el modelo y por el propio proceso. Sin embargo, y
a pesar de que el modelado teórico contiene en principio más información sobre el pro-
ceso, el modelado experimental ha adquirido a partir de los años ochenta una relevancia
muy importante. Las razones para ello las encontramos en que: a) la obtención de un
modelo teórico puede resultar bastante laboriosa y compleja, incluso para procesos relati-
vamente sencillos; b) anque se haya obtenido el modelo, puede resultar que determinados
coeficientes sean demasiados inexactos; c) no todos los fenómenos que tienen lugar en el
proceso son conocidos o expresables mediante relaciones matemáticas; d) algunos proce-
sos son lo suficientemente complejos para hacer prácticamente imposible la obtención de
un modelo teórico; e) en control automático, se necesita un modelo matemático útil para
el diseño de un regulador.
1.4. FASES DE UN PROYECTO DE MODELADO Y SIMULACIÓN 11

Puede considerarse que ambos métodos no son antagónicos, sino que mas bien se
complementan; ya que en general, la obtención de un modelo matemático suele ser un
proceso de tipo iterativo en el que de una u otra manera se utilizan ambas técnicas.

Evaluación y actualización

Es una fase tan importante o quizás más que las anteriores, pues consiste en la detección
de errores en los datos, variables, programación, etc. Puede considerarse que abarca tres
aspectos principales:

• Verificación: de que el modelo se comporta de la forma esperada por el investigador.

• Validación: contrastando los resultados de la simulación con los del sistema real.

• Análisis de sensibilidad: consistente en variar sistemáticamente los valores de los


parámetros dentro de su intervalo de interés y medir el efecto cuantitativo y cualita-
tivo de dicha variación en el comportamiento del modelo. Este análisis es de suma
importancia, ya que se basa en el hecho frecuente de que ciertos datos o parámetros
hayan sido fijados por medio de métodos poco fiables y a veces empı́ricos, siendo
de transcendental importancia determinar la dependencia o sensibilidad del com-
portamiento del modelo respecto a los valores empleados. En su caso se concluirá
si es necesario o no intensificar el esfuerzo para la determinación de valores más
precisos.

La actualización del modelo es una tarea a realizar, debido a que este puede cambiar
con el tiempo o también a que cambien las especificaciones del proyecto de simulación y
se necesite para ello cambiar la estructura, parámetros, etc.

Simulación

Una vez que el modelo ha superado todas las fases (ver figura 1.1), se tiene un mode-
lo adecuado para la aplicación de la simulación del sistema real. Cabe distinguir entre
una aplicabilidad con fines de análisis y otra con fines de diseño en su caso. Se pueden
considerar con finalidad de análisis aquellas simulaciones que tienen como objeto la com-
paración de estrategias, la obtención de relaciones funcionales, el adiestramiento o la ed-
ucación. El otro caso se refiere a que el sistema sea factible de ser afectado por un diseño
12 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

PROBLEMA SEL SISTEMA REAL VENTAJA DE LA SIMULACIÓN


1 El sistema fı́sico no está dispo- Se realiza si se desea experimentar
nible, o es técnicamente inviable. antes de construir un sistema proyectado
2 Experimento real caro, Simulación en laboratorio.
peligroso o no ético.
3 Perturbaciones no accesibles para Permite el acceso a todas las entradas y
manipulación, y variables de estado variables de estado.
tampoco para su medida.
4 Las constantes de tiempo no son Permite la aceleración o retardo de los
compatibles con el experimentador. experimentos. Permite la manipulación del
modelo fuera del rango admisible del
sistema fı́sico, y observar su evolución
en el tiempo y almacenarla.
8 No hay posibilidad de suprimir las Permite aislar efectos particulares, y
perturbaciones. facilita la comprensión del sistema.

Tabla 1.3: Empleo de la simulación

de control, empleando el modelo matemático durante la fase de diseño de los posibles


reguladores.

1.5 Dinámica de sistemas

La dinámica de sistemas (DS) nace como una técnica que permite analizar los sistemas
y simular su comportamiento. Su inventor fue un ingeniero de sistemas llamado J.W.
Forrester, que desarrolló esta técnica durante la década de los cincuenta. La primera
aplicación consistió en el análisis de la estructura de una empresa norteamericana y el
estudio de unas oscilaciones muy acusadas que se daban en sus ventas. Es destacable
también, que la dinámica de sistemas se empleó en 1970 para el estudio del mundo como
sistema dinámico, que sirvió como base para el primer informe del Club de Roma.

La principal aportación de la DS es que facilita el paso desde la estructura del sistema


(que en este entorno se denomina diagrama causal o de influencias) a un conjunto de
ecuaciones algebraico-diferenciales (sistema dinámico).

El diagrama de Forrester es una forma intuitiva de representación gráfica, que utiliza


elementos fı́sicos (sı́mil hidrodinámico) para representar el modelo matemático de un
1.6. MODELADO CON BOND-GRAPH 13

sistema (consistente en un sistema de ecuaciones diferenciales de primer orden). Forrester


propuso una simbologı́a donde cada elemento tiene su significado fı́sico. Los elementos
que emplean son (Aracil, 1983; Martı́nez y Requena, 1986):

• Nube: representa una fuente o un pozo. Puede interpretarse como un nivel que no
tiene interés y que es prácticamente inagotable.

• Nivel: representa una acumulación de flujos (la variable de estado).

• Flujo: es una variación de un nivel, y representa un cambio en el estado del sistema.

• Canal de material: canal de transmisión de una magnitud fı́sica que se conserva.

• Canal de información: canal de transmisión de una cierta información que no es


necesario que se conserve.

• Variable auxiliar: una cantidad con un cierto significado fı́sico en el mundo real y
con un tiempo de respuesta instantáneo.

• Constante: un elmento del modelo que no cambia de valor.

• Retardo: un elemento que simula retarsos en la transmisión de información o de


material.

• Variable exógena: variable cuya evolución es independiente de las del resto del
sistema. Representa una acción del medio sobre el sistema.

Un diagrama construido con la ayuda de los sı́mbolos asociados a los elementos ante-
riores se conoce como Diagrama de Forrester o diagrama Dynamo, ya que el DYNAMO
es un lenguaje de simulación basado en los diagramas de Forrester. A partir del diagrama
de Forrester se pueden escribir las ecuaciones del modelo, y posteriormente programadas
en un computador permite la obtención numérica y/o gráfica de la evolución temporal de
las variables de interés.

1.6 Modelado con Bond-Graph

Un modelo puede considerarse una herramienta para el estudio del comportamiento de un


sistema, también una estructura en donde se integran los diferentes elementos simples de
forma que cada uno contribuye a la respuesta global. Por ello, como ya se ha dicho, el
14 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

Figura 1.3: Elementos del diagrama de Forrester

modelo debe responder a la finalidad del estudio que se pretanda realizar, por lo que en
cada caso ha de elegirse el tipo de estructura que resulte más adecuada. Ası́ por ejemplo,
en un circuito eléctrico se pueden establecer diferentes formas de modelado: 1) mediante
un esquema gráfico o plano (puede ser una buena representación del sistema real, pero no
da información sobre la respuesta del sistema); 2) empleando un conjunto de ecuaciones
algegraico-diferenciales (que sirven para obtener la respuesta, pero no retiene relación
con el problema fı́sico que representa); 3) un diagrama de simulación y/o diagrama de
bloques (simplifica el trabajo de simulación y representación, pero pierde gran parte de las
referencias a la estructura y principios fı́sicos del sistema); 4) mediante el empleo de una
metodologı́a que integra gráficos y notación matemática, conocida como Bond-Graph,
y que mantiene una gran semejanza entre la estructura del sistema real y el modelo, a
la vez que facilita la obtención de modelos de otros tipos (como diagramas de bloques y
conjuntos de ecuaciones) que se pueden deducir mediante una serie de pasos sistemáticos.

La idea original del Bond-Graph (Paynter en los años cincuenta) consiste en realizar
una extensión de las leyes de Kirchoff (de los circuitos eléctricos) a todos los domin-
ios de la Fı́sica. Posteriormente, en los años sesenta se desarrolla el lenguaje ENPORT
(Rosenberg, 1992) que ha ido evolucionando hasta la actualidad. Algunas industrias au-
1.6. MODELADO CON BOND-GRAPH 15

Figura 1.4: Ejemplo de diagrama de Forrester


16 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

tomovilı́sticas como la Ford utilizan ENPORT para el desarrollo de modelos basados en


Bond-Graph. El ENPORT proporciona una interfase con el software MATRIXx con el fin
de posibilitar el uso de los modelos para el desarrollo de controladores.

A principios de los años ochenta la universidad holandesa de Twente desarrolla el


lenguaje TUTSIM que incorporaba la forma convencional de los diagramas de simu-
lación, ası́ como en Bond-Graph. La evolución actual del Tutsim es el CAMAS (acrónimo
de em Computer Aided Modelling, Analisys and Simulation), que además de ser una her-
ramienta de simulación es también una de modelado (Broenink, 1992). Tanto para EN-
PORT como para CAMAS el usuario debe estar familiarizado con la metodologı́a Bond
Graph y construir el modelo previamente. La representación de cierta clase de sistemas
mecánicos complejos, a veces denominados ”multiports”, se facilita mediante una gen-
eralización del Bond-Graph conocida inicialmente por Vector Bond-Graph y que en la
actualidad se denomina Multibond-Graph.

La terminologı́a asociada a Bond-Graph emplea variables denominadas: esfuerzos,


”e”(variables que sugieren algún tipo de acción de un elemento sobre su entorno); flujos,
”f”(hacen referencia a movimiento, ya sea de carga o masa); las integrales respectivas se
denominan momentos generalizados ”p”y ”q”. Los elementos que transmiten informa-
ción se conocen como ligaduras (bonds), los elementos que operan de alguna forma sobre
la energı́a se llaman nodos; y a la unión entre un nodo y una ligadura se denomina puerto
( port).

Las ligaduras o (bonds) representan las conexiones entre los elementos del sistema, y
sirven de transmisores entre nodos, por lo que se representan mediante una semiflecha que
enlaza los nodos. Mediante su dirección y su barra de causalidad aportan una información
complementaria.

Los nodos representan elementos simples, con un comportamiento energético definido.


Se obtienen de abstracciones y pueden corresponder a propiedades de elementos reales
o a estructuras derivadas de la constitución del sistema. Vienen caracterizados por ecua-
ciones algebraico diferenciales (ade) que hacen referencia a las variables portadas por las
ligaduras con las que se conectan, siendo el número de ecuaciones que se derivan de un
nodo igual al número de ligaduras con el que está conectado. Según su comportamiento
energético se clasifican en: fuentes (suministran energı́a y pueden absorberla), acumu-
ladores (almacenan y devuelven energı́a), disipadores (sustraen energı́a del sistema y la
convierten en energı́a térmica), transformadores (varı́an la forma de propagación de la
energı́a), conexiones (producen distribuciones de la energı́a entre varias ramas del mode-
lo). En el lenguaje Bond-Graph se idenfitican por un código de caractéres, seguidos del
carácter ”:”y del parámetro que lo caracteriza en su caso (Gawtrhop y Smith, 1996).
1.6. MODELADO CON BOND-GRAPH 17

Figura 1.5: Elementos de diagramas Bond-Graph


18 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

Figura 1.6: Ejemplo de diagrama con Bond-Graph

1.7 Simnon

SIMNON es la abreviatura de SIMulation of NONlinear systems. En 1972 se presenta


por H. Elmquist en Lund (Suecia); posteriormente en 1980 aparece la primera versión
para sistemas VAX/VMS; y en 1986 una versión para PC (para MS-DOS). En 1991 sale
al mercado ISEE-Simnon para Unix. La versión 1.0 para Windows es de 1993 (SSPA,
1993).

La versión de Simnon para Windows dispone de: la ventana, ”Command Prompt” o


linea de comandos, a través de la cual se hace la comunicación con el usuario mediante
su propio lenguaje. La barra de herramientas o ”toolbar”, donde se localizan una fila de
botones, que son una alternativa rápida a las operaciones de los menus desplegables. Y
1.7. SIMNON 19

las ventanas ”Plot Windows”, o de dibujo, donde se realizan las representación gráfica
de las respuestas del sistema dinámico en función del tiempo, o en el plano de fases.
Habitualmente para realizar la programación en Simnon se siguen los siguientes pasos:

1. Se introduce la descripción del sistema (edit): mediante un editor de textos se


generan los archivos que describen al sistema. En los archivos de descripción se
declara si el sistema es de tiempo continuo (uso de ecuaciones diferenciales) o si es
de tiempo discreto (uso de ecuaciones en diferencia). Se declara si el sistema consta
de varios modelos dinámicos, discretos y/o continuos, interconectados entre sı́. Se
describe cada uno de ellos en su propio archivo, y en un nuevo archivo de conexión
se declara la relación entre ellos. Por último, se genera un archivo ”macro” (progra-
ma principal) donde constan las instrucciones propiamente de simulación, algunas
de las cuales se dan en lo que sigue.

2. Se realiza la compilación (syst): la instrucción syst (del programa principal)


lee las lineas de los archivos que se especifican a continuación de ella, y las traduce
a instrucciones de la ’máquina Simnon’, una máquina virtual cuya arquitectura está
basada en una pila a la que se accede con pseudo-código o ’P-code’. Cuando un
subsistema se traduce por completo, Simnon comprueba que todas las valores lo-
cales están correctamente definidos. Cuando todos los subsistemas están traducidos
se pasa a comprobar sus interconexiones, determinando si hay alguna inconsisten-
cia en el sistema definido.
Cuando el ’P-code’ ha sido generado se ordena en una correcta secuencia para su
ejecución. Lo cual permite al usuario escribir el código de manera arbitraria. La
ordenación también reduce el esfuerzo de cómputo. Por último, el ’P-code’ se
traduce a código máquina de la plataforma sobre la que se trabaja, obteniendo ası́
una simulación más rápida que con la mayoria de los demás lenguajes de simulación
de alto nivel.

3. Selección de las variables a almacenar (store): con ésta instrucción se indica


las variables que se almacenan en memoria durante la simulación para su posterior
visualización y/o manipulación.

4. Simulación (simu): con el modelo del sistema codificado y compilado, e indicadas


las variables que interesan almacenar, se pasa a la simulación en el intervalo de
tiempo que el usuario especifique.

5. Visualización gráfica (plot, show, ashow): las variables almacenadas en memo-


ria durante la simulación pueden representarse gráficamente en una ventana de dibu-
jo, bien mediante escalado automático, bien indicando los máximos y mı́nimos de
los ejes.
20 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

6. Resultados numéricos (list, print, hcopy, export): los resultados numéricos


generados en la simulación pueden almacenarse en archivos de datos, visualizarse,
imprimirse, y usarse en otras aplicaciones.

Otras posibilidades de Simnon son:

• Capacidad para trabajar en tiempo real: dispone de instrucciones con las que se
puede realizar operaciones de adquisición de datos, control en tiempo real y simu-
lación de procesos.

• Intercambio de datos con Matlab.

– Importa y exporta archivos de datos numéricos procedentes de simulaciones,


o para que sirvan como datos de entrada para una simulación.
– Transfiere desde Matlab a Simnon sistemas dinámicos lineales invariantes
en el tiempo, a partir de una realización en el espacio de estados (matrices
A,B,C,D). Esto tiene de interesante que con Matlab se puede realizar el diseño
de un determinado regulador y con Simnon se puede probar el regulador (uti-
lizando las matrices de Matlab directamente) para un sistema no lineal, em-
pleando bastante menos tiempo de ejecución que si se hace directamente en
Matlab o con Simulink.

Ejemplos de bucles algebraicos

Una vez contruido el modelo hay que obtener de él toda la información necesaria para que
un programa de ordenador sea capaz de hacer la simulación. La asignación de la causal-
idad computacional se refiere a la decisión de qué relación debe emplearse para calcular
cada incognita, a fin de obtener el código final para la simulación. Una caracterı́stica de
los lenguajes de simulación es que en general no permiten relaciones algebraicas mutuas
entre variables, debido a que en ese caso el módulo de ordenación de ecuaciones no puede
determinar una secuencia de ejecución de las ecuaciones del modelo. Un ejemplo sencilo
de bucle algebraico lo consituyen las dos ecuaciones siguientes:

y = f (x)
x = g(y)
1.7. SIMNON 21

donde x debe conocerse antes de calcular y con la primera ecuación, y para la segunda
ecuación se debe conocer y para calcular x; resultando que ninguna ecuación puede resol-
verse sin la otra. La aparición de bucles algebraicos entre variables dentro de un modelo
puede ser indicativo de un procedimiento inadecuado de modelado, o de una elección in-
correcta de las variables (Cellier y Elquist, 1993). Sin embargo, es frecuente e incluso
inevitable la aparición de estos bucles algebraicos como resultado de la interconexión en-
tre diferentes sistemas o partes de un sistema. Para que un lenguaje de modelado resulte
eficiente debe considerar tales casos y realizar la manipulación simbólica necesaria para
resolverlos, tal como hacen los lenguajes Dymola (Elquist et al., 1993) y Omola (Matts-
son et al., 1993). A continuación se muestra un ejemplo de bucle algebraico en Simnon
(SSPA, 1993).

========================================================
CONTINUOS SYSTEM s1 "define sistema s1
INPUT u
OUTPUT y
END

CONTINUOS SYSTEM s2 "define sistema s2


INPUT u
OUTPUT y
y = u
END

CONNECTING SYSTEM c "define interconexión entre


" sistemas s1 y s2
yr = 1
u[s1] = yr + k * y[s2]
u[s2] = y[s1]
k: 0.5
END

SYST s1 s2 c "macro o programa principal

............

simu 0 100 "realiza la simulación de 0 a 100


"unidades de tiempo

............
========================================================
22 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

Figura 1.7: Bucle algebraico con Simulink

Si se realiza una manipulación algebraica simple, se obtiene que,

u[s1] = yr + k * u[s1]

lo cual justifica la denominación de lazo o bucle algebraico. En este caso se puede resolver
sin problema siempre que k = 1; pero en general, la ecuación resultante puede ser no
lineal, en cuyo caso es más difı́cil de resolver. El Simnon no trata los bucles algebraicos,
mostrando en ese caso un mensaje de error. En la figura 1.7 se muestra otro ejemplo de
bucle algebraico, en este caso para Simulink. Si se trata de realizar la simulación del
sistema, aparecerá un mensaje de error, avisando de la existencia de bucles algebraicos.
1.8. ACSL 23

1.8 ACSL

ACSL (Advanced Continuous Simulation Language) es un lenguaje para el modelado y


simulación de sistemas continuos descritos mediante ecuaciones diferenciales no lineales
dependientes del tiempo, y/o mediante funciones de transferencias. Su estructura sigue
las especificaciones establecidas por el Comité Técnico de Lenguajes de Simulación de
Sistemas Continuos (Technical Committee on Continuous System Simulation Languages)
(Mitchell y Gauthier, 1991).

Los modelos matemáticos se escriben en un fichero conocido como model source,


mientras que con otro conjunto de instrucciones que se incluyen en un fichero conocido
como runtime commands se manipulan los programas, es decir, los ejecuta, altera el valor
de sus parámetros, genera gráficos con los datos de la simulación, etc. El programa se lee
por el traductor de ACSL creando un archivo con código Fortran, que una vez compilado
y enlazado con las ACSL runtime library puede ejecutarse. Llegado a este punto, las in-
strucciones de manipulación del programa runtime commands, pueden introducirse desde
linea de comandos interactivamente, o en un proceso por lotes definido en un archivo o
”macro”. Algunas de las caracterı́sticas del lenguaje son las siguientes:

• Dispone de los operadores aritméticos, lógicos, y relacionales de Fortran, ası́ como


de las librerı́as de funciones correspondientes. Además, cuenta con operadores
especı́ficos de ACSL, como son por ejemplo: qntzr, cuantificación, o unif,
distribución uniforme de números aleatorios. El operador integrador es integ
o intvc (ver el listado del ejemplo de más abajo que muestra la forma en que se
utiliza).

• En el código pueden incluirse funciones o subrutinas en Fortran creadas por el


usuario.

• La estructura del programa incluye las secciones initial, dynamic (donde


se encuentran las subsecciones derivative, discrete, y terminal. Todas
estas secciones y subsecciones se terminan con la instrución end antes de empezar
con la siguiente.

• El traductor de ACSL clasifica el código de la sección derivative de tal ma-


nera que sus salidas se calculen antes de ser usadas. El resto de las secciones del
programa no se calsifican a menos que se indique lo contrario.

• Se pueden elegir de entre varios algoritmos de integración, y también existe la posi-


bilidad de usar uno implementado por el usuario.
24 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

• Dentro de los commandos tipo ”runtime”, analize permite calcular diagramas


de Bode, de Nyquist, de Nichols, calcular jacobianos, el lugar de las raices, auo-
valores, autovectores, etc. Posibilitando que el usuario pueda usar ACSL para el
diseño y análisis de sistemas de control, además de para la simulación.

Ejemplo en ACSL

A continuación se presenta el listado del source model (sm) en primer lugar, y en segundo
el del runtime commands (rc) del modelo matemático del movimiento de balance de un
buque. Su dinámica, tal como se describe en el capı́tulo iii, se puede modelar mediante
una ecuación diferencial de la forma,

φ̈ + 2ξωφ φ̇ + φ = Kφ α

siendo α el ángulo de aletas estabilizadoras y φ el ángulo de balance. Si se hace: y =


φ, yd = φ̇, ydd = φ̈, wn = ωn , y se considera un buque con: frecuencia natural de balance
ωn = 1/3 rad/seg., α = 0, y coeficiente de amortiguamiento ξ = 0.3, se obtiene que la
ecuación diferencial resultante queda,

ÿ + aẏ + y = 0

con a = 2ξωφ = 0.2; por lo que el código ms en ACSL resulta:

======================================================================
PROGRAM mbalan1 DERIVATIVE
!============== modelo matemático de un buque, que describe el
! movimiento de balance para un ángulo de escora
! inicial de 15 grados
CINTERVAL cint = 0.02
!============== define constante del modelo
CONSTANT a = 0.2 , wn = 0.33333
CONSTANT ydin = 0.0 , yin = 15.0
!============== ecuaciones del modelo
ydd = - a * yd - (wn**2) * y
yd = INTEG(ydd,ydin)
y = INTEG(yd,yin)
1.9. VISSIM 25

!============== especifica condición para terminar la simulación


! total: 32 segundos de simulación
CONSTANT tstp = 31.99
TERMT(t .ge. tsim, ’Time Limit’)
END !fin de derivative
END !fin de program
======================================================================

El código de sm no necesita estar ordenado, ya que de ello se encarga el traductor


del ACSL, mientras que sı́ debe estarlo el conjunto de instrucciones del rt, que para el
ejemplo se tiene:

======================================================================
SET TITLE = ’Movimiento de balance del buque’ SPARE SET TCWPRN=72
!permite salida por pantalla de 3 columnas
!salida por pantalla cada 50*cint = 1 segundo
OUTPUT t,y,yd/NCIOUT=50
PREPARE t,y,yd
START
PLOT y,yd !repuesta temporal de y(t), yd(t)
PLOT/XAXIS=y,yd !respuesta en el plano de fases (y,yd)
SPARE !lista tiempo de ejecución
QUIT
======================================================================

1.9 VisSim

VisSim (Visual Simulation) es un entorno de programación visual para la simulación de


sistemas dinámicos, continuos, discretos, con distintos periodos de muestreo, y modelos
hı́bridos. La implementación se hace editando el diagrama de bloques correspondiente al
modelo mediante la biblioteca de bloques que posee. Existen versiones de VisSim tanto
para PC como para Work Station. Algunas de sus caracterı́sticas son (Visual Solutions,
1995):

• La biblioteca de bloques estándar dispone de elementos para la animación, ar-


itméticos, booleanos, lineales, no lineales, para la visualización, generadores de
señal, para la optimización, de integración, y para aplicaciones en tiempo real entre
otras.
26 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

Figura 1.8: Angulo de balance en función del tiempo (ejemplo con ACSL)

• Para la simulación se pueden escoger algoritmos de integración que abarcan desde


el método de Euler a el método adaptativo de Burlish-Stoer. Existe la posibilidad
de simular en tiempo real, es decir: un segundo de simulación tarda en simularse
un segundo de reloj.

• Puede resolver ecuaciones implicitas activando el método de descomposición de


Newton-Raphson en la ventana de diálogo ’Simulation Setup’, aunque también es
posible usar cualquier método que implemente el usuario en un archivo ”.DLL”,
VisSim lo reconocerá si se le llama vsolver.dll.

• Tiene una utilidad de optimización. Se puede abordar el ajuste automático de uno o


varios parámetros de un sistema de control atendiendo a una función de coste en la
que se engloban distintas restricciones, (por ejemplo, penalización del sobreimpul-
so, y del tiempo de establecimiento). Los métodos de optimización disponibles son:
de Fletcher Reeves, de Polak-Ribiere, y de Powell (Press et al., 1990). El usuario
también puede utilizar cualquier otro método implementado mediante un archivo
”.DLL”. VisSim lo reconocerá si se le llama vopt.dll.

• La biblioteca de bloques puede ampliarse por el usuario a través de archivos ”.DLL”.

• Con el bloque ’animate’, y una familia de archivos ”.BMP”que contenga el mismo


1.9. VISSIM 27

Figura 1.9: Sistema de gobierno del buque con VisSim

objeto u objetos con distintas apariencias se pueden hacer animaciones del sistema
durante la simulación.

• Dispone de una librerı́a de diagramas de bloques (diagramas de simulación) ya


implementados que pueden utilizarse para facilitar el trabajo del usuario.

Existen una serie de módulos adicionales que amplı́an las posibilidades de VisSim:

• VisSim/Analyze: es un sistema interactivo para el diseño y análisis de sistemas de


control. Calcula y realiza los diagramas de Bode, Nyquist y lugar de las raices entre
otras posibilidades. Permite el análisis de estabilidad de los sistemas de control en
bucle cerrado.
28 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

Figura 1.10: Ejemplo de simulación con VisSim

• VisSim/C-Code: es un generador de código en lenguaje C en el que están inclu-


idas instrucciones para la adquisición de datos, y la generación de señales de con-
trol a través de diferentes tarjetas de entrada/salida. Soporta enlaces (”linkados”)
dinámicos con archivos ”.DLL”creados por el usuario. También tiene la posibilidad
de generar código C para crear archivos ”.DLL”.

• VisSim/Real Time: genera código para usar las tarjetas de entrada/salida con blo-
ques desde la interface gráfica.
1.10. PROGRAM CC 29

1.10 Program CC

Program CC es un programa de ayuda al diseño de controladores asistido por computador


(Thompson, 1988). Entre sus principales caracterı́sticas se pueden destacar: 1) es una
herramienta de ayuda al análisis, diseño y comprensión de sistemas lineales de control; 2)
es útil para la simulación, la evaluación de modelos y el diseño analı́tico de sistemas de
control; 4) facilita el empleo de una amplia variedad de medidas en el dominio del tiempo
y de la frecuencia; 5) incorpora una librerı́a de ”macros” ampliable para el diseño de
controladores tanto con técnicas clásicas como avanzadas; 6) trabaja con una formulación
entrada-salida, ası́ como en el espacio de estados.

Los tópicos de control que trata son: control clásico, sistemas muestreados, con-
trol multivariable, sistemas muestreados con múltiples frecuencias de muestreo, Control
Óptimo y Control Robusto. Emplea las transformadas de Laplace y Z, realiza manipu-
lación simbólica con funciones de transferencia y matrices de funciones de transferencia;
también emplea la representación en el espacio de estados.

Otros rasgos del Program CC versión 4 son: 1) está modularizado en 40 programas


separados, 2) almacena los datos en ficheros ASCII, 3) trabaja en diferentes niveles de
comandos: CC (comandos de funciones de transferencia), state (comandos en el espa-
cio de estados), data (manipulaciones de ficheros de datos), macro (creación y edición
de macros), y zeros (ceros de polinomios). Tanto en en el nivel de comando cc como
en state se puede estar en modo analog (tiempo continuo) como en modo digital
(tiempo discreto).

Una utilidad muy especial es la posibilidad de manipular algebraicamente las fun-


ciones de transferencia, como se muestra en el ejemplo simple que se pone a continuación:
se calcula la función de transferencia en lazo cerrado del sistema de control del rumbo de
un buque mediante un regulador PID, y se muestra la respuesta temporal a un cambio de
rumbo tipo escalón unidad,

G=0.2/(s*(80*s+1))
Gr=0.1*(1+50*s/(0.1*s+1)+1/120*(1/s))
Glc=G*Gr/(1+G*Gr)
time,Glc,3,aut

También puede obtenerse la respuesta temporal a partir de una representación en el


espacio de estados, empleando los siguientes comandos:
30 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

state
ocf,Glc,Plc
simulation,Plc,1,1,1,1,1500,0.1,10
plot,Plc.Y,tr,auto

si bien basta con,

simulation,Plc

ya que el resto de parámetros se pueden introducir según se van solicitando por el pro-
grama desde el teclado; y que son: 1) tipo de entrada (en este caso, ”1 − > escalon”),
2) canal de entrada (”1 − > entrada única”, en el caso de sistema multivariable habrı́a
varios canalas de entrada), 3) altura o amplitud de la señal (se toma amplitud unidad),
4) estado inicial (se considera que inicialmente todas las variables de estado son cero),
5) tiempo de simulación (”1500 segundos”), 6) paso de integración (se toma ”0.1 segun-
dos”), 7) cada cuantos cálculos se almacena un dato en el fichero $$Plc.Y para posterior
tratamiento (”cada 10 cálculos”). En la figura 1.11 se tiene la respuesta temporal que se
obtiene en lazo cerrado para un cambio de rumbo tipo escalón unidad. Una utilidad del
CC es que pueden construirse macros de instrucciones (extensión ”.MAC”) que facilita
y flexibiliza el empleo de la potencialidad del programa CC.

Por otro lado, se tiene que Program CC (versión 4): no trabaja con simulaciones de
sistemas no lineales, ni con identificación de parámetros, tampoco emplea manipulación
gráfica de diagramas de bloques. Su mayor atractivo para el control clásico lo supone la
manipulación simbólica de funciones y matrices de transferencia; sin embargo, como ya
se ha mencionado, incorpora también el tratamiento en el espacio de estados y técnicas
avanzadas de control tales como por ejemplo las conocidas H2 , LQG, LQG/LTR, IMC
y H∞ . También es destacable el conjunto de comandos y macros para la obtención de
modelos de orden reducido a partir tanto de su representación entrada-salida como de la
representación matricial en el espacio de estados (Thompson, 1988).

1.11 Matlab y Simulink

MATLAB (MATrix LABoratoy) se puede considerar que se está convirtiendo en una her-
ramienta software estándar para la comunidad cientı́fica y técnica. Un dato significativo es
1.11. MATLAB Y SIMULINK 31

Figura 1.11: Respuesta a cambio de rumbo (Program CC)

que la mayorı́a de programas de simulación y diseño tienen en cuenta en sus opciones una
interface para utilizar o crear ficheros de datos compatibles con Matlab. Éste es a la vez
un lenguaje de programación y un entorno para el cálculo numérico, cálculo simbólico
y visualización gráfica. Integra funciones para el análisis numérico, análisis estadı́stico,
factorización y descomposición, procesamineto de la señal y operaciones con matrices,
entre otras muchas utilidades matemáticas (Math Works, 1995).

Permite construir al usuario utilidades propias para resolver problemas especı́ficos.


Dispone de un conjunto de librerı́as de aplicaciones especı́ficas llamadas ”toolbox”, las
cuales consisten en una colección de funciones que dan solución a problemas especı́ficos
en áreas como por ejemplo, el control automático, la identificación de sistemas, y proce-
samiento de la señal; que permiten al usuario centrarse en la resolución del problema,
relegando a un segundo plano las labores propias de la programación. A continuación se
da una lista de algunas de las ”toolbox” disponibles:

• Control System Toolbox


• Frequency-Domain System Identification Toolbox
• Fuzzy Logic Toolbox
32 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

• Higher-Order Spectral Analysis Toolbox

• Image Processing Toolbox

• Model Predictive Control Toolbox

• μ-Analisys and Synthesis Toolbox

• Neural Network Toolbox

• Nonlinear Control Design Toolbox

• Optimization Toolbox

• Quantitative Feedback Theory Toolbox

• Robust Control Toolbox

• Signal Processing Toolbox

• Spline Toolbox

• Statistics Toolbox

• Symbolic Math Toolbox

• System Identification Toolbox

Como ejemplo simple de empleo de la simulación con algunas funciones de Matlab,


a continuación se da el listado de un fichero ”script file” que realiza la simulación del
movimiento de balance de un buque, empleando el modelo matemático descrito anterior-
mente en el apartado referente al ACSL. En la figura 1.12 se tiene la respuesta temporal
obtenida al ejecutar el script file siguiente:

===================================================================
% ROLLMJ1.M
%
% Ejemplo de programa para MATLAB (script file)
% Obtiene la respuesta temporal del movimiento de balance de
% un buque que tiene un angulo de escora inicial de 15 grados
%
%
Kfi=0.2; % ganancia estacionaria
% angulo_de_balance/angulo_de_aletas
1.11. MATLAB Y SIMULINK 33

wn=1/3; % frecuencia natural de balance


xi=0.3; % coeficiente de amortiguamiento
a=2*xi*wn;
% funcion de transferencia
%
% G(s) = num(s) / den(s) = fi(s) / alfa(s)
% fi: angulo de balance (y)
% alfa: angulo de estabilizadores (u)
%
num=Kfi*(wnˆ2); % numerador de G(s)
den=[1, a, wnˆ2]; % denominador de G(s)

% realizacion en el espacio de estados


[A,B,C,D]=tf2ss(num,den);

x00=15/C(2);
X0=[0; x00]; % vector de estado inicial: 15 grados
%
t=0:0.02:50; % tiempo, de 0 a 50 segundos
%
% variable de entrada (aletas replegadas)
u=zeros(size(t));
%
% Simulacion
y=lsim(A,B,C,D,u,t,X0);
%
plot(t,y,’w’) % grafica de respuesta temporal
xlabel(’tiempo (seg)’)
gtext(’angulo de balance (grad)’)
===================================================================

Simulink

SIMULINK es una herramienta software especı́fica para la simulación en el entorno Mat-


lab (Math Works, 1993). Consiste en un entorno gráfico o de programación visual para
la simulación de sistemas dinámicos que lo hace una herramienta rápida e intuititva para
la programación de modelos matemáticos, con la cual las modificaciones en el modelo se
hacen de forma visual, sin esfuerzo de programación y los resultados son inmediatos. Se
puede considerar que Simulink es el equivalente de Math Works al VisSim de Visual Solu-
tions, sin embargo, el primero dispone además dispone de todas las funciones de Matlab
34 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

Figura 1.12: Evolución del ángulo de balance de un buque (Matlab)

de propósito general y de sus toolbox.

Con Simulink se dispone de una clase de ventana denominada block diagram windows
donde se crean la estructura de los modelos en forma de diagrama de bloques editándolos
con el ratón. Los bloques que estructuran los modelos pueden extraerse de la biblioteca de
bloques que contiene Simulink y que están agrupados bajo las leyendas de: Sources,
Sinks, Discrete, Linear, Nonlinear, Connections, Extra. O bi-
en, se pueden crear nuevos, caracterizando su comportamiento con funciones de Matlab,
ya que cualquier función de Matlab puede llamarse e implementarse en Simulink, como
un bloque más.

En la figura 1.13 se muestra la estructura de bloques en Simulink de un sistema de


control en lazo cerrado. Este sistema tiene la particularidad de que emplea un regulador
basado en la lógica borrosa (fuzzy) (Driankov et al., 1993). En este ejemplo se puede
observar cómo un bloque puede contener llamadas a comandos, funciones (functions),
o programas (script files) de Matlab ası́ como a programas externos (”.EXE”). En este
caso el bloque de la figura etiquetado como ”Editor Fuzzy” sirve para ejecutar un editor
de reglas fuzzy llamado ”fred.exe”. Los otros elementos del sistema están agrupados en
bloques que corresponden a: 1) la planta (modelo matemático de un buque basado en el
1.11. MATLAB Y SIMULINK 35

Figura 1.13: Sistema de control de buque para Simulink

modelo de Nomoto), y actuador (modelo matemático de la máquina del timón y pala del
timón) (ver capı́tulo iii); 2) controlador basado en la lógica borrosa; 3) elementos de
setpoint, comparador (sum), reloj (variable tiempo), y variables a almacenar en memoria
o espacio de trabajo (workspace). También se tienen tres bloques adicionales que sirven
respectivamente para representar gráficamente los resultados de las simulaciones, para la
actualización del regulador, y para seleccionar el tipo de buque.

En la figura 1.14 se muestran con más detalle los bloques correspondientes al contro-
lador, planta y actuador. En esta figura se pueden ver las constantes de normalización y
desnormalización del controlador, ası́ como un bloque que llama a la función infer.m de la
”fuzzy logic toolbox” (Babuska, 1993), que es la que realiza la inferencia a partir del con-
junto de reglas definido, y proporciona el valor numérico de la variable de control (orden
de timón). Los bloques di (t), do (t) se utilizan para modelar las perturbaciones actuantes
36 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

Figura 1.14: Simulación con Simulink, control fuzzy de un buque

sobre el sistema.

El resultado de la simulación para un set-point de cambio de rumbo de 10 grados para


un buque tipo carguero (ver capı́tulo iii) con velocidad de 15 nudos se muestra en las
figuras 1.15 y 1.16. En la primera se ve como cambia el rumbo en función del tiempo, y
en la segunda se tiene la trayectoria del buque en el plano horizontal.

Como un ejemplo de sistema multivariable (en este caso con tres entradas y tres sal-
idas) se incluye el diagrama de bloques de Simulink de la figura 1.17. En este diagrama
se distinguen los siguientes elementos: 1)elementos de cambio de consigna o set-point y
transductores (de temperatura a tensión eléctrica), 2) elementos para generar las perturba-
ciones, 3) elemento comparador o restador que calcula las señales de error, 4) regulador
multivariable, o también un conjunto de tres reguladores independientes de simple entra-
1.11. MATLAB Y SIMULINK 37

Figura 1.15: Set-Point y cambio de rumbo con Simulink

da y simple salida, 5) planta o proceso a controlar G (horno industrial con tres zonas de
calentamiento), 6) electrónica de potencia y actuadores (resistencias eléctricas) Gpot, 7)
grupo de sensores/transductores de temperatura Gs, 8) lı́neas de realimentación negativa
(”feedback”) y 9) lı́neas que van a bloques de variables para almacenar ( en el work space
de Matlab) los valores numéricos que se calculan durante la simulación.

Módulos adicionales de Matlab y Simulink

Tanto el código del lenguaje propio de Matlab, como el de Simulink, son interpretados.
Por ello, para sistemas de cierta complejidad puede ocurrir que el tiempo necesario para
realizar la simulación sea considerable. Por ello se acude a la posibilidad de trabajar con
código compilado creando archivos con extensión ”.DLL”, ”.MEX”, o ”.EXE”con alguno
de los compiladores de ”C”con que Matlab puede trabajar. Existen distintas formas de
crear código compilado desde Matlab (versión 4.2c.1):

• Compiler C: permite a partir de archivos ”.m”(con el lenguaje interpretado nativo


de Matlab) generar código en C (”.c”) que mediante compilación y enlazamine-
38 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

Figura 1.16: Trayectoria en el plano del buque con Simulink

to (linkado) producen archivos ”.mex”, que son ejecutables dentro de Matlab, o


archivos ”.exe”ejecutables desde MS-DOS y Windows.

• Simulink Accelerator: permite crear archivos ”.mex”, ejecutables desde Matlab,


a partir del diagrama de bloques implementado en Simulink. Generando primero
código C que se compila y se enlaza para obtener el correspondiente archivo ”.mex”.

• C Math Library: está compuesta de unas librerı́as de enlace dinámico, ”DLL”,


que contienen la mayorı́a de las funciones de Matlab, pudiendo disponer de ellas
en lenguaje C escrito por el usuario para obtener un archivo ejecutable ”.exe”bajo
MS-DOS y Windows.

• Real Time Workshop: permite desde Matlab comunicarse con el exterior a través
de tarjetas de entrada/salida de varios fabricantes. Además produce archivos eje-
cutables ”.exe”para aplicaciones en tiempo no real a partir de diagrama de bloques
diseñado bajo simulink, generando primero código en C del sistema diseñado, que
se compila y enlaza con otras librerı́as para crear el archivo ejecutable ”.exe”.
La otra posibilidad es incluir en el diagrama de bloques los ’drivers’ de la tarjeta
con la que se trabaja y generar un archivo ejecutable que haga uso de la tarjeta para
adquirir y sacar datos analógicos y/o digitales.
1.11. MATLAB Y SIMULINK 39

Figura 1.17: Modelado de sistema multivariable con Simulink

Una opción más potente con la que puede trabajar Real Time Workshop es mediante
tarjetas basadas en DSP (Digital Signal Processing).

La versión 5 de Matlab incorpora las nuevas caracterı́sticas con respecto a la versión


4.2c.1. Algunas de éstas son:

• Posee un sistema de programación visual para la creación de pantallas gráficas


que contengan menus de control, botones, cursores deslizantes, zonas que pre-
senten gráficos, etc, facilitando el uso de las aplicaciones creadas bajo Matlab, y
dotándolas de un entorno amigable en el que introducir y visualizar datos requeri-
dos y emitidos por la aplicación.
En la versión anterior esto mismo se hace con el lenguaje de programación propio
40 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

de Matlab, pero el esfuerzo de programación es mucho mayor y mucho menos


intuitivo que con la nueva versión.

• El acceso al núcleo de MAPLE V, programa de cálculo simbólico, desde Matlab,


ya es posible en la versión actual, sin embargo, en la nueva versión la sintaxis para
este acceso es más directa que hasta ahora.

• En la nueva versión de SIMULINK existe la posibilidad de tratar los bucles alge-


braicos que puedan darse a la hora de la simulación, a pesar de la correcta imple-
mentación del modelo. Hasta ahora, Matlab sólo avisaba de la existencia de éstos.

1.12 Comparación entre lenguajes de simulación

En esta sección se realiza mediante un ejemplo la programación del mismo modelo matemático
en diferentes herramientas para simulación, como son Tutsim, Matlab y Vissim. La idea
es compararlos entre sı́, y ver cómo ha evolucionado la programación basada en un dia-
grama de simulación en los últimos años. Como ejemplo ilustrativo de esto último se han
elegido Tutsim y Vissim.

Tutsim es una programa de simulación de sistemas continuos, que se desarrolla en la


Twenty University of Technology de Holanda en los años setenta. Su nombre procede de
Twenty University of Technology SIMulation program. Inicialmente se crea una primera
versión para ”main frame” (PDP-11); posteriormente se desarrollan versiones para Apple
y CP/M, ası́ como una primera versión para IBM-PC que será la versión 1.0 (Applied i,
1986).

En este apartado se describen algunas de las cracterı́sticas de la versión 5.0 (año 1986),
y se muestra con un ejemplo el desarrollo necesario para obtener una simulación com-
parándolo con VisSim. El objetivo que se persigue es simplemente que sirva al lector
de ilustración de un ejemplo de programa de simulación situado entre: a) aquellos que
requieren escribir las ecuaciones del modelo matemático (tales como SIMNON y ACSL),
y b) los actuales lenguajes de simulación que emplean la programación visual (como por
ejemplo VISSIM y SIMULINK). El Tutsim (versión 5.0) es más parecido a los segundos,
únicamente que en vez de definir la estructura, bloques y conexiones de forma gráfica o
visual, lo hace definiendo la estructura en forma de código. Una caracterı́stica destacable
del Tutsim es que se diseñó para poder simular sistemas modelados mediante la técnica
Bond Graph, estableciendo unas estructuras de bloques equivalentes a los elementos uti-
lizados en Bond Graph (Applied i, 1986).
1.12. COMPARACIÓN ENTRE LENGUAJES DE SIMULACIÓN 41

Modelo matemático del proceso

En este apartado no se pretende realizar una simulación de un sistema de control del


rumbo de un buque en lazo cerrado, sino únicamente una simulación en lazo abierto, a
fin de: a) utilizar el Tutsim, b) ver el diagrama de simulación del sistema empleado y c)
utilizar el Matlab para tratamiento posterior y visualización de resultados.

• Modelo matemático del proceso. Se considera un sistema de segundo orden con


acción integral, caracterizado por la ganancia K y la constante de tiempo τ (ver
capı́tulo iii). La entrada al sistema es la variable u (orden de ángulo de timón) y
la salida es la variable y (variación de rumbo con respecto al rumbo inicial):

τ ÿ + ẏ = Ku

El sistema se caracteriza porque para un valor constante de su entrada

u = uo

la derivada de la salida ẏ adquirirá un valor constante transcurrido un tiempo lo


suficientemente grande (fase estacionaria), dado por,

ẏ = ẏo = Kuo

• Modelo matemático del actuador (máquina de timón y timón). Se considera que


si la señal de entrada al actuador no es excesiva, el actuador trabaja en zona lineal,
y se puede modelar matemáticamente mediante una ecuación diferencial de primer
orden de la forma,

τu u̇ + u = Ku uc

donde se considera que uc es la variable de entrada al actuador (orden de ángulo de


timón), y u es la variable de salida del actuador (ángulo de la pala del timón). Este
sistema también viene caracterizado por su constante de tiempo τu y su ganancia
estacionaria Ku .
El actuador tiene unas limitaciones fı́sicas, que se concretan en este caso en que si
los valores de la magnitud de entrada quedan fuera del intervalo,

[−35, 35] (grados)


42 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

el actuador se satura, teniendo el siguiente comportamiento:

si u > 35 entonces u = 35

si u < −35 entonces u = −35

Los valores numéricos empleados en la simulación son los siguientes:

• Parámetros del modelo matemático del proceso o planta:

– Ganancia estacionaria K.

K = 0.4 (grados/segundo)/grados

– Constante de tiempo τ .

τ = 50 segundos

• Parámetros del modelo matemático del actuador:

– Ganancia estacionaria Ku .

Ku = 1.0 grados/grados

– Constante de tiempo τu .

τu = 0.5 segundos

Diagrama de simulación

A partir de las ecuaciones de los modelos matemáticos respectivos se pasa a obtener el


diagrama de simulación, como paso previo a lo que es la codificación para Tutsim, VisSim
o Simulink.
1.12. COMPARACIÓN ENTRE LENGUAJES DE SIMULACIÓN 43

Figura 1.18: Diagrama de simulación para Tutsim

• Diagrama de simulación del proceso.


A partir de su modelo matemático, se despeja la derivada de mayor orden, que en
este caso es de orden dos, y se obtiene:

ÿ = (K/τ )u − ẏ/τ

con los valores numéricos respectivos: K = 0.4 y τ = 50.


La variable de entrada a este sistema es la variable de salida del actuador u (ver
figura 1.18).
• Diagrama de simulación del actuador.
En este caso se despeja u̇ de la ecuación diferencial correspondiente a su modelo
matemático, quedando:
44 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

u̇ = (Ku /τ )u − u/τ

con los valores numéricos respectivos: Ku = 1 y τu = 0.5.


Como variable de entrada a este sistema se va a utilizar una señal tipo senoidal,
caracterizada por su frecuencia (F ) y su amplitud (A) (fı́sicamente serı́a la orden de
timón).

uc = A sen(2πF t)

Se emplean los siguientes valores:

F = 0.01 Hz, A = 10.0 grados

El diagrama de simulación completo, con los bloques a utilizar y la nomenclatura de


Tutsim se tiene en la figura 1.18

Empleo de Tutsim y VisSim

A continuación se dan los pasos a seguir para introducir los datos del modelo matemático
del sistema completo a simular en TUTSIM, realizando a la vez una comparación con el
procedimiento seguido si se emplea VISSIM.

1. Una vez realizado el diagrama de simulación se numeran los distintos bloques y


se introducen indicando las entradas que recibe cada bloque del resto. Para esta
operación hay que elegir del menú de entrada la opción,

K =⇒ ”Input model with keyboard”

Con VISSIM se elige new del menú file mediante el empleo del ratón. Para intro-
ducir los bloques correspondientes se selecciona blocks, y se van interconectando
gráficamente mediante el ratón que controla el movimiento del cursor en la pantalla.
2. Tras identificar, numerar y asignar las entradas de cada bloque, pasamos a introducir
los parámetros. Para ello, cuando aparezca en pantalla
COMMAND:
se introduce el comando
1.12. COMPARACIÓN ENTRE LENGUAJES DE SIMULACIÓN 45

CP =⇒ ”Asignación de parámetros”

VISSIM numera internamente los bloques de forma automática, de forma que el


usuario no los identifica por un número, sino que lo hace visualmente por su posi-
ción en la pantalla. Para asignar valores diferentes a los que emplea por defecto
a cada bloque, se coloca el cursor sobre el bloque en concreto, se pulsa el botón
de la izquierda del ratón dos veces y aparece una ventana solicitando los valores
numéricos; asignado los valores, se pulsa aceptar.

3. A continuación se introducen los datos necesarios para la posterior representación


gráfica de la respuesta temporal, y para ello se utiliza el comando,

CB =⇒ ”Change Plot Blocks”

• Horz: 0, 0 1000
significa que se va a representar sobre el eje de abcisas la evolución temporal
comprendida entre t=0 y t=1000 segundos.
• Y1: 10, -15, 15
indica los valores mı́nimo (-15) y máximo (+15) de ordenada para la repre-
sentación de la variable seleccionada (la salida del bloque 10 del diagrama de
simulación).
Con VISSIM se puede emplear un bloque tipo ”plot” a cuyas entradas se
conectan las variables de interés del sistema que se quieran representar gráficamente
tras la simulación. Para ello se selecciona blocks, signal consumer y
finalmente plot. Para indicar tipo de gráfica, lı́mites, etiquetas, tı́tulo, etc.,
se hace doble ”click”en pantalla sobre el bloque ”plot”.

4. Ahora se introducen una serie de parámetros relativos a los cálculos, como son el
tiempo de simulación (”final time”) y el intervalo de cada cuanto tiempo (”delta
time”) se almacenan los datos calculados para posterior representación gráfica o
almacenamiento en fichero. Para ello se utiliza el comando

CT =⇒ ”Change Timing”

Con VISSIM se selecciona del menú principal simulate, y dentro de éste simulation
setup; introduciendo los valores de tiempo de simulación, ası́ como el tipo de
método de integración.

5. El último paso es la realización de la simulación. Para ello se pueden utilizar alguna


de las siguientes opciones:
46 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

• Presenta una gráfica en pantalla a medida que se va ejecutando la simulación.

SD =⇒ ”Simulation Display”

• En este caso se presentan los datos de simulación de forma numérica en pan-


talla.

SN =⇒ ”Simulation Numeric”

• Los datos de la simulación se almacenan en un fichero ASCII, para posterior


utilización.

SF =⇒ ”Simulation File”

• Los datos de la simulación también se pueden almacenar en un fichero tipo


binario en formato de MATLAB (tipo ”.MAT”).

MF =⇒ ”Matlab File”

• Si se desean sacar los datos resultantes de la simulación directamente a impre-


sora, se puede hacer con:

SP =⇒ ”Simulation Printer”

Para hacer la simulación con VISSIM se selecciona simulate, y dentro de éste


go. A medida que la simulación se lleva a cabo se visualizan mediante bloques tipo
”plots” la evolución de las variables seleccionadas (ver figura 1.19). Mediante un
bloque tipo ”display” se muestra numéricamente. Los valores de las variables
seleccionadas se pueden almacenar en ficheros tipo ASCII mediante un bloque tipo
”export”. También puede importarse datos de un fichero ASCII mediante un bloque
tipo ”import”. Para introducir la función de transferencia o la representación de
estado de un sistema se utiliza linear system del menú blocks. Este tipo
de bloque también puede emplearse para importar una representación de estados
procedente de MATLAB en formatos ”.Mo ”.MAT”.

A continuación se da un listado del modelo matemático del sistema para TUTSIM,


y denominado ”DINMJ1.SIM”. Sale en pantalla al introducir el comando L, tras haber
seguido los pasos del apartado anterior para introducir el modelo matemático del sistema.

Model File: DINMJ1.SIM


1.12. COMPARACIÓN ENTRE LENGUAJES DE SIMULACIÓN 47

Figura 1.19: Diagrama y simulación con VISSIM

Date: / /
Time: /

Timing: 0.5000000 , DELTA ; 500.0000 , RANGE

PlotBlocks and Scales:


Format:
BlockNo, Plot-MINimum, Plot-MAXimum; Comment
0, 0.0000 , 500.0000 ; tiempo
1, -20.0000 , 20.0000 ; entrada
8, -5.0000 , 5.0000 ; derivada de salida
11, 0.0000 , 50.0000 ; salida
, , ;
48 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

MODEL:

10.0000 1 FRQ
0.0100
1.0000 2 GAI 1
0.5000 3 ATT 2
4 SUM 3 -6
0.0000 5 INT 4
0.5000 6 ATT 7
-35.0000 7 LIM 5
35.0000
0.4000 8 GAI 7
50.0000 9 ATT 8
10 SUM 9 -13
0.0000 11 INT 10
0.0000 12 INT 11
50.0000 13 ATT 11

Para iniciar la simulación se hace: MF, con lo que los datos de la simulación se
almacenan en un fichero ”.MAT”para MATLAB.

Terminada la simulación con Tutsim o VisSim se emplea un ”script file” llamado


”GRAFIMJ1.M”para el tratamiento desde MATLAB de los datos resultantes de la simu-
lación. A continuación se da el listado de dicho programa:

% GRAFIMJ1.M
%
% Programa para visualización de respuesta temporal
% procedente de simulación con TUTSIM, programa:
% dinmj1.sim
% que almacena los datos de simulación en fichero
% datmj1.mat
%
load datmj1.mat
d=datmj1’;
1.12. COMPARACIÓN ENTRE LENGUAJES DE SIMULACIÓN 49

Figura 1.20: Respuestas temporales de la simulación

t=dat(:,1);
uc=dat(:,1);
dy=dat(:,1);
clg
hold off
plot(t,uc,t,dy*10)
xlabel(’tiempo (seg)’)
gtext(’dy * 10 (grad/seg)’)
gtext(’u (grad)’)

% *********** fin de grafimj1.m ***********

La simulación se puede hacer también directamente con MATLAB empleando la fun-


ción ”LSIM.M”, si bien, en este caso, se supone que se trabaja en zona lineal, de forma
que no se tiene en cuenta la saturación del actuador. Para tener en cuenta los elementos no
lineales se podrı́a programar directamente en Matlab, o utilizar Simulink. A continuación
se da el listado de un programa en MATLAB llamado ”DINMJ2.M”para la simulación
50 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

del sistema:

% DINMJ2.M
%
% Realiza la simulación en MATLAB para un sistema compuesto
% de actuador y planta
% Corresponde al mismo caso (zona lineal) del sistema
% simulado con TUTSIM con el programa dinmj1.sim
%
clc
disp(’*************** DINMJ2.M ***************’)
disp(’ ’),disp(’ ’)
disp(’pulse tecla para continuar’)
pause
clc

%====================================================
% Tiempo de simulación
%====================================================

dtgraf=input(’tiempo entre puntos de la grafica (seg) ’);


tsim=input(’de tiempo de simulacion (seg) ’);
%
t=0:dtgraf:tsim;

%====================================================
% Actuador (zona lineal)
%====================================================

Ku=1;
tauu=0.5;

nGm=Ku;
dGm=[tauu,1];

%===================================================
1.12. COMPARACIÓN ENTRE LENGUAJES DE SIMULACIÓN 51

% Proceso o planta
%===================================================

K=0.4;
tau=50;

nG=K;
dG=[tau,1,0];

%==================================================
% Señal de entrada
%==================================================

A=10;
f=0.025;

uc=A*sin(2*pi*f*t);

%==================================================
% Sistema compuesto
%==================================================

nGp= conv(nG,nGm);
dGp= conv(dG,dGm);

dGpd=conv(dGm,[tau,1]);

%==================================================
% Simulaciones
%==================================================

u=lsim(nGm,dGm,uc,t);
y=lsim(nGp,dGp,uc,t);
dy=lsim(nGp,dGpd,uc,t);
52 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

%==================================================
% Almacenamiento de datos
%==================================================

v=[t’,u,y,dy];
save datmj1.dat v /ascii

%==================================================
% Representaciones gráficas
%==================================================

clg
hold off

plot(t,y,’r’,t,u,’r--’,t,dy*5,’r-.’)
xlabel(’tiempo (seg)’)
gtext(’y (grad’)
gtext(’u (grad)’)
gtext(’(dy/dt)*5 (grad/seg)’)

% ************ fin de dinmj2.m **************

En la figura 1.20 se tiene la respuesta temporal obtenida por la simulación del sistema
descrito anteriormente. En esta figura se muestra la salida (y), la señal de entrada al
sistema (uc ), y la derivada de la variable de salida multiplicada por cinco (5(dy/dt) (para
que sea más visible en la gráfica).

Los datos procedentes de la simulación se almacenan en un fichero ASCII denom-


inado ”datmj1.dat”(ver listado de ”dinmj2.m”), cuyo contenido se lista parcialmente a
continuación, a fin de sirva para ilustrar los resultados numéricos obtenidos, y la forma
en que éstos se guardan en el fichero.
1.12. COMPARACIÓN ENTRE LENGUAJES DE SIMULACIÓN 53

tiempo entrada y dy/dt


(seg.) (grad.) (grad.) (grad/seg)

0.0000000e+000 0.0000000e+000 0.0000000e+000 0.0000000e+000


5.0000000e+000 6.3639931e+000 1.7367972e-001 1.1249179e-001
1.0000000e+001 9.7070880e+000 1.4528199e+000 4.1495796e-001
1.5000000e+001 7.3639344e+000 4.3177471e+000 7.0845339e-001
2.0000000e+001 7.0708797e-001 8.2041330e+000 7.9877441e-001
2.5000000e+001 -6.3639610e+000 1.1843290e+001 6.1285411e-001
3.0000000e+001 -9.7070880e+000 1.4015440e+001 2.4136226e-001
3.5000000e+001 -7.3639344e+000 1.4273369e+001 -1.1459029e-001
4.0000000e+001 -7.0708797e-001 1.3212661e+001 -2.6142486e-001

. . . . . . . . . . . .

2.0000000e+002 -7.0708797e-001 2.3555403e+001 -4.6827970e-001


2.0500000e+002 6.3639610e+000 2.1488782e+001 -3.1381013e-001
2.1000000e+002 9.7070880e+000 2.0739522e+001 2.9223921e-002
2.1500000e+002 7.3639344e+000 2.1769077e+001 3.5942679e-001
2.2000000e+002 7.0708797e-001 2.3994749e+001 4.8296209e-001
2.2500000e+002 -6.3639610e+000 2.6131231e+001 3.2709530e-001
2.3000000e+002 -9.7070880e+000 2.6943703e+001 -1.7202996e-002
2.3500000e+002 -7.3639344e+000 2.5971345e+001 -3.4854981e-001

. . . . . . . . . . . .

4.6000000e+002 7.0708797e-001 2.4286936e+001 4.7711836e-001


4.6500000e+002 -6.3639610e+000 2.6395612e+001 3.2180767e-001
4.7000000e+002 -9.7070880e+000 2.7182925e+001 -2.1987440e-002
4.7500000e+002 -7.3639344e+000 2.6187802e+001 -3.5287896e-001
4.8000000e+002 -7.0708797e-001 2.3993286e+001 -4.7703736e-001
4.8500000e+002 6.3639610e+000 2.1884995e+001 -3.2173439e-001
4.9000000e+002 9.7070880e+000 2.1098030e+001 2.2053754e-002
4.9500000e+002 7.3639344e+000 2.2093469e+001 3.5293896e-001
5.0000000e+002 7.0708797e-001 2.4288271e+001 4.7709166e-001
54 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

1.13 Otros lenguajes para simulación

Exite una gran variedad de lenguajes de modelado y simulación, que se están actualizando
y ampliando continuamente. En lo que sigue se hace un breve referencia a algunos de
ellos, sin pretender abarcar todos los tipos de software para simulación que existen en la
actualidad.

Dymola (Elmqvist, 1996) es un lenguaje orientado a objetos, a la vez que un lenguaje


para el modelado de sistemas complejos (lenguaje de modelado orientado a objetos). Se
caracteriza por definir los modelos de los sistemas empleando una estructura jerárquica
compuesta por submodelos; lo cual facilita la reutilización de los modelos creados medi-
ante el uso de librerı́as que contengan clases de modelos ( model class) y el empleo de
la propiedad de la herencia ( inheritance) como propiedad caracterı́stica de los lenguajes
de programación orientados a objetos (ver apéndice sobre análisis orientado a objetos).
Las conexiones entre submodelos se establecen mediante la definición de los ”cuts”, que
sirven para modelar el acoplamiento fı́sico existente entre los distintos componentes del
sistema real.

Sirve para simular sistemas de tiempo continuo, de tiempo discreto, y sistemas


hı́bridos, tratando el tema de eventos discretos. Para ello, dispone de una forma simple
para la incorporación de ecuaciones discontinuas e instantáneas, tales como las nece-
sarias para modelar procesos como la fricción, el impacto, los elementos de conmutación,
etc. Incorpora el tratamiento de eventos (ocurrencia instantánea que puede modificar el
estado del sistema) tanto en el tiempo (se conoce el instante en que se produce la discon-
tinuidad; por ejemplo: un proyectil que se sabe que hace explosión tres segundos después
de su lanzamiento), como en el estado (no se conoce el instante en que se produce la
discontinuidad, dependiendo del valor de alguna variable, por lo que debe calcularse; por
ejmplo: rebote de un cuerpo contra el suelo) cosa que con otros lenguajes de simulación
se puede hacer, pero requiere mucho más tiempo para la realización del código por parte
del usuario.

El sistema emplea la manipulación simbólica para conseguir una simulación más efi-
ciente. Realiza un tratamiento de la asignación de la causalidad computacional, deci-
diendo sobre la relación que debe emplearse para calcular cada incógnita; cosa que en la
mayorı́a de herramientas de simulación comerciales no se suele incluir, siendo necesario
que el modelo contenga explı́citamente la información acerca de su causalidad computa-
cional, lo cual dificulta el modelado modular. Otra caracterı́stica es la de tratamiento de
los bucles algebraicos, que a veces hace una simulación imposible mediante otros pro-
gramas comerciales si no se resuelven por el usuario, y que el Dymola puede resolver de
forma autónoma.
1.13. OTROS LENGUAJES PARA SIMULACIÓN 55

El programa incorpora una interface gráfica para el desarrollo del modelado y la


conexión de los distintos subsistemas, empleando para ello las librerı́as de modelos exis-
tentes, o las nuevas creadas por el usuario, permitiendo la animación 3D. Además, tiene
una interface para Matlab, puede generar código en lenguaje C, en ACSL, SimNon y
Simulink; además de para su propio entorno de simulación Dymosim. Dymola contem-
pla el tratamiento con modelos estructurados jerárquicamente, tales como los modelos
desarrollados con la técnica bond graph (Wiener y Cellier, 1993). Para concluir se puede
decir que la propiedad esencial de Dymola es su utilidad para el desarrollo de modelos de
sistemas de gran dimensión (Cellier, 1992). Otra herramienta de este tipo es el Omola
(Mattsson et al. 1993) cuyo entorno de simulación es el OmSim.

Los lenguajes de programación de propósito general, como por ejemplo Pascal, C,


Ada, Fortran o Basic también pueden emplearse para el desarrollo de simulación de
sistemas por ordenador; si bien, y a pesar de que se dispongan de unas amplias librerı́as de
funciones, procedimientos o subrutinas, en general el tiempo de programación requerido
va a ser superior al necesario si se emplean herramientas de simulación especı́ficas, tales
como las dadas en apartados anteriores.

Otros lenguajes de programación también utilizados son el GPSS, Siman, Simscript,


Slam y Modsim. El ModSim es un lenguaje de simulación de propósito general orienta-
do a objeto; puede incorporar librerı́as en C, y la estructura y sintáxis están basados en
Modula-2. Entre los simuladores y lenguajes para sistemas propiamente de eventos dis-
cretos como son los de manufacturación y gestion de material caben destacar los siguien-
tes: SimFactory, ProModel, AutoMod, Taylor, Witness, AIM y Arena. Para poder realizar
simulaciones de sistemas de manufactura se puede emplear por ejemplo el SimFactory
que es un simulador de factorı́a escrito en Simcript y Modsim (Banks et al., 1996).

Los lenguajes de simulación para sistemas discretos, por regla general, tienen muy po-
bres prestaciones para poder incorporar un sistema de tiempo continuo en la simulación.
Una de las excepciones la constituye COSMOS (Kettenis, 1989), que es un lenguaje
de simulación para sistemas continuos, discretos e hı́bridos. También hay que destacar
al paquete de software DESIRE (Korn, 1989), que incorpora además prestaciones espe-
ciales para el modelado y simulación de redes neuronales artificiales y sistemas de control
basados en la lógica borrosa.

Hay que mencionar también al MATRIXx como una herramienta software que incor-
pora una serie de prestaciones como son: modelado gráfico y simulación ( SystemBuild),
visualización y análisis matemático orientado a objetos ( Xmath), generación automática
de código para C y Ada ( AutoCode), generador de documentación de forma automática
( Documentlt), y prestaciones en tiempo real para evaluación y testeo de prototipos (
RealSim Series). Existen versiones para Windows 95, Windows NT y Unix (Integrated
56 CAPÍTULO 1. INTRODUCCIÓN AL MODELADO Y LA SIMULACIÓN

Systems, 1996).

Para finalizar este punto, consideramos necesario destacar que la herramienta de pro-
gramación empleada para desarrollar un proyecto de simulación va a depender de las
necesidades particulares de cada proyecto; si bien hay que destacar las siguientes carac-
terı́sticas deseables: 1) posibilidad de realización de la simulación tanto en tiempo real
como en tiempo acelerado y/o retardado; 2) ejecución de procesos de forma paralela e in-
dependiente (multiproceso), que sirvan para considerar los subsistemas como objetos que
están interconectados pero que su ejecución es independiente (tal y como lo hacen los
sistemas fı́sicos); 3) creación de un programa ejecutable independiente de la aplicación
con la que haya sido desarrollado; 4) posibilitar la conexión con elementos periféricos, a
fin de que la simulación pueda interactuar con el exterior.
Capı́tulo 2

Descripción del comportamiento


dinámico de un buque

2.1 Introducción

En este capı́tulo se realiza una descripción de la dinámica del buque desde un punto de
vista cualitativo, empleando en ocasiones expresiones y terminologı́a propias del entorno
marino, a fin de utilizar el propio lenguaje con el que está familiarizado el alumno de
Náutica, y que le sirva como puente de unión para los temas siguientes donde se pasa a
una descripción matemática de la dinámica del buque y de las perturbaciones ambientales
que sobre éste actuan. A la vez, le puede servir al lector no conocedor del tema marino,
como una introducción a algunos aspectos relacionados con el buque, para una mayor
motivación y una mejor comprensión de los capı́tulos siguientes.

2.2 El buque en navegación

Para un buque navegando con una cierta velocidad de crucero se tiene que la fuerza de
empuje vertical y el peso son iguales y de sentidos opuestos. El propulsor es el sistema
que proporciona la fuerza de empuje longitudinal, que hace que el buque se desplace
según la dirección del eje x, de un sistema de referencia situado en el propio buque y con
origen en su centro de gravedad (c.d.g), tal y como se muestra en la figura 2.1 (si bien hay
ocaciones en las que se toma como origen del sistema de referencia no el c.d.g, que puede

57
58CAPÍTULO 2. DESCRIPCIÓN DEL COMPORTAMIENTO DINÁMICO DE UN BUQUE

Figura 2.1: Sistema de referencia con origen en el c.d.g. del buque

cambiar con la carga, sino otro punto que es el centro de simetrı́a del buque).

La acción del propulsor también puede dar lugar a la aparición de una componente
lateral de velocidad, ya que en muchas ocasiones el buque cuenta con una sóla hélice o con
un número impar de ellas. Debido a ésto, el buque también puede tener una componente
de velocidad angular con respecto al eje z (guiñada). La propulsión de un buque viene
condicionada por el tipo de máquina que posea y por su modo de funcionamiento.

La capacidad de gobierno del buque se debe a la acción de la pala del timón, que al
meterse a una u otra banda provoca sobre el sistema los respectivos momentos o pares de
fuerzas, N y K (ver figura 2.1). Cuando el timón se mete a una banda, en mayor o menor
grado, la respuesta del buque será una caı́da (giro) hacia esa misma banda, producida por
un momento N que provoca el giro del buque con respecto al eje z. El momento K actúa
sobre el buque como consecuencia de la metida de timón y provoca una escora a la banda
contraria hacia la que se mete, provocando un giro con respecto al eje x.

El momento o par de fuerzas, M (ver figura 2.1), causante del movimiento de cabeceo
normalmente no adquiere un valor significativo debido a elementos propios del buque,
2.3. EFECTOS DE LAS OLAS 59

sino que fundamentalmente se debe al efecto de los agentes externos (olas y viento).

También hay que mencionar otros dos efectos a tener en cuenta como son las vibra-
ciones y la sustentación. El primero de ellos no afecta a la dinámica del sistema de forma
sensible, y las fuerzas que las provocan son de muy distinta naturaleza, determinada sólo
en casos muy puntuales (por ejemplo, la cavitación en la hélice). El segundo, puede llegar
a ser significativo en situaciones muy particulares de navegación (aguas someras y aguas
restringidas), y va acompañada de otros fenómenos tales como la alteración del asiento
(Lewis, 1989; Barbudo, 1991).

2.3 Efectos de las olas

El comportamiento de un buque en navegación está muy condicionado por el estado de


la mar, que se puede caracterizar entre otros parámetros por la dirección en que la recibe
el buque, por la velocidad de propagación y la altura de las olas, si es mar de viento o
tendida, por su caracterı́stica estocástica y regular.

Los movimientos caracterı́sticos imprimidos por las olas al buque son los conocidos
como guiñada, balanceo y cabeceo (ver figura 2.1). El movimiento conjunto de balance
y cabeceo provoca un movimiento resultante conocido como movimiento de cuchareo.

En el caso en que la mar se reciba por proa o amura, la frecuencia de encuentro del
buque con las olas es lógicamente más alta que con otras direcciones. En este caso las
fuerzas y momentos causantes de la guiñada, deriva y balanceo toman valores inferiores
en comparación con otras situaciones.

Cuando el perı́odo de encuentro de las olas se iguala o se aproxima al perı́odo natural


de cabeceo (periodo de oscilación natural del buque en el sentido longitudinal), aparece la
situación conocida como sincronismo longitudinal, por la cual la amplitud del movimien-
to de cabeceo del buque aumentarı́a con el encuentro de cada ola. La combinación del
sincronismo longitudinal y la llegada de la siguiente ola podrı́a dar lugar a que el buque
sumerja su proa y se hunda, ”se pase por ojo”. Esta situación extrema es dificil de alcan-
zar, debido a la irregularidad de las olas, y al valor elevado del par longitudinal adrizante
que posee el buque; sin embargo se pueden producir grandes movimientos de cabeceo.

Con la mar de aleta o de popa la frecuencia de encuentro con las olas disminuye. En
el caso particular en que la proa y la popa se encuentren en la cresta de una ola, el través
del buque se encontrará en el seno de ésta, y por tanto esa parte del casco desarrollará un
menor momento adrizante, provocando grandes ángulos de balance.
60CAPÍTULO 2. DESCRIPCIÓN DEL COMPORTAMIENTO DINÁMICO DE UN BUQUE

Figura 2.2: Cambios de la vertical aparente a lo largo del perfil de la ola

El efecto de sincronismo transversal se establece cuando el perı́odo de encuentro de


la ola coincide o toma valores muy similares al perı́odo natural de balance del buque.
Teóricamente, y supuesta la mar regular, el buque llegarı́a a volcar; pero en la práctica las
olas son irregulares, la adherencia del agua al casco ofrece resistencia al movimiento de
balance y la existencia de otras resistencias pasivas impiden que se alcance esta situación
extrema. Si bien en tales circunstancias el buque puede experimentar grandes movimien-
tos de balance, poco recomendables para la carga, maquinarias, la tripulación, y el pasaje
en su caso.

2.4 Efectos del viento sobre el buque

El viento es otro factor muy a tener en cuenta en navegación. Se suele caracterizar por
la superposición de dos componentes. Una es la que corresponde al viento medio, y
que se caracteriza por ser una corriente de aire horizontal y homogénea cuya dirección y
velocidad son constantes. La otra componente, conocida como viento turbulento, consiste
en una fluctuación estocástica.
2.4. EFECTOS DEL VIENTO SOBRE EL BUQUE 61

Figura 2.3: Asimetrı́a longitudinal debido a la escora

La situación más simple se da con viento en calma. Al desplazarse el buque a través de


la atmósfera, se ve sometido a una corriente de aire de igual dirección, velocidad y sentido
contrario al rumbo y velocidad que mantiene. Ello provoca una resistencia a la marcha
de éste. Si por el contrario, el viento no está en calma, caracterizándose por su velocidad
y dirección, el buque se verá afectado por un viento aparente cuya dirección y velocidad
resultan de la composición vectorial de ambas componentes. Este viento aparente es el
que se aprecia a bordo y no el real (ver figura 2.6).

Las perturbaciones que induce el viento sobre el buque son proporcionales a la su-
perficie de la obra muerta y superestructura enfrentada a él (ver figura 2.5). Conociendo
dichas superficies proyectadas respectivamente sobre los planos yz y xz, se pueden cal-
cular las correspondientes fuerzas y momentos (Iserwood, 1973). El viento ”hace abrir
al buque” hacia la banda de sotavento (hacia donde va el viento).

Para determinar el efecto del viento se determina la posición del centro vélico Cv
(centro geométrico de la superficie proyectada en cada caso). Normalmente la local-
ización del centro vélico está por encima del c.d.g. del buque, y no necesariamente, en
su misma vertical, ni en su plano diametral (plano que contiene al eje z y que pasa por
62CAPÍTULO 2. DESCRIPCIÓN DEL COMPORTAMIENTO DINÁMICO DE UN BUQUE

Figura 2.4: Perfil de una ola trocoidal

proa y popa) (ver figuras 2.7 y 2.8). Si se toma este punto como punto de aplicación de la
fuerza que ejerce el viento, aparece un momento que ocasiona una escora hacia la banda
de sotavento. Con respecto a la dirección longitudinal el viento pude hacer que el buque
aproe o que apope según la dirección del viento.

La existencia de una escora trae consigo otros efectos evolutivos sobre el buque, ya
que debido a ella, el centro vélico se distancia más del plano diametral (ver figura 2.8) y
con él la fuerza Xv , que crea un par de fuerzas alrededor del eje z, o lo que es igual un
momento Nv que lleva la proa al viento, el buque orza (ver figura 2.8). Hay que tener
también en cuenta que el centro vélico casi siempre está más cercano a la popa (donde
está la superestructura), por lo que el viento provoca que la proa vaya al viento.

2.5 Efectos de la corriente sobre el buque

Se puede definir la corriente como el desplazamiento de grandes masas de agua que


siguen un curso dentro de otras. Se considera que para cada zona acotada en situación
y profundidad, su rumbo y velocidad son constantes. Las corrientes que realmente inter-
fieren en la obra viva del buque son las superficiales. En las proximidades de los rı́os y
2.5. EFECTOS DE LA CORRIENTE SOBRE EL BUQUE 63

Figura 2.5: Elementos de la estructura del buque

Figura 2.6: Viento real y viento aparente


64CAPÍTULO 2. DESCRIPCIÓN DEL COMPORTAMIENTO DINÁMICO DE UN BUQUE

Figura 2.7: Planos transversal y longitudinal del buque

Figura 2.8: Efectos evolutivos asociados a la escora


2.6. EFECTOS DE OTRAS PERTURBACIONES SOBRE EL BUQUE 65

canales de acceso el efecto de la misma se combina con el de la marea, dando lugar a las
corrientes de marea, que a veces pueden alcanzar gran velocidad.

Una corriente se caracteriza por dos parámetros: la dirección o rumbo y la velocidad.


El barco que esté en el seno de una corriente se desplazará con ella, obteniendo un ve-
locidad con respecto a tierra que resulta de la composición vectorial de la velocidad del
buque con respecto al agua más la de la propia corriente. Ello hace que el buque experi-
mente en su trayectoria el efecto de deriva (componente transversal de la velocidad del
buque distinta de cero). También aparece un momento que hace caer el rumbo hacia la
dirección de la corriente (Zuidweg, 1970).

Cuando el buque navega contra corriente, el timón se encuentra con un mayor caudal
de agua incidiendo sobre su pala, lo que hace que el buque responda mucho mejor a las
metidas de timón, mientras que si navega a favor de corriente el caudal será menor, y la
respuesta al timón será más lenta y de menor magnitud que en ausencia de corriente.

2.6 Efectos de otras perturbaciones sobre el buque

Genéricamente se usa el término aguas restringidas para describir la situación en que


la masa de agua que desplaza el buque en su navegación permanece en las proximidades
del casco, ya que no tiene espacio para desplazarse libremente como en aguas abiertas,
afectando y modificando la resistencia a la marcha, velocidad, capacidad de maniobra, y
deteriorando otras cualidades que habitalmente tiene el buque en mar abierto. Son aguas
restringidas los canales angostos y lugares donde haya construı́dos muelles y escolleras
que producen cambios sustanciales sobre las caracterı́sticas de maniobrabilidad del buque.

El término aguas someras se refiere a situaciones en las que hay poca profundidad
(distancia entre el fondo marino y los fondos planos del casco). Como regla práctica,
se suele considerar que se da la condición de aguas someras cuando la relación son-
da/calado del buque, es igual o inferior a tres.

Cuando un buque navega en aguas que no están restringidas ni en profundidad ni en


los márgenes (anchura), las lineas de flujo del agua discurren a lo largo de los costados
y también a lo largo del fondo del casco. Si la navegación discurre en aguas someras, el
flujo que corre bajo el casco queda restringido en profundidad, desplazándose hacia los
costados e incrementando al que ya fluye por esas zonas. Estos cambios de flujo producen
alteraciones en el comportamiento habitual del buque, debido a las variaciones de presión
sobre el casco. Si además, las aguas están restringidas en anchura, esta alteración es
mucho mayor.
66CAPÍTULO 2. DESCRIPCIÓN DEL COMPORTAMIENTO DINÁMICO DE UN BUQUE

Figura 2.9: Buque navegando en un canal

Cuando un buque (normalmente simétrico respecto a su plano longitudinal) navega


por un canal más cerca de una margen que de otra, hay un aumento de velocidad del flujo
que corre entre el casco y la margen más cercana, al tiempo que hay una disminución de
velocidad del flujo encauzado por el otro costado y la margen alejada. Este aumento de
velocidad provoca una disminución de presión del agua sobre el casco por esa banda, y
la disminución de velocidad redunda en un aumento de presión por la otra banda. Esta
diferencia de presiones genera una fuerza Yyo , que empuja al buque a la margen cercana,
además de un momento Nyo , que lleva la proa al margen alejado, que aparece como
consecuencia de las formas finas de la proa (disminución de velocidad del agua y aumento
de presión), y las formas llenas de la popa (aumento de velocidad del agua y disminución
de la presión). La magnitud de estos efectos disminuye a medida que la anchura del canal
aumenta (ver figura 2.9).

Los efectos que aparecen en tales situaciones provoca la existencia de una especial
sensibilidad en el gobierno del buque con respecto a la posición del canal en que se
navegue. El buque que navega en este tipo de agua también tiene el fondo del casco
muy próximos al lecho del canal. Mientras mayor sea su velocidad, mayor será la veloci-
dad del flujo de agua que se desplaza bajo el casco, y por tanto hay una disminución en la
2.7. ELEMENTOS DE LA TOMA DE DECISIÓN HUMANA 67

Figura 2.10: Buque en aguas restringidas

presión que ejerce el agua en esta zona del casco. Este fenómeno se percibe en el buque
a través de un asentamiento, el barco tiene más calado (está más sumergido en el agua).

Como las disminuciones de presión antes mencionadas no son iguales en todas las
partes del casco (entre otras razones debido a que la forma del buque varı́a a lo largo del
eje longitudinal), además de tener más calado también altera su asiento, o lo que es lo
mismo, la diferencia de calados entre proa y popa varı́a. Si es la popa la que más calado
adquiere entonces se dice que experimenta un trimado positivo, pero si es la proa la que
lo hace, entonces se tiene un trimado negativo. Este último caso se produce sobre todo
en aquellos buques con un coeficiente bloque más próximo a 1 que a 0.6 (la relación que
existe entre el volumen de la obra viva y el paralelepı́pedo que lo contiene).

2.7 Elementos de la toma de decisión humana

El marino en el puente de gobierno de un buque debe tener en cuenta entre otros factores:
los datos suministrados por la instrumentación, las condiciones metereológicas y el esta-
68CAPÍTULO 2. DESCRIPCIÓN DEL COMPORTAMIENTO DINÁMICO DE UN BUQUE

Figura 2.11: Deformaciones de arrufo y quebranto

do de la mar. A pesar del enorme grado de automatización y de elementos de ayuda a la


navegación con la que hoy en dı́a se cuentan, se dan situaciones en las que el marino tiene
que decidir sobre los valores más convenientes para ciertas variables que son fundamen-
tales en navegación: la velocidad, el rumbo y el timón. Para ello debe poner en juego los
modelos mentales derivados de sus conocimientos y experiencia.

Es importante por tanto, que el marino conozca en profundidad la relación y efectos


de los parámetros y variables más relevantes de la dinámica del buque. De forma que ello
le sirva para integrar de manera adecuada todos los conocimientos adquiridos de multitud
de situaciones de navegación, para la toma acertada de decisiones de gobierno (ver figura
2.12). De ellas dependen la seguridad del buque y muchos de los fenómenos que afectan
al mismo, como vibraciones, movimientos del buque que ocasionan problemas al pasaje,
carga, y estructura del casco; tiempo de travesı́a, consumo de combustible, estado de la
máquina, etc.

Ası́ por ejemplo, un buque navegando con mar dura puede estar sometido a movimien-
tos significativos de cabeceo. Con este movimiento es posible que en unas ocasiones parte
o toda la hélice salga del agua y en otras se la proa la que emerja; situación que puede
darse de forma más frecuente cuando se navega a velocidad alta y con la mar de proa. La
hélice puede aumentar su velocidad de giro de forma repentina cuando parte de sus palas
emergen de la superficie del agua, lo cual causa una reducción repentina de la carga del
propulsor, primero, y un incremento de ésta cuando la hélice vuelve a entrar en el agua.
Como consecuencia de ello, se puede dañar la máquina, el eje de la hélice, o ella misma.
2.7. ELEMENTOS DE LA TOMA DE DECISIÓN HUMANA 69

Figura 2.12: Elementos para la toma de decisiones

La reentrada de la proa en el agua da lugar a un impacto ( pantocazo) al chocar el


fondo del casco con la superficie del agua. Estos impactos pueden llegar a ser tan fuertes
que causen daños estructurales. En casos extremos, el casco experimenta flexiones lon-
gitudinales permanentes ( arrufo y quebranto) (ver figura 2.11), llegando incluso a la
rotura. Normalmente los pantocazos hacen que el casco esté expuesto a vibraciones en
su frecuencia natural (unos cuantos ciclos por segundo), y la fatiga a la carga a la que el
buque es sometido reduce su vida de explotación. Según diferentes autores (Lloyd, 1989),
se ha estimado que la frecuencia máxima tolerable de pantocazos oscila entre los 60 y 80
por hora dependiendo del barco y de las formas de su proa.

Estos fenómenos, junto con los grandes movimientos que describe el buque en es-
tas condiciones de navegación, son indeseables y el marino intenta evitarlos en lo posi-
ble. Como al aumentar la velocidad tales efectos se acentúan, en la práctica se impone
un lı́mite efectivo de velocidad del buque con mal tiempo. Se pueden considerar como
factores determinantes para la toma de decisión sobre la reducción de la velocidad del
buque los siguientes: los pantocazos, la emersión frecuente de la hélice, y la existencia de
movimientos angulares muy significativos del buque (ángulos de balance y cabeceo), los
cuales pueden poner en peligro la estabilidad del buque.
70CAPÍTULO 2. DESCRIPCIÓN DEL COMPORTAMIENTO DINÁMICO DE UN BUQUE
Capı́tulo 3

Modelado Matemático de la Dinámica


de un Buque

3.1 Introducción

En el capı́tulo anterior se han descrito de forma cualitativa los efectos de los distintos
agentes que afectan a la dinámica del buque. En este capı́tulo se pasa a la descripción
matemática de la dinámica del buque, y en el siguiente de las perturbaciones.

La complejidad de la dinámica de un buque, ası́ como el alto coste económico y de


tiempo para la realización de pruebas de mar experimentales, puso de manifiesto la necesi-
dad del empleo de modelos que captaran el comportamiento de un barco en diversidad de
condiciones de navegación (Abkowitz, 1969; Lloyd, 1989; Hagen 1983).

A partir de finales de los setenta el empleo de modelos matemáticos hizo que se avan-
zara en el diseño y aplicación de nuevos sistemas de control en la industria naval En este
capı́tulo se presentan los diferentes modelos matemáticos empleados a lo largo del texto.

3.2 Modelo matemático de un buque

A partir de las leyes de la mecánica, para un sólido rı́gido con seis grados de libertad (3
rotaciones y 3 traslaciones), se pueden obtener las ecuaciones que gobiernan el movimien-

71
72CAPÍTULO 3. MODELADO MATEMÁTICO DE LA DINÁMICA DE UN BUQUE

to de un buque, referidas a un sistema de referencia fijado en el propio barco (Abkowitz,


1969):

Para la traslación (fuerzas):

X = m[u̇ + qw − rv − xG (q 2 + r2 ) + yG (pq − ṙ) + zG (pr + q̇)]


Y = m[v̇ + ru − pw − yG (r2 + p2 ) + zG (qr − ṗ) + xG (qp + ṙ)] (3.1)
Z = m[ẇ + pv − qu − zG (p2 + q 2 ) + xG (rp − q̇) + yG (rq + ṗ)]

y para el giro (pares o momentos de fuerza):

K = Ix ṗ + (Iz − Iy )qr + m[yG (ẇ + pv − qu) − zG (u̇ + ru − pw)]


M = Iy q̇ + (Ix − Iz )rp + m[zG (u̇ + qw − rv) − xG (ẇ + pv − qu)] (3.2)
N = Iz ṙ + (Iy − Ix )pq + m[xG (v̇ + ru − pw) − yG (u̇ + qw − rv)]

El sistema de referencia está situado en el buque y no tiene por qué coincidir con el
centro de gravedad del sistema. En las figuras (3.1),(3.2) y (3.3) se muestra el significado
gráfico de las variables más significativas del modelo. Las magnitudes que aparecen en
las ecuaciones anteriores son:

• m: masa del barco.

• Ix , Iy , Iz : momentos de inercia respecto a cada eje coordenado.

• xG , yG , zG : posición del centro de masas.

• φ, θ, ψ: Angulos de giro respecto a los ejes coordenados (x, y, z).

• r = ψ̇, p = φ̇, q = θ̇: velocidades angulares respecto a los tres ejes.

• u, v, w: componentes del vector velocidad referidos a los ejes coordenados (x, y, z).
También se emplean como: Vx , Vy , Vz .

• X, Y, Z: componentes en cada eje de las fuerzas actuantes sobre el barco.


3.2. MODELO MATEMÁTICO DE UN BUQUE 73

Figura 3.1: Sistema con 6 grados de libertad

• K, M, N : componentes en cada eje de los pares o momentos actuantes sobre el


buque.

Es habitual el empleo de distintos sistemas de unidades especı́ficos en Ingenierı́a


Naval; fundamentalmente para normalizar los modelos no lineales y mejorar el condi-
cionamiento numérico de las ecuaciones (Lewis, 1989). Los más utilizados son el llama-
do sistema ”prima”, que emplea como unidades de tiempo (t ) longitud (l ) y masa (m )
respectivamente :
1
t = L/V ; l = L; m = ρL3
2
y el sistema ”prima-bis”:

t = L/g; l = L; m = m
donde: L es la longitud del buque (habitualmente especificada como longitud entre per-
pendiculares), g es la aceleración de la gravedad y V es el módulo del vector velocidad del
buque. Para indicar que unas cantidades están expresadas en algunos de estos sistemas
se indicará respectivamente con (’) ó (”). Estos sistemas de unidades son estándares y
están definidos por la Sociedad de Arquitectos Navales e Ingenieros Marinos (SNAME)
(Hagen, 1983; Lewis, 1989).
74CAPÍTULO 3. MODELADO MATEMÁTICO DE LA DINÁMICA DE UN BUQUE

Figura 3.2: Variables: δ, ψ, u, v, U

Sistema con cuatro grados de libertad

Si sólo se considera el desplazamiento en el plano horizontal y los giros respecto a los ejes
(x, z), el sistema se reduce a un problema de cuatro grados de libertad. Las ecuaciones
del movimiento quedan en ese caso:

⎡ ⎤⎡ ⎤ ⎡ ⎤
(1 − XG ) 0 0 0 u̇ Xtot
⎢ 0 (1 − Yv̇ ) −L(zG 
+ Yṗ ) L(xG − Yṙ ) ⎥⎢ v̇ ⎥ ⎢ Ytot ⎥
⎢ ⎥⎢ ⎥ ⎢ ⎥
⎢    ⎥⎢ ⎥=⎢ ⎥
⎣ 0 −(zG + Kvv ˙ ) L(kxx − Kṗ )  
−L(zG xG + Kṙ ) ⎦⎣ ṗ ⎦ ⎣ Ktot ⎦
0 (xG − Nv̇ ) −L(zG
 
xG + Nṗ ) 2
L(kzz − Nṙ ) ṙ Ntot

Donde el subı́ndice ”tot” indica las fuerzas y pares totales actuando sobre el casco,
debidos a los efectos: hidrodinámicos, viento, olas y corrientes.
3.2. MODELO MATEMÁTICO DE UN BUQUE 75

Figura 3.3: Variables: α, φ

Xtot = XH + Xvi + Xola + Xcorr


Ytot = YH + Yvi + Yola + Ycorr
Ntot = NH + Nvi + Nola + Ncorr
Ktot = KH + Kvi + Kola + Kcorr

En la literatura se han realizado diversas propuestas para modelar el comportamiento


de un buque (Hagen, 1983; Kallstrom, 1979; Lewis, 1989). Aquı́ se pasa a describir, en
primer lugar, el modelo matemático desarrollado por el Centro Sueco de Investigación
Marı́tima ( Swedish Maritime Research Centre, SSPA) (Kallstrom y Ottosson, 1982),
y que vamos a referir mediante modnl. Este modelo está basado en el trabajo inicial
realizado por Norrbin (1970), consistente en un modelo matemático no lineal que con-
sidera únicamante el desplazamiento y giro en el plano horizontal, no teniendo en cuenta
el movimiento de balance (tres grados de libertad). A este modelo original lo vamos a
referir mediante la abreviatura norrb3d.

A continuación se dan las ecuaciones del modelo que hemos denominado modnl, el
modelo norrb3d se puede obtener del anterior, sin más que eliminar de las ecuaciones
los términos que hagan referencia a las variables relacionadas con el ángulo de balance y
aletas de estabilizadores: φ, p, α.

Las fuerzas y pares hidrodinámicos actuantes en cada eje se determinan de las siguien-
tes expresiones:
76CAPÍTULO 3. MODELADO MATEMÁTICO DE LA DINÁMICA DE UN BUQUE

Traslación en el eje x:

 2 
XH = Xuu u /L + Xuuuu u4 /(L2 g) + (1 + Xvr
 
)vr + Xup up +
(xG + Xrr

)r2 L + Xuvv|v|

uv 2 | v | +(Xrp
 
− zG )rpL +
 
(1 − tp )T + XY Rδ YR δ + 2XF α F αe

Traslación en eje y:


  
YH = (Yur − 1 + Yur|φ| )ur + 1/ gLYuur u2 r + (Yuv
 
+ Yuv|φ| )uv +

1/ (L3 g)Yuuv 
u2 v + Yuuφ

u2 φ/L + Yup
 
up + Yv|v| v | v | /L +

LYr|r| r | r | +kT Y T + YR + 2kF Y F

Giro eje z:



NH = (Nur − xG + Nur|φ|
 
| φ |)ur) + 1/ LgNuur u2 r + Nuuφ

u2 φ/L +

  
(Nuv + Nuv|φ| | φ |)uv/L + 1/ L3 gNuuv u2 v + Nup

up +
 
Nv|v| v | v | /L + Nr|r| r | r | +Nv|v| v | r | +
kT N T + kRN YR + 2kF N F

Giro eje x:


 
KH = (Kur + zG )ur + gLKp p + Kup 
up +
  
LKp|p| p | p | +Kuv uv/L + Ku|v| v | v | /L +
 
LKr|r| r | r | +Kv|r| v | r | +MS +
kT K T + kRK YR + 2kF K F

Las fuerzas elevadoras, debidas al timón y a una de las aletas estabilizadoras (una
aleta a cada lado), vienen dadas por:
3.2. MODELO MATEMÁTICO DE UN BUQUE 77

Figura 3.4: Diagrama de bloques de la máquina del timón


YR = (Yuuδ u2 δ/L + YTδ T δ)(1 + SR δ 2 )


F = (Fuuα u2 αe /L)(1 + SF αe2 )

dF p
αe = α + arctg ( )
u

donde αe es el ángulo efectivo de la aleta, y dF es la distancia entre la fuerza elevadora


y el centro de balance.

Los ángulos de timón δ y aletas α que se generan como magnitudes de mando a través
de un controlador, ya sea automático o manual, han de ser ejecutados por las respectivas
máquinas del timón y de las aletas estabilizadoras. Estas se modelan como sistemas de
primer orden con saturaciones (ver figura 3.4), dados por:

δ̇ = (δc − δ)/τR , | δ̇ |≤ δ̇max , | δ |≤ δmax


α̇ = (αc − α)/τF , | α̇ |≤ α̇max , | α |≤ αmax

siendo αc y δc los ángulos de mando de consigna que se remiten como orden es a la


sala de máquinas (con las constantes de tiempo respectivas τR y τF ).

El par de giro en el eje-x (o par adrizante) MS , dependiente del valor del GM del
buque (y por tanto, esencial para el tema del análisis de estabilidad para un estado de
carga dado), se puede obtener a partir de:
78CAPÍTULO 3. MODELADO MATEMÁTICO DE LA DINÁMICA DE UN BUQUE

MS = −(g GM )/L sen (1 + r1 | φ | +r2 | φ |2 +r4 | φ |4 +r5 | φ |5 )

Para buques convencionales existen dos tipos de sistemas de propulsión, el denom-


inado fixed pitch propeller ( fpp) y el controllable pitch propeller ( cfp). Aquı́ se
considera el primer tipo, fpp; para el cual, se tiene que la fuerza o empuje T del sis-
tema propulsor viene dada por:

T = KT4 n2 D4 /∇

con,

KT = KT 0 + KT J J + KT JJ J 2
u(1 − w)
J=
nD

y el par de giro inducido por el propulsor se obtiene de,

Q = KQ5 n2 D4 /∇

con,

KQ = KQ0 + KQJ J + KQJJ J 2

La dinámica del propulsor se puede modelar mediante un sistema de primer orden,

ṅ = (nc − n)/τn , | ṅ |≤ 0.1 1/seg

donde nc es la velocidad de consigna del propulsor, y τn la constante de tiempo.

Si se quiere incluir la acción de las hélices ( thrusters) de proa y popa (en su caso), las
fuerzas y momentos ejercidos por los thrusters se añaden a las ecuaciones antes dadas
los términos,
3.2. MODELO MATEMÁTICO DE UN BUQUE 79

YT hru = Tpro + Tpo

NT hru = xT pro Tpro + xT po Tpo

la acción de cada thruster se puede modelar como un sistema de primer orden, con una
constante de tiempo mucho menor (del orden del segundo) a la asociada a la dinámica del
buque.

Para determinar la posición del buque en el plano horizontal se tienen las siguientes
ecuaciones cinemáticas, que determinan las componentes del vector velocidad:

x˙G = u cos(ψ) − v cos(φ)sen(ψ)

y˙G = u sen(ψ) + v cos(φ)cos(ψ)

Si tenemos en cuenta las ecuaciones presentadas sobre el modelo matemático pre-


sentado en esta sección, se observa que la dinámica del buque se puede describir por un
sistema de ecuaciones diferenciales no lineales de primer orden con una estructura de la
forma:

M1 ξ˙ = M2 ξ + M3 σ (3.3)
ξ T = [u̇ v̇ ṗ ṙ]
σ T = [α δ]

La matriz M1 es constante para un buque dado, y las matrices M2 , M3 son en general


variables en el tiempo y no lineales, dependiendo de las condiciones de trabajo y del tipo
de buque.

Si se emplea una formulación entrada-salida para el modelo matemático de un buque


orientado hacia el problema de control del rumbo y/o movimiento de balance, éste se
puede ver como un sistema de simple entrada y simple salida ( siso), como un sistema
de simple entrada y múltiples (dos) salidas ( simo), o también como un sistema de
múltiples entradas (dos) y múltiples salidas (dos) ( mimo), tal y como se representa en la
figura 3.5.
80CAPÍTULO 3. MODELADO MATEMÁTICO DE LA DINÁMICA DE UN BUQUE

Figura 3.5: Problemas de control del movimiento de un buque

Como valores numéricos de los coeficientes hidrodinámicos y demás parámetros del


modelo empleados en las simulaciones por ordenador, con el modelo con cuatro grados
de libertad antes descrito, se han utilizado a lo largo del texto los correspondientes al
buque mercante M/S Zenobia. Este modelo va a ser referido a lo largo del texto de forma
abreviada como modnl.

La validación experimental del modelo modnl fué realizada de forma exhaustiva


por el centro sueco de investigación sspa (Kallstrom y Ottosson, 1982), ajustando los
parámetros del modelo hasta conseguir una excelente correspondencia entre los resultados
experimentales y las simulaciones. Por lo que se puede considerar el modnl como un
buen banco de pruebas para los diseños de sistemas de control que se realicen. Diversos
autores (Kallstrom y Ottosson, 1982; López, 1994; López et al., 1996; Messer y Grimble,
1992) han empleado este modelo para evaluar los controladores desarrollados.
3.3. MODELOS MATEMÁTICOS LINEALES 81

Figura 3.6: r(t), V (t), φ(t), p(t) para δ = 20◦ , (15 nudos)

Para mostrar la naturaleza no lineal del modnl, se presentan algunas pruebas de


simulación. En las figuras 3.6 y 3.7 puede verse la pérdida sustancial de velocidad que
experimenta el sistema si se somete a una prolongada activación de la variable de control
δ (ángulo de timón). Se observa, que a mayor ángulo de timón mayor es la pérdida de
velocidad. En las figuras se muestran la derivada del rumbo (o velocidad angular) r, y la
velocidad V , para ángulos de timón de 20 y 10 grados respectivamente. Se representan
ası́ mismo el ángulo de balance φ, y su derivada p. La velocidad nominal o de crucero
inicial es en ambos casos de 7.72 m/s (15 nudos).

3.3 Modelos matemáticos lineales

Desde el punto de vista del control de un buque se puede decir que hay dos condiciones
de navegación bien diferenciadas:

1. La primera, se trata del caso en que el problema es el realizar una determinada


maniobra ( course changing) que conlleve esfuerzos grandes y prolongados de la
82CAPÍTULO 3. MODELADO MATEMÁTICO DE LA DINÁMICA DE UN BUQUE

Figura 3.7: r(t), V (t), φ(t), p(t) para δ = 10◦ , (15 nudos)

variable de control (timón), en cuyo caso los efectos no lineales dominan el com-
portamiento del sistema.

2. La otra, se da en situaciones de mantenimiento del rumbo ( course keeping), o cuan-


do el proceso de regulación para un cambio de consigna requiere unas desviaciones
de las superficies de control que no sean excesivas en tiempo y magnitud. En este
caso se puede aproximar por un modelo lineal.

Si sólo se atiende al movimiento en el plano horizontal, y al problema del control


del rumbo, se pueden linealizar las ecuaciones del movimiento en torno a la solución
estacionaria v = v0 , r = r0 , δ = δ0 , ψ = ψ0 , u = u0 . En ese caso se obtiene un modelo
lineal (Kallstrom, 1979; Lewis, 1989) de la siguiente forma:

⎡ ⎤⎡ ⎤ ⎡ ⎤⎡ ⎤
m − Yv̇ L(m xG − Yṙ ) 0 v̇ (V /L)a11 V a12 0 v
⎢  
⎣ m xG − Nv̇ 
L(Iz − Nṙ ) 0 ⎦ ⎣ ṙ ⎦ = ⎣ (V /L)a21 V a22 0 ⎦ ⎣ r ⎥
  ⎥ ⎢ ⎥ ⎢   ⎥⎢
⎦+
0 0 1 ψ̇ 0 1 0 ψ
3.3. MODELOS MATEMÁTICOS LINEALES 83

⎡ ⎤
(V 2 /L)Yδ
⎢ ⎥
⎣ (V 2 /L)Nδ ⎦ δ (3.4)
0

siendo:

a11 = Yv ; a12 = (Yr − m )a21 = Nv ; a22 = Nr − m xG

donde Yv̇ , Yṙ , Nv̇ , Nṙ , Yv , Yr , Nv , Nr son los coeficientes hidrodinámicos normalizados
(sin dimensiones) en el sistema ”prima”, donde:

m v v̇L
m = 3
, v  = , v̇  = 2
ρL /2 V V

Iz rL ṙL2
Iz = , r 
= , ṙ 
=
ρL5 /2 V V2

Yv Yr
Yv = , Yr =
ρL2 V /2 ρL3 V /2

Nv Nr
Nv = , Nr =
ρL3 V /2 ρL4 V /2

Yv̇ Yṙ
Yv̇ = , Yṙ =
ρL3 /2 ρL4 /2

Nv̇ Nṙ
Nv̇ = , Nṙ =
ρL4 /2 ρL5 /2

Ası́ por ejemplo, si aparece en las ecuaciones un producto del tipo, Nv v  (forma sin di-
mensiones), se corresponderá con,
84CAPÍTULO 3. MODELADO MATEMÁTICO DE LA DINÁMICA DE UN BUQUE

Nv v
Nv v  =
ρL3 V /2 V

Se han dado las ecuaciones del movimiento linealizadas para el sistema prima, igual-
mente se pueden expresar para el sistema prima bis:

⎡   ⎤⎡ ⎤ ⎡   ⎤⎡ ⎤
1 − Yv̇ L(xG − Yṙ ) 0 v̇ (V /L)a11 V a12 0 v
⎢    2  ⎥⎢ ⎥ ⎢   ⎥⎢ ⎥
⎣ xG − Nv̇ L[(kzz ) − Nṙ ] 0 ⎦ ⎣ ṙ ⎦ = ⎣ (V /L)a21 V a22 0 ⎦ ⎣ r ⎦ +
0 0 1 ψ̇ 0 1 0 ψ
⎡ ⎤
(V 2 /(2L))Yuuδ

⎢ ⎥
⎣ (V 2 /(2L))Nuuδ

⎦δ
0


donde los coeficientes aij vienen dados por,

 
 
a11 = Yvv + V /(2 gL)Yuuv

 
 
a12 = Yur − 1 + V /(2 gL)Yuur

 
 
a21 = Nuv + V /(2 gL)Nuuv

  
 
a22 = Nur − xG + V /(2 gL)Nuur

existiendo la siguiente relación entre los parámetros de los sistemas ”prima” y ”prima
bis” que aparecen en las ecuaciones anteriores:


Yv̇ = m Yv̇
3.3. MODELOS MATEMÁTICOS LINEALES 85


Yṙ = m Yṙ


 
Yv 
= m (Yuv + V /(2 gL)Yuuv


Yδ = (m /2)Yuuδ


 
Yr = m (Yur + V /(2 gL)Yuur


Nv̇ = m Nv̇


Nṙ = m Nṙ


 
Nv = m (Nuv + V /(2 gL)Nuuv


 
Nr = m (Nur + V /(2 gL)Nuur


Nδ = (m /2)Nuuδ ,


xG = xG


Iz = m (kzz )2
86CAPÍTULO 3. MODELADO MATEMÁTICO DE LA DINÁMICA DE UN BUQUE

Modelo lineal del movimiento de balance

Si en las ecuaciones generales, dadas en el apartado anterior, únicamente se considera


la relación entre el movimiento de balance y el ángulo de los estabilizadores, se obtiene
un modelo de simple entrada y simple salida o escalar; y linealizando para la condición
estacionaria φ = 0, φ̇ = 0 y una cierta velocidad del buque, se obtiene la siguiente
ecuación diferencial de segundo orden:

φ̈ + a1 φ̇ + a2 φ = bα (3.5)

donde se tiene que los coeficientes de la ecuación se pueden obtener a partir de,


g/LKp
a1 = −
(kx )2 − Kṗ

g
a2 = GM ≡ K2 GM
L2 (kx )2 − Kṗ


2kF K (Fuuα /L) 2
b= u ≡ K3 u 2
L((kxx ) − Kṗ )
 2

donde se puede comprobar que la dinámica de balance o del balanceo del buque depende
de su velocidad axial o longitudinal (u) y del valor de su GM .

3.4 Función de transferencia de un buque

A partir de las ecuaciones linealizadas dadas en la sección anterior se puede obtener la


función de transferencia (ver apéndices) que relaciona el ángulo de rumbo ψ con el del
timón δ:

ψ(s) K1 (τ3 s + 1)
G(s) = = (3.6)
δ(s) (τ2 s + 1)(τ1 s + 1)s
3.4. FUNCIÓN DE TRANSFERENCIA DE UN BUQUE 87

Una aproximación de ésta se obtiene empleando la constante de tiempo efectiva τ =


τ1 + τ2 − τ3 , con lo que queda:

ψ(s) K
G(s) = = (3.7)
δ(s) (τ s + 1)s

La estabilidad dinámica en lı́nea recta o estabilidad dinámica de ruta (estabilidad


asintótica), mencionada anteriormente, se determina viendo si alguno de los polos (raices
del denominador) de la función de transferencia anterior quedan en el semiplano comple-
jo de la derecha, o sea si tienen parte real positiva. Ası́ por ejemplo, según los valores
dados en la tabla 3.2, se tiene que tanto el buque tipo dragaminas como el petrolero son
asintóticamente inestables, mientras que el carguero es estable.

El modelo del buque se puede completar con un factor de retardo para tener en cuenta
la dinámica inmodelada (Astrom, 1980), con lo que resulta,

K
G(s) = e−τd s (3.8)
(τ s + 1)s

Se deduce de las ecuaciones (3.7) y (3.4), que los parámetros del modelo lineal (3.7) (a
veces llamado modelo de Nomoto) están relacionadas de forma explı́cita con la velocidad
V del buque:

V0 V
τ = τ0 , K = K0
V V0

de forma que las variaciones de velocidad modifican la ganancia K0 y la constante de


tiempo τ0 nominales del sistema.

En la tabla 3.1 se dan los coeficientes del sistema 3.4 y los parámetros de la función
de transferencia 3.6 para los siguientes buques:

1. modl1: Carguero (Zuidweg, 1970).1

L = 160 m, V = 15.18 nudos


1
1 Nudo = 1852 metros/hora.
88CAPÍTULO 3. MODELADO MATEMÁTICO DE LA DINÁMICA DE UN BUQUE

modl1 modl2 modl3 modl4 modl5 modl6 modl7


a11 -0.895 -0.770 -0.597 -0.298 -0.428 -0.454 -0.431
a12 -0.286 -0.335 -0.372 -0.279 -0.359 -0.433 -0.448
a21 -4.367 -3.394 -3.651 -4.370 -2.959 -4.005 -1.976
a22 -2.719 -2.093 -1.870 -1.638 -1.712 -1.818 -1.747
b1 0.108 0.170 0.103 0.116 0.150 0.097 0.144
b1 -0.918 -1.627 -0.792 -0.773 -1.011 -0.807 -1.145
K -0.053 -0.185 0.095 0.026 0.073 0.019 0.149
τ1 56.2 118.0 -392.3 -120.8 -253.4 -124.1 -666.9
τ2 6.3 7.8 14.4 17.3 16.0 16.4 17.6
τ3 14.5 18.5 34.5 40.9 42.1 46.0 58.1

Tabla 3.1: Parámetros de modelos lineales para diferentes buques

2. modl2: Carguero (Astrom y Wittenmark, 1989).

L = 161 m, V = 15 nudos

3. modl3: Pertrolero (a plena carga) (Berlekom, 1972).

L = 304 m, V = 16 nudos

4. modl4: Pertrolero (a plena carga) (Berlekom, 1974).

L = 321.56 m, V = 16 nudos

5. modl5: Es modl4 lastrado y V = 17.09 nudos (Berlekom, 1974)

6. modl6: Pertrolero (a plena carga) (Kallstrom, 1979).

L = 350 m, V = 15.80 nudos

7. modl7: Es modl6 lastrado y V = 17.25 nudos (Astrom y Wittenmark, 1989).

A continuación se presenta un modelo matemático que relaciona la dinámica del


buque con su eslora (L), su velocidad axial o longitudinal (u), y su velocidad transversal
(v):
3.4. FUNCIÓN DE TRANSFERENCIA DE UN BUQUE 89

v̇ = (u/L)a11 v + ua12 r + (u2 /L)b1 δ

ṙ = (u/L2 )a21 v + (u/L)a22 r + (u2 /L2 )b2 δ

ψ̇ = r

Los parámetros aij y bi de esta representación de estado varı́an poco para un mismo
buque y en distintas condiciones de operación, por lo que es una buena aproximación
considerarlos constantes para un buque dado (Astrom y Wittenmark, 1989). La función
de transferencia ψ(s)/δ(s) se puede obtener a partir de la expresión anterior para un buque
determinado, obteniéndose,

K(sτ3 + 1)
G(s) =
s(sτ1 + 1)(sτ2 + 1)
donde,

K = K0 u/L, τi = τi0 L/u, i = 1, 2, 3

Si, tal y como se ha dicho anteriormente, se realiza la simplificación del modelo, se


puede obtener una función de transferencia de la forma:

b
G(s) =
s(s + a)

en la que,


2
2
u u
b = b0 = b2
L L

u
a = a0
L

En la tabla 3.2 se dan los valores de los parámetros K0 , τi0 , b0 , a0 , para tres tipos de
buques.
90CAPÍTULO 3. MODELADO MATEMÁTICO DE LA DINÁMICA DE UN BUQUE

Buque Dragaminas Carguero Petrolero


cargado lastre
Eslora[m] 55 161 350
a11 -0.86 -0.77 -0.45 -0.43
a12 -0.48 -0.34 -0.43 -0.45
a21 -5.2 -3.39 -4.1 -1.98
a22 -2.4 -1.63 -0.81 -1.15

b1 0.18 0.17 0.10 0.14


b2 -1.4 -1.63 -0.81 -1.15

k0 2.11 -3.86 0.83 5.88


τ10 -8.25 5.66 -2.88 -16.91
τ20 0.29 0.38 0.38 0.45
τ30 0.65 0.89 1.07 1.43

a0 -0.14 0.19 -0.28 -0.06


b0 -1.4 -1.63 -0.81 -1.15

Tabla 3.2: Valores de coeficientes para tres tipos de buques

Función de transferencia (ángulo de balance)/(ángulo de aletas)

A partir de la ecuación diferencial 3.5 que relaciona el ángulo de balance (o de escora)


con el ángulo de las aletas estabilizadoras se puede obtener la función de transferencia
que relaciona ambas magnitudes:

K3 u 2
Gφα (s) =
s2 + K1 s + K2 GM

si se compara esta expresión con la forma genérica de un sistema de segundo orden,

Kωn2
G(s) =
s2 + 2ζωn s + ωn2

se obtiene identificando coeficientes que la frecuencia natural de balance (ωn ) y el


perı́odo natural de balance (Tn ) del buque están dados por,
3.5. ESTABILIDAD Y CAPACIDAD DE MANIOBRA 91

 2π
ωn = K2 GM , Tn =
ωn
y la ganancia estacionaria K por,

K3 u 2
K=
K2 GM
de forma que si aumenta el GM lo hace también la frecuencia natural de balance, y
disminuye la ganancia estacionaria. Si aumenta la velocidad axial también lo hará la
ganancia estacionaria.

La frecuencia natural de balance de un buque es un dato importante a tener en cuenta


a la hora de diseñar y/o ajustar un controlador que gobierne al sistema de estabilizadores,
dado que esa frecuencia es una frecuencia de resonancia, y por tanto el buque será espe-
cialmente sensible a perturbaciones (olas, viento) que tengan componentes de su espectro
de valores significativos en la proximidad de dicha frecuencia (Lloyd, 1989; Lopez et al.,
1996).

3.5 Estabilidad y capacidad de maniobra

Los conceptos de estabilidad y maniobrabilidad relacionan las propiedades fı́sicas del


buque con los parámetros del modelo matemático.

Estabilidad

A partir de los valores de los coeficientes hidrodinámicos normalizados se puede determi-


nar la condición de estabilidad asintótica del sistema de ecuaciones diferenciales lineales,
también conocida como estabilidad dinámica en lı́nea recta ( straight-line or dynamics
stability) (Abkowitz, 1964, Lewis, 1989, Kallstrom, 1981):

Yv (Nr − m xG ) − (Yr − m )Nv > 0


que para el caso de que coincida el origen de coordenadas del sistema de referencia móvil,
situado en el barco, con el centro de gravedad del buque (ver apéndice sobre ecuaciones
del movimiento en el plano) se reduce a,
92CAPÍTULO 3. MODELADO MATEMÁTICO DE LA DINÁMICA DE UN BUQUE

Yv Nr − Nv (Yr − ∇ ) > 0

Esta condición puede obtenerse a partir de los polos de la función de transferencia


que relaciona el ángulo de timón δ con la velocidad angular r, de modo que si todos los
polos están situados en el semiplano complejo de la izquierda (Re(s) < 0), el buque será
estable, es decir, tendrá lo se hemos denominado una estabilidad direccional.

Una forma de definir el concepto de estabilidad es la siguiente: se dice que un sistema


que se encuentra en un estado de equilibrio determinado, es estable, si al ser perturbado
momentáneamente por un agente externo, el sistema retorna al estado de equilibrio una
vez que ha dejado de actuar la perturbación.

Para un buque navegando inicialmente en lı́nea recta con un rumbo fijado, se definen
varios tipos de estabilidad (Lewis, 1989) del movimiento (ver figura 3.8):

1. Estabilidad dinámica o en lı́nea recta (straight-line or dynamics stability), la


cual se caracteriza porque una vez finalizada la perturbación (un golpe de mar, o
una ráfaga de viento), el buque aunque no mantiene el rumbo inicial, sı́ continua
moviéndose en lı́nea recta.

2. Estabilidad direccional ( directional stability), en este caso se mantiene el rumbo


inicial una vez pasado el transitorio, además del movimiento en lı́nea recta.

3. Estabilidad de movimiento posicional ( positional motion stability), caracterizada


porque tras cesar la perturbación y pasar la fase transitoria, el buque se mantiene
navegando en lı́nea recta, con el mismo rumbo, y además con la misma trayectoria a
la llevada inicialmente (por ejemplo, si inicialmente se mueve en el plano horizontal
según una trayectoria recta con un valor constante de la ordenada y0 , transcurrido el
perı́odo transitorio el buque volverá a tener este mismo valor de la ordenada y0 ). En
la figura 3.8 se muestran de forma gráfica cada una de las definiciones anteriores.

Si la variable de control (ángulo de timón) no se varı́a, la única estabilidad posible es


la estabilidad en lı́nea recta o también denominada estabilidad dinámica en ruta. Existen
buques que no la poseen, siendo la maniobra o prueba de espiral ( spiral test) un método
para determinar este tipo de estabilidad y para su justificación. El resto de casos de esta-
bilidad requieren la intervención de un sistema de control (ya sea manual o automático)
que mantenga el rumbo y recupere la posición en su caso.
3.5. ESTABILIDAD Y CAPACIDAD DE MANIOBRA 93

Figura 3.8: Tipos de estabilidad en ruta

Maniobrabilidad

Desde el punto de vista dinámico, se puede considerar que cuanto menor sea la constante
de tiempo efectiva de un buque τ , y mayor sea su ganancia estacionaria K, más man-
iobrable o mayor capacidad de maniobra tendrá el buque. Se define el parámetro de
maniobrabilidad de Norrbin como el cociente,

PN = K/2τ

de forma que cuanto mayor sea PN más maniobrable será el buque (Lewis, 1989). Otra
medida útil está relacionada con la curva de evolución; ası́ se define el diámetro de giro
como

Do = 2V /ro

donde ro es la velocidad angular estacionaria del buque (o velocidad de caida) obtenida


94CAPÍTULO 3. MODELADO MATEMÁTICO DE LA DINÁMICA DE UN BUQUE

para un ángulo de timón δo , y V es su velocidad lineal.

Ejemplo: si se tienen dos buques, B1 y B2, muy similares, navegando con velocidades V1
y V2 y con respectivos parámetros

(K1 , τ1 ), y (K2 , τ2 )

de forma que,

K1 > K2 , τ1 < τ2

el buque B1 tiene una mayor de capacidad de maniobra o una mayor maniobrabilidad


que el B2, ya que: para el mismo ángulo de timón B1 conseguirá una velocidad angular
estacionaria mayor, y además en menos tiempo que B2. Lógicamente si cambia la ve-
locidad de alguno de ellos también cambiarán K y τ (si aumenta la velocidad, aumenta
K y disminuye τ ), por lo que en cada situación de navegación habrá que determinar qué
buque es más maniobrable. Lo que parece práctico es emplear para la comparación las
velocidades de crucero nominales de cada buque.

Los respectivos diametros de giro de la curva de evolución para B1 y B2 para el mismo


valor de ángulo de timón (δo ) serı́an:

Do1 = 2V1 /ro1 , Do2 = 2V /ro2

por lo que si se considera el caso en que,

V1 = V2 , y K 1 > K2

se tendrá que,

Do1 < Do2

Además, también ocurre que los parámetros de maniobrabilidad de Norrbin respec-


tivos,

K1 K2
PN 1 = , PN2 =
τ1 τ2
3.6. MODELO MULTIVARIABLE LINEALIZADO 95

cumplen la relación,

P N 1 > PN 2

que indica una mayor capacidad de maniobra del buque B1 que el buque B2.

3.6 Modelo multivariable linealizado

Si no se desprecia el acoplamiento o interacción existente entre el control del rumbo y


el movimiento de balance que se genera, es necesario considerar al sistema como mul-
tivariable. El modelo modnl se puede linealizar en torno a la solución estacionaria
(u0 , v0 , r0 , φ0 , p0 ) de las ecuaciones 3.3, y emplear el modelo linealizado para simulación
o para la sı́ntesis de un regulador multivariable (López, 1994).

Una condición de trabajo para la que se puede realizar la obtención del modelo lineal-
izado para una velocidad de curcero V corresponde a,

u = V, v = r = φ = p = δ = α = 0

A continuación se dan las matrices de una representación de estado (López, 1994)


para una velocidad V = 7.72 m/s, ası́ como la tabla 3.3 con los polos y constantes de
tiempo (τ ) asociados (no se considera la dinámica de los actuadores). Como puede verse
el sistema tiene un par de polos complejos conjugados muy poco amortiguados (la parte
imaginaria del polo es mucho mayor que la parte real).

⎛ ⎞
−0.02720 0.15048 0.00443 0.26255 0
⎜ ⎟


0.00250 −0.04043 −0.39268 −0.09381 0 ⎟

A=⎜
⎜ −0.00128 −0.00129 −0.13732 −0.00204 0 ⎟


⎝ 0 1 0 0 0 ⎟

0 0 1 0 0
⎛ ⎞ ⎛ ⎞
0.06466 0.1747 0. 0
⎜ ⎟ ⎜ ⎟


−0.01426 −0.01319 ⎟



0 0 ⎟

B=⎜
⎜ −0.0007 −0.00554 ⎟
⎟, CT =⎜
⎜ 0 0 ⎟


⎝ 0 0 ⎟


⎝ 1 0 ⎟

0 0 0 1
96CAPÍTULO 3. MODELADO MATEMÁTICO DE LA DINÁMICA DE UN BUQUE

polos τ (seg)
0
-0.02825 ± 0.30494j 3.27
-0.0081 123.17
-0.1403 7.12

Tabla 3.3: Polos y constantes de tiempo de modnl linealizado (15 nudos)

La estructura del sistema multivariable puede verse en la figura (3.9). Las magnitudes
de control son α y δ, ángulos de las aletas estabilizadoras y timón respectivamente, y las
magnitudes a controlar son φ o ángulo de balance (giro en eje x) y ψ ángulo de rumbo
(giro en eje z).

También se muestra a continuación un modelo lineal multivariable correspondiente a


una fragata, para condiciones nominales de funcionamiento. Este modelo fué obtenido
por Freeman y Whalley (1982) empleando técnicas de respuesta en frecuencia, y va a ser
referido a lo largo del texto abreviadamente como mlmv19.

Para condiciones nominales, la matriz de transferencia del sistema mlmv19 viene


dada por:

    
φ(s) G11 (s) G12 (s) α(s)
=
ψ(s) G21 (s) G22 (s) δ(s)

19.92(1.54s2 + 0.976s + 0.0077)


G11 =
(19.84s4 + 24.34s3 + 7.69s2 + 5.34s + 0.234)(s2 + 3.645s + 13.28)
13.916(0.965s2 + 0.61s − 0.176)
G12 =
(15.66s4 + 21.32s3 + 6.87s2 + 3.81s + 0.193)(s2 + 9.402s + 7.952)
0.1
G21 =
(s + 3.645s + 13.28)(21.5s2 + s)
2

0.4266
G22 =
(s + 9.402s + 7.952)(18.1s2 + s)
2

En la figura 3.10 se muestra la respuesta temporal, para una entrada constante de timón
de 1 grado, del modelo mlmv19 (que tiene una realización en el espacio de estados de
orden 19) que se indica en la figura con Gp, ası́ como de un modelo de orden reducido
(de orden 6), indicado con G en la figura. Como puede comprobarse en la figura, existe
3.7. EL MODELO DE BECH 97

α(s)  φ(s)
s - G11 (s) - -

6

- G12 (s)

δ(s)  ψ(s)
s - G22 (s) - -

6

- G21 (s)

Figura 3.9: Sistema multivariable

un fuerte acoplamiento entre las variables de entrada y salida del modelo, ya que para
un ángulo de timón de 1 grado se produce un movimiento muy significativo de balance.
También puede observarse que el modelo de orden reducido aproxima bastante bien el
comportamiento del modelo de orden completo (López, 1994).

Modelos con no linealidades adicionales

A modo de puente de unión entre los modelos lineales y los no lineales, algunos autores
han propuesto incorporar una función no lineal al modelo de Nomoto, de forma que se
modele el comportamiento no lineal manifestado por el buque en la realización de ciertas
maniobras. Algunos de estos modelos matemáticos se describen a continuación en los
siguientes apartados.

3.7 El modelo de Bech

El modelo matemático de Bech (ver figura 3.11) tiene en cuenta la relación no lineal
existente entre el ángulo de guiñada y el de timón,
98CAPÍTULO 3. MODELADO MATEMÁTICO DE LA DINÁMICA DE UN BUQUE

Figura 3.10: Respuesta temporal de sistema multivariable

δ = HB (ψ̇)

donde la funión HB es de la forma,

HB (ψ̇) = C3 ψ̇ 3 + C2 ψ̇ 2 + C1 ψ̇ + C0

El que C0 sea distinto de cero se puede deber a cualquier asimetrı́a del casco, y/o
debido a que la propulsión del buque se hace con un número impar de hélices creando
una condición de asimetrı́a. La inestabilidad de ruta aparece cuando C1 adquiere valores
negativos.

El modelo de Bech emplea la expresión anterior y en el modelo de Nomoto puesto de


una forma más conveniente,

τ1 + τ2 1 K
r̈ + ṙ + r= (δ + τ3 δ̇)
τ1 τ2 τ1 τ2 τ1 τ2
3.8. EL MODELO SIMPLIFICADO DE NORRBIN 99

Figura 3.11: Diagrama del modelo de Bech

ya que los coeficientes de la ecuación de Nomoto original,

τ1 τ2 , τ1 + τ2 , τ3

dependen de los valores de ψ̇ y de δ; mientras que para el caso en que exista una fuerza
de propulsión constante, se tiene que

(τ1 + τ2 )/(τ1 τ2 ), K/(τ1 τ2 ), y τ3

son aproximadamente constantes. Al sustituir 1/K ψ̇ = HB (ψ̇) se obtiene finalmente el


modelo de Bech:

τ 1 + τ2 K K
r̈ + ṙ + HB (ψ̇) = (δ + τ3 δ̇)
τ1 τ2 τ1 τ2 τ1 τ2

3.8 El modelo simplificado de Norrbin

El modelo matemático simplificado de Norrbin es similar al anterior (ver figura 3.12), sólo
que emplea el modelo de Nomoto de primer orden en vez del de segundo orden empleado
en el modelo de Bech; por lo que queda,

τ ψ̈ + HN (ψ̇) = Kδ
100CAPÍTULO 3. MODELADO MATEMÁTICO DE LA DINÁMICA DE UN BUQUE

Figura 3.12: Diagrama del modelo simplificado de Norrbin

donde la función no lineal HN (ψ̇) es de la forma,

HN (r) = a3 r3 + a2 r2 + a1 r + a0

siendo como ya se ha dicho, r = ψ̇.

3.9 El modelo de van Leeuwen

El modelo matemático de van Leewen tiene en cuenta la relación no lineal entre el ángulo
de timón y la velocidad angular,

δ = H(r)

tal y como los dos anteriores (de Bech y de Norrbin simplificado), pero además considera
las pérdidas de velocidad del buque durante las maniobras (ver figura 3.13). Se emplea la
velocidad instantanea u para adimensionar, en lugar de la velocidad estacionaria u1 , o la
velocidad de crucero del buque V . Para ello, se definen las siguientes variables:

L
r = ψ̇
u
3.9. EL MODELO DE VAN LEEUWEN 101

Figura 3.13: Diagrama del modelo de van Leewen

Δu
u =
u0
u
ds = dt
L

donde las variables tienen el siguiente significado:

• L es la eslora del buque.

• u = u0 − Δu es la velocidad instantanea.

• Δu es la pérdida de la velocidad.

• ds es la distancia cubierta por el buque en el intervalo de tiempo dt, adimensionada


mediante la eslora del buque.

Finalmente se obtiene el siguiente modelo matemático:


102CAPÍTULO 3. MODELADO MATEMÁTICO DE LA DINÁMICA DE UN BUQUE

dr
τ 
+ H(r ) = K  δ
ds
du
τu + u = Ku r2
ds
donde se tiene que,

H(r ) = α3 r3 + α2 r2 + α1 r + α0 ,

tomando α1 los valores:

• α1 = 1, para un buque con estabilidad dinámica de ruta.

• α1 = −1, para un buque con inestabilidad dinámica de ruta.

Manipulando algebraicamente las expresiones anteriores se obtiene:

L dr
τ + H(r ) = K  δ
u dt
L du
τu + u = Ku r2
u dt

calculándose las variables ψ̇ y u a partir de,

u 
ψ̇ = r
L
u = u0 (1 − u )

3.10 El modelo de De Keizer

El modelo matemático de De Keizer supone una generalización (ver figura 3.14) del mo-
delo anterior, y sus ecuaciones vienen dadas por,
3.11. MODELO NO LINEAL DE ABKOWITZ 103

Figura 3.14: Diagrama del modelo de De Keizer

L dr u u
τ + H(r ) = K  δ
u dt L L

L du
τu + H(u ) = Ku r2
u dt

La función H(r ) se define igual que antes en el modelo de van Leewen, y H(u ) tiene la
forma,

H(u ) = γ3 u3 + u

El modelo permite la descripción del comportamiento del buque para distintas veloci-
dades y para cualquier ángulo de timón con sólo un valor para cada uno de sus parámetros.

3.11 Modelo no lineal de Abkowitz

A continuación se da el conjunto de ecuaciones que constituyen el modelo no lineal para


tres grados de libertad de Abkowitz y Strom-Tejsem (Lewis, 1989), y que vamos a referir
104CAPÍTULO 3. MODELADO MATEMÁTICO DE LA DINÁMICA DE UN BUQUE

a lo largo del texto como abko3d.

Traslación longitudinal (eje x):

(∇ − Xu̇ )u̇ = f1 (u, v, r, δ)

donde,
1 1 1
f1 (u, v, r, δ) = X 0 + Xu du + Xuu du2 + Xuuu du3 + Xvv v 2
2 6 2
1 1 1 1
+ Xrr r + Xδδ δ + Xvvu v du + Xrru r2 du
2 2 2
2 2 2 2
1 2
+ Xδδu δ du + (Xvr + ∇)vr + Xvδ vδ + Xrδ rδ
2
+Xvru vrδu + Xvdu vδdu + Xrdu rδdu

Traslación transversal (eje y):

(∇ − Yv̇ )v̇ − Yṙ ṙ = f2 (u, v, r, δ)

donde,
1
f2 (u, v, r, δ) = Y 0 + Yu0 du + Yuu 0
du2 + Yv v + Yvvv v 3
6
1 2 1 2
+ Yvrr vr + Yvδδ vδ + Yvu vdu
2 2
1 1 1
+ Yvuu vdu + (Yr − ∇u1 )r + Yrrr r3 + Yrvv rv 2
2
2 6 2
1 2 1 2
+ Yrδδ rδ + Yru rdu + Yruu rdu + Yδ δ
2 2
1 1 1
+ Yδδδ δ + Yδvv δv + Yδrr δr2 + Yδu δdu
3 2
6 2 2
1 2
+ Yδuu δdu + Yvrδ vrδ
2

Giro con respecto a un eje perpendicular al plano de movimiento (eje z):

−Nv̇ v̇ + (Iz − Nṙ )ṙ = f3 (u, v, r, δ)


3.12. SIMULADOR DE NAVEGACIÓN DE ALTAS PRESTACIONES 105

donde:
1 1
f3 (u, v, r, δ) = N 0 + Nu0 du + Nuu
0
du2 + Nv v + Nvvv v 3 + Nvrr vr2
6 2
1 1
+ Nvδδ vδ 2 + Nvu vdu + Nvuu vdu2
2 2
1 1 1
+Nr r + Nrrr r3 + Nrvv rv 2 + Nrδδ rδ 2 + Nru rdu
6 2 2
1 1 1
+ Nruu rdu2 + Nδ δ + Nδδδ δ 3 + Nδvv δv 2
2 6 2
1 1
+ Nδrr δr2 + Nδu δdu + Nδuu δdu2 + Nvrδ vrδ
2 2

En la mayorı́a de programas de simulación, como por ejemplo SIMNON (SSPA, 1993)


o ACSL (Mitchel y Gauthier, 1991), las ecuaciones del modelo deben expresarse co-
mo sistemas de ecuaciones diferenciales de primer orden. Por lo que si se despejan las
derivadas u̇, v̇, ṙ de las ecuaciones anteriores se obtiene el siguiente sistema de ecuaciones
diferenciales de primer orden,

f1 (u, v, r, δ)
u̇ =
(∇ − Xu̇ )

(Iz − Nṙ )f2 (u, v, r, δ) + Yṙ f3 (u, v, r, δ)


v̇ =
(∇ − Yv̇ )(Iz − Nṙ ) − Nv̇ Yṙ

(∇ − Yv̇ )f3 (u, v, r, δ) + Nv̇ f2 (u, v, r, δ)


ṙ =
(∇ − Yv̇ )(Iz − Nṙ ) − Nv̇ Yṙ

3.12 Simulador de navegación de altas prestaciones

La adquisición de un simulador de navegación de altas prestaciones por parte de la Uni-


versidad de Cádiz, tiene como principal función la formación de alumnos y el perfec-
cionamiento de profesionales del mar. Sin embargo, de la colaboración de dos depar-
tamentos de la Facultad de Ciencias Náuticas (el Dpto. de Ciencias y Técnicas de la
Navegación, con el Dpto. de Ingenierı́a de Sistemas y Automática) ha propiciado que
el simulador pueda ser aprovechado para otras funciones relacionadas con el análisis e
106CAPÍTULO 3. MODELADO MATEMÁTICO DE LA DINÁMICA DE UN BUQUE

identificación de la dinámica del barco, y el diseño de sistemas de control que mejoren


las prestaciones del buque.

De esta forma se plantea el uso del simulador de navegación desde diferentes perspec-
tivas, tales como son los puntos de vista del marino, del ingeniero naval, del armador y
desde la ingenierı́a de sistemas y la automática.

3.12.1 Caracterı́sticas del Simulador de Navegación

El Simulador de Navegación C.A.S.E.M es un equipo versátil que permite la realización


de ejercicios en diferentes escenarios, como son: el Estrecho de Gibraltar, con puntos de
atraque en los puertos de Algeciras y Gibraltar; el Canal de la Mancha, con puntos de
atraque en el puerto de Dover y Calais; aproximación y puerto de Europort; y aproxi-
mación y puerto de New York. Dentro de esta variedad de escenarios, el usuario puede
elegir entre una serie de buques que son: Ferry, Carga general, Portacontenedores, Bulk-
carrier, Petrolero en carga y en lastre. También se tiene la posibilidad de generar nuevos
modelos de buques tomando como base las caracterı́sticas de un buque real.

Los ejercicios y condiciones de los mismos son generados desde el puesto del instruc-
tor. Desde él se pueden controlar las diferentes variables de entorno como son: estado de
la mar y viento, lluvia, marea, profundidad, corriente, visibilidad y remolcadores, entre
otras.

El conjunto de equipos que constituyen el simulador se agrupan en dos recintos, co-


rrespondientes a la sala de simulación y a la del instructor. La sala de simulación, que
representa el escenario y el puente de gobierno de un buque, consta de:

1. Una consola de gobierno dotada de sistemas: automático, non-follow-up y follow-


up, control de bombas del servotimón y repetidor de giroscópica.

2. Una consola de control de la propulsión para dos hélices independientes de paso


controlable y dos hélices laterales de paso fijo con revoluciones controlables.

3. Una consola de radionavegación/derrota con receptores: GPS, Loran C, radiogo-


niómetro, sonda-plotter y mesa de cartas náuticas.

4. Una consola de comunicaciones Inmarsat C y VHF.

5. Dos radares Atlas Electronik, uno de ellos tipo ARPA.


3.12. SIMULADOR DE NAVEGACIÓN DE ALTAS PRESTACIONES 107

6. Una consola de techo con indicadores de: viento, correderas doppler y electro-
magnética, pantallas digitales de rumbo verdadero y magnético, velocidades de
caı́da de proa y popa, revoluciones de la hélices y distancia navegada.

7. Siete pantallas translúcidas formando un arco de 210 grados de visión con 7 proyec-
tores.

En la sala del instructor está ubicado el servidor de red y el ordenador de control de


la simulación, con un monitor en color de 20”; plotter e impresora laser; un terminal de
comunicaciones Inmarsat C, VHF y comunicaciones interiores, ası́ como un proyector y
un monitor para para reproducir la imagen rádar. El sistema informático consta de un
conjunto de cinco microordenadores y el servidor, conectados en red local (Ethernet) y
trabajando bajo Windows NT.

Además de los modelos de buques que incorpora el simulador, se pueden generar


nuevos tipos de buques creando archivos que contengan la información de los 166 datos
que utiliza el simulador para reproducir el comportamiento real de la nave. Estos datos se
pueden agrupar en 4 grandes grupos:

1. Datos generales del buque, coeficientes hidrodinámicos, y estructuras expuestas al


viento.

2. Hélices, propulsión y timones.

3. Autopiloto.

4. Efecto del fondo, defensas de muelle, cabos, anclas y remolcadores.

Además de los datos correspondientes al estado de la mar, mareas, viento y corrientes.

El modelo matemático empleado en el Simulador es un modelo de tipo modular al-


tamente sofisticado, desarrollado por Sindel (Atlas Elektronik, 1995), mediante el cual
se puede realizar el cálculo del movimiento del buque en el plano horizontal, cubriendo
toda la gama de condiciones de operación, como por ejemplo para bajas velocidades (en
operaciones de atraque y partida de puerto), en maniobras de todo tipo y en navegación
en alta mar. El modelo matemático no contempla los movimientos de giro (balance, y
cabezada) ni el desplazamiento vertical del barco.
108CAPÍTULO 3. MODELADO MATEMÁTICO DE LA DINÁMICA DE UN BUQUE

3.12.2 Diferentes aspectos para su aprovechamiento

La utilización del Simulador de Navegación del C.A.S.E.M. como herramienta cientı́fica,


además de ser una excelente herramienta de docencia, es manifiesta desde cuatro puntos
de vista:

1. De la Navegación: se puede entrenar a los profesionales de la mar con el fı́n de


dotarles de cierta experiencia en el gobierno de buques similares. Si no se conocen
los coeficientes hidrodinámicos del buque simulado, pueden estimarse mediante
pruebas normalizadas realizadas en buques reales de caracterı́sticas similares. Si
no existiesen buques parecidos al que se quiere simular, serı́a necesario un análisis
previo en un Canal de Experiencias Hidrodinámicas que proporcionase los valores
de dichos coeficientes y los datos de velocidad de caı́da a partir del tipo de propulsor
y apéndice empleado.

2. De la Ingenierı́a Naval: una vez modelado el buque real en el Simulador se pueden


modificar los parámetros del mismo con el fı́n de analizar los resultados de las
modificaciones, como pueden ser diferencias en la forma del casco, revoluciones
del propulsor, tamaño y forma del apéndice, variación del centro de gravedad, etc.
Este tipo de experimentos es complementario a los desarrollados en los Canales
de Experiencias Hidrodinámicas, dado que permiten evaluar el comportamiento de
los buques en codiciones que no pueden realizarse en modelos a escala y además
permite obtener la respuesta del comportamiento de buques a tamaño real cuando
se navegue en aguas profundas o someras, con o sin corrientes y viento, o cuando
se desee atracar o zarpar de un puerto conocido en las condiciones más adversas
que se puedan simular.

3. De la Ingenierı́a de Sistemas y la Automática. Se puede utilizar el simulador de


navegación para:

• Identificar la dinámica de un buque ante distintos tipos de condiciones de op-


eración, es decir, a distintas velocidades, con distintos estados de carga y con
diversas condiciones meteorológicas, ası́ como en distintos escenarios o cala-
dos.
• Integrar el simulador con modelos de autopilotos o con autopilotos reales que
gobiernen el buque ante distintos tipos de perturbaciones.
• Optimizar el regulador PID del autopiloto convencional y generar reglas de
uso del autopiloto para el marino.
• Diseño de autopilotos basado en técnicas de control avanzadas.
3.12. SIMULADOR DE NAVEGACIÓN DE ALTAS PRESTACIONES 109

4. De la Empresa: el armador puede conocer cómo va a comportarse un futuro buque


que desee adquirir, antes de iniciar la construcción, por lo que puede evaluar si el
buque que tiene en proyecto podrá o no satisfacer sus necesidades, si va a poder
maniobrar en un puerto especı́fico, si va a ser tan rápido como él espera o si en
ciertas condiciones meteorológicas o de carga no va a ser rentable. Además, puede
enviar a sus tripulaciones con el fin de entrenamiento y familiarización tanto con los
nuevos buques como con nuevos equipos de navegación o gobierno y con nuevas
técnicas de maniobra o navegación, con lo que consigue la preparación y actual-
ización técnica de sus tripulaciones.

En la figura 3.15 se representa esquemáticamente un método para la integración de


tres aspectos prácticos para el estudio de la dinámica del buque: 1) pruebas de mar con
buque real, 2) pruebas con simulador de navegación de altas prestaciones, 3) pruebas
como modelos simplificados sobre PC, obtenidos a partir de los datos experimentales y/o
del simulador de navegación.
110CAPÍTULO 3. MODELADO MATEMÁTICO DE LA DINÁMICA DE UN BUQUE

Figura 3.15: Integración de pruebas reales y simulación por computador


Capı́tulo 4

Modelos Matemáticos de las


Perturbaciones

4.1 Introducción

Para realizar el estudio de la dinámica del buque mediante simulación por computador es
necesario considerar las perturbaciones ambientales que sobre él actuan. La principales
perturbaciones son debidas al viento, corrientes y olas. En este capı́tulo se describen
diferentes formas de modelar matemáticamente tales perturbaciones, a fin de poderlas
utilizar a la hora de realizar una simulación por ordenador.

4.2 Un método general para modelar las perturbaciones

Los movimientos de un buque están influenciados por distintos factores ambientales. Los
tres principales pueden considerarse el viento, olas y corrientes. Una forma útil de ten-
er en cuenta las perturbaciones ambientales, imprecisión en sensores y otros efectos, es
por medio de la superposición de señales estocásticas (W1 , W2 ), constantes (Wc1 , Wc2 )
y senoidales (Ws1 , Ws2 ) actuando sobre el sistema (Astrom y Wittenmark, 1989). Este
es el procedimiento empleado habitualmente en las simulaciones realizadas con modelos
lineales.

Se consideran dos tipos de perturbaciones estocásticas: una que actúa sobre el pro-

111
112 CAPÍTULO 4. MODELOS MATEMÁTICOS DE LAS PERTURBACIONES

ceso W1 y la otra que se considera actuando sobre la medida o sensores W2 . Suponiendo


que el sistema (modelo matemático) es lineal e invariante en el tiempo (LTI), una real-
ización en el espacio de estados serı́a de la forma:

Ẋp (t) = Ap Xp (t) + Bp Up (t) + Γ [W1 (t) + Wc1 (t) + Ws1 (t)]

Yp (t) = Cp Xp (t) + W2 (t) + Wc2 (t) + Ws2 (t) (4.1)

donde las matrices Ap , Bp , Cp , Dp , Γ son constantes, y Xp , Up , Yp corresponden al vector


de estado, control y medida.

Si se trata de un sistema de simple entrada y simple salida, W1 y W2 son magnitudes


escalares, en caso de tratarse de un sistema multivariable W1 y W2 van a ser vectores de
dimensión 2.

En el caso más general (multivariable), se van a caracterizar por:

 
σw11 0
covar[W1 ] =
0 σw12
 
σw21 0
covar[W2 ] = (4.2)
0 σw22
 
0 0
covar[W1 , W2 ] =
0 0

con,
W1 (t) = [w11 (t), w12 (t)]T , W2 (t) = [w21 (t), w22 (t)]T

La perturbación W1 (t) se utiliza para modelar los siguientes tipos de factores (Mendel,
1987; Astrom, 1980):

1. Perturbaciones de fuerzas y pares actuando sobre el sistema (efecto del viento, olas,
corrientes y otros factores posibles)

2. Errores de modelado en el sistema (dinámica no modelada)


4.3. EFECTO DEL VIENTO 113

3. Errores debidos a actuadores.

Mientras que W2 (t) tiene en cuenta:

1. Errores en las medidas cometidos por los sensores.


2. Perturbaciones inevitables que actúan sobre los sensores.

La perturbación de tipo constante, actuando a la entrada y/o a la salida de la planta


(buque), servirı́a como modelo simple del efecto del viento medio, corriente, posibles
errores estacionarios de los actuadores y sensores. La componente senoidal constituye
una forma simple de modelar el efecto de las olas regulares.

Otra forma de tener en cuenta los efectos de las perturbaciones ambientales es como
se describe a continuación, y supone una alternativa que se emplea en las simulaciones
con los modelos no lineales (MODNL , NORRB 3 D , ABKO 3 D) descritos a lo largo del texto.

El efecto de una perturbación ambiental (viento, olas, corrientes) va a depender de la


dirección en que esta actúe. En la figura 4.1 se representa esquemáticamente una pertur-
bación actuando sobre el buque, en cada caso los ángulos (μ, γ) podrán corresponder a:
(μvi , γvi ), (μola , γola ) ó (μcorr , γcorr ) según el tipo de perturbación de que se trate.

4.3 Efecto del viento

El viento es una importante perturbación en el sistema de control de un buque (Isherwood,


1972). Las fuerzas y pares causadas por el viento dependen de su dirección y velocidad
(figura 4.1). Puede considerarse compuesta de un término debido al viento medio y de
otro producido por el viento turbulento.

Las fuerzas y momentos debidas al viento medio están dadas por:

Xvi = CX (μvi ) 12 ρaire VRvi


2
AT

Yvi = CY (μvi ) 12 ρaire VRvi


2
AL

Nvi = CN (μvi ) 12 ρaire VRvi


2
AL L

Kvi = lw Yvi
114 CAPÍTULO 4. MODELOS MATEMÁTICOS DE LAS PERTURBACIONES

Figura 4.1: Perturbación actuando sobre el buque

donde el significado de las variables es:

• ρaire es la densidad del aire

• CX , CY , CN son coeficientes que depende del ángulo relativo entre el vector


velocidad medido a bordo y la dirección de la componente axial de la velocidad de
avance del buque.

• lw brazo del par de balance.

• VRvi velocidad del viento medida a bordo.

• AT área de la sección transversal del buque.

• AL área de la sección longitudinal del buque.

Los coeficientes CX , CY , CN se obtienen experimentalmente, pero una aproxi-


mación válida (Amerongen, 1981) consiste en emplear:
4.3. EFECTO DEL VIENTO 115

CX (μvi ) = ĈX cos μvi

CY (μvi ) = ĈY sen μvi

CN (μvi ) = ĈN sen (2μvi )

siendo valores usuales para un buque mercante los siguientes:

ĈX = 0.5, ĈY = 0.9, ĈN = 0.15

La velocidad relativa del viento y sus componentes en los ejes fijados al buque se
calculan de,

uRvi = Vvi cos (γvi − ψ − π) − u − ucorr

vRvi = Vvi sen (γvi − ψ − π) − v − vcorr



VRvi = u2Rvi + vRvi
2

μvi = arctg (vvi /uvi ) + π si uRvi ≥ 0

μvi = arctg (vvi /uvi ) + (2π si vRvi > 0) si uRvi < 0

La componente debida al viento turbulento puede considerarse como una rea-


lización de ruido blanco gaussiano añadido a las fuerzas y pares causados por la compo-
nente media. Las intensidades vendrı́an dadas aproximadamente por (Kallstrom, 1981):

σX = ρaire Vvi | CX (μvi | L2 σ

σY = ρaire Vvi | CY (μvi | L2 σ

σN = ρaire Vvi | CN (μvi | L3 σ

donde σ es la intensidad de la turbulencia. La cual puede considerarse proporcional a la


velocidad del viento. Una aproximación usada es,

σ = 0.2Vvi
116 CAPÍTULO 4. MODELOS MATEMÁTICOS DE LAS PERTURBACIONES

Grado Denominación Velocidad del viento Altura de olas


(nudos) (metros)
0 Calma <1 0-1
1 Ventolina 1-3
2 Flojito 4-6 1-2
3 Flojo 7 - 10 2-3
4 Bonancible 11 - 16 3-4
5 Fresquito 17 - 21 4-5
6 Fresco 22 - 27 5-6
7 Frescachón 28 - 33 6-7
8 Temporal 34 - 40 7-8
9 Temporal
Fuerte 41 - 47 8-9
10 Temporal
duro 48 - 56 9 - 10
11 Temporal
muy duro 57 - 63 10 - 11
12 Temporal
huracanado 64 11+

Tabla 4.1: Escala Beaufort

4.4 Efecto de las olas

El efecto del mar sobre el movimiento de un buque puede considerarse integrado por
dos componentes. Una denominada mar regular y la otra mar aleatoria, estocástica
o irregular. Empleando la teorı́a de olas gravitatorias (Price and Bishop, 1974) y una
aproximación lineal, se obtienen soluciones útiles para caracterizar en simulación el mar
regular. Si se suponen las siguientes condiciones:

• Las olas se pueden aproximar por una onda progresiva con un frente de onda sufi-
cientemente extenso.

• Hay una profundidad del mar lo bastante grande.

• La amplitud de la ola es pequeña comparada con su longitud de onda.

• El agua es incompresible.
4.4. EFECTO DE LAS OLAS 117

se puede obtener que la elevación de la superficie del mar ξ en un punto x0 es generada


por una onda progresiva (Zuidweg, 1970; Price y Bishop, 1974) expresada como,

H
ξ(x0 , t) = cos(kx0 − ωt)
2
siendo,

4π 2 2π
k= 2
, λ= , ω = 2π/Tola
gTola k

donde λ la longitud de onda de la ola, g es la aceleración de la gravedad, Tola es el perı́odo


de la ola y H es su altura.

Considerando un buque como un paralelepı́pedo de dimensiones LxBxD, des-


plazándose por la superficie del agua con una velocidad V , puede obternerse el efecto que
sobre él producen las olas. Si se supone que (Zuidweg, 1970; Kallstrom, 1979):

• Las fuerzas y momentos solo son debidos a efectos de la presión.

• El campo de ondas no es perturbado por la presencia del barco.

• La influencia de las olas se tiene en cuenta considerando las fluctuaciones de la


distribución de presiones bajo el agua, mientras que la superficie de ésta permanece
inalterada.

Se obtienen las siguientes expresiones:

sen b sen c
Xola = 2aB s(t)
c

sen b sen c
Yola = −2aL s(t)
b

 
2 c cos c − sen c b cos b − sen b
Nola = ak B sen b 2
− L2 sen c ξ(t)
c b2
118 CAPÍTULO 4. MODELOS MATEMÁTICOS DE LAS PERTURBACIONES

Kola = lola Yola

con:

a = ρagua g(1 − (exp(−kTola )/k 2 ))

b = (kL/2) cos μola

c = (kB/2) sen μola

s(t) = (kH/2) sen (ωe t)

ξ(t) = (H/2) cos(ωe t)

μola = π − (γola − ψ)

siendo γola la dirección de propagación de las olas, lola es el brazo del par de balance,
μola es el ángulo en que llegan las olas observado desde el buque (ver figura 4.1), y ωe
la frecuencia angular de encuentro de las olas observadas a bordo:

ωe = ω + (ω 2 /g)(−Vx cos μola + Vy sen μola )

Las ecuaciones anteriores son las empleadas en las simulaciones con los modelos
matemáticos no lineales MODNL , ABKO 3 D , NORRB 3 D a la hora de tener en cuenta el
efecto del mar regular.

El mar denominado irregular o aleatorio se puede caracterizar por la densidad espec-


tral de las amplitudes de las olas, la cual puede expresarse de forma adecuada por una
expresión de la forma,

 2
691 H1/3 691
S(ω) = 4 5 exp(− 4
)
Tola ω 2 Tola ω4

siendo Tola el perı́odo medio y H1/3 la altura significativa (ver figura 4.2) de las
olas irregulares (Amerongen, 1981; Price y Bishop, 1974). A partir del conocimiento de
4.4. EFECTO DE LAS OLAS 119

Figura 4.2: Parámetros de olas

S(ω) podrı́an estimarse valores de las amplitudes asociadas a determinadas frecuencias, y


superponerlas como olas regulares independientes (armónicos) para obtener el efecto del
mar aleatorio (ver figura 4.3).

4.4.1 El espectro de ola de Pierson-Moskowitz

El espectro de ola de Pierson y Moskowitz (1964), fué obtenido experimentalmente me-


diante al análisis extensivo de datos de olas relacionados con condiciones de la mar en el
Atlántico Norte. Estos autores obtuvieron que la densidad espectral de las amplitudes de
las olas podı́a modelarse mediante una expresión de la forma,

8.1 · 10−3 g 2
Sζζ (ω) = exp(−0.74(g/V ω)4 )
ω5

donde V es la velocidad del viento a una altura de 19.5 metros sobre el nivel del mar.
120 CAPÍTULO 4. MODELOS MATEMÁTICOS DE LAS PERTURBACIONES

Las dos formas mas utilizadas del espectro de olas son las adoptadas por el Interna-
tional Towing Tank Conference (ITTC), y por el International Ship Structure Congress
(ISSC). Ambas formas están basadas en la forma general del espectro de Pierson-Moskowitz:

A
Sζζ (ω) = exp(−B/ω 4 )
ω6

donde ω es la frecuencia de las olas en rad/s, y A y B son constantes.

4.4.2 El espectro de ola del ITTC

Si la única información disponible es la altura significativa de la ola, H1/3 , entonces se


toma,

3.11
A = 8.1 · 10−3 y B = 2
(4.3)
H1/3

en el espectro de Pierson-Moskowitz, donde H1/3 se expresa en metros y g es el valor de


la gravedad en m/s2 . El término ,valor ”significativo”, se usa para definir al valor medio
de las tres observaciones más altas de las alturas de olas medidas.

4.4.3 El espectro de ola del ISSC

Si la información disponible es el perı́odo caracterı́stico de la ola, entonces se emplea,

2
173H1/3 691
A= , y B=
T14 T14

en el espectro de Pierson-Moskowitz, donde el perı́odo caracterı́stico es,

m0
T1 = 2π
m1

y los valores de m0 y m1 se calculan de,


4.4. EFECTO DE LAS OLAS 121

Figura 4.3: Densidad espectral de altura de olas


122 CAPÍTULO 4. MODELOS MATEMÁTICOS DE LAS PERTURBACIONES

 ∞
mn = ω n Sζζ (ω)dω
0

Para un espectro de ola direccional el ITTC y el ISSC recomiendan el uso de la función


extendida de la potencia del coseno en la forma,

Sζζ = (ωμ)A(n)cosn μ φζζ (ω)

donde | μ |≤ π/2 y μ es la dirección referida a la dirección predominante del viento;


A(n) es un factor normalizado dado como (Price y Bishop, 1974),

2
n = 2, A(n) = , para el espectro del ITTC
π

8
n = 4, A(n) = , para el espectro del ISSC

4.4.4 El espectro de ola de Darbyshire

 1/2
(ω − ωo )2
Sζζ (ω) = A exp −
0.054(ω − ωo + 0.265)

= 0 si, (ω − ωo ) < 0.265

donde se tiene,

1/2
A = 0.186 10−5 Vvi4 , ωo = 6.287(1.94Vvi + 2.5 10−7 Vvi4 )−1

tomando las medidas de Vvi en m/s, y de ω en rad/s, se tendrá Sζζ (ω) en m2 .


4.4. EFECTO DE LAS OLAS 123

4.4.5 El espectro de ola del BTTP

Esta versión corresponde al espectro dado por el British Towing Tank Panel (BTTP), y
tiene la expresión,

 1/2
(ω − ωo )2
Sζζ (ω) = A exp −
0.065(ω − ωo + 0.265)

= 0 si, 1.65 < (ω − ωo ) < 0.265

donde se tiene,

A = 21.5(0.0625Vvi − 0.442)2

ωo = 6.142(0.1545Vvi + 7.389)−1

tomando las medidas de Vvi en m/s, y de ω en rad/s, se tendrá Sζζ (ω) en m2 .

4.4.6 El espectro de ola como respuesta de un filtro

Otra alternativa de modelar el mar aleatorio consiste en aproximar la densidad espectral


por expresiones racionales, a partir de las cuales empleando el Principio de Factorización
Espectral y el Teorema de Realización (Astrom, 1970; Kwakernaak y Sivan, 1991) se
puede obtener un filtro que genere un espectro aproximado a partir de la inyección de
ruido blanco a su entrada.

El método empleado en las simulaciones con componente de mar estocástico expues-


tas a lo largo del texto se basa en el planteamiento anterior. A efectos de simulación
se emplea un filtro Gf paso-bajo de segundo orden subamortiguado con frecuencia
natural igual a la del máximo de la curva de densidad espectral S(ωe ) y coeficiente
de amortiguamiento (ζ) entre 0.05 y 0.1. Teniendo como ventaja su simplicidad para
simulación, al mismo tiempo que da una descripción cualitativa adecuada de las olas ir-
regulares (Amerongen, 1981; Grimble, 1995).
124 CAPÍTULO 4. MODELOS MATEMÁTICOS DE LAS PERTURBACIONES

we2
Gf (s) =
s2 + 2ζωe s + ωe2

A partir de las observaciones experimentales realizadas por diferentes investigadores


(Price y Bishop, 1974; Lewis, 1989), se tienen tablas donde se recogen los datos es-
tadı́sticos referentes a olas en diferentes situaciones atmosféricas. Un ejemplo puede
verse en la tabla 4.4, en la que se dan los porcentajes correspondientes a distintas alturas
y perı́odos de las olas observados en la zona del Atlántico Norte. Los datos de tablas de
este tipo son las que se suelen emplear en las simulaciones para decidir la altura y perı́odo
de las olas, a fin de que correspondan a magnitudes obtenidas a partir de la toma de datos
experimentales.

4.4.7 Altura y perı́odo de olas en función del viento

A partir de los datos experimentales tomados por diferentes autores, de las olas en di-
ferentes condiciones ambientales, se puede establecer un relación que ligue de forma
aproximada la altura de ola previsible, H, con la velocidad del viento Vvi (Price y Bishop,
1974):

H = 1.5 + 0.015Vvi2

Por otro lado, también se puede obtener una expresión aproximada a partir de los datos
experimentales, que relacione la velocidad del viento con el perı́odo de ola Tola :

Tola = 5.6 + 0.042Vvi2 − 0.0014Vvi3

Las expresiones anteriores están dadas para el sistema internacional de unidades, y se


puede considerar que tienen un grado de aproximación válido para el rango de velocidades
del viento:
0 ≤ Vvi ≤ 20 m/s
4.5. EFECTO DE LA CORRIENTE 125

4.5 Efecto de la corriente

Si se supone una corriente constante y homogénea con velocidad Vcorr y dirección γc


(ver figura 4.1), las componentes de la velocidad de la corriente referidos al sistema de
referencia fijado en el buque serán:

ucorr = Vcorr cos (γc − ψ − π)

vcorr = Vcorr sen (γc − ψ − π)

El efecto de la corriente modifica las componentes de la velocidad del buque con


repecto a tierra,

uo = u + ucorr y vo = v + vcorr

donde u, v son las componentes de la velocidad del buque con respecto al agua. La
corriente produce unas perturbaciones (fuerzas Xcorr , Ycorr , y momento Ncorr ) sobre el
buque dadas por (Kallstrom, 1979):

Xcorr = m vcorr ψ̇

Ycorr = −m ucorr ψ̇
Ncorr = −m ucorr ψ̇xG

** Nota aclaratoria **

En este capı́tulo (perturbaciones sobre el buque), ası́ como en el anterior (modelos matemáticos
del buque) se ha optado por mantener la nomenclatura habitual que aparece en los textos
relacionados con la materia. Sin embargo, la nomenclatura empleada puede cambiar, tal y
como se hace en el siguiente capı́tulo sobre identificación de sistemas, ya que por afinidad
con la nomenclatura empleada en identificación y control se emplea una simbologı́a de-
terminada para indicar por ejemplo: la señal de entrada (u), la señal de salida (y), etc.,
lo cual no debe llevar a ninguna confusión, ya que en cada caso se conoce el significado
fı́sico de las variables empleadas.
126 CAPÍTULO 4. MODELOS MATEMÁTICOS DE LAS PERTURBACIONES

Figura 4.4: Porcentajes observados de altura de olas y perı́odos (Atlántico Norte)


Capı́tulo 5

Identificación de Sistemas. Aplicación al


Buque

5.1 Introducción

Se puede definir la materia conocida por identificación de sistemas como el conjunto de


métodos que se encargan de realizar el modelado de los sistemas dinámicos a partir de la
toma de datos experimentales. En la figura 5.1 se muestra el concepto de sistema visto
como una ”caja negra”, a la que le llegan las señales correspondientes a las variables de
entrada u, y las perturbaciones v; y que proporciona una respuesta medible y, o variables
de salida.

La identificación de sistemas tiene utilidad en multitud de áreas de conocimiento. Ası́,


si se considera el ámbito de la industria de procesos, como por ejemplo la producción de
papel, acero, vidrio y componentes quı́micos, entre otros, se observa que para controlar
de forma eficiente dichos procesos resulta conveniente disponer de algún tipo de mode-
lo del proceso, de forma que sirva para el diseño de los reguladores, ası́ como para su
análisis. Lo anterior es igualmente aplicable para el control de un buque, ası́ como de los
diferentes subsistemas que éste lleva incorporados. En el ámbito del procesamiento de
señales, los modelos obtenidos por los métodos de identifición de sistemas tienen entre
otras aplicaciones: análisis de espectros, detección de fallos, reconocimiento de patrones
y filtrado adaptativo. También se están empleando con buenos resultados en otros áreas
como la biologı́a, ciencias del medio ambiente y economı́a.

El fin que se persigue con la identificación de un sistema dinámico puede ser: 1) el

127
128 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

Figura 5.1: Proceso de identificación

obtener modelos que sirvan para incrementar el conocimiento cientı́fico que se tenga sobre
el sistema, 2) para realizar estimaciones o predicciones, y 3) para control. En el caso de
un buque, se puede decir que se presentan los tres objetivos anteriores, dado que: 1) por
un lado se puede mejora el conocimiento sobre los complejos efectos hidrodinámicos que
se dan sobre el casco; 2) se pueden realizar simulaciones que estimen el comportamiento
del buque en diversas condiciones de navegación; y 3) si se proyecta diseñar un nuevo
sistema de control, por ejemplo para el gobierno del rumbo y la reducción del movimiento
de balance, puede utilizarse el modelo identificado durante las fases de diseño y análisis.

En este capı́tulo se van a tratar los métodos de identificación de sistemas para la ob-
tención de un modelo matemático de un sistema dinámico, y en particular para un buque.
En general, existen dos metodologı́as de obtención de modelos matemáticos de sistemas
dinámicos:

• Modelado matemático. Es un tratamiento analı́tico o teórico, en el que se tienen en


cuenta el conocimiento a priori que se tenga del sistema y se utilizan las leyes de
la fı́sica, quı́mica, etc., para describir el comportamiento dinámico del sistema bajo
estudio.
En lo que se refiere al modelado de buques, hay que decir que se han realizado
considerables esfuerzos para la obtención de modelos teóricos desarrollados para
obtener los coeficientes hidrodinámicos, otros parámetros y los efectos de las per-
turbaciones sin la necesidad de datos experimentales (Price y Bishop, 1974; Lloyd
1989). El conjunto de teorı́as se agrupan bajo el encabezado general de ”strip
theory” (por ejemplo, la conocida como slender body strip theory). Si bien, a
5.1. INTRODUCCIÓN 129

diferencia del caso de los aviones, para los buques no han dado todos los buenos
resultados que cabrı́a esperar (Lewis, 1989), por lo que han de combinarse con los
métodos experimentales para obtener modelos matemáticos adecuados.

• Identificación de sistemas. Es un procedimiento experimental, consistente en


someter al sistema bajo estudio a un conjunto de pruebas, y a la toma de datos
medidos. El modelo matemático se obtiene mediante técnicas de ajuste de los datos
experimentales a determinadas estructuras de modelos prefijadas.

El empleo de uno u otro método, o la combinación de ambos, va a depender de cada


caso particular. En muchos casos el proceso a modelar es de tal complejidad que no es
posible obtener unos modelos razonables a partir de un tratamiento teórico; por lo que en
tales situaciones se hace necesario el empleo de técnicas de identificación. Otra situación
ilustrativa corresponde al caso de que mediante un procedimiento teórico se llegan a un
modelo del que se desconoce el valor de ciertos parámetros, por lo que se puede emplear
un método de identificación para estimarlos.

Los modelos matemáticos obtenidos mediante técnicas de identificación de sistemas


se caracterizan por las siguientes propiedades:

• Tienen un rango de validez limitado (son válidos para unas condiciones de op-
eración dadas, para un cierto tipo de entrada, etc.)

• Proporcionan poco o ningún conocimiento sobre las leyes fı́sicas que describen al
sitema (ya que en muchos casos los parámetros del modelo do tienen un significado
fı́sico).

• En muchos casos, se pueden obtener de una forma relativamente sencilla, sobre todo
si se dispone de algoritmos eficientes para el cálculo; por ejemplo las ”toolboxes”
para Matlab de identificación de sistemas (Ljung, 1988; Kollar, 1995).

La aplicación de una metodologı́a de identificación de sistemas requiere la interacción


y conocimientos del usuario, ya que hay una serie de razones que hacen necesaria su
intervención, tales como,

• Se debe seleccionar una estructura adecuada. Cosa que puede ser un problema
difı́cil, sobre todo si la dinámica del sistema es fuertemente no lineal.

• Los datos de medida están afectados por imprecisiones y ruidos que han de tenerse
en cuenta.
130 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

• El sistema puede experimentar variaciones apreciables en el tiempo, por lo que se


hace necesario determinar si un modelo lineal invariante en el tiempo es adecuado
o no.

• La medida de ciertas variables, esenciales para el modelo, puede resultar difı́cl o


imposible.

La práctica de una identificación de sistemas consiste en la realización de un experi-


mento (a veces preparado para tal fin, y en otras consistente sólo en la toma de datos de
un sistema en operación que no puede ser sometido a experimentación, por razones de
producción, seguridad etc.) que consiste en excitar al sistema mediante la introducción de
señales de prueba adecuadas (señal tipo salto o escalón, impulso, senoidal, multisenoidal,
binaria pseudo aleatoria, ruido blanco, etc.) y la toma de datos de ciertas variables medi-
bles. Los datos tomados se pueden procesar en lı́nea ( on-line) (por ejemplo si es necesario
una actualización del modelo para realizar control adaptativo), o fuera de lı́nea ( off-line)
una vez terminada la toma de datos. En la figura 5.2 se muestra un diagrama de flujo sobre
un procedimiento a seguir a la hora de aplicar algunas de las técnicas de identificación de
sistemas.

En este capı́tulo no se pretende realizar una descripción exhaustiva de los diferentes


métodos de identificación que existen en la actualidad; únicamente se describen algunos
de éstos, y en particular los empleados para obtener el modelo matemático de un buque.
Una exposición mucho más detallada sobre métodos de identificación de sistemas puede
encontrarse en los trabajos especializados de diferentes autores (Ljung, 1987; Astrom y
Wittenmark, 1989; Landau, 1989; Isermann, 1981; Mendel, 1987; Soderstrom y Stoica,
1989; Ollero, 1991; Isermann et. al, 1992; Astrom y Wittenmark, 1984; Narendra et al.,
1990).

En general, los métodos de identificación de sistemas dinámicos se pueden clasificar


en: 1) métodos paramétricos, en los que el modelo del proceso se describe por un con-
junto de parámetros, y 2) métodos no paramétricos, que se caracterizan por la propiedad
de que los modelos resultantes pueden ser curvas, funciones o datos, que no son necesari-
amente parametrizables por un vector de parámetros.

Entre los métodos no paramétricos se pueden destacar: 1) análisis transitorio de


respuestas a señales tipo pulso, escalón e impulso; 2) análisis frecuencial, en el que se
emplea como entrada una señal senoidal; 3) análisis de correlación, donde se emplea
ruido blanco como señal de entrada. 4) análisis espectral, en el que se determina la
respuesta en frecuencia a partir de señales de entrada arbitrarias.

Los métodos paramétricos suponen una estructura dada para el modelo, y obtienen los
5.1. INTRODUCCIÓN 131

Figura 5.2: Metodologı́a de la identificación


132 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

valores numéricos de los parámetros desconocidos correspondientes a dicha estructura.


Cabe mencionar: análisis de regresión; modelos estocásticos del tipo AR , MA , ARMA ,
ARIMA , ARX , ARMAX , que emplean métodos basados en el error de predicción, ası́ como
el método de la variable instrumental; y los métodos basados en el filtro de Kalman.

El capı́tulo está organizado como sigue: en primer lugar se describen los métodos
basados en la respuesta temporal para algunas señales tipo, y en particular para el buque
mediante las maniobras de espiral y la curva de reacción. A continuación se pasa a
describir algunos de los métodos experimentales sobre modelos a escala empleados en
Canales de Experiencias Hidrodinámicas. También se describen algunos métodos basa-
dos en la respuesta en frecuencia, transformadas de Fourier y los métodos de correlación.
Se continua con la descripción de algunos métodos que se basan en la minimización del
error de predicción y el filtro de Kalman.

5.2 Selección de las señales de entrada

El tipo de señal de entrada empleada en un experimento de identificación va a tener una


influencia muy significativa sobre los valores de los parámeros estimados. En la práctica
se suelen emplear las siguientes señales de prueba:

• Impulso. Desde el punto de vista matemático la señal impulso corresponde a la


función delta de Dirac, por lo que en la práctica es irrealizable para un sistema de
tiempo continuo (no ası́ para uno de tiempo discreto), por ello se emplean aproxi-
maciones.

• Salto o escalón. Señal caracterizada por la amplitud del cambio o salto instantáneo
teórico, que en la práctica no es tal, pero se puede conseguir una buena aproxi-
mación.

• Pulso. Señal caracterizada por su amplitud, duración y forma. El más empleado


en la práctica es el pulso rectangular.

• Ruido coloreado. Caracterizado por un espectro aproximadamente constante a


bajas frecuencias, y decreciente a altas. Se puede generar como la respuesta de un
filtro digital a una señal aleatoria que emule el ruido blanco (existen algoritmos para
generar este tipo de ruido mediante computador).

• Senoide. Caracterizada por su amplitud y frecuencia.


5.3. MANIOBRA DE ESPIRAL 133

Figura 5.3: Señales de prueba para realizar la identificación

• Multisenoide. Superposición de senoides de diferentes amplitudes, frecuencias y


desfases.

• Binaria pseudoaleatoria (PRBS). Señal que toma dos únicos valores, que varı́an
según un perı́odo, una amplitud y una longitud (existen algoritmos para generar este
tipo de señal por ordenador). Esta señal es de tipo determinista, sin embargo sus
propiedades estadı́sticas hacen que se aproxime al ruido blanco.

El empleo del tipo de señal dependerá del método que se emplee para la identificación.
En cualquier caso la idea que subyace es que el sistema sea excitado con la mayor riqueza
posible, a fin de que se puedan identificar todos sus modos asociados. A mayor riqueza
de la señal de entrada, mejor aproximación se puede obtener en general.

5.3 Maniobra de Espiral

La maniobra de espiral (Lewis, 1989) sirve para caracterizar la estabilidad direccional


de un buque, a la vez que para obtener una relación estacionaria entre el ángulo de timón
δ y la velocidad angular r = ψ̇. Esta relación,

δ = H(r), espiral directa


134 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

r = Hi (δ), espiral inversa

se utiliza en los modelos matemáticos de Bech, de Van Leeuwen, y en el modelo simpli-


ficado de Norrbin (ver capı́tulo III); de forma que sirve para describir la relación no lineal
existente entre las variables r y δ cuando se realizan maniobras que requieren grandes
metidas de timón en magnitud y en tiempo de duración.

La maniobra de espiral consiste en:

1. Buque navegando inicialmente en lı́nea recta con velocidad constante.

2. Se pone el timón a +δ0 grados (estribor), y se espera hasta que se alcance el estado
estacionario ψ̇ ≡ r = cte.

3. Se disminuye en Δ1 δ grados y se vuelve a esperar el estado estacionario.

4. Se repite la operación hasta la proximidad de cero grados, anotándose en cada caso


los valores de los ángulos de timón y velocidad angular estacionaria.

5. Se va disminuyendo el ángulo de timón con un decremento más pequeño, Δ2 δ. Se


puede dar la circunstancia de que aunque el timón ha cambiado de signo, aún no lo
haya hecho la velocidad angular, y que llegado a un valor dado de δ, se produzca
un cambio de gran magnitud y muy rápido (en comparación con la dinámica propia
del buque) en r, cambiando su signo, correspondiéndose ahora sı́ con el signo de
δ. Esta caracterı́stica es propia de los buques con inestabilidad direccional, que se
caracterizan por girar en contra del ángulo de su timón hasta un cierto valor de éste,
a partir del cual y de forma súbita, el buque empieza a girar en dirección contraria
(la esperada según el ángulo de timón metido).

6. Se continua el procedimiento con decrementos de Δ1 δ grados, hasta llegar a −δ0


grados (babor).

7. Se repite el proceso, pero ahora desde −δ0 grados (babor) hasta +δ0 grados (estri-
bor). Si el buque es direccionalmente inestable, entonces se producirá un comporta-
miento tı́pico de un sistema con histéresis, caracterizado por la propiedad descrita
en el punto 5.
Un sistema con este comportamiento se caracteriza por tener un doble punto de
equilibrio (dependiente de las condiciones iniciales) para los valores de ángulos de
timón de la zona de histéresis, por lo que para ángulos de timón dentro de dicha zona
5.4. MÉTODOS TIPO CURVA DE REACCIÓN 135

Figura 5.4: Velocidad angular estacionaria para diferentes angulos de timón

se tienen dos posibles valores de la velocidad angular. Esto puede verse en las fig-
uras 5.4 y 5.5, que muestran la velocidad angular estacionaria del buque para dife-
rentes ángulos de timón. El buque corresponde a un petrolero de 350.000 toneladas
(Kallstrom, 1982), y las simulaciones se han realizado con Simnon utilizando el
modelo matemático no lineal de Norrbin NORRB 3 D mencionado en el capı́tulo III
(ver también las simulaciones realizadas para un buque de la clase Mariner del
capı́tulo V).

Por tanto, la maniobra de espiral sirve para: 1) calcular la relación no lineal entre δ y
r, 2) determinar la estabilidad direccional, y 3) analizar la posible existencia de histéresis.

5.4 Métodos tipo Curva de Reacción

Para ciertos propósitos, tales como el diseño de reguladores basados en la teorı́a de control
de sistemas lineales, interesa disponer de modelos lineales que aproximen el comporta-
miento de un sistema que funciona en la cercanı́a a unas condiciones de operación dadas.
En ese caso se puede realizar la linealización de las ecuaciones del modelo matemático (si
se dispone de ellas), o por otro lado, emplear los métodos de identificación de sistemas.
136 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

Figura 5.5: Velocidad angular estacionaria para diferentes angulos de timón

En cualquier caso, hay que hablar de variables de desviación, entendiendo con ello que el
modelo matemático obtenido sólo representa al sistema cuando éste opera en la cercanı́a
del punto de trabajo para el cual se ha especificado, y que las ecuaciones matemáticas
relacionan desviaciones o incrementos, con respecto a los valores nominales, de las vari-
ables.

El procedimiento que utiliza las variables de desviación para obtener un modelo


identificado a partir de datos experimentales, para un cambio en variable de entrada de
tipo escalón o salto, se conoce como método de la curva de reacción y consiste en lo
siguiente:

1. Se sitúa al sistema en una condición de equilibrio determinada (a veces denomina-


da condición nominal), en torno a la cual se quiere hacer la linealización o identi-
ficación mediante modelo lineal (para ello puede emplearse un sistema de control;
por ejemplo, en el caso del buque serı́a el timonel o el autopiloto).
2. Se realiza una variación (por encima o por debajo) de la variable de entrada, que no
supere del 5 al 10 % de su valor nominal (por ejemplo, en el caso del buque y para
una metida de pala de 20 grados serı́a un incremento no superior a 2 grados).
3. Si el punto de equilibrio coincide con el cero, se emplea una variación lo suficien-
temente pequeña para que no se manifiesten los efectos no lineales.
5.4. MÉTODOS TIPO CURVA DE REACCIÓN 137

4. Se toma la medida del valor estacionario de la variable de desviación de la salida.

5. La ganancia estacionaria del sistema en esas condiciones de operación se calcula


mediante la relación entre el valor de la variable de desviación de la salida y el valor
de la variable de desviación de la entrada.

6. Si el sistema tiene acción integral, entonces el procedimiento anterior se varı́a em-


pleando la derivada filtrada de la variable de salida.

7. Para determinar las constantes de tiempo, retardos y ceros (en su caso) de la función
de transferencia del sistema, se emplea en general un procedimiento gráfico, o un
análisis de regresión. Dicho procedimiento va a depender del orden elegido para el
sistema (Seborg et al., 1989; Smith y Corripio, 1994).

Un tipo de función de transferencia muy utilizada es de la forma (válida por ejemplo


para describir la relación entre la velocidad angular del buque y el ángulo de timón),

K
G(s) = e−τd s
τs + 1

Para obtener τ y τd se disponen de diversos métodos experimentales desarrollados


por diferentes autores (Astrom y Wittenmark, 1989; Smith y Corripio, 1991; Seborg et
al., 1989; Coughanowr, 1991). El término de retardo τd se emplea para modelar retardos
fı́sicos que se den en el sistema, ası́ como para tener en cuenta posibles errores de mod-
elado (como por ejemplo la dinámica inmodelada de alta frecuencia). A continuación se
dan algunos de los sugeridos en la literatura (ver figura 5.6).

• Método basado en la medida de áreas.


De la representación gráfica de la respuesta temporal se obtiene K, ası́ como el área
Ao comprendida entre la respuesta y el la recta paralela que determina el valor de
K y es paralela al eje horizontal (tiempo). A partir de ellos se emplea:

τd + τ = Ao /K

Se traza en la gráfica una recta perpendicular al eje temporal y que pasa por t = τd +
τ , y se calcula el área A1 entre dicha recta el eje temporal y la curva de respuesta.
Se obtiene τ de,

τ = 2.7183A1 /K
138 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

Figura 5.6: Respuesta al escalón: curva de reacción del sistema

• Método de recta tangente en punto de máxima pendiente de la curva de reacción.


Se traza una recta tangente a la curva de reacción en el punto de máxima variación
o pendiente mayor. El punto de corte con el eje horizontal determina τd y el punto
de corte con la recta de ganancia constante determina τ + τd si se traza una perpen-
dicular al eje horizontal (tiempo) que pase por dicho punto.

• Método de la coincidencia de respuestas en el 63.2 % del valor estacionario.


En este método se elige τ de modo que la respuestas del sistema real y del modelo
coincidan en el punto del 63.2 % del valor estacionario. Una vez obtenido τ , se
calcula τd siguiendo el mismo procediento descrito anteriormente.

• Método de la coincidencia de respuestas en el 28.3 % y en el 63.2 % del valor


estacionario.
Este es un método que evita el trazado de la recta tangente a la curva de reacción en
el punto de máxima pendiente, y por ello puede dar resultados más satisfactorios.
Basta con tomar los instantes en que la curva de reacción alcanza el 28.3 % (t1 ) y
el 63.2 % (t2 ), y aplicar las siguientes fórmulas:
5.4. MÉTODOS TIPO CURVA DE REACCIÓN 139

τ = 3(t2 − t1 )/2, τd = t2 − τ

• Método de la coincidencia de respuestas en el 35.3 % y en el 85.3 % del valor


estacionario.
Este método también evita el trazado de la recta tangente a la curva de reacción en
el punto de máxima pendiente. Utiliza los instantes en que la curva de reacción
alcanza el 35.3 % (t1 ) y el 85.3 % (t2 ), y aplica las siguientes fórmulas:

τd = 1.3t1 − 0.29t2 , τ = 0.67(t2 − t1 )

Para modelar sistemas que se caractericen por tener una respuesta sobreamortiguada
(ξ ≥ 1, que no tienen oscilación para respuesta a una entrada tipo escalón), o del tipo
subamortiguado (0 < ξ < 1, que tienen oscilación para una entrada de tipo escalón),
se emplean las funciones de transferencia equivalentes que se dan a continuación, y que
corresponden a un sistema de segundo orden y un elemento de retardo (por ejemplo, para
describir la relación existente entre el ángulo de aletas estabilizadoras y el ángulo de ba-
lance de un buque, o también para considerar la dinámica inmodelada de alta frecuencia):

Kωn2
G(s) = e−τd s
s + 2ξωn s + wn
2 2

K
G(s) = e−τd s , τ = 1/wn
τ s + 2ξτ s + 1
2 2

Para el caso de sistema subamortiguado se pueden emplear las medidas de sobreim-


pulso máximo Mp , y perı́odo de la oscilación T para calcular los parámetros de G(s) (ver
figura 5.7) a través de las siguientes fórmulas:

√ 2π/T
1−ξ 2
Mp = e−ξπ , ωn = √
1 − ξ2

Si se quiere obtener τ y ξ (tanto para sistemas sobreamortiguados como subamor-


tiguados), se puede emplear el método de Smith. Consiste en medir los instantes en que
140 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

Figura 5.7: Respuesta de sistema subamortiguado

la respuesta del sistema alcanza el 20 % y el 60 % del valor estacionario, t20 y t60 repec-
tivamente, y utilizar una gráfica con la que se obtienen ξ y τ a partir del cociente t20 /t60 .

Si el sistema tiene una la caracterı́stica de sobreamortiguamiento, y se quieren estimar


las dos constantes de tiempo asociadas,

K
G(s) =
(τ1 s + 1)(τ2 s + 1)

se puede emplear por ejemplo del método de Harriott. Este método consiste en obtener el
instante de tiempo en el que el sistema alcanza el 73 % del valor estacionario, t73 , a partir
del que se calcula la suma de las constantes de tiempo asociadas,

τ1 + τ2 = t73 /1.3

conocida esta suma, se calcula t1 = 0.5(τ1 + τ2 ), y se determina de la gráfica de respuesta


temporal el valor de la respuesta en ese instante y(t1 ). Si el cociente entre y(t1 ) y el valor
5.5. MÉTODOS EN CANALES DE EXPERIENCIAS 141

estacionario no está comprendido en el intervalo [0.26,0.39], entonces es indicativo de


que el sistema o es subamortiguado, o requiere un modelo de orden superior.

La estimación del retardo, τd , de un sistema de segundo orden se puede hacer por


inspección en la gráfica de la curva de reacción, si bien se requiere un proceso iterativo
para conseguir un ajuste final adecuado. Una vez calculado éste, se utilizarı́a alguno de
los métodos anteriores para determinar el resto de parámetros, considerando la variable
tiempo de las gráficas desplazada un valor de τd , es decir t = t − τd . En la bibliografı́a
se pueden encontrar métodos más sofisticados para obtener el retardo de tales sistemas
(Seborg et al., 1989; Coughanowr, 1991).

Otra forma de calcular los parámetros de una función de transferencia dada es medi-
ante el procedimiento de regresión no lineal. Empleando un algoritmo de optimización
como el de Powell (Press et al., 1990), se obtiene el conjunto de parámetros que mini-
mizan la suma de los cuadrados entre las medidas experimentales y las de un modelo con
una estructura dada (por ejemplo, de segundo orden subamortiguado).

5.5 Métodos en Canales de Experiencias

El modelado completo del comportamiento dinámico de un barco en maniobra implica la


obtención de un gran número de coeficientes; algunos de los cuales pueden estimarse de
manera analı́tica, con un grado de aproximación suficiente. Sin embargo, otros muchos
obedecen a fenómenos muy complejos, como son el flujo cruzado, la formación de tor-
bellinos, separación o desprendimiento de flujo, etc. Los métodos teóricos ensayados para
tales cálculos no han conducido en muchas ocasiones a resultados satisfactorios (Lewis,
1989).

Una forma tradicional empleada para el cálculo de los coeficientes hidrodinámicos


consiste en la realización de ensayos con modelos fı́sicos a escala en canales de exper-
imentación. Los tipos de ensayos más frecuentes son el remolque oblı́cuo, el brazo
giratorio, y el mecanismo de movimiento planar.

Ensayos de remolque oblı́cuo

Se fija el modelo a escala del buque a un dispositivo de remolque, de forma que no posea
movimiento de guiñada, y se le hace avanzar paralelo al eje longitudinal del canal con
142 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

un cierto ángulo de deriva, β; por lo que la velocidad de abatimiento (v) viene dada por,

v = V sen(β)

donde V es la velocidad del carro de remolque. Para obtener diferentes velocidades de


abatimiento se modifica la velocidad de avance del carro (V ), o se cambia el ángulo de
deriva β.

Este procedimiento sirve para estimar los coeficientes hidrodinámicos Yv y Nv , a partir


de la medida de las fuerzas y momentos que aparecen sobre el modelo. Si β se mantiene
a cero, y se realizan pruebas con el timón, se pueden obtener además Yδ y Nδ .

Ensayos con brazo giratorio

En este caso, el modelo se sujeta a un brazo que gira alrededor de un eje fijo con velocidad
angular constante r. Para un ángulo de deriva nulo, se pueden obtener Yr y Nr ; y para un
ángulo de deriva dado, β, se pueden también obtener Yv y Nv .

Ensayos con mecanismo de movimiento planar

El mecanismo de movimiento planar ( Planar Motion Mechanism PMM) consiste en dos


brazos oscilantes que se sujetan al modelo en dos puntos equidistantes del origen de coor-
denadas situado en el modelo. Los brazos realizan un movimiento transversal sinusoidal,
de forma que se controla las amplitudes de los brazos y el desfase entre ellos. Se utilizan
para calcular Yv̇ , Nv̇ , Yṙ , Nṙ , Yr y Nr .

5.6 Respuesta impulsional finita (FIR)

En primer lugar se repasan algunos conceptos, propiedades y relaciones de interés de los


sistemas de tiempo discreto.

Se denomina secuencia de ponderación {h(k)} de un sistema de tiempo discreto


o discretizado, a una secuencia de datos tomados cada ciclo de muestreo y obtenida al
excitar a un sistema con una entrada u(k) = δ(k) (impulso unidad),
5.6. RESPUESTA IMPULSIONAL FINITA (FIR) 143


1 k=0
δ(k) =
0 k=
 0

Conocida {h(k)}, se puede obtener la respuesta para cualquier entrada arbitraria


{u(k)} a partir de,



y(k) = u(k − n)h(n)
n=0

Obtenida h(k), y haciendo uso de la transformada Z (ver apéndice sobre transfor-


madas), se puede calcular la función de transferencia de tiempo discreto del sistema co-
mo,


 h(k)
G(z) = = Z{h(k)}
k=0 zk

Igualmente, conocida G(z) = N (z)/D(z) puede obtenerse h(k) dividiendo los poli-
nomios N (z) y D(z):

N (z)
= h(0) + h(1)z −1 + h(2)z −2 + · · ·
D(z)

Si se tiene la ecuación en diferencias que caracteriza la dinámica del sistema de tiempo


discreto,

y(k) + a1 y(k − 1) + · · · + an y(k − n) = b0 u(k) + b1 u(k − 1) + · · · + bn u(k − n)

aplicando la transformada Z en ambos miembros se llega, tras algunas operaciones alge-


braicas, a la función de transferencia de tiempo discreto G(z),

Y (z) b0 z n + b1 z n−1 + · · · + bn−1 z + bn N (z)


G(z) = = n =
U (z) z + a1 z n−1 + · · · + an−1 z + an D(z)
144 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

Obtención de FIR

Mediante la respuesta impulsional o secuencia de ponderación, se obtiene un modelo


lineal de dimensión infinita, por lo que se hace es emplear una secuencia truncada de
N elementos, de forma que el tiempo de registro de datos, N Tm , se elige grande en
comparación con la constante de tiempo dominante del sistema. Ası́ por tanto, conocida
la respuesta del sistema al impulso unidad ({δ(k)}), se toma una secuencia truncada de
N valores medidos,

{h(k)} = {h(0), h(1), ...., h(N − 1)}

y su función de transferencia (de orden N ) serı́a por tanto,

h(1) h(N ) h(0)z n + h(1)z n−1 + .... + h(n)


GN (z) = h(0) + + .... + n =
z z zn

Posteriormente se puede obtener un modelo de menor orden, empleando técnicas de re-


ducción del orden de la función de transferencia de tiempo discreto (ver por ejemplo la
signal processing toolbox para Matlab).

Parámetros de Markov

En este apartado se incluyen los parámetros de Markov de un sistema de tiempo discreto


debido a que éstos están relacionados con la respuesta impulsional finita (FIR).

Para un sistema de tiempo discreto de simple entrada y simple salida (SISO) descrito
en el espacio de estado mediante las ecuaciones matriciales,

x(k + 1) = Ax(k) + Bu(k)


y(k) = Cx(k) + Du(k)

se tiene que los parámetros de Markov, hi , se calculan de la forma,

hi = CAi−1 B, i = 1, 2, ... (5.1)


5.7. RESPUESTA A ESCALÓN FINITA (FSR) 145

y coinciden con los elementos de la FIR del sistema. Para el caso de un sistema multivari-
able (MIMO) la expresión (5.1) da matrices, Hi , en vez de escalares, hi , cuyas dimensiones
son no × ni , siendo ni el número de entradas y no el número de salidas del sistema.

Los parámetros de Markov se caracterizan por ser invariantes frente a transforma-


ciones de similitud (cambios de variables, o diferentes formas de representar al mismo
sistema en el espacio de estado).

Para determinados estudios interesa formar una matriz M (conocida como matriz de
Hankel) cuyos elementos corresponden a los parámetros de Markov,

⎡ ⎤
hi hi+1 hi+2 ... hi+j
⎢ ⎥
⎢ hi+1 hi+2 ... ... ... ⎥
⎢ ⎥
⎢ ⎥
M [i, j] = ⎢

hi+2 ... ... ... ... ⎥

⎢ .. .. .. .. .. ⎥
⎣ . . . . . ⎦
hi+j ... ... ... hi+2j

Para el caso particular, i = 1, j = 3 queda:

⎡ ⎤
h1 h2 h3 h4
⎢ h2 h3 h4 h5 ⎥
M [1, 3] = ⎢



⎣ h3 h4 h5 h6 ⎦
h4 h5 h6 h7

5.7 Respuesta a escalón finita (FSR)

El método basado en la respuesta a escalón finita (FSR) es similar al método FIR visto en
la sección anterior, salvo que emplea una secuencia de entrada tipo escalón ( step) unidad
caracterizada por:

u(k) = 1, ∀k≥0

La secuencia de datos correspondiente a la respuesta temporal de un sistema a la


entrada escalón unidad se denomina FSR ( finite step response), y queda determinada por
una secuencia de longitud n (número de datos de la secuencia de la respuesta a tener en
cuenta):
146 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

{y(k)} = {g1 , g2 , ..., gn }

Para otra secuencia de entrada arbitraria, la respuesta temporal viene determinada por,


n
y(k) = gj Δu(k − j − 1), Δu(k) = u(k) − u(k − 1)
j=0

Los coeficientes de la FIR y la FSR están relacionados por,


j
gj = hi , (j = 1, 2, ..., n; g0 = 0)
i=1

hj = gj − gj−1 , (j = 1, 2, ..., n; h0 = 0)

Tanto el método basado en la FIR como el procedimiento basado en la FSR hasta


ahora descrito son válidos únicamente para la identificación de sistemas asintóticamente
estables (todos los polos tienen parte real negativa). Si el sistema es estable y tiene acción
integral se puede emplear una modificación del FSR anterior.

Para el caso de un sistema con acción integral, en el que se considera que la pendiente
de la respuesta del sistema a la señal step permanece constante a partir de un determinado
ciclo de muestreo n,

gn − gn−1 = gn+1 − gn = gn+2 − gn+1 = ...

se puede emplear para modelar al sistema la relación,


n
y(k) = gj Δu(k − j) + gn u(k − n + 1)
j=0

que es válida tanto para sistemas estables como para sistemas con acción integral.
5.8. ANÁLISIS DE CORRELACIÓN 147

5.8 Análisis de correlación

Para una señal estocástica de tiempo discreto u(k), se define su función de autocor-
relación como,

1 N
Ru (τ ) = u(k)u(k − τ ), (N → ∞)
N k=1

y la función de correlación cruzada entre la salida y la entrada por,

1 N
Ryu (τ ) = y(k)u(k − τ ) (N → ∞)
N k=1

A partir de estas definiciones, aplicando a la entrada de la planta una secuencia de


ruı́do blanco y obteniendo la función de correlación cruzada entre la entrada y la salida,
se puede obtener, salvo una constante, la función ponderatriz o respuesta temporal en
instantes de muestreo del sistema a la entrada impulso unidad.

Ası́, dadas las secuencias de medidas de entrada y salida de un sistema,

{u(k)} y {y(k)}, para k = 1, ....., N

la correlación cruzada de dichas señales se puede calcular a partir de,

1 N
Ryu (τ ) = y(k) u(k − τ )
N k=1

Si {u(k)} es ruı́do blanco, con varianza σu2 , entonces su función de autocorrelación


queda,

1 N
Ru (τ ) = u(k) u(k − τ ) = Ru (0)δ(τ ), Ru (0) = σu2
N k=1

en este caso la función de correlación cruzada se reduce a,


148 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

Ryu (τ ) = Ru (0)h(τ ) = σu2 h(τ )

Despejando h(τ ) se obtiene la secuencia de ponderación con N términos

Ryu (τ )
h(τ ) =
σu2

quedando ahora reducido el problema al punto anterior, es decir: a partir de la FIR se


puede obtener G(z) de orden N, y posteriormente un modelo de orden reducido más
práctico. Existen equipos comerciales que realizan el análisis de correlación de forma
automática (Soderstrom y Stoica, 1989). En la práctica los ruı́dos blancos se sustituyen
por secuencias pseudoaleatorias binarias de longitud L, perı́odo T y amplitud a; quedando
en ese caso la expresión anterior de la forma (Davis, 1992; Cerezo et al., 1984),

L
h(τ ) = Ryu (τ )
a2 T (L + 1)

5.9 Modelos de sistemas estocásticos

Se consideran las siguientes señales de tiempo discreto o muestreadas: entrada al sistema


u(k), respuesta del sistema y(k), y una secuencia de valores aleatorios de media nula
e(k), denominada ruido blanco. La justificación del nombre se debe a que su densidad
espectral es constante para todo el rango de frecuencias, y a su analogı́a con la luz blanca
compuesta por todas las frecuencias del espectro visible. La señal e(k) se utiliza para
modelar las perturbaciones y/o ruidos que afecten al sistema a identificar, y es la que con
su existencia da el calificativo de estocástico.

Según las relaciones que se consideren entre y(k), u(k) y e(k) (ver figura 5.8), se van
a determinar diferentes denominaciones que se dan a continuación:

• Modelo autorregresivo (AR) ( Auto Regressive),

A(z)y(z) = e(z)
5.9. MODELOS DE SISTEMAS ESTOCÁSTICOS 149

Figura 5.8: Sistema estocástico

• Modelo de media móvil (MA) ( Moving Average),

y(z) = C(z)e(z)

• Modelo autorregresivo de media móvil (ARMA) ( Auto Regressive Moving Aver-


age),

A(z)y(z) = C(z)e(z)

• Modelo autorregresivo de media móvil con acción integral (ARIMA) ( Auto Re-
gressive Integrated Moving Average),

A(z)y(z) = C(z)e(z), A(z) = A (z)(z − 1)/z

• Modelo autorregresivo controlado o con entrada exógena (CAR, ARX) ( Controlled


Auto Regressive, o Auto Regressive with eXogenous variable),

A(z)y(z) = B(z)u(z) + e(z)


150 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

• Modelo autorregresivo con acción integral y entrada exógena (o controlado) (CARI,


ARIX),

A(z)y(z) = B(z)u(z) + e(z), A(z) = A (z)(z − 1)/z

• Modelo autorregresivo controlado (o con entrada exógena) de media móvil (CAR-


MA, ARMAX),

A(z)y(z) = B(z)u(z) + C(z)e(z)

• Modelo autorregresivo controlado (o con entrada exógena) de media móvil con


accción integral (CARIMA, ARIMAX)

A(z)y(z) = B(z)u(z) + C(z)e(z), A(z) = A (z)(z − 1)/z

• Modelo estocástico general de Box-Jenkins (BJ),

B(z) C(z)
y(z) = u(z) + e(z)
F (z) D(z)

5.10 Validación del modelo identificado

La selección de la estructura adecuada y la validación de un modelo identificado son as-


pectos muy importantes a tener en cuenta. Ası́ por ejemplo, un modelo sobre-dimensionado
o sobre-parametrizado puede provocar que se realicen una gran cantidad de cálculo in-
necesario para encontrar el vector de parámetros estimados θ̂, ası́ como para luego utilizar
el modelo obtenido. Por otro lado, si se emplea un modelo sub-dimensionado puede dar
unos resultados muy imprecisos.

Para determinar si una identificación es adecuada para un orden dado de la función de


transferencia, se pueden emplear diferentes tests de entre los que caben destacar:

• Test-F.

• Criterio FPE ( final prediction error).

• Criterio AIC ( Akaike’s information criterion).


5.10. VALIDACIÓN DEL MODELO IDENTIFICADO 151

• Test de incorrelación, RN .

Se emplea el error de predicción, o diferencia entre el valor medido de la respuesta y


el valor estimado con el modelo identificado,

e(k) = y(k) − ŷ(k)

y para N muestras, una función de coste V (θ) de la forma,

1 N
VN (θ̂) = e2 (k, θ̂)
N k=1

Test-F

Para utilizar este test, se define la variable F que relaciona los valores de V para dos
modelos identificados con los números de parámetros respectivos, p1 y p2 como,

VN1 − VN2
F=N
VN2

Si el valor de F es grande, entonces el modelo 1 difiere del modelo 2 de forma significativa,


y por tanto el modelo 2 es sensiblemente mejor que el modelo 1.

Se puede utilizar el siguiente test para la selección de la estructura u orden del modelo:
para un nivel de significación de α (los valores tı́picos de α están comprendidos entre 0.01
y 0.1), el modelo de menor orden (modelo 1) es elegido frente al modelo de mayor orden
(modelo 2) si se cumple la relación,

F ≤ χ2α (p2 − p1)

donde χ2α corresponde a la distribución chi-cuadrado (Ljung, 1987; Soderstrom y Soto-


ica, 1989).
152 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

Criterio FPE

El criterio de error de predicción final FPE ( final prediction error) se puede utilizar
como una medida para comparar modelos identificados con diferentes técnicas y/o con
diferentes órdenes. Para un vector de parámetros de dimensión p y N muestras se define
como,

1 + p/N
FPE = VN (θ̂N )
1 − p/N

de forma que cuanto menor sea el valor de FPE mejor será la estimación.

Criterio de información de Akaike (AIC)

El criterio de Akaike (AIC) se define como,

AIC = N log VN (θ̂N ) + 2p

y al igual que el FPE, a menor valor de AIC mejor identificación.

Test de incorrelación de errores de predicción

Este test emplea las autocorrelaciones normalizadas RNi de los errores de predicción e(k)
para N muestras:

1 N
R(0)
R(0) = e2 (k), RN (0) =
N k=1 R(0)

1 N
R(i) = e(k)e(k − i) i = 1, 2, ..., nA , ...
N k=1
5.10. VALIDACIÓN DEL MODELO IDENTIFICADO 153

R(i)
RN (i) = , i = 1, 2, ..., nA , ...
R(0)

con imax ≥ nA (grado del denominador de la función de transferencia identificada).

Si la secuencia de errores de predicción corresponde a ruido blanco (situación teórica),


y el número de muestras es lo bastante grande (N → ∞), entonces se tendrı́a RN (i) =
0, i ≥ 1. Sin embargo en situaciones reales no ocurre ası́, a la vez que se tienen errores
residuales debidos a imprecisiones estructurales (errores en los órdenes de los modelos
paramétricos, ruidos no Gaussianos, no linealidades, etc.) y por otro lado el número de
muestras está limitada. A la vez se está interesado en la búsqueda de modelos identifica-
dos lo más sencillos posibles (con pocos parámetros). Por todo ello, se suele emplear un
criterio práctico de validación empleado en diversas aplicaciones:

2.17
| RN (i) |≤ √ , i≥1
N

de forma que si se cumple para N ≥ 100 se considera que la identificación es adecuada


(Landau, 1990). Teniendo en cuenta la posible existencia de perturbaciones no Gaus-
sianas, ası́ como los errores de modelado, el criterior anterior se relaja para N elevado, y
se hace más severo para N bajo. Ası́, se puede emplear:

| RN (i) |≤ 0.15, i≥1

Punto de vista práctico

Aunque para dos modelos de vectores de parámetros con dimensiones respectivas p1 y


p2 , con p2 > p1 , se tenga que los criterios AIC y FPE den valores inferiores para p2 , en
la práctica hay que determinar si la mejora es significativa y si compensa el aumento de
orden; ya que ello trae consigo el empleo de un modelo más complejo que puede que, a
parte de aumentar los cálculos para su uso posterior, no aporte información significativa
sobre el proceso.

El principio de parsimonia (Soderstrom y Stoica, 1989) resulta de utilidad a la hora


de elegir el orden más adecuado. Dicho principio dice que de dos modelos que sirven
154 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

para justificar de igual forma los datos experimentales, se debe elegir el de menor orden.
Lo cual está en concordancia con el ”sentido común”de no emplear más parámetros de
los necesarios para describir un sistema dinámico. Este principio afirma además que en
el caso supuesto, el modelo de menor orden será el que proporcione la mayor exactitud.

5.11 Método de mı́nimos cuadrados

El método de mı́nimos cuadrados se emplea tanto para la identificación de sistemas que


pueden considerarse deterministas (donde no hay ruidos y/o perturbaciones, o se pueden
considerar despreciables), ası́ como para los sistemas estocásticos. En caso de tratarse de
un sistema determinista de orden n, con un vector de parámetros de la forma,

θT = [a1 . . . an b1 . . . bn ]

son necesarios 2n medidas para calcular θ. Ası́, en el ciclo k, la respuesta del sistema
viene dada por,

y(k) = ϕ(k)T θ

donde el vector de medidas ϕ se forma con,

ϕ(k) = [−y(k − 1) . . . − y(k − n) u(k − 1) . . . u(k − n)]

Si se repite el proceso hasta el ciclo k + 2n − 1 se obtiene,

y(k) = ϕ(k)T θ
y(k + 1) = ϕ(k + 1)T θ
... ...
y(k + 2n − 1) = ϕ(k + 2n − 1)T θ

que puesto en forma matricial queda,


5.11. MÉTODO DE MÍNIMOS CUADRADOS 155

Y (k) = Ψ(k) θ

donde Y (k) es el vector de medidas de la respuesta,

Y T (k) = [y(k) y(k + 1) . . . y(k + n − 1)]

Para obtener θ basta con calcular el producto de la inversa de la matriz Ψ(k) (de orden
2n) por el vector Y (k):

θ = Ψ−1 (k)Y (k)

En caso de que el sistema esté sometido a ruidos o perturbaciones estocásticas, e(k),


habrá un error entre la medida y(k) y su estimación ŷ(k),

y(k) = ŷ(k) + e(k), ŷ(k) = ϕT (k)θ̂

El método de identificación de mı́nimos cuadrados minimiza la función de coste,


N
J= e2 (k) (5.2)
k

y da como resultado, que el vector óptimo de parámetros se obtiene de,

θ̂ = (ΨT (k)Ψ(k))−1 ΨT (k)Y (k)

Si los parámetros del sistema no varı́an, basta con realizar la operación anterior una
vez, pero si éstos cambian, se hará necesario su cálculo cada ciclo de muestreo (como
se requiere por ejemplo en los controladores adaptativos auto ajustables); cosa que no
resulta atractiva dado que hay que realizar la inversión de un matriz de orden 2n. De ahı́
la utilidad de los métodos recursivos de identificación que se describen en el apartado
siguiente.
156 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

Si la dinámica del sistema, y por tanto los parámetros, no es invariante en el tiempo


(o bien si se desea una actualización permanente de los parámetros), se suele emplear
una modificación de la función de coste 5.2, de forma que se pondere con más peso a las
medidas más recientes. Esto se hace empleando la función de coste,


N
J= w(k)e2 (k)
k

donde w(k) es un factor de ponderación. Una elección habitual emplea,

w(k) = γ N −k , 0<γ≤1

de forma que a mayor distancia temporal de la medida del ciclo actual, menor importancia
se le asigna; por ello se conoce al parámetro γ como factor de olvido. En caso de γ = 1
se dice que ”el identificador tiene una memoria infinita”.

5.12 Métodos recursivos de identificación

Si se quieren evitar el cálculo de matrices inversas cada ciclo de muestreo para estimar
θ̂, se pueden emplear los métodos recursivos de identificación de sistemas. Los métodos
recursivos aprovechan parte de los cálculos realizados en un ciclo de muestreo para el
siguiente, por lo que el cálculo de los parámetros en un ciclo dado se realiza de la forma,

θ̂(k) = θ̂(k − 1) + Δθ̂

Para el desarrollo de la versión recursiva se plantean las expresiones de los parámetros


en los ciclos de muestreo N y N + 1 y se calcula el término de corrección de la expresión
anterior.

Los algoritmos recursivos más utilizados son: de máxima verosimilitud (RML), de la


variable instrumental (RIV), de mı́nimos cuadrados (RLS) y mı́nimos cuadrados extendido
(RELS). Todos ellos se pueden plantear mediante un tratamiento unificado (Isermann,
1981).
5.12. MÉTODOS RECURSIVOS DE IDENTIFICACIÓN 157

En la literatura especializada (Ljung, 1987, Isermann et al., 1992, Bitmead et al.,


1990; Astrom, 1983) se han analizado las propiedades de los distintos tipos de algoritmos
rucursivos más empleados, resultado ser el algoritmo RLS el que tiene las mejores car-
acterı́sticas de robustez y una mayor velocidad de convergencia; si bien puede producir
un sesgo en los valores de los parámetros estimados, y tampoco estima la perturbación,
polinomio C(z) de un proceso ARMAX.

A continuación se dan los pasos a seguir para realizar un algoritmo recursivo 1 que
denominamos AIMCR. Algunos de los pasos se ilustran con un ejemplo aclaratorio, que
supone una función de transferencia a estimar de la forma,

y(z) b1 z + b2
= 2
u(z) z + a1 z + a2 z

Algoritmo AIMCR

1. Asigna valores iniciales a:

α, γ, θ̂, P = αI, ó P = Po

2. Lectura de datos: u(k), y(k).

3. Cálcula el error de estimación

e(k) = y(k) − ϕT (k)θ̂(k − 1)

Ej.:
θ̂T (k − 1) = [â1 â2 b̂1 b̂2 ]

ϕT (k) = [−y(k − 1) − y(k − 2) u(k − 1) u(k − 2]

y en caso de tratarse de RELS,

θ̂T (k − 1) = [â1 â2 b̂1 b̂2 ĉ1 ĉ2 ]

ϕT (k) = [−y(k − 1) − y(k − 2) u(k − 1) u(k − 2 e(k − 1) e(k − 2]


1
Con k se indica que corresponde a la medida o al cáculo realizado en el ciclo de muestreo actual; y con
k − 1 en el ciclo de muestreo anterior.
158 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

4. Calcula la matriz de ganancia

P (k − 1)ϕ(k)
L(k) =
γ + ϕT (k)P (k − 1)ϕ(k)

5. Calcula nuevo vector de parámetros estimados

θ̂(k) = θ̂(k − 1) + L(k)e(k)

6. Caso de ser γ variable se calcula su nuevo valor.


7. Calcula matriz de covarianza actual.
1
P (k) = (I − L(k)ϕT (k))P (k − 1)
γ

8. Actualiza ϕ(k), P (k − 1) y θ̂(k − 1).

θ̂(k − 1) ← θ̂(k), P (k − 1) ← P (k)

Ej.: para G(z) dada antes,

ϕT (k) = [−y(k) − y(k − 1) u(k) u(k − 1]

9. Vuelve al paso 2.

Para mejorar las propiedades numéricas del algoritmo de identificación, en condi-


ciones en las que las medidas tomen valores muy pequeños (como sucede en situaciones
de control en lazo cerrado con el sistema en la zona estacionaria de la regulación), se
puede emplear el método de factorización de la matriz de covarianza (DSFC) Para obten-
er la factorización P (k) = Σ(k)ΣT (k), se emplea el método de Cholesky (Press et a.,
1990), donde a Σ(k) se denomina matriz raiz cuadrada de la matriz de covarianza P (k).
A continuación se dan los pasos de un algoritmo RLS que emplea el método DSFC, y un
factor de olvido variable.

Algoritmo AIMCRDSFC

1. Seleciona los valores iniciales de Σ y θ̂

θ̂T (k) = [â1 , â2 , · · · , ân , b̂1 , b̂2 , · · · , b̂n ]


5.12. MÉTODOS RECURSIVOS DE IDENTIFICACIÓN 159

2. Lectura de los nuevos valores y(k), u(k) y actualización del vector de medidas
ϕ(k).

ϕT (k) = [−y(k − 1), −y(k − 2), · · · , −y(k − n),


u(k − 1), u(k − 2), · · · , u(k − n)]

3. Calcula el error de predicción

e(k) = y(k) − ϕT (k)θ̂(k − 1)

4. Calcula la matriz F (k)

F (k) = ΣT (k − 1)ϕ(k)

5. Obtiene los escalares ak y gk

ak = 1/[F T (k)F (k) + γ(k − 1)]



gk = 1/[1 + γ(k − 1)ak ]

6. Calcula la matriz de ganancia K(k)

K(k) = ak Σ(k − 1)F (k)

7. Actualiza el vector de parámetros estimados

θ(k) = θ(k − 1) + K(k)e(k)

8. Cacula la matriz Σ(k)

Σ(k) = [Σ(k − 1) − gk K(k)F (k)]/γ(k − 1)

9. Actualiza la matriz de covarianza

P (k) = ΣT (k)Σ(k)

10. Calcula nuevo factor de olvido γ(k)

e(k)2
γ(k) = 1 − [1 − ϕT (k)K(k)]
Γ0

si γ(k) < γmin , entonces γ(k) = γmin


160 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

11. Se hace k = k + 1 y se vuelve al paso 2.

La elección de Γ0 se hace de acuerdo con una estimación de la covarianza del ruido σ0


y suponiendo una constante de tiempo de olvido del algoritmo de N0 datos, γmin ≤ γ ≤ 1,
se tendrá que (Fortescue et al. 1981):

1
Γ0 = σ02 N0 , γmin = 1 −
N0

El factor de olvido variable (Fortescue et al., 1981) se emplea para reducir la memoria
del identificador y mejorar la adaptación a los posibles cambios en el proceso. Si se
considera el caso γ = 1 se tiene un identificador RLS con memoria infinita, por lo que
la matriz P (k) decrecerı́a monótonamente provocando que la disminución de la ganancia
del estimador K(k), llegase al extremo de no ser capaz el algoritmo de adaptarse a los
cambios en el sistema.

Durante los intervalos de referencia constante, o zona de respuesta estacionaria a un


cambio de consigna, puede suceder que el producto P (k)ϕ(k) tienda a cero. Por lo que
del algoritmo proporciona que P (k + 1) → P (k)/γ(k). Si γ < 1, P (k) podrı́a crecer
excesivamente, provocando que el algoritmo fuera muy sensible a las perturbaciones, a
pequeños errores numéricos, y a todo cambio que se diera en el sistema. Es por ello, que
se impone la condición de que en caso de que una medida del tamaño de P (k) (se suele
emplear el valor de su traza: suma de los elementos de la diagonal principal) exceda de
un cierto valor se haga el factor de olvido igual a uno.

Para mejorar la capacidad de la adaptación y evitar que un valor pequeño de los ele-
mentos de la matriz de covarianza haga poco sensible el algoritmo a posibles cambios en
los parámetros, se incorpora la restricción de que si su traza decrece de un valor determi-
nado, se le sume una matriz definida positiva R = μP (k + 1), con 0 < μ < 1.

5.13 Identificación de modelo no lineal

En este apartado se ilustra con un ejemplo la forma de aplicar los métodos de identifi-
cación anteriores a un sistema no lineal, y se mencionan algunos métodos útiles para el
modelado de sistemas no lineales.

Ejemplo: si se tiene que el sistema puede describirse mediante la ecuación en diferencias


no lineal,
5.14. PROCESO CON ACCIÓN INTEGRAL 161

y(k) + ay(k − 1) = b1 u(k − 1) + b2 u2 (k − 2)

para aplicar el algoritmo de identificación RLS se emplearı́an:

θ̂ = [â bˆ1 bˆ2 ]

ϕT (k) = [−y(k − 1) u(k − 1) u(k − 2)]

pasado a continuación a emplear por ejemplo el método de mı́nimos cuadrados para


obtener los parámetros.

Si debido a la dinámica del sistema éste debe representarse por modelos no lineales,
habrá que elegir de entre las distintas formas de representación de sistemas lineales aquel
que mejor se adecue al problema concreto.

Algunos de los métodos convencionales utilizados para modelar un sistema no lineal


de tiempo discreto son (Isermann et al. 1992): el modelo paramétrico de Volterra y el
modelo generalizado de Hammerstein. Una vez se ha definido la estructura, el método
empleado para obtener sus parámetros será alguno de los ya mencionados para procesos
lineales, como por ejemplo el de mı́nimos cuadrados.

Otra forma de obtener una estimación de parámetros de un sistema no lineal es me-


diante el filtro de Kalman (utilizado por ejemplo para la estimación de los coeficientes
hidrodinámicos de un buque (Lewis, 1989)). También se pueden emplear técnicas de
identificación que emplean redes neuronales artificiales (Narendra et al., 1990; De Wilde,
1996), ası́ como los métodos basados en la lógica borrosa (Demuth and Beale, 1994; Hi-
rota y Sugeno, 1995; Wang, 1994); los cuales para ciertos problemas complejos pueden
dar buenos resultados.

5.14 Proceso con acción integral

En caso de que se conozca a priori que un sistema a identificar se caracteriza por tener
la acción integral (como por ejemplo la función de transferencia que relaciona el ángulo
162 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

de rumbo con el ángulo de timón de un buque), se puede emplear dicho conocimiento en


el algoritmo de identificación, siguiendo una de los dos procedimientos de cambios de
variables siguientes:

1. Se toma,

y  (k) = y(k), u (k) = u (k − 1) + u(k)

y se aplica el algoritmo de identificación a los datos {y  (k)} y {u (k)}, obteniéndose


G (z); finalmente

z
G(z) = G (z)
z−1

2. Se hace,

y  (k) = y(k) − y(k − 1), u (k) = u(k)

y se realiza la identificación con los datos {y  (k)} y {u (k)}, obteniéndose G (z);
finalmente
z
G(z) = G (z)
z−1

Este procedimiento es menos aconsejable que el anterior para medidas con elevado
nivel de ruido, ya que realmente implica una derivada, que actua como amplificador
del ruido.

Ejemplo: para un sistema que tiene acción integral y es de orden 3,

b1 z 2 + b2 z + b3
G(z) = 3
z + a1 z 2 + a2 z + a3

habrı́a que determinar tres parámetros del denominador y otros tres del numerador. Pero si
se aplica alguno de los dos métodos anteriores, habrı́a que estimar los tres del numerador,
pero sólo dos parámetros del denominador,

b1 z 2 + b2 z + b3


G (z) =
(z 2 + a1 z + a2 )z
5.15. ESTIMACIÓN DE LOS VALORES DE CONTINUA 163

ya que se sabe que el sistema tiene acción integral (denominador nulo para z = 1), y por
tanto:

1 + a1 + a2 + a3 = 0

Empleando cualquiera de los cambios de variables se tiene que,

b1 z 2 + b2 z + b3 b1 z 2 + b2 z + b3 z


=  
z + a1 z + a2 z + a3
3 2 (z + a1 z + a2 )z (z − 1)
2

5.15 Estimación de los valores de continua

Los algoritmos de identificación trabajan con los valores incrementales (u(k), y(k)) de
las señales de entrada y salida (U (k), Y (k)) con respecto a los valores de continua U00
e Y00 . Por ello estos valores deben ser calculados o cancelados. A continuación se dan
varias formas para tenerlo en cuenta (Isermmann et al., 1993; Landau, 1990).

Por empleo de incrementos

Con este método no es necesario conocer los valores de continua si se emplea como
variables de entrada-salida para realizar la identificación,

u (k) = Δu(k) = ΔU (k)

y  (k) = Δy(k) = ΔY (k)

donde u, y representan los valores de desviación con respecto a las condiciones de trabajo
de las variables respectivas U00 , Y0 0,

u(k) = U (k) − U00 , y(k) = Y (k) − Y00


164 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

Por cálculo de los valores medios

Una forma simple de obtener U00 e Y00 es mediante el cálculo de sus valores medios para
una serie de N medidas,

1 N
1 N
U00 = u(i), Y00 = y(i)
N i=1 N i=1
o bien de forma recursiva,

1
U00 (k) = U00 (k − 1) + (U (k) − U00 (k − 1))
k
1
Y00 (k) = Y00 (k − 1) + (Y (k) − Y00 (k − 1))
k

Por estimación de una constante

Si se considera que el sistema puede modelarse mediante una ecuación en diferencias de


la forma,

Y (k) = −a1 Y (k − 1) − a2 Y (k − 2) − · · · − an Y (k − n) +
b1 U (k − d − 1) + b2 U (k − d − 2) + · · · + bn U (k − d − n)

se obtiene que,

y(k) = −a1 y(k − 1) − a2 y(k − 2) − · · · − an y(k − n) +


b1 u(k − d − 1) + b2 u(k − d − 2) + ... + bn u(k − d − n) + K

K = (1 + a1 + a2 + .. + an )Y00 − (b1 + b2 + .. + bn )U00


5.16. IDENTIFICACIÓN EN EL DOMINIO DE LA FRECUENCIA 165

Para determinar K mediante identificación se extienden respectivamente el vector de


parámetros estimados θ̂(k) con un elemento más a identificar K, y el vector de datos
ϕ(k) con un 1, obteniéndose la constante K. Si se fija uno de los valores de continua, U00
o bien Y00 , se podrá calcular el otro. Se obtienen buenos resultados tomando Y00 igual a
la referencia y obteniendo U00 por el cálculo de la media.

5.16 Identificación en el dominio de la frecuencia

En este apartado se describen algunos de los procedimientos más usuales para la iden-
tificación de la dinámica de un sistema mediante técnicas que utilizan el dominio de la
frecuencia. Estas incluyen: 1) análisis de Fourier, 2) prueba senoidal, 3) prueba senoidal
mejorada, 4) prueba del pulso y 5) análisis espectral.

En primer lugar se pasa a describir las transformadas de Fourier y algunas de sus


aplicaciones.

Transformadas de Fourier

Desde el punto de vista práctico de cálculo, se define la transformada de Fourier de una


secuencia de N datos

{u(1), u(2), · · · , u(N )}

como,

1  N
UN (ω) = √ u(n)e−jnω
N n=1

donde ω es√la frecuencia angular (2π/T ), T es el perı́odo de la señal, y j es la unidad com-


pleja j = −1. A continuación se defienen la transformada discreta y la transformada
rápida discreta.

• Transformada discreta de Fourier (DFT). El nombre de discreta le viene por el


empleo de frecuencias cuyos valores están cuantificados en la forma,
166 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE


ω= K, K = 0, · · · , N − 1
N

y por tanto,

2π 1  N

UN ( · K) = √ u(n)e−jn N ·K
N N n=1

• Transformada rápida discreta de Fourier (FDFT). La transformada rápida de Fouri-


er emplea un algoritmo para obtener la expresión anterior, que disminuye el número
de cálculos a realizar por el computador (Press et al., 1990).

Una aplicación de la Transformada de Fourier consiste en obtener una estimación del


espectro o densidad espectral. Dada una secuencia de N medidas tomadas {u(k)} se
calcuları́a su transformada de Fourier a través de la FDFT:

F DF T 2π
{u(k)} −→ UN ( · K), K = 0, · · · , N − 1
N

Es aconsejable tomar N = 2m (m = número natural), por ejemplo:

N = 64, 256, 512, 1024, ....

dependiendo del número de medidas que se posean. Si no se tuvieran suficientes para


alcanzar 2m , entonces se completa con ceros.

Una estimación del espectro serı́a:

2π 2π
Su (ω) = UN ( · K) · UN∗ ( · K)/N
N N

donde (∗) indica complejo conjugado.

Otra aplicación útil de la Transformada de Fourier es obtener una estimación de la


respuesta en frecuencia de un sistema mediante,
5.16. IDENTIFICACIÓN EN EL DOMINIO DE LA FRECUENCIA 167

YN (ω)
GN (ejω ) =
UN (ω)

siendo YN (ω) y UN (ω) las transformadas de Fourier de las respectivas secuencias de N


datos,

{y(k)} = {y(1), · · · , y(N )}

{u(k)} = {u(1), · · · , u(N )}

Prueba senoidal

Si a un sistema lineal, o al menos que se aproxime lo suficiente por estar funcionando en


la cercanı́a del punto de operación, se le inyecta una entrada

u(t) = A cos(ωt)

se obtiene una respuesta de la forma,

y(t) = B cos(ωt + ϕ)

donde B/A y ϕ dependen únicamente de ω (cosa que no ocurre si el sistema no trabaja


en zona lineal). Como se tiene que,

ϕ = arg G(ejω ), B = |G(ejω )| A

conocidos ϕ y |G(ejω )|, se puede obtener G(s) a partir de la evaluación de los diagramas
de Bode; pudiéndosse, en principio, determinar la función de transferencia de un proceso
de cualquier orden. Esta prueba se utiliza extensamente en la determinación de funciones
de transferencia de sensores, transmisores y actuadores de válvulas de control (Smith y
Corripio, 1991); si bien su empleo en el caso de sistemas de dinámica relativamente lenta
168 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

(procesos industriales, ası́ como el buque) requiere mucho tiempo de experimentación,


por lo que no se suele usar de forma habitual.

Para un sistema de tiempo discreto, la repuesta frecuencial se puede obtener a partir


de su secuencia de ponderación h(k). Sea la secuencia de entrada

{u(k)} = {ejkω }

la respuesta del sistema se obtiene de,


 ∞

y(k) = ej(k−n)ω h(n) = ejkω e−jnω h(n) = ejkω · G(ejω )
n=0 n=0

o lo que es lo mismo,

Y (ω) = U (ω)G(ω)

La relación entre la respuesta temporal al impulso unidad o secuencia de ponderación


{h(k)} de N datos, y la respuesta en frecuencia G(ejω ) queda establecida por,


N
G(ejω ) = e−jω h(k)
k=0

Prueba senoidal mejorada

En presencia de perturbaciones resulta difı́cil obtener ϕ y |G(ejω )| por medida directa;


por ello se emplea (Ljung, 1987),


N 
N
ICN (ω) = y(k) cos ωk, ISN (ω) = y(k) sin ωk
k=1 k=1

obteniéndose,
5.16. IDENTIFICACIÓN EN EL DOMINIO DE LA FRECUENCIA 169

ϕ = arctan[ISN (ω)/ICN (ω)]


IC2 N (ω) + IS2N (ω)
|G(ejω )| =
N A/2

siendo y(k) la respuesta del sistema, y

u(t) = A cos(ωt)

la entrada inyectada al sistema.

Prueba del pulso

En la prueba del pulso se sustituye la señal senoidal por un pulso, caracterizado por tres
parámetros: forma, amplitud y duración. En la práctica el más usual es el pulso rectangu-
lar (Smith y Corripio, 1991). Al igual que en las pruebas de la señal escalón y senoidal, la
amplitud del pulso debe de escogerse de magnitud adecuada, de forma que sea lo suficien-
temente grande para mejorar las medidas, pero que a la vez no sea tan grande que haga no
cumplir la aproximación lineal que se considera para obtener la función de transferencia.

La elección de la duración del pulso depende de las constantes de tiempo del proceso
que se prueba, y no debe ser tan corta como para que no haya tiempo de que el proceso
reaccione, o tan larga que haya tiempo para que la respuesta alcance el estado estacionario
antes de que se complete el pulso.

Con la prueba del pulso se puede obtener un diagrama de Bode para una sóla prueba,
siendo su duración considerablemente menor que la necesitada en la prueba de la senoide.
El cálculo de la respuesta en frecuencia se obtiene, en este caso, mediante el empleo de
las transformadas de Fourier de las señales de prueba u y de respuesta y:

Y (ω)
G(ejω ) =
U (ω)
170 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

Análisis espectral

Se han definido anteriormente las funciones de autocorrelación Ru , y de correlación


cruzada Ryu ,

1 N
Ru (τ ) = u(k)u(k − τ ) (N → ∞)
N k=1

1 N
Ryu (τ ) = y(k)u(k − τ ) (N → ∞)
N k=1

A partir de ellas se pueden obtener unas estimaciones de las densidades espectrales de


potencia de las señales muestreadas u(k), y y(k) para N muestras,


N
Su (ω) = Ru (τ )e−jωτ
τ =−N


N
Sy (ω) = Ry (τ )e−jωτ
τ =−N


N
Syu (ω) = Ryu (τ )e−jωτ
τ =−N

Como se tiene que,

Sy (ω) = |G(ejω )|2 Su (ω)

Syu (ω) = G(e−jω )Su (ω)


5.16. IDENTIFICACIÓN EN EL DOMINIO DE LA FRECUENCIA 171

para el caso particular de ruı́do blanco, Su (ω) = 1, queda,

Sy (ω) = |G(ejω )|2

donde G(ejω ) corresponde a la respuesta en frecuencia del sistema, o respuesta para en-
tradas de la forma u(k) = ejkω ; que en el caso de que se conozca G(z), se puede obtener
de forma analı́tica haciendo la sustitución z = ejω .

Teorema de factorización espectral y de representación

Este teorena es útil de cara a la obtención de una señal estocástica con un determinado
espectro, de utilidad por ejemplo para modelar la compoenente aleatoria de las olas. Dice
lo siguiente:

Para una Sy (ω) racional es posible encontrar una factorización espectral de la forma:

Sy (ω) = G(e−jω )G(ejω ) = |G(ejω )|2

tal que G(z) ( con z = ejω ) contiene sus polos y ceros dentro del cı́rculo unitario del
plano complejo (sistema estable y de fase mı́nima).

Por ello el teorema de representación viene a expresar que una señal con un espectro
dado S(ω) (racional), puede obtenerse a partir de la respuesta de un sistema dinámico a
una entrada de ruı́do blanco (ver figura 5.9).

Si se tienen las densidades espectrales Syu (ω) y Su (ω), se puede calcular la respuesta
en frecuencia,

Syu (ω)
G(ejω ) =
Su (ω)
172 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

Figura 5.9: Ruido con espectro dado

5.17 Aplicaciones de identificación

En este apartado se presentan algunas aplicaciones de identificación de parámetros para


estimar la función de transferencia de tiempo discreto de un buque, mediante la simu-
lación por ordenador. Se parte de un modelo matemático de tiempo continuo del buque,
si bien el modelo estimado es de tiempo discreto para un perı́odo de muestreo determina-
do. Se emplea como función de transferencia, G(s), que relaciona la variable de control
δ(s) (ángulo de timón, que también se utiliza como u(s)), y la variable a controlar ψ(s)
(ángulo de rumbo, que también se denomina como y(s) o variable de salida) la siguiente:

ψ(s)
G(s) = = Gp (s)e−τd s (5.3)
δ(s)

donde Gp (s) representa el llamado modelo de Nomoto de tercer orden,

K(τ3 s + 1)
Gp (s) = (5.4)
(τ1 s + 1)(τ2 s + 1)s

o el modelo simplificado de segundo orden (ver capı́tulo III):


5.17. APLICACIONES DE IDENTIFICACIÓN 173

K
Gp (s) = (5.5)
s(τ s + 1)

Se tiene en cuenta la limitación mecánica del actuador (timón), empleando unas sat-
uraciones de ±δmax grados, y de ±δ̇max grados/segundo. Para el término de retardo se
emplea una aproximación de primer orden:

1− τd
s
e−τd s ≈ 2
(5.6)
1+ τd
2
s

Como consecuencia de ello, los modelos lineales empleados van a ser de fase no
mı́nima (con al menos un cero inestable), de cuarto orden si se emplea 5.4 y de tercer
orden si se emplea 5.5.

Se puede demostrar, tanto desde el punto de vista teórico (Astrom, 1980), como de
forma experimental (Kallstrom, 1979; Kallstrom y Astrom, 1981; Othsu et al., 1992) que
un proceso tipo ARMAX sirve para describir de forma adecuada tanto la dinámica del
buque (en maniobras que no requieran grandes valores del ángulo de timón en magnitud
y en tiempo de aplicación) como las perturbaciones ambientales.

Ası́ por ejemplo, si se considera el modelo 5.5, una versión de tiempo discreto del
sistema, junto con las perturbaciones será de la forma,

A(z −1 )y(k) = B(z −1 )u(k) + C(z −1 )e(k)

donde los polinomios respectivos son de la forma,

A(z −1 ) = 1 + a1 z −1 + a2 z −2 + a3 z −3

B(z −1 ) = b1 z −1 + b2 z −2 + b3 z −3
C(z −1 ) = 1 + c1 z −1 + c2 z −2 + c3 z −3

Este modelo ARMAX, se puede obtener experimentalmente empleando por ejemplo


el algoritmo de identificación de mı́nimos cuadrados extendido (ELS), o una versión
recursiva (RELS).
174 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

Figura 5.10: Respuesta del buque (rumbo) para señal binaria (timón)

En las pruebas de identificación que a continuación se describen, el perı́odo de muestreo


(Tm ) se ha tomado con el criterio siguiente:

τef ectivo
Tm ≈ , y si Tm > 10 seg, entonces Tm = 10 seg.
10

La identificación de un modelo de tipo paramétrico del sistema se puede realizar tanto


en lazo abierto como en lazo cerrado (siendo preferible, si es posible, que se realice en
lazo abierto). En el primer caso se inyecta al sistema una señal binaria (±5◦ ) a su entrada.
Fı́sicamente equivale a una orden de timón a la máquina o servosistema del timón, a
fin de que la pala siguiera o reprodujera dicha señal (ver figura 5.10). Se emplea un
algoritmo no recursivo ELS mejorado y robustizado (Ljung, 1987), el cual proporciona
unas estimaciones mejores de los parámetros, sobre todo de los coeficientes del polinomio
C(z −1 ). Este algoritmo está implementado en la función armax.m de la toolbox de
identificación para Matlab (Ljung, 1989).

Se emplean los modelos correspondientes a tres buques cuyas caracterı́sticas se de-


scriben en el capı́tulo III:

1. MODL 2 (modelo linealizado de carguero).


5.17. APLICACIONES DE IDENTIFICACIÓN 175

2. MODL 6 (modelo linealizado de petrolero).


3. MODNL (modelo no lineal de ro-ro pasajeros).

MODNL 2: (sistema de fase no mı́nima)

Para el buque MODL 2 (capı́tulo III), con velocidad de crucero V = 7.81 m/s, τd = 3
seg., y pertrubaciones (ruidos) sobre el proceso V1 y la medida o sensores V2 , caracteriza-
dos por las varianzas,

var(V1 ) = 10−2 , var(V2 ) = 10−5

se obtiene el vector de parámetros estimados θ̂ siguiente:

θ̂ = [−1.9179 0.9202 −0.0027 0.0924 0.2584 0.0153 −0.1613 −0.2813 −0.5541]

var [e(k)] = 2.44 10−5

MODL 6: (sistema de fase no mı́nima e inestable)

Se trata de un buque de mayores dimensiones (petrolero). El modelo de este buque


(MODL 6), es un sistema inestable, ya que tiene un polo con parte real positiva (ver capı́tulo
III ).

Para una velocidad de 15.8 nudos, τd = 3 segundos, y varianzas de las perturbaciones


respectivas,

var[V1 ] = 10−2 , y var[V2 ] = 10−4

se obtiene como resultado de la identificación el vector de parámetros estimado siguiente:

θ̂ = [−2.070 1.074 − 0.003 − 0.011 − 0.0322 − 0.075 0.275 − 0.434 − 0.075]

MODNL : (sistema no lineal)


176 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

Este caso se refiere al modelo no lineal (MODNL) descrito en el capı́tulo III. Las
condiciones condiciones ambientales y de navegación empleadas para la identificación
son: altura de ola de 3 metros, ángulo de llegada de las olas de 45 grados, velocidad del
viento de 5 m/s, y velocidad de crucero del buque de 15 nudos. Se obtiene el vector de
parámetros estimado siguiente:

θ̂ = [−2.2958 1.6586 −0.3624 −0.1789 −0.0056 0.0733 −0.8540 0.0432 0.0231]

con una varianza de los errores de predicción, var[e(k)] = 0.016.

Utilidad de la identificación para control

Uno de los objetivos que persigue este tipo de identificación es la de obtener un modelo
matemático útil para el diseño de reguladores. Estos reguladores deben ser robustos, en
el sentido de que deben de tener en cuenta las condiciones reales de operación. Para ello
se suelen especificar ciertas condiciones de robustez, que se refieren a cómo el sistema
va a tolerar determinados tipos de errores de modelado o incertidumbres. Se utilizan los
márgenes de ganancia y fase convencionales, ası́ como otros indicadores de robustez y
comportamiento que se derivan de la teorı́a relacionada con el control robusto.

El control del rumbo y del movimiento de balance de un buque constituyen dos pro-
blemas en los que el control robusto tiene una gran aplicabilidad (López, 1994), dada la
cantidad de factores que van a influir sobre el sitema. Por ello, el diseño de un autopiloto
que sea robusto frente a las variaciones en la planta, a las condiciones ambientales, y a
los errores de modelado, va a ser fundamental. A continuación se exponen algunas prue-
bas obtenidas (López, 1994) empleando los resultados de la identificación en lazo abierto
antes realizada con el MODNL, ası́ como en lazo cerrado (ver figura 5.11) empleando el
método de mı́nimos cuadrados recursivo (RLS), y un controlador LQG / LTR - I descrito en
(López, 1994).

En las figuras 5.12 y 5.13 se tienen respectivamente las respuestas temporales del
sistema para cambios de rumbo de ±5 grados, con mar en calma y sin viento, y con
perturbaciones (mar y viento dados antes). En la figura 5.14 se tiene el comportamiento
para un cambio de rumbo de ±90 grados. A pesar de que para realizar esta maniobra la
señal de control (ángulo de pala del timón) toma valores muy grandes, llegando incluso
a saturarse, el controlador proporciona un comportamiento adecuado al sistema. Hay que
tener en cuenta que en esta maniobra se pone de manifiesto la naturaleza no lineal del
5.17. APLICACIONES DE IDENTIFICACIÓN 177
Parámetros del buque

- 
Diseño Identificador

Parámetros

del regulador
?
Set-Point - timón rumbo
Regulador - Buque -
-

Figura 5.11: Controlador adaptativo autoajustable para autopiloto

sistema MODNL, haciendo que durante su realización el sistema sea no lineal y variable
en el tiempo (ya que el buque experimenta pérdidas significativas de velocidad).

Debidos a cambios en las condiciones de navegación, la dinámica del sistema puede


verse sensiblemente afectada. En la figura 5.15 se tiene una prueba de control con regula-
dor fijo, mientras que en el instante 1500 segundos se inicia un cambio en las condiciones
de navegación. El regulador está correctamente ajustado para las condiciones inciales,
sin embargo, al cambiar la dinámica del sistema y no el controlador, éste no es capaz de
mantener un comportamiento satisfactorio.

Para poder adaptarse a los cambios que se manifiesten en el sistema, el regulador


debe ser reajustado en lı́nea ( on-line). Para ello se pueden emplear diferentes estrategias
de control, como son el control adaptativo por modelo de referencia (MRAC, ”model
reference adaptive controller”), el control adaptativo autoajustable (STR, ”self tun-
ing regulator”) y el control programado o por tabla ( ”gain scheduling”) (Amerongen,
1981; Kallstrom, 1979; Astrom y Wittenmark, 1989). El control STR necesita de la iden-
tificación de los parámetros on-line, por lo que ha de utilizar un algoritmo recursivo (ver
178 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

Figura 5.12: Control para MODNL

figura 5.11).

En la figura 5.16 se tiene como varı́an los parámetros obtenidos por identificación en
lazo cerrado y on-line mediante el algoritmo recursivo RLS. En la figura 5.17 puede verse
cómo el identificador detecta el cambio 2 que se produce en la dinámica del buque, y por
tanto el controlador se adapta y mejora el comportamiento del sistema con respecto al
obtenido con un regulador fijo.

5.18 Observador del vector de estado

En este apartado se describe el empleo de un observador de estado filtro de Kalman para


la estimación de las variables de estado de un sistema. El modelo del sistema se obtiene
en el espacio de estados, y se supone que se puede aproximar mediante un sistema lineal
e invariante en el tiempo (los parámetros son constantes).

Se considera que el sistema en estudio se puede modelar mediante una representación


en el espacio de estados de la forma,
2
El cambio en el sistema se inicia en el ciclo k = 150, (1500 seg)
5.18. OBSERVADOR DEL VECTOR DE ESTADO 179

Figura 5.13: Control para MODNL con perturbaciones

Figura 5.14: Control de MODNL para cambio de ±90◦


180 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

Figura 5.15: Controlador fijo para cambio en el sistema

Figura 5.16: Parámetros estimados en lazo cerrado (RLS)


.
5.18. OBSERVADOR DEL VECTOR DE ESTADO 181

Figura 5.17: Controlador adaptativo de rumbo

x(k + 1) = Ax(k) + Bu(k) + V1 (k)

y(k) = Cx(k) + V2 (k) (5.7)

donde V1 y V2 son en general vectores de variables estocásticas, que sirven para modelar
las perturbaciones de este tipo y los ruidos actuantes sobre el proceso (V1 ) y sobre los sen-
sores (V2 ) respectivamente, los cuales quedan caracterizados por sus respectivas matrices
de covarianza:

Mo = var[V1 (k), V2 (k)]

Qo = var[V1 (k), V1 (k)] (5.8)

Ro = var[V2 (k), V2 (k)]

se supone además que la condición inicial x(0) es un vector estocástico incorrelado con
V1 (k) y V2 (k), caracterizado por,
182 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

E{x(0)} = x0

E{[x(0) − x0 ][x(0) − x(0)]T } = Po (0)

Una vez que se han establecido las ecuaciones del sistema, se plantea el problema de
encontrar la matriz óptima (o secuencia de matrices óptimas) Kop (k) que minimiza una
medida de los errores entre el vector de estado estimado x̂, y el vector de estado real x:

J = E{[x(k) − x̂(k)]T [x(k) − x̂(k)]}

A este problema se le denomina problema del observador óptimo de tiempo discreto


(KBF) (Mendel, 1987; Astrom y Wittenmark, 1989). Se obtiene una solución única si se
supone que se cumplen las siguientes condiciones:

Qo = QTo ≥ 0, (A, Qo1/2 ) es estabilizable

Ro = RoT > 0, (A, C) es detectable

Wo = WoT ≥ 0

donde la matriz Wo se constituye a partir de Qo , Ro y Mo como,

 
Qo Mo
Wo =
MoT Ro

A continuación se dan las soluciones a este problema para dos tipos del observador de
estado: tipo predictor, y el tipo filtro. En ambos casos se emplea la teorı́a del filtro de
Kalman, por lo que se suelen conocer como Filtros de Kalman (KBF) versión Predictor
y versión Filtro respectivamente, si bien en ambos casos lo que se está calculando es un
Observador de Estados óptimo.
5.18. OBSERVADOR DEL VECTOR DE ESTADO 183

Observador de estados versión Predictor

En esta versión (KBF predictor) las ecuaciones del estimador de estados son:

x̂(k + 1) = Ax̂(k) + Bu(k) + Kop (y(k) − ŷ(k))

ŷ(k) = C x̂(k) (5.9)

donde la matriz Kop es la ganancia del observador predictivo, que se obtiene resolviendo
la ecuación algebraica de Riccati siguiente:

APo AT − Po − (APo C T + Mo )(Ro + CPo C T Mo )−1 (CPo AT + MoT ) + Qo = 0

y posteriormente,

Kop = (APo C T + Po )(Ro + CPo C T )−1

También puede resolverse de forma iterativa por medio de un algoritmo recursivo que
implemente los siguientes cálculos:

Kop (k) = [APo (k)C T + Mo ][Ro + CPo (k)C T ]−1

Po (k + 1) = [A − Kop (k)C]Po (k)AT + Qo − Kop (k)MoT (5.10)

Po (0) = P0

siendo P0 una matriz semidefinida positiva.


184 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

Observador de estados versión Filtro

En este caso (KBF versión filtro) las ecuaciones recursivas del estimador de estados vienen
dadas por,

ξ(k + 1) = Aξ(k) + Bu(k) + Kop (y(k) − ŷ(k))

ŷ(k) = Cξ(k)

x̂(k) = ξ(k) + Kof (y(k) − ŷ(k))


(5.11)

donde la matriz Kop se obtiene de la misma forma que en el caso de la versión predictor,
y la relación entre las matrices de ganancia Kof y Kop es,

Kop = AKof

5.19 Filtro Kalman extendido

El filtro de Kalman se puede emplear tanto para los sistemas lineales como para los
no lineales, y puede utilizarse tanto para estimar variables de estado como parámetros
(Mendel, 1987). Si para un modelo paramétrico se consideran como variables de esta-
do los parámetros a determinar, y se obtiene una representación de estado del sistema,
mediante un estimador de estados (filtro Kalman) es posible encontrar los valores de los
parámetros que minimizan los errores de estimación.

Sea un sistema descrito por el sistema de ecuaciones no lineales,

ẋ(t) = f (x(t), u(t), t) + w(t)

y(tk ) = Cx(tk ) + v(tk )


5.19. FILTRO KALMAN EXTENDIDO 185

siendo w(t) y v(t) señales estocásticas que se consideran ruidos que afectan al estado,
x(t), y a la medida y(tk ) correspondiente al instante de muestreo tk . Se supone que los
ruidos están caracterizados por sus respectivas matrices de covarianza,

Q(t) = E{w(t)wT (t)}, R(t) = E{v(t)v T (t)}

Para estimar el vector de estado se emplean dos fases: 1) predicción y 2) corrección.

1. Fase de predicción (con la notación tk /tk−1 se indica que el cálculo se hace en el


ciclo tk con los datos del ciclo tk−1 ):

 tk
x̂(tk /tk−1 ) = x̂(tk−1 /tk−1 ) + f [x̂(τ /tk−1 ), u(τ ), τ ]dτ
tk−1

ŷ = C x̂(tk /tk−1 )

donde la matriz de covarianza predicha se obtiene de,

P (tk /tk−1 ) = P (tk−1 /tk−1 ) +


 tk
{f [x̂(τ /tk−1 ), u(τ ), τ ]P (τ /tk−1 )
tk−1

+P (τ /tk−1 )f T [x̂(τ /tk−1 ), u(τ ), τ ] + Q(τ )}dt

2. Fase de corrección:

x̂(tk /tk ) = x̂(tk /tk−1 ) + K(tk ) · e(tk )

ŷ = C x̂(tk /tk )

donde K(tk ) es la matriz de ganancia del filtro, y la matriz de covarianza corregida


se obtiene de,

P (tk /tk ) = P (tk /tk−1 ) − K(tk )CP (tk /tk−1 )

K(tk ) = P (tk /tk−1 )C T [CP (tk /tk−1 )C T + R]−1

e(tk ) = y(tk ) − ŷ(tk /tk )


186 CAPÍTULO 5. IDENTIFICACIÓN DE SISTEMAS. APLICACIÓN AL BUQUE

Figura 5.18: Filtro de Kalman para un buque

En el procedimiento anterior, el vector de estado x está constituido por las variables de


estado a estimar, junto con los parámetros a identificar (considerados de variación mucho
más lenta que las variables de estado de la dinámica del sistema, por lo que se consideran
con derivada nula para los cálculos).

El método del filtro Kalman extendido se ha aplicado por Abkowitz para la identifi-
cación de los coeficientes hidrodinámicos de un buque, obteniéndose unos resultados sat-
isfactorios (Lewis, 1989). En dicho trabajo se consideraban los coeficientes hidrodinámicos
como los parámetros del sistema, y las magnitudes δ, ψ, r, u, y v como variables de estado
de partida (ver figura 5.18). Posteriormente el vector de estado se ampliaba incorporando
los coeficientes hidrodinámicos a estimar. El filtro de esta forma puede obtener las estima-
ciones tanto de las componentes del vector de estado de partida, como de los coeficientes
hidrodinámicos.
Capı́tulo 6

Simulaciones por Computador

6.1 Introducción

A la largo de los capı́tulos anteriores del texto se han presentado los resultados de algunos
ejemplos de simulaciones obtenidas tanto para modelos no lineales como linealizados.
En unos, para ver la forma de programación con una cierta herramienta software de simu-
lación como ACSL, CC, SIMNON o VISSIM (capı́tulos I y III). En otros, para ver algunas
aplicaciones de las técnicas de identificación de sistemas para el diseño de controladores
para el gobierno del rumbo de un buque (capı́tulo V).

En este capı́tulo se incluyen los resultados de algunas simulaciones significativas,


obtenidas con los modelos no lineales ABKO 3 D y MODNL descritos en el capı́tulo III.
Las realizadas con ABKO 3 D se hicieron inicialmente empleando el lenguaje C y posteri-
ormente integrándo los programas en MATLAB mediante ficheros ”.DLL”(ver capı́tulo
I ). Para el caso de MODNL, las simulaciones se hicieron con SIMNON, y el diseño de los
reguladores con MATLAB.

Con las simulaciones que se presentan con ABKO 3 D se trata de analizar el comporta-
miento del buque simulado en diferentes maniobras, ası́ como el efecto de las perturba-
ciones ambientales, no empleando ningún tipo de sistema de control. Sin embargo, las
simulaciones realizadas con MODNL presentan por un lado los resultados del empleo de
un regulador escalar (o de simple entrada simple salida) para la reducción del movimien-
to de balance del buque navegando entre olas, y por otro los resultados obtenidos con un
regulador multivariable para el control del rumbo y la disminución del ángulo de escora
en la realización de grandes maniobras. El análisis de este modelo matemático y de los

187
188 CAPÍTULO 6. SIMULACIONES POR COMPUTADOR

Figura 6.1: Simulación de la curva de evolución a estribor

resultados del empleo de distintos reguladores para el control del rumbo se puede com-
pletar con las simulaciones presentadas como ejemplos a lo largo de los capı́tulos III y
V.

A lo largo del texto incluimos de forma paralela expresiones afines a la terminologı́a


empleada en Náutica, ası́ como a la Automática, a fin de que sirva al lector para integrar
ambas terminologı́as, y para aclarar el significado fı́sico en su caso.

6.2 Análisis de la dinámica

En las simulaciones que se describen a continuación se ha utilizado el modelo no lineal


de Abkowitz (ABKO 3 D) para un buque de la clase Mariner (Lewis, 1989).

Las maniobras se realizan con una velocidad inicial de 7.8 m/s (algo más de 15 nudos).
El tiempo que tarda el timón de estar a la vı́a a estar a 35 grados a una banda es de 10
segundos (3.5 grad/seg). Adicionalmente se considera un retardo inicial en la respuesta
6.2. ANÁLISIS DE LA DINÁMICA 189

Figura 6.2: Simulación de la curva de evolución a babor

del timón de 0.6 segundos.

En la maniobra de la curva de evolución a estribor (figura 6.1) se aprecia que el avance


de la curva de evolución tiene un valor de algo más de 3.1 esloras, mientras que en la curva
de evolución a babor (figura 6.2) su valor es algo mayor, 3.3 esloras. Lo mismo ocurre
con el diámetro táctico de la curva de evolución a estribor, que posee un valor de 4.1
esloras, mientras que en la curva a babor es 4.2 esloras. Lo que demuestra que el buque
tiene una mayor facilidad para ”caer”(girar) a estribor.

En el análisis de la curva de espiral directa (figura 6.3) se observa que no es simétrica


respecto al ángulo de timón δ = 0, ya que debido a la tendencia del buque a caer a estribor,
la curva queda desplazada hacia este costado. También es apreciable la curva de histéresis
según la cual para un mismo ángulo de timón próximo a cero, le corresponden más de un
valor de la velocidad angular de caı́da, r. Además, aunque se comience a meter el timón
a babor el buque continuará su caı́da a estribor hasta que el timón alcance un ángulo de
unos 3 grados a babor, momento en que r = 0; se caracteria el modelo por poseer una
caracterı́stica de inestabilidad dinámica de ruta (estabilidad en lı́na recta o straight line
stability), y por tanto un modelo linealizado del tipo de los dados en el capı́tulo III tendrı́a
190 CAPÍTULO 6. SIMULACIONES POR COMPUTADOR

Figura 6.3: Maniobra de espiral directa

al menos un polo inestable (con parte real positiva).

Es reseñable también el valor que adquiere la velocidad angular de caı́da, r, para


un ángulo de timón δ = 0 cuando éste pasa por cero recorriendo el camino de babor
a estribor, r = 0.05 grad/seg, mientras que en el caso de hacer el recorrido inverso (de
estribor a babor) el valor que adquiere es, r = 0.25 grad/seg. Estos dos valores y los dos
ángulos de timón que corresponden a r = 0, da una idea de la magnitud de la histéresis
(ver capı́tulo V) que presenta el modelo no lineal y que reproduce el comportamiento del
buque real (Lewis, 1989; Kallstrom, 1979).

La simulación de la maniobra conocida como zig-zag se muestra en la figura 6.4. Se


observa que se obtiene un valor de entre 8 y 9 grados para el sobreángulo a estribor y de 7
grados a babor. Como la magnitud del sobreángulo disminuye a medida que disminuye el
grado de la inestabilidad dinámica de ruta, y aumenta al aumentaf la efectividad del timón
(aumento de su superficie y velocidad de giro) (Lewis, 1989), estos valores son indicativos
de la estabilidad del buque a cada banda. Otro valor importante a considerar es el tiempo
invertido en alcanzar los primeros 20 grados a una banda. Se observa que en el caso de
estribor es 26.4 segundos, lo que da una idea de la rapidez de maniobra del buque. Hay
6.2. ANÁLISIS DE LA DINÁMICA 191

Figura 6.4: Maniobra de zig-zag

que tener en cuenta que los resultados de la maniobra de zig-zag son dependientes de la
velocidad del buque, de modo que cuando aumenta la velocidad del buque disminuye el
tiempo en alcanzar los primeros 20 grados y aumenta el sobreángulo.

Para una simulación de 300 segundos manteniendo el timón a la vı́a y en ausencia de


perturbaciones (figura 6.5), se se observa que cuando el buque ha recorrido en el eje Xo
12 esloras, algo más de una milla, se ha desplazado algo menos de 3 esloras a estribor. El
rumbo al final del tiempo de simulación ha cambiado casi 40 grados a estribor del rumbo
original, y ha ido aumentando su velocidad angular de caı́da hasta estabilizarse en 0.17
grad/seg aproximadamente, lo que confirma la tendencia de caı́da (giro) del buque antes
analizada.

Análisis en presencia de perturbaciones

Los resultados de simulación que se muestran en este apartado se interpretan a partir


del conocimiento cualitativo y la experiencia de la respuesta de un buque bajo la acción
192 CAPÍTULO 6. SIMULACIONES POR COMPUTADOR

de las perturbaciones: viento, olas y corrientes (ver capı́tulos II y IV). Una descripción
cualitativa de estos efectos puede encontrarse en textos que traten el tema de maniobras
y teorı́a del buque (Costa, 1991; Barbudo, 1991; Bonilla, 1979).

Efecto de las olas

En las simulaciones se considera que el buque navega entre olas con una velocidad inicial
de 7.8 m/s (algo más de 15 nudos), y no se trata de corregir el rumbo con la acción del
timón, el cual se mantiene fijo a la vı́a. Se toma un valor de altura de la ola de 3 metros,
con una velocidad de propagación (mar regular) de 10 m/s.

En la figura 6.6 se muestra la evolución del buque cuando la mar es recibida de través
por el costado de estribor. Se observa cómo al principio la tendencia natural de buque de
caer a estribor sigue produciéndose, sin embargo, su trayectoria se mantiene para luego
caer a babor. Se puede apreciar cómo varı́a el rumbo a lo largo de los 500 segundos de
simulación, y las fluctuaciones de la velocidad angular o de caı́da, r. La velocidad axial
o longitudinal, u, del buque también experimenta oscilaciones debidas a las guiñadas del
buque.

En la figura 6.7 se muestra el comportamiento cuando la mar se recibe por popa.


Si se observa la trayectoria del buque, se ve que éste cae a estribor, algo inherente en él,
sin embargo, en la gráfica de la velocidad angular de caı́da se aprecia que a medida que
el buque se va atravesando más a la mar su velocidad angular experimenta oscilaciones
que van creciendo en amplitud. Estas oscilaciones también están presentes en las gráficas
del rumbo y de la velocidad longitudnal u, en la que se observa la pérdida de velocidad
del buque debido a su caı́da a estribor pero con oscilaciones añadidas, que se deben a las
guiñadas del barco.

Efecto del viento

En las simulaciones que tienen en cuenta el efecto del viento se se tiene en cuenta lo
siguiente: 1) se considera que el vector viento referido a tierra tiene sentido contrario al
de la velocidad inicial del buque; 2) se toma una velocidad del viento de 13 m/s, (algo
más de 25 nudos); 3) el área sobre la linea de flotación en el plano xz es de 1600m2 ; y 4)
la constantes Ĉy y ĈN toman los valores -1.00 y -0.1 respectivamente (ver capı́tulo IV).

En la figura 6.8 se muestra la trayectoria que describe el buque (para una velocidad
6.2. ANÁLISIS DE LA DINÁMICA 193

Figura 6.5: Buque con el timón a la vı́a y en ausencia de perturbaciones


194 CAPÍTULO 6. SIMULACIONES POR COMPUTADOR

Figura 6.6: Buque con el timón a la vı́a y bajo los efectos de la mar
6.3. CONTROL DE RUMBO Y BALANCE 195

de crucero , de 7,81 m/s y con el timón a la vı́a) cuando está afectado por un viento de
las caracterı́sticas dadas anteriormente. Al comienzo de la simulación se aprecia que la
trayectoria del buque va cerrándose al viento, ésto es debido a que la perturbación ha
actuado sobre él de forma repentina y su reacción es la de orzar. En la gráfica también se
aprecia que la velocidad angular de caı́da, r, al comienzo de la maniobra adquiere un valor
grande a estribor durante un corto perı́odo de tiempo, a pesar de que el viento lo recibe
por esa misma banda. A continuación se estabiliza muy rápidamente en la banda de babor
con un valor considerablemente menor que el máximo que alcanzó en la otra banda. Ésto
hace que la tendencia inicial de la trayectoria vaya anulándose hasta describir la traslación
del buque a babor. Se manifiestan por tanto, dos efectos: 1) el de orzar al comienzo de la
simulación por la actuación repentina de la perturbación; y 2) el de traslación y caı́da del
buque a babor de forma continuada, lo que hace que en la fase estacionaria el buque se
vaya abriendo del rumbo original con una velocidad angular r constante.

Efecto de la corriente

En la figura 6.9 se muestra la evolución temporal de algunas de las variables de la dinámica


del buque para una simulación de 1000 segundos bajo la acción de una corriente. La ve-
locidad del buque de es de 7,81 m/s, y se mantiene el timón a la vı́a. En su trayectoria el
buque cae a babor hasta casi alcanzar el mismo rumbo, en que se desplaza la corriente,
330, cuya velocidad es de 0.4 nudos, momento en que r se hace cero y la trayectoria se
hace recta. En la interpretación de todas las simulaciones realizadas con ABKO 3 D hay que
tener en cuenta la existencia de una velocidad angular (o velocidad de caida) del buque
distinta de cero cuando el timón se deja fijo a cero grados ( timón a la vı́a).

6.3 Control de rumbo y balance

Es un hecho constatado el que las aplicaciones de las técnicas de control avanzado al


problema del gobierno de los buques habı́a sido algo bastante inusual hasta comienzos
de los años ochenta; a pesar de la amplia aceptación y éxitos conseguidos en otras ramas
de la ingenierı́a. Probablemente el contrapunto sea la industria aeronáutica, en la que los
avances de la teorı́a de control han sido rápidamente incorporados en la búsqueda de la
mejora del funcionamiento y la seguridad.

Las azones de la inercia presentada por la industria naval hay que buscarlas en diversos
factores, tales como son: la mayor duración de los barcos comparados con los aviones, la
resistencia a intentar nuevas técnicas cuando los métodos tradicionales han probado tener
196 CAPÍTULO 6. SIMULACIONES POR COMPUTADOR

Figura 6.7: Buque con el timón a la vı́a y bajo los efectos de la mar
6.3. CONTROL DE RUMBO Y BALANCE 197

Figura 6.8: Buque con el timón a la vı́a y bajo los efectos del viento
198 CAPÍTULO 6. SIMULACIONES POR COMPUTADOR

Figura 6.9: Buque con el timón a la vı́a y bajo los efectos de la corriente
6.3. CONTROL DE RUMBO Y BALANCE 199

un funcionamiento válido, ası́ como la caı́da en la industria de construcción naval, entre


otros.

En muchos casos, la innovación ha consistido en la sustitución directa de los antiguos


sistemas de control analógicos por otros equivalentes digitales, y el aprovechamiento de
la potencia de computación del ordenador empleado, para incorporar o mejorar tareas
de monitorización y alarma; más que para explotar los beneficios que podrı́a reportar el
empleo de algoritmos de control avanzado.

Los primeros autopilotos para el guiado automático de barcos eran simples disposi-
tivos en los que el error de rumbo se utilizaba para producir una orden al servosistema del
timón proporcional al error de rumbo. Posteriormente se modificó incluyendo el efecto
derivativo para mejorar la respuesta transitoria y el efecto integral para corregir los er-
rores estacionarios. Debido a su simplicidad, fiabilidad y coste, los autopilotos PID aún
se mantienen en la mayorı́a de barcos.

Ha sido el perı́odo de finales de los setenta y durante la década de los ochenta, cuando
la mejora del sistema de control de los buques ha experimentado un notable incremento
en investigación y desarrollo, pudiéndose encontrar la justificación en razones tales como:

1. Las continuas subidas del precio del petróleo y la búsqueda de la reducción del
coste en los transportes.

2. La exigencia de mejora en la seguridad del transporte marı́timo.

3. La transferencia tecnológica acelerada por los recientes avances de la microelec-


trónica, informática y telecomunicaciones.

4. El éxito obtenido en otras ramas de la industria, en la aplicación de los últimos


desarrollos de la teorı́a de control.

Por otro lado, ha demostrado ser de gran utilidad, tanto para buques de la Marina
Mercante como para los de la Armada, el que adicionalmente al problema del control del
rumbo de un buque (problema de simple entrada y simple salida o escalar), se considere
el empleo de sistemas activos de estabilización para la regulación del movimiento de
balance; lo cual da lugar a un problema de control multivariable (sistema con dos entradas
y dos salidas). Si bien, en la mayorı́a de sistemas instalados a bordo se tratan como dos
problemas de control independientes, en el sentido de que los reguladores se diseñan de
forma independiente entre sı́, sin tener en cuenta el carácter vectorial de la planta. Entre
las razones que justifican el empleo de sistemas de control del movimiento de balance
pueden destacarse:
200 CAPÍTULO 6. SIMULACIONES POR COMPUTADOR

1. Medida de seguridad en navegación; ya que un corrimiento o desplazamiento de la


carga, causado por un ángulo de escora excesivo, puede poner en serio peligro la
estabilidad del buque.

2. No tener que desviarse en exceso de una ruta dada debido a unas condiciones am-
bientales adversas.

3. Mejora en las condiciones de trabajo de la tripulación.

4. Aumento de la comodidad del pasaje, en su caso.

5. Conseguir una plataforma estable adecuada, para el disparo y aterrizaje a bordo, en


los buques de la Armada.

Para ello, se pueden emplear diferentes técnicas (Lewis, 1989): 1) sistemas de depósitos
o tanques de agua; 2) utilización del timón como sistema de estabilización del balance (
Rudder Roll Stabilisation, RRS); y 3) la que ha resultado ser más eficaz, al menos para ve-
locidades superiores a 12 nudos, que utiliza superficies de control o aletas estabilizadoras
(Lloyd, 1989).

Como ya se ha dicho, al considerar el problema de control de los ángulos de rumbo


(ψ) y balance (φ), empleando como variables de control los ángulos de timón (δ) y de las
aletas (α), se plantea un problema de control de un sistema multivariable. Dependiendo
del caso, se pueden obtener buenas prestaciones realizando un control con reguladores
escalares independientes, uno para el autopiloto y el otro para los estabilizadores. Una
forma intermedia que también puede mejorar el comportamiento del sistema es diseñar un
regulador para las aletas, otro para el autopiloto, y un tercero para mejorar la atenuación
del movimiento de balance por la acción del timón. En determinados buques, existe una
fuerte interacción entre las distintas variables de entrada y salida, por lo que el empleo
de dos controladores independientes puede no dar buenos resultados. En ese caso, si se
quiere conseguir un buen comportamiento, se hace aconsejable el empleo de técnicas de
control de sistemas multivariables (López, 1994).

El problema del control de un buque puede interpretarse según la filosofı́a del control
robusto, dado la gran cantidad de factores que van a influir en la incertidumbre del modelo
de la planta, entre los que cabe destacar:

1. Velocidad de crucero.

2. Estado de carga.

3. Estado de la mar, vientos y corrientes.


6.3. CONTROL DE RUMBO Y BALANCE 201
Velocidad Condiciones
de crucero de carga

? ?

Dinámica

del buque

6 6

Perturbaciones Otros
ambientales factores

Figura 6.10: Factores que afectan a un buque

4. Profundidad.

Pruebas de control de rumbo y balance

Desde el punto de vista del control de un buque se puede decir que hay dos condiciones
de navegación bien diferenciadas:

• La primera situación, corresponde al caso en que el problema consiste en realizar


una determinada maniobra que requiera valores grandes en magnitud y en tiempo de
aplicación de las variables de control (timón y aletas estabilizadoras), en cuyo caso
los efectos no lineales dominan el comportamiento del buque (modo de operación
course changing).

• La otra, se da en situaciones de mantenimiento del rumbo, o cuando el proceso de


regulación para un cambio de consigna requiere unas desviaciones de las superficies
de control (pala de timón y aletas estabilizadoras) que no sean grandes en magnitud
y tiempo de aplicación (modo de operación course keeping).
202 CAPÍTULO 6. SIMULACIONES POR COMPUTADOR
ángulo de ángulo de
estabilizadores (α) balance (φ)
- -

BUQUE

- -
ángulo de ángulo de
timón (δ) rumbo (ψ)

Figura 6.11: Componentes de entrada-salida del problema multivariable

A continuación se presentan los resultados obtenidos por simulación empleando el


modelo MODNL descrito en el capı́tulo III con diferentes objetivos y tipos de contro-
ladores. Una descripción detallada del procedimiento de diseño de los reguladores puede
encontrarse en (López, 1994). Para los análisis y diseños se han utilizado Matlab, Pro-
gram CC, y Simnon. Se describen los resultados obtenidos con dos reguladores robustos:

1. Un regulador LTR ( Loop Transfer Recovery) multivariable (un regulador que gen-
era las órdenes de forma simultánea para el timón y para las aletas estabilizadoras,
teniendo en cuenta el acoplamiento existente entre las diferentes variables) cuyo
objetivo es reducir el ángulo de escora o de inclinación con respecto a la vertical
(reducir la interacción), a la hora de realizar una maniobra que requiera grandes
metidas de timón (López, 1994).
2. Dos reguladores escalares independientes: un PID para regular el rumbo, y un regu-
lador IMC ( Internal Model Control) para reducir el movimiento de balance debido
a las olas (López et al., 1996).

En la figura 6.12 se muestra la respuesta del buque para un cambio de consigna de 180
grados; en la que se tiene el siguiente significado de las variables: y2 ≡ cambio de rumbo,
y1 ≡ ángulo de balance, u1 ≡ ángulo de aletas estabilizadoras, u2 ≡ ángulo de timón.
Como puede verse, el comportamiento es excelente: no produce una sobreoscilación apre-
ciable y la interacción con la otra variable a controlar es muy baja, si se compara con los
resultados obtenidos para la misma maniobra empleando un controlador monovariable
(ver figura 6.13). La importancia de este controlador estriba en que al reducir el ángulo
de inclinación o balance (también denominado de escora) durante la maniobra, se mejora
la robustez del sistema frente a un ángulo de escora excesivo, que circunstancialmente
puede a su vez provocar un desplazamiento de la carga y por tanto un fuerte cambio en las
caracterı́sticas que determinan la estabilidad del buque, aumentando el peligro de vuelco.
6.3. CONTROL DE RUMBO Y BALANCE 203

Figura 6.12: Respuesta MODNL controlador multivariable (LTR-i)

El objetivo del regulador IMC (ver figura 6.3) diseñado es atenuar de forma suficiente
el efecto de las perturbaciones, de forma que el movimiento de balance se reduzca con-
siderablemente en comparación con el caso en que no se empleen estabilizadores. Para
ello se emplea una medida denominada porcentaje de reducción del balance ( percentage
roll reduction, PRR):

RMS con estabilizadores


PRR = 1 − 100%
RMS sin estabilizadores

En las figuras 6.15 y 6.16 se presentan respectivamente el comportamiento con (curva


continua) y sin regulador de balance (curva a trazos) para dos controladores IMC (López
et al., 1996), de forma que para el segundo se ha realizado un ajuste de forma que cumple
unas exigencias más severas a fin de conseguir una atenuación mayor. Se obtienen los
siguientes valores: PRR(1) = 71 %, y PRR(2) = 86 %; y los valores RMS de los ángulos
de estabilizadores: RMS(1) = 2.86, RMS(2) = 3.06 (RMS: root mean square). Puede
comprobarse que con ambos reguladores se consiguen elevados porcentajes de reducción
del balance, si bien la atenuación obtenida con el segundo regulador es un 15% mayor
que la del primero, lo cual le exige un mayor esfuerzo de control y por tanto el valor RMS
de los estabilizadores es superior.
204 CAPÍTULO 6. SIMULACIONES POR COMPUTADOR

Figura 6.13: Respuesta MODNL controlador escalar (LTR-i)

Momento
de balance
Planta
Estabilizadores (buque)

?
- Gm - m - G

Momento
de estabilizadores

K  m
 Gs 
6− Angulo
Controlador Sensor de balance
0 (gyro)
Figura 6.14: Diagrama de bloques de sistema de control con estabilizadores
6.3. CONTROL DE RUMBO Y BALANCE 205

Figura 6.15: Ángulo de balance (regulador IMC 1)

Figura 6.16: Ángulo de balance (regulador IMC 2)


206 CAPÍTULO 6. SIMULACIONES POR COMPUTADOR
Apéndice A

Ecuaciones del Movimiento en el Plano

En este apéndice se presenta un procedimiento sencillo para la deducción de las ecua-


ciones del movimiento del buque en el plano (no se consideran los movimientos de ba-
lance, cabeceo y elevación)

En la figura A.1 se pueden observar dos sistemas de coordenadas, uno con el origen
fijo en tierra, y el otro, con su origen en el centro de gravedad del buque. El ángulo ψ, o
de guiñada es el ángulo que abre la proa respecto al eje xo . El ángulo (β) existente entre
el eje longitudinal del buque y el vector velocidad del centro de gravedad es el ángulo
de deriva. Cuando el buque va trazando en su movimiento una trayectoria curvilinea el
ángulo de deriva coincide con el ángulo formado entre la proa y la dirección del vector
velocidad del centro de gravedad en ese instante. El eje xo se toma como positivo en el
sentido del movimiento del buque; el eje zo se toma perpendicular al plano xo yo , y el eje
yo se considera positivo a estribor.

Las ecuaciones de movimiento del buque referidas al sistema de coordenadas de ori-


gen fijo son:

X = ∇ẍOG

Y = ∇ÿOG

N = Iz ψ̈ (A.1)

207
208 APÉNDICE A. ECUACIONES DEL MOVIMIENTO EN EL PLANO

Figura A.1: Sistemas de referencia fijo y móvil

en la que se tiene el siguiente significado fı́sico de las variables:

• X, Y son las fuerzas totales actuantes sobre el buque en las direcciones x, y respec-
tivamente.
• ∇ es el desplazamiento total del buque.
• N es el momento o par de fuerzas resultante.
• Iz es el momento de inercia.
• ψ es ángulo de guiñada, que en caso de coindir el eje xo con el Norte, correponde
al rumbo.

A pesar de la aparente simplicidad de las ecuaciones anteriores, en la práctica resulta


conveniente expresar las ecuaciones del movimiento con respecto a un sistema de refer-
encia móvil, situado en el propio barco, tal y como puede verse en la figura A.1. En este
caso, se tiene para las fuerzas y que:
209

X = Xo cos ψ + Yo senψ

Y = Yo cos ψ − Xo senψ (A.2)

y para las componentes del vector velocidad, V del centro de masas se obtiene,

ẋOG = u cos ψ − vsenψ

ẏOG = usenψ + v cos ψ

donde u y v son las componentes de V con respecto a los ejes móviles x, y respectiva-
mente. Por tanto se tiene que,

ẍOG = u̇ cos ψ − v̇senψ − (usenψ + v cos ψ)ψ̇

ÿOG = u̇senψ + v̇ cos ψ + (u cos ψ − vsenψ)ψ̇ (A.3)

Al sustituir A.3 en A.1 y teniendo en cuenta A.2, se obtiene:

X = Δ(u̇ − v ψ̇)
Y = Δ(v̇ + uψ̇)

que junto con la tercera ecuación de A.1 constituyen las ecuaciones del movimiento del
buque en el plano horizontal (tres grados de libertad), referidas al sistema de referencia
móvil con origen en el centro de gravedad del buque; donde no se han considerado los
movimientos de balance, desplazamiento vertical y cabeceo. Queda por tanto,

X = Δ(u̇ − v ψ̇)

Y = Δ(v̇ + uψ̇) (A.4)

N = Iz ψ̈
210 APÉNDICE A. ECUACIONES DEL MOVIMIENTO EN EL PLANO

La expresión A.4 se ha obtenido para el caso en que el origen del sistema de coor-
denadas, O, se encuentre en el c.d.g. del buque. Sin embargo, la localización del centro
de gravedad no es constante, sino que cambia con la condición de carga, por ello, y tam-
bién porque ciertos cálculos quedan más simplificados, se suele emplear como origen del
sistema de refencia móvil el punto de intersección de los planos de simetrı́a del buque.

Se puede considerar, en primera aproximación, que las componentes X, Y de las


fuerzas que afectan al buque, y el momento N actuante sobre él, van a ser funciones, más o
menos complejas, de un cierto número de variables medibles, tales como, (u, v, u̇, v̇, ψ̇, ψ̈),
por lo que se puede poner,

X = Fx (u, v, u̇, v̇, ψ̇, ψ̈)

Y = Fy (u, v, u̇, v̇, ψ̇, ψ̈) (A.5)

N = Fψ (u, v, u̇, v̇, ψ̇, ψ̈)

Para una condición de equilibrio o condición de operación nominal dada, se pueden


obtener los desarrollos de Taylor de cada una de las funciones anteriores. Ası́, si el punto
de equilibrio corresponde a los valores (u1 , v1 , u̇1 , v̇1 , ψ̇1 , ψ̈1 ), se tendrá para el caso de Y
que,

∂Y ∂Y
Y = Fy (u1 , v1 , u̇1 , v̇1 , ψ̇1 , ψ̈1 ) + (u − u1 ) + (v − v1 ) + ...
∂u ∂v
∂Y
+(ψ̈ − ψ̈1 )
∂ ψ̈

Para el estudio de la estabilidad dinámica de ruta (estabilidad en lı́nea recta o straight


line stability) se considera que el buque inicialmente navega con un rumbo dado, y una
velocidad constante, por lo que u̇1 = v̇1 = ψ̇1 = ψ̈1 = 0. Si se tienen en cuenta una
serie de consideraciones de simetrı́a del buque, el desarrollo en serie anterior se puede
simplificar. Aplicando un procedimiento similar para X y N se llega a las siguientes
ecuaciones:

∂X ∂X
X = u̇ + (u − u1 )
∂ u̇ ∂u
211

∂Y ∂Y ∂Y ∂Y
Y = v+ v̇ + ψ̇ + ψ̈
∂v ∂ v̇ ∂ ψ̇ ∂ ψ̈
∂N ∂N ∂N ∂N
N = v+ v̇ + ψ̇ + ψ̈
∂v ∂ v̇ ∂ ψ̇ ∂ ψ̈

Al sustituir estas expresiones en A.4, y dado que ψ̇ ≡ r, y ψ̈ ≡ ṙ; se llega a otra


formulación más conveniente de las ecuaciones que describen el movimiento del buque
en el plano con respecto a un sistema de referencia móvil situado en el centro de gravedad
del mismo,

−Xu (u − u1 ) + (∇ − Xu̇ )u̇ = 0

−Yv v + (∇ − Yv̇ )v̇ − (Yr − ∇u1 )r − Yṙ ṙ = 0

−Nv v − Nv̇ v̇ − Nr r + (Iz − Nṙ )ṙ = 0

Si se considera que u ≈ V , que V es constante, y se adopta la notación prima de


SNAME, se obtiene,

−Yv v  + (Δ − Yv̇ )v̇  − (Yr − Δ )r − Yṙ ṙ = 0

−Nv v  − Nv̇ v̇  − Nr r + (Iz − Nṙ )ṙ = 0

donde la diferencia principal entre ambas formulaciones, además de la notación prima, es


que u ha desaparecido en la segunda, ya que se considera que u/V ≈ 1.

Para buques convencionales se tiene que los coeficientes Yṙ y Nv̇ tienen valores rela-
tivamente insignificantes, por lo que pueden despreciarse (Lewis, 1989). Para pequeñas
metidas de timón, la acción del timón queda incorporada mediante los términos Nδ δ y
Yδ δ, con lo que las ecuaciones anteriores quedan:

nz ṙ − Nv v  − Nr r = Nδ δ


212 APÉNDICE A. ECUACIONES DEL MOVIMIENTO EN EL PLANO

∇y v̇  − Yv v  − (Yr − ∇ )r = Yδ δ

donde,

nz = Iz − Nṙ , ∇y = ∇ − Yv̇

A partir de A.6 se puede deducir (Lewis, 1989) que una condición para la estabili-
dad dinámica de ruta (o estabilidad asintótica de las ecuaciones diferenciales lineales del
movimiento) del buque viene dada por,

Yv Nr − Nv (Yr − ∇ ) > 0

sin más que analizar las condiciones para que las soluciones de la ecuación caracterı́stica
de la ecuación diferencial linealizada tengan las partes reales negativas.
Apéndice B

Funciones de transferencia

Este apéndice se emplea como recordatorio de las transformadas de Laplace y Z, de algu-


nas de sus propiedades más relevantes, y de su aplicación para el cálculo de las funciones
de transferencia de sistemas lineales invariantes en el tiempo, tanto de tiempo continuo,
de tiempo discreto y discretizado. También se pone un simple ejemplo para ver una forma
de obtener una representación de estado de un sistema, y la relación con su función de
transferencia.

B.1 Transformadas de Laplace y Z

La transformada de Laplace para una función de tiempo continuo f (t) se define como,

 ∞
L{f (t)} = F (s) = f (t)e−st dt
0

y la transformada Z para una función f (kTm ) de tiempo discreto con perı́odo de muestreo
Tm , de la siguiente forma,



Z{f (kTm )} = F (z) = f (kTm )z −k
k=0

Se observan las siguientes relaciones entre ambas transformadas:

213
214 APÉNDICE B. FUNCIONES DE TRANSFERENCIA

est −→ z
t −→ kTm

−→

Las transformadas inversas respectivas se expresan como,

f (t) = L−1 {F (s)}

f (kTm ) = Z −1 {F (z)}

para calcularlas en un caso particular se pueden emplear diferentes métodos que se pueden
consultar en textos especı́ficos (Kwakernaak y Sivan, 1991; Papoulis, 1977; Spiegel,
1971)

Algunas propiedades

Linealidad

L{αf1 ± βf2 } = αF1 (s) ± βF2 (s)

Retardo temporal

L{f (t − a)} = e−as F (s)

Producto por exponencial

L{e−at f (t)} = F (s + a)

Escala temporal
B.1. TRANSFORMADAS DE LAPLACE Y Z 215

t
L{f ( )} = aF (as)
a

Derivada

d
L{f ( f (t))} = sF (s) − f (0)
dt
d2
L{f ( 2
f (t))} = s2 F (s) − sf (0) − f (0)
dt

Derivada de orden n

dn
L{f ( f (t))} = sn F (s) − sn−1 f (0) − sn−2 f (0) − · · ·
dtn
· · · − sf (0) − f (0)

Integral

 
F (s) f (t)dt|t=0
L{ f (t)dt} = +
s s

Valor final

lim f (t) = lim sF (s)


t→∞ s→0

lim f (kTm ) = lim(z − 1)F (z)


k→∞ z→1

Valor incial

f (0) = lim sF (s)


s→∞
216 APÉNDICE B. FUNCIONES DE TRANSFERENCIA

f (0) = lim F (z),


z→∞

Integral de convolución

 t  t
f1 (t) ∗ f2 (t) = f1 (t − τ )f2 (τ )dτ = f1 (τ )f2 (t − τ )dτ
0 0

L {f1 (t) ∗ f2 (t)} = F1 (s)F2 (s)

Sumatoria de convolución


k
f1 (kTm ) ∗ f2 (kTm ) = f1 (kTm − hTm )f2 (hTm )
h=0


k
f2 (kTm − hTm )f1 (hTm )
h=0

Z {f1 (kTm ) ∗ f2 (kTm )} = F1 (z)F2 (z)

Traslación temporal

Z{f (k ± m)} = z ±m F (z) − z ±m f (0) − z ±(m−1) f (1) − · · ·


· · · − zf (m − 1)

Algunas aplicaciones
1. Las ecuaciones diferenciales ordinarias lineales de coeficientes constantes las
transforma en ecuaciones polinómicas más fáciles de tratar (transformada L).
B.2. FUNCIÓN DE TRANSFERENCIA 217

2. Las ecuaciones en diferencias lineales de coeficientes constantes las transforma en


ecuaciones polinómicas más fáciles de manipular algebraicamente (transformada
Z).
3. La resolución de ecuaciones diferenciales ordinarias (transformada L) y de ecua-
ciones en diferencias (transformada Z)lineales y de coeficientes constantes.
4. Cálculo de las funciones de transferencia (tramsformada L).
5. Cálculo de las funciones de transferencia de pulsos o de tiempo discreto (transfor-
mada Z).

B.2 Función de transferencia

Las propiedades anteriores sirven en Automática para introducir el concepto de función


de transferencia, y obtener a partir de ésta la respuesta temporal de un sistema (lineal e
invariante en el tiempo) a una determinada señal de entrada y/o perturbación.

Sistema de tiempo continuo

En primer lugar se considera un ejemplo de un sistema de tiempo continuo lineal e


invariante en el tiempo. Sea el modelo matemático que relaciona el cambio del ángulo de
rumbo ψ y el ángulo de timón δ:

ψ̈ + aψ̇ = bδ

si se aplica la transformada de Laplace en ambos miembros de la ecuación, se suponen


condiciones iniciales nulas (ψ̇(0) = ψ(0) = 0) y se tienen en cuenta las propiedades
dadas anteriormente, se obtiene:

s2 ψ(s) + asψ(s) = bδ(s)

que al despejar, queda la función de transferencia siguiente, que relaciona la entrada


(ángulo de timón) con la salida (variación de ángulo de rumbo):

ψ(s) b b
= 2 =
δ(s) s + as s(s + a)
218 APÉNDICE B. FUNCIONES DE TRANSFERENCIA

Si se conoce la función de transferencia del sistema,

ψ(s)
G(s) =
δ(s)

se puede obtener la respuesta del sistema para una entrada dada, δ(t). Dado que,

ψ(s) = G(s)δ(s), donde L{δ(t)} = δ(s)

calculando la transformada inversa de Laplace, se tendrá la respuesta temporal ψ(t) del


sistema para la entrada δ(t),

ψ(t) = L−1 {ψ(s)} = L−1 {G(s)δ(s)}

Sistema de tiempo discreto

Dado un sistema de tiempo discreto (caracterizado por su ecuación en diferencias) se


puede obtener su correspondiente relación de transformadas Z entre la salida y la entrada.
Si se suponen condiciones iniciales nulas, se obtiene la función de transferencia de tiempo
discreto G(z). Recı́procamente, si se conoce G(z) se puede obtener la respuesta temporal
y(k) para una entrada u(k) determinada, empleando la Transformada Z inversa

y(k) = Z −1 {G(z)u(z)}

Sistema de tiempo discreto equivalente o discretizado

Si se dispone de la función de transferencia de un sistema de tiempo continuo, se


puede estar interesado en obtener una aproximación de tiempo discreto (por ejemplo para
utilizarlo en control para el diseño de reguladores por técnicas digitales, o simplemente
para obtener una aproximación en ecuaciones en diferencias), se puede hacer por diferen-
tes métodos (ver por ejemplo Program CC, y su comando convert, o alguno de los libros
especializados como el de Seborg et al., 1989). A continuación se muestra un ejemplo
ilustrativo que emplea el método de discretización conocido como ZOH ( zero order hold)
o aproximación de mantenedor de orden cero.
B.2. FUNCIÓN DE TRANSFERENCIA 219

Una forma práctica de elegir Tm consiste en emplear Tm ≈ τ /10, siendo τ la constante


de tiempo efectiva del sistema. Ası́ para un buque con τ = 100 segundos, se harı́a la
elección práctica de Tm = 10 segundos. Lógicamente la constante de tiempo asociada a
la acción integral no se considera. Siguiendo con el ejemplo de Nomoto y empleando la
técnica ZOH para un perı́odo de muestreo Tm se obtiene,

b b1 z −1 + b2 z −2
−→
s(s + a) 1 + a1 z −1 + a2 z −2

siendo,

a1 = [1 + e−aTm ], a2 = e−aTm

b b
b1 = − (1 − aTm − e−aTm ), b2 = − (1 − e−aTm − aTm e−aTm )
a2 a2

quedando finalmente G(z) como,

b1 z + b 2
G(z) =
z2 + a1 z + a2

A partir de la función de transferencia de tiempo discreto G(z) se puede obtener la


ecuación en diferencias, que modela la dinámica del sistema para el perı́odo de muestreo
elegido. Dado que,

ψ(z) = G(z)δ(z)

queda,

(1 + a1 z −1 + a2 z −2 )ψ(z) = (b1 z −1 + b2 z −2 )δ(z)

Al tomar la transformada Z inversa, se obtiene la ecuación en diferencias correspondiente,


220 APÉNDICE B. FUNCIONES DE TRANSFERENCIA

ψ(k) + a1 ψ(k − 1) + a2 ψ(k − 2) = b1 δ(k − 1) + b2 δ(k − 2)

despejando ψ(k) se obtiene la expresión recursiva siguiente, que sirve para calcular la
respuesta (rumbo) en el ciclo actual (k) a partir de la respuesta (rumbo) y de la entrada
(timón) en los ciclos anteriores ((k − 1) y (k − 2)):

ψ(k) = −a1 ψ(k − 1) − a2 ψ(k − 2) + b1 δ(k − 1) + b2 δ(k − 2)

Esta ecuación en diferencias (y por tanto G(z)) también se puede obtener directa-
mente a partir de datos experimentales de la entrada y la salida, mediante el empleo de las
técnicas de identificación de sistemas. Lo mismo es aplicable a la ecuación diferencial (y
por tanto G(s)) del sistema de tiempo continuo (ver capı́tulo V).

B.3 Representación de estados

El procedimiento consiste básicamente en transformar una ecuación diferencial ordinaria


(o en diferencias), lineal o no lineal, de orden n, que representa el modelo matemático de
un sistema, en un sistema de ecuaciones diferenciales (o en diferencias) de primer orden.

Se elige para ello unas variables (variables de estado que constituirán el vector de
estado) de forma que sus derivadas aparezcan en función de dichas variables de estado.

La elección de las variables de estado es totalmente arbitraria por lo que no habrá una
única representación de estado. Se suelen elegir como tales, magnitudes fı́sicas represen-
tativas del sistema y medibles a ser posibles.

Como ejemplo simple e ilustrativo se va a emplear el modelo del buque empleado


anteriormente.

Dado la ecuación diferencial del sistema,

ψ̈ + aψ̇ = bδ

si se eligen las variables de estado como,


B.3. REPRESENTACIÓN DE ESTADOS 221

x1 = ψ, x2 = ψ̇

se obtiene,

x˙1 = x2

ẍ2 = ψ̈ = −aψ̇ + bδ = −ax2 + bδ

y por tanto el vector de estado es,

   
x1 ψ
x= =
x2 ψ̇

Si se hace u = δ, y = ψ, se puede poner el sistema de ecuaciones en forma matricial


como,

    
0 1 x1 0
ẋ = + u
0 −a2 x2 b

 
  x1
y= 1 0
x2

obteniéndose ası́ la llamada representación de estado, que de forma genérica se expresa


como,

ẋ(t) = Ax(t) + Bu(t)

y(t) = Cx(t) + Du(t)

donde las matrices A, B, C, D, pueden ser de coeficientes constantes (como en el ejem-


plo), o de coeficientes variables (para sistemas variables en el tiempo), ası́ como contener
222 APÉNDICE B. FUNCIONES DE TRANSFERENCIA

términos no lineales (para el caso de representar a un sistema no lineal). Por ello la repre-
sentación de estado constituye un tipo de formulación general, a diferencia de la función
de transferencia que se define para el caso de sistemas LIT (lineales e invariantes en el
tiempo). De forma similar se procederı́a para el caso del sistema de tiempo discreto, en
cuyo caso quedarı́a:

x(k + 1) = Ax(k) + Bu(k)

y(k) = Cx(k) + Du(k)

donde se considera que k corresponde al ciclo de muestreo, y por tanto al instante de


tiempo tk = kTm (siendo Tm el perı́odo de muestreo); igualmente k + 1 corresponde al
instante de tiempo tk+1 = (k + 1)Tm . Para sistemas LIT hay una relación entre la función
de transferencia y la representación de estado dada por,

Caso de tiempo continuo: G(s) = C(sI − A)−1 B + D

Caso de tiempo discreto: G(z) = C(zI − A)−1 B + D

Si el sistema es multivariable (multiples entradas y múltiples salidas, MIMO), las


matrices B, C T y D tendrán más de una columna, y por tanto G(s) (ası́ como G(z) en
su caso) serán matrices de transferencia, en las que cada elemento corresponderá a una
función de transferencia que relaciona un par de variables entrada-salida (ver el capı́tulo
III ).

Si se tiene la función de transferencia de un sistema y se quiere obtener una repre-


sentación de estado, se pueden emplear diversos métodos. Dos formas particularmente
sencillas de obtener a partir de los coeficientes de la función de transferencia son las
conocidas como: 1) forma canónica controlable y 2) forma canónica observable. Ası́
para una función de transferencia de la forma,

• Tiempo continuo:

bm sm + bm−1 sm−1 + ... + b1 s + b0


G(s) = +d
sn + an−1 sn−1 + ... + a2 s2 + a1 s + a0
B.3. REPRESENTACIÓN DE ESTADOS 223

• Tiempo discreto:

bm z m + bm−1 z m−1 + ... + b1 z + b0


G(z) = +d
z n + an−1 z n−1 + ... + a2 z 2 + a1 z + a0

se pueden obtener las matrices de la representación de estado correspondiente de la si-


guiente forma:

1. Forma canónica controlable.


⎡ ⎤
0 1
⎢ ... ... ⎥
⎢ ⎥
A=⎢



⎣ 0 1 ⎦
−a0 −a1 · · · −an−1

B T = [0 · · · 0 1]

C = [b0 · · · bm 0], D=d

2. Forma canónica observable.


⎡ ⎤
−an−1 1
⎢ .. . ⎥
⎢ . 0 .. ⎥
⎢ ⎥
A=⎢
⎢ ... ⎥

⎣ −a1 1 ⎦
−a0 0

B T = [0 bm · · · b0 ]

C = [1 0 · · · 0], D=d

Para una función de transferencia estrictamente propia (el grado del numerador es
inferior al del denominador) se tiene que d = 0, y por tanto D = 0 en las expresiones
anteriores.
224 APÉNDICE B. FUNCIONES DE TRANSFERENCIA

En la literatura especializada se puede encontrar a qué corresponde cada variable de


estado en las representaciones anteriores, y la forma de calcular la condición inicial para
el vector de estado (Kailath, 1986, Gopal, 1985). Sin embargo, y a modo de ejemplo, a
continuación se da otra forma de obtener la representación de estado y la correspondencia
de cada una de las variables de estado.

Si se tiene que el modelo matemático del sistema viene dado a partir de una ecuación
diferencial de orden n de la forma,

y (n + a1 y (n−1 + · · · + an−1 ẏ + an y = b0 u(n + b1 u(n−1 + · · · + bn−1 u̇ + bn u

se pueden emplear como variables de estado las siguientes:

x1 = y − β0 u

x2 = ẋ1 − β1 u

x3 = ẋ2 − β2 u

···

xn = ẋn−1 − βn−1 u

donde los coeficientes β0 , β1 , β2 , · · · , βn vienen determinados por,

β0 = β0

β1 = b1 − a1 β0

β2 = b2 − a1 β1 − a2 β0

···

βn = βn − a1 βn−1 − · · · − an−1 β1 − an β0
B.3. REPRESENTACIÓN DE ESTADOS 225

Con esta elección de variables de estado se obtienen las siguientes matrices de la


representación de estado:
⎡ ⎤
0 1 0 ··· 0
⎢ ⎥


0 0 1 ··· 0 ⎥

A=⎢

..
.
..
.
..
.
..
.
..
.


⎢ ⎥
⎢ 0 0 0 ··· 1 ⎥
⎣ ⎦
−an −an−1 −an−2 · · · −a1

B T = [β1 β2 · · · βn−1 βn ]

C = [1 0 · · · 0], D = β0

En el caso de tratarse de un sistema de tiempo discreto con un modelo matemático en


la forma de ecuación en diferencias o recursiva,

y(k + n) + a1 y(k + n − 1) + a2 y(k + n − 2) + · · · + an−1 y(k + 1) + an y(k) =


b0 u(k + n) + b1 u(k + n − 1) + b2 u(k + n − 2) + · · · + bn−1 u(k + 1) + bn u(k)

si se eligen como variables de estado las siguientes,

x1 (k) = y(k) − β0 u(k)

x2 (k) = x1 (k + 1) − β1 u(k)

x3 (k) = x2 (k + 1) − β2 u(k)

···

xn (k) = xn−1 (k + 1) − βn−1 u(k)

se obtienen unas matrices A, B, C, D correspondientes a su representación de estado que


coinciden con las vistas anteriormente para el caso de tiempo continuo.
226 APÉNDICE B. FUNCIONES DE TRANSFERENCIA

B.4 Discretización de sistemas de tiempo continuo

En este apartado se resumen algunas de las técnias empleadas para obtener un modelo de
tiempo discreto a partir de uno de tiempo continuo. Básicamente se pueden separar en
dos grupos: 1) los basados en la aproximación de la evolución temporal de ambo

1. Métodos basados en la aproximación de la evolución temporal


Se fundamentan en la idea de que para una determinada señal de entrada, las re-
spuestas del sistema de tiempo continuo, caracterizado por una función de trans-
ferencia G(s), y de un sistema de tiempo discreto equivalente (del que se trata de
calcular su fu
Como señales de entrada tı́picas se suelen tomar la señal impulso (o delta de Dirac),
la señal escalón o salto, y la señal tipo rampa. La forma de obtener G(z) en cada
caso se da a continuación:1

(a) Señal impulso o delta de Dirac

G(z) = Z[G(s)]

(b) Señal escalón o salto. Equivale a la conocida como aproximación del man-
tenedor de orden cero, ZOH ( zero order hold).
 
z 1
G(z) = Z G(s)
z−1 s
(c) Señal de rampa y escalón superpuestos
  

z z 1 1
G(z) =Z + G(s)
(z − 1) z − 1
2 Tm s 2 s

o de forma simplificada,
 
z2 1 + sTm
G(z) = Z G(s)
(z − 1)2 Tm s2
2. Métodos basados en técnicas de integración numérica de las ecuaciones diferen-
ciales que definen al sistema de tiempo continuo.
En estos métodos se sustituye el operador derivada (s en la función de transferencia
G(s)) por una transformación, dependiendo ésta de la aproximación empleada para
realizar la integración numérica. Algunos de los utilizados son:
1
Donde se pone Z[F (s)], lo que se quiere indicar es que se hace Z[L−1 {F (s)}]
B.4. DISCRETIZACIÓN DE SISTEMAS DE TIEMPO CONTINUO 227

(a) Método de Euler hacia delante (o de la aproximación de la integral por medio


de rectángulos hacia delante)
z−1
s=
Tm
(b) Método de Euler hacia detrás (o de la aproximación de la integral por medio
de rectángulos hacia detrás)
z−1
s=
zTm
Esta transformación también puede obtenerse a partir del desarrollo de Taylor
de,
1 1
z = esTm = =
e−sTm 1 − Tm s + (1/2)Tm2 s2 + ...

de forma que si se toman sólo los dos primeros términos de la serie del de-
nominador, queda:
1
z=
1 − Tm s
que equivale a la expresión de arriba si se despeja s.
(c) Método de integración trapezoidal o de la transformación bilineal.

2 z−1
s= (B.1)
Tm z + 1
Esta transformación también puede obtenerse a partir del desarrollo de Taylor
de,

esTm /2 1 + Tm s/2 + (1/2)Tm2 s2 /4 + ...


z = esTm = =
e−sTm /2 1 − Tm s/2 + (1/2)Tm2 s2 /4 + ...

de forma que si se toman sólo los dos primeros términos de la serie del nu-
merador y denominador, queda:

1 + Tm s/2
z=
1 − Tm s/2

que equivale a la expresión (B.1) si se despeja la variable s.

ok
228 APÉNDICE B. FUNCIONES DE TRANSFERENCIA
Apéndice C

Métodos numéricos para simulación

C.1 Introducción

Una vez que se ha obtenido el modelo matemático del sistema bajo estudio, es necesario
realizar una simulación por computador para un tiempo determinado. Para ello previa-
mente se deben de colocar las ecuaciones del modelo matemático de forma adecuada, a
fin de que pueda implementarse en un programa de ordenador.

Para herramientas de simulación como VisSim y Simulink, ésto se realiza directa-


mente por la propia herramienta, y el usuario únicamente se encarga de realizar una pro-
gramación visual obteniendo el diagrama de simulación correcto. En otras aplicaciones
como ACSL o Simnon es necesario que el usuario obtenga previamente las expresiones
adecuadas (sistemas de ecuaciones diferenciales de primer order, o ecuaciones en difer-
encias) y las incorpore según el lenguaje de simulación utilizado.

En ambos casos (tanto con la herramienta de programación visual, como con la de pro-
gramación convencional) el usuario puede especificar el método de integración numérica
empleado para resolver los sistemas de ecuaciones diferenciales que constituyan el mo-
delo matemático, el paso de integración y el tiempo de simulación.

Existen diversos métodos de resolución numérica de sistemas de ecuaciones difer-


enciales, cada uno de los cuales incorporan un mayor o menor grado de sofistificación,
que serán más o menos adecuados dependiendo de las caracterı́sticas particulares de cada
sistema (Press et al., 1990; Lindfield y Penny, 1995).

229
230 APÉNDICE C. MÉTODOS NUMÉRICOS PARA SIMULACIÓN

En este apéndice únicamente nos limitamos a los métodos de Euler, de Euler mod-
ificado (o trapezoidal), y de Runge-Kutta de segundo y cuarto orden. Lo que se pre-
tende con ello es que sirva de introducción al lector no familiarizado con estos métodos
numéricos, a la vez para que se puedan utilizar estos algoritmos en lenguajes de progra-
mación de propósito general (tales como Pascal, C o Fortran), ası́ como con el propio
Matlab. Es de destacar que conviene que el usuario de los programas de simulación de
sistemas dinámicos (tales como ACSL, Simnon, Simulink o Vissim) conozca al menos los
fundamentos de los algoritmos de integración numérica de ecuaciones diferenciales más
usuales que se emplean, ya que puede darse la circunstancia de que el usuario seleccione
un cierto algoritmo de entre varias opciones de un menú sin saber muy bien lo que está
haciendo.

En lo que sigue se van a considerar únicamente los sistemas descritos por ecuaciones
diferenciales ordinarias. Se parte también de la idea de que el modelo matemático previ-
amente se ha transformado en un sistema de ecuaciones diferenciales de primer orden de
la forma,

ẋi = fi (x1 , x2 , ..., xn , t), i = 1, 2, ..., n (C.1)

que puesto en forma matricial queda:

x = f (x, t)

donde,

x = [x1 x2 ... xn ], f T = [f 1 f 2 ...fn ]

A partir de este sistema de ecuaciones diferenciales se obtiene una aproximación


numérica que lo transforma en un sistema de ecuaciones en diferencias que posterior-
mente mediante la disposición en un determinado algoritmo se implementa en un progra-
ma de ordenador.

C.2 Método de Euler

El método numérico más simple para resolver ecuaciones diferenciales ordinarias es el


método de Euler, que consiste en suponer que las funciones derivadas son constantes
C.2. MÉTODO DE EULER 231

durante el paso o intervalo de integración Δt = h. El planteamiento de un programa para


resolver el sistema de ecuaciones diferenciales (C.1) mediante el método de Euler es el
siguiente:

1. Selecciona el paso de integración, Δt = h, y el tiempo de simulación total tsim .

2. Se inicializan variables.

tk = t0 , tk+1 = tk + h xi (tk ) = xi (t0 ), i = 1, 2, ..., n

3. Se calculan las funciones derivadas fi [x(tk ), tk ].

4. Se calculan los nuevos valores de xi ,

xi (tk+1 ) = xi (tk ) + hfi [x(tk ), tk ], i = 1, 2, ...n

que en forma matricial se puede poner como,

x(tk+1 ) = x(tk ) + hf [x(tk ), tk ]

5. Se almacenan (en memoria interna o en disco) las variables de interés, y/o se pre-
sentan parcialmente en pantalla y/o impresora.

6. Se actualizan variables

tk = tk+1 , x(tk ) = x(tk+1 ), tk+1 = tk + h

7. Si tk ≤ tsim se repite el proceso a partir del paso 3, y en otro caso se termina la


simulación.

8. Se realiza la representación gráfica y/o el análisis numérico de los resultados de


la simulación. Si los resultados no son satisfactorios, se puede repetir el proceso
completo.

El método de Euler proporciona un error local de truncamiento (es decir, el error por
cada paso de integración individual) que es del orden de h2 .

El modelo matemático de un sistema dinámico puede venir descrito mediante una


representación de estado de la forma,
232 APÉNDICE C. MÉTODOS NUMÉRICOS PARA SIMULACIÓN

ẋ(t) = Ax(t) + Bu(t)


y(t) = Cx(t) + Du(t)

donde A, B, C, D son las matrices correspondientes, x(t) es el vector de estado, y(t)


es el vector de salida o de medidas, y u(t) es el vector de entrada. A partir de esta
representación se puede emplear el método de Euler anterior (aproximación de la derivada
para un paso de integración Δt = h) para el cálculo aproximado mediante un programa
de ordenador de la respuesta temporal del sistema para unas condiciones iniciales dadas,
x(0), y un vector de entrada determinado u(t), quedando la siguiente expresión:

x(t + h) = (I + Ah)x(t) + Bhu(t)

donde I representa la matriz unidad de una dimensión igual a la de A. Si se toma t = kh,


se puede obtener finalmente:

x[(k + 1)h] = (I + Ah)x(kh) + Bhu(kh) (C.2)


y(kh) = Cx(kh) + Du(kh)

donde k corrresponde a cada paso de integración que se realice de una secuencia total
de N pasos: k = 0, 1, 2, ..., N . Siguiendo con la misma nomenclatura utilizada con
anterioridad, las ecuaciones (C.2) se pueden poner como,

x(tk+1 ) = (I + Ah)x(tk ) + Bhu(tk )


y(tk ) = Cx(tk ) + Du(tk )

con, tk+1 = tk + h.

C.3 Método trapezoidal

El método trapezoidal también se conoce como método de Euler modificado. En este


caso lo que se hace es modificar el cálculo de f [x(tk ), tk ] mediante el empleo de la media
aritmética de dos valores,
C.4. MÉTODOS DE RUNGE-KUTTA 233

f (1) = f [x(tk ), tk ]

f (2) = f [x(tk ) + f (1) h, tk+1 ]

de forma que queda:

h
x(tk+1 ) = x(tk ) + (f (1) + f (2) )
2

El método trapezoidal proporciona un error local de truncamiento (es decir, el error


por cada paso de integración individual) que es del orden de h3 .

C.4 Métodos de Runge-Kutta

La denominación de métodos de Runge-Kutta (R-K) abarca a un conjunto de métodos


numéricos con una estructura común, que es de la forma:

k1 = hf [x(tk ), tk ]


j−1
kj = hf [x(tk ) + cjr kr , tk + hdj ]
r=1


p
x(tk+1 ) = x(tk ) + bj kj
j=1

donde p corresponde al orden de este método general.


234 APÉNDICE C. MÉTODOS NUMÉRICOS PARA SIMULACIÓN

Método de Runge-Kutta de segundo orden

Las ecuaciones del método de R-K de segundo orden son:

k1 = f [x(tk ), tk ]

k2 = f [x(tk ) + hk1 , tk+1 ]

h
x(tk+1 ) = x(tk ) + (k1 + k2 )
2

Método de Runge-Kutta de cuarto orden

Del conjunto de métodos de Runge-Kutta, el más comunmente utilizado es el conocido


R-K de cuarto orden, cuya aproximación numérica viene expresada por las ecuaciones,

k1 = f [x(tk ), tk ]

k2 = f [x(tk ) + k1 /2, tk + h/2]

k3 = f [x(tk ) + k2 /2, tk + h/2]

k4 = f [x(tk ) + k3 , tk + h]

h
x(tk+1 ) = x(tk ) + (k1 + 2k2 + 2k3 + k4 )
6

Este método proporciona un error local de truncamiento del orden de h5 .


C.5. PRECISIÓN, ESTABILIDAD Y RIGIDEZ 235

C.5 Precisión, estabilidad y rigidez

El tamaño del paso de integración, h = Δt, afecta a la precisión de la integración


numérica de las ecuaciones diferenciales, ası́ como al tiempo de máquina que se requiere
para realizar los cálculos. En lo que respecta al tiempo de máquina, éste es inversamente
proporcional al paso de integración, o de forma equivalente, es directamente proporcional
al número de pasos de integración, N , requeridos para realizar la simulación proyectada:

tsim − t0
N=
h

En cuanto al error de truncamiento (diferencia entre el valor exacto y el obtenido me-


diante el método numérico), éste aumenta al aumentar el paso de integración y depende
como ya se ha dicho del método numérico empleado. Además de este tipo de error existe
otro denominado error de redondeo, y que se debe a que los cálculos en el computador
se realizan con un número limitado de dı́gitos. Si se realizan las operaciones con doble
precisión (un doble número de dı́gitos significativos) se reducen estos errores significati-
vamente, pasando a ser dominantes los debidos al error de truncamiento, que dependen
del paso y del método de integración empleados.

Para asegurar que los errores no crezcan de forma progresiva con el tiempo se requiere
que el método numérico empleado para resolver un problema de simulación concreto sea
estable. Como se ha dicho, el error en cada paso de integración con el método de Euler
es del orden de magnitud de h2 . Este error se conoce como error local de truncamiento,
ya que únicamente informa sobre la precisión del cálculo en cada paso individual, pero
no de la forma en que se propaga dicho error a lo largo de una secuencia de pasos de
integración. Este error acumulado es difı́cil de determinar a priori, ya que el error de un
paso afecta a la precisión del siguiente de una forma que es en general compleja.

Si para un problema concreto, el error aumenta progresivamente con el tiempo, de


forma que dicho error domina la solución, se dice que el método numérico empleado para
ese problema es inestable. Si se da la condición de que el error decrece con el tiempo
convergiendo hacia la solución exacta, se dice que el método numérico es absolutamente
estable. Si los errores relativos no aumentan a medida que avanza la simulación se dice
que el método tiene una estabilidad relativa. En este caso los errores absolutos (x̂(t) −
x(t)) pueden aumentar con el tiempo (donde x̂(t) representa al valor calculado por el
método numérico, y x(t) corresponde al valor exacto), pero no ası́ el error relativo (x̂(t)−
x(t)/x(t)).
236 APÉNDICE C. MÉTODOS NUMÉRICOS PARA SIMULACIÓN

Rigidez (stiff equations)

Básicamente se dice que el modelo matemático de un sistema, caracterizado mediante


un conjunto de ecuaciones diferenciales, es rı́gido ( stiff ) cuando existen dinámicas con
constantes de tiempo asociadas con órdenes de magnitud muy diferentes.

Para introducir el concepto de rigidez de los sistemas de ecuaciones diferenciales se


va a emplear un ejemplo sencillo en el que el modelo matemático del sistema viene dado
por,

ẋ1 (t) = −a1 x1 (t) − a2 x2 (t)


ẋ2 (t) = x1 (t)

que puesto en forma matricial queda,

ẋ(t) = Ax(t)

Se puede comprobar que la solución del sistema de ecuaciones diferenciales anterior


es de la forma,

x1 (t) = a exp(r1 t) + b exp(r2 t)


x1 (t) = c exp(r1 t) + d exp(r2 t)

donde a, b, c, d son constantes que dependen de las condiciones iniciales y de los valores
de los parámetros a1 , a2 . Se puede verificar que r1 , r2 corresponden a los valores propios
de la matriz A.

 
−a1 −a2
A=
0 1

El sistema será rı́gido ( stiff ) si la relación

| r1 |
fr =
| r2 |
C.5. PRECISIÓN, ESTABILIDAD Y RIGIDEZ 237

cumple que f r  1, o si f r  1; es decir si las constantes de tiempo asociadas a cada


valor propio de la matriz A (o polo de la función o matriz de transferencia correspondiente
en su caso) son de órdenes de magnitud muy diferentes.

Desde el punto de vista numérico los sistemas con ecuaciones rı́gidas (stiff equa-
tions) presentan problemas, ya que si se elije un paso de integración fijándose en la con-
stante de tiempo más pequeña, ello provocará un aumento muy considerable en el tiempo
de cómputo. Pero sin embargo, los modos asociados a la dinámica rápida del sistema
adquieren muy rápidamente su estado estacionario en comparación con el resto de mod-
os, por lo que se está gastando tiempo de máquina innecesariamente. Por ello, se emplean
para este tipo de sistema métodos numéricos con paso de integración variable y métodos
especı́ficos para sistemas rı́gidos (Press et al., 1990; Lindfield y Penny, 1995).
238 APÉNDICE C. MÉTODOS NUMÉRICOS PARA SIMULACIÓN
Apéndice D

Términos marinos

En este apéndice se recogen algunas de definiciones de términos marinos, a fin de que


sirva de consulta si el lector no está familiarizado con ellos, y los encuentra a lo largo del
texto.

Amura: Parte de cada uno de los costados del buque.

Arrufo: Lı́nea curva más elevada en los extremos que en el centro en el sentido proa-
popa como consecuencia de la flexión del casco al estar sostenido a modo de viga en los
extremos por dos crestas de ola.

Borda : La parte superior de los costados del buque.

Carena : Obra viva.

Fondo : Parte baja del casco del buque

Obra muerta : Parte del casco del buque que se extiende desde la proa hasta la popa entre
la borda y la lı́nea de flotación.

Obra viva: Parte del casco del buque que se extiende desde la proa hasta la popa entre la
lı́nea de flotación y la quilla.

Popa : Parte posterior del casco del buque.

DIRECCIONES:

239
240 APÉNDICE D. TÉRMINOS MARINOS

A babor: Hacia el costado de babor

A estribor : Hacia el costado de estribor.

Abarloado : Al costado de un buque.

Atravesado : Perpendicular a la lı́nea proa-popa.

Babor : Costado o banda izquierda.

Barlovento : Dirección contraria al viento o costado que se encuentra en la parte contraria


al viento.

De vuelta encontrada: Dı́cese del buque que navega en sentido opuesto.

Estribor : Costado o banda derecha del buque mirándolo de popa a proa.

Sotavento : Costado del buque resguardado del viento y opuesto por tanto a aquel sobre
el cual incide el mismo.

Banda : cada una de las partes o mitades del buque comprendidas entre el plano diametral
y uno y otro costado.

Desplazamiento : El peso del buque y que varı́a con la carga que lleva a bordo (coincide
con el peso del volumen de agua desalojada o desplazada).

Centro vélico : Centro de gravedad de la superficie de vela. Punto de aplicación de la


fuerza del viento.

CONDICIÓN DEL BUQUE:

Adrizar : Poner derecho el buque que estaba escorado.

Aproado : Condición del buque cuando tiene más calado a proa que en popa.

Ganar arrancada: Empezar a ganar velocidad el buque.

Arribar : Enmendar el rumbo del buque de manera que el viento sea más largo que antes.

Derivar : Seguir el buque un rumbo distinto del que señala su proa, debido a la existencia
de una corriente.
241

Empopada: Navegación que hace el buque recibiendo el viento y la mar por la popa.

A sotavento : Dirección en que apunta la caña del timón cuando se pretende hacer orzar
el buque.

Caer : Hacer que la proa del buque se abra del viento.

Curva de evolución : La que describe el buque al obedecer al timón, aunque no esté


metido completamente a la banda.

Gobernar : Llevar el rumbo del buque por medio del timón

Timón a la vı́a: Posición del timón en el centro.

MOVIMIENTOS DEL BARCO EN LA MAR

Balance de barlovento : La inclinación repentina del buque sobre el costado de barloven-


to.

Cabecear : Mover alternativamente hacia arriba y abajo la proa del buque cuando navega
con mal tiempo.

Cabezada : El movimiento de descenso de la proa.

Embarcar agua : entrar agua por la cubierta.

Empopada : Navegación del buque con viento y mar de proa.

Escora : Inclinación del buque hacia uno y otro costado.

Golpe de mar : Ola que embarca el buque y barre la cubierta.

Pantocazo : Golpe brusco y violento que da el buque con el pie de roda contra la super-
ficie del agua y más particularmente en el seno no de la ola.

Perı́odo de balance: Tiempo empleado por un buque que está inclinado a una banda hasta
que lo está con el mismo ángulo inclinado a la otra.

Tumbarse : Inclinarse el buque de manera súbita o imprevista hacia un costado.

Virada por avante : cambio de rumbo pasando la proa por el viento.


242 APÉNDICE D. TÉRMINOS MARINOS

Abrirse del viento: Aumentar el ángulo que forma la proa con el viento.

Amurado por babor : Dı́cese del buque que navega recibiendo el viento por el costado
de babor.

Virar por redondo: Cambiar el buque de amura en que recibe el viento pasando la popa
en la dirección en que sopla.

Hilero de corriente: Movimiento de una masa de agua cuando es de reducida anchura.

Buque tardo: Lento en virar

Sincronismo transversal : Se establece cuando el perı́odo aparente de la ola se iguala al


perı́odo de balanceo del buque en aguas tranquilas.

Sincronismo longitudinal: Se establece cuando el perı́odo aparente de la ola se iguala al


perı́odo de cabeceo del buque en aguas tranquilas.

Resistencias del buque al movimiento:

• Las resistencias de la carena al movimiento se dividen : de fricción, directa de


formación de remolinos, o de formación por olas

• Resistencias opuestas por el aire

• Resistencias accidentales : Debidos al estado del mar y a bajos fondos o canales.

• Curva de evolución: Trayectoria descrita por el centro de gravedad del buque, cuan-
do se mete el timón a una banda.

PROPULSIÓN

Retroceso: Diferencia entre la velocidad teórica debido al paso de la hélice y la velocidad


real del buque.

Cavitación: Pérdida de empuje y fuertes vibraciones por la formación de vacı́os en las


caras activas de las palas de la hélice.

OLAS

Perfil de ola : Lugar geométrico de las posiciones simultáneas


243

Crestas: Elevación máxima de la ola

Senos: Las depresiones máximas

Altura : Distancia vertical entre seno y cresta.

Perı́odo: Tiempo que tarda en pasar dos crestas.

Longitud: Distancia entre dos crestas.


244 APÉNDICE D. TÉRMINOS MARINOS
Apéndice E

Nociones del Análisis Orientado a


Objetos

E.1 Introducción

Desde el punto de vista del modelado de un sistema complejo, es muy conveniente di-
vidir el sistema en partes y modelarlas separadamente. Posteriormente habrı́a que decidir
sobre la plataforma para la implementación del modelo del sistema, a fin de que fuera rel-
ativamente sencillo modificarlo, integrar diferentes modelos obtenidos por separado para
constituir el modelo del sistema completo, etc.

En la actualidad está prolifereando el empleo de los lenguajes de programación orien-


tados a objeto (tales como por ejemplo el C++ y el Smalltalk), ası́ como la utilización
de lenguajes de modelado y simulación (como por ejemplo el Omola y el Dymola) que
utilizan la filosofı́a y los métodos de la orientación a objeto. Por ello, se ha creido conve-
niente incluir un apéndice que sirva para introducir al lector que desconozca estos temas
en el análisis orientado a objetos (AOO).

Desde el punto de vista de la programación, y de forma simple, se puede decir que el


término orientado a objetos” significa que el software se organiza como una colección
de objetos discretos que contienen tanto las estructuras de los datos como su compor-
tamiento. Esto está en contraposición con la programación convencional, en la que las
estructuras de datos y el comportamiento son dos entidades diferentes (Yourdon, 1989;
Rumbaugh et al., 1995).

245
246 APÉNDICE E. NOCIONES DEL ANÁLISIS ORIENTADO A OBJETOS

E.2 Conceptos de la orientación a objetos

Existe un cierto desacuerdo entre los diferentes autores, que trabajan en el desarrollo y
aplicación de las técnicas orientadas a objetos, acerca de las caracterı́sticas precisas que
requiere un enfoque orientado a objetos. Sin embargo, sı́ hay acuerdo en que han de in-
cluirse cuatro aspectos fundamentales: identidad, clasificación, polimorfismo y herencia.

La propiedad de identidad se refiere a que los datos pertenecen a entidades discretas


y distinguibles denominadas objetos. Se tendrá que dos objetos serán diferentes aunque
los valores de todos sus atributos sean idénticos.

La clasificación es una propiedad que significa que los objetos con la misma estruc-
tura de datos ( atributos) y comportamientos ( operaciones) se agrupan para formar una
clase.

El polimorfismo se refiere a que una misma operación puede comportarse de forma


diferente según la clase a la que se aplique.

La propiedad de la herencia implica la compartición de atributos y operaciones en-


tre clases tomando como base una relación jerárquica. Por ello se pueden ir definiendo
clases de objetos, que posteriormente se subdividen en subclases, de forma que las sub-
clases heredan todas las propiedades de sus superclases respectivas, y añaden además sus
particulares propiedades. De esta forma no es necesario repetir las propiedades de las
superclases en cada subclase.

Las propiedades de identidad, clasificación, polimorfismo y herencia caracterizan a


los principales lenguajes y enfoques orientados a objetos. Cada uno de estos conceptos
pueden utilizarse de forma independiente y por separado, pero en conjunto se comple-
mentan unos a otros de forma sinérgica; de forma que se pueden obtener de su empleo
unas ventajas mucho mayores de las cabrı́a esperar en un principio.

A continuación se definen algunos de los elementos y conceptos que emplea en el


análisis orientado a objetos:

• Objeto: abstracción de algo en el dominio de un problema. Es el elemento básico,


una entidad que tiene unos atributos particulares, que son los datos y una forma de
operar sobre ellos que son los procedimientos o métodos.

• Atributo: son las caracterı́sticas principales de cada objeto, también se conocen


como variables o campos, cuyos valores posibles definen los estados del mismo.
E.2. CONCEPTOS DE LA ORIENTACIÓN A OBJETOS 247

• Instancia: es un representante fı́sico de una clase. Por ejemplo, el buque Exxon


Valdez es una instancia de la clase petrolero.

• Operación: es una acción o una transformación que se lleva a cabo o que se aplica
a un objeto. Por ejemplo, la operación ”controlar” se puede entender de forma
diferente (polimorfismo) en las clases de objetos buque y avión.

• Método: es una implementación especı́fica de una operación por parte de una


clase. El método es la explicitación de como llevar a cabo la operación. Ası́ por
ejemplo, cuando el viento hace que el buque se salga de su rumbo, se inicia la
operación de ”corregir”rumbo, y el método serı́a la forma fı́sica de realizar la
correción de rumbo mediante la acción del timón.

• Evento o suceso: es algo que transcurre durante un perı́odo de tiempo. Por ejem-
plo: ”el piloto pasa a modo automático”, o también: ”el buque sale con destino a
Canarias”.

• Actividad: es una operación cuya realización requiere un cierto tiempo. Toda


actividad está asociada a un estado. Entre las actividades se encuentran las opera-
ciones continuas (como por ejemplo: mostrar una imagen en la pantalla de rádar),
ası́ como las operaciones secuenciales que terminan por sı́ mismas después de un
cierto intervalo de tiempo (como por ejemplo el cierre de una válvula o la real-
ización de un cálculo).

• Acción: es una operación que se considera instantánea, y que va asociada a un


evento.

• Mensaje: los objetos interactuan y se comunican mediante ”mensajes” u órdenes


de actuación que les permite colaborar. Un mensaje especifica una petición de
operación que ha de llevar a cabo el objeto receptor. Si el receptor acepta el mensaje,
acepta la responsabilidad de llevar a cabo la operación.

• Estado: Los objetos disponen de estado y éste viene dado por los atributos. El
estado queda caracterizado por las acciones que llevan a cabo sobre otros objetos,
o sobre ellos mismos. Va parejo al concepto de independencia que implica que la
única forma que tiene un objeto de cambiar su estado es a través de las acciones de
sus propios métodos.

• Diagrama de estados: consiste en un diagrama que relaciona eventos y estados.


Cuando tiene lugar un evento o suceso, el estado siguiente dependerá del actual,
ası́ como del evento. Un cambio de estado provocado por un evento es lo que se
llama transición. El diagrama de estados especifica la secuencia de estados que
causa cierta secuencia de eventos. Si un objeto se encuentra en un cierto estado y se
248 APÉNDICE E. NOCIONES DEL ANÁLISIS ORIENTADO A OBJETOS

Figura E.1: Objeto buque genérico

produce un suceso cuyo nombre corresponda al de una de sus transiciones, entonces


el objeto cambia de estado y se dice que la transición se dispara.

• Encapsulación: también conocida como propiedad de ocultamiento de la infor-


mación. Consiste en separar los aspectos externos del objeto (a los cuales pueden
acceder otros objetos) de los detalles internos de implementación del mismo, los
cuales quedan ocultos para los demás objetos. Desde el punto de vista de la pro-
gramación, la encapsulación evita que el programa llegue a ser tan interdependiente
que un pequeño cambio tenga efectos secundarios masivos. Por esta propiedad, los
objetos filtran los mensajes que les llegan aceptando sólo los que van dirigidos a el-
los y luego responden internamente según los comportamientos codificados en sus
métodos.
E.3. MÉTODOLOGÍA DEL ANÁLISIS ORIENTADO A OBJETOS 249

Un ejemplo: para introducir y comprender el punto de vista orientado a objetos se va a


emplear como ejemplo un objeto de la clase buque mercante.

El objeto ”petrolero”es un miembro ( ”instancia”) de una clase de objetos mucho


mayor o superclase que se llama ”buque mercante”. Se puede asociar un conjunto de
atributos genéricos a cada objeto de la clase buque mercante, como por ejemplo: eslora,
manga, calado, puntal, posición del c.d.g., etc.

Estos atributos se aplican a otros objetos ”buques mercantes”como petroleros, car-


gueros, quimiqueros etc. Como el objeto petrolero es un miembro de la clase buque
mercante, hereda sus atributos. A su vez el buque Exxon Valdez es una ”instancia de la
subclase petrolero”. De esta forma se puede comprobar el efecto telescópico de este tipo
de análisis (ver figura E.2).

Cada objeto de la clase buque puede ser manipulado mediante la recepción de men-
sajes de otros objetos. Ası́ por ejemplo el buque podrı́a ser: propulsado por el objeto
máquina, empujado por el objeto corrientes, o por el objeto viento, y gobernado por el
objeto timón.

En la figura E.2 puede verse la estructura jerarquizada de las clases y la intercomuni-


cación mediante mensajes del objeto viento con el objeto buque, y como éste responde con
un comportamiento de cambio de rumbo, fruto de procesar el mensaje con sus métodos
internos.

E.3 Métodologı́a del análisis orientado a objetos

Se describe brevemente una métodologı́a para el análisis orientado a objetos (AOO),


tomando para ello el problema del buque en navegación. Se debe aclarar que la sim-
bologı́a empleada en las figuras siguientes corresponde a la empleada habitualmente en
las herramientas CASE ( Computer Aieded System Engineering) (Barker y Longman,
1992). El AOO contempla tres tipos diferentes de análisis o modelado:

• Análisis de la estructura de los objetos (análisis estático), o modelado de objetos.


Este análisis define las categorı́as de los objetos que percibimos en el sistema en
estudio y las formas en que los podemos asociar. Normalmente estudia lo siguiente:

– Identificación de tipos de objetos y de cómo se asocian.


250 APÉNDICE E. NOCIONES DEL ANÁLISIS ORIENTADO A OBJETOS

Figura E.2: Estructura de clases, atributos y comunicación entre objetos


E.3. MÉTODOLOGÍA DEL ANÁLISIS ORIENTADO A OBJETOS 251

Figura E.3: Diferentes objetos que componen el sistema buque

Los tipos de objetos son importantes porque son los que crean los bloques con-
ceptuales para la construcción del modelo. En este nivel se plantea la necesi-
dad de encontrar los distintos objetos relevantes del sistema y que compondrán
el modelo. A pesar de que es necesario tener un minucioso conocimiento del
problema, normalmente se consigue encontrar los objetos y sus componentes
con preguntas sencillas del tipo (ver figura E.3):
∗ ¿Donde buscar?
∗ ¿Qué buscar?
∗ ¿Qué considerar?
∗ ¿Qué poner en duda?
∗ ¿Como nombrar los objetos?
Pero sobre todo, la identificación de un objeto debe basarse en reconocer al-
gunas de sus propiedades más relevantes. En nuestro caso se tratarı́a de iden-
tificar los objetos relevantes del sistema buque ( timón, máquina, hélice, etc.)
y de las perturbaciones (olas, viento, etc.).
Por otra parte es importante definir y nombrar las asociaciones entre los obje-
tos”(ver figura E.4). En estas asociaciones se representan los enlaces entre ob-
jetos mediante lineas con una simbologı́a especı́fica para sus extremos, y con
mensajes, convenientemente colocados, se expresan su relación semántica y
el sentido de su lectura. Un ejemplo de interpretación de este diagrama serı́a:
el buque tiene de üno a varios”timones, y el timón gobierna a un ”sólo”buque
252 APÉNDICE E. NOCIONES DEL ANÁLISIS ORIENTADO A OBJETOS

(ver figura E.4). Estos diagramas tienen la ventaja de ser muy claros y cogni-
tivos, ya que en definitiva son mapas conceptuales que facilitan la compren-
sión del sistema.
– La organización de los objetos en clases y subclases.
Se organizan en jerarquı́as. Las jerarquı́as son una de las vı́as del sentido
común del hombre para organizar la información. Una de las más conocidas es
la de generalización cuyo resultado es distinguir un objeto como más general
de un objeto más especı́fico (figura E.2). Son importantes porque ayudan a
definir las clases, subclases, y la herencia entre objetos.
– La obtención de los objetos compuestos.
Otra caracterı́stica jerárquica también importante es la de composición (o en-
samblaje), que proporciona la idea de como un todo se descompone en partes.
Son las que describen la estructura de un sistema y lo importante ahora es
identificar a que estructura pertenece cada objeto. Sirven en planificación,
funcionamiento y mantenimiento de sistemas técnicos (lista de partes o com-
ponentes). Un ejemplo de la estructura de ensamblaje del sistema buque viene
en la figura E.5

• Análisis del comportamiento de los objetos: análisis o modelado dinámico.


El análisis o modelo dinámico describe aquellos aspectos del sistema que tratan
de la temporización y secuencia de operaciones (eventos que marcan los cambios,
secuencias de eventos, estados que definen el contexto para los eventos) y la organi-
zación de efentos y de estados. Se representa gráficamente mediantes los diagramas
de estado, y también mediante los diagramas de flujo de objetos y de flujo de even-
tos.
El diagrama de flujo de eventos expresa un guión de procesamiento que cambia
los estados de los objetos y describe los procesos en términos de eventos, reglas
de activación, de condiciones y de operaciones (ver figura). En este diagrama los
eventos se representan mediante un triángulo sólido al principio de una lı́nea que
sale de la caja de proceso. Este triángulo apunta al momento en que ocurre un
cambio en el estado de un objeto, como resultado de la operación anterior. La
regla de activación se define con una lı́nea con una flecha dirigida hacia una caja de
operación y que indica que la operación es activada por la ocurrencia de un evento
anterior. Indican por tanto que las operaciones producen eventos que activan otras
operaciones, y definen la asociación entre evento y operación posterior. De esta
manera la regla de activación define una relación de causa-efecto entre el evento y
la operación.
Los diagramas de flujo de objetos son parecidos a los diagramas de flujo, y sirven
para mostrar los objetos y las actividades entre ellos. Un ejemplo de este diagrama
referido al proceso del viento sobre el buque se muestra en la figura E.7.
E.3. MÉTODOLOGÍA DEL ANÁLISIS ORIENTADO A OBJETOS 253

Figura E.4: Red de asociación entre los objetos del buque


254 APÉNDICE E. NOCIONES DEL ANÁLISIS ORIENTADO A OBJETOS

Figura E.5: Estructura de ensamblaje del sistema buque


E.3. MÉTODOLOGÍA DEL ANÁLISIS ORIENTADO A OBJETOS 255

Figura E.6: Diagrama de flujo de eventos


256 APÉNDICE E. NOCIONES DEL ANÁLISIS ORIENTADO A OBJETOS

Figura E.7: Diagrama de flujo de objetos


E.3. MÉTODOLOGÍA DEL ANÁLISIS ORIENTADO A OBJETOS 257

Buque
Rumbo
Eslora
Manga
Puntal
Calado
Velocidad
Superficies proyectadas sobre los planos yz y xz
de la obra muerta del buque
Valor del GM
Coeficiente bloque

Tabla E.1: Algunos atributos del objeto buque

Timón
Área eficaz de la superficie de la pala
Localización del timón
Velocidad del servomotor
Ángulo de metida de la pala y a que banda
Lı́mites fı́sicos de posición y velocidad angulares

Tabla E.2: Algunos atributos del objeto timón

• Análisis funcional.
El análisis o modelo funcional describe aquellos aspectos del sistema que tratan
de las transformaciones de los valores, funciones, correspondencias, restricciones
y dependencias funcionales. El modelo funcional describe lo que hace el sistema,
independientemente de la forma y de cuando se lleve a cabo. El diagrama funcional
se representa mediante diagramas de flujo de datos, los cuales muestran las depen-
dencias entre los valores y el cálculo de valores de salida a partir de los de entrada
y de funciones, sin considerar cuando se ejecutan las funcones.

Resumen

El análisis orientado a objetos (AOO) ayuda a organizar el conocimiento de un sistema,


definiendo elementos constitutivos, descubriendo sus caracterı́sticas esenciales y rela-
ciones entre subsistemas, organizando datos y ecuaciones, y creando estructuras jerárquicas.
258 APÉNDICE E. NOCIONES DEL ANÁLISIS ORIENTADO A OBJETOS

Olas
Dirección
Velocidad de propagación
Perı́odo
Altura
Tipo: regular, aleatoria, tendida, de viento
Densidad del agua de mar

Tabla E.3: Algunos atributos del objeto olas

Viento
Dirección
Velocidad
Densidad del aire
Tipo: medio y turbulento

Tabla E.4: Algunos atributos del objeto viento

Todo ésto puede aportar mayor facilidad para el modelado, una comunicación interdisci-
plinar más fluı́da, clara y flexible, con una mayor capacidad de mejora, facilitando una
integración del conocimiento de tipo cualitativo con el cuantitativo. Es también un forma
de análisis previa a la programación orientada a objetos empleando herramientas soft-
ware de modelado y simulación de sistemas dinámicos tales como el Omola y Dymola, o
lenguajes especı́ficos de programación orientados a objetos de propósito general como el
Visual C++, el Visual Basic o el Delphi.
Bibliografı́a

[Abk69] M. A. Abkowitz (1969), Stability and Motion Control of Ocean Vehicles,


M.I.T.

[AmeU75] J. Amerongen and A.J. Udink Ten Cate (1975), Model. Reference Adaptive
Autopilots for Ships, Automatica, Vol. 11, pp 441-449

[Ame81] J. Amerongen (1981), Adaptive Steering of Ships. A model-reference ap-


proach to improved manoeuvring and economical course keeping, Thesis.

[Ame84] J. Amerongen (1984), Adaptive Steering of Ships-A Model Reference Ap-


proach, Automatica, Vol. 20, No. 1.

[Ame90] J. Amerongen, P.G.M. Klugt and H.R. Nauta Lemke (1990), Rudder Roll
Stabilization for Ships, Automatica, Vol. 26, No. 4.

[AmeN82] J. Amerongen and H.R. Nauta Lemke (1982), Rudder Roll Stabilization,
Fourth International Symposium on Ship Operation Automation, Genova
(Italy).

[App86] Applied i (1986), Tutsim. User Manual

[Ara83] J. Aracil (1983), Introducción a la Dinámica de Sistemas, Alianza Editorial.

[AraT93] J. Aracil y M. Toro (1993), Métodos Cualitativos en Dinámica de Sistemas,


Universidad de Sevilla.

[As70] K.J. Astrom (1970) Introduction to Stochastic Control Theory, Academic


Press.

[AsEy71] K.J. Astrom and P. Eykoff (1971), System Identification–A Survey, Automa-
tica, Vol. 7.

[As83] K.J. Astrom (1983) Theory and Applications of Adaptive Control-A Survey,
Automatica, Vol.19, No. 5.

259
260 BIBLIOGRAFÍA

[AsW84] K.J. Astrom and B. Wittenmark (1984), Computed Controlled Systems,


Prentice-Hall.

[AsW89] K.J. Astrom and B. Wittenmark (1989), Adaptive Control, Addison-


Whesley.

[As80] K.J. Astrom (1980), Design of Fixed Gain and Adaptive Ship Steering Au-
topilots Based on the Nomoto Model, Department of Automatic Control,
Lund Institute of Technology, Lund (Sweden).

[AsKa76] K.J. Astrom and C.G. Kallstrom (1976), Identificacion of Ship Steering Dy-
namics, Automatica, Vol. 12.

[Babu93] R. Babuska (1993), Fuzzy Toolbox for Matlab. User manual, Humusoft.

[Bank96] J. Banks, J.S. Carson, B. L. Nelson (1996), Discrete Event System Simula-
tion, Prentice Hall.

[Bar91] E. Barbudo, R. Barbudo y I. Barbudo (1991), Tratado de maniobra, Colec-


ción Fragata, Buenos Aires, 12, Cádiz.

[BaQ81] L. Basáñez, J. Quevedo and J. Ayza (1981), Autotimonel Adaptativo por


Asignación de Polos, Regulación y Mando Automático, XV, No. 111, pp
41-46.

[BaQ82] L. Basáñez, J. Quevedo and J. Ayza (1982), Implementation and Experimen-


tal Results of an Adaptive Autopilot by Pole Assignment, Fourth International
Symposium on Ship Operation Automation, Genova (Italy).

[BeG72] W.B. Berlekom and T.A. Goddard (1972), Maneuvering of large tankers,
Trans. Society of Naval Architects and Marine Engineers, 80, New York.

[BeTD74] W.B. Berlekom, P. Tragardh and A. Dellhag (1974), Large tankers - wind
coefficients and speed loss due to wind and sea, Trans. Royal Institution of
Naval Architects 117, 41, London.

[Bhat78] R. Bhattacharryya (1978), Dynamics of marine vehicles, Wiley-interscience.

[Bke93] M. Blanke and A. Christensen (1993), Rudder-roll damping autopilot robust-


ness to sway-yaw-roll couplings, Proc. 10th SCSS, Ottawa, Canada.

[Bke96] M. Blanke (1996), Uncertainty Models for Rudder-Roll Damping Control,


IFAC, 13th Triennial World Congress, San Francisco, USA, Vol. 8c-01 1,
pp. 285-290.

[Bon79] A. Bonilla (1979), Teorı́a del Buque, Librerı́a San José, Carral, 19, Vigo.
BIBLIOGRAFÍA 261

[BroB92] J.F. Broenink, J. Bekkink and P.C. Breedveld, (1992). Multibond-graph ver-
sion of the CAMAS modelling and simulation environment. Bond Graph for
Engineers, IMACS’92.

[GaSm96] P. Gawthrop and L. Smith (1996), Metamodelling. Bond Graphs and Dy-
namic Systems, Prentice Hall.

[Bun79] M. Bunge (1979), A World of Systems, Reidel, Dotdrecht.

[Cell92] F.E. Cellier (1992), Hierarchical non-linear bond graphs: a unified method-
ology for modeling complex physical systems, Simulation, April, pp. 230-
248.

[Cell92a] F.E. Cellier (1992a), Bond Graphs - The Right Choice for Educating Stu-
dents in Modeling Continuous Time Systems, Proceedings Western Simula-
tion Multiconference on Simulation in Engineering Education, January 22-
24, Newport Beach, Calif. pp. 123-127.

[Cell92b] F.E. Cellier (1992b), Integrated continuous system modeling and simulation
environments. Chapter in D.A. Linkens (Ed.): CAD for Control Systems,
Marcel Dekker, Inc.

[Cell92c] F.E. Cellier, A. Nebot, A Mugica and A. de Albornoz (1992c), Combined


Qualitative/Quantitative Simulation Models of Continuous Time Process-
es Using Fuzzy Inductive Reasoning Techniques, Proceedings SICICA’92,
IFAC Symposium on Intelligent Components and Instruments for Control
Applications, Malaga, May 20-22.

[Cell92d] F.E. Cellier (1992d), Hierchical non-linear bond graphs: a unified methodol-
ogy for modeling complex physical systems, Simulation, pp 230-248, April.

[Cell95] F.E. Cellier (1995), Continuos System Modeling, Springer-Verlag, N.Y.

[CelE92] F.E. Cellier and H. Elmqvist (1992), The Need for Automated Formula Ma-
nipulation in Object Oriented Continuous System Modeling, Proceedings
CACSD’92, IEEE Computer Aided Control System Design Conference. Na-
pa, California, March 17-19.

[CelE93] F.E. Cellier and H. Elmqvist (1993), Automated Formula Manipulation Sup-
ports Object-Oriented Continuos-System Modeling, IEEE Control Systems,
April, pp. 28-38.

[CelEO93] F.E. Cellier, H. Elmqvist and M. Otter (1993), Modeling from Phisycal Prin-
ciples, Curso de verano de la UNED.
262 BIBLIOGRAFÍA

[Cel93b] F.E. Cellier (1993), Object-Oriented Modeling: Means of Dealing with Sys-
tem Complexity. Curso de verano de la UNED.
[CerOL85] A.G. Cerezo, A. Ollero y M. Losada (1985) Sistema de identificación en
lı́nea de procesos y su aplicación al estudio de la dinámica de corrosión,
Automática e Instrumentación, Noviembre, pp. 181-186.
[CYour91] P. Coad and E. Yourdon (1991), Object-Oriented Analysis, Computing Se-
ries, New Jersey.
[Cons92] A. Consegliere (1992) Modelado, Simulación y Control del Comportamiento
Dinámico del Buque, Proyecto Fin de Carrera, Dpto. de Ingenierı́a de Sis-
temas y Automática, Facultad de Ciencias Náuticas, Universidad de Cádiz.
[ConsL96] A. Consegliere, M. J. López y M. Haro (1996), Entorno de programación
visual para controladores borrosos y análisis de estabilidad con la función
descriptiva. II Jornadas de Informática, Almuñecar (Granada), pp 407-416.
[Cos91] J. B. Costa (1991), Tratado de maniobra y tecnologı́a naval, Apdo. 25, 07860
San Francisco Javier, Formentera (Baleares).
[Coug91] D.R. Coughanowr (1991), Process Systems Analisys and Control, McGraw
Hill.
[Cre87] A. Creus (1987), Simulación y Control de Procesos por Ordenador, Mar-
combo.
[Dav92] W.D.T. Davies (1992), System Identification for Self-Adaptive Control,
Wiley-Interscience.
[DeBe94] H. Demuth and M. Beale (1995), Neural Network Toolbox, The Math Works
Inc.
[DriHR] D. Driankov, H. Hellendoorn and M. Reinfrank (1993), An introduction to
fuzzy control, Springer Verlag.
[Elq93] H. Elmqvist (1993), Dymola Lenguage Rationale, Curso de verano de la
UNED .

[ElCO93] H. Elmqvist, F.E. Cellier and M. Otter (1993), Object-Oriented Modeling


of Hybrid Systems, Proc. ESS’93, European Simulation Symposium, Delft,
The Netherlands, pp. 25-28, October.
[ElOC94] H. Elmqvist, M. Otter and F.E. Cellier (1994), Methods for Tearing Systems
of Equations in Object-Oriented Modeling, Proc. ESM’94, SCS European
Simulation Multiconference, Barcelona, pp. 326-332.
BIBLIOGRAFÍA 263

[ElCO94] H. Elmqvist, F.E. Cellier and M. Otter (1994), Object-Oriented Modeling of


Power Electronic Circuits Using Dymola, CISS, First Joint Conference of
International Simulation Societies, ETH Zurich, Switzerland, pp. 22-25.

[Elq95] H. Elmqvist (1995), Dymola: Dynamic Modeling Language. User’s Guide,


Dynasim AB, Lund, Sweden.

[ElOC95] H. Elmqvist, M. Otter and F.E. Cellier (1995), Inline integration: a new
mixed symbolic/numeric approach for solving differential-algebraic equa-
tion systems, Proc. ESM’95, European Simulation Multiconference, Prague,
pp. xxiii-xxxiv.

[Eyk74] P. Eykhoff (1974), System Identification, London, John Wiley and Sons.

[Fer80] G. Fernández (1980), Modelos matemáticos y de simulación para sistemas


continuos, Publicaciones ETSIT, Madrid.

[Forb84] K.D. Forbus (1984), Qualitative Process Theory, Artificial Intelligence, Vol.
24 pp. 7-83.

[For81] T.R. Fortescue, L.S. Kershenbaum and B.E. Ydstie (1981), Implementation
of Self-tuning Regulators with Variable Forgetting Factors, Automatica, Vol.
17, No. 6, pp 831-835.

[FWha82] D.J. Freeman, R. Whalley and M.G. Waugh (1982), Ship Motion and Com-
puter Control Fourth International Symposium on Ship Operation Automa-
tion, Genova (Italy).

[GawS96] P. Gawthrop and L. Smith (1996), Metamodelling. Bond Graphs and Dy-
namic Systems, Prentice Hall.

[Godf93] K.R. Gpdfrey (1993), Perturbation Signals for System Identification, Engle-
wood Cliffs, Prentice Hall.

[GooP77] G.C. Goodwin and Rl.L. Payne (1977), Dynamic System Identificacion: Ex-
periment Design and Data Analysis, Academic Press.

[Gop84] M. Gopal (1984), Modern Control System Theory, Wiley Eastern Limited.

[Grau76] D. Graupe (1976), Identificacion of Systems, Robert E. Krieger Publishing


Company, Malabar, Florida.

[Hag83] Hagen, Grant R. (1983), A Catalog of Existing Mathematical Models for


Maneuvering, Twentieth American Towing Tank Conference.
264 BIBLIOGRAFÍA

[HarLS96] M. Haro, M. J. López y C. Sanz (1996), Modelado y análisis del sistema de


control de la viscosidad de los fueles de alimentación de los motores Diesel
marinos. Seminario Anual de Automática y Electrónica Industrial, Zargoza,
pp. 620-625.

[HGri95] N.A. Hickey, M.J. Grimble, M. Johnson, R. Katebi and D. Wood (1995), H-
infinity Fin Roll Stabilisation Control System Design, CAMS’95, Trondheim,
Norway, pp. 304-311.

[HSug95] K. Hirota and M. Sugeno (1995), em Industrial Applications of Fuzzy Tech-


nology in the World, World Scientific.

[HuH92] D.R. Hush y B. Horne (1992), An overview of neural networks. Part II: Dy-
namic networks, Informática y Automática, vol. 25-2, pp 17-31.

[IS96] The MatriXx (1996), Integrated Systems, Inc., http:www.isi.com

[Is81] R. Isermann (1981), Digital Control Systems, Springer Verlag.

[IsLM92] R. Isermann, K. Lachmann and D. Matko (1992), Adaptive Control Systems,


Prentice Hall.

[Ish72] R.M. Isherwood (1972), Wind Resistance of Merchant Ships, The Royal In-
stituion of Naval Architects.

[JoHo87] W.P. Jones and J. Hoskins (1987), Back-Propagation. A generalized delta


learning rule, BYTE, October, pp. 155-162.

[Kai86] T. Kailath (1986), Linear Systems, Prentice Hall.

[Ka79] C.G. Kallstrom (1979), Identification and Adaptive Control Applied to Ship
Steering, Thesis.

[KaAs79] C.G. Kallstrom, K.J. Astrom, N.E. Thorell, J. Eriksson and L. Sten (1979),
Adaptive Autopilots for Tankers, Automatica Vol. 15.

[KaAs81] C.G. Kallstrom, K.J. Astrom (1981), Experiences of System Identification


Applied to Ship Steering, Automatica, Vol. 17, No. 1.

[KaNo80] C.G. Kallstrom and N.H. Norrbin (1980) , Performance Criteria for Ship
Autopilots, Symposium on Ship Steering Automatic Control, Genova (Italy).

[KaOt82] C.G. Kallstrom and P. Ottosson (1982) , The Generation and Control of Roll
Motion of Ships in Close Turns, Fourth International Symposium on Ship
Operation Automation, Genova (Italy).
BIBLIOGRAFÍA 265

[KaTh92] C.G. Kallstrom and K. Theorén (1992), Turning Controller for Ships,
CAMS’92, IFAC, Genova (Italy).

[KarMR90] D.C. Karnopp, D.C. Margolis and R.C. Rosenberg (1990), System Dynam-
ics: A unified approach, 2nd ed., John Wiley and Sons.

[Kett92] D.L. Kettenis (1992), COSMOS: A simulation language for continuos, dis-
crete and combined models, Simulation, 58(1), pp. 32-41.

[Klee84] J. de Kleer and J.S. Brown, Qualitative Physics Based on Confluences. Arti-
ficial Intelligence, Vol. 24, pp. 7-83.

[Koll95] I. Kollar (1995), Frequency Domain System Identification Toolbox, The Math
Works Inc.

[Kor89] G.A. Korn (1989) Interactive Dynamic-System Simulation, (DESIRE),


McGraw-Hill.

[KAtl95] Krupp Atlas Elektronik (1995), Manuales de usuario y mantenimiento del


Ship Handling Simulator del C.A.S.E.M. de la Universidad de Cádiz.

[Kui86] B. Kuipers (1986), Qualitative Simulation, Artificial Intelligence, Vol. 29,


pp. 289-338.

[KuiF87] B. Kuipers and A. Farquhar (1987), QSIM: A Tool for Qualitative Simula-
tion. Internal Report: Artificial Intelligence Laboratory, The University of
Texas, Austin.

[KwSi91] H. Kwakernaak and R. Sivan (1991), Signal and Systems, Prentice Hall.

[LzeCN91] J. Landaluze, J. Calzada, C.F. Nicolas, J.L. Pacho and R. Reyero (1991),
Modelización Bond-Graph de un robot con Articulación y Brazo flexibles
como Base para el desarrollo de Controladores Robustos, II Congreso AER,
Zaragoza 11-15 Noviembre.

[LzeNB92] J. Landaluze, C.F. Nicolas, I. Bolinaga, M. Calzada and R. Reyero (1992),


Bond Graph Modelling and Application of H∞ Control Design for an Exper-
imental Flexible Robotic Arm, 23rd International Symposium on Industrial
Robots (ISIR’92), Barcelona.

[Lan90] I.D. Landau (1990), System Identificacion and Control Design, Prentice Hall.

[LauLi92] A.J. Laub and J.N. Little (1986), Control System ToolBox, The MathWorks,
Inc.
266 BIBLIOGRAFÍA

[Lew89] E.V. Lewis (1989), Principles of Naval Architecture, Vol. I, II, and III,
SNAME.

[LiPe95] G. Lindfield and J. Penny (1995), Numerical Methods Using Matlab, Ellis
Horwood.

[LiSh88] J. Little and L. Share (1988), Signal Processing Toolbox, The MathWorks,
Inc.

[Lj85] L. Ljung (1985), On theEstimation of Transfer Functions, Automatica, Vol.


21, No. 6.

[Lj89] L. Ljung (1986) System Identification ToolBox, The MathWorks, Inc.

[Lj87] L. Ljung (1987) System Identification: Theory for the User, Prentice Hall.

[LopTe92] M.J. López y J. Terrón, (1992) Curso de Modelado y simulación por orde-
nador., ICE Universidad de Cadiz.

[Lop94] M.J. López (1994), Análisis y Diseño de Controladores Robustos. Aplicación


al Control de un Buque, Tesis Doctoral, Universidad de Sevilla.

[LopTH96] M. J. López, J. Terrón and M. Haro (1996), Robust Roll Motion Regulator
Based on IMC Structure. 13th World Congress of IFAC, International Fed-
eration of Automatic Control. San Francisco, CA, USA, Vol. C, pp. 1-6.

[LopHa96] M.J. López y M. Haro (1996), Sı́ntesis μ/H∞ para Autopiloto Robusto. XVII
Jornadas de Automática, Santander, pp. I-75 a I-96.

[LopMR96] M.J. López, C. Mascareñas y J.C. Rasero (1996), Identificación, Análisis y


Control de un Buque con ayuda de un Simulador de Navegación, Jornada de
Simulación, cursos de verano de la UNED, Ávila.

[Lor95] E.N. Lorenz (1995), La esencia del caos. Un modelo cientı́fico para la dis-
paridad de la naturaleza. Editorial Debate.

[Llo89] A.R.J.M. Lloyd (1989), Seakeeping: Ship Behaviour in Rough Weather, Ellis
Horwood Limited.

[Mart186] S. Martı́nez y A. Requena (1986), Dinámica de Sistemas. 1. Simulación por


Ordenador. 2. Modelos, Alianza Editorial.

[MATL93] The Math Works Inc. (1993), MATLAB High-Performance Numeric Compu-
tation and Visualization Software, for Microsoft Windows.
BIBLIOGRAFÍA 267

[MATL96] The Math Works Inc. (1996), MATLAB edición estudiante, versión 4, Guı́a
de Usuario.
[MattS92] S.E. Mattsson and G. Soderlind (1992), A new technique for solving hig-
index differential-algebraic equations using dummy derivatives, IEEE Sym-
posium on Computer-Aided Control System Design, CACSD’92, Napa, Cal-
ifornia.
[MatAA92] S.E. Mattsson, M. Andersson and K.J. Astrom (1992), Object-Oriented
Modeling and Simulation. Chapter in D.A. Linkens (Ed.): CAD for Control
Systems, Marcel Dekker, Inc.
[MatA92] S.E. Mattsson and M. Andersson (1992), The Ideas Behing OMOLA, Pro-
ceedings CACSD’92, IEEE Computer Aided Control System Design Con-
ference, CACSD’92, Napa, California.
[Men87] J.M. Mendel (1987) Lessons in Digital Estimation Theory, Prentice Hall.
[MGri92] A.C. Messer and M.J. Grimble (1992), Robust Track Keeping Control,
CAMS’92 ,IFAC, Genova (Italy).
[MiGa91] E.L. Mitchel and J.S. Gauthier (1991), ACSL: Advanced Continuous Simu-
lation Language, User Guide and Reference Manual, Mitchel and Gauthier
Assoc., 73 Junction Square, Concord, Mass. 01742.
[Mont92] J.M. Montero (1992), Modelización y simulacioón del comportamiento del
buque en aguas tranquilas con aplicación a estudios de maniobras en puerto,
Tesis Doctoral, Centro de Estudios y Experimentación de Obras Públicas
(CEDEX), Madrid.
[Moo81] B.C. Moore (1981), Principal Component Analysis in Linear Systems, IEEE
Trans. Automat. Contr., Vol. AC-26.
[Mor93] J. Moreno (1993), Modelado Cualitativo. Aplicaciones Navales, Tesis Doc-
toral, Universidad de Sevilla.
[NarA89] K.S. Narendra and A.M. Annaswamy (1989), Stable Adaptive Systems, Pren-
tice Hall.
[NarA90] K.S. Narendra and K. Parthasarathy (1990), Identification and Control of
Dynamical Systems Using Neural Networks, IEEE Transanctions on Neural
Networks, vol. 1, no. 1, March, pp 4-27.
[NCell93] A. Nebot, F.E. Cellier and F. Mugica (1993), Modeling the Thermal Be-
haviour of Biosphere 2 in a Non-Controlled Environment Using Bond
Graphs, Curso de verano de la UNED.
268 BIBLIOGRAFÍA

[Nil92] B. Nilsson (1992), Object-Oriented Chemical process Modelling in Omola,


IEEE Symposium on Computer-Aided Control System Design, CACSD’92,
March 19-19, Napa, California.

[Nort86] J.P. Norton (1986), An Introduction to Identification, London, Academic


Press.

[Oht79] K. Ohtsu, M. Horigome and G. Kitagawa (1979), A New Ship’s Autopilot


Design Throug a Stochastic Model, Automatica, Vol. 15.

[OOht92] H. Oda, K. Othsu, M. Sasaki, Y. Seki, T. Hotta (1992), Rudder Roll Stabiliza-
tion Control System through Multivariate Auto Regressive Model, CAMS’92
,IFAC, Genova (Italy).

[Oht92] K. Ohtsu and G. Kitagawa (1992), Applications of Auto Regresive Model


to Control Ship’s Motions and Marine Engine, IFAC, CAMS’92, Genova
(Italy).

[Oll92] A. Ollero (1991), Control por Computador, Marcombo.

[Ott92] M. Otter (1992), DSblock: A Neutral Description of Dynamic Systems,


Version 3.2, Technical Report, Institute for Robotics and System Dynam-
ics, Wessling, Germany. Newest version available via anonymous ftp from
”rlg15.df.op.dlr.de”(129.247.181.65) in directory ”pub/dsblock”.

[OtEC93] M. Otter, H. Elmqvist and F.E. Cellier (1993), Modeling fo multibody sys-
tems with the object oriented modeling language Dymola, Proc. NATO/ASI,
Computer-Aided Analisys of Rigid and Flexible Mechanical Systems, Troia,
Portugal, Vol. 2, pp. 91-110.

[OtBy91] P. Ottosson and L. Bystrom (1991), Simulation of the Dynamics of a Ship


Maneuvering in Waves, SNAME Transactions, Vol. 99, pp 281-298.

[Pant88] C.C. Pantelides (1988), The consistent initialization of differential-algebraic


systems, SIAM J. Scientific and Statistical Computing, 9, pp. 213-231.

[Pap77] A. Papoulis (1977), Signal Analysis, McGraw Hill.

[PiMo63] W.J. Pierson and L. Moskowitz (1963), A proposed Spectral Form for Fully
Developed Wind Seas Based on the Similarity Theory of S.A. Kitagorodskii,
Department of Meteorology and Oceanography Geophysical Sciences Lab-
oratory, New York University.

[PrBi74] W.G. Price and R.E.D. Bishop (1974), Probabilistic Theory of Ships Dynam-
ics, Cahpman and Hall.
BIBLIOGRAFÍA 269

[Pet82] L.R. Petzold (1982), A Description of DASSL: A Differential/Algebraic Sys-


tem Solver, Proc. 10th IMACS World Congress, Montreal, Canada.

[PFTV90] W.H. Press, B.P. Flannery, S.A. Teukolsky and W.T. Vetterling (1990), Nu-
merical Recipes: The Art of Scientific Computing.

[Rob92] G.N. Roberts (1992) Ship Roll Damping Using the Rudder and Stabilising
Fins, CAMS’92, IFAC, Genova (Italy).

[Rob93] G.N. Roberts (1993) A method to Determine the Applicability of Rudder Roll
Stabilisation For Ships, 12th World Congress IFAC, Sydney (Australia).

[RobSA96] G.N. Roberts, M.T. Sharif, A. Agarwal and R. Sutton (1996), H∞ Optimisa-
tion Technique to the Design of a Combined Steering/Stabiliser System for
Warships, IFAC, 13th Triennial World Congress, San Franciso, USA, Vol.
8c-01 3, pp. 291-296.

[Ros92] R.C. Rosenberg, (1992), A concise history of ENPORT. Bond Graph for En-
gineers, IMACS’92.

[SBod89] S. Sastry and M. Bodson (1989) Adaptive Control. Stability, Convergence,


and Robustness, Prentice Hall.

[SchP91] J. Schoukens and R. Pintelon (1991), Identification of Linear Systems: A


Practical Guideline for Accurate Modeling, London, Pergamon Press.

[SeEM89] D.E. Seborg, T.F. Edgar, D.A. Mellichamp (1989), Process Dynamics and
Control, John Wiley and Sons.

[Slin93] Simulink (1993), The Math Works, Inc.

[SmCo94] C. Smith y A. Corripio (1994), Control Automático de Procesos, Marcombo.

[SoSt89] T. Soderstrom and P. Stoica (1989), System Identification, Prentice Hall.

[Spi71] M.R. Spiegel (1971), Transformadas de Laplace, McGraw Hill.

[SSPA93] SSPA (1993), Simnon, SSPA Systems, Lund, Sweden.

[SSPA93b] SSPA (1993), Simnon for Windows, SSPA Systems, Lund, Sweden.

[Te95] J. Terrón (1995), Metodologı́as de aprendizaje basadas en el conocimiento


experto y la hipermedia. Aplicaciones Navales, Tesis Doctoral, Universidad
de Cádiz.
270 BIBLIOGRAFÍA

[TeLop95] J. Terrón y M.J. López (1995), Metodologı́as de formación basadas en el


conocimiento experto. Aplicaciones. Jornadas de Automática. San Sebastián,
Septiembre.

[Thma90] J.U. Thoma (1990), Simulation by Bondgraphs, Springer Verlag.

[Tho88] P.M. Thompson (1988), Program CC, Tutorial and User’s Guide, Systems
Technology, Inc.

[UNED93] UNED (1993), Modelado y Simulación de Sistemas Continuos: Aplicaciones


en el Control de Procesos. Curso de verano de la UNED, Ávila.

[UNED96] UNED (1996), DYMOLA. Un lenguaje de modelado de sistemas hı́bridos.


Curso de verano de la UNED, Ávila.

[VisS95] Visual Solutions, Inc. (1995), VisSim, User’s guide, Westford, MA 01886.

[Wang94] L.X. Wang (1994), Adaptive Fuzzy Systems and Control, Prentice Hall.

[WhaZ92] R. Whalley and Z. Zeng (1992), Ship Steering and Roll Regulation,
CAMS’92 ,IFAC, Genova (Italy).

[WCell93] M. Wiener and F.E. Cellier (1993), Modeling and Simulation of a Solar En-
ergy System by Use of Bond Graphs, Proceedings of the 1993 SCS Western
Simulation Multiconference, pp. 301-306, Hyatt Regency La Jolla, La Jolla,
California.

[dWil96] P.H. De Wilde (1996), Neural Network Models, Springer.

[WiMM92] M.J. Willis, G.A. Montague, C. di Massimo, M.T. Tham and A.J. Morris
(1992), Artificial Neural Networks in Process Estimation and Control, Auto-
matica, Vol. 28, no. 6, pp. 1181-1187.

[Zu70] J.K. Zuidweg (1970), Automatic Guidance of Ships as a Control Problem,


Thesis.

View publication stats

También podría gustarte