Eu_Rafael_Peier_rIJvU5vDTzI.jpg

Circuito RC com entrada senoidal


Problema

Suponha o mesmo circuito analisando antes:

circuito_RC_low_pass

Mas agora vamor injetar uma onda senoidal na entrada deste circuito, o que acontece?

 

Resolvendo usando Laplace

Resolvemos o mesmo problema, mas utilizando Laplace.

Antes em Resolvendo usando Laplace deduzimos que:

H(s)=1RCs+1

e agora:

Vin(t)=Vmsin(ωt)

A transformada de uma senóide é:

L{sin(ωt)}=ωs2+ω2

assim:

Vin(s)=Vmωs2+ω2

e então, podemos deduzir Vout(s), fazendo:

Vout(s)=H(s)Vin(s)

Vout(s)=(1RCs+1)(Vmωs2+ω2)

Logo:

Vout(s)=Vmω(RCs+1)(s2+ω2)

Expansão em Frações Parciais

Expandindo a equação anterior em frações parciais:

Vmω(RCs+1)(s2+ω2)=ARCs+1+Bs+Cs2+ω2 (1)

Temos que agora determinar A ,B e C:

Multiplicamos (1) por:

(RCs+1)(s2+ω2)

Resultando:

Vmω=A(s2+ω2)+(Bs+C)(RCs+1)

Agora expandimos:

Agrupando tudo temos:

Vmω=As2+Aω2+BRCs2+(B+CRC)s+C

Agrupando potências:

Vmω=(A+BRC)s2+(B+CRC)s+(Aω2+C)

Comparando coeficientes com (1):

No lado esquerdo: Vmω.

Não existem termos em: s2, e nem em s, portanto:

Temos então o sistema de equações:

{A+BRC=0B+CRC=0Aω2+C=Vmω

Agora resolvemos o sistema.

Resultado final:

Expressão antes da expansão:

Vmω(RCs+1)(s2+ω2)=ARCs+1+Bs+Cs2+ω2 (1)

A decomposição resultou na expressão analítica de Vout(s):

Vout(s)=(Vmω(RC)21+(ωRC)2)(1RCs+1)(VmωRC1+(ωRC)2)(ss2+ω2)+(Vmω1+(ωRC)2)(1s2+ω2)

 

Transformada Inversa de Laplace

De uma Tabela de Transformadas de Laplace, sabemos que:

Substituindo:

O resultado da transformada inversa será:

Vout(t)=(VmRCω1+(RCω)2)et/RC+(Vm1+(RCω)2)[sin(ωt)RCωcos(ωt)]

Podemos converter a segunda parte para o formato amplitude/fase e obter:

Vout(t)=(VmRCω1+(RCω)2)et/RC+(Vm1+(RCω)2)sin[ωttan1(RCω)]

Note, exatamente a mesma solução encontrada resolvendo usando equação diferencial, conferir [aqui] se desejado.


Calculando Resíduos Usando Octave

A função residue() realiza o cálculo associado com a expansão em frações parciais.

Por exemplo:

O Octave devolveria algo parecido com:

Os polos (raízes do denominador) serão:

s=1000 e s=±jω

O Octave está fazendo exatamente a decomposição:

As+1000+Bsjω+Cs+jω

usando polos complexos.


Usando pacote symbolic + ilaplace()

Para isso é necessário:

Internamente ele usa o SymPy (biblioteca do Python).

Por exemplo:

O resultado será algo próximo de:

ou alguma forma algébrica equivalente.

Outra forma elegante usando symbolic

Também é possível pedir explicitamente as frações parciais:

ou:

O resultado será algo como:

As+1000+Bs+Cs2+ω2


Resumo dos Cálculos

Ou seja, estamos usando o Octave (ou computador) para reproduzir a seguinte sequência de passos:

EDO
Laplace
Frações
Parciais
Transformada
Inversa

Alguns usuários consideram que o ilaplace() é uma “caixa preta”. Na verdade, ele está executando internamente exatamente as manipulações algébricas que acabamos de fazer à mão.


Simulando uma senoide

Agora podemos executar [circuito_RC_Laplace_seno1.m]:

Aqui aparece algo didaticamente muito importante:

circuito_RC_Laplace_seno1.png

No início existe um transitório (destacado na cor magenta pontilhado, Vtrans).

Depois de aproximadamente (5τ=51ms), desaparece este termo:

Aet/τ0

e sobra somente a expressão:

Vout(t)=Vm1+(ωRC)2sin(ωtarctan(ωRC))

Você pode ainda:


Análise frequêncial

Podemos observar o que ocorre se a frequência de senoide de entrada variar.

Arquivo [resposta_mag_freq.m]:

O código anterior gera o gráfico:

resposta_mag_freq

Onde aparece destacada a frequência de corte:

fc=12πRC (Hz)

Neste caso:

fc=159,15Hz

O gráfico anterior é quase um Diagrama de Bode. Este ultimo tipo de diagrama mostra 2 gráficos separados: um mostrando como varia a magnitude (ganho) de saída do sistema e o outro mostra a defasagem introduzida no sinal de entrada. O Octave facilita a plotagem deste gráfico através do comando bode(H), mas neste caso o argumento de entrada H deve ser uma variável do tipo transfer function, que neste caso é igual à:

H(s)=Vout(s)Vin(s)=1RCs+1=10,001s+1=1000s+1000

Esta expressão já foi deduzida em [Resolvendo usando Laplace] (busca da função transferência).

Podemos explorar esta gráfico de análise frequencial executando [mostra_bode.m]:

Este script gera as seguntes informações na janela de comandos:

e gera os seguintes gráficos:

circuito_RC_bode.png

e:

circuito_RC_bode_Hz.png

 

 


Fernando Passold, em 16/08/2026