← Voltar para a página inicial

Visão geral das histórias

O backlog abaixo consolida as histórias de usuário do Micromouse Autônomo em seis áreas do sistema, preservando o texto funcional das histórias, seus critérios de aceitação e os relacionamentos rastreáveis com requisitos e issues do repositório.

Total de histórias

38

Histórias consolidadas a partir do backlog do produto e dos requisitos do projeto.

Áreas

6

Controle, percepção, energia, telemetria, estrutura e software.

Relacionamento

Requisitos e Issues

Cada card informa o requisito relacionado, a área do sistema e as issues localizadas no GitHub.

Área 1

Controle e Atuação

Histórias ligadas ao acionamento inicial do robô, controle dos motores, manobras, paradas e tempo de resposta do subsistema de movimento.

US01 RF01

Inicialização e Energização do Sistema

Como Operador, eu quero poder ligar o circuito elétrico através de um botão físico e preparar a interface para que eu possa validar o estado do hardware antes de iniciar qualquer movimento.

Critérios de aceitação

  • O botão físico deve alternar o estado de energia do robô de forma imediata.
  • Ao ser ligado, o sistema deve indicar visualmente (ex: LED) que está energizado.
  • A interface web deve reconhecer a conexão com o robô em até X segundos após a inicialização física.
  • O robô deve permanecer estático após a energização física, aguardando o comando de início de operação.

Relacionamentos

Requisito relacionado: RF01

Área: Controle e Atuação

Issue(s): #54, #15

US02 RF01

Controle de Início de Operação via Web

Como Usuário, eu quero enviar um comando de início através da interface web para que o robô comece a executar o algoritmo de resolução do labirinto de forma autônoma.

Critérios de aceitação

  • A interface web deve possuir um botão de "Iniciar Operação" claramente visível.
  • O robô deve iniciar o movimento em menos de X segundos após o recebimento do comando via Wi-Fi/Web.
  • O sistema deve registrar o horário de início da operação para fins de cronometragem.

Relacionamentos

Requisito relacionado: RF01

Área: Controle e Atuação

Issue(s): #118, #15

US03 RF02

Encerramento e Parada de Emergência

Como Operador, eu quero poder desligar o sistema tanto pelo botão físico quanto pela interface web para garantir que o robô pare imediatamente em caso de falha ou ao concluir o percurso.

Critérios de aceitação

  • O sistema deve permitir encerrar a operação por botão físico (cortar corrente).
  • O sistema deve permitir encerrar a operação por comando via interface web.
  • Em caso de perda de conexão com a interface web por mais de X segundos, o robô deve entrar em estado de parada de segurança (fail-safe).

Relacionamentos

Requisito relacionado: RF02

Área: Controle e Atuação

Issue(s): #55, #16

US04 RF03

Controlar motores

Eu, como cliente, quero que o sistema de controle e atuação seja capaz de converter comandos de navegação em sinais elétricos para que o controle dos motores seja eficiente.

Critérios de aceitação

  • O sistema deve gerar sinais PWM com frequência estável: x kHz.
  • O duty cycle do PWM deve ser ajustável entre 0% e 100%, com resolução mínima de 1%.
  • O sistema deve controlar corretamente: sentido de rotação (frente/reverso) e velocidade (via PWM).
  • Os sinais de direção (GPIO) devem refletir corretamente o comando recebido: frente → ambos motores para frente; esquerda → motor direito ativo, esquerdo reduzido/parado; direita → motor esquerdo ativo, direito reduzido/parado.
  • O sistema deve evitar estados inválidos: não permitir sinais simultâneos de frente e reverso no mesmo motor.
  • O sistema deve garantir estabilidade do sinal: variação máxima de frequência ≤ ±5%.
  • Em caso de falha ou comando inválido: os motores devem entrar em estado seguro (parar).

Relacionamentos

Requisito relacionado: RF03

Área: Controle e Atuação

Issue(s): #56, #18

US05 RF04

Controlar motores

Eu, como cliente, quero que o sistema de controle e atuação seja capaz de converter comandos de navegação em sinais elétricos para que o controle dos motores seja eficiente.

Critérios de aceitação

  • O sistema deve gerar sinais PWM com frequência estável: x kHz.
  • O duty cycle do PWM deve ser ajustável entre 0% e 100%, com resolução mínima de 1%.
  • O sistema deve controlar corretamente: sentido de rotação (frente/reverso) e velocidade (via PWM).
  • Os sinais de direção (GPIO) devem refletir corretamente o comando recebido: frente → ambos motores para frente; esquerda → motor direito ativo, esquerdo reduzido/parado; direita → motor esquerdo ativo, direito reduzido/parado.
  • O sistema deve evitar estados inválidos: não permitir sinais simultâneos de frente e reverso no mesmo motor.
  • O sistema deve garantir estabilidade do sinal: variação máxima de frequência ≤ ±5%.
  • Em caso de falha ou comando inválido: os motores devem entrar em estado seguro (parar).

Relacionamentos

Requisito relacionado: RF04

Área: Controle e Atuação

Issue(s): #56, #17

US06 RF05

Controlar rodas independentemente

Eu, como cliente, quero que o sistema de controle e atuação tenha controle independente das rodas que o minimouse possa realizar curvas.

Critérios de aceitação

  • O sistema deve controlar, pelo menos, 2 rodas de forma independente, permitindo velocidades diferentes entre motor esquerdo e direito.
  • O sistema deve ser capaz de executar os seguintes tipos de curva: curva à esquerda e curva à direita.
  • A diferença de velocidade entre as rodas deve ser ajustável com resolução mínima de 1% (PWM).
  • O micromouse deve conseguir completar uma curva de 90° sem sair da faixa do trajeto (erro máximo ≤ x cm).
  • O sistema não deve gerar estados inválidos: comandos conflitantes para o mesmo motor.
  • Em caso de comando inválido ou falha: o sistema deve parar ambos os motores (fail-safe).

Relacionamentos

Requisito relacionado: RF05

Área: Controle e Atuação

Issue(s): #57, #20

US07 RF06

Parar no objetivo

Eu, como cliente, quero que o sistema de controle e atuação possa, ao identificar o centro do labirinto, interromper o movimento para que o objetivo seja alcançado.

Critérios de aceitação

  • O sistema deve considerar como centro do labirinto uma região composta por 4 células adjacentes (2x2).
  • O sistema deve identificar que o objetivo foi alcançado quando o micromouse estiver dentro de qualquer uma das 4 células centrais.
  • A identificação deve ser baseada em: posição no grid (coordenadas) ou lógica de navegação (algoritmo de exploração).
  • O sistema deve reconhecer a entrada na região central com taxa de acerto ≥ 95%.
  • O micromouse deve parar completamente: com ambos motores em PWM = 0 dentro de uma tolerância de ≤ Y cm a partir da entrada na célula central.
  • O sistema deve garantir que: o robô não saia da região central após a parada e não ocorra reinício automático do movimento.

Relacionamentos

Requisito relacionado: RF06

Área: Controle e Atuação

Issue(s): #58, #19

US26 RNF01

Precisão de Manobra e Tempo de Resposta

Como Operador, eu quero que o sistema de controle responda aos sensores com latência mínima para que o robô execute curvas e correções de trajetória sem colidir com as paredes.

Critérios de aceitação

  • A latência entre a detecção de uma parede pelo sensor e a resposta dos motores não deve exceder X ms.
  • O robô deve ser capaz de realizar curvas de 90 graus mantendo uma distância mínima de segurança das paredes laterais.

Relacionamentos

Requisito relacionado: RNF01

Área: Controle e Atuação

Issue(s): #92, #22

Área 2

Percepção e Mapeamento

Histórias relacionadas à leitura do ambiente, processamento sensorial, criação do mapa do labirinto e cálculo do melhor percurso.

US08 RF07

Detectar paredes

Como cliente, eu quero que o sistema de percepção detecte obstáculos no caminho para que o micromouse não colide com uma parede.

Critérios de aceitação

  • O micromouse deve detectar obstáculos à frente, à esquerda e à direita utilizando sensores dedicados.
  • A detecção deve ocorrer dentro de uma faixa de 5 cm a 10 cm, com margem de erro máxima de ±1 cm.
  • O micromouse deve evitar colisão, mantendo distância mínima de ≥ 2 cm da parede.

Relacionamentos

Requisito relacionado: RF07

Área: Percepção e Mapeamento

