http://pspice.narod.ru

Расчёт функциональных схем в MicroCAP and Maple

MathSpice       www.pspicelib.narod.ru

При моделировании систем удобно использовать функциональные схемы.
Для анализа таких схем существует множество программ. Одной из самых продвинутых считатся MatLAB Simulink.
Меня лично эта программа впечатлила лишь обилием готовых функциональных блоков. MatLAB программа весьма тяжеловесная,
и грузить её в свой ПК только ради этого врят ли стоит.
В большинстве случаев вполне подходит MicroCAP, имеющий весьма сильный схемный редактор с возможностью моделирования.
Он гораздо быстрее в работе и лучше подходит для электрических проектов.
Если организовать работу в тандеме с Maple, то можно значительно расширить диапазон решаемых задач.

1. MicroCAP. Канала крена.

Рис. 1. Структурная схема канала крена

[Maple Bitmap]

>    restart: with(MSpice): ESolve(WQM,`Канал крена/Xрен.CKT`);  

`Cистема Кирхгофа-Лапласа`

V8 = `К`[`АХ`]*V4

V6 = `К`[`ЗХ`]*V4

V16 = V8+V7

V1 = V17+V15

V2 = `К`[`1Х`]*V1

V1_SIN = V4-V5

V7 = V6/s

V17 = V16*WI[`зап`]

V9 = V2*W[`кф`]

Vsigma = V9*WH[`зап`]

Vdelta = Vsigma*W[`п`]

V12 = Vdelta*W[`об`]

VG = V12/s

V14 = V12*W[`д`]

V15 = V14*WH[`чип`]

V5 = VG*WI[`чип`]

`Решения`

{VY, V5, V8, V6, V16, V7, V1, V17, V15, V2, Vsigma, Vdelta, V9, V12, VG, V14}


Найдём результирующую передаточную функцию

>    H:=VG/VY;

