UNIVERSIDADE DO ESTADO DE SANTA CATARINA CENTRO DE CIÊNCIAS TECNOLÓGICAS DEPARTAMENTO DE ENGENHARIA ELÉTRICA LABORATÓRIO DE SISTEMAS DE CONTROLE II 5 DISCRETIZAÇÃO DE SISTEMAS CONTÍNUOS 5.1 Discretização de Plantas Contínuas Descritas por Função de Transferência No Controle Digital de Processos, sempre nos deparamos com a situação apresentada na Figura 5.1 abaixo: Figura 5.1 - Configuração Típica de uma Planta Contínua no Mundo Digital A Função de Transferência Discreta desse sistema pode ser determinada exatamente através da expressão: Y ( z) −1 H ( z ) = U ( z ) = (1 − z ) Z [ y d ( kT )] onde G ( s) y d (t ) = L−1 [ ] s Dados G(s) e T, o comando do Matlab c2dm, no modo ‘zoh’, calcula a função de transferência discreta H(z) acima (o modo ‘zoh’ - zero order hold - é assumido par default). A seguir são mostrados exemplos com diferentes períodos de amostragem. >> num = [0 0 1]; den = [1 0.2 1.01]; >> printsys(num, den, ‘s’) >> subplot(221), step(num, den) >> T = 0.3; >> [numd dend] = c2dm(num, den, T); >> printsys(numd, dend, ‘z’) >> subplot(222), dstep(numd, dend) >> T = 1; >> [numd dend] = c2dm(num, den, T); >> printsys(numd, dend, ‘z’) >> subplot(223), dstep(numd, dend) >> T = 3; >> [numd dend] = c2dm(num, den, T); >> printsys(numd, dend, ‘z’) >> subplot(224), dstep(numd, dend) % Definição da Função de Transferência (FT) % Exibição da FT % Resposta ao degrau da FT % Período de Amostragem T = 0.3 s % FT discretizada com zero order hold % Exibição da FT discretizada % Resposta ao degrau da FT discretizada % Período de Amostragem T = 1 s % FT discretizada com zero order hold % Exibição da FT discretizada % Resposta ao degrau da FT discretizada % Período de Amostragem T = 3 s % FT discretizada com zero order hold % Exibição da FT discretizada % Resposta ao degrau da FT discretizada LABORATÓRIO DE SISTEMAS DE CONTROLE II 2 Figura 5.2 - Respostas ao degrau de um sistema discretizado para diversos períodos de amostragem Observe na Figura 5.2 como um período de amostragem mal dimensionado pode degradar a resposta do sistema discretizado. 5.2 Discretização de Plantas Contínuas no Espaço de Estados Semelhantemente, se a planta é descrita no espaço de estados por: x& (t ) = Ax (t ) + Bu (t ) y (t ) = Cx (t ) + Du (t ) o sistema de tempo discreto equivalente será expresso por x k +1 = Ad x k + B d u k y k = Cx k + Du k onde xk = x(kT), Ad = eAT e Bd = [eAT –I]A-1B, sendo T o período de amostragem. O Matlab implementa essa transformação através do comando c2d. >> % Obtenção da planta descrita no espaço de estados >> [A B C D] = tf2ss(num, den) % Contínua >> T = 1; >> [Ad Bd] = c2d(A, B, T) % Discretizada >> % Comparação das respostas da discretização no domínio da freqüência e domínio do tempo para T=1s >> [numd dend] = c2dm(num, den, T) >> subplot(121), dstep(numd, dend) % Resposta ao degrau da discretização no domínio da freqüência >> subplot(122), dstep(Ad, Bd, C, D) % Resposta ao degrau da discretização no domínio do tempo Note que as matrizes C e D não são necessárias como entradas para c2d. As matrizes C e D são as mesmas no sistema contínuo e no sistema discretizado. LABORATÓRIO DE SISTEMAS DE CONTROLE II 3 Figura 5.3 - Respostas ao degrau de um sistema discretizado para T=1s. a) no domínio da freqüência; b) no domínio do tempo (resultados iguais) 5.3 Discretização de Plantas Contínuas com Atraso Puro Muitos sistemas apresentam atrasos puros devido a atrasos de transporte e atrasos devidos ao processamento do controle digital, como ilustra a figura 5.4 abaixo: Figura 5.4 - Configuração Típica de Planta + atraso em Controle Digital Neste caso a função de transferência discreta será dada por Y ( z) −1 H λ ( z ) = U ( z ) = (1 − z ) Z [ y d ( kT − λ )] onde G ( s) y d (t ) = L−1 [ ] s O Matlab não realiza essa transformação no domínio da freqüência, mas apenas no espaço de estados através do comando c2dt (a matriz D do sistema contínuo é suposta nula). O comando c2dt utiliza as matrizes A, B e C, gerando At, Bt, Ct e Dt do sistema discretizado. >> % Resposta do Sistema com atraso puro para T=1s >> lambda=5.5; >> % Determinação de Hλ(z) >> [Ad1, Bd1, Cd1, Dd1] = c2dt(A, B, C, T, lambda); >> [numd1, dend1] = ss2tf(Ad1, Bd1, Cd1, Dd1); >> subplot(121), dstep(numd, dend, 50) >> subplot(122), dstep(numd1, dend1, 50) >> printsys(numd1, dend1, ’z’) % Atraso = 5,5 X período de amostragem % Discretização no espaço de estados atraso puro % Espaço de Estados → Função de Transferência % Resp. degrau - Discretização sem atraso puro % Resp. degrau - Discretização com atraso puro LABORATÓRIO DE SISTEMAS DE CONTROLE II 4 Analise a função de transferência Hλ(z) obtida e explique o aparecimento de coeficientes nulos no seu denominador. >> Dimensões de A e Ad1 >> size(A) >> size(Ad1) Explique a diferença de ordem das matrizes A e Ad1, relacionando com as ordens dos polinômios dend e dend1. Figura 5.5 - Respostas ao degrau de um sistema discretizado para T=1s. a) sem atraso puro; b) com atraso λ = 5,5s. No caso do atraso λ ser decorrente apenas de atraso de processamento devido ao controle digital, λ < T. Repita as operações anteriores para λ = 0,5. >> lambda=0.5; >> % Determinação de Hλ(z) >> [Ad2, Bd2, Cd2, Dd2] = c2dt(A, B, C, T, lambda); >> [numd2, dend2] = ss2tf(Ad2, Bd2, Cd2, Dd2); >> % Comparação entre as respostas da planta sem e com atraso puro >> subplot(121), dstep(numd1, dend1, 50) >> subplot(122), dstep(numd2, dend2, 50) >> printsys(numd2, dend2, ’z’) Compare as respostas ao degrau dos dois sistemas e justifique com base nas respectivas FT´s. 5.4 Pólos Contínuos Versus Pólos Discretos A relação entre os pólos contínuos e os pólos dos sistemas discretizados vale z = esT. Vamos verificar essa relação usando o Matlab. >> pol_disc = roots(dend) >> pol_dis1 = roots(dend1) >> pol_dis2 = roots(dend2) >> pol_cont = roots(den) >> Transf = exp(pol_cont*T) % calcula pólos do sistema discretizado por c2dm % calcula pólos do sistema discretizado por c2dt com λ = 5,5 % calcula pólos do sistema discretizado por c2dt com λ = 0,5 % calcula pólos do sistema contínuo % Verifique a relação z = exp(sT)