Issue(s): #59, #24

US09 RF08

Processar dados dos sensores

Como cliente, eu quero que o sistema de percepção processe dados vindo dos sensores para a tomada de decisão (parar, movimentar para determinado sentido).

Critérios de aceitação

  • O processamento dos dados dos sensores deve ocorrer com latência máxima de X ms.
  • O sistema deve processar dados na ordem de chegada (FIFO).
  • O sistema deve validar integridade dos dados (validação simples).
  • Em caso de dado inválido ou corrompido: o dado deve ser descartado e uma nova leitura deve ser solicitada automaticamente.
  • O sistema deve garantir taxa de atualização mínima de Y Hz.
  • O processamento deve gerar uma decisão válida: parar, seguir em frente, virar à esquerda e virar à direita.

Relacionamentos

Requisito relacionado: RF08

Área: Percepção e Mapeamento

Issue(s): #60, #21

US10 RF09

Registrar ambiente

Eu, como cliente, preciso que o rato registre o ambiente à sua volta durante o percurso para identificar a presença de paredes e saídas disponíveis.

Critérios de aceitação

  • Detectar paredes frontais e laterais, caso existam, em cada célula visitada.
  • Marcar cada célula visitada.
  • Marcar posição atual do rato.
  • Detectar espaços vazios e as saídas de cada célula.
  • Salvar os dados no banco de dados.

Relacionamentos

Requisito relacionado: RF09

Área: Percepção e Mapeamento

Issue(s): #61, #25

US11 RF10

Mapear labirinto

Eu, como cliente, quero que os dados armazenados no registro do ambiente sejam utilizados para mapear o labirinto, permitindo a locomoção e navegação do rato.

Critérios de aceitação

  • Atualizar os dados do mapa a cada nova visita de célula.
  • Guardar mapa em memória.
  • A partir dos dados das proximidades do micromouse, definir a célula visitada.

Relacionamentos

Requisito relacionado: RF10

Área: Percepção e Mapeamento

Issue(s): #62, #23

US12 RF11

Identificar percurso ótimo

Eu, como cliente, quero que o software do micromouse identifique o percurso ótimo para aumentar o máximo possível a sua eficiência durante sua trajetória no labirinto.

Critérios de aceitação

  • Encontrar um caminho válido (sem colisões ou loops infinitos).
  • O sistema deve calcular um caminho com o menor número de células e percorrendo a menor distância possível.
  • Após o mapeamento o micromouse deve ser capaz de refazer o percurso utilizando o caminho ótimo calculado.

Relacionamentos

Requisito relacionado: RF11

Área: Percepção e Mapeamento

Issue(s): #63, #27

US27 RNF02

Garantir execução autônoma

Como cliente, eu quero que o sistema de percepção seja capaz de operar sem nenhum tipo de intervenção humana após iniciado para demonstrar autonomia do projeto.

Critérios de aceitação

  • Após inicialização, o micromouse deve operar sem intervenção humana até o término da execução.
  • O sistema deve ser capaz de: perceber ambiente, tomar decisão e executar movimento.

Relacionamentos

Requisito relacionado: RNF02

Área: Percepção e Mapeamento

Issue(s): #93, #26

Área 3

Energia

Histórias voltadas ao fornecimento de energia do sistema, autonomia operacional, alocação da bateria e proteção contra sobrecorrente e temperatura.

US13 RF12

Energizar sistema

Eu, como cliente, preciso que todos os componentes do sistema do micromouse sejam energizados por meio da bateria escolhida, para que assim seja possível o funcionamento da parte física do rato durante a realização da prova do labirinto.

Critérios de aceitação

  • A bateria deve ser capaz de energizar todos os componentes cruciais do micromouse simultaneamente.
  • A distribuição de energia deve ser estável para todos os módulos (MCU, sensores, drivers de motor).
  • A bateria deve ser integrável com o sistema de monitoramento por meio de um sensor.
  • A bateria deve operar dentro da faixa de tensão suportada pelos componentes.
  • Todos os componentes essenciais (microcontrolador, sensores e motores) devem inicializar sem falhas quando a bateria for conectada.

Relacionamentos

Requisito relacionado: RF12

Área: Energia

Issue(s): #64, #29

US14 RF13

Dimensionar energia

