Programa de Educação Tutorial de Engenharia Elétrica Max...

Post on 15-Nov-2018

232 views 1 download

Transcript of Programa de Educação Tutorial de Engenharia Elétrica Max...

Minicurso de MATLAB

Programa de Educação Tutorial de Engenharia Elétrica

Max Rodrigues

Caroline Pereira

Nayara Medeiros

Ementa aula de hoje:

Técnicas de programação;

Operações lógicas;

Estruturas condicionais;

Estruturas de repetição;

Toolboxes;

Simulink.

Técnicas de Programação

Além de ser utilizado como calculadora o Matlab pode ser utilizados para programação de diversos tipos.

Como simples códigos, manipulação de imagens e simulações.

Operações lógicas e relacionais

Operador Descrição

< Menor que

<= Menor ou igual a

> Maior que

>= Maior ou igual a

== Igual a (não confundir com ‘=’ )

~= Diferente de

& E

|| OU

~ NÃO

Estruturas Condicionais

A estrutura if pode ser implementada no Matlab de três formas diferentes, são elas:

-Primeira forma:

>>if condição

comandos

end

Estruturas Condicionais

-Segunda forma:

>>if condição1

comandos1

else

comandos2

end

Estruturas Condicionais

-Terceira forma:

>>if condição1

comandos1

elseif condição2

comandos2

[...]

else

comandosN

end

Estruturas Condicionais

Estruturas Condicionais

Estrutura switch-case:

Estruturas Condicionais

Estruturas de Repetição

O Matlab possui as seguintes estruturas de repetição: Estrutura for:

>>for variável=inic:incr:fim

comandos

end

Estruturas de Repetição

O Matlab possui as seguintes estruturas de repetição: Estrutura while:

>>while condição

comandos

end

Obs.: Lembrar de colocar o incremento.

Estruturas de Repetição

A condição da estrutura for é a variável ser menor ou igual a m.

Enquanto satisfeita essa condição(ele fica no loop), ao término de cada loop de comandos, variável é incrementada de incr.

O incremento incr é considerado unitário caso seja omitido.

Estruturas de Repetição

Cálculo de média usando for:

Estruturas de Repetição

Cálculo da média usando while

Exercícios

Escreva um programa que calcule sucessivamente a raiz quadrada de números maiores que um (1) introduzidos pelo usuário, até que este indique o número igual a um.

Utilize a função sqrt(x) para calcular a raiz quadrada e input para ler os valores.

Exercícios

Escreva uma função que, dada uma sequência y, com n números, determine quantos e quais os elementos que são maiores do que a soma dos seus vizinhos.

Ex: y=(7 3 5 1 4 12 5 8)

Resposta: 7, 5, 12, 8

4 elementos

Toolboxes

ToolBoxes são um conjunto de arquivos .m e .mat (chamados de scripts e kernels) que são acrescentados ao MatLab e são específicos para realização de uma determinada tarefa ou solucionar determinado problema.

Existem ToolBoxes com programas para as mais diversas áreas como já foi citado(iremos focar no de matemática simbólica e sistema de controle e simulink).

Não é toolboxes, muito

utilizado para simulações.

l Para saber quais toolboxes você possui (além de informações sobre, basta utilizar o comando “ver” no command window). Toolboxes

Alguns toolboxes importantes: Signal Processing Toolbox

Math simbolics Toolboxes

Sistema de controle Toolboxes

Toolboxes

Toolboxes lSymbolic Math Toolbox: O Symbolic Math é um ToolBox que tem por finalidade operar com variáveis literais. Este Toolbox possui funções como:

>>eval >>solve

>>expand

>>simplify

>>diff >>int

Toolboxes lEval

Define a variável simbólica x;

Solução de uma equação

algébrica simbólica (x²+x+2=3)

Soluções da

equação algébrica

Simplificação das soluções

com o “eval”

lSolve

Obs.: Eval serve para simplificar literal e numérica,

porém simplify somente literais.

Toolboxes

lExpand (expansão)

Simplify (simplificação)

Toolboxes ldiff (diferenciação)

Toolboxes lint (integração)

Toolboxes lRepresentação gráfica de expressões simbólicas (ezplot)

Toolboxes l

O comando ezplot traça o gráfico no domínio −2𝜋 ≤ 𝑥 ≤ 2𝜋

Para especificar o domínio de x para, por exemplo, −10 ≤ 𝑥 ≤ 10

fazemos o seguinte:

Toolboxes sistema de controle Utilizado na disciplina sistemas de controle >>rlocus(t) >>bode(t) >>pole(t) >>margin(t) Para fazer a função transfrência: >>tf(num) >>zpk(num)

Como declarar uma função transfência:

rlocus

bode()

pole()

margin()

Exercícios:

Encontre o lugar das raízes e as curvas de bode.

Simulink

O Simulink é uma ferramenta utilizada para modelagem, simulação e

análise de Sistemas Dinâmicos. O programa se aplica a sistemas lineares e

