# PID
Esta é a página inicial do PID, aqui você encontra as principais informações referentes ao código e suas principais características.
[toc]
---
## Objetivo do Arquivo
> Arquivo responsável por definir a classe PID e realizar todos seus cáculos, afim de tratar os erros e armazenar os dados de PID. O arquivo faz isso a partir de parâmetros obtidos do DataCenter, tratando esses dados e calculando os resultados PID usando a função "calcularResultadoPID(TipoDePID tipo)". Após isso armazena os dados obtidos no DataCenter.
## Fluxograma

[Link do fluxograma](https://miro.com/welcomeonboard/QzBrUUF2U2lIWXdwb2ZPSEZsQUY3WmZWN09ZSmtXdll4akFDZ3JQbnY2YkdWZXBBTmpPMXVab3NHblFyMzh1TnwzNDU4NzY0NTYxMTEwNzUxMTkxfDI=?share_link_id=198840803999)
## Estrutura do projeto
#### Quais arquivos são incluídos?
>datacenter/datacenter.hpp (Banco de variáveis)
>sensores/leituraSensoriamento.hpp (Dados dos sensores)
#### Quais bibliotecas são utilizadas?
>arduino.h (Biblioteca padrão do arduino)
### Funções mais importantes do arquivo
> PID () - Método construtor de um objeto na classe PID
>
> atualizarConstantes() - Atualiza os parâmetros do controle PID
>
> calcular() - Realiza os cálculos do algoritmo PID e retorna a soma dos termos do algoritmo PID
>
> resetar() - Reseta os atributos utilizados nos cálculos
>
> calcularResultadoPID() - Calcula o resultado do PID de acordo com o tipo desejado (linear ou angular)
>
>atualizarPID() - Atualiza os valores dos parâmetros do controlador PID
---
## Programação
Esta seção é responsável por armazenar todas as questões de problemas que foram observadas durante o desenvolvimento.
### Problemas Encontrados
> Caso encontrem problemas enquanto documentam, descreva-os e cite as soluções encontradas de acordo com o modelo abaixo.
#### Problema 1 - (colocar aqui título do problema)
Colocar aqui a descrição do problema detalhando sempre o máximo possível.
- Solução
#### Problema 2 - (colocar aqui título do problema)
Colocar aqui a descrição do problema detalhando sempre o máximo possível.
- Solução
---
## Pós-documentação
### Otimizações Possíveis :bulb:
>Dar uma breve explicação sobre PID no início do arquivo(como exemplo um trecho de introdução a lógica utilizada nos motores que tem no arquivo de locomoção)
>Melhorar a documentação da função calcular()
---