Eu, como cliente, preciso que a bateria do produto consiga armazenar energia o suficiente para o seu pleno funcionamento (locomoção, cálculo da solução do labirinto, telemetria etc).

Critérios de aceitação

  • O consumo energético total deve ser medido e validado de forma prática.
  • A carga da bateria deve permitir que o rato consiga realizar cada uma de suas funções sem interrupções.

Relacionamentos

Requisito relacionado: RF13

Área: Energia

Issue(s): #65, #28

US15 RF13

Alocação da bateria nas dimensões do produto

Eu, como cliente, preciso que a bateria seja alocada nas dimensões do produto, para garantir sua plena locomoção e funcionamento portátil.

Critérios de aceitação

  • A bateria deve caber nos limites estruturais do carrinho (chassi).
  • A bateria deve ficar firmemente fixada ao chassi.
  • A bateria não deve atrapalhar na locomoção do rato.
  • Os conectores da bateria devem ser acessíveis para ajustes e manutenção.

Relacionamentos

Requisito relacionado: RF13

Área: Energia

Issue(s): #65, #28

US16 RF14

Controlar dissipação

Eu, como cliente, quero que o mouse limite corrente e temperatura automaticamente para evitar danos aos componentes.

Critérios de aceitação

  • O sistema detecta sobrecorrente acima de X A.
  • Ao exceder limite térmico, reduz potência dos motores.
  • Em condição crítica, desliga com segurança.
  • Após o desligamento, emite alerta de falha.

Relacionamentos

Requisito relacionado: RF14

Área: Energia

Issue(s): #79, #31

US28 RNF03

Garantir autonomia operacional

Eu, como cliente, preciso que o ratinho consiga resolver múltiplos labirintos sem necessidade de recarga, para proporcionar praticidade e celeridade ao processo de resolução de diferentes labirintos.

Critérios de aceitação

  • O rato deve conseguir resolver todos os labirintos sem recarga.
  • O sistema deve permanecer operacional por um tempo mínimo contínuo sem falhas.
  • O desempenho do micromouse (velocidade, resposta dos sensores, controle) não deve degradar significativamente entre o primeiro e o último labirinto.

Relacionamentos

Requisito relacionado: RNF03

Área: Energia

Issue(s): #94, #30

US29 RNF04

Sustentar desempenho energético

Eu, como cliente, quero que o robô mantenha a velocidade operacional prevista durante o percurso sem perda de desempenho por falta de energia.

Critérios de aceitação

  • O robô deve atingir a velocidade operacional definida pelo projeto.
  • O robô deve manter essa velocidade durante a execução normal do percurso.
  • A fonte de energia deve suportar a operação contínua durante todo o teste planejado.

Relacionamentos

Requisito relacionado: RNF04

Área: Energia

Issue(s): #95, #33

Área 4

Telemetria

Histórias voltadas à coleta, transmissão, armazenamento e visualização dos dados de execução do robô em tempo real e em histórico.

US17 RF15

Transmitir Dados dos Sensores

Eu, como operador, quero que os sensores coletem e transmitem os dados do labirinto em um tempo dentro do limite de percepção média humana.

Critérios de aceitação

  • Os sensores devem coletar e transmitir os dados do labirinto em um intervalo máximo de 100 ms.
  • A transmissão dos dados não deve sofrer interrupções ou perdas que comprometam a continuidade da leitura.
  • O sistema deve manter a frequência de atualização estável mesmo durante a navegação ativa do robô.
  • O atraso entre a leitura do sensor e a exibição/uso do dado não deve ultrapassar o limite estabelecido de 100 ms.

Relacionamentos

Requisito relacionado: RF15

Área: Telemetria

Issue(s): #32

US18 RF16

Fornecer Variáveis de Telemetria

Como engenheiro de testes, quero visualizar as variáveis de telemetria do Micromouse em tempo real, para monitorar o estado do robô e diagnosticar comportamentos durante a navegação no labirinto.

Critérios de aceitação

  • O sistema deve fornecer a tensão atual da bateria em Volts (V).
  • O sistema deve fornecer a corrente de consumo em miliamperes (mA).
  • O sistema deve fornecer a carga restante da bateria em Coulombs (C) e percentual (%).
  • O sistema deve fornecer a posição atual do robô no labirinto.
  • O sistema deve fornecer a detecção de paredes ao redor do robô em tempo real.

