Integração do Sistema
Requisitos Gerais
O sistema de controlo do aeropêndulo deve integrar, de forma coerente e segura, os seguintes elementos:
Projeto mecânico: estrutura física do pêndulo, montagem do motor, hélice e sensor no braço rotativo, fixação estável à base.
Projeto elétrico: ligação da fonte de alimentação, motor, driver, sensor e microcontrolador, garantindo compatibilidade de tensões e correntes.
Projeto de controlo: definição do algoritmo de estabilização (Bang-Bang, PID ou LQR) e respetiva implementação em tempo real.
Projeto de software: programação em Arduino IDE (C/C++), com leitura de sensores, execução periódica do controlo e comando ao atuador.
Desenvolvimento e testes: verificação faseada, primeiro em simulação, depois com módulos isolados, e finalmente no sistema integrado.
Documentação: registo dos esquemas, código, parâmetros e resultados experimentais.
Componentes Típicos
Microcontrolador: Arduino Uno, Nano ou Mega.
Sensor de ângulo: encoder magnético (ex.: AS5600 via I²C).
Atuador: motor DC com hélice, comandado por um driver (ex.: L298N ou TB6612FNG).
Fonte de alimentação: adequada às especificações do motor e do controlador (tipicamente 3,3–5 V para lógica e 3–6 V para motor).
Materiais auxiliares: cabos, resistências, breadboard ou PCB, e elementos de fixação mecânica.
Passos de Integração
Validação individual de módulos
Testar o sensor: confirmar leituras coerentes de ângulo ao rodar manualmente o pêndulo.
Testar o driver: verificar resposta do motor a sinais PWM simples.
Testar a fonte: confirmar tensões e correntes fornecidas.
Integração elétrica
Garantir massa comum entre todos os módulos.
Confirmar tensões de alimentação (3,3 V/5 V para lógica, tensão adequada ao motor no driver).
Usar cabos curtos e ligações firmes para evitar ruído.
Integração de software
Programar aquisição periódica de dados do sensor (I²C).
Implementar ciclo de controlo no
loop()
com temporização viamillis()
outimer
(tipicamente 100 Hz).Comandar o driver via
analogWrite()
(PWM) para regular a velocidade da hélice.
Integração mecânica
Montar o motor e o sensor no braço do pêndulo de forma rígida, evitando folgas.
Proteger a hélice para segurança durante os ensaios.
Testes de sistema
Ensaiar primeiro com ganhos baixos no controlador, aumentando progressivamente.
Registar leituras de ângulo, sinais de controlo e resposta do pêndulo.
Ajustar parâmetros do controlador até alcançar estabilização.
Cuidados a Ter
Compatibilidade elétrica: nunca alimentar o sensor com tensão superior à recomendada (ex.: AS5600 funciona apenas a 3,3 V).
Corrente do motor: evitar correntes de arranque ou bloqueio elevadas que possam danificar o driver.
Atrasos no ciclo de controlo: manter a frequência de execução constante; não usar
delay()
noloop()
.Segurança física: trabalhar sempre com proteções na hélice e desligar a fonte de alimentação antes de alterar a montagem.
Da Simulação à Implementação
Isolar a função de controlo no código Python (entrada = ângulo, saída = comando motor).
Reescrever em C/C++ para Arduino, respeitando limites de tempo de execução e memória.
Substituir as interfaces simuladas por leituras reais do sensor e comandos reais para o driver.
Garantir execução periódica estável com
millis()
ou interrupções de temporizador.Voltar a ajustar os ganhos com base no comportamento físico real.