Eu tenho um sistema servo simples que usa um controlador PID implementado em um MCU para executar o feedback. No entanto, as propriedades do sistema mudam dinamicamente e, portanto, os parâmetros PID nunca podem ser ajustados para todas as circunstâncias.
Meu robô é um braço leve com motores elétricos com tração traseira, semelhante a este:
O braço executa várias tarefas, incluindo pegar pesos pesados, empurrar e puxar objetos pela mesa. Cada uma dessas tarefas requer diferentes parâmetros de ajuste do PID que não posso prever com facilidade.
O que eu realmente gostaria é de alguma função de nível superior que possa ajustar cuidadosamente os parâmetros em resposta ao comportamento do braço. Por exemplo, se perceber que o braço está oscilando, poderá reduzir P e aumentar D.
Existem tais algoritmos? Eu ficaria feliz mesmo se o algoritmo não aperfeiçoasse os parâmetros imediatamente. Por exemplo, o braço poderia oscilar algumas vezes antes dos parâmetros serem ajustados aos seus novos valores.