Pular para conteúdo

Diagrama de Estados

1. Estados Iniciais (Setup e Validação)

  • Boot e Inicialização do Sistema: O microcontrolador é energizado e o software embarcado entra em execução.
  • Verificação de Periféricos: O sistema realiza uma checagem de integridade para garantir que os sensores de distância, motores e comunicação sem fios estão a responder corretamente antes de iniciar qualquer movimento.

2. Modos de Operação (Estados Principais)

2.1. Modo de Descoberta (Mapeamento do Labirinto)

  • Execução do Algoritmo de Busca: O robô inicia a exploração de células desconhecidas.
  • Leitura Contínua de Sensores: Em cada célula, o robô examina os arredores para decidir a próxima ação (seguir em frente, virar à esquerda ou virar à direita).
  • Recuperação de Beco Sem Saída: Caso o robô identifique uma rota falha (beco), executa um retorno e volta ao último ponto de bifurcação/transição válido.
  • Transmissão de Telemetria: Paralelamente à navegação, o robô envia em tempo real os dados da rota calculada, estado da bateria e leituras dos sensores.
  • Registo no Frontend: A interface recebe, processa e apresenta os dados de maneira depurada para a equipe acompanhar o mapeamento.

2.2. Modo de Rota Otimizada (Caminho para o Centro)

  • Cálculo do Caminho Mais Curto: Com base no mapa gerado no modo de descoberta, o algoritmo processa e define a rota mais rápida e eficiente da origem até ao centro.
  • Execução da Corrida: O robô inicia a movimentação seguindo estritamente a rota pré-calculada, otimizando a velocidade.
  • Recálculo de Rota (Recuperação): Caso os sensores detetem que o robô se desviou do caminho ou errou uma curva, a movimentação é interrompida para refazer o cálculo da rota ou, se necessário, reativar o mapeamento.

2.3 Controle Manual

  • Desligamento remoto: Caso necessário, equipe pode desligar o robô remotamente através do frontend

3. Estados Finais (Fim de Execução)

  • Sucesso: O robô encontra o centro do labirinto, salva a rota mais rápida na sua memória e encerra a rotina de busca de forma segura.
  • Falha por Comunicação: O sistema entra em estado de paragem segura após detetar a perda prolongada de comunicação entre os sensores e o microcontrolador, ou a perda de ligação de dados com o computador base.
  • Falha Física: O software identifica um travamento mecânico e corta a força para evitar danos no chassis.
  • Sistema frontend: O sistema Frontend fornece um resumo de tudo que ocorreu durante a operação, não importando sucesso ou fracasso.

4. Representação Gráfica - Diagrama de Estados

image