





















Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Encontra documentos específicos para os exames da tua universidade
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
intro-simulink matlab
Tipologia: Notas de estudo
1 / 29
Esta página não é visível na pré-visualização
Não perca as partes importantes!






















Elementos adaptados por:
Prof. Luis Filipe Baptista
MANUAL DE INTRODUÇÃO AO MATLAB/SIMULINK
Este manual tem como objectivo familiarizar o aluno com o Matlab/Simulink, de modo a que possa ser utilizado nos trabalhos seguintes sobre controladores contínuos e digitais, nomeadamente:
O Simulink é um pacote de um software para modelar, simular, e analisar sistemas dinâmicos. Suporta sistemas lineares e não-lineares modelados em tempo contínuo, tempo discreto ou com uma mistura dos dois. Os sistemas também podem ter partes diferentes que são amostradas ou actualizadas com taxas diferentes.
Para modelar, o Simulink possui uma interface gráfica com utilizador ( GUI – Graphical User Interface ) para construir modelos como diagramas de blocos, usando as operações de clicar-e-arrastar do rato. Com esta interface, o aluno pode construir os modelos da mesma forma que se constroem numa folha de papel (ou como a maioria dos livros de controlo os descreve). Esta abordagem constitui um enorme avanço relativamente às soluções tradicionais que utilizam métodos numéricos. O Simulink inclui uma biblioteca de blocos pré-definidos, podendo o aluno também personalizar e criar os seus próprios blocos.
Depois de definir um modelo, é possível simulá-lo. Alguns blocos permitem que se vejam os resultados enquanto a simulação estiver ainda a ser executada. Além disso, o aluno pode modificar os parâmetros e observar imediatamente os resultados obtidos. Os resultados da simulação podem ser enviados para o workspace do MATLAB para visualização e utilização posterior.
Muitas outras ferramentas do MATLAB podem ser usadas no Simulink, sendo por esse facto que o MATLAB e o Simulink estão integrados. É possível simular, analisar, e rever os modelos em qualquer ambiente a qualquer ponto.
O Simulink permite-nos criar o modelo de qualquer tipo de artefacto, dispositivo ou aparelho que não existe fisicamente e vê-los funcionando antes que venham a ser realmente construídos.
(^1) - Estes apontamentos foram adaptados de um manual de introdução ao Simulink da autoria de Grupo PET –
Engenharia Eléctrica – UFMS, Brasil.
Para copiar o bloco Sine Wave do Library Browser, primeiro expanda a árvore do Library Browser para mostrar os blocos no Sources library. Faça isto clicando primeiro no sinal + do Simulink library para mostrar as outras bibliotecas, então clique no sinal + do Sources library para mostrar os seus blocos. Finalmente clique no bloco Sine Wave. Então o Library browser irá aparecer conforme representado na figura seguinte.
Seguidamente, arraste o bloco Sine Wave do Library browser até a janela do modelo. O Simulink cria uma cópia no ponto em que o colocar. Outra maneira de fazer esta operação, consiste em accionar um clique com o botão direito do rato em Sources e selecionar a opção de abrir. Irá aparecer a janela abaixo representada.
Arraste o bloco Sine Wave da janela até o modelo.
Copie os restantes blocos e arrume-os. Para mover cada bloco, clique e arraste com o rato ou clique e mova com as setas do teclado para menores distâncias. Com todos os blocos copiados para o interior do modelo, ele deverá ter o seguinte aspecto:
Termine as ligações e abra o bloco Scope com um duplo clique para ver a simulação. Entre no menu Simulation e escolha a opção Start para iniciar a simulação. Observe as curvas que vão sendo desenhadas no Scope.
Entre no menu Simulation e escolha Parameters para ajustar os parâmetros de simulação. Abra o bloco Scope para ver a evolução da simulação. Mantendo a janela do Scope aberta, ajuste o Simulink para executar a simulação em 10 segundos. Primeiro, ajuste os parâmetros da simulação, seleccionando Parameters no menu Simulation. Na caixa de diálogo que irá aparecer, nota-se que o tempo de simulação é fixado em 10.0 segundos (valor definido por defeito).
Feche a caixa de diálogo Simulation Parameters clicando no botão Ok. O Simulink aplica os parâmetros e fecha a caixa de diálogo.
Escolha Start no menu Simulation e observe as curvas no bloco Scope.
A simulação pára quando for atingido o tempo de simulação especificado em Simulation Parameters ou quando for accionado o botão de Stop no menu Simulation. Para gravar o modelo, escolha Save no menu File e escreva um nome na directoria desejada. Este arquivo contém a descrição do modelo.
Este exercício, mostra como executar algumas das tarefas de construção de modelos, geralmente utilizados no Simulink.
O Simulink permite que se aumente ou diminua a visão do diagrama de blocos. Para ajustar o zoom:
Por definição, o Simulink ajusta o zoom de acordo com o diagrama de blocos quando abre o diagrama.
Pode seleccionar mais de que um objecto. Pode seleccioná-los da seguinte forma:
Para seleccionar mais de um objecto, seleccione cada um dos objectos, segure a tecla Shift e clique nos objectos. Para desmarcar, clique nos objectos de novo mantendo ainda o Shift pressionado.
Uma maneira fácil de seleccionar mais do que um objecto numa mesma área, desenhe uma caixa de selecção em redor dos objectos.
1 Defina o canto para começar uma caixa de selecção posicionando o ponteiro do rato. Assim, quando apertar o ponteiro este irá mudar.
Para todos os comandos acima indicados, pode também seleccionar o modelo, e digitar gcs ao invés de
Mover os blocos de uma janela para a outra é o mesmo que copiar os blocos, excepto se manter pressionada a tecla Shift, enquanto se selecciona o bloco. Pode usar o comando Undo do menu Edit para remover um bloco que tenha adicionado.
Pode duplicar blocos num modelo apertando a tecla Ctrl e seleccionando o bloco com o botão esquerdo do rato. Seguidamente, arraste para um novo local. Pode também fazer isto, arrastando o bloco com o botão direito do rato. Os blocos duplicados têm o mesmo parâmetro dos blocos originais. São acrescentados números de sucessão aos nomes dos novos blocos.
Para apagar um ou mais blocos, seleccione os blocos a serem apagados e aperte a tecla Delete ou Backspace. Também pode escolher Clear ou Cut do menu Edit. O comando Cut recorta os blocos para o clipboard. Usando o Delete , o Backspace ou o comando Clear não será possível colar novamente o bloco. Pode usar o comando Undo do menu Edit para restituir um bloco que tenha apagado.
Normalmente os sinais fluem da esquerda para a direita. As portas de entrada estão à esquerda e as portas de saída estão à direita. Pode mudar a orientação dos blocos escolhendo um destes comandos do menu Format :
A figura abaixo mostra como o Simulink organiza as portas depois de mudar a orientação de um bloco usando os comandos Rotate Block e Flip Block. O texto nos blocos mostra a sua orientação.
Para mudar o tamanho de um bloco, seleccione e arraste quaisquer uma das suas marcas de selecção. Enquanto segura o botão do rato, um rectângulo pontilhado mostra o novo tamanho do bloco. Quando soltar o botão do rato, o bloco fica redimensionado. Por exemplo, a figura abaixo mostra um bloco Gerador de Sinais a ser redimensionado. A marca do lado inferior direito foi seleccionada e arrastada até à posição do cursor. Quando o botão do rato é solto, o bloco assume o novo tamanho.
Qualquer nome de um bloco de um modelo deve ser único e tem que conter pelo menos um caractere. Geralmente, os nomes aparecem debaixo dos blocos quando as portas estão na horizontal e à esquerda dos blocos quando as portas estão na vertical, conforme representado na figura.
Pode editar o nome de um bloco clicando no nome do bloco. Clique duas vezes ou arraste o cursor para seleccionar o nome inteiro. Então, escreva o novo nome. Quando clica nalgum outro lugar no modelo ou entra com alguma outra em acção, o nome será aceito ou rejeitado. Se tentar mudar o nome de um bloco por um nome que já existe ou por um nome sem caractere, o Simulink exibe uma mensagem de erro.
Pode modificar a fonte usada no nome de um bloco seleccionando o bloco, escolhendo a opção Font do menu Format. Seleccione uma fonte da caixa de diálogo. Este procedimento também muda a fonte de texto no ícone do bloco.
Pode cancelar a edição do nome de um bloco escolhendo Undo do menu Edit.
Se mudar o nome de um bloco na biblioteca, todas as ligações para aquele bloco passarão a estar erradas.
Pode mudar a localização do nome de um bloco de duas formas:
Blocos
O Simulink organiza seus blocos em bibliotecas de blocos de acordo com a aplicação. A janela do Simulink exibe os ícones e os nomes da biblioteca:
A seguir serão feitos breves comentários a respeito de cada bloco.
Nome do Bloco Aplicação
Introduz ruído num sistema contínuo.
Gera uma onda sinusoidal com frequência crescente.
Fornece o tempo de simulação.
Gera um valor constante.
Gera tempo de simulação ao especificar intervalo.
Gera pulsos em intervalos regulares.
Lê dados provenientes de um arquivo (Ficheiro)
Dados provenientes de uma matriz definida no workspace.
Gera pulsos em intervalos regulares.
Gera um sinal constantemente crescente ou decrescente.
Gera números aleatórios normalmente distribuídos.
Gera um sinal repetitivo arbitrário.
Gera várias formas de onda.
Gera uma onda sinusoidal.
Gera uma função degrau.
Gera números aleatórios uniformemente distribuídos.
Nome do Bloco Aplicação
Mostra o valor do sinal.
Exibe sinais gerados durante uma simulação.
Pára a simulação quando o sinal for diferente de zero.
Escreve os dados da simulação num arquivo (ficheiro).
Escreve os dados numa matriz no workspace.
Exibe um gráfico X-Y, que utiliza uma janela de figura do MATLAB.
Atrasa o sinal por uma determinada quantia de tempo.
Atrasa o sinal por uma quantia variável de tempo.
Implementa uma função de transferência especificada em termos de pólos e zeros.
Nome do Bloco Aplicação
Produz o valor absoluto do sinal.
Determina as raízes do sinal.
Implementa uma tabela da verdade.
Calcula a fase e a amplitude de um sinal complexo.
Calcula a parte real e imaginária de um sinal complexo.
Gera o produto escalar.
Multiplica o sinal por um determinado valor (ganho).
Executa a operação lógica especificada.
Calcula um sinal complexo a partir da amplitude e fase.
Executa uma função matemática.
Multiplica o sinal por uma matriz.
Produz o mínimo ou o máximo do sinal.
Gera o produto ou quociente de sinais.
Calcula um sinal complexo a partir da parte real e imaginária.
Executa a operação especificada.
Executa uma função de arredondamento.
Indica se o sinal é positivo ou negativo.
Ganho variável.
(Soma)
Efectua a soma de sinais.
Executa uma função trigonométrica.
Nome do Bloco Aplicação
Aplica uma expressão especificada à entrada.
Executa uma interpolação linear da entrada.
Executa uma interpolação linear de duas entradas.
Aplica uma função do MATLAB ou expressão à entrada.
Permite o acesso a uma S-function.
Dados originados de um Data Store Memory.
Escreve dados num Data Store Memory.
Converte um sinal num outro tipo de dados.
(Demux)
Separa um sinal vectorial em sinais escalares.
Acrescenta uma porta de habilitação a um subsistema.
Recebe a entrada de um bloco de Goto.
Executa a função de chamada de um subsistema a uma determinada taxa.
Passa a entrada para o bloco From.
Define o alcance de um bloco de Goto.
Saída nula.
Descobre o ponto de cruzamento.
Fixa o valor inicial de um sinal.
Cria uma porta de entrada para um subsistema ou uma entrada externa.
Combina várias linhas de entrada numa linha de escalar.
Exibe informações de um modelo.
(Mux)
Combina várias linhas de entrada numa linha de vector.
Cria uma porta de saída para um subsistema ou uma saída externa.
Produz a largura de um sinal de entrada, o tempo de amostra, e/ou o tipo notável.
Representa um sistema dentro de outro sistema (sub-sistema).
Termina um sinal que não esteja conectado.
Acrescenta uma porta de gatilho a um subsistema.
Produz a largura do vector de entrada.
Ao criar modelos, é preciso estar atento ao facto de os blocos do Simulink serem de duas categorias básicas: os blocos virtuais e os não-virtuais. Os blocos não-virtuais têm um papel activo na simulação de um sistema. Se adicionar ou remover um bloco não-virtual, muda o comportamento do modelo. Os blocos virtuais, por outro lado, não têm nenhum papel activo na simulação. Simplesmente, ajudam a organizar um modelo graficamente. Alguns blocos do Simulink podem ser virtuais nalgumas circunstâncias e não-virtuais noutras. Tais blocos são chamados de blocos condicionalmente virtuais. A tabela seguinte lista os blocos virtuais e condicionalmente virtuais do Simulink.
Blocos Virtuais
Nome do Bloco Condição na qual o bloco será virtual
Bus Selector Sempre virtual.
Data Store Memory Sempre virtual.
Demux Sempre virtual.
Enable Port Sempre virtual.
From Sempre virtual.
Goto Sempre virtual.
Goto Tag Visibility Sempre virtual.
Ground Sempre virtual.
Inport Sempre virtual a menos que o bloco esteja num subsistema condicionalmente executado e tenha uma conexão directa com um bloco outport.
Mux Sempre virtual.
Outport Virtual se o bloco reside dentro de algum subsistema (condicional ou não), e não reside na raiz (nível mais alto).