mini curso simulink

Download Mini Curso Simulink

Post on 10-Aug-2015

28 views

Category:

Documents

4 download

Embed Size (px)

TRANSCRIPT

UNIVERSIDADE FEDERAL DO ESPRITO SANTO CENTRO TECNOLGICO DEPARTAMENTO DE INFORMTICA

Mini-curso de SimulinkControle Automtico I

Agosto de 2009

PET Engenharia de Computao www.inf.ufes.br/~pet

Sumrio1 2 3 Introduo Acessando o Simulink Componentes de um modelo Simulink 3.1 Fontes . . . . . . . . . . . . . . . . . 3.1.1 Sinal de entrada personalizado 3.1.2 Combinando Entradas . . . . 3.2 Diagrama de blocos . . . . . . . . . . 3.3 Sadas . . . . . . . . . . . . . . . . . 4 4 6 6 6 8 8 8 9 9 11 13 15 19 19 19 21 23 23 25 28 29 29 30 31 33 34 34 34 35 35 35 35 35 35 36 36 37 37 38 38 39

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

. . . . .

4

Criando Simulaes 4.1 Gerador de Sinais . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Problema com uma Equao Diferencial . . . . . . . . . . . . . . . . . . . . . 4.3 Crescimento de Bactrias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Utilizando o Workspace Sistemas Contnuos no Tempo 6.1 Sistemas Escalares Lineares . . . . . . 6.1.1 Bloco Integrador . . . . . . . . 6.1.2 Exemplo . . . . . . . . . . . . 6.1.3 Bloco Funo de Transferncia . 6.1.4 Exemplo . . . . . . . . . . . . 6.2 Sistemas Contnuos No-Lineares . . .

5 6

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

. . . . . .

7

Sistemas Discretos no Tempo 7.1 Sistemas Discretos no Tempo Lineares . . . . . . . . . . . . . . 7.1.1 Atraso Unitrio (Unit Delay) . . . . . . . . . . . . . . . 7.1.2 Integrador no tempo discreto (Discrete-Time Integrador) 7.1.3 Funo de Transferncia Discreta . . . . . . . . . . . . Aplicao 8.1 Especicaes dos parmetros . . . . . . . . . . . . 8.2 Equaes do Sistema dinmico . . . . . . . . . . . . 8.2.1 Do potencimetro detector de erros . . . . . 8.2.2 Do Amplicador . . . . . . . . . . . . . . . 8.2.3 Da armadura controlada do motor . . . . . . 8.3 Funo de Transferncia do Motor (Planta) . . . . . 8.3.1 Fora contra eletromotriz no motor . . . . . 8.3.2 Do circuito da armadura podemos escrever . 8.3.3 Torque desenvolvido . . . . . . . . . . . . . 8.3.4 Torque resultante na armadura do motor . . . 8.4 Funo de transferncia do motor (FTMF) . . . . . . 8.5 Diagrama de Blocos do Sistema . . . . . . . . . . . 8.6 Ajuste de Kp . . . . . . . . . . . . . . . . . . . . . 8.7 Anlise do efeito de uma no linearidade - Saturao 8.7.1 Anlise . . . . . . . . . . . . . . . . . . . . 8.7.2 Concluses . . . . . . . . . . . . . . . . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

. . . .

8

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

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

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

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

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

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

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

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

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

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

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

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

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

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

2

8.8

8.9

Anlise do efeito de uma no linearidade - Atraso . . . . . . . . . . . . . . . . 8.8.1 Anlise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.8.2 Concluses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Anlise do efeito do perodo de amostragem e do erro de quanticao na resposta ao degrau unitrio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.9.1 Modicaes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.9.2 Anlise . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8.9.3 Concluses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

40 40 41 41 41 42 46

3

1

Introduo

O SIMULINK uma ferramenta utilizada para Modelagem, Simulao e Anlise de Sistemas Dinmicos. O programa se aplica a sistemas lineares e no lineares, discretos e contnuos no tempo. Ao contrrio do MATLAB, que utiliza linha de comando, o Simulink utiliza uma interface grca amigvel, representando o sistema por diagramas de blocos, no qual cada bloco representa uma operao matemtica de entrada e sada que chama-se funo de transferncia do bloco. Nos sistemas contnuos, estas relaes so obtidas utilizando-se a transformada de Laplace nas equaes. No podemos deixar de enfatizar que apesar do simulink ser uma aplicao especca, este no trabalha independentemente do MATLAB. Curiosidade O Simulink um programa para resolver sistemas dinmicos, ele faz uso de algoritmos de integrao para resolver as equaes numericamente. Dos diversos algoritmos de integrao, voc provavelmente far uso do Runge-Kutta de 4a e 5a ordens ou do algoritmo de Euller. Mais detalhes sobre algoritmos de integrao podem ser obtidos no "Simulink Users Guide".

2

Acessando o SimulinkExemplo 1: Acessando o Simulink

Na linha de comando do MATLAB deve-se digitar: >> s i m u l i n k Ou pode-se clicar no seguinte cone da barra de ferramentas toolbar:

1

Figura 1: cone do Simulink A janela da biblioteca de blocos se abrir como na Figura 2.

4

Figura 2: Biblioteca de Blocos Para realizar uma construo da modelagem do sistema selecione FileNewModel, ou se preferir, utilize a tecla de atalho CTRL + N. Uma janela nomeada untitled como na Figura 3 se abrir.

5

Figura 3: rea de trabalho Para adicionar os blocos, devem-se arrastar os componentes da Biblioteca de Blocos (Library Browser) para a rea de trabalho.

3

Componentes de um modelo Simulink

Um modelo no Simulink consiste em trs componentes:

3.1

Fontes

So as entradas do sistema e esto presentes na biblioteca de fontes (sources). A seguir, apresentamos as fontes mais comuns: O bloco Constante (Constant) produz um sinal uniforme. A magnitude pode ser escolhida com um duplo clique sobre o bloco. O bloco Degrau (Step) produz uma funo degrau. Pode-se congurar o instante em que se aplica o degrau, assim como sua magnitude antes e depois da transio. O bloco de Onda Senoidal (Sine Wave) gera uma senide com os seguintes parmetros a serem congurados: amplitude, fase e freqncia da onda senoidal. O Gerador de Sinais (Signal Generator) pode produzir ondas senoidais, quadradas, dente de serra ou sinais aleatrios. Outros sinais podem ser gerados a partir de combinaes destes blocos apresentados. 3.1.1 Sinal de entrada personalizado

Para criar um sinal de entrada personalizado, devemos inicialmente denir os pares coordenados em uma matriz, e import-lo para o Simulink. A seguir, apresentamos duas formas de se obter um sinal personalizado.

6

From Workspace Block Deve-se denir os pares coordenados em uma matriz no MATLAB, e import-lo a partir do workspace atravs do bloco From Workspace Block. Este o bloco que permite ao usurio criar seus prprios sinais de entrada. Nas propriedades deste bloco, devem-se denir quais sero as matrizes utilizadas como fonte de sinal. Estas matrizes devem ser previamente denidas no MATLAB antes da execuo da simulao, a primeira coluna da matriz deve ser preenchida com os valores da varivel independente, que corresponde ao tempo da simulao. As colunas seguintes so variveis referentes varivel independente. Exemplo Considere o sinal denido por: u(t) = 2 t; Para gerar a matriz de pares coordenados, devemos digitar os seguintes comandos na rea de trabalho do MATLAB: Exemplo 2: Matriz de pares coordenados1 2 3

>> t = 0 : 0 . 1 : 1 0 0 ; >> u = 2 t ; >> A = [ t , u ] ; Denida a matriz a ser usada, deve-se adicionar o bloco From Workspace Block da biblioteca Sources ao modelo. Com um duplo clique sobre o bloco deve-se digitar o nome da matriz denida no MATLAB no campo Data, neste caso A. Pronto, o bloco j est congurado e pode ser usado. Caso o sinal de entrada tenha mais que uma dimenso, deve-se denir os valores de entrada usando-se uma struct. O tempo deve ser denido como um vetor no campo time, enquanto que os valores referentes varivel independente devem ser denidos como colunas no campo signals.values. Ainda deve ser informado o nmero de dimenses no campo signals.dimensions. Usando-se os mesmos valores do exemplo 2, pode-se denir uma struct a com os comandos apresentados no exemplo 3. Exemplo 3: Matriz de pares coordenados >> a . t i m e = t ; >> a . s i g n a l s . v a l u e s = u ; >> a . s i g n a l s . d i m e n s i o n s = 1 ; From File Input Block A matriz agora carregada a partir de um arquivo gerado pelo MATLAB, assim o sinal de entrada pode ser salvo. Uma diferena importante que que os sinais devem agora ser carregados em linhas. Exemplo A partir do mesmo exemplo, deve-se salvar a matriz gerada em um arquivo com extenso .mat (arquivo usado pelo MAtlab). Exemplo 4: Salvando em um arquivo >> B = A ; >> s a v e exemplo . mat B ; 7

1 2 3

1 2

No simulink, deve-se adicionar o bloco From File Input Block da biblioteca Sources. Com um duplo clique sobre o bloco deve-se digitar no campo File Name o nome do arquivo, neste caso exemplo.mat. 3.1.2 Combinando En