SlideShare uma empresa Scribd logo
1 de 41
Baixar para ler offline
Defesa Final de Dissertação
UM FRAMEWORK PARA A VALIDAÇÃO AUTOMÁTICA DE
MODELOS APLICADO AO SUBSISTEMA DE ENERGIA DE UM
PICOSSATÉLITE
Aluno: Italo Pinto Rodrigues
Orientadora: Dra. Ana Maria Ambrosio
Curso de Pós Graduação em Engenharia e Tecnologia Espaciais
Área Engenharia e Gerenciamento de Sistemas Espaciais
Escopo
10:49
2
Verificação
Modelagem
& Simulação
Subsistema
de Energia
Pico e Nanossatélites
Execução Automática de Testes
Rastreabilidade entre Requisito X Caso de Teste
Tancredo 1
Memorando Técnico ECSS
| Simulador de Verificação Funcional
CONTEÚDO
10:49
3
Contexto
Conceitos
Framework Demonstração
Conclusão
Motivação
10:49
4
17%
 Bateria
 Painel Solar
Principais Falhas
Subsistema de
Suprimento de Energia.
Pouco investimento em ferramentas de testes
funcionais!
Verificação
Objetivos
10:49
5
Objetivo Principal
Definir um framework para apoiar as atividades
de verificação funcional do subsistema de energia
de pico e nanossatélites por meio da execução
automática de testes.
Objetivos Secundários
 Definir regras para modelar os equipamentos de um
subsistema de energia;
 Demonstrar o uso de um equipamento de interface,
para estabelecer a comunicação entre o ambiente de
simulação virtual e um modelo físico;
 Desenvolver uma estratégia que associe simulação e
execução automática de testes funcionais.
10:49
6
CONCEITOS
Verificação | Simuladores | Subsistema de Energia | Execução de Testes
Verificação
10:49
7
Durante o
desenvolvimento de um
produto espacial são
realizadas diversas
atividades de verificação,
cujo objetivo é garantir
que o projeto atende os
requisitos.
Uma técnica importante
que apoia as atividades
de verificação é a
simulação, que permite
medir o desempenho
e/ou avaliar as funções
do artefato sob
verificação.
Simuladores
10:49
8
Concepção do Sistema
Verificação Funcional
Spacecraft AIT
Teste do Sistema de
Solo
Treinamento, Operação,
Manutenção
Validação de Software
Banco de dados do sistema
Somente Software
0/A B C/D E/F
Desempenho da Missão
Engenharia Funcional
Hardware in the loop (HIL)
Reuso de modelo (parcial)
Simuladores ao longo do Ciclo de Vida de uma Missão Espacial
Subsistema de Suprimento de Energia
10:49
9
EPS
Painel Solar
Regulagem
e Controle
Armazenamento
de Energia
Cargas
Fonte de
Energia
Distribuição
e proteção
Execução Automática de Testes
10:49
10
Benefícios
 Maior cobertura para detecção de erros e redução de custos;
 Repetibilidade;
 Melhoria da produtividade.
Casos de Teste
 Abstrato: não pode ser aplicado diretamente ao sistema em teste;
 Executável: pode ser aplicado diretamente ao sistema em teste.
Resultado
 Passou: atende ao requisito;
 Falhou: não atende ao requisito;
 Inconclusivo: a saída não permite dizer o resultado.
10:49
11
FRAMEWORK
Ferramentas | Visão Geral | Requisitos | Matriz de Teste | Plano de Verificação
Modelos do Subsistema | Matriz de Sequência | Configuração de Execução
Função de Teste | Sequência de Execução | Log de Execução
Ferramentas
10:49
12
Software Hardware
MATLAB / Simulink Arduino
10:49
13
Visão Geral Framework
Criar modelos
(Subsistema)
Modelos
Criar matriz
de teste
Criar função
de teste
Log da
Execução
Sequência de
Execução
Executar
teste
Veredicto de
teste
Analisar
resultados
Matriz de
Sequência
Definir
configuração
de execução
Configuração
Criar matriz
de sequência
Matriz de
Teste
Artefato
Atividade
manual
Artefato de
Entrada
Atividade
automática
Criar Plano de
Verificação
Início
Requisitos
Função de
Teste
Casos de
Teste
Plano de
Verificação
1
2 3 4
5
6
7
8
Requisitos
10:49
14
Item Requisito
1 O Subsistema de energia deve fornecer 5V de tensão para o barramento.
2
A bateria deve ser recarregada sempre que o painel solar gerar mais energia
que a solicitada pelo barramento.
3
A bateria deve fornecer energia sempre que a demanda de energia do
barramento for maior que a energia gerada pelos painéis solares.
Etapa1
Matriz de Teste
10:49
15
Resultados coletados pela execução de
todos os métodos collect de cada caso de
teste.
Os casos de teste estão associados à sua
simulação.
Etapa2
Modelos e Interfaces do Subsistema
10:49
16
Etapa3
Estrutura de Armazenamento Arquivos
10:49
17
(a) Raiz do modelo
(b) Pasta do modelo específico
(e) Pasta do controlador
(f) Objeto de interface
(g) Método de configuração inicial
(h) Método de atualização
(c) Modelo do componente
(d) Preparador do modelo
Etapa3
Estrutura dos Modelos e Funções de Teste
10:49
18
Objeto Model
parameters
methods
input
output
internal
profile
setup
update
gets/sets
a) Método é chamado para inicializar o modelo.
b) Método é chamado para fazer a evolução de 1 passo no modelo.
c) Métodos de transferência dos parametros de/para o workspace.
d) Parâmetros que caracterizam o modelo.
c) Parâmetros internos do modelo.
b) Parâmetros que saem do modelo para o workspace
a) Parâmetros que vêm do workspace para o modelo
Objeto Test
parameters
methods
input
output
internal
profile
setup
update
gets/sets
a) Método é chamado para inicializar o modelo.
b) Método é chamado para fazer a evolução de 1 passo no modelo.
c) Métodos de transferência dos parametros de/para o workspace.
d) Parâmetros que caracterizam o modelo.
c) Parâmetros internos do modelo.
b) Parâmetros que saem do modelo para o workspace
a) Parâmetros que vêm do workspace para o modelo
collect Método é chamado para coletar os resultados do teste na simulação.
Etapa3
Estrutura dos Modelos e Funções de Teste
10:49
19
Parâmetros
Métodos
Campos das propriedades
(variáveis)
a) Variáveis de entrada.
b) Variáveis de saída.
c) Variáveis internas.
d) Variáveis que descrevem
o modelo.
Métodos de (a) inicialização
e (b) atualização do modelo
encapsulado.
c) Métodos de exportação
(get) e importação (set).
Etapa3
Estrutura dos Modelos e Funções de Teste
10:49
20
ABRE
a) Importa os elementos
contidos dentro da
pasta model, do modelo
da PCDU
b) Nomeia o modelo
c) Abre o manuseador
do modelo.
d) Inicializa as variáveis
com valores iniciais.
Etapa3
Estrutura dos Modelos e Funções de Teste
10:49
21
a) Prepara os
parâmetros de entrada
do executor do modelo
b) Chama o executor do
modelo
c) Coleta os resultados
da execução.
a) Importa os elementos
contidos dentro da
pasta model, do modelo
da PCDU
b) Chama o executor do
modelo que está na
pasta pcdu/model
Etapa3
Configuração de Execução
10:49
22
Ambiente de Simulação Virtual
Modelo dos
Equipamentos do Satélite
Modelos
Ambientais
Modelos da
Dinâmica do Satélite Modelo do
Subsistema
(EPS)
Ambiente de Simulação Virtual
Modelo do
Subsistema
(EPS)
Modelo dos
Equipamentos do Satélite
Modelos
Ambientais
Modelos da
Dinâmica do Satélite
Modelo
do FEE
Ambiente de Simulação Virtual
Hardware
(EPS)
Modelo dos
Equipamentos do Satélite
Modelos
Ambientais
Modelos da
Dinâmica do Satélite
FEE
Definir configuração
de execução
Equipe de V&V
Somente
Software
Somente SW com o
modelo do FEE
HIL
Configuração
Etapa4
Hardware-in-the-loop
10:49
23
Etapa4
Hardware-in-the-loop
10:49
24
Ambiente de
Simulação Virtual
FEE
Componente do
Subsistema em
Teste (PCDU)
Etapa4
Matriz de Sequência
10:49
25
Indica que é
um parâmetro
Indica que é
um modelo
Linha influencia na coluna
M  P: Exportar parâmetro P,
do modelo M para o workspace
P  M: Importar parâmetro P
do workspace, atualizando o
parâmetro P do modelo M
M  M: Executar a atualização
do Modelo M
<nomeDoModelo>.set<nomedoParametro>(<nomeDoParametro>);
solarPanel.setHasSun(HasSun);
<nomeDoModelo>.update(<nomeDoModelo>);
solarPanel.update(solarPanel);
<nomeDoParametro> = <nomeDoModelo>.get<nomedoParametro>( );
SagPower = solarPanel.getSagPower( );
Etapa5
Matriz de Sequência
10:49
26
Etapa5
Matriz de Sequência
10:49
27
Importar os elementos do modelo/teste
import <nome>.*
Instanciar o controlador do modelo/teste
<nome> = <nome>.controller;
Chamar a função de inicialização
<nome>.setup(<nome>);
Blocos de sentenças para configuração dos
modelos e testes
Etapa5
Relação entre Matriz de Sequência e a Implementação do Modelo
10:49
28
Etapa5
10:49
29
Requisito Caso de Teste
Função
de Teste
Função de Teste e Sequência de Execução
Etapa6
10:49
30
Sequência de Execução
Modelo1
Modelo2
Modelo3
Modelo4
1
4
7
10
Parâmetro1
Parâmetro2
Parâmetro3
Parâmetro4
3
2
5
6 8
911
Sequencia de ExecuçãoMatriz de Sequência
Caso de teste a ser
conectado ao modelo.
CasoTeste1
+1
Leitura
Saída
+1
+1
Etapa6
Sequência de Execução Alterada
10:49
31
CasoTeste1 4
Modelo1
Modelo2
Modelo3
Modelo4
1
7
10
13
Parâmetro1
Parâmetro2
Parâmetro3
Parâmetro4
2
8
9 11
14
3
Parâmetro1
5
6
12
Etapa6
10:49
32
Sequência de Execução Alterada
Etapa6
Passo de Simulação
10:49
33
Passo de
simulação Model
Workspace set Transfere do Workspace todos os parâmetros
necessários pelo objeto do modelo.
input Transfere para o workspace do objeto todos os
parâmetros necessários para execução do modelo.
Executa o modelo passando de entrada o workspace do objeto.
Obs.: Os nomes das variáveis no workspace devem ser as mesmas
necessárias ao modelo.
output
Transfere para o objeto todos os parâmetros exportados para o
workspace pela execução do modelo.
Workspace get Transfere para o Workspace todos os
parâmetros de interface.
Etapa7
10:49
34
Log de Execução
Executar a
verificação
Log de
Execução
Resultados coletados pela execução de
todos os métodos collect de cada caso de
teste.
Os casos de teste estão associados à sua
simulação.
Rastreabilidade: requisitos x casos de teste
x
Etapa8
Chama método
collect de todos
o testes
10:49
35
CONCLUSÕES
Conclusão e Contribuições
10:49
36
• O framework demonstrou ser viável para verificação funcional do
subsistema de energia de pico e nanossatélites;
• Possibilitou rastrear requisitos e casos de teste;
• Possibilitou a reuso de casos de testes para as diferentes
configurações incluindo o hardware à malha de simulação;
• Explorou o uso de modelos híbridos (software + hardware);
• A solução do script que interpreta a matriz de sequência pode
ser aplicado ao teste de qualquer outro subsistema.
Trabalhos futuros
10:49
37
• Aplicar o framework para o EPS de um pico ou nanossatélite mais complexo,
priorizando o reuso e adaptação dos modelos desenvolvidos;
• Aplicar o framework para outros subsistemas de pico ou nanossatélites, como
por exemplo, o subsistema de comunicação;
• Adaptar o framework para subsistemas de satélites convencionais;
• Estender o framework para outras fases do ciclo de desenvolvimento de um
satélite;
• Acoplar ferramentas apropriadas para geração automática dos casos de teste,
de forma que uma parcela dos casos de teste possam ser gerados
automaticamente para posterior utilização pelo framework;
• Utilizar outras formas de modelagem para os componentes dos subsistemas,
tais como, Excel, LabView, programas em C++, que possam ser interligados
pelo framework, criando um ambiente de co-simulation;
• Realizar a transformação automática de uma linguagem de descrição de
modelos, como OPM (Object Process Methodology), para a Matriz de Sequência,
assim como os outros elementos de entrada, de forma a facilitar a abstração de
uso para o engenheiro especialista no subsistema e o engenheiro de teste.
Publicações
10:49
38
Simulação com Hardware-in-the-loop
integrada por Arduino a um Simulador
de Satélite
Utilização de Realidade Virtual,
Aumentada e Cruzada em Simuladores
de Satélites no INPE
Verificação de Requisitos através do
Uso de um Simulador Funcional
Towards an Automated Hybrid Test and
Simulation Framework to Functional
Verification of Nanosatellites‘ Electrical
Power Supply Subsystem
10:49
39
OBRIGADO
10:49
40
DEMONSTRAÇÃO
PRÁTICA
Demonstração
10:49
41
• O estado de carga da bateria não
pode ser menor que 3Ah. 1
• A bateria deve ser recarregada toda vez
que o painel solar gerar mais energia
que a solicitada pelo barramento.
2

Mais conteúdo relacionado

Mais procurados

Introdução a testes unitários automatizados com JUnit e NUnit
Introdução a testes unitários automatizados com JUnit e NUnitIntrodução a testes unitários automatizados com JUnit e NUnit
Introdução a testes unitários automatizados com JUnit e NUnitelliando dias
 
Validação e Testes de Software - MOD2
Validação e Testes de Software - MOD2Validação e Testes de Software - MOD2
Validação e Testes de Software - MOD2Fernando Palma
 
Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...
Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...
Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...Claudinei Brito Junior
 
Aexo TI - Boas práticas de testes tdd
Aexo TI - Boas práticas de testes tddAexo TI - Boas práticas de testes tdd
Aexo TI - Boas práticas de testes tddCarlos Santana
 
Implementando Testes Unitários em Java - Manoel Pimentel
Implementando Testes Unitários em Java - Manoel PimentelImplementando Testes Unitários em Java - Manoel Pimentel
Implementando Testes Unitários em Java - Manoel PimentelManoel Pimentel Medeiros
 
Verificação e Validação
Verificação e ValidaçãoVerificação e Validação
Verificação e ValidaçãoMarcelo Yamaguti
 
Android: testes automatizados e TDD
Android: testes automatizados e TDDAndroid: testes automatizados e TDD
Android: testes automatizados e TDDDextra
 
Aula 3 técnicas de teste de software1
Aula 3   técnicas de teste de software1Aula 3   técnicas de teste de software1
Aula 3 técnicas de teste de software1Tiago Vizoto
 
Padrões para Desenvolvimento de Software Guiado por Testes
Padrões para Desenvolvimento de Software Guiado por TestesPadrões para Desenvolvimento de Software Guiado por Testes
Padrões para Desenvolvimento de Software Guiado por TestesEverton Rodrigues
 

Mais procurados (12)

1° Madrugada de Testes
1° Madrugada de Testes1° Madrugada de Testes
1° Madrugada de Testes
 
Introdução a testes unitários automatizados com JUnit e NUnit
Introdução a testes unitários automatizados com JUnit e NUnitIntrodução a testes unitários automatizados com JUnit e NUnit
Introdução a testes unitários automatizados com JUnit e NUnit
 
Validação e Testes de Software - MOD2
Validação e Testes de Software - MOD2Validação e Testes de Software - MOD2
Validação e Testes de Software - MOD2
 
Introdução a tdd
Introdução a tddIntrodução a tdd
Introdução a tdd
 
Java 12
Java 12Java 12
Java 12
 
Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...
Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...
Minicurso - Técnicas de Teste e Automatização do Teste de Unidade XII SemanaT...
 
Aexo TI - Boas práticas de testes tdd
Aexo TI - Boas práticas de testes tddAexo TI - Boas práticas de testes tdd
Aexo TI - Boas práticas de testes tdd
 
Implementando Testes Unitários em Java - Manoel Pimentel
Implementando Testes Unitários em Java - Manoel PimentelImplementando Testes Unitários em Java - Manoel Pimentel
Implementando Testes Unitários em Java - Manoel Pimentel
 
Verificação e Validação
Verificação e ValidaçãoVerificação e Validação
Verificação e Validação
 
Android: testes automatizados e TDD
Android: testes automatizados e TDDAndroid: testes automatizados e TDD
Android: testes automatizados e TDD
 
Aula 3 técnicas de teste de software1
Aula 3   técnicas de teste de software1Aula 3   técnicas de teste de software1
Aula 3 técnicas de teste de software1
 
Padrões para Desenvolvimento de Software Guiado por Testes
Padrões para Desenvolvimento de Software Guiado por TestesPadrões para Desenvolvimento de Software Guiado por Testes
Padrões para Desenvolvimento de Software Guiado por Testes
 

Semelhante a Um framework para validação automática de modelos aplicado ao subsistema de energia de um picossatélite

ybr789try
ybr789tryybr789try
ybr789tryteste
 
Testes de software
Testes de softwareTestes de software
Testes de softwareteste
 
Reusabilidade na Utilização de Frameworks Automatizados
Reusabilidade na Utilização de Frameworks Automatizados Reusabilidade na Utilização de Frameworks Automatizados
Reusabilidade na Utilização de Frameworks Automatizados Webcasts developerWorks Brasil
 
GOTEST-Aula3-Automacao-Processo-Testes.pdf
GOTEST-Aula3-Automacao-Processo-Testes.pdfGOTEST-Aula3-Automacao-Processo-Testes.pdf
GOTEST-Aula3-Automacao-Processo-Testes.pdfRodolphoCesar2
 
TDC2016POA | Trilha Android - Testes no Android
TDC2016POA | Trilha Android - Testes no AndroidTDC2016POA | Trilha Android - Testes no Android
TDC2016POA | Trilha Android - Testes no Androidtdc-globalcode
 
TDC2016POA | Trilha Android - Testes no Android
TDC2016POA | Trilha Android - Testes no AndroidTDC2016POA | Trilha Android - Testes no Android
TDC2016POA | Trilha Android - Testes no Androidtdc-globalcode
 
Teste de Integração - Unidade III
Teste de Integração - Unidade IIITeste de Integração - Unidade III
Teste de Integração - Unidade IIIJoão Lourenço
 
Noções em teste de software e introdução a automação
Noções em teste de software e introdução a automaçãoNoções em teste de software e introdução a automação
Noções em teste de software e introdução a automaçãoSandy Maciel
 
Paralelize seus testes web e mobile para ter feedbacks mais rápidos
Paralelize seus testes web e mobile para ter feedbacks mais rápidosParalelize seus testes web e mobile para ter feedbacks mais rápidos
Paralelize seus testes web e mobile para ter feedbacks mais rápidosElias Nogueira
 
Testes de regressão automatizados
Testes de regressão automatizadosTestes de regressão automatizados
Testes de regressão automatizadosCristian R. Silva
 
Introdução a Programação Orientada a testes
Introdução a Programação Orientada a testesIntrodução a Programação Orientada a testes
Introdução a Programação Orientada a testesAndré Luiz Forchesatto
 
Test-Driven Development (TDD) utilizando o framework xUnit.net
Test-Driven Development (TDD) utilizando o framework xUnit.netTest-Driven Development (TDD) utilizando o framework xUnit.net
Test-Driven Development (TDD) utilizando o framework xUnit.netRenato Groff
 
Casos teste integração efetiva de algumas unidades
Casos teste integração efetiva de algumas unidades Casos teste integração efetiva de algumas unidades
Casos teste integração efetiva de algumas unidades Adriana Telles
 

Semelhante a Um framework para validação automática de modelos aplicado ao subsistema de energia de um picossatélite (20)

ybr789try
ybr789tryybr789try
ybr789try
 
Testes de software
Testes de softwareTestes de software
Testes de software
 
Testes de Software.ppt
Testes de Software.pptTestes de Software.ppt
Testes de Software.ppt
 
Teste baseado em modelos
Teste baseado em modelosTeste baseado em modelos
Teste baseado em modelos
 
Reusabilidade na Utilização de Frameworks Automatizados
Reusabilidade na Utilização de Frameworks Automatizados Reusabilidade na Utilização de Frameworks Automatizados
Reusabilidade na Utilização de Frameworks Automatizados
 
GOTEST-Aula3-Automacao-Processo-Testes.pdf
GOTEST-Aula3-Automacao-Processo-Testes.pdfGOTEST-Aula3-Automacao-Processo-Testes.pdf
GOTEST-Aula3-Automacao-Processo-Testes.pdf
 
TDC2016POA | Trilha Android - Testes no Android
TDC2016POA | Trilha Android - Testes no AndroidTDC2016POA | Trilha Android - Testes no Android
TDC2016POA | Trilha Android - Testes no Android
 
TDC2016POA | Trilha Android - Testes no Android
TDC2016POA | Trilha Android - Testes no AndroidTDC2016POA | Trilha Android - Testes no Android
TDC2016POA | Trilha Android - Testes no Android
 
TP1CI_57572.pdf
TP1CI_57572.pdfTP1CI_57572.pdf
TP1CI_57572.pdf
 
Teste de Integração - Unidade III
Teste de Integração - Unidade IIITeste de Integração - Unidade III
Teste de Integração - Unidade III
 
Noções em teste de software e introdução a automação
Noções em teste de software e introdução a automaçãoNoções em teste de software e introdução a automação
Noções em teste de software e introdução a automação
 
Eng.ª do Software - 10. Testes de software
Eng.ª do Software - 10. Testes de softwareEng.ª do Software - 10. Testes de software
Eng.ª do Software - 10. Testes de software
 
Paralelize seus testes web e mobile para ter feedbacks mais rápidos
Paralelize seus testes web e mobile para ter feedbacks mais rápidosParalelize seus testes web e mobile para ter feedbacks mais rápidos
Paralelize seus testes web e mobile para ter feedbacks mais rápidos
 
Testes de regressão automatizados
Testes de regressão automatizadosTestes de regressão automatizados
Testes de regressão automatizados
 
Introdução a Programação Orientada a testes
Introdução a Programação Orientada a testesIntrodução a Programação Orientada a testes
Introdução a Programação Orientada a testes
 
Test-Driven Development (TDD) utilizando o framework xUnit.net
Test-Driven Development (TDD) utilizando o framework xUnit.netTest-Driven Development (TDD) utilizando o framework xUnit.net
Test-Driven Development (TDD) utilizando o framework xUnit.net
 
Casos teste integração efetiva de algumas unidades
Casos teste integração efetiva de algumas unidades Casos teste integração efetiva de algumas unidades
Casos teste integração efetiva de algumas unidades
 
Testes: Por onde Começar?
Testes: Por onde Começar?Testes: Por onde Começar?
Testes: Por onde Começar?
 
TDD na Prática
TDD na PráticaTDD na Prática
TDD na Prática
 
Mock Objects
Mock ObjectsMock Objects
Mock Objects
 

Mais de Italo Pinto Rodrigues

Algoritmos Genéticos para Ajuste de Controlador PID em Sistemas Espaciais
Algoritmos Genéticos para Ajuste de Controlador PID em Sistemas EspaciaisAlgoritmos Genéticos para Ajuste de Controlador PID em Sistemas Espaciais
Algoritmos Genéticos para Ajuste de Controlador PID em Sistemas EspaciaisItalo Pinto Rodrigues
 
Abordagens Inteligentes para Controle e Automação - Aplicações
Abordagens Inteligentes para Controle e Automação - AplicaçõesAbordagens Inteligentes para Controle e Automação - Aplicações
Abordagens Inteligentes para Controle e Automação - AplicaçõesItalo Pinto Rodrigues
 
CBERS-4 Operational Simulator - Infographics
CBERS-4 Operational Simulator -  InfographicsCBERS-4 Operational Simulator -  Infographics
CBERS-4 Operational Simulator - InfographicsItalo Pinto Rodrigues
 
Towards an automated hybrid test and simulation framework to functional veri...
 Towards an automated hybrid test and simulation framework to functional veri... Towards an automated hybrid test and simulation framework to functional veri...
Towards an automated hybrid test and simulation framework to functional veri...Italo Pinto Rodrigues
 
Transportador Espacial JIRAD (JIRAD Spacecraft)
Transportador Espacial JIRAD (JIRAD Spacecraft)Transportador Espacial JIRAD (JIRAD Spacecraft)
Transportador Espacial JIRAD (JIRAD Spacecraft)Italo Pinto Rodrigues
 
Identificação e Controle de um Laminador de Encruamento em Malha Fechada Atra...
Identificação e Controle de um Laminador de Encruamento em Malha Fechada Atra...Identificação e Controle de um Laminador de Encruamento em Malha Fechada Atra...
Identificação e Controle de um Laminador de Encruamento em Malha Fechada Atra...Italo Pinto Rodrigues
 

Mais de Italo Pinto Rodrigues (10)

Retrospectiva 2021
Retrospectiva 2021Retrospectiva 2021
Retrospectiva 2021
 
Algoritmos Genéticos para Ajuste de Controlador PID em Sistemas Espaciais
Algoritmos Genéticos para Ajuste de Controlador PID em Sistemas EspaciaisAlgoritmos Genéticos para Ajuste de Controlador PID em Sistemas Espaciais
Algoritmos Genéticos para Ajuste de Controlador PID em Sistemas Espaciais
 
Abordagens Inteligentes para Controle e Automação - Aplicações
Abordagens Inteligentes para Controle e Automação - AplicaçõesAbordagens Inteligentes para Controle e Automação - Aplicações
Abordagens Inteligentes para Controle e Automação - Aplicações
 
Roda de Conversa UFMG
Roda de Conversa UFMGRoda de Conversa UFMG
Roda de Conversa UFMG
 
CBERS-4 Operational Simulator - Infographics
CBERS-4 Operational Simulator -  InfographicsCBERS-4 Operational Simulator -  Infographics
CBERS-4 Operational Simulator - Infographics
 
Towards an automated hybrid test and simulation framework to functional veri...
 Towards an automated hybrid test and simulation framework to functional veri... Towards an automated hybrid test and simulation framework to functional veri...
Towards an automated hybrid test and simulation framework to functional veri...
 
Apresentação Artigo: SatSim
Apresentação Artigo: SatSimApresentação Artigo: SatSim
Apresentação Artigo: SatSim
 
Transportador Espacial JIRAD (JIRAD Spacecraft)
Transportador Espacial JIRAD (JIRAD Spacecraft)Transportador Espacial JIRAD (JIRAD Spacecraft)
Transportador Espacial JIRAD (JIRAD Spacecraft)
 
Estudo Comparativo de Baterias
Estudo Comparativo de BateriasEstudo Comparativo de Baterias
Estudo Comparativo de Baterias
 
Identificação e Controle de um Laminador de Encruamento em Malha Fechada Atra...
Identificação e Controle de um Laminador de Encruamento em Malha Fechada Atra...Identificação e Controle de um Laminador de Encruamento em Malha Fechada Atra...
Identificação e Controle de um Laminador de Encruamento em Malha Fechada Atra...
 

Um framework para validação automática de modelos aplicado ao subsistema de energia de um picossatélite

  • 1. Defesa Final de Dissertação UM FRAMEWORK PARA A VALIDAÇÃO AUTOMÁTICA DE MODELOS APLICADO AO SUBSISTEMA DE ENERGIA DE UM PICOSSATÉLITE Aluno: Italo Pinto Rodrigues Orientadora: Dra. Ana Maria Ambrosio Curso de Pós Graduação em Engenharia e Tecnologia Espaciais Área Engenharia e Gerenciamento de Sistemas Espaciais
  • 2. Escopo 10:49 2 Verificação Modelagem & Simulação Subsistema de Energia Pico e Nanossatélites Execução Automática de Testes Rastreabilidade entre Requisito X Caso de Teste Tancredo 1 Memorando Técnico ECSS | Simulador de Verificação Funcional
  • 4. Motivação 10:49 4 17%  Bateria  Painel Solar Principais Falhas Subsistema de Suprimento de Energia. Pouco investimento em ferramentas de testes funcionais! Verificação
  • 5. Objetivos 10:49 5 Objetivo Principal Definir um framework para apoiar as atividades de verificação funcional do subsistema de energia de pico e nanossatélites por meio da execução automática de testes. Objetivos Secundários  Definir regras para modelar os equipamentos de um subsistema de energia;  Demonstrar o uso de um equipamento de interface, para estabelecer a comunicação entre o ambiente de simulação virtual e um modelo físico;  Desenvolver uma estratégia que associe simulação e execução automática de testes funcionais.
  • 6. 10:49 6 CONCEITOS Verificação | Simuladores | Subsistema de Energia | Execução de Testes
  • 7. Verificação 10:49 7 Durante o desenvolvimento de um produto espacial são realizadas diversas atividades de verificação, cujo objetivo é garantir que o projeto atende os requisitos. Uma técnica importante que apoia as atividades de verificação é a simulação, que permite medir o desempenho e/ou avaliar as funções do artefato sob verificação.
  • 8. Simuladores 10:49 8 Concepção do Sistema Verificação Funcional Spacecraft AIT Teste do Sistema de Solo Treinamento, Operação, Manutenção Validação de Software Banco de dados do sistema Somente Software 0/A B C/D E/F Desempenho da Missão Engenharia Funcional Hardware in the loop (HIL) Reuso de modelo (parcial) Simuladores ao longo do Ciclo de Vida de uma Missão Espacial
  • 9. Subsistema de Suprimento de Energia 10:49 9 EPS Painel Solar Regulagem e Controle Armazenamento de Energia Cargas Fonte de Energia Distribuição e proteção
  • 10. Execução Automática de Testes 10:49 10 Benefícios  Maior cobertura para detecção de erros e redução de custos;  Repetibilidade;  Melhoria da produtividade. Casos de Teste  Abstrato: não pode ser aplicado diretamente ao sistema em teste;  Executável: pode ser aplicado diretamente ao sistema em teste. Resultado  Passou: atende ao requisito;  Falhou: não atende ao requisito;  Inconclusivo: a saída não permite dizer o resultado.
  • 11. 10:49 11 FRAMEWORK Ferramentas | Visão Geral | Requisitos | Matriz de Teste | Plano de Verificação Modelos do Subsistema | Matriz de Sequência | Configuração de Execução Função de Teste | Sequência de Execução | Log de Execução
  • 13. 10:49 13 Visão Geral Framework Criar modelos (Subsistema) Modelos Criar matriz de teste Criar função de teste Log da Execução Sequência de Execução Executar teste Veredicto de teste Analisar resultados Matriz de Sequência Definir configuração de execução Configuração Criar matriz de sequência Matriz de Teste Artefato Atividade manual Artefato de Entrada Atividade automática Criar Plano de Verificação Início Requisitos Função de Teste Casos de Teste Plano de Verificação 1 2 3 4 5 6 7 8
  • 14. Requisitos 10:49 14 Item Requisito 1 O Subsistema de energia deve fornecer 5V de tensão para o barramento. 2 A bateria deve ser recarregada sempre que o painel solar gerar mais energia que a solicitada pelo barramento. 3 A bateria deve fornecer energia sempre que a demanda de energia do barramento for maior que a energia gerada pelos painéis solares. Etapa1
  • 15. Matriz de Teste 10:49 15 Resultados coletados pela execução de todos os métodos collect de cada caso de teste. Os casos de teste estão associados à sua simulação. Etapa2
  • 16. Modelos e Interfaces do Subsistema 10:49 16 Etapa3
  • 17. Estrutura de Armazenamento Arquivos 10:49 17 (a) Raiz do modelo (b) Pasta do modelo específico (e) Pasta do controlador (f) Objeto de interface (g) Método de configuração inicial (h) Método de atualização (c) Modelo do componente (d) Preparador do modelo Etapa3
  • 18. Estrutura dos Modelos e Funções de Teste 10:49 18 Objeto Model parameters methods input output internal profile setup update gets/sets a) Método é chamado para inicializar o modelo. b) Método é chamado para fazer a evolução de 1 passo no modelo. c) Métodos de transferência dos parametros de/para o workspace. d) Parâmetros que caracterizam o modelo. c) Parâmetros internos do modelo. b) Parâmetros que saem do modelo para o workspace a) Parâmetros que vêm do workspace para o modelo Objeto Test parameters methods input output internal profile setup update gets/sets a) Método é chamado para inicializar o modelo. b) Método é chamado para fazer a evolução de 1 passo no modelo. c) Métodos de transferência dos parametros de/para o workspace. d) Parâmetros que caracterizam o modelo. c) Parâmetros internos do modelo. b) Parâmetros que saem do modelo para o workspace a) Parâmetros que vêm do workspace para o modelo collect Método é chamado para coletar os resultados do teste na simulação. Etapa3
  • 19. Estrutura dos Modelos e Funções de Teste 10:49 19 Parâmetros Métodos Campos das propriedades (variáveis) a) Variáveis de entrada. b) Variáveis de saída. c) Variáveis internas. d) Variáveis que descrevem o modelo. Métodos de (a) inicialização e (b) atualização do modelo encapsulado. c) Métodos de exportação (get) e importação (set). Etapa3
  • 20. Estrutura dos Modelos e Funções de Teste 10:49 20 ABRE a) Importa os elementos contidos dentro da pasta model, do modelo da PCDU b) Nomeia o modelo c) Abre o manuseador do modelo. d) Inicializa as variáveis com valores iniciais. Etapa3
  • 21. Estrutura dos Modelos e Funções de Teste 10:49 21 a) Prepara os parâmetros de entrada do executor do modelo b) Chama o executor do modelo c) Coleta os resultados da execução. a) Importa os elementos contidos dentro da pasta model, do modelo da PCDU b) Chama o executor do modelo que está na pasta pcdu/model Etapa3
  • 22. Configuração de Execução 10:49 22 Ambiente de Simulação Virtual Modelo dos Equipamentos do Satélite Modelos Ambientais Modelos da Dinâmica do Satélite Modelo do Subsistema (EPS) Ambiente de Simulação Virtual Modelo do Subsistema (EPS) Modelo dos Equipamentos do Satélite Modelos Ambientais Modelos da Dinâmica do Satélite Modelo do FEE Ambiente de Simulação Virtual Hardware (EPS) Modelo dos Equipamentos do Satélite Modelos Ambientais Modelos da Dinâmica do Satélite FEE Definir configuração de execução Equipe de V&V Somente Software Somente SW com o modelo do FEE HIL Configuração Etapa4
  • 25. Matriz de Sequência 10:49 25 Indica que é um parâmetro Indica que é um modelo Linha influencia na coluna M  P: Exportar parâmetro P, do modelo M para o workspace P  M: Importar parâmetro P do workspace, atualizando o parâmetro P do modelo M M  M: Executar a atualização do Modelo M <nomeDoModelo>.set<nomedoParametro>(<nomeDoParametro>); solarPanel.setHasSun(HasSun); <nomeDoModelo>.update(<nomeDoModelo>); solarPanel.update(solarPanel); <nomeDoParametro> = <nomeDoModelo>.get<nomedoParametro>( ); SagPower = solarPanel.getSagPower( ); Etapa5
  • 27. Matriz de Sequência 10:49 27 Importar os elementos do modelo/teste import <nome>.* Instanciar o controlador do modelo/teste <nome> = <nome>.controller; Chamar a função de inicialização <nome>.setup(<nome>); Blocos de sentenças para configuração dos modelos e testes Etapa5
  • 28. Relação entre Matriz de Sequência e a Implementação do Modelo 10:49 28 Etapa5
  • 29. 10:49 29 Requisito Caso de Teste Função de Teste Função de Teste e Sequência de Execução Etapa6
  • 30. 10:49 30 Sequência de Execução Modelo1 Modelo2 Modelo3 Modelo4 1 4 7 10 Parâmetro1 Parâmetro2 Parâmetro3 Parâmetro4 3 2 5 6 8 911 Sequencia de ExecuçãoMatriz de Sequência Caso de teste a ser conectado ao modelo. CasoTeste1 +1 Leitura Saída +1 +1 Etapa6
  • 31. Sequência de Execução Alterada 10:49 31 CasoTeste1 4 Modelo1 Modelo2 Modelo3 Modelo4 1 7 10 13 Parâmetro1 Parâmetro2 Parâmetro3 Parâmetro4 2 8 9 11 14 3 Parâmetro1 5 6 12 Etapa6
  • 33. Passo de Simulação 10:49 33 Passo de simulação Model Workspace set Transfere do Workspace todos os parâmetros necessários pelo objeto do modelo. input Transfere para o workspace do objeto todos os parâmetros necessários para execução do modelo. Executa o modelo passando de entrada o workspace do objeto. Obs.: Os nomes das variáveis no workspace devem ser as mesmas necessárias ao modelo. output Transfere para o objeto todos os parâmetros exportados para o workspace pela execução do modelo. Workspace get Transfere para o Workspace todos os parâmetros de interface. Etapa7
  • 34. 10:49 34 Log de Execução Executar a verificação Log de Execução Resultados coletados pela execução de todos os métodos collect de cada caso de teste. Os casos de teste estão associados à sua simulação. Rastreabilidade: requisitos x casos de teste x Etapa8 Chama método collect de todos o testes
  • 36. Conclusão e Contribuições 10:49 36 • O framework demonstrou ser viável para verificação funcional do subsistema de energia de pico e nanossatélites; • Possibilitou rastrear requisitos e casos de teste; • Possibilitou a reuso de casos de testes para as diferentes configurações incluindo o hardware à malha de simulação; • Explorou o uso de modelos híbridos (software + hardware); • A solução do script que interpreta a matriz de sequência pode ser aplicado ao teste de qualquer outro subsistema.
  • 37. Trabalhos futuros 10:49 37 • Aplicar o framework para o EPS de um pico ou nanossatélite mais complexo, priorizando o reuso e adaptação dos modelos desenvolvidos; • Aplicar o framework para outros subsistemas de pico ou nanossatélites, como por exemplo, o subsistema de comunicação; • Adaptar o framework para subsistemas de satélites convencionais; • Estender o framework para outras fases do ciclo de desenvolvimento de um satélite; • Acoplar ferramentas apropriadas para geração automática dos casos de teste, de forma que uma parcela dos casos de teste possam ser gerados automaticamente para posterior utilização pelo framework; • Utilizar outras formas de modelagem para os componentes dos subsistemas, tais como, Excel, LabView, programas em C++, que possam ser interligados pelo framework, criando um ambiente de co-simulation; • Realizar a transformação automática de uma linguagem de descrição de modelos, como OPM (Object Process Methodology), para a Matriz de Sequência, assim como os outros elementos de entrada, de forma a facilitar a abstração de uso para o engenheiro especialista no subsistema e o engenheiro de teste.
  • 38. Publicações 10:49 38 Simulação com Hardware-in-the-loop integrada por Arduino a um Simulador de Satélite Utilização de Realidade Virtual, Aumentada e Cruzada em Simuladores de Satélites no INPE Verificação de Requisitos através do Uso de um Simulador Funcional Towards an Automated Hybrid Test and Simulation Framework to Functional Verification of Nanosatellites‘ Electrical Power Supply Subsystem
  • 41. Demonstração 10:49 41 • O estado de carga da bateria não pode ser menor que 3Ah. 1 • A bateria deve ser recarregada toda vez que o painel solar gerar mais energia que a solicitada pelo barramento. 2