Отчет Шергина В. о работе за 1997 год.

Работа с В.Рухлевым.
  Разработка программного набора MODA для моделирования процессов
  управления БТА.   MODA создавалась под ОС Linux как развитие
  принципов моделирования в реальном времени разработанных В.Рухлевым
  и реализованных в программе А.Назаренко DIANA/DOS.

  Цели разработки:
    - ориентация на UNIX-like системы;
    - расширенный, более удобный формат описания схемы;
    - расширенные функциональные возможности (больший набор блоков и
      "бесконечная" схема);
    - более гибкая организация ввиде расширяемого набора программ
      на основе простого стандарта передачи "многоканальных сигналов"
      через файлы или pipe-каналы;
    - проработка вариантов синхронизации с настоящим реальным временем;
    - реализация интерпретатора схем с набором элементарных блоков
      ввиде библиотеки Си-функций готовой для включения в реальную
      программу управления.

  Состав:
    imoda - интерпретатор/исполнитель схем;
    xmoda - "многоканальный" визуализатор под X11;
    vmoda -      ------  ""  --------     прямо на SVGA-консоли;
    psp   - рассчет спектров колебаний;
    adc4  - программа Р.Бахтеева формирующая 4-х канальный выход
	    с платы АЦП PCL818 для подключения датчиков Рухлева.

  Использование:
    Проводились первые пробные наблюдения c записью показаний датчиков
    на подвеске БТА и анализом колебаний в разных режимах работы
    телескопа.
    Не смотря на печальное отбытие В.Рухлева программы частично
    используются мной при работе по новому МО АСУ БТА для:
      - графического представления работы температурных датчиков;
      - графического представления данных (например скоростей) в первой
	исседовательско-тестовой программе управления БТА под ОС Linux;
      - подготовки модели приводов и отработки принципов работы с
	датчиками положения для использования в программе управления.

