You are on page 1of 47

'

Universidade Federal Fluminense Escola de Engenharia Eltrica

Introduo ao MATLAB Aplicado a Soluo de Problemas de Engenharia Eltrica

Autor: Jos Renato C. R. de Souza

Niteri 2012

'

Sumrio
1 Introduo.................................................................................................................................. 3 1.1 1.2 2 Estrutura do Programa ........................................................................................................ 3 Janelas ................................................................................................................................ 3

Linguagem do MATLAB ......................................................................................................... 4 2.1 2.2 2.3 2.4 2.5 Tipos de Variveis .............................................................................................................. 4 Como Criar Variveis ......................................................................................................... 4 Operaes Bsicas .............................................................................................................. 5 Operaes com Vetores....................................................................................................... 7 Operaes com Matrizes ..................................................................................................... 8

Programao em MATLAB ................................................................................................... 11 3.1 3.2 3.3 3.4 3.5 3.6 Operadores lgicos............................................................................................................ 13 Comandos bsico de programao .................................................................................... 14 Alguns Comandos Prticos ............................................................................................... 17 Funes ............................................................................................................................ 21 Importando e exportando dados do MATLAB................................................................. 23 Plotagem Grfica .............................................................................................................. 27

O espao Simulink.................................................................................................................... 30 4.1 4.2 4.1 4.2 4.3 4.4 Blocos de comando ........................................................................................................... 31 Blocos de sistema de potncia ........................................................................................... 32 Variveis de fluxo e sinal .................................................................................................. 33 Blocos de medio ............................................................................................................ 33 Anlise de Sinais ............................................................................................................... 36 Parmetros de simulao ................................................................................................... 36

Comunicao entre o Simulink e o Workspace.......................................................................... 37 5.1 5.2 Do Workspace para o Simulink ......................................................................................... 37 Do Simulink para o Workspace.......................................................................................... 41

6 7

Utilizando o Help do MTLAB................................................................................................ 45 Bibliografia .............................................................................................................................. 47

1 Introduo
O MATLAB uma poderosa ferramenta matemtica sendo vastamente aplicada em diversas reas da engenharia. Esta apostila tem como propsito introduzir a plataforma com uma viso voltada para rea de Engenharia Eltrica como tambm servir de suporte para as aulas.prticas da disciplina de Circuitos I do curso de Engenharia Eltrica da UFF de Niteri.

1.1 Estrutura do Programa


O MATLAB pode ser dividido em duas grandes plataformas, sendo elas: o ambiente de programao propriamente dito e o ambiente de simulao chamado de Simulink. Enquanto que na rea de programao so efetuados cdigos e subfunes, no Simulink so realizados experimentos a partir de digramas de blocos. Primeiramente ser detalhada a plataforma de programao do MATLAB a fim de introduzir as semntica da linguagem em questo e a forma de comunicao efetuada com outros programas.

1.2 Janelas
A tela inicial do MATLAB constituda de uma aba que indica o diretrio a ser utilizado para salvar e executar funes. Para que uma determinado cdigo seja executado necessrio que o diretrio a qual pertence esteja indicado na aba de endereo.

O MATLAB possui ainda quatro janelas distintas. As pastas do e arquivos pertencente ao diretrio em questo so exibidas na janela Current Fouder. A janela de comando (Comand Window) a rea que permite a execuo direta dos cdigos, alem de tambm exibir os resultados obtidos. Na janela Workspace so exibidos os dados contidos em estruturas, matrizes, vetores e variveis computados. Por fim, a janela de histrico (Command History) contendo todos os comandos executados sendo tambm informada as datas de cada execuo.

2 Linguagem do MATLAB
A linguagem de programao do MATLAB possui um carter dedutivo e muito semelhante a linguagem C, porem com uma gama de facilidades e simplificaes, alem de contar com diversas funes inclusas disponveis para serem usadas. Para introduzir a linguagem de programao do MATLAB primeiramente ser discretizado os diferentes tipos de variveis presentes na plataforma.

2.1 Tipos de Variveis


O MATLAB pode operar basicamente com dois tipos de variveis, sendo a primeira delas, mais comum entre outras linhagens de programao, se baseia na alocao de dados na memria como matrizes e vetores, escalares ou de caracteres. J o segundo tipo de varivel trata-se de uma representao simblica para descrever equaes, e assim permitindo trabalhar com sistemas, derivadas e integras de uma determinada funo.

