Este projeto Arduino implementa um sistema de controle de veículo simulado. O código simula a dinâmica de aceleração do veículo, aplicando um controle proporcional-integral (PI). Além disso, o sistema incorpora um filtro passa-baixa para suavizar as leituras de velocidade e introduz ruído randômico para uma simulação mais realista.
O código inclui várias variáveis e parâmetros essenciais para o controle do veículo:
velocity
: Velocidade atual do veículo.filteredVelocity
: Velocidade filtrada pelo filtro passa-baixa.u
: Vetor de valores de entrada.d
: Vetor de disturbios aplicados.ki
ekp
: Parâmetros de ganho do controlador proporcional-integral.KiTime
: Intervalo de tempo para o termo integral.- Outras variáveis para controle de intervalos e tempo.
Gera ruído randômico com amplitude de 0.05 para simular variações na velocidade.
Aplica um filtro passa-baixa para suavizar as leituras de velocidade.
Atualiza o índice do vetor de valores de entrada (u
) em intervalos específicos.
Simula a dinâmica de aceleração do veículo, aplica o filtro passa-baixa, e calcula o controle PI. Imprime a velocidade atual e a velocidade filtrada.
- Configure um ambiente de desenvolvimento Arduino.
- Conecte o Arduino ao sistema.
- Carregue o código neste script no Arduino IDE.
- Execute o programa no Arduino.
O código imprimirá as leituras de velocidade atual e velocidade filtrada no monitor serial.
sampleInterval
: Intervalo de tempo entre as atualizações de velocidade.velocityInterval
: Intervalo de tempo entre as atualizações de índice do vetor de entrada.
- Este projeto é uma simulação e pode ser adaptado para experimentos reais de controle de veículos.
- Ajuste os parâmetros de ganho (
ki
ekp
) para otimizar o desempenho do controlador.
Nota: Certifique-se de entender os conceitos de controle proporcional-integral (PI) ao trabalhar com este código. Ajuste os parâmetros com cuidado para evitar instabilidades no sistema.