Contenido principal

La traducción de esta página aún no se ha actualizado a la versión más reciente. Haga clic aquí para ver la última versión en inglés.

bodeplot

Representar la respuesta en frecuencia de Bode de un sistema dinámico

    Descripción

    La función bodeplot representa la magnitud y la fase de Bode del modelo de sistema dinámico y devuelve un objeto de gráfico BodePlot. Para personalizar la gráfica, modifique las propiedades del objeto de gráfico utilizando la notación de puntos. Para obtener más información, consulte Customize Linear Analysis Plots at Command Line.

    Para obtener datos de respuesta en frecuencia, utilice la función bode.

    Creación

    Descripción

    bp = bodeplot(sys) representa la magnitud y la fase de Bode del modelo de sistema dinámico sys y devuelve el objeto de gráfico correspondiente.

    Si sys es un modelo con múltiples entradas y múltiples salidas (MIMO), la función bodeplot crea una cuadrícula de gráficas de Bode, y cada gráfica muestra la respuesta en frecuencia de un par entrada/salida.

    Si sys es un modelo con coeficientes complejos, entonces:

    • En la escala de frecuencia logarítmica, el diagrama muestra dos ramas, una para frecuencias positivas y otra para frecuencias negativas. El diagrama también muestra flechas que indican la dirección de los valores de frecuencia que aumentan para cada rama.

    • La escala de frecuencia lineal, el diagrama muestra una única rama con un rango de frecuencia simétrico centrado en un valor de frecuencia de cero.

    ejemplo

    bp = bodeplot(sys1,sys2,...,sysN) representa la respuesta en frecuencia de varios sistemas dinámicos sys1,sys2,…,sysN en el mismo diagrama.

    ejemplo

    bp = bodeplot(sys1,LineSpec1,...,sysN,LineSpecN) establece el estilo de línea, el tipo de marcador y el color para la respuesta de Bode de cada sistema especificado.

    ejemplo

    bp = bodeplot(___,w) representa respuestas para las frecuencias especificadas en w. Puede especificar un rango de frecuencia o un vector de frecuencias. Puede utilizar w con cualquiera de las sintaxis anteriores.

    ejemplo

    bp = bodeplot(___,plotoptions) representa la respuesta en frecuencia de Bode con las opciones de representación gráfica especificadas en plotoptions. La configuración que especifica en plotoptions anula las preferencias de representación gráfica de la sesión de MATLAB® en curso. Esta sintaxis es útil cuando se desea escribir un script para generar varias gráficas con el mismo aspecto, independientemente de las preferencias locales.

    ejemplo

    bp = bodeplot(parent,___) representa la respuesta de Bode en el contenedor de gráficas principal especificado, como un objeto Figure o TiledChartLayout, y establece la propiedad Parent. Utilice esta sintaxis cuando desee crear una gráfica en una figura abierta especificada o cuando cree aplicaciones en App Designer.

    Argumentos de entrada

    expandir todo

    Sistema dinámico, especificado como un modelo de sistema dinámico SISO o MIMO, o bien un arreglo de modelos de sistemas dinámicos. Puede utilizar los siguientes tipos de sistemas dinámicos:

    • Modelos LTI numéricos de tiempo continuo o de tiempo discreto, como modelos tf, zpk o ss.

    • Modelos dispersos de espacio de estados, como modelos sparss o mechss. La cuadrícula de frecuencia w debe estar especificada para modelos dispersos.

    • Modelos LTI generalizados o con incertidumbre, como modelos genss o uss (Robust Control Toolbox). El uso de modelos con incertidumbre requiere Robust Control Toolbox™.

      • Para los bloques de diseño de control ajustables, la función evalúa el modelo con su valor actual para representar la respuesta.

      • En el caso de los bloques de diseño de control con incertidumbre, la función representa el valor nominal y muestras aleatorias del modelo.

    • Modelos de datos de respuesta en frecuencia, como modelos frd. Para estos modelos, la función representa la respuesta en las frecuencias definidas en el modelo.

    • Modelos LTI identificados, como modelos idtf (System Identification Toolbox), idss (System Identification Toolbox) o idproc (System Identification Toolbox). El uso de modelos identificados requiere System Identification Toolbox™.

    Si sys es un arreglo de modelos, la gráfica muestra las respuestas de todos los modelos del arreglo en los mismos ejes.

    Estilo de línea, marcador y color, especificados como cadena o vector de caracteres con símbolos. Los símbolos pueden aparecer en cualquier orden. No es necesario que especifique las tres características. Por ejemplo, si especifica el marcador y omite el estilo de línea, la gráfica mostrará únicamente el marcador y ninguna línea.

    Ejemplo: '--or' es una línea discontinua roja con marcadores circulares.

    Estilo de líneaDescripción
    "-"Línea continua
    "--"Línea discontinua
    ":"Línea de puntos
    "-."Línea de puntos y rayas
    MarcadorDescripción
    "o"Círculo
    "+"Signo más
    "*"Asterisco
    "."Punto
    "x"Cruz
    "_"Línea horizontal
    "|"Línea vertical
    "s"Cuadrado
    "d"Rombo
    "^"Triángulo hacia arriba
    "v"Triángulo hacia abajo
    ">"Triángulo hacia la derecha
    "<"Triángulo hacia la izquierda
    "p"Pentagrama
    "h"Hexagrama
    ColorDescripción
    "r"rojo
    "g"verde
    "b"azul
    "c"cian
    "m"magenta
    "y"amarillo
    "k"negro
    "w"blanco

    Frecuencias en las que se calcula la respuesta, especificadas como uno de los siguientes valores:

    • Arreglo de celdas en formato {wmin,wmax}: calcula la respuesta en frecuencias entre wmin y wmax. Si wmax es superior a la frecuencia Nyquist de sys, la respuesta se calcula solo hasta la frecuencia Nyquist.

    • Vector de frecuencias: calcula la respuesta en cada frecuencia especificada. Por ejemplo, utilice logspace para generar un vector fila con valores de frecuencia espaciados logarítmicamente. El vector w puede contener frecuencias positivas y negativas.

    • []: selecciona automáticamente las frecuencias en función de la dinámica del sistema.

    En el caso de modelos con coeficientes complejos, si especifica un rango de frecuencia de [wmin,wmax] para su diagrama, entonces en:

    • La escala de frecuencia logarítmica, los límites de frecuencia del diagrama están establecidos en [wmin,wmax] y el diagrama muestra dos ramas, una para frecuencias positivas [wmin,wmax] y una para frecuencias negativas [–wmax,–wmin].

    • La escala de frecuencia lineal, los límites de frecuencia del diagrama están establecidos en [–wmax,wmax] y el diagrama muestra una única rama con un rango de frecuencia simétrico centrado en un valor de frecuencia de cero.

    Especifique frecuencias en unidades de rad/TimeUnit, donde TimeUnit es la propiedad TimeUnit del modelo.

    Opciones de la gráfica de Bode, especificadas como un objeto bodeoptions. Puede utilizar estas opciones para personalizar el aspecto de la gráfica de Bode. La configuración que especifica en plotoptions anula la configuración de preferencias de la sesión de MATLAB en curso.

    Contenedor de gráficas principal, especificado como uno de estos objetos:

    • Figure

    • TiledChartLayout

    • UIFigure

    • UIGridLayout

    • UIPanel

    • UITab

    También puede especificar parent como un objeto Axes o UIAxes, que establece la gráfica principal como gráfica principal del objeto de ejes especificado.

    Propiedades

    expandir todo

    Nota

    Las propiedades que aparecen aquí son solo un subconjunto. Para obtener una lista completa, consulte BodePlot Properties.

    Respuestas de modelos, especificadas como un objeto PZResponse o un arreglo de dichos objetos. Utilice esta propiedad para modificar el modelo de sistema dinámico o el aspecto de cada respuesta en la gráfica. Cada objeto BodeResponse tiene estas propiedades.

    Fuente de datos de la respuesta, especificada como una estructura con estos campos.

    Sistema dinámico, especificado como un modelo de sistema dinámico SISO o MIMO, o bien un arreglo de modelos de sistemas dinámicos.

    Cuando se crea inicialmente una gráfica, FeedbackGainSpec coincide con el valor especificado para k.

    Frecuencias en las que se calcula la respuesta, especificadas como uno de los siguientes valores:

    • Arreglo de celdas en formato {wmin,wmax}: calcula la respuesta en frecuencias entre wmin y wmax.

    • Vector de frecuencias: calcula la respuesta en cada frecuencia especificada. Por ejemplo, utilice logspace para generar un vector fila con valores de frecuencia espaciados logarítmicamente. El vector w puede contener frecuencias positivas y negativas.

    • []: selecciona automáticamente las frecuencias en función de la dinámica del sistema.

    Especifique frecuencias en unidades de rad/TimeUnit, donde TimeUnit es la propiedad TimeUnit del modelo.

    Cuando se crea inicialmente una gráfica:

    • FrequencySpec coincide con el valor especificado para el argumento w.

    • Si no se especifica w, la propiedad FrequencySpec queda vacía y las frecuencias se eligen en función de la dinámica del sistema.

    Nombre de la respuesta, especificado como una cadena o un vector de caracteres y almacenado como una cadena.

    Visibilidad de la respuesta, especificada como uno de estos valores lógicos on/off:

    • "on", 1 o true: muestra la respuesta en la gráfica.

    • "off", 0 o false: no muestra la respuesta en la gráfica.

    El valor se almacena como un valor lógico on/off de tipo matlab.lang.OnOffSwitchState.

    Opción de incluir la respuesta en la leyenda, especificada como uno de estos valores lógicos on/off:

    • "on", 1 o true: incluye la respuesta en la leyenda.

    • "off", 0 o false: no incluye la respuesta en la leyenda.

    El valor se almacena como un valor lógico on/off de tipo matlab.lang.OnOffSwitchState.

    Estilo de marcador, especificado como uno de estos valores.

    MarcadorDescripción
    "none"Sin marcador
    "o"Círculo
    "+"Signo más
    "*"Asterisco
    "."Punto
    "x"Cruz
    "_"Línea horizontal
    "|"Línea vertical
    "s"Cuadrado
    "d"Rombo
    "^"Triángulo hacia arriba
    "v"Triángulo hacia abajo
    ">"Triángulo hacia la derecha
    "<"Triángulo hacia la izquierda
    "p"Pentagrama
    "h"Hexagrama

    Color de la gráfica, especificado como un triplete RGB o un código de color hexadecimal y almacenado como un triplete RGB.

    Como alternativa, puede especificar algunos colores comunes por su nombre. Esta tabla enumera colores y sus correspondientes tripletes RGB y códigos de color hexadecimales.

    Nombre del colorTriplete RGBCódigo de color hexadecimal

    "red" o "r"

    [1 0 0]#FF0000

    "green" o "g"

    [0 1 0]#00FF00

    "blue" o "b"

    [0 0 1]#0000FF

    "cyan" o "c"

    [0 1 1]#00FFFF

    "magenta" o "m"

    [1 0 1]#FF00FF

    "yellow" o "y"

    [1 1 0]#FFFF00

    "black" o "k"

    [0 0 0]#000000

    "white" o "w"

    [1 1 1]#FFFFFF

    Estilo de línea, especificado como uno de estos valores.

    Estilo de líneaDescripción
    "-"Línea continua
    "--"Línea discontinua
    ":"Línea de puntos
    "-."Línea de puntos y rayas

    Tamaño del marcador, especificado como un escalar positivo.

    Ancho de línea, especificado como un escalar positivo.

    Características de la respuesta que se mostrarán en la gráfica, especificadas como un objeto CharacteristicsManager con estas propiedades.

    Visibilidad de la respuesta pico en la gráfica de magnitud, especificada como un objeto CharacteristicOption con esta propiedad.

    Visibilidad de la respuesta pico, especificada como uno de estos valores lógicos on/off:

    • "on", 1 o true: muestra la respuesta pico.

    • "off", 0 o false: no muestra la respuesta pico.

    El valor se almacena como un valor lógico on/off de tipo matlab.lang.OnOffSwitchState.

    Visibilidad de todos los márgenes de estabilidad, especificada como un objeto CharacteristicOption con esta propiedad.

    Visibilidad de los márgenes, especificada como uno de estos valores lógicos on/off:

    • "on", 1 o true: muestra los márgenes.

    • "off", 0 o false: no muestra los márgenes.

    El valor se almacena como un valor lógico on/off de tipo matlab.lang.OnOffSwitchState.

    Visibilidad de los márgenes mínimos de estabilidad, especificada como un objeto CharacteristicOption con esta propiedad.

    Visibilidad de los márgenes, especificada como uno de estos valores lógicos on/off:

    • "on", 1 o true: muestra los márgenes.

    • "off", 0 o false: no muestra los márgenes.

    El valor se almacena como un valor lógico on/off de tipo matlab.lang.OnOffSwitchState.

    Región de confianza para los modelos identificados, especificada como un objeto CharacteristicOption con estas propiedades.

    Visibilidad de la región de confianza, especificada como uno de estos valores lógicos on/off:

    • "on", 1 o true: muestra la región de confianza.

    • "off", 0 o false: no muestra la región de confianza.

    El valor se almacena como un valor lógico on/off de tipo matlab.lang.OnOffSwitchState.

    Número de desviaciones estándar que mostrar en la región de confianza, especificado como un escalar positivo.

    Dependencias

    ConfidenceRegion solo es admisible con los modelos identificados, que requieren el software System Identification Toolbox.

    Unidades de frecuencia, especificadas como uno de estos valores:

    • "Hz"

    • "rad/s"

    • "rpm"

    • "kHz"

    • "MHz"

    • "GHz"

    • "rad/nanosecond"

    • "rad/microsecond"

    • "rad/millisecond"

    • "rad/minute"

    • "rad/hour"

    • "rad/day"

    • "rad/week"

    • "rad/month"

    • "rad/year"

    • "cycles/nanosecond"

    • "cycles/microsecond"

    • "cycles/millisecond"

    • "cycles/hour"

    • "cycles/day"

    • "cycles/week"

    • "cycles/month"

    • "cycles/year"

    Dependencias

    De forma predeterminada, la respuesta utiliza las unidades de frecuencia del sistema lineal de la gráfica. Puede anular las unidades predeterminadas especificando las preferencias de la toolbox. Para obtener más información, consulte Specify Toolbox Preferences for Linear Analysis Plots.

    Escala de frecuencia, especificada como "log" o "linear".

    Dependencias

    La escala de frecuencia predeterminada depende de las preferencias de la toolbox. Para obtener más información, consulte Specify Toolbox Preferences for Linear Analysis Plots.

    Unidades de magnitud, especificadas como uno de estos valores:

    • "dB": decibelios

    • "abs": valor absoluto

    Dependencias

    • Si MagnitudeScale es "log" cuando establece MagnitudeUnit en "dB", el software cambia automáticamente MagnitudeScale a "linear".

    • Las unidades de magnitud predeterminadas dependen de las preferencias de la toolbox. Para obtener más información, consulte Specify Toolbox Preferences for Linear Analysis Plots.

    Escala de magnitud, especificada como "log" o "linear".

    Dependencias

    Unidades de fase, especificadas como uno de estos valores:

    • "deg": grados

    • "rad": radianes

    Dependencias

    Las unidades de fase predeterminadas dependen de las preferencias de la toolbox. Para obtener más información, consulte Specify Toolbox Preferences for Linear Analysis Plots.

    Opción para mostrar la gráfica de magnitud, especificada como uno de estos valores lógicos on/off:

    • "on", 1 o true: muestra la gráfica de magnitud.

    • "off", 0 o false: oculta la gráfica de magnitud.

    El valor se almacena como un valor lógico on/off de tipo matlab.lang.OnOffSwitchState.

    Opción para mostrar la gráfica de fases, especificada como uno de estos valores lógicos on/off:

    • "on", 1 o true: muestra la gráfica de fases.

    • "off", 0 o false: oculta la gráfica de fases.

    El valor se almacena como un valor lógico on/off de tipo matlab.lang.OnOffSwitchState.

    Opción para activar la envoltura de fases, especificada como uno de estos valores lógicos on/off:

    • "on", 1 o true: activa el envolvente de fases. La fase mostrada en la respuesta se envuelve para permanecer en el rango definido por PhaseWrappingBranch.

    • "off", 0 o false: desactiva el envolvente de fases.

    El valor se almacena como un valor lógico on/off de tipo matlab.lang.OnOffSwitchState.

    Dependencias

    • La configuración del envolvente de fases predeterminada depende de las preferencias de la toolbox. Para obtener más información, consulte Specify Toolbox Preferences for Linear Analysis Plots.

    • Cuando se activan tanto el envolvente de fases como la correspondencia de fases, el software realiza la coincidencia de fases seguida de el envolvente de fases.

    Límite inferior del rango de envolvente de fases, especificado como un valor escalar en grados. El rango de envolvente de fases es [B,B+360), donde B es igual a PhaseWrappingBranch.

    Dependencias

    Opción para activar la coincidencia de fases, especificada como uno de estos valores lógicos on/off:

    • "on", 1 o true: active la coincidencia de fases para que la respuesta en fase coincida con el valor especificado en PhaseMatchingValue a la frecuencia especificada en PhaseMatchingFrequency. La respuesta en fase restante se cambia para mantener el mismo perfil de fase.

    • "off", 0 o false: desactiva la coincidencia de fases.

    El valor se almacena como un valor lógico on/off de tipo matlab.lang.OnOffSwitchState.

    Dependencias

    Cuando se activan tanto el envolvente de fases como la correspondencia de fases, el software realiza la coincidencia de fases seguida de el envolvente de fases.

    Frecuencia de coincidencia de fases, especificada como un escalar.

    Dependencias

    Este valor se ignora cuando PhaseMatchingEnabled es "off".

    Valor de respuesta de coincidencia de fases, especificado como un escalar.

    Dependencias

    Este valor se ignora cuando PhaseMatchingEnabled es "off".

    Opción para activar la ganancia mínima para generar una representación gráfica, especificada como uno de estos valores lógicos on/off:

    • "on", 1 o true: establezca la ganancia mínima para generar una representación gráfica en el valor de la propiedad MinimumGainValue.

    • "off", 0 o false: establezca la ganancia mínima para generar una representación gráfica automáticamente según la dinámica del sistema.

    El valor se almacena como un valor lógico on/off de tipo matlab.lang.OnOffSwitchState.

    Dependencias

    La configuración de ganancia mínima predeterminada depende de las preferencias de la toolbox. Para obtener más información, consulte Specify Toolbox Preferences for Linear Analysis Plots.

    Valor mínimo de ganancia para generar una representación gráfica, especificado como un escalar.

    Dependencias

    • Para aplicar el valor mínimo de ganancia, establezca la propiedad MinimumGainEnabled en "on".

    • La configuración de ganancia mínima predeterminada depende de las preferencias de la toolbox. Para obtener más información, consulte Specify Toolbox Preferences for Linear Analysis Plots.

    Dependencias

    Visibilidad de la gráfica, especificada como uno de estos valores lógicos on/off:

    • "on", 1 o true: muestra la gráfica.

    • "off", 0 o false: oculta la gráfica sin eliminarla. Puede seguir accediendo a las propiedades de la gráfica aunque no esté visible.

    El valor se almacena como un valor lógico on/off de tipo matlab.lang.OnOffSwitchState.

    Agrupación de pares entrada/salida, especificada como uno de estos valores:

    • "none": no se agrupan entradas ni salidas.

    • "inputs": se agrupan solo entradas.

    • "outputs": se agrupan solo salidas.

    • "all": se agrupan todos los pares entrada/salida.

    Opción para mostrar las entradas, especificada como uno de estos valores lógicos on/off o un arreglo de estos valores:

    • "on", 1 o true: muestra la entrada correspondiente.

    • "off", 0 o false: oculta la entrada correspondiente.

    InputVisible es un arreglo cuando el sistema representado tiene múltiples entradas. De forma predeterminada, todas las entradas están visibles en la gráfica.

    El valor se almacena como un valor lógico on/off de tipo matlab.lang.OnOffSwitchState o como un arreglo de dichos valores.

    Opción para mostrar las salidas, especificada como uno de estos valores lógicos on/off o un arreglo de estos valores:

    • "on", 1 o true: muestra la salida correspondiente.

    • "off", 0 o false: oculta la salida correspondiente.

    OutputVisible es un arreglo cuando el sistema representado tiene múltiples salidas. De forma predeterminada, todas las entradas están visibles en la gráfica.

    El valor se almacena como un valor lógico on/off de tipo matlab.lang.OnOffSwitchState o como un arreglo de dichos valores.

    Funciones del objeto

    addResponseAdd dynamic system response to existing response plot
    showConfidence (System Identification Toolbox)Display confidence regions on response plots for identified models

    Ejemplos

    contraer todo

    Para este ejemplo, utilice el identificador de gráfica para cambiar las unidades de frecuencia a Hz y desconecte la gráfica de fase.

    Genere un modelo de espacio de estados aleatorio con 5 estados y cree la gráfica de Bode con el objeto de gráfico bp.

    rng("default")
    sys = rss(5);
    bp = bodeplot(sys);

    MATLAB figure

    Cambie las unidades a Hz y elimine la gráfica de fase modificando el objeto de gráfico.

    bp.FrequencyUnit = "Hz";
    bp.PhaseVisible = "off";

    MATLAB figure

    La gráfica de Bode se actualiza automáticamente cuando se modifica el objeto de gráfico.

    Para este ejemplo, cree un diagrama de Bode que utilice texto rojo de 15 puntos para el título y establezca un título personalizado. Cuando se especifican propiedades de gráfica explícitamente con bodeoptions, las propiedades especificadas anulan las preferencias de la sesión de MATLAB. Así, la gráfica tiene el mismo aspecto, independientemente de las preferencias de la sesión de MATLAB en la que se ha generado.

    En primer lugar, cree un conjunto de opciones predeterminadas con bodeoptions.

    opts = bodeoptions;

    A continuación, cambie las propiedades necesarias del conjunto de opciones opts. Dado que opt.Title es una estructura, especifique las propiedades del título de la gráfica, especificando los campos y valores de esta estructura.

    opts.Title.FontSize = 15;
    opts.Title.Color = [1 0 0];
    opts.Title.String = 'System Frequency Response';
    opts.FreqUnits = 'Hz';

    Luego, cree un diagrama de Bode con el conjunto de opciones opts.

    bodeplot(tf(1,[1,1]),opts);

    MATLAB figure

    Dado que opts comienza con un conjunto de opciones fijo, el resultado del diagrama es independiente de las preferencias de la toolbox de la sesión de MATLAB.

    Para este ejemplo, cree un diagrama de Bode del siguiente sistema dinámico SISO de tiempo continuo. A continuación, conecte la cuadrícula, modifique el nombre del diagrama y cambie la escala de frecuencia.

    sys(s)=s2+0.1s+7.5s4+0.12s3+9s2.Continuous-time SISO dynamic system

    Cree la función de transferencia sys.

    sys = tf([1 0.1 7.5],[1 0.12 9 0 0]);

    Cree la gráfica de Bode. Especifique las propiedades de la gráfica modificando el objeto de gráfico devuelto.

    bp = bodeplot(sys);
    bp.FrequencyScale = "linear";
    title("Bode Plot of Transfer Function");
    grid on

    MATLAB figure

    bodeplot selecciona automáticamente el rango del diagrama en función de la dinámica del sistema.

    Para este ejemplo, considere el modelo de espacio de estados MIMO con 3 entradas, 3 salidas y 3 estados. Cree un diagrama de Bode con una escala de frecuencia lineal, especifique las unidades de frecuencia en Hz y conecte la cuadrícula.

    Cree el modelo de espacio de estados MIMO sys_mimo.

    J = [8 -3 -3; -3 8 -3; -3 -3 8];
    F = 0.2*eye(3);
    A = -J\F;
    B = inv(J);
    C = eye(3);
    D = 0;
    sys_mimo = ss(A,B,C,D);
    size(sys_mimo)
    State-space model with 3 outputs, 3 inputs, and 3 states.
    

    Cree una gráfica de Bode y devuelva el objeto de gráfico correspondiente.

    bp = bodeplot(sys_mimo);

    Personalice la gráfica modificando las propiedades del objeto de gráfico.

    bp.FrequencyScale = "linear";
    bp.FrequencyUnit = "Hz";
    grid on

    MATLAB figure

    La gráfica de Bode se actualiza automáticamente cuando se modifican las propiedades del objeto de gráfico. Para los modelos MIMO, bodeplot genera un arreglo de diagramas de Bode y cada diagrama muestra la respuesta en frecuencia de un par E/S.

    Para este ejemplo, haga coincidir la fase de la respuesta de su sistema, de manera que la fase a 1 rad/s sea de 150 grados.

    En primer lugar, cree una gráfica de Bode de un sistema de función de transferencia con el objeto de gráfico bp.

    sys = tf(1,[1 1]); 
    bp = bodeplot(sys);

    MATLAB figure

    Active la coincidencia de fases y ajuste la frecuencia y el valor de la correspondencia.

    bp.PhaseMatchingEnabled = "on"; 
    bp.PhaseMatchingFrequency = 1; 
    bp.PhaseMatchingValue = 150;

    MATLAB figure

    El primer diagrama de Bode tiene una fase de -45 grados a una frecuencia de 1 rad/s. Estableciendo las opciones de coincidencia de fase, de manera que a 1 rad/s la fase esté cerca de 150 grados, se ofrece el segundo diagrama de Bode. Sin embargo, tenga en cuenta que la fase solo puede ser -45 + N*360, donde N es un número entero. De modo que el diagrama se ha establecido en la fase más cercana admisible, concretamente a 315 grados (o 1*360-45=315oEquation of how the allowable phase is calculated).

    Para este ejemplo, compare las respuestas en frecuencia de dos modelos de espacio de estados identificados con los estados 2 y 6 junto con las 2 regiones de confianza σ.

    Cargue los datos del modelo de espacio de estados identificado y calcule los dos modelos con n4sid. El uso de n4sid requiere una licencia de System Identification Toolbox™.

    load iddata1
    sys1 = n4sid(z1,2); 
    sys2 = n4sid(z1,6);

    Cree un diagrama de Bode de los dos sistemas.

    bodeplot(sys1,'r',sys2,'b');
    legend('sys1','sys2');

    MATLAB figure

    A partir del diagrama, observe que ambos modelos generan alrededor del 70% del ajuste para los datos. No obstante, sys2 muestra una mayor incertidumbre en su respuesta en frecuencia, especialmente cerca de la frecuencia Nyquist. Ahora, utilice linspace para crear un vector de frecuencias y represente la respuesta de Bode con el vector de frecuencia w.

    w = linspace(8,10*pi,256);
    bp = bodeplot(sys1,sys2,w);
    legend('sys1','sys2');

    Active la coincidencia de fases, especifique la desviación estándar de la región de confianza y muestre la región de confianza.

    bp.PhaseMatchingEnabled = "on";
    bp.Characteristics.ConfidenceRegion.NumberOfStandardDeviations = 2;
    bp.Characteristics.ConfidenceRegion.Visible = "on";

    MATLAB figure

    Como alternativa, puede utilizar el comando showconfidence para mostrar las regiones de confianza de la gráfica de Bode.

    showConfidence(bp)
    

    Para este ejemplo, compare la respuesta en frecuencia de un modelo paramétrico identificado a partir de datos de entrada-salida con un modelo no paramétrico identificado utilizando los mismos datos. Identifique modelos paramétricos y no paramétricos en función de los datos.

    Cargue los datos y cree los modelos paramétricos y no paramétricos con tfest y spa respectivamente.

    load iddata2 z2;
    w = linspace(0,10*pi,128);
    sys_np = spa(z2,[],w);
    sys_p = tfest(z2,2);

    spa y tfest requieren el software System Identification Toolbox™. El modelo sys_np es un modelo no paramétrico identificado, mientras que sys_p es un modelo paramétrico identificado.

    Cree un diagrama de Bode que incluya ambos sistemas. Active la coincidencia de fases para esta gráfica.

    bp = bodeplot(sys_p,sys_np,w);
    bp.PhaseMatchingEnabled = "on";
    grid on
    legend('Parametric Model','Non-Parametric model');

    MATLAB figure

    Sugerencias

    • Las gráficas creadas con bodeplot no admiten títulos ni etiquetas multilínea especificados como arreglos de cadenas o arreglos de celdas de vectores de caracteres. Para especificar títulos y etiquetas multilínea, utilice una cadena única con un carácter newline.

      bodeplot(sys)
      title("first line" + newline + "second line");

    Algoritmos

    El software calcula la respuesta en frecuencia de la siguiente forma:

    1. Calcule la representación de cero-polo-ganancia (zpk) del sistema dinámico.

    2. Evalúe la ganancia y la fase de la respuesta en frecuencia en función de los datos de ceros, polos y ganancia para cada canal de entrada-salida del sistema.

      • En los sistemas de tiempo continuo, la función bodeplot evalúa la respuesta en frecuencia en el eje imaginario s = y tiene en cuenta solo frecuencias positivas.

      • En los sistemas de tiempo discreto, la función bodeplot evalúa la respuesta en frecuencia en el círculo unitario. Para facilitar la interpretación, el comando parametriza la mitad superior del círculo unitario como:

        z=ejωTs,0ωωN=πTs,

        donde Ts es el tiempo de muestreo y ωN es la frecuencia Nyquist. A continuación, el software utiliza la frecuencia de tiempo continuo equivalente ω como variable del eje x. Dado que H(ejωTs) es periódico con periodo 2ωN, la función bodeplot representa la respuesta solo hasta la frecuencia Nyquist ωN. Si sys es un modelo de tiempo discreto con un tiempo de muestreo no especificado, la función bodeplot utiliza Ts = 1.

    Historial de versiones

    Introducido antes de R2006a

    expandir todo