{ "metadata": { "name": "", "signature": "sha256:cb74d5afdd7c2a131a71e3e09844b16612f5b477fb00afb6e6e045a0d6d1a0fb" }, "nbformat": 3, "nbformat_minor": 0, "worksheets": [ { "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Observador din\u00e2mico e observador de Luenberger\n", "\n", "## Exemplo:\n", "Comecemos com o exemplo:\n", "$$ \\ddot{x} + a \\dot{x}+ bx = u(t) $$ que pode ser colocado na seguinte forma matricial com a posi\u00e7\u00e3o como observa\u00e7\u00e3o:\n", "$$ \\begin{gather}\n", "\\begin{pmatrix}\\dot{x} \\\\ \\dot{v} \\end{pmatrix} = \\begin{pmatrix} 0 & 1 \\\\ -b & -a \\end{pmatrix}\\begin{pmatrix} x \\\\ v\\end{pmatrix} + \\begin{pmatrix} 0 \\\\ 1 \\end{pmatrix} u \\\\[0.4cm] y = \\begin{pmatrix} 1 & 0 \\end{pmatrix}\\begin{pmatrix} x \\\\ v\\end{pmatrix} \\end{gather}$$\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "\u00c9 natural que procuremos uma realimenta\u00e7\u00e3o de estabiliza\u00e7\u00e3o da forma $u = Ly$. Neste caso a forma do sistema em malha fechada seria:\n", "$$\\dot{\\mathbf{x}} = \\left(\\begin{pmatrix} 0 & 1 \\\\ -b & -a \\end{pmatrix} + \\begin{pmatrix} 0 & 0 \\\\ L & 0 \\end{pmatrix}\\right) \\mathbf{x}$$\n", "que tem o polin\u00f4mio caracter\u00edstico $p(\\lambda) = \\lambda^2 + a\\lambda + b - L$ que s\u00f3 poder\u00e1 ser estabilizado se $a>0$." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Observador din\u00e2mico\n", "A ideia \u00e9 construir uma estimativa da vari\u00e1vel de estado que chamaremos $\\mathbf{x}_e$. Seja ent\u00e3o o sistema linear da forma\n", "$$ \\dot{\\mathbf{x}} = A\\mathbf{x} + Bu \\\\\n", "\\mathbf{y} = C\\mathbf{x} $$\n", "\n", "Um sistema \n", "$$\\begin{gather}\n", "\\dot{\\mathbf{z}} = D\\mathbf{z} + E\\mathbf{y} + Fu \\\\\n", "\\mathbf{x}_{e} = G\\mathbf{z}\n", "\\end{gather}$$\n", "\u00e9 um **observador din\u00e2mico** se para toda condi\u00e7\u00e3o inicial temos que $\\|\\mathbf{x}(t) - \\mathbf{x}_e(t)\\|$ tende a zero quando $t\\to \\infty$." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Observador de Luenberger\n", "Um caso a considerar \u00e9 quando $G=I$, e neste caso temos a equa\u00e7\u00e3o\n", "$$ \\dot{\\mathbf{x}}_e= D\\mathbf{x}_e + E\\mathbf{y} + Fu $$\n", "Para ser um observador \u00e9 preciso ainda que $e(t) = \\mathbf{x}(t) - \\mathbf{x}_e(t)$ v\u00e1 para zero quando $t$ vai a infinito.\n", "Mas temos:\n", "$$ \\dot{e}(t)= \\dot{\\mathbf{x}}(t) - \\dot{\\mathbf{x}}_e(t)= A\\mathbf{x} + Bu -D\\mathbf{x}_e - EC\\mathbf{x} - Fu $$\n", "Nesta equa\u00e7\u00e3o, se tivermos $A-EC = D$ e $B=F$ obtemos:\n", "$$ \\dot{e}(t) = (A-EC)e(t) $$ e $e(t)$ ir\u00e1 a zero se a matriz $(A-EC)$ for est\u00e1vel.\n", "Se existir uma matriz $E$ que satisfaz esta propriedade diremos que o par $(A,C)$ \u00e9 **detect\u00e1vel** e a equa\u00e7\u00e3o:\n", "$$ \\dot{\\mathbf{x}}_e= (A-EC)\\mathbf{x}_e + E\\mathbf{y} + Bu $$\n", "\u00e9 chamado de observador de *Luenberger*." ] }, { "cell_type": "code", "collapsed": true, "input": [], "language": "python", "metadata": {}, "outputs": [] } ], "metadata": {} } ] }