Fault-Tolerant Control
- Também chamado: FTC
- Categoria: Control › Feedback control
- Tags: fault-tolerance, flight-control, robust-control, reliability, multirotor
Projeto de controle que mantém um sistema estável e utilizável após falhas, como um atuador ou sensor com defeito, tolerando a falha ou detectando-a e reconfigurando o controlador.
Definição
Controle tolerante a falhas (fault-tolerant control, FTC) busca manter um sistema seguro e, quando possível, ainda executando sua tarefa depois que algo deu errado: um atuador travado, enfraquecido ou perdido, um sensor com viés ou inoperante, ou um dano estrutural. Ele costuma ser dividido em duas abordagens. O controle tolerante a falhas passivo projeta um único controlador fixo, muitas vezes usando técnicas de controle robusto, que permanece estável para um conjunto definido de falhas sem precisar saber qual delas ocorreu. O controle tolerante a falhas ativo detecta e isola a falha em tempo de execução, uma etapa chamada detecção e isolamento de falhas (FDI) ou detecção e diagnóstico de falhas, e depois reconfigura o controlador, a alocação de controle ou a missão para se adequar ao sistema alterado.
As opções dependem de quanta redundância resta. Em um hexacóptero ou em um braço robótico com graus de liberdade sobrando, um atuador com falha muitas vezes pode ser compensado redistribuindo os comandos entre os demais por meio da alocação de controle. Onde não há atuador sobrando, o controlador precisa abrir mão de algo. Um exemplo clássico é um quadricóptero que perde um rotor: com os três restantes, ele não consegue controlar de forma independente os três eixos de rotação e o empuxo total. Mueller e D'Andrea mostraram em 2014 que o veículo ainda pode voar se for deixado girar continuamente em torno de seu eixo de guinada, controlando apenas a direção de seu eixo de empuxo e sua posição. Raciocínio semelhante se aplica a aeronaves com superfícies de controle danificadas e a robôs que perdem uma junta ou uma perna.
A tolerância a falhas diz respeito a toda a malha, não apenas à lei de controle. A detecção de falhas precisa ser rápida e confiável o suficiente para permitir agir antes que o sistema se torne irrecuperável, e o controlador reconfigurado muitas vezes depende de estimativas de estado que também são mais difíceis de obter após a falha. Um quadricóptero girando, por exemplo, é difícil para câmeras comuns por causa do borrão de movimento, e por isso a estimação de estado nessas condições foi estudada com câmeras de eventos. Os testes costumam combinar simulação de falhas injetadas, experimentos hardware-in-the-loop e, quando possível, falhas deliberadas em hardware preso por cabo ou protegido.
Por que importa
Robôs e drones operam cada vez mais perto de pessoas e longe de onde possam ser consertados. Uma falha que pode ser absorvida em software, em vez de exigir hardware extra ou terminar em queda, melhora a segurança e a confiabilidade a um custo pequeno. O controle tolerante a falhas também é uma questão de regulamentação e certificação na aviação e em outros domínios críticos para a segurança.
Principais aplicações
- Recuperação de multirrotores após falha de rotor ou de motor
- Alocação de controle para atuadores redundantes em aeronaves e drones
- Continuação da manipulação após falhas ou travamento de juntas
- Robôs com pernas que adaptam a marcha após danos em uma perna
- Tratamento de falhas de sensores na estimação de estado e na navegação
Na prática
Uma equipe acrescenta o tratamento de falha de rotor ao software de voo de um quadricóptero. Um detector compara as acelerações angulares comandadas com as medidas pela IMU e sinaliza a perda de um rotor dentro de uma janela de tempo curta. Ao detectá-la, o controlador passa do controlador de atitude em cascata normal para um controlador de atitude reduzida que deixa o veículo girar em torno de seu eixo de guinada enquanto inclina o eixo de giro para controlar o movimento horizontal. A equipe testa a troca primeiro em simulação com falhas injetadas e depois em hardware, com um rotor comandado para empuxo zero sobre uma rede, e verifica se a razão empuxo-peso do veículo deixa margem suficiente para manter a altitude com três rotores.
Equívocos comuns
- A tolerância a falhas sempre exige hardware redundante — alguns sistemas, como os quadricópteros, podem continuar controláveis após a perda de um atuador abrindo mão do controle de um grau de liberdade menos importante
- O controle tolerante a falhas é apenas um problema de projeto do controlador — a detecção rápida de falhas e uma estimação de estado confiável após a falha costumam ser as partes mais difíceis
- Um sistema tolerante a falhas tem o mesmo desempenho após uma falha — a reconfiguração geralmente troca desempenho, como o controle de guinada ou a capacidade de carga útil, pela continuidade da operação segura
Quem deve saber
- Engenheiros de drones e de controle de voo
- Engenheiros de segurança e confiabilidade de sistemas autônomos
- Pesquisadores de controle que trabalham com controle robusto e adaptativo
- Engenheiros de robótica de campo que projetam para operação remota
Tecnologias relacionadas
- Detecção e isolamento de falhas (Fault Detection and Isolation, FDI)
- Alocação de controle (Control Allocation)
- Controle robusto (Robust Control)
- Incremental Nonlinear Dynamic Inversion (INDI)
- PX4 Autopilot
Termos relacionados
Projetos relacionados
- MAVROS: ROS gateway for MAVLink-compatible autopilots (PX4, ArduPilot)
- Pegasus Simulator: Photorealistic multirotor simulation on NVIDIA Isaac Sim with PX4-in-the-loop