$***********************************************************
$   макро задает поворот двух тел относительно
$   указанной оси по заданному закону
$***********************************************************
$       формальные параметры шага МОДЕЛЬ
$ p1  - номер поворачивающегося тела
$ p2  - номер тела относительно которого происходит поворот
$ p3  - направление оси поворота (1 - X, 2 - Y, 3 - Z)
$ p4  - номер подсистемы задатчика угла поворота поворочивающегося тела
$
BL14  NPDS  TPDS  LX  LY  LZ  UX  UY  UZ
@  'Умножитель коэффициента усиления'
       npu1  104  0  0  0  0  0  0
@  'инвертор программного движения'
       npu2  102  0  0  0  0  0  0
@  'сумматор'
       npu3 101   0  0  0  0  0  0
@  'Фиктивное звено'
       npu4 111   0  0  0  0  0  0
@  'Фиктивное звено'
       npu5 111   0  0  0  0  0  0
@  'Фиктивное звено'
       npu6 111   0  0  0  0  0  0
@  'сумматор упругого и демпф. мом-ов'
       npu7  101  0  0  0  0  0  0
@  'Фиктивное звено'
       npu8 111   0  0  0  0  0  0
@  'вариатор '
       npu9 nmx1  0  0  0  0  0  0
@  'Фиктивное звено'
       npu10 111   0  0  0  0  0  0
@  'Фиктивное звено'
       npu11 111   0  0  0  0  0  0
BL16 NMX NAPR  TUF  KPAR  TDF  KPAR
@   ' вариатор'
      nmx1    1   401    1  50    1
@   'угловая связь тел'
      nmx2    p3+3    2   4   50    1
BL17   NSE NPDS1  NUZ1 NPDS2  NUZ2  NMX
@   'угловая связь тел'
       nse1   p1  1  p2  1   nmx2
@   'относительный угол - сумматор'
       nse2   npu10 1  npu3  1  1
@   'задаваемый угол - сумматор'
       nse3   p4    1  npu3  2   1
@   'сумматор - умножитель'
       nse4   npu3  1  npu1  2   1
@   'умножитель - фиктивное звено'
       nse5   npu1  1  npu4  1   1
@   'умножитель - фиктивное звено'
       nse6   npu1  1  npu5  1   1
@   'фиктивное звено - инвертор'
       nse7   npu4  1  npu2  1   1
@   'инвертор - поворачиваемое тело'
       nse8   npu2  1  p1    1   p3+3
@   'ф.з. - 2 тело'
       nse9   npu5  1  p2    1   p3+3
@   'умножитель - фиктивное звено'
       nse10   npu1  1  npu6  1   1
@   'демпфирующий момент - сумматор'
       nse11   nse1 -4  npu7  1   p3+3
@   'упругая сила - сумматор'
       nse12   npu6  1  npu7  2   1
@   'сумматор - ф.з.'
       nse13   npu7  1  npu8 1   1
@   'относительный угол - вариатор'
       nse14   nse1 -1  npu9  1  p3+3
@   'вариатор - фиктивное звено'
       nse15   npu9  1  npu10 1  1
@   'фиктивное звено'
       nse16   npu11  1  npu1 1  1
BL18  NSS   RPSOST   TFUN   KPAR
@  'коэффициент усиления привода'
      nss1    1        2     1
BL19  NSS   NPDS   NUZ
@  'коэффициент усиления привода'
      nss1    npu11     1
@ 'Момент на руле (Н*м)'
#wkt.mac 3 1 nse10  1  1  3
@ 'Момент 1 на руле (Н*м)'
#wkt.mac 3 1 nse13  1  1  3
@ 'Относительный поворот тел (tugol1.mac)'
#wkt.mac 3 1 nse15   1  1  1
$************************************************
$     формальные параметры шага РАСЧЕТ
$ p1  - признак управления, 1 - управление есть, 0 - руль свободен
$ p2  - коэффициент усиления привода
$ p3  - направление оси поворота (1 - X, 2 - Y, 3 - Z)
BL33    NXAR    PRSOST    PRSL      KSTROK
if p1 == 1 then
  c_priv=p2
else
  c_priv=0.000001
endif
@   ' вариатор'
      nmx1       1        1          1
      0.0    0.0          0.         0.
      nmx1       1        2          1
        0.       0.     0.         0.
@   'угловая связь тел'
       nmx2    p3+3    1    1
        0.0    0.0    1.0   0.0
       nmx2    p3+3    2    1
        sqrt(c_priv)*0.3 0.0    0.0    0.0
BL34    NSS      PRSOST      KSTROK
@  'коэффициент усиления привода'
      nss1    1        1
      c_priv  0.       0.