2.2 Como Criar Variveis


Ser descrito a seguir, os mtodos para criar as variveis descritas no item anterior. Para criar uma varivel do tipo alocao de dados basta inserir na tela de comando um ou mais caracteres seguido do sinal de igual ( = ) e o dado a qual deseja ser inserido. Exemplo:

Perceba que assim que a varivel "A" foi criada, ela tambm aparece no Worckspace. A varivel do tipo simblica criada a partir do comando "syms". A seguir um exemplo para demonstrar a utilizao de ambos os tipos de variveis:

Note que a varivel "p" foi utilizada para guarda o polinmio em questo por completo.

2.3 Operaes Bsicas


Dentro do MATLAB possvel efetuar operaes bsicas de matemtica diretamente sobre o painel de comando:

Note que a cada resultado os valores de resposta foram armazenados na varivel "ans" (anterior), sendo assim, possibilitando o usurio de reutilizar o ultimo valor calculado, para isso basta utilizar o nome da varivel "ans". Exemplo:

A mesma manipulao pode ser feita com qualquer varivel j declarada:

Para limpar a memria de calculo da janela de comando, basta utilizar o comando "clc". Para apagar as variveis presentes no Workspace utiliza-se o comando "clear"

2.4

Operaes com Vetores

Os vetores no MATLAB so definidos da mesma forma que uma varivel de memria, porem so colocados diversos dados compreendidos entre colchetes:

Os vetores so declarados em linha e, para transpor-los em coluna basta acrescentar uma aspa ao final do nome do vetor. Os vetores podem ser visualizados no Workspace onde os dados so armazenados em planilhas:

Os vetores podem operar diretamente, utilizando todos ou parcialmente os termos pertencentes para a operao:

Os vetores podem assumir ainda o papel de coeficientes de um polinmio, onde o coeficiente de maior gral aquele que se encontra na primeira posio do vetor e assim reduzindo o gral at a ltima posio. Essa caracterstica permite a utilizao de funes tais como "ROOTS" que retorna as razes do polinmio equivalente:

2.5

Operaes com Matrizes

A utilizao de matrizes no MATLAB assemelha-se com a dos vetores. Para inserir quebra de linha na inicializao de uma matriz pasta fazer uso de ponto e virgula ( ; ) ou simplesmente trocar de linha quando for inserir os dados. O MATLAB permite configurar as matrizes de forma que o usurio possa acrescentar uma linha ou coluna diretamente na matriz:

As operaes matriciais tambm so feitas de forma simples, utilizando apenas o nome das variveis nas quais esto contidas:

Nos exemplos a seguir sero apresentadas algumas funes teis para trabalhar com matrizes: Determinante - det(M); Auto valores - eig(M); Nmero de linhas ou colunas linearmente independentes - rank(M); 9

Matriz identidade - eye(n), onde "n" so os nmeros de dimenses da matriz; Matriz de zeros - zeros(n).

Um conceito importante nas aplicaes de engenharia eltrica a aplicao de inverso de matrizes, para isso o MATLAB conta com dois tipos de abordagens apresentadas a seguir:

O MATLAB conta ainda com recursos prticos para a formatao de matrizes em vetores a partir do comando "cat". Essa funo possui duas opes para reorganizar os dados que so especificados ao iniciar a funo, sendo 1 para a configurao de coluna e 2 para a configurao de linha:

10

Esta funo possui outras aplicaes interessantes que sero abordadas nos tpicos posteriores.

3 Programao em MATLAB

Como foi mencionado anteriormente, a programao em MATLAB possui grande semelhana com a linguagem C, porem com algumas simplificaes. Antes que se inicie a apresentao da sintaxe da linguagem de programao preciso apresentar o modelo de arquivo para os cdigos em MATLAB, o arquivo ".m". Esse arquivo semelhante a um arquivo "txt", para iniciar, basta selecionar no menu: File, New,Blank M-File:

11

Aberto o arquivo ".m", basta agora inserir algum cdigo para ser executado. Todos os comandos utilizados na janela de comando podem ser utilizados da mesma forma no arquivo, porem, agora seguiram a seqncia lgica imposta pelo cdigo:

Antes que o cdigo seja executado, preciso que este seja salvo e nomeado. Em meio ao cdigo, possvel inserir comentrios a partir do smbolo "%", ou ainda inserir titulo com "%%". Perceba que ao final de cada linha de cdigo foi inserido ";" da mesma forma que em C, porem est caracterstica no obrigatria diferenciando-se apenas pelo fato de que a linha que no possuir esta

