Оперативное наглядное представление данных наблюдений в реальном времени является обязательной частью практически любой системы автоматизации научных исследований. Хотя регистрирующая аппаратура на самописцах давно ушла в прошлое, тем не менее эквивалентные способы отображения нашли себя на экранах мониторов. Автором совместно с Чепурновым А.В. был разработан такой способ воспроизведения данных на экране, который, с одной стороны, позволяет одновременно видеть максимальное количество регистрируемых каналов (до восьми по выбору), с другой стороны, сделать изображение графиков подобным рисуемым самописцами, но более статичным, для снижения утомляемости наблюдателя. По указанной причине, а также для расширения типов устройств визуализации мы ориентировались в основном на монохромное воспроизведение информации. Кратко сформулируем основные правила, которыми мы руководствовались.
Для проведения удаленных наблюдений комплект программ визуализации дополнен сетевыми версиями указанных программ, алгоритм работы которых подробно описан в разделе 1.4.
Взаимодействие программ визуализации с ядром системы, буферизующим
данные, в том числе и для отображения, производится через программу
vsd, запускаемую при старте системы как автономный процесс.
Vsd периодически опрашивает буферную область ядра и сбрасывает
данные как во временный файл на локальном диске, так и в сетевой порт
для удаленных программ. Структура данных визуализации включает все
необходимые
параметры и не требует от программ на рабочих станциях дополнительных
обращений к файлу заданий. Это позволяет визуально контролировать
работу аппаратуры по сети при любом удалении, независимо от режима сбора.
Функция | Имя спецфайла | Значение |
C_OP_RD | camac | чтение из модуля КАМАК с выполнением NAF |
C_OP_WR | camac, camac6 | запись в модуль КАМАК с выполнением NAF |
C_OP_ZCI | camac | общий сброс в крейте КАМАК |
C_OP_STAT | camac | чтение Q-статуса |
C_OP_DETECT | camac, camac6 | определение работоспособности КАМАК |
C_OP_REG | camac | чтение управляющих регистров КАМАК |
FS_GET_DATA | camac1 | чтение структуры статуса драйвера |
FS_SET_DATA | camac1 | запись в структуру статуса драйвера |
FS_INTR_ENABLE | camac1 | разрешение прерываний |
FS_INTR_DISABL | camac1 | запрещение прерываний |
FS_SET_TIME | camac1 | установка ``звездного" времени |
FS_GET_TIME | camac1 | чтение ``звездного" времени |
FS_GET_FLAG | camac1 | чтение флагов состояний драйвера |
FS_GET_ADDR | camac1 | чтение значения адреса буфера данных |
FS_SET_VIZBLK | camac1 | установка размера блока данных визуализации |
FS_SET_VFLAG | camac1 | установка флагов визуализации |
FS_GET_VFLAG | camac1 | чтение флагов физуализации |
FS_SET_CALIB | camac1 | запись значений калибровки |
FS_GET_CALIB | camac1 | чтение значений калибровки |
CS_GET_DATA | camac1, camac5 | чтение структуры состояния каретки |
CS_SET_DATA | camac5 | загрузка данных для управления кареткой |
CS_GET_FLAG | camac1, camac5 | чтение флагов состояния каретки |
CS_BEGIN | camac5 | пуск начальной установки каретки |
CS_STOP | camac5 | экстренный останов каретки |
CS_OFF_POWER | camac5 | выключение питания привода каретки |
CS_POINT | camac5 | установка каретки по данным загрузки |