INTRODUÇÃO
Neste documento mostraremos um passo a passo simplificado de como implementar um controle PID (Proporcional-Integral-Derivativo) em inversores de frequência ABB. Parte-se do pressuposto de que o conjunto drive-motor já foi comissionado, ou seja, o inversor já está em funcionamento, com os parâmetros relativos aos dados do motor preenchidos e com o inversor livre de falhas.
O exemplo a seguir foi elaborado com base no modelo ACS-380, porém todas as linhas mais recentes da ABB possuem esse recurso, em geral variando apenas a numeração dos parâmetros. Há muitas configurações relativas ao controle PID quem podem ser utilizadas para uma personalização específica do controle. Aqui serão abordadas as configurações básicas para colocar um controle PID em funcionamento com poucos ajustes. A figura abaixo mostra a sequência básica do controle PID dentro do inversor:
CONFIGURAÇÕES GERAIS
Passo 1)
Os inversores ABB já vêm de fábrica com uma relação de “macros”, ou seja, parâmetros pré configurados para fazer com que o inversor siga uma determinada lógica de funcionamento. Assim, o primeiro passo na configuração é selecionar o parâmetro 96.04 - Macro select, e preencher com o valor “14” (PID control macro). Essa configuração irá retornar o valor do parâmetro 96.04 para “0” e o valor “14” aparecerá no parâmetro 96.05 – Macro active.
Passo 2)
A seguir, selecionamos qual fonte de sinais o controle PID irá utilizar para o “feedback”, utilizando o parâmetro 40.08 – Set 1 feedback 1 source. Em nosso exemplo vamos preencher com o valor “2”, que corresponde à leitura do parâmetro 12.22 – AI2 scaled value. Por se tratar de um controle em tempo real, o sinal de feedback só pode ser recebido através de uma entrada física do inversor.
Passo 3)
O próximo passo é definir a origem para o “setpoint” do controle, no parâmetro 40.16 – Set 1 setpoint 1. Aqui vamos configurar com o valor “3”, que corresponde à leitura do parâmetro 12.12 – AI1 scaled value. A origem para a referência do setpoint pode ser associada tanto a entradas físicas quanto a endereços de memória do inversor. Por exemplo, preenchendo o parâmetro 40.16 com o valor “15”, o setpoint será dado através da comunicação Modbus-RTU nativa do inversor, permitindo que um controlador externo, como um sistema supervisório ou um CLP de processo, defina o setpoint dinamicamente.
Executados esses passos, as entradas e saídas de controle do inversor estarão configuradas conforme o diagrama abaixo:
Com as entradas DI2, DI3 e DI4 inativas (0V) e as entradas DI1 e DIO1 ativas (24V), o controle PID já está habilitado, e irá controlar a velocidade do motor a partir da comparação entre os valores das entradas analógicas A1 (setpoint) e A2 (feedback). Enquanto houver uma diferença, para mais ou para menos, entre os sinais dessas duas entradas, o motor irá acelerar, até a velocidade máxima, ou desacelerar, até a velocidade mínima, a fim de equilibrar os sinais das duas entradas. Uma vez que os sinais se equilibrem, o controle tende a se estabilizar em torno de uma velocidade constante.
Passo 4)
Conforme as características do processo a ser controlado, pode ser necessário ajustar os parâmetros da malha de controle, que se encontram na seção 40, sendo os principais deles:
Ao carregar a macro PID, o controle é configurado inicialmente com: ganho = “1” (40.32 = 100), tempo integral = “60 segundos” (40.33 = 60), e tempo derivativo = “0” (40.34 = 0).
NOTA: Os gráficos acima mostram um exemplo de como um ajuste pode interferir no funcionamento do controle. Neste documento não estamos abordando a teoria de controle em si, mas apenas a forma de parametrizar o inversor de frequência para essa finalidade. Antes de implementar um controle PID em um processo industrial, é importante conhecer as interações físicas e saber como dimensionar os parâmetros do controle. A depender da planta industrial, ajustar um valor de ganho muito alto, bem como um tempo integral muito curto, também podem provocar oscilações indesejadas na velocidade do motor.
ENTRADAS DIGITAIS
Na macro PID, as entradas DI2 e DI3 têm o papel de fixar um valor de setpoint interno, fazendo com que o algoritmo ignore o valor da entrada AI1 e execute o controle comparando o feedback com um valor previamente definido. Essa função é importante durante a fase de ajuste do ganho e tempos aplicados ao controle PID, quando o sistema está em fase de teste, ou como medida de contingência em caso de perda ou oscilação anormal do valor na entrada AI1. Já a entrada DI4 suprime o controle PID e aplica um valor fixo para a velocidade do motor, também definido previamente. O funcionamento irá obedecer a seguinte tabela:
DI2 | DI3 | DI4 | Origem do setpoint |
0 | 0 | 0 | parâmetro 40.16 – setpoint dinâmico (aqui configurado para ler a AI1) |
1 | 0 | 0 | parâmetro 40.21 – setpoint fixo 1 (inicialmente preenchido com valor ???) |
0 | 1 | 0 | parâmetro 40.22 – setpoint fixo 2 (inicialmente preenchido com valor ???) |
1 | 1 | 0 | parâmetro 40.23 – setpoint fixo 3 (inicialmente preenchido com valor ???) |
x | x | 1 | setpoint desabilitado – saída constante conforme parâmetro 28.26 (Hz) ou 22.26 (rpm) |
Quando a entrada DI4 for acionada, a velocidade aplicada ao motor irá depender do modo de controle do motor selecionado no parâmetro 99.04 – Motor control mode. Se o controle for escalar, será assumida a frequência, em Hertz, disposta no parâmetro 28.26 – Constant frequency 1. Se o controle for vetorial, será assumida a velocidade, em rotações por minuto, dada pelo parâmetro 22.26 – Constant speed 1.
ENTRADAS ANALÓGICAS
As entradas analógicas vêm configuradas de fábrica para leitura de tensão 0 a 10V, porém é possível modificá-las para leitura em corrente, alterado os parâmetros 12.15 – AI1 unit selection, para a entrada AI1, e 12.25 – AI2 unit selection, para a entrada AI2. Os limites mínimos e máximos de cada entrada podem ser personalizados através dos parâmetros 12.17 – AI1 min, 12.18 – AI1 max, 12.27 – AI2 min e 12.28 – AI2 max. Como os ajustes são independentes para cada entrada, pode-se utilizar apenas uma deles, ou ambas, em tensão ou corrente, com valores de mínimo e máximo também independentes.
Por exemplo, caso a entrada AI2 esteja recebendo o sinal de feedback através de um sensor com saída 4 a 20mA, deve-se modificar o parâmetro 12.25 para leitura em corrente (valor = “10”), e depois preencher o parâmetro 12.27 com o valor “4000” e o parâmetro 12.28 com o valor “20000”.
OUTRAS CONFIGURAÇÕES
Há uma série de parâmetros que definem opções avançadas para o controle PID, a serem exploradas de acordo com a necessidade. Todos eles estão disponíveis no Manual de Programação do Inversor, sendo estes os mais comumente utilizados:
12.16 – AI1 filter time e 12.26 – AI2 filter time – Dependendo das variáveis medidas no processo e do tipo de sensores utilizados, pode haver oscilações nos sinais de entrada que venham a dificultar os ajustes do controle. A função de filtro visa suavizar as variações nos sinais de entrada, permitindo um comportamento mais estável. O tempo “T” definido nos filtros opera sobre o sinal recebido nas entradas analógicas, conforme o gráfico abaixo:
40.31 – Set 1 deviation inversion – Esse parâmetro define se a saída do controle será direta ou inversamente proporcional à diferença entre o setpoint e o feedback. Em nosso exemplo, se a diferença entre as tensões (AI1 – AI2), ou seja, (setpoint – feedback) for positiva, e o parâmetro 40.31 contiver o valor “0”, a resposta do controle será aumentar a velocidade do motor. Preenchendo o parâmetro com valor “1”, a lógica é invertida. Exemplo de ação direta: controle de bombeamento para manter o nível em um tanque de água. Quando o valor informado pelo sensor de nível (feedback) for menor que o nível pré-estabelecido (setpoint), o motor da bomba deverá aumentar a velocidade para elevar o volume armazenado. Exemplo de ação inversa: controle de ventilação com base na medição de CO2 em um túnel. Quando o nível de poluição detectado (feedback) for maior que o limite aceitável (setpoint), o motor do ventilador deverá aumentar a velocidade para reduzir a concentração.
Exemplo de ação direta: controle de bombeamento para manter o nível em um tanque de água. Quando o valor informado pelo sensor de nível (feedback) for menor que o nível pré-estabelecido (setpoint), o motor da bomba deverá aumentar a velocidade para elevar o volume armazenado.
Exemplo de ação inversa: controle de ventilação com base na medição de CO2 em um túnel. Quando o nível de poluição detectado (feedback) for maior que o limite aceitável (setpoint), o motor do ventilador deverá aumentar a velocidade para reduzir a concentração.
40.39 – Set 1 deadband range – Configura uma faixa de zona morta dentro o controle PID. Em alguns tipos de controle, o valor do feedback não precisa necessariamente ser igual ao setpoint, podendo permanecer dentro de uma faixa ao redor deste. Essa função possibilita que o controle se estabilize rapidamente ao entrar na faixa da zona morta, evitando oscilações desnecessárias na velocidade do motor. Ao adicionar um valor “x” ao parâmetro 40.39, o controle ficará congelado enquanto o feedback permanecer dentro da faixa entre (setpoint - x) e (setpoint + x). Esse modo de operação pode ser usado em conjunto com o parâmetro 40.40 – Set 1 deadband delay, que define um tempo de atraso antes que o controle congele a saída, conforme o gráfico abaixo:
40.43 – Set 1 sleep level + 40.44 – Set 1 sleep delay – Definem a execução da função Sleep no controle PID. Há casos em que a manutenção do processo pode dispensar a ação do motor sob determinadas condições. Por exemplo: em sistemas de ventilação cuja finalidade é resfriar o ambiente através da circulação de ar externo. Caso a temperatura medida no ambiente (feedback) já esteja abaixo do setpoint, mesmo com o ventilador na velocidade mínima, então pode-se definir um valor limite para essa temperatura no parâmetro 40.43 e, se essa condição permanecer após o tempo programado no parâmetro 40.44, o sistema executará a parada completa do motor. A principal vantagem desse recurso é incrementar a eficiência energética do processo.
Ao utilizar a função Sleep para o controle PID, é fundamental preencher também os parâmetros 40.47 – Set 1 wake-up deviation e 40.48 – Set 1 wake-up delay, para que haja a ação inversa quando a variável do processo voltar ao nível de ação do controle. No caso do exemplo acima, quando a medição de temperatura (feedback) atingir o valor preenchido no parâmetro 40.47 e após o tempo estabelecido no parâmetro 40.48.
Por fim, apresentamos o diagrama completo do controle PID do inversor ABB ACS-380, com os respectivos parâmetros associados: