Titulo Estágio
Definição e Implementação do demonstrador Digital Twin do KARVEL
Áreas de especialidade
Engenharia de Software
Local do Estágio
O estágio será executado nas instalações da empresa Critical Software. Poderá ser necessário a deslocação pontual entre sites da Critical Software em Portugal para algumas atividades bem como às instalações do cliente.
Enquadramento
Uma nave espacial não é um sistema isolado no espaço, requer monitorização e controlo que é feito por
operadores em Terra. Este controlo é feito através de software executado no centro de operações de missão
e oferece aos operadores várias funcionalidades, entre elas:
• Monitorização de sistemas: O software permite monitorizar os sistemas da nave espacial, como
por exemplo o sistema de propulsão, o sistema de comunicação, os instrumentos científicos a
bordo, etc.
• Controlo de orientação: O software permite o controlo da orientação da nave espacial, para garantir
que ela está apontada na direção correta em todos os momentos da missão.
• Planeamento de manobras: O software ajuda a planear as manobras necessárias para a nave
espacial, como manobras de correção de curso ou manobras para mudar de orbita.
Existem alguns softwares open-source para o controlo e monitorização (como é o exemplo do YAMCS) e a
Critical Software têm uma versão proprietária, chamada “Lighthouse”, que e permite instanciar
telecomandos (comandos enviados para a nave espacial) e receber telemetrias (mensagens enviadas pela
nave espacial).
Desde o desenvolvimento da nave espacial até ao controlo da missão, quando esta já está em órbita, existe
a necessidade de testar todos os sistemas envolvidos e planear manobras/operações. Isto pode ser feito
de várias formas, que podem ou não incluir o hardware da nave (ex. o seu computador de bordo ou
instrumentos científicos), efetivamente podendo simular esse hardware na totalidade ou parcialidade.
Os digital twins, ou gêmeos digitais, são modelos virtuais que replicam em tempo real um objeto físico ou
um sistema. No domínio espacial, podem ser utilizados como ferramentas complementares do software de
controlo e monitorização, como por exemplo para ver num ambiente de 3 dimensões, a nave espacial e a
sua posição relativa aos vários astros e simular operações para analisar como a nave reagiria sem ter que
efetivamente efetuar esses testes no domínio real. Similarmente ao digital twin, um digital shadow é uma
cópia digital do sistema num momento específico do tempo, portanto sem modelos representativos que
simulem as consequências de uma qualquer alteração do sistema.
O estágio aqui proposto inclui-se no desenvolvimento do demonstrador que será um digital twin/digital
shadow integrado com a plataforma de software embebido para naves espaciais da Critical Software KARVEL.
Objetivo
O objetivo deste projeto de estágio passa pela inclusão do estagiário no desenvolvimento do demonstrador
digital twin ou digital shadow integrado com a plataforma de software embebido para naves espaciais da
Critical Software KARVEL
O aluno deverá realizar as seguintes tarefas:
• Analisar o YAMCS (https://yamcs.org/), o Lighthouse da Critical Software e o plugin para Unreal
Engine MaxQ (https://www.gamergenic.com/project/maxq/).
• Integrar o KARVEL num microcontrolador (ex. Raspberry Pi Pico 2 com arquitetura ARM ou RISC-V,
com o sistema operativo de tempo real RTEMS ou FreeRTOS).
• Fazer o setup do YAMCS e o Lighthouse e a sua comunicação com o KARVEL (envio de telecomandos
para o KARVEL e receção de telemetrias no YAMCS e Lighthouse)
• Definir a arquitetura e criar um digital twin ou digital shadow num engine de jogos como o Unreal
Engine 5, usando por exemplo o plugin MaxQ onde se pode selecionar, a antena da nave espacial
e um painel mostra os telecomandos e telemetrias que estão a ser trocados entre KARVEL e o
software de controlo e monitorização.
• Escrita de um documento técnico que descreva o processo de setup do demonstrador e as suas
funcionalidades e preparação de duas apresentações, uma para a avaliação académica e outra,
mais técnica, para apresentação interna na Critical Software.
Plano de Trabalhos - Semestre 1
As principais atividades a desenvolver no âmbito do projeto de dissertação são:
• T1: Análise dos softwares de monitorização e controlo bem como de frameworks para
implementação do digital twin / shadow;
• T2: Integrar o software embebido para naves espaciais da Critical Software KARVEL num
microcontrolador (ex, Raspberry pi pico 2);
• T3: Integrar o KARVEL com os dois softwares de monitorização e controlo: YAMCS e o da Critical
Software “Lighthouse”;
• T4: Definir e implementar um protótipo de um digital twin ou digital shadow onde deverá ser possível
carregar na antena da nave espacial e ver o tráfego de telecomandos e telemetria;
• T5: Escrita da dissertação sobre os temas acima abordados, assim como a preparação de duas
apresentações anexas, uma para a avaliação académica e outra, mais técnica, para apresentação
interna na Critical Software
Plano de Trabalhos - Semestre 2
As principais atividades a desenvolver no âmbito do projeto de dissertação são:
• T1: Análise dos softwares de monitorização e controlo bem como de frameworks para
implementação do digital twin / shadow;
• T2: Integrar o software embebido para naves espaciais da Critical Software KARVEL num
microcontrolador (ex, Raspberry pi pico 2);
• T3: Integrar o KARVEL com os dois softwares de monitorização e controlo: YAMCS e o da Critical
Software “Lighthouse”;
• T4: Definir e implementar um protótipo de um digital twin ou digital shadow onde deverá ser possível
carregar na antena da nave espacial e ver o tráfego de telecomandos e telemetria;
• T5: Escrita da dissertação sobre os temas acima abordados, assim como a preparação de duas
apresentações anexas, uma para a avaliação académica e outra, mais técnica, para apresentação
interna na Critical Software
Condições
A Critical Software procura um aluno que apresente conhecimentos base em linguagens de programação C,
C++ e Python bem como tecnologias como o UML. Este deve também ter o conhecimento dos processos de
desenvolvimento de software em metodologias Agile e Waterfall. É considerado uma mais-valia se o
candidato estiver familiarizado com uma, ou mais, das normas: ECSS e MISRA.
Na escolha do candidato, a Critical Software tem em conta, não só as suas competências técnicas como as
competências comportamentais, sendo que as duas categorias de competências são avaliadas com uma
importância semelhante. Espera-se igualmente que o candidato esteja motivado para integrar o programa
formativo e de acompanhamento proposto pela Critical Software.
Note-se que é condição para a atribuição do projeto de dissertação a realização de uma entrevista com os
candidatos interessados.
Observações
O início, duração e fim de atividades são flexíveis de forma a adaptar-se às condições definidas pela
instituição de ensino e serão acordados entre a Critical Software e a Instituição de Ensino, atendendo em
primeiro lugar aos imperativos do calendário escolar.
Orientador
Gustavo Dinis
csw-recruitment@criticalsoftware.com 📩