Você está na página 1de 10

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ

LINGUAGENS FORMAIS E AUTÔMATOS

DIEGO TABORDA PEREIRA


PEDRO BUENO RIOS

AUTÔMATO ROVER CURIOSITY

PONTA GROSSA
2022
SUMÁRIO

1 INTRODUÇÃO 2

2 DESENVOLVIMENTO 2

2.1 DEFINIÇÃO FORMAL 2

2.2 FUNÇÃO DE TRANSIÇÃO 2

3 FIGURAS DO MODELO 3

4 IMPLEMENTAÇÃO 6

5 CONSIDERAÇÕES FINAIS 6

6 REFERÊNCIAS 7
2

1 INTRODUÇÃO
Com início na guerra fria os hovers de exploração espacial vem tomando
cada vez mais espaço no âmbito de estudos e investigação interplanetária, mesmo
tendo diversas informações aqui da terra sobre nossos planetas vizinhos, ainda sim
é muito mais seguro, prático e econômico nos utilizarmos de robôs que fazem esse
primeiro reconhecimento por nós, com toda essa responsabilidade estes robôs
autômatos precisam ser muito bem pensados e programados, neste trabalho é feito
uma análise e construção de um veículo autômato com base no Rover Curiosity
enviado a Marte pela NASA na missão Mars Science Laboratory (MSL).

2 DESENVOLVIMENTO
Para que fosse possível a criação deste autônomo, recorreu-se a
alguns vídeos sobre o funcionamento do hover assim como a seção sobre esta
missão no site da NASA, para que assim houvesse uma base para a criação dos
estados e transições do mesmo. Após isto, por meio de simulações mentais foram
sendo criados vários dos possíveis cenários o qual o hover poderia ter, como:realizar
coleta de solo ou atmosfera, enviar sua atual localização via satélite, desviar de
obstáculos através de rotações tanto a esquerda como a direita, análises de
espectrometria, entre outros cenários. Neste autômato criado, ele se inicia em
desligado e termina com o hover parado ou sendo desligado.

2.1 DEFINIÇÃO FORMAL

2.2 FUNÇÃO DE TRANSIÇÃO


F:
15 a Direita: Avançar-> Seguir em Frente
15 a Direita: [Transição Vazia]-> Parado
15 a Esquerda: Avançar -> Seguir em Frente
15 a Esquerda: [Transição Vazia]-> Parado
Amostra da Atmosfera: Realizar análise -> Resultados da Atmosfera
Amostra do Solo: Realizar análise -> Resultados da Atmosfera
Armazenamento de amostra: [Transição Vazia] -> Camera de Análise
Câmera Frontal
Câmera Traseira
3

Camera de Análise: Coletar Solo -> Amostra do Solo


Camera de Análise: Coletar Atmosfera -> Amostra da Atmosfera
Cámara de Cromatografía: Acionar Laser -> Laser de Análise
Câmera de Cromatografia: [Transição Vazia] -> Parado
Descarte da amostra: [Transição Vazia] -> Camera de Análise
Desligado: Ligar -> Parado
Laser de Análise: [Transição Vazia] -> Câmera de Cromatografia
Localização via Satélite: [Transição Vazia] -> Parado
Parado: Desligar -> Desligado
Parado: Parar ->Parado
Parado: Ligar Camera de Análise -> Camera de Análise
Parado: Girar a Direita -> 15° a Direita
Parado: Girar a Esquerda -> 15° a Esquerda
Parado: Avançar -> Seguir em Frente
Parado: Enviar Localização -> Localização via Satélite
Parado: Recuar -> Retroceder
Retroceder: Parar -> Parado
Retroceder: [Transição Vazia] -> Câmera Traseira
Seguir em Frente: [Transição Vazia] -> Parado
Seguir em Frente: [Transição Vazia] -> Câmera Frontal
Resultados da Amostra: Rejeitar -> Descarte de Amostra
Resultados da Amostra: Guardar -> Armazenamento de Amostra

