Modelo y simulacion
de un motor DC.
fig.
1
La ecuacion de este sistema , ver Sistemas
realimentados de control de John J. D’Azzo es,

Lm.J/KT=k1
; (Lm.B+Rm.J)/KT=k2
; (Rm.B/KT+Kb)=k3
k1.D^2.wm + k2.Dwm+k3.wm=ea
k1.D^2.wm = - k2.Dwm-k3.wm+ea
D^2.wm = -( k2/
k1).Dwm-(k3/ k1).wm+(1/
k1).ea
a= k2/
k1 ; b= k3/ k1 ; c=1/k1
La siguiente ec. se utilizara para la simulacion con Scicos ,
J=0.1; [ Kg
.(m^2) ]
B=0.01; [Newton . m
/ (rad/seg)]
Lm=1;
Rm=1;
KT=1;
Kb=KT;
k1=Lm*J/KT;
k2=(Lm*B+Rm*J)/KT;
k3=(Rm*B/KT)+Kb;
a=k2/k1
b=k3/k1
c=1/k1
que se ejecuta de Scilab como File---exec
a =
1.1
b =
10.1
c =
10.
Luego al realizar la
simulacion con Scicos resulta,

La
velocidad del eje es de acuerdo a la simulación con Scicos,
fig.
3
Al realizar la simulación con Modelica , en este modelo no se incluyo el coeficiente de amortiguamiento B=0.01 Newton.metro/(rad/seg)
fig.
4
y se obtuvo,
fig.
5
que es igual a lo obtenido con Scicos, la diferencia consiste en que con Modelica se arma el sistema como el indicado en la figura 4 y se simula, mientras con Scicos se debe plantear la ecuación 1.
Simulación de un motor comercial.
A partir de las
siguientes caracteristicas,

y utilizando Modelica,
se quiere determinar las siguientes caracteristicas, velocidad sin carga a la
tension nominal [V], la constante de velocidad [rpm/V] y la constante de tiempo
mecanica [s].
Dibujando primero el
modelo como se indica a continuacion,

a partir del dibujo se
escribio el programa , incluyendo el Load Modelica Library,
loadModel(Modelica)
model edu8
Modelica.Electrical.Analog.Basic.EMF EMF1(k=0.0552);
Modelica.Electrical.Analog.Basic.Inductor
inductor1(L=0.00502);
Modelica.Electrical.Analog.Basic.Conductor
conductor1(G=0.0240964);
Modelica.Electrical.Analog.Sources.ConstantVoltage
constantVoltage1(V=24.0);
Modelica.Electrical.Analog.Basic.Ground ground1;
Modelica.Mechanics.Rotational.Inertia
inertia1(J=2.3e-06);
equation
connect(EMF1.flange_b,inertia1.flange_a);
connect(ground1.p,constantVoltage1.n);
connect(EMF1.n,ground1.p);
connect(inductor1.n,EMF1.p);
connect(conductor1.n,inductor1.p);
connect(constantVoltage1.p,conductor1.p);
end
edu8;
La simulacion es,
>> simulate( edu8)
record
resultFile = "edu8_res.plt"
end
record
>> plot ( inertia1.w )
true
w[rad/seg]

y simulando hasta un tiempo t=0.2 seg ,
>> simulate ( edu8, startTime=0.0 , stopTime= 0.2)
record
resultFile = "edu8_res.plt"
end record
>> plot ( inertia1.w )

true
fm=wm.60/2.pi= 4151.0792 [rpm], esta ultima es la velocidad máxima sin carga.
La constante de velocidad es 4151.0792 /24=172.96163 rpm/V
Para determinar la constante de tiempo en forma aproximada supongamos la respuesta de la forma w=wm.(1-e^(-t/T)) , si t=T es w= 434.7(1-(1/e))=274.78 [rad/seg]

T=31.3 ms
Si se compara los resultados obtenidos con la simulación con los datos del fabricante,
Fabricante simulacion
Velocidad máxima sin carga 3990 [rpm] 4151.0 [rpm]
Constante de velocidad 173 [rpm/V] 172.96 [rpm/V]
Constante de tiempo 31.7 [ms] 31.3 [ms]
Se ve que los resultados son casi iguales.
Enlaces.
Ejemplo
simple de un programa de Modelica usando OpenModelica.
Eduardo Ghershman , 27.9.2008