Relacionamentos

Requisito relacionado: RF16

Área: Telemetria

Issue(s): #36

US19 RF17

Transmitir Dados via nRF24L01

Eu, como operador, quero que o módulo nRF24L01 consiga transmitir os dados captados pelos sensores de forma fidedigna para que o impacto de ruídos sejam imperceptíveis.

Critérios de aceitação

  • O módulo nRF24L01 deve transmitir os dados dos sensores sem perdas perceptíveis de informação.
  • A taxa de pacotes corrompidos ou perdidos deve ser suficientemente baixa a ponto de não impactar a tomada de decisão do sistema.
  • O sistema deve operar em um canal de frequência com menor interferência, minimizando o impacto de ruídos externos.

Relacionamentos

Requisito relacionado: RF17

Área: Telemetria

Issue(s): #34

US20 RF18

Armazenar dados de execução

Eu, como operador, quero que o sistema armazene os dados de cada tentativa, para que eu possa comparar o desempenho entre execuções.

Critérios de aceitação

  • Cada tentativa deve possuir um identificador único.
  • O tempo de conclusão, a velocidade média, o consumo energético, o status (sucesso, falha ou interrompido) e o trajeto percorrido no labirinto estão sendo armazenados.
  • Os dados devem estar disponíveis para consulta após a inserção.

Relacionamentos

Requisito relacionado: RF18

Área: Telemetria

Issue(s): #81, #37

US21 RF19

Exibir dados

Eu, como cliente, quero visualizar em tempo real e em histórico os dados da execução, para que eu possa monitorar e analisar o desempenho do micromouse.

Critérios de aceitação

  • Os dados devem ser exibidos em tempo real durante a execução.
  • Deve ser possível visualizar tentativas separadamente.
  • O sistema deve exibir tempo, consumo, trajeto e status da execução.

Relacionamentos

Requisito relacionado: RF19

Área: Telemetria

Issue(s): #83, #35

US30 RNF05

Garantir atualização contínua

Eu, como cliente, quero que o sistema transmita a telemetria continuamente durante a execução, para que eu possa acompanhar o comportamento do micromouse em tempo real.

Critérios de aceitação

  • A telemetria deve ser enviada enquanto o micromouse estiver em execução.
  • O sistema não deve travar durante a transmissão.
  • As informações críticas devem chegar à interface gráfica com atraso mínimo perceptível.

Relacionamentos

Requisito relacionado: RNF05

Área: Telemetria

Issue(s): #96, #39

US31 RNF06

Apresentação estruturada dos dados

Eu, como cliente, quero que o sistema apresente os dados de forma organizada, com visualização do trajeto e uma tabela de métricas da execução, para que eu possa analisar e comparar rapidamente as informações apresentadas.

Critérios de aceitação

  • Os dados devem ser exibidos em uma interface organizada por secções.
  • A visualização do trajeto deve apresentar o caminho percorrido pelo micromouse no labirinto.
  • A tabela deve apresentar, no mínimo, trajeto, tempo, consumo energético e status da execução.
  • Cada tentativa deve aparecer separadamente na visualização.
  • A organização dos dados deve permitir leitura e interpretação rápida.

Relacionamentos

Requisito relacionado: RNF06

Área: Telemetria

Issue(s): #97, #38

Área 5

Estrutura

Histórias focadas no chassi, na montagem física do micromouse, no ambiente de testes e nas restrições dimensionais e de manutenção.

US22 RF20

Integração e Fixação de Componentes

Como Cliente, eu quero que o chassi suporte e fixe rigidamente todos os componentes (bateria, motores, sensores e circuitos) para que o robô mantenha a integridade estrutural e funcional durante acelerações e manobras bruscas.

Critérios de aceitação

  • O chassi deve possuir furações ou suportes específicos para a bateria, dois motores e as placas de circuito.
  • Nenhum componente interno deve se deslocar mais de 1mm durante a operação normal ou vibração.
  • A estrutura deve resistir a impactos leves contra as paredes do labirinto sem sofrer deformação plástica ou quebra.

Relacionamentos

Requisito relacionado: RF20

Área: Estrutura

Issue(s): #85

US23 RF21