3 FIGURAS DO MODELO
O modelo do autômato foi criado usando o programa yEd:
4

Figura 1: Visão Total do Autômato

Figura 2: Sistema de Coleta de Amostras


5

Figura 3: Sistema de desvio

Figura 4: Demais funcionalidades


6

4 IMPLEMENTAÇÃO
Ao buscar por ferramentas que pudessem auxiliar na implementação
do autômato, chegamos à conclusão de que as bibliotecas Visual Automata e
Automata, desenvolvidas em Python, fossem as melhores opções para o
desenvolvimento do modelo autômato apresentado neste trabalho, assim para
prosseguir com a implementação, alguns ajustes na representação do
alfabeto(conjunto de palavras) tiveram que ser feitas.

O alfabeto aceito pelo autômato teve que ser alterado de forma que cada
palavra atômica do alfabeto fosse unitária, ou seja, de apenas um dígito, pois a
ferramenta percorre por um conjunto de caracteres, em que cada caracter é uma
palavra do alfabeto, determinando assim os estados da máquina.

Definindo o alfabeto da seguinte forma na linguagem python, temos que:

Figura 5: Definição do alfabeto em python

Em que cada símbolo possui um significado, na qual:

I. l = Ligar
II. d = Desligar
III. a = Avançar
IV. d = 15º à esquerda
V. e = 15º à Direita
VI. r = Recuar
VII. @ = Ligar Camera de Análise
VIII. # = Enviar Localização
IX. p = Parar
X. $ = Ligar Camera de Cromatografia
XI. % = Acionar Laser
XII. & = Coletar Atmosfera
7

XIII. * = Coletar Solo


XIV. : = Realizar Análise
XV. ] = Armazenar Amostra
XVI. [ = Rejeitar Amostra

A seguir são apresentados alguns exemplos de saídas apresentadas pela


ferramenta Visual Automata.

1. Palavra: lapeapdap@&:]ap

Figura 6: Exemplo de saída de uma palavra aceita

2. Palavra: lapdaprp$%@*:

Figura 7: Exemplo de saída de uma palavra não aceita


8

5 CONSIDERAÇÕES FINAIS
Em um ambiente extra-terrestre existem inúmeras variáveis que
interferem, ou mudam, o funcionamento da máquina como regiões de calor intenso,
obstáculos no caminho, entre outras. Assim, para desenvolver um modelo de um
autômato finito que se encaixa-se no escopo do projeto, tivemos que fazer algumas
escolhas sobre quais módulos iríamos representar para que o modelo fosse eficiente
e coeso com o tema.
Vale ressaltar a importância do Rover Curiosity para o avanço da
pesquisa em diversas áreas da ciência que, portanto, precisa ser eficaz e preciso a
fim de promover confiança nas suas ações permitindo segurança ao próprio e uma
amostra de dados mais eficiente.
9

6 REFERÊNCIAS

Mars Science Laboratory. NASA, 2022. Disponível em:


<https://www.nasa.gov/mission_pages/msl/index.html>. Acesso em: 24/09/22.

Dobra Espacial. Curiosity VS. Perseverance | Qual a diferença?. Youtube, 10/02/21.


Disponível em: <https://www.youtube.com/watch?v=C87cd0Y7MDU>. Acesso em:
24/09/22

Mars Science Laboratory Fact Sheet. NASA, 2022. Disponível em:


<https://mars.nasa.gov/msl/news/pdfs/MSL_Fact_Sheet.pdf>. Acesso em: 25/09/22.

Automata. Evans, Calleb. 2016. Disponível em:


<https://pypi.org/project/automata-lib/>. Acesso em: 01/10/22

Visual Automata. Lewi Lie Uberg, 2021. Disponível em:


<https://pypi.org/project/visual-automata/>. Acesso em: 01/10/22

Você também pode gostar