# Acompanhamento de Execução de Task - Testes de Mecânica
[TOC]
---
**Uma melhor descrição de cada teste pode ser encontrada na [Wiki](https://gitlab.com/MinervaBots/robos/seguidores/mec-nica/mecwiki/-/wikis/Mecanica/testes-praticos)**
**Testes adicionais podem ser adicionados caso haja percepção de necessidade, desde que haja a documentação adequada.**
---
## **Teste do Encoder**
#### Objetivo do Teste
> Verificar resolução do Encoder.
#### Motivação do Teste
> Encontrar uma conversão entre ticks de encoder detectados e distância percorrida (em metros)
#### Resultado Esperado
> A resolução esperada é de 30 ticks por revolução.
#### Metodologia Utilizada no Teste
> Para a realização do teste, necessita-se dos seguintes componentes: caneta, motor, hub, pneu e bateria. Inicialmente, realiza-se a montagem do conjunto motor-hub-pneu e marca-se o ponto de início de rotação da roda. Posteriormente, utiliza-se um batente (a definir) que é responsável por ser o objeto parado em relação a roda em movimento. Após a realização de múltiplas voltas por experimento, faz-se o tratamento dos dados por meio da divisão do "número de tics registrados" pelo "número de voltas".
#### Códigos necessários
> Necessita-se de um contador para cada encoder no MinervApp; É preciso controlar quando começar o teste pelo MinervApp.
#### Sugestão
> Precisa-se de um botão para resetar o contador assim que chegar em 100 para não "quebrar" a interface do MinervApp.
#### Esperado do Teste
> Espera-se girar a roda controladamente a fim de contar o número de tics do encoder a cada volta através do MinervApp, que deverá o número de tics por rotação da roda.
#### Resultados Obtidos
> Descrever os resultados obtidos após a execução do teste.
---
## **Teste de Velocidade do Motor**
#### Objetivo do Teste
> Criar uma relação entre valor de PWM (em porcentagem) e velocidade (em metros por segundo).
#### Motivação do Teste
> Facilitar controle de velocidade pelo código para seguir a velocidade esperada com base em conversões mecânicas.
#### Resultado Esperado
> É esperado a criação de uma tabela de relação dos valores no excel.
#### Metodologia Utilizada no Teste
> Dada a execução do teste, é necessário os seguintes componentes: robô montado, mantas emborrachadas, fita, régua, tesoura e cronômetro. A priori, realiza-se a montagem do robô, prepara-se o percurso da pista e as marcações laterais de início e fim de de corrida através da separação da quantidade de mantas necessárias e a construção da pista com uma fita branca. A posteriori, mede-se o tamanho do percurso com uma régua e inicia-se o experimento múltiplas vezes (uso de diferentes frequências de PWM) a fim de construir uma planilha com os dados obtidos.
#### Códigos necessários
> Necessita-se controlar o valor de frequência de PWM pelo MinervApp; Precisa-se conseguir controlar quando começar o teste pelo MinervApp; É necessário que possa-se visualizar o tempo entre as leituras das marcações laterais.
#### Esperado do Teste
> Espera-se que o robô seja ligado com o PWM desejado através do MinervApp e que haja um botão a ser iniciado para a realização do teste de velocidade. O robô deverá realizar o percurso entre as marcações laterais de início e fim da corrida e o seu tempo de deslocamento será visualizado na interface do MinervApp.
#### Resultados Obtidos
> Descrever os resultados obtidos após a execução do teste.
---
## **Teste de Torque do Motor**
#### Objetivo do Teste
> Medir o torque gerado pelo Motor.
#### Motivação do Teste
> Necessário para realizar análises de aceleração do robô.
#### Resultado Esperado
> É esperada a criação de uma tabela de relação dos valores no excel.
#### Metodologia Utilizada no Teste
> Para este experimento, precisa-se dos seguintes componentes: motor, hub, fio de barbante, pesos, balança, bateria. A princípio, monta-se o conjunto motor-hub e fixa-se um pedaço de barbante no hub, que funciona como carretel. Em seguida, fixa-se os pesos na outra extremidade do fio do barbante. Por fim, posiciona-se o conjunto deste experimento sobre a balança (os pesos estarão na balança e serão elevados de acordo com a movimentação do carretel). Assim, registra-se os valores presentes na balança de acordo com as diferentes frequências de PWM e constrói-se uma planilha com os valores obtidos.
#### Sugestão
> Iniciar em 40 PWM e variar de 10 em 10 PWM.
#### Códigos necessários
> Necessita-se controlar o valor de frequência de PWM pelo MinervApp; Precisa-se de um botão para controlar o início do teste através do MinervApp; É necessário visualizar o PWM atual nos motores em tempo real.
#### Esperado do Teste
> Espera-se que o motor seja inicializado com uma determinada frequência de PWM através do MinervApp com o auxílio de um botão para iniciar o teste. Posteriormente, o crachá com parafusos deverá ser suspenso, que será nosso peso acoplado ao motor com um barbante, sobre uma balança, a fim de relacionar o peso registrado na balança com a frequência de PWM respectiva. Em seguida, deverá haver um campo na interface do MinervApp para preencher o tempo entre as subidas de PWM, em segundos.
#### Resultados Obtidos
> Descrever os resultados obtidos após a execução do teste.
https://docs.google.com/spreadsheets/d/1s-JY_25v00Lryf2pqMfBxT1SY4jzERwa83q-jxH5RRA/edit?usp=sharing
---
## **Teste da Força de Atrito nas rodas**
#### Objetivo do Teste
> Medir diretamente a força de atrito nas rodas do robô.
#### Motivação do Teste
> Prever a força de atrito nas rodas em um cenário de operação real.
#### Resultado Esperado
> É esperado encontrar a força de atrito nas rodas.
#### Metodologia Utilizada no Teste
> Para este teste, é importante a presença dos seguintes componentes: robô montado, mantas emborrachadas, batente. Inicialmente, realiza-se a montagem do robô e posiciona-se o robô sobre uma manta emborrachada. Em seguida, é posto um batente (bancos de madeira do laboratório) à frente do robô e inicia-se o teste com um PWM baixo, aumentando-se as frequências de PWM de 5 em 5 até o Torque de Stall supere a Força de atrito. Após múltiplas medições, constrói-se uma planilha com os valores obtidos e compara-se com o valor teórico da Força de Atrito.
#### Códigos necessários
> Necessita-se controlar o valor de frequência de PWM pelo MinervApp; Precisa-se de um botão para controlar o início do teste pelo MinervApp; É necessário visualizar a frequência de PWM de derrapagem e a Fat de derrapagem; Faz-se necessário controlar o valor de Fat manualmente; Necessita-se controlar o tempo, em segundos, entre as subidas de frequência de PWM.
#### Esperado do Teste
> Espera-se que o robô seja iniciado em uma determinada frequência de PWM com o auxílio de um botão através do MinervApp. Em seguida, deverá ser preenchido o campo de tempo entre as subidas de frequência de PWM no MinervApp. Consequentemente, a tela do MinervApp deverá exibir a frequência de PWM de derrapagem e a Força de Atrito de derrapagem (Fat). Por fim, caso seja necessário, deverá haver um campo para substituir o valor da Força de Atrito manualmente. O intuito é determinar o valor de Força de atrito, utilizando-se do Torque do motor obtido no experimento anterior e alterando-se os valores de PWM.
#### Resultados Obtidos
> Descrever os resultados obtidos após a execução do teste.
---
## **Teste de Frenagem**
#### Objetivo do Teste
> Encontrar a forma mais eficiente de frear.
#### Motivação do Teste
> Necessário para otimizar a corrida do robô.
#### Resultado Esperado
> É esperado encontrar a metodologia de frenagem mais eficiente.
#### Metodologia Utilizada no Teste
> Para este teste, é necessário a presença dos seguintes componentes: robô montado, mantas emborrachadas, fita, régua, tesoura e cronômetro. Inicialmente, monta-se o robô e constrói-se a pista de corrida com as mantas e a fita branca juntamente com o auxílio de régua e tesoura. Posteriormente, inicia-se o robô e cronometra-se o tempo do robô nas curvas a fim de reduzir para o menor tempo possível. Após realizar múltiplas medições de tempo, organiza-se os dados em uma planilha.
#### Sugestão
> Sugere-se que a frequência de PWM atual seja exibido de forma constante para facilitar a correção de erros no código. Outro ponto é que o campo para preencher a frequência de PWM seja o mesmo para todos os testes, exceto o de frequência de PWM secundário do teste de frenagem.
#### Códigos necessários
> Necessita-se controlar a frequência de PWM secundário do robô através do MinervApp; Precisa-se de um botão para realizar a troca de frequência de PWM para o PWM secundário durante o teste de velocidade; Faz-se necessário visualizar a frequência de PWM atual em tempo real.
#### Esperado do Teste
> Espera-se que haja um campo de preenchimento do PWM secundário no MinervApp antes da inicialização do robô. Em seguida, haja um botão no qual poderá realizar-se a alternância para o PWM secundário durante o teste de velocidade, posteriormente, deverá ser exibido o PWM atual em tempo real na interface do MinervApp. O intuito é determinar o melhor método mais eficiente de frenagem e a taxa de desaceleração do robô também.
#### Resultados Obtidos
> Descrever os resultados obtidos após a execução do teste.
---
{%hackmd @themes/dracula %}