Baixe o app para aproveitar ainda mais
Prévia do material em texto
SIMULINK SIMULINK Escola de Engenharia de São Carlos Escola de Engenharia de São Carlos -- EESC EESC Abril / Maio de 2008 SIMULINK SIMULINK Curso Básico 2011 Prof. Prof. Dr. Marcelo Dr. Marcelo BeckerBecker CONTATO PROF. DR. MARCELO BECKER Laboratório de Mecatrônica SEM - EESC – USP Prédio da Engª. Mecatrônica - Sala 29122 2 Prédio da Engª. Mecatrônica - Sala 29122 Av. do Trabalhador São-carlense, 400 São Carlos – SP, Brasil 13566-590 E-mail: m.becker.bh@gmail.com becker@sc.usp.br Homepage: http://m.becker.bh.googlepages.com/ M. Becker 2008 BIBLIOGRAFIA RECOMENDADA LIVRO EM PORTUGUÊS Simulink 5 – Fundamentos, Élia Yathie Matsumoto, Editora Érica, 204p., 2ª Edição, 2009. 3 OBS. - A maior parte do material deste curso foi baseado nesse livro. website www.mathworks.com M. Becker 2008 SUMÁRIO � INTRODUÇÃO � AMBIENTE DO SIMULINK � MANIPULAÇÕES DE BLOCOS � EXIBIÇÃO DE GRÁFICOS E SIMULAÇÃO� EXIBIÇÃO DE GRÁFICOS E SIMULAÇÃO � SOLVERS � MODELOS, MÁSCARAS E SUBSISTEMAS � SIMULINK E MATLAB � BIBLIOTECAS DE BLOCOS � EXERCÍCIOS 4 M. Becker 2008 SUMÁRIO � 5 M. Becker 2008 INTRODUÇÃO: O que é Simulink? Aplicativo do MatLab que permite analisar o comportamento de sistemas dinâmicos a partir da comportamento de sistemas dinâmicos a partir da construção do modelo matemático; Utiliza-se diagramas de blocos que são simulados pelo MatLab. 6 M. Becker 2008 INTRODUÇÃO: O que é Sistema Dinâmico? Sistema cuja saída (resultado e estado) muda ao longo do tempo. A maioria dos eventos do mundo real são sistemas dinâmicos. tempo. A maioria dos eventos do mundo real são sistemas dinâmicos. Ex.: Circuitos Elétricos, Sistemas de Amortecedor, Sistemas de Freios, Sistemas Termodinâmicos, etc. 7 M. Becker 2008 INTRODUÇÃO: Onde se pode acionar o Simulink? 2 modos: 1. Através do ícone na barra de ferramentas do MatLab. 2. Diretamente na linha de comando do MatLab 8 M. Becker 2008 INTRODUÇÃO: Onde se pode acionar o Simulink? 1. Através do ícone na barra de ferramentas do MatLab.ferramentas do MatLab. 2. Diretamente na linha de comando do MatLab 9 M. Becker 2008 SUMÁRIO � � 10 M. Becker 2008 AMBIENTE DO SIMULINK: Janela Inicial do Simulink Simulink Library Browser 11 Barra de Ferramentas Área de Descrição Diagramas de Blocos Disponíveis para a montagem dos modelos M. Becker 2008 AMBIENTE DO SIMULINK: Menus Pop-up Na Janela Simulink Library Browser há 4 menus [File]: manipulação de arquivos de modelos e ambiente [New]: cria novo modelo [Open]: abre modelo existente [Close]: fecha modelo corrente [Preferences...]: abre janela de configurações 12 M. Becker 2008 AMBIENTE DO SIMULINK: Menu Pop-up [Preferences...] 13 M. Becker 2008 AMBIENTE DO SIMULINK: Menus Pop-up Na Janela Simulink Library Browser há 4 menushá 4 menus [Edit]: manipulação de blocos [Add to the current model]: inclui um elemento no modelo corrente [Find block...]: procura um bloco na biblioteca de blocos [Find next block...]: repete a procura 14 M. Becker 2008 AMBIENTE DO SIMULINK: Menus Pop-up Na Janela Simulink Library Browser há 4 menushá 4 menus [View]: modo de visualização do Simulink [Toolbar]: ativa / desativa a visualização da barra de ferramentas [Status bar]: ativa / desativa exibição da barra de status [Description]: ativa / desativa exibição da barra de descrição [Stay on top]: força a exibição da janela do Simulink sempre na frente [Collapse entire Browser]: mostra apenas os títulos das bibliotecas 15 M. Becker 2008 AMBIENTE DO SIMULINK: Menus Pop-up Na Janela Simulink Library Browser há 4 menushá 4 menus [View]: modo de visualização do Simulink [Expand entire Browser]: mostra todos os ícones de todos blocos [Large icons]: exibe ícones grandes [Small icons]: xibe ícones pequenos [Show Parameters for selected block]: exibe a janela de parâmetros do bloco selecionado 16 M. Becker 2008 AMBIENTE DO SIMULINK: Menus Pop-up Na Janela Simulink Library Browser há 4 menushá 4 menus [Help]: Textos de ajuda do Simulink [Help on the selected block]: exibe texto de ajuda para o bloco selecionado [Simulink help]: exibe o help do Simulink [Tip of the day]: exibe uma dica sobre o Simulink na Janela de Descrição 17 M. Becker 2008 AMBIENTE DO SIMULINK: Barra de Ferramentas A Janela de Ferramentas apresenta 4 opções (já vistas nos Menus 4 opções (já vistas nos Menus Pop-up...): 18 [Create a new Model] [Open a Model] [Stay on top] [Find] M. Becker 2008 AMBIENTE DO SIMULINK: Library Browser Divide-se em 2 janelas: Lado esquerdo: exibe 19 Lado esquerdo: exibe bibliotecas disponíveis Lado direito: exibe os blocos de cada bibliotecas em ordem alfabética M. Becker 2008 AMBIENTE DO SIMULINK: Library Browser Divide-se em 2 janelas: 20 Usando o botão direito do mouse... M. Becker 2008 AMBIENTE DO SIMULINK: Janela do Modelo Criar um novo modelo 21 M. Becker 2008 AMBIENTE DO SIMULINK: Janela do Modelo Expandir a biblioteca do Simulink 22 M. Becker 2008 AMBIENTE DO SIMULINK: Janela do Modelo Inserir bloco de osciloscópio no modelo Localizar o item [Sinks] Localizar o bloco [Scope] 23 M. Becker 2008 AMBIENTE DO SIMULINK: Janela do Modelo Inserir bloco de osciloscópio no modelo Clique e arraste o bloco [Scope] para dentro da janela do modelo... 24 M. Becker 2008 AMBIENTE DO SIMULINK: Janela do Modelo Inserir bloco de gerador de sinal senoidal Localize o item [Sources] Localize o bloco [Sine Wave] clique e arraste-o para dentro da janela do modelo... 25 M. Becker 2008 AMBIENTE DO SIMULINK: Janela do Modelo Conecte os 2 blocos Save o Modelo com o nome tutorial_01 Dê um duplo clique no bloco [Scope] para abris a tela de exibição... 26 M. Becker 2008 AMBIENTE DO SIMULINK: Janela do Modelo Simule o modelo (clique no ícone [Start Simulation]) 27 M. Becker 2008 AMBIENTE DO SIMULINK: Configurar Parâmetros de Simulação A opção [Configuration Parameters...] abre a janela de parâmetros do abre a janela de parâmetros do Simulink 28 M. Becker 2008 AMBIENTE DO SIMULINK: 29 M. Becker 2008 AMBIENTE DO SIMULINK: Configurar Parâmetros de Simulação Altere o parâmetro [Stop Time] para 50.0 e simule novamente Altere o parâmetro [Stop Time] para 50.0 e simule novamente o modelo Curva “dentada”... Volte à Janela de Configurações 30 M. Becker 2008 AMBIENTE DO SIMULINK: Configurar Parâmetros de Simulação Altere o parâmetro [Refine factor] para 10.0 e Altere o parâmetro [Refine factor] para 10.0 e simule novamente o modelo 31 M. Becker 2008 AMBIENTE DO SIMULINK: 32 M. Becker 2008 AMBIENTE DO SIMULINK: Configurar Parâmetros de Simulação Assim...Assim... 33 M. Becker 2008 AMBIENTE DO SIMULINK: Configurar Parâmetros de Blocos As características de cada loco podem ser alteradas através de As características de cada loco podem ser alteradas através de um duplo clique no bloco... Por exemplo, alterando a freqüência e amplitude da onda de seno 34 M. Becker 2008 AMBIENTE DO SIMULINK: Configurar Parâmetros de Blocos Configure os parâmetros [Amplitude] de 1 para 5 e [Frequency] de 1 para 2de 1 para 5 e [Frequency] de 1 para 2 Simule o modelo... 35 M. Becker 2008 AMBIENTE DO SIMULINK: Configurar Parâmetros de Blocos Configure os parâmetros [Amplitude] de 1 para 5 e [Frequency] de 1 para 2de 1 para 5 e [Frequency] de 1 para 2 Simule o modelo... M. Becker 2008 SUMÁRIO � � 37 M. Becker 2008 MANIPULAÇÕES DE BLOCOS: Blocos e Ligações Na Janela de Comando do MatLab: Selecione corretamente o diretório de trabalho e digite tutorial_01Selecione corretamente o diretório de trabalho e digite tutorial_01 38 MANIPULAÇÕES DE BLOCOS: Blocos e Ligações Para visualizar o Library Browser: Selecionar no Menu pop-up [View] a opção [Library Browser]Selecionar no Menu pop-up [View] a opção [Library Browser] 39 M. Becker 2008 MANIPULAÇÕES DE BLOCOS: Blocose Ligações 1. Salvar o arquivo tutorial_01 como tutorial_02 2. Inserir um novo bloco [Sine Wave] no modelo2. Inserir um novo bloco [Sine Wave] no modelo 3. Apague a ligação existente entre os blocos [Sine Wave] e [Scope] 4. Localize no item [Math Operators] o bloco [Sum] 5. Insira o bloco [Sum] no modelo e faça as ligações conforme o esquema do próximo slide... 40 M. Becker 2008 MANIPULAÇÕES DE BLOCOS: Blocos e Ligações Dê um duplo clique no bloco [Sum] para visualizar a janela de parâmetros (2 principais)parâmetros (2 principais) [Icon Shape]: define o formato do ícone [round]: redondo [rectangular]: retangular [List of Signs]: define a operação que será aplicada a cada entrada 41 M. Becker 2008 MANIPULAÇÕES DE BLOCOS: Blocos e Ligações Dê um duplo clique no bloco [Sum] para visualizar a janela de parâmetros (2 principais)parâmetros (2 principais) [Icon Shape]: define o formato do ícone [round]: redondo [rectangular]: retangular [List of Signs]: define a operação que será aplicada a cada entrada 42 M. Becker 2008 MANIPULAÇÕES DE BLOCOS: Blocos e Ligações O gráfico exibido em [Scope] é a soma de duas curvas de seno com amplitude 1 e freqüência 1, ou seja, uma curva com com amplitude 1 e freqüência 1, ou seja, uma curva com amplitude 2 e freqüência 1... Para visualizar cada onda seno, salve o modelo como tutorial_03, insira mais 2 blocos [Scope] e faça as ligações conforme o próximo slide... 43 M. Becker 2008 MANIPULAÇÕES DE BLOCOS: Blocos e Ligações Clique os 2 novos blocos Clique os 2 novos blocos [Scope] para visualizar os sinais Simule o modelo... 44 M. Becker 2008 MANIPULAÇÕES DE BLOCOS: Blocos e Ligações 45 Curva 1 Curva 2 Soma das Curvas M. Becker 2008 MANIPULAÇÕES DE BLOCOS: Blocos e Ligações Alterando o valor de amplitude da curva [Sine Wave 1] para 10 e simulando... 46 Curva 1 Curva 2 Soma das Curvas M. Becker 2008 MANIPULAÇÕES DE BLOCOS: Blocos e Ligações Alterando o valor de freqüência da curva [Sine Wave 1] para 10 e simulando... 47 Curva 1 Curva 2 Soma das Curvas M. Becker 2008 MANIPULAÇÕES DE BLOCOS: Blocos e Ligações Alterando o [Stop Time] para facilitar a visualização... 48 Curva 1 Curva 2 Soma das Curvas M. Becker 2008 MANIPULAÇÕES DE BLOCOS: Blocos e Ligações Alterando o valor de amplitude da curva [Sine Wave 1] para 1 e simulando... 49 Curva 1 Curva 2 Soma das Curvas M. Becker 2008 MANIPULAÇÕES DE BLOCOS: Blocos e Ligações Utilizando um bloco [Gain] ao invés de alterar a amplitude do sinal... No item [Math Operators] localize o bloco [Gain] e insira-o no módulo.no módulo. 50 MANIPULAÇÕES DE BLOCOS: Blocos e Ligações Alterando o valor fator de ganho do bloco [Gain] para 3 e simulando... 51 Curva 1 Curva 2 Soma das Curvas M. Becker 2008 SUMÁRIO � � 52 M. Becker 2008 Gráficos e Resultados Salve o modelo tutorial_03 como tuturial_04 Insira um bloco [Mux] do item [Signal Routing] para combinar várias entradas e gerar uma única saída EXIBIÇÃO DE GRÁFICOS: várias entradas e gerar uma única saída Elimine os blocos [Scope 1], [Scope 2] e [Gain] 53 M. Becker 2008 Gráficos e Resultados O bloco [Mux] receberá os sinais das 2 senóides e da soma e enviará os 3 sinais para o bloco [Scope]. Dê um duplo clique no ícone do bloco [Mux] e configure [Number of inputs] para 3 EXIBIÇÃO DE GRÁFICOS: ícone do bloco [Mux] e configure [Number of inputs] para 3 54 M. Becker 2008 Gráficos e Resultados Faça as ligações conforme o esquema abaixo EXIBIÇÃO DE GRÁFICOS: 55 Faça as seguintes configurações: Bloco [Sine Wave] com amplitude 3 e freqüência 1 Bloco [Sine Wave 1] com amplitude 1 e freqüência 10 M. Becker 2008 Gráficos e Resultados Assim: As curvas foram exibidas EXIBIÇÃO DE GRÁFICOS: 56 As curvas foram exibidas simultaneamente no mesmo gráfico com as seguintes cores: [Sine Wave]: amarelo [Sine Wave 1]: azul [Sum]: púrpura M. Becker 2008 Gráficos e Resultados Para obter vários gráficos em um único bloco [Scope], salve o modelo tutorial_04 como tutorial_05 EXIBIÇÃO DE GRÁFICOS: Elimine o bloco [Mux], dê um duplo clique no bloco [Scope] e clique no ícone [Parameters] para abrir a Janela de Configurações 57 M. Becker 2008 Gráficos e Resultados Configure o parâmetro [Number of axes], que determina o número de eixos que serão exibidos, para 3 EXIBIÇÃO DE GRÁFICOS: eixos que serão exibidos, para 3 Clique em [Apply] Conecte os blocos como o próximo slide e execute a simulação... 58 M. Becker 2008 Gráficos e Resultados Curva 1 EXIBIÇÃO DE GRÁFICOS: 59 Soma das Curvas Curva 2 M. Becker 2008 Gráficos e Resultados Definindo os nomes dos sinais e rótulos para os gráficos: dê um duplo clique na linha e escolha o nome desejado EXIBIÇÃO DE GRÁFICOS: 60 M. Becker 2008 Gráficos e Resultados EXIBIÇÃO DE GRÁFICOS: 61 M. Becker 2008 Gráficos e Resultados Como configurar os parâmetros do bloco [Scope]? [Print]: imprime o(s) gráfico(s) exibidos no bloco EXIBIÇÃO DE GRÁFICOS: [Print]: imprime o(s) gráfico(s) exibidos no bloco [Parameters]: abre janela de configuração de parâmetros [Zoom]: zoom-in [Zoom X-axis]: zoom-in no eixo x [Zoom Y-axis]: zoom-in no eixo y [Autoscale]: ajusta a visualização [Save current axes settings]: armazena configuração [Restore saved axes settings]: restaura configuração 62 M. Becker 2008 Gráficos e Resultados Os eixos dos gráficos podem ser configurados individualmente... Por exemplo, posicione o cursor no gráfico “Curva 2” e clique no botão direito do mouse para abrir o menu flutuante EXIBIÇÃO DE GRÁFICOS: direito do mouse para abrir o menu flutuante 63 É possível configurar os valores mínimo e máximo do eixo Y e o título Reconfigure o título: Gráfico do %<SignalLabel> M. Becker 2008 Gráficos e Resultados Assim: EXIBIÇÃO DE GRÁFICOS: 64 M. Becker 2008 MECANISMOS DE SIMULAÇÃO Introdução O ambiente do Simulink é basicamente composto por 2 componentes: 1. Bibliotecas de Blocos: conjunto de símbolos 2. Editor de Diagrama de Blocos: ambiente no qual os blocos 2. Editor de Diagrama de Blocos: ambiente no qual os blocos são inseridos O diagrama de blocos permite a visualização do sistema modelado de forma modular, o que facilita a compreensão do fluxo do processo estudado 65 M. Becker 2008 Blocos Representam elementos do sistema dinâmico cujo comportamento está sendo simulado... Cada bloco é composto por: 1. Representação visual (símbolo disponível na biblioteca) MECANISMOS DE SIMULAÇÃO 1. Representação visual (símbolo disponível na biblioteca) 2. Conjunto de dados de entrada 3. Conjunto de dados de saída 4. Conjunto de estados (opcional) 66 x (estados) u (entrada) y (saída) M. Becker 2008 Estados Blocos podem ou não ter estados. Se um bloco tiver estado, então estado é uma variável cujo valor tem o seguinte comportamento: 1. É uma função de seus valores anteriores e/ou dos valores de entrada do bloco 2. Determina o valor de saída do bloco MECANISMOS DE SIMULAÇÃO 2. Determina o valor de saída do bloco Quando um bloco possui estados que dependem de valores anteriores, esses estados são chamados de “persistentes” (persistent states) e diz-se que o bloco “possui memória” Exemplo de bloco sem estado: bloco [Sum] usado nos tutoriais. Dados de entrada: [Sin Wave] e [Sin Wave 1]. Dado de saída: soma dos valores de entrada 67 M. Becker 2008 Estados Exemplo de bloco com estado: bloco [Memory] que retorna o valor anterior (item [Discrete]). Conjunto de Dados de entrada: valor corrente Conjunto de Dados de saída: valor anterior MECANISMOS DE SIMULAÇÃO Conjunto de Estados: estado anterior (t-1) e estado atual (t) Inicial: armazena o valor inicial corrente Próximos: armazena o valor corrente e retorna o valor armazenado anteriormente tutorial_07: exemplo de aplicação. Usar o bloco [Memory] para gerar um sinal Si tal que: 68 S0 = k, k constante Si = Si-1+S0, para i>0 M. Becker2008 Estados tutorial_07 - Traga os seguintes blocos para o modelo [Constant] emite sinal constante (localizado no item [Sources]) [Sum] localizado no item [Math Operations] [Scope] localizado no item [Sinks] MECANISMOS DE SIMULAÇÃO 69 M. Becker 2008 Estados Execute o tutorial_07 e visualize o resultado S = 1 MECANISMOS DE SIMULAÇÃO 70 S0 = 1 Si = Si-1+S0, para i>0 O bloco [Memory] implementou a seqüência Si-1+S0 M. Becker 2008 Estados Altere o valor do bloco constante para 3, execute o tutorial_07 e visualize o resultado MECANISMOS DE SIMULAÇÃO 71 M. Becker 2008 Estados Para verificar os valore exatos, insira o bloco [To workspace] do item [Sinks] que exporta os valores do Simulink para o MatLab e conecte os blocos como mostrado na figura abaixo MECANISMOS DE SIMULAÇÃO 72 M. Becker 2008 Estados Configure: [Variable name]: “sequencia” MECANISMOS DE SIMULAÇÃO [Variable name]: “sequencia” [Save format]: “Array” Os valores salvos em MatLab estão em um vetor chamado sequencia 73 M. Becker 2008 Estados Execute a simulação e verifique os valores armazenados na janela [Workspace] do MatLab: MECANISMOS DE SIMULAÇÃO janela [Workspace] do MatLab: tout: vetor de tempo sequencia: valor exportado A seqüência gerada: [3,6,9,12,...] satisfaz: 74 S0 = 3 Si = Si-1+S0, para i>0 M. Becker 2008 Tempo e Passos de Simulação Abra a janela de configurações de parâmetro do modelo MECANISMOS DE SIMULAÇÃO [Simulation Time]: Tempo de Simulação [Start time]: início [Stop time]: fim 75 M. Becker 2008 Tempo e Passos de Simulação [Solver options]: opções de solvers [Type]: tipos MECANISMOS DE SIMULAÇÃO [Type]: tipos [Variable-step]: utilizar passo variado [Fixed-step]: utilizar passo fixo 76 M. Becker 2008 Tempo e Passos de Simulação [Solver options]: opções de solvers [ode45(Domand-Prince)], etc.: próximo tópico [Max step size]: passo máximo [Min step size]: passo mínimo MECANISMOS DE SIMULAÇÃO [Initial step size]: passo inicial [Relative (Absolute) tolerance]: tolerância relativa (absoluta) a ser empregada para monitorar e controlar o erro a cada passo durante as interações 77 Tempo e Passos de Simulação No caso do tutorial_07 não há interação. Logo, vamos alterar o parâmetro [Max step size]. Configurá-lo de “auto” para: [Max step size] = ([Stop time]-[Initial time])/50 MECANISMOS DE SIMULAÇÃO Ou seja, tutorial_07 será simulado 51 vezes no intervalo de 0 a 10 unidades de tempo. 78 Tempo e Passos de Simulação No bloco [Scope]: MECANISMOS DE SIMULAÇÃO Na Janela de Comando do MatLab: 79 M. Becker 2008 Tempo e Passos de Simulação Reconfigurando o parâmetro [Max step size] para 1 e executando a simulação: MECANISMOS DE SIMULAÇÃO 80 11 divisões no eixo x M. Becker 2008 Tempo e Passos de Simulação Criar o modelo tutorial_08: gera uma P.A. tal que: A0 = k, k constante (k = 10) A = A +R, para i>0 e razão R = 5 MECANISMOS DE SIMULAÇÃO Insira os seguintes blocos no modelo: 2 blocos [Constant], localizado no item [Sources]; [Sum], localizado no item [Math Operations]; [Scope], localizado no item [Sinks]; [Memory], localizado no item [Discrete]; [To workspace]: localizado no item [Sinks]; [Clock], localizado no item [Sources]: emite o tempo de simulação; [Switch], localizado no item [Signal Routing]: controla o fluxo de sinais. 81 Ai = Ai-1+R, para i>0 e razão R = 5 M. Becker 2008 Tempo e Passos de Simulação Assim, para a condição de “valor inicial” tem-se: MECANISMOS DE SIMULAÇÃO 82 M. Becker 2008 Tempo e Passos de Simulação O bloco [Switch] recebe 3 sinais de entrada: 1. O 1º sinal de entrada é passado para a frente, caso o teste do 2º sinal seja verdadeiro; 2. O 2º sinal de entrada é utilizado no teste condicional definido pelo MECANISMOS DE SIMULAÇÃO 2. O 2º sinal de entrada é utilizado no teste condicional definido pelo parâmetro [Criteria for passing first input]; 3. O 3º sinal de entrada é passado para frente, caso o teste do 2º sinal seja falso. O algoritmo: se o valor do [clock] for maior ou igual ao menor número positivo (eps), então “0” é passado para frente; caso contrário, “10”, ou seja, A0 é passado para frente Para implementar a condição da seqüência, o bloco [Constant] é configurado de “0” para “5” 83 M. Becker 2008 Tempo e Passos de Simulação Assim, o algoritmo: se o valor do [clock] for maior ou igual ao menor número positivo (eps), então “5” (R) é passado para frente; caso contrário, “10”, ou seja, A0 é passado para frente” MECANISMOS DE SIMULAÇÃO 84 Tempo e Passos de Simulação O resto do algoritmo é implementado conforme a figura abaixo: MECANISMOS DE SIMULAÇÃO 85 M. Becker 2008 Tempo e Passos de Simulação Configure o bloco [To workspace] com: [Variable name]: “SeqPA” MECANISMOS DE SIMULAÇÃO [Variable name]: “SeqPA” [Save format]: “Array” Configure o parâmetro de simulação [Max step size] com valor “1” Execute a simulação... 86 M. Becker 2008 Tempo e Passos de Simulação No [Scope]: Na tela do MatLab: MECANISMOS DE SIMULAÇÃO 87 M. Becker 2008 Sinais Os valores de saída de bloco são comumente denominados “sinais”. Possuem como propriedades: MECANISMOS DE SIMULAÇÃO “sinais”. Possuem como propriedades: 1. Nome 2. Tipo de dado (inteiro de 8-bits, 16-bits, etc.) 3. Tipo numérico (real ou complexo) 4. Dimensão / canal (vetor/matriz) Alguns blocos aceitam qualquer tipo de dados, outros não... 88 M. Becker 2008 Sinais tutorial_09: utilização de sinais com mais de uma dimensão. Crie um novo modelo com os seguintes locos: [Random Number] do item [Sources] MECANISMOS DE SIMULAÇÃO [Random Number] do item [Sources] [Scope] 89 M. Becker 2008 Sinais tutorial_09: no bloco [Random Number] configure as propriedades: [Mean]: média da distribuição normal MECANISMOS DE SIMULAÇÃO [Mean]: média da distribuição normal [Variance]: variância da distribuição normal [Initial Seed]: número inteiro positivo que será a “semente” para a geração da seqüência de números aleatórios. O ideal é que esse número varie a cada execução: utilize a expressão do MatLab: “100*rand” 90 M. Becker 2008 Sinais tutorial_09: Assim... MECANISMOS DE SIMULAÇÃO 91 M. Becker 2008 Sinais tutorial_09: Executando várias vezes a simulação... MECANISMOS DE SIMULAÇÃO 92 M. Becker 2008 Sinais tutorial_09: Para evitar a mensagem no MatLab: MECANISMOS DE SIMULAÇÃO Warning: Parameter Seed of 'tutorial_09/Random Number'specifies a negative or non-integer value. However, this parameter expects an integer value that is greater than or equal to zero. Simulink has converted the specified value of this parameter to data type 'uint32'. Utilizar a função “fix” do MatLab: fix(100*rand) pois ela converte número real em inteiro 93 M. Becker 2008 Sinais tutorial_09: O parâmetro [Initial seed] pode ser um vetor 1xN, em que N representa a quantidade de números aleatórios que devem ser gerados simultaneamente... MECANISMOS DE SIMULAÇÃO aleatórios que devem ser gerados simultaneamente... 94 M. Becker 2008 Sinais tutorial_09: para visualizar as 3 curvas separadamente, utiliza-se o bloco [Demux] do item [Signal Routing]... MECANISMOS DE SIMULAÇÃO 95 M. Becker 2008 Sinais tutorial_09: Assim... MECANISMOS DE SIMULAÇÃO 96 M. Becker 2008 Sinais tutorial_09: O simulink pode ser configurado para exibir informações sobre as propriedades dos sinais MECANISMOS DE SIMULAÇÃO No menu pop-up [Format], ative as opções: [Wide nonscalar lines]: para sinais com mais de um canal, exibe a linha com espessura mais grossa [Signal Dimensions]: para sinais com mais de um canal, exibe o número de canais [Port data types]: mostra o tipo numérico de cada sinal 97 M. Becker 2008 Sinais tutorial_09: Assim... MECANISMOS DE SIMULAÇÃO 98 M. Becker 2008 Sinais tutorial_10: Composição dos tutorial_08 e tutorial_09 que forma um modelo simplificado de simulação “Monte Carlo”... MECANISMOS DE SIMULAÇÃO Carlo”...Modelo: Em que: k1 e k2 são constantes reais αi,j e βi,j são variáveis aleatórias com distribuição normal NS é o número de seqüências aleatórias a serem geradas 99 S0 = Sinicial Si,j = Si-1,j + k1*αi,j + k2*βi,j , j = 1:NS M. Becker 2008 Sinais salve o tutorial_08 como tutorial_10: MECANISMOS DE SIMULAÇÃO 100 M. Becker 2008 Sinais Elimine o bloco [Constant] chamado “R” e altere o bloco [Constant] chamado “A0” para “S0” e reconfigure para o valor “100” MECANISMOS DE SIMULAÇÃO 101 M. Becker 2008 Sinais Altere o valor da variável de saída do bloco [To workspace] para “SeqMC” MECANISMOS DE SIMULAÇÃO 102 M. Becker 2008 Sinais Assim, para implementar a seqüência Si, precisamos de 2 gerações de números aleatórios, semelhantes ao tutorial_09: MECANISMOS DE SIMULAÇÃO 103 M. Becker 2008 Sinais Cuidado na configuração do bloco [Gain] para “Matrix Gain”: MECANISMOS DE SIMULAÇÃO 104 Sinais Utilize os seguintes dados numéricos para a simulação: S = 100; k = 0.01; k = 0.02 e NS = 10 (os blocos [Random Number] MECANISMOS DE SIMULAÇÃO S0 = 100; k1 = 0.01; k2 = 0.02 e NS = 10 (os blocos [Random Number] devem ser configurados com valor [Initial seed]: “fix(100*rand(1,10))”) 105 M. Becker 2008 Sinais Assim... Cuidado com [Swtich] � MECANISMOS DE SIMULAÇÃO 106 � Sinais Acertando a formatação... MECANISMOS DE SIMULAÇÃO 107 M. Becker 2008 Sinais Alterando NS para 100... � Cuidado com [Swtich] MECANISMOS DE SIMULAÇÃO 108 � Sinais Plotando os valores no MatLab... MECANISMOS DE SIMULAÇÃO 109 M. Becker 2008 SUMÁRIO � � 110 M. Becker 2008 SOLVERS: Introdução Um modelo do Simulink retorna os valores derivados no tempo de seus estados (contínuos ou discretos) e não os valores de seus seus estados (contínuos ou discretos) e não os valores de seus estados propriamente ditos. Logo, o Simulink, simulando um sistema, tem que calcular os estados integrando numericamente os estados derivados... → Equações Diferenciais Ordinárias – ODE solvers 111 M. Becker 2008 SOLVERS: Introdução Para selecionar o solver desejado deve-se acessar [Solver] em [Confiuration Parameters] [Confiuration Parameters] 112 M. Becker 2008 SOLVERS: Simulation Time [Start time]: início [Stop time]: fim[Stop time]: fim Pode-se configurar o instante inicial e final para a execução da simulação. Os valores default são “0.0” e “10.0” unidades de tempo, respectivamente. Deve-se observar que o tempo efetivamente gasto para executar a simulação não é o simulation time, visto que depende de vários fatores relativos à configuração do computador... 113 M. Becker 2008 SOLVERS: Solver Options Solvers podem ter passo variável (variable-step) ou fixo (fixed-step). O passo variável permite: modificar o intervalo de tempo entre as interações (passo) e detectar estados de “error control” e “zero crossing”. No caso de passo fixo, não é possível alterar o passo, sendo este constante e determinado automaticamente pela equação (Stop time – Start time)/50. 114 M. Becker 2008 SOLVERS: Solver Options Caso o usuário não queira definir o solver a ser empregado, os solver default são: solver default são: ode45 – para modelos com estados contínuos discrete – para modelos com estados não contínuos 115 M. Becker 2008 SOLVERS: Solver Options Solvers de passo variável: ode45 - Runge-Kutta(4,5) solver tipo non-stiff de ordem média ode23 - Runge-Kutta(2,3) solver tipo non-stiff de ordem baixa ode113 - Adams-Bahforth Moulton PECE solver tipo non-stiff de ordem variável ode15s - NDF (Numerical Differentiation Formulas) solver ode23s - solver Rosenblock de ordem 2 ode23t - solver de ordem baixa (regra trapezoidal / interpolação livre) ode23tb - solver TR-BDF2 de ordem baixa discrete - solver discreto 116 M. Becker 2008 SOLVERS: Solver Options Solvers de passo fixo: discrete - solver discreto ode5 - versão discreta do solver Runge-Kutta(4,5) ode4 - versão discreta do solver Runge-Kutta(2,3) ode3 - versão discreta do solver Bogacki-Shampine ode2 - método de Heun (Euler melhorado) ode1 - método de Euler ode14x - extrapolação 117 M. Becker 2008 SOLVERS: Solver Options tutorial_11: exemplo de aplicação dos solvers.solvers. 1. Inicie um novo modelo e insira os seguintes blocos: [Integrator] localizado no item [Continuous], [Constant] e [Scope]. 2. Configure o bloco [Scope] para 2 eixos 3. Crie os nomes dos sinais, conforme a figura... 118 M. Becker 2008 SOLVERS: Solver Options tutorial_11: executando, obtemos: No 1º gráfico observamos o sinal constante No 1º gráfico observamos o sinal constante “1” e, no 2º, a sua integral que é a função identidade, visto que: Acrescente o bloco [To workspace] para poder observar os efeitos das alterações que serão inseridas no modelo... 119 dx dt = 1 M. Becker 2008 SOLVERS: Solver Options tutorial_11: faça a seguinte configuração no bloco [To workspace]:configuração no bloco [To workspace]: [Variable Name]: “Integral” [Save format]: “Struct with Time” 120 Assim, o sinal gerado pelo bloco [Integrator] será armazenado em uma variável no MatLab com o nome “Integral” tipo “struct” com os campos: “time” e “signal.values” M. Becker 2008 SOLVERS: Solver Options tutorial_11: faça a seguinte configuração para os parâmetros de simulação:simulação: [Start Time]: “0.0” [Stop Time]: “10.0” Solver Options [Type]: “variable-step” [Solver]: “ode45” [Max step size]: “auto” 121 M. Becker 2008 SOLVERS: Solver Options tutorial_11: executando a simulação, temos em: Integral.time – 51 elementos, um para cada passo. Usando o MatLab para visualizar os valores dos passos, temos:Usando o MatLab para visualizar os valores dos passos, temos: 122 M. Becker 2008 SOLVERS: Solver Options tutorial_11: utilizando a função do MatLab “diff” para verificar a diferença entre os passos empregados pelo solver “ode45”, verificamos que o valor máximo do passo é: “0.2”verificamos que o valor máximo do passo é: “0.2” 123 M. Becker 2008 SOLVERS: Solver Options tutorial_11: altere os seguintes parâmetros de simulação: Solver Options [Type]: “fixed-step”Solver Options [Type]: “fixed-step” [Solver]: “ode5” Execute a simulação e gere os mesmos gráficos. É possível observar que a diferença entre os valores do passo é “praticamente” fixa e igual a “0.2” 124 M. Becker 2008 SOLVERS: Solver Options tutorial_11: Assim... 125 M. Becker 2008 SOLVERS: Solver Options tutorial_11: configurando o [Fixed-step size] em “1”, tem-se: 126 M. Becker 2008 SOLVERS: Solver Options tutorial_12: modelagem de um corpo em queda livre 1. Salve o modelo em tutorial_11 como tutorial_12;1. Salve o modelo em tutorial_11 como tutorial_12; 2. Restaure os parâmetros iniciais de simulação: –[Start Time]: “0.0” –[Stop Time]: “10.0” –Solver Options [Type]: “variable-step” –[Solver]: “ode45” –[Max step size]: “auto” 3. Elimine o bloco [To workspace] e insira mais um bloco [Integrator] e mais um eixo no bloco [Scope] 4. Faça as conexões conforme a figura a seguir... 127 M. Becker 2008 SOLVERS: Solver Options tutorial_12: assim... 128 M. Becker 2008 SOLVERS: Solver Options tutorial_12: podemos interpretar o sinal como a aceleração, sua integral 1ª como a velocidade e sua integral 2ª como a posição de um objeto. objeto. Configurando o bloco [Constant] para o valor da aceleração da gravidade “-9.81” e renomeando os sinais, conforme a figura a seguir, concluímos o modelo desejado... 129 M. Becker 2008 SOLVERS: Solver Options tutorial_12: assim... 130 M. Becker 2008 SOLVERS: Solver Options tutorial_13: modelo de um sistema massa-mola-amortecedor 131 Equação: Onde: m – massa do corpo g – aceleração da gravidade k – coeficiente de elasticidade b – coeficiente de amortecimento y – deslocamento do corpo y” = g – (k/m).y – (b/m).y’ my k b M. Becker 2008 SOLVERS: Solver Options tutorial_13: modelando em Simulink, temos: 132 m y” =g – (k/m).y – (b/m).y’ y k b M. Becker 2008 SOLVERS: Solver Options tutorial_13: Configurando os blocos para os valores... 133 y” = g – (k/m).y – (b/m).y’ m: 60 kg g: - 9.81 m/s2 k: 10 N/m b: 5 N.s/m M. Becker 2008 SOLVERS: Solver Options tutorial_13: Configurando o [Stop time] para “100” segundos e executando a simulação...simulação... Observa-se que o corpo desce aproximadamente 100 m, atingindo uma velocidade máxima aproximada em módulo de 20 m/s e o movimento se estabiliza em 60 m de altura. Aumentando a massa para 80 kg... 134 M. Becker 2008 SOLVERS: Solver Options tutorial_13: Assim... 135 60 kg 80 kg SOLVERS: Modelagem de Sistemas Contínuos Simples exemplo_01: modelo desenvolvido a partir do tutorial_13. Sistemas contínuos simples podem ser expressos pela seguinte Sistemas contínuos simples podem ser expressos pela seguinte equação diferencial: Implementando o modelo desta equação para os valores a = 1 e b = 2... 136 x”(t) = – a.x’(t) – b.x(t) + u(t) M. Becker 2008 SOLVERS: Modelagem de Sistemas Contínuos Simples exemplo_01: assim... x”(t) = – a.x’(t) – b.x(t) + u(t) 137 M. Becker 2008 SOLVERS: Modelagem de Sistemas Contínuos Simples exemplo_02: modelo semelhante ao exemplo_01 mas muito mais compacto... Substituindo na equação x”(t) por s”.x, obtemos a equação no formato de função de transferência: Implementando o modelo desta equação para os valores a = 1 e b = 2... 138 x”(t) = – a.x’(t) – b.x(t) + u(t) x = 1 u s” + a.s’ + b M. Becker 2008 SOLVERS: Modelagem de Sistemas Contínuos Simples exemplo_02: o Simulink possui o bloco [Transfer Fcn] localizado no item [Continuous] que implementa diretamente funções de transferênciatransferência assim: 139 x = 1 u s” + a.s’ + b M. Becker 2008 SOLVERS: Modelagem de Sistemas Contínuos Simples exemplo_02: configurando [Transfer Fcn] x = 1 u s” + a.s’ + b 140 M. Becker 2008 SOLVERS: Modelagem de Sistemas Contínuos Simples exemplo_02: executando a simulação... 141 Idêntico ao modelo anterior... M. Becker 2008 SUMÁRIO � � 142 M. Becker 2008 MODELOS: Menus de Modelos do Simulink Ícones relativos a procura de erros, visualização de modelos grandes, etc.: grandes, etc.: 143 M. Becker 2008 MODELOS: Menus de Modelos do Simulink [Print]: Impressão 144 M. Becker 2008 MODELOS: Menus de Modelos do Simulink [Simulation Mode]: configura a velocidade de simulação 145 M. Becker 2008 MODELOS: Menus de Modelos do Simulink [Toggle Model Browser]: ativa / desativa a janela “browser” que permite visualizar o detalhamento do modelo 146 M. Becker 2008 MODELOS: Menus de Modelos do Simulink [Debug]: depura o diagrama a procura de erros 147 M. Becker 2008 MODELOS: Propriedades dos Modelos No menu [File], a opção [Model properties] mostra a janela de propriedades do modelo composta por 4 pastas: 148 MODELOS: Propriedades dos Modelos [Model properties], pasta [Main]: informações principais 149 MODELOS: Propriedades dos Modelos ... pasta [Callbacks]: chamada de funções ou m.files em pontos específicos da execução da simulação do modelo...simulação do modelo... 150 MODELOS: Propriedades dos Modelos [Callbacks]: salve o tutorial_13 como tutorial_14 151 MODELOS: Propriedades dos Modelos [Callbacks] - tutorial_14: para testar o modelo com dados diferentes, ao invés de alterar os parâmetros de cada bloco, pode- se configurar esses parâmetros com nomes de variáveisse configurar esses parâmetros com nomes de variáveis Dessa forma, vamos definir 3 variáveis: Massa – massa do bloco Coef_k – coeficiente de rigidez da mola Coef_b – coeficiente de amortecimento do amortecedor Configure os blocos [Gain] com essas variáveis... 152 M. Becker 2008 MODELOS: Propriedades dos Modelos [Callbacks] - tutorial_14: assim... 153 M. Becker 2008 MODELOS: Propriedades dos Modelos [Callbacks] - tutorial_14: Para definir os valores das 3 variáveis, podemos criar um “m.file” no MatLab e configurá-lo em um dos campos da pasta [Callbacks]. Assim:Assim: 1º arquivo: tutorial14_inic que chama uma interface gráfica para permitir ao usuário fornecer os dados 2º arquivo: tutorial14_dados que é uma callback function da tutorial14_inic que cria as variáveis desejadas (Massa, Coef_k e Coef_b) a partir dos dados fornecidos na janela exibida pela tutorial_14_inic. 154 M. Becker 2008 MODELOS: Propriedades dos Modelos [Callbacks] - tutorial_14: 1º arquivo Ele é criado pelo comando GUIDE do MatLab e contém uma chamada para a função / m-file “tutorial14_dados.m” chamada para a função / m-file “tutorial14_dados.m” 155 M. Becker 2008 MODELOS: Propriedades dos Modelos [Callbacks] - tutorial_14: 2º arquivo “tutorial14_dados.m” 156 M. Becker 2008 MODELOS: Propriedades dos Modelos [Callbacks] - tutorial_14: para fazer com que a função “tutorial14_inic” seja chamada quando o modelo é carregado: • Configure a opção [Model pre-load function] do modelo: Menu pop-up [File], item [Model Properties], [Callbacks]... 157 M. Becker 2008 MODELOS: Propriedades dos Modelos [Callbacks] - tutorial_14: Execute o modelo. Caso as variáveis Coef_k, Coef_b e Massa não tenham sido declarados no MatLab, aparecerá uma janela de erro...aparecerá uma janela de erro... Para corrigir esse erro... 158 M. Becker 2008 MODELOS: Propriedades dos Modelos [Callbacks] - tutorial_14: • Configure a opção [Model pre-load function] do modelo:• Configure a opção [Model pre-load function] do modelo: Menu pop-up [File], item [Model Properties], [Callbacks]... 159 M. Becker 2008 MODELOS: Propriedades dos Modelos [Callbacks] - tutorial_14: • Configure a opção [Model Initialization function] do modelo:• Configure a opção [Model Initialization function] do modelo: Menu pop-up [File], item [Model Properties], [Callbacks]... 160 M. Becker 2008 MODELOS: Propriedades dos Modelos [Callbacks] - tutorial_14: • Configure a opção [Simulation Start function] do modelo:• Configure a opção [Simulation Start function] do modelo: Menu pop-up [File], item [Model Properties], [Callbacks]... 161 M. Becker 2008 MODELOS: Propriedades dos Modelos [Callbacks] - tutorial_14: quando o modelo é executado, o Simulink automaticamente utiliza os dados iniciais para a 1ª simulação. Os dados inseridos no modelo através da interface GUI simulação. Os dados inseridos no modelo através da interface GUI serão empregados nas simulações seguintes... 162 MODELOS: Propriedades dos Modelos [Callbacks] - tutorial_14: Assim... 163 M. Becker 2008 MODELOS: Propriedades dos Modelos [Callbacks] - tutorial_14: Assim... 164 M. Becker 2008 MODELOS: Propriedades dos Modelos [Callbacks] - tutorial_14: Assim... 165 M. Becker 2008 MODELOS: Propriedades dos Modelos [Callbacks] - tutorial_14: Assim... 166 M. Becker 2008 MODELOS: Propriedades dos Modelos [Callbacks] - tutorial_14b: salve o tutorial_14 como tutorial_14b e insira 2 blocos [To Workspace], configurando-os para exportarem os dados em formato tipo “Array”.os dados em formato tipo “Array”. 167 MODELOS: Propriedades dos Modelos [Callbacks] - tutorial_14b: • Configure a opção [Simulation Stop function] do modelo:• Configure a opção [Simulation Stop function] do modelo: Menu pop-up [File], item [Model Properties], [Callbacks]... 168 M. Becker 2008 MODELOS: Propriedades dos Modelos [Callbacks] - tutorial_14b: o arquivo m-file: tutorial14_final... 169 M. Becker 2008 MODELOS: Propriedades dos Modelos [Callbacks] - tutorial_14b: o arquivo m-file: tutorial14_final... 170 M. Becker 2008 MODELOS: Propriedades dos Modelos [Callbacks] - tutorial_14b: Assim... 171 M. Becker 2008 MODELOS: Propriedades dos Modelos ... pasta [History]: permite registrar e exibir o histórico do modelo... 172 M. Becker 2008 MODELOS: Propriedades dos Modelos ... pasta [Description]: permite registraruma descrição do modelo... 173 M. Becker 2008 SUBSISTEMAS: Introdução Um conjunto de blocos pode ser agrupado, gerando um bloco único denominado subsistema. Isso é útil para:bloco único denominado subsistema. Isso é útil para: 1. Reduzir o número de blocos exibidos na janela do modelo, simplificando a sua visualização; 2. Agrupar um conjunto de blocos relacionados por funcionalidade; 3. Criar uma hierarquia de diagrama de blocos para modelos mais complexos 174 M. Becker 2008 SUBSISTEMAS: Criar o tutorial_15 a partir do tutorial_10 1. Abra o modelo tutorial_10 e salve-o como tutorial_15; 2. Crie um subsistema composto pelos blocos incluídos no retângulo em evidência na figura abaixo...retângulo em evidência na figura abaixo... 175 M. Becker 2008 SUBSISTEMAS: tutorial_15: 3. Selecione a área demarcada na figura anterior com o mouse;mouse; 4. No menu pop-up [Edit] selecione a opção [Create Subsystem]; 5. Todos os blocos selecionados são substituídos por um único bloco [Subsystem]... 176 M. Becker 2008 SUBSISTEMAS: tutorial_15: 6. Para visualizar os blocos de subsistema, basta dar um duplo- clique no bloco [Subsystem] 177 M. Becker 2008 SUBSISTEMAS: tutorial_15: 7. A organização dos subsistemas de um modelo pode ser visualizada ativando a opção [Model Browser] no menu pop- up [View]up [View] 178 M. Becker 2008 MÁSCARAS: Introdução O Simulink permite definir uma janela para interface para os subsistemas chamada máscara (mask). Essa janela permite: para os subsistemas chamada máscara (mask). Essa janela permite: 1. Criar uma janela de interface; 2. Definir os parâmetros de entrada para o subsistema; 3. Criar um ícone especial para o subsistema; 4. Definir a função de inicialização. 179 M. Becker 2008 MÁSCARAS: Introdução O Simulink permite definir uma janela para interface para os subsistemas chamada máscara (mask). Essa janela permite: para os subsistemas chamada máscara (mask). Essa janela permite: 1.1. Criar uma janela de interface;Criar uma janela de interface; 2.2. Definir os parâmetros de entrada para o subsistema;Definir os parâmetros de entrada para o subsistema; 3. Criar um ícone especial para o subsistema; 4. Definir a função de inicialização. 180 M. Becker 2008 MÁSCARAS: Criar o tutorial_16 a partir do tutorial_15: 1. Abra o modelo tutorial_15 e salve- o como tutorial_16;o como tutorial_16; 2. Selecione o bloco [Subsystem] que nomeamos como “Dados de Entrada”, clique com o botão direito do mouse para abrir o menu flutuante de edição e selecione a opção [Mask subsystem]. 181 M. Becker 2008 MÁSCARAS: tutorial_16: 3. Selecione a pasta [Parameters] para definir os parâmetros de entrada. 182 MÁSCARAS: tutorial_16: Os parâmetros de entrada são: – S0: valor inicial;– S0: valor inicial; – K1: constante real 1; – K2: constante real 2 – NS: número de seqüências 4. Clique no botão [Add] para adicionar os parâmetros de entrada... 183 M. Becker 2008 MÁSCARAS: tutorial_16: Deve-se fornecer: – [Prompt]: texto de chamada– [Prompt]: texto de chamada – [Variable]: nome da variável – [Type]: tipo de entrada de variável – [Edit]: caixa de edição de texto – [Checkbox]: opção ativa / desativa – [Pop-up]: lista de seleção 5. Crie os 4 parâmetros com as seguintes propriedades... 184 M. Becker 2008 MÁSCARAS: tutorial_16: Prompt Variable Type Valor Inicial S0 edit 6. Clique OK para fechar a janela... 185 Valor Inicial S0 edit Constante Real K1 K1 edit Constante Real K2 K2 edit Número de Seqüências NS edit M. Becker 2008 MÁSCARAS: tutorial_16: Assim... 186 M. Becker 2008 MÁSCARAS: tutorial_16: 7. Com a máscara, um duplo clique no bloco [Subsystem] abre a janela de parâmetros.parâmetros. 8. Clique com botão direito do mouse no bloco [Subsystem] e selecione a opção [Look under Mask]. Essa opção abrirá uma nova janela contendo o diagrama do subsistema 187 M. Becker 2008 MÁSCARAS: tutorial_16: 9. No diagrama do subsistema, configure os blocos com os nomes das variáveis criadas na máscara 188 M. Becker 2008 MÁSCARAS: tutorial_16: Assim... 189 M. Becker 2008 MÁSCARAS: tutorial_16: 10. Feche o subsistema e dê um duplo clique no bloco [Subsystem] para configurar os parâmetros com os valores indicados... 190 M. Becker 2008 MÁSCARAS: tutorial_16: Execute a simulação... 191 M. Becker 2008 MÁSCARAS: Introdução O Simulink permite definir uma janela para interface para os subsistemas chamada máscara (mask). Essa janela permite: para os subsistemas chamada máscara (mask). Essa janela permite: 1. Criar uma janela de interface; 2. Definir os parâmetros de entrada para o subsistema; 3.3. Criar um ícone especial para o subsistema;Criar um ícone especial para o subsistema; 4. Definir a função de inicialização. 192 M. Becker 2008 MÁSCARAS: Criar o tutorial_17 a partir do tutorial_16: 1. Abra o modelo tutorial_16 e salve-o como tutorial_17; 2. Clique no bloco [Subsystem] com o botão direito do mouse para abrir o menu flutuante de edição e selecione a opção [Edit Mask] para abrir a janela [Mask Editor]. para abrir o menu flutuante de edição e selecione a opção [Edit Mask] para abrir a janela [Mask Editor]. 193 M. Becker 2008 MÁSCARAS: tutorial_17 : 3. O campo [Drawing Commands] da pasta [Icon] aceita comandos para criar ícones para subsistemas. O campo [Examples of drawing Commands] fornece a descrição da [Examples of drawing Commands] fornece a descrição da sintaxe desses comandos 194 M. Becker 2008 MÁSCARAS: tutorial_17 : 4. Usar a função “plot” no campo [Drawing Commands]. Digite ‘plot([0 1 2 3],[1 1.5 4 4.5])’ e clique [Apply] 195 M. Becker 2008 MÁSCARAS: tutorial_18 : [Show part labels] habilita / desabilita a exibição de labels em blocos de subsistemas 1. Abra o modelo tutorial_17 e salve-o como tutorial_18; 2. Limpe a formatação feita anteriormente no campo [Drawing2. Limpe a formatação feita anteriormente no campo [Drawing Commands] da janela [Mask Editor]. 196 M. Becker 2008 MÁSCARAS: tutorial_18 : 3. Selecione com o mouse o bloco [SubSystem] e clique no menu pop-up [Edit] e selecione a opção [Subsystemopção [Subsystem Parameters...] 197 M. Becker 2008 MÁSCARAS: tutorial_18 : 4. No item [Parameters] selecione em [Show port labels] a opção [none] 198 M. Becker 2008 DEPURAÇÃO DE MODELOS: [Simulink debugger]: disponibiliza recursos para auxiliar a localização e diagnóstico de erros em modelos. 1. Configuração de breakpoints; 2. Simulação passo-a-passo;2. Simulação passo-a-passo; 3. Monitoramento de sinais de entrada e saída. Pode ser acionado no menu pop-up [Tools] do modelo Simulink que abre a janela [Simulink debugger] 199 M. Becker 2008 DEPURAÇÃO DE MODELOS: [Simulink debugger]: 200 M. Becker 2008 DEPURAÇÃO DE MODELOS: [Simulink debugger]: Os comandos estão disponíveis nos ícones da barra de ferramentasferramentas 201 M. Becker 2008 DEPURAÇÃO DE MODELOS: [Simulink debugger]: Comandos que permitem o avanço da execução da simulação para próximos passos, blocos, métodos, etc.para próximos passos, blocos, métodos, etc. Ficam habilitadas apenas durante a execução da simulação 202 M. Becker 2008 DEPURAÇÃO DE MODELOS: [Simulink debugger]: Comandos que permitem iniciar, pausar e finalizar a execução da simulação.simulação. Pausar e finalizar a simulação são habilitadas apenas durante a execução da simulação 203 M. Becker 2008 DEPURAÇÃO DE MODELOS: [Simulink debugger]: Comandos que permitem mostrar ou não dados I/O de blocos selecionados e parar a simulação em um bloco selecionado.selecionados e parar a simulação em um bloco selecionado. 204 M. Becker 2008 DEPURAÇÃO DE MODELOS: [Simulink debugger]: Comandos que permitem alterar parâmetros de animação. Habilitar ou Desabilitar a animação da simulação é possível apenas durante a execução da simulação 205 M. Becker 2008 DEPURAÇÃO DE MODELOS: [Simulink debugger]: Exemplo 1. Nomodelo tutorial_18, abra a janela do [Simulink debugger] e selecione o bloco [Sum]; 2. Clique no ícone para configurar um breakpoint; 3. Clique no ícone para habilitar a exibição dos sinais de entrada e saída do bloco; 4. O bloco [Sum] aparecerá na área [Break/Display points] 206 M. Becker 2008 DEPURAÇÃO DE MODELOS: [Simulink debugger]: Assim... 207 M. Becker 2008 DEPURAÇÃO DE MODELOS: [Simulink debugger]: Exemplo 5. Clique no ícone para iniciar o processo de Debug; 208 DEPURAÇÃO DE MODELOS: [Simulink debugger]: Exemplo 6. Observa-se que: • O modelo é executado até o breakpoint (um passo antes da 1ª passagem pelo bloco [Sum]);passagem pelo bloco [Sum]); 209 M. Becker 2008 DEPURAÇÃO DE MODELOS: [Simulink debugger]: Exemplo 6. Observa-se que: • A pasta [Outputs] exibe as mensagens do sistema apresentadas durante a execução e os valores dos sinais de entrada e saída;durante a execução e os valores dos sinais de entrada e saída; 210 M. Becker 2008 DEPURAÇÃO DE MODELOS: [Simulink debugger]: Exemplo 6. Observa-se que: • A pasta [Sorted List] exibe a ordem de execução dos blocos durante a simulação;simulação; 211 M. Becker 2008 DEPURAÇÃO DE MODELOS: [Simulink debugger]: Exemplo 6. Observa-se que: • A pasta [Status] exibe informações do sistema e da simulação, p.e.: tempo de simulação, status, etc.tempo de simulação, status, etc. 212 M. Becker 2008 DEPURAÇÃO DE MODELOS: [Simulink debugger]: Exemplo 7. Clique no ícone para avançar a execução para o próximo bloco 213 M. Becker 2008 DEPURAÇÃO DE MODELOS: [Simulink debugger]: Exemplo 8. Elemime o breakpoint clicando no botão [Remove selected point] e configure [Break at time] com valor “4”; 9. Clique no ícone para fazer a simulação prosseguir até o instante “4”; 10. Observe o gráfico de [Scope]... 214 M. Becker 2008 DEPURAÇÃO DE MODELOS: [Simulink debugger]: Exemplo 215 M. Becker 2008 DEPURAÇÃO DE MODELOS: [Simulink debugger]: Exemplo 216 M. Becker 2008 SUMÁRIO � � 217 M. Becker 2008 SIMULINK E MATLAB: Troca de Dados A troca de dados entre MatLab e Simulink é realizada através de 4 blocos:blocos: No item [Sources]: [From Workspace]: traz o conteúdo de uma variável do workspace do MatLab para o Simulink [From File]: traz o conteúdo de um arquivo *.mat para o Simulink No item [Sinks]: [To workspace]: exporta o conteúdo de um sinal para uma variável no workspace do MatLab [To File]: exporta o conteúdo de um sinal para um arquivo *.mat 218 M. Becker 2008 SIMULINK E MATLAB: [tutorial_19]: troca de dados entre o MatLab e Simulink. Baseado no tutorial_10, vamos modificar a geração de números aleatórios. 1. Salve o tutorial_10 como tutorial_19, delete os dois blocos [Random Number], substituindo-os pelos blocos [From Workspace] [Random Number], substituindo-os pelos blocos [From Workspace] e [From File], conforme a figura abaixo. 219 SIMULINK E MATLAB: [tutorial_19]: 2. Configure os parâmetros de simulação como: [Start time]: “0.0”; [Stop time]: “10.0”; [Solver Options]: “fixed-step”;[Solver Options]: “fixed-step”; [Fixed step size]: “1”. 3. Configure o bloco [From Workspace] para receber os dados da variável “entrada1” que deve ser previamente armazenada no workspace do MatLab. 220 M. Becker 2008 SIMULINK E MATLAB: [tutorial_19]: 4. Conferindo o Array no MatLab: 221 M. Becker 2008 SIMULINK E MATLAB: [tutorial_19]: 5. Gere os dados da variável “entrada1” no workspace do MatLab, com o seguinte formato: • A primeira coluna contém o vetor de tempo; • As demais colunas contêm os valores dos dados para cada instante de • As demais colunas contêm os valores dos dados para cada instante de tempo • Nesse caso, “entrada1” deve ser uma matriz 11x11: o Vetor tempo: [0 1 2 3 4 5 6 7 8 9 10] o Os dados são 11 seqüências de 10 números aleatórios • No MatLab: 222 M. Becker 2008 SIMULINK E MATLAB: [tutorial_19]: 6. Para criar automaticamente a variável “entrada1” no MatLab, reescreva os comandos do MatLab no item [Model pre-load function] da pasta [Callback] da janela [Model Properties] do menu pop-up [File]pop-up [File] 223 SIMULINK E MATLAB: [tutorial_19]: 7. Configure o bloco [From File] para receber os dados do arquivo “entrada2.mat”, que deve estar previamente armazenado em disco (no mesmo diretório de trabalho). Caso esse arquivo não exista, o Simulink retorna uma mensagem de erro...Simulink retorna uma mensagem de erro... 224 SIMULINK E MATLAB: [tutorial_19]: 8. Para gerar o arquivo “entrada2.mat” deve-se ter em mente que o mesmo deve ter as seguintes características: • A primeira linha contém o vetor de tempo; • As demais linhas contêm os valores dos dados para cada instante de tempo • As demais linhas contêm os valores dos dados para cada instante de tempo • Nesse caso, “entrada2.mat” deve ser uma matriz 11x11: o Vetor tempo: [0 1 2 3 4 5 6 7 8 9 10] o Os dados são 11 seqüências de 10 números aleatórios • No MatLab: 225 SIMULINK E MATLAB: [tutorial_19]: 9. Conferindo o Array no MatLab: 226 M. Becker 2008 SIMULINK E MATLAB: [tutorial_19]: 10. Configure o bloco [To File] para armazenar os dados em uma variável chamada “saída” e gravá- la em um arquivo chamado “saida.mat”. Esse arquivo tem as “saida.mat”. Esse arquivo tem as seguintes características: • A 1ª linha contém o vetor de tempo; • As demais linhas contêm os valores dos dados para cada instante de tempo. 11. Execute a simulação... 227 M. Becker 2008 SIMULINK E MATLAB: [tutorial_19]: Assim... 228 M. Becker 2008 SIMULINK E MATLAB: [tutorial_19]: 12. Para visualizar os dados no MatLab: 229 M. Becker 2008 SIMULINK E MATLAB: Execução de Funções do MatLab No item [User-defined functions] do [Library Browse] tem-se 6 blocos que permitem executar funções do MatLab dentro do Simulink. As 4 mais importantes são: • [Fcn]: executa uma expressão genérica do MatLab. Utiliza a variável “u” como parâmetro de entrada; • [S-Function]: executa uma s-function; • [S-Function Builder]: utilitário que auxilia a construção de s- functions ; • [MATLAB Fcn]: aplica uma função ou expressão do MatLab como sinal de entrada no Simulink. 230 M. Becker 2008 SIMULINK E MATLAB: Execução de Funções do MatLab 231 M. Becker 2008 SIMULINK E MATLAB: Bloco [Fcn]: exemplo_03 Utiliza o bloco [Fcn] para implementar a função: f(u) = sin(u)*exp(0.2*u)f(u) = sin(u)*exp(0.2*u) O sinal de entrada é gerado pelo bloco [Ramp] localizado no item [Sources]. Este bloco gera uma seqüência de números N(t) = n0*S(t) Sendo: n0 o número inicial e S a inclinação da rampa (slope). 232 M. Becker 2008 SIMULINK E MATLAB: Bloco [Fcn]: exemplo_03 Assim... 233 M. Becker 2008 SIMULINK E MATLAB: Bloco [Fcn]: exemplo_04 Utiliza o bloco [Fcn] para implementar a função: f(u) = u(1) + u(2)f(u) = u(1) + u(2) O sinal de entrada é um sinal com 2 canais. Ele é gerado por um bloco [Random Number] configurado com parâmetro: [Initial Seed] = “fix(1000*rand(1,2))” 234 M. Becker 2008 SIMULINK E MATLAB: Bloco [Fcn]: exemplo_04 Assim: 235 M. Becker 2008 SIMULINK E MATLAB: Bloco [MATLAB Fcn]: exemplo_05 Esse bloco é empregado para implementar uma PG com valor inicial A0 = 3 e razão Q = 2, codificada no “m-file” ‘pg_A0_3_Q_2.m’. A função é codificada em um “m-file” que recebe um dado de entrada A função é codificada em um “m-file” que recebe um dado de entrada e retorna um dado de saída para cada instante da simulação 236 M. Becker 2008 SIMULINK E MATLAB: Bloco [MATLAB Fcn]: exemplo_05 Assim... 237 M. Becker 2008 SIMULINK E MATLAB: Bloco [MATLAB Fcn]: exemplo_05 O gráfico: 238 M. Becker 2008 SIMULINK E MATLAB: Bloco [S-Function] É a implementação de um bloco do Simulink em linguagem de programação. Podem ser codificadas em: • “m-file”, ou seja, a linguagem de programação do MatLab;• “m-file”, ou seja, a linguagem de programação do MatLab; • C/C++; • Fortran; • ADA.Vamos focar apenas aplicações em “m-file”... O uso de s-functions expande enormemente os recursos do Simulink, pois com ela é possível modelar qualquer sistema dinâmico, “customizando” o modelo. 239 M. Becker 2008 SIMULINK E MATLAB: Bloco [S-Function] De modo simplificado, uma s-function implementa os estágios de simulação de um bloco: • Conjunto de dados de entrada; • Conjunto de dados de saída; • Conjunto de estados. 240 x (estados) u (entrada) y (saída) M. Becker 2008 SIMULINK E MATLAB: Bloco [S-Function]: Limited integrator Função ‘Limited integrator’ localizado no item [S-function Examples], subitem [M-files], subsubitem [Level 1 M-files]. 241 M. Becker 2008 SIMULINK E MATLAB: Bloco [S-Function]: Limited integrator Função ‘Limited integrator’ localizado no item [S-function Examples], subitem [M-files], subsubitem [Level 1 M-files]. 242 M. Becker 2008 SIMULINK E MATLAB: Bloco [S-Function]: Limited integrator Este modelo implementa um Integrador limitado por parâmetros fornecidos pelo usuário.fornecidos pelo usuário. O bloco [S-Function] está “mascarado” e espera 3 parâmetros de entrada: • lb: lower band • ub: upper band • xi: initial condition 243 M. Becker 2008 SIMULINK E MATLAB: Bloco [S-Function]: Limited integrator 244 M. Becker 2008 SIMULINK E MATLAB: Bloco [S-Function]: Limited integrator Para visualizar a listagem do programa, dê um duplo clique na caixa de texto destacada pela seta... 245 M. Becker 2008 SIMULINK E MATLAB: Bloco [S-Function]: Limited integrator Assim... 246 M. Becker 2008 SIMULINK E MATLAB: Bloco [S-Function]: Limited integrator Cont... 247 M. Becker 2008 SIMULINK E MATLAB: Bloco [S-Function]: Limited integrator Cont... 248 M. Becker 2008 SIMULINK E MATLAB: Bloco [S-Function]: Limited integrator Cont... 249 Estabelece o valor inicial M. Becker 2008 SIMULINK E MATLAB: Bloco [S-Function]: Limited integrator Cont... Aqui são implementadas 250 Aqui são implementadas as condições de corte de- finidas pelos parâmetros lb e ub. Se o valor estiver fora dos limites, a fç retor- na o valor “0”, senão, o próprio valor. M. Becker 2008 SIMULINK E MATLAB: Bloco [S-Function]: Limited integrator Final... 251 M. Becker 2008 SIMULINK E MATLAB: Bloco [S-Function]: Limited integrator Executando a função para limites [-0.5, 0.5]... 252 M. Becker 2008 SIMULINK E MATLAB: Bloco [S-Function Builder] É um utilitário que auxilia a construção de s-functions 253 M. Becker 2008 SIMULINK E MATLAB: Bloco [S-Function Builder] 254 M. Becker 2008 SUMÁRIO � � 255 M. Becker 2008 BIBLIOTECAS DE BLOCOS: Bibliotecas disponíveis na janela [Simulink Library Browser] 256 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Continuous]: 257 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Continuous]: Exemplo_06 258 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Discontinuities]: 259 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Discontinuities]: Exemplo_07 260 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Discrete] 261 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Discrete]: Exemplo_08 262 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Lookup Tables] 263 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Lookup Tables]: Exemplo_09 0 1 2 3 4 5 264 0 1 2 3 4 5 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Lookup Tables]: Exemplo_10 265 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Math Operations] 266 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Math Operations]: Exemplo_11 267 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Math Operations]: Exemplo_12 268 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Math Operations]: Exemplo_13 269 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Math Operations]: Exemplo_14 270 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Model Verification] 271 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Model Verification]: Exemplo_15 272 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Model Verification]: Exemplo_15 273 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Signal Attributes] 274 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Signal Attributes ]: Exemplo_16 275 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Signal Routing] 276 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Signal Routing ]: Exemplo_17 277 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Sinks] 278 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Sinks]: Exemplo_18 279 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Sinks]: Exemplo_18 280 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Sinks]: Exemplo_18 281 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Sources] 282 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Sources]: Exemplo_19 283 BIBLIOTECAS DE BLOCOS: [Sources]: Exemplo_19 284 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [User-Defined Functions] 285 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [User-Defined Functions]: Exemplo_04 286 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Logic and Bit Operations] 287 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Ports and Subsystems] 288 M. Becker 2008 BIBLIOTECAS DE BLOCOS: [Model-Wide Utilities ] 289 M. Becker 2008 SUMÁRIO � � 290 M. Becker 2008 EXERCÍCIOS: 1 – Elabore um diagrama que gere um sinal composto por 3 harmônicos com freqüências diferentes que seguem a seguinte equação: S(t) = 4*sin(5*t) – cos(20*t) + sin(50*t) 291 M. Becker 2008 EXERCÍCIOS: 2 – Elabore um diagrama que gere um sinal composto por 2 harmônicos com freqüências diferentes que seguem a seguinte equação: S(t) = 4*sin(5*t) – cos(20*t) Acrescente um atraso de 1 unidade de tempo no primeiro harmônico (4*sin(5*t)) Acrescente um atraso de 1 unidade de tempo no primeiro harmônico (4*sin(5*t)) 292 M. Becker 2008 EXERCÍCIOS: 2 – 293 M. Becker 2008 EXERCÍCIOS: 3 – Elabore um diagrama que implemente a PG com as seguintes características: • Valor inicial G0 = 3• Valor inicial G0 = 3 • Razão = 2 • Seqüência da PG: GN = GN-1 * Q, para N > 0 e Razão Q • Fórmula Geral da PG: GN = G0 * Q (N-1), para N > 0 e Razão Q 294 M. Becker 2008 EXERCÍCIOS: 3 – 295 M. Becker 2008 EXERCÍCIOS: 4 – Construa um diagrama que implemente o sorteio de um número entre 1 e n, sendo n um parâmetro de entrada: • Sugestões: crie um subsistema com máscara para criar o parâmetro de entrada n; utiliza o bloco [Scope] para exibir o resultado do sorteio; utilize o bloco [Uniform Random Number] para gerar os números aleatórios; utilize o bloco [MATLAB Fcn] para obter um número entre 1 e n; e o bloco [Unit Delay] para controlar a velocidade de sorteio. 296 M. Becker 2008 EXERCÍCIOS: 4 – 297 M. Becker 2008 EXERCÍCIOS: 5 – Construa um diagrama que modele um corpo em queda livre e em salto “bungie-jump” (semelhante ao tutorial_18.mdl) utilizando o bloco [Transfer Fcn]. • queda livre: y” = g; • bungie-jump: y” = g – k/m * y – b/m * y’. 298 M. Becker 2008 EXERCÍCIOS: 5 – 299 M. Becker 2008 EXERCÍCIOS: 6 – Crie um subsistema e uma máscara para o modelo criado no exercício anterior. 300 M. Becker 2008 EXERCÍCIOS: 7 – Acrescente um bloco [S-Function] ao modelo criado no exercício 6 para implementar a animação do corpo em queda. Sugestão: utilize o bloco [Unit Delay] para controlar a velocidade de animação 301 M. Becker 2008 EXERCÍCIOS: 8 – Exemplo de Aplicação de Simulink em Controle (Capítulo 11 – Dorf and Bishop, 11ª Ed., p. 795) Um sistema de teste e inspeção automático utiliza um motor DC com encoder para mover a mesa (figuras nos próximos slides) e medir o deslocamento e velocidade. próximos slides) e medir o deslocamento e velocidade. As variáveis de estado selecionadas são: E, as variáveis de controle: 302 x1= θ, x2= dθ/dt e x3= if u = [-K1 -K2 -K3 ]x + r → u = -K1x1 -K2x2 -K3x3 + r M. Becker 2008 EXERCÍCIOS: 8 – Cont... Sistema de Inspeção Automático 303 M. Becker 2008 EXERCÍCIOS: 8 – Cont... Detalhe do Motor DC 304 M. Becker 2008 EXERCÍCIOS: 8 – Cont...Malha Aberta do Sistema 305 x1= θ, x2= dθ/dt e x3= if M. Becker 2008 EXERCÍCIOS: 8 – Cont... Malha Fechada do Sistema 306 M. Becker 2008 EXERCÍCIOS: 8 – Cont... Root Locus – Lugar das Raízes do Sistema 307 M. Becker 2008 EXERCÍCIOS: 8 – Cont... Resposta a uma entrada Degrau. 308 M. Becker 2008 EXERCÍCIOS: 9 – Exemplo de Aplicação de Simulink em Controle (Capítulo 11 – Dorf and Bishop, 11ª Ed., p. 798) Uma locomotiva diesel-elétrica é mostrada na figura da próximo slide. A eficiência do motor a combustão interna diesel é muito sensível às velocidades de interna diesel é muito sensível às velocidades de rotação dos motores elétricos. Deseja-se desenvolver um controlador para os motores elétricos que permita o emprego dessa locomotiva em trens. A locomotiva é acionada por motores elétricos DC localizados em cada um de seus eixos. Deseja-se controlar a rotação ω0 para um dado valor de ωr. 309 M. Becker 2008 EXERCÍCIOS: 9 – Cont... Esquema da locomotiva. 310 EXERCÍCIOS: 9 – Cont... Parâmetros para Simulação. Km Kg Kb J b La Ra Rf Lf Kt Kpot Lg Rg 10 100 0.62 1 1 0.2 1 1 0.1 1 1 0.1 1 311 10 100 0.62 1 1 0.2 1 1 0.1 1 1 0.1 1 M. Becker 2008 EXERCÍCIOS: 9 – Cont... Exemplo do processo de projeto de sistema de controle 312 EXERCÍCIOS: 9 – Cont. Fluxo de Sinais do Controlador 313 Diagrama de Blocos do Controlador EXERCÍCIOS: 9 – Cont... Diagrama de Blocos da Locomotiva 314 M. Becker 2008 EXERCÍCIOS: 9 – Cont... Localização dos Polos desejada 315 M. Becker 2008 9 – Cont... EXERCÍCIOS: R e s p o s ta d o S is te m a e m M a lh a F e c h a d a a u m a e n tr a d a d e g ra u s 316 R e s p o s ta d o S is te m a e m M a lh a F e c h a d a a u m a e n tr a d a d e g ra u s
Compartilhar