12

terminao ser apresentada diretamente na janela de comando. Por fim, para que o cdigo seja executado basta clicar no smbolo com a seta verde:

Para um melhor efeito visual da execuo do cdigo em questo, foram removidos os ";" de cada linha do cdigo, caso contrrio, os resultados seriam apresentados apenas no Workspace na forma de variveis declaradas.

3.1 Operadores lgicos


O prximo passo antes de iniciar os conceitos de programao do MATLAB definir as operaes lgicas responsveis por relacionar variveis distintas: < <= > >= == ~= Menor Menor ou igual Maior Maior ou Igual Igual Diferente 13

Para a representao dos operadores lgicos OR, AND e NOT utiliza-se a seguinte simbologia:
AND OR NOT

"&" "|" "~"

Estes operadores podem ser utilizados diretamente obtendo-se uma resposta binria - "1" para verdadeiro "0" para falso:

3.2 Comandos bsico de programao


Em geral, quando se apresenta uma linguagem programao, existem certos comandos que sempre prevalecem independente das linguagens de forma a representar uma condio ou processo iterativo. Para o MATLABA esse comandos so "if" e "for". O comando "if" geralmente acompanhado de uma termo lgico a fim de efetuar algum comando quando a condio alcanada. A seguir um exemplo ilustrativo:

14

O comando "if" deve ser finalizado com um "end" e, anda possvel incluir o comando "else" para inserir uma condio contraria a imposta pelo "if". Caso se altere o valor da varivel "termo" para 2, o cdigo passa ento a executar a condio correspondente ao "else":

Outro comando importante o comando "for" responsvel pelos processos iterativos envolvidos na programao. A seguir um exemplo ilustrativo:

15

Existe outro modo de realizar processos iterativos no MATLAB na qual baseia-se no preenchimento vetorial de variveis presentes em uma equao, ou seja, as variveis de uma equao so tratadas como vetores que so preenchidos com "n" valores que sero processados um a um durante o processo. A seguir um exemplo ilustrativo:

No exemplo foi declarada uma varivel "n" na qual preenchida com valores de 1 a 12 com intervalo unitrio. A expresso "P", funo de "n", devo possuir "." antes de qualquer operador matemtico. Essa sintaxe representa que estes operadores sero utilizados por um vetor. Os dados obtidos em forma de vetores podem ser plotados de maneira que os dados sejam postos em funo de suas respectivas posies no vetor. Para isso basta selecionar a varivel em questo no Workspace e escolher a funo "plot":

16

3.3 Alguns Comandos Prticos


O MATLAB possibilita o emprego diferentes tipos comandos tais como funes trigonomtricas, radiciao, logaritmo, integral e diferencial:

Seno Cosseno Radiciao Logaritmo Modulo

sin(x) cos(x) sqrt(x) log(x) abs(x)

, onde "x" uma varivel declarada. Para utilizar as funes relacionadas com polinmios, preciso definir antes uma varivel simblica a partir do comando "syms". A seguir um exemplo prtico:

17

No Workspace fica da seguinte forma:

A funo "solve" resolve sistemas lineares armazenando as respostas em variveis de memria:

18

Para verificar todas as variveis declaradas basta utilizar o comando "who":

Outra funo muito til a funo "residue" que tambm exibem de antemo caractersticas da estrutura de funes do MATLAB . Esta funo efetua a tcnica de fraes parciais para facilitar o emprego, por exemplo, da funo de transformadas de inversa de Laplace muito utilizada para simplificaes de equaes diferenciais. Segue o modo de aplicao da funo "residue":

O cdigo acima apresenta algumas particularidades da funo "residue", sendo necessrio inici-la com polinmios na forma de vetores, o que ocorre em muitas funes envolvendo polinmios. Para isso, fez-se uso da funo "sym2poly" que extrai os coeficientes da de uma funo e os armazena por ordem de gral em um vetor. A resposta do cdigo acima fica da seguinte forma:

19

A resposta da funo "reseidue" composta por trs variveis que representam os seguintes coeficientes das fraes obtidas:

, sendo que para o cdigo em questo a varivel simblica "x". A funo "f" apresenta a estrutura peculiar, caracterstica de uma funo de transferncia. Como comum em problemas de controle efetuar a converso entre o domnio da frequncia e o domnio do tempo, ser apresentada uma extenso do cdigo anterior aplicando a transformada inversa de Laplace:

