Projeto

Depois de pensarmos bastante sobre a estrutura básica do nosso projeto, decidimos que ficaria como no diagrama de blocos da figura abaixo

Também tivemos que definir os possíveis estados que o carrinho pode assumir, isso ajuda bastante na hora de construir os circuitos eletrônicos a serem utilizados.

Temos nosso cronograma listado na nesta planilha

Por fim, listamos os requisitos funcionais e não funcionais do nosso projeto.
Requisitos Funcionais:

  • Identifica um produto adicionado ao carrinho
    • Lê uma etiqueta RFID passiva
    • Identifica que o produto foi adicionado pela diferença de peso
  • Identifica a retirada do produto.
    • Lê uma etiqueta RFID passiva
    • Identifica que o produto foi adicionado pela diferença de peso
  • Mantém uma lista de itens do carrinho.
    • Permite consultar a lista de items no app.
    • Permite ver os preços e total da compra no app.
  • App identifica e relaciona carrinho ao comprador.
  • Segue uma jaqueta identificadora portada pelo comprador.
    • Se a distância for muito grande, se aproxima do comprador até uma distância adequada.
  • App habilita o celular para ser usado como controle remoto para controlar o carrinho.
  • Servidor:
    • Guardar a lista de itens, contendo preço e RFID.
    • A gerência da loja pode atualizar esses dados.
    • A gerência da loja pode atualizar esses dados.
  • Recebe confirmação de compra finalizada quando usuário passa pela porta de saída (RFID)
  • Comunica com o celular do comprador os dados da compra fechada
  • App recebe dados da compra
  • App processa o pagamento
  • O carrinho não deve esbarrar em obstáculos
  • Gerenciamento de lista de compras. (extra)

Requisitos Não Funcionais:

  • Capacidade de produtos é limitada à capacidade de transporte do chassi adquirido.
  • O aplicativo deve ser desenvolvido em Swift.
  • Raspberry Pi deve se conectar ao WiFi.
  • Node-RED deve comunicar o servidor sobre produtos adicionados ou removidos no carrinho
    • Recebe leitura do RFID e verifica alteração na célula de peso.
  • Servidor deve comunicar o celular sobre itens adicionados ou removidos do carrinho
  • Algoritmo de reconhecimento de imagens deve informar sobre o deslocamento que o carrinho deve realizar.
  • Node-RED deve receber dados do algoritmo de reconhecimento de imagens e acionar o motor para realizar o deslocamento.
  • Node-RED deve ler dados do sensor de linha constantemente e ajustar alinhamento do carrinho.
  • Um carrinho não pode estar relacionado a dois usuários.
  • Os status do carrinho podem ser como descritos no diagrama de estados.

Para outros detalhes baixe a versão documental do nosso projeto:

Crie um site como este com o WordPress.com
Comece agora