Работы по АСУ БТА.
  Исследование основной программы управления в рамках имеющихся текстов:
    - разбор принципов работы основных алгоритмов в режимах наведения
      и ведения, выяснение ситуаций плохой работы на реальном телескопе
      (например: скорость 40"/сек по Az, точки элонгации т.е. смена
      направления Az, коррекция на очень малых и очень больших скоростях Az);
    - поиск некорректностей в алгоритмах и ошибок в программе,
      например:
	 разрывная функция отработки рассогласования и ошибка в цифровом
	 фильтре рассогласований Az;
	 сбои датчиков контролируются уже после использования в управлении,
	 а сообщение оператору выдается по 10-му сбою (хоть за всю ночь);
	 накопление изодрома(т.е.интеграла от рассогласования) включается
	 сразу после отпускания кнопки коррекции, что его портит;
	 алгоритм обратного пересчета через 2-3 сек. после окончания коррекции
	 (когда все уже должно успокоится) наоборот начинает "гонять"
	 телескоп еще 6-10 секунд;
	 хитро "закопанная" константа согласования грубого и точного
	 отсчета Z;

  Считывание нового датчика ДУП положения фокуса БТА:
    - исследование особенностей разработанного в АСУ контроллера
      передачи последовательного кода, разработка алгоритма управления
      оным, добавка в программу теста БТА проверки датчика фокуса;
    - вставка считывания положения фокуса в основную программу,
      исправление однократных сбоев передачи кода и обнаружение
      многократных, исследование и исправление нелинейной систематической
      ошибки (достигнутая точность ~0.02мм), индикация положения фокуса
      для оператора (тут возник побочный эффект: иногда при смене оператором
      режимов индикации возможен сбой ведения), передача положения фокуса
      во вторую машину АСУ в аппаратной;

  Модернизация в основной программе АСУ блока связи с серверной машиной
  в аппаратной:
    - переход на скорость 38000;
    - помехозащищенный пакетный протокол передачи информации в сервер,
      передача вставлена в прерывания 50Гц (тики 3, 8, 13, ... и т.д),
      10 пакетов фиксированного состава в секунду (т.е. большинство
      значений обновляются раз в секунду, а некоторые чаще), каждый
      пакет с шапкой и контрольной суммой, сбойные пакеты просто
      отбрасываются (подтверждений нет);
    - помехозащищенный протокол приема данных от сервера, прием вставлен
      в 10-ти герцовую программу чтобы в будущем иметь возможность
      быстрой реакции на команды упраления, сейчас есть прием координат
      "подготавливаемой звезды" и данных Az/Z коррекции, при правильном
      приеме в поток передачи вставляется код подтверждения, при обнаружении
      ошибки данные отбрасываются и передается код сбоя (программа на
      сервере должна повторить передачу);

  Доработка  серверного  МО в аппаратной:
    - реализация в центральной серверной программе БТА (bta_serv на
      сервере в аппаратной tb.bta.sao.ru) поддержки еще одного
      RS232-канала и протокола обмена с управляющей машиной АСУ;
    - дополнение сетевого протокола обмена с клиентами через TCP-связи
      командами передачи координат обьектов и данных для Az/Z коррекции;

  Модернизация программ-клиентов которые работая на машинах в сети САО
  реализуют для конечных пользователей сетевой доступ к АСУ БТА:
    bta_client - X11 GUI обеспечивающий индикацию основных параметров:
	      связь с управляющей программой АСУ (Есть/Нет),
	      режим (наведение / ведение / ошибка в допуске),
	      выбранный фокус (СПФ/Н1/Н2),
	      положение П2 рассчетное и реальное,
	      состояние привода П2 (Вкл/Выкл),
	      время звездное и московское,
	      текущие координаты объекта (откорректированные),
	      исходные координаты объекта (введенные),
	      поправки коррекции,
	      подготовленные координаты (переданные),
	      положение по Az/Z рассчетное и реальное,
	      текущее рассогласование и скорость по Az/Z,
	      положение фокуса;
       кроме того bta_client дает доступ к КАМАК-реализации пульта
       наблюдателя и через него позволяет:
	      фокусировать телескоп,
	      включать ручную коррекцию Az/Z,
	      управлять П2;

    alp_del - передача коодинат из командных файлов;
    az_corr - коррекция по Az/Z из командных файлов;
    ad_corr - коррекция по Alpha/Delta из командных файлов;
    acs_bta - считывание параметров АСУ, передача коодинат и коррекции
	      по Az/Z через файлы на диске, т.е. это сетевой (NFS)
	      интерфейс для систем сбора под DOS;
    telescope - X11 GUI позволяющий:
	      работать с файлами со списками координат обьектов,
	      выбирать координаты из списка,
	      вводить вручную,
	      получать текущие координаты и поправки коррекции с АСУ,
	      пересчитывать координаты со стандартной эпохи на текущую
	      дату и обратно,
	      вставлять в список,
	      передавать координаты в АСУ, либо прямо, либо с пересчетом
	      за поправки по Alpha/Delta или Az/Z,
	      передавать в АСУ требуемые значения Az и Z с пересчетом в
	      Alpha/Delta-координаты некоего "обьекта",
	      запускать в программе АСУ коррекцию Alpha/Delta или Az/Z на
	      нужное расстояние;

  Изучение аппаратуры системы управления:

  Разработка первых исседовательско-тестовых программ управления
  телескопом под ОС Linux:
    - установка ОС Linux на обе управляющие машины АСУ, подключение
      их через Ethernet в сеть САО и в Internet;
    - программа termo чтения (с АЦП PCL818) и индикации температурных
      датчиков для операторов;
    - освоение использования POSIX.1b средств реального времени в Linux;
    - разработка и отладка набора функций для управления телескопом
      через карты PCL722 и PCL730;
    - разработка программы одновременного чтения всех датчиков положения
      (определение состояния "Выкл.УСО",параллельное считывание всех ППНДД,
       контроль кодов ППНДД и ДУП, коррекция одиночных сбоев);
    - разработка алгоритма представления положения телескопа как полинома
      2-й степени от времени (с помощью итераивного метода наименьших
      квадратов, дающего взвешенную апроксимацию нескольких последних
      показаний датчиков положения).



P.S. А вообще-то я восновном занимался дочкой ...