20

Observe que o comando "for" empregado trata-se de um somatrio dos termos gerados pela funo "residue" a fim de agregar-los a uma nica funo. Outros comandos utilizadas foram a funo "max", na qual retorna o maior valor do conjunto, e a funo "size", que retorna as dimenses do conjunto. A sada deste cdigo fica da seguinte forma:

3.4 Funes
Como apresentadas no ultimo exemplo do item anterior, as funes do MATLAB tratam-se de cdigos com uma ou mais entradas e sadas que podem ser chamados a qualquer momento durante a execuo de um cdigo principal que se encontra em um arquivo ".m" distinto. Basicamente todas as funes presentes no MATLAB utilizam o mesmo recurso, logo, quando se cria uma funo, o programador est na verdade incrementando a biblioteca de funes do MATLAB . A seguir um exemplo com a sintaxe atribuda a criao de funes: 21

Uma funo passvel de possuir mltiplas sadas e entradas, nas quais podem ser desde variveis inteiras at grandes estruturas de forma a ser utilizadas sem a necessidade de especificar seu tipo desde que sejam iniciadas corretamente. A funo ativada pelo nome, no caso do exemplo "fun_teste" - que tambm d nome ao arquivo ".m" em que se encontra. As funes podem ser utilizadas de diversas formas dentro de um cdigo principal:

As respostas retornadas pelo cdigo ficam da seguinte forma:

Neste exemplo a funo "fun_teste" foi utilizada de duas maneiras diferentes sem que seu cdigo interno tivesse que ser alterado, lembrando que ao iniciar uma funo devem ser preenchidas todas as lacunas de entrada e sada respeitando a sintaxe: [sada] = funo (entradas). 22

3.5 Importando e exportando dados do MATLAB


Nesta sesso ser abordados os comandos referente a comunicao do MATLAB com outras plataformas, em especifico o Excel. Um dos comandos mais bsicos de leitura e exportao de dados o "dlm" ("dlmread" para leitura e "dlmwrite" para exportao). Este comando realiza a comunicao com arquivos de texto, como, por exemplo o ".txt". Para demonstra a aplicao deste comando foram criados dois arquivos: " matriz.txt " com uma matriz 4x4 para ser lida e " matriz2.txt " vazio:

Primeiramente ser apresentada as vrias formas de utilizao do comando de leitura "dlmread":

Para que o comando possa ler o arquivo em questo preciso que o MATLAB esteja aberto no mesmo diretrio em que o arquivo se encontra. O nome do arquivo deve ser especificado entre aspas nicas. O paramento de entrada seguinte ao no de arquivo delimitador de dados, para este caso, o que delimita um dado do outro apenas um espao (' '). O arquivo em questo pode ser lido de diversas formas, sendo possvel iniciar sua leitura em diversos pontos, como o caso do segundo exemplo que inicia a leitura do arquivo na coluna 3, linha 23

3, tomando o mesmo modo de contagem da linguagem C onde as linhas e colunas so numeradas a partir de 0. Por fim, possvel estipular uma regio de leitura, com um ponto de inicio e outro de fim, como o caso do terceiro exemplo apresentado. Para esta especificao a contagem da mesma forma que no Excel onde a primeira linha e coluna representada pela posio "A1" e assim sucessivamente. Para o comando de exportao "dlmwrite" consiste em carregar dados de uma varivel do Workspace em um arquivo de texto tal como ".txt". Para isso deve-se especificar o nome do arquivo em questo, o nome da varivel que se deseja salvar e o delimitador de variveis, tal como um espao (" "):

Perceba que os dados do arquivo em ".txt" no apresentam a formatao original, porem quando carregados via MATLAB retomam a formao devida.

As funes apresentada a seguir so utilizadas exclusivamente para a comunicao entre o MATLAB e o Excel. O comando "xlsread" efetua a leitura de um arquivo do tipo ".xls" sobre uma varivel do Workspace. Para exemplificar algumas flexibilidades da implementao da funo "xlsread" ser apresentado um cdigo com alguns comandos complementares:

24