H := -`К`[`1Х`]*(`К`[`АХ`]*s+`К`[`ЗХ`])*WI[`зап`]*W[`кф`]*WH[`зап`]*W[`п`]*W[`об`]/(-s^2+s^2*W[`д`]*WH[`чип`]*`К`[`1Х`]*W[`кф`]*WH[`зап`]*W[`п`]*W[`об`]+`К`[`1Х`]*WI[`зап`]*W[`кф`]*WH[`зап`]*W[`п`]*W[`...

>    W[кф]:=(T[ф1]*s+1)/(T[ф2]*s+1);
W[аиф]:=(T1^2*s^2+2*T1*zeta[1]*s+1)/(T2^2*s^2+2*T2*zeta[2]*s+1);
W[п]:=1/(T[n1]^2*s^2+T[n1]*zeta[n]*s+1);
WH[чип]:=exp(-T[h]*s); WI[чип]:=exp(-T[i]*s);
WH[зап]:=exp(-0.5*T[h]*s); WI[зап]:=exp(-0.5*T[i]*s);
W[об]:=b[gamma]/(T[1]*s+1);  

W[`кф`] := (T[`ф1`]*s+1)/(T[`ф2`]*s+1)

W[`аиф`] := (T1^2*s^2+2*T1*zeta[1]*s+1)/(T2^2*s^2+2*T2*zeta[2]*s+1)

W[`п`] := 1/(T[n1]^2*s^2+T[n1]*zeta[n]*s+1)

WH[`чип`] := exp(-T[h]*s)

WI[`чип`] := exp(-T[i]*s)

WH[`зап`] := exp(-.5*T[h]*s)

WI[`зап`] := exp(-.5*T[i]*s)

W[`об`] := b[gamma]/(T[1]*s+1)

>    H:=simplify(H,'size');

H := `К`[`1Х`]*(`К`[`АХ`]*s+`К`[`ЗХ`])*exp(-.5*T[i]*s)*(T[`ф1`]*s+1)*exp(-.5*T[h]*s)*b[gamma]/(-(T[`ф1`]*s+1)*(exp(-T[i]*s)*(`К`[`АХ`]*s+`К`[`ЗХ`])*exp(-.5*T[i]*s)+W[`д`]*exp(-T[h]*s)*s^2)*`К`[`1Х`]*b[...

2. MicroCAP. Система ГИРОСКОП - РЕГУЛЯТОР.
MathSpice       www.pspicelib.narod.ru


[Maple Metafile]                                                  

>    restart: with(MSpice):
ESolve(WP,`Gyroscop/CMOSOP-PSpiceFiles/SCHEMATIC1/SCHEMATIC1.net`);

`Cистема Кирхгофа-Лапласа (физика)`

T3 = K2+K1

X1 = V5+V4

K1 = -X1*p1

X2 = V3+V2

K2 = -X2*p2

V5 = U*B*(s+L1)/(A*B*s^2+A*B*L1*s+H^2)

V3 = U*H/(A*B*s^2+A*B*L1*s+H^2)

Z = U+MZ

U = K3+T3

V4 = X3*L1*B*H*s/(A*B*s^2+A*B*L1*s+H^2)

V2 = X3*A*B*L1*s^2/(A*B*s^2+A*B*L1*s+H^2)

K3 = -X3*p3

T2 = Z*H/s/(A*B*s^2+H^2)

X3 = T2+T1

T1 = MY*A/(A*B*s^2+H)

`Решения`

{U, V5, V4, K2, K1, V3, V2, K3, T3, T2, T1, X3, X1, Z, X2}


Найдем выходную функцию

>    U:=simplify(U);

U := -(2*MY*A^2*H^2*p3*B*s^3+s*MY*A*H^4*p3+B*A*s^2*H^3*MZ*p3+s*B*p1*H^3*L1*MZ+H^4*MZ*p3+MY*A^3*B^2*s^5*p3+MY*A^3*B^2*s^4*p3*L1+MZ*A^2*B^2*s^4*H*p3+MZ*A^2*B^2*s^3*H*p3*L1+B^2*A*s^3*p1*L1*H^2*MZ+MY*A^2*H...
U := -(2*MY*A^2*H^2*p3*B*s^3+s*MY*A*H^4*p3+B*A*s^2*H^3*MZ*p3+s*B*p1*H^3*L1*MZ+H^4*MZ*p3+MY*A^3*B^2*s^5*p3+MY*A^3*B^2*s^4*p3*L1+MZ*A^2*B^2*s^4*H*p3+MZ*A^2*B^2*s^3*H*p3*L1+B^2*A*s^3*p1*L1*H^2*MZ+MY*A^2*H...
U := -(2*MY*A^2*H^2*p3*B*s^3+s*MY*A*H^4*p3+B*A*s^2*H^3*MZ*p3+s*B*p1*H^3*L1*MZ+H^4*MZ*p3+MY*A^3*B^2*s^5*p3+MY*A^3*B^2*s^4*p3*L1+MZ*A^2*B^2*s^4*H*p3+MZ*A^2*B^2*s^3*H*p3*L1+B^2*A*s^3*p1*L1*H^2*MZ+MY*A^2*H...
U := -(2*MY*A^2*H^2*p3*B*s^3+s*MY*A*H^4*p3+B*A*s^2*H^3*MZ*p3+s*B*p1*H^3*L1*MZ+H^4*MZ*p3+MY*A^3*B^2*s^5*p3+MY*A^3*B^2*s^4*p3*L1+MZ*A^2*B^2*s^4*H*p3+MZ*A^2*B^2*s^3*H*p3*L1+B^2*A*s^3*p1*L1*H^2*MZ+MY*A^2*H...
U := -(2*MY*A^2*H^2*p3*B*s^3+s*MY*A*H^4*p3+B*A*s^2*H^3*MZ*p3+s*B*p1*H^3*L1*MZ+H^4*MZ*p3+MY*A^3*B^2*s^5*p3+MY*A^3*B^2*s^4*p3*L1+MZ*A^2*B^2*s^4*H*p3+MZ*A^2*B^2*s^3*H*p3*L1+B^2*A*s^3*p1*L1*H^2*MZ+MY*A^2*H...

3. MicroCAP. Функциональная схема полосового фильтра.
MathSpice       www.pspicelib.narod.ru

Грандиозная экономия времени на расчетных работах позволяет с головой погрузиться в изучение фундаментальных проблем выбранной темы, что наверняка приведет к синергетическим эффектам.

Рис. 6. Функциональная схема  полосового фильтра

[Maple Bitmap]

>    restart: with(MSpice): ESolve(WQ,`Полосовой фильтр/L1.CKT`);  

`Cистема Кирхгофа-Лапласа`

V5 = .3225*V2

V6 = .6775*V2

V7 = .6775*Vout

V8 = 1.8726*Vout

V3 = V5+V7

V10 = V6-V8

V1 = 2.195*V1_SIN+V10

V2 = 6280*V1*s/(s^2+6280*s+1183152233)

Vout = 6280*V3*s/(s^2+6280*s+1183152233)

`Решения`

{Vout, V5, V2, V6, V7, V8, V1, V10, V3}


Найдём результирующую передаточную функцию

>    H:=Vout/Vin:

>    Values(AC,RLCVI,[]); Digits:=5:
PoleZero(H,s); HPP:=FPP(H,s), print(`Нуль-полюсная передаточная функция`);K:=AV(H,f);

Ввод номиналов компонентов:   

AC источник:  DС: V1_SIN:=0  AC: V1_SIN:=1   Pfase(degrees):=0

`-------------   Ноли    ------------`

S_Zero[1] = 0.

`-----------   Полюсы    -----------`

S_Pole[1] = -940.9610219-32028.47437*I

S_Pole[2] = -940.9610219+32028.47437*I

S_Pole[3] = -1084.338978+36908.77993*I

S_Pole[4] = -1084.338978-36908.77993*I

`Нуль-полюсная передаточная функция`

HPP := .27918e8*s^2/(s+1084.3-36909.*I)/(s+940.96-32028.*I)/(s+940.96+32028.*I)/(s+1084.3+36909.*I)

K := -.27918e12/(40000.*Pi^4*f^4-.81008e8*I*Pi^3*f^3-.23942e14*Pi^2*f^2+.23962e17*I*Pi*f+.3499623016e22)*Pi^2*f^2

>    HSF([H],f=1e3..10e3,"7) АЧХ фильтра, [H]."); PlotPZ(H,f,"8) H(f)");


[Maple Plot]

[Maple Plot]

[Maple Plot]

4 . MicroCAP. Канала крена летательного аппарата ( .DEFINE)

MathSpice       www.pspicelib.narod.ru

        MicroCAP последних версий весьма сильный схемный редактор с возможностью моделирования. В тандеме с Maple это весьма мощный инструмент исследователя. Например представленная ниже задача, простая по существу, потребует изрядного количества бумаги для писанины. Количество бумаги утроится, если возникнут описки. MSpice делает расчет передаточной функции за секунду.

       Cхема для анализа системы автоматического управления будет компукнее и понятнее, если использовать короткие обозначения передаточных функций.
Передаточные функции можно задать прямо в схеме с помощью ".DEFINE".

Рис. 1. Структурная схема канала крена

[Maple Bitmap]

>    restart: with(MSpice):ESolve(QM,`Канал крена DEFINE/Xрен.CKT`);
  

`Cистема Кирхгофа-Лапласа`

V8 = `К`[`АХ`]*V4

V6 = `К`[`ЗХ`]*V4

V16 = V8+V7

V1 = V17+V15

V2 = `К`[`1Х`]*V1

V1_SIN = V4-VOUT

V7 = V6/s

VG = V12/s

V14 = V12*W[`д`]

V17 = V16*(tau1^2*s^2+2*tau1*zeta[1]*s+1)/(tau2^2*s^2+2*tau2*zeta[2]*s+1)

V9 = V2*(tau[`ф1`]*s+1)/(tau[`ф2`]*s+1)

Vdelta = Vsigma/(tau[N1]^2*s^2+tau[N1]*zeta[N]*s+1)

V12 = Vdelta*B[gamma]/(tau[1]*s+1)

Vsigma = V9*exp(-.5*tau[H]*s)

V15 = V14*exp(-tau[H]*s)

VOUT = VG*exp(-tau[I]*s)

`Решения`

{VOUT, VY, V8, V6, V16, V7, V1, V17, V15, V2, Vsigma, V9, V12, Vdelta, VG, V14}

``

MSpice v8.52:   http://pspicelib.narod.ru

Заданы узлы: {} Источники: [V1_SIN]

Решения V_NET: [VOUT, VY, V8, V6, V16, V7, V1, V17, V15, V2, Vsigma, V9, V12, Vdelta, VG, V14]

J_NET: [JV1_SIN]

``

>    OUT:=simplify(VOUT,'size');

OUT := B[gamma]*exp(-.5000000000*tau[H]*s)*`К`[`1Х`]*V4*(tau[`ф1`]*s*`К`[`ЗХ`]+s^2*tau1^2*`К`[`ЗХ`]+tau[`ф1`]*s^3*tau1^2*`К`[`ЗХ`]+tau[`ф1`]*s^4*tau1^2*`К`[`АХ`]+tau[`ф1`]*s^2*`К`[`АХ`]+`К`[`ЗХ`]+2.*ta...
OUT := B[gamma]*exp(-.5000000000*tau[H]*s)*`К`[`1Х`]*V4*(tau[`ф1`]*s*`К`[`ЗХ`]+s^2*tau1^2*`К`[`ЗХ`]+tau[`ф1`]*s^3*tau1^2*`К`[`ЗХ`]+tau[`ф1`]*s^4*tau1^2*`К`[`АХ`]+tau[`ф1`]*s^2*`К`[`АХ`]+`К`[`ЗХ`]+2.*ta...
OUT := B[gamma]*exp(-.5000000000*tau[H]*s)*`К`[`1Х`]*V4*(tau[`ф1`]*s*`К`[`ЗХ`]+s^2*tau1^2*`К`[`ЗХ`]+tau[`ф1`]*s^3*tau1^2*`К`[`ЗХ`]+tau[`ф1`]*s^4*tau1^2*`К`[`АХ`]+tau[`ф1`]*s^2*`К`[`АХ`]+`К`[`ЗХ`]+2.*ta...
OUT := B[gamma]*exp(-.5000000000*tau[H]*s)*`К`[`1Х`]*V4*(tau[`ф1`]*s*`К`[`ЗХ`]+s^2*tau1^2*`К`[`ЗХ`]+tau[`ф1`]*s^3*tau1^2*`К`[`ЗХ`]+tau[`ф1`]*s^4*tau1^2*`К`[`АХ`]+tau[`ф1`]*s^2*`К`[`АХ`]+`К`[`ЗХ`]+2.*ta...
OUT := B[gamma]*exp(-.5000000000*tau[H]*s)*`К`[`1Х`]*V4*(tau[`ф1`]*s*`К`[`ЗХ`]+s^2*tau1^2*`К`[`ЗХ`]+tau[`ф1`]*s^3*tau1^2*`К`[`ЗХ`]+tau[`ф1`]*s^4*tau1^2*`К`[`АХ`]+tau[`ф1`]*s^2*`К`[`АХ`]+`К`[`ЗХ`]+2.*ta...
OUT := B[gamma]*exp(-.5000000000*tau[H]*s)*`К`[`1Х`]*V4*(tau[`ф1`]*s*`К`[`ЗХ`]+s^2*tau1^2*`К`[`ЗХ`]+tau[`ф1`]*s^3*tau1^2*`К`[`ЗХ`]+tau[`ф1`]*s^4*tau1^2*`К`[`АХ`]+tau[`ф1`]*s^2*`К`[`АХ`]+`К`[`ЗХ`]+2.*ta...
OUT := B[gamma]*exp(-.5000000000*tau[H]*s)*`К`[`1Х`]*V4*(tau[`ф1`]*s*`К`[`ЗХ`]+s^2*tau1^2*`К`[`ЗХ`]+tau[`ф1`]*s^3*tau1^2*`К`[`ЗХ`]+tau[`ф1`]*s^4*tau1^2*`К`[`АХ`]+tau[`ф1`]*s^2*`К`[`АХ`]+`К`[`ЗХ`]+2.*ta...

>   

Hosted by uCoz