\begin{figure}[t] \centering \includegraphics[width=0.97\textwidth]{obs-iface-login.png} \caption{Окно авторизиции наблюдателя}\label{obs-iface-login} \end{figure} \begin{figure}[t] \centering \includegraphics[width=0.97\textwidth]{obs-iface.png} \caption{Интерфейс наблюдателя}\label{obs-iface} \end{figure} \begin{figure}[t] \centering \includegraphics[width=0.97\textwidth]{obs-iface-menu.png} \caption{Главное меню интерфейса наблюдателя}\label{obs-iface-menu} \end{figure} Интерфейс наблюдателя (далее по тексту \verb|ИН|) предназначен для установки режимов и контроля работы элементов оптоволоконного спектрографа, а именно, \verb|ИН| позволяет управлять узлом подсмотра оптического волокна и узлами стационарной части спектрографа. Концептуально \verb|ИН| является графическим интерфейсом пользователя для демона \t{loccorr} и реализует его возможности в рамках его системы команд (см. выше по тексту). Программно \verb|ИН| реализован как \verb|Web|-интерфейс на языках \verb|HTML|, \verb|CSS| и \verb|Javascript|. В текущей реализации \verb|ИН| авторы использовали стороннюю \verb|CSS/Javascript| библиотеку для создания \verb|Web|-интерфейсов \verb|UIkit|\footnote{\url{https://getuikit.com/}}. Тестирование работы \verb|ИН| проводилось в браузерах на основе движков отображения веб-страниц и \verb|Javascript| \verb|Chromium/V8| (google-chrome и vivaldi) и \verb|Quantum/SpiderMonkey| (firefox). Таким образом работа в других браузерах, например internet explorer, не гарантируется. Формирование универсальной ссылки ресурса (\verb|URL|) на главную страницу \verb|ИН| зависит от сетевого имени (или \verb|IP|-адреса) управляющего компьютера, настроек безопасности и порта \verb|HTTP(S)|-сервера указанных в конфигурации демона \t{spec\_server} (см. выше). Например, \verb|IP|-адрес управляющего компьютера \verb|192.168.3.226|, \verb|http_port=8080| и \verb|TLS|-шифрование отключено, тогда \verb|URL| должен быть установлен как \verb|http://192.168.3.226:8080|. При указании правильного \verb|URL| браузер должен отобразить страницу авторизации. На Рисунке~\ref{obs-iface-login} показан пример начальной страницы авторизации наблюдателя. На этой странице нужно выбрать тип соединения \verb|Observer| или \verb|Viewer| и ввести пароль, чья хэш-сумма задана в конфигурации демона \t{spec\_server}. В случае успешной авторизации браузер перенаправит пользователя в интерфейс наблюдателя. На Рисунке~\ref{obs-iface} показан возможный вид \verb|ИН|. Конкретный начальный вид элементов интерфейса может меняться в зависимости от состояния узлов спектрографа. В левом верхнем углу интерфейса находится кнопка главного меню. Логически \verb|ИН| разделен на две больших части: верхняя -- управление узлом подсмотра оптического волокна и гидированием (подвесная часть спектрографа, далее \verb|ПЧ|), нижняя -- управление узлами стационарной части (далее \verb|СЧ|), а также вывод некоторой информации (логирование) в процессе работы. Главное меню \verb|ИН| (см. Рисунок~\ref{obs-iface-menu}) содержит следующие пункты: \verb|Reconnect| -- рестарт сетевого соединения с демоном \t{loccorr}; \verb|Re-read settings| -- запросить текущую конфигурацию демона \t{loccorr}; \verb|Exit| -- выйти из интерфейса на страницу авторизации. Элементы интерфейса \verb|ПЧ| сгруппированы в две панели. Левая панель содержит текущее изображение поля гидирования, кнопок старта/останова процесса гидирования (\t{"START GUIDING"}\ и \t{"STOP GUIDING"}) и установки координатных подвижек волокна и фокусировочного механизма в центральное положение ("\verb|GO TO CENTER|"). Отметим, что в случае потери соединения с демоном \t{loccorr} или сбоя в его функционале (например, сбой детектора подсмотра) в панели будет отображается статическое изображение с надписью \t{"DISCONNECTED"}. В процессе гидирования в верхней части изображения поля гидирования отображаются текущие измеренные координаты объекта гидирования (или [-1, -1] если автоматический поиск объекта и вычисление его центра закончились с ошибкой), разница между ними и текущим центром волокна ($dX = X_{obj} - X_{fiber}$, $dY = Y_{obj} - Y_{fiber}$), а так же статус процесса гидирования. Правая панель предназначена для управления фокусом изображения объекта гидирования, выполнения калибровочных измерений для механизма гидирования, контроля параметров накопления для детектора подсмотра и алгоритма вычислений в процессе гидирования. Фокусировка может выполняться как ползунком (быстро и грубо), так и кнопками "\verb|+|"\ "\verb|-|"\ (с шагом 2 единицы) или полем ввода для точного позиционирования фокусера. Кнопка "\verb|INIT DEVICE|"\ предназначена для запуска процесса калибровочных измерений для механизма гидирования (см, описание демона \t{loccorr}). Переключатель "\verb|Fiber lighting|"\ служит для включения/отключения подсветки оптического волокна (\verb|OFF| - выключено, \verb|ON| - включено). Кнопка "\verb|GET CENTER|"\ предназначена для измерения центра изображения торца оптического волокна. Заметим, что такие измерения имеют смысл только при включённой подсветке волокна! Поля ввода с меткой "\verb|Fiber center|"\ содержат текущие координаты X и Y центра торца оптического волокна. Кнопка "\verb|SEND|"\ предназначена для установки в настройках демона \t{loccorr} текущего положения центра волокна. Посылаются координаты отображаемые в данный момент в полях ввода "\verb|Fiber center|". Связка элементов "\verb|Fiber center|"\ и "\verb|SEND|"\ позволяют интерактивно в процессе наблюдений или калибровки задавать центр волокна. Для этого можно ввести координаты непосредственно в полях ввода или же кликнуть левой кнопкой мыши в нужной точке текущего изображения поля гидирования в левой панели интерфейса. Во втором случае координаты на изображении, соответствующие указателю мыши в момент нажатия левой кнопки мыши, отобразятся в полях ввода \verb|Fiber center|". {\bf Важно}, смена координат центра волокна в настройках демона \t{loccorr} будет иметь место только после нажатия кнопки "\verb|SEND|"!!! Чтобы восстановить текущие координаты центра волокна из настроек демона \t{loccorr} нужно в главном меню \verb|ИН| выбрать пункт "\verb|Re-read settings|". Для настройки параметров экспозиции детектора подсмотра \verb|ИН| содержит следующие элементы: выпадающий список "\verb|Exposure|", поля ввода "\verb|Min|", "\verb|Max|"\ и "\verb|Gain (dB)|". Выпадающий список "\verb|Exposure|"\ имеет два пункта: "\verb|Range|"\ и "\verb|Fixed|". В первом случае алгоритм гидирования сам подбирает оптимальную экспозицию в диапазоне, указанном в полях ввода "\verb|Min|", "\verb|Max|"\ (экспозиции указываются в миллисекундах), поле ввода "\verb|Gain (dB)|"\ недоступно для редактирования и лишь отображает текущее значение. В режиме "\verb|Fixed|"\ вместо "\verb|Min|", "\verb|Max|"\ отображается поле ввода "\verb|Value|", в котором наблюдатель задаёт фиксированную экспозицию (в миллисекундах), а также становится доступна регулировка усиления в поле "\verb|Gain (dB)|". Для настройки алгоритма гидирования наблюдатель может воспользоваться элементами "\verb|Guiding to|"\ и "\verb|N aver|". Первый -- выпадающий список с пунктами: "\verb|Closest|"\ и "\verb|Brightest|". В режиме "\verb|Closest|"\ гидирование начинается с захвата ближайшего к центру волокна объекта, в режиме "\verb|Brightest|"\ алгоритм оценивает яркость объектов в поле и начинает гидирование по ярчайшему из них. Очевидно, что данный вид настройки востребован только в случае присутствия нескольких объектов в поле гида. Поле ввода "\verb|N aver|"\ задаёт количество изображений используемых для вычисления их среднего в процессе оценки центра объекта гидирования. Для настройки отображения поля гидирования служит элемент ``флажок''. "\verb|Equalization|". Если данный элемент находится в состоянии ``отмечено'', то изображение поля гида будет эквализовано, то есть значения пикселей будут преобразованы из исходных в соответствии в вычисленной гистограммой. Данная настройка не влияет на алгоритм гидирования, а служит только для удобства отображения. Некоторые элементы интерфейса управления подвесной частью спектрографа могут отображаться в режиме мигания. Это элементы-кнопки \verb|GO TO CENTER|"\ и "\verb|INIT DEVICE|", а также все элементы управления фокусировкой. Режим мигания означает, что координатные подвижки волокна или фокусировочного механизма находятся в движении. В любой момент движение подвижек может быть остановлено нажатием кнопки "\verb|STOP GUIDING|"\ (интерфейс посылает демону \t{loccorr} команду \verb|stpstate=relax|). В нижней левой части \verb|ИН| находится панель, которая отображает различную отладочную информацию. Настоятельно рекомендуется следить за этими сообщениями. Сообщения выводимые шрифтом чёрного цвета являются информационными, светло коричневого -- предупреждения, и красного -- ошибки. Нижняя правая часть \verb|ИН| -- элементы управления стационарной части. Переключатели "\verb|Flat-field|"\ и "\verb|ThAr|"\ управляют калибровочными лампами, соответственно, плоского поля и торий-аргона (\verb|OFF| - выключено, \verb|ON| - включено).