Visão Sensorial

Como Cliente, eu quero que os sensores de distância e mapeamento estejam posicionados sem obstruções para que eu possa detectar paredes e obstáculos com precisão em tempo real.

Critérios de aceitação

  • O campo de visão (FOV) de cada sensor deve estar 100% livre de partes do chassi ou fiação.
  • Os suportes dos sensores devem garantir um alinhamento constante em relação ao solo e ao eixo central do robô.

Relacionamentos

Requisito relacionado: RF21

Área: Estrutura

Issue(s): #86

US24 RF22

Construir ambiente de Teste

Como engenheiro de testes, quero construir um labirinto 4x4 físico, para validar o comportamento do Micromouse em um ambiente controlado antes de testes em labirintos maiores.

Critérios de aceitação

  • O labirinto deve ter dimensões de 4x4 células, seguindo as especificações: 18 cm de lado x 5 cm de altura x 1,2 cm de espessura.
  • O labirinto deve possuir paredes físicas brancas e com topo vermelho bem fixadas, sem folgas ou instabilidades que possam interferir na navegação do robô.
  • O labirinto deve possuir chão preto.
  • O labirinto deve conter um ponto de partida, sendo um beco sem saída, e um ponto de chegada de tamanho 2x2 claramente definido e sinalizado.
  • O ambiente deve permitir a reconfiguração das paredes, possibilitando diferentes arranjos de labirinto para múltiplos cenários de teste.
  • O labirinto deve ser compatível com as dimensões físicas do Micromouse, garantindo que o robô consiga navegar por todas as células sem obstruções.

Relacionamentos

Requisito relacionado: RF22

Área: Estrutura

Issue(s): #87

US32 RNF07

Restrições de Competição

Como Cliente, eu quero que o robô respeite os limites de 15x15 cm e o peso máximo estabelecido para que o projeto seja elegível para a competição e mantenha a estabilidade dinâmica.

Critérios de aceitação

  • A projeção horizontal do robô (comprimento x largura) não deve exceder 15x15 cm em nenhuma configuração de operação.
  • O peso total não deve ultrapassar X kg.
  • O centro de massa deve ser posicionado de forma a evitar que o robô tombe em acelerações máximas.

Relacionamentos

Requisito relacionado: RNF07

Área: Estrutura

Issue(s): #98, #43

US33 RNF08

Restrições de Competição

Como Cliente, eu quero que o robô respeite os limites de 15x15 cm e o peso máximo estabelecido para que o projeto seja elegível para a competição e mantenha a estabilidade dinâmica.

Critérios de aceitação

  • A projeção horizontal do robô (comprimento x largura) não deve exceder 15x15 cm em nenhuma configuração de operação.
  • O peso total não deve ultrapassar X kg.
  • O centro de massa deve ser posicionado de forma a evitar que o robô tombe em acelerações máximas.

Relacionamentos

Requisito relacionado: RNF08

Área: Estrutura

Issue(s): #99, #44

US34 RNF09

Integração e Fixação de Componentes

Como Cliente, eu quero que o chassi suporte e fixe rigidamente todos os componentes (bateria, motores, sensores e circuitos) para que o robô mantenha a integridade estrutural e funcional durante acelerações e manobras bruscas.

Critérios de aceitação

  • O chassi deve possuir furações ou suportes específicos para a bateria, dois motores e as placas de circuito.
  • Nenhum componente interno deve se deslocar mais de 1mm durante a operação normal ou vibração.
  • A estrutura deve resistir a impactos leves contra as paredes do labirinto sem sofrer deformação plástica ou quebra.

Relacionamentos

Requisito relacionado: RNF09

Área: Estrutura

Issue(s): #100, #45

US35 RNF10

Integração e Fixação de Componentes

Como Cliente, eu quero que o chassi suporte e fixe rigidamente todos os componentes (bateria, motores, sensores e circuitos) para que o robô mantenha a integridade estrutural e funcional durante acelerações e manobras bruscas.

Critérios de aceitação

  • O chassi deve possuir furações ou suportes específicos para a bateria, dois motores e as placas de circuito.
  • Nenhum componente interno deve se deslocar mais de 1mm durante a operação normal ou vibração.
  • A estrutura deve resistir a impactos leves contra as paredes do labirinto sem sofrer deformação plástica ou quebra.