O cdigo apresenta um mtodo que descrever um caminho no qual indica diretrio e arquivo em que se encontram os dados de interesse. Desta forma, o arquivo em questo pode ser carregado independente do diretrio em que se encontra. Caso o arquivo j esteja no diretrio de trabalho, basta apenas especificar o nome do arquivo, do mesmo modo do "dlmread". O comando "xlsread" capaz diferenciar dados numricos de caracteres, como apresentado no comando em questo onde a varivel na lacuna da primeira sada preenchida com valores numricos e os dados de caracteres na segunda, ficando da seguinte forma:

Em muitos casos, as funes presentes no MATLAB so iniciadas por variveis com os dados agrupados em um nico vetor. Com essa viso foi inserida uma estrutura no cdigo apresentado no exemplo para efetuar alinhamento dos dados extrados de um arquivo ".xls". A sada "Alinha_dados" fica da seguinte forma:

25

O comando de exportao de dados para um arquivos do tipo ".xls" o "xlswrite". A utilizao deste comando semelhante ao "dlmwrite', como apresentado a seguir:

Perceba que ao identificar o arquivo de destino no foi necessrio especificar a extenso ".xls". Caso o arquivo no exista, ele automaticamente criado no diretrio em que o MATLAB est aberto. O arquivo ".xls" fica da seguinte forma:

26

3.6 Plotagem Grfica


A construo de grficos no MATLAB realizada atravs de comandos simples com qualquer tipo de escala e coordenada. Os comandos de plotagem que sero desenvolvidos esto apresentados a seguir:

PLOT LOGLOG SEMILOGX

Grfico em escala linear. Grfico em escala logartmica. Grfico em escala semi-

logartmica (eixo x). Grfico em escala semi-

SEMILOGY

logartmica (eixo y).

A seguir um exemplo ilustrativo de como se aplica os comandos de plotagem e seus complementos:

Para a apresentao do cdigo foi utilizado o mtodo iterativo por preenchimento de vetores, apresentado anteriormente. Este cdigo toma como primeiro exemplo duas formas de onda senoidais que so sobrepostas grassas ao comando "hold on". Caso este comando no tivesse sido inserido, o MATLAB apresentaria apenas o ultimo resultado. Perceba que as entradas da funo so na seguinte ordem: domnio e imagem. Outro comando presente no cdigo o "figure" que guarda a 27

figura gerada, sendo assim qualquer figura gerada em seguida no ir interferir naquela foi salva. Os comandos "plot" foram apresentados com algumas especificaes como a de cor, forma e espessura de linha ("Linewidth"). Os grficos gerados pelo cdigo em questo s~ao apresentados a seguir:

Para ilustrar um exemplo de aplicao de plotagem com escala logartmica foi utilizada um cdigo para construo de uma curva inversa caracterstica de um rel de proteo:

O grfico gerado por esse cdigo apresentado a seguir:

28

Outro recurso prtico presente na plotagem do MATLAB o Data Cursor, que permite visualizar os dados de um determinado ponto, apenas selecionando-o no grfico gerado:

A seguir, algumas tabelas com mais tipos de formatao para a plotagem efetuadas dentro do espao do MTLAB. Lembrando que o espao para inserir essas configuraes dentro do cdigo devem esta entre aspas nicas, colocando a cor seguido do tipo de linha ( exemplo: 'k*').

Tipo de cor Y M C R G B W K Amarelo Lils Azul claro Vermelho Verde Azul escuro Branco Preto

29

Tipo de linha _ --. . * + x _______________ --------------------.-.-.-.-.-.-.-.-.-.-.-. .............................. ******** ++++++++ xxxxxxxxxx

O espao Simulink
O Simulink um espao dentro do MATLAB reservado para simulaes via comando de

blocos, o qual possui diversas ferramentas voltadas para aplicaes nos mais diferentes tipos de reas de estudo. Para acess-lo basta selecionar o cone na tela inicial logo acima do Command Window:

Ao iniciar o Simulink, aberta a janela de biblioteca que contendo todos os blocos disponveis para o desenvolvimento de simulaes. Os conjuntos dos blocos esto divididos por reas, tais como: lgica de controle, circuitos de potncia, animao 3D, etc.

30

Os comandos so construdos sobre um arquivo .mdl, a janela desse arquivo constituda de um espao em branco onde os blocos podem ser arrastados da janela de biblioteca e ali conectados. Para criar um arquivo ".mdl" basta selecionar o cone da folha em branco.

4.1 Blocos de comando


