Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • mso/sample/controllers/CSTR_noniso_pid.mso

    r37 r18  
    4040        "Balanço de Massa Global"
    4141        diff(V) = Inlet.F - Outlet.F;
    42        
    4342        "Balanço de Massa por Componente"
    4443        tau * diff(Ca) = (Inlet.Ca - Ca) - (-rA) * tau;
    45        
    4644        "Mistura perfeita"
    4745        Outlet.Ca = Ca;
    4846        Outlet.T  = T;
    49        
    5047        "Taxa de reação"
    5148        -rA = k * Ca;
    52        
    5349        "Equação de Arrhenius"
    54         k = ko * exp(-Ea/(R*T));
    55        
     50        k=ko*exp(-Ea/(R*T));
    5651        "Tempo de residência médio"
    5752        tau * Inlet.F = V;
    58        
    5953        "Geometria"
    6054        A * h = V;
    61        
    6255        "Equação da válvula"
    6356        Outlet.F = Cv * sqrt(h);
    64        
    6557        "Balanço de energia"
    66         tau * diff(T) = (Inlet.T - T) - U*At*(T-Tw)/(ro*V*Cp)*tau + (-Hr)*(-rA)*tau/(ro*Cp);
     58        tau * diff(T)=(Inlet.T - T) - U*At*(T-Tw)/(ro*V*Cp)*tau + (-Hr)*(-rA)*tau/(ro*Cp);
    6759
    6860end
     
    111103       
    112104        "Variáveis manipulada"
    113         CSTR.Cv  = 2.2136 * "m^2.5/h" * (1 - PIDL.Ports.output);
     105        CSTR.Cv  = 2.2136 * "m^2.5/h" * (1 + PIDL.Ports.output);
    114106        CSTR.Tw  = PIDT.Ports.output*(Tmax-Tmin)+Tmin;
    115107       
     
    123115
    124116        #Parâmetros do PID de nível
    125         PIDL.Parameters.bias=0;
     117        PIDL.Parameters.bias = 0;
    126118        PIDL.Parameters.alpha=0.1;
    127         PIDL.Options.action=1;
     119        PIDL.Options.action=-1;
    128120        PIDL.Parameters.gamma=1;
    129121        PIDL.Parameters.beta=1;
    130122        PIDL.Options.clip=1;
    131123        PIDL.Options.autoMan=0;
    132         PIDL.Parameters.gain=20;
    133         PIDL.Parameters.intTime=5*"h";
    134         PIDL.Parameters.derivTime=0*"s";
     124        PIDL.Parameters.gain=0.15;
     125        PIDL.Parameters.intTime=100*"s";
     126        PIDL.Parameters.derivTime=1*"s";
    135127        PIDL.Ports.setPoint=0.55;
    136128        PIDL.Parameters.tau=1*"s";
     
    139131        PIDT.Parameters.bias = 0;
    140132        PIDT.Parameters.alpha=0.1;
    141         PIDT.Options.action=1;
     133        PIDT.Options.action=-1;
    142134        PIDT.Parameters.gamma=1;
    143135        PIDT.Parameters.beta=1;
    144136        PIDT.Options.clip=1;
    145137        PIDT.Options.autoMan=0;
    146         PIDT.Parameters.gain=40;
    147         PIDT.Parameters.intTime=5*"h";
    148         PIDT.Parameters.derivTime=1*"h";
     138        PIDT.Parameters.gain=0.85;
     139        PIDT.Parameters.intTime=100*"s";
     140        PIDT.Parameters.derivTime=1*"s";
    149141        PIDT.Ports.setPoint=0.85;
    150142        PIDT.Parameters.tau=1*"s";
     
    168160        OPTIONS
    169161        time = [0:0.1:1 1:1:100] * "h";
     162        outputLevel = "high";
    170163end
Note: See TracChangeset for help on using the changeset viewer.