não lineares, discretos e contínuos no tempo.

Ao contrário do MATLAB, que utiliza linha de comando, o Simulink

utiliza uma interface gráfica amigável, representando o sistema por diagramas

de blocos, no qual cada bloco representa uma operação matemática de

entrada e saída que chama-se função de transferência do bloco. Nos sistemas

contínuos, estas relações são obtidas utilizando-se a transformada de Laplace

nas equações. Não podemos deixar de enfatizar que apesar do Simulink ser

uma aplicação específica, este não trabalha independentemente do MATLAB.

Acessando o Simulink

É possível acessá-lo de duas maneiras:

- Digitando a palavra ‘Simulink’ no Command Window

- Ou clicando no ícone da barra de ferramentas

Componentes de um modelo Simulink - Fontes

São as entradas do sistema e estão 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 função degrau. Pode-se configurar o

instante em que se aplica o degrau, assim como sua magnitude antes e depois

da transição.

• O bloco de Onda Senoidal (Sine Wave) gera uma senoide com os seguintes

parâmetros a serem configurados: amplitude, fase e frequência da onda

senoidal.

• O Gerador de Sinais (Signal Generator) pode produzir ondas senoidais,

quadradas, dente de serra ou sinais aleatórios.

• Outros sinais podem ser gerados a partir de combinações destes blocos

apresentados

Componentes de um modelo Simulink

-Diagramas de blocos

É a modelagem por meio de blocos utilizando-se a transformada de

Laplace nas equações do sistema.

- Saídas Os dispositivos de saída são os blocos que permitem verificar o

comportamento do sistema, estes blocos são encontrados na biblioteca de

dispositivos de saída (Sinks).

Construindo modelos

Para realizar uma construção da modelagem do sistema

selecione File>>New Model, ou se preferir, selecione o ícone .

Em seguida, uma janela nomeada untitled se abrirá.

Para adicionar os blocos,

deve-se arrastar os

componentes da

Biblioteca de blocos

(Library Browser) para a

área de trabalho.

Criando simulações

Gerador de sinais

Passos

1) Carregue o Simulink;

2) Insira o Signal Generator (Gerador de sinais)

Entre a lista de opções do Library Browser (Browser de biblioteca), clique

em Simulink, que é uma biblioteca de blocos; Clique em Source, que é

um tipo de bloco de fonte de sinal; Selecione Signal Generator e arraste

este bloco para a área de trabalho do novo documento aberto;

3) Insira os blocos do sistema modelado

4) Insira os dispositivos de saída, por exemplo, o Scope (oscilosópio)

Clique em Commonly Used Blocks e insira o Scope

5) Faça a conexão entre os blocos

Faça um caminho com o mouse ligando os componentes

Criando simulações

Gerador de sinais (Continuação)

6) Propriedades do gerador de sinais

Dê um duplo clique sobre o Signal

Generator. Escolha a forma de

onda (wave form) dente de serra

(sawtooth) com frequência de 1 Hz

com uma amplitude de 2.

Gerador de sinais

7) Propriedades da simulação

Na barra de menu, selecione

Simulation e escolha Model

Configuration Parameters.

Aqui são definidos,

principalmente, o tempo inicial

e final da simulação, assim

como o passo da simulação.

Em Stop Time, coloque 20.

Clique em OK para confirmar

as alterações.Clique em Start

Simulation para realizar a

simulação;

Dê um duplo clique

sobre o osciloscópio

para visualizar a

onda.

Gerador de sinais

8) Armazenando o trabalho

Para armazenar o trabalho clique em File/Save ou pressione

CTRL+S; e entre com o local e nome da simulação. O tipo do

arquivo é .mdl.

Criando simulações

Problema com uma equação diferencial

Modelando a seguinte equação

Com a seguinte condição inicial: x(0) = 0

Temos

Criando simulações

Problema com uma equação diferencial

Monte o diagrama de blocos:

- Insira o bloco Sine Wave (onda senoidal) da biblioteca Source;

- Insira o bloco Integrator (integrador) da biblioteca Continuous (blocos

lineares);

- Insira o Scope (Osciloscópio) da biblioteca Commonly Used Blocks;

Criando simulações

Criando simulações

Considerando o sistema massa-mola

amortecido de segunda ordem excitado

por uma força F. Faça a modelagem do

mesmo

Sendo a massa do corpo m = 5 kg,

admitindo o coeficiente de amortecimento

c = 1 N × s/m e a constante elástica da

mola k = 2 N/m, considerando-se a

deflexão inicial xo = 1 m. Não há entradas

no sistema. Considerando as forças no

sistema dinâmico notamos a presença a

força da mola e a força de

amortecimento. A força da mola é −k × x

e a força de amortecimento é −c × x˙.

Sistema massa-mola amortecido

Criando simulações

Sistema massa-mola amortecido

Para as condições iniciais:

Fazendo a transformada de Laplace:

A função transferência do sistema é dada por: