Upload
italo-pinto-rodrigues
View
98
Download
1
Embed Size (px)
Citation preview
Defesa Final de Dissertação
UM FRAMEWORK PARA A VALIDAÇÃO AUTOMÁTICA DE
MODELOS APLICADO AO SUBSISTEMA DE ENERGIA DE UM
PICOSSATÉLITEAluno: 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 EnergiaPico 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 SolarRegulagem e Controle
Armazenamento de Energia
CargasFonte 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 GeralFramework
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
ArtefatoAtividade
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.
2A bateria deve ser recarregada sempre que o painel solar gerar mais energia
que a solicitada pelo barramento.
3A bateria deve fornecer energia sempre que a demanda de energia do
barramento for maior que a energia gerada pelos painéis solares.
Etap
a 1
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.
Etap
a 2
Modelos e Interfaces do Subsistema
10:49
16Etap
a 3
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
Etap
a 3
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.Etap
a 3
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).
Etap
a 3
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.
Etap
a 3
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
Etap
a 3
Configuração de Execução
10:49
22
Ambiente de Simulação Virtual
Modelo dosEquipamentos do Satélite
ModelosAmbientais
Modelos da Dinâmica do Satélite Modelo do
Subsistema(EPS)
Ambiente de Simulação Virtual
Modelo do Subsistema
(EPS)
Modelo dosEquipamentos do Satélite
ModelosAmbientais
Modelos da Dinâmica do Satélite
Modelo do FEE
Ambiente de Simulação Virtual
Hardware(EPS)
Modelo dosEquipamentos do Satélite
ModelosAmbientais
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
Etap
a 4
Hardware-in-the-loop
10:49
23Etap
a 4
Hardware-in-the-loop
10:49
24
Ambiente de
Simulação Virtual
FEEComponente do
Subsistema em
Teste (PCDU)
Etap
a 4
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( );
Etap
a 5
Matriz de Sequência
10:49
26Etap
a 5
Matriz de Sequência
10:49
27
Importar os elementos do modelo/testeimport <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
Etap
a 5
Relação entre Matriz de Sequência e a Implementação do Modelo
10:49
28Etap
a 5
10:49
29
Requisito Caso de Teste
Função
de Teste
Função de Teste e Sequência de ExecuçãoEt
apa
6
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
Etap
a 6
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
Etap
a 6
10:49
32
Sequência de Execução AlteradaEt
apa
6
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.
outputTransfere 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.
Etap
a 7
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
Etap
a 8
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