sexta-feira, 26 de agosto de 2016

Script Scilab - Transitórios RC e RL de Primeira ordem

Senhores Alunos:


Segue, abaixo, o script Scilab completo para a apresentação das equações e o traçado dos gráfico da corrente e da tensão dos transitórios RC e RL de primeira ordem.

Bom uso!

Keywords: transient response, first-order, RC circuit, RL circuit, Scilab.
  
------------------------------------------------------
clc;
clear;
xdel(winsid());
disp('Avaliação do transitorio RL ou RC de 1a ordem');
Tipo = input('Informe <1> para circuito RC <2> RL: ');
disp('Entrada de Dados');
 R = input('Valor de R =');
 Vs = input('Valor de Vs =');
if Tipo==1
    C = input('Valor de C =');
    V0 = input('Valor de V0 =');
    tau = R*C;
else 
    L = input('Valor de L =');
    I0 = input('Valor de I0 =');
    tau = L/R;
end   
t = 0:tau/1000:6*tau;
printf(' tau = %g\n',tau);  
if Tipo==1
        v = Vs + (V0-Vs)*exp(-t/tau);
        i = -C*(1/tau)*((V0-Vs)*exp(-t/tau));
        printf('v = %g + [%g * exp(-t/%g)]\n',Vs,V0-Vs,tau);  
        printf('i = -[%g*exp(-t/%g)]\n',C*(1/tau)*(V0-Vs),tau);  
else  
        i = (Vs/R) + (I0-(Vs/R))*exp(-t/tau);
        v = -L*(1/tau)*((I0-(Vs/R))*exp(-t/tau));
        printf('i = %g + [%g * exp(-t/%g)]\n',Vs/R,I0-Vs/R,tau);  
        printf('v = -[%g*exp(-t/%g)]\n',L*(1/tau)*(I0-Vs/R),tau); 
end 
subplot(211);
plot(t,i)
xlabel('Tempo (s)');
ylabel('Corrente (A)');
xgrid;
subplot(212);
plot(t,v)
xlabel('Tempo (s)');
ylabel('Tensão (V)');
xgrid;

Nenhum comentário:

Postar um comentário