Como ajustar um controlador PID para um processo não linear?
Você não Você lineariza o processo e o controlador PID trabalha com os valores lineares.
Ao "linearizar o processo", não pretendo realmente tornar o processo linear. Isso geralmente não pode ser feito devido à física. No entanto, você pode colocar algo não linear entre a saída do controlador PID e a entrada do processo, para que a saída PID controle linearmente o processo do ponto de vista do controlador PID.
Esse linearizador não precisa ser muito preciso, pois está dentro do loop de feedback. Seu objetivo é dar a aparência de ganho aproximadamente constante em toda a faixa dinâmica de controle. Uma maneira simples e geral é uma função baseada em tabela linear por partes. 16 ou 32 segmentos geralmente são suficientes para qualquer coisa, exceto processos não lineares muito elevados.
O pior exemplo que encontrei foi controlar a corrente através de um tubo de elétrons, alterando a força com que o filamento do cátodo era acionado. A função da temperatura do cátodo para a corrente do feixe de elétrons é altamente não linear e o sistema que controla a corrente do filamento do cátodo também é um pouco não linear. Nesse caso, era muito difícil prever toda essa bagunça, então usei um procedimento de calibração durante a produção que percorreu os valores de controle da unidade de filamento, mediu a corrente do feixe para cada um e calculou uma tabela de pesquisa de 32 segmentos a partir dela. Funcionou muito bem e conseguimos ajustar o controlador PID da corrente do feixe para obter uma boa resposta em toda a faixa.
Sem uma função de linearização na frente do processo, você precisa ajustar o controlador PID para obter estabilidade no ponto de ganho incremental mais alto do processo. Isso então resulta em um comportamento muito amortecido em outros pontos.
Adicionado
Nada na sua pergunta atualizada diz nada sobre por que o método acima ainda não é uma boa ideia e aplicável. Você diz que está usando um controlador analógico. Minha primeira reação é "Os anos 80 se foram, não faça isso". No entanto, o controlador PID e o linearizador da planta podem ser independentes.
Aparentemente, a entrada da planta é de potência e a saída é de temperatura. Meça a temperatura típica do estado estacionário em vários níveis de potência. A partir disso, é possível calcular a função que converte "energia" linearizada em entrada de energia real da planta. O controlador PID analógico provavelmente está colocando uma tensão proporcional à energia. Tudo o que você precisa fazer é inserir uma caixa preta alinhada com a tensão que faz a medida linear da conversão real do nível de potência.
Normalmente você faria isso com um microcontrolador que tenha um A / D embutido. Fazer esta pesquisa de tabela e interpolação linear entre pontos é trivial. Em seguida, ele gera o resultado de uma maneira que eventualmente é convertida em tensão. Como a planta é lenta em comparação com um microcontrolador, isso pode ser tão fácil quanto filtrar e tamponar uma saída PWM. Ou você pode dirigir um D / A diretamente, embora isso não pareça necessário neste caso.
De acordo com o tema dos anos 80 do seu controlador, você pode fazer isso com A / D, memória e D / A para uma sensação retrô.
De qualquer forma, o controlador PID agora está controlando efetivamente uma planta linear, tanto quanto ela sabe, e ajustá-la para um bom desempenho deve ser possível.
Fazer uma transformação linear por partes na entrada da planta em um só lugar é mais fácil do que ajustar 3 valores dentro do controlador PID na faixa de saída. O último é um argumento, enquanto o primeiro aborda o problema diretamente. Também é muito mais fácil medir os dados para a função linearizante do que determinar os ganhos de P, I e D em vários pontos. Mesmo se você tiver feito isso, ainda terá problemas transitórios, pois os ganhos corretos não são aplicados imediatamente à situação. Mais uma vez, "ganhar agendamento" é uma farsa.