Relacionamentos

Requisito relacionado: RNF10

Área: Estrutura

Issue(s): #104, #47

US36 RNF11

Manutenibilidade

Como Cliente, eu quero ter fácil acesso aos componentes internos para que eu possa realizar trocas de bateria e ajustes de hardware rapidamente entre as rodadas de teste.

Critérios de aceitação

  • A bateria deve ser removível em menos de 30 segundos.
  • O acesso aos pontos de medição da placa e conectores de programação não deve exigir a desmontagem total do chassi.
  • As peças fixas não devem atrapalhar o procedimento de troca e ajuste.

Relacionamentos

Requisito relacionado: RNF11

Área: Estrutura

Issue(s): #101, #46

Área 6

Software

Histórias ligadas ao processamento em tempo real, navegação, persistência de dados, interface de controle e atributos de confiabilidade e otimização do sistema.

US22 RF23

Processar dados em tempo real

Como sistema de controle autônomo, eu quero processar dados dos sensores em tempo real para que eu possa tomar decisões continuamente durante a operação.

Critérios de aceitação

  • O sistema deve coletar dados dos sensores em intervalos máximos de X milissegundos.
  • Os dados devem ser processados sem interrupção durante a execução.
  • Decisões devem ser atualizadas imediatamente após nova leitura.
  • Em caso de falha de sensor, o sistema deve registrar erro e continuar operando com os demais.
  • O tempo de processamento não deve ultrapassar X ms por ciclo.

Relacionamentos

Requisito relacionado: RF23

Área: Software

Issue(s): #88, #48

US23 RF24

Controlar navegação

Como sistema de navegação autônoma, eu quero gerar comandos de movimento com base no algoritmo de navegação, para que o rato consiga se deslocar corretamente no labirinto.

Critérios de aceitação

  • O sistema deve gerar comandos de movimento a cada ciclo de decisão.
  • Os comandos devem refletir o estado atual do labirinto.
  • O agente deve evitar colisões com obstáculos detectados.
  • O sistema deve calcular a rota no labirinto.
  • Os comandos devem ser enviados ao rato com latência máxima de X ms.

Relacionamentos

Requisito relacionado: RF24

Área: Software

Issue(s): #89, #49

US24 RF25

Gerenciar armazenamento

Como sistema de gerenciamento de dados, eu quero armazenar dados em um banco estruturado, para que seja possível consultar e analisar informações posteriormente.

Critérios de aceitação

  • O sistema deve armazenar dados de sensores e decisões em banco estruturado.
  • Os dados devem ser persistidos sem perda mesmo em caso de falha.
  • Deve ser possível recuperar dados por intervalo de tempo.
  • O sistema deve suportar inserções contínuas sem degradar desempenho.
  • O tempo de escrita no banco não deve ultrapassar X ms por operação.

Relacionamentos

Requisito relacionado: RF25

Área: Software

Issue(s): #90, #50

US25 RF26

Controlar interface

Como cliente, quero iniciar e interromper a execução do micromouse por meio da interface, para ter controle seguro sobre o início e o término da operação durante os testes e demonstrações.

Critérios de aceitação

  • O sistema deve iniciar suas tarefas e encerrá-las mediante.
  • O tempo de resposta não deve ultrapassar X ms.

Relacionamentos

Requisito relacionado: RF26

Área: Software

Issue(s): #91, #51

US37 RNF12

Garantir confiabilidade

Como cliente do sistema, quero que o micromouse execute toda a missão sem falhas ou interrupções, para garantir confiabilidade durante as demonstrações e evitar perda de desempenho ou de pontuação.

Critérios de aceitação

  • Critérios de aceitação não informados no PDF.

Relacionamentos

Requisito relacionado: RNF12

Área: Software

Issue(s): #102, #53

US38 RNF13

Otimizar percurso

Como cliente do sistema, quero que o micromouse aprenda com execuções anteriores para otimizar automaticamente o percurso até o objetivo, a fim de reduzir o tempo de conclusão e aumentar o desempenho nas tentativas seguintes.

Critérios de aceitação

  • Critérios de aceitação não informados no PDF.

Relacionamentos

Requisito relacionado: RNF13

Área: Software

Issue(s): #103, #52