Finite State Machine (FSM) usando Stateflow-MATLAB. Prof. Juan Mauricio Villanueva

Documentos relacionados
ET7DE - Instrumentação Virtual. Prof. Winderson Introdução ao LabVIEW

Introdução ao Matlab

Utilizando o Real-Time Windows Target do Simulink

CENTRO UNIVERSITÁRIO DA FEI MR Simulação de Processos em Eng. de Materiais. Aula 7. Simulink

Programação em Linguagem C

Oficina de Integração 2 Métodos de representação (Introdução) Prof. César M.V. Benítez 2018b

NÍVEL BÁSICO CAPÍTULO V

Instrumentação Virtual Estruturas Sequenciais Estruturas de Dados Estruturas de Repetição. Prof. Dr. Eduardo G. Bertogna DAELN-CM/UTFPR

GTSC: Geração Automática de Casos de Teste Baseada em Statecharts

Simulação de Sistemas Dinâmicos Lineares Visão Geral do Simulink

DHCPv6 usando o exemplo de configuração da característica da delegação do prefixo

CIRCUITOS SEQUENCIAIS (Unidade 5)

Circuitos sequenciais Adaptado dos transparentes das autoras do livro The Essentials of Computer Organization and Architecture

Minicurso de MATLAB. Programa de Educação Tutorial de Engenharia Elétrica. Max Rodrigues Caroline Pereira Nayara Medeiros

Exemplo da configuração de HSRP do IPv6

Power Estimation FPGA ASIC

Roteiro do 3º Experimento: Programação do CLP Siemens S7-1200

EELi02. Prof. Vinícius Valamiel

PCS3225. Sistemas Digitais II. Biestáveis em VHDL. Biestáveis em VHDL. Marcos A. Simplicio Jr.

Unidade de Controle Remoto Sem Fio RCONTR05A

2 Descrição da Unidade de Levitação Magnética e Sistema de Controle

Introdução ao IDE Netbeans (Programação Java)

Especificação, Modelação e Projecto de Sistemas Embutidos

Universidade Federal de Minas Gerais Escola de Engenharia Departamento de Engenharia Eletrônica Laboratório de Informática Industrial

1 - Ambiente de desenvolvimento

Laboratório de Eletrônica Digital Tutorial Quartus II (Procedimentos para Criação e Simulação de Projetos Digitais)

INF1013 MODELAGEM DE SOFTWARE

Guia o MultiSim 2001

Método dos Elementos Finitos Aplicado à Engenharia de Estruturas Página 1

364 SISTEMAS DIGITAIS

Sistema de Inferência Fuzzy. Prof. Juan Mauricio Villanueva

O Grafcet e a programação de lógica seqüencial em CLPs

Tutorial para utilização da placa dspace 1103 e o software ControlDesk 3.7

Manual de operação motorista de ônibus SC600 REVO GLOBAL

Fundamentos de Sistemas Operacionais

Universidade Federal de Minas Gerais Laboratório de Controle e Automação I Prof. Patrícia N. Pena - DELT Twin Rotor MIMO System (TRMS)

FTD: Como permitir a configuração do desvio do estado TCP usando a política de FlexConfig

Modelação de circuitos síncronos

Manual de instalação do SQL 2012

Começando com o AWS IoT

Aula 10 - Introdução aos circuitos sequenciais

INSTITUTO TECNOLÓGICO DE AERONÁUTICA DIVISÃO DE ENGENHARIA MECÂNICA-AERONÁUTICA. MPS 43 Sistemas e Controle

Universidade Federal de Santa Catarina Centro Tecnológico Departamento de Informática e Estatística Curso de Graduação em Ciências da Computação

Fundamentos Programação

TUTORIAL DE INSTALAÇÃO E USO DO OWL-S COMPOSER utilizando o Eclipse Galileo Modelling Tools

Plantas servo de movimento linear e rotatório

Laboratório 1 Topologias de Rede / Utilizando o Packet Tracer

Etapa 2 Criando e executando uma simulação no Arena 14.7

Unidade de Controle Remoto sem Fio TCONTRM01WA

Tarefa Orientada 9 Base de Dados Pagamentos

Universidade do Minho

Control Design and Simulation

Introdução a Sistemas Digitais

Tutorial de uso do JbreadBoard

Tutorial do 2º Experimento: Programação do CLP Siemens S7-1200

DataPath II Tomando o controle!

Fabricantes de Equipamento Deteção de Incêndio GFE-TCP-ODY INTERFACE DE COMUNICAÇÃO TCP/IP PARA BMS/ODYSSEY MANUAL DE CONFIGURAÇÃO. Versão 1.

Análise de Circuitos Sequënciais Máquinas de Mealy e Moore

Importar e Exportar Dados

KTC-DR34EC & KTC-KML093EC1000

Statecharts Yakindu Tool

Simulador de Processos EMSO

Horizon Press Guia Rápido

Tutorial - CoDeSys - Sequencial Function Chart (SFC)

SVMPC2. Manual do Usuário. Versão 1.2

EPUSP PCS 2011/2305/2355 Laboratório Digital. Frequencímetro

Redes de Petri. Prof. Juan Moises Mauricio Villanueva

Instituto Superior Técnico. Curso de LabVIEW. Pedro M. Ramos Parte I 14 de Outubro de 2004 IST/DEEC. O que é o LabVIEW?

TUTORIAL DE INSTALAÇÃO E USO DO OWL-S COMPOSER 3.0 utilizando o Eclipse Galileo Modelling Tools

Utilitário de configuração do computador Guia do usuário

LSCAD André Luiz junho ModelSim-Altera 6.6d

Arduino: primeiros passos para aprender e configurar.

Mensagens de advertência de tampa aberta. Função

Guia para criar aplicações simples em APEX/ Guide to create simple Apex applications (perte I)

Painel de Tráfego. iso. Manual de Instruções. IMPORTANTE Leia atentamente os itens deste manual antes de utilizar o programa. iso. Rev.

Introdução ao Max+Plus II

ANÁLISE DE SISTEMAS. Diagrama de atividades. por. Antônio Maurício Pitangueira

Autor: Tiago Lone Nível: Básico Criação: 24/03/2006 Última versão: 18/12/2006. PdP. Pesquisa e Desenvolvimento de Produtos

ASA 8.3(x): Conecte três redes internas com o exemplo de configuração do Internet

NOTAS DE AULA NE7720 SISTEMAS DIGITAIS - II AULA

Configurando MPLS Básicos Usando IS-IS

1 Criando um projeto. Instituto Federal do Paraná

Objetivos. Sistema Operativo em Ambiente Gráfico. Introdução às Tecnologias de Informação e Comunicação

Configurar o Concentradores Cisco VPN série 3000 para apoiar os recursos de expiração de senha de NT com o servidor Radius

Automatismos. Lino Marques. Versão de 15/02/2007. Automação Industrial. Lino Marques 2008

Redistribua redes conectadas no OSPF com palavras-chave de sub-rede

Lógica Reconfigurável

Introdução Começando Exemplos. Tutorial SCICOS. Resolvendo Problemas Simples. CP1 (

Guião do Trabalho Laboratorial Nº 4 Controlo PID de um Servomecanismo de Posição

Análise e Projeto de Circuitos Combinacionais e Sequenciais

INTRODUÇÃO AO ARDUINO DUE, CANAL DIGITAL, FUNÇÃO DELAY

Tutorial de Utilização do Software- Mini CLP FIT

Diagrama de Máquina de Estados

UTILIZANDO O CODE BLOCKS

Guião do Trabalho Laboratorial Nº 5 Modelação e Simulação de um Motor DC Através de Bond Graphs

Transcrição:

Finite State Machine (FSM) usando Stateflow-MATLAB Prof. Juan Mauricio Villanueva jmauricio@cear.ufpb.br www.cear.ufpb.br/juan 1

FSM Uma FSM é um modelo que descreve o comportamento de um número finito de estados, a transição entre estes estados e ações Estado: representa um modo de operação de una maquina, por exemplo, uma maquina de ar-condicionado com quatro estados off, low, medium e high. O estado on é omitido devido a que quando esta em on deve estar em um dos três estados: low, medium e high. 2

FSM Ação: descreve a atividade que deve ser realizada Entry action: se realiza quando se esta no estado Exit action: se realiza quando se finaliza o estado Transition action: se realiza durante uma transição Estado Finito: pode ser representada como um diagrama de estados ou uma tabla de transição de estados. 3

FSM Tabela de transição de estados para uma FSM Uma condição é uma expressão Boolean que pode ser verdadeira (1) ou falsa (0). 4

FSM Evento: É uma ação que pode disparar (trigger) uma variedade de atividades. Por exemplo: Um switch pode levar à transição de uma ocorrência entre o estado médio e alto. O event-driven-systems permite a transição de um modo de operação a outro em resposta a eventos e condições. 5

FSM usando Stateflow Procedimento para criar um modelo no simulink com stateflow 6

Exemplo: Se deseja usar dois ventiladores para climatizar um ambiente, com as seguintes condições: Deve existir um Switch para ligar/desligar o sistema composto pelos dois ventiladores Inicio do processo em t0 =0 seg Ligar o sistema aos t1 =10 seg Desligar o sistema aos t2 =290 seg Fim do processo em t3 =300 seg Operação do ventilador 1: Se temperatura<120, então desligado Se temperatura>=120, então ligado Operação do ventilador 2: Se temperatura<150, então desligado Se temperatura>=150, então ligado 7

Exemplo: Se deseja usar dois ventiladores para climatizar um ambiente, com as seguintes condições: Variáveis: temp = temperatura SWITCH = interruptor CLOCK = relógio do sistema Airflow = indicador que representa se os ventiladores estão funcionando 8

PASSO 1 9

Passo 1: Definir a interface para Abrir MATLAB Simulink Executar o Simulink de Matlab simulink 10

Passo 1: Definir a interface para Simulink Se cria um novo modelo 11

Passo 1: Definir a interface para Simulink Escrever no command de MATLAN o comando stateflow 12

PASSO 2 13

Passo 2: Definir os estados para a Modelagem Modos de Operação Temperatura <120 120=<Temperatura<150 150=<Temperatura Definição dos Estados: PowerOn e PowerOff 14

Construir o modelo em Simulink (3) constantes (1) Multiport Switch (1) Chart (1) Signal Builder (1) Mux (2) scope 15

PASSO 3 16

Passo 3: Definir as ações dos estados e as variáveis Abrir o Chart 17

Passo 3: Definir as ações dos estados e as variáveis Definir a Variável de Entrada no chart Ventiladores Ir ao Menu Add > Data -> Input From Simulink.. Em GENERAL, Name= temp Em VALUE ATTRIBUTES, dar check em WATCH IN DEBUGGER 18

Passo 3: Definir as ações dos estados e as variáveis Definir a Variável de Saída no chart Ventiladores Ir ao Menú Add > Data -> Output to Simulink.. No GENERAL, Name= airflow No VALUE ATTRIBUTES, dar check em WATCH IN DEBUGGER 19

PASSO 4 20

Passo 4: Definir as transições entre os estados Os estados realizam ações em diferentes fases de seu ciclo de execução, desde o instante que entram na fase de atividade. As 3 ações dos estados são: 21

Passo 4: Definir as transições entre os estados As setas unidirecionais representam as transições de um estado a outro e especifica a direção do fluxo A seta com um ponto, representa um estado Exclusive OR, e não pode ser ativado ou executado em um mesmo instante. 22

Dar duplo click no Chart ventiladores Usar o menu de opções para construir o diagrama de estados 23

24

Passo 4: Definir as transições entre os estados Observações: No estado PowerOn, dar click direito e Decomposition= Parallel (AND) Esta opção, permite a execução simultânea dos sub-estados FAN1 e FAN2 25

Passo 4: Definir as transições entre os estados Estados OR, os estados não podem ser ativados ao mesmo tempo, portanto se devem usar transições Estados AND, os estados são executados concorrentemente e não se necessitam transições. Se requere colocar as transições de estados de PowerOff para PowerOn e vice-versa. 26

PASSO 5 27

Passo 5: Selecionar o método para Trigger Dar duplo click em Signal Builder Configurar o Signal 1 AXES->Change Time Range: Min time=0, Max time=300 Name: SWITCH Selecionar a borda de subida, T=10 Selecionar a borda de descida, T= 290 Configurar o Signal 2 Ir ao menu SIGNAL->New->Square Name: CLOCK 28

29

Passo 5: Selecionar o método para Trigger Adicionar os eventos para as transições: Configurar o evento SWITCH Ir ao Menu ADD -> EVENT-> INPUT FROM SIMULINK Name = SWITCH Trigger = EITHER 30

Passo 5: Selecionar o método para Trigger Adicionar os eventos para as transições: Configurar o evento CLOCK Ir ao Menu ADD -> EVENT-> INPUT FROM SIMULINK Name = CLOCK Trigger = EITHER 31

Passo 5: Selecionar o método para Trigger Observar o Trigger no chart Ventiladores TRIGGER (either) Borda de subida e Borda de descida 32

PASSO 6 33

Passo 6: Simulação do Stateflow Antes de iniciar as simulações verificar se existe uma transição por default em cada nível de jerarquia do stateflow que contem um estado OR Para configurar os parâmetros de simulação, dar duplo click no chart Ventiladores. Ir ao menu de SIMULATION->CONFIGURATION PARAMETERS 34

Passo 6: Simulação do Stateflow Ir ao SOLVER 35

Passo 6: Simulação do Stateflow Ir ao menu TOOLS->OPEN SIMULATION TARGET 36

Passo 6: Simulação do Stateflow Configurar o SIMULATION TARGET: 37

Passo 6: Simulação do Stateflow Ir ao menu TOOLS->DEBUG Breakpoints Delay (sec) 38

Passo 6: Simulação do Stateflow Para observar o comportamento do stateflow em movimento, se utiliza o breakpoints no modo Debugger para deter a simulação durante as atividades de execução. 39

Passo 6: Simulação do Stateflow Iniciar a simulação Simulação 40