Os blocos de comando do Simulink so geralmente constitudos de entradas e sadas bem definidas. Os blocos devem ser conectados de forma a seguir a seqncia lgica desejada. Existem diferentes tipos de conexes a serem feitas entre os blocos dependendo do tipo de varivel que esta sendo trabalhada, podendo ser: escalar, vetorial, matricial, etc.

Todos os blocos do Simulink possuem sua prpria janela de parmetros na qual apresenta uma breve explicao de sua aplicao junto aos cones para configurao de seus parmetros:

31

O Simulink permite que os parmetros dos blocos inscritos a um diagrama sejam inicializados via variveis do Workspace. Para isso basta que o arquivo ".mdl" esteja no mesmo diretrio que as variveis que sero utilizadas.

4.2 Blocos de sistema de potncia


Os blocos de interesse para a abordagem dos temas ligados a Teoria de Circuitos encontramse na biblioteca "SimPowerSystems". Nesta sesso de blocos encontram se os objetos para construo de circuitos de potncia, circuitos eletrnicos, sistemas de mquinas, medies e entre outros:

Para a criao de um circuito simples basta selecionar as fontes desejadas em "Electrical Sources" e os elementos, no caso resistncias, em "Elements". Os elementos de impedncia so apresentados em um nico bloco contendo resistncia, capacitncia e indutncia. Para remover os elementos indesejveis basta selecionar o painel de configurao dos blocos de impedncia e configurar para a estrutura desejada.

Lembrando que para configurar o posicionamento dos blocos o Simulink aceita os atalhos utilizando a tecla "Ctrl", sendo os mais teis: "Ctrl + C" para copiar, "Ctrl + V" para colar, "Ctrl + R" para rotacionar e "Ctrl + Z" para desfazer. 32

Antes de rodar o diagrama preciso incluir o bloco de identificao das variveis presentes no fluxo de dados, neste caso o "powergui". Este bloco ainda possui diversas ferramentas para anlise de dados em meio as simulaes de circuitos.

Existem tambm, outros tipos de blocos de identificao para trabalhar com determinados tipos de variveis, tais como fasores ou nmeros complexos.

4.1 Variveis de fluxo e sinal


Antes de prosseguir, preciso diferenciar os tipos de conexes de blocos presentes no Simulink. Pode-se destacar duas classificaes: conexes de variveis de fluxo e conexes de variveis do tipo sinal. As conexes de fluxo lidam com grandezas fsicas aplicadas as simulaes, tal como a corrente e tenso. Nesta configurao, estes dados no podem ser medidos ou manipulados tal como se fossem elementos fsicos reais. J os sinais so variveis quantificadas em funo do tempo, logo, agregado a um elas esto sempre conciliados uma varivel de magnitude e de instante de tempo. A seguir um exemplo de bloco que lida com as duas classes de conexes, o motor de corrente alternada com tenso controlada por sinal:

4.2 Blocos de medio


Como apresentado na sesso anterior, para se obter os dados de um circuito necessrio utilizar blocos de medio para obter os dados na forma de sinal. A seguir um exemplo de aplicao medidores:

33

Perceba que o sinal de cada medidor foi direcionado para um respectivo bloco do tipo "Scope", o qual funciona de forma semelhante a de um painel de um osciloscpio:

Um segundo bloco que foi utilizado foi o bloco "Mux" (multiplexador) que possui a aparncia de uma barra escura. Esse bloco mescla os sinais nele atribudo e ento emite um sinal contendo mltiplas magnitudes:

O bloco "Scope" permite ainda salvar os sinais gerados nas simulaes. Para isso basta selecionar o segundo cone do painel de ferramenta (ao lado do cone de impressora), em seguida, selecione a aba "Data Hytory" e ento defina um nome para a varivel que ir receber os dados do sinal e, por fim, ser salva no Workspace.

34

A partir do momento em que os dados de fluxo so convertidos em sinais, estes passam a permitir sua manipulao. Sendo assim, um sinal pode ser operado a partir de outros sinais o que possibilita a criao de diversos tipos de sinais que podem vir a ser utilizados para operar algum controle. No exemplo abaixo foi utilizado um bloco de adio que soma o sinal de teno medido com um sinal senoidal para assim simular um rudo.

Ainda neste exemplo, foi utilizado um arranjo de subfuno no qual engloba um conjunto de blocos em um nico bloco ("Manipulao de Sinal") com suas respectivas entradas e sadas que, para este caso, no ocorreram. Para criar um subconjunto dentro de um diagrama basta selecionar todos os

