4.2 Формульное описание блока RUN в идентификаторах.
Обозначения:
int() – выделение целой части;
log10() - десятичный логарифм;
sqrt() – извлечение квадратного корня.
Подготовительные операции: |
|
LAM = CvS/Ftr |
(1) |
KURS = Ksh * PI / 180.0 |
(2) |
XAM[1] = 30 |
(3) |
YAM[1] = 14 |
(4) |
ZAM[1] = 5 |
(5) |
XAM[2] = 30 |
(6) |
YAM[2] = 14 |
(7) |
ZAM[2] = -5 |
(8) |
XAM[3] = -25 |
(9) |
YAM[3] = 16 |
(10) |
ZAM[3] = 7 |
(11) |
XAM[4] = -25 |
(12) |
YAM[4] = 16 |
(13) |
ZAM[4] = -7 |
(14) |
WB[0] = 0 |
(15) |
WB[1] = 0.104 |
(16) |
WB[2] = 0.315 |
(17) |
WB[3] = 0.526 |
(18) |
WB[4] = 0.84 |
(19) |
WB[5] = 1.25 |
(20) |
WB[6] = 2.1 |
(21) |
WB[7] = 4.22 |
|
Kzch = int(tauzh/Del_t) |
(23) |
Ksbr = int(tausb/Del_t) |
(24) |
Перебор всех ракет: |
|
Цикл по NR от 1 до 48 действия (26) – (182) |
(25) |
если (Imis[NR] ¹1) то действия (27) – (37), иначе действия (38) – (182) |
(26) |
zimis[NR] = Imis[NR] |
(27) |
Basic[NR] = 0 |
(28) |
Istop[NR]=0 |
(29) |
VDcu[NR] = 0.0 |
(30) |
Nc[NR] = 0 |
(31) |
Nci[NR] = 0 |
(32) |
LZch[NR] = 0 |
(33) |
Zch[NR] = 0 |
(34) |
Qo[NR] = 0.0 |
(35) |
Qtf[NR]= 0.0 |
(36) |
Qdop[NR] = 0.0 |
(37) |
XR = Xmis[NR] - Xsh |
(38) |
YR = Ymis[NR] - Ysh |
(39) |
ZR = Zmis[NR] - Zsh |
(40) |
TAN = Nju_mis[NR] * PI / 180.0 |
(41) |
PSI = Psi_mis[NR] * PI / 180.0 |
(42) |
DXrgs = Del_X[NR] |
(43) |
DYrgs = Del_Y[NR] |
(44) |
DZrgs = Del_Z[NR] |
(45) |
Первый ввод параметров по NR-й ракете: |
|
если (zimis[NR] = 0) то действия (47) – (59) |
(46) |
TTR[NR] = 0 |
(47) |
Istop[NR] = 0 |
(48) |
Lftr[NR] = 0 |
(49) |
IZch[NR] = 0 |
(50) |
Mzch[NR] = 0 |
(51) |
Jvkl[NR] = 0 |
(52) |
Isbr[NR] = 0 |
(53) |
Msbr[NR] = 0 |
(54) |
Jsbr[NR] = 0 |
(55) |
LZch[NR] = 0 |
(56) |
Zch[NR] = 0 |
(57) |
dfd[NR] = 0 |
(58) |
Цикл по Itg от 1 до 16 : TAUf[NR][Itg] = Tfil |
(59) |
Переключение параметров сканирования при полете ракеты: |
|
TTR[NR] = TTR[NR] + Del_t |
(60) |
если (TTR[NR] ³ Tpas) то действия (62) – (63), иначе действия (64) – (65) |
(61) |
Kdp[NR] = int(taudp2/Del_t) |
(62) |
Fmx[NR] = Fmx2 |
(63) |
Kdp[NR] = int(taudp1/Del_t) |
(64) |
Fmx[NR] = Fmx1 |
(65) |
Перебор всех целей: |
|
Цикл по Itg от 1 до 16 : действия (67) – (104) |
(66) |
если (Aim[Itg] = 0) то действия (68) – (70), иначе действия (71) – (104) |
(67) |
Q5[NR][Itg] = 1e-18 |
(68) |
Q6[NR][Itg] = 1e-18 |
(69) |
ASN[NR][Itg] = 0 |
(70) |
XT = Xc_i[Itg] - Xsh |
(71) |
YT = Yc_i[Itg] - Ysh |
(72) |
ZT = Zc_i[Itg] - Zsh |
(73) |
SIG = EPR[Itg] |
(74) |
Перебор всех прожекторов: |
|
ЦИКЛ по Irp от 1 до 4 : действия (76) – (79) |
(75) |
если (Co[Irp] = 1) то Ptr[Irp] = PW иначе Ptr[Irp] = 0 |
(76) |
P_ShD[Irp] = ShD[Irp] |
(77) |
если (ShD[Irp] = 1) то DET1[Irp] = TTwide иначе DET1[Irp] = TTnarr |
(78) |
если (ShD[Irp] = 1) то Grp[Irp] = Gwide иначе Grp[Irp] = Gnarr |
(79) |
Вызов процедуры POW12 |
(80) |
Входы: XR,YR,ZR,XT,YT,ZT,KURS,TAN,PSI,DXrgs,DYrgs,DZrgs,XAM,YAM,ZAM |
|
Выходы: Q1, Q2, Q4 |
|
Вызов процедуры POW3 |
(81) |
Входы: XR, YR, ZR, XT, YT, ZT,DXrgs,DYrgs,DZrgs |
|
Выход: Q3 |
|
если (Q1 < 1e-18) то Q1 = 1e-18 |
(82) |
если (Q2 < 1e-18) то Q2 = 1e-18 |
(83) |
если (Q3 < 1e-18) то Q3 = 1e-18 |
(84) |
если (Q4 < 1e-18) то Q4 = 1e-18 |
(85) |
Sop[NR] = sqrt(Q1) |
(86) |
U5[NR][Itg] = sqrt(Q2 * Q3) |
(87) |
U6[NR][Itg] = sqrt(Q4) |
(88) |
если (Qdop[NR] > Qpug) то TAUf[NR][Itg] = Del_t иначе TAUf[NR][Itg] = Tfil |
(89) |
A90 = Del_t / TAUf[NR][Itg] |
(90) |
B90 = 1.0 - A90 |
(91) |
если (zimis[NR] = 0) то действия (93) – (95) |
(92) |
Sf[NR] = Sop[NR] |
(93) |
Q5[NR][Itg] = U5[NR][Itg] |
(94) |
Q6[NR][Itg] = U6[NR][Itg] |
(95) |
Sf[NR] = B90 * Sf[NR] + A90 * Sop[NR] |
(96) |
Q5[NR][Itg] = B90 * Q5[NR][Itg] + A90 * U5[NR][Itg] |
(97) |
Q6[NR][Itg] = B90 * Q6[NR][Itg] + A90 * U6[NR][Itg] |
(98) |
QNop = 20 * log10(Sf[NR]) |
(99) |
QNug = 20 * log10(Q5[NR][Itg]) |
(100) |
Qo[NR] = QNop - QQ133 |
(101) |
Qpr[NR][Itg] = QNug - QQ164 |
(102) |
если (Qo[NR] > Qpug) то Basic[NR] = 1 иначе Basic[NR] = 0 |
(103) |
если (Qpr[NR][Itg] > Qpug) то ASN[NR][Itg] = 1 иначе ASN[NR][Itg] = 0 |
(104) |
если (LZch[NR]=1) то действия (106) – (129), иначе действия (130) – (174) |
(105) |
NNc = Nci[NR] |
(106) |
VDcu[NR] = Votn_rc[NR][NNc] + Votn_kc[NNc] |
(107) |
fdo = -Ftr * VDcu[NR] / CvS |
(108) |
dfd[NR] = 0.0 |
(109) |
Qs = Q5[NR][NNc] |
(110) |
Qp = Q6[NR][NNc] |
(111) |
VDck = Votn_kc[NNc] |
(112) |
VDrk = Votn_kr[NR] |
(113) |
VDrc = Votn_rc[NR][NNc] |
(114) |
Вызов процедуры SNR |
(115) |
Входы: fdo, Qs, Qp, VDck, VDrk, VDrc |
|
Выход: QU |
|
Qd[NR] = QU |
(116) |
Строб сопровождения по памяти |
|
если (Jsbr[NR] = 0) то действие (118) |
(117) |
если (Qd[NR] £ Qpdop) то Jsbr[NR] = 1 |
(118) |
если (Jsbr[NR] = 1) то действия (120) – (129) |
(119) |
Msbr[NR] = Msbr[NR] + 1 |
(120) |
если (Qd[NR] £ Qpdop) то Isbr[NR] = Isbr[NR] + 1 |
(121) |
если (Msbr[NR] = Ksbr) то действия (123) – (128) |
(122) |
если (Isbr[NR] = Ksbr) то действия (124) – (125), иначе LZch[NR] = 1 |
(123) |
LZch[NR] = 0 |
(124) |
Istop[NR] = 0 |
(125) |
Isbr[NR] = 0 |
(126) |
Msbr[NR] = 0 |
(127) |
Jsbr[NR] = 0 |
(128) |
Qdop[NR] = Qd[NR] |
(129) |
если ( Istop[NR]=0 ) то действия (131) – (152), иначе действия (153) – (174) |
(130) |
VDcu[NR] = VDo[NR] |
(131) |
Qmax[NR] = 0.0 |
(132) |
Kd10 = 20 * Kdp[NR] / 2 |
(133) |
qnn3 = 2.0 * Fmx[NR] / Kd10 |
(134) |
Перебор всех целей |
|
Цикл по Itg от 1 до 16 : действия (136) – (149) |
(135) |
если (Aim[Itg] ¹ 0) то действия (137) – (149), иначе нет действий (137) – (149) |
(136) |
Qs = Q5[NR][Itg] |
(137) |
Qp = Q6[NR][Itg] |
(138) |
VDck = Votn_kc[Itg] |
(139) |
VDrk = Votn_kr[NR] |
(140) |
VDrc = Votn_rc[NR][Itg] |
(141) |
Сканирование по частоте Доплера |
|
Цикл по j10 от 0 до Kd10 : действия (143) – (149) |
(142) |
dfd[NR] = -Fmx[NR] + qnn3 * j10 |
(143) |
fdo = -Ftr * VDcu[NR] / CvS + dfd[NR] |
(144) |
Вызов процедуры SNR |
(145) |
Входы: fdo, Qs, Qp, VDck, VDrk, VDrc |
|
Выход: QU |
|
если (QU > Qmax[NR]) то действия (147) – (149) |
(146) |
Qmax[NR] = QU |
(147) |
fcu[NR] = fdo |
(148) |
Nci[NR] = Itg |
(149) |
NNc = Nci[NR] |
(150) |
Qdop[NR] = Qmax[NR] |
(151) |
если (Qmax[NR] > Qpdop) то Istop[NR] = 1 |
(152) |
NNc = Nci[NR] |
(153) |
Qs = Q5[NR][NNc] |
(154) |
Qp = Q6[NR][NNc] |
(155) |
VDck = Votn_kc[NNc] |
(156) |
VDrk = Votn_kr[NR] |
(157) |
VDrc = Votn_rc[NR][NNc] |
(158) |
fdo = fcu[NR] |
(159) |
Вызов процедуры SNR |
(160) |
Входы: fdo, Qs, Qp, VDck, VDrk, VDrc |
|
Выход: QU |
|
Qd[NR] = QU |
(161) |
Строб подтверждения ЗЧ |
|
если (Jvkl[NR] = 0) то действие (163) |
(162) |
если (Qd[NR] > Qpdop) то Jvkl[NR] = 1 |
(163) |
если (Jvkl[NR] = 1) то действия (165) – (173) |
(164) |
Mzch[NR] = Mzch[NR] + 1 |
(165) |
если (Qd[NR] > Qpdop) то IZch[NR] = IZch[NR] + 1 |
(166) |
если (Mzch[NR] = Kzch) то действия (168) – (173) |
(167) |
если (IZch[NR] = Kzch) то LZch[NR] = 1 , иначе действия (169) – (170) |
(168) |
LZch[NR] = 0 |
(169) |
Istop[NR] = 0 |
(170) |
IZch[NR] = 0 |
(171) |
Mzch[NR] = 0 |
(172) |
Jvkl[NR] = 0 |
(173) |
Qdop[NR] = Qd[NR] |
(174) |
NNc = Nci[NR] |
(175) |
ASC[NR] = ASN[NR][NNc] |
(176) |
Qtf[NR]= Qpr[NR][NNc] |
(177) |
если (Lftr[NR] = 0) то действие (179) |
(178) |
если (ASC[NR] = 1) то Lftr[NR] = 1 |
(179) |
если (Lftr[NR] = 1 ) то Zch[NR] = LZch[NR] , иначе Zch[NR] = 0 |
(180) |
если (Zch[NR] = 1) то Nc[NR] = Nci[NR] , иначе Nc[NR] = 0 |
(181) |
zimis[NR] = Imis[NR] |
(182) |
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.