Baixe o app para aproveitar ainda mais
Prévia do material em texto
SimulinkSimulink Guia PráticoGuia Prático Grupo PET – Engenharia Elétrica – UFMS Campo Grande – MS • Novembro – 2003 Grupo PET – Engenharia Elétrica - UFMS 1 ÍNDICE 1. DICAS DESTE MATERIAL 3 2. INTRODUÇÃO 4 3. MONTE UM MODELO SIMPLES 5 4. MANUSEANDO O SIMULINK 11 4.1. ZOOM NO DIAGRAMA DE BLOCOS 11 4.2. SELECIONANDO MAIS DE UM OBJETO 11 4.2.1. SELECIONANDO MÚLTIPLOS OBJETOS UM DE CADA VEZ 11 4.2.2. SELECIONANDO MÚLTIPLOS OBJETOS COM A CAIXA DE SELEÇÃO 11 4.2.3. SELECTING THE ENTIRE MODEL 12 4.3. COPIANDO E MOVENDO OS BLOCOS DE UMA JANELA PARA A OUTRA 12 4.4. DUPLICANDO BLOCOS EM UM MODELO 13 4.5. APAGANDO BLOCOS 13 4.6. MUDANDO A ORIENTAÇÃO DE BLOCOS 13 4.7. REDIMENSIONANDO OS BLOCOS 13 4.8. MANIPULANDO OS NOMES DOS BLOCOS 14 4.9. MUDANDO OS NOMES DOS BLOCOS 14 4.9.1. CHANGING THE LOCATION OF A BLOCK NAME 14 4.9.2. CHANGING WHETHER A BLOCK NAME APPEARS 14 5. BLOCOS 16 5.1. BIBLIOTECAS DE BLOCOS DO SIMULINK 16 5.1.1. BIBLIOTECA SOURCES 16 5.1.2. BIBLIOTECA SINKS 17 5.1.3. BIBLIOTECA DISCRETE 18 5.1.4. BIBLIOTECA CONTINUOUS 18 5.1.5. BIBLIOTECA MATH 19 5.1.6. BIBLIOTECA FUNCTIONS & TABLES 20 5.1.7. BIBLIOTECA NONLINEAR 21 5.1.8. BIBLIOTECA SIGNALS & SYSTEMS 22 5.2. BLOCOS VIRTUAIS 23 5.3. ESPECIFICANDO OS PARÂMETROS DOS BLOCOS 24 5.4. CAIXA DE DIÁLOGO DE BLOCK PROPRIETIES 24 5.4.1. DESCRIPTION 25 5.4.2. PRIORITY 25 5.4.3. TAG 25 5.4.4. OPEN FUNCTION 25 5.4.5. ATTRIBUTES FORMAT STRING 25 6. EXEMPLOS 27 Grupo PET – Engenharia Elétrica - UFMS 2 6.1. EXEMPLO 1: SISTEMA MASSA-MOLA 27 6.2. EXEMPLO 2: CIRCUITO RC SÉRIE 29 6.2.1. MODELAGEM MATEMÁTICA DO CIRCUITO 30 6.2.2. SOLUÇÃO DO CIRCUITO UTILIZANDO SIMULINK 31 Grupo PET – Engenharia Elétrica - UFMS 3 1. Dicas deste material Esta apostila de simulink foi elaborada com o objetivo de auxiliar os estudantes a terem uma rápida inicialização ao uso desta poderosa ferramenta computacional para a simulação de sistemas dinâmicos. O primeiro capítulo após a introdução (Monte um Modelo Simples) é aconselhada a todos aqueles que querem partir logo para a construção do seu primeiro modelo. O capítulo Manuseando o Simulink explica alguns detalhes para a construção dos modelos. O capítulo Blocos pode ser muito interessante como fonte de consulta dos principais blocos do Simulink. Grupo PET – Engenharia Elétrica - UFMS 4 2. Introdução O Simulink é um pacote de um software para modelar, simular, e analisar sistemas de dinamicamente. Suporta sistemas lineares e não-lineares modelados em tempo contínuo, tempo discreto ou em uma mistura dos dois. Sistemas também podem ter partes diferentes que são amostradas ou atualizadas a taxas diferentes. Para modelar, o Simulink possui uma interface gráfica com usuário (GUI) para construir modelos como diagramas de blocos, usando as operações clicar-e- arrastar do mouse. Com esta interface, você pode fazer os modelos da mesma maneira que você vai com lápis e papel (ou como a maioria dos livros de ensino os descreve). Este é um enorme avanço em relação as soluções tradicionais com métodos numéricos. O Simulink inclui biblioteca de bloco prontos e você também pode personalizar e pode criar seus próprios blocos. Depois que você definir um modelo, você pode simular. Alguns blocos permitem que você veja os resultados enquanto a simulação ainda estiver sendo executada. Além disso, você pode mudar parâmetros e imediatamente e ver o que acontece. 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 junto com o Simulink, e é por isso que o MATLAB e o Simulink são integrados. Você pode simular, pode analisar, e pode revisar seus modelos em qualquer ambiente a qualquer ponto. O Simulink nos permite criar qualquer tipo de artefato, máquina ou aparelho que não existe fisicamente e vê-los funcionando antes que venham a existir. Grupo PET – Engenharia Elétrica - UFMS 5 3. Monte um Modelo Simples Este exemplo mostra como construir um modelo utilizando muitos comandos de construção de modelos e ações que você usará para construir os seus próprios modelos. O modelo integra uma onda senoidal e mostra os resultados. O diagrama de blocos do modelo deve se parecer com o da figura abaixo: Para criar o modelo, primeiro digite simulink no command window do MATLAB. No windows, o Simulink Library Browser aparecerá. Selecione o botão New Model na barra de ferramentas do Library Browser como indicado acima. O Simulink abrirá uma nova janela para a criação de modelos. Grupo PET – Engenharia Elétrica - UFMS 6 Para criar este modelo, precisará arrastar os blocos das bibliotecas (do library browser) para dentro do modelo. Procure e arraste os seguintes blocos: • Sources library (o bloco Sine Wave) • Sinks library (o bloco Scope) • Continuous library (o bloco Integrator) • Signals & Systems library (o bloco Mux) 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 de + no Simulink library para mostrar as outras bibliotecas, então clique no sinal de + do Sources library para mostrar os seus blocos. Finalmente clique no bloco Sine Wave. Então o library browser deverá estar como na figura abaixo. Agora arraste o bloco Sine Wave do library browser até a janela do modelo. O Simulink cria uma cópia no ponto em que você o colocar. Outra maneira de fazer isto é dando um clique com o botão direito do mouse em Sources e selecionando a opção de abrir. A janela abaixo aparecerá. Grupo PET – Engenharia Elétrica - UFMS 7 Então arraste o bloco Sine Wave da janela até o modelo. Copie o restante dos blocos e arrume-os. Para mover clique e arraste com o mouse ou clique e mova com as setas do teclado para menores distâncias. Com todos os blocos copiados para dentro do modelo, ele deverá se parecer assim. Grupo PET – Engenharia Elétrica - UFMS 8 Se perceberá que os blocos possuem o símbolo >. Se o símbolo aponta para fora ele indica a saída do bloco e se aponta para dentro indica a entrada. Para conectar o bloco Sine Wave a entrada superior do bloco Mux posicionamos o mouse sobre a saida do bloco Sine Wave até que a forma do ponteiro mude para cross hairs. Clique e segure o botão do mouse até a entrada superior do Mux e uma linha tracejada aparecerá. Quando o cursor ficar com o formato cross hairs de linha dupla solte o mouse e a ligação será feita. O Sine Wave também está ligado ao Integrator. Para fazer isso siga a seqüência: 1. Primeiro, posicione o mouse em cima da linha entre o Sine Wave e Mux. Grupo PET – Engenharia Elétrica - UFMS 9 2. Segure a tecla Ctrl e então clique e arraste o mouse até a entrada do bloco Integrator. 3. Ao soltar o botao do mouse a linha é desenhada. Termine as ligações e abra o bloco Scope com um duplo clique para ver a simulação. Entre o menu Simulation e escolha Start para iniciar a simulação e observe as linhas se formando no Scope. Entre o menu Simulation e escolha Parameters para ajustar os parâmetros de simulação Agora, abra o bloco Scope para ver a produção da simulação. Mantendo a janela do Scope aberta, ajuste o Simulink para rodar a simulação por 10 segundos. Primeiro, ajuste os parâmetros da simulação selecionando Parameters no menu Simulation. Na caixa de diálogo que se aparece, nota-se que o tempo de Parada é fixado a 10.0 (seu valor padrão). Grupo PET – Engenharia Elétrica - UFMS 10 Feche a caixa de diálogo Simulation Parameters clicando no botão de Ok. O Simulink aplica os parâmetros e fecha a caixa de diálogo. Escolha Start no menu Simulation e assista as curvas no bloco Scope. A simulaçãopára quando alcança o tempo de parada especificado em Simulation Parameters ou quando você escolhe Stop no menu Simulation. Para salvar este modelo, escolha Save no menu File e entre em um nome e local. Aquele arquivo contém a descrição do modelo. Este exercício lhe mostra como executar algumas tarefas de construção de modelos comumente usadas. Grupo PET – Engenharia Elétrica - UFMS 11 4. Manuseando o Simulink 4.1. Zoom no Diagrama de Blocos O Simulink permite que você aumente ou diminua a visão do diagrama de blocos. Para regular o zoom: • Selecione Zoom In do menu View (ou digite r) para aumentar. • Selecione Zoom Out do menu View (ou digite v) para diminuir. • Selecione Fit System to View do menu View (ou aperte a barra de espaço) para ajustar o zoom de acordo com o diagrama. • Selecione Normal do menu View para ajustar ao zoom 100%. Por padrão, o Simulink ajusta o zoom de acordo com o diagrama de blocos quando você abre o diagrama. 4.2. Selecionando Mais de Um Objeto Você pode selecionar mais de um objeto selecionando-os um de cada vez, selecionando os objetos com o mouse ou com a caixa de seleção, ou selecionar o modelo inteiro. 4.2.1. Selecionando Múltiplos Objetos Um de Cada Vez Para selecionar mais de um objeto selecionando cada objeto individualmente, segure a tecla Shift e clique nos objetos. Para desmarcar, clique nos objetos de novo mantendo ainda o Shift pressionado. 4.2.2. Selecionando Múltiplos Objetos com a Caixa de Seleção Uma maneira fácil de selecionar mais de um objeto numa mesma área é desenhando a caixa de seleção ao redor dos objetos. 1. Defina o canto para começar uma caixa de seleção posicionando o ponteiro do mouse, então quando apertar o desenho do ponteiro mudará. 2. Arraste o ponteiro ao canto oposto da caixa. Um retângulo pontilhado inclui os blocos e as linhas selecionadas. 3. Solte o botão do mouse. Todos os blocos e linhas que estiverem pelo menos parcialmente incluídos dentro caixa de seleção serão selecionados. Grupo PET – Engenharia Elétrica - UFMS 12 4.2.3. Selecting the Entire Model To select all objects in the active window, choose Select All from the Edit menu. You cannot create a subsystem by selecting blocks and lines in this way; for more information, see "Creating Subsystems". 4.3. Copiando e Movendo os Blocos de Uma Janela para a Outra Quando você constrói o seu modelo, você freqüentemente copia blocos das bibliotecas de blocos do Simulink ou de outras bibliotecas ou de outros modelos. Para fazer isto, siga estes passos: 1. Abra a blibioteca apropriada ou o modelo. 2. Arraste o bloco que você quer copiar na janela designada. Para arrastar um bloco, posicione o cursor em cima do ícone do bloco, então pressione o botão do mouse. Passe o cursor à janela designada e então solte o botão do mouse. Você também pode arrastar os blocos das Bibliotecas para uma janela. Nota Simulink oculta os nomes dos blocos Sum, Mux, Demux, and Bus Selector quando você os copia para o modelo. Isto é feito para evitar que amontoe o modelo desnecessariamente. (As formas destes blocos indicam claramente as suas respectivas funções.) Você pode tambem copiar os blocos usando os comandos Copiar and Colar do menu Edit. O Simulink escolhe um nome para cada bloco copiado. Quando você copiar um bloco, o bloco novo herda todos os parâmetros do bloco original. O Simulink usa uma grade invisível de cinco pixels para simplificar o alinhamento de blocos. Todos os blocos se prendem a uma linha na grade. Você pode mover um bloco ligeiramente abaixo, à esquerda ou à direita selecionando o bloco e apertando as teclas de seta. Você pode exibir a grade na janela do modelo digitando o comando seguinte na janela de MATLAB: set_param('<model name>','showgrid','on') Para mudar o espaçamento da grade, digite: set_param('<model name>','gridspacing',<number of pixels>) Por exemplo, para mudar para 20 pixels, digite: set_param('<model name>','gridspacing',20) Para todos o comandos acima, você pode também selecionar o modelo, e digitar gcs ao invés de <model name>. Mover os blocos de uma janela para a outra é o mesmo que copier os blocos, exceto se você manter pressionada a tecla Shift enquanto você seleciona o bloco. Grupo PET – Engenharia Elétrica - UFMS 13 Você pode usar o comando Undo do menu Edit para remover um bloco adicionado. 4.4. Duplicando Blocos em um Modelo Você pode duplicar blocos em um modelo apertando a tecla Ctrl e selecionando o bloco com o botão esquerdo do mouse, então arraste a um local novo. Você também pode fazer isto arrastando o bloco com o botão direito do mouse. 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. 4.5. Apagando Blocos Para apagar um ou mais blocos, selecione os blocos a serem apagados e aperte a tecla Delete ou Backspace. Você 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 sera possível colar o bloco depois. Você pode usar o comando Undo do menu Edit para restituir um bloco apagado. 4.6. Mudando a Orientação de Blocos Normalmente os sinais fluem da esquerda para a direita. As portas de entrada estão na esquerda, e as portas de saída estão à direita. Você pode mudar a orientação dos blocos escolhendo um destes comandos do menu Format: • O comando Flip Block rotaciona o bloco de 180°. • O comando Rotate Block rotaciona o bloco de 90° no sentido horário. 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 mostram a sua orientação. 4.7. Redimensionando os Blocos Grupo PET – Engenharia Elétrica - UFMS 14 Para mudar o tamanho de um bloco, selecione, então arraste quaisquer de suas marcas de seleção. Enquanto você segura o botão do mouse, um retângulo pontilhado mostra novo tamanho para o bloco. Quando você soltar o botão do mouse, o bloco é redimensionado. Por exemplo, a figura debaixo mostra um bloco de Gerador de Sinais sendo redimensionada. A marca do lado inferior direito foi selecionada e arrastada à posição do cursor. Quando o botão do mouse é solto, o bloco assume o seu novo tamanho. 4.8. Manipulando os Nomes dos Blocos Todo o nome de bloco em 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, como mostra esta figura. 4.9. Mudando os Nomes dos Blocos Você pode editar o nome de um bloco clicando no nome do bloco, então clique duas vezes ou arraste o cursor para selecionar o nome inteiro. Então, entre no nome novo. Quando você clica em algum outro lugar no modelo ou entra com alguma outra em ação, o nome será aceito ou rejeitado. Se você tenta 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. Você pode modificar a fonte usada no nome de um bloco selecionando o bloco, escolhendo a opção Font do menu Format. Selecione uma fonte da caixa de diálogo. Este procedimento também muda a fonte de texto no ícone do bloco. Você pode cancelar a edição do nome de um bloco escolhendo Undo do menu Edit. Nota Se você mudar o nome de um bloco biblioteca, todas as ligações para aquele bloco ficarão erradas. 4.9.1. Mudando a Localização do Nome de um Bloco Você pode mudar a localização do nome de um bloco de duas maneiras: • Arrastando o nome do bloco para o lado oposto do bloco. • Escolhendo o comando Flip Name do menu Format. Este comando muda a localização do nome do bloco para o lado oposto do bloco. 4.9.2. Escolher se o Nome do Bloco Aparece Para escolherse o nome do bloco é mostrado ou não, abra o menu Format e escolha: Grupo PET – Engenharia Elétrica - UFMS 15 • O menu Hide Name mantém o nome do bloco visível. Quando você seleciona Hide Name, ele muda o Show Name quando o bloco é selecionado. • O menu Show Name mostra o nome oculto do bloco. Grupo PET – Engenharia Elétrica - UFMS 16 5. Blocos 5.1. Bibliotecas de Blocos do Simulink 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 biblioteca Sources contém blocos que geram sinais. • A biblioteca Sinks contém blocos que exibem ou escrevem os sinais. • A biblioteca Discrete contém blocos que descrevem componentes discretos no tempo. • A biblioteca Continuous contém blocos que descrevem funções lineares. • A biblioteca de Nonlinear contém blocos que descrevem funções não-lineares. • A biblioteca de Math contém blocos que descrevem funções matemáticas. • A biblioteca Functions & Tables contém blocos que descrevem funções gerais e operações de tabelas. • A biblioteca Signal & Systems contém blocos que permitem multiplexar e demultiplexar, entrada/saída de sinais externos, passar dados a outras partes do modelo, criar subsistemas e executar outras funções. • As bibliotecas Blocksets and Toolboxes contém as bibliotecas de Blocos Suplementares Especializados. • A biblioteca Demos do MATLAB contém úteis demonstrações de Simulink. A seguir serão feitos breves comentários a respeito de cada bloco. 5.1.1. Biblioteca Sources Nome do Bloco Aplicação Introduz ruído em um sistema contínuo. Gera uma onda senoidal com freqüência crescente. Provê o tempo de simulação. Gera um valor constante. Gera tempo de simulação ao especificar intervalo. Gera pulsos a intervalos regulares. Dados provenientes de um arquivo. Grupo PET – Engenharia Elétrica - UFMS 17 Dados provenientes de uma matriz definida no workspace. Gera pulsos em intervalos regulares. Gera um sinal constantemente crescente ou decrescente. Gera números randômicos normalmente distribuídos. Gera um sinal repetitivo arbitrário. Gera várias formas de onda. Gera uma onda senoidal. Gera uma função degrau. Gera números randômicos uniformemente distribuídos. 5.1.2. Biblioteca Sinks Nome do Bloco Aplicação Mostra o valor do sinal. Exibição de sinais gerados durante uma simulação. Para a simulação quando o sinal for diferente de zero. Escreve os dados em um arquivo. Escreve os dados em uma matriz no workspace. Exibe um gráfico de X-Y, que usa uma janela de figura do MATLAB. Grupo PET – Engenharia Elétrica - UFMS 18 5.1.3. Biblioteca Discrete Nome do Bloco Aplicação Implementa funções de transferência discretas e filtros. Implementa um sistema estado-espaço discreto. Executa integração discreta no tempo de um sinal. Implementa uma função de transferência discreta. Implementa uma função de transferência discreta especificada em termos de pólos e zeros. Implementa uma amostragem e aproximação de primeira ordem. Atraso de um período de amostra. Aproximação de ordem zero da entrada num período de amostra. 5.1.4. Biblioteca Continuous Nome do Bloco Aplicação Deriva um sinal. Integra um sinal. Produz o sinal de um tempo anterior. Implementa um sistema estado-espaço linear. Grupo PET – Engenharia Elétrica - UFMS 19 Implementa uma função de transferência linear. 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. 5.1.5. Biblioteca Math Nome do Bloco Aplicação Produz o valor absoluto do sinal. Encontra as raízes do sinal. Implementa uma tabela da verdade. Produz a fase e a magnitude de um sinal complexo. Produz as partes reais e imaginárias de um sinal complexo. Gera o produto escalar. Multiplica o sinal por um determinado valor. Executa a operação lógica especificada. Produz um sinal complexo a partir da magnitude e da fase. Grupo PET – Engenharia Elétrica - UFMS 20 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. Produz um sinal complexo a partir da parte real e da imaginária. Executa a operação relacional especificada. Executa uma função de arredondamento. Indica se o sinal é positivo ou negativo. Ganho variável. (Soma) Gera a soma de sinais. Executa uma função trigonométrica. 5.1.6. Biblioteca Functions & Tables Nome do Bloco Aplicação Aplica uma expressão especificada à entrada. Executa interpolação linear da entrada. Grupo PET – Engenharia Elétrica - UFMS 21 Executa interpolação linear de duas entradas. Aplica uma função do MATLAB ou expressão à entrada. Permite acesso a uma S-function. 5.1.7. Biblioteca Nonlinear Nome do Bloco Aplicação Modela o comportamento de um sistema com o decorrer da simulação. Modelo descontínuo em zero e com ganho linear para os demais valores. Provê uma região de saída zero. Troca a saída entre duas entrada, manualmente. Escolhe entre as entradas. Discretiza um sinal em um intervalo especificado. Limita a taxa de variação de um sinal. Troca a saída entre dois níveis. Limita a amplitude de um sinal. Troca entre duas entradas. Grupo PET – Engenharia Elétrica - UFMS 22 5.1.8. Biblioteca Signals & Systems Nome do Bloco Aplicação Seleciona os sinais da entrada. Representa um selecionado bloco qualquer de uma biblioteca especificada. Define uma armazenagem de dados compartilhada. Dados originados de um Data Store Memory. Escreve dados em um Data Store Memory. Converte um sinal para outro tipo de dados. (Demux) Separa um sinal vetorial 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. Passe 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. Grupo PET – Engenharia Elétrica - UFMS 23 Cria uma porta de entrada para um subsistema ou uma entrada externa. Combina várias linhas de entrada em uma linha de escalar. Exibe informações em um modelo. (Mux) Combine várias linhas de entrada em uma linha de vetor. 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. Termina um sinal não conectado. Acrescenta uma porta de gatilho a um subsistema. Produz a largura do vetor de entrada. 5.2. Blocos Virtuais Ao criar modelos, você precisa estar atento que os blocos do Simulink estão entre em duas categorias básicas: os blocos virtuais e os não-virtuais. Blocos Não-virtuais têm um papel ativo na simulação de um sistema. Se você adiciona ou remove um bloco não-virtual, você muda o comportamento do modelo. Blocos virtuais, por outro lado, não fazem nenhum papel ativo na simulação. Eles simplesmente ajudam organizar um modelo graficamente. Alguns blocos do Simulink podem ser virtuais em algumas circunstâncias e não-virtuais em outras. 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. Grupo PET – EngenhariaElétrica - UFMS 24 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 esta em um subsistema condicionalmente executado e tenha uma conexão direta 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). Selector Sempre virtual. Subsystem Virtual se o bloco for condicionalmente executado. Terminator Sempre virtual. Test Point Sempre virtual. Trigger Port Virtual se o bloco outport não está presente. 5.3. Especificando os Parâmetros dos Blocos A interface do Simulink nos permite nomear os valores para os parâmetros dos blocos. Alguns parâmetros são comuns a todos os blocos. Use a caixa de dialogo Block Proprieties para fixar estes parâmetros. Para exibir a caixa de diálogo, selecione o bloco cujas propriedades você quer fixar. Então selecione Proprieties do menu Edit do Simulink. Alguns parâmetros são específicos a blocos particulares. Use a caixa de diálogo Specific-Block Parameter de um bloco para fixar estes parâmetros. Clique duas vezes no bloco para abrir sua caixa de diálogo. Você pode aceitar os valores exibidos ou pode os mudá-los. Você também pode usar o comando set_param para mudar os parâmetros dos blocos. 5.4. Caixa de Diálogo de Block Proprieties A caixa de diálogo Block Properties permite que você selecione alguns dos parâmetros comuns. Grupo PET – Engenharia Elétrica - UFMS 25 A caixa de diálogo contém os seguintes campos: 5.4.1. Description Breve descrição da finalidade do bloco. 5.4.2. Priority Prioridade de execução deste bloco em relação aos outros blocos do modelo. 5.4.3. Tag Um campo de texto geral que é salvo com o bloco. 5.4.4. Open function MATLAB (m-) function a ser chamada quando o usuário abrir este bloco. 5.4.5. Attributes format string Valor atual do parâmetro AttributesFormatString do bloco. Este parâmetro especifica quais parâmetros mostrar próximo do ícone do bloco. Os attributes format string podem ser algum string com nome de parâmetros embutidos. Um nome de parâmetro embutido é o nome de um parâmetro precedido por %< e seguido por >, por exemplo, %<priority>. O Simulink mostra os attributes format string próximo do ícone do bloco, substituindo cada nome de parâmetros pelos correspondentes valores dos parâmetros. Você pode usar os caracteres de linhas (\n) para mostrar cada parâmetro em uma linha separada. Por exemplo, especificando os attributes format string pri=%<priority>\ngain=%<Gain> para o bloco Gain mostrará: Grupo PET – Engenharia Elétrica - UFMS 26 Se o valor de um parâmetro não for um string ou um inteiro, Simulink exibe N/S (not supported) para o valor do parâmetro. Grupo PET – Engenharia Elétrica - UFMS 27 6. Exemplos 6.1. Exemplo 1: Sistema Massa-Mola Fig. 6.1: Representação do Sistema Massa-Mola Equações básicas da Física: Aceleração: 2 2 dt xd dt dva == ( 10.4 ) Velocidade: ∫== adtdt dxv ( 10.5 ) Deslocamento: ∫= vdtx ( 10.6 ) Equações básicas do Sistema massa-mola: Força: F = -kx = ma ∴ 2 2 dt xdmkx = ∴ x m k dt xda −== 2 2 ( 10.7 ) Energia potencial: 2 2 1 kxEp = ( 10.8 ) Energia cinética : 2 2 1 mvEc = ( 10.9 ) Verifica-se das equações que a aceleração, no sistema massa-mola, é diretamente proporcional ao deslocamento 'x'. O fator de proporcionalidade é a constante '-k/m'. Essa é a informação inicial para começar o modelo dado na Figura 10.7. x m F m 0 Grupo PET – Engenharia Elétrica - UFMS 28 Fig. 6.2: Modelo do Simulink para o Sistema Massa-Mola Para a simulação do sistema é necessário fornecer um valor inicial para um dos dois blocos de integração. Essa informação será, no caso, o limite para a variável de saída. Por exemplo, desejando-se limitar o deslocamento 'x' entre os valores -20 cm (-0.2 m) e 20 cm, fixa-se em 0.2 o valor inicial da segunda integral. Uma outra informação fundamental é o valor da constante de proporcionalidade 'k' e o valor da massa 'm'. Esses valores podem ser digitados diretamente no 'prompt' (área de trabalho do MATLAB), como mostrado a seguir: As Figuras que seguem são resultantes do modelo da Fig. 10.7. Fig. 6.3: Energia Cinética e Potencial versus Deslocamento -0.2 -0.15 -0.1 -0.05 0 0.05 0.1 0.15 0.2 0 5 10 15 posição (m) En er gi a C in ét ic a e Po te nc ia l ( J) Energia Cinética Energia Potencial x v a v velocidade t tempo x posição ac aceleração s 1 Integrator1 s 1 Integrator k/2 m/2 -k/m Ep En. Potencial Ec En. Cinetica Clock » k = 700; » m = 0.5; Grupo PET – Engenharia Elétrica - UFMS 29 Fig. 6.4: Energia Cinética e Potencial versus Velocidade Fig. 6.5: Velocidade versus Deslocamento 6.2. Exemplo 2: Circuito RC Série Considere o circuito elétrico da Fig. 10.11, que possui um resistor e um capacitor em série alimentados por uma fonte constante. O capacitor possui uma tensão inicial Vv 10)0( = e deseja-se obter a resposta ttv ×)( para .0≥t -0.2 -0.15 -0.1 -0.05 0 0.05 0.1 0.15 0.2 -8 -6 -4 -2 0 2 4 6 8 ve lo ci da de (m /s ) posição -8 -6 -4 -2 0 2 4 6 8 0 5 10 15 velocidade (m/s) En er gi a C in ét ic a e Po te nc ia l ( J) Energia Cinética Energia Potencial Grupo PET – Engenharia Elétrica - UFMS 30 Fig. 6.6: Circuito elétrico RC série com uma fonte de tensão contínua. 6.2.1. Modelagem Matemática do Circuito A modelagem matemática do circuito é obtida aplicando-se a 2a Lei de Kirchoff ao percurso fechado, e usando a forma genérica e, para expressar tensão: 0=−− vve R Por outro lado, sabemos relacionar a tensão no resistor e a tensão no capacitor com a corrente que os atravessam, )(ti : )(tRivR = dt dvCti =)( ∴ e – Ri(t) – v = 0 ou 0=−− v dt dvRCe Assim, a equação diferencial geral fica: e RC v RCdt dv 11 =+ Substituindo os valores de R = 1kΩ e C = 1mF e e = E = 5V na equação acima, resulta na equação abaixo: 10)0(:onde 5 = =+ v v dt dv Grupo PET – Engenharia Elétrica - UFMS 31 6.2.2. Solução do Circuito Utilizando Simulink Para utilizar o Simulink devemos expressar a equação diferencial da seguinte maneira: ∫ −= dtveRCv )( 1 A expressão acima é conseguida facilmente apenas isolando o termo dt dv e depois aplicando a integração (que é a operação inversa da derivação). Essa forma é ideal para a simulação usando o Simulink. Constroi-se então o modelo mostrado na Fig. 10.12. Fig. 6.7: Diagrama de blocos do Simulink para o Circuito Elétrico da Fig. 10.11 Fig. 6.8: Saída gráfica ttv ×)( para 0≥t para o Circuito Elétrico 0 2 4 6 8 10 5 5.5 6 6.5 7 7.5 8 8.5 9 9.5 10
Compartilhar