35

blocos que se deseja acrescentar a esse novo bloco e ento utilizar o boto direito do mouse para a janela de opes e ento selecionar a opo de criar uma subfuno.

4.3 Anlise de Sinais


Dentro do Powergui existem alguns comandos avanados muito teis. Para o enfoque de Engenharia Eltrica ser apresentado apenas o comando "FFT Analysis", que efetua a anlise do espectro harmnico do sinal em questo. Para iniciar o comando, primeiramente deve-se salvar o sinal requerido a partir de um bloco do tipo Scope. A partir deste ponto o, "FFT Analysis" j pode ser iniciado, ento basta selecionar o arquivo em que se encontra o sinal a ser analisado e iniciar o programa.

4.4 Parmetros de simulao


O Simulink possui opes para configurar alguns parmetros da simulao, tais como: tempo de partida, tempo de parada, preciso, maior e menor passo de tempo:

36

Para acessar essas opes basta selecionar na barra de ferramenta "Simulation" na opo "Configurations Parameters":

5 Comunicao entre o Simulink e o Workspace

O MATLAB oferece diversas maneiras de se trabalhar com variveis em estudo, o que em muitas vezes facilita a manipulao das mesmas, tanto na programao quanto na observao das variveis de sada de um sistema. Para esta seo, sero analisadas algumas maneiras de como possvel efetuar a comunicao entre as variveis do Workspace com o ambiente Simulink.

5.1 Do Workspace para o Simulink


Uma maneira simples e bem indutiva de se trabalhar com variveis no Simulink declar-las a partir do Workspace, ou seja, criada uma varivel "x" na tela de comando do MATILAB, permitindo assim inserir o valor de algum parmetro em um determinado bloco do Simulink, desde que esteja especificada uma correspondncia da varivel "x" no local onde se deseja inserir valor em questo.

37

Por exemplo: pretende-se controlar a parcela reativa, indutiva e capacitiva de uma determinada impedncia, para isso foram criadas as variveis R, L e C no Workspace:

Criando um circuito no Simulink, seleciona-se a impedncia a qual se deseja controlar e, em seguida, inserido as variveis correspondentes R, L e C nas respectivas entradas. O Simulink as reconhecer desde que estejam inicias previamente:

Da mesma forma, o MATLAB pode operar com variveis vetoriais e matriciais, sendo assim possvel criar diferentes tipos de variveis entradas para o Simulink. Isso permite uma interao direta ente programas de calculo de parmetros e o espao de simulao do Simulink. Ser descrito a seguir algum dos blocos que permitem a interao entre Workspace e o Simulink.

38

From File

O bloco "From File" permite de forma simples o implemento de parmetros no Simulink por meio de um sinal descrito a partir de uma matriz de duas linhas. Esta matriz deve estar especificada em um arquivo ".mat", cujo o nome deve ser especificado no painel do bloco, no qual deve obedecer a seguinte estrutura, onde a primeira linha representa o instante de tempo no qual ao sinal tomar o valor do mdulo estipulado na segunda linha. Exemplo: No Instante de Tempo Mdulo do sinal

1 0,1 2

2 0.2 -3

3 0,5 4

Logo, na sada do bloco, ser emitido um sinal baseado nas coordenadas estipuladas pela matriz respectiva ao longo do tempo, sendo estes pontos interligadas por retas.

Perceba que os intervalos de tempo no preciso respeitar um mesmo padro, porem os valores de instante de tempo devem seguir uma ordem crescente. 39

Este bloco pode trabalhar ainda com mais de um vetor de modulo. Sendo o primeiro vetor da matiz referida sempre aferida para os instantes de tempo, as linhas seguintes so aferidas aos mdulos que sero assumidos.

From Workspace

Outra maneira de inserir dados no Simulink via Workspace pelo bloco "From Workspace". Este bloco funciona basicamente como o anterior, porem trata-se de um bloco mais avanado que permite a aplicao de vrios outros recursos para a manipulao de varivel declarada no Workspace. Como exemplo, ser criado uma matriz Vt para gerar um sinal no Simulink.

Note que para este bloco a posio do tempo e mdulo transposta em relao a matriz de entrada do bloco "From File".

Este bloco conta ainda com diversos recursos, tais como interpolao e extrapolao de dados, reproduzir a pois o ultimo valor emitido, manter o valor final, alterar o tempo de amostragem, entre 40

outros. Outro aspecto que diferencia este bloco o fato de que a varivel nele referida poder ser representada tanto na forma de estrutura quanto na forma matricial.

A seguir as formas de onda utilizando as opes "Extrapolation" (a), Holding final value" (b) e "Sending to zero"(c).

(a)

(b)

(c)

5.2 Do Simulink para o Workspace


A comunicao do Simulink com o Worckspace feita via blocos responsveis por criar variveis matriciais como forma de registro, cujo o nome aferido a partir do bloco.

41

To File

Este bloco permite o armazenamento de dados de simulaes do Simulink na forma de um arquivo .mat a partir de um tempo de amostragem especificado. Diferente do bloco "From File", a partir deste bloco possvel criar uma varivel matricial no Workspace, sendo esta especificada diretamente no painel de menu do bloco. Para ilustrar o funcionamento do bloco foi utilizado no exemplo abaixo um gerador de sinal senoidal com a frequncia ajustada em 0,5 Hz. O bloco To File cria o diretrio com o nome indicado no seu painel, neste caso "Tf.mat" onde os valores sero atribudos a varivel cop.

O bloco To File est configurado para gravar uma amostra a cada 0,25s, ou seja, 1/8 de ciclo. Em seguida usado o bloco "From File" para utilizar os dados armazenados anteriormente e assim gerar um novo sinal.

42

To Workspace

Este bloco assim como anterior, permite no s a criao de uma varivel matricial mas tambm uma varivel em forma de estrutura para armazenar dados. possvel tambm alterar o tempo de amostragem dos dados ou at mesmo trabalhar com mltiplos tempos de amostragem ao mesmo tempo. Alem disso, o bloco permite o registro de variveis com mais de uma dimenso sendo assim capaz de armazenar uma matriz de dados a cada instante de tempo. No exemplo abaixo foi utilizado um bloco "Constant", sendo a ele atribudo uma matriz "M", e em seguida, multiplicado pelo valor do tempo, reproduzido por um bloco "Clock", ao longo da simulao:

43

O resultado das amostragens obtidas pela simulao so dadas a seguir:

44

6 Utilizando o Help do MTLAB


O MATLAB possui inmeras funes e aplicativos, sendo invivel descrever todos em apenas uma apostila. Esta sesso tem como objetivo demonstrar o modo de funcionamento da biblioteca de help do MATLAB, que conta no apenas com as instrues para o uso das funes nele presente, mas tambm com materiais que fornecem a explicao da teoria neles embutidas junto com exemplos e demonstraes. Esse tipo de estrutura agiliza a compreenso de um novo conhecimento relacionando-o diretamente a pratica. O help do MATLAB pode ser acessado a traves do cone presente na pgina principal, ao lado da rea do diretrio. Ao acessar o cone, o MATLAB exibir a seguinte janela:

Na pgina de help existe uma funo de busca por palavra onde, logo a baixo da regio de preenchimento, expressa uma lista de documentos relacionados a busca. No lado direito so expressas as informaes contidas em cada documento. Os documentos possuem classificaes distintas, caracterizadas por um cone respectivo: usurio. 45 - Guias de iniciantes: Possuem informaes bsicas para introduzir o assunto em questo; - Guias do usurio: Possuem informaes mais especficas e aprofundadas do assunto em

questo, geralmente acompanhado de um exemplo aplicvel ao MATLAB; - Funes: Descreve o passo a passo do emprego de funes - Blocos: Descreve o modo de uso dos blocos; - Demonstrao: Apresenta exemplos de simulaes prontas para serem utilizadas pelo

O MATLAB conta ainda com o comando "help" para ser utilizado n Command Window que possui algumas particularidades em relao a janela de help apresentada. Este comando apresenta uma explicao bsica junto a uma aplicao direta da funo em questo:

46

7 Bibliografia
[1] Apostila "CONTROLO DE SISTEMAS APONTAMENTOS DE MATLAB", Universidade da Beira Interior, edio de 2002.

[2] Costa, A. O. Souza da ,Apostila " MATLAB DICAS INICIAIS DE UTILIZAO ", Programa de Engenharia Qumica/COPPE/UFRJ, Janeiro de 2003

[3] Apostila Grupo PET Engenharia Eltrica - UFMS

[4] Escobar, M. Apresentao "Curso Matlab 6 - Introduo a Solues de Engenharia "

47

You might also like